Function at 0x5d8320
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 0x5d8b48
sub esp, 0x32c
lea eax, [0x635d80]
mov dword [esp], eax
call fcn.0040b7c0
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 0x5d83e4
nop
movzx ebp, byte [0x8553f8]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5d83aa
mov dword [0x8553fc], edx
mov ebp, dword [0x87bd00]
test ebp, ebp
jne 0x5d8399
mov dword [0x855400], ebx
jmp 0x5d83aa
lea edi, [0x855400]
mov ebp, eax
mov eax, ebx
call fcn.004626c0
mov eax, ebp
mov dword [esp + 0x324], edx
mov dword [esp + 0x328], ebx
mov edx, dword [esp + 0x324]
test edx, edx
je 0x5d83dc
nop
movzx ebp, byte [edx + 0xf]
mov esi, ebp
and ebp, 0x1f
xchg esi, eax
test al, 0x20
xchg esi, eax
jne 0x5d83ea
or ebp, 0x80
jmp 0x5d83ea
xor ebp, ebp
xor edx, edx
xor ebx, ebx
jmp 0x5d83ea
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.004b57e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x44], eax
cmp eax, 9
ja 0x5d843d
cmp eax, 7
jne 0x5d8421
mov eax, dword [ecx]
xor ecx, ecx
jmp 0x5d8461
cmp eax, 8
jne 0x5d842d
movzx eax, byte [ecx]
xor ecx, ecx
jmp 0x5d8461
cmp eax, 9
jne 0x5d8b0d
movzx eax, word [ecx]
xor ecx, ecx
jmp 0x5d8461
cmp eax, 0xa
jne 0x5d8448
mov eax, dword [ecx]
xor ecx, ecx
jmp 0x5d8461
cmp eax, 0xb
jne 0x5d8454
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
jmp 0x5d8461
cmp eax, 0xc
jne 0x5d8b0d
mov eax, dword [ecx]
xor ecx, ecx
test eax, eax
sete dl
test ecx, ecx
sete cl
and ecx, edx
test cl, cl
jne 0x5d8912
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x330]
movzx edx, byte [ecx + 0x294]
test dl, dl
je 0x5d85d6
lea eax, [0x64d400]
mov dword [esp], eax
call fcn.0040b7c0
mov esi, dword [esp + 4]
mov dword [esp + 0x310], esi
lea edi, [esp + 0x48]
call fcn.00462d92
lea eax, [0x64d400]
mov dword [esp], eax
lea ecx, [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.00408fb0
mov eax, dword [esp + 8]
lea ecx, [0x64d400]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ba710
mov eax, dword [esp + 8]
mov dword [esp + 0x40], eax
lea edi, [esp + 0x134]
xor eax, eax
call fcn.00462908
mov eax, dword [esp + 0x330]
mov ecx, dword [eax + 0x78]
mov esi, dword [eax + 0x7c]
lea edx, [0x652a00]
cmp ecx, edx
jne 0x5d8af7
lea edi, [esp + 0x134]
call fcn.00462c20
mov ecx, dword [esp + 0x150]
mov dword [esp], eax
mov edx, dword [esp + 0x24]
sub edx, ecx
mov dword [esp + 4], edx
call fcn.005cf880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
lea edx, [0x618680]
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.005d05a0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5d85c4
lea edi, [esp + 0x48]
mov esi, dword [esp + 0x310]
call fcn.00462d92
lea eax, [0x64d400]
mov dword [esp], eax
lea ecx, [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.00408fb0
mov eax, dword [esp + 8]
lea ecx, [0x64d400]
mov edx, dword [esp + 0x318]
mov dword [edx], ecx
mov ecx, dword [0x87bd00]
test ecx, ecx
jne 0x5d85b7
mov dword [edx + 4], eax
jmp 0x5d85bf
lea edi, [edx + 4]
call fcn.004626c0
jmp 0x5d8716
mov dword [esp + 0x334], 0
add esp, 0x32c
ret
lea eax, [0x64d4e0]
mov dword [esp], eax
call fcn.0040b7c0
mov esi, dword [esp + 4]
mov dword [esp + 0x30c], esi
lea edi, [esp + 0xe4]
call fcn.00462d88
lea eax, [0x64d4e0]
mov dword [esp], eax
lea ecx, [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.00408fb0
mov eax, dword [esp + 8]
lea ecx, [0x64d4e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ba710
mov eax, dword [esp + 8]
mov dword [esp + 0x40], eax
lea edi, [esp + 0x214]
xor eax, eax
call fcn.00462904
mov eax, dword [esp + 0x330]
mov ecx, dword [eax + 0x78]
mov esi, dword [eax + 0x7c]
lea edx, [0x6524c0]
cmp ecx, edx
jne 0x5d8ae1
lea edi, [esp + 0x214]
call fcn.00462bf8
mov ecx, dword [esp + 0x22c]
mov edx, dword [esp + 0x24]
sub edx, ecx
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005cf880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
lea edx, [0x6186c0]
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.005d05a0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5d8900
lea edi, [esp + 0xe4]
mov esi, dword [esp + 0x30c]
call fcn.00462d88
lea eax, [0x64d4e0]
mov dword [esp], eax
lea ecx, [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.00408fb0
mov eax, dword [esp + 8]
lea ecx, [0x64d4e0]
mov edx, dword [esp + 0x318]
mov dword [edx], ecx
mov ecx, dword [0x87bd00]
test ecx, ecx
jne 0x5d870e
mov dword [edx + 4], eax
jmp 0x5d8716
lea edi, [edx + 4]
call fcn.004626c0
mov ecx, dword [edx]
mov eax, dword [edx + 4]
test ecx, ecx
je 0x5d8788
nop
movzx ebx, byte [0x8553f8]
test bl, bl
je 0x5d874e
mov dword [0x8553fc], ecx
mov ebx, dword [0x87bd00]
test ebx, ebx
jne 0x5d8743
mov dword [0x855400], eax
jmp 0x5d874e
lea edi, [0x855400]
call fcn.004626c0
mov dword [esp + 0x31c], ecx
mov dword [esp + 0x320], eax
mov ecx, dword [esp + 0x31c]
test ecx, ecx
je 0x5d8780
nop
movzx ebx, byte [ecx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x5d878e
or ebx, 0x80
jmp 0x5d878e
xor ebx, ebx
xor ecx, ecx
xor eax, eax
jmp 0x5d878e
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, [0x65b3ac]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0xa
call fcn.004b5b90
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.004b5ee0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [0x6283e0]
cmp ecx, edx
jne 0x5d8acb
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, [0x65e043]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], 0xf
call fcn.004b5b90
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.004b5ee0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [0x6283e0]
cmp ecx, edx
jne 0x5d8ab5
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, [0x65dfda]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0xf
call fcn.004b5b90
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.004b5ee0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [0x6283e0]
cmp ecx, edx
jne 0x5d8a9f
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.005cf880
mov eax, dword [esp + 8]
xor ecx, ecx
jmp 0x5d8947
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.00462d88
mov ecx, dword [esp + 0x2c]
inc ecx
mov edx, dword [esp + 0x30]
cmp ecx, edx
jae 0x5d8a8a
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], eax
lea eax, [0x648380]
mov dword [esp], eax
call fcn.0040b7c0
mov esi, dword [esp + 4]
mov dword [esp + 0x314], esi
lea edi, [esp + 0x94]
call fcn.00462d88
lea eax, [0x648380]
mov dword [esp], eax
lea ecx, [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.00408fb0
mov eax, dword [esp + 8]
lea ecx, [0x648380]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ba710
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x330]
mov dword [esp], ecx
lea edx, [0x618700]
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.005d05a0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5d8a78
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 0x5d8924
mov dword [esp + 0x3c], edi
lea edx, [0x648380]
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.0044b2b0
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 [0x87bd00]
test edx, edx
jne 0x5d8a5f
mov dword [ebx + 8], eax
jmp 0x5d8a67
lea edi, [ebx + 8]
call fcn.004626c0
mov edx, ebx
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
jmp 0x5d8924
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, [0x627be0]
mov dword [esp + 8], eax
call fcn.00408df0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x627be0]
mov dword [esp + 8], eax
call fcn.00408df0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x627be0]
mov dword [esp + 8], eax
call fcn.00408df0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x627be0]
mov dword [esp + 8], eax
call fcn.00408df0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x627be0]
mov dword [esp + 8], eax
call fcn.00408df0
lea eax, [0x637580]
mov dword [esp], eax
call fcn.0040b7c0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x12
lea ecx, [0x65fac4]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x62edc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004369c0
nop
call fcn.004612b0
jmp fcn.005d8320