NTSTATUS
IoReadDiskSignature(
  IN  PDEVICE_OBJECT DeviceObject,
  IN  ULONG BytesPerSector,
  OUT PDISK_SIGNATURE Signature
  );

Routine Description:

    This routine will read the disk signature information from the disk. For
    MBR disks, it will read the disk signature and calculate a checksum of the 
    contents of the MBR. For GPT disks, it will obtain the EFI DiskId from
    the disk.

Arguments:

    DeviceObject - A disk device object.

    BytesPerSector - The number of bytes per sector on this disk.

    DiskSignature - A buffer where the disk information will be stored.
    
Return Value:

    NT Status code.