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

Disassembly:
push rbx
push rbp
push r12
push r14
push r15
sub rsp, 0xa0
mov eax, dword [rdx + 0x30]
mov r15, r8
mov r12d, dword [rcx]
xor r8d, r8d
and eax, 3
mov dword [rsp + 0xd0], r8d
xor ebp, ebp
mov r14, rdx
mov rbx, rcx
cmp al, 3
jne 0x1400f6461
vmovss xmm3, dword [rcx + 0x9c]
vaddss xmm0, xmm3, xmm3
vcvttss2si eax, xmm0
vaddss xmm0, xmm3, dword [0x1401509fc]
movsxd rdx, eax
mov rax, qword [r14 + 0x38]
add rdx, rdx
mov rcx, qword [rax + 0x208]
vmovups xmm2, xmmword [rcx + rdx*8]
vmovss dword [rbx + 0xa0], xmm2
vextractps dword [rbx + 0xa4], xmm2, 1
vextractps dword [rbx + 0xa8], xmm2, 2
vextractps dword [rbx + 0xac], xmm2, 3
vmovss dword [rbx + 0x9c], xmm0
jmp 0x1400f648e
mov rax, qword [rdx + 0x38]
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rcx + 0xa8], xmm0
vmovss dword [rcx + 0xac], xmm1
vmovss dword [rcx + 0xa0], xmm0
vmovss dword [rcx + 0xa4], xmm1
test r12d, r12d
je 0x1400f6a94
mov qword [rsp + 0xe0], rsi
mov r10d, 0x40
mov qword [rsp + 0x98], rdi
lea rdi, [rbx + 0x88]
mov qword [rsp + 0x90], r13
vmovaps xmmword [rsp + 0x80], xmm6
vmovaps xmmword [rsp + 0x70], xmm7
vmovaps xmmword [rsp + 0x60], xmm8
vmovaps xmmword [rsp + 0x50], xmm9
vmovaps xmmword [rsp + 0x40], xmm10
vmovaps xmmword [rsp + 0x30], xmm11
vmovaps xmmword [rsp + 0x20], xmm12
vxorps xmm12, xmm12, xmm12
nop
mov eax, dword [r14 + 0x34]
xor edx, edx
mov r9d, dword [rbx + 0x8c]
not eax
div r9d
mov ecx, r12d
mov qword [rsp + 0xd8], rdi
cmp r12d, eax
mov esi, eax
cmovb esi, r12d
cmp r12d, 0x40
cmova ecx, r10d
cmp esi, ecx
jb 0x1400f6571
cmp ebp, esi
jb 0x1400f653c
lea rdi, [rbx + 0x88]
sub ebp, esi
mov qword [rsp + 0xd8], rdi
jmp 0x1400f65be
mov edx, esi
mov rcx, r14
sub edx, ebp
mov r8d, edx
imul edx, dword [rbx + 0x88]
imul r8d, r9d
call fcn.1400aeaa0
mov r8d, dword [rsp + 0xd0]
lea rdi, [rbx + 0x88]
mov qword [rsp + 0xd8], rdi
xor ebp, ebp
jmp 0x1400f65be
test ebp, ebp
je 0x1400f658b
imul r9d, ebp
mov rcx, r14
imul ebp, dword [rdi]
mov r8d, r9d
mov edx, ebp
call fcn.1400aeb10
xor ebp, ebp
mov r8d, dword [rbx + 0x8c]
xor edx, edx
mov eax, 0xffffffff
mov rcx, r14
div r8d
cmp r12d, eax
mov esi, eax
cmovb esi, r12d
mov edx, esi
imul r8d, esi
imul edx, dword [rdi]
call fcn.1400aeaa0
mov r8d, dword [rsp + 0xd0]
sub r12d, esi
lea eax, [rsi + r8]
mov rcx, rdi
cmp r8d, eax
je 0x1400f6a24
lea edi, [r8 + r8]
mov r13d, esi
add r8d, esi
mov esi, 2
mov dword [rsp + 0xd0], r8d
nop dword [rax + rax]
mov r8, qword [rbx + 0x90]
xor ecx, ecx
mov edx, dword [r8 + 0x1c]
test edx, edx
movsxd r10, dword [r8 + 0x20]
mov r11d, dword [r8 + 0x18]
sete cl
mov r9, qword [r8 + 0x10]
xor eax, eax
cmp r10d, 4
cmove eax, esi
or ecx, eax
je 0x1400f6653
sub ecx, 1
je 0x1400f664e
sub ecx, 1
je 0x1400f663c
cmp ecx, 1
je 0x1400f6631
vmovaps xmm2, xmm12
jmp 0x1400f6667
movsxd rax, edi
vmovss xmm2, dword [r9 + rax*4]
jmp 0x1400f6667
lea eax, [rdi + rdx]
cdq
idiv r11d
movsxd rax, edx
vmovss xmm2, dword [r9 + rax*4]
jmp 0x1400f6667
movsxd rcx, edi
jmp 0x1400f665d
lea eax, [rdi + rdx]
cdq
idiv r11d
movsxd rcx, edx
imul rcx, r10
vmovss xmm2, dword [rcx + r9]
mov rax, qword [rbx + 0x38]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, edi
vmulsd xmm1, xmm0, qword [r8]
vaddsd xmm3, xmm1, qword [r8 + 8]
vcvtss2sd xmm6, xmm2, xmm2
test rax, rax
je 0x1400f66b7
mov rdx, qword [rbx + 0x40]
vmovaps xmm0, xmm3
call rax
vsubsd xmm2, xmm0, qword [rbx + 8]
vmovsd xmm0, qword [rbx + 0x10]
vsubsd xmm1, xmm0, qword [rbx + 8]
vdivsd xmm4, xmm2, xmm1
vmovsd xmm2, qword [rbx + 0x20]
vsubsd xmm3, xmm2, qword [rbx + 0x18]
vmulsd xmm1, xmm4, xmm3
vaddsd xmm3, xmm1, qword [rbx + 0x18]
vsubsd xmm1, xmm3, qword [rbx + 0x18]
vmulsd xmm2, xmm1, qword [rbx + 0x30]
mov rax, qword [rbx + 0x78]
vaddsd xmm3, xmm2, qword [rbx + 0x28]
vcvtsd2ss xmm9, xmm3, xmm3
test rax, rax
je 0x1400f6706
mov rdx, qword [rbx + 0x80]
vmovaps xmm0, xmm6
call rax
vsubsd xmm2, xmm0, qword [rbx + 0x48]
vmovsd xmm0, qword [rbx + 0x50]
vsubsd xmm1, xmm0, qword [rbx + 0x48]
vdivsd xmm3, xmm2, xmm1
vmovsd xmm2, qword [rbx + 0x60]
vsubsd xmm0, xmm2, qword [rbx + 0x58]
vmulsd xmm1, xmm3, xmm0
vaddsd xmm6, xmm1, qword [rbx + 0x58]
mov r8, qword [rbx + 0x90]
xor ecx, ecx
vsubsd xmm0, xmm6, qword [rbx + 0x58]
vmulsd xmm1, xmm0, qword [rbx + 0x70]
vaddsd xmm2, xmm1, qword [rbx + 0x68]
mov edx, dword [r8 + 0x1c]
test edx, edx
movsxd r10, dword [r8 + 0x20]
mov r11d, dword [r8 + 0x18]
sete cl
mov r9, qword [r8 + 0x10]
xor eax, eax
cmp r10d, 4
vcvtsd2ss xmm8, xmm2, xmm2
cmove eax, esi
or ecx, eax
je 0x1400f6782
sub ecx, 1
je 0x1400f677a
sub ecx, 1
je 0x1400f6766
cmp ecx, 1
je 0x1400f675a
vmovaps xmm2, xmm12
jmp 0x1400f6798
movsxd rax, edi
vmovss xmm2, dword [r9 + rax*4 + 4]
jmp 0x1400f6798
lea eax, [rdx + 1]
add eax, edi
cdq
idiv r11d
movsxd rax, edx
vmovss xmm2, dword [r9 + rax*4]
jmp 0x1400f6798
movsxd rcx, edi
inc rcx
jmp 0x1400f678e
lea eax, [rdx + 1]
add eax, edi
cdq
idiv r11d
movsxd rcx, edx
imul rcx, r10
vmovss xmm2, dword [rcx + r9]
lea eax, [rdi + 1]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, eax
mov rax, qword [rbx + 0x38]
vmulsd xmm1, xmm0, qword [r8]
vaddsd xmm3, xmm1, qword [r8 + 8]
vcvtss2sd xmm7, xmm2, xmm2
test rax, rax
je 0x1400f67eb
mov rdx, qword [rbx + 0x40]
vmovaps xmm0, xmm3
call rax
vsubsd xmm2, xmm0, qword [rbx + 8]
vmovsd xmm0, qword [rbx + 0x10]
vsubsd xmm1, xmm0, qword [rbx + 8]
vdivsd xmm3, xmm2, xmm1
vmovsd xmm2, qword [rbx + 0x20]
vsubsd xmm0, xmm2, qword [rbx + 0x18]
vmulsd xmm1, xmm3, xmm0
vaddsd xmm3, xmm1, qword [rbx + 0x18]
vsubsd xmm1, xmm3, qword [rbx + 0x18]
vmulsd xmm2, xmm1, qword [rbx + 0x30]
mov rax, qword [rbx + 0x78]
vaddsd xmm3, xmm2, qword [rbx + 0x28]
vcvtsd2ss xmm6, xmm3, xmm3
test rax, rax
je 0x1400f683a
mov rdx, qword [rbx + 0x80]
vmovaps xmm0, xmm7
call rax
vsubsd xmm2, xmm0, qword [rbx + 0x48]
vmovsd xmm0, qword [rbx + 0x50]
vsubsd xmm1, xmm0, qword [rbx + 0x48]
vdivsd xmm3, xmm2, xmm1
vmovsd xmm2, qword [rbx + 0x60]
vsubsd xmm0, xmm2, qword [rbx + 0x58]
vmulsd xmm1, xmm3, xmm0
vaddsd xmm7, xmm1, qword [rbx + 0x58]
vsubsd xmm0, xmm7, qword [rbx + 0x58]
vmulsd xmm1, xmm0, qword [rbx + 0x70]
vaddsd xmm2, xmm1, qword [rbx + 0x68]
vcvtsd2ss xmm5, xmm2, xmm2
vminss xmm0, xmm8, xmm5
vcomiss xmm0, dword [r15 + 0xc]
vmaxss xmm3, xmm6, xmm9
vmaxss xmm1, xmm8, xmm5
vminss xmm2, xmm6, xmm9
jae 0x1400f69ff
vcomiss xmm1, dword [r15 + 4]
jbe 0x1400f69ff
vcomiss xmm2, dword [r15 + 8]
jae 0x1400f69ff
vcomiss xmm3, dword [r15]
jbe 0x1400f69ff
vmovss xmm7, dword [rbx + 0xa8]
vmovss xmm10, dword [rbx + 0xac]
mov ecx, dword [rbx + 0x98]
vmovss xmm11, dword [rbx + 0x9c]
vsubss xmm2, xmm6, xmm9
vsubss xmm4, xmm5, xmm8
vmulss xmm1, xmm4, xmm4
vmulss xmm0, xmm2, xmm2
vaddss xmm3, xmm1, xmm0
vcomiss xmm3, xmm12
jbe 0x1400f68d9
vmovaps xmm0, xmm3
vrsqrtss xmm0, xmm3, xmm0
vmulss xmm2, xmm2, xmm0
vmulss xmm4, xmm4, xmm0
mov rax, qword [r14 + 0x48]
vmulss xmm3, xmm2, xmm11
vmulss xmm2, xmm4, xmm11
vaddss xmm0, xmm9, xmm2
vmovss dword [rax], xmm0
mov rax, qword [r14 + 0x48]
vsubss xmm1, xmm8, xmm3
vmovss dword [rax + 4], xmm1
vmovsd xmm0, qword [rbx + 0xa0]
mov rax, qword [r14 + 0x48]
vsubss xmm1, xmm5, xmm3
vmovsd qword [rax + 8], xmm0
mov rax, qword [r14 + 0x48]
vaddss xmm0, xmm6, xmm2
mov dword [rax + 0x10], ecx
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x14], xmm0
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x18], xmm1
vmovsd xmm0, qword [rbx + 0xa0]
mov rax, qword [r14 + 0x48]
vaddss xmm1, xmm5, xmm3
vmovsd qword [rax + 0x1c], xmm0
mov rax, qword [r14 + 0x48]
vsubss xmm0, xmm6, xmm2
mov dword [rax + 0x24], ecx
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x28], xmm0
mov rax, qword [r14 + 0x48]
vsubss xmm0, xmm9, xmm2
vmovss dword [rax + 0x2c], xmm1
mov rax, qword [r14 + 0x48]
vaddss xmm1, xmm8, xmm3
vmovss dword [rax + 0x30], xmm7
vmovss dword [rax + 0x34], xmm10
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x38], ecx
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x3c], xmm0
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x40], xmm1
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x44], xmm7
vmovss dword [rax + 0x48], xmm10
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x4c], ecx
add qword [r14 + 0x48], 0x50
mov rcx, qword [r14 + 0x50]
mov eax, dword [r14 + 0x34]
mov dword [rcx], eax
mov ecx, dword [r14 + 0x34]
mov rax, qword [r14 + 0x50]
inc ecx
mov dword [rax + 4], ecx
mov rax, qword [r14 + 0x50]
mov ecx, dword [r14 + 0x34]
add ecx, esi
mov dword [rax + 8], ecx
mov rcx, qword [r14 + 0x50]
mov eax, dword [r14 + 0x34]
mov dword [rcx + 0xc], eax
mov rax, qword [r14 + 0x50]
mov ecx, dword [r14 + 0x34]
add ecx, esi
mov dword [rax + 0x10], ecx
mov ecx, dword [r14 + 0x34]
mov rax, qword [r14 + 0x50]
add ecx, 3
mov dword [rax + 0x14], ecx
add qword [r14 + 0x50], 0x18
add dword [r14 + 0x34], 4
jmp 0x1400f6a01
inc ebp
add edi, esi
sub r13, 1
jne 0x1400f65f0
mov rdi, qword [rsp + 0xd8]
lea rcx, [rbx + 0x88]
mov r8d, dword [rsp + 0xd0]
mov r10d, 0x40
test r12d, r12d
jne 0x1400f64f0
vmovaps xmm12, xmmword [rsp + 0x20]
vmovaps xmm11, xmmword [rsp + 0x30]
vmovaps xmm10, xmmword [rsp + 0x40]
vmovaps xmm9, xmmword [rsp + 0x50]
vmovaps xmm8, xmmword [rsp + 0x60]
vmovaps xmm7, xmmword [rsp + 0x70]
vmovaps xmm6, xmmword [rsp + 0x80]
mov r13, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xe0]
test ebp, ebp
je 0x1400f6a94
mov r8d, ebp
imul ebp, dword [rcx]
imul r8d, dword [rbx + 0x8c]
mov rcx, r14
mov edx, ebp
call fcn.1400aeb10
add rsp, 0xa0
pop r15
pop r14
pop r12
pop rbp
pop rbx
ret