如何将枚举类型映射到 IDA 中的 imm 值

逆向工程 艾达 idapro-sdk
2021-06-24 09:08:00

我在 IDA 处理器中添加了对类型信息处理的支持,现在use_regarg_type3,我正在映射一个我知道是enum. 但是,我不确定如何将imm操作数设置为enum,就像您按下 m 键并手动选择类型一样。

所以,我的问题是我调用什么函数来将 op 设置为 an enum,以及如何从tinfo_t我拥有的函数中获取任何需要的参数

编辑 1

有一个op_enum函数,但它想要enum_t并且从tinfo_t通过type.get_enum_base_type()I get type_t

编辑 2

我有它工作使用

qstring tname;
type.get_type_name(&tname);
enum_t enumt = get_enum(tname.c_str());
op_enum(cmd.ea, x.n, enumt, 0);

但是,必须通过一根绳子感觉不对,而且有点脆弱。所以,现在的问题是:有没有更好/更安全的方法来实现这一目标?

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