Function at 0x1400c5a00
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, 0xb8
mov rsi, rdx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rdx + 0x20]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x20], r8
call fcn.1400c5df0
mov rbx, rax
mov rbp, qword [rsi]
mov qword [rsp + 0x48], rsi
mov rax, qword [rsi + 0x18]
mov rcx, rbx
shr rcx, 0x39
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rcx, [rax - 0x50]
mov qword [rsp + 0x58], rcx
xor ecx, ecx
mov qword [rsp + 0x38], rcx
pcmpeqd xmm1, xmm1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x40], rbp
and rbx, rbp
movdqu xmm2, xmmword [rax + rbx]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r12d, xmm3
test r12d, r12d
je 0x1400c5c40
mov rax, qword [rsp + 0x20]
movzx eax, byte [rax]
mov qword [rsp + 0x50], rax
jmp 0x1400c5ac9
test dl, dl
je 0x1400c5dd2
lea eax, [r12 - 1]
and eax, r12d
mov r12d, eax
test ax, ax
mov rbp, qword [rsp + 0x40]
mov rbx, r13
mov rax, qword [rsp + 0x50]
je 0x1400c5c40
bsf dx, r12w
movzx edi, dx
mov r13, rbx
add rdi, rbx
and rdi, rbp
mov rdx, rdi
neg rdx
lea r9, [rdx + rdx*4]
shl r9, 4
add r9, qword [rsp + 0x58]
cmp eax, 1
je 0x1400c5b90
cmp eax, 2
jne 0x1400c5dd2
movzx edx, byte [r9]
cmp dl, 2
jne 0x1400c5aa0
mov rax, qword [rsp + 0x20]
mov rdx, qword [rax + 8]
mov rax, qword [rdx + 8]
mov rbp, qword [r9 + 8]
cmp rax, qword [rbp + 8]
jne 0x1400c5aa8
mov r10, qword [rdx]
mov r11, qword [rbp]
mov r14, rax
neg r14
mov r15, 0xffffffffffffffff
nop word cs:[rax + rax]
lea r8, [r14 + r15]
cmp r8, 0xffffffffffffffff
je 0x1400c5bc0
movzx esi, byte [r10 + r15 + 1]
movzx ecx, byte [r11 + r15 + 1]
lea ebx, [rsi - 0x41]
cmp bl, 0x1a
setb bl
shl bl, 5
lea ebp, [rcx - 0x41]
cmp bpl, 0x1a
setb dl
shl dl, 5
or bl, sil
or dl, cl
inc r15
cmp bl, dl
je 0x1400c5b40
cmp r15, rax
jb 0x1400c5aa8
jmp 0x1400c5bc0
movzx edx, byte [r9]
cmp dl, 1
jne 0x1400c5aa0
mov rax, qword [rsp + 0x20]
cmp byte [rax + 1], 0
movzx edx, byte [r9 + 1]
je 0x1400c5bb6
test dl, dl
jne 0x1400c5bc0
jmp 0x1400c5aa8
test dl, dl
jne 0x1400c5aa8
nop
mov rax, qword [rsp + 0x20]
mov r14, qword [rax + 0x18]
cmp r14, qword [r9 + 0x18]
jne 0x1400c5aa8
mov rax, qword [rsp + 0x20]
mov r15, qword [rax + 0x10]
mov r8, qword [r9 + 0x10]
mov r10, r14
neg r10
mov rbx, 0xffffffffffffffff
nop dword [rax]
lea rcx, [r10 + rbx]
cmp rcx, 0xffffffffffffffff
je 0x1400c5c6f
movzx ecx, byte [r15 + rbx + 1]
movzx esi, byte [r8 + rbx + 1]
lea eax, [rcx - 0x41]
cmp al, 0x1a
setb al
shl al, 5
lea ebp, [rsi - 0x41]
cmp bpl, 0x1a
setb dl
shl dl, 5
or al, cl
or dl, sil
inc rbx
cmp al, dl
je 0x1400c5bf0
cmp rbx, r14
jb 0x1400c5aa8
jmp 0x1400c5c6f
pcmpeqb xmm2, xmm1
pmovmskb ecx, xmm2
test ecx, ecx
jne 0x1400c5d44
mov rax, qword [rsp + 0x38]
add rbx, rax
add rbx, 0x10
add rax, 0x10
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x30]
jmp 0x1400c5a73
shl rdi, 4
lea rcx, [rdi + rdi*4]
sar rcx, 4
movabs rax, 0xcccccccccccccccd
imul rax, rcx
lea rcx, [rax - 0x10]
and rcx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
movdqu xmm0, xmmword [rsi + rcx]
pcmpeqd xmm1, xmm1
pcmpeqb xmm0, xmm1
psllw xmm0, 7
pmovmskb edi, xmm0
movdqu xmm0, xmmword [rsi + rax]
pcmpeqb xmm0, xmm1
pmovmskb ebx, xmm0
mov dx, reloc.WS2_32.dll_recv
mov bp, reloc.WS2_32.dll_recv
test edi, edi
je 0x1400c5ccd
bsr bp, di
xor ebp, 0xf
test bx, bx
je 0x1400c5cd6
bsf dx, bx
movzx ebx, dx
add ebx, ebp
mov dl, 0x80
cmp bx, 0xf
mov rbp, qword [rsp + 0x48]
ja 0x1400c5cee
inc qword [rbp + 8]
mov dl, 0xff
mov byte [rsi + rax], dl
mov byte [rcx + rsi + 0x10], dl
dec qword [rbp + 0x10]
movups xmm0, xmmword [r9]
movdqu xmm1, xmmword [r9 + 0x10]
movdqu xmm2, xmmword [r9 + 0x20]
movdqu xmm3, xmmword [r9 + 0x30]
movaps xmmword [rsp + 0x60], xmm0
movdqu xmm0, xmmword [r9 + 0x40]
movdqa xmmword [rsp + 0xa0], xmm0
movdqa xmmword [rsp + 0x90], xmm3
movdqa xmmword [rsp + 0x80], xmm2
movdqa xmmword [rsp + 0x70], xmm1
movzx eax, byte [rsp + 0x60]
cmp al, 3
jne 0x1400c5d53
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], 0
jmp 0x1400c5dbd
movdqa xmm0, xmmword [rsp + 0x90]
movdqa xmm1, xmmword [rsp + 0xa0]
mov rcx, qword [rsp + 0x28]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
cmp al, 2
jb 0x1400c5da0
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsi + 0x18]
lea rcx, [rsi + 0x10]
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [0x140221370]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x88]
lea rcx, [rsp + 0x80]
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
call qword [rax + reloc.WS2_32.dll_recv]
nop
add rsp, 0xb8
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_84c898d65adf2f39a5a98507f1fe0ce10a2b8dbclibrary_std_src_threadmod.rs
lea r8, str.C:UsersUser.cargo_registry_srcgithub.com_1ecc6299db9ec823http_0.2.9_srcuri_scheme.rs
mov edx, 0x28
call fcn.14016f3d0
ud2