Jump to content

protect my program


 Share

Recommended Posts

I really want to protect my program from being decompiled

Was curious, since i tried obfuscating it and i get the errors because of my use of the execute function (which i cannot take out of the program)

Is there any alternatives or a way to ignore the execute functions while obfuscating?

Link to comment
Share on other sites

  • Developers

Have you searched our forums for this particular question?

Short story: There is NO way to make it truly safe.

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

Have you searched our forums for this particular question?

Short story: There is NO way to make it truly safe.

I have searched them but was wondering why there is an obfuscator released by autoit where it can't work with certain functions.

why wouldn't they make an ignore command? Or is there one.

I would at least like to obfuscate it.

Link to comment
Share on other sites

  • Developers

I have searched them but was wondering why there is an obfuscator released by autoit where it can't work with certain functions.

why wouldn't they make an ignore command? Or is there one.

I would at least like to obfuscate it.

There is no Obfuscator release by AutoIt but is release by me.

The reason why some functions aren't supported is easy to explain and there are several ways around it but it all depends on the script.

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

Lets have the discussion in open forum so other can participate.

The reason Execute isn't supported in Obfuscator is easy to explain since it can contain variables which are not renamed to the obfuscated new variable name. Try to avoid using execute.

Why do you need to use Execute() it in your script?

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 have the discussion in open forum so other can participate.

The reason Execute isn't supported in Obfuscator is easy to explain since it can contain variables which are not renamed to the obfuscated new variable name. Try to avoid using execute.

Why do you need to use Execute() it in your script?

Jos

how do i get to the open forum

sorry never used it

Link to comment
Share on other sites

  • Developers

how do i get to the open forum

sorry never used it

This is it... in other words: Do not PM me but post your questions/remark HERE.

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

Isnt there a switch to ingore function remame ?

There are several ways to avoid code to be obfuscated as are described in the helpfile ;)

#Obfuscator_Off ;Stop the Obfuscation process below this line

#Obfuscator_On ;Start the Obfuscation process below this line

#Obfuscator_Ignore_Funcs= ; Don't convert these Funcs

#Obfuscator_Ignore_Variables= ; Don't convert these Variables

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

This is it... in other words: Do not PM me but post your questions/remark HERE.

Jos

lol ok understood

thought maybe there was a chat box

anyhow there is now way for my script to perform correctly without the execute commands.

i use it save settings in my gui in a bunch of different commands

It saves me from over 500 lines of code

Link to comment
Share on other sites

  • Developers

lol ok understood

thought maybe there was a chat box

anyhow there is now way for my script to perform correctly without the execute commands.

i use it save settings in my gui in a bunch of different commands

It saves me from over 500 lines of code

I have yet to use Execute() in any script so would love to see an example from you where it is required.

Just make a simple small example so I also can understand it.

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

I have yet to use Execute() in any script so would love to see an example from you where it is required.

Just make a simple small example so I also can understand it.

Jos

here is an example.

plz show me ways around this,

also i have an error obfuscating with the timers.au3 file

I was also curious if after obfuscating, will this be easily unobfuscatable

Func ButtonStateSet($varname)
    If IniRead($inifile, "Settings", $varname, 4)==1 Then
        Execute("GUICtrlSetState("&$varname&", $GUI_CHECKED)")
    Else
        Execute("GUICtrlSetState("&$varname&", $GUI_UNCHECKED)")
    EndIf
EndFunc

I really appreciate your help

Edited by vladedoty
Link to comment
Share on other sites

Func ButtonStateSet($varname)
    Local $iVal = IniRead($inifile, "Settings", $varname, 4)
    If GUICtrlGetState($varname) <> $iVal Then GUICtrlSetState("&$varname&", $iVal)
EndFunc

EDIT: BTW, that was a ridiculous use of Execute() anyway.

Edited by GEOSoft

George

Question about decompiling code? Read the decompiling FAQ and don't bother posting the question in the forums.

Be sure to read and follow the forum rules. -AKA the AutoIt Reading and Comprehension Skills test.***

The PCRE (Regular Expression) ToolKit for AutoIT - (Updated Oct 20, 2011 ver:3.0.1.13) - Please update your current version before filing any bug reports. The installer now includes both 32 and 64 bit versions. No change in version number.

Visit my Blog .. currently not active but it will soon be resplendent with news and views. Also please remove any links you may have to my website. it is soon to be closed and replaced with something else.

"Old age and treachery will always overcome youth and skill!"

Link to comment
Share on other sites

  • Developers

Whats wrong with?:

Func ButtonStateSet($varname)
    If IniRead($inifile, "Settings", $varname, 4)==1 Then
        GUICtrlSetState($varname, $GUI_CHECKED)
    Else
        GUICtrlSetState($varname, $GUI_UNCHECKED)
    EndIf
EndFunc

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

Whats wrong with?:

Func ButtonStateSet($varname)
    If IniRead($inifile, "Settings", $varname, 4)==1 Then
        GUICtrlSetState($varname, $GUI_CHECKED)
    Else
        GUICtrlSetState($varname, $GUI_UNCHECKED)
    EndIf
EndFunc

nothing it works fine

so if i want to ignore the remaining execute functions i would put

#Obfuscator_Ignore_Funcs=Execute or

#Obfuscator_Ignore_Funcs=Execute()

cause when i put this at the top of my script i get the following error: Invalid Complier directive

Keyword:#Obfuscator_Ignore_Funcs

Value:Execute

Is this because I can't ignore Execute?

also i am having that error with the timers.au3 file

can i ignore that since it is a built in au3 file?

Edited by vladedoty
Link to comment
Share on other sites

  • Developers

#Obfuscator_Ignore_Funcs= ; Don't convert these Funcs

This is ONLY for UDFs not build in functions.

But you haven't shown why you would need Execute().

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

#Obfuscator_Ignore_Funcs= ; Don't convert these Funcs

This is ONLY for UDFs not build in functions.

But you haven't shown why you would need Execute().

ok i see that i do not need the execute function

but what about the timers.au3 error when obfuscating.

and after abfuscated correctly, can it easily be unobfuscated

Link to comment
Share on other sites

Jos, je geduld is bewonderenswaardig, respekt...

OP, take a look at my sig, under Obfuscator you'll get to the correct 26 pages long thread answering ALL questions you might have... alternatively take also a look at the "Software Armoring tools" thread...

Link to comment
Share on other sites

ok i see that i do not need the execute function

but what about the timers.au3 error when obfuscating.

and after abfuscated correctly, can it easily be unobfuscated

also now getting this error while trying to obfuscate the new functions converted from the old Execute

Found GUICtrlSetOnEvent() statement using unsolvable Func, which will/could lead to problems running your obfuscated script.

and the Ignore_Funcs does not work on GUICtrlSetOnEvent either

and here is the timer error

-### Obfuscation Error: Found DllCallbackRegister() statement using unsolvable Func, which will/could lead to problems running your obfuscated script.

>### current Func: _Timer_SetTimer

C:\Program Files\AutoIt3\include\timers.au3(282,1) Warning for line:$hCallBack = DllCallbackRegister($sTimerFunc, "none", "hwnd;int;int;dword")

Edited by vladedoty
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

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