Function at 0x1401f55a0
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
mov rax, qword [0x14058f150]
add rax, qword [rcx + 8]
movabs r9, 0xe38fd074eb6ad34b
add r9, qword [0x140538158]
mov r10, rax
xor r10, r9
and r9, rax
lea rax, [r10 + r9*2]
mov qword [rcx + 8], rax
mov r9, qword [rcx]
mov rax, qword [rdx]
mov qword [r8 + 8], rax
mov rax, qword [rdx]
cmp rax, r9
je 0x1401f55f5
cmp dword [rdx + 8], 0
je 0x1401f5605
xor r10d, r10d
test r10b, r10b
jne 0x1401f562c
jmp 0x1401f5618
mov qword [r9], r8
mov qword [r9 + 8], r8
mov qword [r9 + 0x10], r8
mov rax, r8
jmp 0x1401f567e
mov qword [rax + 0x10], r8
mov rax, qword [rdx]
cmp rax, qword [r9 + 0x10]
jne 0x1401f563c
lea rax, [r9 + 0x10]
jmp 0x1401f5639
mov qword [rax], r8
mov r10, qword [rdx]
mov r11, qword [r9]
mov esi, dword [0x14058f294]
cmp esi, 0x5c
jle 0x1401f5631
mov qword [rax], r8
jmp 0x1401f5618
mov rax, r9
cmp r10, r11
jne 0x1401f563c
mov qword [rax], r8
mov eax, dword [0x14058f290]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
jne 0x1401f566a
mov rax, qword [r8 + 8]
movzx edx, byte [rax + 0x18]
mov r10d, dword [0x14058f290]
lea r11d, [r10 - 1]
imul r11d, r10d
test r11b, 1
je 0x1401f5676
mov al, 1
nop dword [rax]
test al, al
je 0x1401f5670
jmp 0x1401f564d
test dl, dl
je 0x1401f568c
mov rax, qword [r9 + 8]
mov byte [rax + 0x18], 1
mov rax, r8
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
lea rdx, [r8 + 8]
lea rsi, [rax + 0x18]
mov r10d, 0x46f6b423
mov r11, r8
jmp 0x1401f56ed
mov byte [rsi], 1
mov byte [rdi + 0x18], 1
mov rax, qword [rdx]
mov rax, qword [rax + 8]
mov byte [rax + 0x18], 0
mov rax, qword [rdx]
mov r11, qword [rax + 8]
lea rdx, [r11 + 8]
mov rax, qword [r11 + 8]
lea rsi, [rax + 0x18]
movzx ebx, byte [rax + 0x18]
movzx edi, byte [0x14058f298]
mov ebp, edi
xor bpl, bl
and dil, bl
add dil, dil
add dil, bpl
movzx ebx, byte [0x140538154]
add bl, 0x46
cmp dil, bl
jne 0x1401f567a
mov rbx, qword [rax + 8]
mov rdi, qword [rbx]
cmp rax, rdi
je 0x1401f5750
cmp byte [rdi + 0x18], 0
je 0x1401f56a0
mov rdx, qword [rax]
cmp r11, rdx
jne 0x1401f57b9
mov r11, qword [rdx + 0x10]
mov qword [rax], r11
mov r11, qword [rdx + 0x10]
cmp byte [r11 + 0x19], 0
jne 0x1401f5721
mov qword [r11 + 8], rax
mov r11, qword [rax + 8]
mov qword [rdx + 8], r11
mov r11, qword [rcx]
cmp qword [r11 + 8], rax
je 0x1401f57a7
mov rsi, qword [rax + 8]
lea r11, [rsi + 0x10]
cmp qword [rsi + 0x10], rax
cmovne r11, rsi
jmp 0x1401f57ab
mov rdi, qword [rbx + 0x10]
cmp byte [rdi + 0x18], 0
je 0x1401f56a0
mov rdx, qword [rax + 0x10]
cmp r11, rdx
jne 0x1401f58d6
mov r11, qword [rdx]
mov qword [rax + 0x10], r11
mov r11, qword [rdx]
movzx ebx, byte [0x140538154]
add bl, 0x46
cmp byte [r11 + 0x19], bl
jne 0x1401f5789
mov qword [r11 + 8], rax
mov r11d, dword [0x14058f290]
lea esi, [r11 - 1]
imul esi, r11d
test sil, 1
jne 0x1401f58a0
jmp 0x1401f5880
add r11, 8
mov qword [r11], rdx
mov qword [rdx + 0x10], rax
mov qword [rax + 8], rdx
mov r11, rax
mov rax, qword [r11 + 8]
movzx edx, byte [0x140538154]
add dl, 0x47
mov byte [rax + 0x18], dl
mov rax, qword [r11 + 8]
mov rax, qword [rax + 8]
mov byte [rax + 0x18], 0
mov rax, qword [r11 + 8]
mov rsi, qword [rax + 8]
mov rdi, qword [rsi + 0x10]
mov rax, qword [rdi]
mov qword [rsi + 0x10], rax
mov rax, qword [rdi]
cmp byte [rax + 0x19], 0
jne 0x1401f57f6
mov qword [rax + 8], rsi
mov rax, qword [rsi + 8]
mov qword [rdi + 8], rax
mov rbx, qword [rcx]
cmp qword [rbx + 8], rsi
je 0x1401f5866
mov edx, dword [0x14058f290]
lea eax, [rdx - 1]
imul eax, edx
mov ebx, dword [0x140538150]
add ebx, r10d
xor edx, edx
div ebx
test edx, edx
mov rax, qword [rsi + 8]
lea rbx, [rax + 0x10]
cmp qword [rax], rsi
cmove rbx, rax
mov edx, dword [0x14058f290]
lea eax, [rdx + 0x3ff564e2]
mov r14d, eax
xor r14d, 0xc00a9b1d
and eax, 0x400a9b1d
lea eax, [r14 + rax*2]
imul eax, edx
mov ebp, dword [0x140538150]
add ebp, r10d
xor edx, edx
div ebp
test edx, edx
jne 0x1401f5822
jmp 0x1401f586a
add rbx, 8
mov qword [rbx], rdi
mov qword [rdi], rsi
mov qword [rsi + 8], rdi
jmp 0x1401f56b9
mov r11, qword [rax + 8]
mov qword [rdx + 8], r11
mov r11, qword [rcx]
mov rsi, qword [r11 + 8]
mov edi, dword [0x14058f290]
lea ebx, [rdi - 1]
imul ebx, edi
test bl, 1
je 0x1401f58af
mov r11, qword [rax + 8]
mov qword [rdx + 8], r11
test rcx, rcx
je 0x1401f58a0
jmp 0x1401f5880
cmp rsi, rax
je 0x1401f58c5
mov rsi, qword [rax + 8]
lea r11, [rsi + 0x10]
cmp qword [rsi], rax
cmove r11, rsi
jmp 0x1401f58c9
add r11, 8
mov qword [r11], rdx
mov qword [rdx], rax
mov qword [rax + 8], rdx
mov r11, rax
mov rax, qword [r11 + 8]
movzx edx, byte [0x140538154]
add dl, 0x47
mov byte [rax + 0x18], dl
mov rax, qword [r11 + 8]
mov rax, qword [rax + 8]
movzx edx, byte [0x140538154]
add dl, 0x46
mov byte [rax + 0x18], dl
mov rax, qword [r11 + 8]
mov rax, qword [rax + 8]
mov rdx, qword [rax]
mov rsi, qword [rdx + 0x10]
mov qword [rax], rsi
mov rsi, qword [rdx + 0x10]
cmp byte [rsi + 0x19], 0
jne 0x1401f591c
mov qword [rsi + 8], rax
mov rsi, qword [rax + 8]
mov qword [rdx + 8], rsi
mov rsi, qword [rcx]
cmp qword [rsi + 8], rax
je 0x1401f593f
mov rdi, qword [rax + 8]
lea rsi, [rdi + 0x10]
cmp qword [rdi + 0x10], rax
cmovne rsi, rdi
jmp 0x1401f5943
add rsi, 8
mov qword [rsi], rdx
mov qword [rdx + 0x10], rax
mov qword [rax + 8], rdx
jmp 0x1401f56b9