Function at 0x1800b27e0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x90
mov eax, dword [rsp + 0xd0]
and eax, 1
test eax, eax
je 0x1800b2810
mov byte [rsp], 0x30
jmp 0x1800b2814
mov byte [rsp], 0x20
movzx eax, byte [rsp]
mov byte [rsp + 5], al
cmp qword [rsp + 0xb0], 0
jne 0x1800b2924
lea rax, [rsp + 1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 3]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 1]
mov byte [rsp + 8], al
movzx eax, byte [rsp + 2]
mov byte [rsp + 0x10], al
movzx eax, byte [rsp + 3]
mov byte [rsp + 0x18], al
movabs rax, 0x77e160c320d921f9
mov qword [rsp + 0x40], rax
movabs rax, 0xf4486d129c2e07c6
mov qword [rsp + 0x48], rax
movabs rax, 0x77e15e8f6c8c6fc5
mov qword [rsp + 0x50], rax
movabs rax, 0xf4486d129c2e07c6
mov qword [rsp + 0x58], rax
lea rax, [rsp + 4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 4]
mov byte [rsp + 0x20], al
movdqa xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x80], xmm0
movdqa xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x40], xmm0
lea rax, [rsp + 0x40]
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0xb8], 6
jmp 0x1800b2993
cmp dword [rsp + 0xb8], 0xffffffff
jne 0x1800b2975
mov dword [rsp + 0xb8], 0
mov eax, dword [rsp + 0xc8]
cmp dword [rsp + 0xb8], eax
jae 0x1800b2973
movsxd rax, dword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb0]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x1800b2973
mov eax, dword [rsp + 0xb8]
inc eax
mov dword [rsp + 0xb8], eax
jmp 0x1800b2939
jmp 0x1800b2993
mov eax, dword [rsp + 0xc8]
cmp dword [rsp + 0xb8], eax
jbe 0x1800b2993
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0xd0]
and eax, 0x10
test eax, eax
jne 0x1800b2a07
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0xc0]
dec eax
mov dword [rsp + 0xc0], eax
mov eax, dword [rsp + 0x2c]
cmp dword [rsp + 0x30], eax
jge 0x1800b2a07
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rax
ja 0x1800b29f2
mov rax, qword [rsp + 0xa0]
movzx ecx, byte [rsp + 5]
mov byte [rax], cl
mov rax, qword [rsp + 0xa0]
inc rax
mov qword [rsp + 0xa0], rax
jmp 0x1800b29a1
mov dword [rsp + 0x28], 0
jmp 0x1800b2a1b
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0x28], eax
jge 0x1800b2a80
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rax
ja 0x1800b2a6b
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
mov byte [rsp + 6], al
mov rax, qword [rsp + 0xb0]
inc rax
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xa0]
movzx ecx, byte [rsp + 6]
mov byte [rax], cl
mov rax, qword [rsp + 0xa0]
inc rax
mov qword [rsp + 0xa0], rax
jmp 0x1800b2a11
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0xc0]
dec eax
mov dword [rsp + 0xc0], eax
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x38], eax
jge 0x1800b2ae2
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rax
ja 0x1800b2acd
mov rax, qword [rsp + 0xa0]
mov byte [rax], 0x20
mov rax, qword [rsp + 0xa0]
inc rax
mov qword [rsp + 0xa0], rax
jmp 0x1800b2a80
mov rax, qword [rsp + 0xa0]
add rsp, 0x90
pop rdi
ret