Microsoft Word - iOSAppReverseEngineering.docx

(Romina) #1

Figure 6-35 The assignment of R6


Figure 6-36 The assignment of R6


Figure 6-37 The assignment of R6


This makes sense; the functionality of tableView:cellForRowAtIndexPath: is basically


returning an available cell. So, its regular implementation is to create an empty cell at first, then


configure it with other methods. Well, where does the configuration of “my number” happen?


Regardless of efficiency, we can investigate from the beginning of [PSListController


tableView:cellForRowAtIndexPath:]. Since there’s a limited number of objc_msgSends, by


printing out [$r6 detailTextLabel] before and after each objc_msgSend and comparing the


differences, we can definitely locate this configuration objc_msgSend; if you’re good at math,


dichotomy can be used in this scenario, you can inspect from the middle. Anyway, it’s just a


matter of personal preferences. In this example, I use a compromised dichotomy, as shown in


figure 6-38.

Free download pdf