src/crypto/cipher/cast5.js
function f1(d, m, r) {
    const t = m + d;
    const I = (t << r) | (t >>> (32 - r));
    return ((sBox[0][I >>> 24] ^ sBox[1][(I >>> 16) & 255]) - sBox[2][(I >>> 8) & 255]) + sBox[3][I & 255];
  }
function f1(d, m, r) {
    const t = m + d;
    const I = (t << r) | (t >>> (32 - r));
    return ((sBox[0][I >>> 24] ^ sBox[1][(I >>> 16) & 255]) - sBox[2][(I >>> 8) & 255]) + sBox[3][I & 255];
  }
function f1 ( d , m , r ) { const t = m + d ; const I = ( t << r ) | ( t >>> ( 32 - r ) ) ; return ( ( sBox [ 0 ] [ I >>> 24 ] ^ sBox [ 1 ] [ ( I >>> 16 ) & 255 ] ) - sBox [ 2 ] [ ( I >>> 8 ) & 255 ] ) + sBox [ 3 ] [ I & 255 ] ; }
These are the three 'f' functions. See RFC 2144, section 2.2.
These are the three f functions . See RFC 2144 section 2 . 2 .