我需要帮助才能理解下面的汇编说明。我好像在呼叫someUnknownValue += 20994A的地址?
E8 32F6FFFF - call std::_Init_locks::operator=+20994A发布于 2012-04-30 07:31:41
无论您使用什么来获得反汇编,都试图通过将调用的目标作为它所知道的某个符号的偏移量来提供帮助--但是考虑到偏移量如此之大,它可能会感到困惑。
调用的实际目标可以计算如下:
E8是具有相对偏移量的偏移量。的地址开始测量的
例如:
<some address> E8 32 F6 FF FF call <somewhere>
<some address>+5 (next instruction)下一条指令是<some address> + 5.
<some address> + 5 - 0x9CE.,
call指令是<some address>,长度是5字节长发布于 2013-07-13 14:25:01
如果您使用反汇编程序分析PE文件,则反汇编程序可能给您提供了错误的代码。大多数恶意软件编写器使用插入E8作为反汇编技术。您可以验证E8上面的代码是否是跳转位置在E8之后的跳转指令。
https://stackoverflow.com/questions/10376787
复制相似问题