Being able to distinguish a GUID from random data can be useful when debugging obscure code defects.
On Windows each GUID generated is of version 4 therefore it has 4 as the first half-byte of the third part. So if the 16-byte sequence violtates that rule it is not a version 4 GUID. For example,
567E1ECB-EA1C-42D3-A3ED-87A5D824D167
could be either a version 4 GUID or anything else, but
567E1ECB-EA1C-02D3-A3ED-87A5D824D167 //third section starts with 0, not with 4
is not a version 4 GUID.
What are other signs of a 16-byte memory block being or not being a valid GUID?