我有一个小函数,它struct作为参数给出。的struct容貌是这样的:
struct my_struct {
short a;
unsigned int b;
unsigned int c;
};
考虑到对齐,我struct在 IDA 中构建了以下内容:
field_0 +0x0
field_1 +0x4
field_2 +0x8
编译器构建它,使其rbp+0x10作为 中的第一个字段struct,rbp+0x14作为第二个字段,依此类推。现在出现了问题,因为如果我尝试将预定义的 IDAstruct应用于指令,我总是得到类似[rbp+struct.field_0+0x10]. 如果我的结构中实际上有一些东西,这会变得更加复杂+0x10,因为它只是显示[rbp+struct_fieldX](这是错误的)。
问题是:有没有办法告诉 IDA(我使用 6.3)应用struct偏移量为0x10?
这个简单案例的肮脏技巧是为and创建一个struct具有 2 个size_t虚拟字段的,但这似乎不是正确的方法。RIPSFP