0
0

I am getting a strange inside fmodex.dll / fmodexL.dll

Since I have no source code available, I can show you an asm that causes the access violation:
[code:2uwibl9x]0x20E8F417 cmp dword ptr [ebp+ecx4-40h],eax
0x20E8F41B je 20E8F468
0x20E8F41D mov esi,dword ptr [ebp+ecx
4-40h]
0x20E8F421 and byte ptr [ebp+0Fh],0
0x20E8F425 mov ecx,dword ptr [esi+18h]
0x20E8F428 cmp ecx,edi
0x20E8F42A je 20E8F44A
0x20E8F42C mov eax,dword ptr [ecx] // it happens here
0x20E8F42E call dword ptr [eax+8]
0x20E8F431 test al,al
0x20E8F433 je 20E8F448
0x20E8F435 mov eax,dword ptr [ebx+34h]
0x20E8F438 mov byte ptr [ebp+0Fh],1
0x20E8F43C push dword ptr [eax+989Ch]
0x20E8F442 call 20E23221 [/code:2uwibl9x]

Looks like a virtual function is about to be called on null pointer.
It happens quite often and always at the same point.

Moving the execution point past two instructions (i.e. avoiding that call) allows the game to continue its code flow with no problem.

Register dump:
EAX = 0x223CFF08
EBX = 0x2711B0B0
ECX = 0x00000002
EDX = 0x00000001
ESI = 0x27143268
EDI = 0x00000000
EIP = 0x20E8F42C
ESP = 0x0012F3C8
EBP = 0x0012F414
EFL = 0x00200202

Memory dump at location [eax]. Looks like a virtual function table with two entries to me.
[code:2uwibl9x]
0x223CFF08 48 62 ec 20 e0 5f 37 22 00 00 00 00 00 00 00 00 b0 b0 11 27 00 00 00 00 60 fc 3c 22 00 Hbм а_7"........°°.’....`ь<".
0x223CFF25 00 00 00 ca 00 02 00 40 20 00 00 00 00 00 00 ac 03 00 00 00 00 00 00 00 00 00 00 00 00 ...К...@ ......¬.............
0x223CFF42 00 00 ad 6f c4 00 ad 6f c4 00 00 24 74 49 00 00 c8 42 00 00 00 00 58 ff 3c 22 58 ff 3c ..­oД.­oД..$tI..ИB....Xя<"Xя<
0x223CFF5F 22 00 00 00 00 00 00 00 00 ac 03 00 00 00 03 00 00 ac 03 00 00 00 03 00 00 34 f7 37 22 "........¬.......¬.......4ч7"
0x223CFF7C e0 10 1d 27 08 ff 3c 22 ff ff ff ff 00 00 00 00 01 00 00 00 50 e4 3a 22 00 00 00 00 00 а..’.я<"яяяя........Pд:".....
[/code:2uwibl9x]

Memory dump at location [ebx]:
[code:2uwibl9x]
0x2711B0B0 dc 62 ec 20 00 00 00 00 48 61 37 22 88 89 11 27 00 00 00 00 00 00 00 00 00 af 11 27 70 Ьbм ....Ha7"€..’.........Ї.’p
0x2711B0CD ab 11 27 b0 b0 11 27 74 f6 01 00 63 00 00 00 00 00 00 00 03 00 63 10 e0 5f 37 22 01 00 «.’°°.’tц..c.........c.а_7"..
0x2711B0EA 00 00 08 ff 3c 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...я<".......................
[/code:2uwibl9x]

Callstack is a mess (I just catched this in release mode).
fmod.log is available here: http://www.everfall.com/paste/id.php?gjzyybs7q4s3

That’s all the information I can provide for now.

Do you think it is a memory corruption or fmodex problem?

  • You must to post comments
0
0

If you say it happens often is it possible to send us something that reproduces the problem that we can look at here?

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.