If you're experiencing these crashes during the loading screen and you're using a open-source mesa driver then the chances are high that you have no S3TC compression/decompression library (libtxc_dxtn) installed and mesa is therefore disabling S3TC completly.
The Max Paxne 2 engine seems to rely on the S3TC texture formats being always available and can't handle the case when these formats are not advertised by the driver. There is a fix and a workaround for the problem.
The fix is installing libtxc_dxtn on your system (keep in mind that you need a 32bit compile). I'm not going to describe how to do this, just use your favorite search engine for the steps.
The workaround is forcing mesa to advertise the texture formats even when the said library is not installed (the engine seems to be happy with this). You can do this e.g. with driconf. Launch this graphical config utility and select the tab 'Image Quality'. You should see an option "Enable S3TC texture compression even if software support is not
available" which is probably set to "off". Enable it and retry starting the game. It should work now, if not then you're probably facing a different problem.
Proposed wine settings
by Tobias Jakobi on Sunday November 2nd 2008, 19:02
It is recommended to set the OffscreenRenderingMode to "fbo" when playing Max Payne 2 (doesn't matter if full or the demo).
With the default setting of OffscreenRenderingMode ("auto", which maps to "backbuffer") wine hits some severe limitations, which are connected to the backbuffer dimensions.
When post-processing effects are enabled ingame (e.g. set to medium) the bullettime screen is cropped. Cropping is affected by the ingame resolution.
Also affected are motion blur effects during cutscenes.