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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x90
mov rax, qword [0x1800ef040]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rsi, rcx
mov qword [rbp - 0x19], rcx
lea rax, str.Init_pe
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], 7
xor ebx, ebx
mov qword [rbp - 0x39], rbx
mov qword [rbp - 0x31], rbx
movaps xmm0, xmmword [rbp - 0x39]
movdqa xmmword [rbp - 0x39], xmm0
movaps xmm1, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm1
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 0x11]
call fcn.18001cae0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x1800413e8
mov rax, qword [rax]
mov rdx, rax
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18001d410
lea rdx, [0x18000e150]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp - 0x11]
call fcn.18000a7b0
mov rax, qword gs:[0x60]
test rax, rax
je 0x180041649
mov r12, qword [rax + 0x18]
add r12, 0x20
mov r15, qword [r12]
cmp r15, r12
je 0x180041647
nop dword [rax + rax]
lea r13, [r15 - 0x10]
test r13, r13
je 0x18004163b
movzx r8d, word [r13 + 0x58]
shr r8, 1
xorps xmm0, xmm0
movups xmmword [rbp + 0xf], xmm0
mov qword [rbp + 0x1f], rbx
mov qword [rbp + 0x27], rbx
mov rdx, qword [r13 + 0x60]
lea rcx, [rbp + 0xf]
call fcn.18000ea20
nop
lea rdx, [rbp + 0xf]
cmp qword [rbp + 0x27], 7
seta r8b
cmova rdx, qword [rbp + 0xf]
mov rax, qword [rbp + 0x1f]
lea r14, [rdx + rax*2]
lea rdi, [rbp + 0xf]
test r8b, r8b
cmovne rdi, qword [rbp + 0xf]
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
mov qword [rbp - 1], rbx
cmp rdi, r14
jne 0x1800414ba
mov eax, 0xf
mov qword [rbp + 7], rax
mov byte [rbp - 0x11], 0
jmp 0x1800415b7
mov rax, r14
sub rax, rdi
sar rax, 1
mov rsi, rbx
mov ebx, 0xf
mov qword [rbp + 7], rbx
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
ja 0x180041683
cmp rax, rbx
jbe 0x180041570
mov rbx, rax
or rbx, 0xf
cmp rbx, rcx
jbe 0x18004150a
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x180041531
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180041553
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18004167d
mov rcx, rax
call fcn.18008d360
mov rcx, rax
test rax, rax
je 0x180041676
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180041561
test rcx, rcx
je 0x18004155f
call fcn.18008d360
jmp 0x180041561
xor eax, eax
mov qword [rbp - 0x11], rax
mov qword [rbp + 7], rbx
nop dword [rax]
lea rcx, [rbp - 0x11]
cmp rbx, 0xf
cmova rcx, qword [rbp - 0x11]
movzx eax, byte [rdi]
mov byte [rsi + rcx], al
mov rsi, qword [rbp - 1]
inc rsi
mov qword [rbp - 1], rsi
add rdi, 2
cmp rdi, r14
je 0x18004159d
mov rbx, qword [rbp + 7]
jmp 0x180041570
lea rax, [rbp - 0x11]
cmp qword [rbp + 7], 0xf
cmova rax, qword [rbp - 0x11]
mov byte [rsi + rax], 0
mov rax, qword [rbp + 7]
mov rsi, qword [rbp - 0x19]
mov rbx, qword [r13 + 0x30]
lea r8, [rbp - 0x11]
cmp rax, 0xf
cmova r8, qword [rbp - 0x11]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], 0
jne 0x1800415d5
xor edx, edx
test rax, rax
je 0x180041608
xor ecx, ecx
nop dword [rax + rax]
movsx ecx, byte [rcx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc edx
mov ecx, edx
cmp rcx, rax
jb 0x1800415f0
mov eax, r9d
mov qword [rbp - 0x39], rax
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x29]
mov rcx, rsi
call fcn.180028370
mov rcx, qword [rax]
mov qword [rcx + 0x18], rbx
lea rcx, [rbp - 0x11]
call fcn.18000a7b0
nop
lea rcx, [rbp + 0xf]
call fcn.18000a740
xor ebx, ebx
mov r15, qword [r15]
cmp r15, r12
jne 0x180041440
mov al, 1
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.18008d340
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.180001b90
int3
call fcn.180001c30
int3