访问数组元素的奇怪约定?

逆向工程 艾达 C++ C 六线谱 大批
2021-06-23 16:09:42

在使用 Hex Rays 反编译器对游戏进行逆向工程时,我正在寻找如何访问 NPC 数组。我找到了数组,但我不太明白获取 NPC 索引的不寻常公式。首先是一个整数&0xFFF然后将结果乘以 4 得到索引。

例子:

dword_1F4A8A5C[4 * (v3 & 0xFFF)]

我真的不确定这是标准的还是 Hex Rays 反编译器的奇怪输出。如果有人有解释,请告诉我。谢谢。

1个回答

看起来它是结构数组, wherev3是一个索引,0xfff用于避免溢出。我建议该数组最初是用 size 定义的0x1000结构的大小应该是 4 个双字。