200 {
202 {
204 {
205 return;
206 }
209 {
212 }
213 fixed (
byte* ptr =
array)
214 {
215 char* ptr2 = (char*)ptr;
216 int num = 0;
217 while (num < 65536)
218 {
220 ptr2++;
221 switch (c)
222 {
223 case '\u0001':
225 ptr2++;
226 break;
227 case '\u0002':
228 case '\u0003':
229 case '\u0004':
230 case '\u0005':
231 case '\u0006':
232 case '\a':
233 case '\b':
234 case '\t':
235 case '\n':
236 case '\v':
237 case '\f':
238 case '\r':
239 case '\u000e':
240 case '\u000f':
241 case '\u0010':
242 case '\u0011':
243 case '\u0012':
244 case '\u0013':
245 case '\u0014':
246 case '\u0015':
247 case '\u0016':
248 case '\u0017':
249 case '\u0018':
250 case '\u0019':
251 case '\u001a':
252 case '\u001b':
253 case '\u001c':
254 case '\u001d':
255 case '\u001e':
256 case '\u001f':
257 num += c;
258 break;
259 default:
260 num++;
261 break;
262 }
263 }
264 char* ptr3 = ptr2;
265 int num2 = 0;
267 ptr2++;
268 while (num < 65536)
269 {
271 ptr2++;
272 switch (c2)
273 {
274 case '\u0001':
276 ptr2++;
277 continue;
278 case '\u0002':
279 case '\u0003':
280 case '\u0004':
281 case '\u0005':
282 case '\u0006':
283 case '\a':
284 case '\b':
285 case '\t':
286 case '\n':
287 case '\v':
288 case '\f':
289 case '\r':
290 case '\u000e':
291 case '\u000f':
292 case '\u0010':
293 case '\u0011':
294 case '\u0012':
295 case '\u0013':
296 case '\u0014':
297 case '\u0015':
298 case '\u0016':
299 case '\u0017':
300 case '\u0018':
301 case '\u0019':
302 case '\u001a':
303 case '\u001b':
304 case '\u001c':
305 case '\u001d':
306 case '\u001e':
307 case '\u001f':
308 num += c2;
309 continue;
310 }
311 if (c2 != '\ufffd')
312 {
315 {
316 num2++;
317 }
318 }
319 num++;
320 }
321 char[] array2 = new char[num2 * 2];
322 num2 = 0;
323 ptr2 = ptr3;
325 ptr2++;
326 bool flag = false;
327 while (num < 65536)
328 {
330 ptr2++;
331 switch (c3)
332 {
333 case '\u0001':
335 ptr2++;
336 continue;
337 case '\u0002':
338 case '\u0003':
339 case '\u0004':
340 case '\u0005':
341 case '\u0006':
342 case '\a':
343 case '\b':
344 case '\t':
345 case '\n':
346 case '\v':
347 case '\f':
348 case '\r':
349 case '\u000e':
350 case '\u000f':
351 case '\u0010':
352 case '\u0011':
353 case '\u0012':
354 case '\u0013':
355 case '\u0014':
356 case '\u0015':
357 case '\u0016':
358 case '\u0017':
359 case '\u0018':
360 case '\u0019':
361 case '\u001a':
362 case '\u001b':
363 case '\u001c':
364 case '\u001d':
365 case '\u001e':
366 case '\u001f':
367 num += c3;
368 continue;
369 }
370 if (c3 != '\ufffd')
371 {
372 int bytes2 = num;
374 {
375 if (bytes2 != num)
376 {
377 flag = true;
378 }
379 array2[num2++] = (char)bytes2;
380 array2[num2++] = c3;
381 }
382 }
383 num++;
384 }
385 if (flag)
386 {
387 for (
int i = 0;
i < array2.Length - 2;
i += 2)
388 {
391 for (int j = i + 2; j < array2.Length; j += 2)
392 {
393 if (c4 > array2[j])
394 {
395 c4 = array2[j];
396 num3 = j;
397 }
398 }
399 if (num3 != i)
400 {
401 char c5 = array2[num3];
402 array2[num3] = array2[
i];
404 c5 = array2[num3 + 1];
405 array2[num3 + 1] = array2[
i + 1];
407 }
408 }
409 }
411 char* ptr4 = ptr2;
413 num2 = 0;
414 while (num4 < 65536)
415 {
417 ptr2++;
418 switch (c6)
419 {
420 case '\u0001':
422 ptr2++;
423 continue;
424 case '\u0002':
425 case '\u0003':
426 case '\u0004':
427 case '\u0005':
428 case '\u0006':
429 case '\a':
430 case '\b':
431 case '\t':
432 case '\n':
433 case '\v':
434 case '\f':
435 case '\r':
436 case '\u000e':
437 case '\u000f':
438 case '\u0010':
439 case '\u0011':
440 case '\u0012':
441 case '\u0013':
442 case '\u0014':
443 case '\u0015':
444 case '\u0016':
445 case '\u0017':
446 case '\u0018':
447 case '\u0019':
448 case '\u001a':
449 case '\u001b':
450 case '\u001c':
451 case '\u001d':
452 case '\u001e':
453 case '\u001f':
454 num4 += c6;
455 continue;
456 }
457 if (c6 > '\0')
458 {
459 num2++;
460 }
461 num4++;
462 }
463 array2 = new char[num2 * 2];
464 ptr2 = ptr4;
466 num2 = 0;
467 while (num4 < 65536)
468 {
470 ptr2++;
471 switch (c7)
472 {
473 case '\u0001':
475 ptr2++;
476 continue;
477 case '\u0002':
478 case '\u0003':
479 case '\u0004':
480 case '\u0005':
481 case '\u0006':
482 case '\a':
483 case '\b':
484 case '\t':
485 case '\n':
486 case '\v':
487 case '\f':
488 case '\r':
489 case '\u000e':
490 case '\u000f':
491 case '\u0010':
492 case '\u0011':
493 case '\u0012':
494 case '\u0013':
495 case '\u0014':
496 case '\u0015':
497 case '\u0016':
498 case '\u0017':
499 case '\u0018':
500 case '\u0019':
501 case '\u001a':
502 case '\u001b':
503 case '\u001c':
504 case '\u001d':
505 case '\u001e':
506 case '\u001f':
507 num4 += c7;
508 continue;
509 }
510 if (c7 > '\0')
511 {
512 int bytes3 = c7;
514 {
515 array2[num2++] = (char)num4;
517 }
518 }
519 num4++;
520 }
522 }
523 }
524 }
BaseCodePageEncoding(int codepage, int dataCodePage)
int m_firstDataWordOffset
char[] arrayUnicodeBestFit
static unsafe char ReadChar(char *pChar)
virtual bool CleanUpBytes(ref int bytes)
unsafe char * mapBytesToUnicode
static object InternalSyncObject