Function at 0x14009be50
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xb0
mov rbx, qword [rbp + 0x7f]
lea r8, [r8*8]
lea r9, [r9*8]
movaps xmmword [rax - 0x38], xmm6
mov r12d, r8d
mov r13d, r9d
mov r15, rdx
mov r14d, 7
mov rdi, qword [rbx + 0x30]
mov rsi, qword [rbx + 0x38]
xor r12d, edi
xor rdi, r8
xor r13d, esi
shr rdi, 0x20
xor rsi, r9
shr rsi, 0x20
nop word [rax + rax]
movups xmm6, xmmword [rbx + 0x50]
lea r8, [rbp - 0x61]
movups xmm1, xmmword [rbx + 0x40]
lea rdx, [rbp - 0x51]
lea rcx, [rbp - 0x41]
movaps xmmword [rbp - 0x61], xmm6
movaps xmmword [rbp - 0x51], xmm1
call fcn.1400b07f0
movups xmm1, xmmword [rbx + 0x40]
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x61]
movups xmm0, xmmword [rax]
lea rcx, [rbp - 0x31]
movaps xmmword [rbp - 0x51], xmm1
movups xmmword [rbx + 0x50], xmm0
movups xmm0, xmmword [rbx + 0x30]
movaps xmmword [rbp - 0x61], xmm0
call fcn.1400b07f0
movups xmm1, xmmword [rbx + 0x30]
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x61]
movups xmm0, xmmword [rax]
lea rcx, [rbp - 0x21]
movaps xmmword [rbp - 0x51], xmm1
movups xmmword [rbx + 0x40], xmm0
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rbp - 0x61], xmm0
call fcn.1400b07f0
movups xmm1, xmmword [rbx + 0x20]
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x61]
movups xmm0, xmmword [rax]
lea rcx, [rbp - 0x11]
movaps xmmword [rbp - 0x51], xmm1
movups xmmword [rbx + 0x30], xmm0
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rbp - 0x61], xmm0
call fcn.1400b07f0
movups xmm1, xmmword [rbx + 0x10]
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x61]
movups xmm0, xmmword [rax]
lea rcx, [rbp - 1]
movaps xmmword [rbp - 0x51], xmm1
movups xmmword [rbx + 0x20], xmm0
movups xmm0, xmmword [rbx]
movaps xmmword [rbp - 0x61], xmm0
call fcn.1400b07f0
movups xmm1, xmmword [rbx]
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x61]
movdqa xmmword [rbp - 0x61], xmm6
movups xmm0, xmmword [rax]
lea rcx, [rbp + 0xf]
movaps xmmword [rbp - 0x51], xmm1
movups xmmword [rbx + 0x10], xmm0
call fcn.1400b07f0
movups xmm0, xmmword [rax]
movq rcx, xmm0
psrldq xmm0, 8
mov eax, ecx
shr rcx, 0x20
xor ecx, edi
xor eax, r12d
mov dword [rbx], eax
mov dword [rbx + 4], ecx
movq rcx, xmm0
mov eax, ecx
shr rcx, 0x20
xor ecx, esi
xor eax, r13d
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
sub r14, 1
jne 0x14009bec0
mov r14, qword [rbp + 0x5f]
cmp r15, 0x10
jne 0x14009c0df
movups xmm0, xmmword [rbx]
movups xmm2, xmmword [rbx + 0x20]
movups xmm4, xmmword [rbx + 0x40]
movups xmm5, xmmword [rbx + 0x50]
movups xmm3, xmmword [rbx + 0x30]
movups xmm1, xmmword [rbx + 0x10]
movq rdx, xmm0
movq r8, xmm2
mov edi, edx
psrldq xmm0, 8
shr rdx, 0x20
movq rbx, xmm1
xor edi, ebx
psrldq xmm1, 8
xor edi, r8d
shr rbx, 0x20
xor ebx, edx
shr r8, 0x20
movq rax, xmm3
psrldq xmm2, 8
xor edi, eax
psrldq xmm3, 8
shr rax, 0x20
movq r9, xmm4
xor ebx, eax
psrldq xmm4, 8
xor edi, r9d
xor ebx, r8d
shr r9, 0x20
movq rcx, xmm5
xor edi, ecx
psrldq xmm5, 8
shr rcx, 0x20
movq r10, xmm1
xor ebx, ecx
mov dword [r14], edi
xor ebx, r9d
movq r8, xmm2
movq r9, xmm0
mov dword [r14 + 4], ebx
mov r11d, r9d
movq rcx, xmm3
xor r11d, r10d
shr r9, 0x20
xor r11d, r8d
shr r10, 0x20
xor r11d, ecx
shr r8, 0x20
xor r10d, r9d
shr rcx, 0x20
xor r10d, ecx
movq rdx, xmm4
xor r11d, edx
movq rax, xmm5
xor r11d, eax
shr rdx, 0x20
xor r10d, r8d
shr rax, 0x20
xor r10d, eax
mov dword [r14 + 8], r11d
xor r10d, edx
mov dword [r14 + 0xc], r10d
jmp 0x14009c1ae
cmp r15, 0x20
jne 0x14009c1a1
mov r10, qword [rbx]
mov rcx, qword [rbx + 0x10]
mov r9d, r10d
mov rax, qword [rbx + 0x20]
xor r9d, ecx
mov r8, qword [rbx + 8]
xor r9d, eax
shr rax, 0x20
mov edx, r8d
shr rcx, 0x20
shr r10, 0x20
xor r10d, eax
shr r8, 0x20
mov rax, qword [rbx + 0x28]
xor r10d, ecx
mov rcx, qword [rbx + 0x18]
mov dword [r14], r9d
xor edx, ecx
mov dword [r14 + 4], r10d
xor edx, eax
mov dword [r14 + 8], edx
shr rax, 0x20
xor r8d, eax
shr rcx, 0x20
xor r8d, ecx
mov dword [r14 + 0xc], r8d
mov r10, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x40]
mov r9d, r10d
mov rax, qword [rbx + 0x50]
xor r9d, ecx
mov r8, qword [rbx + 0x38]
xor r9d, eax
shr rax, 0x20
mov edx, r8d
shr rcx, 0x20
shr r10, 0x20
xor r10d, eax
shr r8, 0x20
mov rax, qword [rbx + 0x58]
xor r10d, ecx
mov rcx, qword [rbx + 0x48]
xor edx, ecx
mov dword [r14 + 0x10], r9d
xor edx, eax
shr rcx, 0x20
shr rax, 0x20
xor r8d, eax
mov dword [r14 + 0x14], r10d
xor r8d, ecx
mov dword [r14 + 0x18], edx
mov dword [r14 + 0x1c], r8d
jmp 0x14009c1ae
mov r8, r15
xor edx, edx
mov rcx, r14
call sub.VCRUNTIME140.dll_memset
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret