1. A method for inserting advertising into an application, the method comprising: removing first application code from a first input executable file and placing it into an output executable file; inserting a first set of proxies into the first input executable file, wherein the first set of proxies, when run, makes calls to the first application code; adding second application code into the output executable file, wherein the second application code represents code executable to display the advertising; compressing the output executable file; and providing the first and second input executable files and the output executable file to a device such that the device may load and execute the first and second input executable files and the output executable file.