[1.23]Opensource Hack with Many offsets!

This is a discussion on [1.23]Opensource Hack with Many offsets! within the Warcraft 3 Hacks, bots and tools board part of the Warcraft 3 forum category; Originally Posted by pthanhkim don't drop this thread please this is great thread than ever. anyone done 1.24b open source ...

Page 13 of 13 FirstFirst ... 3111213
Results 121 to 123 of 123
  1. #121
    forgotmylogin is offline Hacker
    Array
    Join Date
    Jul 2008
    Posts
    235
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Rep Power
    10
    Reputation
    64
    Quote Originally Posted by pthanhkim View Post
    don't drop this thread please this is great thread than ever. anyone done 1.24b open source ? i've update warcraft 3 to 1.24b already but forgot backup 1.24a now i can not use compare method. does anyone teach me how to get game.dll offset and how to search real offset map hack + -ah using cheat engine ?
    ty
    the offsets havent changed at all from 1.24a to 1.24b


  2. #122
    xelrix is offline Member
    Array
    Join Date
    Apr 2009
    Posts
    36
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Rep Power
    9
    Reputation
    1
    can anyone explain to me what does each line of codes for this particular snippet means?

    Code:
                NPATCH(0x4559EC,"\x60\x0B\xC0\x75\x2F\x8A\x8E\xD0\x02\x00\x00\x80\xF9\x01\x74\x51\xC6\x86\xD0\x02\x00\x00\x01\xC6\x86\xD1\x02\x00\x00\x01\xC6\x86\xD2\x02\x00\x00\xFF\x8B\xCE\xB8\xFF\x01\x01\xFF\xFF\x15\x60\x5A\x45\x00\xEB\x2D\x8A\x8E\xD0\x02\x00\x00\x80\xF9\xFF\x74\x22\xC6\x86\xD0\x02\x00\x00\xFF\xC6\x86\xD1\x02\x00\x00\xFF\xC6\x86\xD2\x02\x00\x00\xFF\x8B\xCE\xB8\xFF\xFF\xFF\xFF\xFF\x15\x60\x5A\x45\x00\x61\xB8\x01\x00\x00\x00\x23\xD8\x89\x44\x24\xE4\xFF\x35\x65\x5A\x45\x00\xC3",116);
                DWORD addr[3];
                addr[0] = gameBase + 0x29E270; //References to the Game.dll
                addr[1] = gameBase + 0x39A3BF; //
                addr[2] = 0x4559EC;            //Detour
                NPATCH(0x455A60,&addr[0],sizeof(DWORD));
                NPATCH(0x455A65,&addr[1],sizeof(DWORD));
                NPATCH(0x455A6A,&addr[2],sizeof(DWORD));
                PATCH(0x39A3B9,"\xFF\x25\x6A\x5A\x45\x00",6); //Plant detour
                if(dSize == 0)
                {
                    cout << "Failed to enable colored invisibles" << endl;
                }
    and how does this works?

    Code:
                Sleep(1000);
                cout << "Unlimited camera zoom" << endl;
                cout << "Press F1 to enable camera zoom" << endl;
                system("Pause");
                if(GetAsyncKeyState(VK_F1))
                {
                    float zoom = 0;
                    cout << "Please enter zoom: ";
                    cin >> zoom;
    
                    PATCH(0x285B68, "\xE9\x04\xA3\x5E\x00",5);
                    PATCH(0x86FE71, "\xE8\xDA\x13\xCC\xFF\x6A\x01\x6A\x00\x68\xCC\xCC\xCC\xCC\x6A\x00\x8B\x0D\xD8\xA7\xAB\x6F\x8B\x89\x54\x02\x00\x00\xE8\x8E\x65\xA9\xFF\xE9\xD6\x5C\xA1\xFF",38);
                    PATCH(0x86FE7B,&zoom,sizeof(DWORD));
                }

  3. #123
    shane17 is offline Newbie
    Array
    Join Date
    Jan 2009
    Posts
    2
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Rep Power
    0
    Reputation
    0
    Here - this is for 1.24c
    *i take no credit for this at all, I merely updated the offsets*
    All credits go to SD333221
    P.s. I don't do public Support - Pm tyrano or some1
    Code:
    ----------------------------1.24c---------------------------
    #include <windows.h>
    #include <Tlhelp32.h>
    #include <iostream>
    using namespace std;
    
    DWORD GetPIDForProcess (char* process);
    void EnableDebugPriv();
    DWORD GetDLLBase(char* DllName, DWORD tPid);
    
    #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 << "Proudly Presented" << endl;
        cout << "This a Warcraft3 MapHack for version |1.24c" << endl;
        cout << "Searching For Warcraft3" << endl;
        if(GetPIDForProcess("WAR3.EXE") == 0)
        {
            cout << "Warcraft 3 Is Not Open ~" << endl;
            system("Sleep(1500)");
            exit(0);
        }
        else
        {
            cout << "Getting debug privileges" << endl;
            EnableDebugPriv();
            cout << "Opening Warcraft3 Process" << endl;
            HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, false, GetPIDForProcess("WAR3.EXE"));
            if(hProc)
            {
                cout << "Modifying Game memory" << endl;
                DWORD gameBase = GetDLLBase("Game.dll",GetPIDForProcess("WAR3.EXE"));
                DWORD dSize = 0;
    
                PATCH(0x3CC2F2,"\xEB",1);
                PATCH(0x3C6E1C,"\xB8\xFF\x00\x00\x00\xEB",6);
                if(dSize == 0)
                {
                    cout << "Failed to bypass DotA -ah command" << endl;
                }
    
                PATCH(0x3A201B,"\x90\x90",2); 
                PATCH(0x361EBC,"\x00",1);
                if(dSize == 0)
                {
                    cout << "Failed to patch showunits" << endl;
                }
    
                PATCH(0x285C4C,"\x90\x90",2);  
                if(dSize == 0)
                {
                    cout << "Failed to patch clickableunits" << endl;
                }
    
                PATCH(0x28351C,"\x40\xc3",2);
                if(dSize == 0)
                {
                    cout << "Failed to patch revealillu" << endl;
                }
    
                PATCH(0x4075DA,"\x90\x90",2);
                PATCH(0x3A1F5B,"\xEB",1);
                if(dSize == 0)
                {
                    cout << "Failed to enable viewable items" << endl;
                }
    
    
                PATCH(0x20318C,"\x90\x90\x90\x90\x90\x90",6);
                PATCH(0x34FD28,"\x90\x90",2);
                if(dSize == 0)
                {
                    cout << "Failed to enable view skills" << endl;
                }
    
                PATCH(0x28EC8E,"\xEB",1);
                PATCH(0x34FD66,"\x90\x90\x90\x90",4);
                if(dSize == 0)
                {
                    cout << "Failed to enable view cooldowns" << endl;
                }
                
                NPATCH(0x4559EC,"\x60\x0B\xC0\x75\x2F\x8A\x8E\xD0\x02\x00\x00\x80\xF9\x01\x74\x51\xC6\x86\xD0\x02\x00\x00\x01\xC6\x86\xD1\x02\x00\x00\x01\xC6\x86\xD2\x02\x00\x00\xFF\x8B\xCE\xB8\xFF\x01\x01\xFF\xFF\x15\x60\x5A\x45\x00\xEB\x2D\x8A\x8E\xD0\x02\x00\x00\x80\xF9\xFF\x74\x22\xC6\x86\xD0\x02\x00\x00\xFF\xC6\x86\xD1\x02\x00\x00\xFF\xC6\x86\xD2\x02\x00\x00\xFF\x8B\xCE\xB8\xFF\xFF\xFF\xFF\xFF\x15\x60\x5A\x45\x00\x61\xB8\x01\x00\x00\x00\x23\xD8\x89\x44\x24\xE4\xFF\x35\x65\x5A\x45\x00\xC3",116);
                DWORD addr[3];
                addr[0] = gameBase + 0x29E330; 
                addr[1] = gameBase + 0x39A47F; 
                addr[2] = 0x4559EC;            
                NPATCH(0x455A60,&addr[0],sizeof(DWORD));
                NPATCH(0x455A65,&addr[1],sizeof(DWORD));
                NPATCH(0x455A6A,&addr[2],sizeof(DWORD));
                PATCH(0x39A479,"\xFF\x25\x6A\x5A\x45\x00",6); 
                if(dSize == 0)
                {
                    cout << "Failed to enable colored invisibles" << endl;
                }
                
                PATCH(0x3622D1,"\x3B\xC0\x0F\x85\x30\x04\x00\x00",8);
                PATCH(0x356F3E,"\x90\x90\x90",3);
                if(dSize == 0)
                {
                    cout << "Failed to patch show invisible on minimap" << endl;
                }
                
                PATCH(0x285C62,"\xEB",1);
                if(dSize == 0)
                {
                    cout << "Failed to enable click invisible units" << endl;
                }
                
                PATCH(0x34E822,"\xB8\x00\x00\x00\x00\x90",6);
                DWORD highTradeAmount = 1;
                PATCH(0x34E823,&highTradeAmount,sizeof(DWORD));
                PATCH(0x34E82A,"\xB8\x00\x00\x00\x00\x90",6);
                DWORD lowTradeAmount = 500;
                PATCH(0x34E82B,&lowTradeAmount,sizeof(DWORD));
                if(dSize == 0)
                {
                    cout << "Failed to allow trade" << endl;
                }
                
                cout << "Press F1 Now To Disable Fog Of War" << endl;
                Sleep(1500);
                if(GetAsyncKeyState(VK_F1))
                {
                         PATCH(0x74D0B9,"\xB2\x00\x90\x90\x90\x90",6);
                         if(dSize == 0)
                         {
                              cout << "Failed to Remove Fog Of War" << endl;
                         }
                }
                else
                {
                    cout << "Fog Of War Is NOT Disabled" << endl;
                }
                
                
                
                cout << "Enjoy !" << endl;
                system("Sleep(1500)");
                exit(1);
    
    
            }
            else
            {
                cout << "Process could not be opened" << endl;
                system("Sleep(1500)");
                exit(0);
            }
        }
        return 0;
    }
    
    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;
    }
    
    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 );
    } 
    
    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;  
    }
    Last edited by Tracky; 01-19-2010 at 06:58 AM. Reason: added the "cool" code box :D

Page 13 of 13 FirstFirst ... 3111213

Similar Threads

  1. [Detected]Ubermaphack
    By Bendik in forum Warcraft 3 Hacks, bots and tools
    Replies: 175
    Last Post: 12-24-2010, 07:03 PM
  2. Warcraft 1.22 MH
    By sd333221 in forum Warcraft 3 Hacks, bots and tools
    Replies: 75
    Last Post: 08-29-2010, 05:23 AM
  3. [Release]Bendik's Maphack v1.22
    By Bendik in forum Warcraft 3 Hacks, bots and tools
    Replies: 280
    Last Post: 12-12-2008, 02:02 AM
  4. [YOUR CD KEY HAS BEEN DISABLED] DaUberMap + Tiehack 1.22
    By DaUberBird in forum Warcraft 3 Hacks, bots and tools
    Replies: 268
    Last Post: 11-04-2008, 09:33 PM
  5. Warcraft 3 maphack
    By hendricius in forum Warcraft 3 Hacks, bots and tools
    Replies: 88
    Last Post: 08-22-2008, 06:44 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •