Function at 0x1400094f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xa0
mov rax, qword [0x14004c040]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rsi, rdx
mov qword [rbp - 0x11], rdx
xor edi, edi
lea rcx, [r8 + 0xae0]
call fcn.1400107c0
mov r14, rax
lea rcx, [rax + 0x4e]
call fcn.140010a30
test eax, eax
jg 0x14000958f
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], 8
mov r14d, 0xf
mov qword [rsi + 0x18], r14
mov rcx, qword [str.AI___BOT]
mov qword [rsi], rcx
mov byte [rsi + 8], dil
mov rax, rsi
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14003cd80
mov rbx, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movsxd rbx, eax
mov eax, 2
mul rbx
mov rcx, 0xffffffffffffffff
cmovb rax, rcx
mov rcx, rax
call fcn.14003d1e0
mov r12, rax
lea rcx, [r14 + 8]
call fcn.1400107c0
mov r14, rdi
test rbx, rbx
jle 0x14000965f
mov r15d, edi
nop dword [rax + rax]
mov rax, qword [0x14004c860]
add rax, 0x113c6b04
mov dword [rbp - 0x11], edi
mov dword [rbp - 5], edi
mov dword [rbp + 0x18], edi
mov word [rbp + 0x1c], di
mov byte [rbp + 0x1e], dil
mov qword [rbp - 1], rax
lea rax, [rbp - 0x11]
mov qword [rbp + 7], rax
mov qword [rbp + 0xf], 4
mov eax, dword [0x14004c888]
mov dword [rbp - 9], eax
mov byte [rbp + 0x17], dil
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, 0x28
lea r8, [rbp - 9]
mov edx, 0x2201c4
mov rcx, qword [0x14004c880]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov ecx, dword [rbp - 0x11]
xor ecx, 0x9c677cc5
add ecx, r15d
xor word [r12 + r14*2], cx
add r15d, 0x21
inc r14
cmp r14, rbx
jl 0x1400095d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
mov qword [rbp - 0x21], rdi
mov qword [rbp - 0x19], rdi
movabs r15, 0x7ffffffffffffffe
cmp rbx, r15
ja 0x1400098cd
movabs r13, 0x7fffffffffffffff
cmp rbx, 7
ja 0x1400096b9
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x19], 7
add rbx, rbx
mov r8, rbx
mov rdx, r12
lea rcx, [rbp - 0x31]
call sub.VCRUNTIME140.dll_memcpy
mov word [rbp + rbx - 0x31], di
jmp 0x140009752
mov rax, rbx
or rax, 7
cmp rax, r15
jbe 0x140009702
lea rcx, [r13*2]
cmp rcx, 0x1000
jb 0x140009728
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400098c7
mov rcx, rax
call fcn.14003ce8c
test rax, rax
je 0x1400098a7
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x140009730
mov ecx, 0xa
cmp rax, rcx
cmovb rax, rcx
mov r15, rax
lea rcx, [rax + 1]
cmp rcx, r13
ja 0x1400098c7
add rcx, rcx
jne 0x1400096cd
mov r14, rdi
jmp 0x140009730
call fcn.14003ce8c
mov r14, rax
mov qword [rbp - 0x31], r14
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x19], r15
add rbx, rbx
mov r8, rbx
mov rdx, r12
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov word [r14 + rbx], di
mov rcx, r12
call fcn.14003cda0
lea rcx, [rbp - 0x31]
mov r8, qword [rbp - 0x31]
mov rdx, qword [rbp - 0x19]
cmp rdx, 7
cmova rcx, r8
mov rax, qword [rbp - 0x21]
lea r15, [rcx + rax*2]
lea rbx, [rbp - 0x31]
cmova rbx, r8
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rdi
mov r14d, 0xf
mov qword [rsi + 0x18], r14
cmp rbx, r15
jne 0x14000979f
mov byte [rsi], 0
jmp 0x140009874
sub r15, rbx
sar r15, 1
cmp r15, r13
ja 0x1400098bb
cmp r15, r14
jbe 0x14000982e
mov r14, r15
or r14, 0xf
cmp r14, r13
jbe 0x1400097eb
mov r14, r13
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14003ce8c
test rax, rax
je 0x140009818
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140009827
mov eax, 0x16
cmp r14, rax
cmovb r14, rax
lea rcx, [r14 + 1]
test rcx, rcx
je 0x140009827
cmp rcx, 0x1000
jb 0x14000981f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400098c1
jmp 0x1400097d0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14003ce8c
mov rdi, rax
mov qword [rsi], rdi
mov qword [rsi + 0x18], r14
mov r8, rsi
cmp r14, 0xf
jbe 0x14000983a
mov r8, qword [rsi]
mov rcx, r8
mov rdx, r15
test r15, r15
je 0x140009863
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rcx], al
lea rcx, [rcx + 1]
lea rbx, [rbx + 2]
sub rdx, 1
jne 0x140009850
mov qword [rsi + 0x10], r15
mov byte [r8 + r15], 0
mov rdx, qword [rbp - 0x19]
mov r8, qword [rbp - 0x31]
cmp rdx, 7
jbe 0x140009565
lea rdx, [rdx*2 + 2]
mov rax, r8
cmp rdx, 0x1000
jb 0x1400098ae
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400098ae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r8
call fcn.14003cda0
jmp 0x140009565
call fcn.140001a80
int3
call fcn.1400019e0
nop
call fcn.1400019e0
int3
call fcn.140001a80
int3