Function at 0x14000c8d9
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov r9, r8
mov r8, rdx
xor edx, edx
jmp 0x14000c8d0
test r9, r9
je 0x14000cdb5
mov r11, rsp
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [r11 - 0x118]
sub rsp, 0x1f0
mov rax, qword [0x1400681b8]
xor rax, rsp
mov qword [rbp + 0xc0], rax
movzx eax, byte [rcx + 0x90]
mov rbx, r9
mov qword [r11 - 0x30], r12
mov r14, r8
mov qword [r11 - 0x40], r15
mov rsi, rdx
mov rdi, rcx
test al, al
jne 0x14000ca1c
movups xmm0, xmmword [rcx + 0x48]
movzx eax, byte [rcx + 0x88]
mov r15, rdx
movups xmm1, xmmword [rcx + 0x58]
cmp byte [rcx + 0x89], 0
movups xmm2, xmmword [rcx + 0x20]
mov byte [rbp - 0x48], al
mov rax, qword [rcx + 0x40]
movups xmm3, xmmword [rcx + 0x30]
mov qword [rsp + 0x70], rax
sete al
movups xmmword [rsp + 0x78], xmm0
add al, 2
shr r15, 6
movups xmm0, xmmword [rcx + 0x68]
or al, byte [rcx + 0x8a]
and esi, 0x3f
mov byte [rbp - 0x47], al
movaps xmmword [rbp - 0x40], xmm2
movaps xmmword [rbp - 0x30], xmm3
movups xmmword [rbp - 0x68], xmm0
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rbp - 0x78], xmm1
movaps xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rcx + 0x78]
movups xmm0, xmmword [rbp - 0x70]
movups xmmword [rbp - 0x58], xmm1
movaps xmmword [rbp], xmm0
movups xmm1, xmmword [rbp - 0x80]
movups xmm0, xmmword [rbp - 0x50]
movaps xmmword [rbp - 0x10], xmm1
movaps xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x10], xmm1
test rbx, rbx
je 0x14000cd89
xor r12d, r12d
nop dword [rax]
movzx eax, byte [rbp + 0x29]
lea rcx, [rbp + 0x50]
movzx r8d, byte [rbp + 0x28]
lea rdx, [rbp - 0x18]
mov qword [rsp + 0x28], rcx
or al, 8
lea rcx, [rbp - 0x40]
mov byte [rsp + 0x20], al
mov r9, r15
call fcn.14000e3c0
mov edi, 0x40
lea rdx, [rbp + 0x50]
sub rdi, rsi
mov rcx, r14
cmp rbx, rdi
cmovbe rdi, rbx
add rdx, rsi
mov r8, rdi
call fcn.1400428f0
add r14, rdi
inc r15
mov rsi, r12
sub rbx, rdi
jne 0x14000c9c0
jmp 0x14000cd89
movzx ecx, byte [rcx + 0x89]
xor r12d, r12d
movzx edx, byte [rdi + 0x88]
movzx r15d, al
mov eax, ecx
shl rax, 6
add rax, rdx
je 0x14000ca7c
mov rax, qword [rdi + 0x40]
test cl, cl
movups xmm0, xmmword [rdi + 0x48]
mov qword [rbp + 0x70], rax
sete al
movups xmm1, xmmword [rdi + 0x58]
add al, 2
mov byte [rbp + 0xb8], dl
or al, byte [rdi + 0x8a]
movups xmm2, xmmword [rdi + 0x20]
movups xmm3, xmmword [rdi + 0x30]
movups xmmword [rbp + 0x78], xmm0
movups xmm0, xmmword [rdi + 0x68]
movups xmmword [rbp + 0x88], xmm1
movups xmm1, xmmword [rdi + 0x78]
jmp 0x14000cacd
movups xmm2, xmmword [rdi]
add r15, 0xfffffffffffffffe
mov byte [rbp + 0xb8], 0x40
movups xmm3, xmmword [rdi + 0x10]
mov rax, r15
mov qword [rbp + 0x70], r12
shl rax, 5
movups xmm0, xmmword [rax + rdi + 0x91]
movups xmm1, xmmword [rax + rdi + 0xa1]
movups xmmword [rbp + 0x78], xmm0
movups xmm0, xmmword [rax + rdi + 0xb1]
movups xmmword [rbp + 0x88], xmm1
movups xmm1, xmmword [rax + rdi + 0xc1]
movzx eax, byte [rdi + 0x8a]
or al, 4
mov byte [rbp + 0xb9], al
movaps xmmword [rsp + 0x60], xmm3
movaps xmmword [rsp + 0x50], xmm2
movups xmmword [rbp + 0x98], xmm0
movups xmm0, xmmword [rbp + 0x70]
movups xmmword [rbp + 0xa8], xmm1
movaps xmmword [rsp + 0x70], xmm0
movups xmm0, xmmword [rbp + 0x90]
movups xmm1, xmmword [rbp + 0x80]
movaps xmmword [rbp - 0x70], xmm0
movaps xmmword [rbp - 0x80], xmm1
movups xmm0, xmmword [rbp + 0xb0]
movups xmm1, xmmword [rbp + 0xa0]
movaps xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp - 0x60], xmm1
test r15, r15
je 0x14000cd1a
mov qword [rsp + 0x1e0], r13
mov r13, r15
shl r13, 5
nop dword [rax + rax]
movups xmm0, xmmword [rdi + r13 + 0x71]
movzx eax, byte [rbp - 0x47]
lea r13, [r13 - 0x20]
mov r9, qword [rsp + 0x70]
lea rdx, [rsp + 0x78]
movzx r8d, byte [rbp - 0x48]
lea rcx, [rbp + 0x30]
movups xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], al
movups xmm0, xmmword [rdi + r13 + 0xa1]
movups xmmword [rbp + 0x30], xmm2
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rbp + 0x40], xmm3
call fcn.14000e310
mov ecx, dword [rbp + 0x30]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x71], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x72], al
mov byte [rbp + 0x70], cl
shr ecx, 0x18
mov byte [rbp + 0x73], cl
mov ecx, dword [rbp + 0x34]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x75], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x76], al
mov byte [rbp + 0x74], cl
shr ecx, 0x18
mov byte [rbp + 0x77], cl
mov ecx, dword [rbp + 0x38]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x79], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x7a], al
mov byte [rbp + 0x78], cl
shr ecx, 0x18
mov byte [rbp + 0x7b], cl
mov ecx, dword [rbp + 0x3c]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x7d], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x7e], al
mov byte [rbp + 0x7c], cl
shr ecx, 0x18
mov byte [rbp + 0x7f], cl
mov ecx, dword [rbp + 0x40]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x81], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x82], al
mov byte [rbp + 0x80], cl
shr ecx, 0x18
mov byte [rbp + 0x83], cl
mov ecx, dword [rbp + 0x44]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x85], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x86], al
mov byte [rbp + 0x84], cl
shr ecx, 0x18
mov byte [rbp + 0x87], cl
mov ecx, dword [rbp + 0x48]
mov eax, ecx
shr eax, 8
mov byte [rbp + 0x89], al
mov eax, ecx
shr eax, 0x10
mov byte [rbp + 0x88], cl
movups xmm0, xmmword [rsp + 0x30]
mov byte [rbp + 0x8a], al
movups xmm1, xmmword [rsp + 0x40]
shr ecx, 0x18
movups xmm2, xmmword [rdi]
mov byte [rbp + 0x8b], cl
mov ecx, dword [rbp + 0x4c]
mov eax, ecx
movups xmm3, xmmword [rdi + 0x10]
shr eax, 8
mov byte [rbp + 0x8d], al
mov eax, ecx
movups xmmword [rbp - 0x18], xmm0
shr eax, 0x10
movaps xmm0, xmmword [rbp + 0x70]
movups xmmword [rbp + 8], xmm0
mov byte [rbp + 0x8e], al
movzx eax, byte [rdi + 0x8a]
movups xmmword [rbp - 8], xmm1
mov byte [rbp + 0x8c], cl
or al, 4
shr ecx, 0x18
mov qword [rbp - 0x20], r12
mov byte [rbp + 0x8f], cl
movaps xmm1, xmmword [rbp + 0x80]
mov byte [rbp + 0x28], 0x40
mov byte [rbp + 0x29], al
movaps xmmword [rsp + 0x50], xmm2
movaps xmmword [rsp + 0x60], xmm3
movups xmm0, xmmword [rbp - 0x20]
movups xmmword [rbp + 0x18], xmm1
movaps xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rbp - 0x10]
movups xmm0, xmmword [rbp]
movaps xmmword [rbp - 0x80], xmm1
movaps xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rbp + 0x10]
movups xmm0, xmmword [rbp + 0x20]
movaps xmmword [rbp - 0x60], xmm1
movaps xmmword [rbp - 0x50], xmm0
sub r15, 1
jne 0x14000cb40
mov r13, qword [rsp + 0x1e0]
mov r15, rsi
and esi, 0x3f
shr r15, 6
test rbx, rbx
je 0x14000cd89
nop dword [rax]
movzx eax, byte [rbp - 0x47]
lea rcx, [rbp + 0x50]
movzx r8d, byte [rbp - 0x48]
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
or al, 8
lea rcx, [rsp + 0x50]
mov byte [rsp + 0x20], al
mov r9, r15
call fcn.14000e3c0
mov edi, 0x40
lea rdx, [rbp + 0x50]
sub rdi, rsi
mov rcx, r14
cmp rbx, rdi
cmovbe rdi, rbx
add rdx, rsi
mov r8, rdi
call fcn.1400428f0
add r14, rdi
inc r15
mov rsi, r12
sub rbx, rdi
jne 0x14000cd30
mov r12, qword [rsp + 0x1e8]
mov r15, qword [rsp + 0x1d8]
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.140041820
add rsp, 0x1f0
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret