diff --git a/parser-library/parse.h b/parser-library/parse.h index f51e9db..e1d6eac 100644 --- a/parser-library/parse.h +++ b/parser-library/parse.h @@ -14,6 +14,19 @@ typedef struct _parsed_pe { //get a PE parse context from a file parsed_pe *ParsePEFromFile(const char *filePath); +//destruct a PE context void DestructParsedPE(parsed_pe *pe); +//iterate over the imports by RVA and string +typedef void (*iterRVAStr)(void *, RVA, std::string &); +void IterImpRVAString(parsed_pe *pe, iterRVAStr cb, void *cbd); + +//iterate over relocations in the PE file +typedef void (*iterReloc)(void *, RVA); +void IterRelocs(parsed_pe *pe, iterReloc cb, void *cbd); + +//iterate over the exports by RVA +typedef void (*iterRVA)(void *, RVA); +void IterExpRVA(parsed_pe *pe, iterRVA cb, void *cbd); + #endif