xwinterx Posted April 6, 2007 Share Posted April 6, 2007 (edited) Script Obfuscator For AutoItversion 0.2Here is my first release of SOFA. I think I have done decently for my first release. Now, this is a very simple code obfuscator. It has not been tested extensively, one of the reasons it was put up here. Please try it and give some feedback. There are some known limitations which will be listed below. I will be working to fix those in my spare time. I've done this in the past week or so, working on it on and off. Hope I can eventually come up with a decent obfuscator for everyone.Smoke and EncodeIt were my inspiration as you will see. The encoding of the text is pretty simple and would appreciate anyone pm-ing me who could help me out with a more complex way of encoding text. Thanks!Known Limitations- You MUST declare all non-local variables at the beginning of your code.- Does not import #Include statement.- GUIOnEvent mode is not supported. (v0.2.1)- Does not support the usage of quotes inside of apostrophes to include the quotes for output. You must use the Chr() command to insert the quotes. The example below shows how to code the given line:Bad: FileWriteLine( Dude! )Good: FileWriteLine( Chr(34) & Dude! & Chr(34) )- Does not support semi-colons ( in non-comment usages for inserting into output. The comment stripping will truncate your code. You must use the Chr() command to insert semi-colons. The example below shows how to code the given line:Bad: MsgBox(4096, "Test!", "One;Two;Three")Good: MsgBox(4096, "Test!", "One" & Chr(59) & "Two" & Chr(59) & "Three")- Variable names should not contain underscores _ or the complete variable name may not be obfuscated. This can also happen if variables contain similar names at the beginning as well. This is usually the case when variables are named similar such as: $var $var_new $var_old $thisvar $thisvaragain- Constants or Variables that are imported via #Include (ie. $GUI_HIDE) must be declared in the main script.- HotKeySet has arguments obfuscated incorrectly (v0.2.1)Change Logv0.2.1:- Fixed incorrect replacement of HotKeySet arguments.- Fixed incorrect replacement of arguments to support GUIOnEvent Mode.SOFA_v0.2.0000_released.au3SOFA_v0.2.1_released.au3 Edited April 7, 2007 by xwinterx Link to comment Share on other sites More sharing options...
Bounda Posted April 7, 2007 Share Posted April 7, 2007 (edited) I love you.LOL not that way but ive been needing one of these for quite some time./edit w00t 100 posts! Edited April 7, 2007 by Bounda CS:S Aimbot - List From INI Funcs Link to comment Share on other sites More sharing options...
BillLuvsU Posted April 7, 2007 Share Posted April 7, 2007 I love you as well. >_> Nice job! [center][/center]Working on the next big thing.Currently Playing: Halo 4, League of LegendsXBL GT: iRememberYhslaw Link to comment Share on other sites More sharing options...
xwinterx Posted April 7, 2007 Author Share Posted April 7, 2007 thanks! my first attempt. going to try it on my more complex scripts to see what else I need to work on. Link to comment Share on other sites More sharing options...
Thatsgreat2345 Posted April 7, 2007 Share Posted April 7, 2007 Havent tried it but be sure to not mess with fileinstall Link to comment Share on other sites More sharing options...
xwinterx Posted April 7, 2007 Author Share Posted April 7, 2007 Havent tried it but be sure to not mess with fileinstall ooooo.... never thought of that. I'll try it out tonight.thanks! Link to comment Share on other sites More sharing options...
Thatsgreat2345 Posted April 7, 2007 Share Posted April 7, 2007 Its because fileinstall doesn't handle variables so in your parsing I'm guessing your using StringRegExp which you should be using just do a check to see if it is fileinstall and if it is don't mess with it simple Link to comment Share on other sites More sharing options...
=sinister= Posted April 7, 2007 Share Posted April 7, 2007 Ever since Smoke_N removed his obfuscator, i've been desperate. Thanks for this i'll have to try it out sometime. Link to comment Share on other sites More sharing options...
xwinterx Posted April 7, 2007 Author Share Posted April 7, 2007 Its because fileinstall doesn't handle variables so in your parsing I'm guessing your using StringRegExp which you should be using just do a check to see if it is fileinstall and if it is don't mess with it simple I think it has to do with how your arguments are in your fileinstall statement. I had some scripts that had problems and some that didn't when I was using EncodeIt. I'm looking at it now. Got the guieventmode figured out as well as hotkeyset. Link to comment Share on other sites More sharing options...
Thatsgreat2345 Posted April 7, 2007 Share Posted April 7, 2007 Yeah that is it valik doesn't change it because it would be easy to make it allow them but he doesn't for some reason. Link to comment Share on other sites More sharing options...
xwinterx Posted April 7, 2007 Author Share Posted April 7, 2007 Updated to support HotKeySet and GUIOnEventMode. Link to comment Share on other sites More sharing options...
=sinister= Posted April 7, 2007 Share Posted April 7, 2007 You should add more than 1 method of obfuscating scripts, and maybe a random function and variable creator so we could obfuscate scripts more than once. That would be nice. Link to comment Share on other sites More sharing options...
xwinterx Posted April 8, 2007 Author Share Posted April 8, 2007 You should add more than 1 method of obfuscating scripts, and maybe a random function and variable creator so we could obfuscate scripts more than once. That would be nice.will do... this is just a the beginning... but since it seems that there is a new obfuscator that is being implemented with AutoIt, I may keep doing this project, but not as aggressively. Link to comment Share on other sites More sharing options...
=sinister= Posted April 8, 2007 Share Posted April 8, 2007 what I like about having 2 obfuscators is that they usually migrate to make one huge mega obfuscator lol. Link to comment Share on other sites More sharing options...
fisofo Posted April 8, 2007 Share Posted April 8, 2007 will do... this is just a the beginning... but since it seems that there is a new obfuscator that is being implemented with AutoIt, I may keep doing this project, but not as aggressively. Yep, that sort of thing can be tough, and seeing as you're a bit newer here, I have a feeling I know which one will end up being "official". But don't let that discourage ya! If anything, contact JdeB and see if you can integrate the two and work on it together. Just a thought!What you have is a good start though! Link to comment Share on other sites More sharing options...
rush4hire Posted April 8, 2007 Share Posted April 8, 2007 I just saw 2 obfuscators. I don't understand the logic; it seems to be a waste of time. Are people making money now on thier autoIt projects? And if you choose to not allow decompile when you compile, that's not good enough? People have found a way to crack it and decompile it anyway? Well if that's the case, how hard would it be to make a "de-obfuscator" if would really somehow be profitable? lolz! PS I would never need it. People have always complained they could never understand my code anyway. My methods are wierd. Decompilable game code manager for Dark Deeds 6 for Warcraft IIIA web broadcast TiVo like thing.. (this example is for 3abn.org)Finally.. AutoIt Pac-Man Digital Hymn Player Link to comment Share on other sites More sharing options...
theguy0000 Posted April 8, 2007 Share Posted April 8, 2007 (edited) Yeah that is it valik doesn't change it because it would be easy to make it allow them but he doesn't for some reason.no it wouldn't be easy, you don't know what you're talking about. Don't just assume things like that.Do you really think that they would make every single function in AutoIt accept variables, except that one? No. It's not an easy thing to implement. In some cases, depending on what the variable is set to, it would just be impossible. Edited April 8, 2007 by theguy0000 The cake is a lie.www.theguy0000.com is currentlyUP images.theguy0000.com is currentlyUP all other *.theguy0000.com sites are DOWN Link to comment Share on other sites More sharing options...
xwinterx Posted April 8, 2007 Author Share Posted April 8, 2007 I just saw 2 obfuscators. I don't understand the logic; it seems to be a waste of time.Are people making money now on thier autoIt projects?And if you choose to not allow decompile when you compile, that's not good enough? People have found a way to crack it and decompile it anyway?Well if that's the case, how hard would it be to make a "de-obfuscator" if would really somehow be profitable?lolz! PSI would never need it. People have always complained they could never understand my code anyway. My methods are wierd.Yes, you can decompile it even if you choose not to allow decompile. someone cracked the decompiler. I've tried it and it works. It is easy to de-obfuscate the text because it has to have a way to decode. I did it with EncodeIt v1 because the source was available to us. You can do it with mine and if you can get the source for JdBe then you can de-obfuscate his text too.I use it not for making profit but to make it harder for folks to "steal" any little script I make and claim it as their own. I've had it happen and I am sure other people have to. Usually it's the people that ask and ask and ask people to do stuff for them and not the people who actually post their opensourced code and stuff on here.It just makes it harder to read because of the funky non-descriptive variable and function names. Link to comment Share on other sites More sharing options...
theguy0000 Posted April 8, 2007 Share Posted April 8, 2007 unless you randomize the variable/func names... The cake is a lie.www.theguy0000.com is currentlyUP images.theguy0000.com is currentlyUP all other *.theguy0000.com sites are DOWN Link to comment Share on other sites More sharing options...
xwinterx Posted April 8, 2007 Author Share Posted April 8, 2007 unless you randomize the variable/func names...Meant only the text. Variables and function names are completely randomized. So you can decode "text" but not the variable/function names. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now