Function at 0x180124960
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 r14
push r15
sub rsp, 0x70
xor r15d, r15d
mov dword [rax + 0x10], r15d
movzx eax, byte [0x1802286f2]
mov byte [0x1802286db], al
movzx eax, byte [0x1802286d9]
mov byte [0x1802286da], al
xor r8d, r8d
lea rcx, [rsp + 0x50]
call fcn.180128e60
nop
lea rdi, str.default
mov rbp, qword [0x180222270]
mov r8, rdi
mov r14, qword [str.default]
cmp rbp, 0x10
cmovae r8, r14
mov ebx, 0x811c9dc5
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1801249d6
xor edx, edx
test rcx, rcx
je 0x180124a05
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, ebx
imul ebx, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1801249f0
mov rsi, qword [0x1801eed08]
test sil, sil
jne 0x180124a18
mov eax, 0x811c9dc5
jmp 0x180124a33
movsx eax, sil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801eed09]
call fcn.1800de790
cmp ebx, eax
jne 0x180124c9a
cmp byte [0x18022dc31], 0
je 0x180124b20
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x48], 0xf
mov dword [rsp + 0x30], esi
movzx eax, word [0x1801eed0c]
mov word [rsp + 0x34], ax
movzx eax, byte [0x1801eed0e]
mov byte [rsp + 0x36], al
mov byte [rsp + 0x37], 0
mov r15d, 1
mov dword [rsp + 0x98], r15d
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x20]
lea rcx, [0x180237ab0]
call fcn.1800a37a0
mov rcx, qword [rax]
mov rbx, qword [0x180237aa8]
mov r8, rbx
shr r8, 0x18
mov rdx, rbx
shr rdx, 0x10
mov rax, rbx
shr rax, 8
cmp byte [rcx + 0x30], bl
jne 0x180124b13
cmp byte [rcx + 0x31], al
jne 0x180124b13
cmp byte [rcx + 0x32], dl
jne 0x180124b13
cmp byte [rcx + 0x33], r8b
jne 0x180124b13
mov rax, rbx
shr rax, 0x20
cmp byte [rcx + 0x34], al
jne 0x180124b13
mov rax, rbx
shr rax, 0x28
cmp byte [rcx + 0x35], al
jne 0x180124b13
mov rax, rbx
shr rax, 0x30
cmp byte [rcx + 0x36], al
jne 0x180124b13
mov rax, rbx
shr rax, 0x38
cmp byte [rcx + 0x37], al
jne 0x180124b13
mov rsi, qword [0x1801eed08]
jmp 0x180124b27
movzx edi, r15b
mov rsi, qword [0x1801eed08]
jmp 0x180124b2a
mov rbx, qword [0x180237aa8]
xor dil, dil
test r15b, 1
je 0x180124b7e
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180124b7e
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180124b6b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180124b6b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017dba4
mov rsi, qword [0x1801eed08]
mov rbx, qword [0x180237aa8]
test dil, dil
je 0x180124ce4
mov r15, qword [0x180237ab8]
mov rdi, qword [r15]
cmp rdi, r15
je 0x180124ce4
lea r8, [rdi + 0x10]
lea r14, [r8 + 0x20]
cmp qword [r8 + 0x18], 0x10
jb 0x180124bac
mov r8, qword [r8]
mov ebp, 0x811c9dc5
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [r8 + rax], 0
jne 0x180124bc0
xor edx, edx
test rax, rax
je 0x180124bf5
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, ebp
imul ebp, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x180124be0
test sil, sil
jne 0x180124c01
mov eax, 0x811c9dc5
jmp 0x180124c1c
movsx eax, sil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801eed09]
call fcn.1800de790
cmp ebp, eax
je 0x180124c80
mov rdx, rbx
shr rdx, 0x18
mov rcx, rbx
shr rcx, 0x10
mov rax, rbx
shr rax, 8
cmp byte [r14], bl
jne 0x180124c80
cmp byte [r14 + 1], al
jne 0x180124c80
cmp byte [r14 + 2], cl
jne 0x180124c80
cmp byte [r14 + 3], dl
jne 0x180124c80
mov rax, rbx
shr rax, 0x20
cmp byte [r14 + 4], al
jne 0x180124c80
mov rax, rbx
shr rax, 0x28
cmp byte [r14 + 5], al
jne 0x180124c80
mov rax, rbx
shr rax, 0x30
cmp byte [r14 + 6], al
jne 0x180124c80
mov rax, rbx
shr rax, 0x38
cmp byte [r14 + 7], al
je 0x180124c8e
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r15
jmp 0x180124b94
mov byte [0x1802286f2], 1
mov rbx, qword [r14]
jmp 0x180124d01
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rdx, qword [rsp + 0x50]
cmp rbp, 0x10
cmovae rdi, r14
mov r8, qword [0x180222268]
cmp r8, qword [rsp + 0x60]
jne 0x180124ccd
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180124cdd
test byte [0x180237a98], 6
mov byte [0x1802286d9], 1
je 0x180124ce4
mov byte [0x1802286d9], 0
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x20]
lea rcx, [0x180237ab0]
call fcn.1800e2430
mov rbx, qword [rax]
mov rbx, qword [rbx + 0x30]
lea rcx, [rsp + 0x50]
call fcn.180090ae0
mov rax, rbx
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rdi
ret