Jump to content

Recommended Posts

Posted (edited)

Hello everybody!

This is my first post! Nice to meet you guys!

This week i was doing a script that reads some pointer + offset and it makes a msgbox() with the result of that pointer. Whats happening? The problem that if i put this lines

#AutoIt3Wrapper_UseX64=n

The script will not read the memory, it had not sense!!!! Without these lines, the script works great. But only in x64 windows 'u.u' :)

I summon your knowledge, masters of autoit!!!

Info about the problem:

Im using Windows 7 x64 PRO

The script reads memory of a program of 32 bits.

Edited by foreveralone00
Posted

I don`t have to much idea of this but my opinion is this, maybe someone more experienced will have a better aproach.

#AutoIt3Wrapper_UseUpx=n

This don`t have any sense if you are running a script from SciTe, This is useful when you compile the script and it have no relationship with the issue.

#AutoIt3Wrapper_UseX64=n

I dont know what function you use to read memory, but maybe it is affected by the fact that the script is running in 32bits.
Posted

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=Actions-help-about.ico
#AutoIt3Wrapper_Compression=4
;~ #AutoIt3Wrapper_UseUpx=n
;~ #AutoIt3Wrapper_UseX64=n
#AutoIt3Wrapper_Res_requestedExecutionLevel=requireAdministrator
#EndRegion;**** Directives created by AutoIt3Wrapper_GUI ****
#RequireAdmin

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

#include <NomadMemory.au3>
#include <GUIConstants.au3>
#include <Misc.au3>


SetPrivilege("SeDebugPrivilege", 1)
Global $Offset1[2]
Global $Offset2[2]
Global $pid
Global $pid1
Global $openmen
Global $baseADDR
Global $openmen1
Global $baseADDR1
Global $hp_Address
Global $hp_Address1
Global $HPRead
Global $HPRead1
Global $opinion

Global $Offset1[2]
$Offset1[0] = 0; Is ALWAYS 0.
$Offset1[1] = Dec("CC5228"); Static Addr Oset.
$pid = ProcessExists("Data.exe")

$openmem = _MemoryOpen($pid)
$baseADDR = _MemoryGetBaseAddress($openmem,1)
$hp_Address = "0x" & Hex($baseADDR + Dec("8C5228")); Creates the final static address you read from.


;Open the EXE for Reading / Writing
$HPRead =  _MemoryPointerRead($hp_Address, $openmem, $Offset1)
MsgBox("", "Info", $baseADDR & "Result"& ($HPRead[1]))

Global $Offset2[2]
$Offset2[0] = 0; Is ALWAYS 0.
$Offset2[1] = Dec("CC5248"); Static Addr Oset.
$pid1 = ProcessExists("Data.exe")

$openmem1 = _MemoryOpen($pid1)
$baseADDR1 = _MemoryGetBaseAddress($openmem1,1)
$hp_Address1 = "0x" & Hex($baseADDR1 + Dec("8C5248")); Creates the final static address you read from.


;Open the EXE for Reading / Writing
$HPRead1 =  _MemoryPointerRead($hp_Address1, $openmem1, $Offset2)
MsgBox("", "Info", $baseADDR1 & "Result"& ($HPRead1[1]))

the script

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...