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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x108
lea rbp, [rsp + 0x80]
vmovaps xmmword [rbp + 0x70], xmm15
vmovaps xmmword [rbp + 0x60], xmm14
vmovaps xmmword [rbp + 0x50], xmm13
vmovaps xmmword [rbp + 0x40], xmm12
vmovaps xmmword [rbp + 0x30], xmm11
vmovdqa xmmword [rbp + 0x20], xmm10
vmovaps xmmword [rbp + 0x10], xmm9
vmovaps xmmword [rbp], xmm8
vmovaps xmmword [rbp - 0x10], xmm7
vmovaps xmmword [rbp - 0x20], xmm6
mov rax, qword [0x140206880]
xor rax, rbp
mov qword [rbp - 0x28], rax
cmp r9d, 0x1000000
jae 0x1400540ee
mov rcx, qword [rbp - 0x28]
xor rcx, rbp
sub rsp, 0x20
call fcn.1400f4f10
add rsp, 0x20
vmovaps xmm6, xmmword [rbp - 0x20]
vmovaps xmm7, xmmword [rbp - 0x10]
vmovaps xmm8, xmmword [rbp]
vmovaps xmm9, xmmword [rbp + 0x10]
vmovaps xmm10, xmmword [rbp + 0x20]
vmovaps xmm11, xmmword [rbp + 0x30]
vmovaps xmm12, xmmword [rbp + 0x40]
vmovaps xmm13, xmmword [rbp + 0x50]
vmovaps xmm14, xmmword [rbp + 0x60]
vmovaps xmm15, xmmword [rbp + 0x70]
lea rsp, [rbp + 0x88]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov esi, r9d
mov rdi, r8
mov rbx, rdx
mov r14, rcx
vmovss xmm3, dword [rbp + 0x108]
mov edx, dword [rbp + 0x100]
vxorps xmm0, xmm0, xmm0
vucomiss xmm3, xmm0
setbe al
mov ecx, edx
and ecx, 0x1f0
cmp ecx, 0x100
sete cl
or cl, al
test edx, 0x200
mov byte [rbp - 0x49], cl
je 0x140054194
test cl, cl
jne 0x140054194
sub rsp, 0x30
mov dword [rsp + 0x20], edx
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.1400518f0
add rsp, 0x30
movsxd r8, dword [r14 + 0x78]
lea rax, [r8*8 + 0xf]
mov qword [rbp - 0x60], r8
shl r8, 3
and rax, 0xfffffffffffffff0
call fcn.1400f4eb0
sub rsp, rax
mov rcx, rsp
mov rdx, qword [r14 + 0x80]
sub rsp, 0x20
mov qword [rbp - 0x58], rcx
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov dword [r14 + 0x78], 0
jmp 0x1400541c3
test edx, 0x200
jne 0x1400541b7
sub rsp, 0x20
mov rcx, r14
mov edx, 0x36
mov r8d, 0x24
call fcn.14004fad0
add rsp, 0x20
xor eax, eax
mov qword [rbp - 0x58], rax
xor eax, eax
mov qword [rbp - 0x60], rax
vmovss xmm7, dword [rbp + 0xf0]
mov r12d, 8
xor r13d, r13d
vpcmpeqd xmm10, xmm10, xmm10
mov r10d, dword [rbp + 0x100]
movzx r11d, byte [rbp - 0x49]
jmp 0x140054205
inc r13
mov r12, qword [rbp - 0x68]
add r12, 0x10
cmp r13, 3
je 0x140054094
mov qword [rbp - 0x68], r12
xor r15d, r15d
jmp 0x14005432a
vmovss xmm5, dword [rax]
vmovss xmm4, dword [rax + 4]
vaddss xmm2, xmm5, xmm2
vaddss xmm3, xmm4, xmm3
vaddss xmm1, xmm5, xmm1
mov ecx, dword [rbp - 0x38]
mov eax, dword [rbp - 0x30]
mov edx, dword [r14 + 0x34]
mov r8, qword [r14 + 0x50]
mov word [r8], dx
lea r8d, [rdx + 1]
mov r9, qword [r14 + 0x50]
mov word [r9 + 2], r8w
lea r8d, [rdx + 2]
mov r9, qword [r14 + 0x50]
mov word [r9 + 4], r8w
mov r9, qword [r14 + 0x50]
mov word [r9 + 6], dx
mov r9, qword [r14 + 0x50]
mov word [r9 + 8], r8w
add edx, 3
mov r8, qword [r14 + 0x50]
mov word [r8 + 0xa], dx
mov rdx, qword [r14 + 0x48]
vmovss dword [rdx], xmm1
vmovss dword [rdx + 4], xmm3
mov rdx, qword [r14 + 0x48]
mov r8, qword [rbp - 0x30]
mov qword [rdx + 8], r8
mov rdx, qword [r14 + 0x48]
mov dword [rdx + 0x10], esi
mov rdx, qword [r14 + 0x48]
vmovss dword [rdx + 0x14], xmm2
vmovss dword [rdx + 0x18], xmm3
mov rdx, qword [r14 + 0x48]
mov dword [rdx + 0x1c], ecx
vextractps dword [rdx + 0x20], xmm13, 1
vaddss xmm0, xmm4, xmm0
mov rcx, qword [r14 + 0x48]
mov dword [rcx + 0x24], esi
mov rcx, qword [r14 + 0x48]
vmovss dword [rcx + 0x28], xmm2
vmovss dword [rcx + 0x2c], xmm0
mov rcx, qword [r14 + 0x48]
mov rdx, qword [rbp - 0x38]
mov qword [rcx + 0x30], rdx
mov rcx, qword [r14 + 0x48]
mov dword [rcx + 0x38], esi
mov rcx, qword [r14 + 0x48]
vmovss dword [rcx + 0x3c], xmm1
vmovss dword [rcx + 0x40], xmm0
mov rcx, qword [r14 + 0x48]
mov dword [rcx + 0x44], eax
vextractps dword [rcx + 0x48], xmm9, 1
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x4c], esi
add qword [r14 + 0x48], 0x50
add dword [r14 + 0x34], 4
add qword [r14 + 0x50], 0xc
inc r15
add r12, 0x30
cmp r15, 3
je 0x1400541f0
cmp r13d, 2
je 0x1400543a0
cmp r13d, 1
je 0x140054360
vxorps xmm2, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
test r13d, r13d
jne 0x140054368
vmovss xmm2, dword [rbx]
vsubss xmm1, xmm2, xmm7
cmp r15d, 2
jne 0x14005436e
jmp 0x1400543ae
vmovss xmm1, dword [rbx]
vmovss xmm2, dword [rdi]
cmp r15d, 2
je 0x1400543ae
cmp r15d, 1
je 0x140054390
vxorps xmm0, xmm0, xmm0
vxorps xmm3, xmm3, xmm3
test r15d, r15d
jne 0x1400543b7
vmovss xmm0, dword [rbx + 4]
vsubss xmm3, xmm0, xmm7
jmp 0x1400543b7
vmovss xmm3, dword [rbx + 4]
vmovss xmm0, dword [rdi + 4]
jmp 0x1400543b7
vmovss xmm1, dword [rdi]
vaddss xmm2, xmm1, xmm7
cmp r15d, 2
jne 0x14005436e
vmovss xmm3, dword [rdi + 4]
vaddss xmm0, xmm3, xmm7
mov rax, qword [r14 + 0x38]
mov rax, qword [rax + 0x218]
vmovsd xmm13, qword [rax + r12 - 8]
vmovsd xmm9, qword [rax + r12]
vmovlps qword [rbp - 0x30], xmm13
vmovlps qword [rbp - 0x38], xmm9
mov rax, qword [rbp + 0xf8]
test r10d, 0x200
je 0x140054220
test r11b, r11b
je 0x140054760
vmovsd xmm4, qword [rax]
vinsertps xmm6, xmm2, xmm0, 0x10
vaddps xmm8, xmm4, xmm6
vinsertps xmm15, xmm1, xmm3, 0x10
vaddps xmm12, xmm15, xmm4
vcmpltps xmm0, xmm12, xmm8
vshufps xmm0, xmm0, xmm0, 0x50
vtestpd xmm0, xmm10
jae 0x140054319
vmovsd xmm2, qword [rbx]
vmovss xmm1, dword [rdi]
vmovss xmm0, dword [rdi + 4]
vmovlhps xmm3, xmm8, xmm2
vmovlhps xmm4, xmm1, xmm12
vinsertps xmm4, xmm4, xmm0, 0x10
vcmpltps xmm3, xmm4, xmm3
vpslld xmm3, xmm3, 0x1f
vtestps xmm3, xmm3
je 0x140054319
vmaxps xmm7, xmm12, xmm2
vminss xmm11, xmm8, xmm1
vucomiss xmm7, xmm11
jae 0x1400547cd
vmovshdup xmm1, xmm7
vmovshdup xmm14, xmm8
vminss xmm10, xmm14, xmm0
vucomiss xmm1, xmm10
jae 0x1400547cd
sub rsp, 0x20
mov rcx, r14
mov edx, 0x18
mov r8d, 0xc
vmovaps xmmword [rbp - 0x80], xmm1
call fcn.14004fad0
add rsp, 0x20
mov rax, qword [r14 + 0x50]
mov rdx, qword [r14 + 0x48]
mov ecx, dword [r14 + 0x34]
vmovss dword [rdx], xmm12
vmovshdup xmm0, xmm12
vmovss dword [rdx + 4], xmm0
mov r8d, dword [rbp - 0x30]
mov dword [rdx + 8], r8d
vmovshdup xmm1, xmm13
vmovss dword [rdx + 0xc], xmm1
mov dword [rdx + 0x10], esi
vmovss dword [rdx + 0x14], xmm8
vmovss dword [rdx + 0x18], xmm0
mov r9d, dword [rbp - 0x38]
mov dword [rdx + 0x1c], r9d
vmovss dword [rdx + 0x20], xmm1
mov dword [rdx + 0x24], esi
vmovss dword [rdx + 0x28], xmm8
vmovss dword [rdx + 0x2c], xmm14
mov dword [rdx + 0x30], r9d
vmovshdup xmm1, xmm9
vmovss dword [rdx + 0x34], xmm1
mov dword [rdx + 0x38], esi
vmovss dword [rdx + 0x3c], xmm12
vmovss dword [rdx + 0x40], xmm14
mov dword [rdx + 0x44], r8d
vmovss dword [rdx + 0x48], xmm1
mov dword [rdx + 0x4c], esi
vsubps xmm1, xmm6, xmm15
vrcpps xmm2, xmm1
vmovd xmm3, r9d
vpblendd xmm4, xmm3, xmm9, 2
vmovd xmm3, r8d
vpblendd xmm3, xmm3, xmm13, 2
vsubps xmm4, xmm4, xmm3
vmulps xmm5, xmm4, xmm2
vfmsub213ps xmm1, xmm5, xmm4
vfnmadd213ps xmm1, xmm2, xmm5
vrcpps xmm2, xmm1
vmulps xmm4, xmm3, xmm2
vfmsub231ps xmm3, xmm1, xmm4
vfnmadd213ps xmm3, xmm2, xmm4
vsubps xmm4, xmm3, xmm12
vaddps xmm2, xmm4, xmm7
vmulps xmm2, xmm2, xmm1
vmovlhps xmm5, xmm7, xmm2
vmovups xmmword [rdx + 0x50], xmm5
mov dword [rdx + 0x60], esi
vmovss dword [rdx + 0x64], xmm11
vmovaps xmm13, xmmword [rbp - 0x80]
vmovss dword [rdx + 0x68], xmm13
vaddss xmm5, xmm11, xmm4
vextractps dword [rdx + 0x70], xmm2, 1
mov dword [rdx + 0x74], esi
vmovss dword [rdx + 0x78], xmm11
vmovss dword [rdx + 0x7c], xmm10
vmovshdup xmm4, xmm4
vaddss xmm6, xmm10, xmm4
vmovshdup xmm9, xmm1
vmulss xmm6, xmm9, xmm6
vmovss dword [rdx + 0x84], xmm6
mov dword [rdx + 0x88], esi
vmovss dword [rdx + 0x8c], xmm7
vmovss dword [rdx + 0x90], xmm10
vmovss dword [rdx + 0x94], xmm2
vmovss dword [rdx + 0x98], xmm6
mov dword [rdx + 0x9c], esi
vmovss dword [rdx + 0xa0], xmm7
vmovss dword [rdx + 0xa4], xmm0
vmovss dword [rdx + 0xa8], xmm2
mov dword [rdx + 0xb0], esi
vmovss dword [rdx + 0xb4], xmm11
vmovss dword [rdx + 0xb8], xmm0
vblendps xmm3, xmm3, xmm5, 1
vmulps xmm1, xmm3, xmm1
vmovss dword [rdx + 0x6c], xmm1
vmovss dword [rdx + 0x80], xmm1
vextractps dword [rdx + 0xac], xmm1, 1
vmovlps qword [rdx + 0xbc], xmm1
mov dword [rdx + 0xc4], esi
vmovss dword [rdx + 0xc8], xmm11
vmovss dword [rdx + 0xcc], xmm14
vaddss xmm3, xmm14, xmm4
vmulss xmm3, xmm9, xmm3
vmovss dword [rdx + 0xd0], xmm1
vmovss dword [rdx + 0xd4], xmm3
mov dword [rdx + 0xd8], esi
vmovss dword [rdx + 0xdc], xmm7
vmovss dword [rdx + 0xe0], xmm14
vmovss dword [rdx + 0xe4], xmm2
vmovss dword [rdx + 0xe8], xmm3
mov dword [rdx + 0xec], esi
add qword [r14 + 0x48], 0xf0
add dword [r14 + 0x34], 0xc
vucomiss xmm7, xmm12
vmovaps xmm1, xmm13
jbe 0x1400546ce
mov word [rax], cx
lea edx, [rcx + 8]
mov word [rax + 2], dx
lea edx, [rcx + 0xb]
mov word [rax + 4], dx
mov word [rax + 6], cx
mov word [rax + 8], dx
lea edx, [rcx + 3]
mov word [rax + 0xa], dx
add rax, 0xc
mov r10d, dword [rbp + 0x100]
movzx r11d, byte [rbp - 0x49]
vmovss xmm7, dword [rbp + 0xf0]
vucomiss xmm1, xmm0
ja 0x1400548d5
vucomiss xmm8, xmm11
ja 0x14005490c
vucomiss xmm14, xmm10
jbe 0x14005472a
lea edx, [rcx + 7]
mov word [rax], dx
lea r8d, [rcx + 6]
mov word [rax + 2], r8w
lea r8d, [rcx + 0xa]
mov word [rax + 4], r8w
mov word [rax + 6], dx
mov word [rax + 8], r8w
add ecx, 0xb
mov word [rax + 0xa], cx
add rax, 0xc
vpcmpeqd xmm10, xmm10, xmm10
mov rcx, rax
sub rcx, qword [r14 + 0x50]
shr rcx, 1
mov qword [r14 + 0x50], rax
mov eax, 0x18
sub eax, ecx
mov rcx, qword [r14 + 8]
movsxd rdx, dword [r14]
imul rdx, rdx, 0x38
sub dword [rdx + rcx - 0x18], eax
sub dword [r14 + 0x10], eax
jmp 0x140054319
vmovsd xmm4, qword [rax]
vinsertps xmm0, xmm2, xmm0, 0x10
vaddps xmm0, xmm4, xmm0
vmovlps qword [rbp - 0x40], xmm0
vinsertps xmm0, xmm1, xmm3, 0x10
vaddps xmm0, xmm4, xmm0
vmovlps qword [rbp - 0x48], xmm0
sub rsp, 0x40
mov dword [rsp + 0x38], esi
mov rax, qword [rbp - 0x60]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
mov rcx, r14
lea rdx, [rbp - 0x48]
lea r8, [rbp - 0x40]
lea r9, [rbp - 0x30]
call fcn.140054950
movzx r11d, byte [rbp - 0x49]
mov r10d, dword [rbp + 0x100]
add rsp, 0x40
jmp 0x140054319
sub rsp, 0x20
mov rcx, r14
mov edx, 6
mov r8d, 4
call fcn.14004fad0
movzx r11d, byte [rbp - 0x49]
mov r10d, dword [rbp + 0x100]
add rsp, 0x20
mov eax, dword [r14 + 0x34]
mov rcx, qword [r14 + 0x50]
mov word [rcx], ax
lea ecx, [rax + 1]
mov rdx, qword [r14 + 0x50]
mov word [rdx + 2], cx
lea ecx, [rax + 2]
mov rdx, qword [r14 + 0x50]
mov word [rdx + 4], cx
mov rdx, qword [r14 + 0x50]
mov word [rdx + 6], ax
mov rdx, qword [r14 + 0x50]
mov word [rdx + 8], cx
add eax, 3
mov rcx, qword [r14 + 0x50]
mov word [rcx + 0xa], ax
mov rax, qword [r14 + 0x48]
vmovlps qword [rax], xmm12
mov rax, qword [r14 + 0x48]
mov rcx, qword [rbp - 0x30]
mov qword [rax + 8], rcx
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x10], esi
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x14], xmm8
vextractps dword [rax + 0x18], xmm12, 1
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x1c], xmm9
vextractps dword [rax + 0x20], xmm13, 1
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x24], esi
mov rax, qword [r14 + 0x48]
vmovlps qword [rax + 0x28], xmm8
mov rax, qword [r14 + 0x48]
mov rcx, qword [rbp - 0x38]
mov qword [rax + 0x30], rcx
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x38], esi
mov rax, qword [r14 + 0x48]
vblendps xmm0, xmm12, xmm8, 2
vmovlps qword [rax + 0x3c], xmm0
mov rax, qword [r14 + 0x48]
vmovss dword [rax + 0x44], xmm13
vextractps dword [rax + 0x48], xmm9, 1
mov rax, qword [r14 + 0x48]
mov dword [rax + 0x4c], esi
add qword [r14 + 0x48], 0x50
add dword [r14 + 0x34], 4
add qword [r14 + 0x50], 0xc
vmovss xmm7, dword [rbp + 0xf0]
vpcmpeqd xmm10, xmm10, xmm10
jmp 0x140054319
lea edx, [rcx + 8]
mov word [rax], dx
lea r8d, [rcx + 9]
mov word [rax + 2], r8w
lea r8d, [rcx + 5]
mov word [rax + 4], r8w
mov word [rax + 6], dx
mov word [rax + 8], r8w
lea edx, [rcx + 4]
mov word [rax + 0xa], dx
add rax, 0xc
vucomiss xmm8, xmm11
jbe 0x1400546f7
lea edx, [rcx + 9]
mov word [rax], dx
lea r8d, [rcx + 1]
mov word [rax + 2], r8w
lea r8d, [rcx + 2]
mov word [rax + 4], r8w
mov word [rax + 6], dx
mov word [rax + 8], r8w
lea edx, [rcx + 0xa]
mov word [rax + 0xa], dx
add rax, 0xc
vucomiss xmm14, xmm10
ja 0x1400546fe
jmp 0x14005472a