Reputation: 1581
When I disassemble an .exe file into intermediate language, why do I get a dump that is smaller than the executable? Is it because statically linked code is not included?
Upvotes: 0
Views: 82
Reputation: 48686
EXE files do not just contain binary program code. It can also contain embedded resources, statically linked libraries, strings, a header, metadata information, symbol table/debugging information and lots of other stuff.
Also, keep in mind, the compile goes through an optimization phase that might transform your code in order to optimize it. The disassembled code might not be a 1 to 1 match with your original source code.
Upvotes: 3