Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Array of Bytes Wildcard Generator

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
0vad0z3
How do I cheat?
Reputation: 0

Joined: 06 Aug 2014
Posts: 5

PostPosted: Wed Aug 06, 2014 4:40 am    Post subject: Array of Bytes Wildcard Generator Reply with quote

Is there any programs out there that can compare a couple of AOBs and add a finished AOB w/ wildcards (?/*) to the digits that aren't the same?

For example:
AOB#1: 2F 19 80 3F C7 B2 19 CC 57 28 B9 BE 01 00 00 00 01 00 01 00 00 00 80 3F 00 00 40 3F 57 28 C9 C0 04 00 00 00 CD CC CC 3E 00 00 80 3F 00 00 20 41 00 00 00 00 02 02 00 00 68 F1 30 02 00 00 00 00 4C 00 65 00 76 00 65 00 6C 00 00 00

AOB#2: 1F 19 80 3F C7 B2 19 CC 27 28 B9 BE 01 00 00 00 01 00 01 00 00 00 80 3F 00 00 40 3F 57 28 C9 C0 04 00 00 00 CD CC CC 3E 00 00 80 3F 00 00 20 41 00 00 00 00 02 02 07 A5 68 F1 30 02 00 00 00 00 4C 00 65 00 76 00 65 00 6C 00 00 12

Wildcarded: ?F 19 80 3F C7 B2 19 CC 57 28 B9 BE 01 00 00 00 01 00 01 00 00 00 80 3F 00 00 40 3F 57 28 C9 C0 04 00 00 00 CD CC CC 3E 00 00 80 3F 00 00 20 41 00 00 00 00 02 02 ?? ?? 68 F1 30 02 00 00 00 00 4C 00 65 00 76 00 65 00 6C 00 00 ??

(P.S. I know the wildcarded version has mistakes, I'm tired)
Back to top
View user's profile Send private message
aikoncwd
Grandmaster Cheater
Reputation: 23

Joined: 21 Dec 2012
Posts: 591
Location: Spain (Barcelona)

PostPosted: Wed Aug 06, 2014 6:58 am    Post subject: Reply with quote

Yes, here is my own tool:

[TOOL] AoB Pattern Generator (coded in VBS, OpenSource)
http://forum.cheatengine.org/viewtopic.php?t=572933

Its coded under VBS, full open source.



Bye

_________________
Hey Hitler
Test here your skill with CheatEngine, I coded a challenge for you. Try to beat it!
HERE
Back to top
View user's profile Send private message
daspamer
Grandmaster Cheater Supreme
Reputation: 54

Joined: 13 Sep 2011
Posts: 1588

PostPosted: Wed Aug 06, 2014 8:10 am    Post subject: Reply with quote

Code:
local AoB = {}
function insertAob(aob)
   table.insert(AoB, aob);
end

function parseAobTable(table)
   if (not table) then
      table = AoB
   end
   local result = {};
   local count = #table
   for k,v in pairs (table) do
      local str = string.gsub(v, "%s", "")
      local index = 0;
      for i=1,#str, 2 do
         index = index + 1
         if (result[index]) then
            if (result[index].byte == string.sub(str,i,i+1):lower()) then
               result[index].count = result[index].count + 1;
            end
         else
            result[index] = { byte = string.sub(str,i,i+1):lower(), count = ((result[index] and result[index].count) or 0) + 1};
         end
      end
   end
   local output
   for k,v in pairs(result) do
      local str = v.byte
      if (v.count ~= count) then
         str = '??'
      end
      output = (output or '') .. str .. ' '
   end
   print(output);
end
insertAob("2F 19 80 3F C7 B2 19 CC 57 28 B9 BE 01 00 00 00 01 00 01 00 00 00 80 3F 00 00 40 3F 57 28 C9 C0 04 00 00 00 CD CC CC 3E 00 00 80 3F 00 00 20 41 00 00 00 00 02 02 00 00 68 F1 30 02 00 00 00 00 4C 00 65 00 76 00 65 00 6C 00 00 00")
insertAob("1F 19 80 3F C7 B2 19 CC 27 28 B9 BE 01 00 00 00 01 00 01 00 00 00 80 3F 00 00 40 3F 57 28 C9 C0 04 00 00 00 CD CC CC 3E 00 00 80 3F 00 00 20 41 00 00 00 00 02 02 07 A5 68 F1 30 02 00 00 00 00 4C 00 65 00 76 00 65 00 6C 00 00 12")
insertAob("?F 19 80 3F C7 B2 19 CC 57 28 B9 BE 01 00 00 00 01 00 01 00 00 00 80 3F 00 00 40 3F 57 28 C9 C0 04 00 00 00 CD CC CC 3E 00 00 80 3F 00 00 20 41 00 00 00 00 02 02 ?? ?? 68 F1 30 02 00 00 00 00 4C 00 65 00 76 00 65 00 6C 00 00 ??")
parseAobTable();

Simple code
execute in lua..

Edit,
Side note:
?F still counts as ?? (AikonCWD your tool shouldn't care if theres only 1 byte mismatching).
This script supports no space aobs (assuming the given bytes is fine.. like 0 1 2 3, will mess this up.. to 01 23, can be fixed by checking for earn word and word if length is 2.. but cba).

_________________
I'm rusty and getting older, help me re-learn lua.
Back to top
View user's profile Send private message Visit poster's website
aikoncwd
Grandmaster Cheater
Reputation: 23

Joined: 21 Dec 2012
Posts: 591
Location: Spain (Barcelona)

PostPosted: Wed Aug 06, 2014 8:20 am    Post subject: Reply with quote

I don't understand what you are saying me Razz

If you look the screen, the tool can discrimitane 1 byte only.

_________________
Hey Hitler
Test here your skill with CheatEngine, I coded a challenge for you. Try to beat it!
HERE
Back to top
View user's profile Send private message
0vad0z3
How do I cheat?
Reputation: 0

Joined: 06 Aug 2014
Posts: 5

PostPosted: Wed Aug 06, 2014 9:11 am    Post subject: Reply with quote

How exactly do I use the AoB Pattern Generator? I know I am a noob, I just don't understand coding language.
Back to top
View user's profile Send private message
daspamer
Grandmaster Cheater Supreme
Reputation: 54

Joined: 13 Sep 2011
Posts: 1588

PostPosted: Wed Aug 06, 2014 9:16 am    Post subject: Reply with quote

0vad0z3 wrote:
How exactly do I use the AoB Pattern Generator? I know I am a noob, I just don't understand coding language.

If you're talking about my script, then open cheat engine, then go into the lua window (main menu Table-> show Cheat Table Lua Script).
And then execute that..
You can edit the aobs to the aobs you want (you made more lines as long as you call the insertAob with the aob you want.

pay attention that this script does not do any 1byte checking.. as cheat engine treats ?F as ?? (it don't care).

_________________
I'm rusty and getting older, help me re-learn lua.
Back to top
View user's profile Send private message Visit poster's website
0vad0z3
How do I cheat?
Reputation: 0

Joined: 06 Aug 2014
Posts: 5

PostPosted: Wed Aug 06, 2014 9:33 am    Post subject: Reply with quote

DaSpamer, I meant the other guy. Yours work fine, it gets the job done. Thanks btw. I just wanted to see how his works.
Back to top
View user's profile Send private message
aikoncwd
Grandmaster Cheater
Reputation: 23

Joined: 21 Dec 2012
Posts: 591
Location: Spain (Barcelona)

PostPosted: Thu Aug 07, 2014 3:38 am    Post subject: Reply with quote

0vad0z3 wrote:
How exactly do I use the AoB Pattern Generator? I know I am a noob, I just don't understand coding language.


Its easy:

Open your notepad.exe (or any text editor)
Copy and paste this code to notepad.exe

Code:
'Created by AikonCWD

Set oWSH = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

T = InputBox("Enter array of bytes nš 1:")
T = T & vbcrlf & InputBox("Enter array of bytes nš 2:")

X = 3
While MsgBox("Do you want to introduce another array of bytes?", vbYesNo, "AoB Pattern Generator") = vbYes
   T = T & vbcrlf & InputBox("Enter array of bytes nš " & X &":")
   X = X + 1
Wend

AoB = Split(T, vbcrlf)

F = ""
W = 0
X = 0
For i = 1 To Len(AoB(0))
   For u = 1 To UBound(AoB)
      If Mid(AoB(u), i, 1) <> Mid(AoB(0), i, 1) Then
         F = F & "?"
         W = W + 1
         X = 1
         Exit For
      End If
   Next
   If X <> 1 Then F = F & Mid(AoB(0), i, 1)
   X = 0
Next

Set File = oFSO.CreateTextFile("aob.txt")
   File.Write "Original array of bytes:" & vbcrlf & vbcrlf
   File.Write Replace(T, vbcrlf & vbcrlf, vbcrlf) & vbcrlf & vbcrlf
   File.Write "Total array of bytes: " & UBound(AoB) + 1 & vbcrlf
   File.Write "Total wildcards used: " & W & vbcrlf & vbcrlf
   File.Write "Your AoB Pattern:" & vbcrlf & vbcrlf & F
File.Close

'MsgBox F

If MsgBox("AoB Patter Generator finished" & vbcrlf & vbcrlf & "Do you want to open aob.txt file?", vbYesNo, "AoB Pattern Generator") = vbYes Then
   oWSH.Run "notepad.exe aob.txt"
End If


Save the text file, but you need to write the extension, look:



Has you can see, you need to put ".vbs" at the end of the filename, also select "All Files (*.*)" at file-type. You will see this icon:



Open the icon, the script will ask you for the 1st AoB pattern, then the 2nd pattern, at this point the script will ask you if you want to add more patterns (3, 4, 5, infinite). At the end of your input, the script will generate an aob.txt file with the wildcard.

Tell me if this works Smile

_________________
Hey Hitler
Test here your skill with CheatEngine, I coded a challenge for you. Try to beat it!
HERE
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites