Getting EIP from FPU (x86) (last update: 2015-06-25, created: 2015-06-25) back to the list ↑
|
|||
Because call $+5; pop eax is just too boring.
At [esi+0xc] there is the FPU Instruction Pointer, which is an FPU register which stores the address of the last FPU non-control instruction executed. In this case the last FPU instruction is fldz, thus eax gets its address. Full test example (x86-32, nasm, asmloader env):
E.g.:
| |||
|