You only have to add some minus sign, then you can convert it:
DECLARE @string varchar(40) = 'aa0d586c8a495c9400de3796fa8e0cbdef0';
SELECT CONVERT(uniqueidentifier,
SUBSTRING(@string, 1, 8) + '-' +
SUBSTRING(@string, 9, 4) + '-' +
SUBSTRING(@string, 14, 4) + '-' +
SUBSTRING(@string, 19, 4) + '-' +
SUBSTRING(@string, 24, 12)) AS MyGUID
Olaf Helper
[
Blog] [
Xing] [
MVP]