Function at 0x140016cf0
Capabilities:
Encode data using xor

Disassembly:
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx + 4], xmm0
mov r11, rdx
mov r10d, 2
movups xmmword [rcx + 0x14], xmm0
movups xmmword [rcx + 0x24], xmm0
movups xmmword [rcx + 0x34], xmm0
movups xmmword [rcx + 0x44], xmm0
mov qword [rcx + 0x54], rax
mov dword [rcx], r8d
nop dword [rax]
movzx eax, r8b
lea edx, [r10 - 2]
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
imul r8d, r8d, 0xbc8f
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 - 1]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
movzx eax, r8b
imul r8d, r8d, 0xbc8f
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
mov edx, r10d
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 1]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
imul r8d, r9d, 0xbc8f
movzx eax, r9b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 2]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 3]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
imul r8d, r9d, 0xbc8f
movzx eax, r9b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1e
lea edx, [r10 + 4]
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 5]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
imul r8d, r9d, 0xbc8f
movzx eax, r9b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 6]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 7]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
imul r8d, r9d, 0xbc8f
movzx eax, r9b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 8]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 9]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
movzx eax, r9b
imul r8d, r9d, 0xbc8f
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 0xa]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 0xb]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
imul r8d, r9d, 0xbc8f
movzx eax, r9b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 0xc]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
imul r9d, r8d, 0xbc8f
movzx eax, r8b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 0xd]
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r9d, eax
imul r8d, r9d, 0xbc8f
movzx eax, r9b
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
lea edx, [r10 + 0xe]
shr eax, 0x1e
add r10d, 0x11
imul eax, eax, 0x7fffffff
sub r8d, eax
movzx eax, r8b
imul r8d, r8d, 0xbc8f
xor al, byte [rdx + r11]
mov byte [rdx + rcx + 4], al
mov eax, 3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1e
imul eax, eax, 0x7fffffff
sub r8d, eax
lea eax, [r10 - 2]
cmp eax, 0x55
jb 0x140016d20
mov rax, rcx
ret