Function at 0x48cfc0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
sub rsp, 0xf8
mov qword [rsp + 0xe0], r8
mov qword [rsp + 0xe8], r9
mov r10b, 1
mov rax, rdx
cmp rdx, 0x101
jb 0x48d02f
mov r11d, 0xff
sub r11, rdx
mov esi, 0x100
nop word cs:[rax + rax]
cmp rsi, rdx
jae 0x48d00b
cmp byte [rcx + rsi], 0xbf
jg 0x48d029
lea rax, [rsi - 1]
xor r10d, r10d
cmp rsi, 1
je 0x48d02f
add rsi, r11
cmp rsi, 0x100
mov rsi, rax
jne 0x48d000
jmp 0x48d02f
xor r10d, r10d
mov rax, rsi
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
lea rax, [0x004d3ed5]
lea rsi, str._..._byte_index__is_out_of_bounds_of___
test r10b, r10b
cmovne rsi, rax
xor r10b, 1
movzx eax, r10b
lea rax, [rax + rax*4]
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xc8], rax
cmp r8, rdx
ja 0x48d0f8
cmp r9, rdx
ja 0x48d0f8
cmp r8, r9
ja 0x48d365
test r8, r8
je 0x48d09a
cmp rdx, r8
je 0x48d09a
jbe 0x48d09d
cmp byte [rcx + r8], 0xc0
jl 0x48d09d
mov r8, r9
mov qword [rsp + 0xf0], r8
test r8, r8
je 0x48d19a
cmp r8, rdx
je 0x48d19a
lea rax, [rdx + 1]
nop dword [rax + rax]
cmp r8, rdx
jae 0x48d0cc
cmp byte [rcx + r8], 0xbf
jg 0x48d0e1
lea rsi, [r8 - 1]
cmp r8, 1
je 0x48d0de
cmp rax, r8
mov r8, rsi
jne 0x48d0c0
mov r8, rsi
cmp r8, rdx
jne 0x48d1a6
lea rcx, [0x004d3a90]
call fcn.00488de0
cmp r8, rdx
cmova r9, r8
mov qword [rsp + 0xd0], r9
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x60], rax
lea rax, [0x00486c00]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x70], rax
lea rax, [0x00493050]
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
lea rax, [0x004d3ef8]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 3
lea rax, [0x004d3f28]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 3
lea rax, [rsp + 0x60]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 3
lea rdx, str.libcore_strmod.rs
jmp 0x48d359
mov rsi, r8
cmp r8, rdx
je 0x48d0ea
movzx eax, byte [rcx + r8]
test al, al
js 0x48d1bd
mov dword [rsp + 0x2c], eax
mov eax, 1
jmp 0x48d27d
add rdx, rcx
lea rsi, [rcx + r8]
add rsi, 1
xor r9d, r9d
mov rdi, rdx
cmp rsi, rdx
je 0x48d1e6
add rcx, r8
movzx r9d, byte [rcx + 1]
add rcx, 2
and r9d, 0x3f
mov rdi, rcx
mov ecx, eax
and ecx, 0x1f
cmp al, 0xe0
jb 0x48d241
xor r11d, r11d
mov r10, rdx
cmp rdi, rdx
je 0x48d209
movzx r11d, byte [rdi]
add rdi, 1
and r11d, 0x3f
mov r10, rdi
shl r9d, 6
or r9d, r11d
cmp al, 0xf0
jb 0x48d246
xor eax, eax
cmp r10, rdx
je 0x48d222
movzx eax, byte [r10]
and eax, 0x3f
and ecx, 7
shl ecx, 0x12
shl r9d, 6
or r9d, ecx
or r9d, eax
cmp r9d, 0x110000
je 0x48d0ea
jmp 0x48d24c
shl ecx, 6
jmp 0x48d249
shl ecx, 0xc
or r9d, ecx
mov dword [rsp + 0x2c], r9d
mov eax, 1
cmp r9d, 0x80
jb 0x48d27d
mov eax, 2
cmp r9d, 0x800
jb 0x48d27d
cmp r9d, 0x10000
mov eax, 4
sbb rax, 0
add rax, r8
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x60], rax
lea rax, [0x00486c00]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x2c]
mov qword [rsp + 0x70], rax
lea rax, [0x00491860]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x80], rax
lea rax, [0x0048b0f0]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x90], rax
lea rax, [0x00493050]
mov qword [rsp + 0x98], rax
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], rax
lea rax, [0x004d41d0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 5
lea rax, [0x004d4220]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 5
lea rax, [rsp + 0x60]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 5
lea rdx, str.libcore_strmod.rs
lea rcx, [rsp + 0x30]
call fcn.00488ed0
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x60], rax
lea rax, [0x00486c00]
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0xe8]
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x80], rax
lea rax, [0x00493050]
mov qword [rsp + 0x88], rax
lea rcx, [rsp + 0xc0]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
lea rax, str.begin___end_______when_slicing__
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 4
lea rax, [0x004d4080]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 4
lea rax, [rsp + 0x60]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 4
lea rdx, str.libcore_strmod.rs
jmp 0x48d359