https://bugs.winehq.org/show_bug.cgi?id=45703
--- Comment #21 from Anastasius Focht focht@gmx.net --- Hello folks,
revisiting, still present. Using regular Wine build with -fPIC and -O2 for testing.
One of the native API mentioned here 'ntdll.NtQueryDirectoryFile' (comment #9) is also frequently used in game scene releases that use custom Steam Client API Module (proxy). The API resolver is obfuscated hence can't be seen from any trace logs.
--- snip --- ... Unhandled exception: page fault on execute access to 0x8b5de754 in 32-bit code (0x000000008b5de754). Register dump: CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b EIP:8b5de754 ESP:0032f030 EBP:0032f458 EFLAGS:00210282( R- -- I S - - - ) EAX:8b5de754 EBX:00000000 ECX:0032ebc0 EDX:00000000 ESI:00457250 EDI:00000003 Stack dump: ... Backtrace: =>0 0x000000008b5de754 (0x000000000032f458) 1 0x0000000010047a9b EntryPoint+0xffffffffffffffff() in steam_api (0x000000000032f4b8) 2 0x000000007b44c819 FindFirstFileExW+0x518(filename=<couldn't compute location>, level=<couldn't compute location>, data=<couldn't compute location>, search_op=<couldn't compute location>, filter=<couldn't compute location>, flags=<couldn't compute location>) [/home/focht/projects/wine/mainline-src/dlls/kernel32/file.c:2105] in kernel32 (0x000000000032f588) 3 0x000000001001bcee EntryPoint+0xffffffffffffffff() in steam_api (0x000000000032fa38) 4 0x000000001001206d EntryPoint+0xffffffffffffffff() in steam_api (0x000000000032fa50) 5 0x0000000010051285 EntryPoint+0xffffffffffffffff() in steam_api (0x000000000032fcac) 6 0x0000000000719a71 EntryPoint+0xffffffffffffffff() in sniperelitev2 (0x000000000032fcbc) ...
Wine-dbg>info share Module Address Debug info Name (166 modules) PE 400000- bc5000 Export sniperelitev2 PE 9b30000- 9b77000 Deferred binkw32 PE 10000000-100b0000 Export steam_api ELF 7a800000-7a939000 Deferred opengl32<elf> -PE 7a820000-7a939000 \ opengl32 ELF 7b400000-7b830000 Dwarf kernel32<elf> -PE 7b420000-7b830000 \ kernel32 ELF 7bc00000-7bd2a000 Deferred ntdll<elf> -PE 7bc10000-7bd2a000 \ ntdll ELF 7c000000-7c004000 Deferred <wine-loader> ...
Wine-dbg>
0x0000000010047a8f EntryPoint+0xffffffffffffffff in steam_api: pushl 0xc(%ebp) 0x0000000010047a92 EntryPoint+0xffffffffffffffff in steam_api: pushl 0x8(%ebp) 0x0000000010047a95 EntryPoint+0xffffffffffffffff in steam_api: call *0x1009bde0 -> (invalid destination) 0x0000000010047a9b EntryPoint+0xffffffffffffffff in steam_api: movl %eax,%edi
Wine-dbg>x/10x 0x1009bde0 0x000000001009bde0 EntryPoint+0xffffffffffffffff: 00390f80 00390fa0 00390fc0 00000000 0x000000001009bdf0 EntryPoint+0xffffffffffffffff: 00000000 00161460 00161490 00161700 0x000000001009be00 EntryPoint+0xffffffffffffffff: 41455453 5050414d
Wine-dbg>x/10i 0x390f80 0x0000000000390f80: call 0x000000007bc3b257 __x86.get_pc_thunk.ax in ntdll 0x0000000000390f85: jmp 0x000000007bc45d35 NtQueryDirectoryFile+0x5 [/home/focht/projects/wine/mainline-src/dlls/ntdll/directory.c:1944] in ntdll 0x0000000000390f8a: addb %al,0x0(%eax)
Wine-dbg>x/10i NtQueryDirectoryFile
0x000000007bc45d30 NtQueryDirectoryFile jmp 0x0000000010047a67 EntryPoint+0xffffffffffffffff in steam_api 0x000000007bc45d35 NtQueryDirectoryFile+0x5 addl $811723,%eax 0x000000007bc45d3a NtQueryDirectoryFile+0xa leal 0x4(%esp),%ecx 0x000000007bc45d3e NtQueryDirectoryFile+0xe andl $-16,%esp 0x000000007bc45d41 NtQueryDirectoryFile+0x11 pushl 0xfffffffc(%ecx) 0x000000007bc45d44 NtQueryDirectoryFile+0x14 pushl %ebp --- snip ---
Copies of native API entry points:
--- snip --- 1009BDD0 00000666 1009BDD4 003A0F40 1009BDD8 003A0FE0 1009BDDC 003A0F60 1009BDE0 003A0F80 1009BDE4 003A0FA0 1009BDE8 003A0FC0 1009BDEC 00000000 1009BDF0 00000000
003A0F40 | 8BFF | mov edi,edi 003A0F42 | 55 | push ebp 003A0F43 | 8BEC | mov ebp,esp 003A0F45 | E9 9B478C7B | jmp 7BC656E5 ; LdrLoadDll+0x5 003A0F4A | 0000 | add byte ptr ds:[eax],al ... 003A0F60 | 8D4C24 04 | lea ecx,dword ptr ss:[esp+4] 003A0F64 | 83E4 F0 | and esp,FFFFFFF0 003A0F67 | E9 6B188B7B | jmp 7BC527D7 ; NtQueryFullAttributesFile+0x7 003A0F6C | 0000 | add byte ptr ds:[eax],al ... 003A0F80 | E8 D2A2897B | call 7BC3B257 ; PIC/GOT -> problem! 003A0F85 | E9 AB4D8A7B | jmp 7BC45D35 ; NtQueryDirectoryFile+0x5 003A0F8A | 0000 | add byte ptr ds:[eax],al ... 003A0FA0 | 8D4C24 04 | lea ecx,dword ptr ss:[esp+4] 003A0FA4 | 83E4 F0 | and esp,FFFFFFF0 003A0FA7 | E9 7BCF8A7B | jmp 7BC4DF27 ; NtOpenFile+0x7 003A0FAC | 0000 | add byte ptr ds:[eax],al ... 003A0FC0 | 8D4C24 04 | lea ecx,dword ptr ss:[esp+4] 003A0FC4 | 83E4 F0 | and esp,FFFFFFF0 003A0FC7 | E9 ABCF8A7B | jmp 7BC4DF77 ; NtCreateFile+0x7 003A0FCC | 0000 | add byte ptr ds:[eax],al ... 003A0FE0 | 8D4C24 04 | lea ecx,dword ptr ss:[esp+4] 003A0FE4 | 83E4 F0 | and esp,FFFFFFF0 003A0FE7 | E9 FB198B7B | jmp 7BC529E7 ; NtQueryAttributesFile+0x7 003A0FEC | 0000 | add byte ptr ds:[eax],al ... --- snip ---
There is also a number of other bug reports with similar symptoms, albeit with questionable tracebility/comment thread quality.
--- quote --- bump once again, someone please respond on how I can enable IOPL in WINE. --- quote ---
IOPL errors are the symptom of a broken MS Office installation. You didn't follow howtos/guidelines to do post-installation fixups. I admit most of these instructions which involve manual copying of files are of rather questionable quality. Anyway, use forums. Wine Bugzilla is not meant for end user support.
$ wine --version wine-4.5-368-g0cb79db12a
Regards