12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import {NativeStruct} from "./NativeStruct";
- import {log, logHHex} from "../../logger";
- import {
- STRUCT_TYPE_IL2CPP_METADATA_USAGE_LIST,
- STRUCT_TYPE_IL2CPP_METADATA_USAGE_PAIR,
- StructSize
- } from "../hacker/StructSize";
- import {Il2CppMetadataUsageList} from "./Il2CppMetadataUsageList";
- import {Il2CppMetadataUsagePair} from "./Il2CppMetadataUsagePair";
- import {Tabledefs} from "../tabledefs";
- export class Il2CppGlobalMetadataHeader extends NativeStruct {
- sanity() {
- return this.readU32().toString(16).toUpperCase();
- }
- version() {
- return this.add(0x4).readU32();
- }
- metadataUsagePairsCount() {
- return this.add(0xcc).readU32();
- }
- metadataUsagePairsOffset() {
- return this.add(0xc8).readU32();
- }
- metadataUsageListsOffset() {
- return this.add(0xc0).readU32();
- }
- exportedTypeDefinitionsOffset(){
- return this.add(256).readU32();
- }
- exportedTypeDefinitionsCount(){
- return this.add(260).readU32();
- }
- metadataOffset(globalMetadata, returnStructSize, sectionOffset, itemIndex) {
- // log("globalMetadata:" + globalMetadata + " size:" + returnStructSize + " offset:" + sectionOffset + " itemIndex:" + itemIndex);
- let number = returnStructSize * itemIndex;
- return globalMetadata.add(number).add(sectionOffset);
- }
- getEncodeIndexType(index){
- return ((index & 0xE0000000) >> 29);
- }
- getDecodedMethodIndex(index){
- return index & 0x1FFFFFFF;
- }
- }
|