private void WriteHeader() { Write(FileImage.DOSHeader); // Console.WriteLine("Writing PEHeader at offset " + Seek(0,SeekOrigin.Current)); WritePEHeader(); // Console.WriteLine("Writing text section header at offset " + Hex.Long(Seek(0,SeekOrigin.Current))); text.WriteHeader(this, relocRVA); if (sdata != null) { sdata.WriteHeader(this, relocRVA); } if (rsrc != null) { rsrc.WriteHeader(this, relocRVA); } // Console.WriteLine("Writing reloc section header at offset " + Seek(0,SeekOrigin.Current)); WriteRelocSectionHeader(); // Console.WriteLine("Writing padding at offset " + Seek(0,SeekOrigin.Current)); WriteZeros(headerPadding); }