Description
Game crashes on launch when IdealStaticGameLOD
setting is missing from Options.ini file. Reproducible on Windows 10. Options.ini is meant to be generated on first launch, but game cannot do this because likely function that evaluates default setting for IdealStaticGameLOD
crashes the process.
Crash can be avoided by creating Options.ini file in
"%USERPROFILE%\Documents\Command and Conquer Generals Zero Hour Data"
with IdealStaticGameLOD = Low
written in it.
Callstack
> game.dat!007d1a0f()
[Frames below may be incorrect and/or missing, no symbols loaded for game.dat]
game.dat!007d199d()
game.dat!007d1932()
game.dat!007d1816()
game.dat!00785206()
game.dat!007851d2()
ntdll.dll!_ZwSetInformationThread@16() + 0xc bytes
KernelBase.dll!SetThreadPriority() + 0x49 bytes
Code
007D19EE nop
007D19EF nop
007D19F0 push ebx
007D19F1 push ebp
007D19F2 push esi
007D19F3 mov esi,dword ptr [esp+14h]
007D19F7 push edi
007D19F8 mov edi,dword ptr [esp+14h]
007D19FC mov eax,esi
007D19FE mov ebx,65h
007D1A03 mov ecx,edi
007D1A05 mov edx,65h
007D1A0A sub ecx,esi
007D1A0C mov ebp,dword ptr [ecx+eax]
007D1A0F mov dword ptr [eax],ebp
007D1A11 add eax,4
007D1A14 dec edx
007D1A15 jne 007D1A0C
007D1A17 dec ebx
007D1A18 jne 007D1A03
007D1A1A pop edi
007D1A1B pop esi
007D1A1C pop ebp
007D1A1D pop ebx
007D1A1E ret
Registers
EAX = 05AC1000 EBX = 0000001C ECX = FFFE21D4 EDX = 0000004B ESI = 05AB9C64 EDI = 05A9BE38 EIP = 007D1A0F ESP = 0019AF78 EBP = 0002856A EFL = 00010206
05AC1000 = ????????