【问题标题】:Setting this pointer to a structure将此指针设置为结构
【发布时间】:2014-02-20 14:06:27
【问题描述】:

我正在反转一个程序,并且慢慢地我开始构建一个自定义结构,它无疑代表一个类(例如,第一个 DWORD 指向一个 vtable 等)。

这是一个带有一些 COM 实现的 Windows 二进制文件。一些方法使用 stdcall 调用约定(栈上的 this 调用),一些方法使用 this 调用调用约定(ECX 上的 this 指针)。

我想告诉 IDA this 指针(在 ECX 或堆栈上)指向我分析过的自定义结构,因此在代码视图中我将看到对类字段的引用。可能吗?

【问题讨论】:

    标签: ida


    【解决方案1】:

    分析基于虚函数表的程序的有效方法是使用ida hexray插件改变类型。步骤可能是:

    1. 将感兴趣的函数转换为 poseduo C 代码。 hexray 插件会将此指针标记为 DWORD*/int* 等。
    2. 将此指针的类型更改为您已分析的结构类型(通过在此指针变量上按“Y”) 然后 hexray 会将 [ecx+offset] 重新计算为 Yourtype->member

    但是hexray插件非常广泛。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多