Advance() public method

public Advance ( int length ) : void
length int
return void
コード例 #1
0
        private void PatchResourceDirectoryTable(ByteBuffer resources)
        {
            resources.Advance(12);
            int num = resources.ReadUInt16() + resources.ReadUInt16();

            for (int i = 0; i < num; i++)
            {
                this.PatchResourceDirectoryEntry(resources);
            }
        }
コード例 #2
0
        void PatchResourceDirectoryTable(ByteBuffer resources)
        {
            resources.Advance(12);

            var entries = resources.ReadUInt16() + resources.ReadUInt16();

            for (int i = 0; i < entries; i++)
            {
                PatchResourceDirectoryEntry(resources);
            }
        }
コード例 #3
0
        private void PatchResourceDirectoryEntry(ByteBuffer resources)
        {
            resources.Advance(4);
            uint num      = resources.ReadUInt32();
            int  position = resources.position;

            resources.position = ((int)num) & 0x7fffffff;
            if ((num & 0x80000000) != 0)
            {
                this.PatchResourceDirectoryTable(resources);
            }
            else
            {
                this.PatchResourceDataEntry(resources);
            }
            resources.position = position;
        }
コード例 #4
0
        private void PatchResourceDirectoryEntry(ByteBuffer resources)
        {
            resources.Advance(4);
            uint num  = resources.ReadUInt32();
            int  num1 = resources.position;

            resources.position = (int)(num & 2147483647);
            if ((num & -2147483648) == 0)
            {
                this.PatchResourceDataEntry(resources);
            }
            else
            {
                this.PatchResourceDirectoryTable(resources);
            }
            resources.position = num1;
        }
コード例 #5
0
        private void PatchResourceDirectoryEntry(ByteBuffer resources)
        {
            resources.Advance(4);
            uint num      = resources.ReadUInt32();
            int  position = resources.position;

            resources.position = (int)(num & 0x7FFFFFFF);
            if (((int)num & -2147483648) != 0)
            {
                PatchResourceDirectoryTable(resources);
            }
            else
            {
                PatchResourceDataEntry(resources);
            }
            resources.position = position;
        }
コード例 #6
0
        void PatchResourceDirectoryEntry(ByteBuffer resources)
        {
            resources.Advance(4);
            var child = resources.ReadUInt32();

            var position = resources.position;

            resources.position = (int)child & 0x7fffffff;

            if ((child & 0x80000000) != 0)
            {
                PatchResourceDirectoryTable(resources);
            }
            else
            {
                PatchResourceDataEntry(resources);
            }

            resources.position = position;
        }
コード例 #7
0
ファイル: ImageWriter.cs プロジェクト: buraksarica/cecil
        void PatchResourceDirectoryTable(ByteBuffer resources)
        {
            resources.Advance (12);

            var entries = resources.ReadUInt16 () + resources.ReadUInt16 ();

            for (int i = 0; i < entries; i++)
                PatchResourceDirectoryEntry (resources);
        }
コード例 #8
0
ファイル: ImageWriter.cs プロジェクト: buraksarica/cecil
        void PatchResourceDirectoryEntry(ByteBuffer resources)
        {
            resources.Advance (4);
            var child = resources.ReadUInt32 ();

            var position = resources.position;
            resources.position = (int) child & 0x7fffffff;

            if ((child & 0x80000000) != 0)
                PatchResourceDirectoryTable (resources);
            else
                PatchResourceDataEntry (resources);

            resources.position = position;
        }
コード例 #9
0
ファイル: Packer.cs プロジェクト: n017/Confuser
 static void PatchResourceDirectoryTable(ByteBuffer resources, Section old, Section @new)
 {
     resources.Advance(12);
     int num = resources.ReadUInt16() + resources.ReadUInt16();
     for (int i = 0; i < num; i++)
     {
         PatchResourceDirectoryEntry(resources, old, @new);
     }
 }
コード例 #10
0
ファイル: Packer.cs プロジェクト: n017/Confuser
 static void PatchResourceDirectoryEntry(ByteBuffer resources, Section old, Section @new)
 {
     resources.Advance(4);
     uint num = resources.ReadUInt32();
     int position = resources.Position;
     resources.Position = ((int)num) & 0x7fffffff;
     if ((num & 0x80000000) != 0)
     {
         PatchResourceDirectoryTable(resources, old, @new);
     }
     else
     {
         PatchResourceDataEntry(resources, old, @new);
     }
     resources.Position = position;
 }
コード例 #11
0
ファイル: ImageWriter.cs プロジェクト: hjlfmy/cecil
        void PatchResourceDirectoryTable(ByteBuffer resources)
        {
            if (!resources.SizeAvailable (16))
                return;
            resources.Advance (12);

            var entries = resources.ReadUInt16 () + resources.ReadUInt16 ();

            for (int i = 0; i < entries; i++)
                PatchResourceDirectoryEntry (resources);
        }