我一直无法让 IDA pro 对平面 16 位二进制(引导加载程序)文件进行简单的反汇编。我才刚刚开始,似乎比应该的要难。
有一组简单的指令,可以
seg000:7C5D push 7C0h
seg000:7C60 pop ds
seg000:7C61 assume ds:nothing
seg000:7C61 push ds
seg000:7C62 push (offset unk_7C66 - offset loc_7C00)
seg000:7C65 retf
seg000:7C65 ; --------------------------------------------------------------------------
seg000:7C66 unk_7C66 db 88h ; ê ; DATA XREF: seg000:7C62o
就在push 7c0h; pop ds
它下面说assume ds:nothing
。retf
实际上使用堆栈中的值来设置段和偏移量。有没有办法手动启用此类分析?有没有更智能的反汇编器?我在跟随流程时遇到了麻烦,而 IDA 根本没有帮助。