private void ForceQuitProcess() { if (AllowQuit()) { if (memoryForm != null) { memoryForm.Close(); } if (disassemblyForm != null) { disassemblyForm.Close(); } if (registersForm != null) { registersForm.Close(); } if (breakpointForm != null) { breakpointForm.Close(); } OrbisDbg.SendProcessSignal(OrbisDbg.SIGNALS.SIGKILL); SetButtonsEnabled(false); } else { MessageBox.Show("Please clear breakpoints and detach before quittting the game", "Process can't quit"); } }
private void BreakProcess() { if (!OrbisDbg.IsProcessPaused()) { if (OrbisDbg.SendProcessSignal(OrbisDbg.SIGNALS.SIGSTOP) == 0) { return; } if (breakpoints.Count > 0) { for (int i = 0; i < breakpoints.Count; i++) { Breakpoint bp = breakpoints[i]; if (SelectedProcess.Equals(bp.process) && bp.enabled) { OrbisDbg.Ext.WriteByte(bp.address, bp.instruction); } } } /*OrbisDbg.registers regs = OrbisDbg.GetRegisters(); * * if (registersForm != null) * registersForm.UpdateRegisterWindow(regs); * * if(memoryForm != null) * memoryForm.UpdateMemoryView(regs.r_rip, 0x1000, OrbisDbg.GetMemory(regs.r_rip, 0x1000)); * * if(disassemblyForm != null) * disassemblyForm.UpdateDisassembly(regs.r_rip, OrbisDbg.GetMemory(regs.r_rip, 0x100), disassemblyForm.IsShowingBytes());*/ OrbisDbg.SetSingleStep(); } }