docs: function f32(k64Cnt, x, k32 ) {
  
          var lB0 = b0(x)
            , lB1 = b1(x)
            , lB2 = b2(x)
            , lB3 = b3(x)
            , k0 = k32[0] || 0
            , k1 = k32[1] || 0
            , k2 = k32[2] || 0
            , k3 = k32[3] || 0
            , result = 0;
  
          switch (k64Cnt & 3) {
            case 1:
              result = MDS[0][P[P_01][lB0] & 0xFF ^ b0(k0)] ^
                       MDS[1][P[P_11][lB1] & 0xFF ^ b1(k0)] ^
                       MDS[2][P[P_21][lB2] & 0xFF ^ b2(k0)] ^
                       MDS[3][P[P_31][lB3] & 0xFF ^ b3(k0)];
              break;
  
            case 0:  // same as 4
              lB0 = P[P_04][lB0] & 0xFF ^ b0(k3);
              lB1 = P[P_14][lB1] & 0xFF ^ b1(k3);
              lB2 = P[P_24][lB2] & 0xFF ^ b2(k3);
              lB3 = P[P_34][lB3] & 0xFF ^ b3(k3);
              /* falls through */
  
            case 3:
              lB0 = P[P_03][lB0] & 0xFF ^ b0(k2);
              lB1 = P[P_13][lB1] & 0xFF ^ b1(k2);
              lB2 = P[P_23][lB2] & 0xFF ^ b2(k2);
              lB3 = P[P_33][lB3] & 0xFF ^ b3(k2);
              /* falls through */
  
            case 2:
              result = MDS[0][P[P_01][P[P_02][lB0] & 0xFF ^ b0(k1)] & 0xFF ^ b0(k0)] ^
                       MDS[1][P[P_11][P[P_12][lB1] & 0xFF ^ b1(k1)] & 0xFF ^ b1(k0)] ^
                       MDS[2][P[P_21][P[P_22][lB2] & 0xFF ^ b2(k1)] & 0xFF ^ b2(k0)] ^
                       MDS[3][P[P_31][P[P_32][lB3] & 0xFF ^ b3(k1)] & 0xFF ^ b3(k0)];
              break;
  
            default:
          }
  
          return result;
        }