With all the optimizations and obfuscations done by modern compilers, the process of compiling software is generally a one-way trip. When you lose a game’s source code, you don’t just lose the thing that makes the engine work: you often also lose the most important source of documentation and insight as to how it was intended to work. Automated “decompilers” exist, but they can’t actually reproduce the original source code: they can port the machine code to a higher-level language, but this generally bears very little resemblance to the original source. That’s not to say that it’s useless -it can be an important reference tool as you rewrite the program- but in the end you’re still rewriting the program from scratch.
Latest Answers