What is the meaning of this kind of jmp instruction in x86 assembly in IDA?
Does it mean that we should jump to the address
[6CA2E9B0] + 8 or
When I follow that off_XXX, I get to the memory region that looks like this:
Is this some kind of a jump table?
loc_6C954360 is indeed pointed by the address
6CA2E9B0, does it mean that the instruction in question jumps to the address pointed by
6CA2E9B0+8? If that's the case, then I must've messed something up in the debugger as the computed address didn't seem to be the same as the one stored in memory.
It should load to
EIP the far address stored in the memory location specified by the 4 bytes next to the
FF 25. And it seems like it is how it works, as I managed to see that happening in the debugger. However, the address after
FF 25 is slightly modified when the library is loaded into a process, are those addresses somehow adjusted once the process starts using the library?
Also what is the point of this kind of jumps, why are functions defined in this way?