22
33just a try to add more feature's to x64dbg script system
44
5+ ![ New GUI 4.0] ( https://user-images.githubusercontent.com/7176580/59259568-1c7e8400-8c4b-11e9-8c3e-3bbf2b626479.gif )
6+
57![ ScriptWindow 3 1] ( https://user-images.githubusercontent.com/7176580/57080514-b9243c80-6d03-11e9-99bf-3615c81cf88b.png )
68
79![ ScriptWindow 3 0] ( https://user-images.githubusercontent.com/7176580/54919824-30073200-4f1b-11e9-9221-7e94496583d7.png )
@@ -17,6 +19,26 @@ just a try to add more feature's to x64dbg script system
1719////////////////////////////////////////////////////////////////////////////
1820## History Section:
1921```
22+ - version 4.0:
23+ 1- add RegexSearch form.
24+ 2- New GUI after replace DataGridView with RichTextBox to easy deal and fast coding.
25+ 3- edit CustomBuildStep to Auto copy files (AdvSconfig.txt , HelpAdvancedScript.txt).
26+ 4- add AutocompleteMenu.dll .
27+ 5- add copy AutocompleteMenu.dll to x64dbg root .
28+ 6- add AdvSconfig.txt for AutoComplete list for define Commands and variables.
29+ 7- update AutocompleteMenu.dll.
30+ 8- add comments_ to Variables class to add it next to the description of the variables when call them by Ctrl+j
31+ 9- call list var's by Ctrl+j
32+ 10- add ReFill_FunctionsAutoComplete_AtLoad.
33+ 11- highlight_system done for good look and analyze.
34+ 12- add autoCompleteFlexibleList to handle commands defined in AdvSconfig.txt.
35+ 13- add open Script from out side.
36+ 14- refresh by menu and F5 to refresh highlight_system.
37+ 15- add var of x64dbg system.
38+
39+ note : by AdvSconfig.txt u can define the commands in AdvancedSecript .
40+
41+
2042- version 3.1 :
2143 1- fix CheckHexIsValid ( fix length ).
2244 2- add menu to (copy - follow - delete) variables .
@@ -397,7 +419,7 @@ WriteStr duint address, String^ text, bool replace
397419(if) this Function as any if, its good for short the work of cmp jne .
398420(goto) it is as any goto it will jmp to line, it use the same Line number formulas of (if) command
399421
400- if condtion ( > < = != ?) , type (int, str/strb,stre,strc ) , line number if true , line number if false
422+ if condtion ( > < = != ?) , type (int, str/strb,stre,strc ) , line Lable if true , line Lable if false
401423
402424 - note : if you set line number to 0 that mean step to next line.
403425 - note : in new version we can use ads lib like some commands which return true or false
@@ -410,7 +432,7 @@ WriteStr duint address, String^ text, bool replace
410432 strc : if string contain
411433
412434 sample :
413- if mainStr?"string_ ",strb,5d,7d /// check if mainStr begin with (string_ )
435+ if mainStr?"string_ ",strb,Lable1,Lable2 /// check if mainStr begin with (string_ )
414436
415437 - in parameter 2 : we define the type of variable we need to compare. we can compare int with int or string to string
416438 int
@@ -421,14 +443,14 @@ WriteStr duint address, String^ text, bool replace
421443
422444 - Line number : there are 3 way to set it
423445
424- 1- number + d : it mean the number is int not hex value Like 10d = line number 10
425- 2- number : it mean the number hex value Like 10 = line number 16
446+ XXX 1-not supported any more >> number + d : it mean the number is int not hex value Like 10d = line number 10
447+ XXX 2-not supported any more >> number : it mean the number hex value Like 10 = line number 16
426448 3- string lable : it mean there are lable in the script it will jmp to
427449 4- set one of them to 0 mean jmp to next line
428450 sample :
429451 1 varx int,x,0
430452 2 varx int,y,10
431- 3 if $x>$y,int,0,5d /// if x>y then it will go to line 4 otherwise go to line 5
453+ 3 if $x>$y,int,0,Lable1 /// if x>y then it will go to line 4 otherwise go to line 5
432454 4 ........
433455 5 ........
434456
@@ -438,7 +460,7 @@ note : we can mix this tow commands and we get a loop good for IAT read write fi
438460```
439461 -0 varx int,x,10
440462 1 varx int,y,5
441- 2 if $x=$y,int,GotHere,4d compare between 2 int if they equal it will jmp to
463+ 2 if $x=$y,int,GotHere,Lable1 compare between 2 int if they equal it will jmp to
442464 lable (GotHere) else jmp to line number 4
443465 3 getx $x
444466 4 goto GotHere go to line 8 ( lable GotHere)
@@ -450,22 +472,22 @@ note : we can mix this tow commands and we get a loop good for IAT read write fi
450472 .
451473 .
452474 .
453- 20 goto 10 go to line 16
454- 21 goto 10d go to line 10
475+ 20 not supported any more >> goto 10 go to line 16
476+ 21 not supported any more >> goto 10d go to line 10
455477
456478 -Loop:
457479 varx int,x,0
458- if $x<10,int,2d ,Finish
459- setx $x,$x+1
480+ if $x<10,int,0 ,Finish
481+ setx $x,$x+1
460482 getx $x
461- goto 1d
483+ goto Lable1
462484 Finish:
463485
464486 -varx str,Rstr
465487 again:
466488 run
467489 ReadStr $Rstr,{rdx}
468- if $Rstr?"ImmIMPGetIMEA",strc,5d,2d
490+ if $Rstr?"ImmIMPGetIMEA",strc,Lable1,Lable2
469491 ret
470492
471493```
0 commit comments