|When you run an .exe file, especially one as big as 12 Mbs, the entire programme isn't loaded into memory all in one chunk. It loads just enough to get it going and then goes back and loads other bits as needed.|
How much and what that is actually loaded is determined by the compiler when it goes through the linking stage.
I think the only way you are going to get the application to load into memory in its entirety is to write the programme in one single module. Not really practical in an application as big as this.