Function at 0x404eb0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 8
add esp, 0xfffff004
push eax
dec eax
jne 0x404eb9
mov eax, dword [ebp - 4]
add esp, 0xfffffbfc
push ebx
push esi
push edi
mov byte [ebp - 1], cl
mov ebx, edx
mov esi, eax
lea edx, [ebp - 0x8008]
mov eax, 0x405270
mov ecx, 0x26
call fcn.00403da0
mov edi, eax
mov eax, ebx
sub al, 1
jb 0x404f3e
je 0x404eff
dec al
je 0x404f14
dec al
je 0x404f29
jmp 0x404f51
mov eax, 0x405298
mov ecx, 6
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x404f51
mov eax, 0x4052a0
mov ecx, 7
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x404f51
mov eax, 0x4052a8
mov ecx, 0xa
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x404f51
mov eax, 0x4052b4
mov ecx, 0xf
mov edx, edi
call fcn.00403da0
mov edi, eax
mov eax, 0x4052c4
mov ecx, 0xc
mov edx, edi
call fcn.00403da0
mov edi, eax
cmp byte [ebp - 1], 0
je 0x4051d9
cmp byte [ebp + 8], 0
je 0x404fc9
cmp bl, 1
ja 0x404f99
mov eax, 0x4052d4
mov ecx, 0x42
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, esi
call fcn.00404de8
mov edi, eax
jmp 0x404fdc
cmp dword [esi + 8], 0
jne 0x404fb4
mov eax, 0x405318
mov ecx, 0x41
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x404fdc
mov eax, 0x40535c
mov ecx, 0x97
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x404fdc
mov eax, 0x4053f4
mov ecx, 0x25
mov edx, edi
call fcn.00403da0
mov edi, eax
cmp bl, 1
ja 0x404ff6
mov eax, 0x40541c
mov ecx, 0x21
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x405009
mov eax, 0x405440
mov ecx, 0x17
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0x74]
call fcn.00403cf0
mov edi, eax
cmp dword [esi + 0x14], 0
je 0x405079
cmp bl, 1
ja 0x405035
mov eax, 0x405458
mov ecx, 0x34
mov edx, edi
call fcn.00403da0
mov edi, eax
jmp 0x405048
mov eax, 0x405490
mov ecx, 0x29
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0x40]
call fcn.00403d48
mov edi, eax
mov eax, 0x4054bc
mov ecx, 0x39
mov edx, edi
call fcn.00403da0
mov edi, eax
lea eax, [esi + 0x14]
mov ecx, edi
mov edx, 0xb
call dword [0x532814]
mov edi, eax
lea eax, [esi + 0x78]
call fcn.00403f18
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4050b3
mov eax, 0x53a63c
cmp eax, dword [ebp - 8]
je 0x4050b3
mov eax, 0x4054f8
mov ecx, 0x3a
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [ebp - 8]
call fcn.00403dbc
mov edi, eax
cmp bl, 1
jbe 0x405149
cmp dword [esi + 8], 0
je 0x405149
mov eax, 0x405534
mov ecx, 0x38
mov edx, edi
call fcn.00403da0
mov edi, eax
mov eax, esi
add eax, 0x80
call fcn.00403f18
mov dword [ebp - 8], eax
mov eax, 0x53a63c
cmp eax, dword [ebp - 8]
jne 0x4050f7
xor eax, eax
mov dword [ebp - 8], eax
mov edx, edi
mov eax, dword [ebp - 8]
call fcn.00403dbc
mov edi, eax
cmp dword [esi + 0xc], 0
jbe 0x405128
mov eax, 0x405570
mov ecx, 0x1d
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0xc]
call fcn.00403cf0
mov edi, eax
mov eax, 0x405590
mov ecx, 0x1e
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0x10]
call fcn.00403cf0
mov edi, eax
jmp 0x40518d
cmp dword [esi + 0xc], 0
jbe 0x40516e
mov eax, 0x4055b0
mov ecx, 0x1e
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0xc]
call fcn.00403cf0
mov edi, eax
mov eax, 0x4055d0
mov ecx, 0x1f
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0x10]
call fcn.00403cf0
mov edi, eax
cmp dword [esi + 0x48], 0
je 0x4051ec
mov eax, 0x4055f0
mov ecx, 0x2f
mov edx, edi
call fcn.00403da0
mov edi, eax
mov edx, edi
mov eax, dword [esi + 0x44]
call fcn.00403d48
mov edi, eax
mov eax, 0x4054bc
mov ecx, 0x39
mov edx, edi
call fcn.00403da0
mov edi, eax
lea eax, [esi + 0x48]
mov ecx, edi
mov edx, 0xb
call dword [0x532814]
mov edi, eax
jmp 0x4051ec
mov eax, 0x405620
mov ecx, 0x25
mov edx, edi
call fcn.00403da0
mov edi, eax
cmp bl, 1
setne al
and eax, 0x7f
add eax, 3
cmp bl, 3
sete dl
and edx, 0x7f
add eax, edx
mov edx, edi
call fcn.00404bd8
mov edi, eax
mov edx, edi
mov eax, esi
call fcn.00404ca4
mov edi, eax
mov byte [edi], 0xd
inc edi
mov byte [edi], 0xa
inc edi
mov byte [edi], 0
lea eax, [ebp - 0x8008]
mov edx, edi
sub edx, eax
lea eax, [ebp - 0x8008]
call fcn.00404880
lea eax, [ebp - 0x8008]
push eax
call sub.kernel32.dll_OutputDebugStringA
lea edx, [ebp - 0x8408]
mov eax, 0x405648
call fcn.00403afc
lea edx, [ebp - 0x8408]
lea eax, [ebp - 0x8008]
call fcn.00403dec
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4