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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov rsi, r9
mov rdi, r8
mov rbx, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0x10
jb 0x14000ed27
mov rdi, qword [rdi]
test rbx, rbx
mov qword [rbp + 8], rdx
je 0x14000ed54
mov eax, ebx
and eax, 3
movabs rdx, 0x100000001b3
cmp rbx, 4
jae 0x14000ed63
movabs r9, 0xcbf29ce484222325
xor r8d, r8d
jmp 0x14000edbc
movabs r10, 0xcbf29ce484222325
jmp 0x14000ede7
mov r10, rbx
and r10, 0xfffffffffffffffc
movabs r9, 0xcbf29ce484222325
xor r8d, r8d
nop word [rax + rax]
movzx r11d, byte [rdi + r8]
xor r11, r9
imul r11, rdx
movzx r9d, byte [rdi + r8 + 1]
xor r9, r11
imul r9, rdx
movzx r11d, byte [rdi + r8 + 2]
xor r11, r9
imul r11, rdx
movzx r9d, byte [rdi + r8 + 3]
xor r9, r11
imul r9, rdx
add r8, 4
cmp r10, r8
jne 0x14000ed80
mov r10, r9
test rax, rax
je 0x14000ede7
add r8, rdi
xor r11d, r11d
nop word [rax + rax]
movzx r10d, byte [r8 + r11]
xor r10, r9
imul r10, rdx
inc r11
mov r9, r10
cmp rax, r11
jne 0x14000edd0
and r10, qword [rcx + 0x30]
mov r15, qword [rcx + 8]
mov rax, qword [rcx + 0x18]
mov rcx, r10
shl rcx, 4
mov r14, qword [rax + rcx + 8]
cmp r14, r15
je 0x14000ee5c
add r10, r10
mov r12, qword [rax + r10*8]
cmp rbx, qword [r14 + 0x20]
jne 0x14000ee57
jmp 0x14000ee2a
mov r14, qword [r14 + 8]
cmp rbx, qword [r14 + 0x20]
jne 0x14000ee57
cmp qword [r14 + 0x28], 0x10
jb 0x14000ee40
mov rdx, qword [r14 + 0x10]
jmp 0x14000ee44
lea rdx, [r14 + 0x10]
mov rcx, rdi
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14000f133
cmp r14, r12
jne 0x14000ee20
mov rbx, qword [rsi]
add rsi, 8
mov r15, qword [rsi]
mov r13, qword [rbp + 8]
mov qword [r13], 0
mov qword [r13 + 0x10], 0
mov qword [r13 + 0x18], 0xf
mov byte [r13], 0
mov qword [rbp - 0x18], 0
mov qword [rbp - 8], 0
mov qword [rbp], 0xf
mov byte [rbp - 0x18], 0
lea r12, [r15 - 1]
xor edi, edi
lea r14, [rbp - 0x18]
jmp 0x14000eec5
mov edx, 1
mov rcx, r13
call fcn.140012b20
mov rax, r13
inc edi
mov r13, rax
mov eax, edi
cmp r15, rax
jbe 0x14000f0f9
movzx r9d, byte [rbx + rax]
cmp r9b, 0x25
jne 0x14000ef30
cmp r13, r14
je 0x14000ef67
cmp r12, rax
jbe 0x14000f050
lea esi, [rdi + 1]
cmp byte [rbx + rsi], 0x25
mov rax, r14
jne 0x14000eec0
mov rax, qword [r13 + 0x10]
mov rcx, qword [r13 + 0x18]
cmp rax, rcx
jae 0x14000f0df
lea rdx, [rax + 1]
mov qword [r13 + 0x10], rdx
mov rdx, r13
cmp rcx, 0x10
jb 0x14000ef1f
mov rdx, qword [r13]
mov word [rdx + rax], 0x25
mov edi, esi
jmp 0x14000ef5f
mov rax, qword [r13 + 0x10]
mov rcx, qword [r13 + 0x18]
cmp rax, rcx
jae 0x14000eeb0
lea rdx, [rax + 1]
mov qword [r13 + 0x10], rdx
mov rdx, r13
cmp rcx, 0x10
jb 0x14000ef56
mov rdx, qword [r13]
mov byte [rdx + rax], r9b
mov byte [rdx + rax + 1], 0
mov rax, r13
jmp 0x14000eec0
call fcn.140020b10
cmp qword [rbp], 0x10
mov rcx, r14
jb 0x14000ef7a
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp - 8]
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], rdx
mov r9, qword [rax]
mov rcx, rax
lea rdx, [rbp - 0x40]
lea r8, [rbp - 0x50]
call qword [r9 + 0x50]
cmp qword [rbp - 0x30], 0
jne 0x14000f014
call fcn.1400387c0
cmp eax, 1
jg 0x14000f014
mov byte [rsp + 0x20], 0
lea rcx, [rbp - 0x20]
lea rdx, [0x140102cb0]
mov r8d, 0x165
mov r9d, 1
call fcn.140038d50
mov rcx, qword [rbp - 0x20]
mov eax, 0x198
add rcx, rax
lea rdx, str.Environment_variable
call fcn.14000cb50
cmp qword [rbp], 0x10
mov rdx, r14
jb 0x14000eff0
mov rdx, qword [rbp - 0x18]
mov r8, qword [rbp - 8]
mov rcx, rax
call fcn.140014800
mov rcx, rax
lea rdx, str._is_not_set
call fcn.14000cb50
lea rcx, [rbp - 0x20]
call fcn.140038df0
mov r8, qword [rbp - 0x30]
cmp qword [rbp - 0x28], 0x10
lea r9, [rbp - 0x40]
jb 0x14000f027
mov r9, qword [rbp - 0x40]
mov r13, qword [rbp + 8]
mov rcx, qword [r13 + 0x10]
mov rax, qword [r13 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x14000f058
mov qword [rsp + 0x20], r8
mov rcx, r13
mov rdx, r8
call fcn.140006c20
jmp 0x14000f07e
mov rax, r14
jmp 0x14000eec0
lea rsi, [rcx + r8]
mov qword [r13 + 0x10], rsi
cmp rax, 0x10
jb 0x14000f06d
mov rax, qword [rbp + 8]
mov r13, qword [rax]
add rcx, r13
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
mov byte [r13 + rsi], 0
cmp qword [rbp], 0x10
mov rax, r14
jb 0x14000f08c
mov rax, qword [rbp - 0x18]
mov qword [rbp - 8], 0
mov byte [rax], 0
mov rax, qword [rbp - 0x28]
cmp rax, 0x10
jb 0x14000f0d6
mov rcx, qword [rbp - 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14000f0d1
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14000f21e
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400fa3b8
mov rax, qword [rbp + 8]
jmp 0x14000eec0
mov edx, 1
mov rcx, r13
mov r9b, 0x25
call fcn.140012b20
mov edi, esi
mov rax, r13
jmp 0x14000eec0
lea rsi, [rbp - 0x18]
cmp r13, rsi
jne 0x14000f1b8
mov rcx, qword [rbp + 8]
mov rax, qword [rcx + 0x10]
mov r8, qword [rcx + 0x18]
cmp rax, r8
jae 0x14000f150
lea rdx, [rax + 1]
mov qword [rcx + 0x10], rdx
mov rdx, rcx
cmp r8, 0x10
jb 0x14000f12b
mov rdx, qword [rcx]
mov word [rdx + rax], 0x25
jmp 0x14000f15d
cmp r14, r15
je 0x14000ee5c
cmp qword [r14 + 0x48], 0x10
jb 0x14000f20e
mov rbx, qword [r14 + 0x30]
jmp 0x14000f212
mov edx, 1
mov r9b, 0x25
call fcn.140012b20
mov r8, qword [rbp - 8]
cmp qword [rbp], 0x10
jb 0x14000f16c
mov rsi, qword [rbp - 0x18]
mov rbx, qword [rbp + 8]
mov rcx, qword [rbx + 0x10]
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x14000f198
mov qword [rsp + 0x20], r8
mov rcx, rbx
mov rdx, r8
mov r9, rsi
call fcn.140006c20
jmp 0x14000f1b8
lea rdi, [rcx + r8]
mov qword [rbx + 0x10], rdi
cmp rax, 0x10
jb 0x14000f1a9
mov rbx, qword [rbx]
add rcx, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rdi], 0
mov rax, qword [rbp]
cmp rax, 0x10
mov rsi, qword [rbp + 8]
jb 0x14000f1f7
mov rcx, qword [rbp - 0x18]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14000f1f2
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14000f21e
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400fa3b8
mov rax, rsi
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rbx, [r14 + 0x30]
add r14, 0x40
mov rsi, r14
jmp 0x14000ee63
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3