我有一个非常基本的 IDAPython 脚本,它通过使用找到间接调用idc.FindText(),然后提取参数。除了在未定义的函数中找不到间接调用之外,它工作得很好。如果函数被正确反汇编但未定义,则下面的脚本找不到任何调用。但是,正常的 IDA GUI 文本搜索能够找到我正在寻找的调用。有什么我做错了吗?
基本代码的工作原理如下:
addr = MinEA()
while addr != idc.BADADDR:
addr = idc.FindText(addr, idc.SEARCH_DOWN | idc.SEARCH_NEXT, 0, 0, "call e")
doStuff(addr)
addr = idc.NextHead(addr)