Function at 0x1401d3280
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 0x1401d32ea
mov r8, qword [rcx + 8]
cmp qword [r8], rax
jne 0x1401d32ea
mov rax, qword [r14]
mov ecx, dword [rax]
cmp ecx, dword [r10 + 0x10]
jg 0x1401d3311
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 0x1401d35bf
mov rcx, qword [r14]
mov r8d, dword [rcx]
cmp r8d, 1
jne 0x1401d3303
mov rcx, qword [r14 + 8]
cmp qword [rcx], rax
je 0x1401d35bf
cmp r8d, edi
jg 0x1401d3448
test r8d, r8d
jg 0x1401d331b
mov dword [rdx], r12d
xor al, al
jmp 0x1401d35c1
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 0x1401d3340
mov rdx, qword [r10]
cmp ebx, dword [rdx]
jge 0x1401d33df
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 0x1401d33a0
xor rax, r11
add r9, rax
je 0x1401d3406
movsxd rcx, dword [rdx]
cmp ecx, dword [r10 + 0x10]
jge 0x1401d3311
lea eax, [rcx + 1]
mov dword [rdx], eax
mov rax, qword [r10 + 8]
mov qword [rax + rcx*8], r9
jmp 0x1401d35bf
mov eax, dword [rdx]
cmp eax, 1
jle 0x1401d35bf
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 0x1401d35bf
mov dword [rdx], r8d
mov rdx, qword [r10]
mov eax, dword [rdx]
cmp eax, 1
jg 0x1401d3420
jmp 0x1401d35bf
test edi, edi
jle 0x1401d35c1
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 0x1401d3470
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 0x1401d3525
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 0x1401d34e0
mov rcx, qword [r14]
movsxd r8, dword [rcx]
cmp r8d, ebp
mov rbp, qword [rsp + 0x40]
jle 0x1401d357f
cmp ebx, r8d
jge 0x1401d357f
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 0x1401d35db
sar r9, 0x34
inc rdx
add r8, 8
cmp rdx, rbx
jl 0x1401d3550
mov rdx, qword [r10]
xor rax, r11
add rax, r9
jne 0x1401d3311
mov eax, dword [rdx]
cmp eax, 1
jle 0x1401d35bf
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 0x1401d35bf
mov dword [rdx], r8d
mov rdx, qword [r10]
mov eax, dword [rdx]
cmp eax, 1
jg 0x1401d35a0
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 0x1401d35c1