View Single Post
Old May 30th, 2006, 6:41 PM   #4
grumpy
Programming Guru
 
grumpy's Avatar
 
Join Date: Jun 2005
Location: Adelaide, South Australia
Posts: 1,253
Rep Power: 5 grumpy will become famous soon enough
If you google for "decompiler" or "disassembler" you will find all sorts of entries.

Generally, decompilers will often be disassemblers: they allow you to get back to assembler code. The catch (apart from the fact you need to know the form of assembler emitted by the decompiler and have an assembler that will accept it) is that the output of the decompiler, like the format of executable files, is machine dependent and also very low level. Depending on the machine, the disassembly may not be complete.

I've heard some mention of programs that can decompile back to a higher level language (C, C++, etc) but nothing in common usage. As executable file formats (often) do not contain information such as variable names, type names, function names, etc (such info is often stripped by optimising compilers and linkers), the code that could be produced would be pretty basic (eg no higher level constructs, no use of the standard library) and arguably just as difficult to read as assembler code.

It would be easier all round to contact the author of the program and ask them to make the change. Even if they want to charge you a lot of money for the privilege.
grumpy is offline   Reply With Quote