Function at 0x1400bab44
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov rax, rcx
mov rdi, rdx
and eax, 7
mov rbx, rcx
mov r11, rdx
mov r10, r8
movabs r9, 0x9e3779b97f4a7c13
cmp rdx, 0x18
jb 0x1400bae4d
test rax, rax
movabs rax, 0xaaaaaaaaaaaaaaab
je 0x1400bad63
mul rdi
shr rdx, 4
imul r11, rdx, 0xffffffffffffffe8
add r11, rdi
movzx eax, byte [rbx + 0xe]
movzx ecx, byte [rbx + 0xf]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0xd]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0xc]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0xb]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0xa]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 9]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 8]
shl rcx, 8
add r8, rax
add r8, rcx
movzx eax, byte [rbx + 0x16]
movzx ecx, byte [rbx + 0x17]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0x15]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0x14]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0x13]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0x12]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0x11]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 0x10]
shl rcx, 8
add r9, rax
movzx eax, byte [rbx + 6]
add r9, rcx
movzx ecx, byte [rbx + 7]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 5]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 4]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 3]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 2]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx + 1]
shl rcx, 8
add rcx, rax
movzx eax, byte [rbx]
shl rcx, 8
add rcx, rax
mov rax, r9
shr rax, 0x2b
sub rcx, r9
sub rcx, r8
sub r8, r9
add r10, rcx
xor r10, rax
sub r8, r10
mov rax, r10
shl rax, 9
xor r8, rax
sub r9, r8
sub r9, r10
mov rax, r8
add rbx, 0x18
shr rax, 8
xor r9, rax
sub r10, r9
mov rax, r9
shr rax, 0x26
sub r10, r8
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x17
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 5
xor r9, rax
sub r10, r9
mov rax, r9
shr rax, 0x23
sub r10, r8
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x31
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 0xb
xor r9, rax
sub r10, r9
mov rax, r9
shr rax, 0xc
sub r10, r8
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x12
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 0x16
xor r9, rax
sub rdx, 1
jne 0x1400bab95
jmp 0x1400bae4d
mul rdi
shr rdx, 4
imul r11, rdx, 0xffffffffffffffe8
add r11, rdi
add r9, qword [rbx + 0x10]
add r8, qword [rbx + 8]
mov rax, r9
mov rcx, qword [rbx]
add rbx, 0x18
shr rax, 0x2b
sub rcx, r9
sub rcx, r8
sub r8, r9
add r10, rcx
xor r10, rax
sub r8, r10
mov rax, r10
shl rax, 9
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 8
xor r9, rax
sub r10, r9
mov rax, r9
shr rax, 0x26
sub r10, r8
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x17
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 5
xor r9, rax
sub r10, r9
mov rax, r9
shr rax, 0x23
sub r10, r8
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x31
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 0xb
xor r9, rax
sub r10, r9
mov rax, r9
shr rax, 0xc
sub r10, r8
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x12
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 0x16
xor r9, rax
sub rdx, 1
jne 0x1400bad71
add r9, rdi
cmp r11, 0xc
ja 0x1400baeda
je 0x1400bafb0
cmp r11, 6
ja 0x1400baea3
je 0x1400bafee
sub r11, 1
je 0x1400bb025
sub r11, 1
je 0x1400bb01a
sub r11, 1
je 0x1400bb00f
sub r11, 1
je 0x1400bb004
cmp r11, 1
je 0x1400baff9
jmp 0x1400bb02b
sub r11, 7
je 0x1400bafe3
sub r11, 1
je 0x1400bafd8
sub r11, 1
je 0x1400bafd1
sub r11, 1
je 0x1400bafc6
cmp r11, 1
je 0x1400bafbb
jmp 0x1400bb02b
cmp r11, 0x12
ja 0x1400baf15
je 0x1400baf6e
sub r11, 0xd
je 0x1400bafa5
sub r11, 1
je 0x1400baf9a
sub r11, 1
je 0x1400baf8f
sub r11, 1
je 0x1400baf84
cmp r11, 1
je 0x1400baf79
jmp 0x1400bb02b
sub r11, 0x13
je 0x1400baf63
sub r11, 1
je 0x1400baf58
sub r11, 1
je 0x1400baf4d
sub r11, 1
je 0x1400baf42
cmp r11, 1
jne 0x1400bb02b
movzx eax, byte [rbx + 0x16]
shl rax, 0x38
add r9, rax
movzx eax, byte [rbx + 0x15]
shl rax, 0x30
add r9, rax
movzx eax, byte [rbx + 0x14]
shl rax, 0x28
add r9, rax
movzx eax, byte [rbx + 0x13]
shl rax, 0x20
add r9, rax
movzx eax, byte [rbx + 0x12]
shl rax, 0x18
add r9, rax
movzx eax, byte [rbx + 0x11]
shl rax, 0x10
add r9, rax
movzx eax, byte [rbx + 0x10]
shl rax, 8
add r9, rax
movzx eax, byte [rbx + 0xf]
shl rax, 0x38
add r8, rax
movzx eax, byte [rbx + 0xe]
shl rax, 0x30
add r8, rax
movzx eax, byte [rbx + 0xd]
shl rax, 0x28
add r8, rax
movzx eax, byte [rbx + 0xc]
shl rax, 0x20
add r8, rax
movzx eax, byte [rbx + 0xb]
shl rax, 0x18
add r8, rax
movzx eax, byte [rbx + 0xa]
shl rax, 0x10
add r8, rax
movzx eax, byte [rbx + 9]
shl rax, 8
add r8, rax
movzx eax, byte [rbx + 8]
add r8, rax
movzx eax, byte [rbx + 7]
shl rax, 0x38
add r10, rax
movzx eax, byte [rbx + 6]
shl rax, 0x30
add r10, rax
movzx eax, byte [rbx + 5]
shl rax, 0x28
add r10, rax
movzx eax, byte [rbx + 4]
shl rax, 0x20
add r10, rax
movzx eax, byte [rbx + 3]
shl rax, 0x18
add r10, rax
movzx eax, byte [rbx + 2]
shl rax, 0x10
add r10, rax
movzx eax, byte [rbx + 1]
shl rax, 8
add r10, rax
movzx eax, byte [rbx]
add r10, rax
mov rbx, qword [rsp + 8]
sub r10, r9
mov rdi, qword [rsp + 0x10]
sub r10, r8
sub r8, r9
mov rax, r9
shr rax, 0x2b
xor r10, rax
sub r8, r10
mov rax, r10
shl rax, 9
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 8
xor r9, rax
sub r10, r9
mov rax, r9
sub r10, r8
shr rax, 0x26
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x17
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 5
xor r9, rax
sub r10, r9
mov rax, r9
sub r10, r8
shr rax, 0x23
xor r10, rax
sub r8, r9
sub r8, r10
mov rax, r10
shl rax, 0x31
xor r8, rax
sub r9, r8
mov rax, r8
sub r9, r10
shr rax, 0xb
xor r9, rax
sub r10, r9
mov rax, r9
sub r10, r8
shr rax, 0xc
sub r8, r9
xor r10, rax
sub r8, r10
mov rcx, r10
shl rcx, 0x12
xor r8, rcx
sub r9, r8
shr r8, 0x16
sub r9, r10
xor r9, r8
mov rax, r9
ret