Function at 0x1800507a0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
mov qword [r11 + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rcx, qword [0x1800afe80]
mov rax, qword [rcx + 0x18]
mov qword [r11 + 0x10], rax
mov rax, qword [rcx + 0x20]
mov qword [r11 + 0x18], rax
mov r14, qword [rcx + 0x28]
mov ecx, dword [0x1800b0e30]
mov rax, qword gs:[0x58]
mov edx, 4
mov rsi, qword [rax + rcx*8]
add rsi, rdx
movabs rdi, 0xcbf29ce484222325
movabs r12, 0x100000001b3
mov eax, dword [rsi]
cmp dword [0x1800b3640], eax
jle 0x18005086a
lea rcx, [0x1800b3640]
call fcn.18005cb04
cmp dword [0x1800b3640], 0xffffffff
jne 0x18005086a
mov r8, qword [rsp + 0x78]
test r8, r8
je 0x180050855
mov rax, qword [0x1800b20c0]
mov r8, qword [rax + r8 + 0x18]
mov rdx, rdi
nop dword [rax]
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, r12
test cl, cl
jne 0x180050840
jmp 0x180050857
xor edx, edx
mov qword [0x1800b3638], rdx
lea rcx, [0x1800b3640]
call fcn.18005caa4
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rax
xor r9d, r9d
lea r8, [rsp + 0x70]
xor edx, edx
lea rcx, [0x1800b21e8]
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
je 0x180050fbf
cmp dword [rsp + 0x70], 0
je 0x1800508cb
lea rcx, [rsp + 0x20]
call fcn.180050fd0
xor r8d, r8d
xor edx, edx
lea rcx, [0x1800b21e8]
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x180050fbf
xor ebx, ebx
mov r10, qword [rsp + 0x80]
cmp dword [r10 + 0x10], ebx
jbe 0x1800509d3
movabs rbp, 0xf984545cfa78101f
movabs r15, 0x2d0a42b1a4f18a79
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r10 + 8]
mov r11, qword [rax + rbx*8]
mov r9, qword [0x1800b20c0]
add r9, r11
mov rax, qword [r9 + 8]
cmp qword [r9], rax
je 0x1800509c7
mov r8, qword [r9 + 0x18]
mov rax, rdi
nop word [rax + rax]
movsx rdx, byte [r8]
lea r8, [r8 + 1]
xor rax, rdx
imul rax, r12
test dl, dl
jne 0x180050930
cmp rax, rbp
je 0x1800509c7
cmp rax, r15
je 0x1800509c7
mov rax, qword [r9]
mov ecx, dword [r9 + 0x38]
cmp dword [rax + 0x20], ecx
je 0x1800509c7
mov dword [rax + 0x20], ecx
mov rdi, qword [0x1800b20c0]
add rdi, r11
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x1800509a9
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x1800509a9
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rdi
call qword [0x1800b3690]
nop
mov r10, qword [rsp + 0x80]
movabs rdi, 0xcbf29ce484222325
inc ebx
cmp ebx, dword [r10 + 0x10]
jb 0x180050900
xor ebp, ebp
cmp dword [r14 + 0x10], ebp
jbe 0x180050fa7
movabs r15, 0xdb76082138fdee7f
movabs r13, 0xfca7b000ade2abcb
mov rax, qword [r14 + 8]
mov rdi, qword [rax + rbp*8]
mov rax, qword [rdi]
mov rdx, qword [rax + 0x758]
mov rcx, rdi
call rdx
nop
test al, al
je 0x180050b28
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x180050ab2
cmp dword [rax + 0x3c], 0xc8
jne 0x180050ab2
mov rax, qword [0x1800afe70]
mov ecx, dword [rax + 0x14]
lea ecx, [rcx*2 + 1]
cmp ecx, 0xffffffff
je 0x180050f9b
mov rbx, qword [0x1800b20c0]
add rbx, rdi
cmp dword [rbx + 0x38], ecx
je 0x180050f9b
mov dword [rbx + 0x38], ecx
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050aa1
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050aa1
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
jmp 0x180050f9b
mov rax, qword [0x1800afe70]
mov ecx, dword [rax + 0x14]
add ecx, ecx
mov rbx, qword [0x1800b20c0]
add rbx, rdi
cmp dword [rbx + 0x38], ecx
je 0x180050f9b
mov dword [rbx + 0x38], ecx
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050b17
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050b17
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
jmp 0x180050f9b
mov rax, qword [0x1800b20c0]
mov rdx, qword [rax + rdi + 0x18]
movabs rbx, 0xcbf29ce484222325
nop
movsx rcx, byte [rdx]
lea rdx, [rdx + 1]
xor rbx, rcx
imul rbx, r12
test cl, cl
jne 0x180050b40
mov eax, dword [rsi]
cmp dword [0x1800b3680], eax
jle 0x180050b96
lea rcx, [0x1800b3680]
call fcn.18005cb04
cmp dword [0x1800b3680], 0xffffffff
jne 0x180050b96
mov rax, qword [0x1800afe80]
mov rcx, qword [rax]
add rcx, qword [0x1800b2208]
mov qword [0x1800b3678], rcx
lea rcx, [0x1800b3680]
call fcn.18005caa4
mov rcx, rdi
call qword [0x1800b3678]
mov rdx, rax
test rax, rax
je 0x180050e0c
movabs rax, 0x37d1bfa7d195ebf9
cmp rbx, rax
je 0x180050cb1
movabs rax, 0x92fe97d6caa88c20
cmp rbx, rax
je 0x180050cb1
movabs rax, 0xa854d43ddb55ddcc
cmp rbx, rax
je 0x180050cb1
movabs rax, 0xb8f3ad4931029355
cmp rbx, rax
je 0x180050cb1
movabs rax, 0xaedcd71796ade290
cmp rbx, rax
je 0x180050cb1
cmp rbx, r15
je 0x180050cb1
movabs rax, 0xf17870527758213f
cmp rbx, rax
je 0x180050f9b
movabs rax, 0x8499db0ed7bb81cf
cmp rbx, rax
je 0x180050f9b
mov rcx, qword [0x1800b20c0]
mov eax, dword [rcx + rdx + 0x38]
cmp eax, 0xffffffff
je 0x180050f9b
lea rbx, [rcx + rdi]
cmp dword [rbx + 0x38], eax
je 0x180050f9b
mov dword [rbx + 0x38], eax
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050ca0
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050ca0
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
jmp 0x180050f9b
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x180050cc4
cmp rdx, rax
jne 0x180050f9b
cmp rbx, r15
jne 0x180050d8f
movabs rax, 0x222b948fbf568318
cmp qword [0x1800b3638], rax
jne 0x180050d20
mov rax, qword [0x1800b20c0]
mov r8d, dword [rax + rdx + 0x38]
cmp r8d, 0xffffffff
je 0x180050f9b
lea rcx, [rax + rdi]
cmp dword [rcx + 0x38], r8d
je 0x180050f9b
mov dword [rcx + 0x38], r8d
mov rax, qword [rcx]
mov qword [rcx + 8], rax
lea rdx, str.Yone
call fcn.180057d90
jmp 0x180050f9b
mov rbx, qword [0x1800b20c0]
add rbx, rdi
cmp dword [rbx + 0x38], 0
je 0x180050f9b
mov dword [rbx + 0x38], 0
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050d7e
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050d7e
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
jmp 0x180050f9b
mov rax, qword [0x1800afe70]
mov ecx, dword [rax + 0x1c]
cmp ecx, 0xffffffff
je 0x180050f9b
mov rbx, qword [0x1800b20c0]
add rbx, rdi
cmp dword [rbx + 0x38], ecx
je 0x180050f9b
mov dword [rbx + 0x38], ecx
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050dfb
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050dfb
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
jmp 0x180050f9b
mov rax, qword [0x1800afe70]
mov rdx, qword [rax + 0x48]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x180050e3c
cmp qword [rax + 0x20], rbx
jae 0x180050e30
mov rax, qword [rax + 0x10]
jmp 0x180050e36
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180050e24
cmp byte [rcx + 0x19], 0
jne 0x180050ec1
cmp rbx, qword [rcx + 0x20]
jb 0x180050ec1
cmp rcx, rdx
je 0x180050ec1
mov eax, dword [rcx + 0x28]
test eax, eax
je 0x180050ec1
lea ecx, [rax - 1]
mov rbx, qword [0x1800b20c0]
add rbx, rdi
cmp dword [rbx + 0x38], ecx
je 0x180050f9b
mov dword [rbx + 0x38], ecx
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050eb0
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050eb0
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
jmp 0x180050f9b
movabs rax, 0x1ecf7680ae6d72bd
cmp rbx, rax
jne 0x180050ede
cmp qword [0x1800b3638], r13
je 0x180050f2b
jmp 0x180050f9b
movabs rax, 0xfcb981acde90c192
cmp rbx, rax
jne 0x180050f05
movabs rax, 0x6972baf895e90386
cmp qword [0x1800b3638], rax
je 0x180050f2b
jmp 0x180050f9b
movabs rax, 0xfc61c19e80fc9d68
cmp rbx, rax
jne 0x180050f9b
movabs rax, 0xf01bf70c1ff22b66
cmp qword [0x1800b3638], rax
jne 0x180050f9b
mov rdx, qword [0x1800b20c0]
mov rax, qword [rsp + 0x78]
mov ecx, dword [rdx + rax + 0x38]
cmp ecx, 0xffffffff
je 0x180050f9b
lea rbx, [rdx + rdi]
cmp dword [rbx + 0x38], ecx
je 0x180050f9b
mov dword [rbx + 0x38], ecx
mov eax, dword [rsi]
cmp dword [0x1800b3698], eax
jle 0x180050f8f
lea rcx, [0x1800b3698]
call fcn.18005cb04
cmp dword [0x1800b3698], 0xffffffff
jne 0x180050f8f
mov rax, qword [0x1800afe80]
mov rdx, qword [rax]
add rdx, qword [0x1800b21f8]
mov qword [0x1800b3690], rdx
lea rcx, [0x1800b3698]
call fcn.18005caa4
mov dl, 1
mov rcx, rbx
call qword [0x1800b3690]
nop
inc ebp
cmp ebp, dword [r14 + 0x10]
jb 0x1800509f3
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18006df90
int3