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

Disassembly:
test edx, 0xff000000
je 0x140015972
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 0x14001562a
mov rcx, rbx
call fcn.1400725b0
movss xmm0, dword [0x1400cbda4]
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.140072850
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.140075800
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 0x1400156f1
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.14003d570
jmp 0x140015752
mov ecx, dword [rbx + 4]
cmp r9d, ecx
jne 0x140015723
test ecx, ecx
je 0x140015708
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14001570d
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
call fcn.14003d680
mov rdx, qword [rbx + 8]
movsxd rax, dword [rbx]
test rax, rax
jle 0x140015738
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 0x14001578b
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x140015797
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.140072670
mov rcx, rbx
call fcn.1400725b0
mov rax, qword [rdi + 0x398]
test byte [rax + 0x3f9], 1
je 0x14001591f
mov rbx, qword [rdi + 0x3a8]
mov ecx, dword [rbx + 0x1a8]
sub ecx, 1
js 0x140015824
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 0x140015807
cmp byte [r8 + 0xd2], 0
je 0x140015815
dec ecx
sub rdx, 8
sub rax, 1
jns 0x1400157f0
jmp 0x140015824
movsxd rcx, ecx
mov rcx, qword [r9 + rcx*8]
call fcn.140015500
mov rbx, rax
mov rbx, qword [rbx + 0x2b8]
cmp dword [rbx], 0
jne 0x140015838
mov rcx, rbx
call fcn.1400725b0
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.140072850
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.14007bdc0
mov eax, dword [rbx + 0x58]
sub eax, 1
mov dword [rbx + 0x58], eax
jne 0x140015901
mov rax, qword [rbx + 0x38]
add rax, 0x1c
jmp 0x14001590d
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.140072670
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.1400b0070
mov rsi, qword [rsp + 0x150]
add rsp, 0x130
pop rdi
ret