Rewriting executable files to measure program behavior | Synapse