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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4872fe
sub esp, 0x74
lea edi, [esp + 0x98]
xor eax, eax
call fcn.00468b5b
mov ecx, dword [esp + 0x94]
test ecx, ecx
je 0x4872e5
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov eax, dword [esp + 0x7c]
dec eax
mov dword [esp + 4], eax
mov dword [esp + 8], 0xc
call fcn.00486f50
mov eax, dword [esp + 0x10]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp], edx
mov edx, dword [esp + 0x90]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x3b9aca00
call fcn.00486f50
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x88]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x3c
call fcn.00486f50
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x54], ecx
mov edx, dword [esp + 0x84]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x3c
call fcn.00486f50
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 0x80]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x18
call fcn.00486f50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp], edx
call fcn.00486970
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x38]
cmp edx, 0xd
jae 0x4872d9
lea ebx, [0x5b7100]
mov ebx, dword [ebx + edx*4]
mov ebp, ebx
sar ebx, 0x1f
add ecx, ebp
mov dword [esp + 0x3c], ecx
adc eax, ebx
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x5c]
mov dword [esp], ebx
call fcn.00486ef0
movzx eax, byte [esp + 4]
test al, al
je 0x48715e
mov ecx, dword [esp + 0x38]
inc ecx
cmp ecx, 3
jl 0x487154
mov ecx, dword [esp + 0x3c]
add ecx, 1
mov eax, dword [esp + 0x44]
adc eax, 0
jmp 0x487166
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x44]
jmp 0x487166
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x4c]
dec edx
mov ebx, edx
add edx, ecx
mov ebp, eax
mov eax, edx
mov esi, 0x15180
mul esi
mov esi, ebx
sar ebx, 0x1f
add esi, ecx
adc ebx, ebp
imul ecx, ebx, 0x15180
add ecx, edx
mov edx, dword [esp + 0x48]
imul edx, edx, 0xe10
mov ebx, dword [esp + 0x50]
imul ebx, ebx, 0x3c
add edx, ebx
mov ebx, dword [esp + 0x54]
add edx, ebx
mov ebx, edx
sar edx, 0x1f
add ebx, eax
mov dword [esp + 0x40], ebx
adc ecx, edx
mov dword [esp + 0x44], ecx
add ebx, 0xe5263700
mov dword [esp + 0x2c], ebx
adc ecx, 0x80000001
mov dword [esp + 0x30], ecx
mov esi, dword [esp + 0x94]
mov dword [esp], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
call fcn.004873b0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
test ecx, ecx
je 0x487285
mov dword [esp + 0x34], ecx
mov eax, ecx
sar ecx, 0x1f
mov edi, dword [esp + 0x40]
sub edi, eax
mov eax, dword [esp + 0x44]
sbb eax, ecx
add edi, 0xe5263700
adc eax, 0x80000001
cmp ebx, eax
setg cl
sete bl
cmp edi, edx
setb dl
and edx, ebx
or edx, ecx
test dl, dl
jne 0x487246
cmp esi, eax
setl cl
sete dl
cmp edi, ebp
setae bl
and ebx, edx
or ebx, ecx
test bl, bl
je 0x487263
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov dword [esp + 8], eax
mov dword [esp + 4], edi
call fcn.004873b0
mov ecx, dword [esp + 0x14]
jmp 0x487267
mov ecx, dword [esp + 0x34]
mov eax, ecx
sar ecx, 0x1f
mov ebx, dword [esp + 0x40]
sub ebx, eax
mov eax, dword [esp + 0x44]
sbb eax, ecx
add ebx, 0xe5263700
adc eax, 0x80000001
jmp 0x48728d
mov eax, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
call fcn.00486d10
lea edi, [esp + 0x60]
lea esi, [esp + 0xc]
call fcn.0046903e
lea eax, [esp + 0x60]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.00484d60
lea edi, [esp + 0x98]
lea esi, [esp + 0x60]
call fcn.0046903e
add esp, 0x74
ret
mov eax, edx
mov ecx, 0xd
call fcn.00468a00
lea eax, [0x4f92a0]
mov dword [esp], eax
lea eax, [0x526814]
mov dword [esp + 4], eax
call fcn.0043aa20
nop
call fcn.00467570
jmp fcn.00486fe0