-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathloader.h
45 lines (27 loc) · 857 Bytes
/
loader.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef LOADER_H
#define LOADER_H
#include "inc.h"
#include "winapi.h"
typedef struct ImageLoader{
PCHAR ICode;
size_t Image;
size_t deltaAddr;
size_t ImageBase;
size_t Entrypoint;
PIMAGE_DOS_HEADER DosHdr;
PIMAGE_NT_HEADERS NtHdr;
PIMAGE_DATA_DIRECTORY dataDir;
PIMAGE_SECTION_HEADER sections;
DWORD sizeOfHeaders;
DWORD sizeOfImage;
api_loader_h *LoaderAPI;
}IMAGE_LOADER, *PIMAGE_LOADER;
PVOID loader_get_entrypoint(char *data);
PIMAGE_LOADER loader_load_image(char *code);
bool loader_fix_sections(PIMAGE_LOADER ILoader);
bool loader_fix_IAT(PIMAGE_LOADER ILoader);
bool loader_fix_reloc(PIMAGE_LOADER ILoader);
bool loader_call_tls(PIMAGE_LOADER ILoader);
bool loader_end_image(PIMAGE_LOADER ILoader);
bool loader_set_winhook(PIMAGE_LOADER linfo,const char *winapi, void *addr);
#endif