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

Disassembly:
push rbx
sub rsp, 0x70
mov rax, qword [0x180112b80]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rbx, rdx
mov rcx, rdx
call fcn.1800441e0
dec eax
cmp eax, 9
ja case.default.0x18008326a
cdqe
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x83538]
add rcx, rdx
jmp rcx
mov r9d, 0x11f
lea r8, str.C:_repo_vcpkg_buildtreesprotobuf_src_v3.21.12_fdb7676342.clean_srcgoogle_protobuf_map_field.h
mov edx, 3
lea rcx, [rsp + 0x30]
call fcn.18001db70
nop
lea rdx, str.Unsupported
mov rcx, rax
call fcn.18001dea0
mov rdx, rax
lea rcx, [rsp + 0x28]
call fcn.18001dc80
nop
lea rcx, [rsp + 0x30]
call fcn.18001dc20
mov r9d, 0x137
lea r8, str.C:_repo_vcpkg_buildtreesprotobuf_src_v3.21.12_fdb7676342.clean_srcgoogle_protobuf_map_field.h
mov edx, 3
lea rcx, [rsp + 0x30]
call fcn.18001db70
nop
lea rdx, str.Cant_get_here.
mov rcx, rax
call fcn.18001dea0
mov rdx, rax
lea rcx, [rsp + 0x28]
call fcn.18001dc80
nop
lea rcx, [rsp + 0x30]
call fcn.18001dc20
xor eax, eax
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1800b6330
add rsp, 0x70
pop rbx
ret
mov rcx, rbx
call fcn.18003e240
mov r10, rax
mov r9, rax
cmp qword [rax + 0x18], 0x10
jb 0x180083321
mov r9, qword [rax]
movabs rax, 0xcbf29ce484222325
mov r10, qword [r10 + 0x10]
xor edx, edx
test r10, r10
je 0x1800832f6
movabs r8, 0x100000001b3
movzx ecx, byte [rdx + r9]
xor rax, rcx
imul rax, r8
inc rdx
cmp rdx, r10
jb 0x180083340
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1800b6330
add rsp, 0x70
pop rbx
ret
mov rcx, rbx
call fcn.18003ded0
mov qword [rsp + 0x20], rax
movzx edx, al
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
movzx eax, byte [rsp + 0x21]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x22]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x23]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x24]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x25]
xor rax, rdx
imul rax, r8
movzx ecx, byte [rsp + 0x26]
xor rax, rcx
imul rax, r8
movzx ecx, byte [rsp + 0x27]
xor rax, rcx
imul rax, r8
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1800b6330
add rsp, 0x70
pop rbx
ret
mov rcx, rbx
call fcn.18003dc80
mov rcx, rbx
call fcn.18003dc80
mov dword [rsp + 0x20], eax
movzx edx, al
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
movzx eax, byte [rsp + 0x21]
xor rax, rdx
imul rax, r8
movzx ecx, byte [rsp + 0x22]
xor rax, rcx
imul rax, r8
movzx ecx, byte [rsp + 0x23]
xor rax, rcx
imul rax, r8
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1800b6330
add rsp, 0x70
pop rbx
ret
mov rcx, rbx
call fcn.18003e6d0
mov rcx, rbx
call fcn.18003e6d0
mov qword [rsp + 0x20], rax
movzx edx, al
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
movzx eax, byte [rsp + 0x21]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x22]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x23]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x24]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rsp + 0x25]
xor rax, rdx
imul rax, r8
movzx ecx, byte [rsp + 0x26]
xor rax, rcx
imul rax, r8
movzx ecx, byte [rsp + 0x27]
xor rax, rcx
imul rax, r8
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1800b6330
add rsp, 0x70
pop rbx
ret
mov rcx, rbx
call fcn.18003e480
mov rcx, rbx
call fcn.18003e480
jmp 0x180083409
mov rcx, rbx
call fcn.18003d690
movzx ecx, al
movabs rax, 0xcbf29ce484222325
movabs r8, 0x100000001b3
jmp 0x180083448