我一直无法让IDA专业人士对平面16位二进制文​​件(引导加载程序)进行简单的反汇编。我才刚刚开始,这似乎比应该做的要难。

有一组简单的指令可以做到
/>在push 7c0h; pop ds的正下方显示assume ds:nothingretf实际上使用堆栈中的值来设置段和偏移量。有没有办法手动启用这种分析?那里有更多的智能反汇编器吗?我在遵循流程时遇到了麻烦,而且IDA根本没有帮助。

#1 楼

半年后提出来的道歉;希望这个问题仍然有意义。

如果这发生在多个地方,我建议编写一个简单的IDC脚本来解决该问题。该脚本将:


匹配push / pop / push / push / retf指令序列;
设置从retf指令到计算地址的代码交叉引用;
发表评论;
通过IDA标记分析目标(可选,我认为IDA在创建外部参照后应自动开始探索)。不幸的是,IDA并不像我们希望的那样聪明。

评论


谢谢..我将尝试自己编写IDC脚本。如果仍然无法解决问题,我将返回RE.SE! :)

–Milind R
2014年7月29日在8:55