// Decompiled with JetBrains decompiler
// Type: .
// Assembly: WindowsBC, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9909ee17073e3364
// MVID: 658BFC85-36E1-493D-98E6-AE9127D73D60
// Assembly location: C:\Users\Administrateur\Downloads\Virusshare.00004-msil\Trojan-Downloader.MSIL.BitCoinMiner.c-64f742a0b28b2c3d2a62ef6607fcfd5fa55b793a1aff3a6c11e014e3b119149e.exe

using \u000E;
using \u0010\u0002;
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

namespace \u0010\u0002
{
  internal sealed class \u0013\u0002 : ICloneable
  {
    private static readonly DateTime \u0001 = new DateTime(1970, 1, 1, 0, 0, 0, 0);
    private string \u0002;
    private int \u0003;
    private int \u0004;
    private int \u0005;
    private long \u0006;
    private DateTime \u0007;
    private int \u0008;
    private byte \u000E;
    private string \u000F;
    private string \u0010;
    private string \u0011;
    private string \u0012;
    private string \u0013;
    private int \u0014;
    private int \u0015;
    internal static string \u0016 = \u0008.\u000E\u0003(2604);
    internal static int \u0017;
    internal static int \u0018;
    internal static string \u0019 = \u0008.\u000E\u0003(2604);
    internal static string \u001A;

    public \u0013\u0002()
    {
      this.\u0018\u0004(\u0008.\u000E\u0003(2557));
      this.\u001A\u0004(\u0008.\u000E\u0003(2566));
      this.\u0006\u0004(\u0008.\u000E\u0003(837));
      this.\u0016\u0004(\u0008.\u000E\u0003(837));
      this.\u0008\u0004(\u0013\u0002.\u0017);
      this.\u000F\u0004(\u0013\u0002.\u0018);
      this.\u001C\u0004(\u0013\u0002.\u001A);
      this.\u001E\u0004(\u0013\u0002.\u0019);
      this.\u0011\u0004(0L);
    }

    [SpecialName]
    public string \u0005\u0004() => this.\u0002;

    [SpecialName]
    public void \u0006\u0004([In] string obj0)
    {
      switch (obj0)
      {
        case null:
          throw new ArgumentNullException(\u0008.\u000E\u0003(943));
        default:
          this.\u0002 = obj0;
          break;
      }
    }

    [SpecialName]
    public int \u0007\u0004() => this.\u0004;

    [SpecialName]
    public void \u0008\u0004([In] int obj0) => this.\u0004 = obj0;

    [SpecialName]
    public int \u000E\u0004() => this.\u0005;

    [SpecialName]
    public void \u000F\u0004([In] int obj0) => this.\u0005 = obj0;

    [SpecialName]
    public long \u0010\u0004() => this.\u0006;

    [SpecialName]
    public void \u0011\u0004([In] long obj0) => this.\u0006 = obj0 >= 0L ? obj0 : throw new ArgumentOutOfRangeException(\u0008.\u000E\u0003(943), \u0008.\u000E\u0003(2571));

    [SpecialName]
    public DateTime \u0012\u0004() => this.\u0007;

    [SpecialName]
    public int \u0013\u0004() => this.\u0008;

    [SpecialName]
    public byte \u0014\u0004() => this.\u000E;

    [SpecialName]
    public string \u0015\u0004() => this.\u000F;

    [SpecialName]
    public void \u0016\u0004([In] string obj0)
    {
      switch (obj0)
      {
        case null:
          throw new ArgumentNullException(\u0008.\u000E\u0003(943));
        default:
          this.\u000F = obj0;
          break;
      }
    }

    [SpecialName]
    public string \u0017\u0004() => this.\u0010;

    [SpecialName]
    public void \u0018\u0004([In] string obj0)
    {
      switch (obj0)
      {
        case null:
          throw new ArgumentNullException(\u0008.\u000E\u0003(943));
        default:
          this.\u0010 = obj0;
          break;
      }
    }

    [SpecialName]
    public string \u0019\u0004() => this.\u0011;

    [SpecialName]
    public void \u001A\u0004([In] string obj0)
    {
      switch (obj0)
      {
        case null:
          throw new ArgumentNullException(\u0008.\u000E\u0003(943));
        default:
          this.\u0011 = obj0;
          break;
      }
    }

    [SpecialName]
    public string \u001B\u0004() => this.\u0012;

    [SpecialName]
    public void \u001C\u0004([In] string obj0)
    {
      switch (obj0)
      {
        case null:
          string str = \u0083\u0005.\u001B\u0003();
          if (\u0011\u0003.\u007E\u0004\u0002((object) str) > 32)
            str = \u001A\u0005.\u007E\u0007\u0002((object) str, 0, 32);
          this.\u0012 = str;
          break;
        default:
          this.\u0012 = \u001A\u0005.\u007E\u0007\u0002((object) obj0, 0, \u0013\u0005.\u0087\u0003(32, \u0011\u0003.\u007E\u0004\u0002((object) obj0)));
          break;
      }
    }

    [SpecialName]
    public string \u001D\u0004() => this.\u0013;

    [SpecialName]
    public void \u001E\u0004([In] string obj0)
    {
      switch (obj0)
      {
        case null:
          this.\u0013 = \u0008.\u000E\u0003(2604);
          break;
        default:
          this.\u0013 = obj0;
          break;
      }
    }

    [SpecialName]
    public int \u001F\u0004() => this.\u0014;

    [SpecialName]
    public int \u007F\u0004() => this.\u0015;

    public object Clone() => \u001B\u0005.\u0097((object) this);

    public override int GetHashCode() => \u0011\u0003.\u007E\u0095((object) this.\u0005\u0004());

    public override bool Equals([In] object obj0) => obj0 is \u0013\u0002 obj && \u0080\u0005.\u0001\u0002(this.\u0002, obj.\u0002) && this.\u0003 == obj.\u0003 && this.\u0007\u0004() == obj.\u0007\u0004() && this.\u000E\u0004() == obj.\u000E\u0004() && this.\u0010\u0004() == obj.\u0010\u0004() && \u0017\u0005.\u009C\u0002(this.\u0012\u0004(), obj.\u0012\u0004()) && this.\u0013\u0004() == obj.\u0013\u0004() && (int) this.\u0014\u0004() == (int) obj.\u0014\u0004() && \u0080\u0005.\u0001\u0002(this.\u0015\u0004(), obj.\u0015\u0004()) && \u0080\u0005.\u0001\u0002(this.\u0017\u0004(), obj.\u0017\u0004()) && \u0080\u0005.\u0001\u0002(this.\u0019\u0004(), obj.\u0019\u0004()) && \u0080\u0005.\u0001\u0002(this.\u001B\u0004(), obj.\u001B\u0004()) && \u0080\u0005.\u0001\u0002(this.\u001D\u0004(), obj.\u001D\u0004()) && this.\u001F\u0004() == obj.\u001F\u0004() && this.\u007F\u0004() == obj.\u007F\u0004();
  }
}
