コード例 #1
0
    public bool method_5()
    {
        object obj2;
        bool   flag;

        Monitor.Enter(obj2 = this.object_1);
        try
        {
            if (!this.bool_0)
            {
                return(false);
            }
            this.int_4++;
            Class53 class3 = new Class53 {
                int_0 = this.int_3,
                int_6 = this.int_4,
                int_7 = this.int_0,
                int_8 = this.int_1,
                int_9 = 0
            };
            byte[] src = class3.method_0();
            byte[] dst = new byte[4 + src.Length];
            Buffer.BlockCopy(BitConverter.GetBytes(this.int_7), 0, dst, 0, 4);
            Buffer.BlockCopy(src, 0, dst, 4, src.Length);
            byte[] buffer5 = this.method_9(dst, this.string_0);
            byte[] buffer6 = new byte[buffer5.Length + 8];
            byte[] bytes   = BitConverter.GetBytes(buffer5.Length);
            byte[] buffer8 = BitConverter.GetBytes(this.int_0);
            Buffer.BlockCopy(bytes, 0, buffer6, 0, 4);
            Buffer.BlockCopy(buffer8, 0, buffer6, 4, 4);
            Buffer.BlockCopy(buffer5, 0, buffer6, 8, buffer5.Length);
            this.object_0.Write(buffer6, 0, buffer6.Length);
            int    num      = BitConverter.ToInt32(this.method_7((NetworkStream)this.object_0, 8), 0);
            byte[] buffer10 = this.method_7((NetworkStream)this.object_0, num);
            byte[] buffer   = this.method_10(buffer10, this.string_0);
            if (BitConverter.ToInt32(buffer, 0) != this.int_8)
            {
                return(false);
            }
            Class54 class2 = Class54.smethod_0(buffer, 4);
            if (class2.int_3 != class3.int_6)
            {
                return(false);
            }
            flag = this.bool_1 = class2.int_4 == 1;
        }
        catch (Exception)
        {
            this.method_3();
            flag = false;
        }
        finally
        {
            Monitor.Exit(obj2);
        }
        return(flag);
    }