Function at 0x140001450
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov r11, rcx
mov rsi, rdx
mov cl, 0x1c
lea r9, [r11 + 0x1d]
nop dword [rax + rax]
movzx eax, cl
lea r9, [r9 - 4]
add cl, 0xfc
movzx r8d, byte [rax + r11 - 4]
movzx eax, byte [r9]
xor byte [r9 + 4], al
movzx eax, byte [r9 + 1]
xor byte [r9 + 5], al
movzx eax, byte [r9 + 2]
xor byte [r9 + 6], al
xor byte [r9 + 3], r8b
cmp cl, 0x10
ja 0x140001470
movzx ecx, byte [r11 + 0xc]
call fcn.140001010
movzx ecx, byte [r11 + 0xd]
xor byte [r11 + 0x10], al
call fcn.140001010
movzx ecx, byte [r11 + 0xe]
xor byte [r11 + 0x11], al
call fcn.140001010
movzx ecx, byte [r11 + 0xf]
xor byte [r11 + 0x12], al
call fcn.140001010
xor byte [r11 + 0x13], al
mov r8b, 0xc
nop
movzx edx, r8b
movzx eax, r8b
movzx ecx, byte [rax + r11 - 4]
movzx eax, byte [rdx + r11 - 3]
xor byte [r11 + rdx + 1], al
movzx eax, byte [rdx + r11 - 2]
xor byte [r11 + rdx + 2], al
movzx eax, byte [rdx + r11 - 1]
xor byte [r11 + rdx + 3], al
xor byte [rdx + r11], cl
add r8b, 0xfc
jne 0x1400014e0
movzx ecx, byte [rsi]
movzx r10d, byte [r11 + 0x1d]
movzx eax, cl
and al, 1
neg al
sbb bl, bl
shr cl, 1
and bl, 0x8d
xor bl, cl
mov byte [rsi], bl
test r10b, r10b
je 0x140001592
mov r9b, 1
nop dword [rax + rax]
cmp r9b, r10b
je 0x140001565
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 1
jne 0x140001540
not r8b
mov r9b, 1
test r8b, r8b
je 0x140001595
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 0xff
jne 0x140001570
jmp 0x140001595
xor r9b, r9b
movzx r10d, byte [r11 + 0x1e]
movzx ecx, r9b
shr cl, 7
movzx eax, r9b
add al, al
or cl, al
xor r9b, cl
movzx eax, cl
shr al, 7
add cl, cl
or al, cl
movzx ecx, al
xor r9b, al
add al, al
shr cl, 7
or cl, al
movzx eax, cl
ror al, 7
xor al, bl
xor al, byte [r11]
xor al, cl
xor al, r9b
xor al, 0x63
mov byte [r11], al
test r10b, r10b
je 0x140001642
mov r9b, 1
xor r8b, r8b
cmp r9b, r10b
je 0x140001608
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 1
jne 0x1400015e3
not r8b
mov r9b, 1
test r8b, r8b
je 0x140001645
nop dword [rax]
nop word [rax + rax]
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 0xff
jne 0x140001620
jmp 0x140001645
xor r9b, r9b
movzx r10d, byte [r11 + 0x1f]
movzx ecx, r9b
shr cl, 7
movzx eax, r9b
add al, al
or cl, al
xor r9b, cl
movzx eax, cl
shr al, 7
add cl, cl
or al, cl
movzx ecx, al
xor r9b, al
add al, al
shr cl, 7
or cl, al
movzx eax, cl
ror al, 7
xor al, byte [r11 + 1]
xor al, cl
xor al, r9b
xor al, 0x63
mov byte [r11 + 1], al
test r10b, r10b
je 0x1400016f2
mov r9b, 1
xor r8b, r8b
cmp r9b, r10b
je 0x1400016b8
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 1
jne 0x140001693
not r8b
mov r9b, 1
test r8b, r8b
je 0x1400016f5
nop dword [rax]
nop word [rax + rax]
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 0xff
jne 0x1400016d0
jmp 0x1400016f5
xor r9b, r9b
movzx r10d, byte [r11 + 0x1c]
movzx ecx, r9b
shr cl, 7
movzx eax, r9b
add al, al
or cl, al
xor r9b, cl
movzx eax, cl
shr al, 7
add cl, cl
or al, cl
movzx ecx, al
xor r9b, al
add al, al
shr cl, 7
or cl, al
movzx eax, cl
ror al, 7
xor al, byte [r11 + 2]
xor al, cl
xor al, r9b
xor al, 0x63
mov byte [r11 + 2], al
test r10b, r10b
je 0x1400017a2
mov r9b, 1
xor r8b, r8b
cmp r9b, r10b
je 0x140001768
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 1
jne 0x140001743
not r8b
mov r9b, 1
test r8b, r8b
je 0x1400017a5
nop dword [rax]
nop word [rax + rax]
movzx eax, r9b
add al, al
movzx edx, al
movzx eax, dl
xor al, 0x1b
test r9b, r9b
movzx ecx, al
cmovns ecx, edx
xor r9b, cl
add r8b, 0xff
jne 0x140001780
jmp 0x1400017a5
xor r9b, r9b
mov rbx, qword [rsp + 0x30]
movzx ecx, r9b
mov rsi, qword [rsp + 0x38]
movzx eax, r9b
add al, al
shr cl, 7
or cl, al
xor r9b, cl
movzx eax, cl
shr al, 7
add cl, cl
or al, cl
movzx ecx, al
xor r9b, al
add al, al
shr cl, 7
or cl, al
movzx eax, cl
ror al, 7
xor al, cl
xor al, r9b
xor al, byte [r11 + 3]
xor al, 0x63
mov byte [r11 + 3], al
add rsp, 0x20
pop rdi
ret