- Use a global structure instead of pointer - Allocate only the GUID buffer - Keep track of allocated size and number of GUIDs - Grow in steps of 8 GUIDs - Use ExAllocatePoolWithTag instead of ExAllocatePool - Use IsEqualGUID See CORE-12791