ExpCrossVmWnfPush

INT64 __fastcall ExpCrossVmWnfPush(INT64 a1, UINT64 a2, INT64 a3, UINT64 a4, INT64 a5, INT64 a6){
  struct EX_RUNDOWN_REF *v6; 
  unsigned int v7; 
  unsigned int v9; 
  UINT64 ExtensionTable; 
  unsigned int v11; 
  v6 = ExpCrossVmIntExtensionHostRoot;
  v7 = a4;
  if( (_DWORD)a2 )
    v6 = ExpCrossVmIntExtensionHostGuest;
  v9 = a2;
  ExtensionTable = ExGetExtensionTable(v6);
  if( ExtensionTable )
  {
    v11 = (*(__int64(__fastcall **)(_QWORD, _QWORD, INT64, _QWORD, INT64, _DWORD))(ExtensionTable + 112))(
            0i64,
            v9,
            a3,
            v7,
            a5,
            a6);
    ExReleaseExtensionTable(v6);
  }
  else
  {
    return(unsigned int)-1073741822;
  }
  return v11;
}

Referenced by:

ExpNtDeleteWnfStateData
ExpNtUpdateWnfStateData