internal void ProcessBlock() { this.AdjustByteCounts(); for (int i = 16; i <= 79; i++) { this.W[i] = LongDigest.Sigma1(this.W[i - 2]) + this.W[i - 7] + LongDigest.Sigma0(this.W[i - 15]) + this.W[i - 16]; } ulong num = this.H1; ulong num2 = this.H2; ulong num3 = this.H3; ulong num4 = this.H4; ulong num5 = this.H5; ulong num6 = this.H6; ulong num7 = this.H7; ulong num8 = this.H8; int num9 = 0; for (int j = 0; j < 10; j++) { num8 += LongDigest.Sum1(num5) + LongDigest.Ch(num5, num6, num7) + LongDigest.K[num9] + this.W[num9++]; num4 += num8; num8 += LongDigest.Sum0(num) + LongDigest.Maj(num, num2, num3); num7 += LongDigest.Sum1(num4) + LongDigest.Ch(num4, num5, num6) + LongDigest.K[num9] + this.W[num9++]; num3 += num7; num7 += LongDigest.Sum0(num8) + LongDigest.Maj(num8, num, num2); num6 += LongDigest.Sum1(num3) + LongDigest.Ch(num3, num4, num5) + LongDigest.K[num9] + this.W[num9++]; num2 += num6; num6 += LongDigest.Sum0(num7) + LongDigest.Maj(num7, num8, num); num5 += LongDigest.Sum1(num2) + LongDigest.Ch(num2, num3, num4) + LongDigest.K[num9] + this.W[num9++]; num += num5; num5 += LongDigest.Sum0(num6) + LongDigest.Maj(num6, num7, num8); num4 += LongDigest.Sum1(num) + LongDigest.Ch(num, num2, num3) + LongDigest.K[num9] + this.W[num9++]; num8 += num4; num4 += LongDigest.Sum0(num5) + LongDigest.Maj(num5, num6, num7); num3 += LongDigest.Sum1(num8) + LongDigest.Ch(num8, num, num2) + LongDigest.K[num9] + this.W[num9++]; num7 += num3; num3 += LongDigest.Sum0(num4) + LongDigest.Maj(num4, num5, num6); num2 += LongDigest.Sum1(num7) + LongDigest.Ch(num7, num8, num) + LongDigest.K[num9] + this.W[num9++]; num6 += num2; num2 += LongDigest.Sum0(num3) + LongDigest.Maj(num3, num4, num5); num += LongDigest.Sum1(num6) + LongDigest.Ch(num6, num7, num8) + LongDigest.K[num9] + this.W[num9++]; num5 += num; num += LongDigest.Sum0(num2) + LongDigest.Maj(num2, num3, num4); } this.H1 += num; this.H2 += num2; this.H3 += num3; this.H4 += num4; this.H5 += num5; this.H6 += num6; this.H7 += num7; this.H8 += num8; this.wOff = 0; Array.Clear(this.W, 0, 16); }