aboutsummaryrefslogtreecommitdiff
path: root/test/formatters/samplecode/perltidy/out.pl
blob: b22e297aa15bd4289a7beb7dac51c949a4b9b85b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# Taken from https://stackoverflow.com/q/30848816
while ( read +STDIN, $_, 2048 ) {
    $a = 29;
    $b = 73;
    $c = 142;
    $t = 255;
    @t = map {
             $_ % 16
          or $t ^= $c ^=
          ( $m = ( 11, 10, 116, 100, 11, 122, 20, 100 )[ $_ / 16 % 8 ] ) & 110;
        $t ^= (
            72,
            @z = ( 64, 72, $a ^= 12 * ( $_ % 16 - 2 ? 0 : $m & 17 ) ),
            $b ^= $_ % 64 ? 12 : 0, @z
        )[ $_ % 8 ]
    } ( 16 .. 271 );
    if ( ( @a = unx "C*", $_ )[20] & 48 ) {
        $h = 5;
        $_ = unxb24, join "",
          @b = map { xB8, unxb8, chr( $_ ^ $a[ --$h + 84 ] ) } @ARGV;
        s/...$/1$&/;
        $d = unxV, xb25, $_;
        $e = 256 | ( ord $b[4] ) << 9 | ord $b[3];
        $d = $d >> 8 ^ ( $f = $t & ( $d >> 12 ^ $d >> 4 ^ $d ^ $d / 8 ) ) << 17,
          $e =
          $e
          >> 8 ^ ( $t & ( $g = ( $q = $e >> 14 & 7 ^ $e ) ^ $q * 8 ^ $q << 6 ) )
          << 9, $_ = $t[$_] ^ ( ( $h >>= 8 ) += $f + ( ~$g & $t ) )
          for @a[ 128 .. $#a ];
    }
    print +x "C*", @a;
}