File: _generated\16\Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.cs
Web Access
Project: src\src\runtime\src\native\managed\cdac\Microsoft.Diagnostics.DataContractReader.Legacy\Microsoft.Diagnostics.DataContractReader.Legacy.csproj (Microsoft.Diagnostics.DataContractReader.Legacy)
// <auto-generated />
#pragma warning disable CS0612, CS0618, CS0649, CS1591

[global::System.Runtime.InteropServices.StructLayoutAttribute(global::System.Runtime.InteropServices.LayoutKind.Sequential)]
file unsafe struct InterfaceImplementationVtable
{
    public delegate* unmanaged[MemberFunction]<void*, global::System.Guid*, void**, int> QueryInterface_0;
    public delegate* unmanaged[MemberFunction]<void*, uint> AddRef_1;
    public delegate* unmanaged[MemberFunction]<void*, uint> Release_2;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DbiVersion*, int> CheckDbiVersion_3;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int> FlushCache_4;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> DacSetTargetConsistencyChecks_5;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsLeftSideInitialized_6;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> GetAppDomainId_7;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetAppDomainFullName_8;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetModuleSimpleName_9;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> GetAssemblyPath_10;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData*, int> ResolveTypeReference_11;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> GetModulePath_12;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int> GetMetadata_13;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int*, int> GetSymbolsBuffer_14;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiModuleInfo*, int> GetModuleData_15;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetModuleForAssembly_16;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, int*, int> GetAddressType_17;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> GetCompilerFlags_18;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> SetCompilerFlags_19;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, delegate* unmanaged<ulong, nint, void> , nint, int> EnumerateAssembliesInAppDomain_20;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, nint, int> EnumerateModulesInAssembly_21;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int> RequestSyncAtEvent_22;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> SetSendExceptionsOutsideOfJMC_23;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int> MarkDebuggerAttachPending_24;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> MarkDebuggerAttached_25;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, nint, nint, uint, int, nint, ulong*, int> Hijack_26;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, delegate* unmanaged<ulong, nint, void> , nint, int> EnumerateThreads_27;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsThreadMarkedDead_28;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetThreadHandle_29;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetThreadObject_30;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiThreadAllocInfo*, int> GetThreadAllocInfo_31;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, int, int> SetDebugState_32;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> HasUnhandledException_33;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, int*, int> GetUserState_34;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.CorDebugUserState*, int> GetPartialUserState_35;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> GetConnectionID_36;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetTaskID_37;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> TryGetVolatileOSThreadID_38;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> GetUniqueThreadID_39;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetCurrentException_40;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetObjectForCCW_41;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetCurrentCustomDebuggerNotification_42;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong*, int> GetCurrentAppDomain_43;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, ulong*, int> ResolveAssembly_44;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, nint, nint, int> GetNativeCodeSequencePointsAndVarInfo_45;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetManagedStoppedContext_46;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, nuint*, int> CreateStackWalk_47;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, int> DeleteStackWalk_48;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, nint, int> GetStackWalkCurrentContext_49;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nuint, int, nint, int> SetStackWalkCurrentContext_50;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> UnwindStackWalkFrame_51;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> CheckContext_52;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, nint, int*, int> GetStackWalkCurrentFrameInfo_53;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> GetCountOfInternalFrames_54;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, nint, int> EnumerateInternalFrames_55;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> GetStackParameterSize_56;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, ulong*, int> GetFramePointer_57;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, byte*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsLeafFrame_58;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, byte*, int> GetContext_59;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nint, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> ConvertContextToDebuggerRegDisplay_60;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, int*, int> IsDiagnosticsHiddenOrLCGMethod_61;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int> GetVarArgSig_62;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> RequiresAlign8_63;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, uint, ulong, ulong*, int> ResolveExactGenericArgsToken_64;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, uint*, int> GetILCodeAndSig_65;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, nint, int> GetNativeCodeInfo_66;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, ulong*, uint*, int> GetNativeCodeInfoForAddr_67;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsValueType_68;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> HasTypeParams_69;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetClassInfo_70;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong, ulong, nint, nuint*, int> GetInstantiationFieldInfo_71;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int, ulong, nint, int> TypeHandleToExpandedTypeInfo_72;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int, ulong, nint, int> GetObjectExpandedTypeInfo_73;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID, nint, int> GetObjectExpandedTypeInfoFromID_74;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, ulong*, int> GetTypeHandle_75;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nint, ulong*, int> GetApproxTypeHandle_76;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nint, nint, ulong*, int> GetExactTypeHandle_77;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong, uint*, nint, int> GetMethodDescParams_78;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong, ulong*, int> GetThreadStaticAddress_79;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetCollectibleTypeStaticAddress_80;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nint, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> GetEnCHangingFieldInfo_81;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetTypeHandleParams_82;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int, uint*, ulong*, int> GetSimpleType_83;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsExceptionObject_84;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetStackFramesFromException_85;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsRcw_86;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, nint, int> GetRcwCachedInterfacePointers_87;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetTypedByRefInfo_88;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetStringData_89;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, int> GetArrayData_90;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, int, nint, int> GetBasicObjectInfo_91;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong*, int> GetDebuggerControlBlockAddress_92;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetObjectFromRefPtr_93;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetObject_94;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetVmObjectHandle_95;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsVmObjectHandleValid_96;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetHandleAddressFromVmHandle_97;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int> GetObjectContents_98;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiMonitorLockInfo*, int> GetThreadOwningMonitorLock_99;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, nint, nint, int> EnumerateMonitorEventWaitList_100;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int*, int> GetAttachStateFlags_101;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, uint*, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> GetMetaDataFileInfoFromPEFile_102;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsThreadSuspendedOrHijacked_103;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint*, int> CreateHeapWalk_104;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, int> DeleteHeapWalk_105;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPOBJECT*, uint*, int> WalkHeap_106;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, delegate* unmanaged<ulong, ulong, int, uint, nint, void> , nint, int> EnumerateHeapSegments_107;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsValidObject_108;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, uint, int> CreateRefWalk_109;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, int> DeleteRefWalk_110;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nuint, uint, nint, uint*, int> WalkRefs_111;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID*, int> GetTypeID_112;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID*, int> GetTypeIDForType_113;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, nint, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_FIELD*, uint*, int> GetObjectFields_114;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPE_LAYOUT*, int> GetTypeLayout_115;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_ARRAY_LAYOUT*, int> GetArrayLayout_116;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPINFO*, int> GetGCHeapInformation_117;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetPEFileMDInternalRW_118;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> AreOptimizationsDisabled_119;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, uint*, int> GetDefinesBitField_120;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, uint*, int> GetMDStructuresVersion_121;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint, ulong*, int> GetActiveRejitILCodeVersionNode_122;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong, ulong*, int> GetNativeCodeVersionNode_123;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetILCodeVersionNode_124;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiSharedReJitInfo*, int> GetILCodeVersionNodeData_125;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> EnableGCNotificationEvents_126;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsDelegate_127;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, int*, int> GetDelegateType_128;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int, ulong, ulong*, uint*, int> GetDelegateFunctionData_129;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, int, ulong, ulong*, ulong*, int> GetDelegateTargetObject_130;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> IsModuleMapped_131;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> MetadataUpdatesApplied_132;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, int> GetAssemblyFromModule_133;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong*, ulong*, uint*, int> ParseContinuation_134;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, ulong, uint, nint, int> GetAsyncLocals_135;
    public delegate* unmanaged[MemberFunction]<global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch*, ulong, uint*, int> GetGenericArgTokenIndex_136;
}

file unsafe sealed class InterfaceInformation : global::System.Runtime.InteropServices.Marshalling.IIUnknownInterfaceType
{
    public static global::System.Guid Iid { get; } = new([27, 92, 80, 219, 39, 163, 70, 74, 140, 50, 175, 85, 165, 111, 142, 9]);
    public static void** ManagedVirtualMethodTable => (void**)global::System.Runtime.CompilerServices.Unsafe.AsPointer(in InterfaceImplementation.Vtable);
}

[global::System.Runtime.InteropServices.DynamicInterfaceCastableImplementationAttribute]
file unsafe interface InterfaceImplementation : global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface
{
    [global::System.Runtime.CompilerServices.FixedAddressValueTypeAttribute]
    public static readonly InterfaceImplementationVtable Vtable;

    static InterfaceImplementation()
    {
        global::System.Runtime.InteropServices.ComWrappers.GetIUnknownImpl(
            out *(nint*)&((InterfaceImplementationVtable*)global::System.Runtime.CompilerServices.Unsafe.AsPointer(ref Vtable))->QueryInterface_0,
            out *(nint*)&((InterfaceImplementationVtable*)global::System.Runtime.CompilerServices.Unsafe.AsPointer(ref Vtable))->AddRef_1,
            out *(nint*)&((InterfaceImplementationVtable*)global::System.Runtime.CompilerServices.Unsafe.AsPointer(ref Vtable))->Release_2);

        Vtable.CheckDbiVersion_3 = &ABI_CheckDbiVersion;
        Vtable.FlushCache_4 = &ABI_FlushCache;
        Vtable.DacSetTargetConsistencyChecks_5 = &ABI_DacSetTargetConsistencyChecks;
        Vtable.IsLeftSideInitialized_6 = &ABI_IsLeftSideInitialized;
        Vtable.GetAppDomainId_7 = &ABI_GetAppDomainId;
        Vtable.GetAppDomainFullName_8 = &ABI_GetAppDomainFullName;
        Vtable.GetModuleSimpleName_9 = &ABI_GetModuleSimpleName;
        Vtable.GetAssemblyPath_10 = &ABI_GetAssemblyPath;
        Vtable.ResolveTypeReference_11 = &ABI_ResolveTypeReference;
        Vtable.GetModulePath_12 = &ABI_GetModulePath;
        Vtable.GetMetadata_13 = &ABI_GetMetadata;
        Vtable.GetSymbolsBuffer_14 = &ABI_GetSymbolsBuffer;
        Vtable.GetModuleData_15 = &ABI_GetModuleData;
        Vtable.GetModuleForAssembly_16 = &ABI_GetModuleForAssembly;
        Vtable.GetAddressType_17 = &ABI_GetAddressType;
        Vtable.GetCompilerFlags_18 = &ABI_GetCompilerFlags;
        Vtable.SetCompilerFlags_19 = &ABI_SetCompilerFlags;
        Vtable.EnumerateAssembliesInAppDomain_20 = &ABI_EnumerateAssembliesInAppDomain;
        Vtable.EnumerateModulesInAssembly_21 = &ABI_EnumerateModulesInAssembly;
        Vtable.RequestSyncAtEvent_22 = &ABI_RequestSyncAtEvent;
        Vtable.SetSendExceptionsOutsideOfJMC_23 = &ABI_SetSendExceptionsOutsideOfJMC;
        Vtable.MarkDebuggerAttachPending_24 = &ABI_MarkDebuggerAttachPending;
        Vtable.MarkDebuggerAttached_25 = &ABI_MarkDebuggerAttached;
        Vtable.Hijack_26 = &ABI_Hijack;
        Vtable.EnumerateThreads_27 = &ABI_EnumerateThreads;
        Vtable.IsThreadMarkedDead_28 = &ABI_IsThreadMarkedDead;
        Vtable.GetThreadHandle_29 = &ABI_GetThreadHandle;
        Vtable.GetThreadObject_30 = &ABI_GetThreadObject;
        Vtable.GetThreadAllocInfo_31 = &ABI_GetThreadAllocInfo;
        Vtable.SetDebugState_32 = &ABI_SetDebugState;
        Vtable.HasUnhandledException_33 = &ABI_HasUnhandledException;
        Vtable.GetUserState_34 = &ABI_GetUserState;
        Vtable.GetPartialUserState_35 = &ABI_GetPartialUserState;
        Vtable.GetConnectionID_36 = &ABI_GetConnectionID;
        Vtable.GetTaskID_37 = &ABI_GetTaskID;
        Vtable.TryGetVolatileOSThreadID_38 = &ABI_TryGetVolatileOSThreadID;
        Vtable.GetUniqueThreadID_39 = &ABI_GetUniqueThreadID;
        Vtable.GetCurrentException_40 = &ABI_GetCurrentException;
        Vtable.GetObjectForCCW_41 = &ABI_GetObjectForCCW;
        Vtable.GetCurrentCustomDebuggerNotification_42 = &ABI_GetCurrentCustomDebuggerNotification;
        Vtable.GetCurrentAppDomain_43 = &ABI_GetCurrentAppDomain;
        Vtable.ResolveAssembly_44 = &ABI_ResolveAssembly;
        Vtable.GetNativeCodeSequencePointsAndVarInfo_45 = &ABI_GetNativeCodeSequencePointsAndVarInfo;
        Vtable.GetManagedStoppedContext_46 = &ABI_GetManagedStoppedContext;
        Vtable.CreateStackWalk_47 = &ABI_CreateStackWalk;
        Vtable.DeleteStackWalk_48 = &ABI_DeleteStackWalk;
        Vtable.GetStackWalkCurrentContext_49 = &ABI_GetStackWalkCurrentContext;
        Vtable.SetStackWalkCurrentContext_50 = &ABI_SetStackWalkCurrentContext;
        Vtable.UnwindStackWalkFrame_51 = &ABI_UnwindStackWalkFrame;
        Vtable.CheckContext_52 = &ABI_CheckContext;
        Vtable.GetStackWalkCurrentFrameInfo_53 = &ABI_GetStackWalkCurrentFrameInfo;
        Vtable.GetCountOfInternalFrames_54 = &ABI_GetCountOfInternalFrames;
        Vtable.EnumerateInternalFrames_55 = &ABI_EnumerateInternalFrames;
        Vtable.GetStackParameterSize_56 = &ABI_GetStackParameterSize;
        Vtable.GetFramePointer_57 = &ABI_GetFramePointer;
        Vtable.IsLeafFrame_58 = &ABI_IsLeafFrame;
        Vtable.GetContext_59 = &ABI_GetContext;
        Vtable.ConvertContextToDebuggerRegDisplay_60 = &ABI_ConvertContextToDebuggerRegDisplay;
        Vtable.IsDiagnosticsHiddenOrLCGMethod_61 = &ABI_IsDiagnosticsHiddenOrLCGMethod;
        Vtable.GetVarArgSig_62 = &ABI_GetVarArgSig;
        Vtable.RequiresAlign8_63 = &ABI_RequiresAlign8;
        Vtable.ResolveExactGenericArgsToken_64 = &ABI_ResolveExactGenericArgsToken;
        Vtable.GetILCodeAndSig_65 = &ABI_GetILCodeAndSig;
        Vtable.GetNativeCodeInfo_66 = &ABI_GetNativeCodeInfo;
        Vtable.GetNativeCodeInfoForAddr_67 = &ABI_GetNativeCodeInfoForAddr;
        Vtable.IsValueType_68 = &ABI_IsValueType;
        Vtable.HasTypeParams_69 = &ABI_HasTypeParams;
        Vtable.GetClassInfo_70 = &ABI_GetClassInfo;
        Vtable.GetInstantiationFieldInfo_71 = &ABI_GetInstantiationFieldInfo;
        Vtable.TypeHandleToExpandedTypeInfo_72 = &ABI_TypeHandleToExpandedTypeInfo;
        Vtable.GetObjectExpandedTypeInfo_73 = &ABI_GetObjectExpandedTypeInfo;
        Vtable.GetObjectExpandedTypeInfoFromID_74 = &ABI_GetObjectExpandedTypeInfoFromID;
        Vtable.GetTypeHandle_75 = &ABI_GetTypeHandle;
        Vtable.GetApproxTypeHandle_76 = &ABI_GetApproxTypeHandle;
        Vtable.GetExactTypeHandle_77 = &ABI_GetExactTypeHandle;
        Vtable.GetMethodDescParams_78 = &ABI_GetMethodDescParams;
        Vtable.GetThreadStaticAddress_79 = &ABI_GetThreadStaticAddress;
        Vtable.GetCollectibleTypeStaticAddress_80 = &ABI_GetCollectibleTypeStaticAddress;
        Vtable.GetEnCHangingFieldInfo_81 = &ABI_GetEnCHangingFieldInfo;
        Vtable.GetTypeHandleParams_82 = &ABI_GetTypeHandleParams;
        Vtable.GetSimpleType_83 = &ABI_GetSimpleType;
        Vtable.IsExceptionObject_84 = &ABI_IsExceptionObject;
        Vtable.GetStackFramesFromException_85 = &ABI_GetStackFramesFromException;
        Vtable.IsRcw_86 = &ABI_IsRcw;
        Vtable.GetRcwCachedInterfacePointers_87 = &ABI_GetRcwCachedInterfacePointers;
        Vtable.GetTypedByRefInfo_88 = &ABI_GetTypedByRefInfo;
        Vtable.GetStringData_89 = &ABI_GetStringData;
        Vtable.GetArrayData_90 = &ABI_GetArrayData;
        Vtable.GetBasicObjectInfo_91 = &ABI_GetBasicObjectInfo;
        Vtable.GetDebuggerControlBlockAddress_92 = &ABI_GetDebuggerControlBlockAddress;
        Vtable.GetObjectFromRefPtr_93 = &ABI_GetObjectFromRefPtr;
        Vtable.GetObject_94 = &ABI_GetObject;
        Vtable.GetVmObjectHandle_95 = &ABI_GetVmObjectHandle;
        Vtable.IsVmObjectHandleValid_96 = &ABI_IsVmObjectHandleValid;
        Vtable.GetHandleAddressFromVmHandle_97 = &ABI_GetHandleAddressFromVmHandle;
        Vtable.GetObjectContents_98 = &ABI_GetObjectContents;
        Vtable.GetThreadOwningMonitorLock_99 = &ABI_GetThreadOwningMonitorLock;
        Vtable.EnumerateMonitorEventWaitList_100 = &ABI_EnumerateMonitorEventWaitList;
        Vtable.GetAttachStateFlags_101 = &ABI_GetAttachStateFlags;
        Vtable.GetMetaDataFileInfoFromPEFile_102 = &ABI_GetMetaDataFileInfoFromPEFile;
        Vtable.IsThreadSuspendedOrHijacked_103 = &ABI_IsThreadSuspendedOrHijacked;
        Vtable.CreateHeapWalk_104 = &ABI_CreateHeapWalk;
        Vtable.DeleteHeapWalk_105 = &ABI_DeleteHeapWalk;
        Vtable.WalkHeap_106 = &ABI_WalkHeap;
        Vtable.EnumerateHeapSegments_107 = &ABI_EnumerateHeapSegments;
        Vtable.IsValidObject_108 = &ABI_IsValidObject;
        Vtable.CreateRefWalk_109 = &ABI_CreateRefWalk;
        Vtable.DeleteRefWalk_110 = &ABI_DeleteRefWalk;
        Vtable.WalkRefs_111 = &ABI_WalkRefs;
        Vtable.GetTypeID_112 = &ABI_GetTypeID;
        Vtable.GetTypeIDForType_113 = &ABI_GetTypeIDForType;
        Vtable.GetObjectFields_114 = &ABI_GetObjectFields;
        Vtable.GetTypeLayout_115 = &ABI_GetTypeLayout;
        Vtable.GetArrayLayout_116 = &ABI_GetArrayLayout;
        Vtable.GetGCHeapInformation_117 = &ABI_GetGCHeapInformation;
        Vtable.GetPEFileMDInternalRW_118 = &ABI_GetPEFileMDInternalRW;
        Vtable.AreOptimizationsDisabled_119 = &ABI_AreOptimizationsDisabled;
        Vtable.GetDefinesBitField_120 = &ABI_GetDefinesBitField;
        Vtable.GetMDStructuresVersion_121 = &ABI_GetMDStructuresVersion;
        Vtable.GetActiveRejitILCodeVersionNode_122 = &ABI_GetActiveRejitILCodeVersionNode;
        Vtable.GetNativeCodeVersionNode_123 = &ABI_GetNativeCodeVersionNode;
        Vtable.GetILCodeVersionNode_124 = &ABI_GetILCodeVersionNode;
        Vtable.GetILCodeVersionNodeData_125 = &ABI_GetILCodeVersionNodeData;
        Vtable.EnableGCNotificationEvents_126 = &ABI_EnableGCNotificationEvents;
        Vtable.IsDelegate_127 = &ABI_IsDelegate;
        Vtable.GetDelegateType_128 = &ABI_GetDelegateType;
        Vtable.GetDelegateFunctionData_129 = &ABI_GetDelegateFunctionData;
        Vtable.GetDelegateTargetObject_130 = &ABI_GetDelegateTargetObject;
        Vtable.IsModuleMapped_131 = &ABI_IsModuleMapped;
        Vtable.MetadataUpdatesApplied_132 = &ABI_MetadataUpdatesApplied;
        Vtable.GetAssemblyFromModule_133 = &ABI_GetAssemblyFromModule;
        Vtable.ParseContinuation_134 = &ABI_ParseContinuation;
        Vtable.GetAsyncLocals_135 = &ABI_GetAsyncLocals;
        Vtable.GetGenericArgTokenIndex_136 = &ABI_GetGenericArgTokenIndex;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.CheckDbiVersion(global::Microsoft.Diagnostics.DataContractReader.Legacy.DbiVersion* pVersion)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DbiVersion*, int> )__vtable[3]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pVersion);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_CheckDbiVersion(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.DbiVersion* pVersion)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.CheckDbiVersion(pVersion);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.FlushCache()
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int> )__vtable[4]);
        {
            int __retVal;
            {
                __retVal = __target(__this);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_FlushCache(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.FlushCache();
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.DacSetTargetConsistencyChecks(global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fEnableAsserts)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> )__vtable[5]);
        {
            int __retVal;
            {
                __retVal = __target(__this, fEnableAsserts);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_DacSetTargetConsistencyChecks(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fEnableAsserts)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.DacSetTargetConsistencyChecks(fEnableAsserts);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsLeftSideInitialized(global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[6]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsLeftSideInitialized(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsLeftSideInitialized(pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAppDomainId(ulong vmAppDomain, uint* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[7]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAppDomain, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAppDomainId(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAppDomain, uint* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAppDomainId(vmAppDomain, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAppDomainFullName(ulong vmAppDomain, nint pStrName)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[8]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAppDomain, pStrName);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAppDomainFullName(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAppDomain, nint pStrName)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAppDomainFullName(vmAppDomain, pStrName);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetModuleSimpleName(ulong vmModule, nint pStrFilename)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[9]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, pStrFilename);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetModuleSimpleName(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, nint pStrFilename)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetModuleSimpleName(vmModule, pStrFilename);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAssemblyPath(ulong vmAssembly, nint pStrFilename, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[10]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, pStrFilename, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAssemblyPath(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, nint pStrFilename, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAssemblyPath(vmAssembly, pStrFilename, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.ResolveTypeReference(global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData* pTypeRefInfo, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData* pTargetRefInfo)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData*, int> )__vtable[11]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pTypeRefInfo, pTargetRefInfo);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_ResolveTypeReference(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData* pTypeRefInfo, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTypeRefData* pTargetRefInfo)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.ResolveTypeReference(pTypeRefInfo, pTargetRefInfo);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetModulePath(ulong vmModule, nint pStrFilename, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[12]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, pStrFilename, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetModulePath(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, nint pStrFilename, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetModulePath(vmModule, pStrFilename, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetMetadata(ulong vmModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pTargetBuffer)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int> )__vtable[13]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, pTargetBuffer);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetMetadata(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pTargetBuffer)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetMetadata(vmModule, pTargetBuffer);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetSymbolsBuffer(ulong vmModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pTargetBuffer, int* pSymbolFormat)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int*, int> )__vtable[14]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, pTargetBuffer, pSymbolFormat);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetSymbolsBuffer(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pTargetBuffer, int* pSymbolFormat)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetSymbolsBuffer(vmModule, pTargetBuffer, pSymbolFormat);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetModuleData(ulong vmModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiModuleInfo* pData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiModuleInfo*, int> )__vtable[15]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, pData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetModuleData(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiModuleInfo* pData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetModuleData(vmModule, pData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetModuleForAssembly(ulong vmAssembly, ulong* pModule)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[16]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, pModule);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetModuleForAssembly(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, ulong* pModule)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetModuleForAssembly(vmAssembly, pModule);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAddressType(ulong address, int* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, int*, int> )__vtable[17]);
        {
            int __retVal;
            {
                __retVal = __target(__this, address, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAddressType(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong address, int* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAddressType(address, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetCompilerFlags(ulong vmAssembly, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pfAllowJITOpts, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pfEnableEnC)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[18]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, pfAllowJITOpts, pfEnableEnC);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetCompilerFlags(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pfAllowJITOpts, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pfEnableEnC)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetCompilerFlags(vmAssembly, pfAllowJITOpts, pfEnableEnC);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.SetCompilerFlags(ulong vmAssembly, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fAllowJitOpts, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fEnableEnC)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> )__vtable[19]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, fAllowJitOpts, fEnableEnC);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_SetCompilerFlags(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fAllowJitOpts, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fEnableEnC)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.SetCompilerFlags(vmAssembly, fAllowJitOpts, fEnableEnC);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnumerateAssembliesInAppDomain(ulong vmAppDomain, delegate* unmanaged<ulong, nint, void> fpCallback, nint pUserData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, delegate* unmanaged<ulong, nint, void> , nint, int> )__vtable[20]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAppDomain, fpCallback, pUserData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnumerateAssembliesInAppDomain(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAppDomain, delegate* unmanaged<ulong, nint, void> fpCallback, nint pUserData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnumerateAssembliesInAppDomain(vmAppDomain, fpCallback, pUserData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnumerateModulesInAssembly(ulong vmAssembly, nint fpCallback, nint pUserData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, nint, int> )__vtable[21]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, fpCallback, pUserData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnumerateModulesInAssembly(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, nint fpCallback, nint pUserData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnumerateModulesInAssembly(vmAssembly, fpCallback, pUserData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.RequestSyncAtEvent()
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int> )__vtable[22]);
        {
            int __retVal;
            {
                __retVal = __target(__this);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_RequestSyncAtEvent(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.RequestSyncAtEvent();
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.SetSendExceptionsOutsideOfJMC(global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL sendExceptionsOutsideOfJMC)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> )__vtable[23]);
        {
            int __retVal;
            {
                __retVal = __target(__this, sendExceptionsOutsideOfJMC);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_SetSendExceptionsOutsideOfJMC(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL sendExceptionsOutsideOfJMC)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.SetSendExceptionsOutsideOfJMC(sendExceptionsOutsideOfJMC);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.MarkDebuggerAttachPending()
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int> )__vtable[24]);
        {
            int __retVal;
            {
                __retVal = __target(__this);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_MarkDebuggerAttachPending(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.MarkDebuggerAttachPending();
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.MarkDebuggerAttached(global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fAttached)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> )__vtable[25]);
        {
            int __retVal;
            {
                __retVal = __target(__this, fAttached);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_MarkDebuggerAttached(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fAttached)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.MarkDebuggerAttached(fAttached);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.Hijack(ulong vmThread, uint dwThreadId, nint pRecord, nint pOriginalContext, uint cbSizeContext, int reason, nint pUserData, ulong* pRemoteContextAddr)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, nint, nint, uint, int, nint, ulong*, int> )__vtable[26]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, dwThreadId, pRecord, pOriginalContext, cbSizeContext, reason, pUserData, pRemoteContextAddr);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_Hijack(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, uint dwThreadId, nint pRecord, nint pOriginalContext, uint cbSizeContext, int reason, nint pUserData, ulong* pRemoteContextAddr)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.Hijack(vmThread, dwThreadId, pRecord, pOriginalContext, cbSizeContext, reason, pUserData, pRemoteContextAddr);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnumerateThreads(delegate* unmanaged<ulong, nint, void> fpCallback, nint pUserData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, delegate* unmanaged<ulong, nint, void> , nint, int> )__vtable[27]);
        {
            int __retVal;
            {
                __retVal = __target(__this, fpCallback, pUserData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnumerateThreads(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, delegate* unmanaged<ulong, nint, void> fpCallback, nint pUserData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnumerateThreads(fpCallback, pUserData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsThreadMarkedDead(ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[28]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsThreadMarkedDead(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsThreadMarkedDead(vmThread, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetThreadHandle(ulong vmThread, nint pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[29]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetThreadHandle(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, nint pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetThreadHandle(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetThreadObject(ulong vmThread, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[30]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetThreadObject(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetThreadObject(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetThreadAllocInfo(ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiThreadAllocInfo* pThreadAllocInfo)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiThreadAllocInfo*, int> )__vtable[31]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pThreadAllocInfo);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetThreadAllocInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiThreadAllocInfo* pThreadAllocInfo)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetThreadAllocInfo(vmThread, pThreadAllocInfo);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.SetDebugState(ulong vmThread, int debugState)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, int, int> )__vtable[32]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, debugState);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_SetDebugState(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, int debugState)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.SetDebugState(vmThread, debugState);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.HasUnhandledException(ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[33]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_HasUnhandledException(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.HasUnhandledException(vmThread, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetUserState(ulong vmThread, int* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, int*, int> )__vtable[34]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetUserState(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, int* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetUserState(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetPartialUserState(ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.CorDebugUserState* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.CorDebugUserState*, int> )__vtable[35]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetPartialUserState(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.CorDebugUserState* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetPartialUserState(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetConnectionID(ulong vmThread, uint* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[36]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetConnectionID(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, uint* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetConnectionID(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTaskID(ulong vmThread, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[37]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTaskID(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTaskID(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.TryGetVolatileOSThreadID(ulong vmThread, uint* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[38]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_TryGetVolatileOSThreadID(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, uint* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.TryGetVolatileOSThreadID(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetUniqueThreadID(ulong vmThread, uint* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[39]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetUniqueThreadID(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, uint* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetUniqueThreadID(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetCurrentException(ulong vmThread, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[40]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetCurrentException(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetCurrentException(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObjectForCCW(ulong ccwPtr, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[41]);
        {
            int __retVal;
            {
                __retVal = __target(__this, ccwPtr, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObjectForCCW(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong ccwPtr, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObjectForCCW(ccwPtr, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetCurrentCustomDebuggerNotification(ulong vmThread, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[42]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetCurrentCustomDebuggerNotification(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetCurrentCustomDebuggerNotification(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetCurrentAppDomain(ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong*, int> )__vtable[43]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetCurrentAppDomain(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetCurrentAppDomain(pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.ResolveAssembly(ulong vmScope, uint tkAssemblyRef, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, ulong*, int> )__vtable[44]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmScope, tkAssemblyRef, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_ResolveAssembly(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmScope, uint tkAssemblyRef, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.ResolveAssembly(vmScope, tkAssemblyRef, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetNativeCodeSequencePointsAndVarInfo(ulong vmMethodDesc, ulong startAddress, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fCodeAvailable, nint pNativeVarData, nint pSequencePoints)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, nint, nint, int> )__vtable[45]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmMethodDesc, startAddress, fCodeAvailable, pNativeVarData, pSequencePoints);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetNativeCodeSequencePointsAndVarInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmMethodDesc, ulong startAddress, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fCodeAvailable, nint pNativeVarData, nint pSequencePoints)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetNativeCodeSequencePointsAndVarInfo(vmMethodDesc, startAddress, fCodeAvailable, pNativeVarData, pSequencePoints);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetManagedStoppedContext(ulong vmThread, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[46]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetManagedStoppedContext(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetManagedStoppedContext(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.CreateStackWalk(ulong vmThread, nint pInternalContextBuffer, nuint* ppSFIHandle)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, nuint*, int> )__vtable[47]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pInternalContextBuffer, ppSFIHandle);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_CreateStackWalk(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, nint pInternalContextBuffer, nuint* ppSFIHandle)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.CreateStackWalk(vmThread, pInternalContextBuffer, ppSFIHandle);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.DeleteStackWalk(nuint ppSFIHandle)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, int> )__vtable[48]);
        {
            int __retVal;
            {
                __retVal = __target(__this, ppSFIHandle);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_DeleteStackWalk(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint ppSFIHandle)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.DeleteStackWalk(ppSFIHandle);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetStackWalkCurrentContext(nuint pSFIHandle, nint pContext)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, nint, int> )__vtable[49]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pSFIHandle, pContext);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetStackWalkCurrentContext(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint pSFIHandle, nint pContext)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetStackWalkCurrentContext(pSFIHandle, pContext);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.SetStackWalkCurrentContext(ulong vmThread, nuint pSFIHandle, int flag, nint pContext)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nuint, int, nint, int> )__vtable[50]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pSFIHandle, flag, pContext);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_SetStackWalkCurrentContext(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, nuint pSFIHandle, int flag, nint pContext)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.SetStackWalkCurrentContext(vmThread, pSFIHandle, flag, pContext);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.UnwindStackWalkFrame(nuint pSFIHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[51]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pSFIHandle, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_UnwindStackWalkFrame(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint pSFIHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.UnwindStackWalkFrame(pSFIHandle, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.CheckContext(ulong vmThread, nint pContext)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[52]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pContext);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_CheckContext(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, nint pContext)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.CheckContext(vmThread, pContext);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetStackWalkCurrentFrameInfo(nuint pSFIHandle, nint pFrameData, int* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, nint, int*, int> )__vtable[53]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pSFIHandle, pFrameData, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetStackWalkCurrentFrameInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint pSFIHandle, nint pFrameData, int* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetStackWalkCurrentFrameInfo(pSFIHandle, pFrameData, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetCountOfInternalFrames(ulong vmThread, uint* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[54]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetCountOfInternalFrames(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, uint* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetCountOfInternalFrames(vmThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnumerateInternalFrames(ulong vmThread, nint fpCallback, nint pUserData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, nint, int> )__vtable[55]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, fpCallback, pUserData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnumerateInternalFrames(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, nint fpCallback, nint pUserData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnumerateInternalFrames(vmThread, fpCallback, pUserData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetStackParameterSize(ulong controlPC, uint* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[56]);
        {
            int __retVal;
            {
                __retVal = __target(__this, controlPC, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetStackParameterSize(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong controlPC, uint* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetStackParameterSize(controlPC, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetFramePointer(nuint pSFIHandle, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, ulong*, int> )__vtable[57]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pSFIHandle, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetFramePointer(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint pSFIHandle, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetFramePointer(pSFIHandle, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsLeafFrame(ulong vmThread, byte* pContext, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, byte*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[58]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pContext, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsLeafFrame(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, byte* pContext, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsLeafFrame(vmThread, pContext, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetContext(ulong vmThread, byte* pContextBuffer)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, byte*, int> )__vtable[59]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pContextBuffer);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetContext(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, byte* pContextBuffer)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetContext(vmThread, pContextBuffer);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.ConvertContextToDebuggerRegDisplay(nint pInContext, nint pOutDRD, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fActive)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nint, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> )__vtable[60]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pInContext, pOutDRD, fActive);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_ConvertContextToDebuggerRegDisplay(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nint pInContext, nint pOutDRD, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fActive)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.ConvertContextToDebuggerRegDisplay(pInContext, pOutDRD, fActive);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsDiagnosticsHiddenOrLCGMethod(ulong vmMethodDesc, int* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, int*, int> )__vtable[61]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmMethodDesc, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsDiagnosticsHiddenOrLCGMethod(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmMethodDesc, int* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsDiagnosticsHiddenOrLCGMethod(vmMethodDesc, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetVarArgSig(ulong VASigCookieAddr, ulong* pArgBase, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int> )__vtable[62]);
        {
            int __retVal;
            {
                __retVal = __target(__this, VASigCookieAddr, pArgBase, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetVarArgSig(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong VASigCookieAddr, ulong* pArgBase, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetVarArgSig(VASigCookieAddr, pArgBase, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.RequiresAlign8(ulong thExact, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[63]);
        {
            int __retVal;
            {
                __retVal = __target(__this, thExact, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_RequiresAlign8(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong thExact, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.RequiresAlign8(thExact, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.ResolveExactGenericArgsToken(uint dwExactGenericArgsTokenIndex, ulong rawToken, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, uint, ulong, ulong*, int> )__vtable[64]);
        {
            int __retVal;
            {
                __retVal = __target(__this, dwExactGenericArgsTokenIndex, rawToken, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_ResolveExactGenericArgsToken(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, uint dwExactGenericArgsTokenIndex, ulong rawToken, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.ResolveExactGenericArgsToken(dwExactGenericArgsTokenIndex, rawToken, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetILCodeAndSig(ulong vmAssembly, uint functionToken, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pTargetBuffer, uint* pLocalSigToken)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, uint*, int> )__vtable[65]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, functionToken, pTargetBuffer, pLocalSigToken);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetILCodeAndSig(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, uint functionToken, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pTargetBuffer, uint* pLocalSigToken)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetILCodeAndSig(vmAssembly, functionToken, pTargetBuffer, pLocalSigToken);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetNativeCodeInfo(ulong vmAssembly, uint functionToken, nint pJitManagerList)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, nint, int> )__vtable[66]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, functionToken, pJitManagerList);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetNativeCodeInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, uint functionToken, nint pJitManagerList)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetNativeCodeInfo(vmAssembly, functionToken, pJitManagerList);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetNativeCodeInfoForAddr(ulong codeAddress, nint pCodeInfo, ulong* pVmModule, uint* pFunctionToken)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, ulong*, uint*, int> )__vtable[67]);
        {
            int __retVal;
            {
                __retVal = __target(__this, codeAddress, pCodeInfo, pVmModule, pFunctionToken);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetNativeCodeInfoForAddr(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong codeAddress, nint pCodeInfo, ulong* pVmModule, uint* pFunctionToken)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetNativeCodeInfoForAddr(codeAddress, pCodeInfo, pVmModule, pFunctionToken);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsValueType(ulong vmTypeHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[68]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmTypeHandle, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsValueType(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmTypeHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsValueType(vmTypeHandle, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.HasTypeParams(ulong vmTypeHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[69]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmTypeHandle, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_HasTypeParams(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmTypeHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.HasTypeParams(vmTypeHandle, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetClassInfo(ulong thExact, nint pData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[70]);
        {
            int __retVal;
            {
                __retVal = __target(__this, thExact, pData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetClassInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong thExact, nint pData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetClassInfo(thExact, pData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetInstantiationFieldInfo(ulong vmAssembly, ulong vmTypeHandle, ulong vmExactMethodTable, nint pFieldList, nuint* pObjectSize)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong, ulong, nint, nuint*, int> )__vtable[71]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmAssembly, vmTypeHandle, vmExactMethodTable, pFieldList, pObjectSize);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetInstantiationFieldInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmAssembly, ulong vmTypeHandle, ulong vmExactMethodTable, nint pFieldList, nuint* pObjectSize)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetInstantiationFieldInfo(vmAssembly, vmTypeHandle, vmExactMethodTable, pFieldList, pObjectSize);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.TypeHandleToExpandedTypeInfo(int boxed, ulong vmTypeHandle, nint pData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int, ulong, nint, int> )__vtable[72]);
        {
            int __retVal;
            {
                __retVal = __target(__this, boxed, vmTypeHandle, pData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_TypeHandleToExpandedTypeInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int boxed, ulong vmTypeHandle, nint pData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.TypeHandleToExpandedTypeInfo(boxed, vmTypeHandle, pData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObjectExpandedTypeInfo(int boxed, ulong addr, nint pTypeInfo)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int, ulong, nint, int> )__vtable[73]);
        {
            int __retVal;
            {
                __retVal = __target(__this, boxed, addr, pTypeInfo);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObjectExpandedTypeInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int boxed, ulong addr, nint pTypeInfo)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObjectExpandedTypeInfo(boxed, addr, pTypeInfo);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObjectExpandedTypeInfoFromID(int boxed, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID id, nint pTypeInfo)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID, nint, int> )__vtable[74]);
        {
            int __retVal;
            {
                __retVal = __target(__this, boxed, id, pTypeInfo);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObjectExpandedTypeInfoFromID(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int boxed, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID id, nint pTypeInfo)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObjectExpandedTypeInfoFromID(boxed, id, pTypeInfo);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTypeHandle(ulong vmModule, uint metadataToken, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, ulong*, int> )__vtable[75]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, metadataToken, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTypeHandle(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, uint metadataToken, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTypeHandle(vmModule, metadataToken, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetApproxTypeHandle(nint pTypeData, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nint, ulong*, int> )__vtable[76]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pTypeData, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetApproxTypeHandle(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nint pTypeData, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetApproxTypeHandle(pTypeData, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetExactTypeHandle(nint pTypeData, nint pArgInfo, ulong* pVmTypeHandle)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nint, nint, ulong*, int> )__vtable[77]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pTypeData, pArgInfo, pVmTypeHandle);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetExactTypeHandle(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nint pTypeData, nint pArgInfo, ulong* pVmTypeHandle)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetExactTypeHandle(pTypeData, pArgInfo, pVmTypeHandle);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetMethodDescParams(ulong vmMethodDesc, ulong genericsToken, uint* pcGenericClassTypeParams, nint pGenericTypeParams)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong, uint*, nint, int> )__vtable[78]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmMethodDesc, genericsToken, pcGenericClassTypeParams, pGenericTypeParams);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetMethodDescParams(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmMethodDesc, ulong genericsToken, uint* pcGenericClassTypeParams, nint pGenericTypeParams)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetMethodDescParams(vmMethodDesc, genericsToken, pcGenericClassTypeParams, pGenericTypeParams);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetThreadStaticAddress(ulong vmField, ulong vmRuntimeThread, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong, ulong*, int> )__vtable[79]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmField, vmRuntimeThread, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetThreadStaticAddress(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmField, ulong vmRuntimeThread, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetThreadStaticAddress(vmField, vmRuntimeThread, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetCollectibleTypeStaticAddress(ulong vmField, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[80]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmField, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetCollectibleTypeStaticAddress(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmField, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetCollectibleTypeStaticAddress(vmField, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetEnCHangingFieldInfo(nint pEnCFieldInfo, nint pFieldData, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pfStatic)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nint, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[81]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pEnCFieldInfo, pFieldData, pfStatic);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetEnCHangingFieldInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nint pEnCFieldInfo, nint pFieldData, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pfStatic)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetEnCHangingFieldInfo(pEnCFieldInfo, pFieldData, pfStatic);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTypeHandleParams(ulong vmTypeHandle, nint pParams)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[82]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmTypeHandle, pParams);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTypeHandleParams(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmTypeHandle, nint pParams)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTypeHandleParams(vmTypeHandle, pParams);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetSimpleType(int simpleType, uint* pMetadataToken, ulong* pVmModule)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int, uint*, ulong*, int> )__vtable[83]);
        {
            int __retVal;
            {
                __retVal = __target(__this, simpleType, pMetadataToken, pVmModule);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetSimpleType(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int simpleType, uint* pMetadataToken, ulong* pVmModule)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetSimpleType(simpleType, pMetadataToken, pVmModule);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsExceptionObject(ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[84]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsExceptionObject(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsExceptionObject(vmObject, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetStackFramesFromException(ulong vmObject, nint pDacStackFrames)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[85]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, pDacStackFrames);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetStackFramesFromException(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, nint pDacStackFrames)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetStackFramesFromException(vmObject, pDacStackFrames);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsRcw(ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[86]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsRcw(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsRcw(vmObject, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetRcwCachedInterfacePointers(ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL bIInspectableOnly, nint pDacItfPtrs)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, nint, int> )__vtable[87]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, bIInspectableOnly, pDacItfPtrs);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetRcwCachedInterfacePointers(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL bIInspectableOnly, nint pDacItfPtrs)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetRcwCachedInterfacePointers(vmObject, bIInspectableOnly, pDacItfPtrs);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTypedByRefInfo(ulong pTypedByRef, nint pObjectData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[88]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pTypedByRef, pObjectData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTypedByRefInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong pTypedByRef, nint pObjectData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTypedByRefInfo(pTypedByRef, pObjectData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetStringData(ulong objectAddress, nint pObjectData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[89]);
        {
            int __retVal;
            {
                __retVal = __target(__this, objectAddress, pObjectData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetStringData(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong objectAddress, nint pObjectData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetStringData(objectAddress, pObjectData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetArrayData(ulong objectAddress, nint pObjectData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, int> )__vtable[90]);
        {
            int __retVal;
            {
                __retVal = __target(__this, objectAddress, pObjectData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetArrayData(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong objectAddress, nint pObjectData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetArrayData(objectAddress, pObjectData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetBasicObjectInfo(ulong objectAddress, int type, nint pObjectData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, int, nint, int> )__vtable[91]);
        {
            int __retVal;
            {
                __retVal = __target(__this, objectAddress, type, pObjectData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetBasicObjectInfo(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong objectAddress, int type, nint pObjectData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetBasicObjectInfo(objectAddress, type, pObjectData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetDebuggerControlBlockAddress(ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong*, int> )__vtable[92]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetDebuggerControlBlockAddress(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetDebuggerControlBlockAddress(pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObjectFromRefPtr(ulong ptr, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[93]);
        {
            int __retVal;
            {
                __retVal = __target(__this, ptr, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObjectFromRefPtr(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong ptr, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObjectFromRefPtr(ptr, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObject(ulong ptr, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[94]);
        {
            int __retVal;
            {
                __retVal = __target(__this, ptr, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObject(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong ptr, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObject(ptr, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetVmObjectHandle(ulong handleAddress, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[95]);
        {
            int __retVal;
            {
                __retVal = __target(__this, handleAddress, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetVmObjectHandle(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong handleAddress, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetVmObjectHandle(handleAddress, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsVmObjectHandleValid(ulong vmHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[96]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmHandle, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsVmObjectHandleValid(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsVmObjectHandleValid(vmHandle, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetHandleAddressFromVmHandle(ulong vmHandle, ulong* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[97]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmHandle, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetHandleAddressFromVmHandle(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmHandle, ulong* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetHandleAddressFromVmHandle(vmHandle, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObjectContents(ulong obj, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer*, int> )__vtable[98]);
        {
            int __retVal;
            {
                __retVal = __target(__this, obj, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObjectContents(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong obj, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiTargetBuffer* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObjectContents(obj, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetThreadOwningMonitorLock(ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiMonitorLockInfo* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiMonitorLockInfo*, int> )__vtable[99]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetThreadOwningMonitorLock(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiMonitorLockInfo* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetThreadOwningMonitorLock(vmObject, pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnumerateMonitorEventWaitList(ulong vmObject, nint fpCallback, nint pUserData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, nint, nint, int> )__vtable[100]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, fpCallback, pUserData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnumerateMonitorEventWaitList(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, nint fpCallback, nint pUserData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnumerateMonitorEventWaitList(vmObject, fpCallback, pUserData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAttachStateFlags(int* pRetVal)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int*, int> )__vtable[101]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pRetVal);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAttachStateFlags(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int* pRetVal)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAttachStateFlags(pRetVal);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetMetaDataFileInfoFromPEFile(ulong vmPEAssembly, uint* dwTimeStamp, uint* dwImageSize, nint pStrFilename, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, uint*, nint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[102]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmPEAssembly, dwTimeStamp, dwImageSize, pStrFilename, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetMetaDataFileInfoFromPEFile(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmPEAssembly, uint* dwTimeStamp, uint* dwImageSize, nint pStrFilename, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetMetaDataFileInfoFromPEFile(vmPEAssembly, dwTimeStamp, dwImageSize, pStrFilename, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsThreadSuspendedOrHijacked(ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[103]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmThread, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsThreadSuspendedOrHijacked(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmThread, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsThreadSuspendedOrHijacked(vmThread, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.CreateHeapWalk(nuint* pHandle)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint*, int> )__vtable[104]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pHandle);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_CreateHeapWalk(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint* pHandle)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.CreateHeapWalk(pHandle);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.DeleteHeapWalk(nuint handle)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, int> )__vtable[105]);
        {
            int __retVal;
            {
                __retVal = __target(__this, handle);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_DeleteHeapWalk(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint handle)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.DeleteHeapWalk(handle);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.WalkHeap(nuint handle, uint count, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPOBJECT* objects, uint* fetched)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPOBJECT*, uint*, int> )__vtable[106]);
        {
            int __retVal;
            {
                __retVal = __target(__this, handle, count, objects, fetched);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_WalkHeap(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint handle, uint count, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPOBJECT* objects, uint* fetched)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.WalkHeap(handle, count, objects, fetched);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnumerateHeapSegments(delegate* unmanaged<ulong, ulong, int, uint, nint, void> fpCallback, nint pUserData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, delegate* unmanaged<ulong, ulong, int, uint, nint, void> , nint, int> )__vtable[107]);
        {
            int __retVal;
            {
                __retVal = __target(__this, fpCallback, pUserData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnumerateHeapSegments(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, delegate* unmanaged<ulong, ulong, int, uint, nint, void> fpCallback, nint pUserData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnumerateHeapSegments(fpCallback, pUserData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsValidObject(ulong obj, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[108]);
        {
            int __retVal;
            {
                __retVal = __target(__this, obj, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsValidObject(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong obj, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsValidObject(obj, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.CreateRefWalk(nuint* pHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL walkStacks, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL walkFQ, uint handleWalkMask)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, uint, int> )__vtable[109]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pHandle, walkStacks, walkFQ, handleWalkMask);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_CreateRefWalk(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint* pHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL walkStacks, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL walkFQ, uint handleWalkMask)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.CreateRefWalk(pHandle, walkStacks, walkFQ, handleWalkMask);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.DeleteRefWalk(nuint handle)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, int> )__vtable[110]);
        {
            int __retVal;
            {
                __retVal = __target(__this, handle);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_DeleteRefWalk(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint handle)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.DeleteRefWalk(handle);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.WalkRefs(nuint handle, uint count, nint refs, uint* pFetched)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nuint, uint, nint, uint*, int> )__vtable[111]);
        {
            int __retVal;
            {
                __retVal = __target(__this, handle, count, refs, pFetched);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_WalkRefs(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nuint handle, uint count, nint refs, uint* pFetched)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.WalkRefs(handle, count, refs, pFetched);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTypeID(ulong obj, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID* pType)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID*, int> )__vtable[112]);
        {
            int __retVal;
            {
                __retVal = __target(__this, obj, pType);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTypeID(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong obj, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID* pType)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTypeID(obj, pType);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTypeIDForType(ulong vmTypeHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID* pId)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID*, int> )__vtable[113]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmTypeHandle, pId);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTypeIDForType(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmTypeHandle, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPEID* pId)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTypeIDForType(vmTypeHandle, pId);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetObjectFields(nint id, uint celt, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_FIELD* layout, uint* pceltFetched)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, nint, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_FIELD*, uint*, int> )__vtable[114]);
        {
            int __retVal;
            {
                __retVal = __target(__this, id, celt, layout, pceltFetched);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetObjectFields(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, nint id, uint celt, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_FIELD* layout, uint* pceltFetched)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetObjectFields(id, celt, layout, pceltFetched);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetTypeLayout(ulong id, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPE_LAYOUT* pLayout)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPE_LAYOUT*, int> )__vtable[115]);
        {
            int __retVal;
            {
                __retVal = __target(__this, id, pLayout);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetTypeLayout(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong id, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_TYPE_LAYOUT* pLayout)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetTypeLayout(id, pLayout);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetArrayLayout(ulong id, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_ARRAY_LAYOUT* pLayout)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_ARRAY_LAYOUT*, int> )__vtable[116]);
        {
            int __retVal;
            {
                __retVal = __target(__this, id, pLayout);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetArrayLayout(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong id, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_ARRAY_LAYOUT* pLayout)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetArrayLayout(id, pLayout);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetGCHeapInformation(global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPINFO* pHeapInfo)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPINFO*, int> )__vtable[117]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pHeapInfo);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetGCHeapInformation(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.COR_HEAPINFO* pHeapInfo)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetGCHeapInformation(pHeapInfo);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetPEFileMDInternalRW(ulong vmPEAssembly, ulong* pAddrMDInternalRW)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[118]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmPEAssembly, pAddrMDInternalRW);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetPEFileMDInternalRW(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmPEAssembly, ulong* pAddrMDInternalRW)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetPEFileMDInternalRW(vmPEAssembly, pAddrMDInternalRW);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.AreOptimizationsDisabled(ulong vmModule, uint methodTk, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pOptimizationsDisabled)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[119]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, methodTk, pOptimizationsDisabled);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_AreOptimizationsDisabled(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, uint methodTk, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pOptimizationsDisabled)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.AreOptimizationsDisabled(vmModule, methodTk, pOptimizationsDisabled);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetDefinesBitField(uint* pDefines)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, uint*, int> )__vtable[120]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pDefines);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetDefinesBitField(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, uint* pDefines)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetDefinesBitField(pDefines);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetMDStructuresVersion(uint* pMDStructuresVersion)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, uint*, int> )__vtable[121]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pMDStructuresVersion);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetMDStructuresVersion(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, uint* pMDStructuresVersion)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetMDStructuresVersion(pMDStructuresVersion);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetActiveRejitILCodeVersionNode(ulong vmModule, uint methodTk, ulong* pVmILCodeVersionNode)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint, ulong*, int> )__vtable[122]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, methodTk, pVmILCodeVersionNode);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetActiveRejitILCodeVersionNode(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, uint methodTk, ulong* pVmILCodeVersionNode)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetActiveRejitILCodeVersionNode(vmModule, methodTk, pVmILCodeVersionNode);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetNativeCodeVersionNode(ulong vmMethod, ulong codeStartAddress, ulong* pVmNativeCodeVersionNode)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong, ulong*, int> )__vtable[123]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmMethod, codeStartAddress, pVmNativeCodeVersionNode);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetNativeCodeVersionNode(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmMethod, ulong codeStartAddress, ulong* pVmNativeCodeVersionNode)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetNativeCodeVersionNode(vmMethod, codeStartAddress, pVmNativeCodeVersionNode);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetILCodeVersionNode(ulong vmNativeCodeVersionNode, ulong* pVmILCodeVersionNode)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[124]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmNativeCodeVersionNode, pVmILCodeVersionNode);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetILCodeVersionNode(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmNativeCodeVersionNode, ulong* pVmILCodeVersionNode)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetILCodeVersionNode(vmNativeCodeVersionNode, pVmILCodeVersionNode);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetILCodeVersionNodeData(ulong ilCodeVersionNode, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiSharedReJitInfo* pData)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiSharedReJitInfo*, int> )__vtable[125]);
        {
            int __retVal;
            {
                __retVal = __target(__this, ilCodeVersionNode, pData);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetILCodeVersionNodeData(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong ilCodeVersionNode, global::Microsoft.Diagnostics.DataContractReader.Legacy.DacDbiSharedReJitInfo* pData)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetILCodeVersionNodeData(ilCodeVersionNode, pData);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.EnableGCNotificationEvents(global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fEnable)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL, int> )__vtable[126]);
        {
            int __retVal;
            {
                __retVal = __target(__this, fEnable);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_EnableGCNotificationEvents(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL fEnable)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.EnableGCNotificationEvents(fEnable);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsDelegate(ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[127]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmObject, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsDelegate(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmObject, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsDelegate(vmObject, pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetDelegateType(ulong delegateObject, int* delegateType)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, int*, int> )__vtable[128]);
        {
            int __retVal;
            {
                __retVal = __target(__this, delegateObject, delegateType);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetDelegateType(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong delegateObject, int* delegateType)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetDelegateType(delegateObject, delegateType);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetDelegateFunctionData(int delegateType, ulong delegateObject, ulong* ppFunctionAssembly, uint* pMethodDef)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int, ulong, ulong*, uint*, int> )__vtable[129]);
        {
            int __retVal;
            {
                __retVal = __target(__this, delegateType, delegateObject, ppFunctionAssembly, pMethodDef);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetDelegateFunctionData(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int delegateType, ulong delegateObject, ulong* ppFunctionAssembly, uint* pMethodDef)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetDelegateFunctionData(delegateType, delegateObject, ppFunctionAssembly, pMethodDef);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetDelegateTargetObject(int delegateType, ulong delegateObject, ulong* ppTargetObj, ulong* ppTargetAppDomain)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, int, ulong, ulong*, ulong*, int> )__vtable[130]);
        {
            int __retVal;
            {
                __retVal = __target(__this, delegateType, delegateObject, ppTargetObj, ppTargetAppDomain);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetDelegateTargetObject(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, int delegateType, ulong delegateObject, ulong* ppTargetObj, ulong* ppTargetAppDomain)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetDelegateTargetObject(delegateType, delegateObject, ppTargetObj, ppTargetAppDomain);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.IsModuleMapped(ulong pModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* isModuleMapped)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[131]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pModule, isModuleMapped);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_IsModuleMapped(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong pModule, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* isModuleMapped)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.IsModuleMapped(pModule, isModuleMapped);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.MetadataUpdatesApplied(global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL*, int> )__vtable[132]);
        {
            int __retVal;
            {
                __retVal = __target(__this, pResult);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_MetadataUpdatesApplied(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, global::Microsoft.Diagnostics.DataContractReader.Legacy.Interop.BOOL* pResult)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.MetadataUpdatesApplied(pResult);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAssemblyFromModule(ulong vmModule, ulong* pVmAssembly)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, int> )__vtable[133]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmModule, pVmAssembly);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAssemblyFromModule(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmModule, ulong* pVmAssembly)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAssemblyFromModule(vmModule, pVmAssembly);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.ParseContinuation(ulong continuationAddress, ulong* pDiagnosticIP, ulong* pNextContinuation, uint* pState)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong*, ulong*, uint*, int> )__vtable[134]);
        {
            int __retVal;
            {
                __retVal = __target(__this, continuationAddress, pDiagnosticIP, pNextContinuation, pState);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_ParseContinuation(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong continuationAddress, ulong* pDiagnosticIP, ulong* pNextContinuation, uint* pState)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.ParseContinuation(continuationAddress, pDiagnosticIP, pNextContinuation, pState);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetAsyncLocals(ulong vmMethod, ulong codeAddr, uint state, nint pAsyncLocals)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, ulong, uint, nint, int> )__vtable[135]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmMethod, codeAddr, state, pAsyncLocals);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetAsyncLocals(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmMethod, ulong codeAddr, uint state, nint pAsyncLocals)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetAsyncLocals(vmMethod, codeAddr, state, pAsyncLocals);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.ComInterfaceGenerator", "11.0.14.22804")]
    [global::System.Runtime.CompilerServices.SkipLocalsInitAttribute]
    int global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface.GetGenericArgTokenIndex(ulong vmMethod, uint* pIndex)
    {
        var(__this, __vtable) = ((global::System.Runtime.InteropServices.Marshalling.IUnmanagedVirtualMethodTableProvider)this).GetVirtualMethodTableInfoForKey(typeof(global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface));
        var __target = ((delegate* unmanaged[MemberFunction]<void*, ulong, uint*, int> )__vtable[136]);
        {
            int __retVal;
            {
                __retVal = __target(__this, vmMethod, pIndex);
            }
    
            // NotifyForSuccessfulInvoke - Keep alive any managed objects that need to stay alive across the call.
            global::System.GC.KeepAlive(this);
            return __retVal;
        }
    }

    [global::System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute(CallConvs = new[] { typeof(global::System.Runtime.CompilerServices.CallConvMemberFunction) })]
    internal static int ABI_GetGenericArgTokenIndex(global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch* __this_native, ulong vmMethod, uint* pIndex)
    {
        global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface @this = default;
        int __retVal = default;
        try
        {
            // Unmarshal - Convert native data to managed data.
            @this = global::System.Runtime.InteropServices.ComWrappers.ComInterfaceDispatch.GetInstance<global::Microsoft.Diagnostics.DataContractReader.Legacy.IDacDbiInterface>(__this_native);
            __retVal = @this.GetGenericArgTokenIndex(vmMethod, pIndex);
        }
        catch (global::System.Exception __exception)
        {
            __retVal = global::System.Runtime.InteropServices.Marshalling.ExceptionAsHResultMarshaller<int>.ConvertToUnmanaged(__exception);
        }
    
        return __retVal;
    }
}

namespace Microsoft.Diagnostics.DataContractReader.Legacy
{
    [global::System.Runtime.InteropServices.Marshalling.IUnknownDerivedAttribute<InterfaceInformation, InterfaceImplementation>]
    public unsafe partial interface IDacDbiInterface
    {
    }
}