Results 1 to 13 of 13
  1. #1
    KatchupGames's Avatar
    Join Date
    Jan 2018
    Gender
    male
    Posts
    5
    Reputation
    10
    Thanks
    0

    Question [VB.NET] How Can I Read a double value in a pointer address

    Hello guys ! i'm searching for a way to read double value in a pointer. I have the offsets,the base address, but i can't read this adress, reading int it return 0,float return 0, only 8 bytes,Double and Array Bytes return a value.

    Can anyone help-me ?

    I'm using this modules for Reading memory.


    ---------------------------------------------------------------------------------------------------------------
    Option Strict On

    Imports System.Runtime.InteropServices
    Imports System.Text

    Module MemoryModule
    <DllImport("kernel32.dll")>
    Private Function OpenProcess(ByVal dwDesiredAccess As UInteger, <MarshalAs(UnmanagedType.Bool)> ByVal bInheritHandle As Boolean, ByVal dwProcessId As Integer) As IntPtr
    End Function

    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function WriteProcessMemory(ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal lpBuffer As Byte(), ByVal nSize As IntPtr, <Out()> ByRef lpNumberOfBytesWritten As IntPtr) As Boolean
    End Function

    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function ReadProcessMemory(ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, <Out()> ByVal lpBuffer() As Byte, ByVal dwSize As IntPtr, ByRef lpNumberOfBytesRead As IntPtr) As Boolean
    End Function

    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function CloseHandle(ByVal hObject As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    End Function

    Private Const PROCESS_VM_WRITE As UInteger = &H20
    Private Const PROCESS_VM_READ As UInteger = &H10
    Private Const PROCESS_VM_OPERATION As UInteger = &H8
    Private TargetProcess As String = "iw6mp64_ship"
    Private ProcessHandle As IntPtr = IntPtr.Zero
    Private LastKnownPID As Integer = -1

    Private Function ProcessIDExists(ByVal pID As Integer) As Boolean
    For Each p As Process In Process.GetProcessesByName(TargetProcess)
    If p.Id = pID Then Return True
    Next
    Return False
    End Function

    Public Sub SetProcessName(ByVal processName As String)
    TargetProcess = processName
    If ProcessHandle <> IntPtr.Zero Then CloseHandle(ProcessHandle)
    LastKnownPID = -1
    ProcessHandle = IntPtr.Zero
    End Sub

    Public Function GetCurrentProcessName() As String
    Return TargetProcess
    End Function

    Public Function UpdateProcessHandle() As Boolean
    If LastKnownPID = -1 OrElse Not ProcessIDExists(LastKnownPID) Then
    If ProcessHandle <> IntPtr.Zero Then CloseHandle(ProcessHandle)
    Dim p() As Process = Process.GetProcessesByName(TargetProcess)
    If p.Length = 0 Then Return False
    LastKnownPID = p(0).Id
    ProcessHandle = OpenProcess(PROCESS_VM_READ Or PROCESS_VM_WRITE Or PROCESS_VM_OPERATION, False, p(0).Id)
    If ProcessHandle = IntPtr.Zero Then Return False
    End If
    Return True
    End Function

    Public Function ReadMemory(Of T)(ByVal address As Object) As T
    Return ReadMemory(Of T)(CLng(address))
    End Function

    Public Function ReadMemory(Of T)(ByVal address As Integer) As T
    Return ReadMemory(Of T)(New IntPtr(address), 0, False)
    End Function

    Public Function ReadMemory(Of T)(ByVal address As Long) As T
    Return ReadMemory(Of T)(New IntPtr(address), 0, False)
    End Function

    Public Function ReadMemory(Of T)(ByVal address As IntPtr) As T
    Return ReadMemory(Of T)(address, 0, False)
    End Function

    Public Function ReadMemory(ByVal address As IntPtr, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(address, length, False)
    End Function

    Public Function ReadMemory(ByVal address As Integer, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(New IntPtr(address), length, False)
    End Function

    Public Function ReadMemory(ByVal address As Long, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(New IntPtr(address), length, False)
    End Function

    Public Function ReadMemory(Of T)(ByVal address As IntPtr, ByVal length As Integer, ByVal unicodeString As Boolean) As T
    Dim buffer() As Byte
    If GetType(T) Is GetType(String) Then
    If unicodeString Then buffer = New Byte(length * 2 - 1) {} Else buffer = New Byte(length - 1) {}
    ElseIf GetType(T) Is GetType(Byte()) Then
    buffer = New Byte(length - 1) {}
    Else
    buffer = New Byte(Marshal.SizeOf(GetType(T)) - 1) {}
    End If
    If Not UpdateProcessHandle() Then Return Nothing
    Dim success As Boolean = ReadProcessMemory(ProcessHandle, address, buffer, New IntPtr(buffer.Length), IntPtr.Zero)
    If Not success Then Return Nothing
    If GetType(T) Is GetType(Byte()) Then Return CType(CType(buffer, Object), T)
    If GetType(T) Is GetType(String) Then
    If unicodeString Then Return CType(CType(Encoding.Unicode.GetString(buffer), Object), T)
    Return CType(CType(Encoding.ASCII.GetString(buffer), Object), T)
    End If
    Dim gcHandle As GCHandle = GCHandle.Alloc(buffer, GCHandleType.Pinned)
    Dim returnObject As T = CType(Marshal.PtrToStructure(gcHandle.AddrOfPinned Object, GetType(T)), T)
    gcHandle.Free()
    Return returnObject
    End Function

    Private Function GetObjectBytes(ByVal value As Object) As Byte()
    If value.GetType() Is GetType(Byte()) Then Return CType(value, Byte())
    Dim buffer(Marshal.SizeOf(value) - 1) As Byte
    Dim ptr As IntPtr = Marshal.AllocHGlobal(buffer.Length)
    Marshal.StructureToPtr(value, ptr, True)
    Marshal.Copy(ptr, buffer, 0, buffer.Length)
    Marshal.FreeHGlobal(ptr)
    Return buffer
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As T) As Boolean
    Return WriteMemory(CLng(address), value)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As Object) As Boolean
    Return WriteMemory(CLng(address), CType(value, T))
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As T) As Boolean
    Return WriteMemory(New IntPtr(address), value)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T))
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As T) As Boolean
    Return WriteMemory(New IntPtr(address), value)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T))
    End Function

    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As T) As Boolean
    Return WriteMemory(address, value, False)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T), False)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(CLng(address), value, unicode)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(New IntPtr(address), value, unicode)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(New IntPtr(address), value, unicode)
    End Function

    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As T, ByVal unicode As Boolean) As Boolean
    If Not UpdateProcessHandle() Then Return False
    Dim buffer() As Byte
    If TypeOf value Is String Then
    If unicode Then buffer = Encoding.Unicode.GetBytes(value.ToString()) Else buffer = Encoding.ASCII.GetBytes(value.ToString())
    Else
    buffer = GetObjectBytes(value)
    End If
    Dim result As Boolean = WriteProcessMemory(ProcessHandle, address, buffer, New IntPtr(buffer.Length), IntPtr.Zero)
    Return result
    End Function
    End Module

    ---------------------------------------------------------------------------------------------------------------

    And This Other :

    ----------------------------------------------------------------------------------------------------------------
    Module ReadWritingMemory
    Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer

    Private Declare Function WriteProcessMemory1 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private Declare Function WriteProcessMemory2 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Single
    Private Declare Function WriteProcessMemory3 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Long, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Long

    Private Declare Function ReadProcessMemory1 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private Declare Function ReadProcessMemory2 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Single
    Private Declare Function ReadProcessMemory3 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Long, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Long

    Const PROCESS_ALL_ACCESS = &H1F0FF

    Function GetModuleHandle(ByVal Processx As String, ByVal modulex As String) As IntPtr
    Dim prs As Process() = Process.GetProcessesByName(Processx)
    If prs.Length > 0 Then
    On Error Resume Next
    Dim pi As ProcessModuleCollection = prs(0).Modules
    For Each pmod As ProcessModule In pi
    If pmod.ModuleName = (modulex) Then
    Return pmod.BaseAddress
    Else
    End If
    Next
    End If
    End Function


    Public Function WriteDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Integer, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteInteger(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function

    Public Function ReadDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Integer
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Integer
    vBuffer = ReadInteger(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception

    End Try
    End Function

    Public Function WriteDMAFloat(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Single, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadFloat(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteFloat(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function

    Public Function ReadDMAFloat(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Single
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadFloat(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Single
    vBuffer = ReadFloat(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception

    End Try
    End Function

    Public Function WriteDMALong(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Long, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadLong(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteLong(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function

    Public Function ReadDMALong(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Long
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadLong(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Long
    vBuffer = ReadLong(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception

    End Try
    End Function

    Public Sub WriteNOPs(ByVal ProcessName As String, ByVal Address As Long, ByVal NOPNum As Integer)
    Dim C As Integer
    Dim B As Integer
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If

    B = 0
    For C = 1 To NOPNum
    Call WriteProcessMemory1(hProcess, Address + B, &H90, 1, 0&)
    B = B + 1
    Next C
    End Sub

    Public Sub WriteXBytes(ByVal ProcessName As String, ByVal Address As Long, ByVal Value As String)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If

    Dim C As Integer
    Dim B As Integer
    Dim D As Integer
    Dim V As Byte

    B = 0
    D = 1
    For C = 1 To Math****und((Len(Value) / 2))
    V = Val("&H" & Mid$(Value, D, 2))
    Call WriteProcessMemory1(hProcess, Address + B, V, 1, 0&)
    B = B + 1
    D = D + 2
    Next C

    End Sub

    Public Sub WriteInteger(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Integer, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If

    Dim hAddress, vBuffer As Integer
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory1(hProcess, hAddress, CInt(vBuffer), nsize, 0)
    End Sub

    Public Sub WriteFloat(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Single, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If

    Dim hAddress As Integer
    Dim vBuffer As Single

    hAddress = Address
    vBuffer = Value
    WriteProcessMemory2(hProcess, hAddress, vBuffer, nsize, 0)
    End Sub

    Public Sub WriteLong(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Long, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If

    Dim hAddress As Integer
    Dim vBuffer As Long

    hAddress = Address
    vBuffer = Value
    WriteProcessMemory3(hProcess, hAddress, vBuffer, nsize, 0)
    End Sub

    Public Function ReadInteger(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Integer
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If

    Dim hAddress, vBuffer As Integer
    hAddress = Address
    ReadProcessMemory1(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function

    Public Function ReadFloat(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Single
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If

    Dim hAddress As Integer
    Dim vBuffer As Single

    hAddress = Address
    ReadProcessMemory2(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function

    Public Function ReadLong(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Long
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If

    Dim hAddress As Integer
    Dim vBuffer As Long

    hAddress = Address
    ReadProcessMemory3(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function

    End Module
    ----------------------------------------------------------------------------------------------------------

  2. #2
    Zaczero's Avatar
    Join Date
    Oct 2013
    Gender
    male
    Location
    localhost
    Posts
    3,288
    Reputation
    1517
    Thanks
    14,262
    My Mood
    Angelic
    Your memory class is so long *_*
    Why - all you need is 4 functions :P
    Read , ReadBytes , Write , WriteBytes

    To read a double you have to read a 8-length byte array and then convert it to double
    simple example:
    return BitConvert.ToDouble(byteArray, 0);
    . . . malsignature.com . . .



    [ global rules ] [ scam report ] [ image title ] [ name change ] [ anime force ]
    [ league of legends marketplace rules ] [ battlefield marketplace rules ]

    "because everytime you post a picture of anime in here
    your virginity's time increases by 1 month"
    ~Smoke 2/18/2018


    Former Staff 09-29-2018
    Battlefield Minion 07-21-2018
    Premium Seller 03-04-2018
    Publicist 12-10-2017
    League of Legends Minion 05-31-2017
    Premium 02-05-2017
    Member 10-13-2013

  3. #3
    Biesi's Avatar
    Join Date
    Dec 2011
    Gender
    male
    Posts
    4,993
    Reputation
    374
    Thanks
    8,808
    My Mood
    Twisted
    Depending on the value and the endianness of your system my guess would be that the last (first) 4 bytes of the value you're reading are in fact 0.

  4. #4
    KatchupGames's Avatar
    Join Date
    Jan 2018
    Gender
    male
    Posts
    5
    Reputation
    10
    Thanks
    0
    Quote Originally Posted by Zaczero View Post
    Your memory class is so long *_*
    Why - all you need is 4 functions :P
    Read , ReadBytes , Write , WriteBytes

    To read a double you have to read a 8-length byte array and then convert it to double
    simple example:
    return BitConvert.ToDouble(byteArray, 0);
    Hello My Friend ! thanks for answer me. But I'm confused, but when i'read this adress pointer as a Byte array and convert it to double, i get a lot of numbers that not are same as the value of this addres, look these images :

    "The Real Value From Process As Double : "
    https://imgur.com/t15aUum

    "The Value i Get when i read and convert to double: "
    https://imgur.com/SIw3BEs

    Can Someone Help-me ? Or Someone Have some idea ?
    Last edited by KatchupGames; 01-07-2018 at 10:58 AM.

  5. #5
    Zaczero's Avatar
    Join Date
    Oct 2013
    Gender
    male
    Location
    localhost
    Posts
    3,288
    Reputation
    1517
    Thanks
    14,262
    My Mood
    Angelic
    Quote Originally Posted by KatchupGames View Post
    Hello My Friend ! thanks for answer me. But I'm confused, but when i'read this adress pointer as a Byte array and convert it to double, i get a lot of numbers that not are same as the value of this addres, look these images :

    "The Real Value From Process As Double : "
    https://imgur.com/t15aUum

    "The Value i Get when i read and convert to double: "
    https://imgur.com/SIw3BEs

    Can Someone Help-me ? Or Someone Have some idea ?
    do you have Skype?
    if yes you can share me your screen and I'll tell you what to do
    - mrzaczer0
    . . . malsignature.com . . .



    [ global rules ] [ scam report ] [ image title ] [ name change ] [ anime force ]
    [ league of legends marketplace rules ] [ battlefield marketplace rules ]

    "because everytime you post a picture of anime in here
    your virginity's time increases by 1 month"
    ~Smoke 2/18/2018


    Former Staff 09-29-2018
    Battlefield Minion 07-21-2018
    Premium Seller 03-04-2018
    Publicist 12-10-2017
    League of Legends Minion 05-31-2017
    Premium 02-05-2017
    Member 10-13-2013

  6. #6
    KatchupGames's Avatar
    Join Date
    Jan 2018
    Gender
    male
    Posts
    5
    Reputation
    10
    Thanks
    0
    Quote Originally Posted by Zaczero View Post
    do you have Skype?
    if yes you can share me your screen and I'll tell you what to do
    - mrzaczer0
    My skype is : ketchup.games
    add me pls

  7. #7
    Zaczero's Avatar
    Join Date
    Oct 2013
    Gender
    male
    Location
    localhost
    Posts
    3,288
    Reputation
    1517
    Thanks
    14,262
    My Mood
    Angelic
    Quote Originally Posted by KatchupGames View Post
    My skype is : ketchup.games
    add me pls
    I sent you a request yesterday
    my skype is mrzaczer0
    . . . malsignature.com . . .



    [ global rules ] [ scam report ] [ image title ] [ name change ] [ anime force ]
    [ league of legends marketplace rules ] [ battlefield marketplace rules ]

    "because everytime you post a picture of anime in here
    your virginity's time increases by 1 month"
    ~Smoke 2/18/2018


    Former Staff 09-29-2018
    Battlefield Minion 07-21-2018
    Premium Seller 03-04-2018
    Publicist 12-10-2017
    League of Legends Minion 05-31-2017
    Premium 02-05-2017
    Member 10-13-2013

  8. #8
    KatchupGames's Avatar
    Join Date
    Jan 2018
    Gender
    male
    Posts
    5
    Reputation
    10
    Thanks
    0
    Quote Originally Posted by Zaczero View Post
    I sent you a request yesterday
    my skype is mrzaczer0

    I did not get your invite, and I can not find a skype profile with the nick: mrzaczer0

    Image of skype message: https://imgur.com/nhPsVT1
    Last edited by KatchupGames; 01-08-2018 at 04:37 PM.

  9. #9
    Zaczero's Avatar
    Join Date
    Oct 2013
    Gender
    male
    Location
    localhost
    Posts
    3,288
    Reputation
    1517
    Thanks
    14,262
    My Mood
    Angelic
    Quote Originally Posted by KatchupGames View Post
    I did not get your invite, and I can not find a skype profile with the nick: mrzaczer0

    Image of skype message: https://imgur.com/nhPsVT1
    Just click Skype icon under my avatar on the left
    . . . malsignature.com . . .



    [ global rules ] [ scam report ] [ image title ] [ name change ] [ anime force ]
    [ league of legends marketplace rules ] [ battlefield marketplace rules ]

    "because everytime you post a picture of anime in here
    your virginity's time increases by 1 month"
    ~Smoke 2/18/2018


    Former Staff 09-29-2018
    Battlefield Minion 07-21-2018
    Premium Seller 03-04-2018
    Publicist 12-10-2017
    League of Legends Minion 05-31-2017
    Premium 02-05-2017
    Member 10-13-2013

  10. #10
    SeXZeFPS's Avatar
    Join Date
    Jan 2015
    Gender
    male
    Location
    In your wardrobe
    Posts
    598
    Reputation
    10
    Thanks
    637
    My Mood
    Asleep
    Code:
    Option Strict On
    
    Imports System.Runtime.InteropServices
    Imports System.Text
    
    Module MemoryModule
    <DllImport("kernel32.dll")>
    Private Function OpenProcess(ByVal dwDesiredAccess As UInteger, <MarshalAs(UnmanagedType.Bool)> ByVal bInheritHandle As Boolean, ByVal dwProcessId As Integer) As IntPtr
    End Function
    
    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function WriteProcessMemory(ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal lpBuffer As Byte(), ByVal nSize As IntPtr, <Out()> ByRef lpNumberOfBytesWritten As IntPtr) As Boolean
    End Function
    
    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function ReadProcessMemory(ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, <Out()> ByVal lpBuffer() As Byte, ByVal dwSize As IntPtr, ByRef lpNumberOfBytesRead As IntPtr) As Boolean
    End Function
    
    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function CloseHandle(ByVal hObject As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    End Function
    
    Private Const PROCESS_VM_WRITE As UInteger = &H20
    Private Const PROCESS_VM_READ As UInteger = &H10
    Private Const PROCESS_VM_OPERATION As UInteger = &H8
    Private TargetProcess As String = "iw6mp64_ship"
    Private ProcessHandle As IntPtr = IntPtr.Zero
    Private LastKnownPID As Integer = -1
    
    Private Function ProcessIDExists(ByVal pID As Integer) As Boolean
    For Each p As Process In Process.GetProcessesByName(TargetProcess)
    If p.Id = pID Then Return True
    Next
    Return False
    End Function
    
    Public Sub SetProcessName(ByVal processName As String)
    TargetProcess = processName
    If ProcessHandle <> IntPtr.Zero Then CloseHandle(ProcessHandle)
    LastKnownPID = -1
    ProcessHandle = IntPtr.Zero
    End Sub
    
    Public Function GetCurrentProcessName() As String
    Return TargetProcess
    End Function
    
    Public Function UpdateProcessHandle() As Boolean
    If LastKnownPID = -1 OrElse Not ProcessIDExists(LastKnownPID) Then
    If ProcessHandle <> IntPtr.Zero Then CloseHandle(ProcessHandle)
    Dim p() As Process = Process.GetProcessesByName(TargetProcess)
    If p.Length = 0 Then Return False
    LastKnownPID = p(0).Id
    ProcessHandle = OpenProcess(PROCESS_VM_READ Or PROCESS_VM_WRITE Or PROCESS_VM_OPERATION, False, p(0).Id)
    If ProcessHandle = IntPtr.Zero Then Return False
    End If
    Return True
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As Object) As T
    Return ReadMemory(Of T)(CLng(address))
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As Integer) As T
    Return ReadMemory(Of T)(New IntPtr(address), 0, False)
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As Long) As T
    Return ReadMemory(Of T)(New IntPtr(address), 0, False)
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As IntPtr) As T
    Return ReadMemory(Of T)(address, 0, False)
    End Function
    
    Public Function ReadMemory(ByVal address As IntPtr, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(address, length, False)
    End Function
    
    Public Function ReadMemory(ByVal address As Integer, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(New IntPtr(address), length, False)
    End Function
    
    Public Function ReadMemory(ByVal address As Long, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(New IntPtr(address), length, False)
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As IntPtr, ByVal length As Integer, ByVal unicodeString As Boolean) As T
    Dim buffer() As Byte
    If GetType(T) Is GetType(String) Then
    If unicodeString Then buffer = New Byte(length * 2 - 1) {} Else buffer = New Byte(length - 1) {}
    ElseIf GetType(T) Is GetType(Byte()) Then
    buffer = New Byte(length - 1) {}
    Else
    buffer = New Byte(Marshal.SizeOf(GetType(T)) - 1) {}
    End If
    If Not UpdateProcessHandle() Then Return Nothing
    Dim success As Boolean = ReadProcessMemory(ProcessHandle, address, buffer, New IntPtr(buffer.Length), IntPtr.Zero)
    If Not success Then Return Nothing
    If GetType(T) Is GetType(Byte()) Then Return CType(CType(buffer, Object), T)
    If GetType(T) Is GetType(String) Then
    If unicodeString Then Return CType(CType(Encoding.Unicode.GetString(buffer), Object), T)
    Return CType(CType(Encoding.ASCII.GetString(buffer), Object), T)
    End If
    Dim gcHandle As GCHandle = GCHandle.Alloc(buffer, GCHandleType.Pinned)
    Dim returnObject As T = CType(Marshal.PtrToStructure(gcHandle.AddrOfPinned Object, GetType(T)), T)
    gcHandle.Free()
    Return returnObject
    End Function
    
    Private Function GetObjectBytes(ByVal value As Object) As Byte()
    If value.GetType() Is GetType(Byte()) Then Return CType(value, Byte())
    Dim buffer(Marshal.SizeOf(value) - 1) As Byte
    Dim ptr As IntPtr = Marshal.AllocHGlobal(buffer.Length)
    Marshal.StructureToPtr(value, ptr, True)
    Marshal.Copy(ptr, buffer, 0, buffer.Length)
    Marshal.FreeHGlobal(ptr)
    Return buffer
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As T) As Boolean
    Return WriteMemory(CLng(address), value)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As Object) As Boolean
    Return WriteMemory(CLng(address), CType(value, T))
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As T) As Boolean
    Return WriteMemory(New IntPtr(address), value)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T))
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As T) As Boolean
    Return WriteMemory(New IntPtr(address), value)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T))
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As T) As Boolean
    Return WriteMemory(address, value, False)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T), False)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(CLng(address), value, unicode)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(New IntPtr(address), value, unicode)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(New IntPtr(address), value, unicode)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As T, ByVal unicode As Boolean) As Boolean
    If Not UpdateProcessHandle() Then Return False
    Dim buffer() As Byte
    If TypeOf value Is String Then
    If unicode Then buffer = Encoding.Unicode.GetBytes(value.ToString()) Else buffer = Encoding.ASCII.GetBytes(value.ToString())
    Else
    buffer = GetObjectBytes(value)
    End If
    Dim result As Boolean = WriteProcessMemory(ProcessHandle, address, buffer, New IntPtr(buffer.Length), IntPtr.Zero)
    Return result
    End Function
    End Module
    
    ---------------------------------------------------------------------------------------------------------------
    
    And This Other :
    
    ----------------------------------------------------------------------------------------------------------------
    Module ReadWritingMemory
    Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer
    
    Private Declare Function WriteProcessMemory1 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private Declare Function WriteProcessMemory2 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Single
    Private Declare Function WriteProcessMemory3 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Long, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Long
    
    Private Declare Function ReadProcessMemory1 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private Declare Function ReadProcessMemory2 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Single
    Private Declare Function ReadProcessMemory3 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Long, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Long
    
    Const PROCESS_ALL_ACCESS = &H1F0FF
    
    Function GetModuleHandle(ByVal Processx As String, ByVal modulex As String) As IntPtr
    Dim prs As Process() = Process.GetProcessesByName(Processx)
    If prs.Length > 0 Then
    On Error Resume Next
    Dim pi As ProcessModuleCollection = prs(0).Modules
    For Each pmod As ProcessModule In pi
    If pmod.ModuleName = (modulex) Then
    Return pmod.BaseAddress
    Else
    End If
    Next
    End If
    End Function
    
    
    Public Function WriteDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Integer, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteInteger(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function
    
    Public Function ReadDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Integer
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Integer
    vBuffer = ReadInteger(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception
    
    End Try
    End Function
    
    Public Function WriteDMAFloat(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Single, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadFloat(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteFloat(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function
    
    Public Function ReadDMAFloat(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Single
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadFloat(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Single
    vBuffer = ReadFloat(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception
    
    End Try
    End Function
    
    Public Function WriteDMALong(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Long, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadLong(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteLong(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function
    
    Public Function ReadDMALong(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Long
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadLong(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Long
    vBuffer = ReadLong(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception
    
    End Try
    End Function
    
    Public Sub WriteNOPs(ByVal ProcessName As String, ByVal Address As Long, ByVal NOPNum As Integer)
    Dim C As Integer
    Dim B As Integer
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    B = 0
    For C = 1 To NOPNum
    Call WriteProcessMemory1(hProcess, Address + B, &H90, 1, 0&)
    B = B + 1
    Next C
    End Sub
    
    Public Sub WriteXBytes(ByVal ProcessName As String, ByVal Address As Long, ByVal Value As String)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim C As Integer
    Dim B As Integer
    Dim D As Integer
    Dim V As Byte
    
    B = 0
    D = 1
    For C = 1 To Math****und((Len(Value) / 2))
    V = Val("&H" & Mid$(Value, D, 2))
    Call WriteProcessMemory1(hProcess, Address + B, V, 1, 0&)
    B = B + 1
    D = D + 2
    Next C
    
    End Sub
    
    Public Sub WriteInteger(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Integer, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim hAddress, vBuffer As Integer
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory1(hProcess, hAddress, CInt(vBuffer), nsize, 0)
    End Sub
    
    Public Sub WriteFloat(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Single, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Single
    
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory2(hProcess, hAddress, vBuffer, nsize, 0)
    End Sub
    
    Public Sub WriteLong(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Long, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Long
    
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory3(hProcess, hAddress, vBuffer, nsize, 0)
    End Sub
    
    Public Function ReadInteger(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Integer
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If
    
    Dim hAddress, vBuffer As Integer
    hAddress = Address
    ReadProcessMemory1(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function
    
    Public Function ReadFloat(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Single
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Single
    
    hAddress = Address
    ReadProcessMemory2(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function
    
    Public Function ReadLong(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Long
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Long
    
    hAddress = Address
    ReadProcessMemory3(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function
    
    End Module

  11. #11
    Zaczero's Avatar
    Join Date
    Oct 2013
    Gender
    male
    Location
    localhost
    Posts
    3,288
    Reputation
    1517
    Thanks
    14,262
    My Mood
    Angelic
    Quote Originally Posted by SeXZeFPS View Post
    Code:
    Option Strict On
    
    Imports System.Runtime.InteropServices
    Imports System.Text
    
    Module MemoryModule
    <DllImport("kernel32.dll")>
    Private Function OpenProcess(ByVal dwDesiredAccess As UInteger, <MarshalAs(UnmanagedType.Bool)> ByVal bInheritHandle As Boolean, ByVal dwProcessId As Integer) As IntPtr
    End Function
    
    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function WriteProcessMemory(ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal lpBuffer As Byte(), ByVal nSize As IntPtr, <Out()> ByRef lpNumberOfBytesWritten As IntPtr) As Boolean
    End Function
    
    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function ReadProcessMemory(ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, <Out()> ByVal lpBuffer() As Byte, ByVal dwSize As IntPtr, ByRef lpNumberOfBytesRead As IntPtr) As Boolean
    End Function
    
    <DllImport("kernel32.dll", SetLastError:=True)>
    Private Function CloseHandle(ByVal hObject As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
    End Function
    
    Private Const PROCESS_VM_WRITE As UInteger = &H20
    Private Const PROCESS_VM_READ As UInteger = &H10
    Private Const PROCESS_VM_OPERATION As UInteger = &H8
    Private TargetProcess As String = "iw6mp64_ship"
    Private ProcessHandle As IntPtr = IntPtr.Zero
    Private LastKnownPID As Integer = -1
    
    Private Function ProcessIDExists(ByVal pID As Integer) As Boolean
    For Each p As Process In Process.GetProcessesByName(TargetProcess)
    If p.Id = pID Then Return True
    Next
    Return False
    End Function
    
    Public Sub SetProcessName(ByVal processName As String)
    TargetProcess = processName
    If ProcessHandle <> IntPtr.Zero Then CloseHandle(ProcessHandle)
    LastKnownPID = -1
    ProcessHandle = IntPtr.Zero
    End Sub
    
    Public Function GetCurrentProcessName() As String
    Return TargetProcess
    End Function
    
    Public Function UpdateProcessHandle() As Boolean
    If LastKnownPID = -1 OrElse Not ProcessIDExists(LastKnownPID) Then
    If ProcessHandle <> IntPtr.Zero Then CloseHandle(ProcessHandle)
    Dim p() As Process = Process.GetProcessesByName(TargetProcess)
    If p.Length = 0 Then Return False
    LastKnownPID = p(0).Id
    ProcessHandle = OpenProcess(PROCESS_VM_READ Or PROCESS_VM_WRITE Or PROCESS_VM_OPERATION, False, p(0).Id)
    If ProcessHandle = IntPtr.Zero Then Return False
    End If
    Return True
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As Object) As T
    Return ReadMemory(Of T)(CLng(address))
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As Integer) As T
    Return ReadMemory(Of T)(New IntPtr(address), 0, False)
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As Long) As T
    Return ReadMemory(Of T)(New IntPtr(address), 0, False)
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As IntPtr) As T
    Return ReadMemory(Of T)(address, 0, False)
    End Function
    
    Public Function ReadMemory(ByVal address As IntPtr, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(address, length, False)
    End Function
    
    Public Function ReadMemory(ByVal address As Integer, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(New IntPtr(address), length, False)
    End Function
    
    Public Function ReadMemory(ByVal address As Long, ByVal length As Integer) As Byte()
    Return ReadMemory(Of Byte())(New IntPtr(address), length, False)
    End Function
    
    Public Function ReadMemory(Of T)(ByVal address As IntPtr, ByVal length As Integer, ByVal unicodeString As Boolean) As T
    Dim buffer() As Byte
    If GetType(T) Is GetType(String) Then
    If unicodeString Then buffer = New Byte(length * 2 - 1) {} Else buffer = New Byte(length - 1) {}
    ElseIf GetType(T) Is GetType(Byte()) Then
    buffer = New Byte(length - 1) {}
    Else
    buffer = New Byte(Marshal.SizeOf(GetType(T)) - 1) {}
    End If
    If Not UpdateProcessHandle() Then Return Nothing
    Dim success As Boolean = ReadProcessMemory(ProcessHandle, address, buffer, New IntPtr(buffer.Length), IntPtr.Zero)
    If Not success Then Return Nothing
    If GetType(T) Is GetType(Byte()) Then Return CType(CType(buffer, Object), T)
    If GetType(T) Is GetType(String) Then
    If unicodeString Then Return CType(CType(Encoding.Unicode.GetString(buffer), Object), T)
    Return CType(CType(Encoding.ASCII.GetString(buffer), Object), T)
    End If
    Dim gcHandle As GCHandle = GCHandle.Alloc(buffer, GCHandleType.Pinned)
    Dim returnObject As T = CType(Marshal.PtrToStructure(gcHandle.AddrOfPinned Object, GetType(T)), T)
    gcHandle.Free()
    Return returnObject
    End Function
    
    Private Function GetObjectBytes(ByVal value As Object) As Byte()
    If value.GetType() Is GetType(Byte()) Then Return CType(value, Byte())
    Dim buffer(Marshal.SizeOf(value) - 1) As Byte
    Dim ptr As IntPtr = Marshal.AllocHGlobal(buffer.Length)
    Marshal.StructureToPtr(value, ptr, True)
    Marshal.Copy(ptr, buffer, 0, buffer.Length)
    Marshal.FreeHGlobal(ptr)
    Return buffer
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As T) As Boolean
    Return WriteMemory(CLng(address), value)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As Object) As Boolean
    Return WriteMemory(CLng(address), CType(value, T))
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As T) As Boolean
    Return WriteMemory(New IntPtr(address), value)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T))
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As T) As Boolean
    Return WriteMemory(New IntPtr(address), value)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T))
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As T) As Boolean
    Return WriteMemory(address, value, False)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As Object) As Boolean
    Return WriteMemory(address, CType(value, T), False)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Object, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(CLng(address), value, unicode)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Integer, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(New IntPtr(address), value, unicode)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As Long, ByVal value As T, ByVal unicode As Boolean) As Boolean
    Return WriteMemory(New IntPtr(address), value, unicode)
    End Function
    
    Public Function WriteMemory(Of T)(ByVal address As IntPtr, ByVal value As T, ByVal unicode As Boolean) As Boolean
    If Not UpdateProcessHandle() Then Return False
    Dim buffer() As Byte
    If TypeOf value Is String Then
    If unicode Then buffer = Encoding.Unicode.GetBytes(value.ToString()) Else buffer = Encoding.ASCII.GetBytes(value.ToString())
    Else
    buffer = GetObjectBytes(value)
    End If
    Dim result As Boolean = WriteProcessMemory(ProcessHandle, address, buffer, New IntPtr(buffer.Length), IntPtr.Zero)
    Return result
    End Function
    End Module
    
    ---------------------------------------------------------------------------------------------------------------
    
    And This Other :
    
    ----------------------------------------------------------------------------------------------------------------
    Module ReadWritingMemory
    Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer
    
    Private Declare Function WriteProcessMemory1 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private Declare Function WriteProcessMemory2 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Single
    Private Declare Function WriteProcessMemory3 Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Long, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Long
    
    Private Declare Function ReadProcessMemory1 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private Declare Function ReadProcessMemory2 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Single
    Private Declare Function ReadProcessMemory3 Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Long, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Long
    
    Const PROCESS_ALL_ACCESS = &H1F0FF
    
    Function GetModuleHandle(ByVal Processx As String, ByVal modulex As String) As IntPtr
    Dim prs As Process() = Process.GetProcessesByName(Processx)
    If prs.Length > 0 Then
    On Error Resume Next
    Dim pi As ProcessModuleCollection = prs(0).Modules
    For Each pmod As ProcessModule In pi
    If pmod.ModuleName = (modulex) Then
    Return pmod.BaseAddress
    Else
    End If
    Next
    End If
    End Function
    
    
    Public Function WriteDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Integer, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteInteger(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function
    
    Public Function ReadDMAInteger(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Integer
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadInteger(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Integer
    vBuffer = ReadInteger(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception
    
    End Try
    End Function
    
    Public Function WriteDMAFloat(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Single, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadFloat(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteFloat(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function
    
    Public Function ReadDMAFloat(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Single
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadFloat(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Single
    vBuffer = ReadFloat(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception
    
    End Try
    End Function
    
    Public Function WriteDMALong(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Value As Long, ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Boolean
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadLong(Process, lvl, nsize) + Offsets(i - 1)
    Next
    WriteLong(Process, lvl, Value, nsize)
    Return True
    Catch ex As Exception
    Return False
    End Try
    End Function
    
    Public Function ReadDMALong(ByVal Process As String, ByVal Address As Integer, ByVal Offsets As Integer(), ByVal Level As Integer, Optional ByVal nsize As Integer = 4) As Long
    Try
    Dim lvl As Integer = Address
    For i As Integer = 1 To Level
    lvl = ReadLong(Process, lvl, nsize) + Offsets(i - 1)
    Next
    Dim vBuffer As Long
    vBuffer = ReadLong(Process, lvl, nsize)
    Return vBuffer
    Catch ex As Exception
    
    End Try
    End Function
    
    Public Sub WriteNOPs(ByVal ProcessName As String, ByVal Address As Long, ByVal NOPNum As Integer)
    Dim C As Integer
    Dim B As Integer
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    B = 0
    For C = 1 To NOPNum
    Call WriteProcessMemory1(hProcess, Address + B, &H90, 1, 0&)
    B = B + 1
    Next C
    End Sub
    
    Public Sub WriteXBytes(ByVal ProcessName As String, ByVal Address As Long, ByVal Value As String)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim C As Integer
    Dim B As Integer
    Dim D As Integer
    Dim V As Byte
    
    B = 0
    D = 1
    For C = 1 To Math****und((Len(Value) / 2))
    V = Val("&H" & Mid$(Value, D, 2))
    Call WriteProcessMemory1(hProcess, Address + B, V, 1, 0&)
    B = B + 1
    D = D + 2
    Next C
    
    End Sub
    
    Public Sub WriteInteger(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Integer, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim hAddress, vBuffer As Integer
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory1(hProcess, hAddress, CInt(vBuffer), nsize, 0)
    End Sub
    
    Public Sub WriteFloat(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Single, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Single
    
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory2(hProcess, hAddress, vBuffer, nsize, 0)
    End Sub
    
    Public Sub WriteLong(ByVal ProcessName As String, ByVal Address As Integer, ByVal Value As Long, Optional ByVal nsize As Integer = 4)
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Sub
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Sub
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Long
    
    hAddress = Address
    vBuffer = Value
    WriteProcessMemory3(hProcess, hAddress, vBuffer, nsize, 0)
    End Sub
    
    Public Function ReadInteger(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Integer
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If
    
    Dim hAddress, vBuffer As Integer
    hAddress = Address
    ReadProcessMemory1(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function
    
    Public Function ReadFloat(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Single
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Single
    
    hAddress = Address
    ReadProcessMemory2(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function
    
    Public Function ReadLong(ByVal ProcessName As String, ByVal Address As Integer, Optional ByVal nsize As Integer = 4) As Long
    If ProcessName.EndsWith(".exe") Then
    ProcessName = ProcessName.Replace(".exe", "")
    End If
    Dim MyP As Process() = Process.GetProcessesByName(ProcessName)
    If MyP.Length = 0 Then
    MessageBox.Show(ProcessName & " isn't open!")
    Exit Function
    End If
    Dim hProcess As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, MyP(0).Id)
    If hProcess = IntPtr.Zero Then
    MessageBox.Show("Failed to open " & ProcessName & "!")
    Exit Function
    End If
    
    Dim hAddress As Integer
    Dim vBuffer As Long
    
    hAddress = Address
    ReadProcessMemory3(hProcess, hAddress, vBuffer, nsize, 0)
    Return vBuffer
    End Function
    
    End Module
    I talked with him on Skype and the code is not problem but how to read the offsets properly.
    He just got the wrong address.
    . . . malsignature.com . . .



    [ global rules ] [ scam report ] [ image title ] [ name change ] [ anime force ]
    [ league of legends marketplace rules ] [ battlefield marketplace rules ]

    "because everytime you post a picture of anime in here
    your virginity's time increases by 1 month"
    ~Smoke 2/18/2018


    Former Staff 09-29-2018
    Battlefield Minion 07-21-2018
    Premium Seller 03-04-2018
    Publicist 12-10-2017
    League of Legends Minion 05-31-2017
    Premium 02-05-2017
    Member 10-13-2013

  12. #12
    SeXZeFPS's Avatar
    Join Date
    Jan 2015
    Gender
    male
    Location
    In your wardrobe
    Posts
    598
    Reputation
    10
    Thanks
    637
    My Mood
    Asleep
    Quote Originally Posted by Zaczero View Post
    I talked with him on Skype and the code is not problem but how to read the offsets properly.
    He just got the wrong address.
    Wanted to help everyone reformat the code since he didnt use code tags.

  13. #13
    Rafahkx's Avatar
    Join Date
    Oct 2012
    Gender
    male
    Posts
    4
    Reputation
    10
    Thanks
    1
    Zaczero, I still have the same problem he was having, if you can help me my skype is: rafahkx

    I'm trying to manipulate pointers with "Double" values in VB.NET, I got the addresses in Cheat Engine, I have it all, the base address and the offsets but I can't use it as "Double" because it returns wrong values, if I use "Float" it is okay but sometimes it is possible only via "Double". I'm using the same modules he was.

Similar Threads

  1. How can i understand what this value mean, maybe necrypted but not XOR
    By BAILANDO in forum Suggestions, Requests & General Help
    Replies: 1
    Last Post: 09-21-2016, 09:35 AM
  2. [Help] How can I read the active weapon ID?
    By canown in forum Counter-Strike 2 Coding & Resources
    Replies: 4
    Last Post: 08-03-2015, 05:02 AM
  3. [Help Request] How can I find the default values?
    By JamesRo in forum Crossfire Coding Help & Discussion
    Replies: 6
    Last Post: 07-05-2013, 01:06 AM
  4. [Help] how can i write & read multi-pointer and offset ??? [VB.net]
    By zokz in forum Visual Basic Programming
    Replies: 1
    Last Post: 06-23-2012, 04:41 AM
  5. [Request] How can I handle crossfire ? [VB.NET]
    By Aly El-Haddad in forum CrossFire Hack Coding / Programming / Source Code
    Replies: 13
    Last Post: 03-22-2012, 05:48 AM