Compiling typically loses information (structural information). De-compiling has to guess to reconstruct lost info.

Useful for:

  • Debuggers
  • Reverse engineering