Function at 0x1400c3c00
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov esi, r9d
mov r15, r8
mov r14d, edx
mov rbx, rcx
mov ecx, edx
sub ecx, 0xe
je 0x1400c3ddb
sub ecx, 1
je 0x1400c3d2f
sub ecx, 1
je 0x1400c3c8a
cmp ecx, 1
je 0x1400c3c63
test r9d, r9d
je 0x1400c3e83
mov edx, r14d
mov rcx, r15
call fcn.1400998dc
add esi, 0xffffffff
jne 0x1400c3c4e
jmp 0x1400c3e83
mov qword [rbp - 0x18], r15
mov byte [rbp - 0x10], 0
test r9d, r9d
je 0x1400c3c85
mov byte [rbp - 0x10], 0
lea rdx, [rbp - 0x20]
mov rcx, r15
call fcn.14009fe04
add esi, 0xffffffff
jne 0x1400c3c70
jmp 0x1400c3e83
mov qword [rbp - 0x18], r15
mov byte [rbp - 0x10], 0
and dword [rbp + 0x28], 0
mov r9, rsi
mov r14, qword [rbx + 8]
mov rsi, qword [rbx]
mov rax, r14
sub rax, rsi
sar rax, 2
cmp r9, rax
jae 0x1400c3ccf
lea rax, [rsi + r9*4]
cmp rax, rsi
jne 0x1400c3cc1
mov qword [rbx + 8], rsi
mov r14, rsi
jmp 0x1400c3cf3
cmp rax, r14
je 0x1400c3cf3
mov r14, rax
mov qword [rbx + 8], rax
jmp 0x1400c3cf3
jbe 0x1400c3cf3
sub r9, rax
lea rax, [rbp + 0x28]
mov qword [rsp + 0x20], rax
mov r8, r14
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.1400c69c4
mov r14, qword [rbx + 8]
mov rsi, qword [rbx]
cmp rsi, r14
je 0x1400c3d2a
mov r12d, 1
mov rbx, rsi
add rsi, 4
mov byte [rbp - 0x10], 0
lea rdx, [rbp + 0x28]
mov rcx, r15
call fcn.1400935cc
mov eax, dword [rbp + 0x28]
mov ecx, eax
shr ecx, 1
and eax, r12d
neg eax
xor ecx, eax
mov dword [rbx], ecx
cmp rsi, r14
jne 0x1400c3cfe
jmp 0x1400c3e83
mov qword [rbp - 0x18], r15
mov byte [rbp - 0x10], 0
and dword [rbp + 0x28], 0
mov r9, rsi
mov rsi, qword [rbx + 8]
mov r14, qword [rbx]
mov rax, rsi
sub rax, r14
sar rax, 2
cmp r9, rax
jae 0x1400c3d74
lea rax, [r14 + r9*4]
cmp rax, r14
jne 0x1400c3d66
mov qword [rbx + 8], r14
mov rsi, r14
jmp 0x1400c3d98
cmp rax, rsi
je 0x1400c3d98
mov rsi, rax
mov qword [rbx + 8], rax
jmp 0x1400c3d98
jbe 0x1400c3d98
sub r9, rax
lea rax, [rbp + 0x28]
mov qword [rsp + 0x20], rax
mov r8, rsi
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.1400c69c4
mov rsi, qword [rbx + 8]
mov r14, qword [rbx]
cmp r14, rsi
je 0x1400c3dd6
mov r12d, 1
mov rbx, r14
add r14, 4
mov byte [rbp - 0x10], 0
lea rdx, [rbp + 0x28]
mov rcx, r15
call fcn.1400a73c0
movzx eax, word [rbp + 0x28]
movzx ecx, ax
shr cx, 1
and ax, r12w
neg ax
xor ax, cx
cwde
mov dword [rbx], eax
cmp r14, rsi
jne 0x1400c3da3
jmp 0x1400c3e83
mov qword [rbp - 0x18], r15
mov byte [rbp - 0x10], 0
and dword [rbp + 0x28], 0
mov r9, rsi
mov r10, qword [rbx + 8]
mov r8, qword [rbx]
mov rax, r10
sub rax, r8
sar rax, 2
cmp rsi, rax
jae 0x1400c3e20
lea rax, [r8 + rsi*4]
cmp rax, r8
jne 0x1400c3e12
mov qword [rbx + 8], r8
mov r10, r8
jmp 0x1400c3e44
cmp rax, r10
je 0x1400c3e44
mov r10, rax
mov qword [rbx + 8], rax
jmp 0x1400c3e44
jbe 0x1400c3e44
sub r9, rax
lea rax, [rbp + 0x28]
mov qword [rsp + 0x20], rax
mov r8, r10
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.1400c69c4
mov r10, qword [rbx + 8]
mov r8, qword [rbx]
cmp r8, r10
je 0x1400c3e83
mov r12d, 1
mov r11, r8
add r8, 4
mov byte [rbp - 0x10], 0
mov r9d, dword [r15 + 0x20]
mov eax, dword [r15 + 0x18]
sub eax, r9d
cmp eax, r12d
jb 0x1400c3e9e
mov rax, qword [r15 + 0x10]
movsx edx, byte [r9 + rax]
lea eax, [r9 + 1]
mov dword [r15 + 0x20], eax
mov dword [r11], edx
cmp r8, r10
jne 0x1400c3e4f
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
mov edx, r12d
mov rcx, r15
call fcn.140077a94
int3