Function at 0x1400010f0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rbp, rdx
mov r13, rcx
xor ecx, ecx
call fcn.140144110
mov rcx, rax
call fcn.1401440cc
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x28]
call fcn.140001980
nop
mov r14, qword [rsp + 0x28]
lea rbx, [r14 + 8]
mov edi, 0x64
mov esi, edi
call fcn.1401440e4
mov r11d, eax
mov eax, 0x66666667
imul r11d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 4
sub r11d, ecx
mov dword [rbx - 8], r11d
call fcn.1401440e4
mov r11d, eax
mov eax, 0x51eb851f
imul r11d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx, edx, 0x19
sub r11d, edx
mov dword [rbx - 4], r11d
call fcn.1401440e4
mov r11d, eax
mov eax, 0x66666667
imul r11d
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
sub r11d, ecx
add r11d, 3
mov dword [rbx], r11d
call fcn.1401440e4
mov r11d, eax
mov eax, 0x55555556
imul r11d
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
sub r11d, ecx
inc r11d
mov dword [rbx + 4], r11d
add rbx, 0x10
dec rsi
jne 0x140001156
mov r15d, dword [r13]
mov r12d, dword [r13 + 4]
lea rbx, [r14 + 4]
mov eax, dword [rbx + 8]
add dword [rbx], eax
cmp dword [rbx], 0x19
jl 0x140001237
mov dword [rbx], esi
call fcn.1401440e4
mov r11d, eax
mov eax, 0x66666667
imul r11d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 4
sub r11d, ecx
mov dword [rbx - 4], r11d
mov r8d, dword [rbx + 4]
mov edx, dword [rbx]
mov ecx, dword [rbx - 4]
call section..text
add rbx, 0x10
dec rdi
jne 0x140001204
lea r14, [rbp + 0xf4241]
mov qword [rsp + 0x80], 0x8a1d6
inc r15b
movzx ebp, r15b
mov edi, dword [r13 + rbp*4 + 8]
add r12b, dil
movzx r12d, r12b
mov r11d, dword [r13 + r12*4 + 8]
mov dword [r13 + rbp*4 + 8], r11d
mov dword [r13 + r12*4 + 8], edi
movzx edx, byte [r13 + rbp*4 + 8]
movzx ecx, dil
xor eax, eax
test cl, cl
sete al
add eax, dword [r13 + rdx*4 + 8]
mov dword [r13 + rbp*4 + 8], eax
mov r10d, ecx
xor r8d, r8d
test dl, dl
sete r8b
mov eax, dword [r13 + rcx*4 + 8]
lea ecx, [r8 + rax]
mov dword [r13 + r12*4 + 8], ecx
lea eax, [rbp + r12]
movzx ecx, al
add r11b, cl
add r11b, dil
movzx ecx, r11b
movzx eax, byte [r13 + rcx*4 + 8]
xor byte [r14 - 1], al
mov eax, dword [r13 + rcx*4 + 8]
xor dword [r13 + rdx*4 + 8], eax
mov eax, dword [r13 + rbp*4 + 8]
lea ecx, [r8 + rax]
xor dword [r13 + r10*4 + 8], ecx
inc bpl
movzx ebp, bpl
mov edi, dword [r13 + rbp*4 + 8]
add r12b, dil
movzx r12d, r12b
mov r11d, dword [r13 + r12*4 + 8]
mov dword [r13 + rbp*4 + 8], r11d
mov dword [r13 + r12*4 + 8], edi
movzx edx, byte [r13 + rbp*4 + 8]
movzx ecx, dil
xor eax, eax
test cl, cl
sete al
add eax, dword [r13 + rdx*4 + 8]
mov dword [r13 + rbp*4 + 8], eax
mov r10d, ecx
xor r8d, r8d
test dl, dl
sete r8b
mov eax, dword [r13 + rcx*4 + 8]
lea ecx, [r8 + rax]
mov dword [r13 + r12*4 + 8], ecx
lea eax, [rbp + r12]
movzx ecx, al
add r11b, cl
add r11b, dil
movzx ecx, r11b
movzx eax, byte [r13 + rcx*4 + 8]
xor byte [r14], al
mov eax, dword [r13 + rcx*4 + 8]
xor dword [r13 + rdx*4 + 8], eax
mov eax, dword [r13 + rbp*4 + 8]
lea ecx, [r8 + rax]
xor dword [r13 + r10*4 + 8], ecx
inc bpl
movzx ebp, bpl
mov edi, dword [r13 + rbp*4 + 8]
add r12b, dil
movzx r12d, r12b
mov r11d, dword [r13 + r12*4 + 8]
mov dword [r13 + rbp*4 + 8], r11d
mov dword [r13 + r12*4 + 8], edi
movzx edx, byte [r13 + rbp*4 + 8]
movzx ecx, dil
xor eax, eax
test cl, cl
sete al
add eax, dword [r13 + rdx*4 + 8]
mov dword [r13 + rbp*4 + 8], eax
mov r10d, ecx
xor r8d, r8d
test dl, dl
sete r8b
mov eax, dword [r13 + rcx*4 + 8]
lea ecx, [r8 + rax]
mov dword [r13 + r12*4 + 8], ecx
lea eax, [rbp + r12]
movzx ecx, al
add r11b, cl
add r11b, dil
movzx ecx, r11b
movzx eax, byte [r13 + rcx*4 + 8]
xor byte [r14 + 1], al
mov eax, dword [r13 + rcx*4 + 8]
xor dword [r13 + rdx*4 + 8], eax
mov eax, dword [r13 + rbp*4 + 8]
lea ecx, [r8 + rax]
xor dword [r13 + r10*4 + 8], ecx
inc bpl
movzx r15d, bpl
mov edi, dword [r13 + r15*4 + 8]
add r12b, dil
movzx r12d, r12b
mov r11d, dword [r13 + r12*4 + 8]
mov dword [r13 + r15*4 + 8], r11d
mov dword [r13 + r12*4 + 8], edi
movzx edx, byte [r13 + r15*4 + 8]
movzx ecx, dil
xor eax, eax
test cl, cl
sete al
add eax, dword [r13 + rdx*4 + 8]
mov dword [r13 + r15*4 + 8], eax
mov r10d, ecx
xor r8d, r8d
test dl, dl
sete r8b
mov eax, dword [r13 + rcx*4 + 8]
lea ecx, [r8 + rax]
mov dword [r13 + r12*4 + 8], ecx
lea eax, [r15 + r12]
movzx ecx, al
add r11b, cl
add r11b, dil
movzx ecx, r11b
movzx eax, byte [r13 + rcx*4 + 8]
xor byte [r14 + 2], al
mov eax, dword [r13 + rcx*4 + 8]
xor dword [r13 + rdx*4 + 8], eax
mov eax, dword [r13 + r15*4 + 8]
lea edx, [r8 + rax]
xor dword [r13 + r10*4 + 8], edx
add r14, 4
dec qword [rsp + 0x80]
jne 0x140001261
mov dword [r13], r15d
mov dword [r13 + 4], r12d
mov r14, qword [rsp + 0x28]
test r14, r14
je 0x1400014b7
mov rcx, r14
call fcn.140002448
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret