IopVerifyDiskSignature

UINT8 __stdcall IopVerifyDiskSignature(
        _DRIVE_LAYOUT_INFORMATION_EX *DriveLayout,
        _ARC_DISK_SIGNATURE *LoaderDiskBlock,
        UINT64 *DiskSignature){
  ULONG Signature; 
  __int64 v6; 

  if( *((_BYTE *)LoaderDiskBlock + 36) )
  {
    if( DriveLayout->PartitionStyle )
    {
      if( DriveLayout->PartitionStyle == 1 && *((_BYTE *)LoaderDiskBlock + 38) )
      {
        v6 = *((_QWORD *)LoaderDiskBlock + 5) - *(_QWORD *)&DriveLayout->Mbr.Signature;
        if( !v6 )
          v6 = *((_QWORD *)LoaderDiskBlock + 6) - *(_QWORD *)DriveLayout->Gpt.DiskId.Data4;
        if( !v6 )
        {
          if( DiskSignature )
            *(_DWORD *)DiskSignature = 0;
          return 1;
        }
      }
    }
    else
    {
      Signature = DriveLayout->Mbr.Signature;
      if( LoaderDiskBlock[4] == Signature )
      {
        if( DiskSignature )
          *(_DWORD *)DiskSignature = Signature;
        return 1;
      }
    }
  }
  return 0;
}

Referenced by:

IopCreateArcName
IopGetBootDiskInformation