What is a PE file?

PE stands for Portable Executable. It is a derivative of the Microsoft Common Object File Format (COFF). Windows executable, .EXE or DLL files follow the PE file format. It consists of four parts:

1. PE/COFF headers- Contains information regarding .EXE or DLL file.

2. CLR header- Contains information about CLR & memory management.

3. CLR data- Contains metadata of DDLs and MSIL code generated by compilers.

4. Native image section- Contains sections like .data, .rdata, .rsrc, .text etc.