BlackBone
Windows memory hacking library
 All Classes Functions
Win8Specific.h
1 #pragma once
2 
3 #include "Winheaders.h"
4 
5 namespace blackbone
6 {
7 #pragma warning(disable : 4201)
8 
9  typedef struct _RTL_RB_TREE
10  {
11  struct _RTL_BALANCED_NODE * Root;
12  struct _RTL_BALANCED_NODE * Min;
14 
15  typedef struct _RTL_BALANCED_NODE
16  {
17  union
18  {
19  struct _RTL_BALANCED_NODE * Children[2];
20  struct
21  {
22  struct _RTL_BALANCED_NODE * Left;
23  struct _RTL_BALANCED_NODE * Right;
24  };
25  };
26  union
27  {
28  union
29  {
30  struct
31  {
32  unsigned char Red : 1;
33  };
34  struct
35  {
36  unsigned char Balance : 2;
37  };
38  };
39 
40  size_t ParentValue;
41  };
43 
45  {
46  _LIST_ENTRY Modules;
47  struct _LDR_SERVICE_TAG_RECORD * ServiceTagList;
48  unsigned long LoadCount;
49  unsigned long ReferenceCount;
50  unsigned long DependencyCount;
51  _SINGLE_LIST_ENTRY RemovalLink;
52  void* IncomingDependencies;
53  _LDR_DDAG_STATE State;
54  struct _SINGLE_LIST_ENTRY CondenseLink;
55  unsigned long PreorderNumber;
56  unsigned long LowestLink;
57  };
58 
60  {
61  _LDR_DDAG_NODE * DdagNode;
62  _LIST_ENTRY NodeModuleLink;
63  struct _LDRP_DLL_SNAP_CONTEXT * SnapContext;
64  void * ParentDllBase;
65  void * SwitchBackContext;
66  _RTL_BALANCED_NODE BaseAddressIndexNode;
67  _RTL_BALANCED_NODE MappingInfoIndexNode;
68  void * OriginalBase;
69  _LARGE_INTEGER LoadTime;
70  unsigned long BaseNameHashValue;
71  _LDR_DLL_LOAD_REASON LoadReason;
72  unsigned long ImplicitPathOptions;
73  };
74 
76  {
77  ULONG Count;
78  ULONG MaxCount;
79  ULONG Pad[0x2];
80  RTL_INVERTED_FUNCTION_TABLE_ENTRY Entries[0x200];
81 
83 
84 #pragma warning(default : 4201)
85 }
Definition: Win8Specific.h:59
Definition: NativeStructures.h:574
Definition: Win8Specific.h:75
Definition: Win8Specific.h:44
Definition: NativeStructures.h:593
Definition: Win8Specific.h:15
Definition: Win8Specific.h:9
Definition: AsmHelper32.cpp:6