// Decompiled with JetBrains decompiler
// Type: 
// Assembly: Random, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 29923E1C-4A06-46C3-B41C-690DFD9D7396
// Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00001-msil\Trojan.Win32.Pincav.cmfl-3fa99ddd788dbbe91390f940f247e68ee6ef463b9a024c2781a0267f9ccc9501.exe

using Microsoft.VisualBasic;
using Microsoft.VisualBasic.ApplicationServices;
using Microsoft.VisualBasic.CompilerServices;
using RedLions_Stub;
using System;
using System.CodeDom.Compiler;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows.Forms;

[HideModuleName]
[StandardModule]
[GeneratedCode("MyTemplate", "8.0.0.0")]
internal sealed class \u0005
{
  private static readonly \u0005.\u0005<\u0003> \u0002 = new \u0005.\u0005<\u0003>();
  private static readonly \u0005.\u0005<\u0002> \u0003 = new \u0005.\u0005<\u0002>();
  private static readonly \u0005.\u0005<User> \u0005 = new \u0005.\u0005<User>();
  private static \u0005.\u0005<\u0005.\u0002> \u0008 = new \u0005.\u0005<\u0005.\u0002>();
  private static readonly \u0005.\u0005<\u0005.\u0003> \u0006 = new \u0005.\u0005<\u0005.\u0003>();

  [DebuggerNonUserCode]
  static \u0005()
  {
  }

  [DebuggerHidden]
  internal static \u0003 \u0002() => \u0005.\u0002.\u0002();

  [DebuggerHidden]
  internal static \u0002 \u0002() => \u0005.\u0003.\u0002();

  [DebuggerHidden]
  internal static User \u0002() => \u0005.\u0005.\u0002();

  [DebuggerHidden]
  internal static \u0005.\u0002 \u0002() => \u0005.\u0008.\u0002();

  [DebuggerHidden]
  internal static \u0005.\u0003 \u0002() => \u0005.\u0006.\u0002();

  [MyGroupCollection("System.Windows.Forms.Form", "Create__Instance__", "Dispose__Instance__", "My.MyProject.Forms")]
  [EditorBrowsable(EditorBrowsableState.Never)]
  internal sealed class \u0002
  {
    public Form1 \u0002;
    [ThreadStatic]
    private static Hashtable \u0003;

    [DebuggerHidden]
    [EditorBrowsable(EditorBrowsableState.Never)]
    public \u0002()
    {
    }

    [DebuggerNonUserCode]
    public Form1 \u0002()
    {
      this.\u0002 = \u0005.\u0002.\u0002<Form1>(this.\u0002);
      return this.\u0002;
    }

    [DebuggerNonUserCode]
    public void \u0002(Form1 _param1)
    {
      if (_param1 == this.\u0002)
        return;
      if (_param1 != null)
        throw new ArgumentException(\u0002\u2000.\u0002(-1045613759));
      this.\u0003<Form1>(ref this.\u0002);
    }

    [DebuggerHidden]
    private static T \u0002<T>(T _param0) where T : Form, new()
    {
      if ((object) _param0 != null && !_param0.IsDisposed)
        return _param0;
      if (\u0005.\u0002.\u0003 != null)
      {
        if (\u0005.\u0002.\u0003.ContainsKey((object) typeof (T)))
          throw new InvalidOperationException(Utils.GetResourceString(\u0002\u2000.\u0002(-1045613717)));
      }
      else
        \u0005.\u0002.\u0003 = new Hashtable();
      \u0005.\u0002.\u0003.Add((object) typeof (T), (object) null);
      try
      {
        return new T();
      }
      catch (TargetInvocationException ex) when (
      {
        // ISSUE: unable to correctly present filter
        ProjectData.SetProjectError((Exception) ex);
        if (ex.InnerException != null)
        {
          SuccessfulFiltering;
        }
        else
          throw;
      }
      )
      {
        throw new InvalidOperationException(Utils.GetResourceString(\u0002\u2000.\u0002(-1045613804), ex.InnerException.Message), ex.InnerException);
      }
      finally
      {
        \u0005.\u0002.\u0003.Remove((object) typeof (T));
      }
    }

    [DebuggerHidden]
    private void \u0003<T>(ref T _param1) where T : Form
    {
      _param1.Dispose();
      _param1 = default (T);
    }

    [EditorBrowsable(EditorBrowsableState.Never)]
    public override bool Equals(object _param1) => base.Equals(RuntimeHelpers.GetObjectValue(_param1));

    [EditorBrowsable(EditorBrowsableState.Never)]
    public override int GetHashCode() => base.GetHashCode();

    [EditorBrowsable(EditorBrowsableState.Never)]
    internal System.Type \u0002() => typeof (\u0005.\u0002);

    [EditorBrowsable(EditorBrowsableState.Never)]
    public override string ToString() => base.ToString();
  }

  [MyGroupCollection("System.Web.Services.Protocols.SoapHttpClientProtocol", "Create__Instance__", "Dispose__Instance__", "")]
  [EditorBrowsable(EditorBrowsableState.Never)]
  internal sealed class \u0003
  {
    [EditorBrowsable(EditorBrowsableState.Never)]
    [DebuggerHidden]
    public \u0003()
    {
    }

    [DebuggerHidden]
    [EditorBrowsable(EditorBrowsableState.Never)]
    public override bool Equals(object _param1) => base.Equals(RuntimeHelpers.GetObjectValue(_param1));

    [DebuggerHidden]
    [EditorBrowsable(EditorBrowsableState.Never)]
    public override int GetHashCode() => base.GetHashCode();

    [DebuggerHidden]
    [EditorBrowsable(EditorBrowsableState.Never)]
    internal System.Type \u0002() => typeof (\u0005.\u0003);

    [DebuggerHidden]
    [EditorBrowsable(EditorBrowsableState.Never)]
    public override string ToString() => base.ToString();

    [DebuggerHidden]
    private static T \u0002<T>(T _param0) where T : new() => (object) _param0 == null ? new T() : _param0;

    [DebuggerHidden]
    private void \u0003<T>(ref T _param1) => _param1 = default (T);
  }

  [ComVisible(false)]
  [EditorBrowsable(EditorBrowsableState.Never)]
  internal sealed class \u0005<\u0002> where \u0002 : new()
  {
    [ThreadStatic]
    private static \u0002 \u0002;

    [DebuggerHidden]
    [EditorBrowsable(EditorBrowsableState.Never)]
    public \u0005()
    {
    }

    [DebuggerHidden]
    internal \u0002 \u0002()
    {
      if ((object) \u0005.\u0005<\u0002>.\u0002 == null)
        \u0005.\u0005<\u0002>.\u0002 = new \u0002();
      return \u0005.\u0005<\u0002>.\u0002;
    }
  }
}
