57 {
58 byte* ptr = pBuffer;
60 {
63 {
64 byte* ptr2 = pBuffer + bufferLength -
count;
65 pBuffer = (
byte*)((nuint)(pBuffer +
count) & ~(nuint)(
count - 1));
67 {
69 if (pBuffer > ptr2)
70 {
71 break;
72 }
73 }
74 bufferLength -= (nuint)pBuffer;
75 bufferLength = (nuint)(bufferLength + ptr);
76 }
77 }
78 while (true)
79 {
80 uint num;
81 if (bufferLength >= 8)
82 {
83 num =
Unsafe.ReadUnaligned<uint>(pBuffer);
84 uint num2 =
Unsafe.ReadUnaligned<uint>(pBuffer + 4);
86 {
88 {
89 num = num2;
90 pBuffer += 4;
91 }
92 goto IL_0100;
93 }
94 pBuffer += 8;
95 bufferLength -= 8;
96 continue;
97 }
98 if ((bufferLength & 4) != 0)
99 {
100 num =
Unsafe.ReadUnaligned<uint>(pBuffer);
102 {
103 goto IL_0100;
104 }
105 pBuffer += 4;
106 }
107 if ((bufferLength & 2) != 0)
108 {
109 num =
Unsafe.ReadUnaligned<ushort>(pBuffer);
111 {
112 goto IL_0100;
113 }
114 pBuffer += 2;
115 }
116 if ((bufferLength & 1) != 0 && *pBuffer >= 0)
117 {
118 pBuffer++;
119 }
120 break;
121 IL_0100:
123 break;
124 }
125 return (nuint)(pBuffer - (nuint)ptr);
126 }
static bool IsHardwareAccelerated
static uint CountNumberOfLeadingAsciiBytesFromUInt32WithSomeNonAsciiData(uint value)
static bool AllBytesInUInt32AreAscii(uint value)