idapython:如何以伪代码的形式获取堆栈变量的外部参照

逆向工程 蟒蛇
2021-06-28 06:29:09

我已经了解了如何将外部参照获取到堆栈变量,但它采用程序集的形式:idapython - 获取外部参照到堆栈变量

这种方式在像 [ebp+var_0] 这样的变量上效果很好,但不支持寄存器。有时如果在像“mov eax,[esi]”这样的指令上发生段错误,我必须知道“esi”的值在哪里"来自,所以我需要确保我可以得到外部参照到寄存器。

这也意味着即使 ida 提供了,我也必须做更多的分析工作。我觉得伪代码形式的外部参照更加清晰方便,就像我在ida中查找的一样: 在此处输入图片说明

ida 将堆栈数据和寄存器定义为“v1”或“v13”等变量,然后我可以通过按“X”来获取外部参照。我已经搜索了一段时间,包括github中的示例。有一些方法可以将外部参照获取到全局变量而不是堆栈变量。那么是否存在有关此的任何API?

0个回答
没有发现任何回复~