Function at 0x140030fd0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
sub rsp, 0x68
cmp byte [rcx + 0x27], 0
je 0x14003148b
mov qword [rax - 8], rbx
lea r9, [rcx + 2]
mov qword [rax - 0x10], rbp
mov ebx, 1
mov qword [rax - 0x18], rsi
mov ebp, 7
mov qword [rax - 0x20], rdi
mov esi, 3
mov qword [rax - 0x28], r12
mov edi, 2
mov qword [rax - 0x30], r13
mov r12d, 6
mov qword [rax - 0x38], r14
mov r13d, 8
mov qword [rax - 0x40], r15
mov r14d, 4
mov eax, 9
mov r15d, 5
sub rax, rcx
mov r11, rcx
mov qword [rsp + 0x70], rax
sub rbx, rcx
mov eax, 0xa
sub rdi, rcx
sub rax, rcx
sub rsi, rcx
mov qword [rsp + 0x78], rax
sub r14, rcx
mov eax, 0xb
sub r15, rcx
sub rax, rcx
sub r12, rcx
mov qword [rsp + 0x80], rax
sub rbp, rcx
mov eax, 0xc
sub r13, rcx
sub rax, rcx
mov r10, 0xfffffffffffffffe
mov qword [rsp + 0x88], rax
not r11
mov eax, 0xd
sub rax, rcx
mov qword [rsp], rax
mov eax, 0xe
sub rax, rcx
mov qword [rsp + 8], rax
mov eax, 0xf
sub rax, rcx
mov qword [rsp + 0x10], rax
mov eax, 0x10
sub rax, rcx
mov qword [rsp + 0x18], rax
sub r10, rcx
nop word [rax + rax]
cmp qword [0x140040f30], 0x10
lea r8, [0x140040f18]
lea rax, [r10 + r9]
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 - 2], al
lea rax, [r11 + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 - 1], al
mov rax, r9
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
sub rax, rcx
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9], al
lea rax, [rbx + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 1], al
lea rax, [rdi + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 2], al
lea rax, [rsi + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 3], al
lea rax, [r14 + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 4], al
lea rax, [r15 + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 5], al
lea rax, [r12 + r9]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 6], al
lea rax, [r9 + rbp]
cmp qword [0x140040f30], 0x10
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
xor byte [r9 + 7], al
cmp qword [0x140040f30], 0x10
lea rax, [r9 + r13]
lea r8, [0x140040f18]
cmovae r8, qword [0x140040f18]
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 8], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 0x70]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 9], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 0x78]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 0xa], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 0x80]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 0xb], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 0x88]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 0xc], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 0xd], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 8]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 0xe], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 0x10]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
lea r8, [0x140040f18]
xor byte [r9 + 0xf], al
cmp qword [0x140040f30], 0x10
mov rax, qword [rsp + 0x18]
cmovae r8, qword [0x140040f18]
add rax, r9
xor edx, edx
div qword [0x140040f28]
movzx eax, byte [rdx + r8]
xor byte [r9 + 0x10], al
add r9, 0x13
lea rax, [r10 + r9]
cmp rax, 0x26
jb 0x1400310d0
mov r15, qword [rsp + 0x28]
mov r14, qword [rsp + 0x30]
mov r13, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov byte [rcx + 0x27], 0
add rsp, 0x68
ret