Function at 0x140137b00
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x20
movsxd rbp, dword [rdx + 0x1c]
xor edi, edi
mov r14, qword [rdx]
mov r15, rdx
mov r11, qword [rdx + 8]
mov rbx, rcx
mov dword [rcx + 0x48], edi
mov esi, 0xffffffff
mov dword [rcx + 0x4c], 0x23d
mov r8d, edi
test ebp, ebp
jle 0x140137b88
mov edx, edi
nop dword [rax]
cmp word [r14 + rdx*4], di
je 0x140137b77
movsxd rcx, dword [rbx + 0x48]
mov esi, r8d
lea eax, [rcx + 1]
mov dword [rbx + 0x48], eax
mov rax, qword [rbx + 0x40]
mov dword [rax + rcx*4 + 4], r8d
mov rax, qword [rbx + 0x50]
mov byte [rdx + rax], dil
jmp 0x140137b7d
mov word [r14 + rdx*4 + 2], di
inc r8d
inc rdx
cmp rdx, rbp
jl 0x140137b50
mov ecx, dword [rbx + 0x48]
mov r12d, 1
cmp ecx, 2
jge 0x140137c02
movsxd r10, esi
nop dword [rax]
cmp esi, 2
lea r8, [r10 + 1]
mov rax, r8
lea edx, [rsi + 1]
cmovge rax, r10
cmovge r8, rdi
mov r10, rax
mov r9d, edx
lea eax, [rcx + 1]
cmovge edx, edi
mov dword [rbx + 0x48], eax
cmovge r9d, esi
mov rax, qword [rbx + 0x40]
movsxd rcx, ecx
mov dword [rax + rcx*4 + 4], edx
mov word [r14 + r8*4], r12w
mov rax, qword [rbx + 0x50]
mov byte [r8 + rax], dil
dec dword [rbx + 0x130]
test r11, r11
je 0x140137bf7
movzx eax, word [r11 + r8*4 + 2]
sub dword [rbx + 0x134], eax
mov ecx, dword [rbx + 0x48]
mov esi, r9d
cmp ecx, 2
jl 0x140137ba0
mov dword [r15 + 0x24], esi
mov r8d, dword [rbx + 0x48]
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
mov edi, eax
cmp eax, r12d
jl 0x140137c40
nop dword [rax]
mov r8d, edi
mov rdx, r14
mov rcx, rbx
call fcn.140138f20
dec edi
cmp edi, r12d
jge 0x140137c20
mov r8d, dword [rbx + 0x48]
nop dword [rax]
mov rdx, qword [rbx + 0x40]
movsxd rax, r8d
movsxd rdi, dword [rdx + 4]
mov ecx, dword [rdx + rax*4]
lea eax, [r8 - 1]
mov dword [rbx + 0x48], eax
mov r8d, r12d
mov dword [rdx + 4], ecx
mov rdx, r14
mov rcx, rbx
call fcn.140138f20
movsxd rcx, dword [rbx + 0x4c]
lea r10, [r14 + rdi*4]
mov rdx, qword [rbx + 0x40]
movsxd r9, ebp
lea eax, [rcx - 1]
movsxd r8, dword [rdx + 4]
mov dword [rbx + 0x4c], eax
mov dword [rdx + rcx*4 - 4], edi
movsxd rcx, dword [rbx + 0x4c]
lea eax, [rcx - 1]
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 0x40]
mov dword [rax + rcx*4 - 4], r8d
movzx eax, word [r14 + r8*4]
add ax, word [r10]
mov word [r14 + r9*4], ax
mov rdx, qword [rbx + 0x50]
movzx ecx, byte [r8 + rdx]
movzx eax, byte [rdi + rdx]
cmp al, cl
cmova ecx, eax
inc cl
mov byte [rdx + r9], cl
mov ecx, ebp
mov word [r14 + r8*4 + 2], bp
mov rdx, r14
mov word [r10 + 2], bp
mov r8d, r12d
mov rax, qword [rbx + 0x40]
inc ebp
mov dword [rax + 4], ecx
mov rcx, rbx
call fcn.140138f20
mov r8d, dword [rbx + 0x48]
cmp r8d, 2
jge 0x140137c40
movsxd rcx, dword [rbx + 0x4c]
mov rdx, r15
mov r10, qword [rbx + 0x40]
lea eax, [rcx - 1]
mov r9d, dword [r10 + 4]
mov dword [rbx + 0x4c], eax
mov dword [r10 + rcx*4 - 4], r9d
mov rcx, rbx
call fcn.140138990
mov r8d, esi
mov rdx, r14
mov rcx, rbx
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
jmp fcn.140138ba0