Jump to content

This site uses cookies. By continuing to browse the site you are agreeing to our use of cookies. Find out more here. X
X


Photo

UPX / MPress GUI

UPX gui mpress

  • Please log in to reply
10 replies to this topic

#1 CaptainClucks

CaptainClucks

    Unum Cavillator Spuria

  • Active Members
  • PipPipPipPipPipPip
  • 1,227 posts

Posted 09 March 2012 - 09:36 AM

I made this just for the heck of it, it's a GUI for UPX and MPress.

MPress is actually a pretty neat packer for PE files, it compresses your AutoIt interpreter a little more than UPX does but it doesn't have an option to preserve overlay data (I.E., the script appended to the autoit interpreter when compiling) so I made a GUI that will help out with using MPress by saving the script and appending it after the compression operation is completed.

Additionally, I added functionality to use res hacker to strip some optional resources if the user wishes to do so.

Options include stripping the resource debug strings table if the use feels they are unnecessary and stripping the tray icon resource if the application has the #NoTrayIcon option set.

You can also remove the "Input Dialog" resource but be warned that stripping this resource will render a script that uses the "InputBox()" function useless.


 Posted Image


Posted Image 




This html links to a rar archive that comes with the MPress (v2.1.9.0) and UPX (v3.8.0.0) executables and application source script of the early version.
Attached File  Download.html   4.93KB   435 downloads

Source code, latest version without MPress and UPX.
Attached File  UPX and MPress Wrapper.au3.rar   7.28KB   1022 downloads

Download the compiled version (exe) here. [269kb]

Download links: UPX, MPress and ResHacker.

Edited by THAT1ANONYMOUSEDUDE, 11 March 2012 - 10:51 AM.

Spoiler

Warning: Posts by this user are subject to change or may disappear without notice.








#2 rcmaehl

rcmaehl

    No where near a noob nor a pro coder.

  • Active Members
  • PipPipPipPipPipPip
  • 676 posts

Posted 09 March 2012 - 01:44 PM

Suggestion: Add an option to remove the AutoIt debug messages in the Resource tables. It shaves a good amount off the file size.

My UDFs are generally for me. If they aren't updated for a while, it means I'm not using them myself. As soon as I start using them again, they'll get updated.

 

Current Projects:

IRC UDF, for IRC activities

SafeExecute, for picking and choosing what commands you want Execute to be able to run.


#3 Valik

Valik

    Former developer.

  • Active Members
  • PipPipPipPipPipPip
  • 18,879 posts

Posted 09 March 2012 - 05:01 PM

The MPress portion of this skirts the "no reverse engineering" portion of our license. However, I'm almost certain we have publicly stated how Aut2Exe works so with that in mind I'm going to allow this for the time being. Keep in mind you are right up against the license now so careful consider new features as you could very easily cross that line at which point this thread will be locked and you may possibly be removed from this site.

#4 CaptainClucks

CaptainClucks

    Unum Cavillator Spuria

  • Active Members
  • PipPipPipPipPipPip
  • 1,227 posts

Posted 09 March 2012 - 07:02 PM

The MPress portion of this skirts the "no reverse engineering" portion of our license. However, I'm almost certain we have publicly stated how Aut2Exe works so with that in mind I'm going to allow this for the time being. Keep in mind you are right up against the license now so careful consider new features as you could very easily cross that line at which point this thread will be locked and you may possibly be removed from this site.


Oh wow, didn't see that one coming.


Suggestion: Add an option to remove the AutoIt debug messages in the Resource tables. It shaves a good amount off the file size.


I'm afraid to even touch it now that valik warned me that any new features could possibly have me banned.
Spoiler

Warning: Posts by this user are subject to change or may disappear without notice.


#5 wraithdu

wraithdu

    this noise inside my head

  • MVPs
  • 2,413 posts

Posted 09 March 2012 - 07:47 PM

I'm curious now regarding Valik's response... we do the same thing in AutoIt3Wrapper because otherwise the resource updating code strips the overlay. So is that considered ok because it is distributed by AutoIt? Or must it also abide by the license since it is technically a 3rd party package?

#6 ProgAndy

ProgAndy

    You need AutoItObject

  • MVPs
  • 2,508 posts

Posted 09 March 2012 - 08:04 PM

I'm curious now regarding Valik's response...

Me too. The PE format clearly defines that the executable size is stored in a structure member called SizeOfImage which can also be calculated as Offset + Size of last section. Now is it reverse engeneering if I split the file in the PE formatted part and the attached data and later merge it again?
*GERMAN* Posted Image [note: you are not allowed to remove author / modified info from my UDFs]My UDFs:[_SetImageBinaryToCtrl] [_TaskDialog] [AutoItObject] [Animated GIF (GDI+)] [ClipPut for Image] [FreeImage] [GDI32 UDFs] [GDIPlus Progressbar] [Hotkey-Selector] [Multiline Inputbox] [MySQL without ODBC] [RichEdit UDFs] [SpeechAPI Example] [WinHTTP]UDFs included in AutoIt: FTP_Ex (as FTPEx), _WinAPI_SetLayeredWindowAttributes

#7 Valik

Valik

    Former developer.

  • Active Members
  • PipPipPipPipPipPip
  • 18,879 posts

Posted 09 March 2012 - 08:41 PM

You can do what you want to the PE format, it's not ours. That includes resource changes.

#8 CaptainClucks

CaptainClucks

    Unum Cavillator Spuria

  • Active Members
  • PipPipPipPipPipPip
  • 1,227 posts

Posted 10 March 2012 - 12:16 AM

You can do what you want to the PE format, it's not ours. That includes resource changes.


we have publicly stated how Aut2Exe works so with that in mind I'm going to allow this for the time being.


So let me get this right, can I add the functionality that rcmaehl suggested?

It's because now I want to add some functionality that removes some resources that a user specifies by just checking some boxes etc, like the tray icons resource etc if a user doesn't want it.

But I should be wary of messing with things like the portion that saves the overlay data right?
Spoiler

Warning: Posts by this user are subject to change or may disappear without notice.


#9 Valik

Valik

    Former developer.

  • Active Members
  • PipPipPipPipPipPip
  • 18,879 posts

Posted 10 March 2012 - 02:30 AM

You can modify resources all you want. I think it's stupid to start stripping the string table but you can do what you want.

#10 Inverted

Inverted

    Universalist

  • Active Members
  • PipPipPipPipPipPip
  • 666 posts

Posted 03 June 2012 - 10:16 AM

Nice little tool.

MPress is actually a pretty neat packer for PE files, it compresses your AutoIt interpreter a little more than UPX does

LoL, nothing beats "upx.exe --ultra-brute"

#11 Zedna

Zedna

    AutoIt rulez!

  • MVPs
  • 8,794 posts

Posted 03 June 2012 - 02:17 PM

I like the idea of removing some unused resources (tray and inputbox).
Most of my applications use neither tray nor inputbox.
I thought about that in past already too.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users