After seeing
how easily jdalbec deobfuscated
my last piece of obfuscated code, I decided to present you with yet another challenge...
#!/usr/bin/perl
open(eval STDIN,$0);$==@ARGV=<> ;@
h=split//,shift;$-=@ARGV;{local$"=
't';($b="@{[@h[3,4]]}")=~y~st~ts~;
}$h=ucfirst join'',@h[-5..-2],$ ";
&39;$ b=$h[0].$ b.$ ";print $b;@h=
split//,shift;@_=map{lc}@h[$=-3**2
,$=%($-/3)+2,2**4-$=,(1x2)x2,2,@h-
10,3**(@h%3)];print@_[0..3],'h',@_
[5..@ARGV/2],$h,h;$h=~s/^.//; $h=~
s/...$//;@ h=@h[0..(((length$ARGV[
6])-5)/2)];&{-14}&&print$h[0];&14;
print map lc,@h[&1+6,6*2+&1];print
$h,$h[1];print@h[&{-2}+1];$ARGV[0]
;sub AUTOLOAD{(($a=$ AUTOLOAD))=~s
s.*::sss;$_=chr($a+ord$_)for@h;$a}
Not too hard to deobfuscate, but harder than the previous one, I'd hope... If you don't agree, try using Perl::Tidy on it and running it again... ;-) You'll see what I mean O:-)
Nevertheless, it's not that complicated in the end :-)
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.