为了满足我的好奇心,我一直在各种MacOS / X可执行文件上运行Obs id city country city_grp country_grp
1 1639 5 42260 low - 6 1001 - high
2 1065 10 38090 7 - 16 1001 - high
3 1400 15 29769 7 - 16 1001 - high
,然后在otool -tV ./MyApp.app/Contents/MacOS/MyApp > out.txt
中查看生成的汇编代码清单,以查看其中的内容。
在很多地方,我看到这样的东西:
out.txt
...加上有益的评论,这是很有意义的;我可以说这行的目的是调用0000000100bae6fb callq 0x100bb2dc8 ## symbol stub for: _memcpy
函数,该函数位于进程的内存空间中的地址memcpy()
上。
但是,在其他位置,有0x100bb2dc8
的实例没有任何有用的注释,例如:
callq
...,在这些情况下,我不知道如何知道正在调用什么函数。有什么办法可以解决吗?
(我尝试在000000010056247c callq 0x11056246d
的输出中查找引用的地址,但是AFAICT在那里不存在;每行开头的地址值范围从otool
到{{1 }},并且该范围不包含地址00000001000061c0
)