// Decompiled with JetBrains decompiler
// Type: Meebey.SmartIrc4net.IrcUser
// Assembly: svchost, Version=3.2.4.0, Culture=neutral, PublicKeyToken=null
// MVID: 8F51F928-E1DB-4815-857F-7D580385B815
// Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00000-msil\Backdoor.MSIL.IrcBot.lp-4dd7df88cffbf85a5894bc1b38660fa613c24b0e6c004ac00b2b119c03a35d3f.exe

using System.Collections.Specialized;

namespace Meebey.SmartIrc4net
{
  public class IrcUser
  {
    private IrcClient _IrcClient;
    private string _Nick;
    private string _Ident;
    private string _Host;
    private string _Realname;
    private bool _IsIrcOp;
    private bool _IsRegistered;
    private bool _IsAway;
    private string _Server;
    private int _HopCount = -1;

    internal IrcUser(string nickname, IrcClient ircclient)
    {
      this._IrcClient = ircclient;
      this._Nick = nickname;
    }

    public string Nick
    {
      get => this._Nick;
      set => this._Nick = value;
    }

    public string Ident
    {
      get => this._Ident;
      set => this._Ident = value;
    }

    public string Host
    {
      get => this._Host;
      set => this._Host = value;
    }

    public string Realname
    {
      get => this._Realname;
      set => this._Realname = value;
    }

    public bool IsIrcOp
    {
      get => this._IsIrcOp;
      set => this._IsIrcOp = value;
    }

    public bool IsRegistered
    {
      get => this._IsRegistered;
      internal set => this._IsRegistered = value;
    }

    public bool IsAway
    {
      get => this._IsAway;
      set => this._IsAway = value;
    }

    public string Server
    {
      get => this._Server;
      set => this._Server = value;
    }

    public int HopCount
    {
      get => this._HopCount;
      set => this._HopCount = value;
    }

    public string[] JoinedChannels
    {
      get
      {
        string[] channels = this._IrcClient.GetChannels();
        StringCollection stringCollection = new StringCollection();
        foreach (string channelname in channels)
        {
          if (this._IrcClient.GetChannel(channelname).UnsafeUsers.ContainsKey((object) this._Nick))
            stringCollection.Add(channelname);
        }
        string[] array = new string[stringCollection.Count];
        stringCollection.CopyTo(array, 0);
        return array;
      }
    }
  }
}
