From what I understand it is outputting this to tell you what the 'For' command "compiles" to. If you use variables without delayed expansion they will be prioritized before the loop is processed.
for /f "tokens=2 delims==" %%B in ('set colr') do if not %%B equ %win.colr% set win=0
%win.colr% would be replaced with it's value before the loop executed. To get around this, we would enable delayed expansion and use:
for /f "tokens=2 delims==" %%B in ('set colr') do if not %%B equ !win.colr! set win=0
which would allow the value of win.colr to change within the loop. What you are describing is a means to debug which is showing you exactly what loop will run. If you do not wish for it, I'm sure you can write a 'for /f' loop to remove it, but it would be kinda pointless and quite a headache.