Function at 0x180250199
Capabilities:
Encrypt data using rc4 prga

Disassembly:
test rcx, rcx
je 0x1802505ec
mov r11, rsp
push rsi
push r12
sub rsp, 0x68
mov rax, qword [0x18066dcd8]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov qword [r11 + 0x20], rbx
mov rsi, rcx
mov qword [r11 - 0x18], rbp
mov r12d, r9d
mov qword [r11 - 0x20], rdi
movsxd rax, r8d
movzx r10d, byte [rsi + 0x13]
mov qword [r11 - 0x28], r13
mov r13d, dword [rsi]
mov qword [rsp + 0x20], rcx
lea rcx, [0x180595e00]
mov qword [r11 - 0x30], r14
mov qword [r11 - 0x38], r15
mov r15d, dword [rcx + rax*4]
lea r9d, [r13 - 1]
mov eax, r13d
mov dword [rsp + 0x30], r15d
imul eax, r15d
mov ecx, r10d
mov edi, r9d
mov dword [rsp + 0x2c], eax
lea r8d, [rax - 1]
mov ebx, r8d
sub ecx, 1
je 0x180250485
sub ecx, 1
je 0x180250395
cmp ecx, 2
je 0x18025029d
mov esi, r10d
xor r14d, r14d
shr rsi, 3
imul rdi, rsi
imul rbx, rsi
add rdi, rdx
add rbx, rdx
test r13d, r13d
je 0x18025058a
mov r12, qword [rsp + 0x20]
nop dword [rax]
mov r8, rsi
lea rcx, [rsp + 0x30]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
test r15d, r15d
jle 0x180250289
mov rbp, r15
nop dword [rax + rax]
mov r8, rsi
lea rdx, [rsp + 0x30]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
sub rbx, rsi
sub rbp, 1
jne 0x180250270
sub rdi, rsi
inc r14d
cmp r14d, dword [r12]
jb 0x180250250
mov rsi, r12
jmp 0x18025058f
shr rdi, 1
and r9d, 1
shr rbx, 1
add rdi, rdx
add rbx, rdx
and r8d, 1
bt r12d, 0x10
jae 0x1802502d9
mov ebp, 4
lea r11d, [r9*4]
xor r14d, r14d
lea r10d, [r8*4]
mov r9d, r14d
lea r12d, [rbp - 8]
jmp 0x1802502ff
mov r10d, 1
mov r11d, r10d
sub r10d, r8d
sub r11d, r9d
shl r10d, 2
shl r11d, 2
mov r9d, 4
xor r14d, r14d
mov r12d, r9d
mov ebp, r14d
test r13d, r13d
je 0x18025058f
nop dword [rax + rax]
movzx r8d, byte [rdi]
movzx ecx, r11b
shr r8b, cl
mov r13, rdi
and r8b, 0xf
test r15d, r15d
jle 0x180250373
mov rsi, r15
nop word [rax + rax]
movzx eax, r8b
mov ecx, 4
sub ecx, r10d
mov edx, 0xf0f
sar edx, cl
mov ecx, r10d
and dl, byte [rbx]
shl al, cl
mov ecx, ebp
or dl, al
lea eax, [r12 + r10]
cmp r10d, r9d
mov byte [rbx], dl
cmovne ecx, eax
lea rax, [rbx - 1]
cmovne rax, rbx
mov r10d, ecx
mov rbx, rax
sub rsi, 1
jne 0x180250330
mov rsi, qword [rsp + 0x20]
inc r14d
lea eax, [r11 + r12]
dec rdi
cmp r11d, r9d
mov r11d, ebp
cmovne rdi, r13
cmovne r11d, eax
cmp r14d, dword [rsi]
jb 0x180250310
jmp 0x18025058f
shr rdi, 2
and r9d, 3
shr rbx, 2
add rdi, rdx
add rbx, rdx
and r8d, 3
bt r12d, 0x10
jae 0x1802503cb
mov ebp, 6
lea r11d, [r9 + r9]
xor r14d, r14d
lea r10d, [r8 + r8]
mov r9d, r14d
lea r12d, [rbp - 8]
jmp 0x1802503ee
mov r10d, 3
mov r11d, r10d
sub r10d, r8d
sub r11d, r9d
add r10d, r10d
add r11d, r11d
xor r14d, r14d
mov ebp, r14d
lea r9d, [r14 + 6]
lea r12d, [r14 + 2]
test r13d, r13d
je 0x18025058f
nop word [rax + rax]
movzx r8d, byte [rdi]
movzx ecx, r11b
shr r8b, cl
mov r13, rdi
and r8b, 3
test r15d, r15d
jle 0x180250463
mov rsi, r15
nop word [rax + rax]
movzx eax, r8b
mov ecx, 6
sub ecx, r10d
mov edx, 0x3f3f
sar edx, cl
mov ecx, r10d
and dl, byte [rbx]
shl al, cl
mov ecx, ebp
or dl, al
lea eax, [r10 + r12]
cmp r10d, r9d
mov byte [rbx], dl
cmovne ecx, eax
lea rax, [rbx - 1]
cmovne rax, rbx
mov r10d, ecx
mov rbx, rax
sub rsi, 1
jne 0x180250420
mov rsi, qword [rsp + 0x20]
inc r14d
lea eax, [r11 + r12]
dec rdi
cmp r11d, r9d
mov r11d, ebp
cmovne rdi, r13
cmovne r11d, eax
cmp r14d, dword [rsi]
jb 0x180250400
jmp 0x18025058f
and r12d, 0x10000
shr rdi, 3
and r9d, 7
shr rbx, 3
and r8d, 7
mov dword [rsp + 0x28], r12d
mov ecx, dword [rsp + 0x28]
add rdi, rdx
add rbx, rdx
mov eax, r12d
test r12d, r12d
mov edx, 7
mov ebp, 0xffffffff
mov r10d, 1
cmove ebp, r10d
xor r14d, r14d
test r12d, r12d
mov r11d, r14d
cmove r11d, edx
neg eax
mov eax, edx
sbb r12d, r12d
sub eax, r8d
and r12d, edx
test ecx, ecx
cmove r8d, eax
mov eax, edx
sub eax, r9d
test ecx, ecx
cmove r9d, eax
test r13d, r13d
je 0x18025058f
nop dword [rax]
movzx r10d, byte [rdi]
movzx ecx, r9b
shr r10b, cl
mov r13, rdi
and r10b, 1
test r15d, r15d
jle 0x180250567
mov esi, r15d
mov r15d, 7
movzx eax, r10b
mov ecx, r15d
sub ecx, r8d
mov edx, 0x7f7f
sar edx, cl
mov ecx, r8d
and dl, byte [rbx]
shl al, cl
mov ecx, r12d
or dl, al
lea eax, [r8 + rbp]
cmp r8d, r11d
mov byte [rbx], dl
cmovne ecx, eax
lea rax, [rbx - 1]
cmovne rax, rbx
mov r8d, ecx
mov rbx, rax
sub rsi, 1
jne 0x180250520
mov r15d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x20]
inc r14d
lea eax, [r9 + rbp]
dec rdi
cmp r9d, r11d
mov r9d, r12d
cmovne rdi, r13
cmovne r9d, eax
cmp r14d, dword [rsi]
jb 0x180250500
jmp 0x18025058f
mov rsi, qword [rsp + 0x20]
movzx eax, byte [rsi + 0x13]
mov ecx, dword [rsp + 0x2c]
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r13, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x98]
mov dword [rsi], ecx
cmp al, 8
jb 0x1802505c8
shr rax, 3
imul rax, rcx
jmp 0x1802505d4
imul rax, rcx
add rax, 7
shr rax, 3
mov qword [rsi + 8], rax
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.18042cdf0
add rsp, 0x68
pop r12
pop rsi
ret