Function at 0x14006ea00
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov rsi, rdx
mov qword [rsp + 0x38], rcx
mov rcx, qword [rdx + 0x20]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x28], r8
call fcn.14006edb0
mov rcx, qword [rsi]
mov qword [rsp + 0x40], rsi
mov r8, qword [rsi + 8]
mov qword [rsp + 0x30], r8
and r8, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r9d, r9d
pcmpeqd xmm1, xmm1
movdqu xmm2, xmmword [rcx + r8]
movdqa xmm3, xmm2
pcmpeqb xmm3, xmm0
pmovmskb eax, xmm3
test eax, eax
je 0x14006ec00
mov rdx, qword [rsp + 0x28]
movzx r10d, byte [rdx]
mov qword [rsp + 0x48], r9
jmp 0x14006eaae
test sil, sil
je 0x14006ed8e
lea eax, [r11 - 1]
and eax, r11d
test ax, ax
mov r9, qword [rsp + 0x48]
je 0x14006ec00
mov r11d, eax
tzcnt r14d, r11d
add r14, r8
and r14, qword [rsp + 0x30]
mov rax, r14
neg rax
lea rax, [rax + rax*4]
shl rax, 4
lea r15, [rcx + rax]
add rax, rcx
add rax, 0xffffffffffffffb0
cmp r10d, 1
je 0x14006eb60
cmp r10d, 2
jne 0x14006ed8e
movzx esi, byte [rax]
cmp sil, 2
jne 0x14006ea90
mov rdx, qword [rsp + 0x28]
mov rsi, qword [rdx + 8]
mov r12, qword [rsi + 0x10]
mov rbp, qword [r15 - 0x48]
cmp r12, qword [rbp + 0x10]
jne 0x14006ea99
mov r13, qword [rsi + 8]
mov rbp, qword [rbp + 8]
xor esi, esi
nop word cs:[rax + rax]
cmp r12, rsi
je 0x14006eb90
movzx edi, byte [r13 + rsi]
movzx r9d, byte [rbp + rsi]
inc rsi
lea ebx, [rdi - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
lea edx, [r9 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or bl, dil
or dl, r9b
cmp bl, dl
je 0x14006eb20
jmp 0x14006ea99
movzx esi, byte [rax]
cmp sil, 1
jne 0x14006ea90
mov rdx, qword [rsp + 0x28]
cmp byte [rdx + 1], 0
movzx esi, byte [r15 - 0x4f]
je 0x14006eb87
test sil, sil
jne 0x14006eb90
jmp 0x14006ea99
test sil, sil
jne 0x14006ea99
mov rdx, qword [rsp + 0x28]
mov r12, qword [rdx + 0x20]
cmp r12, qword [r15 - 0x30]
jne 0x14006ea99
mov rdx, qword [rsp + 0x28]
mov r13, qword [rdx + 0x18]
mov r15, qword [r15 - 0x38]
xor esi, esi
nop word cs:[rax + rax]
cmp r12, rsi
je 0x14006ec25
movzx edx, byte [r13 + rsi]
movzx r9d, byte [r15 + rsi]
inc rsi
lea edi, [rdx - 0x41]
cmp dil, 0x1a
setb bl
shl bl, 5
lea edi, [r9 - 0x41]
cmp dil, 0x1a
setb dil
shl dil, 5
or bl, dl
or dil, r9b
cmp bl, dil
je 0x14006ebc0
jmp 0x14006ea99
pcmpeqb xmm2, xmm1
pmovmskb eax, xmm2
test eax, eax
jne 0x14006ecff
add r8, r9
add r8, 0x10
add r9, 0x10
and r8, qword [rsp + 0x30]
jmp 0x14006ea5e
shl r14, 4
lea rdx, [r14 + r14*4]
sar rdx, 4
movabs r8, 0xcccccccccccccccd
imul r8, rdx
lea r9, [r8 - 0x10]
and r9, qword [rsp + 0x30]
movdqu xmm0, xmmword [rcx + r9]
pcmpeqd xmm1, xmm1
pcmpeqb xmm0, xmm1
psllw xmm0, 7
pmovmskb r10d, xmm0
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm1
pmovmskb edx, xmm0
test r10d, r10d
mov r11, qword [rsp + 0x40]
je 0x14006ec83
bsr r10w, r10w
xor r10d, 0xf
jmp 0x14006ec88
mov r10w, 0x10
or edx, 0x10000
tzcnt edx, edx
add r10d, edx
mov dl, 0x80
cmp r10w, 0xf
ja 0x14006eca4
inc qword [r11 + 0x10]
mov dl, 0xff
mov byte [rcx + r8], dl
mov byte [rcx + r9 + 0x10], dl
dec qword [r11 + 0x18]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm3
movdqu xmm3, xmmword [rax + 0x40]
movdqa xmmword [rsp + 0x90], xmm3
movdqa xmmword [rsp + 0x70], xmm2
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x50], xmm0
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x80], rax
jne 0x14006ed13
movabs rax, 0x8000000000000000
mov rcx, qword [rsp + 0x38]
mov qword [rcx], rax
jmp 0x14006ed79
lea rax, [rsp + 0x80]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
mov rax, qword [rsp + 0x38]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
cmp byte [rsp + 0x50], 2
jb 0x14006ed62
mov rsi, qword [rsp + 0x58]
lea rcx, [rsi + 0x18]
mov rax, qword [rsi]
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x14017d208]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x78]
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x70]
call qword [rax + 0x10]
nop
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.internal_error:_entered_unreachable_code_rustc_88c2f4f5f50ace5ddc7655ea311435104d3659bdlibrary_std_src_threadmod.rs
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_0.2.12_srcuri_scheme.rs_f
mov edx, 0x28
call fcn.1401046f0
int3