Process Hacker
peprp.c File Reference
#include <peview.h>
#include <cpysave.h>
#include <verify.h>
#include <shlobj.h>

Go to the source code of this file.

Macros

#define PVM_CHECKSUM_DONE   (WM_APP + 1)
 
#define PVM_VERIFY_DONE   (WM_APP + 2)
 
#define ADD_VALUE(Name, Value)
 
#define ADD_VALUES(Config)
 

Functions

INT_PTR CALLBACK PvpPeGeneralDlgProc (_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
 
INT_PTR CALLBACK PvpPeImportsDlgProc (_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
 
INT_PTR CALLBACK PvpPeExportsDlgProc (_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
 
INT_PTR CALLBACK PvpPeLoadConfigDlgProc (_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
 
INT_PTR CALLBACK PvpPeClrDlgProc (_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
 
VOID PvPeProperties (VOID)
 
VERIFY_RESULT PvpVerifyFileWithAdditionalCatalog (_In_ PPH_STRING FileName, _In_ ULONG Flags, _In_opt_ HWND hWnd, _Out_opt_ PPH_STRING *SignerName)
 
FORCEINLINE PWSTR PvpGetStringOrNa (_In_ PPH_STRING String)
 
VOID PvpProcessImports (_In_ HWND ListViewHandle, _In_ PPH_MAPPED_IMAGE_IMPORTS Imports, _In_ BOOLEAN DelayImports)
 

Variables

PH_MAPPED_IMAGE PvMappedImage
 
PIMAGE_COR20_HEADER PvImageCor20Header
 
HICON PvImageLargeIcon
 
PH_IMAGE_VERSION_INFO PvImageVersionInfo
 
VERIFY_RESULT PvImageVerifyResult
 
PPH_STRING PvImageSignerName
 

Macro Definition Documentation

#define ADD_VALUE (   Name,
  Value 
)
Value:
do { \
INT lvItemIndex; \
\
lvItemIndex = PhAddListViewItem(lvHandle, MAXINT, Name, NULL); \
PhSetListViewSubItem(lvHandle, lvItemIndex, 1, Value); \
} while (0)
#define ADD_VALUES (   Config)
Value:
do { \
{ \
LARGE_INTEGER time; \
SYSTEMTIME systemTime; \
RtlSecondsSince1970ToTime((Config)->TimeDateStamp, &time); \
PhLargeIntegerToLocalSystemTime(&systemTime, &time); \
\
string = PhFormatDateTime(&systemTime); \
ADD_VALUE(L"Time stamp", string->Buffer); \
PhDereferenceObject(string); \
} \
\
ADD_VALUE(L"Version", PhaFormatString(L"%u.%u", (Config)->MajorVersion, (Config)->MinorVersion)->Buffer); \
ADD_VALUE(L"Global flags to clear", PhaFormatString(L"0x%x", (Config)->GlobalFlagsClear)->Buffer); \
ADD_VALUE(L"Global flags to set", PhaFormatString(L"0x%x", (Config)->GlobalFlagsSet)->Buffer); \
ADD_VALUE(L"Critical section default timeout", PhaFormatUInt64((Config)->CriticalSectionDefaultTimeout, TRUE)->Buffer); \
ADD_VALUE(L"De-commit free block threshold", PhaFormatUInt64((Config)->DeCommitFreeBlockThreshold, TRUE)->Buffer); \
ADD_VALUE(L"De-commit total free threshold", PhaFormatUInt64((Config)->DeCommitTotalFreeThreshold, TRUE)->Buffer); \
ADD_VALUE(L"LOCK prefix table", PhaFormatString(L"0x%Ix", (Config)->LockPrefixTable)->Buffer); \
ADD_VALUE(L"Maximum allocation size", PhaFormatString(L"0x%Ix", (Config)->MaximumAllocationSize)->Buffer); \
ADD_VALUE(L"Virtual memory threshold", PhaFormatString(L"0x%Ix", (Config)->VirtualMemoryThreshold)->Buffer); \
ADD_VALUE(L"Process affinity mask", PhaFormatString(L"0x%Ix", (Config)->ProcessAffinityMask)->Buffer); \
ADD_VALUE(L"Process heap flags", PhaFormatString(L"0x%Ix", (Config)->ProcessHeapFlags)->Buffer); \
ADD_VALUE(L"CSD version", PhaFormatString(L"%u", (Config)->CSDVersion)->Buffer); \
ADD_VALUE(L"Edit list", PhaFormatString(L"0x%Ix", (Config)->EditList)->Buffer); \
ADD_VALUE(L"Security cookie", PhaFormatString(L"0x%Ix", (Config)->SecurityCookie)->Buffer); \
ADD_VALUE(L"SEH handler table", PhaFormatString(L"0x%Ix", (Config)->SEHandlerTable)->Buffer); \
ADD_VALUE(L"SEH handler count", PhaFormatUInt64((Config)->SEHandlerCount, TRUE)->Buffer); \
} while (0)
#define PVM_CHECKSUM_DONE   (WM_APP + 1)

Definition at line 28 of file peprp.c.

#define PVM_VERIFY_DONE   (WM_APP + 2)

Definition at line 29 of file peprp.c.

Function Documentation

VOID PvPeProperties ( VOID  )

Definition at line 74 of file peprp.c.

FORCEINLINE PWSTR PvpGetStringOrNa ( _In_ PPH_STRING  String)

Definition at line 282 of file peprp.c.

INT_PTR CALLBACK PvpPeClrDlgProc ( _In_ HWND  hwndDlg,
_In_ UINT  uMsg,
_In_ WPARAM  wParam,
_In_ LPARAM  lParam 
)

Definition at line 885 of file peprp.c.

INT_PTR CALLBACK PvpPeExportsDlgProc ( _In_ HWND  hwndDlg,
_In_ UINT  uMsg,
_In_ WPARAM  wParam,
_In_ LPARAM  lParam 
)

Definition at line 707 of file peprp.c.

INT_PTR CALLBACK PvpPeGeneralDlgProc ( _In_ HWND  hwndDlg,
_In_ UINT  uMsg,
_In_ WPARAM  wParam,
_In_ LPARAM  lParam 
)

Definition at line 292 of file peprp.c.

INT_PTR CALLBACK PvpPeImportsDlgProc ( _In_ HWND  hwndDlg,
_In_ UINT  uMsg,
_In_ WPARAM  wParam,
_In_ LPARAM  lParam 
)

Definition at line 660 of file peprp.c.

INT_PTR CALLBACK PvpPeLoadConfigDlgProc ( _In_ HWND  hwndDlg,
_In_ UINT  uMsg,
_In_ WPARAM  wParam,
_In_ LPARAM  lParam 
)

Definition at line 792 of file peprp.c.

VOID PvpProcessImports ( _In_ HWND  ListViewHandle,
_In_ PPH_MAPPED_IMAGE_IMPORTS  Imports,
_In_ BOOLEAN  DelayImports 
)

Definition at line 608 of file peprp.c.

VERIFY_RESULT PvpVerifyFileWithAdditionalCatalog ( _In_ PPH_STRING  FileName,
_In_ ULONG  Flags,
_In_opt_ HWND  hWnd,
_Out_opt_ PPH_STRING SignerName 
)

Definition at line 194 of file peprp.c.

Variable Documentation

PIMAGE_COR20_HEADER PvImageCor20Header

Definition at line 67 of file peprp.c.

HICON PvImageLargeIcon

Definition at line 69 of file peprp.c.

PPH_STRING PvImageSignerName

Definition at line 72 of file peprp.c.

VERIFY_RESULT PvImageVerifyResult

Definition at line 71 of file peprp.c.

PH_IMAGE_VERSION_INFO PvImageVersionInfo

Definition at line 70 of file peprp.c.

PH_MAPPED_IMAGE PvMappedImage

Definition at line 66 of file peprp.c.