Function at 0x200d3060
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x13
push 0
push 0
dec ecx
jne 0x200d3068
push ebx
push esi
push edi
xor eax, eax
push ebp
push 0x200d3733
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0xc], eax
cmp dword [0x200e2c24], 0xffffffff
jle 0x200d3645
xor edx, edx
push ebp
push 0x200d3627
push dword fs:[edx]
mov dword fs:[edx], esp
call sym.shv.dll_InitConfig
call sym.shv.dll_DetectGamepad
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
mov edx, 0x200e2b41
mov ecx, 0x17
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x18]
mov ecx, 1
mov edx, 0x17
call fcn.2000ae28
mov edx, dword [ebp - 0x14]
lea eax, [ebp - 0x10]
call fcn.2000b180
mov eax, dword [ebp - 0x10]
call fcn.20021a9c
mov dword [0x200e2c34], eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x24]
mov edx, 0x200e2bd1
mov ecx, 0x1d
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x24]
mov ecx, 1
mov edx, 0x1d
call fcn.2000ae28
mov edx, dword [ebp - 0x20]
lea eax, [ebp - 0x1c]
call fcn.2000b180
mov eax, dword [ebp - 0x1c]
call fcn.20021a9c
mov dword [0x200e2c28], eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x30]
mov edx, 0x200e2b04
mov ecx, 0xe
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x30]
mov ecx, 1
mov edx, 0xe
call fcn.2000ae28
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 0x28]
call fcn.2000b180
mov eax, dword [ebp - 0x28]
call fcn.20021a9c
mov dword [0x200e2c2c], eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x38]
mov edx, 0x200e2b12
mov ecx, 0xd
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x38]
mov ecx, 1
mov edx, 0xd
call fcn.2000ae28
mov edx, dword [ebp - 0x34]
mov eax, 0x200e2bf0
call fcn.2000b180
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x40]
mov edx, 0x200e2b1f
mov ecx, 0xb
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x40]
mov ecx, 1
mov edx, 0xb
call fcn.2000ae28
mov edx, dword [ebp - 0x3c]
mov eax, 0x200e2bf4
call fcn.2000b180
cmp dword [0x200e2c2c], 0
je 0x200d31fd
cmp dword [0x200e2c2c], 3
jg 0x200d31fd
mov eax, dword [0x200e2c2c]
mov byte [0x1172e870], al
jmp 0x200d3204
mov byte [0x1172e870], 9
mov dword [0x200e2c24], 1
lea eax, [ebp - 4]
push eax
push 4
push 0xf79000
push 0x10001000
call sub.kernel32.dll_VirtualProtect
call sym.shv.dll_OverrideNumControllers
cmp dword [0x200e2c34], 0
je 0x200d3236
call sym.shv.dll_OverrideButtonPrompts
call sym.shv.dll_DXVKCompat
call sym.shv.dll_WineCompat
call sym.shv.dll_SteamCompat
call sym.shv.dll_IDirect3DDevice9ExHack
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x4c]
mov edx, 0x200e2b93
mov ecx, 0x16
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x4c]
mov ecx, 2
mov edx, 0x14
call fcn.2000ae28
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 0x44]
call fcn.2000b180
mov ebx, dword [ebp - 0x44]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2c14]
wait
fldz
fld dword [0x200e2c14]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d32b7
mov eax, dword [0x200e2c14]
mov dword [0x10d90a18], eax
mov ecx, 1
mov edx, dword [0x200e2bf0]
mov eax, 0x200d3750
call fcn.2000b528
test eax, eax
je 0x200d3306
push 4
lea eax, [ebp - 0xc]
push eax
push 7
call sub.kernel32.dll_GetCurrentProcess
push eax
call sub.user32.dll_SetUserObjectInformationW
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x200d32ff
push sym.shv.dll_OptimizeHeap
push 0x927c0
push 0
push 0
call sub.user32.dll_SetTimer
mov byte [0x1156ad2b], 1
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x5c]
mov edx, 0x200e2b2a
mov ecx, 0x17
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x5c]
mov ecx, 3
mov edx, 0x15
call fcn.2000ae28
mov edx, dword [ebp - 0x58]
lea eax, [ebp - 0x54]
call fcn.2000b180
mov ebx, dword [ebp - 0x54]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2bfc]
wait
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x68]
mov edx, 0x200e2b58
mov ecx, 0xf
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x68]
mov ecx, 2
mov edx, 0xe
call fcn.2000ae28
mov edx, dword [ebp - 0x64]
lea eax, [ebp - 0x60]
call fcn.2000b180
mov ebx, dword [ebp - 0x60]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2c00]
wait
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x74]
mov edx, 0x200e2b67
mov ecx, 0x16
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x74]
mov ecx, 4
mov edx, 0x13
call fcn.2000ae28
mov edx, dword [ebp - 0x70]
lea eax, [ebp - 0x6c]
call fcn.2000b180
mov ebx, dword [ebp - 0x6c]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2c04]
wait
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x80]
mov edx, 0x200e2b7d
mov ecx, 0x16
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x80]
mov ecx, 3
mov edx, 0x14
call fcn.2000ae28
mov edx, dword [ebp - 0x7c]
lea eax, [ebp - 0x78]
call fcn.2000b180
mov ebx, dword [ebp - 0x78]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2c08]
wait
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x8c]
mov edx, 0x200e2ba9
mov ecx, 0x14
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x8c]
mov ecx, 3
mov edx, 0x12
call fcn.2000ae28
mov edx, dword [ebp - 0x88]
lea eax, [ebp - 0x84]
call fcn.2000b180
mov ebx, dword [ebp - 0x84]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2c0c]
wait
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x98]
mov edx, 0x200e2bbd
mov ecx, 0x14
push 0
call fcn.2000ace4
mov eax, dword [ebp - 0x98]
mov ecx, 3
mov edx, 0x12
call fcn.2000ae28
mov edx, dword [ebp - 0x94]
lea eax, [ebp - 0x90]
call fcn.2000b180
mov ebx, dword [ebp - 0x90]
mov edx, dword [0x200dbecc]
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x50]
call fcn.20023b1c
fstp dword [0x200e2c10]
wait
fldz
fld dword [0x200e2bfc]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d3527
mov eax, dword [0x200e2bfc]
mov dword [0x10d90980], eax
fldz
fld dword [0x200e2c00]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d3544
mov eax, dword [0x200e2c00]
mov dword [0x10d90984], eax
fldz
fld dword [0x200e2c04]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d3561
mov eax, dword [0x200e2c04]
mov dword [0x10d90988], eax
fldz
fld dword [0x200e2c08]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d357e
mov eax, dword [0x200e2c08]
mov dword [0x10d9098c], eax
fldz
fld dword [0x200e2c10]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d359b
mov eax, dword [0x200e2c10]
mov dword [0x10d90990], eax
fldz
fld dword [0x200e2c0c]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x200d35b8
mov eax, dword [0x200e2c0c]
mov dword [0x10d90998], eax
lea eax, [ebp - 8]
push eax
mov eax, dword [ebp - 4]
push eax
push 0xf79000
push 0x10001000
call sub.kernel32.dll_VirtualProtect
push 0
push 0
push 0
call sub.kernel32.dll_FlushInstructionCache
call sub.kernel32.dll_IsDebuggerPresent
cmp eax, 1
sbb eax, eax
inc eax
test al, al
je 0x200d35f3
push 0x200d3754
call sub.kernel32.dll_OutputDebugStringA
mov ecx, 1
mov edx, dword [0x200e2bf4]
mov eax, 0x200d3774
call fcn.2000b528
test eax, eax
je 0x200d361d
push 1
call sub.kernel32.dll_SetErrorMode
push 0x10045458
call sub.kernel32.dll_SetUnhandledExceptionFilter
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x200d3645
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x200d373d
lea eax, [ebp - 0x98]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x90]
call fcn.2000a5e4
lea eax, [ebp - 0x8c]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x84]
call fcn.2000a5e4
lea eax, [ebp - 0x80]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x78]
call fcn.2000a5e4
lea eax, [ebp - 0x74]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x6c]
call fcn.2000a5e4
lea eax, [ebp - 0x68]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x60]
call fcn.2000a5e4
lea eax, [ebp - 0x5c]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x54]
call fcn.2000a5e4
lea eax, [ebp - 0x4c]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x44]
call fcn.2000a5e4
lea eax, [ebp - 0x40]
mov edx, 6
call fcn.2000a67c
lea eax, [ebp - 0x28]
call fcn.2000a5e4
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x1c]
call fcn.2000a5e4
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.2000a67c
lea eax, [ebp - 0x10]
call fcn.2000a5e4
pop eax
jmp eax