in reply to explain obfu code
perl -MO=Deparse script.pl
Yields:
Yick! What is this program supposed to do anyway?++$|; undef $/; $_ = $e || <ARGV>; tr/+-.<>[]//cd; foreach $a (']}', '[while($p[$p]){', '-$p[$p]--', '+$p[$p]++', ',$p[$p +]=ord(getc)', '.print(chr($p[$p]))', '<$p--', '>$p++') { s/\Q${\substr($a, 0, 1);}\E/${\substr($a, 1);}\n;/g; } eval $_;
Updated
Here's my second pass at looking at this. Look at the elements in the foreach loop. The left most character of the element is what is looked for in the replacement and the rest of the element it what a match is replaced with.
This input
Produces this output[ < - ]
Could this be a home brew macro language parser? jeffa agree's with this idea.while($p[$p]){ ;$p-- ;$p[$p]-- ;} ;
/\/\averick
perl -l -e "eval pack('h*','072796e6470272f2c5f2c5166756279636b672');"
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: explain obfu code
by japhy (Canon) on Oct 02, 2001 at 03:20 UTC | |
|
Re: Re: explain obfu code
by broquaint (Abbot) on Oct 02, 2001 at 17:21 UTC | |
by Rhose (Priest) on Oct 02, 2001 at 18:36 UTC |