Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            NtrClient ntr = new NtrClient(IpAddress);

            Console.WriteLine("NTR TEST - plz work");
            Console.ReadLine();
            do
            {
                Console.Write("Trying to connect... ");
                ntr.ConnectToServer();
                Console.WriteLine(ntr.IsConnected);
            } while (!ntr.IsConnected);
            ntr.SendProcessPacket();
            Console.WriteLine("\n\n");
            Console.ReadLine();
            ntr.SendMemLayoutPacket(0x29);
            Console.ReadLine();
            ntr.Disconnect();
        }
Ejemplo n.º 2
0
        public void Connect()
        {
            lock (_sync)
            {
                client = new NtrClient();
                client.EvtNtrStringReceived  += OnProcessList;
                client.EvtReadMemoryReceived += OnReadMemory;
                client.EvtConnect            += OnConnected;
                client.EvtDisconnect         += OnDisconnected;
                client.SetServer(IP, 8000);
                client.ConnectToServer();

                while (!Connected)
                {
                    Thread.Sleep(100);
                }

                GetProcessList();
            }
        }
Ejemplo n.º 3
0
        // Form Events
        private void MainWindow_Load(object sender, EventArgs e)
        {
            try
            {
                LogLine("NTR by cell9");
                LogLine("NTRSharp by imthe666st");

                Log("Setup");
                this.cmbEditModeType.SelectedIndex = 0;
                this.cmbMemlayout.SelectedIndex    = 0;
                this.cmbProcesses.SelectedIndex    = 0;

                this.NtrClient = new NtrClient();

                this.NtrClient.EvtMessageReceived    += (s, e_) => { LogLine(e_.Message); };
                this.NtrClient.EvtNtrStringReceived  += (s, e_) => { HandleMessageReceived(e_.Message); };
                this.NtrClient.EvtReadMemoryReceived += (s, e_) => { HandleReadMemory(e_.Buffer); };

                this.NtrClient.EvtDisconnect += (s, e_) => { EnableConnect(); };

                this.NtrClient.EvtProgress += (s, e_) => { SetProgress(this.NtrClient?.Progress ?? 0); };

                Log(".");

                txtEditorByte.ContextMenu = new ContextMenu(new MenuItem[] {
                    new MenuItem("Save to file", (s, e_) => {
                        using (SaveFileDialog sfd = new SaveFileDialog())
                        {
                            sfd.DefaultExt = "bin";
                            sfd.Filter     = "Binary|*.bin";
                            if (sfd.ShowDialog() == DialogResult.OK)
                            {
                                List <byte> byteCode = new List <byte>();
                                String k             = txtEditorByte.Text;
                                k = String.Join(null, k.Split(' '));
                                for (int i = 0; i <= k.Length - 2; i += 2)
                                {
                                    byteCode.Add(Convert.ToByte(k.Substring(i, 2), 16));
                                }

                                File.WriteAllBytes(sfd.FileName, byteCode.ToArray());
                            }
                        }
                    }),
                    new MenuItem("Load from file", (s, e_) => {
                        using (OpenFileDialog ofd = new OpenFileDialog())
                        {
                            ofd.Filter      = "All|*.*";
                            ofd.Multiselect = false;
                            if (ofd.ShowDialog() == DialogResult.OK)
                            {
                                if (File.Exists(ofd.FileName))
                                {
                                    byte[] data        = File.ReadAllBytes(ofd.FileName);
                                    txtEditorByte.Text = ByteArrayToHexString(data);
                                }
                            }
                        }
                    }),

                    new MenuItem("Clear", (s, e_) => txtEditorByte.Text = null),
                    new MenuItem("Copy", (s, e_) => Clipboard.SetText(txtEditorByte.Text)),
                    new MenuItem("Paste", (s, e_) => {
                        String t = Clipboard.GetText();
                        t        = String.Join(null, t.Split(' '));
                        t        = String.Join(null, t.Split(Environment.NewLine));
                        t        = t.ToUpper();

                        if (!new Regex("[0-9A-F]*").IsMatch(t))
                        {
                            return;
                        }

                        //t = String.Join(" ", t.Split(2, true));
                        txtEditorByte.Text = t;
                    }),
                });


                txtEditorBase.ContextMenu = new ContextMenu(new MenuItem[] {
                    new MenuItem("Save to file", (s, e_) => {
                        using (SaveFileDialog sfd = new SaveFileDialog())
                        {
                            sfd.DefaultExt = "txt";
                            sfd.Filter     = "Text|*.txt";
                            if (sfd.ShowDialog() == DialogResult.OK)
                            {
                                File.WriteAllText(sfd.FileName, txtEditorBase.Text);
                            }
                        }
                    }),
                    new MenuItem("Load from file", (s, e_) => {
                        using (OpenFileDialog ofd = new OpenFileDialog())
                        {
                            ofd.Filter      = "All|*.*";
                            ofd.Multiselect = false;
                            if (ofd.ShowDialog() == DialogResult.OK)
                            {
                                if (File.Exists(ofd.FileName))
                                {
                                    byte[] data        = File.ReadAllBytes(ofd.FileName);
                                    txtEditorBase.Text = ByteArrayToHexString(data);
                                }
                            }
                        }
                    }),

                    new MenuItem("Clear", (s, e_) => txtEditorBase.Text = null),
                    new MenuItem("Copy", (s, e_) => Clipboard.SetText(txtEditorBase.Text)),
                    new MenuItem("Paste", (s, e_) => txtEditorBase.Text = Clipboard.GetText()),
                });
                Log(".");

                this.txtIpAddress.Text = Config.IpAddress;

                //txtIpAddress.SelectionLength = 0;

                LogLine(Environment.NewLine + "Finished setup");

                //LogLine("Loaded RestrictedProcesses:");
                //foreach (var p in Config.Processes)
                //{
                //	LogLine(p.Name);
                //}
            }
            catch (Exception ex)
            {
                LogLine(ex.Message + Environment.NewLine + ex.StackTrace);
            }
        }