The Windows Phone 7 application execution model allows you to perform various operations when loading the application (as you mentioned before the actual splash screen) and after loading the application (add activated and deactivated to this list). You cannot insert certain processes between loading and downloading an application - only during initialization and after it.
For more information, I would recommend reading:
Understanding the Windows Phone, Tombstoning, Launcher, and Choosers app execution model and a few more things that are in the way - part 1
Further, it is not recommended to perform temporary and resource-intensive operations during application startup. According to MSDN :
Applications should not load state data from isolated storage into a handler for this event. Because this event occurs before the application is visible or active, runtime consuming tasks such as access Isolated storage can provide the user experience as an application will take a lot of time to download. Instead, calls to isolated storage and network resources should be made asynchronously after the application is loaded.
This is not a limitation, but a recommendation that helps provide a better user interface. Therefore, you should carefully plan what you want to do when you start the application.
source share