fusion: Add the missing assembly table structs.
This commit is contained in:
parent
4442306a84
commit
f52ecfe041
|
@ -64,54 +64,53 @@ struct tagASSEMBLY
|
||||||
BYTE *blobs;
|
BYTE *blobs;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* FIXME: fill in */
|
|
||||||
const DWORD COR_TABLE_SIZES[64] =
|
const DWORD COR_TABLE_SIZES[64] =
|
||||||
{
|
{
|
||||||
sizeof(MODULETABLE),
|
sizeof(MODULETABLE),
|
||||||
sizeof(TYPEREFTABLE),
|
sizeof(TYPEREFTABLE),
|
||||||
sizeof(TYPEDEFTABLE),
|
sizeof(TYPEDEFTABLE),
|
||||||
0,
|
0,
|
||||||
|
sizeof(FIELDTABLE),
|
||||||
0,
|
0,
|
||||||
|
sizeof(METHODDEFTABLE),
|
||||||
0,
|
0,
|
||||||
|
sizeof(PARAMTABLE),
|
||||||
|
sizeof(INTERFACEIMPLTABLE),
|
||||||
|
sizeof(MEMBERREFTABLE),
|
||||||
|
sizeof(CONSTANTTABLE),
|
||||||
|
sizeof(CUSTOMATTRIBUTETABLE),
|
||||||
|
sizeof(FIELDMARSHALTABLE),
|
||||||
|
sizeof(DECLSECURITYTABLE),
|
||||||
|
sizeof(CLASSLAYOUTTABLE),
|
||||||
|
sizeof(FIELDLAYOUTTABLE),
|
||||||
|
sizeof(STANDALONESIGTABLE),
|
||||||
|
sizeof(EVENTMAPTABLE),
|
||||||
0,
|
0,
|
||||||
|
sizeof(EVENTTABLE),
|
||||||
|
sizeof(PROPERTYMAPTABLE),
|
||||||
0,
|
0,
|
||||||
0,
|
sizeof(PROPERTYTABLE),
|
||||||
0,
|
sizeof(METHODSEMANTICSTABLE),
|
||||||
0,
|
sizeof(METHODIMPLTABLE),
|
||||||
0,
|
sizeof(MODULEREFTABLE),
|
||||||
0,
|
sizeof(TYPESPECTABLE),
|
||||||
0,
|
sizeof(IMPLMAPTABLE),
|
||||||
0,
|
sizeof(FIELDRVATABLE),
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
sizeof(ASSEMBLYTABLE),
|
sizeof(ASSEMBLYTABLE),
|
||||||
0,
|
sizeof(ASSEMBLYPROCESSORTABLE),
|
||||||
0,
|
sizeof(ASSEMBLYOSTABLE),
|
||||||
0,
|
sizeof(ASSEMBLYREFTABLE),
|
||||||
0,
|
sizeof(ASSEMBLYREFPROCESSORTABLE),
|
||||||
0,
|
sizeof(ASSEMBLYREFOSTABLE),
|
||||||
0,
|
sizeof(FILETABLE),
|
||||||
0,
|
sizeof(EXPORTEDTYPETABLE),
|
||||||
sizeof(MANIFESTRESTABLE),
|
sizeof(MANIFESTRESTABLE),
|
||||||
0,
|
sizeof(NESTEDCLASSTABLE),
|
||||||
0,
|
sizeof(GENERICPARAMTABLE),
|
||||||
0,
|
sizeof(METHODSPECTABLE),
|
||||||
0,
|
sizeof(GENERICPARAMCONSTRAINTTABLE),
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
|
|
|
@ -84,6 +84,13 @@ typedef struct
|
||||||
WORD Namespace;
|
WORD Namespace;
|
||||||
} TYPEREFTABLE;
|
} TYPEREFTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Flags;
|
||||||
|
WORD Name;
|
||||||
|
WORD Signature;
|
||||||
|
} FIELDTABLE;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
DWORD HashAlgId;
|
DWORD HashAlgId;
|
||||||
|
@ -105,6 +112,225 @@ typedef struct
|
||||||
WORD Implementation;
|
WORD Implementation;
|
||||||
} MANIFESTRESTABLE;
|
} MANIFESTRESTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD RVA;
|
||||||
|
WORD ImplFlags;
|
||||||
|
WORD Flags;
|
||||||
|
WORD Name;
|
||||||
|
WORD Signature;
|
||||||
|
WORD ParamList;
|
||||||
|
} METHODDEFTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Flags;
|
||||||
|
WORD Sequence;
|
||||||
|
WORD Name;
|
||||||
|
} PARAMTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Class;
|
||||||
|
WORD Interface;
|
||||||
|
} INTERFACEIMPLTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Class;
|
||||||
|
WORD Name;
|
||||||
|
WORD Signature;
|
||||||
|
} MEMBERREFTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
BYTE Type;
|
||||||
|
BYTE Reserved;
|
||||||
|
WORD Parent;
|
||||||
|
WORD Value;
|
||||||
|
} CONSTANTTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Parent;
|
||||||
|
WORD Type;
|
||||||
|
WORD Value;
|
||||||
|
} CUSTOMATTRIBUTETABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Parent;
|
||||||
|
WORD NativeType;
|
||||||
|
} FIELDMARSHALTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Action;
|
||||||
|
WORD Parent;
|
||||||
|
WORD PermissionSet;
|
||||||
|
} DECLSECURITYTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD PackingSize;
|
||||||
|
DWORD ClassSize;
|
||||||
|
WORD Parent;
|
||||||
|
} CLASSLAYOUTTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD Offset;
|
||||||
|
WORD Field;
|
||||||
|
} FIELDLAYOUTTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Signature;
|
||||||
|
} STANDALONESIGTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Parent;
|
||||||
|
WORD EventList;
|
||||||
|
} EVENTMAPTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD EventFlags;
|
||||||
|
WORD Name;
|
||||||
|
WORD EventType;
|
||||||
|
} EVENTTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Parent;
|
||||||
|
WORD PropertyList;
|
||||||
|
} PROPERTYMAPTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Flags;
|
||||||
|
WORD Name;
|
||||||
|
WORD Type;
|
||||||
|
} PROPERTYTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Semantics;
|
||||||
|
WORD Method;
|
||||||
|
WORD Association;
|
||||||
|
} METHODSEMANTICSTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Class;
|
||||||
|
WORD MethodBody;
|
||||||
|
WORD MethodDeclaration;
|
||||||
|
} METHODIMPLTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Name;
|
||||||
|
} MODULEREFTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Signature;
|
||||||
|
} TYPESPECTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD MappingFlags;
|
||||||
|
WORD MemberForwarded;
|
||||||
|
WORD ImportName;
|
||||||
|
WORD ImportScope;
|
||||||
|
} IMPLMAPTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD RVA;
|
||||||
|
WORD Field;
|
||||||
|
} FIELDRVATABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD Processor;
|
||||||
|
} ASSEMBLYPROCESSORTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD OSPlatformID;
|
||||||
|
DWORD OSMajorVersion;
|
||||||
|
DWORD OSMinorVersion;
|
||||||
|
} ASSEMBLYOSTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD MajorVersion;
|
||||||
|
WORD MinorVersion;
|
||||||
|
WORD BuildNumber;
|
||||||
|
WORD RevisionNumber;
|
||||||
|
DWORD Flags;
|
||||||
|
WORD PublickKeyOrToken;
|
||||||
|
WORD Name;
|
||||||
|
WORD Culture;
|
||||||
|
WORD HashValue;
|
||||||
|
} ASSEMBLYREFTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD Processor;
|
||||||
|
WORD AssemblyRef;
|
||||||
|
} ASSEMBLYREFPROCESSORTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD OSPlatformId;
|
||||||
|
DWORD OSMajorVersion;
|
||||||
|
DWORD OSMinorVersion;
|
||||||
|
WORD AssemblyRef;
|
||||||
|
} ASSEMBLYREFOSTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD Flags;
|
||||||
|
WORD Name;
|
||||||
|
WORD HashValue;
|
||||||
|
} FILETABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
DWORD Flags;
|
||||||
|
DWORD TypeDefId;
|
||||||
|
WORD TypeName;
|
||||||
|
WORD TypeNameSpace;
|
||||||
|
WORD Implementation;
|
||||||
|
} EXPORTEDTYPETABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD NestedClass;
|
||||||
|
WORD EnclosingClass;
|
||||||
|
} NESTEDCLASSTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Number;
|
||||||
|
WORD Flags;
|
||||||
|
} GENERICPARAMTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD MethodDef;
|
||||||
|
WORD Instantiation;
|
||||||
|
} METHODSPECTABLE;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
WORD Owner;
|
||||||
|
WORD Constraint;
|
||||||
|
} GENERICPARAMCONSTRAINTTABLE;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
DWORD ImportLookupTable;
|
DWORD ImportLookupTable;
|
||||||
|
|
Loading…
Reference in New Issue