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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x20]
cmp eax, dword [ecx + 8]
jbe 0x59e8fc
sub esp, 0xa0
mov ecx, dword [esp + 0xa8]
cmp ecx, 6
jl 0x59e594
nop
lea edx, [ecx - 2]
mov ebx, dword [esp + 0xa4]
movzx ebp, byte [ebx + 1]
movzx esi, byte [ebx]
shl esi, 8
or ebp, esi
cmp edx, 1
jbe 0x59e8ef
lea edx, [ecx - 4]
movzx esi, byte [ebx + 3]
mov eax, ebp
movzx ebp, byte [ebx + 2]
shl ebp, 8
or esi, ebp
cmp edx, 1
jbe 0x59e8e3
mov word [esp + 0x3a], ax
mov word [esp + 0x38], si
movzx edx, byte [ebx + 5]
movzx ebp, byte [ebx + 4]
shl ebp, 8
or edx, ebp
movzx edx, dx
mov dword [esp + 0x54], edx
mov ebp, dword [esp + 0xac]
xor edi, edi
xor edi, edi
mov dword [esp + 0x4c], edi
xor edi, edi
mov dword [esp + 0x68], edi
xor edi, edi
mov dword [esp + 0x48], edi
mov edi, 6
mov dword [esp + 0x44], edi
xor edi, edi
jmp 0x59e68a
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp], ecx
call fcn.00409720
mov eax, dword [esp + 4]
lea ecx, [0x69b600]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
lea eax, [0x7073b6]
mov dword [esp], eax
mov dword [esp + 4], 0x41
lea eax, [esp + 0x70]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004cde70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], ecx
add esp, 0xa0
ret
mov ecx, dword [esp + 0x50]
lea edi, [ecx + 1]
mov ecx, dword [esp + 0x54]
mov ebp, dword [esp + 0xa8]
mov esi, dword [esp + 0xac]
mov ecx, ebp
mov ebp, esi
movzx esi, word [esp + 0x38]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x44], eax
movzx eax, word [esp + 0x3a]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0xa4]
cmp edi, edx
jge 0x59e883
mov esi, dword [esp + 0x44]
cmp ecx, esi
jb 0x59e8dc
mov dword [esp + 0x50], edi
lea edi, [esp + 0x8c]
xor eax, eax
call fcn.00465feb
mov ecx, ebp
sub ebp, esi
mov edx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, esi
add ebp, ebx
mov dword [esp], ebp
mov ebp, dword [esp + 0xa8]
mov eax, ebp
sub ebp, esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
call fcn.0059e910
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
lea edi, [esp + 0x8c]
lea esi, [esp + 0x18]
call fcn.004664ce
lea edi, [esp + 0x78]
lea esi, [esp + 0x8c]
call fcn.004664ce
test edx, edx
jne 0x59e7d3
mov ecx, dword [esp + 0x48]
inc ecx
mov edx, dword [esp + 0x4c]
cmp edx, ecx
jb 0x59e739
mov eax, dword [esp + 0x68]
jmp 0x59e76b
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6b3760]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebx, [ecx + ecx*4]
lea edi, [eax + ebx*4 - 0x14]
mov ebx, dword [0x1eaa9f0]
mov ebp, dword [esp + 0x44]
mov esi, ecx
mov ecx, dword [esp + 0x3c]
add ecx, ebp
mov dword [esp + 0x40], ecx
test ebx, ebx
jne 0x59e79c
mov ebx, esi
lea esi, [esp + 0x78]
call fcn.004664ce
jmp 0x59e640
mov dword [esp + 0x6c], eax
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], edx
lea eax, [0x6b3760]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x78]
mov dword [esp + 8], eax
call fcn.004115f0
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
jmp 0x59e640
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
test ebx, ebx
je 0x59e7ea
mov ebx, dword [ebx + 4]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebp
lea eax, [0x6fe36f]
mov dword [esp], eax
mov dword [esp + 4], 0x24
lea eax, [esp + 0x70]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004cde70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
movzx edx, word [esp + 0x3a]
mov word [esp + 0xb0], dx
movzx edx, word [esp + 0x38]
mov word [esp + 0xb2], dx
mov edx, dword [esp + 0x68]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0xb8], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xbc], edx
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], ecx
add esp, 0xa0
ret
mov word [esp + 0xb0], ax
mov word [esp + 0xb2], si
mov eax, dword [esp + 0x68]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
add esp, 0xa0
ret
mov eax, esi
call fcn.00465e60
mov eax, 1
mov ecx, edx
call fcn.00465e00
mov eax, 1
mov ecx, edx
call fcn.00465e00
nop
call fcn.004649b0
jmp fcn.0059e4e0