AutoIt Obfuscator version history with changes and bugfixes to the obfuscation engine, Windows client versions and WebAPI interface.
Local $var = 123 variable declarations are split into the declaration itself Local $var and the assignment of values $var = 123, and the declaration itself is moved to the beginning of the function in which it is located to avoid compilation errorsGlobal Const $CBS_DROPDOWNLIST = 3Local or Global scopes e.g. Enum $eIncr0, $eIncr2, $eIncr4Local or Global scopes, and a custom Step counter e.g. Enum Step * 4 $eIncr0, $eIncr2, $eIncr4$COLOR_WHITE or $COLOR_white won't be renamed anymore (thx MMOMinion)For $i = 1 To 100 Step function($param) handling (thx Brockc)For $item In $collection handling (thx Brockc)#cs & #ce followed by a new line (thx Mike A.)$array[] = [1, 2, 3]$nResult = DllCall('shlwapi.dll', 'int', 'StrCmpLogicalW', 'wstr', $sVal1, 'wstr', $sVal2)[0]$array = [1, 2, 3]For $i = 5 To 1 Step $variable$var = .123For $i = 5 To 1 Step -1Local Enum Step *2 $eFoo1, $eFoo2Opt("MustDeclareVars", 1)$ocrypt.CryptAlgorithm = "aes"Global $vx = Asc(StringMid("Random(18, 150 + SRandom(), 162)", 3, 1)) to prevent automatic deobfuscation with simplistic search & replace methods like these#cs & #ce (thx Kao)$objWMIService.ExecQuery(...) as well as the support for object properties e.g. MsgBox($objItem.FreeSpace)FileInstall() function. Its first parameter has to be a string literal, and now it's preserved in the obufscated code.Null keyword#Region and #EndRegion pragmas$CmdLine and $CmdLineRaw are not renamed anymore
/ActivationCode and it was wrongly described as /ActivationKey)
If you would like to ask me about AutoIt Obfuscator, or something's not clear, mail me. I'll be happy to answer all of your questions.