Unpacking RLPack

RLPack Basic is an open source packer brought to you by the coders at Reversing Labs. One (if not the only) the coders there is ap0x. I’ve seen some of the code he’s done in the past, and I must admit he knows his trade very well. RLPack basic doesn’t contain any antidebug or antianalysis code, but the premium versions do. Unfortunately, they cost, so I could get my hands on the basic version only. If you have a malware sample that’s been packed with the premium versions I’d be highly interested in taking a peek at it.

The basic version is very simple to unpack. There are one of two compression libraries in use: Either LZMA or aPLib.

The entrypoint looks like this when the aPLib has been used:

RLPack Header

And when LZMA is used, the entrypoint looks like this:

RLPack LZMA Header

The exitpoints also differ a bit between the two compression methods used. With aPLib, the exitpoint looks like this:

RLPack aPLib Footer

And with LZMA the exitpoint looks like this:

RLPack LZMA Footer

In both cases, unpacking is the same. Set a breakpoint on the jmp command right after the popa. Press F9 to run to the target, singlestep once into the jump and you’ll find yourself at the original entrypoint. Dump from there, and you can begin your analysis.

One Response to “Unpacking RLPack”

  1. ap0x Says:

    If you want a file packed with RLPack full version, please email me.

Leave a Reply

You must be logged in to post a comment.

If you want to comment on this article please send e-mail
to authors(_at_)teamfurry.com or go to the forums.


InspectorWordpress has prevented 2 attacks.