Function at 0x1401fca20
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
mov rax, rdx
mov rdx, qword [rdx + 0x10]
movzx r9d, byte [rdx + 0x19]
test r9b, r9b
je 0x1401fca55
mov r8, qword [rax + 8]
cmp byte [r8 + 0x19], 0
je 0x1401fca7a
mov r8, qword [rax]
movzx r9d, byte [r8 + 0x19]
add r9b, byte [0x1406941f3]
cmove rdx, r8
jmp 0x1401fcab4
mov r10, rdx
nop dword [rax + rax]
mov r8, r10
mov r10, qword [r10]
movzx r11d, byte [0x14061eef4]
add r11b, 0xed
cmp byte [r10 + 0x19], r11b
je 0x1401fca60
jmp 0x1401fca9c
mov r10, rax
nop dword [rax]
mov r11, r10
mov r10, r8
cmp r11, qword [r8 + 0x10]
jne 0x1401fca99
mov r8, qword [r10 + 8]
cmp byte [r8 + 0x19], 0
je 0x1401fca80
jmp 0x1401fca9c
mov r8, r10
mov r10, qword [rax]
movzx r11d, byte [r10 + 0x19]
test r11b, r11b
cmove rdx, r10
or r9b, r11b
je 0x1401fcba1
mov r9, qword [rax + 8]
movzx r8d, byte [0x14061eef4]
add r8b, 0xed
cmp byte [rdx + 0x19], r8b
jne 0x1401fcace
mov qword [rdx + 8], r9
mov r8, qword [rcx]
cmp qword [r8 + 8], rax
je 0x1401fcaef
lea r8, [r9 + 0x10]
cmp qword [r9], rax
cmove r8, r9
cmp byte [0x1406941f1], 0
cmovne r8, r9
jmp 0x1401fcaf3
add r8, 8
mov qword [r8], rdx
mov r8, qword [rcx]
cmp qword [r8], rax
jne 0x1401fcb5c
movzx r11d, byte [0x1406941f2]
mov r10, r9
add r11b, byte [rdx + 0x19]
jne 0x1401fcb59
mov r11, rdx
nop word cs:[rax + rax]
mov r10, r11
mov r11, qword [r11]
cmp byte [r11 + 0x19], 0
sete bl
setne sil
movzx edi, byte [0x140693ed0]
mov ebp, edi
xor bpl, sil
and bpl, dil
xor sil, bl
and sil, dil
xor sil, bl
mov ebx, ebp
xor bl, sil
test bpl, sil
jne 0x1401fcb20
test bl, 1
jne 0x1401fcb20
mov qword [r8], r10
mov r8, qword [rcx]
cmp qword [r8 + 0x10], rax
jne 0x1401fcb92
cmp byte [rdx + 0x19], 0
mov r10, r9
jne 0x1401fcb8e
mov r11, rdx
nop word cs:[rax + rax]
mov r10, r11
mov r11, qword [r11 + 0x10]
cmp byte [r11 + 0x19], 0
je 0x1401fcb80
mov qword [r8 + 0x10], r10
cmp byte [rax + 0x18], 1
je 0x1401fcc49
jmp 0x1401fcf83
mov rdx, qword [r8 + 0x10]
cmp r8, rax
je 0x1401fcab4
mov qword [r10 + 8], r8
mov r9, qword [rax]
mov qword [r8], r9
mov r9, r8
cmp r8, qword [rax + 0x10]
je 0x1401fcbee
mov r9, qword [r8 + 8]
movzx r10d, byte [0x14061eef4]
add r10b, 0xed
cmp byte [rdx + 0x19], r10b
jne 0x1401fcbdb
mov qword [rdx + 8], r9
mov qword [r9], rdx
mov r10, qword [rax + 0x10]
mov qword [r8 + 0x10], r10
mov r10, qword [rax + 0x10]
mov qword [r10 + 8], r8
mov r10, qword [rcx]
cmp qword [r10 + 8], rax
je 0x1401fcc08
mov r11, qword [rax + 8]
lea r10, [r11 + 0x10]
cmp qword [r11], rax
cmove r10, r11
jmp 0x1401fcc0c
add r10, 8
mov qword [r10], r8
mov r10, qword [rax + 8]
mov qword [r8 + 8], r10
movzx r10d, byte [r8 + 0x18]
movzx r11d, byte [rax + 0x18]
mov byte [r8 + 0x18], r11b
mov byte [rax + 0x18], r10b
cmp byte [rax + 0x18], 1
je 0x1401fcc49
jmp 0x1401fcf83
mov byte [r9 + 0x18], 0
mov r9, qword [rdx + 8]
mov r8, qword [rcx]
cmp rdx, qword [r8 + 8]
je 0x1401fcf7f
mov r8, rdx
cmp byte [rdx + 0x18], 1
jne 0x1401fcf7c
mov rdx, r9
mov r9, qword [r9]
cmp r8, r9
je 0x1401fccd0
movzx r10d, byte [0x14061eef4]
add r10b, 0xed
cmp byte [r9 + 0x18], r10b
jne 0x1401fcd41
mov byte [r9 + 0x18], 1
mov byte [rdx + 0x18], 0
mov r9, qword [rdx]
mov r10, qword [r9 + 0x10]
mov qword [rdx], r10
mov r10, qword [r9 + 0x10]
cmp byte [r10 + 0x19], 0
jne 0x1401fcca6
mov qword [r10 + 8], rdx
mov r10, qword [rdx + 8]
mov qword [r9 + 8], r10
mov r10, qword [rcx]
cmp qword [r10 + 8], rdx
je 0x1401fcd2f
mov r11, qword [rdx + 8]
lea r10, [r11 + 0x10]
cmp qword [r11 + 0x10], rdx
cmovne r10, r11
jmp 0x1401fcd33
mov r9, qword [rdx + 0x10]
cmp byte [r9 + 0x18], 0
je 0x1401fcceb
cmp byte [r9 + 0x19], 0
jne 0x1401fcc45
jmp 0x1401fcd96
mov byte [r9 + 0x18], 1
mov byte [rdx + 0x18], 0
mov r9, qword [rdx + 0x10]
mov r10, qword [r9]
mov qword [rdx + 0x10], r10
mov r10, qword [r9]
cmp byte [r10 + 0x19], 0
jne 0x1401fcd0d
mov qword [r10 + 8], rdx
mov r10, qword [rdx + 8]
mov qword [r9 + 8], r10
mov r10, qword [rcx]
cmp qword [r10 + 8], rdx
je 0x1401fcd79
mov r11, qword [rdx + 8]
lea r10, [r11 + 0x10]
cmp qword [r11], rdx
cmove r10, r11
jmp 0x1401fcd7d
add r10, 8
mov qword [r10], r9
mov qword [r9 + 0x10], rdx
mov qword [rdx + 8], r9
mov r9, qword [rdx]
movzx r10d, byte [0x14061eef4]
add r10b, 0xed
cmp byte [r9 + 0x19], r10b
jne 0x1401fcc45
mov r10, qword [r9 + 0x10]
cmp byte [r10 + 0x18], 1
jne 0x1401fce14
mov r11, qword [r9]
cmp byte [r11 + 0x18], 1
je 0x1401fcc40
jmp 0x1401fce14
add r10, 8
mov qword [r10], r9
mov qword [r9], rdx
mov qword [rdx + 8], r9
mov r9, qword [rdx + 0x10]
cmp byte [r9 + 0x19], 0
jne 0x1401fcc45
mov r10, qword [r9]
cmp byte [r10 + 0x18], 1
jne 0x1401fcdaf
mov r11, qword [r9 + 0x10]
cmp byte [r11 + 0x18], 1
je 0x1401fcc40
mov r11, qword [r9 + 0x10]
cmp byte [r11 + 0x18], 1
jne 0x1401fcf07
mov byte [r10 + 0x18], 1
mov byte [r9 + 0x18], 0
mov r10, qword [r9]
mov r11, qword [r10 + 0x10]
mov qword [r9], r11
mov r11, qword [r10 + 0x10]
movzx ebx, byte [0x14061eef4]
add bl, 0xed
cmp byte [r11 + 0x19], bl
jne 0x1401fcdea
mov qword [r11 + 8], r9
mov r11, qword [r9 + 8]
mov qword [r10 + 8], r11
mov r11, qword [rcx]
cmp qword [r11 + 8], r9
je 0x1401fcef4
mov rsi, qword [r9 + 8]
lea r11, [rsi + 0x10]
cmp qword [rsi + 0x10], r9
cmovne r11, rsi
jmp 0x1401fcef8
mov r11, qword [r9]
movzx ebx, byte [0x14061eef4]
mov esi, ebx
xor sil, 0xee
and bl, 0x6e
add bl, bl
add bl, sil
cmp byte [r11 + 0x18], bl
jne 0x1401fce88
mov byte [r10 + 0x18], 1
mov byte [r9 + 0x18], 0
mov r10, qword [r9 + 0x10]
mov r11, qword [r10]
mov qword [r9 + 0x10], r11
mov r11, qword [r10]
cmp byte [r11 + 0x19], 0
jne 0x1401fce55
mov qword [r11 + 8], r9
mov r11, qword [r9 + 8]
mov qword [r10 + 8], r11
mov r11, qword [rcx]
cmp qword [r11 + 8], r9
je 0x1401fce77
mov rsi, qword [r9 + 8]
lea r11, [rsi + 0x10]
cmp qword [rsi], r9
cmove r11, rsi
jmp 0x1401fce7b
add r11, 8
mov qword [r11], r10
mov qword [r10], r9
mov qword [r9 + 8], r10
mov r9, qword [rdx]
movzx r10d, byte [rdx + 0x18]
mov byte [r9 + 0x18], r10b
mov byte [rdx + 0x18], 1
mov r9, qword [r9]
movzx r10d, byte [0x14061eef4]
add r10b, 0xee
mov byte [r9 + 0x18], r10b
mov r9, qword [rdx]
mov r10, qword [r9 + 0x10]
mov qword [rdx], r10
mov r10, qword [r9 + 0x10]
cmp byte [r10 + 0x19], 0
jne 0x1401fcec1
mov qword [r10 + 8], rdx
mov r10, qword [rdx + 8]
mov qword [r9 + 8], r10
mov r10, qword [rcx]
cmp qword [r10 + 8], rdx
je 0x1401fcee4
mov r11, qword [rdx + 8]
lea r10, [r11 + 0x10]
cmp qword [r11 + 0x10], rdx
cmovne r10, r11
jmp 0x1401fcee8
add r10, 8
mov qword [r10], r9
mov qword [r9 + 0x10], rdx
jmp 0x1401fcf78
add r11, 8
mov qword [r11], r10
mov qword [r10 + 0x10], r9
mov qword [r9 + 8], r10
mov r9, qword [rdx + 0x10]
movzx r10d, byte [rdx + 0x18]
mov byte [r9 + 0x18], r10b
mov byte [rdx + 0x18], 1
mov r9, qword [r9 + 0x10]
mov byte [r9 + 0x18], 1
mov r9, qword [rdx + 0x10]
mov r10, qword [r9]
mov qword [rdx + 0x10], r10
mov r10, qword [r9]
movzx r11d, byte [0x14061eef4]
add r11b, 0xed
cmp byte [r10 + 0x19], r11b
jne 0x1401fcf41
mov qword [r10 + 8], rdx
mov r10, qword [rdx + 8]
mov qword [r9 + 8], r10
mov r10, qword [rcx]
cmp qword [r10 + 8], rdx
je 0x1401fcf6e
mov r11, qword [rdx + 8]
lea r10, [r11 + 0x10]
cmp qword [r11], rdx
cmove r10, r11
cmp byte [0x1406941f0], 0
cmovne r10, r11
jmp 0x1401fcf72
add r10, 8
mov qword [r10], r9
mov qword [r9], rdx
mov qword [rdx + 8], r9
mov rdx, r8
mov byte [rdx + 0x18], 1
mov rdx, qword [0x140693d58]
add rdx, qword [rcx + 8]
je 0x1401fcfa7
movabs r8, 0x67432c39857dc76c
add rdx, r8
sub r8, rdx
not r8
mov qword [rcx + 8], r8
pop rbx
pop rbp
pop rdi
pop rsi
ret