Function at 0x140006e70
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov rax, r8
mov r14, rdx
mov r15, rcx
mov qword [rsp + 0x20], r9
lea rcx, [rsp + 0x90]
mov rdx, r15
mov r8, r14
mov r9, rax
call fcn.1401c3c70
mov rdx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0x98]
cmp r8, rdx
sete r10b
cmp qword [rsp + 0x90], 0
je 0x1400071a5
mov rbp, qword [rsp + 0xb8]
mov r11, r14
cmp rbp, rdx
je 0x1400072ae
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], r14
mov rax, qword [rsp + 0xf0]
lea r9, [rax - 1]
mov qword [rsp + 0x48], r9
mov r9, qword [rsp + 0xb0]
mov qword [rsp + 0x68], r9
mov r12, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xc8]
mov r10, qword [rsp + 0xa8]
mov r11, rax
mov r9, r10
mov qword [rsp + 0x88], r10
sub r11, r10
mov qword [rsp + 0x78], r11
lea r9, [r8 - 1]
mov qword [rsp + 0x70], r9
cmp r9, rax
setb byte [rsp + 0x37]
mov r9, rbp
sub r9, r8
mov qword [rsp + 0x60], r9
lea r13, [rcx + rbp]
lea rdi, [rcx + r8]
lea rsi, [r12 + r8]
lea r9, [r12 + r8]
dec r9
mov qword [rsp + 0x80], r9
lea r9, [r8 + rbp]
dec r9
mov qword [rsp + 0x50], r9
mov r11, rbp
mov r9, qword [rsp + 0x48]
add r9, rbp
cmp r9, rdx
jae 0x1400072a4
mov r10, qword [rsp + 0x88]
add r10, r11
mov qword [rsp + 0x58], r10
lea rbp, [r11 + rax]
cmp rbx, 0xffffffffffffffff
je 0x140007090
mov r15, r11
jmp 0x140006fd6
xor ebx, ebx
mov r15, rbp
mov r9, qword [rsp + 0x48]
add r9, r15
cmp r9, rdx
jae 0x1400072a4
cmp r11, r15
jne 0x1400072a4
movzx r9d, byte [rcx + r9]
mov r10, qword [rsp + 0x68]
bt r10, r9
jae 0x140006fc0
cmp r8, rbx
mov r9, rbx
cmova r9, r8
mov r10, r9
nop dword [rax]
cmp r10, rax
jae 0x140007030
lea r14, [r11 + r10]
cmp r14, rdx
jae 0x14000732b
lea r15, [r10 + 1]
movzx r14d, byte [r12 + r10]
cmp r14b, byte [r13 + r10]
mov r10, r15
je 0x140007000
add r15, qword [rsp + 0x60]
xor ebx, ebx
jmp 0x140006fc5
mov r10, r8
nop word cs:[rax + rax]
cmp rbx, r10
jae 0x140007080
dec r10
cmp r10, rax
jae 0x140007193
lea r9, [r10 + r11]
cmp r9, rdx
jae 0x140007319
movzx r14d, byte [r12 + r10]
cmp r14b, byte [rcx + r9]
je 0x140007040
mov rbx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x58]
jmp 0x140006fc5
xor ebx, ebx
jmp 0x140007167
mov r10, r11
jmp 0x1400070b1
mov r10, qword [rsp + 0x58]
nop word [rax + rax]
mov r9, qword [rsp + 0x48]
add r9, r10
cmp r9, rdx
jae 0x1400072a4
cmp r11, r10
jne 0x1400072a4
movzx r9d, byte [rcx + r9]
mov r10, qword [rsp + 0x68]
bt r10, r9
mov r10, rbp
jae 0x1400070a0
xor r9d, r9d
mov rbx, r11
nop word cs:[rax + rax]
lea r10, [r8 + r9]
cmp r10, rax
jae 0x140007110
lea r10, [r8 + rbx]
cmp r10, rdx
jae 0x140007328
movzx r14d, byte [rsi + r9]
lea r10, [rbx + 1]
inc r9
cmp r14b, byte [rdi + rbx]
mov rbx, r10
je 0x1400070e0
jmp 0x1400070a0
test byte [rsp + 0x37], 1
je 0x140007182
mov r9, qword [rsp + 0x50]
mov r10, qword [rsp + 0x80]
mov rbx, r8
nop word [rax + rax]
sub rbx, 1
jb 0x140007160
cmp r9, rdx
jae 0x140007319
movzx r15d, byte [r10]
dec r10
lea r14, [r9 - 1]
cmp r15b, byte [rcx + r9]
mov r9, r14
je 0x140007130
jmp 0x140007095
mov rbx, 0xffffffffffffffff
add qword [rsp + 0x60], rax
add r13, rax
add qword [rsp + 0x50], rax
cmp rbp, rdx
jne 0x140006f82
jmp 0x1400072f6
mov rbx, 0xffffffffffffffff
test r8, r8
je 0x140007167
mov r10, qword [rsp + 0x70]
lea r8, [0x1401d4fa0]
mov rcx, r10
mov rdx, rax
call fcn.1401d2960
cmp byte [rsp + 0xaa], 0
mov r11, r14
jne 0x1400072ae
lea r9, [rcx + r8]
movzx eax, byte [rsp + 0xa8]
test r10b, 1
je 0x140007222
test r8, r8
je 0x1400072de
cmp r8, rdx
jae 0x140007300
cmp byte [r9], 0xc0
jl 0x140007344
mov r11, r14
test al, al
je 0x1400072ae
nop
xor al, 1
jne 0x1400071f0
jmp 0x140007314
movzx r11d, byte [rcx]
mov rsi, rcx
test r11b, r11b
js 0x140007246
movzx r10d, r11b
mov r11d, eax
xor r11b, 1
test al, al
mov eax, r11d
je 0x1400072ce
test r8, r8
je 0x140007200
cmp r8, rdx
jae 0x140007344
movzx r11d, byte [r9]
mov rsi, r9
cmp r11b, 0xbf
jle 0x140007344
test r11b, r11b
jns 0x14000720c
mov r10d, r11d
and r10b, 0x1f
movzx r10d, r10b
movzx ebx, byte [rsi + 1]
and ebx, 0x3f
cmp r11b, 0xe0
jb 0x14000728c
movzx edi, byte [rsi + 2]
shl ebx, 6
and edi, 0x3f
or edi, ebx
cmp r11b, 0xf0
jb 0x140007298
movzx r11d, byte [rsi + 3]
and r10d, 7
shl r10d, 0x12
shl edi, 6
and r11d, 0x3f
or r11d, edi
or r10d, r11d
jmp 0x140007210
shl r10d, 6
or r10d, ebx
jmp 0x140007210
shl r10d, 0xc
or r10d, edi
jmp 0x140007210
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
sub r14, r11
add r15, r11
mov rax, r15
mov rdx, r14
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp r10d, 0x110000
cmove r8, r14
mov r11, r8
jmp 0x1400072ae
mov r11, r14
test al, al
je 0x1400072ae
nop word cs:[rax + rax]
xor al, 1
jne 0x1400072f0
jmp 0x140007314
mov r14, qword [rsp + 0x40]
mov r11, r14
jmp 0x1400072a9
mov r11, r14
test al, al
je 0x1400072ae
nop word [rax + rax]
xor al, 1
jne 0x140007310
mov r11, r14
jmp 0x1400072ae
lea r8, [0x1401d4fb8]
mov rcx, r9
call fcn.1401d2960
mov r9, r8
add r9, r11
cmp rdx, r9
cmova r9, rdx
lea r8, [0x1401d4fd0]
mov rcx, r9
call fcn.1401d2960
lea rax, [0x1401d5030]
mov qword [rsp + 0x20], rax
mov r9, rdx
call fcn.1401d2f10
int3