Function at 0x1401d0f40
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x20
xor r12d, r12d
mov r14, rdx
mov rdx, qword [rcx]
mov r10, rcx
mov r11d, r12d
mov eax, r12d
mov r9d, r12d
mov ebx, r12d
mov edi, dword [rdx]
cmp edi, 1
jne 0x1401d0faa
mov r8, qword [rcx + 8]
cmp qword [r8], rax
jne 0x1401d0faa
mov rax, qword [r14]
mov ecx, dword [rax]
cmp ecx, dword [r10 + 0x10]
jg 0x1401d0fd1
mov dword [rdx], ecx
mov rax, qword [r10]
mov rdx, qword [r14 + 8]
mov rcx, qword [r10 + 8]
movsxd r8, dword [rax]
shl r8, 3
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1401d127f
mov rcx, qword [r14]
mov r8d, dword [rcx]
cmp r8d, 1
jne 0x1401d0fc3
mov rcx, qword [r14 + 8]
cmp qword [rcx], rax
je 0x1401d127f
cmp r8d, edi
jg 0x1401d1108
test r8d, r8d
jg 0x1401d0fdb
mov dword [rdx], r12d
xor al, al
jmp 0x1401d1281
mov r15, r12
movabs rdi, 0xfffffffffffff
movabs rsi, 0x8000000000000
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [r14 + 8]
lea r15, [r15 + 8]
mov r8, qword [r10 + 8]
add r9, rsi
inc ebx
add rax, qword [r15 + rcx - 8]
add r11, qword [r8 + r15 - 8]
mov rdx, rax
xor rdx, r11
sar rax, 0x34
and rdx, rdi
sar r11, 0x34
add r9, rdx
mov rcx, r9
sar r9, 0x34
and rcx, rdi
sub rcx, rsi
mov qword [r8 + r15 - 8], rcx
mov rcx, qword [r14]
cmp ebx, dword [rcx]
jl 0x1401d1000
mov rdx, qword [r10]
cmp ebx, dword [rdx]
jge 0x1401d109f
movsxd rcx, ebx
lea r14, [rcx*8]
nop word [rax + rax]
mov r8, qword [r10 + 8]
lea r14, [r14 + 8]
add r9, rsi
mov rdx, rax
sar rax, 0x34
inc ebx
add r11, qword [r8 + r14 - 8]
xor rdx, r11
sar r11, 0x34
and rdx, rdi
add r9, rdx
mov rcx, r9
sar r9, 0x34
and rcx, rdi
sub rcx, rsi
mov qword [r8 + r14 - 8], rcx
mov rdx, qword [r10]
cmp ebx, dword [rdx]
jl 0x1401d1060
xor rax, r11
add r9, rax
je 0x1401d10c6
movsxd rcx, dword [rdx]
cmp ecx, dword [r10 + 0x10]
jge 0x1401d0fd1
lea eax, [rcx + 1]
mov dword [rdx], eax
mov rax, qword [r10 + 8]
mov qword [rax + rcx*8], r9
jmp 0x1401d127f
mov eax, dword [rdx]
cmp eax, 1
jle 0x1401d127f
nop dword [rax]
nop word [rax + rax]
movsxd rcx, eax
lea r8d, [rax - 1]
mov rax, qword [r10 + 8]
cmp qword [rax + rcx*8 - 8], r12
jne 0x1401d127f
mov dword [rdx], r8d
mov rdx, qword [r10]
mov eax, dword [rdx]
cmp eax, 1
jg 0x1401d10e0
jmp 0x1401d127f
test edi, edi
jle 0x1401d1281
mov qword [rsp + 0x40], rbp
mov r15, r12
movabs rdi, 0xfffffffffffff
movabs rsi, 0x8000000000000
nop dword [rax]
mov rcx, qword [r14 + 8]
lea r15, [r15 + 8]
mov r8, qword [r10 + 8]
add r9, rsi
inc ebx
add rax, qword [r15 + rcx - 8]
add r11, qword [r8 + r15 - 8]
mov rdx, rax
xor rdx, r11
sar rax, 0x34
and rdx, rdi
sar r11, 0x34
add r9, rdx
mov rcx, r9
sar r9, 0x34
and rcx, rdi
sub rcx, rsi
mov qword [r8 + r15 - 8], rcx
mov r8, qword [r10]
cmp ebx, dword [r8]
jl 0x1401d1130
mov rcx, qword [r14]
mov edx, dword [rcx]
cmp dword [r10 + 0x10], edx
cmovl edx, dword [r10 + 0x10]
mov dword [r8], edx
mov rdx, qword [r10]
mov ebp, dword [rdx]
cmp ebx, ebp
jge 0x1401d11e5
movsxd rcx, ebx
lea r8, [rcx*8]
nop
mov rcx, qword [r14 + 8]
lea r8, [r8 + 8]
add r9, rsi
inc ebx
add rax, qword [r8 + rcx - 8]
mov rcx, qword [r10 + 8]
mov rdx, rax
xor rdx, r11
sar rax, 0x34
and rdx, rdi
sar r11, 0x34
add r9, rdx
mov rdx, r9
sar r9, 0x34
and rdx, rdi
sub rdx, rsi
mov qword [r8 + rcx - 8], rdx
mov rdx, qword [r10]
mov ebp, dword [rdx]
cmp ebx, ebp
jl 0x1401d11a0
mov rcx, qword [r14]
movsxd r8, dword [rcx]
cmp r8d, ebp
mov rbp, qword [rsp + 0x40]
jle 0x1401d123f
cmp ebx, r8d
jge 0x1401d123f
mov rcx, qword [r14 + 8]
movsxd rdx, ebx
mov rbx, r8
lea r8, [rcx + rdx*8]
nop dword [rax + rax]
add rax, qword [r8]
mov rcx, rax
sar rax, 0x34
xor rcx, r11
sar r11, 0x34
and rcx, rdi
add r9, rcx
test rdi, r9
jne 0x1401d129b
sar r9, 0x34
inc rdx
add r8, 8
cmp rdx, rbx
jl 0x1401d1210
mov rdx, qword [r10]
xor rax, r11
add rax, r9
jne 0x1401d0fd1
mov eax, dword [rdx]
cmp eax, 1
jle 0x1401d127f
nop dword [rax]
nop word [rax + rax]
movsxd rcx, eax
lea r8d, [rax - 1]
mov rax, qword [r10 + 8]
cmp qword [rax + rcx*8 - 8], r12
jne 0x1401d127f
mov dword [rdx], r8d
mov rdx, qword [r10]
mov eax, dword [rdx]
cmp eax, 1
jg 0x1401d1260
mov al, 1
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
ret
mov rax, qword [r10]
mov dword [rax], r12d
xor al, al
jmp 0x1401d1281