Mask first byte (#5403)
Mask first byte (#5403)

This is to fix dotnet/runtime#37333.

It is not entirely clear that we need to mask out the first byte. If a handshake starts with 5F or 60, it will clearly fail, but it is possible we don't need to do that anymore because that was originally made true to avoid mixing with an older implementation of handshakes. In other words, a better change might be to remove our special-casing on those two bytes. This restores masking the first byte, as the previous implementation did, so it is a better short-term solution.
sean-gilliam/msbuild,rainersigwald/msbuild,cdmihai/msbuild,cdmihai/msbuild,cdmihai/msbuild,AndyGerlicher/msbuild,AndyGerlicher/msbuild,cdmihai/msbuild,mono/msbuild,sean-gilliam/msbuild,sean-gilliam/msbuild,AndyGerlicher/msbuild,sean-gilliam/msbuild,rainersigwald/msbuild,mono/msbuild,mono/msbuild,AndyGerlicher/msbuild,mono/msbuild,rainersigwald/msbuild,rainersigwald/msbuild