Binary recompiler

A binary recompiler is a compiler that takes executable binary files as input, analyzes their structure, applies transformations and optimizations, and outputs new optimized executable binaries.

The foundation to the concepts of binary recompilation were laid out by Gary Kildall      with the development of the optimizing assembly code translator XLT86 in 1981.