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

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x18], r8d
push rbp
push rsi
push rdi
push r12
push r14
mov rbp, rsp
sub rsp, 0x30
mov r14, r9
mov r11, rcx
movabs rdx, 0xcbf29ce484222325
xor r10d, r10d
movzx eax, byte [rbp + r10 + 0x40]
movabs rcx, 0x100000001b3
xor rdx, rax
inc r10
imul rdx, rcx
cmp r10, 4
jb 0x14000d5fb
mov rax, qword [r11 + 0x68]
and rax, rdx
mov rdx, qword [r11 + 0x50]
add rax, rax
mov rcx, qword [rdx + rax*8 + 8]
cmp rcx, qword [r11 + 0x40]
je 0x14000d64b
mov rdx, qword [rdx + rax*8]
jmp 0x14000d643
cmp rcx, rdx
je 0x14000d64b
mov rcx, qword [rcx + 8]
cmp r8d, dword [rcx + 0x10]
jne 0x14000d63a
jmp 0x14000d64d
xor ecx, ecx
test rcx, rcx
cmove rcx, qword [r11 + 0x40]
cmp rcx, qword [r11 + 0x40]
je 0x14000d80a
mov r8, qword [rcx + 0x38]
xor r9d, r9d
xor ebx, ebx
test r8, r8
je 0x14000d68c
mov eax, dword [r8 + 8]
jmp 0x14000d67e
lea edx, [rax + 1]
lock cmpxchg dword [r8 + 8], edx
je 0x14000d684
test eax, eax
jne 0x14000d673
jmp 0x14000d68c
mov r9, qword [rcx + 0x30]
mov rbx, qword [rcx + 0x38]
mov r8, qword [rcx + 0x28]
xor esi, esi
xor edi, edi
test r8, r8
je 0x14000d6b8
mov eax, dword [r8 + 8]
jmp 0x14000d6aa
lea edx, [rax + 1]
lock cmpxchg dword [r8 + 8], edx
je 0x14000d6b0
test eax, eax
jne 0x14000d69f
jmp 0x14000d6b8
mov rsi, qword [rcx + 0x20]
mov rdi, qword [rcx + 0x28]
or r12d, 0xffffffff
test r9, r9
je 0x14000d78e
test rsi, rsi
je 0x14000d78e
and dword [rbp - 8], 0
lea rcx, [r9 + 8]
and dword [rbp - 4], 0
mov qword [rbp - 0x10], rcx
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
lea eax, [r12 + 2]
lock xadd dword [rbp - 8], eax
inc eax
cmp eax, 1
jne 0x14000d715
cmp dword [rbp - 4], 0
je 0x14000d70c
xor edx, edx
mov ecx, 0x131f4c4
call qword [sym.imp.Mso20Win32Client.dll_Ordinal_2055]
int3
call qword [sym.imp.MSVCP140.dll__Thrd_id]
mov dword [rbp - 4], eax
mov r9, qword [r14 + 8]
mov r8b, 2
mov rdx, rsi
mov r9, qword [r9 + 0x10]
call fcn.14000a87c
mov byte [rsi + 0x75338], 0
mov eax, dword [rbp - 8]
test eax, eax
je 0x14000d76f
mov eax, r12d
lock xadd dword [rbp - 8], eax
add eax, r12d
jne 0x14000d752
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rbp - 4], eax
jne 0x14000d761
and dword [rbp - 4], 0
mov rcx, qword [rbp - 0x10]
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14000d72f
xor edx, edx
mov ecx, 0x131f4c5
call qword [sym.imp.Mso20Win32Client.dll_Ordinal_2055]
int3
cmp dword [rbp - 4], 0
je 0x14000d78e
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rbp - 4], eax
je 0x14000d78e
xor edx, edx
mov ecx, 0x131f4c3
call qword [sym.imp.Mso20Win32Client.dll_Ordinal_2055]
int3
test rdi, rdi
je 0x14000d7cc
mov eax, r12d
lock xadd dword [rdi + 8], eax
add eax, r12d
jne 0x14000d7cc
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax]
call qword [0x14001a498]
mov eax, r12d
lock xadd dword [rdi + 0xc], eax
add eax, r12d
jne 0x14000d7cc
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [0x14001a498]
test rbx, rbx
je 0x14000d80a
mov eax, r12d
lock xadd dword [rbx + 8], eax
add eax, r12d
jne 0x14000d80a
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax]
call qword [0x14001a498]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
add eax, r12d
jne 0x14000d80a
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [0x14001a498]
mov rbx, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret