Function at 0x442e10
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf0
mov rsi, rcx
mov qword [rsp + 0x60], rcx
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movups xmm3, xmmword [rdx + 0x30]
movups xmmword [rsp + 0x78], xmm0
mov rax, qword [rdx + 0x70]
mov qword [rsp + 0xe8], rax
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rsp + 0xd8], xmm0
movups xmm0, xmmword [rdx + 0x50]
movups xmmword [rsp + 0xc8], xmm0
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rsp + 0xb8], xmm0
movups xmmword [rsp + 0xa8], xmm3
movups xmmword [rsp + 0x98], xmm2
movups xmmword [rsp + 0x88], xmm1
mov qword [rsp + 0x70], 3
mov qword [rsp + 0x68], 1
movzx ecx, byte [rsp + 0x80]
mov eax, 1
cmp cl, 6
je 0x442f8f
lea rbx, [rsi + 0x40]
lea r14, [rsp + 0x21]
movzx ebp, byte [rsp + 0x78]
mov byte [rsp + 0x20], cl
movups xmm0, xmmword [rsp + 0x81]
movups xmm1, xmmword [rsp + 0x90]
movups xmmword [r14 + 0xf], xmm1
movups xmmword [r14], xmm0
mov rdx, qword [rsi + 0x50]
cmp rdx, qword [rsi + 0x40]
jne 0x442eea
mov rcx, rbx
call fcn.0042c540
mov rdx, qword [rsi + 0x50]
lea rdi, [rsi + 0x58]
mov rax, qword [rsi + 0x48]
mov byte [rax + rdx], bpl
inc rdx
mov qword [rsi + 0x50], rdx
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x21]
mov edx, dword [rsp + 0x29]
movzx r8d, word [rsp + 0x2d]
movzx r9d, byte [rsp + 0x2f]
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], al
mov qword [rsp + 0x41], rcx
mov dword [rsp + 0x49], edx
mov word [rsp + 0x4d], r8w
mov byte [rsp + 0x4f], r9b
mov rdx, qword [rsi + 0x68]
cmp rdx, qword [rsi + 0x58]
jne 0x442f4f
mov rcx, rdi
call fcn.0042c2d0
mov rdx, qword [rsi + 0x68]
mov rax, qword [rsi + 0x60]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsi + 0x68], rdx
mov qword [rsp + 0x68], 2
movzx ecx, byte [rsp + 0xa8]
mov eax, 2
cmp cl, 6
jne 0x442fd2
mov rbx, rax
xor rbx, 3
lea rax, [rax + rax*4]
lea rdi, [rsp + rax*8]
add rdi, 0x80
nop word cs:[rax + rax]
mov rcx, rdi
call fcn.00428140
add rdi, 0x28
dec rbx
jne 0x442fb0
mov rax, rsi
add rsp, 0xf0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
movzx ebp, byte [rsp + 0xa0]
mov byte [rsp + 0x20], cl
movups xmm0, xmmword [rsp + 0xa9]
movups xmm1, xmmword [rsp + 0xb8]
movups xmmword [r14 + 0xf], xmm1
movups xmmword [r14], xmm0
mov rax, qword [rsi + 0x50]
cmp rax, qword [rsi + 0x40]
jne 0x443014
mov rcx, rbx
mov rdx, rax
call fcn.0042c540
mov rax, qword [rsi + 0x50]
mov rdx, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x48]
mov byte [rcx + rax], bpl
inc rax
mov qword [rsi + 0x50], rax
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x21]
mov r8d, dword [rsp + 0x29]
movzx r9d, word [rsp + 0x2d]
movzx r10d, byte [rsp + 0x2f]
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], al
mov qword [rsp + 0x41], rcx
mov dword [rsp + 0x49], r8d
mov word [rsp + 0x4d], r9w
mov byte [rsp + 0x4f], r10b
cmp rdx, qword [rsi + 0x58]
jne 0x443073
mov rcx, rdi
call fcn.0042c2d0
mov rdx, qword [rsi + 0x68]
mov rax, qword [rsi + 0x60]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsi + 0x68], rdx
mov qword [rsp + 0x68], 3
movzx eax, byte [rsp + 0xd0]
cmp al, 6
je 0x442fc1
movzx ebp, byte [rsp + 0xc8]
mov byte [rsp + 0x20], al
movups xmm0, xmmword [rsp + 0xd1]
movups xmm1, xmmword [rsp + 0xe0]
movups xmmword [r14 + 0xf], xmm1
movups xmmword [r14], xmm0
mov rax, qword [rsi + 0x50]
cmp rax, qword [rsi + 0x40]
jne 0x4430f3
mov rcx, rbx
mov rdx, rax
call fcn.0042c540
mov rax, qword [rsi + 0x50]
mov rdx, qword [rsi + 0x68]
mov rcx, qword [rsi + 0x48]
mov byte [rcx + rax], bpl
inc rax
mov qword [rsi + 0x50], rax
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x21]
mov r8d, dword [rsp + 0x29]
movzx r9d, word [rsp + 0x2d]
movzx r10d, byte [rsp + 0x2f]
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], al
mov qword [rsp + 0x41], rcx
mov dword [rsp + 0x49], r8d
mov word [rsp + 0x4d], r9w
mov byte [rsp + 0x4f], r10b
cmp rdx, qword [rsi + 0x58]
jne 0x443152
mov rcx, rdi
call fcn.0042c2d0
mov rdx, qword [rsi + 0x68]
mov rax, qword [rsi + 0x60]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsi + 0x68], rdx
jmp 0x442fc1