Function at 0x14001b760
Capabilities:
Encode data using xor
Manually build aes constants

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
lea r10, [rcx + 0x20]
lea rbx, [rdx + 0x10]
mov r14, rcx
mov r11, r10
sub r14, rdx
mov rsi, rdx
sub r11, rcx
mov rbp, rcx
mov r9b, 0x10
sub r10, rdx
mov r8, rbx
nop word [rax + rax]
movzx eax, byte [r10 + r8 - 1]
dec r8
lea rcx, [r14 + 0x10]
add rcx, r8
mov byte [r14 + r8], al
xor byte [r8], al
movzx eax, byte [rcx + r11]
mov byte [rcx], al
add r9b, 0xff
jne 0x14001b7a0
mov dil, 1
mov byte [rsp + 0x40], dil
nop dword [rax]
mov r10b, 0x10
mov r9, rbx
nop word [rax + rax]
movzx r8d, byte [r9 - 1]
lea r9, [r9 - 1]
add r10b, 0xff
test r8b, r8b
je 0x14001b836
mov al, 1
xor dl, dl
cmp al, r8b
je 0x14001b80c
movzx ecx, al
add al, al
test cl, cl
jns 0x14001b806
xor al, 0x1b
xor al, cl
inc dl
jne 0x14001b7f6
mov ecx, 0xff
mov al, 1
sub cl, dl
je 0x14001b838
nop word [rax + rax]
movzx edx, al
add cl, 0xff
add al, al
test dl, dl
jns 0x14001b82e
xor al, 0x1b
xor al, dl
test cl, cl
jne 0x14001b820
jmp 0x14001b838
xor al, al
movzx edx, al
rol dl, 1
xor al, dl
rol dl, 1
xor al, dl
rol dl, 1
movzx ecx, dl
rol cl, 1
xor cl, dl
xor cl, al
xor cl, 0x63
mov byte [r9], cl
test r10b, r10b
jne 0x14001b7e0
movzx ecx, byte [rsi + 1]
movzx eax, byte [rsi + 5]
mov byte [rsi + 1], al
movzx eax, byte [rsi + 9]
mov byte [rsi + 5], al
movzx eax, byte [rsi + 0xd]
mov byte [rsi + 0xd], cl
movzx ecx, byte [rsi + 0xa]
mov byte [rsi + 9], al
movzx eax, byte [rsi + 2]
mov byte [rsi + 0xa], al
movzx eax, byte [rsi + 0xf]
mov byte [rsi + 2], cl
movzx ecx, byte [rsi + 3]
mov byte [rsi + 3], al
movzx eax, byte [rsi + 0xb]
mov byte [rsi + 0xf], al
movzx eax, byte [rsi + 7]
mov byte [rsi + 7], cl
movzx ecx, byte [rsi + 0xe]
mov byte [rsi + 0xb], al
movzx eax, byte [rsi + 6]
mov byte [rsi + 6], cl
mov rcx, rsi
mov byte [rsi + 0xe], al
call fcn.14001b230
test dil, 1
je 0x14001b8d2
mov dl, 0x10
mov rcx, rbx
movzx eax, byte [r14 + rcx + 0xf]
dec rcx
xor byte [rcx], al
add dl, 0xff
jne 0x14001b8c0
jmp 0x14001b900
lea rdx, [rsp + 0x40]
mov rcx, rbp
call fcn.14001b310
mov dl, 0x10
mov rcx, rbx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r14 + rcx - 1]
dec rcx
xor byte [rcx], al
add dl, 0xff
jne 0x14001b8f0
inc dil
cmp dil, 0xe
jb 0x14001b7d0
mov r10b, 0x10
mov r9, rbx
nop dword [rax]
nop word [rax + rax]
movzx r8d, byte [r9 - 1]
lea r9, [r9 - 1]
add r10b, 0xff
xor dl, dl
test r8b, r8b
je 0x14001b974
mov al, 1
cmp al, r8b
je 0x14001b94c
movzx ecx, al
add al, al
test cl, cl
jns 0x14001b946
xor al, 0x1b
xor al, cl
inc dl
jne 0x14001b936
mov eax, 0xff
sub al, dl
mov dl, 1
je 0x14001b974
nop word [rax + rax]
movzx ecx, dl
add al, 0xff
add dl, dl
test cl, cl
jns 0x14001b96e
xor dl, 0x1b
xor dl, cl
test al, al
jne 0x14001b960
movzx ecx, dl
rol cl, 1
xor dl, cl
rol cl, 1
xor dl, cl
rol cl, 1
movzx eax, cl
rol al, 1
xor al, cl
xor al, dl
xor al, 0x63
mov byte [r9], al
test r10b, r10b
jne 0x14001b920
movzx ecx, byte [rsi + 1]
movzx eax, byte [rsi + 5]
lea rdx, [rsp + 0x40]
mov byte [rsi + 1], al
movzx eax, byte [rsi + 9]
mov byte [rsi + 5], al
movzx eax, byte [rsi + 0xd]
mov byte [rsi + 0xd], cl
movzx ecx, byte [rsi + 0xa]
mov byte [rsi + 9], al
movzx eax, byte [rsi + 2]
mov byte [rsi + 0xa], al
movzx eax, byte [rsi + 0xf]
mov byte [rsi + 2], cl
movzx ecx, byte [rsi + 3]
mov byte [rsi + 3], al
movzx eax, byte [rsi + 0xb]
mov byte [rsi + 0xf], al
movzx eax, byte [rsi + 7]
mov byte [rsi + 7], cl
movzx ecx, byte [rsi + 0xe]
mov byte [rsi + 0xb], al
movzx eax, byte [rsi + 6]
mov byte [rsi + 6], cl
mov rcx, rbp
mov byte [rsi + 0xe], al
call fcn.14001b310
mov cl, 0x10
nop word [rax + rax]
movzx eax, byte [r14 + rbx - 1]
lea rbx, [rbx - 1]
xor byte [rbx], al
add cl, 0xff
jne 0x14001ba00
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret