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

Disassembly:
mov ecx, dword [0x93d128]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x6fa635
sub esp, 0x98
lea eax, [0x7472e0]
mov dword [esp], eax
call fcn.0040ca90
mov eax, dword [esp + 4]
mov word [eax], 0x205
mov ecx, dword [esp + 0xac]
mov edx, dword [ecx + 0x10]
mov ebx, dword [esp + 0xb0]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call edx
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x6fa40d
lea eax, [0x7472e0]
mov dword [esp], eax
call fcn.0040ca90
mov eax, dword [esp + 4]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp], ecx
mov edx, dword [esp + 0xa8]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 2
call fcn.004b9220
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x6fa3e9
call fcn.005b47f0
movsd xmm0, qword [esp]
movsd qword [esp + 0x3c], xmm0
call fcn.005b47f0
movsd xmm0, qword [esp]
movsd qword [esp + 0x44], xmm0
call fcn.005b47f0
movsd xmm0, qword [esp]
movsd xmm1, qword [esp + 0x3c]
movsd xmm2, qword [esp + 0x44]
movsd xmm3, xmm1
addsd xmm1, xmm2
addsd xmm1, xmm0
movsd xmm4, qword [0x7d9644]
mulsd xmm4, xmm1
movsd xmm1, xmm4
subsd xmm4, xmm3
mulsd xmm4, xmm1
movsd xmm3, xmm1
subsd xmm1, xmm2
mulsd xmm4, xmm1
subsd xmm3, xmm0
mulsd xmm3, xmm4
sqrtsd xmm0, xmm3
movsd xmm1, qword [0x7d9664]
ucomisd xmm1, xmm0
jne 0x6f9ffa
jp 0x6f9ffa
call fcn.00708b50
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040a670
mov eax, dword [esp + 8]
lea ecx, [0x74af60]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
lea eax, [0x6fa6b0]
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], 1
mov dword [esp + 0x7c], 1
lea eax, [esp + 0x60]
mov dword [esp + 0x74], eax
mov eax, dword [0x8fd2f0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 2
lea eax, [esp + 0x70]
mov dword [esp + 0xc], eax
call fcn.006ea640
movsd xmm1, qword [0x7d9664]
mov eax, dword [esp + 0x94]
cmp byte [eax], 1
jne 0x6fa360
movzx ecx, byte [eax + 1]
mov dword [esp + 0x54], ecx
lea edx, [0x74afe0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00448800
mov eax, dword [esp + 0xc]
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp], ecx
mov edx, dword [esp + 0xa8]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x54]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
call fcn.004b9220
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x6fa33c
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0xa8]
mov dword [esp], edx
mov ebx, dword [esp + 0x94]
mov dword [esp + 4], ebx
mov dword [esp + 8], 1
mov dword [esp + 0xc], 2
call ecx
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x6fa318
mov eax, dword [esp + 0x94]
movzx eax, byte [eax]
mov dword [esp + 0x50], eax
lea ecx, [0x74afe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00448800
mov eax, dword [esp + 0xc]
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x50]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
call fcn.004b9220
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x6fa2f4
mov dword [esp], 0
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x54]
mov dword [esp + 8], ecx
call fcn.0044b7a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
mov dword [esp], 0
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 8], edx
call fcn.0044b7a0
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0xa0]
mov dword [esp], ecx
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 8], ecx
call eax
movzx eax, byte [esp + 0x14]
test al, al
je 0x6fa25b
lea eax, [0x7472e0]
mov dword [esp], eax
call fcn.0040ca90
mov eax, dword [esp + 4]
mov word [eax], 1
mov ecx, dword [esp + 0xac]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0xb0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call ecx
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x6fa237
call fcn.005b47f0
movsd xmm0, qword [0x7d96a4]
mulsd xmm0, qword [esp]
movsd xmm1, qword [0x7d96ac]
divsd xmm0, xmm1
movsd xmm1, qword [0x7d9664]
ucomisd xmm0, xmm1
jne 0x6fa431
jp 0x6fa431
mov dword [esp + 0x27], 0x9572df54
lea edi, [esp + 0x28]
lea esi, [0x78b309]
call fcn.0045f82e
xor eax, eax
jmp 0x6fa555
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
lea eax, [0x7472e0]
mov dword [esp], eax
call fcn.0040ca90
mov eax, dword [esp + 4]
mov word [eax], 0x101
mov ecx, dword [esp + 0xac]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0xb0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], 2
call ecx
mov eax, dword [esp + 0x14]
test eax, eax
je 0x6fa2c8
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
mov eax, dword [0x8fd740]
mov ecx, dword [0x8fd744]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
call fcn.00708c40
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov edx, dword [esp + 0x94]
movzx edx, byte [edx]
lea ebx, [0x74afe0]
mov dword [esp + 0x68], ebx
lea ebx, [0x71db60]
lea edx, [ebx + edx*8]
mov dword [esp + 0x6c], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [esp + 0x68]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.005a0720
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0x98
ret
call fcn.0040d4c0
mov eax, dword [esp]
mov dword [esp + 0x84], eax
call fcn.00708d20
mov eax, dword [esp]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x50], ecx
mov dword [esp], 0
mov edx, dword [esp + 0x90]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 8], edx
call fcn.0044b7a0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x80], ecx
lea edx, [0x74d300]
mov dword [esp], edx
mov edx, dword [esp + 0x84]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x88]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0xc], ebx
call fcn.00411140
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x54]
mov dword [eax + 4], ecx
mov ecx, dword [0x93d218]
test ecx, ecx
jne 0x6fa4d3
mov ecx, dword [esp + 0x80]
jmp 0x6fa4e6
call fcn.0045f0e0
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
mov edx, dword [eax]
mov dword [edi + 4], edx
mov dword [eax], ecx
lea eax, [0x75f1c0]
mov dword [esp], eax
call fcn.0040ca90
mov eax, dword [esp + 4]
mov byte [eax], 2
mov ecx, dword [0x93d218]
test ecx, ecx
jne 0x6fa510
mov ecx, dword [esp + 0x84]
jmp 0x6fa51e
call fcn.0045f0d0
mov ecx, dword [esp + 0x84]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
add esp, 0x98
ret
movzx ebp, byte [esp + eax + 0x27]
sub ebp, ebx
xchg ebp, ebx
mov byte [esp + eax + 0x27], bl
xchg ebp, ebx
inc eax
cmp eax, 0x15
jge 0x6fa56b
lea edx, [0x78b2f3]
movzx ebx, byte [edx + eax]
jb 0x6fa545
jmp 0x6fa62a
mov dword [esp], 0
lea eax, [esp + 0x27]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x15
call fcn.0044b7a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040a670
mov eax, dword [esp + 8]
lea ecx, [0x74af60]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
lea eax, [0x6fa640]
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], 1
mov dword [esp + 0x7c], 1
lea eax, [esp + 0x58]
mov dword [esp + 0x74], eax
mov eax, dword [0x8fd2f0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 2
lea eax, [esp + 0x70]
mov dword [esp + 0xc], eax
call fcn.006ea640
jmp 0x6fa431
mov ecx, 0x15
call fcn.0045f150
nop
call fcn.0045dcb0
jmp fcn.006f9e00