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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x2ac]
cmp eax, dword [ecx + 8]
jbe 0x5c1168
sub esp, 0x32c
lea eax, [0x669da0]
mov dword [esp], eax
call fcn.0040b430
mov eax, dword [esp + 4]
mov dword [esp + 0x318], eax
mov ecx, dword [esp + 0x330]
mov edx, dword [ecx + 0x138]
mov ebx, dword [ecx + 0x13c]
test edx, edx
je 0x5c0a04
nop
movzx ebp, byte [0x8ae228]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5c09ca
mov dword [0x8ae22c], edx
mov ebp, dword [0x8d5630]
test ebp, ebp
jne 0x5c09b9
mov dword [0x8ae230], ebx
jmp 0x5c09ca
lea edi, [0x8ae230]
mov ebp, eax
mov eax, ebx
call fcn.0045efb0
mov eax, ebp
mov dword [esp + 0x324], edx
mov dword [esp + 0x328], ebx
mov edx, dword [esp + 0x324]
test edx, edx
je 0x5c09fc
nop
movzx ebp, byte [edx + 0xf]
mov esi, ebp
and ebp, 0x1f
xchg esi, eax
test al, 0x20
xchg esi, eax
jne 0x5c0a0a
or ebp, 0x80
jmp 0x5c0a0a
xor ebp, ebp
xor edx, edx
xor ebx, ebx
jmp 0x5c0a0a
xor ebp, ebp
xor edx, edx
xor ebx, ebx
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 0x28
call fcn.004b0450
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x44], eax
cmp eax, 9
ja 0x5c0a5d
cmp eax, 7
jne 0x5c0a41
mov eax, dword [ecx]
xor ecx, ecx
jmp 0x5c0a81
cmp eax, 8
jne 0x5c0a4d
movzx eax, byte [ecx]
xor ecx, ecx
jmp 0x5c0a81
cmp eax, 9
jne 0x5c112d
movzx eax, word [ecx]
xor ecx, ecx
jmp 0x5c0a81
cmp eax, 0xa
jne 0x5c0a68
mov eax, dword [ecx]
xor ecx, ecx
jmp 0x5c0a81
cmp eax, 0xb
jne 0x5c0a74
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
jmp 0x5c0a81
cmp eax, 0xc
jne 0x5c112d
mov eax, dword [ecx]
xor ecx, ecx
test eax, eax
sete dl
test ecx, ecx
sete cl
and ecx, edx
test cl, cl
jne 0x5c0f32
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x330]
movzx edx, byte [ecx + 0x294]
test dl, dl
je 0x5c0bf6
lea eax, [0x685040]
mov dword [esp], eax
call fcn.0040b430
mov esi, dword [esp + 4]
mov dword [esp + 0x310], esi
lea edi, [esp + 0x48]
call fcn.0045f692
lea eax, [0x685040]
mov dword [esp], eax
lea ecx, [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x685040]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b53b0
mov eax, dword [esp + 8]
mov dword [esp + 0x40], eax
lea edi, [esp + 0x134]
xor eax, eax
call fcn.0045f208
mov eax, dword [esp + 0x330]
mov ecx, dword [eax + 0x78]
mov esi, dword [eax + 0x7c]
lea edx, [0x68b380]
cmp ecx, edx
jne 0x5c1117
lea edi, [esp + 0x134]
call fcn.0045f520
mov ecx, dword [esp + 0x150]
mov dword [esp], eax
mov edx, dword [esp + 0x24]
sub edx, ecx
mov dword [esp + 4], edx
call fcn.005b7ea0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
lea edx, [0x6496e0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x310]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5c0be4
lea edi, [esp + 0x48]
mov esi, dword [esp + 0x310]
call fcn.0045f692
lea eax, [0x685040]
mov dword [esp], eax
lea ecx, [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x685040]
mov edx, dword [esp + 0x318]
mov dword [edx], ecx
mov ecx, dword [0x8d5630]
test ecx, ecx
jne 0x5c0bd7
mov dword [edx + 4], eax
jmp 0x5c0bdf
lea edi, [edx + 4]
call fcn.0045efb0
jmp 0x5c0d36
mov dword [esp + 0x334], 0
add esp, 0x32c
ret
lea eax, [0x685120]
mov dword [esp], eax
call fcn.0040b430
mov esi, dword [esp + 4]
mov dword [esp + 0x30c], esi
lea edi, [esp + 0xe4]
call fcn.0045f688
lea eax, [0x685120]
mov dword [esp], eax
lea ecx, [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x685120]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b53b0
mov eax, dword [esp + 8]
mov dword [esp + 0x40], eax
lea edi, [esp + 0x214]
xor eax, eax
call fcn.0045f204
mov eax, dword [esp + 0x330]
mov ecx, dword [eax + 0x78]
mov esi, dword [eax + 0x7c]
lea edx, [0x68ae40]
cmp ecx, edx
jne 0x5c1101
lea edi, [esp + 0x214]
call fcn.0045f4f8
mov ecx, dword [esp + 0x22c]
mov edx, dword [esp + 0x24]
sub edx, ecx
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005b7ea0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
lea edx, [0x649720]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x30c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5c0f20
lea edi, [esp + 0xe4]
mov esi, dword [esp + 0x30c]
call fcn.0045f688
lea eax, [0x685120]
mov dword [esp], eax
lea ecx, [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x685120]
mov edx, dword [esp + 0x318]
mov dword [edx], ecx
mov ecx, dword [0x8d5630]
test ecx, ecx
jne 0x5c0d2e
mov dword [edx + 4], eax
jmp 0x5c0d36
lea edi, [edx + 4]
call fcn.0045efb0
mov ecx, dword [edx]
mov eax, dword [edx + 4]
test ecx, ecx
je 0x5c0da8
nop
movzx ebx, byte [0x8ae228]
test bl, bl
je 0x5c0d6e
mov dword [0x8ae22c], ecx
mov ebx, dword [0x8d5630]
test ebx, ebx
jne 0x5c0d63
mov dword [0x8ae230], eax
jmp 0x5c0d6e
lea edi, [0x8ae230]
call fcn.0045efb0
mov dword [esp + 0x31c], ecx
mov dword [esp + 0x320], eax
mov ecx, dword [esp + 0x31c]
test ecx, ecx
je 0x5c0da0
nop
movzx ebx, byte [ecx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x5c0dae
or ebx, 0x80
jmp 0x5c0dae
xor ebx, ebx
xor ecx, ecx
xor eax, eax
jmp 0x5c0dae
xor ebx, ebx
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x308], eax
mov dword [esp + 0x304], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
lea edx, [0x693ba7]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0xa
call fcn.004b0800
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004b0b50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [0x65ab80]
cmp ecx, edx
jne 0x5c10eb
mov eax, dword [eax]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x304]
mov dword [esp], ecx
mov edx, dword [esp + 0x308]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x20]
mov dword [esp + 8], ebx
lea ebp, [0x696b3d]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], 0xf
call fcn.004b0800
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004b0b50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [0x65ab80]
cmp ecx, edx
jne 0x5c10d5
mov eax, dword [eax]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x304]
mov dword [esp], ecx
mov ecx, dword [esp + 0x308]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], ecx
lea ecx, [0x696a98]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0xf
call fcn.004b0800
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004b0b50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [0x65ab80]
cmp ecx, edx
jne 0x5c10bf
mov eax, dword [eax]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
mov edx, dword [esp + 0x34]
mov dword [esp + 4], edx
call fcn.005b7ea0
mov eax, dword [esp + 8]
xor ecx, ecx
jmp 0x5c0f67
mov dword [esp + 0x334], 0
add esp, 0x32c
ret
mov dword [esp + 0x334], 0
add esp, 0x32c
ret
lea ecx, [ebx + 1]
mov dword [edx + 0xc], ecx
lea ecx, [ebx + ebx*4]
shl ecx, 4
add ecx, eax
mov eax, edi
mov edi, ecx
mov esi, dword [esp + 0x314]
call fcn.0045f688
mov ecx, dword [esp + 0x2c]
inc ecx
mov edx, dword [esp + 0x30]
cmp ecx, edx
jae 0x5c10aa
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], eax
lea eax, [0x67ebc0]
mov dword [esp], eax
call fcn.0040b430
mov esi, dword [esp + 4]
mov dword [esp + 0x314], esi
lea edi, [esp + 0x94]
call fcn.0045f688
lea eax, [0x67ebc0]
mov dword [esp], eax
lea ecx, [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x67ebc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b53b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
lea edx, [0x649760]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x314]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x28]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5c1098
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x28]
add ecx, eax
mov edx, dword [esp + 0x318]
mov ebx, dword [edx + 0xc]
lea ebp, [ebx + 1]
mov esi, eax
mov eax, dword [edx + 8]
mov edi, ecx
mov ecx, dword [edx + 0x10]
cmp ecx, ebp
jae 0x5c0f44
mov dword [esp + 0x3c], edi
lea edx, [0x67ebc0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00448240
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x318]
mov dword [ebx + 0x10], edx
mov edx, dword [0x8d5630]
test edx, edx
jne 0x5c107f
mov dword [ebx + 8], eax
jmp 0x5c1087
lea edi, [ebx + 8]
call fcn.0045efb0
mov edx, ebx
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
jmp 0x5c0f44
mov dword [esp + 0x334], 0
add esp, 0x32c
ret
mov eax, dword [esp + 0x318]
mov dword [esp + 0x334], eax
add esp, 0x32c
ret
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x65a380]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x65a380]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x65a380]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x65a380]
mov dword [esp + 8], eax
call fcn.00408a40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x65a380]
mov dword [esp + 8], eax
call fcn.00408a40
lea eax, [0x66b720]
mov dword [esp], eax
call fcn.0040b430
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x12
lea ecx, [0x698b91]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x662520]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00434020
nop
call fcn.0045dba0
jmp fcn.005c0940