Using SubInAcl.exe, I have scripted SDDL.BAT to determine if your ACLs are only made up of migrated SIDs, so you can delete all the SID-history.

The syntax for using SDDL.BAT is:

SDDL Drive: SID FileName


<b>Drive:</b>   is the drive letter you wish to inspect, like <b>C:</b>.

<b>SID</b>      is the old <b>SID</b> string you wish to test.

<b>FileName</b> is the name of the file that will contain file system objects that still have the old <b>SID</b>.
SDDL.BAT contains:
@echo off
If \{%3\}==\{\} @echo Syntax: sddl Drive: SID FileName&goto :EOF
set drv=%1
set sid=%2
set FileName=%3
set uni="%TEMP%\sddl_unicode_%RANDOM%.tmp"
set txt="%TEMP%\sddl_txt_%RANDOM%.tmp"
SubInAcl /outputlog=%uni% /nostatistic /subdirectories %drv% /display=sddl
:: Convert from unicode
Type %uni%>%txt%
if exist "%TEMP%\sddl.vbs" goto doit
@echo.dim fso, readfile, contents, objArguments>"%TEMP%\sddl.vbs"
@echo.dim FullFileName, object, work>>"%TEMP%\sddl.vbs"
@echo.dim OutFileName, writefile>>"%TEMP%\sddl.vbs"
@echo.Set objArguments = Wscript.Arguments>>"%TEMP%\sddl.vbs"
@echo.set fso = CreateObject("Scripting.FileSystemObject")>>"%TEMP%\sddl.vbs"
@echo.set readfile = fso.OpenTextFile(FullFileName, 1, false)>>"%TEMP%\sddl.vbs"
@echo.set writefile = fso.CreateTextFile(OutFileName, 2)>>"%TEMP%\sddl.vbs"
@echo.Do until readfile.AtEndOfStream = True>>"%TEMP%\sddl.vbs"
@echo.     contents = readfile.ReadLine>>"%TEMP%\sddl.vbs"
@echo.     If InStr(contents, "+File") Then>>"%TEMP%\sddl.vbs"
@echo.       work = contents>>"%TEMP%\sddl.vbs"
@echo.       object = Replace(work, "+File ", "")>>"%TEMP%\sddl.vbs"
@echo.     End If>>"%TEMP%\sddl.vbs"
@echo.     if Instr(contents, sid) Then>>"%TEMP%\sddl.vbs"
@echo.       work=<div class="Contentquote"><center>" ^& object ^& </center></div>">>"%TEMP%\sddl.vbs"
@echo.       writefile.writeLine work>>"%TEMP%\sddl.vbs"
@echo.     End If>>"%TEMP%\sddl.vbs"
if exist %FileName% del /q %FileName%
cscript //nologo "%TEMP%\sddl.vbs" %txt% %FileName% %sid%
del /q %uni%
del /q %txt%