COT_HELPER 有参数/操作数吗?

逆向工程 艾达 蟒蛇
2021-06-20 01:42:30

我正在尝试学习 hexrays ctree api。我正在使用 python 绑定。

我试图自动化的任务是跟踪 wrmsr 指令的参数。

我注意到 hexrays 表示它们是这样的:

__writemsr(*(_DWORD *)SYSTEM_BUFFER, *((_QWORD *)SYSTEM_BUFFER + 1));

使用 Hexrayscodeexplorer 我发现这是一个“辅助”表达式:

helper __writemsr
ea->FFFFFFFFFFFFFFFF
void (__fastcall *)(unsigned int, unsigned __int64)

从反编译输出的外观来看,我希望我应该能够访问“帮助程序”的参数(*(_DWORD *)SYSTEM_BUFFER, *((_QWORD *)SYSTEM_BUFFER + 1)在这种情况下) - 但是我会为函数调用(cot_call)寻找操作数或函数参数的地方不是t 人口稠密。

这有可能吗?

到目前为止,我一直试图在以下方面寻找论点:

cexpr_t.x

cexpr_t.y

cexpr_t.a

我确定我只是不明白这些辅助表达式在 IDA 中是如何工作的。不幸的是,我试图分析的函数嵌套在一个巨大的函数中非常深,因此很难看到所有树如何在 Hexrayscodeexplorer 提供的 ctrees 图形视图中协同工作。

参数是否保存在其他一些 cexpr 对象中?我如何找到他们?

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