117 {
118 byte* ptr = (byte*)outPtr;
119 byte* ptr2 = ptr + 12;
120 ptr += whereToAddId;
121 if (ptr2 <= ptr)
122 {
123 return 13;
124 }
125 if (0 < id && id <= 10 && !overflow)
126 {
128 }
129 else
130 {
131 uint num = 4u;
132 if (id <= 255)
133 {
134 num = 1u;
135 }
136 else if (id <= 65535)
137 {
138 num = 2u;
139 }
140 else if (id <= 16777215)
141 {
142 num = 3u;
143 }
144 if (overflow)
145 {
146 if (ptr2 <= ptr + 2)
147 {
148 return 13;
149 }
151 }
153 if (ptr < ptr2 && *ptr != 0)
154 {
155 if (id < 4096)
156 {
157 *ptr = (byte)(192 + (id >> 8));
158 id &= 0xFFu;
159 }
160 ptr++;
161 }
162 while (0 < num)
163 {
164 if (ptr2 <= ptr)
165 {
166 ptr++;
167 break;
168 }
169 *(ptr++) = (byte)id;
170 id >>= 8;
171 num--;
172 }
173 }
174 *(int*)((byte*)outPtr + (nint)3 * (nint)4) = (int)(*(uint*)outPtr + *(uint*)((byte*)outPtr + 4) + *(uint*)((byte*)outPtr + (nint)2 * (nint)4) + 1503500717) ^ Environment.ProcessId;
175 return (int)(ptr - (byte*)outPtr);
176 }
static unsafe void WriteNibble(ref byte *ptr, byte *endPtr, uint value)