Function at 0x1800ecefb
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x18], rbx
movsxd rax, eax
push rbp
push rsi
rcr bp, cl
adc sil, 0xf1
xor sil, r10b
push rdi
movzx ax, spl
push r14
jmp 0x1800ecf1c
push r15
sub rsp, 0x20
dec esi
mov rbp, rdx
or al, 0xc
mov rsi, rcx
mov eax, dword [rcx + 0xc]
test rcx, r10
stc
clc
mov ecx, dword [rcx + 8]
cmp ecx, eax
jmp 0x1800ecf3e
jne 0x1800ed0fe
test eax, eax
bswap r15w
movsx r15w, al
lea r15d, [rax + rax]
jmp 0x1800ecf58
jg 0x1800ecf6e
mov r15d, 4
inc bh
btr cx, 0xd7
mov ah, 0x21
movsxd rbx, r15d
mov qword [rsp + 0x50], rbx
movzx eax, bp
mov eax, 0x90
mul rbx
mov cl, 0x68
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
xchg rcx, rcx
mov rcx, rax
call fcn.18009e1d4
mov r14, rax
mov qword [rsp + 0x58], rax
adc dil, dil
bt di, 0xc
mov rdi, rax
clc
test r10w, ax
test r15d, r15d
jmp 0x1800ecfb9
je 0x1800ecfe8
mov rcx, rdi
jmp 0x1800ecfc7
call fcn.18009e1ed
add rdi, 0x90
cmp r14w, 0x51b2
sub rbx, 1
jmp 0x1800ecfe2
jne 0x1800ecfbf
sub ecx, ecx
cmp cx, 0x3fda
jmp 0x1800ecff4
cmp dword [rsi + 8], ecx
jmp 0x1800ecffc
jle 0x1800ed0e2
mov edx, ecx
movsx rax, r14w
mov rax, qword [rsi]
jmp 0x1800ed010
movups xmm0, xmmword [rdx + rax]
jmp 0x1800ed019
movups xmmword [rdx + r14], xmm0
jmp 0x1800ed023
movups xmm1, xmmword [rdx + rax + 0x10]
jmp 0x1800ed02d
movups xmmword [rdx + r14 + 0x10], xmm1
jmp 0x1800ed038
movups xmm0, xmmword [rdx + rax + 0x20]
jmp 0x1800ed042
movups xmmword [rdx + r14 + 0x20], xmm0
jmp 0x1800ed04d
movups xmm1, xmmword [rdx + rax + 0x30]
jmp 0x1800ed057
movups xmmword [rdx + r14 + 0x30], xmm1
jmp 0x1800ed062
movups xmm0, xmmword [rdx + rax + 0x40]
jmp 0x1800ed06c
movups xmmword [rdx + r14 + 0x40], xmm0
movups xmm1, xmmword [rdx + rax + 0x50]
jmp 0x1800ed07c
movups xmmword [rdx + r14 + 0x50], xmm1
jmp 0x1800ed087
movups xmm0, xmmword [rdx + rax + 0x60]
movups xmmword [rdx + r14 + 0x60], xmm0
jmp 0x1800ed097
movups xmm1, xmmword [rdx + rax + 0x70]
jmp 0x1800ed0a1
movups xmmword [rdx + r14 + 0x70], xmm1
jmp 0x1800ed0ac
movups xmm0, xmmword [rdx + rax + 0x80]
jmp 0x1800ed0b9
movups xmmword [rdx + r14 + 0x80], xmm0
jmp 0x1800ed0c7
inc ecx
test r10b, dl
clc
lea rdx, [rdx + 0x90]
cmp ecx, dword [rsi + 8]
jmp 0x1800ed0dc
jl 0x1800ed008
mov rcx, qword [rsi]
call fcn.18009c84b
mov qword [rsi], r14
neg edi
sub bl, dil
xchg rcx, rax
mov dword [rsi + 0xc], r15d
sbb cl, r15b
mov ecx, dword [rsi + 8]
movsxd rax, ecx
lea rcx, [rax + rax*8]
add rcx, rcx
movsx bx, r10b
inc bh
movzx r14d, bx
mov rax, qword [rsi]
cmovge r15w, r15w
bswap r14w
movaps xmm0, xmmword [rbp]
movsx r14, r14w
movups xmmword [rax + rcx*8], xmm0
not r14b
movaps xmm1, xmmword [rbp + 0x10]
setb dil
movups xmmword [rax + rcx*8 + 0x10], xmm1
movzx r15d, bx
movsx r15, r11w
xchg bx, bx
movaps xmm0, xmmword [rbp + 0x20]
not edi
setge r15b
movsxd r14, esp
movups xmmword [rax + rcx*8 + 0x20], xmm0
mov bl, r12b
inc r15w
movaps xmm1, xmmword [rbp + 0x30]
movzx r14w, r8b
cmove r15, r14
setns dil
movups xmmword [rax + rcx*8 + 0x30], xmm1
inc r15b
movzx rdi, r9w
movaps xmm0, xmmword [rbp + 0x40]
inc r14w
mov bh, cl
movsx r15, r14w
movups xmmword [rax + rcx*8 + 0x40], xmm0
dec r15b
movzx r14w, r14b
movaps xmm1, xmmword [rbp + 0x50]
movups xmmword [rax + rcx*8 + 0x50], xmm1
jmp 0x1800ed1aa
movaps xmm0, xmmword [rbp + 0x60]
movsx r15d, r8w
movups xmmword [rax + rcx*8 + 0x60], xmm0
setns r15b
movaps xmm1, xmmword [rbp + 0x70]
dec bl
cmovg r14w, si
movsxd r15, esp
movups xmmword [rax + rcx*8 + 0x70], xmm1
mov bl, r11b
movaps xmm0, xmmword [rbp + 0x80]
movsx r15, r8w
movups xmmword [rax + rcx*8 + 0x80], xmm0
xchg bp, r15w
cmovns rbp, rcx
inc dword [rsi + 8]
mov r15d, 0x533c59fa
sal si, 0x8e
jmp 0x1800ed1fe
mov rbx, qword [rsp + 0x60]
bts bp, r12w
jmp 0x1800ed212
add rsp, 0x20
pop r15
pop r14
mov bp, r14w
seto sil
movsx esi, r14w
pop rdi
movzx esi, r13w
mov sil, 0xf1
pop rsi
movzx ebp, r10w
pop rbp
jmp 0x1800ed239
ret