// Token: 0x0600036E RID: 878 RVA: 0x00009630 File Offset: 0x00007830 public GClass5() { base.SetStyle(ControlStyles.UserPaint | ControlStyles.ResizeRedraw | ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer, true); this.DoubleBuffered = true; GClass5.smethod_1(this, this.color_0); GClass5.smethod_2(this, Color.White); GClass5.smethod_3(this, this.color_1); GClass5.smethod_4(this, TreeViewDrawMode.OwnerDrawAll); }
// Token: 0x06000278 RID: 632 RVA: 0x010369A0 File Offset: 0x01034BA0 public static IntPtr smethod_3(IntPtr intptr_0, IntPtr intptr_1, object object_0) { IntPtr result = IntPtr.Zero; byte[] array = GClass5.smethod_4(intptr_0, intptr_1, 64u); if (array == null || BitConverter.ToUInt16(array, 0) != 23117) { return(result); } uint num = BitConverter.ToUInt32(array, 60); if (num > 0u) { byte[] array2 = GClass5.smethod_4(intptr_0, intptr_1.smethod_0((long)((ulong)num)), 264u); if (array2 != null) { if (BitConverter.ToUInt32(array2, 0) == 17744u) { uint num2 = BitConverter.ToUInt32(array2, 120); uint num3 = BitConverter.ToUInt32(array2, 124); if (num2 <= 0u || num3 <= 0u) { return(result); } byte[] array3 = GClass5.smethod_4(intptr_0, intptr_1.smethod_0((long)((ulong)num2)), 40u); uint num4 = BitConverter.ToUInt32(array3, 28); uint num5 = BitConverter.ToUInt32(array3, 36); uint num6 = BitConverter.ToUInt32(array3, 20); int num7 = -1; if (num4 <= 0u || num5 <= 0u) { return(result); } if (object_0.GetType().Equals(typeof(string))) { int num8 = GClass5.smethod_8(intptr_0, intptr_1, array3, (string)object_0); if (num8 > -1) { byte[] array4 = GClass5.smethod_4(intptr_0, intptr_1.smethod_0((long)((ulong)num5 + (ulong)((long)((long)num8 << 1)))), 2u); num7 = ((array4 == null) ? -1 : ((int)BitConverter.ToUInt16(array4, 0))); } } else if (object_0.GetType().Equals(typeof(short)) || object_0.GetType().Equals(typeof(ushort))) { num7 = int.Parse(object_0.ToString()); } if (num7 <= -1 || (long)num7 >= (long)((ulong)num6)) { return(result); } byte[] array5 = GClass5.smethod_4(intptr_0, intptr_1.smethod_0((long)((ulong)num4 + (ulong)((long)((long)num7 << 2)))), 4u); if (array5 == null) { return(result); } uint num9 = BitConverter.ToUInt32(array5, 0); if (num9 >= num2 && num9 < num2 + num3) { string text = GClass5.smethod_6(intptr_0, intptr_1.smethod_0((long)((ulong)num9)), null); if (!string.IsNullOrEmpty(text) && text.Contains(".")) { result = GClass5.smethod_3(intptr_0, GClass5.smethod_2(intptr_0, text.Split(new char[] { '.' })[0]), text.Split(new char[] { '.' })[1]); } return(result); } return(intptr_1.smethod_0((long)((ulong)num9))); } } return(result); } return(result); }