Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used to get a LIEF::PE::Binary.  
 More...
#include <Parser.hpp>
Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used to get a LIEF::PE::Binary. 
 
◆ Parser()
  
  
      
        
          | LIEF::PE::Parser::Parser  | 
          ( | 
          const Parser & |           copy | ) | 
           | 
         
       
   | 
  
delete   | 
  
 
 
◆ add_non_resolved()
  
  
      
        
          | void LIEF::PE::Parser::add_non_resolved  | 
          ( | 
          ExceptionInfo & |           info,  | 
         
        
           | 
           | 
          uint32_t |           target ) | 
         
       
   | 
  
inline   | 
  
 
 
◆ bin() [1/2]
  
  
      
        
          | Binary & LIEF::PE::Parser::bin  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ bin() [2/2]
  
  
      
        
          | const Binary & LIEF::PE::Parser::bin  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ config()
◆ find_coff_string()
      
        
          | COFF::String * LIEF::PE::Parser::find_coff_string  | 
          ( | 
          uint32_t |           offset | ) | 
           const | 
        
      
 
 
◆ find_exception_info()
  
  
      
        
          | ExceptionInfo * LIEF::PE::Parser::find_exception_info  | 
          ( | 
          uint32_t |           rva | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ is_valid_dll_name()
  
  
      
        
          | bool LIEF::PE::Parser::is_valid_dll_name  | 
          ( | 
          const std::string & |           name | ) | 
           | 
         
       
   | 
  
static   | 
  
 
Check if the given name is a valid DLL name. 
This check verifies that:
- The name of the DLL is at 4
 
- All the characters are printable 
 
 
 
◆ is_valid_import_name()
  
  
      
        
          | bool LIEF::PE::Parser::is_valid_import_name  | 
          ( | 
          const std::string & |           name | ) | 
           | 
         
       
   | 
  
static   | 
  
 
 
◆ memoize() [1/2]
◆ memoize() [2/2]
◆ operator=()
◆ parse() [1/4]
◆ parse() [2/4]
◆ parse() [3/4]
◆ parse() [4/4]
◆ record_delta_relocation()
      
        
          | ok_error_t LIEF::PE::Parser::record_delta_relocation  | 
          ( | 
          uint32_t |           rva,  | 
        
        
           | 
           | 
          int64_t |           delta,  | 
        
        
           | 
           | 
          size_t |           size ) | 
        
      
 
 
◆ record_relocation()
      
        
          | void LIEF::PE::Parser::record_relocation  | 
          ( | 
          uint32_t |           rva,  | 
        
        
           | 
           | 
          span< const uint8_t > |           data ) | 
        
      
 
 
◆ stream()
◆ stream_from_rva()
      
        
          | std::unique_ptr< SpanStream > LIEF::PE::Parser::stream_from_rva  | 
          ( | 
          uint32_t |           rva,  | 
        
        
           | 
           | 
          size_t |           size = 0 ) | 
        
      
 
 
◆ MAX_DATA_SIZE
  
  
      
        
          | size_t LIEF::PE::Parser::MAX_DATA_SIZE = 3_GB | 
         
       
   | 
  
staticconstexpr   | 
  
 
Maximum size of the data read. 
 
 
◆ MAX_DLL_NAME_SIZE
  
  
      
        
          | size_t LIEF::PE::Parser::MAX_DLL_NAME_SIZE = 255 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
◆ MAX_PADDING_SIZE
  
  
      
        
          | size_t LIEF::PE::Parser::MAX_PADDING_SIZE = 1_GB | 
         
       
   | 
  
staticconstexpr   | 
  
 
Max size of the padding section. 
 
 
◆ MAX_TLS_CALLBACKS
  
  
      
        
          | size_t LIEF::PE::Parser::MAX_TLS_CALLBACKS = 3000 | 
         
       
   | 
  
staticconstexpr   | 
  
 
 
The documentation for this class was generated from the following file: