2024年3月11日发(作者:)

如何反编译由bat(批处理)转换成的exe:

==================================================

=============

将以下内容复制到文本文档中,另存为BAT反编译器 by 灰晖.bat

喜欢的话加作者QQ:1748778143哦

==================================================

=============

@echo off&setlocal enabledelayedexpansion

color 09

title BAT反编译器

mode con cols=31 lines=16

if "%~f1"=="" (

goto top

)

set x=%1

goto set

:top

color 09

set x=

cls

echo ┏━━━━━━━━━━━━━┓

echo ┃ BAT反编译器 by灰晖

echo ┗━━━━━━━━━━━━━┛

echo [文件路径]

set /p x=

if [%x%]==[] (goto top)

if not exist "%x%" (

cls

echo ┏━━━━━━━━━━━━━┓

echo ┃ BAT反编译器 by灰晖 ┃

echo ┗━━━━━━━━━━━━━┛

echo [文件路径]

echo %x%

echo 文件不存在

ping/n 2 127.1>nul

goto top

)

:set

if "%x: =%"=="%x%" (goto Y)

color 0c

cls

echo ┏━━━━━━━━━━━━━┓

echo ┃ BAT反编译器 by灰晖 ┃

echo ┗━━━━━━━━━━━━━┛

echo [文件路径]

echo %x%

echo 路径不能有空格

ping/n 2 127.1>nul

goto top

:Y

set patha="%x%"

for /f %%a in ("%patha%") do (

set pathb=%%~dpa

)

FOR %%i IN ("%x%") DO SET FileAttrib=%%~ai

IF %FileAttrib:~0,1%==d (

set fin=2

goto e2

)ELSE (

set fin=1

for %%a in ("%x%") do set hn=%%~xa

)

if "%hn%"==".exe" (goto sc)

:e2

color 0c

cls

echo ┏━━━━━━━━━━━━━┓

echo ┃ BAT反编译器 by灰晖 ┃

echo ┗━━━━━━━━━━━━━┛

echo [文件路径]

echo %x%

echo 这不是EXE应用程序

ping/n 2 127.1>nul

goto top

:sc

cls

call :root "%x%"

set pas=C:Documents and Settings%username%Local SettingsTemp

for %%a in ("%pas%") do for /f "delims=" %%b in ('dir /a-d/b/s "%pas%*.bat"')

do (

del /f /a /q "%%b">nul

cls

)

start %x%>nul

cls

echo ┏━━━━━━━━━━━━━┓

echo ┃ BAT反编译器 by灰晖 ┃

echo ┗━━━━━━━━━━━━━┛

echo [文件路径]

echo %x%

ping/n 2 127.1>nul

for %%a in ("%pas%") do for /f "delims=" %%b in ('dir /a-d/b/s "%pas%*.bat"')

do (

copy /y /d "%%b" "%cv%.bat">nul

cls

)

::copy /e /d /y /q %cd%exe*.bat %cv%.bat>nul

cls

echo ┏━━━━━━━━━━━━━┓

echo ┃ BAT反编译器 by灰晖 ┃

echo ┗━━━━━━━━━━━━━┛

echo [文件路径]

echo %x%

if not exist "%cv%.bat" goto error

echo msgbox "反编译成功!",48,"完成">

attrib +s +a +h

start /wait

attrib -s -a -h

del /q /f

exit

:root

set cv=%~dpn1

goto :eof

:error

echo msgbox "反编译失败,也许这不是由BAT转化成的EXE",48,"错误">

attrib +s +a +h

start /wait

attrib -s -a -h

del /q /f

exit