Decompiler Technologies

Last updated January 3rd 2012

What is a Decompiler?

There is a process which turns English-style source code into machine language called Compilation.

Decompilation turns machine language back into English-style source code.

Decompilation typically reads in machine language which is hard to read by eye. It works by combining a simulation with several 'special cases' which turn compiler optimisations back into an English-style representation.

For instance:

Turns into:

Who are Decompiler Tech?

A company founded in 2002 by Jeremy Smith, building on the work done by Jeremy in 1998, the 'Disinformation' decompiler.

Since around 2003, we have done many decompilations for customers, mostly with good outcomes.

The decompiler is now called 'RightBack'.

What CPU can RightBack decompile?

We've abstracted away the most basic CPU opcodes, so adding a new CPU is a week's work.

CPUs supported so far:

Services We Provide

  1. Decompile any VB6 native code executable for a fee per line of 4 cents
  2. Decompile a x86 C/C++ executable for a fee per job
  3. Decompile a new CPU for a fee per CPU
Contact Us For a Quote Today

Get in touch at jeremy@decompiler.org and state the number of the service required. We will ask for the program in question, and then we'll run it through the preprocessor and then into a disassembler, then that goes into the decompiler.

Some decompiler jobs we can do immediately, and we'll send a sample and a quote.

Other jobs require hours of work because your program uses features (such as C++) which we can't decompile without some extra work. Of course, once the work is done, it makes it easier for the next decompile job.

CPU jobs (in other words, we write a module for a particular CPU instruction set) will take a little bit longer to determine if it'll work well enough to make it worthwhile.

Please Note: VB Custom Work

The reason for the high prices for VB6 is that it has a huge internal instruction set, which is undocumented, and it can take 30-60 minutes to implement an unknown API instruction, such as LateMemStId. One good thing to come out of this, though, is a huge library of ActiveX (OCX) libraries in text format, so any Windows software using these OCXs can be decompiled without a glitch.

Another problem is that because of the complexity of the VB6 API, it's impossible to get the code 100% accurate. The general accuracy is about 5 bugs per 100 lines, or 95% accurate, 5% inaccurate.

Disclaimer

Please note: no decompiler can be 100% accurate so making a program recompilable is a tough job.

Copyright 2012 Decompiler Technologies