Jump to content

How this a3x works?


 Share

Recommended Posts

Hi, I just would like to ask how this a3x system works?

Well, before sending me to a template website please read below :)

Before this day I thought a3x is a compiled autoit script, where the stub is not included. Today I found an a3x which contained near 70k lines of similar formatted codes like this:

;am802ph9n988nvp80xyexhpq7jqj21a7539w18535t

;mo51q0c2rewcxvb0207ar318098k96hugn19

;8o9e8grvsdkg0zjz4h37737r1xl1jhp37cc63x1bx09

;zbn2lz9f

;54948279

;eoue9ynx4mh0m71045z1tq

;68pc9e0r0zk9u18p940nmzc19

;ry6xu0hqjyd

;j224ggr79443xew91h

;5w9zo5cml1oyi585905f0fxo96mwwp41bbm9o35z939

;194d597i71ny6zaz

;y008w51l3gkqan222s9i56rh97e2qebe9940

;ch10u17u4wxm5c

;3i56ar57xm93knydb3k3h7y88n22927iw3ldh91pj724valel

;uc16b

The strange this is that it works. How is it possible? Isn't it compiled? What kind of sorcery is it? :D

Thanks for the answers.

Edited by AutoThat
Link to comment
Share on other sites

  • Moderators

AutoThat,

Welcome to the AutoIt forum. :)

When AutoIt "compiles" a script to .exe format it converts the script into a tokenized form and then encrypts and compresses it using some proprietary algorithms. The result is an .a3x file which is placed into the interpreter resource table and the result is a "compiled" runnable executable. Compiling a script to .a3x format just misses out the final step. Thus any .a3x file can be run by any AutoIt interpreter and, since the last release, used as an #include file. No sorcery at all. ;)

Does that answer your question? :)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

But usually if I compile a script into a3x it's much more different. Look at the code I wrote above.

Usually if you open an a3x in notepad you can see the following (or similar):

ŁHKľlJ©™LS

†ÖH}AU3!EA06M¨˙s$§<özńg¬Á“çkCĘR¦­ á»:!Ą)ăěç.@˝ášŢ€F±

etc etc etc

__________________________________________________________

If you open this a3x in notepad, you will see:

;am802ph9n988nvp80xyexhpq7jqj21a7539w18535t

;mo51q0c2rewcxvb0207ar318098k96hugn19

;8o9e8grvsdkg0zjz4h37737r1xl1jhp37cc63x1bx09

;zbn2lz9f

;54948279

;eoue9ynx4mh0m71045z1tq

;68pc9e0r0zk9u18p940nmzc19

;ry6xu0hqjyd

;j224ggr79443xew91h

;5w9zo5cml1oyi585905f0fxo96mwwp41bbm9o35z939

;194d597i71ny6zaz

;y008w51l3gkqan222s9i56rh97e2qebe9940

;ch10u17u4wxm5c

;3i56ar57xm93knydb3k3h7y88n22927iw3ldh91pj724valel

;uc16b

That's why I'm confused now :)

Edited by AutoThat
Link to comment
Share on other sites

It's magic. Compiled that way it can't be decompiled. It uses hidden AutoIt feature known only to two, maybe three people in the whole world.

This guy has found the way to stop decompilation forever. Not.

Nah, I'm kidding. That's not a3x, that's simple au3 with 22Mb of comments and what, 1000 lines of au3 code obfuscated using apparently well known (fuck knows why) obfuscator.

...Don't say you didn't buy this.

♡♡♡

.

eMyvnE

Link to comment
Share on other sites

This thread should be rephrased as a challenge for recreation.  Though if it takes intimate knowledge of powerbuilder as well my progress will be slow.

,-. .--. ________ .-. .-. ,---. ,-. .-. .-. .-.
|(| / /\ \ |\ /| |__ __||| | | || .-' | |/ / \ \_/ )/
(_) / /__\ \ |(\ / | )| | | `-' | | `-. | | / __ \ (_)
| | | __ | (_)\/ | (_) | | .-. | | .-' | | \ |__| ) (
| | | | |)| | \ / | | | | | |)| | `--. | |) \ | |
`-' |_| (_) | |\/| | `-' /( (_)/( __.' |((_)-' /(_|
'-' '-' (__) (__) (_) (__)

Link to comment
Share on other sites

  • Moderators

AutoThat,

 

I didn't even know that you can run au3 by renaming to to a3x

Re-read what I posted above. It is not a simple renaming of an .au3 file - it is compiling it to .a3x format rather than .exe. ;)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

AutoThat,

Re-read what I posted above. It is not a simple renaming of an .au3 file - it is compiling it to .a3x format rather than .exe. ;)

M23

 

Actual .a3x code is not a simple rename, yes. But this is not .a3x. It's magic ;)

Link to comment
Share on other sites

  • Moderators

AutoThat,

The files you uploaded are .a3x files - not .au3 - so I do not see how you can "rename the au3 to a3x". Do you have the script that resulted in the .a3x file you uploaded? If not from where did you get it? :huh:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Well, let me explain if I wasn't clear.

So: the file I uploaded is an a3x EXTENSION.

It turned out that if you SIMPLY OPEN IT WITH A NOTEPAD it's just a simply an au3 script, whiches extension had been renamed to a3x

So: You can rename au3 to a3x, it will run the same way, except that it's not compiled/compressed.

Why I told it's not decompilable? Because it's not even compiled...

Is it clear now?

Edited by AutoThat
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...