Function at 0x180143860
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
mov qword [rsp + 0x20], rdi
push r12
push r13
push r14
sub rsp, 0x80
mov r13, rdx
mov r12, rcx
xor ebp, ebp
mov dword [rsp + 0x20], ebp
movzx eax, byte [0x18028b0e9]
mov byte [0x18028b0ea], al
movzx eax, byte [0x18028b0eb]
mov byte [0x18028b0ec], al
xor r8d, r8d
lea rcx, [rsp + 0x58]
call fcn.180148b80
nop
lea rsi, str.default
mov r8, rsi
mov r14, qword [str.default]
cmp qword [0x1802842e8], 0xf
cmova r8, r14
mov ebx, 0x811c9dc5
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1801438e0
xor edx, edx
test rcx, rcx
je 0x180143915
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 0x180143900
mov rdi, qword [0x180247428]
test dil, dil
jne 0x180143928
mov eax, 0x811c9dc5
jmp 0x180143943
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x180247429]
call fcn.1800fa000
cmp ebx, eax
jne 0x180143b2b
cmp byte [0x180291321], 0
je 0x1801439e9
lea rcx, [r13 + 0x70]
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x18025e410]
movdqu xmmword [rsp + 0x48], xmm1
mov dword [rsp + 0x38], edi
movzx eax, word [0x18024742c]
mov word [rsp + 0x3c], ax
movzx eax, byte [0x18024742e]
mov byte [rsp + 0x3e], al
mov byte [rsp + 0x3f], 0
mov ebp, 1
mov dword [rsp + 0x20], ebp
lea rbx, [r13 + 0x50]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x28]
call fcn.1800bf390
mov rcx, qword [rax]
add rcx, 0x30
mov rax, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x1801439c3
mov rbx, qword [rbx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x1801439d1
mov rcx, qword [rcx]
cmp r8, rax
jne 0x180143a2c
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x180143a2c
mov rdi, qword [0x180247428]
xor bl, bl
test bpl, 1
je 0x180143a45
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xf
jbe 0x180143a45
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180143a39
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180143a39
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movzx ebx, bpl
mov rdi, qword [0x180247428]
jmp 0x1801439eb
call fcn.1801d1c00
mov rdi, qword [0x180247428]
test bl, bl
je 0x180143b77
mov rsi, qword [r13 + 0x78]
mov rbx, qword [rsi]
cmp rbx, rsi
je 0x180143b77
nop dword [rax]
lea r8, [rbx + 0x10]
lea r14, [r8 + 0x20]
cmp qword [r8 + 0x18], 0xf
jbe 0x180143a72
mov r8, qword [r8]
mov ebp, 0x811c9dc5
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r8 + rax], 0
jne 0x180143a80
xor edx, edx
test rax, rax
je 0x180143ab5
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 0x180143aa0
test dil, dil
jne 0x180143ac1
mov eax, 0x811c9dc5
jmp 0x180143adc
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x180247429]
call fcn.1800fa000
cmp ebp, eax
je 0x180143b11
lea rdx, [r13 + 0x50]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x180143af2
mov rdx, qword [rdx]
mov r8, qword [r14 + 0x10]
mov rcx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x180143b03
mov rcx, qword [r14]
cmp r8, rax
jne 0x180143b11
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180143b1f
mov rbx, qword [rbx]
cmp rbx, rsi
jne 0x180143a60
jmp 0x180143b77
mov byte [0x18028b0e9], 1
mov rdx, r14
jmp 0x180143b91
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0xf
cmova rdx, qword [rsp + 0x58]
cmp qword [0x1802842e8], 0xf
cmova rsi, r14
mov r8, qword [0x1802842e0]
cmp r8, qword [rsp + 0x68]
jne 0x180143b62
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180143b70
test byte [r13 + 0x28], 6
mov byte [0x18028b0eb], 1
je 0x180143b77
mov byte [0x18028b0eb], 0
lea rcx, [r13 + 0x70]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x28]
call fcn.1800ff190
mov rdx, qword [rax]
add rdx, 0x30
mov rcx, r12
call fcn.1800a32e0
nop
lea rcx, [rsp + 0x58]
call fcn.1800a3670
mov rax, r12
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop r12
ret