Sarebbe parte di un controllo per la partita IVA ... ma non riesco a capire che diamine fa (la parte in rosso).. qualcuno mi illumina ?


codice:
function partitaIva(codice)
{
   var n_Val,n_Som1=0,n_Som2=0,lcv;
   if (codice.length!=11 
|| isNaN(parseFloat(codice)) 
|| parseFloat(codice)<parseFloat(0))
      return false;

   for (lcv=0;lcv<9;lcv+=2)
   {
      n_Val=parseInt(codice.charAt(lcv));
      n_Som1+=n_Val;
      n_Val=parseInt(codice.charAt(lcv+1));
      n_Som1+=Math.floor(n_Val/5) + (n_Val<<1) % 10;
   }
   n_Som2 = 10 - (n_Som1 % 10);
   n_Val=parseInt(codice.charAt(10));    
if (n_Som2==n_Val)
      return true;
   return false;