Function at 0x14005fc60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov r8, qword [rdx + 8]
mov rbp, rcx
add r8, qword [rdx]
add rcx, 8
mov rdx, qword [rdx]
call fcn.140053e40
mov rsi, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x20]
mov rcx, rsi
sub rcx, rdx
cmp rcx, 0x10
jbe 0x14005fca8
lea rax, [rdx + 0x10]
jmp 0x14005fce5
jae 0x14005fce9
mov rax, qword [rbp + 0x30]
sub rax, rdx
cmp rax, 0x10
jae 0x14005fccc
lea r8, [rsp + 0x40]
mov edx, 0x10
lea rcx, [rbp + 0x20]
call fcn.140009f10
jmp 0x14005fce9
mov ebx, 0x10
xor edx, edx
sub rbx, rcx
mov rcx, rsi
mov r8, rbx
call sub.VCRUNTIME140.dll_memset
lea rax, [rbx + rsi]
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 8]
xor edi, edi
mov qword [rbp + 0x98], rdi
mov qword [rbp + 0xa0], rdi
mov rdx, qword [rax]
mov ebx, edx
mov r8d, edx
shl ebx, 0x10
mov ecx, r8d
and ecx, 0xff0000
mov r9, rdx
shr r9, 0x20
and edx, 0xff00
or ebx, edx
mov r10, r9
shl ebx, 8
and r8, 0xffffffffff000000
shl rbx, 8
or rbx, rcx
mov ecx, r9d
shl ecx, 0x10
and r9d, 0xff00
or ecx, r9d
shl rbx, 0x10
shl ecx, 8
or rbx, r8
shl rbx, 8
or rbx, rcx
mov rcx, r10
and ecx, 0xff0000
shr r10, 0x10
or rcx, r10
shr rcx, 8
or rbx, rcx
mov rcx, qword [rax + 8]
mov esi, ecx
mov edx, ecx
shl esi, 0x10
mov eax, edx
and eax, 0xff0000
mov r8, rcx
shr r8, 0x20
and ecx, 0xff00
or esi, ecx
mov r9, r8
shl esi, 8
lea rcx, [rbp + 0x68]
shl rsi, 8
and rdx, 0xffffffffff000000
or rsi, rax
mov eax, r8d
shl eax, 0x10
and r8d, 0xff00
or eax, r8d
shl rsi, 0x10
shl eax, 8
or rsi, rdx
shl rsi, 8
mov edx, 0x100
or rsi, rax
mov rax, r9
and eax, 0xff0000
shr r9, 0x10
or rax, r9
shr rax, 8
or rsi, rax
call fcn.140025c90
movabs r10, 0xe100000000000000
mov r8, rdi
mov r9d, 4
nop dword [rax]
mov rax, qword [rbp + 0x68]
mov rcx, rbx
shl rcx, 0x3f
mov qword [r8 + rax], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 8], rsi
mov rax, rsi
and eax, 1
shr rsi, 1
imul rax, r10
or rcx, rsi
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 + 0x20], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x28], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rcx, rbx
shl rcx, 0x3f
mov qword [rax + r8 + 0x40], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x48], rdx
mov rax, rdx
and eax, 1
shr rdx, 1
imul rax, r10
or rcx, rdx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 + 0x60], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x68], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rcx, rbx
shl rcx, 0x3f
mov qword [rax + r8 + 0x80], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x88], rdx
mov rax, rdx
and eax, 1
shr rdx, 1
imul rax, r10
or rcx, rdx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 + 0xa0], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0xa8], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov qword [rax + r8 + 0xc0], rbx
mov rax, qword [rbp + 0x68]
mov qword [r8 + rax + 0xc8], rdx
mov rcx, rbx
mov rax, rdx
shr rbx, 1
and eax, 1
shr rdx, 1
imul rax, r10
shl rcx, 0x3f
xor rbx, rax
or rcx, rdx
mov rax, qword [rbp + 0x68]
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 + 0xe0], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0xe8], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rcx, rbx
shl rcx, 0x3f
mov qword [rax + r8 + 0x100], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x108], rdx
mov rax, rdx
and eax, 1
shr rdx, 1
imul rax, r10
or rcx, rdx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 + 0x120], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x128], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rcx, rbx
shl rcx, 0x3f
mov qword [rax + r8 + 0x140], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x148], rdx
mov rax, rdx
and eax, 1
shr rdx, 1
imul rax, r10
or rcx, rdx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 + 0x160], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax + 0x168], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov qword [rax + r8 + 0x180], rbx
mov rax, qword [rbp + 0x68]
mov qword [r8 + rax + 0x188], rdx
mov rax, rdx
and eax, 1
imul rax, r10
mov rcx, rbx
shr rdx, 1
shr rbx, 1
lea r8, [r8 + 0x200]
xor rbx, rax
shl rcx, 0x3f
mov rax, qword [rbp + 0x68]
or rcx, rdx
mov rdx, rbx
shl rdx, 0x3f
mov qword [rax + r8 - 0x60], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax - 0x58], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rdx, rcx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rcx, rbx
shl rcx, 0x3f
mov qword [rax + r8 - 0x40], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax - 0x38], rdx
mov rax, rdx
and eax, 1
shr rdx, 1
imul rax, r10
or rcx, rdx
xor rbx, rax
mov rax, qword [rbp + 0x68]
mov rsi, rbx
shl rsi, 0x3f
mov qword [rax + r8 - 0x20], rbx
mov rax, qword [rbp + 0x68]
shr rbx, 1
mov qword [r8 + rax - 0x18], rcx
mov rax, rcx
and eax, 1
shr rcx, 1
imul rax, r10
or rsi, rcx
xor rbx, rax
sub r9, 1
jne 0x14005fe00
add rdi, 0x10
cmp rdi, 0x20
jne 0x14005fdf0
mov ecx, 1
call fcn.140029470
test al, al
je 0x14006018f
mov ecx, 2
call fcn.140029470
test al, al
je 0x14006018f
mov ecx, 0x20000
call fcn.140029470
test al, al
je 0x14006018f
mov edx, 8
lea rcx, [rbp + 0x80]
call fcn.140025c90
mov rdx, qword [rbp + 0x80]
mov rcx, qword [rbp + 8]
call fcn.14008fe40
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret