Function at 0x502f30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x503193
sub esp, 0x68
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax + 0xc]
mov ebp, dword [esp + 0x74]
movzx esi, byte [ebp]
xchg esi, eax
test al, al
xchg esi, eax
je 0x503186
mov ecx, dword [esp + 0x78]
test ecx, ecx
je 0x502f77
mov edx, dword [ecx + 8]
test edx, edx
jne 0x502f9f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 0
call fcn.00501150
mov eax, dword [esp + 0xc]
mov dword [esp + 0x7c], eax
add esp, 0x68
ret
mov byte [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
lea edx, [esp + 0x58]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00504960
mov eax, dword [esp + 0xc]
test eax, eax
je 0x50317a
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov ebx, dword [esp + 0x74]
mov ebp, dword [ebx + 0xc]
mov dword [esp + 0x40], ebp
mov esi, dword [ebx + 4]
mov ebx, dword [ebx + 8]
mov dword [esp + 0x3c], ebx
mov edi, dword [esp + 0x78]
test edi, edi
je 0x50316f
mov ebp, dword [edi + 8]
mov ebx, dword [edi + 4]
mov edi, dword [edi + 0xc]
mov dword [esp + 0x48], edi
mov dword [esp + 0x44], ebp
mov dword [esp + 0x54], ebx
mov dword [esp + 0x4c], esi
mov edi, dword [esp + 0x6c]
mov ebp, dword [edi + 8]
mov ebx, dword [edi + 4]
mov edi, dword [edi + 0xc]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x28], edx
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x2c], ebx
call fcn.0050e3a0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], ecx
lea edi, [ebx + 4]
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x50315f
mov dword [ebx + 4], edx
test eax, eax
jle 0x503158
mov eax, dword [esp + 0x70]
movzx eax, byte [eax]
test al, al
je 0x503158
mov eax, dword [esp + 0x3c]
test eax, eax
jle 0x503158
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
and eax, 1
cmp eax, 1
sete al
mov byte [ebx], al
test al, al
je 0x5030de
mov eax, dword [esp + 0x44]
test eax, eax
jg 0x5030e6
mov dword [esp + 0x7c], ebx
add esp, 0x68
ret
mov dword [esp + 0x50], edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx + 8]
mov ebp, dword [ebx + 0xc]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov esi, dword [esp + 0x54]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ebp
call fcn.00508e30
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], ecx
mov eax, dword [0xdd7ec0]
test eax, eax
jne 0x50314b
mov dword [ebx + 4], edx
mov byte [ebx], 0
jmp 0x5030de
mov edi, dword [esp + 0x50]
mov eax, edx
call fcn.00456fe0
jmp 0x503146
xor eax, eax
jmp 0x5030d0
mov ecx, eax
mov eax, edx
call fcn.00456fe0
mov eax, ecx
jmp 0x50309e
xor edi, edi
xor ebp, ebp
xor ebx, ebx
jmp 0x50300f
mov dword [esp + 0x7c], 0
add esp, 0x68
ret
mov eax, ebx
mov esi, ecx
mov ecx, edx
mov edx, esi
jmp 0x502fe5
call fcn.004557a0
jmp fcn.00502f30