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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1d4]
cmp eax, dword [ecx + 8]
jbe 0x5d66d8
sub esp, 0x254
mov ecx, dword [esp + 0x258]
mov edx, dword [ecx + 0x138]
mov eax, dword [ecx + 0x13c]
test edx, edx
je 0x5d5f73
nop
movzx ebx, byte [0x8553f8]
test bl, bl
je 0x5d5f39
mov dword [0x8553fc], edx
mov ebx, dword [0x87bd00]
test ebx, ebx
jne 0x5d5f2e
mov dword [0x855400], eax
jmp 0x5d5f39
lea edi, [0x855400]
call fcn.004626c0
mov dword [esp + 0x24c], edx
mov dword [esp + 0x250], eax
mov edx, dword [esp + 0x24c]
test edx, edx
je 0x5d5f6b
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x5d5f79
or ebx, 0x80
jmp 0x5d5f79
xor ebx, ebx
xor edx, edx
xor eax, eax
jmp 0x5d5f79
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x244], eax
mov dword [esp + 0x240], edx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0x18
call fcn.004b57e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x64], eax
cmp eax, 9
ja 0x5d5fd8
cmp eax, 7
jne 0x5d5fc0
mov eax, dword [ecx]
jmp 0x5d5ff5
cmp eax, 8
jne 0x5d5fca
movzx eax, byte [ecx]
jmp 0x5d5ff5
cmp eax, 9
jne 0x5d669d
movzx eax, word [ecx]
jmp 0x5d5ff5
cmp eax, 0xa
jne 0x5d5fe1
mov eax, dword [ecx]
jmp 0x5d5ff5
cmp eax, 0xb
jne 0x5d5fea
mov eax, dword [ecx]
jmp 0x5d5ff5
cmp eax, 0xc
jne 0x5d669d
mov eax, dword [ecx]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x240]
mov dword [esp], ecx
mov edx, dword [esp + 0x244]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0x1d
call fcn.004b57e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x64], eax
cmp eax, 9
ja 0x5d605e
cmp eax, 7
jne 0x5d6042
mov eax, dword [ecx]
xor ecx, ecx
jmp 0x5d6082
cmp eax, 8
jne 0x5d604e
movzx eax, byte [ecx]
xor ecx, ecx
jmp 0x5d6082
cmp eax, 9
jne 0x5d6663
movzx eax, word [ecx]
xor ecx, ecx
jmp 0x5d6082
cmp eax, 0xa
jne 0x5d6069
mov eax, dword [ecx]
xor ecx, ecx
jmp 0x5d6082
cmp eax, 0xb
jne 0x5d6075
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
jmp 0x5d6082
cmp eax, 0xc
jne 0x5d6663
mov eax, dword [ecx]
xor ecx, ecx
test ecx, ecx
sete dl
test eax, eax
seta bl
test ecx, ecx
xchg ebp, ebx
seta bl
xchg ebp, ebx
and edx, ebx
or edx, ebp
test dl, dl
je 0x5d62dd
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x2c]
and edx, 0xf0000000
shr edx, 0x1c
mov dword [esp + 0x60], edx
mov ebx, dword [esp + 0x258]
movzx ebp, byte [ebx + 0x294]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5d61ca
mov eax, dword [esp + 0x240]
mov dword [esp], eax
mov eax, dword [esp + 0x244]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x1c
call fcn.004b57e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x64], eax
cmp eax, 9
ja 0x5d612d
cmp eax, 7
jne 0x5d6115
mov ecx, dword [ecx]
jmp 0x5d614a
cmp eax, 8
jne 0x5d611f
movzx ecx, byte [ecx]
jmp 0x5d614a
cmp eax, 9
jne 0x5d6629
movzx ecx, word [ecx]
jmp 0x5d614a
cmp eax, 0xa
jne 0x5d6136
mov ecx, dword [ecx]
jmp 0x5d614a
cmp eax, 0xb
jne 0x5d613f
mov ecx, dword [ecx]
jmp 0x5d614a
cmp eax, 0xc
jne 0x5d6629
mov ecx, dword [ecx]
mov dword [esp + 0x24], ecx
lea edi, [esp + 0x70]
xor eax, eax
call fcn.00462908
mov ecx, dword [esp + 0x258]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
lea ebx, [0x652a00]
cmp edx, ebx
jne 0x5d6613
lea edi, [esp + 0x70]
call fcn.00462c20
mov eax, dword [esp + 0x24]
sub eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x258]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.005cf880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x258]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x60]
mov ebp, 1
xor esi, esi
xor edi, edi
xor ebp, ebp
mov dword [esp + 0x248], ebp
mov ebp, 1
jmp 0x5d64ec
mov dword [esp + 0x30], ecx
mov eax, dword [esp + 0x240]
mov dword [esp], eax
mov eax, dword [esp + 0x244]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x1c
call fcn.004b57e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x64], eax
cmp eax, 9
ja 0x5d622d
cmp eax, 7
jne 0x5d6215
mov ecx, dword [ecx]
jmp 0x5d624a
cmp eax, 8
jne 0x5d621f
movzx ecx, byte [ecx]
jmp 0x5d624a
cmp eax, 9
jne 0x5d648a
movzx ecx, word [ecx]
jmp 0x5d624a
cmp eax, 0xa
jne 0x5d6236
mov ecx, dword [ecx]
jmp 0x5d624a
cmp eax, 0xb
jne 0x5d623f
mov ecx, dword [ecx]
jmp 0x5d624a
cmp eax, 0xc
jne 0x5d648a
mov ecx, dword [ecx]
mov dword [esp + 0x20], ecx
lea edi, [esp + 0x150]
xor eax, eax
call fcn.00462904
mov ecx, dword [esp + 0x258]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
lea ebx, [0x6524c0]
cmp edx, ebx
jne 0x5d6474
lea edi, [esp + 0x150]
call fcn.00462bf8
mov eax, dword [esp + 0x168]
mov ecx, dword [esp + 0x20]
sub ecx, eax
mov eax, dword [esp + 0x258]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.005cf880
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x258]
mov ebp, dword [esp + 0x60]
mov esi, 1
xor edi, edi
xor esi, esi
mov dword [esp + 0x48], esi
xor esi, esi
mov dword [esp + 0x4c], esi
xor esi, esi
mov dword [esp + 0x248], esi
mov esi, 1
jmp 0x5d6334
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x25c], edx
mov dword [esp + 0x260], ecx
mov dword [esp + 0x264], eax
add esp, 0x254
ret
add esi, 1
mov ecx, dword [esp + 0x248]
mov dword [ecx + edx*4], ebp
mov edx, dword [esp + 0x54]
adc edx, 0
mov ebp, dword [esp + 0x60]
lea eax, [eax + ebp + 4]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], ebx
mov ebx, dword [esp + 0x258]
mov edi, edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x54], edi
cmp edi, edx
sete dl
xchg ebp, ebx
setb bl
xchg ebp, ebx
cmp esi, ecx
xchg edi, ebx
setbe bl
xchg edi, ebx
and edi, edx
or edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
je 0x5d644d
mov edx, dword [ebx + 0x2ac]
add edx, 0xfffffffc
cmp eax, edx
jbe 0x5d6372
mov edx, dword [0x854c78]
xor ebp, ebp
jmp 0x5d63a9
mov edx, dword [ebx + 0x28c]
mov ebp, dword [ebx + 0x288]
mov edi, dword [ebx + 0x290]
cmp eax, edx
ja 0x5d646d
sub edx, eax
sub edi, eax
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
cmp edx, 3
jbe 0x5d6461
mov ebp, dword [edi + ebp]
xor edx, edx
test edx, edx
jne 0x5d6422
mov edx, dword [esp + 0x48]
lea edi, [edx + 1]
mov ebx, dword [esp + 0x4c]
cmp ebx, edi
jae 0x5d62ff
mov dword [esp + 0x50], esi
mov dword [esp + 0x34], ebp
mov dword [esp + 0x40], eax
lea eax, [0x6283e0]
mov dword [esp], eax
mov ecx, dword [esp + 0x248]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edi
call fcn.0044b2b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea edi, [ecx + 1]
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x50]
mov dword [esp + 0x248], eax
mov ebx, edx
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
jmp 0x5d62ff
mov eax, dword [esp + 0x248]
mov dword [esp + 0x25c], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x260], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x264], eax
add esp, 0x254
ret
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x248]
jmp 0x5d62e3
mov eax, 3
mov ecx, edx
call fcn.00462740
mov ecx, edx
call fcn.004627b0
mov dword [esp], edx
mov dword [esp + 4], ebx
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 + 0x64]
mov dword [eax + 8], ecx
lea ecx, [0x62edc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004369c0
mov dword [esp + 0x5c], edx
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x248]
mov dword [edx + edi*4], ecx
inc ebp
lea eax, [eax + ebx + 4]
mov ecx, dword [esp + 0x258]
mov edi, dword [esp + 0x28]
mov edx, edi
mov edi, dword [esp + 0x5c]
cmp ebp, edx
ja 0x5d65f0
mov dword [esp + 0x58], ebp
mov edx, dword [ecx + 0x2ac]
add edx, 0xfffffffc
cmp eax, edx
jbe 0x5d651b
mov edx, dword [0x854c78]
mov dword [esp + 0x68], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x68]
jmp 0x5d655f
mov edx, dword [ecx + 0x28c]
mov ebx, dword [ecx + 0x288]
mov ebp, dword [ecx + 0x290]
cmp eax, edx
ja 0x5d660c
sub edx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, eax
cmp edx, 3
jbe 0x5d6600
mov ebx, dword [ebp + ebx]
mov ebp, dword [esp + 0x58]
xor edx, edx
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 0x60]
test edx, edx
jne 0x5d65cd
lea edx, [edi + 1]
cmp esi, edx
jae 0x5d64c4
mov dword [esp + 0x48], edi
mov dword [esp + 0x44], eax
lea eax, [0x6283e0]
mov dword [esp], eax
mov ecx, dword [esp + 0x248]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
call fcn.0044b2b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [ecx + 1]
mov ecx, dword [esp + 0x258]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
mov edi, dword [esp + 0x48]
mov dword [esp + 0x248], eax
mov eax, dword [esp + 0x44]
jmp 0x5d64c4
mov eax, dword [esp + 0x248]
mov dword [esp + 0x25c], eax
mov dword [esp + 0x260], edi
mov dword [esp + 0x264], esi
add esp, 0x254
ret
mov eax, esi
mov ecx, edi
mov edx, dword [esp + 0x248]
jmp 0x5d62e3
mov eax, 3
mov ecx, edx
call fcn.00462740
mov ecx, edx
call fcn.004627b0
mov dword [esp], edx
mov dword [esp + 4], ebx
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 + 0x64]
mov dword [eax + 8], ecx
lea ecx, [0x62edc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004369c0
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 + 0x64]
mov dword [eax + 8], ecx
lea ecx, [0x62edc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004369c0
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 + 0x64]
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.005d5ed0