Function at 0x14010f880
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.14000fa10
cmp rax, 2
je 0x14010fa26
lea rcx, [rax - 0x30]
cmp rcx, 0x36
ja 0x14010f8cb
movabs rdx, 0x41000000100001
bt rdx, rcx
jb 0x14010fa26
cmp rax, 8
je 0x14010fa26
mov qword [rsp + 0x40], rbx
mov r9, 0xffffffffffffffff
mov qword [rsp + 0x48], rsi
xor r8d, r8d
mov edx, 0xfa3
mov qword [rsp + 0x58], r14
mov rcx, rdi
call fcn.14000fa10
xor r9d, r9d
xor r8d, r8d
mov edx, 0x86a
mov rcx, rdi
call fcn.14000fa10
xor r14d, r14d
test eax, eax
jle 0x14010f97e
mov ebx, r14d
mov esi, eax
nop word [rax + rax]
xor r9d, r9d
mov r8, rbx
mov edx, 0x8af
mov rcx, rdi
call fcn.14000fa10
bt eax, 0xd
jae 0x14010f975
add eax, 0xfffffc00
and eax, 0xfff
cmp r15d, eax
jne 0x14010f975
xor r9d, r9d
mov r8, rbx
mov edx, 0x8b6
mov rcx, rdi
call fcn.14000fa10
test rax, rax
setne al
cmp al, bpl
je 0x14010f975
movzx r8d, bpl
mov rdx, rbx
mov rcx, rdi
call fcn.1401122d0
inc rbx
sub rsi, 1
jne 0x14010f920
xor r9d, r9d
xor r8d, r8d
mov edx, 0x86a
mov rcx, rdi
call fcn.14000fa10
xor bl, bl
mov r15, rax
mov rsi, r14
test rax, rax
je 0x14010fa0e
mov qword [rsp + 0x50], r12
mov r12d, 1
nop dword [rax]
xor r9d, r9d
mov r8, rsi
mov edx, 0x7fe
mov rcx, rdi
call fcn.14000fa10
mov rbp, rax
bt rax, 0x16
jae 0x14010f9e7
test bl, bl
je 0x14010f9e5
lea r9, [rsi - 1]
mov r8, r14
mov edx, 0x8b3
mov rcx, rdi
call fcn.14000fa10
xor bl, bl
and ebp, 0xa00000
movzx ebx, bl
cmovne ebx, r12d
inc rsi
test rbp, rbp
mov rax, rsi
cmove rax, r14
mov r14, rax
cmp rsi, r15
jb 0x14010f9b0
mov r12, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x58]
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 0x14010fa40
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x1402a98a8]
xor rax, rsp
mov qword [rsp + 0x48], rax
movzx r14d, r8b
mov qword [rsp + 0x88], r13
mov ebx, edx
xor r8d, r8d
mov edx, 0xfa3
mov r9, 0xffffffffffffffff
mov rbp, rcx
call fcn.14000fa10
xor eax, eax
lea r13d, [rbx + 1]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x28], rax
mov edx, 0x86a
mov qword [rsp + 0x30], rax
mov rcx, rbp
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], eax
call fcn.14000fa10
xor r15d, r15d
mov r12, rax
mov edi, r15d
test eax, eax
jle 0x14010fb80
mov ebx, dword [rsp + 0x20]
movsxd rsi, edi
xor r9d, r9d
mov r8, rsi
mov edx, 0x8af
mov rcx, rbp
call fcn.14000fa10
mov r8, rax
bt eax, 0xd
jae 0x14010fb75
and r8d, 0xfff
test ebx, ebx
je 0x14010fb17
nop
lea ecx, [rbx - 1]
movsxd rdx, ecx
cmp r8d, dword [rsp + rdx*4 + 0x24]
jg 0x14010fb17
mov dword [rsp + 0x20], ecx
mov ebx, ecx
test ecx, ecx
jne 0x14010fb00
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 0x14010fb75
xor r9d, r9d
mov r8, rsi
mov edx, 0x8b6
mov rcx, rbp
call fcn.14000fa10
test rax, rax
setne al
cmp al, r14b
je 0x14010fb5b
movzx r8d, r14b
mov rdx, rsi
mov rcx, rbp
call fcn.1401122d0
mov r9, 0xffffffffffffffff
mov r8, rsi
mov edx, 0x8b0
mov rcx, rbp
call fcn.14000fa10
mov rdi, rax
inc edi
cmp edi, r12d
jl 0x14010fad0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x86a
mov rcx, rbp
call fcn.14000fa10
mov r13, qword [rsp + 0x88]
xor bl, bl
mov r14, rax
mov rdi, r15
test rax, rax
je 0x14010fc09
mov r12d, 1
nop
xor r9d, r9d
mov r8, rdi
mov edx, 0x7fe
mov rcx, rbp
call fcn.14000fa10
mov rsi, rax
bt rax, 0x16
jae 0x14010fbe7
test bl, bl
je 0x14010fbe5
lea r9, [rdi - 1]
mov r8, r15
mov edx, 0x8b3
mov rcx, rbp
call fcn.14000fa10
xor bl, bl
and esi, 0xa00000
movzx ebx, bl
cmovne ebx, r12d
inc rdi
test rsi, rsi
mov rax, rdi
cmove rax, r15
mov r15, rax
cmp rdi, r14
jb 0x14010fbb0
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1401813e0
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret