diff --git a/branding/templates/windows/template.nsi b/branding/templates/windows/template.nsi
index e98854f91ecb0ad72af394c9099231ade3f16e2d..ce05d27cde47530ffb220fb7e9bcdcc0319e271c 100755
--- a/branding/templates/windows/template.nsi
+++ b/branding/templates/windows/template.nsi
@@ -98,7 +98,13 @@ Section /o "TAP Virtual Ethernet Adapter" SecTAP
 SectionEnd
 
 Section "Uninstall"
-  ExecShellWait "runas" "$INSTDIR\bitmask_helper.exe" 'remove'
+  ; this could fail: uninstalling old nssm helper
+  ExecShellWait "runas" '"$INSTDIR\nssm.exe" stop $applicationNameLower-helper'
+  ExecShellWait "runas" '"$INSTDIR\nssm.exe" remove $applicationNameLower-helper confirm'
+
+  ; now we uninstall the new-style go helper
+  ExecShellWait "runas" '"$INSTDIR\bitmask_helper.exe" remove'
+
 
   Delete $INSTDIR\readme.txt
   Delete $INSTDIR\helper.log