Function at 0x140132300
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov dword [rcx + 0x30], r9d
mov rbx, rcx
mov rdi, r8
call fcn.140132180
lea r8, [0x140131434]
lea rdx, [0x1401313f2]
mov ecx, dword [rbx + 0x28]
mov rsi, r8
add rcx, qword [rbx + 0x20]
sub rsi, rdx
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov r8d, dword [rbx + 0x28]
mov rcx, qword [rbx + 0x20]
add r8d, esi
mov dword [rbx + 0x28], r8d
mov eax, dword [rdi + 0x10]
mov r9d, r8d
add r8d, 6
mov edx, dword [rdi + 0x14]
shl rax, 0x10
shl rdx, 0x28
add rax, rdx
movabs rdx, 0xc03349c08b49
add rax, rdx
mov rdx, qword [0x1404c7360]
mov qword [rcx + r9], rax
add rcx, r8
mov dword [rbx + 0x28], r8d
mov esi, dword [rdx + 0x160]
add rdx, 0x144
mov r8d, esi
call sub.msvcrt.dll_memcpy
add esi, dword [rbx + 0x28]
lea r8, [0x1401314fa]
lea rdx, [0x1401314ae]
mov rdi, r8
mov dword [rbx + 0x28], esi
mov ecx, esi
add rcx, qword [rbx + 0x20]
sub rdi, rdx
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov r8d, edi
add r8d, dword [rbx + 0x28]
cmp byte [rbx + 0x50], 0
mov dword [rbx + 0x28], r8d
je 0x1401323dd
lea eax, [r8 + 9]
xor eax, r8d
cmp eax, 0x1f
ja 0x140132460
mov r9, qword [rbx + 0x20]
mov eax, r8d
lea rcx, [0x1401310c0]
lea edx, [r8 + 5]
movabs rdi, 0x850f01eb83
mov qword [r9 + rax], rdi
lea rax, [0x140131300]
sub rax, rcx
mov dword [rbx + 0x28], edx
sub eax, 4
sub eax, edx
mov dword [r9 + rdx], eax
mov eax, dword [rbx + 0x28]
lea r9, [0x140131bc0]
mov rdx, qword [rbx + 0x20]
add eax, 4
mov dword [rbx + 0x28], eax
mov byte [rdx + rax], 0xe9
mov eax, dword [rbx + 0x28]
mov r8, qword [rbx + 0x20]
lea ecx, [rax + 1]
lea rax, [0x140131b00]
sub eax, r9d
mov dword [rbx + 0x28], ecx
add eax, 0x10000
and eax, 0xffffffc0
sub eax, 4
sub eax, ecx
mov dword [r8 + rcx], eax
add dword [rbx + 0x28], 4
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov eax, r8d
mov ecx, 0x20
and eax, 0x1f
sub ecx, eax
cmp ecx, 8
ja 0x1401324d0
mov edx, 0x1f
mov r9, qword [rbx + 0x20]
mov r10d, ecx
sub edx, eax
lea rax, [0x140461be0]
mov rdx, qword [rax + rdx*8]
add r8, r9
mov eax, r10d
cmp r10d, 8
jae 0x140132540
test r10b, 4
jne 0x1401325e8
test r10d, r10d
je 0x1401324be
movzx eax, byte [rdx]
mov byte [r8], al
test r10b, 2
jne 0x140132600
mov r9, qword [rbx + 0x20]
add ecx, dword [rbx + 0x28]
mov r8d, ecx
jmp 0x1401323e1
mov r9, qword [rbx + 0x20]
mov edx, 0x18
mov ecx, 0x17
sub ecx, eax
sub edx, eax
lea rax, [0x140461be0]
mov rax, qword [rax + rcx*8]
add r8, r9
cmp edx, 8
jae 0x140132590
test dl, 4
jne 0x140132615
test edx, edx
je 0x140132519
movzx ecx, byte [rax]
mov byte [r8], cl
test dl, 2
jne 0x14013262e
mov r9, qword [rbx + 0x20]
add edx, dword [rbx + 0x28]
mov r10d, 8
mov ecx, 8
mov r8d, edx
lea rdx, [0x140461c38]
mov dword [rbx + 0x28], r8d
jmp 0x14013248b
mov rax, qword [rdx]
lea r9, [r8 + 8]
and r9, 0xfffffffffffffff8
mov qword [r8], rax
mov rax, qword [rdx + r10 - 8]
mov qword [r10 + r8 - 8], rax
sub r8, r9
lea eax, [r10 + r8]
sub rdx, r8
and eax, 0xfffffff8
cmp eax, 8
jb 0x1401324ba
and eax, 0xfffffff8
xor r8d, r8d
mov r10d, r8d
add r8d, 8
mov r11, qword [rdx + r10]
mov qword [r9 + r10], r11
cmp r8d, eax
jb 0x140132574
jmp 0x1401324ba
mov rcx, qword [rax]
mov qword [r8], rcx
mov ecx, edx
mov r9, qword [rax + rcx - 8]
mov qword [r8 + rcx - 8], r9
lea rcx, [r8 + 8]
and rcx, 0xfffffffffffffff8
sub r8, rcx
sub rax, r8
add r8d, edx
and r8d, 0xfffffff8
cmp r8d, 8
jb 0x140132515
and r8d, 0xfffffff8
xor r9d, r9d
mov r10d, r9d
add r9d, 8
mov r11, qword [rax + r10]
mov qword [rcx + r10], r11
cmp r9d, r8d
jb 0x1401325c8
jmp 0x140132515
mov r9d, dword [rdx]
mov dword [r8], r9d
mov edx, dword [rdx + rax - 4]
mov dword [r8 + rax - 4], edx
mov r9, qword [rbx + 0x20]
jmp 0x1401324be
movzx eax, word [rdx + r10 - 2]
mov word [r10 + r8 - 2], ax
mov r9, qword [rbx + 0x20]
jmp 0x1401324be
mov ecx, dword [rax]
mov dword [r8], ecx
mov ecx, edx
mov eax, dword [rax + rcx - 4]
mov dword [r8 + rcx - 4], eax
mov r9, qword [rbx + 0x20]
jmp 0x140132519
mov ecx, edx
movzx eax, word [rax + rcx - 2]
mov word [r8 + rcx - 2], ax
mov r9, qword [rbx + 0x20]
jmp 0x140132519