Fingerprint_Card
Loading...
Searching...
No Matches
DebugInfo.cpp File Reference
#include <windows.h>
#include <tchar.h>
#include <imagehlp.h>
#include <crtdbg.h>
#include <stdio.h>
#include <limits.h>
#include <string>
Include dependency graph for DebugInfo.cpp:

Classes

struct  CV_HEADER
struct  CV_INFO_PDB20
struct  CV_INFO_PDB70

Macros

#define MakePtr(cast, ptr, addValue)
#define CV_SIGNATURE_NB10   '01BN'
#define CV_SIGNATURE_RSDS   'SDSR'

Functions

LPCTSTR ProcessCmdLine (int argc, TCHAR *argv[])
bool CheckDosHeader (PIMAGE_DOS_HEADER pDosHeader)
bool CheckNtHeaders (PIMAGE_NT_HEADERS pNtHeaders)
bool CheckSectionHeaders (PIMAGE_NT_HEADERS pNtHeaders)
bool CheckDebugDirectory (PIMAGE_DEBUG_DIRECTORY pDebugDir, DWORD DebugDirSize)
bool IsPE32Plus (PIMAGE_OPTIONAL_HEADER pOptionalHeader, bool &bPE32Plus)
bool GetDebugDirectoryRVA (PIMAGE_OPTIONAL_HEADER pOptionalHeader, DWORD &DebugDirRva, DWORD &DebugDirSize)
bool GetFileOffsetFromRVA (PIMAGE_NT_HEADERS pNtHeaders, DWORD Rva, DWORD &FileOffset)
void CleanDebugDirectoryEntries (LPBYTE pImageBase, PIMAGE_DEBUG_DIRECTORY pDebugDir, DWORD DebugDirSize, bool clean, bool cleanPath)
void CleanDebugDirectoryEntry (LPBYTE pImageBase, PIMAGE_DEBUG_DIRECTORY pDebugDir, bool clean, bool cleanPath)
void CleanCodeViewDebugInfo (LPBYTE pDebugInfo, DWORD DebugInfoSize, bool clean, bool cleanPath)
char * GetFileName (char *filepath)
void Print (char *message)
void Print (std::string message)
char * GuidToString (GUID guid)
LPCTSTR GetCmd (int argc, TCHAR *argv[])
int _tmain (int argc, TCHAR *argv[])

Macro Definition Documentation

◆ CV_SIGNATURE_NB10

#define CV_SIGNATURE_NB10   '01BN'

◆ CV_SIGNATURE_RSDS

#define CV_SIGNATURE_RSDS   'SDSR'

◆ MakePtr

#define MakePtr ( cast,
ptr,
addValue )
Value:
(cast)((DWORD)(ptr) + (DWORD)(addValue))

Function Documentation

◆ _tmain()

int _tmain ( int argc,
TCHAR * argv[] )
Here is the call graph for this function:

◆ CheckDebugDirectory()

bool CheckDebugDirectory ( PIMAGE_DEBUG_DIRECTORY pDebugDir,
DWORD DebugDirSize )
Here is the caller graph for this function:

◆ CheckDosHeader()

bool CheckDosHeader ( PIMAGE_DOS_HEADER pDosHeader)
Here is the caller graph for this function:

◆ CheckNtHeaders()

bool CheckNtHeaders ( PIMAGE_NT_HEADERS pNtHeaders)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CheckSectionHeaders()

bool CheckSectionHeaders ( PIMAGE_NT_HEADERS pNtHeaders)
Here is the caller graph for this function:

◆ CleanCodeViewDebugInfo()

void CleanCodeViewDebugInfo ( LPBYTE pDebugInfo,
DWORD DebugInfoSize,
bool clean,
bool cleanPath )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CleanDebugDirectoryEntries()

void CleanDebugDirectoryEntries ( LPBYTE pImageBase,
PIMAGE_DEBUG_DIRECTORY pDebugDir,
DWORD DebugDirSize,
bool clean,
bool cleanPath )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CleanDebugDirectoryEntry()

void CleanDebugDirectoryEntry ( LPBYTE pImageBase,
PIMAGE_DEBUG_DIRECTORY pDebugDir,
bool clean,
bool cleanPath )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCmd()

LPCTSTR GetCmd ( int argc,
TCHAR * argv[] )
Here is the caller graph for this function:

◆ GetDebugDirectoryRVA()

bool GetDebugDirectoryRVA ( PIMAGE_OPTIONAL_HEADER pOptionalHeader,
DWORD & DebugDirRva,
DWORD & DebugDirSize )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetFileName()

char * GetFileName ( char * filepath)
Here is the caller graph for this function:

◆ GetFileOffsetFromRVA()

bool GetFileOffsetFromRVA ( PIMAGE_NT_HEADERS pNtHeaders,
DWORD Rva,
DWORD & FileOffset )
Here is the caller graph for this function:

◆ GuidToString()

char * GuidToString ( GUID guid)
Here is the caller graph for this function:

◆ IsPE32Plus()

bool IsPE32Plus ( PIMAGE_OPTIONAL_HEADER pOptionalHeader,
bool & bPE32Plus )
Here is the caller graph for this function:

◆ Print() [1/2]

void Print ( char * message)
Here is the caller graph for this function:

◆ Print() [2/2]

void Print ( std::string message)

◆ ProcessCmdLine()

LPCTSTR ProcessCmdLine ( int argc,
TCHAR * argv[] )
Here is the caller graph for this function: