Function at 0x140069620
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rbp
push rsi
sub rsp, 0x20
movsxd rbp, r8d
mov rsi, rdx
mov rbx, rcx
cmp ebp, 0x38
jg 0x140069ae1
mov qword [rsp + 0x30], rdi
mov rcx, rbp
mov rdi, rbp
call fcn.1400330e0
mov r10, rax
test ebp, ebp
jle 0x140069670
mov rdx, rax
sub rsi, rax
nop
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rdi, 1
jne 0x140069660
xor edi, edi
lea r11, [0x140128328]
mov r9d, edi
lea rsi, [0x140128370]
nop dword [rax]
nop word [rax + rax]
mov eax, r9d
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 - 8], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 - 4], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
add r8d, ecx
shl r8d, 8
lea eax, [r9 + 3]
cdq
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 4], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 8], r8d
idiv ebp
mov eax, edx
mov r9d, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
shl r8d, 8
cdq
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 0xc], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 0x10], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
add r8d, ecx
xor dword [r11 + 0x14], r8d
lea eax, [r9 + 4]
cdq
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 0x18], r8d
add r11, 0x24
idiv ebp
mov r9d, edx
cmp r11, rsi
jl 0x140069690
mov qword [rbx + 4], rdi
lea rsi, [0x140128368]
lea rdi, [0x140128320]
mov rcx, rbx
call fcn.140069fd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x1400699f4
lea rdi, [0x140128750]
lea rsi, [0x140128b50]
nop
mov rcx, rbx
call fcn.140069fd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x140069a20
lea rdi, [0x140128b50]
lea rsi, [0x140128f50]
nop word [rax + rax]
mov rcx, rbx
call fcn.140069fd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x140069a50
lea rdi, [0x140128f50]
lea rsi, [0x140129350]
nop word [rax + rax]
mov rcx, rbx
call fcn.140069fd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x140069a80
lea rdi, [0x140129350]
lea rsi, [0x140129750]
nop word [rax + rax]
mov rcx, rbx
call fcn.140069fd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x140069ab0
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
lea rdx, [0x1400f7bb8]
mov dword [rsp + 0x40], 0x38
lea rcx, [rsp + 0x40]
call sub.vcruntime140.dll__CxxThrowException
int3