Function at 0x140070860
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x18], r8
push rbp
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x14011d9a0]
mov r14, rdx
mov qword [rbp - 0x31], rax
test rdx, rdx
je 0x140070bc4
test rax, rax
je 0x140070bc4
mov rax, qword gs:[0x58]
xor r15d, r15d
mov ebx, 8
add rbx, qword [rax]
mov eax, dword [rbx]
cmp dword [0x14011d968], eax
jle 0x140070961
lea rcx, [0x14011d968]
call fcn.140077ac0
cmp dword [0x14011d968], 0xffffffff
jne 0x140070961
xor eax, eax
mov dword [rbp - 0x49], 0x9eaf9eb2
mov word [rbp - 0x35], ax
mov r8d, r15d
mov dword [rbp - 0x45], 0x9efb9ea9
mov r9d, 0x613b
mov dword [rbp - 0x41], 0x9ebf9efb
mov dword [rbp - 0x3d], 0x9ea89ee5
mov dword [rbp - 0x39], 0x9ea29ea1
nop dword [rax]
nop word [rax + rax]
movsxd rax, r8d
lea rdx, [rbp - 0x49]
lea rdx, [rdx + rax*2]
movzx eax, r8w
sub ax, r9w
inc r8d
xor word [rdx], ax
cmp r8d, 0xa
jb 0x140070920
lea rcx, [rbp - 0x49]
mov word [rbp - 0x35], r15w
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rcx, [0x14011d968]
mov qword [0x14011d980], rax
call fcn.140077a60
cmp qword [0x14011d980], r15
je 0x140070bc4
mov eax, dword [rbx]
cmp dword [0x14011d964], eax
jle 0x1400709f1
lea rcx, [0x14011d964]
call fcn.140077ac0
cmp dword [0x14011d964], 0xffffffff
jne 0x1400709f1
movdqa xmm0, xmmword [0x1400baed0]
xor eax, eax
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x33], al
mov r8d, r15d
mov dword [rbp - 0x39], 0xbeb9b996
mov word [rbp - 0x35], 0xbdb0
nop
movsxd rax, r8d
lea rdx, [rbp - 0x49]
add rdx, rax
lea eax, [r8 - 0x3b]
inc r8d
xor byte [rdx], al
cmp r8d, 0x16
jb 0x1400709b0
mov rcx, qword [0x14011d980]
lea rdx, [rbp - 0x49]
mov byte [rbp - 0x33], r15b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x14011d964]
mov qword [0x14011d940], rax
call fcn.140077a60
cmp qword [0x14011d940], r15
je 0x140070bc4
mov rsi, qword [0x14011d508]
lea rax, [rbp + 0x67]
sub rsi, rax
mov qword [rbp + 0x67], r15
mov rbx, r15
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [0x14011d5c0]
lea rdi, [rbp + 0x67]
mov qword [rsp + 0x38], r15
lea r8, [rbp + 7]
xorps xmm0, xmm0
mov qword [rsp + 0x30], r15
add rdi, rbx
mov dword [rsp + 0x28], 0x30
mov r9d, 0x30
mov qword [rbp + 7], r15
mov edx, 0x80002048
mov qword [rbp + 0x17], r15
movdqu xmmword [rbp + 0x23], xmm0
lea rax, [rsi + rdi]
mov dword [rbp + 0x33], r15d
mov qword [rbp + 0xf], rax
lea rax, [rbp + 7]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x1f], 1
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x140070bc4
movzx eax, byte [rbp + 0x23]
inc rbx
mov byte [rdi], al
cmp rbx, 8
jb 0x140070a20
mov rdi, qword [0x14011d508]
lea rax, [rbp - 0x31]
sub rdi, rax
mov rbx, r15
nop dword [rax]
mov qword [rsp + 0x38], r15
lea rcx, [rbp - 0x31]
add rcx, rbx
mov qword [rsp + 0x30], r15
xorps xmm0, xmm0
mov dword [rsp + 0x28], 0x30
mov r9d, 0x30
mov qword [rbp - 0x29], r15
lea r8, [rbp - 0x29]
mov qword [rbp - 0x19], r15
lea rax, [rcx + rdi]
mov dword [rbp - 0x11], 1
mov qword [rbp - 0x21], rax
mov edx, 0x8000204c
movzx eax, byte [rcx]
mov rcx, qword [0x14011d5c0]
mov dword [rbp - 0xd], eax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
movdqu xmmword [rbp - 9], xmm0
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x140070bc4
inc rbx
cmp rbx, 8
jb 0x140070ab0
mov rax, qword [0x14011d940]
mov edx, 0x1000
xor ecx, ecx
mov r8d, 0x42777445
call rax
mov rdi, qword [0x14011d508]
mov rbx, r15
mov qword [r14], rax
lea rax, [rbp + 0x67]
sub rdi, rax
nop
mov qword [rsp + 0x38], r15
lea rcx, [rbp + 0x67]
add rcx, rbx
mov qword [rsp + 0x30], r15
xorps xmm0, xmm0
mov dword [rsp + 0x28], 0x30
mov r9d, 0x30
mov qword [rbp - 0x29], r15
lea r8, [rbp - 0x29]
mov qword [rbp - 0x19], r15
lea rax, [rcx + rdi]
mov dword [rbp - 0x11], 1
mov qword [rbp - 0x21], rax
mov edx, 0x8000204c
movzx eax, byte [rcx]
mov rcx, qword [0x14011d5c0]
mov dword [rbp - 0xd], eax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
movdqu xmmword [rbp - 9], xmm0
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x140070bc4
inc rbx
cmp rbx, 8
jb 0x140070b50
mov al, 1
jmp 0x140070bc6
xor al, al
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret