ExpWnfAllocateScopeMap

NTSTATUS __stdcall ExpWnfAllocateScopeMap(_WNF_SCOPE_MAP **ScopeMap){
  VOID **PoolWithTag; 
  _WNF_SCOPE_MAP *v3; 
  unsigned int v4; 
  _LIST_ENTRY *p_MapEntryHead; 

  PoolWithTag = ExAllocatePoolWithTag(1ui64, 0xB0ui64, 543583831i64);
  v3 = (_WNF_SCOPE_MAP *)PoolWithTag;
  if( !PoolWithTag )
    return -1073741670;
  memset((char *)PoolWithTag + 4, 0i64, 0xACu);
  v4 = 0;
  v3->Header = (_WNF_NODE_HEADER)11536641;
  p_MapEntryHead = &v3->ByDataScope[0].MapEntryHead;
  do
  {
    p_MapEntryHead->Blink = p_MapEntryHead;
    ++v4;
    p_MapEntryHead->Flink = p_MapEntryHead;
    p_MapEntryHead[-1].Blink = 0i64;
    p_MapEntryHead = (_LIST_ENTRY *)((char *)p_MapEntryHead + 24);
  }
  while( v4 < 6 );
  *ScopeMap = v3;
  return 0;
}

Referenced by:

ExpWnfResolveScopeInstance