a = rotateLeft(a + F(b, c, d) + X[ 0], S11); d = rotateLeft(d + F(a, b, c) + X[ 1], S12); c = rotateLeft(c + F(d, a, b) + X[ 2], S13); b = rotateLeft(b + F(c, d, a) + X[ 3], S14); a = rotateLeft(a + F(b, c, d) + X[ 4], S11); d = rotateLeft(d + F(a, b, c) + X[ 5], S12); c = rotateLeft(c + F(d, a, b) + X[ 6], S13); b = rotateLeft(b + F(c, d, a) + X[ 7], S14); a = rotateLeft(a + F(b, c, d) + X[ 8], S11); d = rotateLeft(d + F(a, b, c) + X[ 9], S12); c = rotateLeft(c + F(d, a, b) + X[10], S13); b = rotateLeft(b + F(c, d, a) + X[11], S14); a = rotateLeft(a + F(b, c, d) + X[12], S11); d = rotateLeft(d + F(a, b, c) + X[13], S12); c = rotateLeft(c + F(d, a, b) + X[14], S13); b = rotateLeft(b + F(c, d, a) + X[15], S14);
a = rotateLeft(a + F(b, c, d) + X[ 0], S11); d = rotateLeft(d + F(a, b, c) + X[ 1], S12); c = rotateLeft(c + F(d, a, b) + X[ 2], S13); b = rotateLeft(b + F(c, d, a) + X[ 3], S14); a = rotateLeft(a + F(b, c, d) + X[ 4], S11); d = rotateLeft(d + F(a, b, c) + X[ 5], S12); c = rotateLeft(c + F(d, a, b) + X[ 6], S13); b = rotateLeft(b + F(c, d, a) + X[ 7], S14); a = rotateLeft(a + F(b, c, d) + X[ 8], S11); d = rotateLeft(d + F(a, b, c) + X[ 9], S12); c = rotateLeft(c + F(d, a, b) + X[10], S13); b = rotateLeft(b + F(c, d, a) + X[11], S14); a = rotateLeft(a + F(b, c, d) + X[12], S11); d = rotateLeft(d + F(a, b, c) + X[13], S12); c = rotateLeft(c + F(d, a, b) + X[14], S13); b = rotateLeft(b + F(c, d, a) + X[15], S14);