我在逆向 90 年代初的一个小的旧 COM 文件时遇到问题。我的理解是代码从 0x100 开始,但是我的代码似乎从 0x90(之前的 0s)开始。然而,一些命令指向程序空间之外的位置,我想知道偏移量是否正确 - 特别是在 c2.x 之后。
使用 onlinedisassembler.com,我在下面有几个示例段...
.data:0x00000090 e612 out 0x12,al
.data:0x00000092 131c16 adc ebx,DWORD PTR [esi+edx*1]
.data:0x00000095 d89ade3b6153 fcomp DWORD PTR [edx+0x53613bde]
.data:0x0000009b 3831 cmp BYTE PTR [ecx],dh
.data:0x0000009f d309 ror DWORD PTR [ecx],cl
.data:0x000000a1 41 inc ecx
.data:0x000000a2 56 push esi
.data:0x000000a3 5b pop ebx
.data:0x000000a4 ce into
...
任何指导将不胜感激。