BinNavi is a tool for performing static and dynamic reverse engineering of executables for a number of platforms - x86, ARM, PowerPC, and MIPS. Can connect to remote debuggers on other systems to examine running code. Extensible with scripts, can annotate call flow graphs. The source is on Github: https://github.com/google/binnavi