lldb----打印出类中所有函数的入口地址

Posted 普通网友

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lldb----打印出类中所有函数的入口地址相关的知识,希望对你有一定的参考价值。

最近一直在研究破解相关问题,发现Objective-C中存在函数_shortMethodDescription,该函数可以打印出该类下所有函数的地址,这个地址是已经偏移之后的真实地址,免去了自己去IDA里面翻地址还要自己算的麻烦,效果相当于class-dump加内存地址,而且还有继承关系。

(lldb) po [XMHDeviceTypeSelectViewController _shortMethodDescription]
<XMHDeviceTypeSelectViewController: 0x10531f568>:
in XMHDeviceTypeSelectViewController:
	Properties:
		@property (retain, nonatomic) NSMutableArray* buttonsArray;  (@synthesize buttonsArray = _buttonsArray;)
		............
		@property (readonly, copy) NSString* debugDescription;
	Instance Methods:
		- (void) setupSubViews; (0x104b2b3bc)
		...........
		- (void) didReceiveMemoryWarning; (0x104b2b380)
in XMHBaseVC:
	Properties:
		@property (nonatomic) BOOL hasPullToRefresh;
		............
		@property (nonatomic) long largeTitleDisplayMode;
	Instance Methods:
		- (void) setTitleLabelText:(id)arg1; (0x104b1cafc)
		...........
		- (long) largeTitleDisplayMode; (0x104b1ca88)
(UIViewController ...)

以上是关于lldb----打印出类中所有函数的入口地址的主要内容,如果未能解决你的问题,请参考以下文章

lldb 入坑指北 - 打印 c++ 实例的虚函数表

LLDB 的数组地址

29 类中的函数重载

检查lldb中函数的返回值

VsCode 执行 debug(lldb/gdb) 命令

(lldb) 以十六进制打印 unsigned long long