Binary optimizer
A binary optimizer, also known as an object code optimizer, takes a program's object code or machine code either from a linked executable binary file, or from live program memory, and produces sections of optimized code, invoked through either redirection or code replacement, that is functionally equivalent yet more performant. Program speedup is a common optimization goal.