type source code into window good ol' regex save source code into text file parse source code into parse trees OpenC++ generate intermediate language TenDRA LLVM run optimizer ... construct assembly (arguably wash/rinse/repeat) obtain binary translation unit om link translation units into single binary eel strip symbols from binary leel + modification load program dynamically link program MobileSubstrate mach_inject fetch call instruction valgrind execute call instruction bochs