| Safe Haskell | None |
|---|
Data.PE.Structures
- data PEFile = PEFile {}
- data PEObject = PEObj {}
- data BinSection = BinSection {
- secname :: String
- binSection :: ByteString
- data PEObjectHeader = PEObjHdr {
- objcoffhdr :: COFFHeader
- objsectionTables :: [(SectionTable, ByteString)]
- data PEHeader = PEHeader {
- msdosHeader :: MSDOSHeader
- peSignature :: PESignature
- coffHeader :: COFFHeader
- standardFields :: StandardFields
- windowsSpecFields :: WindowsSpecFields
- dataDirectories :: [DirectoryEntry]
- sectionTables :: [(SectionTable, ByteString)]
- data MSDOSHeader = MSDOSHeader {
- signature :: Word16
- lastsize :: Word16
- pagesInFile :: Word16
- relocations :: Word16
- headerSizeInParagraph :: Word16
- minExtraParagraphs :: Word16
- maxExtraParagraphs :: Word16
- ss :: Word16
- sp :: Word16
- checksum :: Word16
- ip :: Word16
- cs :: Word16
- relocTableOffset :: Word16
- overlayNumber :: Word16
- oemIdentifier :: Word16
- oemInformation :: Word16
- offset :: Word32
- data PESignature = PESignature {
- pesignature :: Word32
- data COFFHeader = COFFHeader {
- targetMachine :: MachineType
- numberOfSections :: Word16
- timeDateStamp :: Word32
- pointerToSymbolTable :: Word32
- numberOfSymbols :: Word32
- sizeofOptionalHeaders :: Word16
- coffCharacteristics :: Word16
- data StandardFields
- = StandardFields {
- standardSig :: Word16
- lnMajorVersion :: Word8
- lnMinorVersion :: Word8
- sizeOfCode :: Word32
- sizeOfInitializedData :: Word32
- sizeOfUninitData :: Word32
- addressOfEntryPoint :: Word32
- baseOfCode :: Word32
- baseOfData :: Word32
- | SFPlus {
- standardSig :: Word16
- lnMajorVersion :: Word8
- lnMinorVersion :: Word8
- sizeOfCode :: Word32
- sizeOfInitializedData :: Word32
- sizeOfUninitData :: Word32
- addressOfEntryPoint :: Word32
- baseOfCode :: Word32
- = StandardFields {
- data WindowsSpecFields
- = WindowsSpecFields {
- imageBase :: Word32
- sectionAlignment :: Word32
- fileAlignment :: Word32
- majorOSVersion :: Word16
- minorOSVersion :: Word16
- majorImageVersion :: Word16
- minorImageVersion :: Word16
- majorSubSystemVersion :: Word16
- minorSubSystemVersion :: Word16
- win32VersionValue :: Word32
- sizeOfImage :: Word32
- sizeOfHeaders :: Word32
- checkSum32 :: Word32
- checkSum16 :: Word16
- dllCharacteristics :: Word16
- sizeOfStackReserve :: Word32
- sizeOfStackCommit :: Word32
- sizeOfHeapReserve :: Word32
- sizeOfHeapCommit :: Word32
- loaderFlags :: Word32
- numberOfRVAandSizes :: Word32
- | WSFPlus {
- imgBase :: Word64
- sectionAlignment :: Word32
- fileAlignment :: Word32
- majorOSVersion :: Word16
- minorOSVersion :: Word16
- majorImageVersion :: Word16
- minorImageVersion :: Word16
- majorSubSystemVersion :: Word16
- minorSubSystemVersion :: Word16
- win32VersionValue :: Word32
- sizeOfImage :: Word32
- sizeOfHeaders :: Word32
- checkSum32 :: Word32
- checkSum16 :: Word16
- dllCharacteristics :: Word16
- szOfStackReserve :: Word64
- szOfStackCommit :: Word64
- szOfHeapReserve :: Word64
- szOfHeapCommit :: Word64
- loaderFlags :: Word32
- numberOfRVAandSizes :: Word32
- = WindowsSpecFields {
- data DirectoryEntry = DirEntry {
- virtualAddr :: Word32
- entrySize :: Word32
- data SectionTable = SectionTable {
- sectionHeaderName :: String
- virtualSize :: Word32
- virtualAddress :: Word32
- sizeOfRawData :: Word32
- pointerToRawData :: Word32
- pointerToRelocations :: Word32
- pointerToLineNumbers :: Word32
- numberOfRelocations :: Word16
- numberOfLineNumbers :: Word16
- secCharacteristics :: Word32
- data MachineType
- mapMachine :: Word16 -> MachineType
- getAStr :: Get String
Documentation
The over-arching container. Holds the headers and a list of binary sections
Instances
| Show PEFile |
data BinSection Source
The Binary Section container. Holds names and containers.
Constructors
| BinSection | |
Fields
| |
Instances
| Show BinSection |
data PEObjectHeader Source
Constructors
| PEObjHdr | |
Fields
| |
Instances
| Show PEObjectHeader |
The Header section, holds entries for each header in the PE File
Constructors
| PEHeader | |
Fields
| |
Instances
| Show PEHeader |
data MSDOSHeader Source
Constructors
| MSDOSHeader | |
Fields
| |
Instances
| Show MSDOSHeader |
data PESignature Source
Constructors
| PESignature | |
Fields
| |
Instances
| Show PESignature |
data COFFHeader Source
Constructors
| COFFHeader | |
Fields
| |
Instances
| Show COFFHeader |
data StandardFields Source
Constructors
| StandardFields | |
Fields
| |
| SFPlus | |
Fields
| |
Instances
| Show StandardFields |
data WindowsSpecFields Source
Constructors
Instances
| Show WindowsSpecFields |
data DirectoryEntry Source
Constructors
| DirEntry | |
Fields
| |
Instances
| Show DirectoryEntry | |
| Binary DirectoryEntry |
data SectionTable Source
Constructors
| SectionTable | |
Fields
| |
Instances
| Show SectionTable | |
| Binary SectionTable |
data MachineType Source
Constructors
| UNKNOWN | |
| AM33 | |
| AMD64 | |
| ARM | |
| ARMV7 | |
| EBC | |
| I386 | |
| IA64 | |
| M32R | |
| MIPS16 | |
| MIPSFPU | |
| MIPSFPU16 | |
| PPC | |
| PPCFP | |
| R4000 | |
| SH3 | |
| SH3DSP | |
| SH4 | |
| SH5 | |
| THUMB | |
| WCE | |
| INVALID |
Instances
| Show MachineType | |
| Binary MachineType |
mapMachine :: Word16 -> MachineTypeSource