private void ProcessBlock(byte[] inputBuffer, uint inputOffset)
{
this.count += 64UL;
uint[] h = this._H;
uint[] array = this.buff;
SHA1Internal.InitialiseBuff(array, inputBuffer, inputOffset);
SHA1Internal.FillBuff(array);
uint num = h[0];
uint num2 = h[1];
uint num3 = h[2];
uint num4 = h[3];
uint num5 = h[4];
int i;
for (i = 0; i < 20; i += 5)
{
num5 += (num << 5 | num >> 27) + (((num3 ^ num4) & num2) ^ num4) + 1518500249u + array[i];
num2 = (num2 << 30 | num2 >> 2);
num4 += (num5 << 5 | num5 >> 27) + (((num2 ^ num3) & num) ^ num3) + 1518500249u + array[i + 1];
num = (num << 30 | num >> 2);
num3 += (num4 << 5 | num4 >> 27) + (((num ^ num2) & num5) ^ num2) + 1518500249u + array[i + 2];
num5 = (num5 << 30 | num5 >> 2);
num2 += (num3 << 5 | num3 >> 27) + (((num5 ^ num) & num4) ^ num) + 1518500249u + array[i + 3];
num4 = (num4 << 30 | num4 >> 2);
num += (num2 << 5 | num2 >> 27) + (((num4 ^ num5) & num3) ^ num5) + 1518500249u + array[i + 4];
num3 = (num3 << 30 | num3 >> 2);
}
while (i < 40)
{
num5 += (num << 5 | num >> 27) + (num2 ^ num3 ^ num4) + 1859775393u + array[i];
num2 = (num2 << 30 | num2 >> 2);
num4 += (num5 << 5 | num5 >> 27) + (num ^ num2 ^ num3) + 1859775393u + array[i + 1];
num = (num << 30 | num >> 2);
num3 += (num4 << 5 | num4 >> 27) + (num5 ^ num ^ num2) + 1859775393u + array[i + 2];
num5 = (num5 << 30 | num5 >> 2);
num2 += (num3 << 5 | num3 >> 27) + (num4 ^ num5 ^ num) + 1859775393u + array[i + 3];
num4 = (num4 << 30 | num4 >> 2);
num += (num2 << 5 | num2 >> 27) + (num3 ^ num4 ^ num5) + 1859775393u + array[i + 4];
num3 = (num3 << 30 | num3 >> 2);
i += 5;
}
while (i < 60)
{
num5 += (num << 5 | num >> 27) + ((num2 & num3) | (num2 & num4) | (num3 & num4)) + 2400959708u + array[i];
num2 = (num2 << 30 | num2 >> 2);
num4 += (num5 << 5 | num5 >> 27) + ((num & num2) | (num & num3) | (num2 & num3)) + 2400959708u + array[i + 1];
num = (num << 30 | num >> 2);
num3 += (num4 << 5 | num4 >> 27) + ((num5 & num) | (num5 & num2) | (num & num2)) + 2400959708u + array[i + 2];
num5 = (num5 << 30 | num5 >> 2);
num2 += (num3 << 5 | num3 >> 27) + ((num4 & num5) | (num4 & num) | (num5 & num)) + 2400959708u + array[i + 3];
num4 = (num4 << 30 | num4 >> 2);
num += (num2 << 5 | num2 >> 27) + ((num3 & num4) | (num3 & num5) | (num4 & num5)) + 2400959708u + array[i + 4];
num3 = (num3 << 30 | num3 >> 2);
i += 5;
}
while (i < 80)
{
num5 += (num << 5 | num >> 27) + (num2 ^ num3 ^ num4) + 3395469782u + array[i];
num2 = (num2 << 30 | num2 >> 2);
num4 += (num5 << 5 | num5 >> 27) + (num ^ num2 ^ num3) + 3395469782u + array[i + 1];
num = (num << 30 | num >> 2);
num3 += (num4 << 5 | num4 >> 27) + (num5 ^ num ^ num2) + 3395469782u + array[i + 2];
num5 = (num5 << 30 | num5 >> 2);
num2 += (num3 << 5 | num3 >> 27) + (num4 ^ num5 ^ num) + 3395469782u + array[i + 3];
num4 = (num4 << 30 | num4 >> 2);
num += (num2 << 5 | num2 >> 27) + (num3 ^ num4 ^ num5) + 3395469782u + array[i + 4];
num3 = (num3 << 30 | num3 >> 2);
i += 5;
}
h[0] += num;
h[1] += num2;
h[2] += num3;
h[3] += num4;
h[4] += num5;
}