Extract a variable length part of a string containing special characters in TSQL

I have the following data in a column:

I need the 3rd set of data after the * to form a column.

My output would be:

I have been trying several forms of substr( Index()) and Substr(instr()) but cannot display this correctly. Please help.

Thank you

so what's the rule here? lets say you have 10K rows, that rule should apply to all 10K rows

The second one looks like the data up to the * but omitting the first 5 characters
The first omits the first 5 chars then takes the next 3 - not sure why.
Your description about the data after the * doesn't look like either

The second is something like

select right(col,len(col)-5)
select col = left(col,charindex('',col)-1) from tbl where charindex('',col) > 1
) a

this is so random and oogly!

create table #rocky(blob varchar(150));

insert into #rocky
select '20191250563622**TB' union
select '20192DSGN**DIPTS.'

;with oogly
	select substring(left(blob,charindex('*',blob,0)-1),6, len(blob)) as slice_dice, blob
	  from #rocky

select case 
	    when ISNUMERIC(slice_dice) = 0 then slice_dice
		else left(slice_dice, 3)
  from oogly

drop table #rocky

Thank you