Function at 0x503a20
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a9dc8
mov eax, dword fs:[0]
push eax
mov eax, 0x10c0
call fcn.00583150
mov eax, dword [0x63ad78]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0x27
jne 0x503a64
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0x27
je 0x503a7a
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x14]
cmp ecx, dword [eax + 8]
jge 0x503a7f
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [eax + 4]
jge 0x503a7f
jmp 0x503f45
push 1
mov eax, dword [ebp + 8]
add eax, 0xc
push eax
lea ecx, [ebp - 0x18]
call fcn.0050dd00
mov dword [ebp - 4], 0
mov byte [ebp - 0x58], 0
push 0x3f
push 0
lea eax, [ebp - 0x57]
push eax
call fcn.00582ec0
add esp, 0xc
lea eax, [ebp - 0x60]
push eax
call fcn.00503f90
add esp, 4
lea eax, [ebp - 0x60]
push eax
call fcn.00503f70
add esp, 4
push eax
push 0x6001a8
push 0x40
lea ecx, [ebp - 0x58]
push ecx
call fcn.0058431a
add esp, 0x10
mov byte [ebp - 0x1060], 0
push 0xfff
push 0
lea eax, [ebp - 0x105f]
push eax
call fcn.00582ec0
add esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x58]
push ecx
push str.__s____s__n
lea edx, [ebp - 0x1060]
push edx
call fcn.0058307d
add esp, 0x10
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x14]
cmp ecx, dword [eax + 8]
jl 0x503b28
lea eax, [ebp - 0x1060]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [eax + 4]
jl 0x503b3c
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0x27
jne 0x503b50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.0050dd40
jmp 0x503f45
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [eax + 4]
jl 0x503f2d
cmp dword [ebp + 0x10], 0x19
jne 0x503bb9
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x6024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1064], eax
cmp dword [ebp - 0x1064], 0
je 0x503bb4
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1064]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1064]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 4
jne 0x503c13
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x1024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1068], eax
cmp dword [ebp - 0x1068], 0
je 0x503c0e
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1068]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1068]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 9
jne 0x503c6d
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x7024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x106c], eax
cmp dword [ebp - 0x106c], 0
je 0x503c68
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x106c]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x106c]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x26
jne 0x503cc7
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x2024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1070], eax
cmp dword [ebp - 0x1070], 0
je 0x503cc2
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1070]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1070]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x25
jne 0x503d21
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x3024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1074], eax
cmp dword [ebp - 0x1074], 0
je 0x503d1c
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1074]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1074]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x12
jne 0x503d7b
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x4024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1078], eax
cmp dword [ebp - 0x1078], 0
je 0x503d76
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1078]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1078]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x1c
jne 0x503dd5
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x5024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x107c], eax
cmp dword [ebp - 0x107c], 0
je 0x503dd0
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x107c]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x107c]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x1d
jne 0x503e2f
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x8024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1080], eax
cmp dword [ebp - 0x1080], 0
je 0x503e2a
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1080]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1080]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x1e
jne 0x503e89
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x9024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1084], eax
cmp dword [ebp - 0x1084], 0
je 0x503e84
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1084]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1084]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
cmp dword [ebp + 0x10], 0x1f
jne 0x503ee0
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0xa024
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x1088], eax
cmp dword [ebp - 0x1088], 0
je 0x503ede
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x1088]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x1088]
push eax
call fcn.00582a75
add esp, 4
jmp 0x503f2d
push 0x5eaf94
mov eax, dword [ebp + 8]
add eax, 0x24
push eax
call fcn.00583066
add esp, 8
mov dword [ebp - 0x108c], eax
cmp dword [ebp - 0x108c], 0
je 0x503f2d
lea eax, [ebp - 0x1060]
push eax
push 0x5d7fc4
mov ecx, dword [ebp - 0x108c]
push ecx
call fcn.0058705f
add esp, 0xc
mov eax, dword [ebp - 0x108c]
push eax
call fcn.00582a75
add esp, 4
lea eax, [ebp - 0x18]
push eax
call fcn.0050dd70
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.0050dd40
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005824ce
mov esp, ebp
pop ebp
ret 0x10