Microsoft Word - iOSAppReverseEngineering.docx

(Romina) #1

Figure 10- 44 Pseudo IDA graph view


From a macro point of view, this conditional branch is actually the 14th data source, right? I


bet you’ve realized that the above pseudo code can be rewritten as below:


R5 = iMessageIsAvailable;

If you can understand this, then our next task is to keep tracing back to analyze every


branch we meet. If different branches result in writing different values into R5, we need to


figure out what’s the branch condition, and this condition is our target data source. Let’s head to


figure 10-45 and start from here.


Figure 10- 45 Branch


If the process branches left, R5 is possibly to be set 0. Since the branch condition is the

Free download pdf