Mono.Cecil.PE.ImageWriter.PrepareSection C# (CSharp) Method

PrepareSection() private method

private PrepareSection ( Section section ) : void
section Section
return void
        void PrepareSection(Section section)
        {
            MoveTo (section.PointerToRawData);

            const int buffer_size = 4096;

            if (section.SizeOfRawData <= buffer_size) {
                Write (new byte [section.SizeOfRawData]);
                MoveTo (section.PointerToRawData);
                return;
            }

            var written = 0;
            var buffer = new byte [buffer_size];
            while (written != section.SizeOfRawData) {
                var write_size = System.Math.Min((int) section.SizeOfRawData - written, buffer_size);
                Write (buffer, 0, write_size);
                written += write_size;
            }

            MoveTo (section.PointerToRawData);
        }