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

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
sub rsp, 0x20
mov rax, qword [0x180169738]
mov rbx, rcx
xor esi, esi
mov edx, esi
mov r8d, dword [rax]
mov rax, qword [rcx + 0xa8]
mov rcx, qword [rcx + 0xb0]
sub rcx, rax
sar rcx, 4
test rcx, rcx
je 0x180049e82
cmp r8d, dword [rax]
jle 0x180049e67
cmp r8d, 0x16
jg 0x180049e5e
inc rdx
add rax, 0x10
cmp rdx, rcx
jb 0x180049e45
jmp 0x180049e82
mov byte [rbx + 0xe4], 0xc
jmp 0x180049e82
mov rax, qword [rbx + 0xa8]
mov rcx, rdx
add rcx, rcx
cmp r8d, dword [rax + rcx*8]
je 0x180049e7c
dec dl
mov byte [rbx + 0xe4], dl
call fcn.18003a900
mov rcx, rbx
call fcn.180049fc0
mov ecx, 2
call fcn.180052540
mov rax, qword [0x180169780]
mov r8, qword [rax + 0x4000]
cmp byte [r8 + 0xc3], sil
jne 0x180049edd
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], rsi
je 0x180049ed0
neg edx
sbb ecx, ecx
add ecx, 6
movss xmm1, dword [0x18013e68c]
call fcn.18008b430
cmp byte [rbx + 0xe5], sil
je 0x180049ef8
mov rcx, rbx
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
jmp 0x18004a7f0
mov qword [rsp + 0x38], rdi
mov rdi, rsi
mov qword [rsp + 0x40], r14
lea r14, [0x180161160]
mov qword [rsp + 0x30], rbp
cmp dword [rdi + r14 + 0x10], 0
je 0x180049f84
mov rcx, qword [0x180169780]
mov rbp, qword [rdi + r14 + 0x18]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rcx, qword [rcx + 0x4000]
cmp byte [rcx + 0xc3], 0
jne 0x180049f84
mov rdx, rbp
call fcn.180055a90
mov ecx, eax
xor r9d, r9d
mov r8, rbp
xor edx, edx
call fcn.180098cf0
test al, al
je 0x180049f84
cmp byte [rbx + 0xe3], 0
mov r8d, esi
mov edx, dword [rbx + 0xdc]
mov rcx, rbx
je 0x180049f7a
call fcn.18004b070
jmp 0x180049f7f
call fcn.18004aaa0
call fcn.180099ab0
inc rsi
add rdi, 0x28
cmp rdi, 0x4308
jb 0x180049f11
mov r14, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
push rbx
push rsi
push rdi
push r15
sub rsp, 0x48
mov eax, dword [0x180169450]
mov rdi, rcx
lea rbx, [rax*8]
mov esi, 0x10
mov rax, qword gs:[0x58]
mov rdx, qword [rax + rbx]
mov eax, dword [rsi + rdx]
cmp dword [0x18016bb90], eax
jle 0x18004a85b
lea rcx, [0x18016bb90]
call fcn.1800df7a8
cmp dword [0x18016bb90], 0xffffffff
jne 0x18004a85b
mov rax, qword [0x180169728]
lea rcx, [0x18016bb90]
add rax, 0x48
mov qword [0x18016bb78], rax
call fcn.1800df73c
mov rax, qword gs:[0x58]
mov rcx, qword [rax + rbx]
mov eax, dword [rsi + rcx]
cmp dword [0x18016bb80], eax
jle 0x18004a8a6
lea rcx, [0x18016bb80]
call fcn.1800df7a8
cmp dword [0x18016bb80], 0xffffffff
jne 0x18004a8a6
mov rax, qword [0x180169728]
lea rcx, [0x18016bb80]
add rax, 0x60
mov qword [0x18016bab8], rax
call fcn.1800df73c
mov rax, qword [0x18016bb78]
mov rsi, qword [rax]
mov r15, qword [rax + 8]
cmp rsi, r15
je 0x18004aa87
mov qword [rsp + 0x70], rbp
movabs rbp, 0xcbf29ce484222325
mov qword [rsp + 0x78], r12
lea r12, [0x180161160]
mov qword [rsp + 0x80], r13
movabs r13, 0x100000001b3
mov qword [rsp + 0x40], r14
lea rax, str.ChTc0
mov qword [rsp + 0x28], 9
mov rdx, rsi
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x20]
call fcn.180023de0
mov rdx, qword [0x180169780]
mov rbx, rax
mov rcx, qword [rdx + 0x4000]
mov byte [rcx + 0xc0], 1
mov rcx, qword [rdx + 0x4000]
cmp byte [rcx + 0xc3], 0
jne 0x18004aa63
mov rdx, rax
call fcn.180055a90
mov ecx, eax
xor r9d, r9d
mov r8, rbx
mov edx, 0x1a
call fcn.180098cf0
test al, al
je 0x18004aa63
cmp qword [rsi + 0x18], 0xf
mov rdx, rsi
mov r8, qword [rsi + 0x10]
jbe 0x18004a970
mov rdx, qword [rsi]
xor ecx, ecx
mov r9, rbp
test r8, r8
je 0x18004a993
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
xor r9, rax
imul r9, r13
cmp rcx, r8
jb 0x18004a980
mov rcx, qword [0x18016bab8]
lea rdx, [rsp + 0x30]
mov r8, rsi
call fcn.180023040
mov rbx, qword [rsp + 0x38]
test rbx, rbx
je 0x18004aa91
mov r14, qword [rbx + 0x38]
mov rbx, qword [rbx + 0x30]
cmp rbx, r14
je 0x18004aa63
nop word [rax + rax]
movsxd rax, dword [rbx + 0x20]
lea rcx, [rax + rax*4]
cmp dword [r12 + rcx*8 + 0x10], 0
je 0x18004aa4c
mov rbp, qword [r12 + rcx*8 + 0x18]
mov rcx, qword [0x180169780]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rcx, qword [rcx + 0x4000]
cmp byte [rcx + 0xc3], 0
jne 0x18004aa4c
mov rdx, rbp
call fcn.180055a90
mov ecx, eax
xor r9d, r9d
mov r8, rbp
xor edx, edx
call fcn.180098cf0
test al, al
je 0x18004aa4c
cmp byte [rdi + 0xe3], 0
mov rcx, rdi
mov r8d, dword [rbx + 0x20]
mov edx, dword [rdi + 0xdc]
je 0x18004aa42
call fcn.18004b070
jmp 0x18004aa47
call fcn.18004aaa0
call fcn.180099ab0
add rbx, 0x28
cmp rbx, r14
jne 0x18004a9d0
movabs rbp, 0xcbf29ce484222325
add rsi, 0x20
cmp rsi, r15
jne 0x18004a8ef
mov r13, qword [rsp + 0x80]
mov r12, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
add rsp, 0x48
pop r15
pop rdi
pop rsi
pop rbx
ret
lea rcx, str.invalid_unordered_map_K__T__key
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_]
int3
jmp 0x180049e10