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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x74]
cmp eax, dword [ecx + 8]
jbe 0x50073b
sub esp, 0xf4
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
mov eax, dword [esp + 0x114]
test eax, eax
je 0x5006ba
lea eax, [0x6bcbe0]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00402ce0
mov eax, dword [esp + 8]
mov dword [esp + 0x28], eax
mov dword [esp], 4
lea ecx, [0x74fb8c]
mov dword [esp + 4], ecx
call fcn.004262e0
test eax, eax
jne 0x5006ad
lea eax, [0x6bc8a0]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00402ce0
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], eax
lea ecx, [0x6f28c0]
mov dword [esp], ecx
call fcn.0040e460
mov eax, dword [esp + 4]
mov dword [esp + 0x54], eax
lea ecx, [0x512ae0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x108]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x10c]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x9cadb0]
lea edx, [eax + 4]
test ecx, ecx
jne 0x500691
mov ecx, dword [esp + 0x104]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x114]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x118]
mov dword [eax + 0x18], ecx
mov ecx, dword [0x9cadb0]
lea edx, [eax + 0x10]
lea ebx, [eax + 0x1c]
lea ebp, [eax + 0x20]
lea esi, [eax + 0x24]
test ecx, ecx
jne 0x50062e
mov ecx, dword [esp + 0x110]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x100]
mov dword [eax + 0x1c], ecx
mov edx, dword [esp + 0x2c]
mov dword [eax + 0x20], edx
mov ebx, dword [esp + 0x28]
mov dword [eax + 0x24], ebx
lea edi, [esp + 0x6c]
xor eax, eax
call fcn.0044c88b
lea edi, [esp + 0x80]
call fcn.0044c88b
mov ecx, dword [esp + 0xf8]
mov dword [esp], ecx
mov edx, dword [esp + 0xfc]
mov dword [esp + 4], edx
call fcn.004fb550
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov dword [esp + 0x30], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x34], ebx
mov dword [esp], 0
mov dword [esp + 4], ecx
call fcn.004262e0
test eax, eax
jne 0x500621
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov byte [esp + 0x10], 1
mov dword [esp], 0xc
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call fcn.0042f310
mov eax, dword [esp + 0x100]
mov ecx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
test ecx, ecx
sete dl
test eax, eax
seta bl
and edx, ebx
test ecx, ecx
setg bl
or ebx, edx
test bl, bl
je 0x500615
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0047b6d0
mov eax, dword [esp + 8]
mov dword [esp + 0x38], eax
mov dword [esp], 8
lea ecx, [0x74fd50]
mov dword [esp + 4], ecx
call fcn.004262e0
test eax, eax
jne 0x500608
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx]
mov dword [esp + 0x50], edx
lea edi, [esp + 0x94]
xor eax, eax
call fcn.0044c88b
lea edi, [esp + 0xa8]
call fcn.0044c87d
lea ecx, [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], 0x4c
mov dword [esp + 8], 0
mov dword [esp + 0xc], 2
call fcn.004347b0
lea ecx, [esp + 0xa8]
mov dword [esp], ecx
mov edx, dword [esp + 0x50]
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call fcn.004349c0
lea ecx, [esp + 0xa8]
mov dword [esp], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
lea ebx, [esp + 0x94]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0
call fcn.004349c0
lea ecx, [esp + 0xa8]
mov dword [esp], ecx
call fcn.00434d00
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x50058b
cmp ecx, 1
jne 0x500739
lea edi, [esp + 0x58]
lea esi, [esp + 0x94]
call fcn.0044cd6e
mov ecx, dword [esp + 0x60]
test ecx, ecx
je 0x500552
movzx ecx, byte [esp + 0x68]
test cl, cl
je 0x50053d
lea edi, [esp + 0x6c]
lea esi, [esp + 0x58]
call fcn.0044cd6e
movzx ecx, byte [esp + 0x7d]
test cl, cl
je 0x5004bd
movzx ecx, byte [esp + 0x91]
test cl, cl
jne 0x500504
movzx ecx, byte [esp + 0x68]
test cl, cl
je 0x5003b2
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.0047b670
movzx eax, byte [esp + 4]
test al, al
je 0x5003b2
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call fcn.0047b800
jmp 0x5003b2
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], ecx
nop
call fcn.00426b00
add esp, 0xf4
ret
lea edi, [esp + 0x80]
lea esi, [esp + 0x58]
call fcn.0044cd6e
jmp 0x5004a8
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
nop
call fcn.00426b00
add esp, 0xf4
ret
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
call fcn.004fb550
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 8]
mov dword [esp + 0x3c], edx
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.004262e0
test eax, eax
jne 0x5005fb
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov byte [esp + 0x10], 0
mov dword [esp], 0xc
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call fcn.0042f310
jmp 0x5003b2
nop
call fcn.00426b00
add esp, 0xf4
ret
nop
call fcn.00426b00
add esp, 0xf4
ret
xor ecx, ecx
mov eax, 0x11e1a300
jmp 0x500380
nop
call fcn.00426b00
add esp, 0xf4
ret
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov dword [esp], edx
mov eax, dword [esp + 0x110]
mov dword [esp + 4], eax
call fcn.0040ecd0
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
call fcn.0040ecd0
mov eax, dword [esp + 0x48]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.0040ecd0
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
call fcn.0040ecd0
jmp 0x5002d2
mov dword [esp], edx
mov eax, dword [esp + 0x104]
mov dword [esp + 4], eax
call fcn.0040ecd0
mov eax, dword [esp + 0x54]
jmp 0x500282
nop
call fcn.00426b00
add esp, 0xf4
ret
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x104]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 0x14], eax
call fcn.00500750
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], ebx
mov dword [esp + 0x128], edx
nop
call fcn.00426b00
add esp, 0xf4
ret
ud2
call fcn.0044ae20
jmp fcn.00500180