栈局部变量交叉引用

idapython在github上有一些examples,里面的 vds 包含关于hex-rays的一些相关用法
From PyQt4 import QtCore,QtGui报错load dll error(同PySide) 已经想办法排除:
1.确认PyQt和python都是32位
2.添加了一些环境变量(eg:C:\Python27\Lib\site-packages\PyQt4)确保能找到QtCore4.dll
3.重新安装PyQt4
我发现在cmd中 " from PyQt4 import QtCore,QtGui " 是没有问题的,但是在idapython中仍然报错找不到dll
stack overflow中也有相同的提问:From PySide import QtCore error:Fine in terminal but Fail in idapython
提问者自己解决了问题,通过重新安装ida pro,并且选择python的安装路径
类似的,我在使用ida7.0 portable版本(唉~别喷),为了保证portable已经内部包含一个python27,我在该python路径中安装PyQt4,并在idapython下 "from PyQt4 import QtCore,QtGui" 成功!
【栈局部变量交叉引用】所以一个大致可行的办法是:重新安装ida,可以为ida准备一个单独的python27,更加方便且避免和其他python冲突


调用hex-rays的反编译功能 f = idaapi.get_func ( Address )
cfunc = idaapi.decompile ( f )
指定地址添加注释(汇编页面) idc.MakeComm(Address,"")
指定地址添加注释(伪代码页面) NULL
idapython-栈中局部变量的交叉引用 事实上,我发现无论是《idapython beginer》中提到的那些API(XrefTo,XrefFrom等等),还是idapython/examples中那些例子,给出的交叉引用都仅仅适用于全局变量(global)。
虽然ida pro无论是反汇编界面还是hex-rays的反编译伪代码界面,都支持局部变量、全局变量、函数、结构体的交叉引用,但在idapython中实现局部变量的交叉引用查询似乎要格外花上一番力气
Q:idapython:get xref to a stack variable --Stack Overflow


栈局部变量交叉引用
文章图片

    推荐阅读