http://bugs.winehq.org/show_bug.cgi?id=27426
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #2 from Anastasius Focht focht@gmx.net 2011-06-09 01:52:52 CDT --- Hello,
that patched main executable has indeed a strange first import descriptor... Some section names contain "KANXUE" which might point to origins of this "patch".
--- snip --- ->Import Table 1. ImageImportDescriptor: OriginalFirstThunk: 0x0017532D TimeDateStamp: 0x00000000 (GMT: Thu Jan 01 00:00:00 1970) ForwarderChain: 0x00000000 Name: 0x00172000 ("meqon
KERNEL32.dll") FirstThunk: 0x001722F6
Ordinal/Hint API name ------------ --------------------------------------- 0x0000 "??0Support@RBConvexPolyhedronGeometry@meq@@QAE@XZ
<lots of repeated LF+CR characters>
<garbage>
2. ImageImportDescriptor: OriginalFirstThunk: 0x0017846A TimeDateStamp: 0x00000000 (GMT: Thu Jan 01 00:00:00 1970) ForwarderChain: 0x00000000 Name: 0x00172105 ("KERNEL32.dll") FirstThunk: 0x000121EC
Ordinal/Hint API name ------------ --------------------------------------- 0x0000 "IsDebuggerPresent" 0x0000 "InterlockedExchange" 0x0000 "Sleep" ... --- snip ---
Hex view of that data:
--- snip --- $ xxd -g4 -s 0x171400 -l 400 DukeForeverDemo.exe 0171400: 6d65716f 6e0d0a0d 0a0d0a0d 0a0d0a0d meqon........... 0171410: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171420: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171430: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171440: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171450: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171460: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171470: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171480: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171490: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 01714a0: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 01714b0: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 01714c0: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 01714d0: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 01714e0: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 01714f0: 0a0d0a0d 0a0d0a0d 0a0d0a0d 0a0d0a0d ................ 0171500: 0a0d0a0d 0a4b4552 4e454c33 322e646c .....KERNEL32.dl 0171510: 6c005553 45523332 2e646c6c 00646e41 l.USER32.dll.dnA 0171520: 6e696d61 74696f6e 2e646c6c 00334452 nimation.dll.3DR 0171530: 44656275 674c6962 2e646c6c 006d6571 DebugLib.dll.meq 0171540: 6f6e2e64 6c6c0042 75674861 6e646c65 on.dll.BugHandle --- snip ---
The Windows loader probably treats this as invalid descriptor (= ignores any parts of it). That "meqon.dll" is also referenced by other imports/dlls which have a valid import descriptor for it, hence the problem will fix itself at later time. Wine loader might be too strict here ...
Can you "profile" that executable using "Dependency Walker" (http://www.dependencywalker.com/) under Windows? It should show how this entry is handled...
Regards