$val = unpack( "N", $raw ^ "\x80\0\0\0" ) - ( 1 << 31 );