public uint method_2(Class63 class63_0) { uint num = (class63_0.uint_2 >> 11) * this.uint_1; if (class63_0.uint_1 < num) { class63_0.uint_2 = num; this.uint_1 += 2048u - this.uint_1 >> 5; if (class63_0.uint_2 < 16777216u) { class63_0.uint_1 = (class63_0.uint_1 << 8 | (uint)((byte)class63_0.stream_0.ReadByte())); class63_0.uint_2 <<= 8; } return(0u); } class63_0.uint_2 -= num; class63_0.uint_1 -= num; this.uint_1 -= this.uint_1 >> 5; if (class63_0.uint_2 < 16777216u) { class63_0.uint_1 = (class63_0.uint_1 << 8 | (uint)((byte)class63_0.stream_0.ReadByte())); class63_0.uint_2 <<= 8; } return(1u); }
public byte method_3(Class63 class63_0, byte byte_0) { uint num = 1u; for (; ;) { uint num2 = (uint)(byte_0 >> 7 & 1); byte_0 = (byte)(byte_0 << 1); uint num3 = this.struct12_0[(int)((1u + num2 << 8) + num)].method_2(class63_0); num = (num << 1 | num3); if (num2 != num3) { break; } if (num >= 256u) { goto IL_5C; } } while (num < 256u) { num = (num << 1 | this.struct12_0[(int)num].method_2(class63_0)); } IL_5C: return((byte)num); }
// Token: 0x06000276 RID: 630 RVA: 0x000187B8 File Offset: 0x000169B8 private static void smethod_5(byte[] byte_2, byte[] byte_3, int int_0, byte[] byte_4, int int_1, bool bool_0) { int num; int num2; if (bool_0) { num = 1; num2 = 0; } else { num = -1; num2 = 23; } ushort num3 = (ushort)(((int)byte_3[int_0] << 8) + (int)byte_3[int_0 + 1]); ushort num4 = (ushort)(((int)byte_3[int_0 + 2] << 8) + (int)byte_3[int_0 + 3]); for (int i = 0; i < 12; i++) { num4 ^= (ushort)((int)Class63.smethod_4(byte_2, num2, num3) ^ num2); num2 += num; num3 ^= (ushort)((int)Class63.smethod_4(byte_2, num2, num4) ^ num2); num2 += num; } byte_4[int_1] = (byte)(num4 >> 8); byte_4[int_1 + 1] = (byte)(num4 & 255); byte_4[int_1 + 2] = (byte)(num3 >> 8); byte_4[int_1 + 3] = (byte)(num3 & 255); }
public byte method_2(Class63 class63_0) { uint num = 1u; do { num = (num << 1 | this.struct12_0[(int)num].method_2(class63_0)); }while (num < 256u); return((byte)num); }
public uint method_1(Class63 class63_0) { uint num = 1u; for (int i = this.int_0; i > 0; i--) { num = (num << 1) + this.struct12_0[(int)num].method_2(class63_0); } return(num - (1u << this.int_0)); }
public static uint smethod_0(Struct12[] struct12_1, uint uint_0, Class63 class63_0, int int_1) { uint num = 1u; uint num2 = 0u; for (int i = 0; i < int_1; i++) { uint num3 = struct12_1[(int)(uint_0 + num)].method_2(class63_0); num <<= 1; num += num3; num2 |= num3 << i; } return(num2); }
public uint method_2(Class63 class63_0) { uint num = 1u; uint num2 = 0u; for (int i = 0; i < this.int_0; i++) { uint num3 = this.struct12_0[(int)num].method_2(class63_0); num <<= 1; num += num3; num2 |= num3 << i; } return(num2); }
// Token: 0x06000238 RID: 568 RVA: 0x000151E0 File Offset: 0x000133E0 public static bool smethod_0(Type type_0, Type type_1) { if (type_0 == type_1) { return(true); } if (type_0 == null || type_1 == null) { return(false); } if (type_0.IsByRef) { return(type_1.IsByRef && Class63.smethod_0(type_0.GetElementType(), type_1.GetElementType())); } if (type_1.IsByRef) { return(false); } if (type_0.IsPointer) { return(type_1.IsPointer && Class63.smethod_0(type_0.GetElementType(), type_1.GetElementType())); } if (type_1.IsPointer) { return(false); } if (type_0.IsArray) { return(type_1.IsArray && type_0.GetArrayRank() == type_1.GetArrayRank() && Class63.smethod_0(type_0.GetElementType(), type_1.GetElementType())); } if (type_1.IsArray) { return(false); } if (type_0.IsGenericType && !type_0.IsGenericTypeDefinition) { type_0 = type_0.GetGenericTypeDefinition(); } if (type_1.IsGenericType && !type_1.IsGenericTypeDefinition) { type_1 = type_1.GetGenericTypeDefinition(); } return(type_0 == type_1); }
// Token: 0x06000275 RID: 629 RVA: 0x0001874C File Offset: 0x0001694C private byte[] method_6(byte[] byte_2, bool bool_0) { if (byte_2 == null) { throw new ArgumentNullException(Class185.smethod_0(537697022)); } int num = byte_2.Length; if (num % 4 != 0) { throw new ArgumentOutOfRangeException(Class185.smethod_0(537697001), Class185.smethod_0(537696996)); } byte[] byte_3 = this.byte_0; byte[] array = new byte[num]; for (int i = 0; i < num; i += 4) { Class63.smethod_5(byte_3, byte_2, i, array, i, bool_0); } return(array); }
// Token: 0x06000275 RID: 629 RVA: 0x000163B0 File Offset: 0x000145B0 private byte[] method_6(byte[] byte_2, bool bool_0) { if (byte_2 == null) { throw new ArgumentNullException("\u0002"); } int num = byte_2.Length; if (num % 4 != 0) { throw new ArgumentOutOfRangeException("\u0002", "Invalid block size."); } byte[] byte_3 = this.byte_0; byte[] array = new byte[num]; for (int i = 0; i < num; i += 4) { Class63.smethod_5(byte_3, byte_2, i, array, i, bool_0); } return(array); }
static Class59() { Class63.smethod_0(); module_0 = typeof(Class59).Assembly.ManifestModule; }
public Class59() { Class63.smethod_0(); }
internal static extern uint GetFontUnicodeRanges(IntPtr hdc, [MarshalAs(UnmanagedType.LPStruct), Out] Class63 lpgs);
// Token: 0x06000273 RID: 627 RVA: 0x0000437C File Offset: 0x0000257C public int method_5(int int_0) { return(Class63.smethod_3(this.method_1(Class63.smethod_2(int_0)))); }
// Token: 0x06000271 RID: 625 RVA: 0x00004356 File Offset: 0x00002556 public uint method_3(uint uint_0) { return(Class63.smethod_1(this.method_1(Class63.smethod_0(uint_0)))); }
// Token: 0x06001462 RID: 5218 RVA: 0x00025250 File Offset: 0x00023450 public void EndOfStream(int Result) { Class63 class63_ = new Class63(Result); this.class24_0.method_46(this.class24_0, class63_); }