在分析 Ghidra 中的程序集列表时,我偶然发现了这条指令:
CALL dword ptr [EBX*0x4 + 0x402ac0]=>DAT_00402abc
我假设程序正在调用一个地址位于 inside 的函数DAT_00402abc,我最初认为它是一个双字变量。事实上,当尝试在 is 所在的位置创建函数时DAT_00402abc,Ghidra 不会让我这样做。
反编译器向我显示这行代码来翻译该指令:
(*(code *)(&int2)[iVar2])();
所以我想知道这是什么意思以及程序应该用这个调用做什么?有没有可能吉德拉彻底搞砸了?如果是这样,我应该如何解释该指令?