CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
rapid7

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

GitHub Repository: rapid7/metasploit-framework
Path: blob/master/tools/exploit/extract_msu.bat
Views: 11768
@echo off
@setlocal EnableDelayedExpansion

@set arg=%~1

if [%arg%] == [] (
	echo Argument Missing:
	echo You must provide a directory that contains
	echo all the Windows patches in *.msu format.
	echo To Download patches manually, please go:
	echo http://mybulletins.technet.microsoft.com/BulletinPages/Dashboard
	exit /B
)

if not "!arg:~-1,1!" == "\" (
	@set arg=!arg!\
)


for /f %%f in ('dir /B %arg%') DO (
	@set fname=%%f
	@set lastfourchars=!fname:~-4,4!
	if "!lastfourchars!" == ".msu" (
		@set newname=!fname:~0,-4!
		mkdir %arg%!newname!
		mkdir %arg%!newname!\extracted
		expand /F:* %arg%!fname! %arg%!newname!
		expand /F:* %arg%!newname!\!newname!.cab %arg%!newname!\extracted
	)

)

echo Done!
echo Now go to %arg%,
echo and then use the search feature from Windows to
echo find the files you're interested in.