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

Disassembly:
mov rax, rsp
push rbp
push rdi
push r13
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc8
mov qword [rax + 0x10], rbx
mov rdi, rcx
mov rcx, qword [0x1401f26f8]
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r12
mov qword [rax - 0x28], r14
movaps xmmword [rax - 0x78], xmm10
mov rax, qword [rcx + 0x4140]
movaps xmmword [rsp + 0x60], xmm11
movss xmm0, dword [rax + 0x58]
movss xmm1, dword [rax + 0x5c]
movss dword [rdi + 0x30], xmm0
movss dword [rdi + 0x34], xmm1
mov rax, qword [rcx + 0x4140]
movss xmm0, dword [rax + 0x60]
movss xmm1, dword [rax + 0x64]
movss dword [rdi + 0x38], xmm0
movss dword [rdi + 0x3c], xmm1
mov rax, qword [rcx + 0x4140]
movss xmm2, dword [rax + 0x140]
movss xmm3, dword [rax + 0x144]
movss dword [rdi + 0x13c], xmm2
movss dword [rdi + 0x140], xmm3
mov rdx, qword [rcx + 0x4140]
mov rax, rdx
cmp qword [rdx + 0x1e8], 0
jne 0x14012ce4c
cmp qword [rcx + 0x5000], 0
jne 0x14012ce4c
add rax, 0x290
jmp 0x14012ce52
add rax, 0x260
movss xmm0, dword [rax]
lea rsi, [rdi + 0x144]
subss xmm0, dword [rdx + 0x140]
movss xmm1, dword [rax + 4]
mov ecx, 2
subss xmm1, dword [rdx + 0x144]
lea rdx, [rbp + 0x67]
mov qword [rbp + 0x67], 0
xorps xmm10, xmm10
movss dword [rsi], xmm0
addss xmm0, xmm2
shufps xmm2, xmm2, 0xe1
movss xmm2, xmm3
movss dword [rsi + 4], xmm1
shufps xmm2, xmm2, 0xc6
addss xmm1, xmm3
movss xmm2, xmm0
shufps xmm2, xmm2, 0x27
movss xmm2, xmm1
shufps xmm2, xmm2, 0x39
movups xmmword [rbp - 0x49], xmm2
movups xmmword [rdi + 0x14c], xmm2
call fcn.1400e4e50
mov edx, dword [rdi + 0xa4]
mov ecx, 3
call fcn.1400e4c20
xorps xmm1, xmm1
mov ecx, 8
call fcn.1400e4dd0
mov r9d, 0xc
mov dword [rbp - 0x49], 0x6e617061
mov r8d, 1
mov dword [rbp - 0x45], 0x61526c65
mov rdx, rsi
mov dword [rbp - 0x41], 0x726164
lea rcx, [rbp - 0x48]
call fcn.1400ed340
mov ecx, 1
call fcn.1400e4ee0
mov r8, qword [0x1401f26f8]
movsxd rax, dword [r8 + 0x4be8]
cmp eax, 1
jl 0x14012cf55
mov rcx, qword [r8 + 0x4bf0]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, 0x3ae
add rax, rax
movups xmmword [r8 + rax*8], xmm0
dec dword [r8 + 0x4be8]
mov ecx, 1
call fcn.1400e4ee0
movups xmm0, xmmword [rdi + 0x14c]
lea r14, [rdi + 0x8c]
lea r9, [rdi + 0xa4]
mov r8, r14
lea rdx, [rbp - 0x49]
movaps xmmword [rbp - 0x49], xmm0
call fcn.14012a480
movss xmm1, dword [rdi + 0x94]
lea rcx, [rbp - 0x48]
movaps xmm0, xmm1
mov dword [rbp - 0x39], 0x74754265
mulss xmm0, dword [r14]
mov r8d, 3
mov rdx, rsi
mov dword [rbp - 0x35], 0x6e6f74
mulss xmm1, dword [r14 + 4]
movss dword [rdi + 0x164], xmm0
movss dword [rdi + 0x168], xmm1
addss xmm0, dword [rdi + 0x13c]
addss xmm1, dword [rdi + 0x140]
movss dword [rdi + 0x15c], xmm0
movdqa xmm0, xmmword [0x1401cf210]
movdqu xmmword [rbp - 0x49], xmm0
movss dword [rdi + 0x160], xmm1
call fcn.1400bb540
xor ecx, ecx
call fcn.1400e8ea0
mov rbx, qword [0x1401f26f8]
mov byte [rdi + 0x138], al
mov r13, rbx
mov eax, dword [rbx + 0x41a4]
test eax, eax
je 0x14012d023
cmp eax, dword [rbx + 0x4af0]
sete al
jmp 0x14012d025
xor al, al
mov byte [rdi + 0x139], al
movsd xmm0, qword [rbx + 0xe48]
movsd qword [rdi + 0x130], xmm0
cmp byte [rbx + 0xe51], 0
movss xmm1, dword [rbx + 0x74]
jne 0x14012d052
cmp byte [rbx + 0x388f], 0
je 0x14012d0d1
movss xmm0, dword [rbx + 0x38f4]
mulss xmm1, xmm1
comiss xmm0, xmm1
jb 0x14012d0d1
lea rcx, [rbx + 0xe48]
mov rax, rcx
test rcx, rcx
jne 0x14012d079
lea rax, [rbx + 0xe48]
movss xmm0, dword [rax]
movss xmm1, dword [0x1401cd494]
comiss xmm0, xmm1
movss xmm2, dword [rax + 4]
jb 0x14012d0d1
comiss xmm2, xmm1
jb 0x14012d0d1
lea rax, [rbx + 0x3824]
mov rdx, rax
test rax, rax
jne 0x14012d0aa
lea rdx, [rbx + 0xe48]
movss xmm0, dword [rdx]
comiss xmm0, xmm1
movss xmm2, dword [rdx + 4]
jb 0x14012d0d1
comiss xmm2, xmm1
jb 0x14012d0d1
movss xmm0, dword [rcx]
movss xmm1, dword [rcx + 4]
subss xmm0, dword [rax]
subss xmm1, dword [rax + 4]
jmp 0x14012d0d7
xorps xmm0, xmm0
xorps xmm1, xmm1
cmp byte [rdi + 0x100], 0
unpcklps xmm0, xmm1
movsd qword [rdi + 0x16c], xmm0
je 0x14012d11b
movss xmm0, dword [rdi + 0x16c]
ucomiss xmm0, xmm10
jp 0x14012d11b
jne 0x14012d11b
movss xmm0, dword [rdi + 0x170]
ucomiss xmm0, xmm10
jp 0x14012d11b
jne 0x14012d11b
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
mov rbx, qword [0x1401f26f8]
mov r9d, dword [rdi + 0x180]
movss xmm11, dword [0x1401cd20c]
test r9d, r9d
je 0x14012d3d5
movaps xmmword [rsp + 0xb0], xmm6
lea eax, [r9 - 1]
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0x90], xmm8
movaps xmmword [rsp + 0x80], xmm9
cmp eax, 1
jbe 0x14012d25c
cmp r9d, 3
jne 0x14012d3b3
movss xmm2, dword [rdi + 0x114]
movss xmm0, dword [rdi + 0x110]
movss xmm9, dword [rsi + 4]
movss xmm7, dword [rsi]
movaps xmm4, xmm9
mulss xmm4, dword [0x1401cd170]
movaps xmm5, xmm7
mulss xmm5, dword [0x1401cd170]
movss xmm8, dword [0x1401cd41c]
movss xmm3, dword [0x1401cd49c]
movaps xmm6, xmm8
minss xmm8, xmm2
movaps xmm1, xmm3
maxss xmm1, xmm0
minss xmm6, xmm0
maxss xmm3, xmm2
minss xmm8, xmm2
maxss xmm1, xmm0
minss xmm6, xmm0
maxss xmm3, xmm2
movaps xmm2, xmm9
mulss xmm9, dword [0x1401cd1c0]
subss xmm8, xmm4
subss xmm6, xmm5
addss xmm5, xmm1
addss xmm4, xmm3
movaps xmm1, xmm5
addss xmm5, xmm6
movaps xmm0, xmm4
subss xmm1, xmm6
subss xmm0, xmm8
addss xmm4, xmm8
mulss xmm5, dword [0x1401cd440]
divss xmm2, xmm0
mulss xmm4, dword [0x1401cd440]
movaps xmm0, xmm7
mulss xmm7, dword [0x1401cd1c0]
divss xmm0, xmm1
minss xmm2, xmm0
minss xmm2, xmm11
divss xmm7, xmm2
divss xmm9, xmm2
addss xmm5, xmm7
addss xmm4, xmm9
movss dword [r14], xmm5
movss dword [r14 + 4], xmm4
jmp 0x14012d3a7
mov r10, qword [rdi + 0x1a8]
movabs rax, 0x6d3a06d3a06d3a07
mov r8, qword [rdi + 0x1a0]
mov rcx, r10
movss xmm8, dword [rsi]
sub rcx, r8
movss xmm9, dword [rsi + 4]
imul rcx
sar rdx, 8
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14012d3b3
movss xmm6, dword [0x1401cd41c]
xor cl, cl
movss xmm4, dword [0x1401cd49c]
movaps xmm7, xmm6
movaps xmm5, xmm4
cmp r8, r10
je 0x14012d3b3
lea rax, [r8 + 0x34]
cmp r9d, 2
jne 0x14012d2cd
cmp byte [rax - 0x2c], 0
je 0x14012d2f5
minss xmm6, dword [rax - 0xc]
minss xmm7, dword [rax - 8]
maxss xmm4, dword [rax - 0xc]
maxss xmm5, dword [rax - 8]
mov cl, 1
minss xmm6, dword [rax - 4]
minss xmm7, dword [rax]
maxss xmm4, dword [rax - 4]
maxss xmm5, dword [rax]
add r8, 0x258
add rax, 0x258
cmp r8, r10
jne 0x14012d2c1
test cl, cl
je 0x14012d3b3
movaps xmm1, xmm9
movaps xmm2, xmm8
mulss xmm2, dword [0x1401cd170]
mulss xmm1, dword [0x1401cd170]
addss xmm4, xmm2
subss xmm6, xmm2
movaps xmm2, xmm9
mulss xmm9, dword [0x1401cd1c0]
addss xmm5, xmm1
subss xmm7, xmm1
movaps xmm1, xmm4
subss xmm1, xmm6
movaps xmm0, xmm5
addss xmm4, xmm6
subss xmm0, xmm7
addss xmm5, xmm7
mulss xmm4, dword [0x1401cd440]
divss xmm2, xmm0
mulss xmm5, dword [0x1401cd440]
movaps xmm0, xmm8
mulss xmm8, dword [0x1401cd1c0]
divss xmm0, xmm1
minss xmm2, xmm0
minss xmm2, xmm11
divss xmm8, xmm2
divss xmm9, xmm2
addss xmm4, xmm8
addss xmm5, xmm9
movss dword [r14], xmm4
movss dword [r14 + 4], xmm5
movss dword [r14 + 8], xmm2
movss dword [r14 + 0xc], xmm2
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm9, xmmword [rsp + 0x80]
cmp byte [rdi + 0x102], 0
je 0x14012d46e
cmp byte [rdi + 0x100], 0
je 0x14012d3f5
movss xmm1, dword [0x1401cd450]
jmp 0x14012d3f9
movaps xmm1, xmm10
cmp byte [rdi + 0x139], 0
je 0x14012d46e
cmp byte [rbx + 0xe51], 0
je 0x14012d46e
comiss xmm10, xmm1
jbe 0x14012d416
movss xmm1, dword [rbx + 0x74]
movss xmm0, dword [rbx + 0x38f4]
mulss xmm1, xmm1
comiss xmm0, xmm1
setae al
test al, al
je 0x14012d46e
movss xmm1, dword [rdi + 0x94]
movss xmm2, dword [r13 + 0xf4]
movss xmm0, dword [r13 + 0xf0]
divss xmm0, xmm1
divss xmm2, xmm1
addss xmm0, dword [rdi + 0x8c]
addss xmm2, dword [rdi + 0x90]
movss dword [rdi + 0x8c], xmm0
movss dword [rdi + 0x90], xmm2
mov rax, qword [rbx + 0x4140]
lea rdx, [rdi + 0x14c]
mov r9b, 1
lea r8, [rdi + 0x154]
mov byte [rax + 0xf5], 1
mov rax, qword [rbx + 0x4140]
mov rsi, qword [rax + 0x2e0]
mov byte [rax + 0xf5], 1
mov rbx, qword [rbx + 0x4140]
mov rcx, qword [rbx + 0x2e0]
call fcn.1400a8b10
mov rax, qword [rbx + 0x2e0]
movsxd rcx, dword [rax + 0x58]
mov rax, qword [rax + 0x60]
add rcx, rcx
movss xmm0, dword [rax + rcx*8 - 0xc]
movss xmm1, dword [rax + rcx*8 - 8]
movss xmm2, dword [rax + rcx*8 - 4]
mov eax, dword [rax + rcx*8 - 0x10]
mov dword [rbx + 0x278], eax
movss dword [rbx + 0x27c], xmm0
movss dword [rbx + 0x280], xmm1
movss dword [rbx + 0x284], xmm2
cmp byte [rdi + 0xfd], 0
movaps xmm10, xmmword [rsp + 0x70]
je 0x14012d553
movss xmm0, dword [rdi + 0xdc]
lea r9, [rdi + 0x8c]
mov eax, dword [rdi + 0xac]
mov rdx, rsi
mov r8, qword [rdi + 0x13c]
mov rcx, rdi
movss dword [rsp + 0x38], xmm0
movsd xmm0, qword [rdi + 0x144]
mov dword [rsp + 0x30], eax
mov eax, dword [rdi + 0xa8]
mov dword [rsp + 0x28], eax
movsd qword [rsp + 0x20], xmm0
call fcn.14012a610
mov rax, qword [0x1401f26f8]
xor r15d, r15d
mov rcx, qword [rax + 0x4d00]
test rcx, rcx
je 0x14012d5a9
cmp rcx, qword [rax + 0x4140]
jne 0x14012d5a9
movss xmm0, dword [0x1401cd288]
lea rdx, [rdi + 0x14c]
mov r9d, dword [rdi + 0xc4]
lea r8, [rdi + 0x154]
movss dword [rsp + 0x30], xmm0
mov rcx, rsi
mov dword [rsp + 0x28], r15d
movss dword [rsp + 0x20], xmm11
call fcn.1400abbb0
cmp byte [rdi + 0x104], r15b
je 0x14012d5bd
mov rdx, rsi
mov rcx, rdi
call fcn.14012be10
mov r8d, 3
lea rcx, [rsi + 0xa8]
call fcn.1400acb40
mov rdx, rsi
mov rcx, rdi
call fcn.14012c030
mov r8d, 2
lea rcx, [rsi + 0xa8]
mov rdx, rsi
call fcn.1400ad000
xor r12b, r12b
cmp byte [rdi + 0x101], r12b
je 0x14012d624
movups xmm0, xmmword [rdi + 0x13c]
lea r9, [rdi + 0xa4]
mov rdx, rsi
lea r8, [rdi + 0x8c]
mov rcx, rdi
movups xmmword [rsp + 0x20], xmm0
call fcn.14012ab50
movzx r12d, al
mov r8d, 2
lea rcx, [rsi + 0xa8]
mov rdx, rsi
call fcn.1400ad000
test r12b, r12b
jne 0x14012d66c
movups xmm0, xmmword [rdi + 0x14c]
lea rdx, [rdi + 0xa4]
mov rcx, rdi
movss xmm2, dword [rdi + 0x94]
lea r9, [rbp - 0x49]
mov qword [rsp + 0x20], rdx
mov rdx, rsi
movaps xmmword [rbp - 0x49], xmm0
call fcn.14012a100
mov r8d, 1
lea rcx, [rsi + 0xa8]
mov rdx, rsi
call fcn.1400ad000
cmp byte [rdi + 0x109], r15b
je 0x14012d73b
mov r14, qword [rdi + 0x1c0]
mov rbx, qword [rdi + 0x1b8]
cmp rbx, r14
je 0x14012d73b
nop word [rax + rax]
mov rdx, qword [rdi + 0x1a0]
mov rax, qword [rdi + 0x1a8]
cmp rdx, rax
je 0x14012d6db
mov rcx, qword [rbx]
cmp qword [rdx], rcx
je 0x14012d7cb
add rdx, 0x258
cmp rdx, rax
jne 0x14012d6c6
mov r9, qword [rdi + 0x1a0]
mov rdx, r15
mov rax, qword [rdi + 0x1a8]
cmp r9, rax
je 0x14012d706
mov rcx, qword [rbx + 8]
cmp qword [r9], rcx
je 0x14012d709
add r9, 0x258
cmp r9, rax
jne 0x14012d6f5
mov r9, r15
test rdx, rdx
je 0x14012d72e
test r9, r9
je 0x14012d72e
lea r8, [r9 + 0x20]
movss dword [rsp + 0x20], xmm11
mov r9d, dword [r9 + 0x70]
add rdx, 0x20
mov rcx, rsi
call fcn.1400aba50
add rbx, 0x10
cmp rbx, r14
jne 0x14012d6b0
mov r14, qword [rdi + 0x1a8]
mov rbx, qword [rdi + 0x1a0]
movaps xmm11, xmmword [rsp + 0x60]
cmp rbx, r14
je 0x14012d78f
lea r15, [rdi + 0x14c]
nop dword [rax + rax]
movss xmm3, dword [rdi + 0x94]
mov r8, rbx
mov byte [rsp + 0x28], r12b
mov rdx, rsi
mov rcx, rdi
mov qword [rsp + 0x20], r15
call fcn.14012b3a0
add rbx, 0x258
cmp rbx, r14
jne 0x14012d760
xor r15d, r15d
lea rcx, [rsi + 0xa8]
mov rdx, rsi
call fcn.1400acc80
mov eax, dword [rsi + 0x58]
mov r14, qword [rsp + 0xc0]
sub eax, 1
mov r12, qword [rsp + 0x108]
mov rbx, qword [rsp + 0xf8]
mov dword [rsi + 0x58], eax
jne 0x14012d7de
mov rax, qword [rsi + 0x38]
add rax, 0x1c
jmp 0x14012d7ea
mov r9, qword [rdi + 0x1a0]
mov rax, qword [rdi + 0x1a8]
jmp 0x14012d6f1
dec eax
cdqe
shl rax, 4
add rax, qword [rsi + 0x60]
movups xmm0, xmmword [rax]
mov rcx, rsi
movups xmmword [rsi + 0x88], xmm0
call fcn.1400a8930
mov eax, dword [rdi + 0x184]
mov rsi, qword [rsp + 0x100]
cmp eax, 5
jne 0x14012d819
cmp byte [r13 + 0xe52], 0
jmp 0x14012d825
test eax, eax
je 0x14012d82e
cmp byte [r13 + 0xe50], 0
jne 0x14012d82e
mov dword [rdi + 0x184], r15d
mov dword [rdi + 0x180], r15d
add rsp, 0xc8
pop r15
pop r13
pop rdi
pop rbp
jmp fcn.1400ed740