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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov byte [rax + 0x10], dl
push rdi
push r13
push r14
sub rsp, 0x70
mov r13, rcx
xor ebp, ebp
mov dword [rax + 0x10], ebp
movzx eax, byte [0x1802296cb]
mov byte [0x1802296cc], al
movzx eax, byte [0x1802296ca]
mov byte [0x1802296c9], al
xor r8d, r8d
mov rdx, rcx
lea rcx, [rsp + 0x50]
call fcn.180127040
nop
lea rsi, str.default
mov r8, rsi
mov r14, qword [str.default]
cmp qword [0x1802232d0], 0xf
cmova r8, r14
mov ebx, 0x811c9dc5
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x180123910
xor edx, edx
test rcx, rcx
je 0x180123945
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, ebx
imul ebx, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x180123930
mov rdi, qword [0x1801efc28]
test dil, dil
jne 0x180123958
mov eax, 0x811c9dc5
jmp 0x180123973
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801efc29]
call fcn.1800dc830
cmp ebx, eax
jne 0x180123b56
cmp byte [0x18022ec31], 0
je 0x180123a14
lea rcx, [r13 + 0x38]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movdqa xmm1, xmmword [0x180201890]
movdqu xmmword [rsp + 0x40], xmm1
mov dword [rsp + 0x30], edi
movzx eax, word [0x1801efc2c]
mov word [rsp + 0x34], ax
movzx eax, byte [0x1801efc2e]
mov byte [rsp + 0x36], al
mov byte [rsp + 0x37], 0
mov ebp, 1
mov dword [rsp + 0x98], ebp
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x20]
call fcn.1800a6bd0
mov rcx, qword [rax]
mov eax, dword [r13 + 0x34]
mov r9d, eax
shr r9d, 0x18
mov r8d, eax
shr r8d, 0x10
mov edx, eax
shr edx, 8
cmp byte [rcx + 0x30], al
jne 0x180123a57
cmp byte [rcx + 0x31], dl
jne 0x180123a57
cmp byte [rcx + 0x32], r8b
jne 0x180123a57
cmp byte [rcx + 0x33], r9b
jne 0x180123a57
mov rdi, qword [0x1801efc28]
xor bl, bl
test bpl, 1
je 0x180123a70
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x180123a70
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180123a64
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180123a64
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movzx ebx, bpl
mov rdi, qword [0x1801efc28]
jmp 0x180123a16
call fcn.18017e28c
mov rdi, qword [0x1801efc28]
test bl, bl
je 0x180123ba2
mov rsi, qword [r13 + 0x40]
mov rbx, qword [rsi]
cmp rbx, rsi
je 0x180123ba2
nop dword [rax + rax]
lea r8, [rbx + 0x10]
lea r14, [r8 + 0x20]
cmp qword [r8 + 0x18], 0xf
jbe 0x180123aa2
mov r8, qword [r8]
mov ebp, 0x811c9dc5
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r8 + rax], 0
jne 0x180123ab0
xor edx, edx
test rax, rax
je 0x180123ae5
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, ebp
imul ebp, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x180123ad0
test dil, dil
jne 0x180123af1
mov eax, 0x811c9dc5
jmp 0x180123b0c
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801efc29]
call fcn.1800dc830
cmp ebp, eax
je 0x180123b3c
mov eax, dword [r13 + 0x34]
mov r8d, eax
shr r8d, 0x18
mov edx, eax
shr edx, 0x10
mov ecx, eax
shr ecx, 8
cmp byte [r14], al
jne 0x180123b3c
cmp byte [r14 + 1], cl
jne 0x180123b3c
cmp byte [r14 + 2], dl
jne 0x180123b3c
cmp byte [r14 + 3], r8b
je 0x180123b4a
mov rbx, qword [rbx]
cmp rbx, rsi
jne 0x180123a90
jmp 0x180123ba2
mov byte [0x1802296cb], 1
mov ebx, dword [r14]
jmp 0x180123bbb
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 0xf
cmova rdx, qword [rsp + 0x50]
cmp qword [0x1802232d0], 0xf
cmova rsi, r14
mov r8, qword [0x1802232c8]
cmp r8, qword [rsp + 0x60]
jne 0x180123b8d
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180123b9b
test byte [r13 + 0x28], 6
mov byte [0x1802296ca], 1
je 0x180123ba2
mov byte [0x1802296ca], 0
lea rcx, [r13 + 0x38]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x20]
call fcn.1800e0e90
mov rbx, qword [rax]
mov ebx, dword [rbx + 0x30]
lea rcx, [rsp + 0x50]
call fcn.18008ede0
mov eax, ebx
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop rdi
ret