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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x59f274
sub esp, 0x7c
mov ecx, dword [0x7a081c]
cmp dword [ecx + 0x140], 0xffffffff
jne 0x59efee
mov ecx, dword [esp + 0x84]
mov edx, ecx
shl ecx, 3
add ecx, 5
mov eax, 0xaaaaaaab
mov ebx, edx
imul ecx
lea edx, [edx + ebx*8 + 5]
sar edx, 2
sar ecx, 0x1f
sub edx, ecx
jmp 0x59f00d
mov ecx, dword [esp + 0x84]
lea ebx, [ecx + 2]
mov eax, 0xaaaaaaab
imul ebx
lea edx, [ecx + edx + 2]
sar edx, 1
sar ebx, 0x1f
sub edx, ebx
shl edx, 2
mov dword [esp + 0x1c], edx
lea ecx, [0x5e2160]
mov dword [esp], ecx
mov eax, 0xea0ea0eb
mov ecx, edx
imul edx
add edx, ecx
sar edx, 6
mov ebx, ecx
sar ecx, 0x1f
sub edx, ecx
mov dword [esp + 0x40], edx
lea ecx, [edx + ebx*2 + 1]
mov dword [esp + 0x34], ecx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.0044a130
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x40]
lea ebp, [ebx + edx*2]
mov esi, dword [esp + 0x34]
cmp edx, esi
ja 0x59f26a
mov dword [esp + 0x78], ecx
mov dword [esp + 0x3c], ebp
lea eax, [esp + 0x54]
mov dword [esp], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 8], eax
call fcn.0044e080
mov eax, dword [0x7a081c]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x1c]
mov dword [esp + 8], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ebx
call fcn.005047f0
mov eax, dword [esp + 0x40]
inc eax
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
mov ebx, ecx
sub ecx, edx
mov dword [esp + 0x40], ecx
lea ebp, [ecx + 1]
mov dword [esp + 0x20], ebp
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, edx
mov edi, dword [esp + 0x78]
add ebp, edi
mov dword [esp + 0x74], ebp
mov dword [esp + 0x4c], eax
xor eax, eax
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x4c]
jmp 0x59f148
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
mov edx, ebx
mov ebx, dword [esp + 0x3c]
mov ebp, edi
mov edi, dword [esp + 0x78]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x30], eax
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x44]
mov edi, dword [esp + 0x30]
cmp edi, edx
jge 0x59f20b
lea ebx, [edi + 0x46]
cmp edx, ebx
jl 0x59f15d
mov edx, ebx
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x28]
cmp ebx, esi
ja 0x59f261
sub ecx, ebx
lea esi, [ecx + 1]
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebx
add esi, ebp
mov ebp, dword [esp + 0x34]
cmp edx, ebp
ja 0x59f258
cmp edx, edi
jb 0x59f24f
sub edx, edi
mov ebp, dword [esp + 0x3c]
sub ebp, edi
inc ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edi, ebp
mov ebp, dword [esp + 0x78]
add edi, ebp
cmp edx, ecx
jl 0x59f1b5
mov edx, ecx
cmp edi, esi
je 0x59f1dd
mov dword [esp + 0x38], edx
mov dword [esp], esi
mov dword [esp + 4], edi
mov dword [esp + 8], edx
call fcn.00464050
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x78]
lea esi, [edx + ebx]
cmp eax, 1
jle 0x59f1fe
mov ecx, dword [esp + 0x20]
cmp ecx, esi
jbe 0x59f248
mov edi, dword [esp + 0x74]
mov byte [edi + esi], 0xa
lea esi, [edx + ebx + 1]
jmp 0x59f118
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x74]
jmp 0x59f118
mov ecx, dword [esp + 0x28]
cmp ecx, esi
ja 0x59f241
mov dword [esp], 0
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
call fcn.0044dec0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x7c
ret
mov edx, esi
call fcn.004637f0
mov eax, esi
call fcn.004637b0
mov eax, edi
mov ecx, edx
call fcn.00463810
mov ecx, edx
mov edx, ebp
call fcn.004637f0
mov eax, ebx
mov ecx, esi
call fcn.00463810
mov ecx, edx
mov edx, esi
call fcn.004637f0
nop
call fcn.00462320
jmp fcn.0059efa0