Пример #1
0
    // Token: 0x06000283 RID: 643 RVA: 0x01036D10 File Offset: 0x01034F10
    private static int smethod_8(IntPtr intptr_0, IntPtr intptr_1, byte[] byte_0, string string_0)
    {
        uint num  = BitConverter.ToUInt32(byte_0, 24);
        uint num2 = BitConverter.ToUInt32(byte_0, 32);
        int  num3 = -1;

        if (num > 0u && num2 > 0u)
        {
            byte[] array = GClass5.smethod_4(intptr_0, intptr_1.smethod_0((long)((ulong)num2)), num << 2);
            if (array == null)
            {
                return(num3);
            }
            uint[] array2 = new uint[num];
            for (int i = 0; i < array2.Length; i++)
            {
                array2[i] = BitConverter.ToUInt32(array, i << 2);
            }
            int    j    = 0;
            int    num4 = array2.Length - 1;
            string text = string.Empty;
            while (j >= 0)
            {
                if (j > num4)
                {
                    break;
                }
                if (num3 != -1)
                {
                    break;
                }
                int num5 = (j + num4) / 2;
                text = GClass5.smethod_6(intptr_0, intptr_1.smethod_0((long)((ulong)array2[num5])), null);
                if (!text.Equals(string_0))
                {
                    if (string.CompareOrdinal(text, string_0) < 0)
                    {
                        j = num5 - 1;
                    }
                    else
                    {
                        num4 = num5 + 1;
                    }
                }
                else
                {
                    num3 = num5;
                }
            }
        }
        return(num3);
    }
Пример #2
0
    // Token: 0x0600036F RID: 879 RVA: 0x000096A4 File Offset: 0x000078A4
    protected virtual void OnPaint(PaintEventArgs e)
    {
        Bitmap    bitmap     = GClass5.smethod_7(GClass5.smethod_5(this), GClass5.smethod_6(this));
        Graphics  graphics   = GClass5.smethod_8(bitmap);
        Rectangle rectangle_ = new Rectangle(0, 0, GClass5.smethod_5(this), GClass5.smethod_6(this));

        GClass5.smethod_9(graphics, SmoothingMode.HighQuality);
        GClass5.smethod_10(graphics, PixelOffsetMode.HighQuality);
        GClass5.smethod_11(graphics, TextRenderingHint.ClearTypeGridFit);
        GClass5.smethod_13(graphics, GClass5.smethod_12(this));
        GClass5.smethod_15(graphics, GClass5.smethod_14(this.color_0), rectangle_);
        graphics.DrawString(GClass5.smethod_16(this), GClass5.smethod_17("Segoe UI", 8f), GClass5.smethod_18(), new Rectangle(this.method_0().X + 2, base.Bounds.Y + 2, base.Bounds.Width, base.Bounds.Height), GClass6.stringFormat_0);
        base.OnPaint(e);
        graphics.Dispose();
        e.Graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
        e.Graphics.DrawImageUnscaled(bitmap, 0, 0);
        bitmap.Dispose();
    }
Пример #3
0
    // 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);
    }