Function at 0x18001622c
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
mov rbp, rsp
sub rsp, 0x80
movabs rax, 0x736266148392fcba
movabs rdx, 0xb32c4c6d4960c051
mov qword [rbp - 0x60], rax
movabs rcx, 0xdbca68485f8860d2
movabs rax, 0xf3c831c764a1c0cf
mov qword [rbp - 0x40], rdx
mov qword [rbp - 0x58], rax
xor ebx, ebx
movdqa xmm2, xmmword [rbp - 0x60]
movabs rax, 0x2e2f07eb294768aa
mov qword [rbp - 0x50], rax
mov r8d, ebx
movabs rax, 0x80dd293e7246d7ce
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x48], rax
movabs rax, 0x7307667983f3fcfd
mov qword [rbp - 0x30], rax
movabs rax, 0xf3ad31b464d2c08e
mov qword [rbp - 0x28], rax
movabs rax, 0x2e560787292568c7
xorps xmm2, xmmword [rbp - 0x30]
mov qword [rbp - 0x20], rax
movabs rax, 0x80b129527222d7e0
mov qword [rbp - 0x18], rax
movq rax, xmm2
movdqa xmm0, xmmword [rbp - 0x20]
xorps xmm0, xmmword [rbp - 0x50]
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], rcx
movdqa xmm1, xmmword [rbp - 0x10]
xorps xmm1, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x50], xmm0
movdqa xmmword [rbp - 0x60], xmm2
movdqa xmmword [rbp - 0x40], xmm1
test ax, ax
je 0x18001631e
inc r8
cmp word [rbp + r8*2 - 0x60], bx
jne 0x180016313
movabs r9, 0xcbf29ce484222325
mov r10, rbx
test r8, r8
je 0x180016360
movzx edx, word [rbp + r10*2 - 0x60]
lea eax, [rdx - 0x41]
cmp ax, 0x19
lea ecx, [rdx + 0x20]
cmova cx, dx
inc r10
movzx eax, cx
movabs rcx, 0x100000001b3
imul r9, rcx
xor r9, rax
cmp r10, r8
jb 0x180016330
mov qword [rbp - 0x58], rbx
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x60], r9
mov rax, qword gs:[0x30]
mov rsi, qword [rax + 0x60]
test rsi, rsi
je 0x1800163b3
mov rsi, qword [rsi + 0x18]
test rsi, rsi
je 0x1800163b3
add rsi, 0x10
mov rdi, qword [rsi]
jmp 0x1800163a8
test rdi, rdi
je 0x1800163a5
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004484
test al, al
jne 0x1800163af
mov rdi, qword [rdi]
cmp rdi, rsi
jne 0x180016390
jmp 0x1800163b3
mov rbx, qword [rbp - 0x58]
mov qword [0x180043000], rbx
call fcn.180016744
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
jmp 0x1800163dc
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rbp
mov rbp, rsp
sub rsp, 0x80
cmp dword [0x180042f98], 0
movabs rbx, 0x355ca76ba468711c
movabs rsi, 0x6d2a0b46a43b97eb
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x30], rsi
movabs rax, 0x6d2a6e32c55fe7be
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], rbx
movdqa xmm0, xmmword [rbp - 0x60]
xorps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x30], rax
movabs rax, 0x18446e0bca52f6a6
mov qword [rbp - 0x28], rbx
movdqa xmm0, xmmword [rbp - 0x30]
xorps xmm0, xmmword [rbp - 0x40]
mov qword [rbp - 0x40], rax
movabs rax, 0x355cca0ed01b084f
mov qword [rbp - 0x38], rax
movdqa xmmword [rbp - 0x30], xmm0
movdqa xmm0, xmmword [rbp - 0x40]
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rbx
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x40], xmm0
jne 0x1800164e7
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x60]
call fcn.180016e0c
test rax, rax
je 0x1800164df
mov r9, qword [0x180043108]
lea rdx, [rbp - 0x30]
xor r8d, r8d
mov rcx, rax
call r9
test rax, rax
je 0x1800164df
mov qword [0x180042f88], rax
mov rcx, qword [rax]
mov qword [0x180042f78], rcx
lea rcx, [0x1800157fc]
mov qword [0x180042f80], rcx
mov qword [rax], rcx
mov dword [0x180042f98], 1
jmp 0x1800164e7
and qword [0x180042f88], 0
cmp dword [0x180042ff8], 0
movabs rax, 0x6d2a0b0ff17cf9a4
mov qword [rbp - 0x40], rax
movabs rcx, 0xd8d9ced2d4080be
mov qword [rbp - 0x20], rsi
movabs rax, 0x17436727d148febd
mov qword [rbp - 0x60], rax
movabs rax, 0x5018cb0edc0d2579
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x58], rax
movabs rax, 0x236dbc61aab4a533
mov qword [rbp - 0x50], rax
movabs rax, 0x236dbc18deddd65d
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], rbx
movdqa xmm0, xmmword [rbp - 0x30]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x38], rbx
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x40], xmm0
movdqa xmm0, xmmword [rbp - 0x60]
mov qword [rbp - 0x48], rcx
movdqa xmm1, xmmword [rbp - 0x50]
mov qword [rbp - 0x10], rax
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rbx
xorps xmm0, xmmword [rbp - 0x20]
mov qword [rbp - 8], rcx
xorps xmm1, xmmword [rbp - 0x10]
movdqa xmmword [rbp - 0x50], xmm1
movdqa xmmword [rbp - 0x60], xmm0
jne 0x180016605
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x30]
call fcn.180016e0c
test rax, rax
je 0x1800165fd
mov r9, qword [0x180043108]
lea rdx, [rbp - 0x40]
xor r8d, r8d
mov rcx, rax
call r9
test rax, rax
je 0x1800165fd
mov qword [0x180042fe8], rax
mov rcx, qword [rax]
mov qword [0x180042fd8], rcx
lea rcx, [0x180015ea4]
mov qword [0x180042fe0], rcx
mov qword [rax], rcx
mov dword [0x180042ff8], 1
jmp 0x180016605
and qword [0x180042fe8], 0
cmp dword [0x180042f70], 0
movabs rax, 0x3637f28c152fba8
mov qword [rbp - 0x30], rax
movabs rax, 0x355ca76ba41c046c
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x28], rax
movabs rax, 0x144b6716c148f6a9
mov qword [rbp - 0x60], rax
movabs rax, 0x355ca76ba4680379
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], rbx
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x40], xmm0
movdqa xmm0, xmmword [rbp - 0x30]
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rbx
xorps xmm0, xmmword [rbp - 0x20]
mov qword [rbp - 0x58], rax
movdqa xmmword [rbp - 0x30], xmm0
movdqa xmm0, xmmword [rbp - 0x60]
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rbx
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x60], xmm0
jne 0x18001672e
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x40]
call fcn.180016e0c
test rax, rax
je 0x18001672e
mov r9, qword [0x180043108]
lea rdx, [rbp - 0x30]
mov r8d, 1
mov rcx, rax
call r9
test rax, rax
je 0x18001672e
mov rbx, qword [rax]
test rbx, rbx
je 0x18001672e
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x40]
call fcn.180016e0c
test rax, rax
je 0x18001672e
lea r8, [0x180015658]
cmp rbx, r8
je 0x18001672e
lea rdx, [rax + 0x1500]
jmp 0x180016705
mov rcx, qword [rax]
test rcx, rcx
je 0x180016702
cmp rcx, rbx
je 0x180016713
inc rax
mov qword [0x180042f68], rax
cmp rax, rdx
jbe 0x1800166f5
jmp 0x18001672e
mov qword [rax], r8
mov qword [0x180042f50], rcx
mov qword [0x180042f58], r8
mov dword [0x180042f70], 2
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret