/** PE ÆÄÀÏ ºÐ¼®¿¡ °ü·ÃµÈ Ŭ·¡½º ÆÄÀÏ Written KKAMAGUI, http://kkamagui.egloos.com */ #ifndef __PEANALYZER_H__ #define __PEANALYZER_H__ #include #include /** PE ÆÄÀÏÀ» ºÐ¼®Çϴ Ŭ·¡½º */ class CPEAnalyzer { private: PIMAGE_DOS_HEADER m_pstImageDosHeader; PIMAGE_NT_HEADERS m_pstImageNtHeader; PIMAGE_DATA_DIRECTORY m_pstImageDataDirectory; PIMAGE_SECTION_HEADER m_pstImageSectionHeader; HANDLE m_hFile; HANDLE m_hMapping; char* m_pcImage; public: CPEAnalyzer( void ); ~CPEAnalyzer( void ); void GetCurrentPath( char* pcBuffer, int iSize ); BOOL OpenFile( const char* pcName ); void CloseFile( void ); BOOL Analyze( void ); char* GetMappingAddress( void ); PIMAGE_DOS_HEADER GetImageDosHeader( void ); PIMAGE_NT_HEADERS GetImageNtHeaders( void ); PIMAGE_SECTION_HEADER GetFirstImageSectionHeader( void ); PIMAGE_SECTION_HEADER GetSection( const char* pcSection ); }; #endif