Jump to content

Obfuscator (discontinued)


Jos
 Share

Recommended Posts

I have a little problem. I use the MemoryDllGen that came with Ward's MemoryDll UDF, and it defaults to a linelength of something like 2050 characters. Obfuscator spits out an error, which is fine, but I can't seem to work around it like I thought I could. First, I'm only using /striponly, so I don't see why Obfuscator cares about the linelength. Second, I tried adding the function containing the code to Obfuscator's list of skipped functions, but no luck either, still get the error. Shortening the line is OK, but I've run into some very large arrays with the same linelength problem. Shouldn't either one of the previous scenarios get rid of that error (/striponly or skip function)?

Edited by wraithdu
Link to comment
Share on other sites

  • Moderators

I have a little problem. I use the MemoryDllGen that came with Ward's MemoryDll UDF, and it defaults to a linelength of something like 2050 characters. Obfuscator spits out an error, which is fine, but I can't seem to work around it like I thought I could. First, I'm only using /striponly, so I don't see why Obfuscator cares about the linelength.

Jos's Obfuscator uses BCX ... which default string length is 2048 bytes (if I remember correctly, And it has a cow when you try to make it dynamic). Edited by SmOke_N

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

  • Developers

I thought I had tackled most of the limitations in Tidy and Obfuscator, but could have missed something.

Supply me with a small test script that shows your issue and I will have a look.

@Smoke_N: BCX indeed defaults to 2k char string variables, but I did convert most of them to either to:

Local TempRec$ * 4100

Or

Global DYNAMIC ScriptRecords$[1000,4096] AS CHAR

Which is working fine now.

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Moderators

I thought I had tackled most of the limitations in Tidy and Obfuscator, but could have missed something.

Supply me with a small test script that shows your issue and I will have a look.

@Smoke_N: BCX indeed defaults to 2k char string variables, but I did convert most of them to either to:

Local TempRec$ * 4100

Or

Global DYNAMIC ScriptRecords$[1000,4096] AS CHAR

Which is working fine now.

Jos

Right, you had to make them static... That was "1" of the many draw backs (that and object handling) that made me move on.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

Here's a small sample. Either one of the /striponly or Ignore_Funcs directives should make this obfuscatable (new word;))

EDIT - here's a script to MAKE a failing script. Easier for you :)

$h = FileOpen("test.au3", 2)

FileWrite($h, "#AutoIt3Wrapper_Run_Obfuscator=y" & @CRLF & "#Obfuscator_Parameters=/striponly" & @CRLF & "#Obfuscator_Ignore_Funcs=_test" & @CRLF & @CRLF & "Func _test()" & @CRLF)

$str = ""
For $i = 1 To 3000
    $str &= Random(0, 9, 1)
Next

FileWrite($h, @TAB & "$var = '" & $str & "'" & @CRLF & "EndFunc")
FileClose($h)
Edited by wraithdu
Link to comment
Share on other sites

  • Developers

Ok, fixed this check when doing a /striponly operation in the version of Obfuscator available in the SciTE Beta download directory.

It will still stop when doing an Obfuscation or else the line will become to long after obfuscation.

Jos

Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Developers

Here's a small sample. Either one of the /striponly or Ignore_Funcs directives should make this obfuscatable (new word;))

/StripOnly I understand but Ignore_Funcs directive isn't clear to me. This directive is to avoid Obfuscation of the Func name, not the whole Func code.

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • 4 weeks later...
  • Developers

Hi,

As this is a long thread, I have not checked every post.

Are there any known issues when using Obfuscator and _singleton?

Thanks

VW

Lets turn the question around: What is the problem you have?

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

Lets turn the question around: What is the problem you have?

Fair enough :)

I have a script that uses _singleton that runs OK when complied normally, however after using Obfuscator the first instance of the program exits immediately

If _Singleton("application",1) = 0 Then
       Exit
   EndIf

When I compile the obfuscator script, the resulting exe is 'application.exe'

Link to comment
Share on other sites

  • Developers

Just tested this script and it is working as expected when Obfuscated and Compiled:

#Include <Misc.au3>
If _Singleton("application", 1) = 0 Then
    Exit
EndIf
While 1
    Sleep(50)
WEnd

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

@Jos

After further checking, the application works for me on some computers (XP SP2) when obfuscated, but at least not one that is W2K3.

I had just added the singleton check and assumed that was the problem. On the W2K3 computer, after compiling without obfuscation the application started.

I guess I am going to have to examine this further.

Thanks

VW

Link to comment
Share on other sites

I'm getting an error message for this code:

using

#AutoIt3Wrapper_Run_Obfuscator=y

#Obfuscator_Parameters=/SO

>Running Obfuscator (1.0.25.0) from:C:\Program Files\AutoIt3\SciTE cmdline:

- Iteration 1 Strip Functions result: Output 1452 lines and stripped 2648 lines

- Iteration 2 Strip Variables result: Output 460 lines and stripped 928 lines

- Iteration 3 Strip Variables result: Output 451 lines and stripped 9 lines

+> Source 15220 lines 345076 Characters.

+> Stripped 3585 Func/Var lines and 11128 comment lines, Total 909709 Characters.

+> Saved 96% lines 263% Characters.

+> Obfuscator v1.0.25.0 finished created:C:\_Coding\Scripts\AU3\Screensaver\Mesmerizing Squares Screensaver_Obfuscated.au3

>Running AU3Check for obfuscated file(1.54.14.0) from:C:\Program Files\AutoIt3

C:\_Coding\Scripts\AU3\Screensaver\Mesmerizing Squares Screensaver_Obfuscated.au3(362,18) : ERROR: syntax error

DllStructCreate(_

~~~~~~~~~~~~~~~~~^

C:\_Coding\Scripts\AU3\Screensaver\Mesmerizing Squares Screensaver_Obfuscated.au3 - 1 error(s), 0 warning(s)

!>12:05:01 AU3Check Obfuscated code ended.rc:2

+>12:05:17 AutoIt3Wrapper Finished

>Exit code: 0 Time: 22.259

What's wrong?

UEZ

PS: attachment removed -> look here if you are interested

Edited by UEZ

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯  ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ

Link to comment
Share on other sites

  • Developers

It stripped the space Between the "("and the "_".

I will look into that to see why it does that.

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Developers

I'm getting an error message for this code:

using

#AutoIt3Wrapper_Run_Obfuscator=y

#Obfuscator_Parameters=/SO

>Running Obfuscator (1.0.25.0) from:C:\Program Files\AutoIt3\SciTE cmdline:

- Iteration 1 Strip Functions result: Output 1452 lines and stripped 2648 lines

- Iteration 2 Strip Variables result: Output 460 lines and stripped 928 lines

- Iteration 3 Strip Variables result: Output 451 lines and stripped 9 lines

+> Source 15220 lines 345076 Characters.

+> Stripped 3585 Func/Var lines and 11128 comment lines, Total 909709 Characters.

+> Saved 96% lines 263% Characters.

+> Obfuscator v1.0.25.0 finished created:C:\_Coding\Scripts\AU3\Screensaver\Mesmerizing Squares Screensaver_Obfuscated.au3

>Running AU3Check for obfuscated file(1.54.14.0) from:C:\Program Files\AutoIt3

C:\_Coding\Scripts\AU3\Screensaver\Mesmerizing Squares Screensaver_Obfuscated.au3(362,18) : ERROR: syntax error

DllStructCreate(_

~~~~~~~~~~~~~~~~~^

C:\_Coding\Scripts\AU3\Screensaver\Mesmerizing Squares Screensaver_Obfuscated.au3 - 1 error(s), 0 warning(s)

!>12:05:01 AU3Check Obfuscated code ended.rc:2

+>12:05:17 AutoIt3Wrapper Finished

>Exit code: 0 Time: 22.259

What's wrong?

UEZ

This bug is fixed in the current Obfuscator version 1.0.26.8 available in the Beta download directory.

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...