Function at 0x1400de790
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
mov rax, qword [0x140516040]
xor rax, rsp
mov qword [rsp + 0x50], rax
test r8, r8
jle 0x1400de7f7
mov rsi, rdx
mov rdi, rcx
movzx eax, byte [rdx]
test al, al
setns cl
cmp r8, 1
sete dl
or dl, cl
jne 0x1400de7f7
movzx ecx, byte [rsi + 1]
test cl, cl
setns dl
cmp r8, 3
setb r9b
or r9b, dl
jne 0x1400de7f7
movzx edx, byte [rsi + 2]
test dl, dl
setns r9b
cmp r8, 4
setb r10b
or r10b, r9b
je 0x1400de836
xor eax, eax
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
cmp rcx, qword [0x140516040]
je 0x1400de810
call fcn.14029bbb0
int3
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
cmp r8, 5
jb 0x1400de7f7
movsx eax, byte [rcx]
test eax, eax
js 0x1400de7f7
shl eax, 0x1c
or edx, eax
lea rcx, [rsi + 5]
jmp 0x1400de862
and edx, 0x7f
shl edx, 0xe
and ecx, 0x7f
shl ecx, 7
and eax, 0x7f
or eax, ecx
or eax, edx
lea rcx, [rsi + 4]
movzx r9d, byte [rsi + 3]
mov edx, r9d
and edx, 0x7f
shl edx, 0x15
or edx, eax
test r9b, r9b
js 0x1400de81e
add r8, rsi
xor eax, eax
cmp rcx, r8
jae 0x1400de7f9
test rcx, rcx
je 0x1400de7f9
cmp edx, 0x1328d6a
jne 0x1400de7f9
lea r15, [rcx + 1]
movzx eax, byte [rcx]
mov edx, eax
and edx, 0x7f
test al, al
js 0x1400de8d7
xor eax, eax
test r15, r15
je 0x1400de7f9
cmp edx, 0xa
ja 0x1400de7f9
mov eax, edx
mov qword [rdi], rax
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x40], rcx
movaps xmm0, xmmword [0x140484a40]
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x20], xmm0
test edx, edx
je 0x1400de8cc
xor edx, edx
xor ecx, ecx
jmp 0x1400de92b
cmp r8, r15
sete al
jmp 0x1400de7f9
cmp r15, r8
jae 0x1400de7f7
lea r15, [rcx + 2]
movzx eax, byte [rcx + 1]
mov r9d, eax
and r9d, 0x7f
shl r9d, 7
or edx, r9d
test al, al
jns 0x1400de889
cmp r15, r8
jae 0x1400de7f7
jmp 0x1400dea1f
mov r15, r10
mov dword [rsp + rdx*4 + 0x20], r9d
test r15, r15
je 0x1400de7f7
mov r9d, r9d
add rcx, r9
inc rdx
cmp rax, rdx
je 0x1400de9df
cmp r15, r8
jae 0x1400de7f7
lea r10, [r15 + 1]
movzx r11d, byte [r15]
mov r9d, r11d
and r9d, 0x7f
test r11b, r11b
jns 0x1400de908
cmp r10, r8
jae 0x1400de7f7
lea r10, [r15 + 2]
movzx r11d, byte [r15 + 1]
mov ebx, r11d
and ebx, 0x7f
shl ebx, 7
or r9d, ebx
test r11b, r11b
jns 0x1400de908
cmp r10, r8
jae 0x1400de7f7
lea r10, [r15 + 3]
movzx r11d, byte [r15 + 2]
mov ebx, r11d
and ebx, 0x7f
shl ebx, 0xe
or r9d, ebx
test r11b, r11b
jns 0x1400de908
cmp r10, r8
jae 0x1400de7f7
lea r10, [r15 + 4]
movzx r11d, byte [r15 + 3]
mov ebx, r11d
and ebx, 0x7f
shl ebx, 0x15
or r9d, ebx
test r11b, r11b
jns 0x1400de908
cmp r10, r8
jae 0x1400de7f7
movsx r10d, byte [r10]
test r10d, r10d
js 0x1400de7f7
shl r10d, 0x1c
or r9d, r10d
add r15, 5
jmp 0x1400de90b
sub r8, r15
cmp r8, rcx
jne 0x1400de7f7
sub r15, rsi
lea rbx, [rdi + 8]
xor r12d, r12d
mov r14d, dword [rsp + r12*4 + 0x20]
lea rdx, [rsi + r15]
mov rcx, rbx
mov r8, r14
call fcn.1400dd710
add r15, r14
inc r12
add rbx, 0x18
cmp r12, qword [rdi]
jb 0x1400de9f5
mov al, 1
jmp 0x1400de7f9
lea r15, [rcx + 3]
movzx eax, byte [rcx + 2]
mov r9d, eax
and r9d, 0x7f
shl r9d, 0xe
or edx, r9d
test al, al
jns 0x1400de889
cmp r15, r8
jae 0x1400de7f7
lea r15, [rcx + 4]
movzx eax, byte [rcx + 3]
mov r9d, eax
and r9d, 0x7f
shl r9d, 0x15
or edx, r9d
test al, al
jns 0x1400de889
cmp r15, r8
jae 0x1400de7f7
movsx eax, byte [r15]
test eax, eax
js 0x1400de7f7
shl eax, 0x1c
or edx, eax
add rcx, 5
mov r15, rcx
jmp 0x1400de889