Function at 0x14000d9fc
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 0x14000da27
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 0x14000da77
mov rdx, qword [rdx + rax*8]
jmp 0x14000da6f
cmp rcx, rdx
je 0x14000da77
mov rcx, qword [rcx + 8]
cmp r8d, dword [rcx + 0x10]
jne 0x14000da66
jmp 0x14000da79
xor ecx, ecx
test rcx, rcx
cmove rcx, qword [r11 + 0x40]
cmp rcx, qword [r11 + 0x40]
je 0x14000dc38
mov r8, qword [rcx + 0x38]
xor r9d, r9d
xor ebx, ebx
test r8, r8
je 0x14000dab8
mov eax, dword [r8 + 8]
jmp 0x14000daaa
lea edx, [rax + 1]
lock cmpxchg dword [r8 + 8], edx
je 0x14000dab0
test eax, eax
jne 0x14000da9f
jmp 0x14000dab8
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 0x14000dae4
mov eax, dword [r8 + 8]
jmp 0x14000dad6
lea edx, [rax + 1]
lock cmpxchg dword [r8 + 8], edx
je 0x14000dadc
test eax, eax
jne 0x14000dacb
jmp 0x14000dae4
mov rsi, qword [rcx + 0x20]
mov rdi, qword [rcx + 0x28]
or r12d, 0xffffffff
test r9, r9
je 0x14000dbbc
test rsi, rsi
je 0x14000dbbc
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 0x14000db41
cmp dword [rbp - 4], 0
je 0x14000db38
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
cmp byte [rsi + 0x75338], 0
jne 0x14000db5d
mov r9, qword [r14 + 8]
mov r8b, 1
mov rdx, rsi
mov r9, qword [r9 + 0x10]
call fcn.14000a87c
mov eax, dword [rbp - 8]
test eax, eax
je 0x14000db9d
mov eax, r12d
lock xadd dword [rbp - 8], eax
add eax, r12d
jne 0x14000db80
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rbp - 4], eax
jne 0x14000db8f
and dword [rbp - 4], 0
mov rcx, qword [rbp - 0x10]
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14000db5d
xor edx, edx
mov ecx, 0x131f4c5
call qword [sym.imp.Mso20Win32Client.dll_Ordinal_2055]
int3
cmp dword [rbp - 4], 0
je 0x14000dbbc
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rbp - 4], eax
je 0x14000dbbc
xor edx, edx
mov ecx, 0x131f4c3
call qword [sym.imp.Mso20Win32Client.dll_Ordinal_2055]
int3
test rdi, rdi
je 0x14000dbfa
mov eax, r12d
lock xadd dword [rdi + 8], eax
add eax, r12d
jne 0x14000dbfa
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 0x14000dbfa
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [0x14001a498]
test rbx, rbx
je 0x14000dc38
mov eax, r12d
lock xadd dword [rbx + 8], eax
add eax, r12d
jne 0x14000dc38
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 0x14000dc38
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