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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x180141040]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov edx, dword [0x180141ae8]
mov rsi, rcx
mov rax, qword gs:[0x58]
xor ebx, ebx
mov ecx, 4
movabs rdi, 0xcbf29ce484222325
movabs r12, 0xf451dd7512e20f00
movabs r13, 0x55025bae763fdf84
movabs r15, 0x100000001b3
mov r14, qword [rax + rdx*8]
add r14, rcx
mov ecx, dword [0x180142318]
cmp ecx, dword [r14]
jle 0x18006ef52
lea rcx, [0x180142318]
call fcn.1800d7590
mov ecx, dword [0x180142318]
cmp ecx, 0xffffffff
jne 0x18006ef52
mov qword [rbp - 0x69], r12
lea rdx, [rbp - 0x59]
mov rax, qword [rbp - 0x69]
mov rcx, rdi
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x69], r13
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x51], rax
movabs rax, 0xa11d51b1b5490fed
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x49], rax
movabs rax, 0x73efb4d5efc3bbdc
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x41], rax
movabs rax, 0x9a14b80673a05043
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 7], rax
movabs rax, 0xa6f65830f4bb6f0
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 0xf], rax
movabs rax, 0xc47e02d4d828489d
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 0x17], rax
movabs rax, 0x73efd1b1808ddeb2
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
vmovdqu xmm0, xmmword [rbp - 0x59]
vpxor xmm2, xmm0, xmmword [rbp + 7]
vmovdqu xmm0, xmmword [rbp - 0x49]
mov qword [rbp + 0x1f], rax
vpxor xmm1, xmm0, xmmword [rbp + 0x17]
vmovq rax, xmm2
vmovdqu xmmword [rbp - 0x49], xmm1
vmovdqu xmmword [rbp - 0x59], xmm2
test al, al
je 0x18006ef07
nop
inc rdx
cmp byte [rdx], bl
jne 0x18006ef00
lea rax, [rbp - 0x59]
mov r8, rbx
sub rdx, rax
je 0x18006ef35
nop dword [rax]
nop word [rax + rax]
movsx rax, byte [rbp + r8 - 0x59]
inc r8
xor rcx, rax
imul rcx, r15
cmp r8, rdx
jb 0x18006ef20
call fcn.18006e5c0
lea rcx, [0x180142318]
mov dword [0x1801422ec], eax
call fcn.1800d7524
mov ecx, dword [0x180142318]
mov eax, dword [0x1801422ec]
cmp qword [rax + rsi], rbx
je 0x18006f1fa
cmp ecx, dword [r14]
jle 0x18006f09c
lea rcx, [0x180142318]
call fcn.1800d7590
cmp dword [0x180142318], 0xffffffff
jne 0x18006f09c
mov qword [rbp - 0x69], r12
lea rdx, [rbp - 0x39]
mov rax, qword [rbp - 0x69]
mov rcx, rdi
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x69], r13
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x31], rax
movabs rax, 0xa11d51b1b5490fed
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x29], rax
movabs rax, 0x73efb4d5efc3bbdc
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x21], rax
movabs rax, 0x9a14b80673a05043
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 7], rax
movabs rax, 0xa6f65830f4bb6f0
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 0xf], rax
movabs rax, 0xc47e02d4d828489d
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 0x17], rax
movabs rax, 0x73efd1b1808ddeb2
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
vmovdqu xmm0, xmmword [rbp - 0x39]
vpxor xmm2, xmm0, xmmword [rbp + 7]
vmovdqu xmm0, xmmword [rbp - 0x29]
mov qword [rbp + 0x1f], rax
vpxor xmm1, xmm0, xmmword [rbp + 0x17]
vmovq rax, xmm2
vmovdqu xmmword [rbp - 0x29], xmm1
vmovdqu xmmword [rbp - 0x39], xmm2
test al, al
je 0x18006f057
nop
inc rdx
cmp byte [rdx], bl
jne 0x18006f050
lea rax, [rbp - 0x39]
mov r8, rbx
sub rdx, rax
je 0x18006f085
nop dword [rax]
nop word [rax + rax]
movsx rax, byte [rbp + r8 - 0x39]
inc r8
xor rcx, rax
imul rcx, r15
cmp r8, rdx
jb 0x18006f070
call fcn.18006e5c0
lea rcx, [0x180142318]
mov dword [0x1801422ec], eax
call fcn.1800d7524
mov eax, dword [0x1801422ec]
mov rsi, qword [rax + rsi]
mov eax, dword [r14]
cmp dword [0x180142450], eax
jle 0x18006f1ef
lea rcx, [0x180142450]
call fcn.1800d7590
cmp dword [0x180142450], 0xffffffff
jne 0x18006f1ef
movabs rax, 0xa574610a0dff0456
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x19], rax
movabs rax, 0xda418e7eaa2d1420
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 0x11], rax
movabs rax, 0x99e23c5e99d5c85a
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 9], rax
movabs rax, 0x4ded392188441987
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp - 1], rax
movabs rax, 0xc017326f609e4315
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 7], rax
movabs rax, 0xe46ceb1ac563714e
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 0xf], rax
movabs rax, 0xea807d3dfca39737
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
mov qword [rbp + 0x17], rax
movabs rax, 0x4ded5748ef2d6bc8
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x69]
vmovdqu xmm0, xmmword [rbp - 0x19]
vpxor xmm2, xmm0, xmmword [rbp + 7]
vmovdqu xmm0, xmmword [rbp - 9]
mov qword [rbp + 0x1f], rax
lea rax, [rbp - 0x19]
vpxor xmm1, xmm0, xmmword [rbp + 0x17]
vmovq rcx, xmm2
vmovdqu xmmword [rbp - 9], xmm1
vmovdqu xmmword [rbp - 0x19], xmm2
test cl, cl
je 0x18006f1b7
nop dword [rax]
inc rax
cmp byte [rax], bl
jne 0x18006f1b0
lea rcx, [rbp - 0x19]
sub rax, rcx
je 0x18006f1d5
movsx rdx, byte [rbp + rbx - 0x19]
inc rbx
xor rdi, rdx
imul rdi, r15
cmp rbx, rax
jb 0x18006f1c0
mov rcx, rdi
call fcn.18006e5c0
lea rcx, [0x180142450]
mov dword [0x180142440], eax
call fcn.1800d7524
mov eax, dword [0x180142440]
add rax, rsi
jmp 0x18006f201
lea rax, [0x180141d90]
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1800d7380
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret