Function at 0x1400f8ea0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
push rdi
push r15
sub rsp, 0x20
movzx ebp, r8b
mov r15d, edx
xor r8d, r8d
mov edx, 0xfa2
xor r9d, r9d
mov rdi, rcx
call fcn.14000f5d0
cmp rax, 2
je 0x1400f9029
lea rcx, [rax - 0x30]
cmp rcx, 0x36
ja 0x1400f8eeb
movabs rdx, 0x41000000100001
bt rdx, rcx
jb 0x1400f9029
cmp rax, 8
je 0x1400f9029
mov qword [rsp + 0x40], rbx
or r9, 0xffffffffffffffff
mov qword [rsp + 0x48], rsi
xor r8d, r8d
mov edx, 0xfa3
mov qword [rsp + 0x50], r14
mov rcx, rdi
call fcn.14000f5d0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x86a
mov rcx, rdi
call fcn.14000f5d0
xor r14d, r14d
test eax, eax
jle 0x1400f8f9e
mov ebx, r14d
mov esi, eax
nop word [rax + rax]
xor r9d, r9d
mov r8, rbx
mov edx, 0x8af
mov rcx, rdi
call fcn.14000f5d0
bt eax, 0xd
jae 0x1400f8f95
add eax, 0xfffffc00
and eax, 0xfff
cmp r15d, eax
jne 0x1400f8f95
xor r9d, r9d
mov r8, rbx
mov edx, 0x8b6
mov rcx, rdi
call fcn.14000f5d0
test rax, rax
setne al
cmp al, bpl
je 0x1400f8f95
movzx r8d, bpl
mov rdx, rbx
mov rcx, rdi
call fcn.1400fb450
inc rbx
sub rsi, 1
jne 0x1400f8f40
xor r9d, r9d
xor r8d, r8d
mov edx, 0x86a
mov rcx, rdi
call fcn.14000f5d0
xor sil, sil
mov r15, rax
mov rbx, r14
test rax, rax
je 0x1400f9011
nop
xor r9d, r9d
mov r8, rbx
mov edx, 0x7fe
mov rcx, rdi
call fcn.14000f5d0
mov rbp, rax
bt rax, 0x16
jae 0x1400f8ff9
test sil, sil
je 0x1400f8ff6
lea r9, [rbx - 1]
mov r8, r14
mov edx, 0x8b3
mov rcx, rdi
call fcn.14000f5d0
xor sil, sil
test rbp, 0xa00000
je 0x1400f9009
mov sil, 1
lea r14, [rbx + 1]
inc rbx
cmp rbx, r15
jb 0x1400f8fc0
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop rdi
pop rbp
ret
movzx r8d, bpl
mov edx, r15d
mov rcx, rdi
add rsp, 0x20
pop r15
pop rdi
pop rbp
jmp 0x1400f9040
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x14028e6b0]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov qword [r11 + 0x10], r12
movzx r14d, r8b
mov qword [r11 + 0x18], r13
or r9, 0xffffffffffffffff
lea r13d, [rdx + 1]
xor r8d, r8d
mov edx, 0xfa3
mov rbp, rcx
call fcn.14000f5d0
xor eax, eax
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x86a
mov qword [rsp + 0x28], rax
mov rcx, rbp
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], eax
call fcn.14000f5d0
xor r15d, r15d
mov r12, rax
mov edi, r15d
test eax, eax
jle 0x1400f917d
mov ebx, dword [rsp + 0x20]
nop word [rax + rax]
movsxd rsi, edi
xor r9d, r9d
mov r8, rsi
mov edx, 0x8af
mov rcx, rbp
call fcn.14000f5d0
mov r8, rax
bt eax, 0xd
jae 0x1400f9172
and r8d, 0xfff
test ebx, ebx
je 0x1400f9117
nop
lea ecx, [rbx - 1]
movsxd rdx, ecx
cmp r8d, dword [rsp + rdx*4 + 0x24]
jg 0x1400f9117
mov dword [rsp + 0x20], ecx
mov ebx, ecx
test ecx, ecx
jne 0x1400f9100
movsxd rax, ebx
mov dword [rsp + rax*4 + 0x24], r8d
mov ebx, dword [rsp + 0x20]
inc ebx
mov dword [rsp + 0x20], ebx
cmp r13d, ebx
jne 0x1400f9172
xor r9d, r9d
mov r8, rsi
mov edx, 0x8b6
mov rcx, rbp
call fcn.14000f5d0
test rax, rax
setne al
cmp al, r14b
je 0x1400f915b
movzx r8d, r14b
mov rdx, rsi
mov rcx, rbp
call fcn.1400fb450
or r9, 0xffffffffffffffff
mov r8, rsi
mov edx, 0x8b0
mov rcx, rbp
call fcn.14000f5d0
mov rdi, rax
inc edi
cmp edi, r12d
jl 0x1400f90d0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x86a
mov rcx, rbp
call fcn.14000f5d0
mov r13, qword [rsp + 0x90]
xor dil, dil
mov r12, qword [rsp + 0x88]
mov r14, rax
mov rbx, r15
test rax, rax
je 0x1400f9201
nop
xor r9d, r9d
mov r8, rbx
mov edx, 0x7fe
mov rcx, rbp
call fcn.14000f5d0
mov rsi, rax
bt rax, 0x16
jae 0x1400f91e9
test dil, dil
je 0x1400f91e6
lea r9, [rbx - 1]
mov r8, r15
mov edx, 0x8b3
mov rcx, rbp
call fcn.14000f5d0
xor dil, dil
test rsi, 0xa00000
je 0x1400f91f9
mov dil, 1
lea r15, [rbx + 1]
inc rbx
cmp rbx, r14
jb 0x1400f91b0
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140168660
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret