Necesitas un desensamblador (
Disassembler) o un decompilador (
Decompiler), aunque te dire que no son faciles de usar, y requeriras muchos conocimientos, sobre todo de lenguaje maquina y ensamblador, para poderles sacar el mayor provecho. Ademas, para poder usar el decompilador necesitas antes saber en que lenguaje y compilador fue hecho el programa, de lo contrario no te servira.
Saludos