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

Disassembly:
mov rax, rsp
push rbp
push rbx
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x4f]
sub rsp, 0xf0
vmovaps xmmword [rax - 0x48], xmm6
vmovaps xmmword [rax - 0x58], xmm7
vmovaps xmmword [rax - 0x68], xmm8
vmovaps xmmword [rsp + 0x60], xmm14
mov rax, qword [0x180060040]
xor rax, rsp
mov qword [rsp + 0x50], rax
cmp byte [rcx + 0x81], 0
mov r13d, r9d
vmovss xmm8, dword [rbp + 0x7f]
mov rbx, qword [0x180060e80]
mov r15, rdx
mov r14d, dword [rcx + 0xc]
mov rdi, rcx
vmovss xmm14, dword [rcx + 0x40]
vmovss xmm7, dword [rcx + 0x44]
movzx r12d, r8b
mov byte [rcx + 0x83], 0
je 0x180013a50
vmovss xmm6, dword [rbx + 0x159c]
vmovss dword [rbx + 0x159c], xmm7
test r8b, r8b
je 0x180013a17
cmp byte [rbx + 0x1bf6], 0
mov eax, 0xb
je 0x180013a1c
mov eax, 0xc
vmovss xmm1, dword [0x18005733c]
mov ecx, eax
call fcn.18000b7b0
mov rdx, qword [r15 + 8]
mov r8d, eax
mov rcx, qword [r15]
mov r9b, 1
vmovss dword [rsp + 0x20], xmm14
call fcn.18000ce60
vmovss dword [rbx + 0x159c], xmm6
jmp 0x180013f60
mov qword [rsp + 0x148], rsi
vmovaps xmmword [rsp + 0xb0], xmm9
vmovss xmm9, dword [0x18005733c]
vmovaps xmmword [rsp + 0xa0], xmm10
vxorps xmm10, xmm10, xmm10
test r14b, r14b
js 0x180013b9e
mov ecx, r14d
mov eax, 4
and ecx, 0x1000000
bts ecx, 0x19
shr ecx, 0x18
test r14d, 0x6000000
vmovaps xmm1, xmm9
cmovne ecx, eax
call fcn.18000b7b0
test byte [rbx + 0x1ab8], 0x40
mov r9d, eax
je 0x180013af6
vmovss xmm0, dword [rbx + 0x1b10]
vucomiss xmm0, xmm9
jp 0x180013ac6
je 0x180013af6
vcomiss xmm10, xmm0
jbe 0x180013ad2
vxorps xmm1, xmm1, xmm1
jmp 0x180013ad6
vminss xmm1, xmm9, xmm0
vmulss xmm0, xmm1, dword [0x1800573f4]
vaddss xmm0, xmm0, dword [0x18005730c]
vcvttss2si r9d, xmm0
shl r9d, 0x18
and eax, 0xffffff
or r9d, eax
vmovss xmm3, dword [rdi + 0x10]
vaddss xmm0, xmm3, dword [rdi + 0x18]
vmovss xmm4, dword [rdi + 0x14]
vmovss dword [rsp + 0x38], xmm0
vaddss xmm0, xmm4, dword [rdi + 0x1c]
mov esi, r14d
vmovss dword [rsp + 0x3c], xmm0
and esi, 1
je 0x180013b24
vxorps xmm1, xmm1, xmm1
jmp 0x180013b58
mov rax, qword [rdi + 0x358]
vmovss xmm0, dword [rbx + 0x1914]
vmulss xmm2, xmm0, dword [rdi + 0x2a0]
test rax, rax
je 0x180013b48
vmulss xmm2, xmm2, dword [rax + 0x2a0]
vmovss xmm0, dword [rbx + 0x1594]
vaddss xmm1, xmm0, xmm0
vaddss xmm1, xmm1, xmm2
test esi, esi
lea r8, [rsp + 0x38]
mov eax, 0xc
lea rdx, [rsp + 0x30]
mov ecx, 0xf
cmovne eax, ecx
mov rcx, qword [rdi + 0x2a8]
vaddss xmm0, xmm3, xmm10
vaddss xmm1, xmm1, xmm4
mov dword [rsp + 0x28], eax
vmovss dword [rsp + 0x20], xmm14
vmovss dword [rsp + 0x30], xmm0
vmovss dword [rsp + 0x34], xmm1
call fcn.1800293c0
jmp 0x180013ba4
mov esi, r14d
and esi, 1
test esi, esi
jne 0x180013bdb
lea ecx, [r12 + 0xa]
vmovaps xmm1, xmm9
call fcn.18000b7b0
mov rcx, qword [rdi + 0x2a8]
lea r8, [r15 + 8]
mov r9d, eax
mov dword [rsp + 0x28], 3
mov rdx, r15
vmovss dword [rsp + 0x20], xmm14
call fcn.1800293c0
xor r15d, r15d
bt r14d, 0xa
jae 0x180013d3a
vmovaps xmmword [rsp + 0x90], xmm11
vmovaps xmmword [rsp + 0x80], xmm12
lea rdx, [rsp + 0x40]
mov rcx, rdi
vmovaps xmmword [rsp + 0x70], xmm13
call fcn.18000aa00
vmovss xmm2, dword [rdi + 0x10]
vmovss xmm0, dword [rsp + 0x40]
vmovss xmm3, dword [rdi + 0x14]
vmovss xmm1, dword [rsp + 0x44]
vmaxss xmm12, xmm0, xmm2
vaddss xmm2, xmm2, dword [rdi + 0x18]
vmovss xmm0, dword [rsp + 0x48]
vmaxss xmm4, xmm1, xmm3
vmovss xmm1, dword [rsp + 0x4c]
vaddss xmm3, xmm3, dword [rdi + 0x1c]
vminss xmm13, xmm0, xmm2
vminss xmm11, xmm1, xmm3
vsubss xmm0, xmm13, xmm7
vmovss dword [rsp + 0x30], xmm0
vsubss xmm1, xmm11, xmm10
vmovss dword [rsp + 0x34], xmm1
vaddss xmm1, xmm4, xmm10
vaddss xmm0, xmm12, xmm7
vmovss dword [rsp + 0x3c], xmm1
vmovss dword [rsp + 0x38], xmm0
vmovd xmm0, esi
vmovd xmm2, r15d
vpcmpeqd xmm1, xmm0, xmm2
vblendvps xmm6, xmm14, xmm10, xmm1
vmovaps xmm1, xmm9
mov ecx, 0xd
call fcn.18000b7b0
mov rcx, qword [rdi + 0x2a8]
lea rdx, [rsp + 0x38]
mov r9d, eax
mov dword [rsp + 0x28], 3
lea r8, [rsp + 0x30]
vmovss dword [rsp + 0x20], xmm6
call fcn.1800293c0
vmovss xmm6, dword [rbx + 0x159c]
vcomiss xmm6, xmm10
jbe 0x180013d22
vmovss xmm0, dword [rdi + 0x1c]
vaddss xmm2, xmm0, dword [rdi + 0x14]
vcomiss xmm2, xmm11
jbe 0x180013d22
vunpcklps xmm0, xmm13, xmm11
vmovaps xmm1, xmm9
mov ecx, 5
vmovsd qword [rsp + 0x40], xmm0
vmovss dword [rsp + 0x30], xmm12
vmovss dword [rsp + 0x34], xmm11
call fcn.18000b7b0
mov rcx, qword [rdi + 0x2a8]
lea rdx, [rsp + 0x30]
mov r9d, eax
lea r8, [rsp + 0x40]
vmovss dword [rsp + 0x20], xmm6
call fcn.180029160
vmovaps xmm12, xmmword [rsp + 0x80]
vmovaps xmm11, xmmword [rsp + 0x90]
vmovaps xmm13, xmmword [rsp + 0x70]
cmp byte [rdi + 0x7c], r15b
je 0x180013d47
xor ecx, ecx
call fcn.180033470
cmp byte [rdi + 0x7d], r15b
je 0x180013d57
mov ecx, 1
call fcn.180033470
test r14b, 2
jne 0x180013f3e
test r13d, r13d
jle 0x180013f3e
mov r12, qword [rbp + 0x77]
lea rsi, [0x180060318]
vaddss xmm10, xmm7, xmm14
nop word [rax + rax]
vmovss xmm3, dword [rdi + 0x10]
vmovss xmm4, dword [rdi + 0x14]
vaddss xmm0, xmm3, dword [rdi + 0x18]
mov rbx, qword [rdi + 0x2a8]
mov r14d, r15d
vsubss xmm1, xmm0, xmm3
vmulss xmm2, xmm1, dword [rsi - 8]
vaddss xmm0, xmm4, dword [rdi + 0x1c]
vsubss xmm1, xmm0, xmm4
vaddss xmm6, xmm2, xmm3
vmulss xmm2, xmm1, dword [rsi - 4]
vaddss xmm9, xmm2, xmm4
and r14d, 1
je 0x180013dc9
vmovaps xmm0, xmm7
vmovaps xmm2, xmm8
jmp 0x180013dd2
vmovaps xmm0, xmm8
vmovaps xmm2, xmm7
vmulss xmm0, xmm0, dword [rsi]
sub rbx, 0xffffffffffffff80
vaddss xmm1, xmm0, xmm6
vmulss xmm0, xmm2, dword [rsi + 4]
vmovss dword [rsp + 0x30], xmm1
mov ecx, dword [rbx]
mov r8d, dword [rbx + 4]
vaddss xmm1, xmm0, xmm9
vmovss dword [rsp + 0x34], xmm1
cmp ecx, r8d
jne 0x180013e27
inc ecx
test r8d, r8d
je 0x180013e13
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180013e18
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.18001eb70
movsxd rdx, dword [rbx]
mov rcx, qword [rbx + 8]
mov rax, qword [rsp + 0x30]
mov qword [rcx + rdx*8], rax
inc dword [rbx]
mov rbx, qword [rdi + 0x2a8]
test r14d, r14d
je 0x180013e50
vmovaps xmm0, xmm8
vmovaps xmm2, xmm7
jmp 0x180013e59
vmovaps xmm0, xmm7
vmovaps xmm2, xmm8
vmulss xmm0, xmm0, dword [rsi]
vmulss xmm2, xmm2, dword [rsi + 4]
sub rbx, 0xffffffffffffff80
vaddss xmm1, xmm0, xmm6
vaddss xmm0, xmm2, xmm9
vmovss dword [rsp + 0x38], xmm1
mov ecx, dword [rbx]
mov r8d, dword [rbx + 4]
vmovss dword [rsp + 0x3c], xmm0
cmp ecx, r8d
jne 0x180013eae
inc ecx
test r8d, r8d
je 0x180013e9a
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180013e9f
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.18001eb70
movsxd rdx, dword [rbx]
mov rcx, qword [rbx + 8]
mov rax, qword [rsp + 0x38]
mov qword [rcx + rdx*8], rax
lea rdx, [rsp + 0x40]
inc dword [rbx]
vmulss xmm0, xmm10, dword [rsi]
vmulss xmm2, xmm10, dword [rsi + 4]
mov eax, dword [rsi + 0xc]
mov r9d, dword [rsi + 8]
mov rcx, qword [rdi + 0x2a8]
vaddss xmm1, xmm0, xmm6
vaddss xmm0, xmm2, xmm9
vmovaps xmm2, xmm14
vmovss dword [rsp + 0x44], xmm0
vmovss dword [rsp + 0x40], xmm1
mov dword [rsp + 0x20], eax
call fcn.180028a30
mov rbx, qword [rdi + 0x2a8]
mov r9d, dword [r12]
mov rcx, rbx
mov r8d, dword [rbx + 0x80]
mov rdx, qword [rbx + 0x88]
call fcn.1800283e0
inc r15d
mov dword [rbx + 0x80], 0
add rsi, 0x18
add r12, 4
cmp r15d, r13d
jl 0x180013d80
mov rcx, rdi
call fcn.180013550
vmovaps xmm10, xmmword [rsp + 0xa0]
vmovaps xmm9, xmmword [rsp + 0xb0]
mov rsi, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.180048aa0
lea r11, [rsp + 0xf0]
vmovaps xmm6, xmmword [r11 - 0x10]
vmovaps xmm7, xmmword [r11 - 0x20]
vmovaps xmm8, xmmword [r11 - 0x30]
vmovaps xmm14, xmmword [rsp + 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret