Joh*_*hon 5 iphone objective-c disassembly ios
我试图找出在下面的反汇编中调用的方法,但我不知道发生了什么.我理解用objc_msgsend第一个参数是对象指针,第二个参数是选择器(所以r0和r1).但我很难搞清楚这一点.这里只是调用r1之前的部分:
从我对此的理解,前两行会使r1等于1f007bbc,但我能从那里做些什么呢?编辑:另外,添加r1和电脑有什么作用?那后的线路是做什么的?而且我尝试过"otool -o SpringBoard",但这并没有给我选择器(不知道它是什么,但它不是我正在寻找的)
编辑2:Actaully,-o确实给了我所有方法(我从标题中获取了大量随机方法,并在终端窗口中搜索它们,它们就在那里).但是搜索"1f007bbc"并没有返回任何内容.我的号码是否合适?
00042e48 f64731bc movw r1, 0x7bbc
00042e4c f2c0011f movt r1, 0x1f
00042e50 4479 add r1, pc
00042e52 6809 ldr r1, [r1, #0]
00042e54 f1c2e84a blx 0x204eec @ symbol stub for: _objc_msgSend
如果您有权访问调试器,那么您应该能够p (char*) 1f007bbc
并且它会打印选择器名称。
选择器通常是不变的,因此,您也应该能够通过拆开 mach-o 从二进制文件中提取它。
归档时间: |
|
查看次数: |
1115 次 |
最近记录: |