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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x180073028]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rcx, qword [0x1800c9a30]
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x38], rax
mov rbp, qword [rcx + 0x28]
mov ecx, dword [0x1800ca7b4]
mov rax, qword gs:[0x58]
mov edx, 4
mov r14, qword [rax + rcx*8]
add r14, rdx
movabs r13, 0xcbf29ce484222325
movabs r12, 0x100000001b3
mov eax, dword [r14]
cmp dword [0x1800cbcf8], eax
jle 0x1800517da
lea rcx, [0x1800cbcf8]
call fcn.18005aef0
cmp dword [0x1800cbcf8], 0xffffffff
jne 0x1800517da
mov r8, qword [rsp + 0x30]
test r8, r8
je 0x1800517c5
mov rax, qword [0x1800ca7d8]
mov r8, qword [rax + r8 + 0x18]
mov rdx, r13
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, r12
test cl, cl
jne 0x1800517b0
jmp 0x1800517c7
xor edx, edx
mov qword [0x1800cbcf0], rdx
lea rcx, [0x1800cbcf8]
call fcn.18005ae90
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
xor r9d, r9d
lea r8, [rsp + 0x40]
xor edx, edx
lea rcx, [0x1800ca8b8]
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
jne 0x180051810
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
cmp dword [rsp + 0x40], 0
je 0x18005183b
lea rcx, [rsp + 0x20]
call fcn.180051cc0
xor r8d, r8d
xor edx, edx
lea rcx, [0x1800ca8b8]
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x180051cb7
xor ebx, ebx
mov r10, qword [rsp + 0x38]
cmp dword [r10 + 0x10], ebx
jbe 0x180051923
movabs rsi, 0xf984545cfa78101f
movabs r15, 0x2d0a42b1a4f18a79
mov rax, qword [r10 + 8]
mov rdi, qword [rax + rbx*8]
mov r9, qword [0x1800ca7d8]
add r9, rdi
mov r11, qword [r9]
cmp r11, qword [r9 + 8]
je 0x180051917
mov r8, qword [r9 + 0x18]
mov rax, r13
nop word [rax + rax]
movsx rdx, byte [r8]
lea r8, [r8 + 1]
xor rax, rdx
imul rax, r12
test dl, dl
jne 0x180051890
cmp rax, rsi
je 0x180051917
cmp rax, r15
je 0x180051917
mov eax, dword [r9 + 0x38]
cmp dword [r11 + 0x20], eax
je 0x180051917
mov dword [r11 + 0x20], eax
add rdi, qword [0x1800ca7d8]
mov eax, dword [r14]
cmp dword [0x1800cbd68], eax
jle 0x180051906
lea rcx, [0x1800cbd68]
call fcn.18005aef0
cmp dword [0x1800cbd68], 0xffffffff
jne 0x180051906
mov rax, qword [0x1800c9a30]
mov rdx, qword [rax]
add rdx, qword [0x1800ca8c8]
mov qword [0x1800cbd60], rdx
lea rcx, [0x1800cbd68]
call fcn.18005ae90
mov dl, 1
mov rcx, rdi
call qword [0x1800cbd60]
nop
mov r10, qword [rsp + 0x38]
inc ebx
cmp ebx, dword [r10 + 0x10]
jb 0x180051860
xor esi, esi
cmp dword [rbp + 0x10], esi
jbe 0x180051c8c
movabs r15, 0xdb76082138fdee7f
movabs r13, 0xfca7b000ade2abcb
mov rax, qword [rbp + 8]
mov rdi, qword [rax + rsi*8]
mov rax, qword [rdi]
mov rdx, qword [rax + 0x768]
mov rcx, rdi
call rdx
nop
test al, al
je 0x1800519c1
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x1800519a9
cmp dword [rax + 0x3c], 0xc8
jne 0x1800519a9
mov rax, qword [0x1800c9a20]
mov ecx, dword [rax + 0x14]
lea ecx, [rcx*2 + 1]
cmp ecx, 0xffffffff
je 0x180051c81
mov rdx, qword [0x1800ca7d8]
add rdx, rdi
cmp dword [rdx + 0x38], ecx
je 0x180051c81
mov dword [rdx + 0x38], ecx
mov rcx, rdx
jmp 0x180051c7c
mov rax, qword [0x1800c9a20]
mov edx, dword [rax + 0x14]
add edx, edx
mov rcx, qword [0x1800ca7d8]
jmp 0x180051c71
mov rax, qword [0x1800ca7d8]
mov rdx, qword [rax + rdi + 0x18]
movabs rbx, 0xcbf29ce484222325
nop word [rax + rax]
movsx rcx, byte [rdx]
lea rdx, [rdx + 1]
xor rbx, rcx
imul rbx, r12
test cl, cl
jne 0x1800519e0
mov eax, dword [r14]
cmp dword [0x1800cbd50], eax
jle 0x180051a37
lea rcx, [0x1800cbd50]
call fcn.18005aef0
cmp dword [0x1800cbd50], 0xffffffff
jne 0x180051a37
mov rax, qword [0x1800c9a30]
mov rcx, qword [rax]
add rcx, qword [0x1800ca8d8]
mov qword [0x1800cbd48], rcx
lea rcx, [0x1800cbd50]
call fcn.18005ae90
mov rcx, rdi
call qword [0x1800cbd48]
mov rdx, rax
test rax, rax
je 0x180051ba2
movabs rax, 0x37d1bfa7d195ebf9
cmp rbx, rax
je 0x180051af2
movabs rax, 0x92fe97d6caa88c20
cmp rbx, rax
je 0x180051af2
movabs rax, 0xa854d43ddb55ddcc
cmp rbx, rax
je 0x180051af2
movabs rax, 0xb8f3ad4931029355
cmp rbx, rax
je 0x180051af2
movabs rax, 0xaedcd71796ade290
cmp rbx, rax
je 0x180051af2
cmp rbx, r15
je 0x180051af2
movabs rax, 0xf17870527758213f
cmp rbx, rax
je 0x180051c81
movabs rax, 0x8499db0ed7bb81cf
cmp rbx, rax
je 0x180051c81
mov rcx, qword [0x1800ca7d8]
mov eax, dword [rcx + rdx + 0x38]
cmp eax, 0xffffffff
je 0x180051c81
add rcx, rdi
cmp dword [rcx + 0x38], eax
je 0x180051c81
mov dword [rcx + 0x38], eax
jmp 0x180051c7c
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x180051b05
cmp rdx, rax
jne 0x180051c81
cmp rbx, r15
jne 0x180051b83
movabs rax, 0x222b948fbf568318
cmp qword [0x1800cbcf0], rax
jne 0x180051b63
mov rax, qword [0x1800ca7d8]
mov r8d, dword [rax + rdx + 0x38]
cmp r8d, 0xffffffff
je 0x180051c81
lea rcx, [rax + rdi]
cmp dword [rcx + 0x38], r8d
je 0x180051c81
mov dword [rcx + 0x38], r8d
mov rax, qword [rcx]
cmp rax, qword [rcx + 8]
je 0x180051b52
mov qword [rcx + 8], rax
lea rdx, str.Yone
call fcn.180057630
jmp 0x180051c81
mov rcx, qword [0x1800ca7d8]
add rcx, rdi
cmp dword [rcx + 0x38], 0
je 0x180051c81
mov dword [rcx + 0x38], 0
jmp 0x180051c7c
mov rax, qword [0x1800c9a20]
mov edx, dword [rax + 0x1c]
cmp edx, 0xffffffff
je 0x180051c81
mov rcx, qword [0x1800ca7d8]
jmp 0x180051c71
mov rax, qword [0x1800c9a20]
mov rdx, qword [rax + 0x48]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x180051bd8
nop word [rax + rax]
cmp qword [rax + 0x20], rbx
jae 0x180051bcc
mov rax, qword [rax + 0x10]
jmp 0x180051bd2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180051bc0
cmp byte [rcx + 0x19], 0
jne 0x180051bfc
cmp rbx, qword [rcx + 0x20]
jb 0x180051bfc
cmp rcx, rdx
je 0x180051bfc
mov eax, dword [rcx + 0x28]
test eax, eax
je 0x180051bfc
lea edx, [rax - 1]
mov rcx, qword [0x1800ca7d8]
jmp 0x180051c71
movabs rax, 0x1ecf7680ae6d72bd
cmp rbx, rax
jne 0x180051c16
cmp qword [0x1800cbcf0], r13
je 0x180051c5c
jmp 0x180051c81
movabs rax, 0xfcb981acde90c192
cmp rbx, rax
jne 0x180051c3a
movabs rax, 0x6972baf895e90386
cmp qword [0x1800cbcf0], rax
je 0x180051c5c
jmp 0x180051c81
movabs rax, 0xfc61c19e80fc9d68
cmp rbx, rax
jne 0x180051c81
movabs rax, 0xf01bf70c1ff22b66
cmp qword [0x1800cbcf0], rax
jne 0x180051c81
mov rcx, qword [0x1800ca7d8]
mov rax, qword [rsp + 0x30]
mov edx, dword [rcx + rax + 0x38]
cmp edx, 0xffffffff
je 0x180051c81
add rcx, rdi
cmp dword [rcx + 0x38], edx
je 0x180051c81
mov dword [rcx + 0x38], edx
call fcn.180057720
inc esi
cmp esi, dword [rbp + 0x10]
jb 0x180051942
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.18005a840
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.18005a820
int3