Function at 0x140011170
Capabilities:
Encrypt data using rc4 prga

Disassembly:
cmp r8d, 3
jl 0x14001156c
mov r11, rsp
push rbx
push rsi
push rdi
push r15
sub rsp, 0x68
test byte [rcx + 0x30], 4
mov r15d, r9d
mov rax, qword [rcx + 0x38]
mov rsi, rdx
movaps xmmword [rsp + 0x50], xmm6
mov rbx, rcx
mov edi, r8d
movsd xmm6, qword [rax]
je 0x1400114c4
mov qword [r11 + 8], rbp
lea edx, [rdi*8 - 6]
mov qword [r11 + 0x10], r12
add edx, edi
mov qword [r11 + 0x20], r13
mov r12d, r9d
lea r13d, [rdi + rdi]
mov qword [r11 - 0x28], r14
movaps xmmword [r11 - 0x68], xmm9
mov r8d, r13d
movss xmm9, dword [rcx + 0xc0]
and r12d, 0xffffff
mov dword [rsp + 0xa0], r13d
call fcn.140010090
mov ebp, dword [rbx + 0x34]
mov r8d, 2
cmp edi, r8d
jle 0x140011231
nop dword [rax]
mov rax, qword [rbx + 0x50]
movzx edx, r8w
add dx, dx
inc r8d
add dx, bp
mov word [rax], bp
mov rax, qword [rbx + 0x50]
lea ecx, [rdx - 2]
mov word [rax + 2], cx
mov rax, qword [rbx + 0x50]
mov word [rax + 4], dx
add qword [rbx + 0x50], 6
cmp r8d, edi
jl 0x140011200
mov r14, qword [rbx + 0x38]
cmp edi, dword [r14 + 0x34]
jle 0x140011281
mov rcx, qword [r14 + 0x38]
test rcx, rcx
je 0x14001125b
mov rax, qword [0x1400cd0d8]
test rax, rax
je 0x140011256
dec dword [rax + 0xf4]
call fcn.140045468
mov rax, qword [0x1400cd0d8]
test rax, rax
je 0x14001126d
inc dword [rax + 0xf4]
movsxd rcx, edi
shl rcx, 3
call fcn.140046e40
mov qword [r14 + 0x38], rax
mov dword [r14 + 0x34], edi
mov rax, qword [rbx + 0x38]
lea r10d, [rdi - 1]
mov r14, qword [rsp + 0x60]
mov r9, qword [rax + 0x38]
test edi, edi
jle 0x140011318
movss xmm4, dword [0x1400b87a0]
mov r8, rsi
movsxd rax, r10d
mov rcx, rsi
neg r8
mov rdx, rdi
xorps xmm5, xmm5
lea rax, [rax*8]
nop dword [rax]
movss xmm2, dword [rcx]
movss xmm3, dword [rcx + 4]
subss xmm2, dword [rax + rsi]
subss xmm3, dword [rax + rsi + 4]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, xmm2
mulss xmm1, xmm3
addss xmm1, xmm0
comiss xmm1, xmm5
jbe 0x1400112fa
movaps xmm0, xmm1
rsqrtss xmm1, xmm1
mulss xmm2, xmm1
mulss xmm3, xmm1
xorps xmm2, xmm4
movss dword [rax + r9], xmm3
movss dword [rax + r9 + 4], xmm2
lea rax, [r8 + rcx]
add rcx, 8
sub rdx, 1
jne 0x1400112c0
xor r11d, r11d
test edi, edi
jle 0x14001149d
movss xmm4, dword [0x1400b86fc]
lea r13d, [rbp + 1]
movss xmm5, dword [0x1400b870c]
movaps xmmword [rsp + 0x40], xmm7
movss xmm7, dword [0x1400b873c]
movaps xmmword [rsp + 0x30], xmm8
movss xmm8, dword [0x1400b86e8]
mulss xmm9, xmm4
nop dword [rax + rax]
movsxd rcx, r11d
movsxd rax, r10d
movss xmm2, dword [r9 + rcx*8]
movss xmm3, dword [r9 + rcx*8 + 4]
addss xmm2, dword [r9 + rax*8]
addss xmm3, dword [r9 + rax*8 + 4]
mulss xmm2, xmm4
mulss xmm3, xmm4
movaps xmm0, xmm2
mulss xmm0, xmm2
movaps xmm1, xmm3
mulss xmm1, xmm3
addss xmm1, xmm0
comiss xmm1, xmm8
jbe 0x1400113b6
movaps xmm0, xmm5
divss xmm0, xmm1
movaps xmm1, xmm7
minss xmm1, xmm0
mulss xmm2, xmm1
mulss xmm3, xmm1
movss xmm0, dword [rsi + rcx*8]
add r10w, r10w
mov rax, qword [rbx + 0x48]
movzx r8d, r11w
mulss xmm2, xmm9
add r8w, r8w
mulss xmm3, xmm9
subss xmm0, xmm2
lea edx, [r8 + rbp]
add r8w, r13w
movss dword [rax], xmm0
movss xmm1, dword [rsi + rcx*8 + 4]
mov rax, qword [rbx + 0x48]
subss xmm1, xmm3
movss dword [rax + 4], xmm1
mov rax, qword [rbx + 0x48]
movsd qword [rax + 8], xmm6
mov rax, qword [rbx + 0x48]
mov dword [rax + 0x10], r15d
addss xmm2, dword [rsi + rcx*8]
mov rax, qword [rbx + 0x48]
movss dword [rax + 0x14], xmm2
addss xmm3, dword [rsi + rcx*8 + 4]
mov rax, qword [rbx + 0x48]
lea ecx, [r10 + rbp]
add r10w, r13w
movss dword [rax + 0x18], xmm3
mov rax, qword [rbx + 0x48]
movsd qword [rax + 0x1c], xmm6
mov rax, qword [rbx + 0x48]
mov dword [rax + 0x24], r12d
mov rax, qword [rbx + 0x50]
add qword [rbx + 0x48], 0x28
mov word [rax], dx
mov rax, qword [rbx + 0x50]
mov word [rax + 2], cx
mov rax, qword [rbx + 0x50]
mov word [rax + 4], r10w
mov rax, qword [rbx + 0x50]
mov word [rax + 6], r10w
mov r10d, r11d
mov rax, qword [rbx + 0x50]
inc r11d
mov word [rax + 8], r8w
mov rax, qword [rbx + 0x50]
mov word [rax + 0xa], dx
add qword [rbx + 0x50], 0xc
cmp r11d, edi
jl 0x140011360
mov r13d, dword [rsp + 0xa0]
movaps xmm8, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm9, xmmword [rsp + 0x20]
mov r12, qword [rsp + 0x98]
mov rbp, qword [rsp + 0x90]
movzx eax, r13w
mov r13, qword [rsp + 0xa8]
jmp 0x14001155b
lea eax, [rdi - 2]
mov r8d, edi
lea edx, [rax + rax*2]
call fcn.140010090
test edi, edi
jle 0x14001150c
mov rcx, rdi
nop dword [rax]
mov rax, qword [rbx + 0x48]
movsd xmm0, qword [rsi]
lea rsi, [rsi + 8]
movsd qword [rax], xmm0
mov rax, qword [rbx + 0x48]
movsd qword [rax + 8], xmm6
mov rax, qword [rbx + 0x48]
mov dword [rax + 0x10], r15d
add qword [rbx + 0x48], 0x14
sub rcx, 1
jne 0x1400114e0
mov r8d, 2
cmp edi, r8d
jle 0x140011558
nop word [rax + rax]
mov rcx, qword [rbx + 0x50]
movzx eax, word [rbx + 0x34]
mov word [rcx], ax
lea ecx, [r8 - 1]
add cx, word [rbx + 0x34]
mov rax, qword [rbx + 0x50]
mov word [rax + 2], cx
movzx ecx, r8w
mov rax, qword [rbx + 0x50]
inc r8d
add cx, word [rbx + 0x34]
mov word [rax + 4], cx
add qword [rbx + 0x50], 6
cmp r8d, edi
jl 0x140011520
movzx eax, di
add dword [rbx + 0x34], eax
movaps xmm6, xmmword [rsp + 0x50]
add rsp, 0x68
pop r15
pop rdi
pop rsi
pop rbx
ret