Function at 0x180160390
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov r11, rcx
lea r8, [rdx + 4]
lea r9, [rcx + 2]
mov r10d, 2
nop word [rax + rax]
movzx eax, byte [r8 - 4]
and al, 7
mov byte [r9 - 2], al
mov eax, dword [r8 - 4]
shr eax, 3
and al, 7
mov byte [r9 - 1], al
mov ecx, dword [r8 - 4]
shr ecx, 6
and cl, 7
mov byte [r9], cl
movzx eax, byte [r8]
and al, 1
shl al, 2
xor al, cl
mov byte [r9], al
mov eax, dword [r8]
shr eax, 1
and al, 7
mov byte [r9 + 1], al
mov eax, dword [r8]
shr eax, 4
and al, 7
mov byte [r9 + 2], al
mov ecx, dword [r8]
shr ecx, 7
and cl, 7
mov byte [r9 + 3], cl
movzx eax, byte [r8 + 4]
and al, 3
add al, al
xor al, cl
mov byte [r9 + 3], al
mov eax, dword [r8 + 4]
shr eax, 2
and al, 7
mov byte [r9 + 4], al
mov eax, dword [r8 + 4]
shr eax, 5
and al, 7
mov byte [r9 + 5], al
movzx eax, byte [r8 + 8]
and al, 7
mov byte [r9 + 6], al
mov eax, dword [r8 + 8]
shr eax, 3
and al, 7
mov byte [r9 + 7], al
mov ecx, dword [r8 + 8]
shr ecx, 6
and cl, 7
mov byte [r9 + 8], cl
movzx eax, byte [r8 + 0xc]
and al, 1
shl al, 2
xor al, cl
mov byte [r9 + 8], al
mov eax, dword [r8 + 0xc]
shr eax, 1
and al, 7
mov byte [r9 + 9], al
mov eax, dword [r8 + 0xc]
shr eax, 4
and al, 7
mov byte [r9 + 0xa], al
mov ecx, dword [r8 + 0xc]
shr ecx, 7
and cl, 7
mov byte [r9 + 0xb], cl
movzx eax, byte [r8 + 0x10]
and al, 3
add al, al
xor al, cl
mov byte [r9 + 0xb], al
mov eax, dword [r8 + 0x10]
shr eax, 2
and al, 7
mov byte [r9 + 0xc], al
mov eax, dword [r8 + 0x10]
shr eax, 5
and al, 7
mov byte [r9 + 0xd], al
movzx eax, byte [r8 + 0x14]
and al, 7
mov byte [r9 + 0xe], al
mov eax, dword [r8 + 0x14]
shr eax, 3
and al, 7
mov byte [r9 + 0xf], al
mov ecx, dword [r8 + 0x14]
shr ecx, 6
and cl, 7
mov byte [r9 + 0x10], cl
movzx eax, byte [r8 + 0x18]
and al, 1
shl al, 2
xor al, cl
mov byte [r9 + 0x10], al
mov eax, dword [r8 + 0x18]
shr eax, 1
and al, 7
mov byte [r9 + 0x11], al
mov eax, dword [r8 + 0x18]
shr eax, 4
and al, 7
mov byte [r9 + 0x12], al
mov ecx, dword [r8 + 0x18]
shr ecx, 7
and cl, 7
mov byte [r9 + 0x13], cl
movzx eax, byte [r8 + 0x1c]
and al, 3
add al, al
xor al, cl
mov byte [r9 + 0x13], al
mov eax, dword [r8 + 0x1c]
shr eax, 2
and al, 7
mov byte [r9 + 0x14], al
mov eax, dword [r8 + 0x1c]
shr eax, 5
and al, 7
mov byte [r9 + 0x15], al
movzx eax, byte [r8 + 0x20]
and al, 7
mov byte [r9 + 0x16], al
mov eax, dword [r8 + 0x20]
shr eax, 3
and al, 7
mov byte [r9 + 0x17], al
mov ecx, dword [r8 + 0x20]
shr ecx, 6
and cl, 7
mov byte [r9 + 0x18], cl
movzx eax, byte [r8 + 0x24]
and al, 1
shl al, 2
xor al, cl
mov byte [r9 + 0x18], al
mov eax, dword [r8 + 0x24]
shr eax, 1
and al, 7
mov byte [r9 + 0x19], al
mov eax, dword [r8 + 0x24]
shr eax, 4
and al, 7
mov byte [r9 + 0x1a], al
mov ecx, dword [r8 + 0x24]
shr ecx, 7
and cl, 7
mov byte [r9 + 0x1b], cl
movzx eax, byte [r8 + 0x28]
and al, 3
add al, al
xor al, cl
mov byte [r9 + 0x1b], al
mov eax, dword [r8 + 0x28]
shr eax, 2
and al, 7
mov byte [r9 + 0x1c], al
mov eax, dword [r8 + 0x28]
shr eax, 5
and al, 7
lea r8, [r8 + 0x3c]
mov byte [r9 + 0x1d], al
lea r9, [r9 + 0x28]
movzx eax, byte [r8 - 0x10]
and al, 7
mov byte [r9 - 0xa], al
mov eax, dword [r8 - 0x10]
shr eax, 3
and al, 7
mov byte [r9 - 9], al
mov ecx, dword [r8 - 0x10]
shr ecx, 6
and cl, 7
mov byte [r9 - 8], cl
movzx eax, byte [r8 - 0xc]
and al, 1
shl al, 2
xor al, cl
mov byte [r9 - 8], al
mov eax, dword [r8 - 0xc]
shr eax, 1
and al, 7
mov byte [r9 - 7], al
mov eax, dword [r8 - 0xc]
shr eax, 4
and al, 7
mov byte [r9 - 6], al
mov ecx, dword [r8 - 0xc]
shr ecx, 7
and cl, 7
mov byte [r9 - 5], cl
movzx eax, byte [r8 - 8]
and al, 3
add al, al
xor al, cl
mov byte [r9 - 5], al
mov eax, dword [r8 - 8]
shr eax, 2
and al, 7
mov byte [r9 - 4], al
mov eax, dword [r8 - 8]
shr eax, 5
and al, 7
mov byte [r9 - 3], al
sub r10, 1
jne 0x1801603b0
movzx eax, byte [rdx + 0x78]
mov r10, r11
and al, 7
mov ebx, 0x54
mov byte [r11 + 0x50], al
mov eax, dword [rdx + 0x78]
shr eax, 3
and al, 7
mov byte [r11 + 0x51], al
mov ecx, dword [rdx + 0x78]
shr ecx, 6
and cl, 7
mov byte [r11 + 0x52], cl
movzx eax, byte [rdx + 0x7c]
and al, 1
shl al, 2
xor al, cl
mov byte [r11 + 0x52], al
mov eax, dword [rdx + 0x7c]
shr eax, 1
and al, 7
mov byte [r11 + 0x53], al
mov eax, dword [rdx + 0x7c]
shr eax, 4
and al, 7
mov byte [r11 + 0x54], al
xor al, al
movzx r9d, byte [r11]
add r9b, al
lea r10, [r10 + 1]
movzx eax, r9b
movzx ecx, r9b
and cl, 7
sar al, 3
add byte [r10], al
movzx edx, cl
movzx r9d, byte [r10]
movzx eax, cl
shr al, 2
movzx ecx, al
shl cl, 3
sub dl, cl
mov byte [r10 - 1], dl
sub rbx, 1
jne 0x1801606b1
add byte [r11 + 0x54], al
mov rbx, qword [rsp + 8]
ret