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

Disassembly:
test edx, 0xff000000
je 0x140015982
mov r11, rsp
mov qword [r11 + 0x18], rsi
push rdi
sub rsp, 0x130
mov rax, qword [0x1400da040]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rax, qword [rcx + 0x30]
mov esi, edx
mov qword [r11 + 0x10], 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 xmmword [r11 - 0x58], xmm10
movaps xmm7, xmm9
addss xmm7, dword [rax + 0x14]
mov rax, qword [rcx + 0x3a8]
movaps xmmword [r11 - 0x68], xmm11
movaps xmmword [r11 - 0x78], xmm12
movss dword [r11 - 0xb8], xmm8
mov rbx, qword [rax + 0x2b8]
movss dword [r11 - 0xb4], xmm9
movaps xmmword [r11 - 0x88], xmm13
movss dword [rsp + 0x88], xmm6
cmp dword [rbx], 0
movss dword [rsp + 0x8c], xmm7
movaps xmmword [r11 - 0x98], xmm14
jne 0x14001563a
mov rcx, rbx
call fcn.1400725c0
movss xmm0, dword [0x1400cbd74]
movaps xmm4, xmm6
movaps xmm1, xmm8
addss xmm4, xmm0
movaps xmm3, xmm7
subss xmm1, xmm0
movaps xmm2, xmm9
addss xmm3, xmm0
subss xmm2, xmm0
xor r9d, r9d
mov rcx, rbx
unpcklps xmm4, xmm3
unpcklps xmm1, xmm2
movq r8, xmm4
movq rdx, xmm1
call fcn.140072860
xorps xmm14, xmm14
mov dword [rsp + 0x28], 0
mov r9d, esi
movss dword [rsp + 0x20], xmm14
lea r8, [rsp + 0x88]
mov rcx, rbx
lea rdx, [rsp + 0x80]
call fcn.140075810
mov rdx, qword [rbx + 8]
movsxd r8, dword [rbx]
imul rcx, r8, 0x38
lea r9d, [r8 - 1]
movsd xmm13, qword [rcx + rdx - 8]
movsd qword [rsp + 0x70], xmm13
movups xmm10, xmmword [rcx + rdx - 0x38]
movups xmm11, xmmword [rcx + rdx - 0x28]
movups xmm12, xmmword [rcx + rdx - 0x18]
mov dword [rbx], r9d
movups xmmword [rsp + 0x40], xmm10
movups xmmword [rsp + 0x50], xmm11
movups xmmword [rsp + 0x60], xmm12
test r9d, r9d
jne 0x140015701
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.14003d580
jmp 0x140015762
mov ecx, dword [rbx + 4]
cmp r9d, ecx
jne 0x140015733
test ecx, ecx
je 0x140015718
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14001571d
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
call fcn.14003d690
mov rdx, qword [rbx + 8]
movsxd rax, dword [rbx]
test rax, rax
jle 0x140015748
imul r8, rax, 0x38
lea rcx, [rdx + 0x38]
call sub.VCRUNTIME140.dll_memmove
mov rax, qword [rbx + 8]
movups xmmword [rax], xmm10
movups xmmword [rax + 0x10], xmm11
movups xmmword [rax + 0x20], xmm12
movsd qword [rax + 0x30], xmm13
inc dword [rbx]
mov eax, dword [rbx + 0x58]
movaps xmm13, xmmword [rsp + 0xb0]
sub eax, 1
movaps xmm12, xmmword [rsp + 0xc0]
movaps xmm11, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
mov dword [rbx + 0x58], eax
jne 0x14001579b
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x1400157a7
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.140072680
mov rcx, rbx
call fcn.1400725c0
mov rax, qword [rdi + 0x398]
test byte [rax + 0x3f9], 1
je 0x14001592f
mov rbx, qword [rdi + 0x3a8]
mov ecx, dword [rbx + 0x1a8]
sub ecx, 1
js 0x140015834
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 0x140015817
cmp byte [r8 + 0xd2], 0
je 0x140015825
dec ecx
sub rdx, 8
sub rax, 1
jns 0x140015800
jmp 0x140015834
movsxd rcx, ecx
mov rcx, qword [r9 + rcx*8]
call fcn.140015510
mov rbx, rax
mov rbx, qword [rbx + 0x2b8]
cmp dword [rbx], 0
jne 0x140015848
mov rcx, rbx
call fcn.1400725c0
movaps xmm0, xmm6
movaps xmm1, xmm8
unpcklps xmm0, xmm7
xor r9d, r9d
unpcklps xmm1, xmm9
movq r8, xmm0
movq rdx, xmm1
mov rcx, rbx
call fcn.140072860
mov rcx, qword [rdi + 0x3a8]
lea r8, [rsp + 0x80]
mov rax, qword [rdi + 0x398]
lea rdx, [rsp + 0x30]
mov r9d, esi
movss dword [rsp + 0x20], xmm14
movss xmm2, dword [rcx + 0x48]
movss xmm3, dword [rcx + 0x4c]
movss xmm0, dword [rax + 0x48]
movss xmm1, dword [rax + 0x4c]
movss dword [rsp + 0x80], xmm0
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x84], xmm1
addss xmm1, dword [rax + 0x54]
movss dword [rsp + 0x30], xmm2
addss xmm2, dword [rcx + 0x50]
movss dword [rsp + 0x34], xmm3
addss xmm3, dword [rcx + 0x54]
mov rcx, rbx
movss dword [rsp + 0x88], xmm0
movss dword [rsp + 0x8c], xmm1
movss dword [rsp + 0x38], xmm2
movss dword [rsp + 0x3c], xmm3
call fcn.14007bdd0
mov eax, dword [rbx + 0x58]
sub eax, 1
mov dword [rbx + 0x58], eax
jne 0x140015911
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x14001591d
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.140072680
movaps xmm9, xmmword [rsp + 0xf0]
movaps xmm8, xmmword [rsp + 0x100]
movaps xmm7, xmmword [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0x120]
mov rbx, qword [rsp + 0x148]
movaps xmm14, xmmword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1400b0080
mov rsi, qword [rsp + 0x150]
add rsp, 0x130
pop rdi
ret