Function at 0x140001740
Capabilities:
Encode data using xor

Disassembly:
test r8d, r8d
jle 0x140001951
lea r10, [rdx + 2]
lea rax, [rdx + 0x29]
mov edx, r8d
lea r9, [rcx + 2]
nop dword [rax + rax]
movzx ecx, byte [r10 - 2]
xor cl, byte [rax - 1]
mov byte [r9 - 2], cl
movzx ecx, byte [r10 - 1]
xor cl, byte [rax]
mov byte [r9 - 1], cl
movzx ecx, byte [r10]
xor cl, byte [rax + 1]
mov byte [r9], cl
movzx ecx, byte [r10 + 1]
xor cl, byte [rax + 2]
mov byte [r9 + 1], cl
movzx ecx, byte [r10 + 2]
xor cl, byte [rax + 3]
mov byte [r9 + 2], cl
movzx ecx, byte [r10 + 3]
xor cl, byte [rax + 4]
mov byte [r9 + 3], cl
movzx ecx, byte [r10 + 4]
xor cl, byte [rax + 5]
mov byte [r9 + 4], cl
movzx ecx, byte [r10 + 5]
xor cl, byte [rax + 6]
mov byte [r9 + 5], cl
movzx ecx, byte [r10 + 6]
xor cl, byte [rax + 7]
mov byte [r9 + 6], cl
movzx ecx, byte [r10 + 7]
xor cl, byte [rax + 8]
mov byte [r9 + 7], cl
movzx ecx, byte [r10 + 8]
xor cl, byte [rax - 1]
mov byte [r9 + 8], cl
movzx ecx, byte [r10 + 9]
xor cl, byte [rax]
mov byte [r9 + 9], cl
movzx ecx, byte [r10 + 0xa]
xor cl, byte [rax + 1]
mov byte [r9 + 0xa], cl
movzx ecx, byte [r10 + 0xb]
xor cl, byte [rax + 2]
mov byte [r9 + 0xb], cl
movzx ecx, byte [r10 + 0xc]
xor cl, byte [rax + 3]
mov byte [r9 + 0xc], cl
movzx ecx, byte [r10 + 0xd]
xor cl, byte [rax + 4]
mov byte [r9 + 0xd], cl
movzx ecx, byte [r10 + 0xe]
xor cl, byte [rax + 5]
mov byte [r9 + 0xe], cl
movzx ecx, byte [r10 + 0xf]
xor cl, byte [rax + 6]
mov byte [r9 + 0xf], cl
movzx ecx, byte [r10 + 0x10]
xor cl, byte [rax + 7]
mov byte [r9 + 0x10], cl
movzx ecx, byte [r10 + 0x11]
xor cl, byte [rax + 8]
mov byte [r9 + 0x11], cl
movzx ecx, byte [r10 + 0x12]
xor cl, byte [rax - 1]
mov byte [r9 + 0x12], cl
movzx ecx, byte [r10 + 0x13]
xor cl, byte [rax]
mov byte [r9 + 0x13], cl
movzx ecx, byte [r10 + 0x14]
xor cl, byte [rax + 1]
mov byte [r9 + 0x14], cl
movzx ecx, byte [r10 + 0x15]
xor cl, byte [rax + 2]
mov byte [r9 + 0x15], cl
movzx ecx, byte [r10 + 0x16]
xor cl, byte [rax + 3]
mov byte [r9 + 0x16], cl
movzx ecx, byte [r10 + 0x17]
xor cl, byte [rax + 4]
mov byte [r9 + 0x17], cl
movzx ecx, byte [r10 + 0x18]
xor cl, byte [rax + 5]
mov byte [r9 + 0x18], cl
movzx ecx, byte [r10 + 0x19]
lea r9, [r9 + 0x28]
xor cl, byte [rax + 6]
lea rax, [rax + 0x32]
mov byte [r9 - 0xf], cl
movzx ecx, byte [r10 + 0x1a]
lea r10, [r10 + 0x32]
xor cl, byte [rax - 0x2b]
mov byte [r9 - 0xe], cl
movzx ecx, byte [r10 - 0x17]
xor cl, byte [rax - 0x2a]
mov byte [r9 - 0xd], cl
movzx ecx, byte [r10 - 0x16]
xor cl, byte [rax - 0x33]
mov byte [r9 - 0xc], cl
movzx ecx, byte [r10 - 0x15]
xor cl, byte [rax - 0x32]
mov byte [r9 - 0xb], cl
movzx ecx, byte [r10 - 0x14]
xor cl, byte [rax - 0x31]
mov byte [r9 - 0xa], cl
movzx ecx, byte [r10 - 0x13]
xor cl, byte [rax - 0x30]
mov byte [r9 - 9], cl
movzx ecx, byte [r10 - 0x12]
xor cl, byte [rax - 0x2f]
mov byte [r9 - 8], cl
movzx ecx, byte [r10 - 0x11]
xor cl, byte [rax - 0x2e]
mov byte [r9 - 7], cl
movzx ecx, byte [r10 - 0x10]
xor cl, byte [rax - 0x2d]
mov byte [r9 - 6], cl
movzx ecx, byte [r10 - 0xf]
xor cl, byte [rax - 0x2c]
mov byte [r9 - 5], cl
movzx ecx, byte [r10 - 0xe]
xor cl, byte [rax - 0x2b]
mov byte [r9 - 4], cl
movzx ecx, byte [r10 - 0xd]
xor cl, byte [rax - 0x2a]
mov byte [r9 - 3], cl
sub rdx, 1
jne 0x140001760
ret