Function at 0x140016bd0
Capabilities:
Encode data using xor
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov rax, qword [0x1400c4040]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rbx, rdx
mov qword [rsp + 0x28], rdx
add rcx, 0x5bd1af8
call fcn.14001cd00
lea rcx, [rax + 0x198]
call fcn.14001cd00
mov qword [rsp + 0x20], rax
cmp rax, 0x10000
jae 0x140016c98
lea rdx, [rsp + 0x30]
call fcn.140016f20
lea r8, [rax + 1]
movzx edx, byte [rax]
xor byte [r8], dl
xor byte [rax + 2], dl
xor byte [rax + 3], dl
xor byte [rax + 4], dl
xor byte [r8 + 4], dl
mov byte [r8 + 5], 0
lea rdx, [rsp + 0x38]
call fcn.140016ea0
lea rdx, [rax + 1]
mov r9, rdx
mov r10d, 0x3d
nop word [rax + rax]
movzx ecx, byte [rax]
xor byte [r9], cl
lea r9, [r9 + 1]
sub r10, 1
jne 0x140016c70
mov byte [rdx + 0x3d], r10b
xor r9d, r9d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor r13d, r13d
mov esi, r13d
mov dword [rsp + 0x30], esi
cmp esi, 0x300
ja 0x140016e17
mov ecx, esi
add rcx, rax
call fcn.14001cd00
mov r12, rax
cmp rax, 0x1000
jbe 0x140016df1
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1400169f0
mov rdx, rbx
mov r15, qword [rbx + 0x18]
cmp r15, 0xf
jbe 0x140016ce4
mov rdx, qword [rbx]
lea rcx, [rsp + 0x38]
mov rdi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x50]
cmp r14, 0xf
cmova rcx, rdi
mov r8, qword [rsp + 0x48]
cmp r8, qword [rbx + 0x10]
jne 0x140016daf
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140016daf
cmp r14, 0xf
jbe 0x140016d52
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140016d46
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016dda
mov rcx, rdi
call fcn.140092320
mov r15, qword [rbx + 0x18]
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
cmp r15, 0xf
jbe 0x140016d98
mov rcx, qword [rbx]
lea rdx, [r15 + 1]
cmp rdx, 0x1000
jb 0x140016d93
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140016de1
mov rcx, r8
call fcn.140092320
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rax, r12
jmp 0x140016e5e
cmp r14, 0xf
jbe 0x140016df1
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140016de8
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140016de8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, rdi
call fcn.140092320
nop
add esi, 8
mov rax, qword [rsp + 0x20]
jmp 0x140016c9e
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x140016e4d
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x140016e48
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140016e8b
mov rcx, r8
call fcn.140092320
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
xor eax, eax
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140091db0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3