当我跟踪一个汇编程序时,我遇到了一条指令“CALL DWORD PTR CS:[& KERNEL32.GetPrivateProfileIntA>],带有操作码2E:FF15 84244100!现在我有兴趣知道:
虽然与操作码相关的操作码是EA,但为什么使用上面提到的操作码呢?
2E:FF15之前的内容是什么?
答案 0 :(得分:3)
2e是CS段覆盖。
FF /2
is call r/m32
。调用的目标位于内存操作数中。 (即它从内存加载新的EIP)。如果没有CS前缀,它将使用DS段的基址/限制作为该寻址模式。
(EA is far jump所以我认为你的意思是E8,这是通常的呼叫rel32的操作码。)