Graphs such as that in Figure 14-1 generally terminate at library or system calls for
which IDA has no additional information.
Another useful graph that IDA can generate comes from the Xrefs To option. Cross-references
to a function lead us to the points at which a function is called and answers the
question ???How did we get here???? Figure 14-2 is an example of the cross-references to the
function send in a simple program. The display reveals the most likely points of origin for
data that will be passed into the send function (should that function ever get called).
Graphs such as that in Figure 14-2 often ascend all the way up to the entry point of a
program.
Figure 14-1
Function call tree
for function sub_
804882F
A third type of graph available in IDA Pro is the function flowchart graph. As shown
in Figure 14-3, the function flowchart graph provides a much more detailed look at the
flow of control within a specific function.
One shortcoming of IDA??™s graphing functionality is that many of the graphs it generates
are static, meaning that they can??™t be manipulated, and thus they can??™t be saved for
viewing with third-party graphing applications. This shortcoming is addressed by
BinNavi and to some extent Process Stalker.
Pages:
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619