diStorm库,反汇编CALL指令

时间:2014-11-04 14:33:07

标签: c x86 call disassembly opcode

diStorm库(http://www.ragestorm.net/distorm/)反汇编0x86指令

e813000000

作为

call 0x20

虽然它应该是

call 0x13

这是一个错误还是我理解错了?

其他信息

传输到diStorm的distorm_decode的二进制数据(操作码)是

const unsigned char bin[] = { 0x55, 0x8b, 0xec, 0xE8, 0x92, 0xF8, 0xFF, 0xFF, 0xE8, 0x13, 00,00,00 };

附上截图。 screenshot

2 个答案:

答案 0 :(得分:3)

由于您提供了原始指令字节,因此这是一个粗略的反汇编:

Offset  0:  55 8b ec // not interested in these 3 bytes
Offset  3:  E8 92 F8 FF FF // a relative call instruction
Offset  8:  E8 13 00 00 00 // another relative call instruction
Offset 13:  ...

00 00 00 13添加到下一条指令的地址(Offset 13)会为您提供目标地址0x20

答案 1 :(得分:0)

嗯,这与操作码的开头有关。