• Amused
  • Angry
  • Annoyed
  • Awesome
  • Bemused
  • Cocky
  • Cool
  • Crazy
  • Crying
  • Down
  • Drunk
  • Embarrased
  • Enraged
  • Friendly
  • Geeky
  • Godly
  • Happy
  • Hateful
  • Hungry
  • Innocent
  • Meh
  • Piratey
  • Poorly
  • Sad
  • Secret
  • Shy
  • Sneaky
  • Tired
  • Wtf
  • At Work
  • CodenzHub
  • Coding
  • Deejaying
  • Donating
  • Drinking
  • Eating
  • Editing
  • Hacking
  • Hate Mailing
  • Jamin'
  • Lagging
  • Live Streaming
  • Lurking
  • No Status
  • Pawning
  • PC Gaming
  • PS Gaming
  • Raging
  • Reversing
  • Sleeping
  • Steam Gaming
  • Trolling
  • TwitchStreamer
  • Vodka!
  • Watching TV/Movie
  • Xbox Gaming
  • Youtuber
  • Zombies
  • Results 1 to 5 of 5
    1. #1
      Newbie
      Learning to hack games!
       
      Feeling Normal
       
      Ollie's Avatar
      Join Date
      Feb 2013
      Posts
      11
      Thanks (-->)
      2
      Thanks (<--)
      0

      Memory Addresses! :/

      John Kittz
      Sorry for spamming my threads here, but I've got quite a lot of questions and this forums is pretty helpful so yeah.

      I tried getting static memory address for "Spider Solitaire" game's score value.

      I managed to find this pointer:
      0xffdd5f78 + 0xE8 + 0x14, which points to my score perfectly fine, but it's not static.

      When I check what accesses this pointer, I can find "mov rax,SpiderSolitaire.exe+000b5f78"?

      So what is this SpiderSolitaire.exe doing there, and how can i turn that into a memory address?

      Memory Addresses! :/

    2. #2
      Hacker
      Retired
       
      Pawning
       
      Crazywink's Avatar
      Join Date
      Jul 2012
      Location
      US
      Posts
      647
      Thanks (-->)
      111
      Thanks (<--)
      226
      SpiderSolitaire.exe is referring to the program's base address. Something along the lines of.. (If you're doing it in C#.)
      Code:
      System.Diagnostics.Process[] processes = System.Diagnostics.Process.GetProcessesByName("SpiderSolitaire"); 
      
      int baseAddy = processes[0].MainModule.BaseAddress.ToInt32();
      Will return the base address, from which you add the proceeding address and offsets.

      Crazywink

    3. Thanks Ollie thanked for this post
    4. #3
      Newbie
      Learning to hack games!
       
      Feeling Normal
       
      Ollie's Avatar
      Join Date
      Feb 2013
      Posts
      11
      Thanks (-->)
      2
      Thanks (<--)
      0
      Ah sorry, I forgot to mention that i'm using C++.

    5. #4
      Hacker
      Retired
       
      Pawning
       
      Crazywink's Avatar
      Join Date
      Jul 2012
      Location
      US
      Posts
      647
      Thanks (-->)
      111
      Thanks (<--)
      226
      This is what I use when getting the base address using C++: (Thanks to Flyte from Cheat Engine Forums for this)

      Code:
      DWORD GetModuleBase(HANDLE hProc, string &sModuleName) 
      { 
         HMODULE *hModules; 
         char szBuf[50]; 
         DWORD cModules; 
         DWORD dwBase = -1; 
         //------ 
      
         EnumProcessModules(hProc, hModules, 0, &cModules); 
         hModules = new HMODULE[cModules/sizeof(HMODULE)]; 
          
         if(EnumProcessModules(hProc, hModules, cModules/sizeof(HMODULE), &cModules)) { 
            for(int i = 0; i < cModules/sizeof(HMODULE); i++) { 
               if(GetModuleBaseName(hProc, hModules[i], szBuf, sizeof(szBuf))) { 
                  if(sModuleName.compare(szBuf) == 0) { 
                     dwBase = (DWORD)hModules[i]; 
                     break; 
                  } 
               } 
            } 
         } 
      
         delete[] hModules; 
      
         return dwBase; 
      }
      To use:
      Code:
      GetModuleBase(hProc, string("spidersolitaire.exe"));

    6. #5
      Newbie
      Learning to hack games!
       
      Feeling Normal
       
      Ollie's Avatar
      Join Date
      Feb 2013
      Posts
      11
      Thanks (-->)
      2
      Thanks (<--)
      0
      Cheats'n'Trainers
      Quote Originally Posted by crazywink View Post
      This is what I use when getting the base address using C++: (Thanks to Flyte from Cheat Engine Forums for this)

      Code:
      DWORD GetModuleBase(HANDLE hProc, string &sModuleName) 
      { 
         HMODULE *hModules; 
         char szBuf[50]; 
         DWORD cModules; 
         DWORD dwBase = -1; 
         //------ 
      
         EnumProcessModules(hProc, hModules, 0, &cModules); 
         hModules = new HMODULE[cModules/sizeof(HMODULE)]; 
          
         if(EnumProcessModules(hProc, hModules, cModules/sizeof(HMODULE), &cModules)) { 
            for(int i = 0; i < cModules/sizeof(HMODULE); i++) { 
               if(GetModuleBaseName(hProc, hModules[i], szBuf, sizeof(szBuf))) { 
                  if(sModuleName.compare(szBuf) == 0) { 
                     dwBase = (DWORD)hModules[i]; 
                     break; 
                  } 
               } 
            } 
         } 
      
         delete[] hModules; 
      
         return dwBase; 
      }
      To use:
      Code:
      GetModuleBase(hProc, string("spidersolitaire.exe"));

      Thanks but GetModuleBase() always returns 0xFFFFFFFF for some reason.

    Similar Game Hacker Threads

    1. [Help] Dumping a whole region of memory somewhere to trick a memory check
      By windows.h in forum Hacking Help
      Replies: 6
      Last Post: 02-18-2016, 09:28 AM
    2. [Help] How to find player memory addresses?
      By louie in forum Hacking Help
      Replies: 2
      Last Post: 09-15-2015, 01:48 AM
    3. Replies: 18
      Last Post: 10-20-2013, 06:00 AM
    4. Some Black Ops 2 Memory Addresses (Cheat Table)
      By Styx™ in forum Hacking Help
      Replies: 5
      Last Post: 11-15-2012, 09:30 AM

    Tags for this Thread