Jump to content
  • 0

Search


ASHOUR

Question

Hello,

I need the help of experts how to get the values for the below pattern in memory:

 

Value1

Value2

XX

 

I know the following:

1. I know the value of XX

2. I know that Value1 XOR Value2 = XX

3. I know that all values are DWORD

4. All values comes in order and after each others.

 

How can I get value1 or/and value2?????

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

Finding such groups of values can be done by firstly searching for known value (XX). For each found value it is then needed to check the condition of whether Value1 xor Value2 is equal to the found value. If the condition is met, group of values can be added to results list or saved list. Below is an example of implementing this approach with lua script: 

local knownValue = "123"

gg.clearResults()
gg.searchNumber(knownValue, gg.TYPE_DWORD)
local results = gg.getResults(gg.getResultsCount())

local checkedValues = {}
for i, v in ipairs(results) do
  checkedValues[i * 2 - 1] = {address = v.address - 8, flags = v.flags}
  checkedValues[i * 2] = {address = v.address - 4, flags = v.flags}
end
-- Retrieving all values to check at once to avoid calling "getValues" in loop
checkedValues = gg.getValues(checkedValues)

local foundGroups = {}
for i, v in ipairs(results) do
  local value1 = checkedValues[i * 2 - 1]
  local value2 = checkedValues[i * 2]
  local xorResult = value1.value ~ value2.value
  if xorResult == v.value then
    table.insert(foundGroups, value1)
    table.insert(foundGroups, value2)
    table.insert(foundGroups, v)
  end
end
gg.loadResults(foundGroups)
Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.