Function at 0x14003d530
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x50
mov r14, rdx
mov rdi, rcx
xor r15d, r15d
mov dword [rsp + 0x20], r15d
mov qword [rcx], r15
mov qword [rcx + 8], r15
mov dword [rsp + 0x20], 1
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 7
jbe 0x14003d570
mov rdx, qword [rdx]
movabs r9, 0xcbf29ce484222325
add r8, r8
mov rcx, r15
je 0x14003d5a3
movabs r10, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x14003d590
mov r8, r14
lea rdx, [rsp + 0x28]
call fcn.14003e1b0
mov rcx, qword [rax + 8]
mov rdx, qword [0x140093378]
test rcx, rcx
cmovne rdx, rcx
mov ebp, 0xffffffff
cmp rdx, qword [0x140093378]
je 0x14003d686
mov rbx, qword [rdx + 0x38]
xorps xmm0, xmm0
test rbx, rbx
je 0x14003d614
mov r8, qword [rdx + 0x30]
lock inc dword [rbx + 0xc]
movdqu xmmword [rsp + 0x28], xmm0
mov eax, dword [rbx + 8]
test eax, eax
je 0x14003d603
lea ecx, [rax + 1]
lock cmpxchg dword [rbx + 8], ecx
je 0x14003d60f
test eax, eax
jne 0x14003d5f5
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x28]
jmp 0x14003d629
mov rax, rbx
jmp 0x14003d629
xorps xmm1, xmm1
mov rbx, r15
psrldq xmm0, 8
movq rax, xmm0
movq r8, xmm1
mov qword [rdi], r8
mov rsi, qword [rdi + 8]
mov qword [rdi + 8], rax
test rsi, rsi
je 0x14003d662
mov eax, ebp
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x14003d662
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax]
mov eax, ebp
lock xadd dword [rsi + 0xc], eax
cmp eax, 1
jne 0x14003d662
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 8]
test rbx, rbx
je 0x14003d67c
mov eax, ebp
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003d67c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
cmp qword [rdi], 0
jne 0x14003d78b
mov ecx, 0x38
call fcn.140064fac
mov rbx, rax
mov qword [rsp + 0x88], rax
mov qword [rax + 8], r15
lea rax, vtable.VSTPluginLibrary.0
mov qword [rbx], rax
lea rcx, [rbx + 0x18]
mov rdx, r14
call fcn.140010bd0
nop
mov qword [rsp + 0x88], rbx
mov ecx, 0x18
call fcn.140064fac
mov qword [rsp + 0x88], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rcx, vtable.std::_Ref_count_class_VSTPluginLibrary_.0
mov qword [rax], rcx
mov qword [rax + 0x10], rbx
mov qword [rdi], rbx
mov rbx, qword [rdi + 8]
mov qword [rdi + 8], rax
test rbx, rbx
je 0x14003d72b
mov eax, ebp
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003d72b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, ebp
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003d72b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov r8, r14
lea rdx, [rsp + 0x38]
call fcn.14003db40
mov rdx, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov rax, qword [rdi + 8]
test rax, rax
je 0x14003d760
mov rcx, qword [rdi]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rax
lock inc dword [rax + 0xc]
jmp 0x14003d76a
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov qword [rdx + 0x30], rcx
mov rcx, qword [rdx + 0x38]
mov qword [rdx + 0x38], rax
test rcx, rcx
je 0x14003d78b
lock xadd dword [rcx + 0xc], ebp
cmp ebp, 1
jne 0x14003d78b
mov rax, qword [rcx]
call qword [rax + 8]
mov rax, rdi
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret