If you used tasklist in a batch with the /v (verbose) and /fo:csv switches you could catch the window title in full
This is the header:
"Image Name","PID","Session Name","Session#","Mem Usage","Status","User Name","CPU Time","Window Title"
For example, this session of Firefox right now shows up:
"firefox.exe","3292","Console","1","711,312 K","Running","MIKEANDBARBIE2\Mike","0:08:51","Preview - Re: Batch for closing 2 instances of software - Mozilla Firefox"
You can use for /f with comma delim and catch the various tokens, e.g.
for /f "tokens=1-10 delims=," %%a in ('tasklist /v /FO:CSV ^| find /i "firefox"') do @echo PID %%b Win title %%j
PID "3292" Win title "Preview - Re: Batch for closing 2 instances of software - Mozilla Firefox"
You could present the PID (token 2) and window title (token 10) of each one to the user in a list and then invite them to type a PID to kill using taskkill
if each instance of Firestorm Viewer has a different window title that would work but if the orphaned threads have not got active windows I guess you'd need some other way to ID the ones you want to kill. I think the window title would show up as "N/A". However if the image name contained "Firestorm" maybe you could just nuke that PID.