https://bugs.winehq.org/show_bug.cgi?id=56101
--- Comment #10 from Bernhard Übelacker bernhardu@mailbox.org --- Created attachment 75802 --> https://bugs.winehq.org/attachment.cgi?id=75802 notes, backtraces with debug symbols and modifications.txt
I did some testing and got a cheatengine-i386.exe built with debug symbols. There I found the crash happens because the return address on top of the stack got overwritten with zero and therefore after the ret instructions the crash happens when address 0 is executed.
Further a cheatengine-i386.exe with additional writeln's showed that on windows the SymEnumTypes is called, no SymGetTypeInfo (targetting a wine notepad.exe).
A cheatengine-i386.exe with the "stdcall;" added to the SymGetTypeInfo definition did no longer crash in wine.
I assume wine's dbghelp.dll is able to read the debug information in wine's dlls. Native dlls and cheatengine-i386.exe might have stripped those away, or use a format not understood by native dbghelp.dll?
I tried to bring this to the Cheat Engine's developers here: https://github.com/cheat-engine/cheat-engine/issues/2789