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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6fcaad28
sub esp, 0x70
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x8c]
mov ebp, edx
and edx, ebx
mov eax, ebx
mov ebx, dword [esp + 0x88]
test edx, 0x80000000
je 0x6fcaab79
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x90]
mov edx, eax
sub eax, ecx
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x94]
mov esi, ebx
sbb ebx, ebp
test ebx, ebx
jge 0x6fcaab11
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], ecx
cmp ebp, esi
xchg edi, ebx
setl bl
xchg edi, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp ecx, edx
setb cl
and ecx, ebp
or ecx, edi
test cl, cl
jne 0x6fcaaaf7
test ebx, ebx
mov ecx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x50]
jmp 0x6fcaab11
mov dword [esp + 0xa0], 0x7fffffff
mov dword [esp + 0x9c], 0xffffffff
add esp, 0x70
ret
mov dword [esp + 0x48], ebx
mov dword [esp + 0x40], eax
xchg edi, ebx
setg bl
xchg edi, ebx
sete bl
test eax, eax
seta al
and eax, ebx
or eax, edi
test al, al
je 0x6fcaab5f
cmp ebp, esi
setg al
sete bl
cmp ecx, edx
seta cl
and ecx, ebx
or ecx, eax
test cl, cl
je 0x6fcaab5f
mov dword [esp + 0xa0], 0x80000000
mov dword [esp + 0x9c], 0
add esp, 0x70
ret
mov eax, dword [esp + 0x48]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x9c], eax
add esp, 0x70
ret
test ebp, 0x80000000
je 0x6fcaabad
shl ebp, 1
mov edx, ecx
shr ecx, 0x1f
or ecx, ebp
mov ebp, edx
shl edx, 1
mov esi, ecx
shl ecx, 1
shr edx, 0x1f
or edx, ecx
mov ecx, edx
add edx, 0xd7b17f80
shr esi, 0x1f
add ecx, 0xd7b17f80
adc esi, 0xd
jmp 0x6fcaabba
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x80]
mov ebp, ecx
test eax, 0x80000000
je 0x6fcaabed
shl eax, 1
mov ecx, ebx
shr ebx, 0x1f
or ebx, eax
mov eax, ecx
shl ecx, 1
mov edi, ebx
shl ebx, 1
shr ecx, 0x1f
or ecx, ebx
mov ebx, ecx
add ecx, 0xd7b17f80
shr edi, 0x1f
add ebx, 0xd7b17f80
adc edi, 0xd
jmp 0x6fcaabfd
mov ecx, dword [esp + 0x90]
mov edi, dword [esp + 0x94]
mov eax, ebx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], esi
mov dword [esp + 0x30], ecx
mov dword [esp + 0x58], eax
mov ebx, edx
sub edx, ecx
mov eax, edx
mov ecx, 0x3b9aca00
mul ecx
mov dword [esp + 0x54], eax
and ebp, 0x3fffffff
mov ecx, dword [esp + 0x58]
and ecx, 0x3fffffff
sub ebp, ecx
add eax, ebp
mov dword [esp + 0x3c], eax
nop
lea edi, [esp]
lea esi, [esp + 0x88]
call fcn.6fc6267e
mov ecx, dword [esp + 0x30]
sub ebx, ecx
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
sbb ecx, ebx
imul ecx, ecx, 0x3b9aca00
add ecx, edx
mov edx, ebp
sar ebp, 0x1f
mov ebx, dword [esp + 0x54]
add ebx, edx
adc ecx, ebp
mov dword [esp + 0x44], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
call fcn.6fcaa840
lea edi, [esp + 0x5c]
lea esi, [esp + 0x1c]
call fcn.6fc6267e
lea edi, [esp]
lea esi, [esp + 0x5c]
call fcn.6fc6267e
lea edi, [esp + 0x14]
lea esi, [esp + 0x74]
call fcn.6fc6267e
call fcn.6fca9640
movzx ecx, byte [esp + 0x28]
test cl, cl
jne 0x6fcaad0e
lea edi, [esp]
lea esi, [esp + 0x74]
call fcn.6fc6267e
lea edi, [esp + 0x14]
lea esi, [esp + 0x88]
call fcn.6fc6267e
call fcn.6fca9500
movzx eax, byte [esp + 0x28]
test al, al
je 0x6fcaacf4
mov dword [esp + 0xa0], 0x80000000
mov dword [esp + 0x9c], 0
add esp, 0x70
ret
mov dword [esp + 0xa0], 0x7fffffff
mov dword [esp + 0x9c], 0xffffffff
add esp, 0x70
ret
mov eax, dword [esp + 0x44]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x9c], eax
add esp, 0x70
ret
call fcn.6fc60ad0
jmp fcn.6fcaaa60