Function at 0x14016c960
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
mov eax, 0x90
call fcn.1401c27d0
sub rsp, rax
mov rax, qword [0x1402bcf00]
xor rax, rsp
mov qword [rbp + 0x17], rax
movups xmm0, xmmword [rdx]
mov qword [rbp - 0x41], rdx
movups xmm1, xmmword [rdx + 0x10]
mov qword [rbp - 0x49], rcx
movaps xmmword [rbp - 0x39], xmm0
movups xmm0, xmmword [rdx + 0x20]
mov r10d, dword [rbp - 0x2d]
mov ecx, dword [rbp - 0x35]
mov r8d, dword [rbp - 0x39]
movaps xmmword [rbp - 0x29], xmm1
movups xmm1, xmmword [rdx + 0x30]
mov eax, dword [rbp - 0x21]
mov ebx, dword [rbp - 0x1d]
mov edx, dword [rbp - 0x31]
movaps xmmword [rbp - 0x19], xmm0
mov r15d, dword [rbp - 0xd]
mov r12d, dword [rbp - 0x11]
mov r13d, dword [rbp - 0x15]
mov r9d, dword [rbp - 0x19]
movaps xmmword [rbp - 9], xmm1
mov r11d, dword [rbp + 3]
mov r14d, dword [rbp - 1]
mov esi, dword [rbp - 5]
mov edi, dword [rbp - 9]
mov dword [rbp - 0x59], eax
mov eax, dword [rbp - 0x25]
mov dword [rbp - 0x5d], eax
mov eax, dword [rbp - 0x29]
mov dword [rbp - 0x61], eax
mov qword [rbp - 0x51], 0xa
add ecx, dword [rbp - 0x5d]
add r8d, eax
add edx, dword [rbp - 0x59]
xor esi, ecx
xor edi, r8d
rol esi, 0x10
xor r14d, edx
rol edi, 0x10
add r9d, edi
rol r14d, 0x10
add r12d, r14d
add r10d, ebx
xor r11d, r10d
add r13d, esi
rol r11d, 0x10
mov eax, r9d
xor eax, dword [rbp - 0x61]
add r15d, r11d
rol eax, 0xc
add r8d, eax
xor edi, r8d
mov dword [rbp - 0x65], r8d
rol edi, 8
add r9d, edi
mov r8d, r9d
xor r8d, eax
mov eax, r13d
xor eax, dword [rbp - 0x5d]
rol eax, 0xc
add ecx, eax
rol r8d, 7
xor esi, ecx
mov dword [rbp - 0x69], ecx
rol esi, 8
add r13d, esi
mov ecx, r13d
xor ecx, eax
mov eax, r12d
xor eax, dword [rbp - 0x59]
rol eax, 0xc
add edx, eax
rol ecx, 7
xor r14d, edx
mov dword [rbp - 0x61], edx
rol r14d, 8
add r12d, r14d
mov edx, r12d
xor edx, eax
mov eax, r15d
xor eax, ebx
rol edx, 7
rol eax, 0xc
add r10d, eax
xor r11d, r10d
rol r11d, 8
add r15d, r11d
mov ebx, r15d
xor ebx, eax
mov eax, dword [rbp - 0x65]
add eax, ecx
rol ebx, 7
xor r11d, eax
mov dword [rbp - 0x65], eax
rol r11d, 0x10
add r12d, r11d
mov eax, r12d
xor eax, ecx
mov ecx, dword [rbp - 0x65]
rol eax, 0xc
add ecx, eax
xor r11d, ecx
mov dword [rbp - 0x65], ecx
mov dword [rbp - 0x39], ecx
rol r11d, 8
add r12d, r11d
mov ecx, r12d
xor ecx, eax
mov eax, dword [rbp - 0x69]
rol ecx, 7
mov dword [rbp - 0x5d], ecx
mov dword [rbp - 0x25], ecx
add eax, edx
add r10d, r8d
mov dword [rbp - 0x69], eax
xor eax, edi
rol eax, 0x10
add r15d, eax
mov ecx, r15d
xor ecx, edx
mov edx, dword [rbp - 0x69]
rol ecx, 0xc
add edx, ecx
mov edi, edx
mov dword [rbp - 0x69], edx
xor edi, eax
mov dword [rbp - 0x35], edx
mov edx, dword [rbp - 0x61]
add edx, ebx
rol edi, 8
add r15d, edi
mov eax, r15d
xor eax, ecx
rol eax, 7
mov dword [rbp - 0x59], eax
mov dword [rbp - 0x21], eax
mov eax, edx
xor eax, esi
rol eax, 0x10
add r9d, eax
xor ebx, r9d
rol ebx, 0xc
add edx, ebx
mov esi, edx
mov dword [rbp - 0x31], edx
xor esi, eax
mov eax, r10d
xor eax, r14d
rol esi, 8
rol eax, 0x10
add r9d, esi
add r13d, eax
xor ebx, r9d
mov ecx, r13d
rol ebx, 7
xor ecx, r8d
mov r8d, dword [rbp - 0x65]
rol ecx, 0xc
add r10d, ecx
mov r14d, r10d
xor r14d, eax
rol r14d, 8
add r13d, r14d
mov eax, r13d
xor eax, ecx
mov ecx, dword [rbp - 0x69]
rol eax, 7
sub qword [rbp - 0x51], 1
mov dword [rbp - 0x61], eax
mov dword [rbp - 0x29], eax
jne 0x14016ca00
mov dword [rbp - 0x19], r9d
lea rax, [rbp + 3]
mov r9, qword [rbp - 0x49]
mov dword [rbp - 0x1d], ebx
xor ebx, ebx
mov dword [rbp - 0x2d], r10d
mov r10, qword [rbp - 0x41]
mov dword [rbp + 3], r11d
lea rcx, [r9 + 0x3c]
mov dword [rbp - 9], edi
mov dword [rbp - 5], esi
mov dword [rbp - 1], r14d
mov dword [rbp - 0xd], r15d
mov dword [rbp - 0x11], r12d
mov dword [rbp - 0x15], r13d
cmp r9, rax
ja 0x14016cbde
lea rax, [rbp - 0x39]
cmp rcx, rax
jae 0x14016cc45
lea rax, [r10 + 0x3c]
cmp r9, rax
ja 0x14016cbec
cmp rcx, r10
jae 0x14016cc45
mov ecx, 2
lea r11, [rbp - 0x39]
mov rdx, r10
lea r8, [rbp - 0x39]
sub rdx, r9
lea rax, [r9 + 0x10]
sub r11, r9
lea ebx, [rcx + 0xe]
sub r8, r9
nop dword [rax]
movdqu xmm0, xmmword [rdx + rax - 0x10]
movdqu xmm1, xmmword [r11 + rax - 0x10]
movdqu xmm2, xmmword [r8 + rax]
lea rax, [rax + 0x20]
paddd xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rdx + rax - 0x20]
paddd xmm2, xmm0
movdqu xmmword [rax - 0x20], xmm2
sub rcx, 1
jne 0x14016cc10
movsxd rdx, ebx
cmp rdx, 0x10
jge 0x14016cc7d
lea rax, [rbp - 0x39]
sub r10, rax
lea rax, [rbp - 0x39]
sub r9, rax
nop dword [rax]
lea rax, [r10 + rdx*4]
mov ecx, dword [rbp + rax - 0x39]
lea rax, [r9 + rdx*4]
add ecx, dword [rbp + rdx*4 - 0x39]
inc rdx
mov dword [rbp + rax - 0x39], ecx
cmp rdx, 0x10
jl 0x14016cc60
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1401c2260
mov rbx, qword [rsp + 0xe0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret