Function at 0x10050e2
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x100c
call fcn.01006be0
push ebx
push edi
push 1
xor edi, edi
push 0x10049cd
mov dword [ebp - 4], edi
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
jne 0x1005112
push 0x1001da0
call fcn.01003aec
pop ecx
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
mov ebx, 0x10092ac
push ebx
push eax
call dword [ecx + 0xc4]
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
lea edx, [ebp - 8]
push edx
lea edx, [ebp - 0xc]
push edx
push eax
call dword [ecx + 0x88]
cmp dword [0x10092c8], edi
jne 0x100533e
push esi
cmp dword [0x10093b0], edi
jne 0x10052ce
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
push 0xffffffffffffffff
push edi
push eax
call dword [ecx + 0x174]
mov esi, eax
cmp esi, edi
jge 0x10051c0
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0xc4]
test eax, eax
jne 0x100518c
cmp dword [0x10092ac], 7
je 0x1005345
push edi
push esi
call fcn.01006cbb
push eax
push esi
call fcn.01006c58
push eax
push 0x1001d7c
call fcn.01003aec
add esp, 0xc
cmp dword [0x10093a4], edi
je 0x10051c0
push 0x1001d30
call fcn.01003aec
pop ecx
jmp 0x10052ce
cmp dword [ebp - 0xc], 1
jne 0x10051ee
cmp dword [ebp - 8], 0x400
je 0x10051e1
cmp dword [ebp - 8], 0x401
je 0x10051e1
cmp dword [ebp - 8], 0x402
jne 0x10051ee
call fcn.01004fe2
test eax, eax
jne 0x10052ce
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
push 0xf
push 1
push eax
call dword [ecx + 0x54]
jmp 0x10052ce
cmp dword [0x10092ac], 6
jne 0x10052da
push 2
pop esi
cmp dword [0x1009384], esi
jne 0x1005242
mov eax, dword [0x10092c0]
mov ecx, dword [eax]
push 0xffffffffffffffff
push eax
call dword [ecx + 0x70]
mov esi, eax
cmp esi, edi
je 0x10052ce
push 0x1001328
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push esi
call fcn.01003b35
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
push 0x1001d28
push 8
push eax
call dword [ecx + 0x48]
add esp, 0xc
push 1
push 0x1000
lea eax, [ebp - 0x100c]
push eax
call fcn.01003d6e
test eax, eax
je 0x10052ce
cmp dword [0x10093b0], edi
je 0x100528b
mov eax, dword [0x10092c0]
mov ecx, dword [eax]
push 0x1001d20
push edi
push esi
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
lea edx, [ebp - 0x100c]
push edx
push 0x1001d18
push esi
push eax
call dword [ecx + 0x48]
add esp, 0x10
lea eax, [ebp - 0x100c]
push eax
call fcn.01004e5f
test eax, eax
jne 0x10052ce
mov eax, dword [0x10092b8]
mov ecx, dword [eax]
push esi
lea edx, [ebp - 0x100c]
push edx
push 1
push eax
call dword [ecx + 0x108]
cmp dword [0x10092c8], edi
je 0x1005202
cmp dword [0x10092a4], edi
je 0x10052ef
call fcn.010047f7
mov dword [0x10092a4], edi
jmp 0x1005331
cmp dword [ebp - 0xc], 2
je 0x10052fd
mov dword [0x10092c8], edi
jmp 0x1005312
xor eax, eax
cmp dword [0x10092ac], 7
sete al
cmp eax, edi
mov dword [0x10092c8], eax
jne 0x1005345
cmp dword [0x10093b0], edi
je 0x1005331
mov eax, dword [0x10092c0]
mov ecx, dword [eax]
push 0xffffffffffffffff
push eax
call dword [ecx + 0x70]
mov esi, eax
cmp esi, edi
jne 0x1005231
cmp dword [0x10092c8], edi
je 0x1005149
pop esi
mov eax, dword [ebp - 4]
pop edi
pop ebx
leave
ret
mov dword [ebp - 4], 1
jmp 0x100533d