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

Disassembly:
mov r11, rsp
push rsi
push rdi
sub rsp, 0x1b8
mov rax, qword [0x14021d798]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov rsi, qword [rcx]
mov rdi, rcx
test rsi, rsi
je 0x1400a417c
vmovss xmm0, dword [rcx + 0x44]
vmovaps xmmword [r11 - 0xa8], xmm14
vxorps xmm14, xmm14, xmm14
vcomiss xmm0, xmm14
jbe 0x1400a4173
cmp byte [rcx + 0x34], 0
vmovaps xmmword [r11 - 0x28], xmm6
vmovss xmm6, dword [rcx + 0x3c]
vmovaps xmmword [r11 - 0x38], xmm7
vmovss xmm7, dword [rcx + 0x40]
vmovaps xmmword [r11 - 0x48], xmm8
vmovaps xmmword [r11 - 0x58], xmm9
vmovaps xmmword [r11 - 0x68], xmm10
vmovaps xmmword [r11 - 0x78], xmm11
vmovss xmm11, dword [0x1401ecdc8]
vmulss xmm0, xmm0, xmm11
vmovaps xmmword [r11 - 0x88], xmm12
vsubss xmm8, xmm6, xmm0
vaddss xmm9, xmm6, xmm0
vsubss xmm10, xmm7, xmm0
vaddss xmm12, xmm7, xmm0
je 0x1400a4114
cmp byte [rcx + 8], 0
mov qword [r11 - 0x18], r15
mov qword [r11 + 8], rbx
je 0x1400a384d
add rcx, 0xc
call fcn.140026cd0
vmovss dword [rsp + 0x4c], xmm7
vmovss dword [rsp + 0x58], xmm7
vmovss xmm7, dword [0x1401ece1c]
mov r9d, eax
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x54]
mov rcx, rsi
vmovss dword [rsp + 0x20], xmm7
vmovss dword [rsp + 0x48], xmm9
vmovss dword [rsp + 0x54], xmm8
call fcn.14006f210
lea rcx, [rdi + 0xc]
call fcn.140026cd0
mov rcx, qword [rdi]
lea r8, [rsp + 0x48]
mov r9d, eax
lea rdx, [rsp + 0x54]
vmovss dword [rsp + 0x48], xmm6
vmovss dword [rsp + 0x4c], xmm12
vmovss dword [rsp + 0x54], xmm6
vmovss dword [rsp + 0x58], xmm10
vmovss dword [rsp + 0x20], xmm7
call fcn.14006f210
jmp 0x1400a3855
vmovss xmm7, dword [0x1401ece1c]
mov r15, qword [rdi + 0x50]
mov rsi, qword [rdi + 0x48]
cmp rsi, r15
je 0x1400a4104
vmovss xmm4, dword [0x1401ecdd8]
mov qword [rsp + 0x1d8], r12
xor r12d, r12d
vmovaps xmmword [rsp + 0x110], xmm15
vmovsd xmm15, qword [0x1401ece30]
mov qword [rsp + 0x1e0], r14
vmovaps xmmword [rsp + 0x130], xmm13
nop dword [rax + rax]
mov eax, dword [rsi + 4]
vmovups xmm0, xmmword [0x140307718]
vmovups xmm1, xmmword [0x140307418]
vmovss xmm2, dword [rsi]
vmovss xmm8, dword [rsi + 0x18]
vmovss xmm10, dword [rsi + 0x1c]
vmovups xmmword [rsp + 0x60], xmm0
vmovups xmmword [rsp + 0xf0], xmm1
test eax, eax
jne 0x1400a39bb
mov rbx, qword [rdi]
lea rcx, [rsp + 0x60]
call fcn.140026cd0
mov r14d, eax
vmovss xmm0, dword [rdi + 0x20]
vmovss dword [rsp + 0x74], xmm8
vmovss dword [rsp + 0x78], xmm10
test eax, 0xff000000
je 0x1400a3953
vcomiss xmm0, xmm11
jb 0x1400a3953
vsubss xmm2, xmm0, xmm11
xor r9d, r9d
mov dword [rsp + 0x20], 0x30
lea rdx, [rsp + 0x74]
mov rcx, rbx
call fcn.14006e340
mov r8d, dword [rbx + 0x78]
mov r9d, r14d
mov rdx, qword [rbx + 0x80]
dec r8d
vmovss dword [rsp + 0x28], xmm7
mov rcx, rbx
mov dword [rbx + 0x78], r8d
mov dword [rsp + 0x20], 1
call fcn.14006cf60
mov dword [rbx + 0x78], r12d
mov rbx, qword [rdi]
lea rcx, [rsp + 0xf0]
call fcn.140026cd0
mov r14d, eax
vmovss xmm2, dword [rdi + 0x20]
vmovss dword [rsp + 0x7c], xmm8
vmovss dword [rsp + 0x80], xmm10
test eax, 0xff000000
je 0x1400a40c5
vcomiss xmm2, xmm11
jb 0x1400a40c5
xor r9d, r9d
mov dword [rsp + 0x20], 0x30
lea rdx, [rsp + 0x7c]
mov rcx, rbx
call fcn.14006e340
mov r8d, dword [rbx + 0x78]
mov r9d, r14d
dec r8d
mov dword [rbx + 0x78], r8d
jmp 0x1400a40b2
vmovss xmm0, dword [rdi + 0x30]
vsubss xmm0, xmm0, xmm2
cmp eax, 1
jne 0x1400a3d55
vaddss xmm13, xmm0, dword [0x1401ed048]
vucomiss xmm13, xmm14
vmovss xmm9, dword [rdi + 0x3c]
vmovss xmm12, dword [rdi + 0x40]
jne 0x1400a39fe
vunpcklps xmm0, xmm8, xmm10
vmovsd qword [rsp + 0x40], xmm0
vmovss xmm6, dword [rsp + 0x40]
vshufps xmm1, xmm0, xmm0, 0x55
jmp 0x1400a3a53
vcvtss2sd xmm0, xmm13, xmm13
vmulsd xmm0, xmm0, xmm15
call fcn.1401a5880
vsubss xmm1, xmm8, xmm9
vcvtss2sd xmm3, xmm1, xmm1
vcvtss2sd xmm1, xmm9, xmm9
vsubss xmm2, xmm10, xmm12
vcvtss2sd xmm4, xmm2, xmm2
vpermilpd xmm5, xmm0, 1
vfmadd231sd xmm1, xmm3, xmm5
vfmadd231sd xmm1, xmm4, xmm0
vcvtss2sd xmm2, xmm12, xmm12
vfnmadd231sd xmm2, xmm3, xmm0
vfmadd231sd xmm2, xmm4, xmm5
vmovss xmm4, dword [0x1401ecdd8]
vcvtsd2ss xmm6, xmm1, xmm1
vcvtsd2ss xmm1, xmm2, xmm2
vxorps xmm13, xmm13, xmmword [0x1401ed5d0]
vmovaps xmm2, xmm9
vmovaps xmm3, xmm12
vcvtss2sd xmm0, xmm3, xmm3
vmovsd qword [rsp + 0x40], xmm0
vcvtss2sd xmm0, xmm2, xmm2
vmovsd qword [rsp + 0x48], xmm0
vmovss xmm0, dword [rdi + 0x24]
vaddss xmm2, xmm1, xmm0
vmovaps xmm14, xmm6
vmovaps xmm7, xmm1
vmovaps xmm15, xmm6
vfnmadd231ss xmm14, xmm0, xmm4
vfnmadd231ss xmm7, xmm0, xmm11
vfmadd231ss xmm15, xmm0, xmm4
vxorps xmm0, xmm0, xmm0
vucomiss xmm13, xmm0
vmovss dword [rsp + 0x50], xmm2
vmovss dword [rsp + 0x70], xmm13
jne 0x1400a3af7
vunpcklps xmm1, xmm14, xmm7
vunpcklps xmm0, xmm15, xmm7
vunpcklps xmm2, xmm6, xmm2
vmovsd qword [rsp + 0x40], xmm0
vmovss xmm7, dword [rsp + 0x40]
vmovsd qword [rsp + 0x40], xmm1
vmovss xmm13, dword [rsp + 0x40]
vmovsd qword [rsp + 0x40], xmm2
vmovss xmm14, dword [rsp + 0x40]
vshufps xmm6, xmm0, xmm0, 0x55
vshufps xmm12, xmm1, xmm1, 0x55
vshufps xmm9, xmm2, xmm2, 0x55
jmp 0x1400a3c2f
vcvtss2sd xmm0, xmm13, xmm13
vmulsd xmm0, xmm0, qword [0x1401ece30]
call fcn.1401a5880
vmovss xmm2, dword [rsp + 0x50]
vpermilpd xmm5, xmm0, 1
vsubss xmm2, xmm2, xmm12
vcvtss2sd xmm4, xmm2, xmm2
vsubss xmm1, xmm6, xmm9
vcvtss2sd xmm3, xmm1, xmm1
vmovsd xmm1, qword [rsp + 0x48]
vfmadd231sd xmm1, xmm3, xmm5
vfmadd231sd xmm1, xmm4, xmm0
vcvtsd2ss xmm2, xmm1, xmm1
vmovss dword [rsp + 0x54], xmm2
vmovsd xmm2, qword [rsp + 0x40]
vfnmadd231sd xmm2, xmm3, xmm0
vfmadd231sd xmm2, xmm4, xmm5
vcvtsd2ss xmm0, xmm2, xmm2
vmovss dword [rsp + 0x50], xmm0
vcvtss2sd xmm0, xmm13, xmm13
vmulsd xmm0, xmm0, qword [0x1401ece30]
vmovss dword [rsp + 0xf0], xmm14
vmovss dword [rsp + 0xf4], xmm7
call fcn.1401a5880
vmovsd xmm2, qword [rsp + 0x40]
vpermilpd xmm5, xmm0, 1
vsubss xmm1, xmm14, xmm9
vcvtss2sd xmm3, xmm1, xmm1
vmovsd xmm1, qword [rsp + 0x48]
vfnmadd231sd xmm2, xmm3, xmm0
vsubss xmm6, xmm7, xmm12
vfmadd231sd xmm1, xmm3, xmm5
vcvtss2sd xmm4, xmm6, xmm6
vfmadd231sd xmm1, xmm4, xmm0
vmovss xmm0, dword [rsp + 0x70]
vcvtss2sd xmm0, xmm0, xmm0
vmulsd xmm0, xmm0, qword [0x1401ece30]
vfmadd231sd xmm2, xmm4, xmm5
vmovss dword [rsp + 0xf0], xmm15
vmovss dword [rsp + 0xf4], xmm7
vcvtsd2ss xmm13, xmm1, xmm1
vcvtsd2ss xmm12, xmm2, xmm2
call fcn.1401a5880
vmovsd xmm2, qword [rsp + 0x48]
vmovss xmm14, dword [rsp + 0x54]
vsubss xmm1, xmm15, xmm9
vmovss xmm9, dword [rsp + 0x50]
vcvtss2sd xmm3, xmm1, xmm1
vmovsd xmm1, qword [rsp + 0x40]
vcvtss2sd xmm4, xmm6, xmm6
vpermilpd xmm5, xmm0, 1
vfnmadd231sd xmm1, xmm3, xmm0
vfmadd231sd xmm2, xmm3, xmm5
vfmadd231sd xmm1, xmm4, xmm5
vfmadd231sd xmm2, xmm4, xmm0
vcvtsd2ss xmm6, xmm1, xmm1
vcvtsd2ss xmm7, xmm2, xmm2
lea rcx, [rsp + 0x60]
vmovss dword [rsp + 0x84], xmm7
vmovss dword [rsp + 0x88], xmm6
vmovss dword [rsp + 0x8c], xmm8
vmovss dword [rsp + 0x90], xmm10
vmovss dword [rsp + 0x94], xmm13
vmovss dword [rsp + 0x98], xmm12
vmovss dword [rsp + 0x9c], xmm14
vmovss dword [rsp + 0xa0], xmm9
call fcn.140026cd0
mov rcx, qword [rdi]
lea r9, [rsp + 0x8c]
mov dword [rsp + 0x28], eax
lea r8, [rsp + 0x94]
lea rax, [rsp + 0x84]
lea rdx, [rsp + 0x9c]
mov qword [rsp + 0x20], rax
call fcn.14006f9b0
vmovups xmm0, xmmword [0x1401ed2f0]
lea rcx, [rsp + 0x60]
vmovups xmmword [rsp + 0x60], xmm0
vmovss dword [rsp + 0xa4], xmm7
vmovss dword [rsp + 0xa8], xmm6
vmovss dword [rsp + 0xac], xmm8
vmovss dword [rsp + 0xb0], xmm10
vmovss dword [rsp + 0xb4], xmm13
vmovss dword [rsp + 0xb8], xmm12
vmovss dword [rsp + 0xbc], xmm14
vmovss dword [rsp + 0xc0], xmm9
call fcn.140026cd0
mov rcx, qword [rdi]
lea r9, [rsp + 0xac]
mov dword [rsp + 0x28], eax
lea r8, [rsp + 0xb4]
lea rax, [rsp + 0xa4]
lea rdx, [rsp + 0xbc]
mov qword [rsp + 0x20], rax
call fcn.14006f800
vmovsd xmm15, qword [0x1401ece30]
vxorps xmm14, xmm14, xmm14
jmp 0x1400a40c5
vsubss xmm12, xmm0, dword [0x1401ed000]
mov rbx, qword [rdi]
lea rcx, [rsp + 0x60]
call fcn.140026cd0
mov r14d, eax
vmovss xmm0, dword [rdi + 0x28]
vmulss xmm2, xmm0, dword [0x1401ece00]
vmovss dword [rsp + 0xc4], xmm8
vmovss dword [rsp + 0xc8], xmm10
test eax, 0xff000000
je 0x1400a3ddf
vcomiss xmm2, xmm11
jb 0x1400a3ddf
vmovss xmm0, dword [0x1401ecf0c]
mov dword [rsp + 0x28], 0x1d
lea rdx, [rsp + 0xc4]
vmovaps xmm3, xmm14
mov rcx, rbx
vmovss dword [rsp + 0x20], xmm0
call fcn.14006e860
mov r8d, dword [rbx + 0x78]
mov r9d, r14d
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.14006ddd0
mov dword [rbx + 0x78], r12d
vmovups xmm0, xmmword [0x1401ed2f0]
mov rbx, qword [rdi]
lea rcx, [rsp + 0x60]
vmovups xmmword [rsp + 0x60], xmm0
call fcn.140026cd0
mov r14d, eax
vmovss xmm0, dword [rdi + 0x28]
vmulss xmm1, xmm0, dword [0x1401ece08]
vmovss dword [rsp + 0xcc], xmm8
vmovss dword [rsp + 0xd0], xmm10
test eax, 0xff000000
je 0x1400a3e81
vcomiss xmm1, xmm11
jb 0x1400a3e81
vsubss xmm2, xmm1, xmm11
xor r9d, r9d
mov dword [rsp + 0x20], 0x30
lea rdx, [rsp + 0xcc]
mov rcx, rbx
call fcn.14006e340
mov r8d, dword [rbx + 0x78]
mov r9d, r14d
vmovss xmm0, dword [0x1401ecd70]
mov rdx, qword [rbx + 0x80]
dec r8d
vmovss dword [rsp + 0x28], xmm0
mov rcx, rbx
mov dword [rbx + 0x78], r8d
mov dword [rsp + 0x20], 1
call fcn.14006cf60
mov dword [rbx + 0x78], r12d
vxorps xmm0, xmm12, xmmword [0x1401ed5d0]
vcvtss2sd xmm1, xmm0, xmm0
vmulsd xmm3, xmm1, xmm15
vmovss xmm1, dword [0x1401ecfb4]
vxorpd xmm2, xmm2, xmm2
vsubss xmm1, xmm1, xmm12
vmovsd xmm0, xmm2, xmm3
vcvtss2sd xmm2, xmm1, xmm1
vmulsd xmm1, xmm2, xmm15
call fcn.1401a5842
vmovss xmm4, dword [rdi + 0x28]
vmulss xmm1, xmm4, dword [0x1401ece40]
vperm2f128 ymm7, ymm0, ymm0, 1
vmovupd ymm5, ymm0
vcvtss2sd xmm3, xmm1, xmm1
vcvtss2sd xmm9, xmm8, xmm8
vmovaps xmm1, xmm9
vcvtss2sd xmm8, xmm10, xmm10
vcvtss2sd xmm6, xmm4, xmm4
vpermilpd xmm2, xmm5, 1
vfmadd231sd xmm1, xmm3, xmm2
vcvtsd2ss xmm0, xmm1, xmm1
vmovss dword [rsp + 0xd8], xmm0
vmovaps xmm0, xmm8
vfnmadd231sd xmm0, xmm3, xmm5
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [rsp + 0xdc], xmm0
vmovaps xmm0, xmm9
vpermilpd xmm1, xmm7, 1
vfmadd231sd xmm0, xmm6, xmm1
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [rsp + 0xe0], xmm0
vmovaps xmm1, xmm8
vfnmadd231sd xmm1, xmm6, xmm7
vcvtsd2ss xmm0, xmm1, xmm1
vmovss dword [rsp + 0xe4], xmm0
vmovss xmm0, dword [0x1401ed17c]
vsubss xmm1, xmm0, xmm12
vcvtss2sd xmm0, xmm1, xmm1
vmulsd xmm0, xmm0, xmm15
vzeroupper
call fcn.1401a5880
mov rbx, qword [rdi]
vpermilpd xmm1, xmm0, 1
vmovaps xmm2, xmm9
vfmadd231sd xmm2, xmm6, xmm1
mov ecx, dword [rbx + 0x78]
mov r8d, dword [rbx + 0x7c]
vcvtsd2ss xmm1, xmm2, xmm2
vmovaps xmm2, xmm8
vfnmadd231sd xmm2, xmm6, xmm0
vcvtsd2ss xmm0, xmm2, xmm2
vmovss dword [rsp + 0xec], xmm0
vmovss dword [rsp + 0xe8], xmm1
cmp ecx, r8d
jne 0x1400a3fd0
inc ecx
test r8d, r8d
je 0x1400a3fbb
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x1400a3fc0
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [rbx + 0x78]
call fcn.140040ce0
movsxd rdx, dword [rbx + 0x78]
mov rcx, qword [rbx + 0x80]
mov rax, qword [rsp + 0xd8]
mov qword [rcx + rdx*8], rax
inc dword [rbx + 0x78]
mov rbx, qword [rdi]
mov r8d, dword [rbx + 0x78]
mov ecx, dword [rbx + 0x7c]
cmp r8d, ecx
jne 0x1400a4023
inc r8d
test ecx, ecx
je 0x1400a400b
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400a4010
mov eax, 8
cmp eax, r8d
lea rcx, [rbx + 0x78]
cmovg r8d, eax
mov edx, r8d
call fcn.140040ce0
movsxd rdx, dword [rbx + 0x78]
mov rcx, qword [rbx + 0x80]
mov rax, qword [rsp + 0xe0]
mov qword [rcx + rdx*8], rax
inc dword [rbx + 0x78]
mov rbx, qword [rdi]
mov r8d, dword [rbx + 0x78]
mov ecx, dword [rbx + 0x7c]
cmp r8d, ecx
jne 0x1400a4076
inc r8d
test ecx, ecx
je 0x1400a405e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400a4063
mov eax, 8
cmp eax, r8d
lea rcx, [rbx + 0x78]
cmovg r8d, eax
mov edx, r8d
call fcn.140040ce0
movsxd rdx, dword [rbx + 0x78]
mov rcx, qword [rbx + 0x80]
mov rax, qword [rsp + 0xe8]
vmovups xmm0, xmmword [0x1401ed3a0]
vmovups xmmword [rsp + 0x60], xmm0
mov qword [rcx + rdx*8], rax
lea rcx, [rsp + 0x60]
inc dword [rbx + 0x78]
mov rbx, qword [rdi]
call fcn.140026cd0
mov r8d, dword [rbx + 0x78]
mov r9d, eax
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.14006ddd0
mov dword [rbx + 0x78], r12d
vmovss xmm4, dword [0x1401ecdd8]
vmovss xmm7, dword [0x1401ece1c]
add rsi, 0x20
cmp rsi, r15
jne 0x1400a38a0
vmovaps xmm15, xmmword [rsp + 0x110]
vmovaps xmm13, xmmword [rsp + 0x130]
mov r14, qword [rsp + 0x1e0]
mov r12, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x1d0]
mov r15, qword [rsp + 0x1b0]
mov rdx, qword [rdi + 0x50]
mov rcx, qword [rdi + 0x48]
mov rax, rdx
vmovaps xmm12, xmmword [rsp + 0x140]
sub rax, rcx
vmovaps xmm11, xmmword [rsp + 0x150]
vmovaps xmm10, xmmword [rsp + 0x160]
vmovaps xmm9, xmmword [rsp + 0x170]
vmovaps xmm8, xmmword [rsp + 0x180]
vmovaps xmm7, xmmword [rsp + 0x190]
vmovaps xmm6, xmmword [rsp + 0x1a0]
sar rax, 5
test rax, rax
je 0x1400a4173
cmp rcx, rdx
je 0x1400a4173
mov qword [rdi + 0x50], rcx
vmovaps xmm14, xmmword [rsp + 0x120]
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.1401702b0
add rsp, 0x1b8
pop rdi
pop rsi
ret