#!/usr/bin/perl -wire
# sets -w, which only tries to slightly obfuscate that i'm using -i ( $^I) to
# hold "re". a later version of this, i added a comment below this line that
# read "# Just another Bird onawire", hoping that an observant deobfuscator
# would notice that that phrase contained most of "Just another Perl hacker,",
# had the right capitalization, and the correct number of characters, and lead
# the deobfuscator to believe that the comment might be used to generate the
# phrase.
# set $/ to 'J' to create the capital J.
$/ = "J";
# set $\ (output record separator, saves from having to print it) to ',' for
# the end of the japh.
$\ = ",";
# some basic character -> ord -> math -> character machinations.
# this puts the string "kcahtona" into $r - those bits give "anoth" and "hack"
# when reversed and substr'd out.
$r = join "",
map { $_ += 57; chr }
map { ord }
split //, "2*(/;65(";
# t holds a list of single character symbols in the symbol table.
@t = sort
map { if( m/^\w$/m ){
$_
}
}
keys %{ *:: } ;
# sub u returns a single space.
sub u { $" }
# sub s returns "re" . "htona" = "another" reversed.
sub s { $^I . substr $r, 3, 5 }
# sub j returns "l" . "re" . "P" = "Perl" reversed. i've learned that the
# symbol table gets populated in a reliable manner (at least reliable enough
# for the purposes of this JAPH) to be able to count on the position in a sorted
# list of single character symbol table entries.
sub j { $t[-5] . $^I . $t[-8] }
# sub P returns "re" . "kcah" = "hacker" reversed.
sub P { $^I . substr $r, 0, 4 }
# sub l returns "t" . "s" . "u" . "J" = "Just" reversed.
sub l { $t[-2] . $t[-3] . $t[-1]. $/ }
print map {
# this just adds a space (via sub u) after every word-returning
# subroutine unless it matches /ack/.
if( m/ack/ ){
$_
}
else {
$_ .= &u }
}
# calls the subroutines in order, reversing the letters in each word.
map { scalar reverse }
( l, &s, &j, &P);
####
$/="J";$\=",";$r=join""=>map{$_+=57;chr}map{ord}split//=>"2*(/;65(";@t=sort
map{if(m*^\w$*m){$_}}keys%{*::};sub u{$"}sub s{$^I.substr$r,3,5}sub j{$t[-5].$^I
.$t[-8]}sub P{$^I.substr$r,0,4}sub l{$t[-2].$t[-3].$t[-1].$/}print map{if(m#ack#
){$_}else{$_.=&u}}map{~~reverse}(l,&s,&j,&P);
##
##
#!/usr/bin/perl -wire
$_=q|$/="J"; $\=","; $s=kpjo"",nbq{$_+=79;dis}nbq{pse}tqmju//,"4*(/;87(";@u=tpsu
nbq{jg(n*^\x$*n){$_}}lfzt%{*::};tvc v{$"}tvc t{$^I.tvctus$s,5,7}tvc k{$u[-7].$^I
.$u[-0]}tvc P{$^I.tvctus$s,2,6}tvc m{$u[-4].$u[-5].$u[-3].$/}qsjou nbq{jg(n#bdl#
){ $_ }fmtf{ $_ .=&v}}nbq{~~sfwfstf}(m,&t,&k,&P);|;
$_ =~ y[b-za2-901][a-z0-9];
eval
##
##
sub r { 49 } # returns 49
sub a { r()-1 } # returns 48
sub b { a()-1 } # returns 47
sub c { b()+3 } # returns 50
sub d { 0 } # returns 0
##
##
$e=q=
fho'e{49}
fho'n{e()-1}
fho'o{n()-1}
fho'p{o()+3}
fho'q{0}
=;
$e=~y/a-z/n-za-m/;
eval $e;
##
##
$A = ( scalar join '',
map { $a = $_ + 48;
$a = pack('c',$a); # converts ord to chr without using 'chr'
$a =~ s/(b|2)/$1-/; # appends a '-' if it's a 'b' or a '2'
$a
}
( 50, 74, 49, 2, 9, 0, 1 )
);
##
##
$B = ( scalar join '',
map { $b = $_ + 49;
$b = pack('c',$b); # converts ord to chr without using 'chr'
$b =~ s/(a|0)/$1-/; # appends a '-' if it's an 'a' or a '0'
$b
}
( 48, 74, -1, 8 )
);
##
##
join '',
map { if( m/^\d+$/ ){
pack'c',$_ # if map encounters a number, convert it to chr
}
else{
$_ # otherwise, don't chr it.
}
}
( 121, 47, $A, 47, $B, 47 )
##
##
eval join '', map{ if( m|^\d+$| ){
pack'c',$_
}
else{$_}
}
( 22 + c() + r(), b(),
( ~~ join '', map { $a = $_ + a();
$a = pack('c',$a);
$a =~ s{(b|2)}[$1-];
$a
}
( c(), 24 + c(), r(), 2, 9, d(), 1 )
), b(),
( ~~ join '', map { $b = $_ + r();
$b = pack('c',$b);
$b =~ s=(a|0)=$1-=;
$b
}
( a(), 24 + r(), -1,8 )
), b() );