コード例 #1
0
ファイル: PEFile.cpp プロジェクト: dellsun/PE
PIMAGE_NT_HEADERS32 CPEFile::GetNtHeader()  // done!
{
    PIMAGE_DOS_HEADER pDH = GetDosHeader();
    if (pDH)
        return (PIMAGE_NT_HEADERS32)((DWORD)GetImage()+pDH->e_lfanew);

    return NULL;
}
コード例 #2
0
ファイル: PEFile.cpp プロジェクト: dellsun/PE
bool CPEFile::IsPEFile()  // done!
{
    PIMAGE_DOS_HEADER pDosHeader = GetDosHeader();
    if (pDosHeader->e_magic == IMAGE_DOS_SIGNATURE)
    {
        PIMAGE_NT_HEADERS32 pNtHeader = GetNtHeader();
        if (pNtHeader->Signature == IMAGE_NT_SIGNATURE)
            return true;
    }
    return false;
}
コード例 #3
0
ファイル: main.cpp プロジェクト: w4kfu/whook
void test(void)
{
    std::list<PROCESSENTRY32>  lProcess;
    std::list<MODULEENTRY32> lModules;
    DWORD   dwPid = 0;
    std::list<MEMORY_BASIC_INFORMATION> lMemBI;
    std::list<THREADENTRY32> lThreads;
    std::list<LPCVOID> lAddress;
    DWORD dwBaseAddress = 0;
    IMAGE_DOS_HEADER DosHeader;
    IMAGE_NT_HEADERS NTHeader;

    lProcess = GetProcessList();

    PrintProcessList(lProcess);

    dwPid = GetPidProcess("notepad++.exe");
    PrintPidProcess("notepad++.exe", dwPid);

    lModules = GetModuleList(dwPid);
    PrintModulesList(lModules);

    lMemBI = GetMemoryInformation(dwPid);
    PrintMemoryInfo(lMemBI);

    lThreads = GetThreadsList(dwPid);
    PrintThreadsInfo(lThreads);

    SuspendAllThread(dwPid);
    Sleep(1000);
    ResumeAllThread(dwPid);

    lAddress = ScanPattern("\x42\x42\x42", 3, dwPid);
    PrintPatternMatch(lAddress);

    dwBaseAddress = GetRemoteBaseAddress(dwPid);
    printf("BaseAddress = %08X\n", dwBaseAddress);

    DosHeader = GetDosHeader(dwPid);
    PrintDosHeader(&DosHeader);

    NTHeader = GetNTHeader(dwPid);
    PrintNTHeader(&NTHeader);
}
コード例 #4
0
ファイル: PEInfo.cpp プロジェクト: jwtab/WinQ
PIMAGE_SECTION_HEADER CPEInfo::GetSectionHeader()
{
	return (PIMAGE_SECTION_HEADER)((char*)m_pFileMap + GetDosHeader()->e_lfanew + sizeof(IMAGE_NT_HEADERS));
}
コード例 #5
0
ファイル: PEInfo.cpp プロジェクト: jwtab/WinQ
PIMAGE_NT_HEADERS CPEInfo::GetImageNTHeader()
{
	return (PIMAGE_NT_HEADERS)((char*)m_pFileMap + GetDosHeader()->e_lfanew);;
}