Dann will ich mal erklären.... wir haben also einen Hash:
my %landab   = (
    "austria"      => "a",           
    "belgium"      => "b",
    "switzerland"  => "ch",
    "germany"      => "d"
);
 
 
Der Hash gibt im Listenkontext eine Liste aller seiner Schlüssel-Wert-Paare aus:
switzerland, ch, austria, a, germany, d, belgium, b
 
 
Die funktion 
reverse kehrt diese Liste jetzt um:
b, belgium, d, germany, a, austria, ch, switzerland
 
 
Durch die geschweiften Klammern wird aus der Liste jetzt eine Referenz auf einen anonymen Hash. 
Der Pfeiloperator 
-> dereferenziert das ganze jetzt, um nicht die Referenz sondern den dahinter liegenden Hash anzusprechen. 
Das 
{a} spricht jetzt den Wert hinter dem Schlüssel "a" an und gibt diesen Zurück.
Ich hoffe das war verständlich. 
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B