By Elektro H@cker
Esto es un versión experimental, La he probado con varios scripts y funciona. También sirve para ofuscar texto plano y supongo que con otros formatos también debería funcionar.
Me ha costado bastante esfuerzo realizar un ofuscador sin usar la expansion (Todos los ofuscadores de bats que he visto la usan, Y eso conlleva incompatibilidad con algunos caracteres)
Este ofuscador soporta muchos, muchos más caracteres que otro ofuscador (Hecho en batch) convencional.
Errores conocidos:
Si una linea del script contiene un número impar de comilals dobles (Debido a una mala sintaxis del usuario) esa línea no se llegará a ofuscar correctamente, Asegurense de cerrar las comillas en sus códigos.
Elcaracter del escape ^ se desofusca 2 veces SI NO SE TRATA DE UN .BAT
Espero que lo disfruten.
Salu2
PD: En cuanto pueda, El proyecto lo codearé en Ruby para eliminar de golpe los errores y agregar una mejor compatibilidad sobre los caracteres utf-8, Y de paso lo compilaré para Windows para poder usar el ofuscador por linea de comandos, Como una herramienta más.
Test.bat
Código
BatOfuser.bat
Código:
@Echo OFF
Title BatOfuser
REM By Elektro H@cker
:: Visita: Foro.elhacker.net
Mode con cols=108 lines=25
NirCMD Win Center Ititle "BatOfuser" >NUL 2>&1
REM chcp 1252 >NUL
:Logo
Echo+
Echo: 88888888ba ,ad8888ba, ad88
Echo: 88 "8b ,d d8"' `"8b d8"
Echo: 88 ,8P 88 d8' `8b 88
Echo: 88aaaaaa8P' ,adPPYYba, MM88MMM 88 88 MM88MMM 88 88 ,adPPYba, ,adPPYba, 8b,dPPYba,
Echo: 88""""""8b, "" `Y8 88 88 88 88 88 88 I8[ "" a8P_____88 88P' "Y8
Echo: 88 `8b ,adPPPPP88 88 Y8, ,8P 88 88 88 `"Y8ba, 8PP""""""" 88
Echo: 88 a8P 88, ,88 88, Y8a. .a8P 88 "8a, ,a88 aa ]8I "8b, ,aa 88
Echo: 88888888P" `"8bbdP"Y8 "Y888 `"Y8888Y"' 88 `"YbbdP'Y8 `"YbbdP"' `"Ybbd8"' 88
Echo+
Echo: By Elektro H@cker
Echo+
Echo: ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
Goto :Menu
:Charlist
Set "Alpha=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
Set "Numeric=0123456789"
Set "Special=\|@#~!$%&/()=?<>;,.-_+*[]{}`'^^":
Set "Special_UTF8=…‚¡¢£…ŠÖ•—µ‚Öàé·ÔÞã뎉‹”šŽÓØ™š¤¥¦§ú¨ï"
Rem Special_UTF8= áéíóú àèìòù ÁÉÍÓÚ ÀÈÌÒÙ äëïöü ÄËÏÖÜ ñ Ñ ª º · ¿ ¡ '
:Menu
Echo+
Echo: Arrastra a la ventana el archivo que quieres ofuscar/desofuscar... | More
Set /P Archivo=^>^>^>
If not defined archivo (Goto :Menu)
Type %archivo%| Find "By Elektro H@cker" >NUL 2>&1
If %Errorlevel% EQU 0 (Goto :Desofuscador)
Cls
:::::::::::::::::
:Ofuscador
:::::::::::::::::
:Lineas
Set Linea=0
For /F "Tokens=*" %%a in ('Type %Archivo% ^| Find /V /C ""') do (Set Total=%%a)
:Leer_Ofuscador
If "%linea%" EQU "%total%" (Goto :Fin_Ofuscador)
For /F "Tokens=*" %%a in ('Type %Archivo% ^| MORE +%Linea%') do (
Echo: Ofuscando: "%%a"
Set /A Linea+=1
Set "String=%%a"
If not defined string (Goto :Leer_Ofuscador)
Echo %%a>"%TEMP%\String.tmp"
FOR %%? IN (%TEMP%\String.tmp) DO ( SET /A Longitud=%%~z? - 2 )
Goto :Ofuscar
)
::::::::::::::::::::::
:Desofuscador
::::::::::::::::::::::
:Lineas
Set Linea=0
For /F "Tokens=*" %%a in ('Type %Archivo% ^| Find /V /C ""') do (Set Total=%%a)
:Leer_Desofuscador
For /F "Tokens=*" %%a in ('Type %Archivo% ^| MORE /E +%Linea%') do (
Set /A Linea+=1
Set "String=%%a"
Goto :Desofuscar
)
:Ofuscar
If "%Count%" EQU "%Longitud%" (
call :Write_Ofuscador
Goto :Leer_Ofuscador)
::Comilladoble
Set "String=%String:"=€%"& rem "
::Espacio
If "%String:~0,1%" EQU " " (Set "New_String=%New_String% ")
::Alpha
If "%String:~0,1%" EQU "a" (Set "New_String=%New_String%%%Alpha:~0,1%%")
If "%String:~0,1%" EQU "b" (Set "New_String=%New_String%%%Alpha:~1,1%%")
If "%String:~0,1%" EQU "c" (Set "New_String=%New_String%%%Alpha:~2,1%%")
If "%String:~0,1%" EQU "d" (Set "New_String=%New_String%%%Alpha:~3,1%%")
If "%String:~0,1%" EQU "e" (Set "New_String=%New_String%%%Alpha:~4,1%%")
If "%String:~0,1%" EQU "f" (Set "New_String=%New_String%%%Alpha:~5,1%%")
If "%String:~0,1%" EQU "g" (Set "New_String=%New_String%%%Alpha:~6,1%%")
If "%String:~0,1%" EQU "h" (Set "New_String=%New_String%%%Alpha:~7,1%%")
If "%String:~0,1%" EQU "i" (Set "New_String=%New_String%%%Alpha:~8,1%%")
If "%String:~0,1%" EQU "j" (Set "New_String=%New_String%%%Alpha:~9,1%%")
If "%String:~0,1%" EQU "k" (Set "New_String=%New_String%%%Alpha:~10,1%%")
If "%String:~0,1%" EQU "l" (Set "New_String=%New_String%%%Alpha:~11,1%%")
If "%String:~0,1%" EQU "m" (Set "New_String=%New_String%%%Alpha:~12,1%%")
If "%String:~0,1%" EQU "n" (Set "New_String=%New_String%%%Alpha:~13,1%%")
If "%String:~0,1%" EQU "o" (Set "New_String=%New_String%%%Alpha:~14,1%%")
If "%String:~0,1%" EQU "p" (Set "New_String=%New_String%%%Alpha:~15,1%%")
If "%String:~0,1%" EQU "q" (Set "New_String=%New_String%%%Alpha:~16,1%%")
If "%String:~0,1%" EQU "r" (Set "New_String=%New_String%%%Alpha:~17,1%%")
If "%String:~0,1%" EQU "s" (Set "New_String=%New_String%%%Alpha:~18,1%%")
If "%String:~0,1%" EQU "t" (Set "New_String=%New_String%%%Alpha:~19,1%%")
If "%String:~0,1%" EQU "u" (Set "New_String=%New_String%%%Alpha:~20,1%%")
If "%String:~0,1%" EQU "v" (Set "New_String=%New_String%%%Alpha:~21,1%%")
If "%String:~0,1%" EQU "w" (Set "New_String=%New_String%%%Alpha:~22,1%%")
If "%String:~0,1%" EQU "x" (Set "New_String=%New_String%%%Alpha:~23,1%%")
If "%String:~0,1%" EQU "y" (Set "New_String=%New_String%%%Alpha:~24,1%%")
If "%String:~0,1%" EQU "z" (Set "New_String=%New_String%%%Alpha:~25,1%%")
If "%String:~0,1%" EQU "A" (Set "New_String=%New_String%%%Alpha:~26,1%%")
If "%String:~0,1%" EQU "B" (Set "New_String=%New_String%%%Alpha:~27,1%%")
If "%String:~0,1%" EQU "C" (Set "New_String=%New_String%%%Alpha:~28,1%%")
If "%String:~0,1%" EQU "D" (Set "New_String=%New_String%%%Alpha:~29,1%%")
If "%String:~0,1%" EQU "E" (Set "New_String=%New_String%%%Alpha:~30,1%%")
If "%String:~0,1%" EQU "F" (Set "New_String=%New_String%%%Alpha:~31,1%%")
If "%String:~0,1%" EQU "G" (Set "New_String=%New_String%%%Alpha:~32,1%%")
If "%String:~0,1%" EQU "H" (Set "New_String=%New_String%%%Alpha:~33,1%%")
If "%String:~0,1%" EQU "I" (Set "New_String=%New_String%%%Alpha:~34,1%%")
If "%String:~0,1%" EQU "J" (Set "New_String=%New_String%%%Alpha:~35,1%%")
If "%String:~0,1%" EQU "K" (Set "New_String=%New_String%%%Alpha:~36,1%%")
If "%String:~0,1%" EQU "L" (Set "New_String=%New_String%%%Alpha:~37,1%%")
If "%String:~0,1%" EQU "M" (Set "New_String=%New_String%%%Alpha:~38,1%%")
If "%String:~0,1%" EQU "N" (Set "New_String=%New_String%%%Alpha:~39,1%%")
If "%String:~0,1%" EQU "O" (Set "New_String=%New_String%%%Alpha:~40,1%%")
If "%String:~0,1%" EQU "P" (Set "New_String=%New_String%%%Alpha:~41,1%%")
If "%String:~0,1%" EQU "Q" (Set "New_String=%New_String%%%Alpha:~42,1%%")
If "%String:~0,1%" EQU "R" (Set "New_String=%New_String%%%Alpha:~43,1%%")
If "%String:~0,1%" EQU "S" (Set "New_String=%New_String%%%Alpha:~44,1%%")
If "%String:~0,1%" EQU "T" (Set "New_String=%New_String%%%Alpha:~45,1%%")
If "%String:~0,1%" EQU "U" (Set "New_String=%New_String%%%Alpha:~46,1%%")
If "%String:~0,1%" EQU "V" (Set "New_String=%New_String%%%Alpha:~47,1%%")
If "%String:~0,1%" EQU "W" (Set "New_String=%New_String%%%Alpha:~48,1%%")
If "%String:~0,1%" EQU "X" (Set "New_String=%New_String%%%Alpha:~49,1%%")
If "%String:~0,1%" EQU "Y" (Set "New_String=%New_String%%%Alpha:~50,1%%")
If "%String:~0,1%" EQU "Z" (Set "New_String=%New_String%%%Alpha:~51,1%%")
::Numeric
If "%String:~0,1%" EQU "0" (Set "New_String=%New_String%%%Numeric:~0,1%%")
If "%String:~0,1%" EQU "1" (Set "New_String=%New_String%%%Numeric:~1,1%%")
If "%String:~0,1%" EQU "2" (Set "New_String=%New_String%%%Numeric:~2,1%%")
If "%String:~0,1%" EQU "3" (Set "New_String=%New_String%%%Numeric:~3,1%%")
If "%String:~0,1%" EQU "4" (Set "New_String=%New_String%%%Numeric:~4,1%%")
If "%String:~0,1%" EQU "5" (Set "New_String=%New_String%%%Numeric:~5,1%%")
If "%String:~0,1%" EQU "6" (Set "New_String=%New_String%%%Numeric:~6,1%%")
If "%String:~0,1%" EQU "7" (Set "New_String=%New_String%%%Numeric:~7,1%%")
If "%String:~0,1%" EQU "8" (Set "New_String=%New_String%%%Numeric:~8,1%%")
If "%String:~0,1%" EQU "9" (Set "New_String=%New_String%%%Numeric:~9,1%%")
::Special_UTF8
If "%String:~0,1%" EQU "á" (Set "New_String=%New_String%%%Special_UTF8:~0,1%%")
If "%String:~0,1%" EQU "é" (Set "New_String=%New_String%%%Special_UTF8:~1,1%%")
If "%String:~0,1%" EQU "í" (Set "New_String=%New_String%%%Special_UTF8:~2,1%%")
If "%String:~0,1%" EQU "ó" (Set "New_String=%New_String%%%Special_UTF8:~3,1%%")
If "%String:~0,1%" EQU "ú" (Set "New_String=%New_String%%%Special_UTF8:~4,1%%")
If "%String:~0,1%" EQU "à" (Set "New_String=%New_String%%%Special_UTF8:~5,1%%")
If "%String:~0,1%" EQU "è" (Set "New_String=%New_String%%%Special_UTF8:~6,1%%")
If "%String:~0,1%" EQU "ì" (Set "New_String=%New_String%%%Special_UTF8:~7,1%%")
If "%String:~0,1%" EQU "ò" (Set "New_String=%New_String%%%Special_UTF8:~8,1%%")
If "%String:~0,1%" EQU "ù" (Set "New_String=%New_String%%%Special_UTF8:~9,1%%")
If "%String:~0,1%" EQU "Á" (Set "New_String=%New_String%%%Special_UTF8:~10,1%%")
If "%String:~0,1%" EQU "É" (Set "New_String=%New_String%%%Special_UTF8:~11,1%%")
If "%String:~0,1%" EQU "Í" (Set "New_String=%New_String%%%Special_UTF8:~12,1%%")
If "%String:~0,1%" EQU "Ó" (Set "New_String=%New_String%%%Special_UTF8:~13,1%%")
If "%String:~0,1%" EQU "Ú" (Set "New_String=%New_String%%%Special_UTF8:~14,1%%")
If "%String:~0,1%" EQU "À" (Set "New_String=%New_String%%%Special_UTF8:~15,1%%")
If "%String:~0,1%" EQU "È" (Set "New_String=%New_String%%%Special_UTF8:~16,1%%")
If "%String:~0,1%" EQU "Ì" (Set "New_String=%New_String%%%Special_UTF8:~17,1%%")
If "%String:~0,1%" EQU "Ò" (Set "New_String=%New_String%%%Special_UTF8:~18,1%%")
If "%String:~0,1%" EQU "Ù" (Set "New_String=%New_String%%%Special_UTF8:~19,1%%")
If "%String:~0,1%" EQU "ä" (Set "New_String=%New_String%%%Special_UTF8:~20,1%%")
If "%String:~0,1%" EQU "ë" (Set "New_String=%New_String%%%Special_UTF8:~21,1%%")
If "%String:~0,1%" EQU "ï" (Set "New_String=%New_String%%%Special_UTF8:~22,1%%")
If "%String:~0,1%" EQU "ö" (Set "New_String=%New_String%%%Special_UTF8:~23,1%%")
If "%String:~0,1%" EQU "ü" (Set "New_String=%New_String%%%Special_UTF8:~24,1%%")
If "%String:~0,1%" EQU "Ä" (Set "New_String=%New_String%%%Special_UTF8:~25,1%%")
If "%String:~0,1%" EQU "Ë" (Set "New_String=%New_String%%%Special_UTF8:~26,1%%")
If "%String:~0,1%" EQU "Ï" (Set "New_String=%New_String%%%Special_UTF8:~27,1%%")
If "%String:~0,1%" EQU "Ö" (Set "New_String=%New_String%%%Special_UTF8:~28,1%%")
If "%String:~0,1%" EQU "Ü" (Set "New_String=%New_String%%%Special_UTF8:~29,1%%")
If "%String:~0,1%" EQU "ñ" (Set "New_String=%New_String%%%Special_UTF8:~30,1%%")
If "%String:~0,1%" EQU "Ñ" (Set "New_String=%New_String%%%Special_UTF8:~31,1%%")
If "%String:~0,1%" EQU "ª" (Set "New_String=%New_String%%%Special_UTF8:~32,1%%")
If "%String:~0,1%" EQU "º" (Set "New_String=%New_String%%%Special_UTF8:~33,1%%")
If "%String:~0,1%" EQU "·" (Set "New_String=%New_String%%%Special_UTF8:~34,1%%")
If "%String:~0,1%" EQU "¿" (Set "New_String=%New_String%%%Special_UTF8:~35,1%%")
If "%String:~0,1%" EQU "¡" (Set "New_String=%New_String%%%Special_UTF8:~36,1%%")
If "%String:~0,1%" EQU "´" (Set "New_String=%New_String%%%Special_UTF8:~37,1%%")
::Special
If "%String:~0,1%" EQU "€" (Set "New_String=%New_String%€")
If "%String:~0,1%" EQU "\" (Set "New_String=%New_String%%%Special:~0,1%%")
If "%String:~0,1%" EQU "|" (Set "New_String=%New_String%%%Special:~1,1%%")
If "%String:~0,1%" EQU "@" (Set "New_String=%New_String%%%Special:~2,1%%")
If "%String:~0,1%" EQU "#" (Set "New_String=%New_String%%%Special:~3,1%%")
If "%String:~0,1%" EQU "~" (Set "New_String=%New_String%%%Special:~4,1%%")
If "%String:~0,1%" EQU "!" (Set "New_String=%New_String%%%Special:~5,1%%")
If "%String:~0,1%" EQU "$" (Set "New_String=%New_String%%%Special:~6,1%%")
If "%String:~0,1%" EQU "%%" (Set "New_String=%New_String%%%Special:~7,1%%")
If "%String:~0,1%" EQU "&" (Set "New_String=%New_String%%%Special:~8,1%%")
If "%String:~0,1%" EQU "/" (Set "New_String=%New_String%%%Special:~9,1%%")
If "%String:~0,1%" EQU "(" (Set "New_String=%New_String%%%Special:~10,1%%")
If "%String:~0,1%" EQU ")" (Set "New_String=%New_String%%%Special:~11,1%%")
If "%String:~0,1%" EQU "=" (Set "New_String=%New_String%%%Special:~12,1%%")
If "%String:~0,1%" EQU "?" (Set "New_String=%New_String%%%Special:~13,1%%")
If "%String:~0,1%" EQU "<" (Set "New_String=%New_String%%%Special:~14,1%%")
If "%String:~0,1%" EQU ">" (Set "New_String=%New_String%%%Special:~15,1%%")
If "%String:~0,1%" EQU ";" (Set "New_String=%New_String%%%Special:~16,1%%")
If "%String:~0,1%" EQU "," (Set "New_String=%New_String%%%Special:~17,1%%")
If "%String:~0,1%" EQU "." (Set "New_String=%New_String%%%Special:~18,1%%")
If "%String:~0,1%" EQU "-" (Set "New_String=%New_String%%%Special:~19,1%%")
If "%String:~0,1%" EQU "_" (Set "New_String=%New_String%%%Special:~20,1%%")
If "%String:~0,1%" EQU "+" (Set "New_String=%New_String%%%Special:~21,1%%")
If "%String:~0,1%" EQU "*" (Set "New_String=%New_String%%%Special:~22,1%%")
If "%String:~0,1%" EQU "[" (Set "New_String=%New_String%%%Special:~23,1%%")
If "%String:~0,1%" EQU "]" (Set "New_String=%New_String%%%Special:~24,1%%")
If "%String:~0,1%" EQU "{" (Set "New_String=%New_String%%%Special:~25,1%%")
If "%String:~0,1%" EQU "}" (Set "New_String=%New_String%%%Special:~26,1%%")
If "%String:~0,1%" EQU "`" (Set "New_String=%New_String%%%Special:~27,1%%")
If "%String:~0,1%" EQU "'" (Set "New_String=%New_String%%%Special:~28,1%%")
If "%String:~0,1%" EQU "^" (Set "New_String=%New_String%%%Special:~29,1%%")
If "%String:~0,1%" EQU ":" (Set "New_String=%New_String%%%Special:~30,1%%")
Set "String=%String:~1%"
Set /A Count+=1
Goto :Ofuscar
:Desofuscar
::Alpha
Set "String=%String:Alpha:~0,1=a%"
Set "String=%String:Alpha:~1,1=b%"
Set "String=%String:Alpha:~2,1=c%"
Set "String=%String:Alpha:~3,1=d%"
Set "String=%String:Alpha:~4,1=e%"
Set "String=%String:Alpha:~5,1=f%"
Set "String=%String:Alpha:~6,1=g%"
Set "String=%String:Alpha:~7,1=h%"
Set "String=%String:Alpha:~8,1=i%"
Set "String=%String:Alpha:~9,1=j%"
Set "String=%String:Alpha:~10,1=k%"
Set "String=%String:Alpha:~11,1=l%"
Set "String=%String:Alpha:~12,1=m%"
Set "String=%String:Alpha:~13,1=n%"
Set "String=%String:Alpha:~14,1=o%"
Set "String=%String:Alpha:~15,1=p%"
Set "String=%String:Alpha:~16,1=q%"
Set "String=%String:Alpha:~17,1=r%"
Set "String=%String:Alpha:~18,1=s%"
Set "String=%String:Alpha:~19,1=t%"
Set "String=%String:Alpha:~20,1=u%"
Set "String=%String:Alpha:~21,1=v%"
Set "String=%String:Alpha:~22,1=w%"
Set "String=%String:Alpha:~23,1=x%"
Set "String=%String:Alpha:~24,1=y%"
Set "String=%String:Alpha:~25,1=z%"
Set "String=%String:Alpha:~26,1=A%"
Set "String=%String:Alpha:~27,1=B%"
Set "String=%String:Alpha:~28,1=C%"
Set "String=%String:Alpha:~29,1=D%"
Set "String=%String:Alpha:~30,1=E%"
Set "String=%String:Alpha:~31,1=F%"
Set "String=%String:Alpha:~32,1=G%"
Set "String=%String:Alpha:~33,1=H%"
Set "String=%String:Alpha:~34,1=I%"
Set "String=%String:Alpha:~35,1=J%"
Set "String=%String:Alpha:~36,1=K%"
Set "String=%String:Alpha:~37,1=L%"
Set "String=%String:Alpha:~38,1=M%"
Set "String=%String:Alpha:~39,1=N%"
Set "String=%String:Alpha:~40,1=O%"
Set "String=%String:Alpha:~41,1=P%"
Set "String=%String:Alpha:~42,1=Q%"
Set "String=%String:Alpha:~43,1=R%"
Set "String=%String:Alpha:~44,1=S%"
Set "String=%String:Alpha:~45,1=T%"
Set "String=%String:Alpha:~46,1=U%"
Set "String=%String:Alpha:~47,1=V%"
Set "String=%String:Alpha:~48,1=W%"
Set "String=%String:Alpha:~49,1=X%"
Set "String=%String:Alpha:~50,1=Y%"
Set "String=%String:Alpha:~51,1=Z%"
::Numeric
Set "String=%String:Numeric:~0,1=0%"
Set "String=%String:Numeric:~1,1=1%"
Set "String=%String:Numeric:~2,1=2%"
Set "String=%String:Numeric:~3,1=3%"
Set "String=%String:Numeric:~4,1=4%"
Set "String=%String:Numeric:~5,1=5%"
Set "String=%String:Numeric:~6,1=6%"
Set "String=%String:Numeric:~7,1=7%"
Set "String=%String:Numeric:~8,1=8%"
Set "String=%String:Numeric:~9,1=9%"
::Special_UTF8
Set "String=%String:Special_UTF8:~0,1=…%"
Set "String=%String:Special_UTF8:~1,1=‚%"
Set "String=%String:Special_UTF8:~2,1=¡%"
Set "String=%String:Special_UTF8:~3,1=¢%"
Set "String=%String:Special_UTF8:~4,1=£%"
Set "String=%String:Special_UTF8:~5,1=…%"
Set "String=%String:Special_UTF8:~6,1=Š%"
Set "String=%String:Special_UTF8:~7,1=Ö%"
Set "String=%String:Special_UTF8:~8,1=•%"
Set "String=%String:Special_UTF8:~9,1=—%"
Set "String=%String:Special_UTF8:~10,1=µ%"
Set "String=%String:Special_UTF8:~11,1=‚%"
Set "String=%String:Special_UTF8:~12,1=Ö%"
Set "String=%String:Special_UTF8:~13,1=à%"
Set "String=%String:Special_UTF8:~14,1=é%"
Set "String=%String:Special_UTF8:~15,1=·%"
Set "String=%String:Special_UTF8:~16,1=Ô%"
Set "String=%String:Special_UTF8:~17,1=Þ%"
Set "String=%String:Special_UTF8:~18,1=ã%"
Set "String=%String:Special_UTF8:~19,1=ë%"
Set "String=%String:Special_UTF8:~20,1=Ž%"
Set "String=%String:Special_UTF8:~21,1=‰%"
Set "String=%String:Special_UTF8:~22,1=‹%"
Set "String=%String:Special_UTF8:~23,1=”%"
Set "String=%String:Special_UTF8:~24,1=š%"
Set "String=%String:Special_UTF8:~25,1=Ž%"
Set "String=%String:Special_UTF8:~26,1=Ó%"
Set "String=%String:Special_UTF8:~27,1=Ø%"
Set "String=%String:Special_UTF8:~28,1=™%"
Set "String=%String:Special_UTF8:~29,1=š%"
Set "String=%String:Special_UTF8:~30,1=¤%"
Set "String=%String:Special_UTF8:~31,1=¥%"
Set "String=%String:Special_UTF8:~32,1=^ª%"
Set "String=%String:Special_UTF8:~33,1=§%"
Set "String=%String:Special_UTF8:~34,1=^·%"
Set "String=%String:Special_UTF8:~35,1=¿%"
Set "String=%String:Special_UTF8:~36,1=%"
Set "String=%String:Special_UTF8:~37,1=ï%"
::Special
Set "String=%String:Special:~0,1=^\%"
Set "String=%String:Special:~1,1=^|%"
Set "String=%String:Special:~2,1=@%"
Set "String=%String:Special:~3,1=#%"
Set "String=%String:Special:~4,1=^~%"
Set "String=%String:Special:~5,1=^^^!%"
Set "String=%String:Special:~6,1=$%"
Set "String=%String:Special:~7,1=€%"
Set "String=%String:Special:~8,1=^&%"
Set "String=%String:Special:~9,1=/%"
Set "String=%String:Special:~10,1=(%"
Set "String=%String:Special:~11,1=)%"
Set "String=%String:Special:~12,1==%"
Set "String=%String:Special:~13,1=?%"
Set "String=%String:Special:~14,1=^<%"
Set "String=%String:Special:~15,1=^>%"
Set "String=%String:Special:~16,1=;%"
Set "String=%String:Special:~17,1=,%"
Set "String=%String:Special:~18,1=.%"
Set "String=%String:Special:~19,1=-%"
Set "String=%String:Special:~20,1=_%"
Set "String=%String:Special:~21,1=+%"
Set "String=%String:Special:~22,1=*%"
Set "String=%String:Special:~23,1=^[%"
Set "String=%String:Special:~24,1=^]%"
Set "String=%String:Special:~25,1={%"
Set "String=%String:Special:~26,1=}%"
Set "String=%String:Special:~27,1=`%"
Set "String=%String:Special:~28,1='%"
Set "String=%String:Special:~29,1=^^^^%"
Set "String=%String:Special:~30,1=:%"
Echo string "%STRING%"
Call :Write_Desofuscador
:Write_Ofuscador
Set "New_String=%New_String:€="%"& rem "
Echo %New_String%>>"Script Ofuscado con BatOfuser.bat"
If NOT Errorlevel 0 (Echo ERROR & pause & Exit /B 1)
Set "New_String="
Set "Count="
Goto :EOF
:Write_Desofuscador
Echo %String%>>"%TEMP%\Batofuser_DESOFUSCAR_.bat"
If NOT Errorlevel 0 (Echo ERROR & pause & Exit /B 1)
Set "String="
If "%linea%" EQU "%total%" (Goto :Fin_Desofuscador)
Goto :Leer_Desofuscador
:Fin_Ofuscador
Echo REM By Elektro H@cker >> "Script Ofuscado con BatOfuser.bat"
Del /Q "%TEMP%\String.tmp"
Cls
echo Fin | More
pause
Exit
:Fin_Desofuscador
CLS
setlocal enabledelayedexpansion
Set "String=!String:%%=!"
Set "String=!String:€=%%!"
For /F "Tokens=*" %%a in ('Type "%TEMP%\Batofuser_DESOFUSCAR_.bat"') do (
Set "String=%%a"
Set "String=!String:%%=!"
echo !String!
Set "String=!String:€=%%!"
Echo !String!>>"Script Desofuscado con BatOfuser.bat"
)
Del /Q "%TEMP%\Batofuser_DESOFUSCAR_.bat"
echo Fin | More
Pause
Exit