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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xb0
mov rbx, r9
mov r14, r8
mov rsi, rcx
cmp byte [rcx + 0x60], 0
jne 0x140016888
mov rcx, qword [rbp + 0x2f]
mov ebx, 0x8007139f
mov r9d, ebx
lea r8, str.onecore_amcoreoctagon_broker_sourcelib_sessionmanager.cpp
mov edx, 0x73
call fcn.140005930
mov eax, ebx
jmp 0x140016b47
mov ecx, 0x1e0
call fcn.14003f8c0
mov qword [rbp - 0x69], rax
lea rcx, [rbp + 0x6f]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rbp + 0x67]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x5f]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0x57]
mov qword [rsp + 0x20], rcx
mov r9, rbx
mov r8, r14
lea rdx, [rbp + 0x3f]
mov rcx, rax
call fcn.140018488
mov rbx, rax
lea r15, [rax + 0x10]
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x41], rax
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x59], xmm0
test rax, rax
je 0x1400168ec
lock inc dword [rax + 8]
mov rax, qword [rbp - 0x49]
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
lea rax, [rbp - 0x59]
mov qword [rbp - 0x69], rax
mov ecx, 0x18
call fcn.14003f8c0
mov rdi, rax
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x51]
test rax, rax
je 0x14001691e
lock inc dword [rax + 8]
movaps xmm0, xmmword [rbp - 0x59]
movaps xmmword [rbp - 0x39], xmm0
lea rax, [0x1400444b8]
mov qword [rdi], rax
and qword [rdi + 8], 0
and qword [rdi + 0x10], 0
psrldq xmm0, 8
movq rcx, xmm0
test rcx, rcx
je 0x140016951
lock inc dword [rcx + 8]
mov rcx, qword [rbp - 0x31]
mov rax, qword [rbp - 0x39]
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rcx
lea rcx, [rbp - 0x39]
call fcn.14000e500
mov qword [rbp + 0x37], rdi
lea rcx, [rbp - 0x59]
call fcn.14000e500
lea rdi, [rsi + 0x40]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
nop dword [rax + rax]
mov qword [rbp - 0x61], rdi
test r15, r15
je 0x1400169d1
lea r8, [rbp + 0x37]
lea rdx, [rbp - 9]
mov rcx, rsi
call fcn.140017db8
mov rcx, qword [rax]
test rbx, rbx
je 0x1400169ab
lock inc dword [rbx + 8]
mov rax, qword [rcx + 0x18]
mov qword [rbp - 0x29], rax
mov rax, qword [rbp - 0x49]
mov qword [rcx + 0x18], rax
mov rax, qword [rcx + 0x20]
mov qword [rbp - 0x21], rax
mov qword [rcx + 0x20], rbx
lea rcx, [rbp - 0x29]
call fcn.14000e500
nop
test rdi, rdi
je 0x1400169e6
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
nop
mov r8, r14
mov rdx, qword [rbp + 0x37]
mov rcx, qword [rbp - 0x49]
call fcn.1400172a0
mov r14d, eax
test eax, eax
jns 0x140016afd
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
nop dword [rax + rax]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
movzx eax, byte [rbp + rcx + 0x37]
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
inc rcx
cmp rcx, 8
jb 0x140016a1c
mov rcx, qword [rsi + 0x30]
and rcx, rdx
mov r9, qword [rsi + 0x18]
mov rax, rcx
add rax, rax
mov rbx, qword [r9 + rax*8 + 8]
mov r8, qword [rsi + 8]
cmp rbx, r8
je 0x140016ae6
mov rax, rcx
add rax, rax
mov rdx, qword [r9 + rax*8]
mov rax, qword [rbp + 0x37]
jmp 0x140016a77
cmp rbx, rdx
je 0x140016a7f
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x140016a6e
jmp 0x140016a81
xor ebx, ebx
test rbx, rbx
je 0x140016ae6
mov rdx, rcx
shl rdx, 4
add rdx, r9
add rcx, rcx
cmp qword [r9 + rcx*8 + 8], rbx
jne 0x140016aaf
cmp qword [rdx], rbx
jne 0x140016aa4
mov qword [rdx], r8
jmp 0x140016aa8
mov r8, qword [rbx + 8]
mov qword [r9 + rcx*8 + 8], r8
jmp 0x140016aba
cmp qword [rdx], rbx
jne 0x140016aba
mov rax, qword [rbx]
mov qword [rdx], rax
mov rdx, qword [rbx]
dec qword [rsi + 0x10]
mov rax, qword [rbx + 8]
mov qword [rax], rdx
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
lea rcx, [rbx + 0x18]
call fcn.14000e500
mov edx, 0x28
mov rcx, rbx
call fcn.140007850
test rdi, rdi
je 0x140016b3b
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
nop
jmp 0x140016b3b
test rbx, rbx
je 0x140016b06
lock inc dword [rbx + 8]
mov rcx, qword [rbp + 0x7f]
mov rax, qword [rcx]
mov qword [rbp - 0x19], rax
mov rax, qword [rbp - 0x49]
mov qword [rcx], rax
mov rax, qword [rcx + 8]
mov qword [rbp - 0x11], rax
mov qword [rcx + 8], rbx
lea rcx, [rbp - 0x19]
call fcn.14000e500
mov rcx, qword [rbp + 0x77]
mov rax, qword [rbp + 0x37]
mov qword [rcx], rax
xor r14d, r14d
lea rcx, [rbp - 0x49]
call fcn.14000e500
mov eax, r14d
mov rbx, qword [rsp + 0xf0]
add rsp, 0xb0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret