Function at 0x14000c8a0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push rbp
push r14
sub rsp, 0x188
mov rax, qword [0x14009e010]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov rax, qword [rcx]
xor ebp, ebp
mov qword [rsp + 0x60], r8
mov r14, rcx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x48], rcx
mov dword [rax + 8], ebp
call fcn.14000bc20
mov rdx, qword [r14]
movsxd rcx, dword [rdx + 8]
test eax, eax
jne 0x14000c8fb
mov edx, ecx
xor r8d, r8d
mov rcx, r14
call fcn.14000b3d0
xor eax, eax
jmp 0x14000cd0f
mov qword [rsp + 0x1b8], rbx
mov qword [rsp + 0x180], rsi
mov qword [rsp + 0x178], rdi
mov qword [rsp + 0x170], r12
mov r12, rcx
mov qword [rsp + 0x40], rcx
test ecx, ecx
jle 0x14000ca09
mov rsi, rbp
lea rbx, [rsp + 0xa8]
lea rdi, [r14 + 0x46a4]
nop dword [rax]
mov rax, qword [r14]
mov ecx, dword [rax]
add ecx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rdi + 0x44], rax
test rax, rax
je 0x14000ca26
mov eax, dword [r14 + 0x4688]
cdq
mov dword [rbx + 0x10], ebp
idiv dword [rdi]
mov r9d, eax
mov dword [rbx], eax
mov eax, dword [r14 + 0x468c]
cdq
idiv dword [rdi + 4]
xor edx, edx
mov ecx, eax
mov dword [rbx + 4], eax
sar ecx, 1
mov r8d, eax
mov dword [rbx + 0xc], ecx
mov rcx, qword [r14]
mov eax, dword [rcx]
mov rcx, qword [rdi + 0x2c]
dec eax
add eax, r9d
mov qword [rbx - 8], rcx
div r9d
mov qword [rbx - 0x10], rcx
mov dword [rbx + 8], eax
cmp r9d, 1
jne 0x14000c9c6
cmp r8d, r9d
jne 0x14000c9b7
lea rax, [fcn.140001670]
jmp 0x14000c9f1
cmp r8d, 2
jne 0x14000c9ea
lea rax, [0x14000be50]
jmp 0x14000c9f1
cmp r9d, 2
jne 0x14000c9ea
cmp r8d, 1
jne 0x14000c9db
lea rax, [0x14000c060]
jmp 0x14000c9f1
cmp r8d, 2
jne 0x14000c9ea
mov rax, qword [r14 + 0x4878]
jmp 0x14000c9f1
lea rax, [0x14000c410]
mov qword [rbx - 0x18], rax
inc rsi
add rbx, 0x30
add rdi, 0x60
cmp rsi, r12
jl 0x14000c940
mov rax, qword [r14]
mov ecx, dword [rax]
mov r8d, dword [rax + 4]
test ecx, ecx
js 0x14000ccce
jne 0x14000ca31
lea r9d, [rcx*4]
jmp 0x14000ca53
mov rax, qword [r14]
mov edx, dword [rax + 8]
jmp 0x14000ccd4
mov eax, 0x7fffffff
cdq
idiv ecx
cmp eax, 4
jl 0x14000ccce
lea r9d, [rcx*4]
test r9d, r9d
js 0x14000ccce
test r8d, r8d
js 0x14000ccce
je 0x14000ca70
mov eax, 0x7fffffff
cdq
idiv r8d
cmp r9d, eax
jg 0x14000ccce
imul r8d, ecx
lea eax, [r8*4 + 1]
movsxd rcx, eax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rcx, qword [r14]
mov rdi, rax
test rax, rax
je 0x14000ccd1
mov qword [rsp + 0x168], r13
xor r13d, r13d
mov dword [rsp + 0x30], r13d
cmp dword [rcx + 4], ebp
jbe 0x14000cc9a
mov rbp, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0x160], r15
mov r15, qword [rsp + 0x70]
mov qword [rsp + 0x38], rax
nop dword [rax]
mov r10d, r13d
xor esi, esi
imul r10d, dword [rcx]
mov rax, rcx
shl r10d, 2
add r10, rdi
mov qword [rsp + 0x50], r10
test r12, r12
jle 0x14000cbc4
lea rdi, [r14 + 0x46c0]
mov r14, qword [rsp + 0x38]
lea rbx, [rsp + 0xb4]
nop word [rax + rax]
mov r13d, dword [rbx - 8]
lea r15, [rbx - 0x14]
mov r9d, dword [rbx - 0xc]
lea rbp, [rbx - 0x1c]
mov eax, r13d
mov r12, r15
sar eax, 1
cmp dword [rbx], eax
jl 0x14000cb35
mov r8, qword [rbp]
mov rdx, r15
jmp 0x14000cb3b
mov r8, qword [r15]
mov rdx, rbp
mov rdx, qword [rdx]
mov rcx, qword [rdi + 0x28]
mov dword [rsp + 0x20], r9d
mov r9d, dword [rbx - 4]
call qword [rbx - 0x24]
mov qword [rsp + rsi*8 + 0x68], rax
mov eax, dword [rbx]
inc eax
mov dword [rbx], eax
cmp eax, r13d
jl 0x14000cb80
inc dword [rbx + 4]
mov eax, dword [rbx + 4]
mov rcx, qword [r12]
mov dword [rbx], 0
mov qword [rbp], rcx
cmp eax, dword [rdi]
jge 0x14000cb80
movsxd rax, dword [rdi + 4]
add rax, rcx
mov qword [r15], rax
mov r12, qword [rsp + 0x40]
inc rsi
add rbx, 0x30
add rdi, 0x60
cmp rsi, r12
jl 0x14000cb10
mov rbp, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x68]
mov r10, qword [rsp + 0x50]
mov r13d, dword [rsp + 0x30]
mov qword [rsp + 0x38], r14
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
mov rax, qword [r14]
cmp dword [rax + 8], 3
jne 0x14000cc43
cmp dword [r14 + 0x4848], 3
jne 0x14000cc1d
xor r8d, r8d
mov rcx, rax
cmp dword [rax], r8d
jbe 0x14000cc80
lea rdx, [r10 + 2]
nop word [rax + rax]
movzx eax, byte [r8 + rbx]
mov byte [rdx - 2], al
lea rdx, [rdx + 4]
movzx eax, byte [r8 + r15]
mov byte [rdx - 5], al
movzx eax, byte [r8 + rbp]
inc r8d
mov byte [rdx - 4], al
mov byte [rdx - 3], 0xff
mov rcx, qword [r14]
cmp r8d, dword [rcx]
jb 0x14000cbf0
jmp 0x14000cc80
mov eax, dword [rax]
mov r9, rbp
mov dword [rsp + 0x28], 4
mov r8, r15
mov rdx, rbx
mov dword [rsp + 0x20], eax
mov rcx, r10
call qword [r14 + 0x4870]
mov rcx, qword [r14]
jmp 0x14000cc80
xor r8d, r8d
mov rcx, rax
cmp dword [rax], r8d
jbe 0x14000cc80
lea rdx, [r10 + 1]
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [r8 + rbx]
inc r8d
mov byte [rdx + 1], cl
mov byte [rdx], cl
mov byte [rdx - 1], cl
mov byte [rdx + 2], 0xff
lea rdx, [rdx + 4]
mov rcx, qword [r14]
cmp r8d, dword [rcx]
jb 0x14000cc60
inc r13d
mov dword [rsp + 0x30], r13d
cmp r13d, dword [rcx + 4]
jb 0x14000cad0
mov r15, qword [rsp + 0x160]
mov edx, dword [rcx + 8]
xor r8d, r8d
mov rcx, r14
call fcn.14000b3d0
mov rcx, qword [r14]
mov rax, qword [rsp + 0x58]
mov r13, qword [rsp + 0x168]
mov edx, dword [rcx]
mov dword [rax], edx
mov rcx, qword [r14]
mov rax, qword [rsp + 0x60]
mov edx, dword [rcx + 4]
mov dword [rax], edx
mov rax, rdi
jmp 0x14000ccef
mov rcx, qword [r14]
mov edx, dword [rcx + 8]
xor r8d, r8d
mov rcx, r14
call fcn.14000b3d0
lea rax, str.outofmem
mov qword [0x1400a4630], rax
xor eax, eax
mov rdi, qword [rsp + 0x178]
mov rsi, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x1b8]
mov r12, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.140078830
add rsp, 0x188
pop r14
pop rbp
ret