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

Disassembly:
test edx, 0xff000000
je 0x14004fbf3
mov r11, rsp
mov qword [r11 + 0x10], rsi
push rdi
sub rsp, 0xe0
mov rax, qword [0x1400ef528]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rax, qword [rcx + 0x30]
mov esi, edx
mov qword [r11 + 8], rbx
mov rdi, rcx
movaps xmmword [r11 - 0x18], xmm6
movaps xmmword [r11 - 0x28], xmm7
movaps xmmword [r11 - 0x38], xmm8
movss xmm8, dword [rax + 8]
movaps xmmword [r11 - 0x48], xmm9
movaps xmm6, xmm8
movss xmm9, dword [rax + 0xc]
addss xmm6, dword [rax + 0x10]
movaps xmm7, xmm9
movss dword [rsp + 0x30], xmm8
addss xmm7, dword [rax + 0x14]
mov rax, qword [rcx + 0x3a8]
movss dword [rsp + 0x34], xmm9
movss dword [rsp + 0x38], xmm6
movaps xmmword [r11 - 0x58], xmm10
mov rbx, qword [rax + 0x2b8]
movss dword [rsp + 0x3c], xmm7
cmp dword [rbx], 0
jne 0x14004f8f6
mov rcx, rbx
call fcn.140074120
movss xmm0, dword [0x1400db8a0]
xor r9d, r9d
subss xmm8, xmm0
mov rcx, rbx
subss xmm9, xmm0
addss xmm6, xmm0
addss xmm7, xmm0
movaps xmm1, xmm8
unpcklps xmm1, xmm9
movaps xmm0, xmm6
movq rdx, xmm1
unpcklps xmm0, xmm7
movq r8, xmm0
call fcn.1400743d0
xorps xmm10, xmm10
mov dword [rsp + 0x28], 0
mov r9d, esi
movss dword [rsp + 0x20], xmm10
lea r8, [rsp + 0x38]
mov rcx, rbx
lea rdx, [rsp + 0x30]
call fcn.140076d10
mov rdx, qword [rbx + 8]
movsxd r9, dword [rbx]
imul rcx, r9, 0x38
lea r8d, [r9 - 1]
movsd xmm9, qword [rcx + rdx - 8]
movsd qword [rsp + 0x80], xmm9
movups xmm6, xmmword [rcx + rdx - 0x38]
movups xmm7, xmmword [rcx + rdx - 0x28]
movups xmm8, xmmword [rcx + rdx - 0x18]
mov dword [rbx], r8d
movups xmmword [rsp + 0x50], xmm6
movups xmmword [rsp + 0x60], xmm7
movups xmmword [rsp + 0x70], xmm8
test r8d, r8d
jne 0x14004f9b2
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14006c010
jmp 0x14004fa14
mov ecx, dword [rbx + 4]
cmp r8d, ecx
jne 0x14004f9e7
test ecx, ecx
je 0x14004f9c9
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14004f9ce
mov eax, 8
cmp eax, r9d
mov rcx, rbx
cmovg r9d, eax
mov edx, r9d
call fcn.14006c130
mov r8d, dword [rbx]
mov rdx, qword [rbx + 8]
test r8d, r8d
jle 0x14004fa00
movsxd rax, r8d
lea rcx, [rdx + 0x38]
imul r8, rax, 0x38
call sub.VCRUNTIME140.dll_memmove
mov rdx, qword [rbx + 8]
movups xmmword [rdx], xmm6
movups xmmword [rdx + 0x10], xmm7
movups xmmword [rdx + 0x20], xmm8
movsd qword [rdx + 0x30], xmm9
inc dword [rbx]
mov eax, dword [rbx + 0x58]
movaps xmm9, xmmword [rsp + 0xa0]
sub eax, 1
movaps xmm8, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm6, xmmword [rsp + 0xd0]
mov dword [rbx + 0x58], eax
jne 0x14004fa4b
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x14004fa57
dec eax
cdqe
shl rax, 4
add rax, qword [rbx + 0x60]
movups xmm0, xmmword [rax]
mov rcx, rbx
movups xmmword [rbx + 0x88], xmm0
call fcn.1400741e0
mov rcx, rbx
call fcn.140074120
mov rax, qword [rdi + 0x398]
test byte [rax + 0x3f9], 1
je 0x14004fbc2
mov rbx, qword [rdi + 0x3a8]
mov ecx, dword [rbx + 0x1a8]
sub ecx, 1
js 0x14004fae4
mov r9, qword [rbx + 0x1b0]
movsxd rax, ecx
lea rdx, [r9 + rax*8]
nop word [rax + rax]
mov r8, qword [rdx]
cmp byte [r8 + 0xcb], 0
je 0x14004fac7
cmp byte [r8 + 0xd2], 0
je 0x14004fad5
dec ecx
sub rdx, 8
sub rax, 1
jns 0x14004fab0
jmp 0x14004fae4
movsxd rcx, ecx
mov rcx, qword [r9 + rcx*8]
call fcn.14004f7f0
mov rbx, rax
mov rbx, qword [rbx + 0x2b8]
cmp dword [rbx], 0
jne 0x14004faf8
mov rcx, rbx
call fcn.140074120
mov r8, qword [rsp + 0x38]
xor r9d, r9d
mov rdx, qword [rsp + 0x30]
mov rcx, rbx
call fcn.1400743d0
mov rax, qword [rdi + 0x398]
lea r8, [rsp + 0x30]
mov r9d, esi
movss dword [rsp + 0x20], xmm10
lea rdx, [rsp + 0x40]
mov rcx, rbx
movss xmm0, dword [rax + 0x48]
movss xmm1, dword [rax + 0x4c]
movss dword [rsp + 0x30], xmm0
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x34], xmm1
addss xmm1, dword [rax + 0x54]
mov rax, qword [rdi + 0x3a8]
movss dword [rsp + 0x38], xmm0
movss xmm0, dword [rax + 0x48]
movss dword [rsp + 0x3c], xmm1
movss xmm1, dword [rax + 0x4c]
movss dword [rsp + 0x40], xmm0
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x44], xmm1
addss xmm1, dword [rax + 0x54]
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm1
call fcn.14007c370
mov eax, dword [rbx + 0x58]
sub eax, 1
mov dword [rbx + 0x58], eax
jne 0x14004fba4
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x14004fbb0
dec eax
cdqe
shl rax, 4
add rax, qword [rbx + 0x60]
movups xmm0, xmmword [rax]
mov rcx, rbx
movups xmmword [rbx + 0x88], xmm0
call fcn.1400741e0
mov rbx, qword [rsp + 0xf0]
movaps xmm10, xmmword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.1400ad2b0
mov rsi, qword [rsp + 0xf8]
add rsp, 0xe0
pop rdi
ret