[Bug 13401] fr-057 demo scene application crashes at start up (custom imports resolver can't cope with some msvcrt functions being forwarded to ntdll)
wine-bugs at winehq.org
wine-bugs at winehq.org
Thu Nov 29 15:28:21 CST 2012
http://bugs.winehq.org/show_bug.cgi?id=13401
Anastasius Focht <focht at gmx.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |obfuscation
CC| |focht at gmx.net
Summary|fr-057 demo scene |fr-057 demo scene
|application crashes at |application crashes at
|start up |start up (custom imports
| |resolver can't cope with
| |some msvcrt functions being
| |forwarded to ntdll)
--- Comment #16 from Anastasius Focht <focht at gmx.net> 2012-11-29 15:28:21 CST ---
Hello,
that 4K demo has its own custom imports resolver and it doesn't like some
msvcrt functions being forwarded to ntdll.
--- snip ---
Wine-dbg>
0x7e6cc337 IDirectSoundBufferImpl_Lock+0x5f7
[/home/focht/projects/wine/wine-git/dlls/dsound/buffer.c:518] in dsound: ret
$0x20
518 }
Wine-dbg>
0x004214d2: pushl $0x596c00
Wine-dbg>
0x004214d7: pushl $0x68bbe04
Wine-dbg>
0x004214dc: pushl 0x004225c8
Wine-dbg>
0x004214e2: call 0x0042161c
Wine-dbg>
fixme:winedbg:be_i386_is_jump unknown ff
0x0042161c: jmp *0x6e600d8 -> 0x7e3faaeb
Wine-dbg>
0x7e3faaeb: outsb (%esi),%dx
--- snip ---
--- snip ---
004214AB 6A 00 PUSH 0
004214AD 6A 00 PUSH 0
004214AF 6A 00 PUSH 0
004214B1 68 44254200 PUSH OFFSET 00422544
004214B6 68 C8254200 PUSH OFFSET 004225C8
004214BB 68 006C5900 PUSH OFFSET 00596C00
004214C0 6A 00 PUSH 0
004214C2 A1 E4254200 MOV EAX,DWORD PTR DS:[4225E4]
004214C7 8B00 MOV EAX,DWORD PTR DS:[EAX]
004214C9 FF35 E4254200 PUSH DWORD PTR DS:[4225E4]
004214CF FF50 2C CALL DWORD PTR DS:[EAX+2C] ;
IDirectSoundBufferImpl_Lock
004214D2 68 006C5900 PUSH OFFSET 00596C00
004214D7 68 04BE8B06 PUSH OFFSET 068BBE04
004214DC FF35 C8254200 PUSH DWORD PTR DS:[4225C8]
004214E2 E8 35010000 CALL 0042161C
004214E7 83C4 0C ADD ESP,0C
004214EA 6A 00 PUSH 0
004214EC 6A 00 PUSH 0
004214EE FF35 44254200 PUSH DWORD PTR DS:[422544]
004214F4 FF35 C8254200 PUSH DWORD PTR DS:[4225C8]
004214FA A1 E4254200 MOV EAX,DWORD PTR DS:[4225E4]
004214FF 8B00 MOV EAX,DWORD PTR DS:[EAX]
00421501 FF35 E4254200 PUSH DWORD PTR DS:[4225E4]
00421507 FF50 4C CALL DWORD PTR DS:[EAX+4C]
0042150A 5D POP EBP
0042150B C3 RETN
--- snip ---
--- snip ---
0042161C - FF25 D800E606 JMP DWORD PTR DS:[6E600D8]
00421622 - FF25 3800E606 JMP DWORD PTR DS:[6E60038]
00421628 - FF25 D000E606 JMP DWORD PTR DS:[6E600D0]
0042162E - FF25 D400E606 JMP DWORD PTR DS:[6E600D4]
00421634 - FF25 CC00E606 JMP DWORD PTR DS:[6E600CC]
0042163A - FF25 E000E606 JMP DWORD PTR DS:[6E600E0]
00421640 - FF25 C400E606 JMP DWORD PTR DS:[6E600C4]
00421646 - FF25 C800E606 JMP DWORD PTR DS:[6E600C8]
0042164C - FF25 9000E606 JMP DWORD PTR DS:[6E60090]
00421652 - FF25 5000E606 JMP DWORD PTR DS:[6E60050]
00421658 - FF25 4C00E606 JMP DWORD PTR DS:[6E6004C]
0042165E - FF25 7C00E606 JMP DWORD PTR DS:[6E6007C]
00421664 - FF25 B400E606 JMP DWORD PTR DS:[6E600B4]
0042166A - FF25 BC00E606 JMP DWORD PTR DS:[6E600BC]
--- snip ---
App IAT:
--- snip ---
06E60000 7B87978B ; KERNEL32.AcquireSRWLockExclusive
...
06E60014 7B865A70 ; KERNEL32.ExitProcess
06E60018 7B8580ED ; KERNEL32.LoadLibraryA
06E6001C 7ECF1CCD ; user32.CreateWindowExA
...
06E600C8 7E6C7E2A ; dsound.DirectSoundCreate
06E600CC 7E3ED8F4 ; ASCII "ntdll._ftol" ; forwarded, problem
06E600D0 7E3925B1 ; msvcrt.cos
06E600D4 7E3930F8 ; msvcrt.fabs
06E600D8 7E3EDAEB ; ASCII "ntdll.memcpy" ; forwarded, problem
06E600DC 7E392867 ; msvcrt.pow
06E600E0 7E3928D6 ; msvcrt.sin
06E600E4 00000000
--- snip ---
http://source.winehq.org/git/wine.git/blob/5e50ec3df288b3bc9221c2deb802fa1ddc846df2:/dlls/msvcrt/msvcrt.spec#l1341
--- snip ---
...
456 @ cdecl -ret64 _ftol() ntdll._ftol
...
1341 @ cdecl memcpy(ptr ptr long) ntdll.memcpy
...
--- snip ---
Native msvcrt doesn't forward these to ntdll.
Regards
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
More information about the wine-bugs
mailing list