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

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x108
movaps xmmword [rax - 0x58], xmm6
mov r12, rdx
movaps xmmword [rax - 0x68], xmm7
xor edx, edx
movaps xmmword [rax - 0x78], xmm8
mov rbx, r8
movaps xmmword [rax - 0x88], xmm9
mov rsi, rcx
movaps xmmword [rax - 0x98], xmm10
mov r13d, 0xffffff9d
movaps xmmword [rax - 0xa8], xmm11
lea r8d, [rdx + 0x50]
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rsp + 0x70], xmm14
movaps xmmword [rsp + 0x60], xmm15
movsxd r15, r9d
mov dword [rsp + 0x160], 1
call fcn.1400c0ec0
mov eax, dword [rbx]
mov dword [rsi + 0x40], eax
movd xmm0, dword [rbx]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x140437608]
call fcn.140262c90
movaps xmm6, xmm0
movss xmm0, dword [0x1404374ac]
call fcn.140262c90
divss xmm6, xmm0
addss xmm6, dword [0x1404371c8]
movaps xmm0, xmm6
call fcn.140262c08
subss xmm0, dword [0x140437280]
movd xmm6, dword [rsp + 0x170]
movss xmm14, dword [0x140437184]
movsd xmm15, qword [0x1404373c0]
cvtdq2ps xmm6, xmm6
cvttss2si edi, xmm0
movaps xmm0, xmm6
movd xmm10, r15d
mulss xmm0, xmm14
mov dword [rsi + 0x3c], edi
cvtdq2pd xmm10, xmm10
cvtps2pd xmm0, xmm0
movsd qword [rsp + 0x40], xmm10
mulsd xmm0, xmm15
divsd xmm0, xmm10
call fcn.1400dfa00
movd xmm2, dword [rbx]
lea ecx, [rdi + 1]
movsd xmm13, qword [0x140437488]
mov eax, 1
movsd xmm12, qword [0x1404374e0]
mulsd xmm0, xmm13
shl eax, cl
cvtdq2pd xmm2, xmm2
subsd xmm0, xmm12
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
subsd xmm0, xmm2
cvttsd2si ebx, xmm0
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
mov dword [rsi + 0x38], ebx
addss xmm0, xmm14
mulss xmm0, xmm6
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm15
divsd xmm0, xmm10
call fcn.1400dfa00
mulsd xmm0, xmm13
lea ecx, [rdi + 1]
mov eax, 1
shl eax, cl
subsd xmm0, xmm12
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
addsd xmm0, xmm15
cvttsd2si eax, xmm0
sub eax, ebx
mov rbp, r15
lea rbx, [r15*4]
inc eax
mov rcx, rbx
mov dword [rsi + 0x44], eax
mov qword [rsp + 0x50], rbx
call fcn.1400c1e7c
mov rcx, rbx
mov qword [rsi + 0x20], rax
call fcn.1400c1e7c
mov rcx, rbx
mov qword [rsi + 0x28], rax
call fcn.1400c1e7c
mov qword [rsi + 0x30], rax
xor ebx, ebx
mov eax, dword [rsp + 0x170]
mov qword [rsi + 8], r12
mov dword [rsi], r15d
mov dword [rsi + 0x48], eax
mov dword [rsi + 0x4c], 0x3f800000
cmp eax, 0x6590
jge 0x14021d692
mov dword [rsi + 0x4c], ebx
jmp 0x14021d6b0
cmp eax, 0x9470
jge 0x14021d6a2
mov dword [rsi + 0x4c], 0x3f70a3d7
jmp 0x14021d6b0
cmp eax, 0xb3b0
jle 0x14021d6b0
mov dword [rsi + 0x4c], 0x3fa33333
movsd xmm8, qword [0x140437308]
lea r12, [0x14039ec54]
movsd xmm7, qword [0x1404374b0]
lea r14, [0x14039edb0]
movsd xmm9, qword [0x1404373e0]
mov edi, ebx
movsd xmm6, qword [0x140437560]
mov r15d, 1
movd xmm11, eax
cvtdq2pd xmm11, xmm11
movsd qword [rsp + 0x48], xmm11
nop dword [rax]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm8
subsd xmm0, xmm7
addsd xmm0, xmm12
mulsd xmm0, xmm9
call fcn.1402624b0
mulsd xmm0, xmm7
mulsd xmm0, xmm10
divsd xmm0, xmm11
addsd xmm0, xmm15
call fcn.140262b58
movss xmm2, dword [r12 - 4]
cvttsd2si ecx, xmm0
cmp edi, ecx
jge 0x14021d86c
movss xmm3, dword [r12]
mov eax, ecx
sub eax, edi
movsxd rdx, ecx
subss xmm3, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm3, xmm0
cmp rbx, rdx
jge 0x14021d86c
mov rax, rdx
sub rax, rbx
cmp rax, 4
jl 0x14021d83c
lea rcx, [rbx + 2]
cmp rbx, rbp
jge 0x14021d86c
mov rax, qword [rsi + 0x20]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
addss xmm2, xmm3
addsd xmm0, xmm6
cvtpd2ps xmm1, xmm0
movss dword [rax + rbx*4], xmm1
lea rax, [rcx - 1]
cmp rax, rbp
jge 0x14021de12
mov rax, qword [rsi + 0x20]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
addss xmm2, xmm3
addsd xmm0, xmm6
cvtpd2ps xmm1, xmm0
movss dword [rax + rbx*4 + 4], xmm1
cmp rcx, rbp
jge 0x14021de06
mov rax, qword [rsi + 0x20]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
addss xmm2, xmm3
addsd xmm0, xmm6
cvtpd2ps xmm1, xmm0
movss dword [rax + rbx*4 + 8], xmm1
lea rax, [rcx + 1]
cmp rax, rbp
jge 0x14021ddfa
mov rax, qword [rsi + 0x20]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
add edi, 4
add rcx, 4
addss xmm2, xmm3
addsd xmm0, xmm6
cvtpd2ps xmm1, xmm0
movss dword [rax + rbx*4 + 0xc], xmm1
add rbx, 4
lea rax, [rdx - 3]
cmp rbx, rax
jl 0x14021d785
cmp rbx, rdx
jge 0x14021d86c
cmp rbx, rbp
jge 0x14021d86c
mov rax, qword [rsi + 0x20]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
inc edi
addss xmm2, xmm3
addsd xmm0, xmm6
cvtpd2ps xmm1, xmm0
movss dword [rax + rbx*4], xmm1
inc rbx
cmp rbx, rdx
jl 0x14021d841
inc r15d
add r12, 4
cmp r12, r14
jl 0x14021d700
mov r14d, dword [rsp + 0x160]
mov r15d, dword [rsp + 0x168]
movsxd rdx, edi
cmp rdx, rbp
jge 0x14021d8ff
mov rax, rbp
sub rax, rdx
cmp rax, 4
jl 0x14021d8e7
lea r8, [rbp - 3]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsi + 0x20]
mov eax, dword [rcx + rdx*4 - 4]
mov dword [rcx + rdx*4], eax
mov rcx, qword [rsi + 0x20]
mov eax, dword [rcx + rdx*4]
mov dword [rcx + rdx*4 + 4], eax
mov rcx, qword [rsi + 0x20]
mov eax, dword [rcx + rdx*4 + 4]
mov dword [rcx + rdx*4 + 8], eax
mov rcx, qword [rsi + 0x20]
mov eax, dword [rcx + rdx*4 + 8]
mov dword [rcx + rdx*4 + 0xc], eax
add rdx, 4
cmp rdx, r8
jl 0x14021d8b0
cmp rdx, rbp
jge 0x14021d8ff
mov rcx, qword [rsi + 0x20]
mov eax, dword [rcx + rdx*4 - 4]
mov dword [rcx + rdx*4], eax
inc rdx
cmp rdx, rbp
jl 0x14021d8ec
xor ebp, ebp
mov ebx, ebp
mov dword [rsp + 0x160], ebx
test r15d, r15d
jle 0x14021db90
mov eax, dword [rsp + 0x170]
lea ecx, [r15 + r15]
movss xmm10, dword [0x1404370ac]
cdq
movss xmm11, dword [0x1404374d0]
mov edi, ebp
movss xmm12, dword [0x1404370c8]
movss xmm13, dword [0x140437628]
movss xmm14, dword [0x1404370c0]
idiv ecx
mov ecx, ebp
mov qword [rsp + 0x38], rbp
mov r12d, eax
mov dword [rsp + 0x170], ecx
imul r12d, eax
mov r15d, eax
mov eax, ebp
mov dword [rsp + 0x30], eax
nop
movd xmm6, eax
mov eax, ecx
imul eax, ebx
cvtdq2ps xmm6, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm10
call fcn.1402617a0
movaps xmm8, xmm0
movaps xmm0, xmm6
mulss xmm0, xmm12
mulss xmm8, xmm11
call fcn.1402617a0
mov rcx, qword [rsp + 0x158]
mulss xmm0, xmm13
mulss xmm6, xmm14
mov ebp, dword [rcx + 0x78]
addss xmm8, xmm0
add ebp, r13d
addss xmm8, xmm6
cmp ebp, ebx
jge 0x14021da66
mov esi, dword [rsp + 0x160]
mov ebx, r15d
imul ebx, r13d
movaps xmm9, xmm8
subss xmm9, dword [rcx + 0x70]
mov edi, r12d
imul edi, r13d
nop dword [rax]
mov eax, edi
movd xmm7, ebx
imul eax, r13d
cvtdq2ps xmm7, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm10
call fcn.1402617a0
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm0, xmm12
mulss xmm6, xmm11
call fcn.1402617a0
mulss xmm0, xmm13
mulss xmm7, xmm14
addss xmm6, xmm0
addss xmm6, xmm7
comiss xmm9, xmm6
jbe 0x14021da4a
inc r13d
add edi, r12d
add ebx, r15d
inc ebp
cmp ebp, esi
jl 0x14021d9f0
mov rsi, qword [rsp + 0x150]
mov ebx, dword [rsp + 0x160]
mov rdi, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x158]
mov edx, dword [rsp + 0x168]
cmp r14d, edx
jg 0x14021db11
mov ebp, dword [rcx + 0x7c]
mov edi, r12d
add ebp, ebx
mov ebx, r15d
imul ebx, r14d
imul edi, r14d
nop dword [rax]
cmp r14d, ebp
jl 0x14021daf7
mov eax, edi
movd xmm7, ebx
imul eax, r14d
cvtdq2ps xmm7, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm10
call fcn.1402617a0
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm0, xmm12
mulss xmm6, xmm11
call fcn.1402617a0
mov rcx, qword [rsp + 0x158]
movaps xmm1, xmm8
mov edx, dword [rsp + 0x168]
mulss xmm0, xmm13
addss xmm1, dword [rcx + 0x74]
mulss xmm7, xmm14
addss xmm6, xmm0
addss xmm6, xmm7
comiss xmm1, xmm6
jbe 0x14021db05
inc r14d
add edi, r12d
add ebx, r15d
cmp r14d, edx
jle 0x14021da90
mov ebx, dword [rsp + 0x160]
mov rdi, qword [rsp + 0x38]
mov rax, qword [rsi + 0x30]
inc ebx
mov ecx, r13d
mov dword [rsp + 0x160], ebx
shl ecx, 0x10
add ecx, 0xfffeffff
add ecx, r14d
mov dword [rdi + rax], ecx
add rdi, 4
mov ecx, dword [rsp + 0x170]
mov eax, dword [rsp + 0x30]
add ecx, r12d
add eax, r15d
mov dword [rsp + 0x170], ecx
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x38], rdi
cmp ebx, edx
jl 0x14021d970
movsd xmm10, qword [rsp + 0x40]
xor ebp, ebp
movsd xmm11, qword [rsp + 0x48]
movsd xmm12, qword [0x1404374e0]
movsd xmm13, qword [0x140437488]
movss xmm14, dword [0x140437184]
mov r15d, dword [rsp + 0x168]
mov ebx, ebp
test r15d, r15d
jle 0x14021dc00
mov rdi, rbp
nop word [rax + rax]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
addss xmm0, xmm14
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm15
mulsd xmm0, xmm11
divsd xmm0, xmm10
call fcn.1400dfa00
mov ecx, dword [rsi + 0x3c]
mov edx, 1
mov rax, qword [rsi + 0x28]
inc ecx
shl edx, cl
inc ebx
mulsd xmm0, xmm13
movd xmm1, edx
cvtdq2pd xmm1, xmm1
subsd xmm0, xmm12
mulsd xmm0, xmm1
addsd xmm0, xmm15
cvttsd2si ecx, xmm0
mov dword [rdi + rax], ecx
add rdi, 4
cmp ebx, r15d
jl 0x14021dba0
mov rax, qword [rsp + 0x158]
movaps xmm0, xmm11
mulsd xmm0, xmm15
xorps xmm1, xmm1
mov r8d, r15d
movss xmm3, dword [rax + 0x18]
lea rcx, [rax + 0x24]
divsd xmm0, xmm10
cvtsd2ss xmm1, xmm0
movss xmm0, dword [rax + 0x1c]
movss dword [rsp + 0x20], xmm0
call fcn.14021de30
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov qword [rsi + 0x10], rax
call fcn.1400c1e7c
mov rdi, qword [rsp + 0x50]
mov rbx, rbp
mov qword [rsi + 0x18], rax
mov rcx, rdi
call fcn.1400c1e7c
mov rcx, qword [rsi + 0x18]
mov qword [rbx + rcx], rax
add rbx, 8
cmp rbx, 0x18
jl 0x14021dc53
test r15d, r15d
jle 0x14021ddab
movss xmm6, dword [0x140437634]
addsd xmm10, xmm10
movsd xmm7, qword [0x140437440]
mov rbx, rbp
nop
movd xmm0, ebp
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm15
mulsd xmm0, xmm11
divsd xmm0, xmm10
call fcn.1400dfa00
mulsd xmm0, xmm13
xorps xmm1, xmm1
inc ebp
xorps xmm2, xmm2
movaps xmm4, xmm6
movaps xmm3, xmm7
subsd xmm0, xmm12
addsd xmm0, xmm0
cvtsd2ss xmm0, xmm0
maxss xmm1, xmm0
minss xmm4, xmm1
cvttss2si eax, xmm4
movsxd rdx, eax
movd xmm0, eax
mov rax, qword [rsi + 8]
cvtdq2ps xmm0, xmm0
subss xmm4, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm4
movaps xmm1, xmm4
mulss xmm1, dword [rax + rdx*4 + 0x88]
subsd xmm3, xmm0
movss xmm0, dword [rax + rdx*4 + 0x84]
mov rax, qword [rsi + 0x18]
cvtss2sd xmm2, xmm1
mov rcx, qword [rax]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm3
addsd xmm2, xmm0
movaps xmm0, xmm4
cvtpd2ps xmm1, xmm2
xorps xmm2, xmm2
movss dword [rbx + rcx], xmm1
mov rax, qword [rsi + 8]
mulss xmm0, dword [rax + rdx*4 + 0xcc]
movss xmm1, dword [rax + rdx*4 + 0xc8]
mov rax, qword [rsi + 0x18]
cvtps2pd xmm1, xmm1
mov rcx, qword [rax + 8]
cvtss2sd xmm2, xmm0
mulsd xmm1, xmm3
addsd xmm2, xmm1
xorps xmm1, xmm1
cvtpd2ps xmm0, xmm2
movss dword [rbx + rcx], xmm0
mov rax, qword [rsi + 8]
movss xmm0, dword [rax + rdx*4 + 0x10c]
mulss xmm4, dword [rax + rdx*4 + 0x110]
mov rax, qword [rsi + 0x18]
cvtps2pd xmm0, xmm0
mov rcx, qword [rax + 0x10]
cvtss2sd xmm1, xmm4
mulsd xmm0, xmm3
addsd xmm1, xmm0
cvtpd2ps xmm1, xmm1
movss dword [rbx + rcx], xmm1
add rbx, 4
cmp ebp, r15d
jl 0x14021dc90
movaps xmm14, xmmword [rsp + 0x70]
lea r11, [rsp + 0x108]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm15, xmmword [rsp + 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
add rbx, 3
add edi, 3
jmp 0x14021d86c
add rbx, 2
add edi, 2
jmp 0x14021d86c
inc rbx
inc edi
jmp 0x14021d86c