1. BanDiTuK12.05.2025 в 11:55от
Загрузка...
Загрузка...

Dota 2 CamHack source

Тема в разделе "Dota 2", создана пользователем Dota2Sell, 27.05.2013.

  1. Dota2Sell

    Dota2Sell

    Статус:
    Оффлайн
    Регистрация:
    05.07.12
    Сообщения:
    12
    Репутация:
    0 +/-
    Код:
    //Made from SimpleWc3Hack for Warcraft 3 Patch 1.23...
    #include <windows.h>
    #include <Tlhelp32.h>
    #include <iostream>
    #include <fstream>
    #include <sstream>
    
    
    using namespace std;
    
    
    DWORD GetPIDForProcess (char* process);
    void EnableDebugPriv();
    DWORD GetDLLBase(char* DllName, DWORD tPid);
    void Repeat();
    void Hack(LPVOID address);
    LPVOID GetData();
    #define PATCH(i,w,l) WriteProcessMemory(hProc,reinterpret_cast<LPVOID>(gameBase+i),w,l,&dSize)
    #define NPATCH(i,w,l) WriteProcessMemory(hProc,reinterpret_cast<LPVOID>(i),w,l,&dSize)
    
    
    int main()
    {
        cout << "Dota 2 CameraHack by AppleWilliam" << endl << endl;
        Hack(GetData());
        system("Pause");
        return 0;
    }
    LPVOID GetData()
    {
        string textLine;
        LPVOID data;
        ifstream ifs("config.ini", ifstream::in);
        if (ifs.good())
        {
            getline(ifs, textLine);
            ifs.close();
            istringstream ( textLine ) >> data;
        }
        return data;
    }
    void Hack(LPVOID address)
    {
        char* program = "dota.exe";
        int distance;
        cout << "Searching for Dota 2..." << endl;
        if(GetPIDForProcess(program) == 0)
        {
            cout << "Dota 2 was not found" << endl;
            system("Pause");
            exit(0);
        }
        else
        {
            EnableDebugPriv();
            cout << "Opening Dota 2 Process..." << endl;
            HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, false, GetPIDForProcess(program));
            if(hProc)
            {
                cout << "Process opened...\nWhat distance?:" << endl;
                cin>>distance;
                cout<<"Patching...";
                DWORD gameBase = GetDLLBase("client.dll",GetPIDForProcess(program));
                DWORD dSize = 0;
                PATCH(address,&distance,sizeof(distance)); //Patch 6F3A1E9B to nop nop :-)
                if(dSize == 0)
                {
                    cout << "FAILED" << endl;
                }
                else
                {
                    cout << "SUCCESS!\a" << endl;
                }
    
    
            }
            else
            {
                cout << "Dota 2 could not be opened..." << endl;
                cout << "FAILED" << endl;
                exit(0);
            }
        }
    }
    void Repeat()
    {
        cout<<"Enter 'y' to enter new value || Enter any character to quit\n:";
        char x;
        cin>>x;
        cout<<endl;
        if(x=='y')
        {
            Hack(GetData());
        }
        exit(0);
    }
    
    
    //Queries the ProcessId of a certain process
    DWORD GetPIDForProcess (char* process)
    {
        BOOL            working=0;
        PROCESSENTRY32 lppe= {0};
        DWORD            targetPid=0;
    
    
        HANDLE hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS ,0);
        if (hSnapshot)
        {
            lppe.dwSize=sizeof(lppe);
            working=Process32First(hSnapshot,&lppe);
            while (working)
            {
                if(_stricmp(lppe.szExeFile,process)==0)
                {
                    targetPid=lppe.th32ProcessID;
                    break;
                }
                working=Process32Next(hSnapshot,&lppe);
            }
        }
    
    
        CloseHandle( hSnapshot );
        return targetPid;
    }
    
    
    //Enables to open other processes
    void EnableDebugPriv()
    {
        HANDLE hToken;
        LUID sedebugnameValue;
        TOKEN_PRIVILEGES tkp;
    
    
        if ( ! OpenProcessToken( GetCurrentProcess(),
                                 TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken ) )
            return;
        if ( ! LookupPrivilegeValue( NULL, SE_DEBUG_NAME, &sedebugnameValue ) )
        {
            CloseHandle( hToken );
            return;
        }
        tkp.PrivilegeCount = 1;
        tkp.Privileges[0].Luid = sedebugnameValue;
        tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
        if ( ! AdjustTokenPrivileges( hToken, FALSE, &tkp, sizeof tkp, NULL, NULL ) )
            CloseHandle( hToken );
    }
    
    
    //Gets the base of our dll
    DWORD GetDLLBase(char* DllName, DWORD tPid)
    {
        HANDLE snapMod;
        MODULEENTRY32 me32;
    
    
        if (tPid == 0) return 0;
        snapMod = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, tPid);
        me32.dwSize = sizeof(MODULEENTRY32);
        if (Module32First(snapMod, &me32))
        {
            do
            {
                if (strcmp(DllName,me32.szModule) == 0)
                {
                    CloseHandle(snapMod);
                    return (DWORD) me32.modBaseAddr;
                }
            }
            while(Module32Next(snapMod,&me32));
        }
    
    
        CloseHandle(snapMod);
        return 0;
    }
    Автор не я,источник один фиг блокируется :)
     
  2. Zizzy

    ༼ つ ◕◡◕ ༽つ DIRETIDE
    Zizzy

    Статус:
    Оффлайн
    Регистрация:
    09.10.11
    Сообщения:
    639
    Репутация:
    385 +/-
    И что с этим кодом делать? :D
     
  3. stinker

    stinker

    Статус:
    Оффлайн
    Регистрация:
    01.04.13
    Сообщения:
    926
    Репутация:
    441 +/-
    +
     
  4. Lookka

    Lookka

    Статус:
    Оффлайн
    Регистрация:
    26.02.13
    Сообщения:
    60
    Репутация:
    38 +/-
    Что это и с чем его едят??Если не сложно объясни.
     
  5. Immunqa

    Immunqa

    Статус:
    Оффлайн
    Регистрация:
    15.12.12
    Сообщения:
    6
    Репутация:
    -1 +/-
    Ахахах нашел парень , ты первую строку прочитай :
     
  6. WhoAreYou

    WhoAreYou

    Статус:
    Оффлайн
    Регистрация:
    23.04.13
    Сообщения:
    552
    Репутация:
    165 +/-
    А теперь переведи. Сделано из ляляляхака для вк3. Это не для вк3... -_\
     
  7. alee

    alee

    Статус:
    Оффлайн
    Регистрация:
    06.10.12
    Сообщения:
    331
    Репутация:
    344 +/-
    что с ним делать
     
  8. ๖ۣۜJason

    ๖ۣۜJason

    Статус:
    Оффлайн
    Регистрация:
    27.06.12
    Сообщения:
    922
    Репутация:
    641 +/-
    Пихать в язык программирования и компилировать.