Function at 0x1402acdf0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
movzx r9d, byte [r8 + 0xf]
lea r15, [0x14047d8d0]
movzx r11d, byte [r8 + 0xf]
lea r14, [r8 + 0xc]
and r9b, 0xf
shr r11b, 4
movzx eax, r9b
mov rsi, rcx
movzx r9d, r9b
mov rdi, rdx
mov ebp, 3
mov rax, qword [rcx + rax*8 + 0x80]
mov r10, qword [rcx + r9*8]
mov rbx, rax
mov r9, r10
shl rbx, 0x3c
movzx ecx, r11b
and r9d, 0xf
shr r10, 4
or rbx, r10
shr rax, 4
xor rbx, qword [rsi + rcx*8]
movzx ecx, r11b
xor rax, qword [rsi + rcx*8 + 0x80]
xor rax, qword [r15 + r9*8]
nop word [rax + rax]
movzx r8d, byte [r14 + 2]
mov r9, rax
movzx r11d, byte [r14 + 2]
and r8b, 0xf
shr rax, 4
mov rcx, rbx
and ecx, 0xf
shl r9, 0x3c
shr r11b, 4
shr rbx, 4
or r9, rbx
mov rdx, qword [r15 + rcx*8]
movzx ecx, r8b
xor r9, qword [rsi + rcx*8]
movzx ecx, r8b
movzx r8d, byte [r14 + 1]
and r8b, 0xf
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r9
xor rax, rdx
shr r9, 4
and ecx, 0xf
mov r10, rax
shr rax, 4
shl r10, 0x3c
or r10, r9
mov rdx, qword [r15 + rcx*8]
movzx ecx, r11b
xor r10, qword [rsi + rcx*8]
movzx ecx, r11b
movzx r11d, byte [r14 + 1]
shr r11b, 4
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r10
xor rax, rdx
shr r10, 4
and ecx, 0xf
mov r9, rax
shr rax, 4
shl r9, 0x3c
or r9, r10
mov rdx, qword [r15 + rcx*8]
movzx ecx, r8b
xor r9, qword [rsi + rcx*8]
movzx ecx, r8b
movzx r8d, byte [r14]
and r8b, 0xf
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r9
xor rax, rdx
shr r9, 4
and ecx, 0xf
mov r10, rax
shr rax, 4
shl r10, 0x3c
or r10, r9
mov rdx, qword [r15 + rcx*8]
movzx ecx, r11b
xor r10, qword [rsi + rcx*8]
movzx ecx, r11b
movzx r11d, byte [r14]
shr r11b, 4
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r10
xor rax, rdx
shr r10, 4
and ecx, 0xf
mov r9, rax
shl r9, 0x3c
or r9, r10
shr rax, 4
mov rdx, qword [r15 + rcx*8]
movzx ecx, r8b
xor r9, qword [rsi + rcx*8]
movzx ecx, r8b
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r9
xor rax, rdx
and ecx, 0xf
mov r10, rax
mov rdx, qword [r15 + rcx*8]
movzx r8d, byte [r14 - 1]
lea r14, [r14 - 5]
shr rax, 4
and r8b, 0xf
shr r9, 4
shl r10, 0x3c
or r10, r9
movzx ecx, r11b
xor r10, qword [rsi + rcx*8]
movzx ecx, r11b
movzx r11d, byte [r14 + 4]
shr r11b, 4
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r10
xor rax, rdx
shr r10, 4
and ecx, 0xf
mov r9, rax
shr rax, 4
shl r9, 0x3c
or r9, r10
mov rdx, qword [r15 + rcx*8]
movzx ecx, r8b
xor r9, qword [rsi + rcx*8]
movzx ecx, r8b
movzx r8d, byte [r14 + 3]
and r8b, 0xf
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r9
xor rax, rdx
shr r9, 4
and ecx, 0xf
mov r10, rax
shr rax, 4
shl r10, 0x3c
or r10, r9
mov rdx, qword [r15 + rcx*8]
movzx ecx, r11b
xor r10, qword [rsi + rcx*8]
movzx ecx, r11b
movzx r11d, byte [r14 + 3]
shr r11b, 4
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r10
xor rax, rdx
shr r10, 4
and ecx, 0xf
mov r9, rax
shr rax, 4
shl r9, 0x3c
or r9, r10
mov rdx, qword [r15 + rcx*8]
movzx ecx, r8b
xor r9, qword [rsi + rcx*8]
movzx ecx, r8b
xor rax, qword [rsi + rcx*8 + 0x80]
mov rcx, r9
xor rax, rdx
shr r9, 4
and ecx, 0xf
mov rbx, rax
shl rbx, 0x3c
shr rax, 4
or rbx, r9
mov rdx, qword [r15 + rcx*8]
movzx ecx, r11b
xor rbx, qword [rsi + rcx*8]
movzx ecx, r11b
xor rax, qword [rsi + rcx*8 + 0x80]
xor rax, rdx
sub rbp, 1
jne 0x1402ace80
mov rbp, qword [rsp + 0x20]
mov rcx, rax
mov rsi, qword [rsp + 0x28]
mov byte [rdi + 7], al
shr rcx, 0x20
mov byte [rdi + 3], cl
mov rcx, rax
shr rcx, 0x28
mov byte [rdi + 2], cl
mov rcx, rax
shr rcx, 0x30
mov byte [rdi + 1], cl
mov rcx, rax
shr rcx, 0x38
mov byte [rdi], cl
mov rcx, rax
shr rcx, 8
mov byte [rdi + 6], cl
mov rcx, rax
shr rax, 0x18
mov byte [rdi + 4], al
mov rax, rbx
shr rax, 0x20
mov byte [rdi + 0xb], al
mov rax, rbx
shr rax, 0x28
mov byte [rdi + 0xa], al
mov rax, rbx
shr rax, 0x30
mov byte [rdi + 9], al
mov rax, rbx
shr rax, 0x38
mov byte [rdi + 8], al
mov rax, rbx
shr rax, 8
mov byte [rdi + 0xe], al
mov rax, rbx
mov byte [rdi + 0xf], bl
shr rax, 0x10
shr rcx, 0x10
shr rbx, 0x18
mov byte [rdi + 0xc], bl
mov rbx, qword [rsp + 0x18]
mov byte [rdi + 5], cl
mov byte [rdi + 0xd], al
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret