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

Disassembly:
mov r11, rsp
push rsi
sub rsp, 0x1b0
vmovaps xmmword [r11 - 0x88], xmm12
mov rax, qword [0x1401c5e00]
xor rax, rsp
mov qword [rsp + 0xf8], rax
vmovss xmm0, dword [rcx + 0x44]
vxorps xmm12, xmm12, xmm12
vcomiss xmm0, xmm12
mov rsi, rcx
jbe 0x1400aa124
cmp byte [rcx + 0x34], 0
vmovaps xmmword [r11 - 0x28], xmm6
vmovss xmm6, dword [rcx + 0x40]
vmovaps xmmword [r11 - 0x38], xmm7
vmovss xmm7, dword [rcx + 0x3c]
vmovaps xmmword [r11 - 0x48], xmm8
vmovaps xmmword [r11 - 0x58], xmm9
vmovaps xmmword [r11 - 0x68], xmm10
vmovaps xmmword [r11 - 0x78], xmm11
vmovaps xmmword [r11 - 0xb8], xmm15
vmovss xmm15, dword [0x1400dfefc]
vmulss xmm0, xmm0, xmm15
vsubss xmm8, xmm7, xmm0
vaddss xmm9, xmm7, xmm0
vsubss xmm10, xmm6, xmm0
vaddss xmm11, xmm6, xmm0
je 0x1400aa0c5
cmp byte [rcx + 8], 0
mov qword [r11 + 0x18], rdi
mov qword [r11 - 0x10], r14
mov qword [r11 + 0x10], rbx
je 0x1400a995a
mov rbx, qword [rcx]
add rcx, 0xc
call fcn.14004b020
vmovss dword [rsp + 0x48], xmm8
vmovss xmm8, dword [0x1400dff00]
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, rbx
vmovss dword [rsp + 0x20], xmm8
vmovss dword [rsp + 0x40], xmm9
vmovss dword [rsp + 0x44], xmm6
vmovss dword [rsp + 0x4c], xmm6
call fcn.140064d90
mov rbx, qword [rsi]
lea rcx, [rsi + 0xc]
call fcn.14004b020
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, rbx
vmovss dword [rsp + 0x40], xmm7
vmovss dword [rsp + 0x44], xmm11
vmovss dword [rsp + 0x48], xmm7
vmovss dword [rsp + 0x4c], xmm10
vmovss dword [rsp + 0x20], xmm8
call fcn.140064d90
jmp 0x1400a9962
vmovss xmm8, dword [0x1400dff00]
mov r14, qword [rsi + 0x50]
mov rdi, qword [rsi + 0x48]
cmp rdi, r14
je 0x1400aa0ad
vmovsd xmm6, qword [0x1400e09c8]
vmovss xmm3, dword [0x1400ea6d0]
mov qword [rsp + 0x1a0], r15
xor r15d, r15d
vmovaps xmmword [rsp + 0x120], xmm13
vmovaps xmmword [rsp + 0x110], xmm14
mov eax, dword [rdi + 4]
vmovups xmm0, xmmword [rdi + 8]
vmovss xmm1, dword [rdi]
vmovss xmm13, dword [rdi + 0x18]
vmovss xmm14, dword [rdi + 0x1c]
vmovups xmmword [rsp + 0xe8], xmm0
test eax, eax
jne 0x1400a9a49
mov rbx, qword [rsi]
lea rcx, [rsp + 0xe8]
call fcn.14004b020
vmovss xmm2, dword [rsi + 0x20]
vmovss dword [rsp + 0x28], xmm8
mov r9d, eax
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0x70]
mov rcx, rbx
vmovss dword [rsp + 0x70], xmm13
vmovss dword [rsp + 0x74], xmm14
call fcn.140063620
vmovdqu xmm0, xmmword [0x1400e0e10]
mov rbx, qword [rsi]
lea rcx, [rsp + 0x50]
vmovups xmmword [rsp + 0x50], xmm0
call fcn.14004b020
vmovss xmm2, dword [rsi + 0x20]
mov r9d, eax
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0x78]
mov rcx, rbx
vmovss dword [rsp + 0x78], xmm13
vmovss dword [rsp + 0x7c], xmm14
call fcn.140063710
jmp 0x1400aa07e
vmovss xmm0, dword [rsi + 0x30]
vsubss xmm0, xmm0, xmm1
cmp eax, 1
jne 0x1400a9e3f
vaddss xmm0, xmm0, dword [0x1400e0b48]
vucomiss xmm0, xmm12
vmovss xmm9, dword [rsi + 0x3c]
vmovss xmm10, dword [rsi + 0x40]
vmovss dword [rsp + 0x60], xmm0
vmovss dword [rsp + 0x50], xmm12
vmovss dword [rsp + 0x54], xmm12
jne 0x1400a9a8d
vunpcklps xmm1, xmm13, xmm14
jmp 0x1400a9aec
vcvtss2sd xmm0, xmm0, xmm0
vmulsd xmm0, xmm0, xmm6
call fcn.1400d3620
vpermilpd xmm6, xmm0, 1
vsubss xmm1, xmm13, xmm9
vcvtss2sd xmm4, xmm1, xmm1
vcvtss2sd xmm1, xmm9, xmm9
vfmadd231sd xmm1, xmm4, xmm6
vsubss xmm2, xmm14, xmm10
vcvtss2sd xmm5, xmm2, xmm2
vfmadd231sd xmm1, xmm5, xmm0
vcvtss2sd xmm2, xmm10, xmm10
vfnmadd231sd xmm2, xmm4, xmm0
vfmadd231sd xmm2, xmm5, xmm6
vmovsd xmm6, qword [0x1400e09c8]
vcvtsd2ss xmm3, xmm1, xmm1
vcvtsd2ss xmm0, xmm2, xmm2
vunpcklps xmm1, xmm3, xmm0
vmovss xmm3, dword [0x1400ea6d0]
vmovsd qword [rsp + 0x40], xmm1
vmovss xmm8, dword [rsp + 0x44]
vmovaps xmm7, xmm1
vmovaps xmm1, xmm10
vcvtss2sd xmm1, xmm1, xmm1
vmovaps xmm0, xmm9
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [rsp + 0x48], xmm0
vmovss xmm0, dword [rsp + 0x60]
vxorps xmm0, xmm0, xmmword [0x1400e0f60]
vucomiss xmm0, xmm12
vmovsd qword [rsp + 0x50], xmm1
vmovss xmm1, dword [rsi + 0x24]
vaddss xmm2, xmm1, dword [rsp + 0x44]
vfnmadd231ss xmm8, xmm1, xmm15
vmovaps xmm15, xmm7
vmovaps xmm11, xmm7
vfmadd231ss xmm15, xmm1, xmm3
vmovss dword [rsp + 0x68], xmm2
vmovss dword [rsp + 0x60], xmm0
vmovss dword [rsp + 0x40], xmm12
vmovss dword [rsp + 0x44], xmm12
vfnmadd231ss xmm11, xmm1, xmm3
jne 0x1400a9ba6
vunpcklps xmm0, xmm7, xmm2
vmovsd qword [rsp + 0x40], xmm0
vunpcklps xmm0, xmm11, xmm8
vmovsd qword [rsp + 0x68], xmm0
vunpcklps xmm0, xmm15, xmm8
vmovss dword [rsp + 0x50], xmm12
vmovss dword [rsp + 0x54], xmm12
vmovsd qword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x50], xmm12
vmovss dword [rsp + 0x54], xmm12
jmp 0x1400a9ce3
vcvtss2sd xmm0, xmm0, xmm0
vmulsd xmm2, xmm0, xmm6
vxorpd xmm1, xmm1, xmm1
vmovsd xmm0, xmm1, xmm2
call fcn.1400d3620
vmovss xmm2, dword [rsp + 0x68]
vpermilpd xmm6, xmm0, 1
vsubss xmm2, xmm2, xmm10
vcvtss2sd xmm5, xmm2, xmm2
vmovsd xmm2, qword [rsp + 0x50]
vsubss xmm1, xmm7, xmm9
vmovss xmm7, dword [rsp + 0x60]
vcvtss2sd xmm4, xmm1, xmm1
vmovsd xmm1, qword [rsp + 0x48]
vfnmadd231sd xmm2, xmm4, xmm0
vfmadd231sd xmm1, xmm4, xmm6
vfmadd231sd xmm1, xmm5, xmm0
vfmadd231sd xmm2, xmm5, xmm6
vcvtsd2ss xmm0, xmm2, xmm2
vcvtsd2ss xmm3, xmm1, xmm1
vunpcklps xmm1, xmm3, xmm0
vcvtss2sd xmm0, xmm7, xmm7
vmulsd xmm0, xmm0, qword [0x1400e09c8]
vmovss dword [rsp + 0x68], xmm11
vmovss dword [rsp + 0x6c], xmm8
vmovsd qword [rsp + 0x40], xmm1
call fcn.1400d3620
vpermilpd xmm6, xmm0, 1
vsubss xmm1, xmm11, xmm9
vmovsd xmm11, qword [rsp + 0x50]
vcvtss2sd xmm4, xmm1, xmm1
vmovsd xmm1, qword [rsp + 0x48]
vfmadd231sd xmm1, xmm4, xmm6
vsubss xmm2, xmm8, xmm10
vcvtss2sd xmm5, xmm2, xmm2
vfmadd231sd xmm1, xmm5, xmm0
vmovaps xmm2, xmm11
vfnmadd231sd xmm2, xmm4, xmm0
vfmadd231sd xmm2, xmm5, xmm6
vcvtsd2ss xmm0, xmm2, xmm2
vcvtsd2ss xmm3, xmm1, xmm1
vunpcklps xmm1, xmm3, xmm0
vcvtss2sd xmm0, xmm7, xmm7
vmulsd xmm0, xmm0, qword [0x1400e09c8]
vmovss dword [rsp + 0x50], xmm15
vmovss dword [rsp + 0x54], xmm8
vmovsd qword [rsp + 0x68], xmm1
call fcn.1400d3620
vpermilpd xmm6, xmm0, 1
vsubss xmm1, xmm15, xmm9
vcvtss2sd xmm4, xmm1, xmm1
vmovsd xmm1, qword [rsp + 0x48]
vfmadd231sd xmm1, xmm4, xmm6
vsubss xmm2, xmm8, xmm10
vcvtss2sd xmm5, xmm2, xmm2
vfmadd231sd xmm1, xmm5, xmm0
vmovaps xmm2, xmm11
vfnmadd231sd xmm2, xmm4, xmm0
vfmadd231sd xmm2, xmm5, xmm6
vcvtsd2ss xmm3, xmm1, xmm1
vcvtsd2ss xmm0, xmm2, xmm2
vunpcklps xmm1, xmm3, xmm0
vmovsd qword [rsp + 0x48], xmm1
mov rbx, qword [rsi]
lea rcx, [rsp + 0xe8]
call fcn.14004b020
vmovss xmm11, dword [rsp + 0x48]
vmovss xmm10, dword [rsp + 0x4c]
vmovss xmm9, dword [rsp + 0x68]
vmovss xmm8, dword [rsp + 0x6c]
vmovss xmm7, dword [rsp + 0x40]
vmovss xmm6, dword [rsp + 0x44]
mov dword [rsp + 0x28], eax
lea r9, [rsp + 0x88]
lea rax, [rsp + 0x80]
mov rcx, rbx
lea r8, [rsp + 0x90]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x98]
vmovss dword [rsp + 0x80], xmm11
vmovss dword [rsp + 0x84], xmm10
vmovss dword [rsp + 0x88], xmm13
vmovss dword [rsp + 0x8c], xmm14
vmovss dword [rsp + 0x90], xmm9
vmovss dword [rsp + 0x94], xmm8
vmovss dword [rsp + 0x98], xmm7
vmovss dword [rsp + 0x9c], xmm6
call fcn.140065d90
vmovdqu xmm0, xmmword [0x1400eb760]
mov rbx, qword [rsi]
lea rcx, [rsp + 0x50]
vmovups xmmword [rsp + 0x50], xmm0
call fcn.14004b020
vmovss xmm0, dword [0x1400e09a4]
vmovss dword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], eax
lea r9, [rsp + 0xa8]
lea rax, [rsp + 0xa0]
mov rcx, rbx
lea r8, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0xb8]
vmovss dword [rsp + 0xa0], xmm11
vmovss dword [rsp + 0xa4], xmm10
vmovss dword [rsp + 0xa8], xmm13
vmovss dword [rsp + 0xac], xmm14
vmovss dword [rsp + 0xb0], xmm9
vmovss dword [rsp + 0xb4], xmm8
vmovss dword [rsp + 0xb8], xmm7
vmovss dword [rsp + 0xbc], xmm6
call fcn.140065d00
vmovss xmm15, dword [0x1400dfefc]
jmp 0x1400aa06e
vsubss xmm10, xmm0, dword [0x1400eb750]
mov rbx, qword [rsi]
lea rcx, [rsp + 0xe8]
call fcn.14004b020
vmovss xmm0, dword [rsi + 0x28]
vmulss xmm2, xmm0, dword [0x1400eb288]
mov r9d, eax
mov dword [rsp + 0x20], 0x1e
lea rdx, [rsp + 0xc0]
mov rcx, rbx
vmovss dword [rsp + 0xc0], xmm13
vmovss dword [rsp + 0xc4], xmm14
call fcn.140063710
vmovdqu xmm0, xmmword [0x1400eb760]
mov rbx, qword [rsi]
lea rcx, [rsp + 0x50]
vmovups xmmword [rsp + 0x50], xmm0
call fcn.14004b020
vmovss xmm0, dword [rsi + 0x28]
vmulss xmm2, xmm0, dword [str.33s_]
vmovss xmm0, dword [0x1400e09a4]
vmovss dword [rsp + 0x28], xmm0
mov r9d, eax
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0xc8]
mov rcx, rbx
vmovss dword [rsp + 0xc8], xmm13
vmovss dword [rsp + 0xcc], xmm14
call fcn.140063620
vxorps xmm0, xmm10, xmmword [0x1400e0f60]
vcvtss2sd xmm1, xmm0, xmm0
vmulsd xmm3, xmm1, xmm6
vmovss xmm1, dword [0x1400e0a98]
vxorpd xmm2, xmm2, xmm2
vsubss xmm1, xmm1, xmm10
vmovsd xmm0, xmm2, xmm3
vcvtss2sd xmm2, xmm1, xmm1
vmulsd xmm1, xmm2, xmm6
call fcn.1400d34e2
vmovss xmm4, dword [rsi + 0x28]
vmulss xmm1, xmm4, dword [0x1400eb744]
vperm2f128 ymm7, ymm0, ymm0, 1
vmovupd ymm5, ymm0
vcvtss2sd xmm3, xmm1, xmm1
vcvtss2sd xmm9, xmm13, xmm13
vmovaps xmm1, xmm9
vcvtss2sd xmm8, xmm14, xmm14
vcvtss2sd xmm6, xmm4, xmm4
vpermilpd xmm2, xmm5, 1
vfmadd231sd xmm1, xmm3, xmm2
vcvtsd2ss xmm0, xmm1, xmm1
vmovss dword [rsp + 0xd0], xmm0
vmovaps xmm0, xmm8
vfnmadd231sd xmm0, xmm3, xmm5
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [rsp + 0xd4], xmm0
vmovaps xmm0, xmm9
vpermilpd xmm1, xmm7, 1
vfmadd231sd xmm0, xmm6, xmm1
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [rsp + 0xd8], xmm0
vmovaps xmm1, xmm8
vfnmadd231sd xmm1, xmm6, xmm7
vcvtsd2ss xmm0, xmm1, xmm1
vmovss dword [rsp + 0xdc], xmm0
vmovss xmm0, dword [0x1400eb754]
vsubss xmm1, xmm0, xmm10
vcvtss2sd xmm0, xmm1, xmm1
vmulsd xmm0, xmm0, qword [0x1400e09c8]
vzeroupper
call fcn.1400d3620
vpermilpd xmm1, xmm0, 1
vmovaps xmm2, xmm9
vfmadd231sd xmm2, xmm6, xmm1
vcvtsd2ss xmm1, xmm2, xmm2
vmovaps xmm2, xmm8
vfnmadd231sd xmm2, xmm6, xmm0
vcvtsd2ss xmm0, xmm2, xmm2
vmovss dword [rsp + 0xe4], xmm0
vmovss dword [rsp + 0xe0], xmm1
lea rdx, [rsp + 0xd0]
mov rcx, qword [rsi]
call fcn.140057f40
mov rcx, qword [rsi]
lea rdx, [rsp + 0xd8]
call fcn.140057f40
mov rcx, qword [rsi]
lea rdx, [rsp + 0xe0]
call fcn.140057f40
vmovdqu xmm0, xmmword [0x1400eb770]
mov rbx, qword [rsi]
lea rcx, [rsp + 0x50]
vmovups xmmword [rsp + 0x50], xmm0
call fcn.14004b020
mov r8d, dword [rbx + 0x78]
mov r9d, eax
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.1400637e0
mov dword [rbx + 0x78], r15d
vmovss xmm8, dword [0x1400dff00]
vmovsd xmm6, qword [0x1400e09c8]
vmovss xmm3, dword [0x1400ea6d0]
add rdi, 0x20
cmp rdi, r14
jne 0x1400a99a0
vmovaps xmm14, xmmword [rsp + 0x110]
vmovaps xmm13, xmmword [rsp + 0x120]
mov r15, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0x1c8]
mov rdi, qword [rsp + 0x1d0]
mov r14, qword [rsp + 0x1a8]
mov rdx, qword [rsi + 0x50]
mov rcx, qword [rsi + 0x48]
mov rax, rdx
vmovaps xmm15, xmmword [rsp + 0x100]
vmovaps xmm11, xmmword [rsp + 0x140]
vmovaps xmm10, xmmword [rsp + 0x150]
vmovaps xmm9, xmmword [rsp + 0x160]
vmovaps xmm8, xmmword [rsp + 0x170]
vmovaps xmm7, xmmword [rsp + 0x180]
vmovaps xmm6, xmmword [rsp + 0x190]
sub rax, rcx
sar rax, 5
test rax, rax
je 0x1400aa124
cmp rcx, rdx
je 0x1400aa124
mov qword [rsi + 0x50], rcx
mov rcx, qword [rsp + 0xf8]
xor rcx, rsp
call fcn.1400d3390
vmovaps xmm12, xmmword [rsp + 0x130]
add rsp, 0x1b0
pop rsi
ret