Function at 0x180027e00
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x100
cmp qword [rsp + 0x110], 0
jne 0x180027e1f
xor al, al
jmp 0x1800280d5
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x20]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x21]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x22]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x20]
mov byte [rsp + 0x28], al
movzx eax, byte [rsp + 0x21]
mov byte [rsp + 0x30], al
movzx eax, byte [rsp + 0x22]
mov byte [rsp + 0x38], al
movabs rax, 0x42d3d9b6ed9a722f
mov qword [rsp + 0x70], rax
movabs rax, 0x9c72ff1d6f687690
mov qword [rsp + 0x78], rax
movabs rax, 0x2ebfbd9884fd0a4b
mov qword [rsp + 0xa0], rax
movabs rax, 0x9c72ff1d6f687690
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x23]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x23]
mov byte [rsp + 0x40], al
movdqa xmm0, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0xc0], xmm0
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0xb0], xmm0
movdqa xmm0, xmmword [rsp + 0xb0]
xorps xmm0, xmmword [rsp + 0xc0]
movdqa xmmword [rsp + 0xd0], xmm0
movdqa xmm0, xmmword [rsp + 0xd0]
movdqa xmmword [rsp + 0x70], xmm0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov rcx, rax
call fcn.180004880
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x48], 0xffffffffffffffff
inc qword [rsp + 0x48]
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x48]
cmp byte [rax + rcx], 0
jne 0x180027f5d
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x90], rax
mov r8, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
call fcn.180003ef0
mov rcx, qword [rsp + 0x50]
call fcn.180006f30
mov qword [0x1801bfe08], rax
cmp qword [0x1801bfe08], 0
jne 0x180027fbb
xor al, al
jmp 0x1800280d5
mov rax, qword [0x1801bfe08]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [0x1801bfe08]
add rcx, rax
mov rax, rcx
mov qword [0x1801bfe10], rax
mov rax, qword [0x1801bfe10]
cmp dword [rax], 0x4550
je 0x180027ff0
xor al, al
jmp 0x1800280d5
mov rax, qword [0x1801bfe10]
mov eax, dword [rax + 0x50]
mov qword [0x1801bfe18], rax
cmp qword [0x1801bfe18], 0
ja 0x180028012
xor al, al
jmp 0x1800280d5
mov rax, qword [rsp + 0x110]
mov qword [0x1801bfe20], rax
mov rax, qword [0x1801bfe20]
add rax, 0x40
mov qword [0x1801bfe28], rax
cmp qword [0x1801bfe28], 0
jne 0x180028044
xor al, al
jmp 0x1800280d5
mov rax, qword [0x1801bfe28]
mov rax, qword [rax + 8]
mov rax, qword [rax]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
jne 0x180028063
xor al, al
jmp 0x1800280d5
mov eax, 8
imul rax, rax, 3
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
mov qword [0x1801bfe30], rax
mov r8d, 0x1000
mov rdx, qword [rsp + 0x58]
lea rcx, [0x1801bfe40]
call fcn.1800262f0
mov eax, 8
imul rax, rax, 3
lea rcx, [0x1801bfe40]
lea rdx, [0x1800267c0]
mov qword [rcx + rax], rdx
mov rax, qword [0x1801bfe28]
mov rax, qword [rax + 8]
lea rcx, [0x1801bfe40]
mov qword [rax], rcx
mov al, 1
add rsp, 0x100
pop rdi
ret