|
HyperDbg Debugger
|
symbol parser More...
Functions | |
| void | SymSetTextMessageCallback (PVOID Handler) |
| Set the function callback that will be called if any message needs to be shown. | |
| VOID | ShowMessages (const char *Fmt,...) |
| Show messages. | |
| PSYMBOL_LOADED_MODULE_DETAILS | SymGetModuleBaseFromSearchMask (const char *SearchMask, BOOLEAN SetModuleNameGlobally) |
| Interpret and find module base, based on module name. | |
| BOOLEAN | SymGetFieldOffsetFromModule (UINT64 Base, WCHAR *TypeName, WCHAR *FieldName, UINT32 *FieldOffset) |
| Get the offset of a field from the top of a structure. | |
| BOOLEAN | SymGetDataTypeSizeFromModule (UINT64 Base, WCHAR *TypeName, UINT64 *TypeSize) |
| Get the size of a data type (structure). | |
| BOOLEAN | SymInit () |
| initialize the DbgHelp symbols | |
| BOOLEAN | SymCheckAndRemoveWow64Prefix (const char *ModuleAddress, const char *PdbFileName, std::string &CustomModuleName) |
| Remove wow64 extension to the module names. | |
| BOOLEAN | SymCheckNtoskrnlPrefix (const char *PdbFileName, std::string &CustomModuleName) |
| Check for alternative name of ntoskrn;. | |
| UINT32 | SymLoadFileSymbol (UINT64 BaseAddress, const char *PdbFileName, const char *CustomModuleName) |
| load symbol based on a file name and GUID | |
| UINT32 | SymUnloadModuleSymbol (char *ModuleName) |
| Unload one module symbol. | |
| UINT32 | SymUnloadAllSymbols () |
| Unload all the symbols. | |
| UINT64 | SymConvertNameToAddress (const char *FunctionOrVariableName, PBOOLEAN WasFound) |
| Convert function name to address. | |
| BOOLEAN | SymGetFieldOffset (CHAR *TypeName, CHAR *FieldName, UINT32 *FieldOffset) |
| Search and show symbols. | |
| BOOLEAN | SymGetDataTypeSize (CHAR *TypeName, UINT64 *TypeSize) |
| Get the size of structures from the symbols. | |
| UINT32 | SymSearchSymbolForMask (const char *SearchMask) |
| Gets the offset from the symbol. | |
| BOOLEAN | SymCreateSymbolTableForDisassembler (void *CallbackFunction) |
| Create symbol table for disassembler. | |
Variables | |
| std::vector< PSYMBOL_LOADED_MODULE_DETAILS > | g_LoadedModules |
| BOOLEAN | g_IsLoadedModulesInitialized = FALSE |
| BOOLEAN | g_AbortLoadingExecution = FALSE |
| CHAR * | g_CurrentModuleName = NULL |
| PVOID | g_MessageHandler = NULL |
| The handler for ShowMessages function this is because the user might choose not to use printf and instead use his/her handler for showing messages. | |
| SymbolMapCallback | g_SymbolMapForDisassembler = NULL |
symbol parser
| VOID ShowMessages | ( | const char * | Fmt, |
| ... ) |
Show messages.
| Fmt | format string message |
| Fmt | format string message |
| ... | arguments |
| BOOLEAN SymCheckAndRemoveWow64Prefix | ( | const char * | ModuleAddress, |
| const char * | PdbFileName, | ||
| std::string & | CustomModuleName ) |
Remove wow64 extension to the module names.
| ModuleAddress | |
| PdbFileName |
| BOOLEAN SymCheckNtoskrnlPrefix | ( | const char * | PdbFileName, |
| std::string & | CustomModuleName ) |
Check for alternative name of ntoskrn;.
| PdbFileName | |
| CustomModuleName |
| UINT64 SymConvertNameToAddress | ( | const char * | FunctionOrVariableName, |
| PBOOLEAN | WasFound ) |
Convert function name to address.
| FunctionOrVariableName | the name of the function or variable to convert |
| WasFound |
| BOOLEAN SymCreateSymbolTableForDisassembler | ( | void * | CallbackFunction | ) |
Create symbol table for disassembler.
mainly used by disassembler for 'u' command
| CallbackFunction |
Get the size of structures from the symbols.
| TypeName | the type (structure) name to query |
| TypeSize | pointer to receive the size of the data type |
| BOOLEAN SymGetDataTypeSizeFromModule | ( | UINT64 | Base, |
| WCHAR * | TypeName, | ||
| UINT64 * | TypeSize ) |
Get the size of a data type (structure).
| Base | |
| TypeName | |
| TypeSize |
Search and show symbols.
mainly used by the 'x' command
| TypeName | |
| FieldName | |
| FieldOffset |
| BOOLEAN SymGetFieldOffsetFromModule | ( | UINT64 | Base, |
| WCHAR * | TypeName, | ||
| WCHAR * | FieldName, | ||
| UINT32 * | FieldOffset ) |
Get the offset of a field from the top of a structure.
| Base | |
| TypeName | |
| FieldName | |
| FieldOffset |
This function is derived from: https://github.com/0vercl0k/sic/blob/master/src/sic/sym.cc
| PSYMBOL_LOADED_MODULE_DETAILS SymGetModuleBaseFromSearchMask | ( | const char * | SearchMask, |
| BOOLEAN | SetModuleNameGlobally ) |
Interpret and find module base, based on module name.
| SearchMask | the search mask to find module |
| SetModuleNameGlobally | whether to set module name globally |
| BOOLEAN SymInit | ( | ) |
initialize the DbgHelp symbols
| UINT32 SymLoadFileSymbol | ( | UINT64 | BaseAddress, |
| const char * | PdbFileName, | ||
| const char * | CustomModuleName ) |
load symbol based on a file name and GUID
| BaseAddress | |
| PdbFileName | |
| CustomModuleName |
| UINT32 SymSearchSymbolForMask | ( | const char * | SearchMask | ) |
Gets the offset from the symbol.
| SearchMask |
| void SymSetTextMessageCallback | ( | PVOID | Handler | ) |
Set the function callback that will be called if any message needs to be shown.
| Handler | Function that handles the messages |
| UINT32 SymUnloadAllSymbols | ( | ) |
Unload all the symbols.
| UINT32 SymUnloadModuleSymbol | ( | char * | ModuleName | ) |
Unload one module symbol.
| ModuleName |
| CHAR* g_CurrentModuleName = NULL |
| std::vector<PSYMBOL_LOADED_MODULE_DETAILS> g_LoadedModules |
| PVOID g_MessageHandler = NULL |
The handler for ShowMessages function this is because the user might choose not to use printf and instead use his/her handler for showing messages.
| SymbolMapCallback g_SymbolMapForDisassembler = NULL |