Function at 0x43e6b0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x114
mov eax, dword [0x5e1da0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
call fcn.0043d7c0
push 0
lea eax, [ebp - 0x110]
push eax
push 0
mov dword [esi + 0x2c], 0
mov dword [ebp - 0x110], 0
call sub.DDRAW.dll_DirectDrawCreate
mov dword [esi + 0x2ec], eax
test eax, eax
jns 0x43e725
push eax
add esi, 0x308
push str._LOUIS___08X__DirectDraw_Object_Creation_failure___n
push esi
call fcn.004026d0
mov ecx, dword [esi]
add esp, 0xc
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005520da
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x110]
mov edx, dword [eax]
push edi
lea edi, [esi + 0xc]
push edi
push 0x5b8c70
push eax
mov eax, dword [edx]
call eax
mov dword [esi + 0x2ec], eax
mov eax, dword [ebp - 0x110]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esi + 0x2ec]
test eax, eax
jns 0x43e78a
push eax
add esi, 0x308
push str._LOUIS___08X__DirectDraw2_Object_Creation_failure___n
push esi
call fcn.004026d0
mov eax, dword [esi]
add esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005520da
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
mov edx, dword [esi + 8]
mov ecx, dword [eax]
push 8
push edx
push eax
mov eax, dword [ecx + 0x50]
call eax
mov dword [esi + 0x2ec], eax
test eax, eax
jns 0x43e7ea
mov eax, dword [edi]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esi + 0x2ec]
push eax
mov dword [edi], 0
lea edi, [esi + 0x308]
push str._LOUIS___08X__SetCooperativeLevel_is_failed__n
push edi
call fcn.004026d0
mov ecx, dword [edi]
add esp, 0xc
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005520da
mov esp, ebp
pop ebp
ret
push 0x6c
lea edx, [ebp - 0x70]
push 0
push edx
call fcn.00552060
mov eax, dword [edi]
add esp, 0xc
push 0
lea edx, [ebp - 0x114]
push edx
lea edx, [ebp - 0x70]
mov dword [ebp - 0x70], 0x6c
mov dword [ebp - 0x6c], 1
mov dword [ebp - 8], 0x200
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x18]
call eax
mov dword [esi + 0x2ec], eax
test eax, eax
jns 0x43e876
mov eax, dword [edi]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esi + 0x2ec]
push eax
mov dword [edi], 0
lea edi, [esi + 0x308]
push str._LOUIS___08X__CreateSurface__IDirectDrawSurface__is_failed__n
push edi
call fcn.004026d0
mov ecx, dword [edi]
add esp, 0xc
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005520da
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x114]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [esi + 4]
test eax, eax
je 0x43e89b
cmp dword [eax], 0
jne 0x43e89b
mov ecx, esi
call fcn.0043c660
test eax, eax
je 0x43e864
lea ecx, [ebp - 0x10c]
push ecx
push 0xffffffffffffffff
push 0
call dword [sym.imp.USER32.dll_EnumDisplaySettingsA]
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0xa0]
mov dword [esi + 0x2f8], eax
mov eax, dword [esi + 4]
mov dword [esi + 0x2f4], edx
test eax, eax
je 0x43e8e4
cmp dword [eax], 0
je 0x43e8e4
mov edi, dword [edi]
mov ecx, dword [edi]
mov edx, dword [ecx + 0x20]
push 0x43e3b0
push esi
push 0
push 0
push edi
call edx
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
xor ecx, ebp
mov dword [0x5e5274], eax
pop esi
call fcn.005520da
mov esp, ebp
pop ebp
ret