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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov rsi, rdx
mov rbx, rcx
mov rdi, qword [0x1800b2c00]
add rdi, rcx
mov r9, qword [0x1800b2cf0]
add r9, rcx
cmp byte [r9], 0
jne 0x180057d3c
mov word [r9 + 1], 1
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rsp + 0x30], rax
mov byte [r9 + 4], al
movzx eax, byte [rsp + 0x31]
mov byte [r9 + 5], al
movzx eax, byte [rsp + 0x32]
mov byte [r9 + 6], al
movzx eax, byte [rsp + 0x33]
mov byte [r9 + 7], al
mov byte [r9 + 8], 0
mov byte [r9], 1
mov dword [rsp + 0x40], r8d
mov eax, dword [r9 + 4]
mov dword [rsp + 0x30], eax
movzx eax, byte [r9 + 1]
test al, al
je 0x180057d74
xor ecx, ecx
mov edx, eax
nop word [rax + rax]
mov eax, dword [rsp + rcx + 0x30]
not eax
xor dword [rsp + rcx + 0x40], eax
lea rcx, [rcx + 4]
sub rdx, 1
jne 0x180057d60
movzx eax, byte [r9 + 2]
mov ecx, 4
sub rcx, rax
cmp rcx, 4
jae 0x180057da4
nop word [rax + rax]
movzx eax, byte [rsp + rcx + 0x30]
not al
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 4
jb 0x180057d90
movzx eax, byte [r9 + 8]
inc al
and eax, 3
mov ecx, eax
mov eax, dword [rsp + 0x40]
mov dword [r9 + rcx*4 + 0xc], eax
mov byte [r9 + 8], cl
mov dword [rdi + 0x38], r8d
mov r9, qword [0x1800b2c00]
add r9, rbx
mov r10, qword [r9 + 0x18]
movabs rdx, 0xcbf29ce484222325
movabs r11, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movsx rcx, byte [r10]
lea r10, [r10 + 1]
xor rdx, rcx
imul rdx, r11
test cl, cl
jne 0x180057df0
movabs rax, 0x2374c594f5e76f06
cmp rdx, rax
jne 0x180057e1d
lea eax, [r8 - 0x1d]
cmp eax, 7
jbe 0x180057e63
jmp 0x180057e8b
movabs rax, 0xf9bdf861cccd5fd1
cmp rdx, rax
jne 0x180057e37
lea eax, [r8 - 0x1a]
cmp eax, 6
jbe 0x180057e63
jmp 0x180057e8b
movabs rax, 0xb4d052affec8dc8e
cmp rdx, rax
jne 0x180057e4e
cmp r8d, 0x10
je 0x180057e63
jmp 0x180057e8b
movabs rax, 0x8c270feab0c1f42b
cmp rdx, rax
jne 0x180057e6d
cmp r8d, 0x56
jne 0x180057e8b
mov byte [r9 + 0x9c], 0
jmp 0x180057ece
movabs rcx, 0x2f2959b508f215d2
movabs rax, 0xecc3c7c77aebb7ea
cmp rdx, rcx
je 0x180057eae
cmp rdx, rax
je 0x180057eae
cmp byte [r9 + 0x9c], 0xff
je 0x180057ece
movabs rax, 0xeb5bc0df5355fba6
cmp rdx, rax
je 0x180057ece
mov byte [r9 + 0x9c], 0xff
jmp 0x180057ece
cmp r8d, 7
jne 0x180057f46
cmp rdx, rcx
je 0x180057f59
mov rax, qword [r9]
cmp rax, qword [r9 + 8]
je 0x180057ece
mov qword [r9 + 8], rax
mov ecx, dword [0x1800b1970]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x1800b4118], ecx
jle 0x180057f2a
lea rcx, [0x1800b4118]
call fcn.18005ce7c
cmp dword [0x1800b4118], 0xffffffff
jne 0x180057f2a
mov rax, qword [0x1800b0d88]
mov rdx, qword [rax]
add rdx, qword [0x1800b2cf8]
mov qword [0x1800b4110], rdx
lea rcx, [0x1800b4118]
call fcn.18005ce10
mov dl, 1
mov rcx, rdi
call qword [0x1800b4110]
nop
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp r8d, 6
jne 0x180057ec1
cmp rdx, rax
jne 0x180057ec1
mov rax, qword [r9]
cmp rax, qword [r9 + 8]
je 0x180057f66
mov qword [r9 + 8], rax
mov rdx, rsi
mov rcx, r9
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
jmp fcn.180057f80