1
mirror of https://github.com/hashcat/hashcat synced 2024-12-09 02:13:10 +01:00
hashcat/tools/code_generators/GEN_truncate_block_16x4_le.pl

43 lines
756 B
Perl

#!/usr/bin/perl
use strict;
use warnings;
for (my $i = 0; $i < 64; $i++)
{
printf (" case %2d:\n", $i);
my $id4 = int ($i / 4);
my $im4 = int ($i % 4);
if ($im4 == 0)
{
printf (" w%d[%d] = 0;\n", $id4 / 4, $id4 % 4);
}
elsif ($im4 == 1)
{
printf (" w%d[%d] &= 0x000000ff;\n", $id4 / 4, $id4 % 4);
}
elsif ($im4 == 2)
{
printf (" w%d[%d] &= 0x0000ffff;\n", $id4 / 4, $id4 % 4);
}
elsif ($im4 == 3)
{
printf (" w%d[%d] &= 0x00ffffff;\n", $id4 / 4, $id4 % 4);
}
for (my $j = $id4 + 1; $j < 16; $j++)
{
my $jd4 = int ($j / 4);
my $jm4 = int ($j % 4);
printf (" w%d[%d] = 0;\n", $jd4, $jm4);
}
printf ("\n");
printf (" break;\n");
printf ("\n");
}