Max Payne 2 Startup Hang Patch is a mod for Max Payne 2: The Fall of Max Payne, created by UCyborg.
Description (in authorís own words):
This patch is intended to solve issues related to game engine initializing Direct3D inside DllMain, which most notably causes the game to hang during startup with certain combinations of graphics hardware and drivers. Additionally, it is impossible to run the game through dgVoodoo Direct3D 8 to 11 wrapper, because Direct3D 11 runtime refuses to initialize from DllMain to prevent lockups.
The patch will solve above mentioned issues and possibly other problems that might be related to Direct3D initialization inside DllMain by delaying actual initialization to the point when execution flow returns from LoadLibrary API, therefore preventing any sort of lockup that would occur otherwise.
No compatibility modes should be applied to game executables, as they usually create more problems than they solve. Starting the game with affinity set to single core also isn't required anymore and will only serve to slow the game down a little.
Make sure your game is updated to newest version. Then extract the archive into gameís main folder.
Report problems with download to firstname.lastname@example.org