On Fri, 15 Oct 2004 bserdar@xxxxxxxxx wrote:
80485b3: e8 00 00 00 00 call 80485b8 <X::f()+0xc> 80485b8: 5b pop %ebx 80485b9: 81 c3 5c 12 00 00 add $0x125c,%ebx
With pop ebx, it pops the eip at that instruction to ebx. I'm guessing it'll use ebx as a base pointer to data (or code?) from this point on. You can verify this guess by accessing some global variables from within X::f() and see whether it uses ebx-relative access.
OK, but why is the function call at 80485b3 to the next address at 80485b8?
Is the call relocated at runtime (if yes, to what address or function) or can this not be handled by objdump?
Thank you for the answer.
Ciao, Gerhard