Function at 0x140110f40
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov rsi, rcx
movzx eax, byte [r9]
test r8b, 1
jne 0x140110fee
test al, al
je 0x140110ff2
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
mov r9, qword [rdx + 0x18]
mov rdx, rax
cmp r8, r9
je 0x140111077
mov rdx, rax
jmp 0x140110fad
add r8, 0x20
cmp r8, r9
je 0x140111077
movzx r10d, word [r8]
cmp r10w, 2
je 0x140111077
movups xmm0, xmmword [r8 + 2]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [rbp - 0x42], xmm1
movaps xmmword [rbp - 0x50], xmm0
test r10w, r10w
je 0x140110fa0
mov word [rdx], r10w
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx + 2], xmm0
movups xmm0, xmmword [rbp - 0x42]
movups xmmword [rdx + 0x10], xmm0
add rdx, 0x20
jmp 0x140110fa0
test al, al
je 0x140111010
mov rbx, qword [rdx + 8]
mov r14, qword [rdx + 0x18]
cmp r14, rbx
je 0x140111098
cmp word [rbx], 0
sete r15b
jmp 0x14011109b
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
mov r9, qword [rdx + 0x18]
mov rdx, rax
cmp r8, r9
je 0x140111077
mov rdx, rax
jmp 0x140111039
add r8, 0x20
cmp r8, r9
je 0x140111077
movzx r10d, word [r8]
cmp r10w, 2
je 0x140111077
movups xmm0, xmmword [r8 + 2]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [rbp - 0x42], xmm1
movaps xmmword [rbp - 0x50], xmm0
test r10w, r10w
jne 0x140111030
mov word [rdx], 0
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx + 2], xmm0
movups xmm0, xmmword [rbp - 0x42]
movups xmmword [rdx + 0x10], xmm0
add rdx, 0x20
jmp 0x140111030
movabs r8, 0x7ffffffffffffff
and rcx, r8
mov r8d, 4
xor r9d, r9d
mov r10d, 4
jmp 0x140111125
mov r15b, 1
mov rax, qword [rdx]
mov qword [rbp - 0x58], rax
mov rax, qword [rdx + 0x10]
mov qword [rbp + 8], rax
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 4
mov qword [rbp], 0
mov qword [rbp - 0x28], 0
mov qword [rbp - 0x20], 4
mov qword [rbp - 0x18], 0
cmp r14, rbx
jne 0x14011119e
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x1401110ff
shl rdx, 5
mov r8d, 4
mov rcx, qword [rbp - 0x58]
call fcn.14001a240
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 8]
mov rdx, qword [rbp]
mov r9, qword [rbp - 0x28]
mov r8, qword [rbp - 0x20]
mov r10, qword [rbp - 0x18]
shl rdx, 5
add rdx, rax
shl r10, 5
add r10, r8
mov qword [rsi], rax
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], rdx
mov qword [rsi + 0x20], r8
mov qword [rsi + 0x28], r8
mov qword [rsi + 0x30], r9
mov qword [rsi + 0x38], r10
mov rax, rsi
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, rdi
call fcn.140121820
mov rax, qword [rdi + 8]
mov rcx, r13
shl rcx, 5
mov word [rax + rcx], r12w
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rax + rcx + 2], xmm0
movups xmm0, xmmword [rbp - 0x42]
movups xmmword [rax + rcx + 0x10], xmm0
inc r13
mov qword [rdi + 0x10], r13
add rbx, 0x20
cmp rbx, r14
je 0x1401110e3
movzx r12d, word [rbx]
cmp r12w, 2
je 0x1401110e3
movups xmm0, xmmword [rbx + 2]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x42], xmm1
movaps xmmword [rbp - 0x50], xmm0
test r12w, r12w
setne al
xor al, r15b
je 0x1401111e0
mov r13, qword [rbp]
lea rdi, [rbp - 0x10]
cmp r13, qword [rbp - 0x10]
je 0x140111160
jmp 0x140111168
mov r13, qword [rbp - 0x18]
lea rdi, [rbp - 0x28]
cmp r13, qword [rbp - 0x28]
je 0x140111160
jmp 0x140111168