Function at 0x140072870
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r8
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
mov rax, qword [0x140124bc8]
mov r15, r9
mov qword [rbp - 0x41], rax
mov r14, rdx
test rdx, rdx
je 0x140072bc4
test rax, rax
je 0x140072bc4
mov rax, qword gs:[0x58]
xor r12d, r12d
mov ebx, 8
add rbx, qword [rax]
mov eax, dword [rbx]
cmp dword [0x140124bc0], eax
jle 0x14007295d
lea rcx, [0x140124bc0]
call fcn.140079370
cmp dword [0x140124bc0], 0xffffffff
jne 0x14007295d
xor eax, eax
mov dword [rbp - 0x59], 0x6fb66fa9
mov word [rbp - 0x45], ax
mov r8d, r12d
mov dword [rbp - 0x55], 0x6fd26f8e
mov r9d, 0x6fde
mov dword [rbp - 0x51], 0x6f966fd0
mov dword [rbp - 0x4d], 0x6f816fca
mov dword [rbp - 0x49], 0x6f8b6f8a
nop
movsxd rax, r8d
lea rdx, [rbp - 0x59]
lea rdx, [rdx + rax*2]
lea eax, [r9 + r8]
inc r8d
xor word [rdx], ax
cmp r8d, 0xa
jb 0x140072920
lea rcx, [rbp - 0x59]
mov word [rbp - 0x45], r12w
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rcx, [0x140124bc0]
mov qword [0x140124c78], rax
call fcn.140079310
cmp qword [0x140124c78], r12
je 0x140072bc4
mov eax, dword [rbx]
cmp dword [0x140124c70], eax
jle 0x1400729f1
lea rcx, [0x140124c70]
call fcn.140079370
cmp dword [0x140124c70], 0xffffffff
jne 0x1400729f1
movdqa xmm0, xmmword [0x1400bcd60]
xor eax, eax
movdqu xmmword [rbp - 0x59], xmm0
mov byte [rbp - 0x43], al
mov r8d, r12d
mov dword [rbp - 0x49], 0x979e80ad
mov word [rbp - 0x45], 0x949b
nop
movsxd rax, r8d
lea rdx, [rbp - 0x59]
add rdx, rax
lea eax, [r8 - 0x22]
inc r8d
xor byte [rdx], al
cmp r8d, 0x16
jb 0x1400729b0
mov rcx, qword [0x140124c78]
lea rdx, [rbp - 0x59]
mov byte [rbp - 0x43], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x140124c70]
mov qword [0x140124c20], rax
call fcn.140079310
cmp qword [0x140124c20], r12
je 0x140072bc4
mov rsi, qword [0x140124728]
lea rax, [rbp + 0x67]
sub rsi, rax
mov qword [rbp + 0x67], r12
mov rbx, r12
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [0x1401247f0]
lea rdi, [rbp + 0x67]
mov qword [rsp + 0x38], r12
lea r8, [rbp - 9]
xorps xmm0, xmm0
mov qword [rsp + 0x30], r12
add rdi, rbx
mov dword [rsp + 0x28], 0x30
mov r9d, 0x30
mov qword [rbp - 9], r12
mov edx, 0x80002048
mov qword [rbp + 7], r12
movdqu xmmword [rbp + 0x13], xmm0
lea rax, [rsi + rdi]
mov dword [rbp + 0x23], r12d
mov qword [rbp - 1], rax
lea rax, [rbp - 9]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0xf], 1
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x140072bc4
movzx eax, byte [rbp + 0x13]
inc rbx
mov byte [rdi], al
cmp rbx, 8
jb 0x140072a20
mov rdi, qword [0x140124728]
lea rax, [rbp - 0x41]
sub rdi, rax
mov rbx, r12
nop dword [rax]
mov qword [rsp + 0x38], r12
lea rcx, [rbp - 0x41]
add rcx, rbx
mov qword [rsp + 0x30], r12
xorps xmm0, xmm0
mov dword [rsp + 0x28], 0x30
mov r9d, 0x30
mov qword [rbp - 0x39], r12
lea r8, [rbp - 0x39]
mov qword [rbp - 0x29], r12
lea rax, [rcx + rdi]
mov dword [rbp - 0x21], 1
mov qword [rbp - 0x31], rax
mov edx, 0x8000204c
movzx eax, byte [rcx]
mov rcx, qword [0x1401247f0]
mov dword [rbp - 0x1d], eax
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
movdqu xmmword [rbp - 0x19], xmm0
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x140072bc4
inc rbx
cmp rbx, 8
jb 0x140072ab0
mov rax, qword [0x140124c20]
mov edx, 0xc
mov rcx, r15
lea r8d, [rdx - 0xb]
call rax
mov rdi, qword [0x140124728]
mov rbx, r12
mov qword [r14], rax
lea rax, [rbp + 0x67]
sub rdi, rax
nop dword [rax]
mov qword [rsp + 0x38], r12
lea rcx, [rbp + 0x67]
add rcx, rbx
mov qword [rsp + 0x30], r12
xorps xmm0, xmm0
mov dword [rsp + 0x28], 0x30
mov r9d, 0x30
mov qword [rbp - 0x39], r12
lea r8, [rbp - 0x39]
mov qword [rbp - 0x29], r12
lea rax, [rcx + rdi]
mov dword [rbp - 0x21], 1
mov qword [rbp - 0x31], rax
mov edx, 0x8000204c
movzx eax, byte [rcx]
mov rcx, qword [0x1401247f0]
mov dword [rbp - 0x1d], eax
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
movdqu xmmword [rbp - 0x19], xmm0
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x140072bc4
inc rbx
cmp rbx, 8
jb 0x140072b50
mov al, 1
jmp 0x140072bc6
xor al, al
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret