AslpFileGetNtHeaderAttributes

__int64 __fastcall AslpFileGetNtHeaderAttributes(
        _DWORD *a1,
        _DWORD *a2,
        _DWORD *a3,
        _DWORD *a4,
        _WORD *a5,
        _WORD *a6,
        _WORD *a7,
        __int64 a8){
  int ImageNtHeader; 
  unsigned int v13; 
  __int64 v14; 
  __int16 v15; 
  int v17; 
  __int64 v18[3]; 
  v18[0] = 0i64;
  ImageNtHeader = AslpFileGetImageNtHeader(v18, a8);
  v13 = ImageNtHeader;
  if( ImageNtHeader >= 0 )
  {
    v14 = v18[0];
    *a2 = (unsigned __int8)*(_WORD *)(v18[0] + 70) + ((unsigned __int8)*(_WORD *)(v18[0] + 68) << 16);
    *a3 = *(_DWORD *)(v14 + 8);
    v15 = *(_WORD *)(v14 + 24);
    *a7 = v15;
    *a5 = *(_WORD *)(v14 + 4);
    if( v15 == 267 || v15 == 523 )
    {
      *a1 = *(_DWORD *)(v14 + 88);
      *a4 = *(_DWORD *)(v14 + 80);
      *a6 = *(_WORD *)(v14 + 92);
      return 0;
    }
    else
    {
      *a1 = 0;
      *a4 = 0;
      *a6 = 0;
      return(unsigned int)-1073741637;
    }
  }
  else
  {
    v17 = ImageNtHeader;
    AslLogCallPrintf(1ui64, "AslpFileGetNtHeaderAttributes", 0xAA5ui64, "AslpFileGetImageNtHeader failed [%x]", v17);
  }
  return v13;
}

Referenced by:

AslpFileGetHeaderAttributesPE