Exemple #1
0
 /// <summary>
 /// Инициализировать магию!
 /// </summary>
 /// <param name="TargetId">PID жертвы</param>
 public static bool InitializateMagic(string ProcessName, DebugPrintParams DebugMode = DebugPrintParams.DEFAULT)
 {
     if (InitializateDriver())
     {
         SetDebugMode(DebugMode, false);
         TargetPID = KernelBlackMagic.GetPidByProcessName(ProcessName);
         //TargetPID = (UInt16)GetPidByProcessName(ProcessName);
         if (TargetPID != 0)
         {
             return(InitializateDriverProcesses(TargetPID));
         }
     }
     return(false);
 }
Exemple #2
0
        public static uint GetClassId(uint EntityPlayer)
        {
            uint one = KernelBlackMagic.Read <uint>(EntityPlayer + 0x8);

            if (one != 0)
            {
                uint two = KernelBlackMagic.Read <uint>(one + 0x8);
                if (two != 0)
                {
                    uint three = KernelBlackMagic.Read <uint>(two + 0x1);
                    if (three != 0)
                    {
                        return(KernelBlackMagic.Read <uint>(three + 0x14));
                    }
                }
            }
            return(0);
        }
Exemple #3
0
        static void Main()
        {
            //Навсякий случай еще раз инициализируем класс загрузчик внутренних ресурсов
            ResourcesResolver = new ResourcesResolver();

            //Включаем визуальные стили
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);


            //Проверяем работает ли драйвер?
Retry:
            if (!KernelBlackMagic.CheckDriverIsWorking())
            {
                Thread.Sleep(100);
                var dialResult = MessageBox.Show("Драйвер KernelBlackMagic не работает! Запустите его!", "Ошибка!", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
                if (dialResult == DialogResult.Retry)
                {
                    goto Retry;
                }
                else
                {
                    return;
                }
            }


            //Авторизируемся
            var af = new Auth_Form();

            af.ShowDialog();


            MyCRC = af.CrcStr;

            //Проверяем авторизацию
            if (!af.auth_metroButton.Enabled && !af.FakeAccess && af.AccessGranted)
            {
                if (!af.auth_metroButton.Enabled && !af.FakeAccess && af.AccessGranted && af.Access.ToLower() == "yep!")
                {
                    //Сохраняем ключик который мы вводили
                    Thread.Sleep(250);
                    Settings.Default.KeySaved = af.key_metroTextBox.Text;
                    Settings.Default.Save();
                    Thread.Sleep(250);



                    //Чекаем что дрова работают
                    while (!KernelBlackMagic.CheckDriverIsWorking())
                    {
                        Thread.Sleep(100);
                        var dialResult = MessageBox.Show("Драйвер KernelBlackMagic не работает! Запустите его!", "Ошибка!", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
                        if (dialResult == DialogResult.Retry)
                        {
                            continue;
                        }
                        else
                        {
                            return;
                        }
                    }

                    //Инициализируем чёрную магию на игру
                    while (!KernelBlackMagic.InitializateMagic("csgo.exe"))
                    {
                        var dialResult = MessageBox.Show("CSGO не запущена!", "Ошибка!", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
                        if (dialResult == DialogResult.Retry)
                        {
                            continue;
                        }
                        else
                        {
                            return;
                        }
                    }



                    //Грузим оффсеты!
                    if (af.Access == "YEP!")
                    {
                        //Если неудача, то ливаем!
                        if (!Offsets.LoadOffsets())
                        {
                            return;
                        }
                    }


                    //Инициализируем форму
                    try
                    {
                        if (af.Access.ToLower() == "yep!" && !af.FakeAccess && af.AccessGranted && af.Access.ToUpper().Trim() == "yEp!".ToUpper())
                        {
                            //Запускаем шарманку
                            Application.Run(new Main_Form());


                            //Форму закрыли, сообщаем потокам что они могут завершится
                            IsClosing = true;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show($"Неизвестная ошибка: [{ex.Message}]", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
        }