Function at 0x1800b2b00
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 0x1800b2b30
mov byte [rsp], 0x30
jmp 0x1800b2b34
mov byte [rsp], 0x20
movzx eax, byte [rsp]
mov byte [rsp + 5], al
cmp qword [rsp + 0xb0], 0
jne 0x1800b2c44
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, 0x77ad5eda6cc26ff9
mov qword [rsp + 0x40], rax
movabs rax, 0xf4486d129c10078a
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 0x1800b2cb3
cmp dword [rsp + 0xb8], 0xffffffff
jne 0x1800b2c95
mov dword [rsp + 0xb8], 0
mov eax, dword [rsp + 0xc8]
cmp dword [rsp + 0xb8], eax
jae 0x1800b2c93
movsxd rax, dword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb0]
movzx eax, word [rcx + rax*2]
test eax, eax
je 0x1800b2c93
mov eax, dword [rsp + 0xb8]
inc eax
mov dword [rsp + 0xb8], eax
jmp 0x1800b2c59
jmp 0x1800b2cb3
mov eax, dword [rsp + 0xc8]
cmp dword [rsp + 0xb8], eax
jbe 0x1800b2cb3
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0xd0]
and eax, 0x10
test eax, eax
jne 0x1800b2d27
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 0x1800b2d27
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rax
ja 0x1800b2d12
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 0x1800b2cc1
mov dword [rsp + 0x28], 0
jmp 0x1800b2d3b
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0x28], eax
jge 0x1800b2da1
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rax
ja 0x1800b2d8c
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
mov byte [rsp + 6], al
mov rax, qword [rsp + 0xb0]
add rax, 2
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 0x1800b2d31
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 0x1800b2e03
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rax
ja 0x1800b2dee
mov rax, qword [rsp + 0xa0]
mov byte [rax], 0x20
mov rax, qword [rsp + 0xa0]
inc rax
mov qword [rsp + 0xa0], rax
jmp 0x1800b2da1
mov rax, qword [rsp + 0xa0]
add rsp, 0x90
pop rdi
ret