READ_ADDRESS / READ_VALUE Pointer kullanımı / Offset Eklemek


C ve C++ Programlama    C ve C++ Programlama İle İlgili Paylaşım Kategorisi

Yazar: xonivion    1 Yorum    280 Görüntüleme
  • 0 Oy - 0 Yüzde

Paylaşım Tarihi: 03.07.2016, 04:09:45 #1
xonivion Cezalı Üye
Cezalı Üye
Status: Çevrimdışı Yorum Sayısı:217 Konu Sayısı:74 Üyelik Tarihi:03.07.2016

sycode tarafından bir hediye.


Kod:
#pragma once
#include <vector>
#include <Windows.h>
#include <stdint.h>

#define READ_VALUE 0x00
#define READ_ADDRESS 0x01

DWORD GetPointer(std::vector<DWORD>Pointer, uint8_t MODE)
{
DWORD Temp_Address = *reinterpret_cast<DWORD*>((DWORD)GetModuleHandle(0) + Pointer.at(0));
for (auto i = Pointer.begin() + 1; i != Pointer.end() ; i++)
{
if (i == Pointer.end() - 1 && MODE == READ_ADDRESS)
{
Temp_Address = Temp_Address + (*i);
return Temp_Address;
}

Temp_Address = *reinterpret_cast<DWORD*>(Temp_Address + (*i));
}

return Temp_Address;
}


Kullanımı oldukça basittir.
Header açıp bu source'u ekliyoruz.
Daha sonradan MemEdit yaparken veya ReadMem şöyle kullanıyoruz;


Kod:
std::vector<DWORD>Test_Pointer;
Test_Pointer.push_back(0x0ADDRESS); //Address
Test_Pointer.push_back(0x4); //1. offset
Test_Pointer.push_back(0x4); //2. offset
Test_Pointer.push_back(0x4); //3. offset
DWORD Local = GetPointer(Test_Pointer, READ_ADDRESS);
Son Düzenleme: 06.07.2016, 15:01:34, Düzenleyen: xonivion.
Paylaşım Tarihi: 03.07.2016, 13:43:24 #2
*Mstkmlnr Fortune's Fool
Co-Admin
Status: Çevrimdışı Yorum Sayısı:359 Konu Sayısı:77 Üyelik Tarihi:17.08.2015 Rep Puanı: 884

teşekkürler

Kullanıcı İmzası
İmage









Aradığınızı Bulamadınız Mı ?

Konuyu görüntüleyenler:
1 Misafir