private static int AttemptExeProgramExecution(OS os, string[] p) { var computer = os.connectedComp != null ? os.connectedComp : os.thisComputer; var folder = os.thisComputer.files.root.searchForFolder("bin"); var indexOfExeProgram = GetFileIndexOfExeProgram(p[0], folder); var flag = indexOfExeProgram == int.MaxValue; var index1 = -1; if (indexOfExeProgram < 0) return -1; string exeFileData = null; string exeName = null; if (!flag) { exeFileData = folder.files[indexOfExeProgram].data; for (var index2 = 0; index2 < PortExploits.exeNums.Count; ++index2) { var index3 = PortExploits.exeNums[index2]; if (PortExploits.crackExeData[index3].Equals(exeFileData)) { exeName = PortExploits.cracks[index3].Replace(".exe", "").ToLower(); index1 = index3; break; } } } else { exeName = p[0].Replace(".exe", "").ToLower(); if (exeName == "notes") exeFileData = PortExploits.crackExeData[8]; if (exeName == "tutorial") exeFileData = PortExploits.crackExeData[1]; } if (exeName == null) return -1; var targetPort = -1; if (!flag) { if (PortExploits.needsPort[index1]) { try { for (var index2 = 0; index2 < computer.ports.Count; ++index2) { if (computer.ports[index2] == Convert.ToInt32(p[1])) { targetPort = computer.ports[index2]; break; } } } catch { os.write("No port number Provided"); return 0; } if (targetPort == -1) { os.write("Target Port is Closed"); return 0; } if (exeFileData != PortExploits.crackExeData[targetPort]) { os.write("Target Port running incompatible service for this executable"); return 0; } } } os.launchExecutable(exeName, exeFileData, targetPort, p); return 1; }
private static int AttemptExeProgramExecution(OS os, string[] p) { var computer = os.connectedComp != null ? os.connectedComp : os.thisComputer; var folder = os.thisComputer.files.root.searchForFolder("bin"); var indexOfExeProgram = GetFileIndexOfExeProgram(p[0], folder); var flag = indexOfExeProgram == int.MaxValue; var index1 = -1; if (indexOfExeProgram < 0) { return(-1); } string exeFileData = null; string exeName = null; if (!flag) { exeFileData = folder.files[indexOfExeProgram].data; for (var index2 = 0; index2 < PortExploits.exeNums.Count; ++index2) { var index3 = PortExploits.exeNums[index2]; if (PortExploits.crackExeData[index3].Equals(exeFileData)) { exeName = PortExploits.cracks[index3].Replace(".exe", "").ToLower(); index1 = index3; break; } } } else { exeName = p[0].Replace(".exe", "").ToLower(); if (exeName == "notes") { exeFileData = PortExploits.crackExeData[8]; } if (exeName == "tutorial") { exeFileData = PortExploits.crackExeData[1]; } } if (exeName == null) { return(-1); } var targetPort = -1; if (!flag) { if (PortExploits.needsPort[index1]) { try { for (var index2 = 0; index2 < computer.ports.Count; ++index2) { if (computer.ports[index2] == Convert.ToInt32(p[1])) { targetPort = computer.ports[index2]; break; } } } catch { os.write("No port number Provided"); return(0); } if (targetPort == -1) { os.write("Target Port is Closed"); return(0); } if (exeFileData != PortExploits.crackExeData[targetPort]) { os.write("Target Port running incompatible service for this executable"); return(0); } } } os.launchExecutable(exeName, exeFileData, targetPort, p); return(1); }
public static void firstTimeInit(string[] args, OS os) { var flag = Settings.initShowsTutorial; if (flag) { os.display.visible = false; os.ram.visible = false; os.netMap.visible = false; os.terminal.visible = true; os.mailicon.isEnabled = false; } var msDelay = Settings.isConventionDemo ? 80 : 200; var millisecondsTimeout = Settings.isConventionDemo ? 150 : 300; if (Settings.debugCommandsEnabled && GuiData.getKeyboadState().IsKeyDown(Keys.LeftAlt)) msDelay = millisecondsTimeout = 1; typeOut("Initializing .", os, 50); doDots(7, msDelay + 100, os); typeOut("Loading modules.", os, 50); doDots(5, msDelay, os); os.writeSingle("Complete"); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout); typeOut("Loading nodes.", os, 50); doDots(5, msDelay, os); os.writeSingle("Complete"); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout); typeOut("Reticulating splines.", os, 50); doDots(5, msDelay - 50, os); os.writeSingle("Complete"); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout); if (os.crashModule.BootLoadErrors.Length > 0) { typeOut("\n------ BOOT ERROS DETECTED ------", os, 50); Thread.Sleep(200); foreach ( var s in os.crashModule.BootLoadErrors.Split(Utils.newlineDelim, StringSplitOptions.RemoveEmptyEntries)) { typeOut(s, os, 50); Thread.Sleep(100); } typeOut("---------------------------------\n", os, 50); Thread.Sleep(200); } typeOut("\n--Initialization Complete--\n", os, 50); GuiData.getFilteredKeys(); os.inputEnabled = true; if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout + 100); if (!flag) { typeOut("For A Command List, type \"help\"", os, 50); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout + 100); } os.write(""); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout); os.write(""); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout); os.write(""); if (!Utils.DebugGoFast()) Thread.Sleep(millisecondsTimeout); os.write("\n"); if (flag) { os.write("Launching Tutorial..."); os.launchExecutable("Tutorial.exe", PortExploits.crackExeData[1], -1, null); Settings.initShowsTutorial = false; var num1 = 100; for (var index = 0; index < num1; ++index) { var num2 = index/(double) num1; if (Utils.random.NextDouble() < num2) { os.ram.visible = true; os.netMap.visible = false; os.terminal.visible = false; } else { os.ram.visible = false; os.netMap.visible = false; os.terminal.visible = true; } Thread.Sleep(16); } os.ram.visible = true; os.netMap.visible = false; os.terminal.visible = false; } else os.runCommand("connect " + os.thisComputer.ip); }
private static int AttemptExeProgramExecution(OS os, string[] p) { Computer target = os.connectedComp != null ? os.connectedComp : os.thisComputer; Folder folder = os.thisComputer.files.root.searchForFolder("bin"); int indexOfExeProgram = ProgramRunner.GetFileIndexOfExeProgram(p[0], (object)folder); bool flag = indexOfExeProgram == int.MaxValue; int index1 = -1; int index2 = -1; if (indexOfExeProgram < 0) { return(-1); } string exeFileData = (string)null; string exeName = (string)null; if (!flag) { exeFileData = folder.files[indexOfExeProgram].data; for (int index3 = 0; index3 < PortExploits.exeNums.Count; ++index3) { int exeNum = PortExploits.exeNums[index3]; if (PortExploits.crackExeData[exeNum].Equals(exeFileData) || PortExploits.crackExeDataLocalRNG[exeNum].Equals(exeFileData)) { exeName = PortExploits.cracks[exeNum].Replace(".exe", "").ToLower(); index2 = exeNum; break; } } if (exeName == "ftpsprint") { int num; index2 = num = 21; if (exeFileData == PortExploits.crackExeData[211] || exeFileData == PortExploits.crackExeDataLocalRNG[211]) { index1 = 211; } } } else { exeName = p[0].Replace(".exe", "").ToLower(); if (exeName == "notes") { exeFileData = PortExploits.crackExeData[8]; } if (exeName == "tutorial") { exeFileData = PortExploits.crackExeData[1]; } } if (exeName == null) { return(-1); } int targetPort = -1; int codePort = -1; if (!flag && PortExploits.needsPort[index2]) { if (p.Length > 1) { try { int int32 = Convert.ToInt32(p[1]); int num = int32; codePort = target.GetCodePortNumberFromDisplayPort(int32); if (num == codePort) { int numberFromCodePort = target.GetDisplayPortNumberFromCodePort(codePort); if (codePort != numberFromCodePort) { codePort = -1; } } } catch (FormatException ex) { codePort = -1; } } else { if (exeName == "ssltrojan") { SSLPortExe.GenerateInstanceOrNullFromArguments(p, Rectangle.Empty, (object)os, target); return(0); } os.write(LocaleTerms.Loc("No port number Provided")); return(0); } } if (!flag && PortExploits.needsPort[index2]) { try { for (int index3 = 0; index3 < target.ports.Count; ++index3) { if (target.ports[index3] == codePort) { targetPort = target.ports[index3]; break; } } } catch { os.write(LocaleTerms.Loc("No port number Provided")); return(0); } if (targetPort == -1) { os.write(LocaleTerms.Loc("Target Port is Closed")); return(0); } if (index1 <= -1) { index1 = targetPort; } if (index1 == 211 && targetPort != 21 || exeFileData != PortExploits.crackExeData[index1] && exeFileData != PortExploits.crackExeDataLocalRNG[index1]) { os.write(LocaleTerms.Loc("Target Port running incompatible service for this executable")); return(0); } } os.launchExecutable(exeName, exeFileData, targetPort, p, p[0]); return(1); }