Link to home
Start Free TrialLog in
Avatar of WellingtonIS
WellingtonIS

asked on

Encrypt or hide a Password in a Bat file.

Is there a way to encrypt a password in a bat file?  I'd like to give my tech's access for certain things without having to give them domain admin rights.  If I can find a way to hide or encrypt my password from these bat files I can do so.
Avatar of uniqueinfotech
uniqueinfotech

The short answer is no. You can obfuscate or make it more difficult for them to locate the password, but the only way to be able to use the password is to store it in an accessible fashion. If you encrypted the password then you'd just be adding 1 more password on top of the password.
Avatar of Mahesh
Try below tool to convert batch files to exe

http://www.battoexeconverter.com/

Mahesh
Avatar of WellingtonIS

ASKER

OK thanks!
Can I suggest this is re-opened.  I can give you a pretty decent method to do so...

Steve
sure.  I'm game!
This script of mine here to use the password associated with a batch file from a hidden stream attached to the file, prompt for the password if not present and save it.  If you know how to work out what is going on in the batch you could do the same and get the password to work with, but to a casual observer it is not at all obvious how it works.

http://scripts.dragon-it.co.uk/links/batch-prompt-password-save-it

Script to prompt for and enter password in hidden manner:

http://scripts.dragon-it.co.uk/links/batch-password2

Script to store password in an extra data stream with the batch file that you can't see but is there and can be read by the batch file itself:

http://scripts.dragon-it.co.uk/links/batch-password1



Steve
this just might work!  Let me play with it and I'll get back to you. THANK YOU
no problem, can never be 100% like the other guy said like any password storing mechanism but ok for stopping users casually seeing a password or finding it in a search etc.

Steve
I"m not sure I have this correct this is my code:
Psexec \\@%var% -u corp\username set /p password=<%~nx0:password cmd /c copy "\\PC\computers\folder\xxx xxx.url" C:\Icon /y

I ran everything but I'm not s ure the actual placement is correct.  I'm getting Password: when I run my bat file.

I did the command echo mypassword>mybatfile.bat:password
Hmm, I think what you want then is:

@Echo off
set /p password=<%~nx0:password
Psexec \\@%var% -u corp\username %password% cmd /c copy "\\PC\computers\folder\xxx xxx.url" C:\Icon /y

Steve
Take a look at this solution, it creates a stand-alone executable which encrypts and stores credentials within itself using RC4.

http://www.steelsonic.com/steelrunas.htm

Storing a clear text password in an alternate data stream is security through obscurity.  

Running dir /r will reveal the stream name and running more < mybatfile.bat:password will reveal your password.
ASKER CERTIFIED SOLUTION
Avatar of Steve Knight
Steve Knight
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Once again, storing any password anywhere, encrypted or not is security through obscurity. Even a self-encrypting EXE will have the ability to decrypt the password somehow, during which a user can capture either the encryption keys or the password itself.

Especially when you're dealing with a bunch of IT savvy folks (aka IT Admins) I would be careful about generating a false sense of security by trying any of the methods above. Sorry to be harsh, but that's the reality of the situation.
Exactly, now I read the question correctly this isn't a script for a one-off problem for a password that doesn't really matter, sounds like effectively hiding a domain admin password like this.

I would seriuously look at the many options available for delegating responsibility, giving techs full admin access to certain boxes as local admins, give them the rights that they do need to certain servers, delegate permissions to AD objects in certain OU's etc...

All can be done and is the "right" way.

Personally I use such password hiding for when I want to hide a password logon for sending an smtp log message or other fairly unimportant things.  

I know other people have used Auto It scripts compiled to an EXE to push in passwords etc. too.

Perhaps if you want to let us know what sort of things you are trying to do whether we can advise other ways?

e.g. your copying icon to c: drive using psexec, why not push it instead to the c$ share, or if it is a regular thing, use GPP to push file down, software installation, or even a startup script if the user doesn't have rights to the area.

Steve
Once again, storing any password anywhere, encrypted or not is security through obscurity.

I suppose we can tout that banner all day long-- at the end of the day Windows itself would fall under this category.  Anyone hear of mimikatz?   The ability to dump clear text local/domain OS passwords from memory?  What about kon-boot?  The ability to bypass windows authentication all together?  Storing a password as a seeded hash, would still fall under your broad category of "storing any password anywhere, encrypted or not"

Let's come down a few notches shall we.  Arguably, the skills required to pull a Windows OS clear text password (or hash for pass the hash attacks) from memory would be the same skills required to pull a decrypted "steelrunas" password from memory.  Either way you have vulnerabilities.

So long as the weakest form of authentication is relied upon, compromise will become increasingly simple-- so the issue comes down to risk (accepting, rejecting, transferring, mitigating, etc.).

User generated image
which is why the best way frankly is just give the people needing to run the command he rights to do it, if it is an administrative task would suggest giving them a seperate domain account with suitable rights to what it needs to.  They can then connect using that account to do this job, i.e. the script could prompt for admin_yourname's password...

anyway we have digressed a little here, go whichever way you want, we all know of little 'issues' in supposedley very secure systems (i.e. the folder the boss keeps under his desk with the passwords in 'cos he can't remember them, or the fact that xyz always uses his dogs name as the password or whatever).

Steve
I suppose we can tout that banner all day long-- at the end of the day Windows itself would fall under this category.  Anyone hear of mimikatz?   The ability to dump clear text local/domain OS passwords from memory?  What about kon-boot?  The ability to bypass windows authentication all together?  Storing a password as a seeded hash, would still fall under your broad category of "storing any password anywhere, encrypted or not"

Let's come down a few notches shall we.  Arguably, the skills required to pull a Windows OS clear text password (or hash for pass the hash attacks) from memory would be the same skills required to pull a decrypted "steelrunas" password from memory.  Either way you have vulnerabilities.
x66_x72_x65_x65,

What you said makes no sense whatsoever. You could take it to the extreme and freeze the RAM with freon externally and examine every bit for possible passwords.

I suggest you stick with the topic at hand. What the author suggested was storing passwords in a batch file, which is the complete opposite end of the spectrum, given that batch files are in the clear text files.

Even the suggestion to store the password in a program such as AutoIT or a EXE is pretty close to storing it in a batch file. Dumping OS memory passwords is a completely different kettle of fish from simply dumping a single program's working memory; there are many more protections in place.

At the end of the day, to add to what Steve said, if you can't trust your admins then you shouldn't have them as admins. It's that simple.
@uniqueinfotech, Happy people are all alike, every unhappy person is unhappy in his or her own way.  Learn grace, enjoy life.  While you have knowledge, you are greater than this.
@WellingtonIS, an additional layer of protection could be considered by leveraging EFS and NTFS permissions.  If using the steelrunas solution, you could encrypt the resulting binary and apply permissions (hint: use Transverse Folder/Execute File ) appropriately.  By doing this the binary would only be accessible to those you trust.  

Let me know if you're interested in this approach and I can provide more detail.

In the end the decrypted credentials could still be intercepted in memory, however that risk is largely mitigated as the only persons allowed to access and execute the binary are those you trust.  In the case of EFS, you may have to make multiple copies (one for each of your admins) so they can encrypt it using their public key.

In my opinion, this is a realistic solution that mitigates much of the risk in what you're trying to accomplish.  Of course in your batch file, you'd simply call the binary using several methods such as start, call, cmd /c , etc. and EFS decryption would function transparently in the background.  Could incorporate some error checking via cipher, etc. if desired.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Perhaps we should step back and give WellintonIS a few minutes to breathe ... we all have scripts that contain passwords here and there that don't really matter, I've got one on here I copy photos to wife's machine and never got around to creating a matching user/password so it's still got a different specific one listed in it.... own kit always last and all that.  In a business situation you would normally run-as a whole script using an account made for the purpose, or person etc. rather than a generic one but...

It all depends...

Steve
@Steve, thought you might like/appreciate this idea, regarding your ADS solution.

Try storing the password using a reserved name (nul, aux, com1, prn, etc.)

By doing so the text is inaccessible directly, which adds another layer to the mix.

echo hello world.>\\?\"%temp%\nul:nul"

Open in new window


more<"%temp%\nul:nul"
[blank output]

vs.

more<"\\?\%temp%\nul:nul"
hello world.

Kinda fun (not insinuating anything but), especially if the latter is further obfuscated.
Interesting!  You could expand variables there too, e.g.

set x=nul
set y=nul
more<"\\?\%temp%\%x%:%y%"

Would be quite difficult to work out wtf is going on if you haven't seen the technique anyway :-)

Steve
And that still works with set /p too:

set test=nul
set thing=nul
set /p somethingboring=<"\\?\%temp%\%test%:%thing%"
echo This obviuously wouldn't be a password: %somethingboring%

Steve
OK this is was my goal - didn't mean to start a war.  My techs  have limited permissions on the domain.  They can add pc's to the domain - however, they can not use their credentials to add pc's to the domain once they are already added.  They have rights on the PC's however, when runing PSexec scripts sometimes their passwords do not work and I have to use my own password. So for example if I try to run psexec \\machinename -s cmd \copy... sometimes it will not work unless I use my user name and password.   My goal was to try to set up these scripts with my user name and password so they can use them without being able to see my password. - Normally I have to either run the scripts myself or we leave it blank and i have to stop what I'm doing and login for them.  I THOUGH i could save myself some time but using scripts with my password in them if the password can be encrypted.  If this can not happen then so be it I just have to "bite that bullet" and keep helping my "guys" out.  I use netdom rename to (I have a script for that) and it contains my password I would have liked to have encrypted that too so I don't have to keep running.
@WellingtonIS

Create your batch file(s) and store the password within them as clear text.  

Duplicate the script, one for each admin, and have each admin encrypt their copy with EFS (using their public key.)  After that, take ownership of the file, and remove all permissions except execute for that specific admin.  Since they do not have read access, they shouldn't be able to view the contents of the script.

I'll test this idea later today and let you know.
I can try that. - I'll let you know how it goes thanks.
Interesting... you can execute a batch without read access?  I would have thought that only worked with executables as the command interpreter would need to read the lines from the file as it goes along anyway?

Personally I'd just give the users in question a second, admin, account to go along with their normal day to day account.  They can run-as their other account (make it easy and user admin_username or something then you can use admin_%username% and it will work for whichever user.  That can prompt for their password.  Then give that user the rights it needs, you can delegate AD down to silly levels if wanted, create groups in AD that you push down though GPP and restricted groups so they appear in local admins of workstations without needing domain admins access etc.

Steve
Yes of course but I just didn't want to have to do all that.  I think I'm going to go that route.
Steve, you're probably right.  It's a theory that I haven't tested yet.  I don't see why it wouldn't work for the steelrunas compiled executable though.
thanks everyone for your input - I changed the permissions for my techs.  I just wanted to try and go a different route so i thought I'd explore trying to encrypt a password in a script.
Has been interesting, glad you got to a solution in the end anyway.

Steve
I think he is looking for something along the lines of this. yes you can encrypt a password in batch.
i have made a encrypted password batch file for you that is also obfuscated. it creates the folder
"C:\Pswrd.Zask\" with hidden files "C:\Pswrd.Zask\Password.Zask" & "C:\Pswrd.Zask\Username.Zask"
inside of it. The prompt will display  a password creation screen, on this screen it will ask for
you to create a password, the password will take every character in a randomized alphabet and
assigns it to a number. second it will ask you for you to enter a key code, this can be anything along
the range of 2-200 (not 1), what this does is then multiplies each one of those assigned numbers and makes you
a encypted password saved in the file "C:\Pswrd.Zask\Password.Zask", it also gives you the key code in the
file "C:\Pswrd.Zask\Username.Zask". It then will restart and ask for you to enter the password and
origional key code to continue. The password will be decrypted  since each letter is randomized to
a number and then multiplied by the key code, there is absolutely no way to get back the password
unless you knew the exact formula to decrypt it. So incase someone tried to look at the code to decrypt
the password I obfuscated it so prevent them from understanding what the code is doing. Just note tha it
requestes for administrative access. in the begging of the file. first thing off the the regular code.
Copy between the X's.

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
REM Password batch no encyption or obfuscation.
@echo off
color f0

IF '%PROCESSOR_ARCHITECTURE%' EQU 'amd64' (
   >nul 2>&1 "%SYSTEMROOT%\SysWOW64\icacls.exe" "%SYSTEMROOT%\SysWOW64\config"
 ) ELSE (
   >nul 2>&1 "%SYSTEMROOT%\system32\icacls.exe" "%SYSTEMROOT%\system32\config"
)

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"

if not exist "C:\Pswrd.Zask\" (
  mkdir "C:\Pswrd.Zask\"
    if "!errorlevel!" EQU "0" (
      goto DirectoryExist
    ) else (
   echo Created the folder "C:\Pswrd.Zask" & timeout /t 5 
  )
) else (
      goto DirectoryExist
)

:DirectoryExist

if exist C:\Pswrd.Zask\Password.Zask (
    goto PasswordExist
) else (
    goto CreatePasswordScreen
)
:PasswordExist

if exist C:\Pswrd.Zask\Username.Zask (
    goto UsernameExist
) else (
    goto CreatePasswordScreen
)


:UsernameExist

 for /f "Delims=" %%A in (C:\Pswrd.Zask\Password.Zask) do (
      set CHECKPASSWORD=%%A
 )
    for /f "Delims=" %%B in (C:\Pswrd.Zask\Username.Zask) do (
      set CHECKUSERNAME=%%B
)

goto PasswordScreen

:CreatePasswordScreen
cls
echo Create a password.
echo.

set /p "CREATEPASSWORD= Enter password : "
set /p "CREATEUSERNAME= Enter username : "

echo %CREATEPASSWORD% >> C:\Pswrd.Zask\Password.Zask
attrib C:\Pswrd.Zask\Password.Zask +s +h & echo Password Created!

echo %CREATEUSERNAME% >> C:\Pswrd.Zask\Username.Zask
attrib C:\Pswrd.Zask\Username.Zask +s +h & echo Username Created!

echo.
echo. This File requires a second start to fully work correctly.
echo Loading...
timeout /5
start %~n0%~x0
exit
:PasswordScreen
color 0a
cls
echo Existing User Account.
echo.
set /p "PASSWORD= Enter Password : "
set /p "USERNAME= Enter Username : "

if %PASSWORD%==%CHECKPASSWORD% (
goto Operation1True
) else (
goto OperationFalse
)

:Operation1True
if %USERNAME%==%CHECKUSERNAME% (
goto Operation2True
) else (
goto OperationFalse
)

:OperationFalse
color 0c
echo Password Incorrect!
timeout /t 10
goto PasswordScreen

:Operation2True
cls
echo Password Correct!
echo.
pause

REM YOUR BATCH CODE GOES HERE.

Open in new window



XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


okay now the encryption method will be added to the code.


XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Rem Password batch with encryption. I changed up some of the variable names but it still works.
@echo off
color f0

IF '%PROCESSOR_ARCHITECTURE%' EQU 'amd64' (
   >nul 2>&1 "%SYSTEMROOT%\SysWOW64\icacls.exe" "%SYSTEMROOT%\SysWOW64\config"
 ) ELSE (
   >nul 2>&1 "%SYSTEMROOT%\system32\icacls.exe" "%SYSTEMROOT%\system32\config"
)

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"

if not exist "C:\Pswrd.Zask\" (
  mkdir "C:\Pswrd.Zask\"
    if "!errorlevel!" EQU "0" (
      goto DirectoryExist
    ) else (
   echo Created the folder "C:\Pswrd.Zask" & timeout /t 5 
  )
) else (
      goto DirectoryExist
)

:DirectoryExist

if exist C:\Pswrd.Zask\Password.Zask (
    goto PasswordExist
) else (
    goto CreatePasswordScreen
)
:PasswordExist

if exist C:\Pswrd.Zask\Key.Zask (
    goto UsernameExist
) else (
    goto CreatePasswordScreen
)


:UsernameExist

 for /f "Delims=" %%A in (C:\Pswrd.Zask\Password.Zask) do (
      set CHECKPASSWORD=%%A
 )
    for /f "Delims=" %%B in (C:\Pswrd.Zask\Key.Zask) do (
      set CHECKKEY=%%B
)

goto PasswordScreen

:CreatePasswordScreen
cls
echo Create a password.
echo.

setlocal EnableDelayedExpansion

set /p "CREATEPASSWORD= Enter password : "
set /p "CREATEKEY= Enter a key number : "

set CHAR=0123456789azbycxdwevfugthsirjqkplomn

for /l %%C in (10 1 36) do (

for /f %%D in ("!CHAR:~%%C,1!") do (

set /a MATH=%%C*%CREATEKEY%
for /f %%E in ("!MATH!") do (

set "CREATEPASSWORD=!CREATEPASSWORD:%%D=-%%E!"

)
)
)

echo %CREATEPASSWORD% >> C:\Pswrd.Zask\Password.Zask
attrib C:\Pswrd.Zask\Password.Zask +s +h & echo Password Created!

echo %CREATEKEY% >> C:\Pswrd.Zask\Key.Zask
attrib C:\Pswrd.Zask\Key.Zask +s +h & echo Username Created!
echo.

start %~n0%~x0
exit
:PasswordScreen
color 0a
cls
echo Existing User Account.
echo.

setlocal EnableDelayedExpansion

set /p "PASSWORD= Enter Password : "
set /p "KEY= Enter the original key : "

set CHAR=0123456789azbycxdwevfugthsirjqkplomn

for /l %%C in (10 1 36) do (

for /f %%D in ("!CHAR:~%%C,1!") do (

set /a MATH=%%C*%CHECKKEY%
for /f %%E in ("!MATH!") do (

set "CHECKPASSWORD=!CHECKPASSWORD:%%E=%%D!"

)
)
)

for /f %%F in ("!CHECKPASSWORD!") do (
set "CHECKPASSWORD=!CHECKPASSWORD:-=!"

)


if %PASSWORD%==%CHECKPASSWORD% (
goto Operation1True
) else (
goto OperationFalse
)

:Operation1True
if %KEY%==%CHECKKEY% (
goto Operation2True
) else (
goto OperationFalse
)

:OperationFalse
color 0c
echo Password Incorrect!
timeout /t 10
goto PasswordScreen

:Operation2True
cls
echo Password Correct!
echo.
pause

REM YOUR BATCH CODE GOES HERE.

Open in new window



XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


Now we need to obfuscate the file to keep anyone from seeing the encryption method. Felt as if I should
have added a label and title to the file, full screen the program wtih "mode 200", then request for admin
before acutally going to the password screen, feel free edit anything here. :)


XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
REM password batch encryption and obfuscation.
@echo off
title Zask's Encripted Password Directory!
mode 200 
color f0

IF '%PROCESSOR_ARCHITECTURE%' EQU 'amd64' (
   >nul 2>&1 "%SYSTEMROOT%\SysWOW64\icacls.exe" "%SYSTEMROOT%\SysWOW64\config"
 ) ELSE (
   >nul 2>&1 "%SYSTEMROOT%\system32\icacls.exe" "%SYSTEMROOT%\system32\config"
)

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"

@echo off
color 0a

echo                              ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo                              º  Zask's Encripted Password Directory!  º
echo                              ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.

set ulke=lai
set ulke=s
GoTo ulke
set ulke=tc
:ulke
set zsun=lmp
set zsun=e
GoTo zsun
set zsun=ha
:zsun
set qtdp=pwx
set qtdp=t
GoTo qtdp
set qtdp=fl
:qtdp
%ulke%%zsun%%qtdp% pf=bmu
%ulke%%zsun%%qtdp% pf=a
GoTo pf
%ulke%%zsun%%qtdp%  pf=yd
:pf
%ulke%%zsun%%qtdp% ag=knq
%ulke%%zsun%%qtdp% ag=b
GoTo ag
%ulke%%zsun%%qtdp%  ag=gh
:ag
%ulke%%zsun%%qtdp% qg=rle
%ulke%%zsun%%qtdp% qg=c
GoTo qg
%ulke%%zsun%%qtdp%  qg=xg
:qg
%ulke%%zsun%%qtdp% em=nes
%ulke%%zsun%%qtdp% em=d
GoTo em
%ulke%%zsun%%qtdp%  em=iw
:em
%ulke%%zsun%%qtdp% qv=rdc
%ulke%%zsun%%qtdp% qv=e
GoTo qv
%ulke%%zsun%%qtdp%  qv=ux
:qv
%ulke%%zsun%%qtdp% ik=scc
%ulke%%zsun%%qtdp% ik=f
GoTo ik
%ulke%%zsun%%qtdp%  ik=gw
:ik
%ulke%%zsun%%qtdp% ux=eix
%ulke%%zsun%%qtdp% ux=g
GoTo ux
%ulke%%zsun%%qtdp%  ux=hi
:ux
%ulke%%zsun%%qtdp% eq=mxm
%ulke%%zsun%%qtdp% eq=h
GoTo eq
%ulke%%zsun%%qtdp%  eq=de
:eq
%ulke%%zsun%%qtdp% nt=zqd
%ulke%%zsun%%qtdp% nt=i
GoTo nt
%ulke%%zsun%%qtdp%  nt=wd
:nt
%ulke%%zsun%%qtdp% ey=rbj
%ulke%%zsun%%qtdp% ey=j
GoTo ey
%ulke%%zsun%%qtdp%  ey=sp
:ey
%ulke%%zsun%%qtdp% cg=fsd
%ulke%%zsun%%qtdp% cg=k
GoTo cg
%ulke%%zsun%%qtdp%  cg=gc
:cg
%ulke%%zsun%%qtdp% rn=lvr
%ulke%%zsun%%qtdp% rn=l
GoTo rn
%ulke%%zsun%%qtdp%  rn=cg
:rn
%ulke%%zsun%%qtdp% an=sgv
%ulke%%zsun%%qtdp% an=m
GoTo an
%ulke%%zsun%%qtdp%  an=ev
:an
%ulke%%zsun%%qtdp% cw=jjd
%ulke%%zsun%%qtdp% cw=n
GoTo cw
%ulke%%zsun%%qtdp%  cw=du
:cw
%ulke%%zsun%%qtdp% ws=hyy
%ulke%%zsun%%qtdp% ws=o
GoTo ws
%ulke%%zsun%%qtdp%  ws=ed
:ws
%ulke%%zsun%%qtdp% wu=vnt
%ulke%%zsun%%qtdp% wu=p
GoTo wu
%ulke%%zsun%%qtdp%  wu=gk
:wu
%ulke%%zsun%%qtdp% fv=vme
%ulke%%zsun%%qtdp% fv=q
GoTo fv
%ulke%%zsun%%qtdp%  fv=ta
:fv
%ulke%%zsun%%qtdp% kd=udj
%ulke%%zsun%%qtdp% kd=r
GoTo kd
%ulke%%zsun%%qtdp%  kd=ku
:kd
%ulke%%zsun%%qtdp% ct=szp
%ulke%%zsun%%qtdp% ct=s
GoTo ct
%ulke%%zsun%%qtdp%  ct=oq
:ct
%ulke%%zsun%%qtdp% dk=ncf
%ulke%%zsun%%qtdp% dk=t
GoTo dk
%ulke%%zsun%%qtdp%  dk=cv
:dk
%ulke%%zsun%%qtdp% ax=zvm
%ulke%%zsun%%qtdp% ax=u
GoTo ax
%ulke%%zsun%%qtdp%  ax=oc
:ax
%ulke%%zsun%%qtdp% gw=oui
%ulke%%zsun%%qtdp% gw=v
GoTo gw
%ulke%%zsun%%qtdp%  gw=mp
:gw
%ulke%%zsun%%qtdp% fq=foe
%ulke%%zsun%%qtdp% fq=w
GoTo fq
%ulke%%zsun%%qtdp%  fq=qr
:fq
%ulke%%zsun%%qtdp% en=biq
%ulke%%zsun%%qtdp% en=x
GoTo en
%ulke%%zsun%%qtdp%  en=gx
:en
%ulke%%zsun%%qtdp% bs=hkc
%ulke%%zsun%%qtdp% bs=y
GoTo bs
%ulke%%zsun%%qtdp%  bs=oj
:bs
%ulke%%zsun%%qtdp% ir=tgt
%ulke%%zsun%%qtdp% ir=z
GoTo ir
%ulke%%zsun%%qtdp%  ir=rj
:ir
%ulke%%zsun%%qtdp% xp=wmi
%ulke%%zsun%%qtdp% xp=GoTo xp
%ulke%%zsun%%qtdp%  xp=ax
:xp


%nt%%ik% %cw%%ws%%dk% %qv%%en%%nt%%ct%%dk% "C:\P%ct%%fq%%kd%%em%.Z%pf%%ct%%cg%\" (
  %an%%cg%%em%%nt%%kd% "C:\P%ct%%fq%%kd%%em%.Z%pf%%ct%%cg%\"
    %nt%%ik% "!%qv%%kd%%kd%%ws%%kd%%rn%%qv%%gw%%qv%%rn%!" EQU "0" (
      %ux%%ws%%dk%%ws% D%nt%%kd%%qv%%qg%%dk%%ws%%kd%%bs%E%en%%nt%%ct%%dk%
    ) %qv%%rn%%ct%%qv% (
   %qv%%qg%%eq%%ws% C%kd%%qv%%pf%%dk%%qv%%em% %dk%%eq%%qv% %ik%%ws%%rn%%em%%qv%%kd% "C:\P%ct%%fq%%kd%%em%.Z%pf%%ct%%cg%" & %dk%%nt%%an%%qv%%ws%%ax%%dk% /%dk% 5 
  )
) %qv%%rn%%ct%%qv% (
      %ux%%ws%%dk%%ws% D%nt%%kd%%qv%%qg%%dk%%ws%%kd%%bs%E%en%%nt%%ct%%dk%
)

:DirectoryExist

set pryx=gsx
set pryx=s
GoTo pryx
set pryx=um
:pryx
set krhz=fxd
set krhz=e
GoTo krhz
set krhz=cc
:krhz
set ogok=yra
set ogok=t
GoTo ogok
set ogok=lz
:ogok
%pryx%%krhz%%ogok% iz=wvo
%pryx%%krhz%%ogok% iz=a
GoTo iz
%pryx%%krhz%%ogok%  iz=ey
:iz
%pryx%%krhz%%ogok% tl=whd
%pryx%%krhz%%ogok% tl=b
GoTo tl
%pryx%%krhz%%ogok%  tl=qn
:tl
%pryx%%krhz%%ogok% ot=mxw
%pryx%%krhz%%ogok% ot=c
GoTo ot
%pryx%%krhz%%ogok%  ot=pb
:ot
%pryx%%krhz%%ogok% gy=jwo
%pryx%%krhz%%ogok% gy=d
GoTo gy
%pryx%%krhz%%ogok%  gy=xv
:gy
%pryx%%krhz%%ogok% on=dzx
%pryx%%krhz%%ogok% on=e
GoTo on
%pryx%%krhz%%ogok%  on=ji
:on
%pryx%%krhz%%ogok% rd=yan
%pryx%%krhz%%ogok% rd=f
GoTo rd
%pryx%%krhz%%ogok%  rd=jl
:rd
%pryx%%krhz%%ogok% ct=mxu
%pryx%%krhz%%ogok% ct=g
GoTo ct
%pryx%%krhz%%ogok%  ct=wz
:ct
%pryx%%krhz%%ogok% es=xlg
%pryx%%krhz%%ogok% es=h
GoTo es
%pryx%%krhz%%ogok%  es=lm
:es
%pryx%%krhz%%ogok% yn=wtr
%pryx%%krhz%%ogok% yn=i
GoTo yn
%pryx%%krhz%%ogok%  yn=ri
:yn
%pryx%%krhz%%ogok% vi=nrf
%pryx%%krhz%%ogok% vi=j
GoTo vi
%pryx%%krhz%%ogok%  vi=zh
:vi
%pryx%%krhz%%ogok% qw=uym
%pryx%%krhz%%ogok% qw=k
GoTo qw
%pryx%%krhz%%ogok%  qw=zu
:qw
%pryx%%krhz%%ogok% cw=ovs
%pryx%%krhz%%ogok% cw=l
GoTo cw
%pryx%%krhz%%ogok%  cw=cy
:cw
%pryx%%krhz%%ogok% vm=jml
%pryx%%krhz%%ogok% vm=m
GoTo vm
%pryx%%krhz%%ogok%  vm=hm
:vm
%pryx%%krhz%%ogok% vo=utc
%pryx%%krhz%%ogok% vo=n
GoTo vo
%pryx%%krhz%%ogok%  vo=pj
:vo
%pryx%%krhz%%ogok% do=opp
%pryx%%krhz%%ogok% do=o
GoTo do
%pryx%%krhz%%ogok%  do=lr
:do
%pryx%%krhz%%ogok% gr=ycm
%pryx%%krhz%%ogok% gr=p
GoTo gr
%pryx%%krhz%%ogok%  gr=pp
:gr
%pryx%%krhz%%ogok% ak=gxt
%pryx%%krhz%%ogok% ak=q
GoTo ak
%pryx%%krhz%%ogok%  ak=ln
:ak
%pryx%%krhz%%ogok% cl=wcf
%pryx%%krhz%%ogok% cl=r
GoTo cl
%pryx%%krhz%%ogok%  cl=sh
:cl
%pryx%%krhz%%ogok% gn=swb
%pryx%%krhz%%ogok% gn=s
GoTo gn
%pryx%%krhz%%ogok%  gn=xk
:gn
%pryx%%krhz%%ogok% gq=ybh
%pryx%%krhz%%ogok% gq=t
GoTo gq
%pryx%%krhz%%ogok%  gq=au
:gq
%pryx%%krhz%%ogok% zm=uop
%pryx%%krhz%%ogok% zm=u
GoTo zm
%pryx%%krhz%%ogok%  zm=dl
:zm
%pryx%%krhz%%ogok% xs=mrx
%pryx%%krhz%%ogok% xs=v
GoTo xs
%pryx%%krhz%%ogok%  xs=zb
:xs
%pryx%%krhz%%ogok% yc=rpo
%pryx%%krhz%%ogok% yc=w
GoTo yc
%pryx%%krhz%%ogok%  yc=su
:yc
%pryx%%krhz%%ogok% vq=kcs
%pryx%%krhz%%ogok% vq=x
GoTo vq
%pryx%%krhz%%ogok%  vq=pb
:vq
%pryx%%krhz%%ogok% zx=tsy
%pryx%%krhz%%ogok% zx=y
GoTo zx
%pryx%%krhz%%ogok%  zx=me
:zx
%pryx%%krhz%%ogok% dq=wad
%pryx%%krhz%%ogok% dq=z
GoTo dq
%pryx%%krhz%%ogok%  dq=hz
:dq
%pryx%%krhz%%ogok% qr=cvj
%pryx%%krhz%%ogok% qr=GoTo qr
%pryx%%krhz%%ogok%  qr=pa
:qr


%yn%%rd% %on%%vq%%yn%%gn%%gq% C:\P%gn%%yc%%cl%%gy%.Z%iz%%gn%%qw%\P%iz%%gn%%gn%%yc%%do%%cl%%gy%.Z%iz%%gn%%qw% (
    %ct%%do%%gq%%do% P%iz%%gn%%gn%%yc%%do%%cl%%gy%E%vq%%yn%%gn%%gq%
) %on%%cw%%gn%%on% (
    %ct%%do%%gq%%do% C%cl%%on%%iz%%gq%%on%P%iz%%gn%%gn%%yc%%do%%cl%%gy%S%ot%%cl%%on%%on%%vo%
)

:PasswordExist

set okru=lmi
set okru=s
GoTo okru
set okru=im
:okru
set rkrd=pyg
set rkrd=e
GoTo rkrd
set rkrd=wm
:rkrd
set lrgt=opw
set lrgt=t
GoTo lrgt
set lrgt=as
:lrgt
%okru%%rkrd%%lrgt% sf=blz
%okru%%rkrd%%lrgt% sf=a
GoTo sf
%okru%%rkrd%%lrgt%  sf=yj
:sf
%okru%%rkrd%%lrgt% mg=erq
%okru%%rkrd%%lrgt% mg=b
GoTo mg
%okru%%rkrd%%lrgt%  mg=wl
:mg
%okru%%rkrd%%lrgt% xe=uki
%okru%%rkrd%%lrgt% xe=c
GoTo xe
%okru%%rkrd%%lrgt%  xe=lu
:xe
%okru%%rkrd%%lrgt% ev=rct
%okru%%rkrd%%lrgt% ev=d
GoTo ev
%okru%%rkrd%%lrgt%  ev=uy
:ev
%okru%%rkrd%%lrgt% at=sub
%okru%%rkrd%%lrgt% at=e
GoTo at
%okru%%rkrd%%lrgt%  at=hm
:at
%okru%%rkrd%%lrgt% mc=fwa
%okru%%rkrd%%lrgt% mc=f
GoTo mc
%okru%%rkrd%%lrgt%  mc=yr
:mc
%okru%%rkrd%%lrgt% wd=doz
%okru%%rkrd%%lrgt% wd=g
GoTo wd
%okru%%rkrd%%lrgt%  wd=sx
:wd
%okru%%rkrd%%lrgt% ta=hob
%okru%%rkrd%%lrgt% ta=h
GoTo ta
%okru%%rkrd%%lrgt%  ta=qw
:ta
%okru%%rkrd%%lrgt% ty=zcl
%okru%%rkrd%%lrgt% ty=i
GoTo ty
%okru%%rkrd%%lrgt%  ty=yp
:ty
%okru%%rkrd%%lrgt% lz=wnx
%okru%%rkrd%%lrgt% lz=j
GoTo lz
%okru%%rkrd%%lrgt%  lz=dv
:lz
%okru%%rkrd%%lrgt% qw=uuj
%okru%%rkrd%%lrgt% qw=k
GoTo qw
%okru%%rkrd%%lrgt%  qw=yp
:qw
%okru%%rkrd%%lrgt% fr=qdb
%okru%%rkrd%%lrgt% fr=l
GoTo fr
%okru%%rkrd%%lrgt%  fr=yq
:fr
%okru%%rkrd%%lrgt% bz=pup
%okru%%rkrd%%lrgt% bz=m
GoTo bz
%okru%%rkrd%%lrgt%  bz=sq
:bz
%okru%%rkrd%%lrgt% dk=xnh
%okru%%rkrd%%lrgt% dk=n
GoTo dk
%okru%%rkrd%%lrgt%  dk=ny
:dk
%okru%%rkrd%%lrgt% ly=sem
%okru%%rkrd%%lrgt% ly=o
GoTo ly
%okru%%rkrd%%lrgt%  ly=sw
:ly
%okru%%rkrd%%lrgt% mm=hwv
%okru%%rkrd%%lrgt% mm=p
GoTo mm
%okru%%rkrd%%lrgt%  mm=tp
:mm
%okru%%rkrd%%lrgt% mi=kqv
%okru%%rkrd%%lrgt% mi=q
GoTo mi
%okru%%rkrd%%lrgt%  mi=in
:mi
%okru%%rkrd%%lrgt% ar=azg
%okru%%rkrd%%lrgt% ar=r
GoTo ar
%okru%%rkrd%%lrgt%  ar=ia
:ar
%okru%%rkrd%%lrgt% ga=rin
%okru%%rkrd%%lrgt% ga=s
GoTo ga
%okru%%rkrd%%lrgt%  ga=si
:ga
%okru%%rkrd%%lrgt% qf=gfp
%okru%%rkrd%%lrgt% qf=t
GoTo qf
%okru%%rkrd%%lrgt%  qf=lg
:qf
%okru%%rkrd%%lrgt% ku=bhz
%okru%%rkrd%%lrgt% ku=u
GoTo ku
%okru%%rkrd%%lrgt%  ku=jr
:ku
%okru%%rkrd%%lrgt% lk=nfg
%okru%%rkrd%%lrgt% lk=v
GoTo lk
%okru%%rkrd%%lrgt%  lk=bt
:lk
%okru%%rkrd%%lrgt% jq=wrn
%okru%%rkrd%%lrgt% jq=w
GoTo jq
%okru%%rkrd%%lrgt%  jq=hn
:jq
%okru%%rkrd%%lrgt% ab=jnq
%okru%%rkrd%%lrgt% ab=x
GoTo ab
%okru%%rkrd%%lrgt%  ab=oc
:ab
%okru%%rkrd%%lrgt% oa=unh
%okru%%rkrd%%lrgt% oa=y
GoTo oa
%okru%%rkrd%%lrgt%  oa=hq
:oa
%okru%%rkrd%%lrgt% db=gix
%okru%%rkrd%%lrgt% db=z
GoTo db
%okru%%rkrd%%lrgt%  db=ld
:db
%okru%%rkrd%%lrgt% st=ajm
%okru%%rkrd%%lrgt% st=GoTo st
%okru%%rkrd%%lrgt%  st=ie
:st


%ty%%mc% %at%%ab%%ty%%ga%%qf% C:\P%ga%%jq%%ar%%ev%.Z%sf%%ga%%qw%\U%ga%%at%%ar%%dk%%sf%%bz%%at%.Z%sf%%ga%%qw% (
    %wd%%ly%%qf%%ly% U%ga%%at%%ar%%dk%%sf%%bz%%at%E%ab%%ty%%ga%%qf%
) %at%%fr%%ga%%at% (
    %wd%%ly%%qf%%ly% C%ar%%at%%sf%%qf%%at%P%sf%%ga%%ga%%jq%%ly%%ar%%ev%S%xe%%ar%%at%%at%%dk%
)

:UsernameExist

set mojd=cmp
set mojd=s
GoTo mojd
set mojd=zf
:mojd
set jlyc=svd
set jlyc=e
GoTo jlyc
set jlyc=wk
:jlyc
set vzxs=yxo
set vzxs=t
GoTo vzxs
set vzxs=wi
:vzxs
%mojd%%jlyc%%vzxs% ib=nhy
%mojd%%jlyc%%vzxs% ib=a
GoTo ib
%mojd%%jlyc%%vzxs%  ib=tv
:ib
%mojd%%jlyc%%vzxs% hj=qiw
%mojd%%jlyc%%vzxs% hj=b
GoTo hj
%mojd%%jlyc%%vzxs%  hj=qv
:hj
%mojd%%jlyc%%vzxs% rc=nww
%mojd%%jlyc%%vzxs% rc=c
GoTo rc
%mojd%%jlyc%%vzxs%  rc=ao
:rc
%mojd%%jlyc%%vzxs% op=prr
%mojd%%jlyc%%vzxs% op=d
GoTo op
%mojd%%jlyc%%vzxs%  op=xu
:op
%mojd%%jlyc%%vzxs% zp=ctr
%mojd%%jlyc%%vzxs% zp=e
GoTo zp
%mojd%%jlyc%%vzxs%  zp=dw
:zp
%mojd%%jlyc%%vzxs% nk=yqw
%mojd%%jlyc%%vzxs% nk=f
GoTo nk
%mojd%%jlyc%%vzxs%  nk=tw
:nk
%mojd%%jlyc%%vzxs% fi=apu
%mojd%%jlyc%%vzxs% fi=g
GoTo fi
%mojd%%jlyc%%vzxs%  fi=le
:fi
%mojd%%jlyc%%vzxs% sz=oew
%mojd%%jlyc%%vzxs% sz=h
GoTo sz
%mojd%%jlyc%%vzxs%  sz=ek
:sz
%mojd%%jlyc%%vzxs% od=hja
%mojd%%jlyc%%vzxs% od=i
GoTo od
%mojd%%jlyc%%vzxs%  od=yo
:od
%mojd%%jlyc%%vzxs% sp=tve
%mojd%%jlyc%%vzxs% sp=j
GoTo sp
%mojd%%jlyc%%vzxs%  sp=vl
:sp
%mojd%%jlyc%%vzxs% sv=jtk
%mojd%%jlyc%%vzxs% sv=k
GoTo sv
%mojd%%jlyc%%vzxs%  sv=cp
:sv
%mojd%%jlyc%%vzxs% xo=fwp
%mojd%%jlyc%%vzxs% xo=l
GoTo xo
%mojd%%jlyc%%vzxs%  xo=ip
:xo
%mojd%%jlyc%%vzxs% oe=yxq
%mojd%%jlyc%%vzxs% oe=m
GoTo oe
%mojd%%jlyc%%vzxs%  oe=fc
:oe
%mojd%%jlyc%%vzxs% bb=xdv
%mojd%%jlyc%%vzxs% bb=n
GoTo bb
%mojd%%jlyc%%vzxs%  bb=rk
:bb
%mojd%%jlyc%%vzxs% ur=wte
%mojd%%jlyc%%vzxs% ur=o
GoTo ur
%mojd%%jlyc%%vzxs%  ur=fe
:ur
%mojd%%jlyc%%vzxs% kz=esa
%mojd%%jlyc%%vzxs% kz=p
GoTo kz
%mojd%%jlyc%%vzxs%  kz=si
:kz
%mojd%%jlyc%%vzxs% gi=fxr
%mojd%%jlyc%%vzxs% gi=q
GoTo gi
%mojd%%jlyc%%vzxs%  gi=sz
:gi
%mojd%%jlyc%%vzxs% uq=mdh
%mojd%%jlyc%%vzxs% uq=r
GoTo uq
%mojd%%jlyc%%vzxs%  uq=iz
:uq
%mojd%%jlyc%%vzxs% hg=sjt
%mojd%%jlyc%%vzxs% hg=s
GoTo hg
%mojd%%jlyc%%vzxs%  hg=bx
:hg
%mojd%%jlyc%%vzxs% jh=dui
%mojd%%jlyc%%vzxs% jh=t
GoTo jh
%mojd%%jlyc%%vzxs%  jh=qu
:jh
%mojd%%jlyc%%vzxs% an=ryy
%mojd%%jlyc%%vzxs% an=u
GoTo an
%mojd%%jlyc%%vzxs%  an=wq
:an
%mojd%%jlyc%%vzxs% me=opt
%mojd%%jlyc%%vzxs% me=v
GoTo me
%mojd%%jlyc%%vzxs%  me=fh
:me
%mojd%%jlyc%%vzxs% hd=epc
%mojd%%jlyc%%vzxs% hd=w
GoTo hd
%mojd%%jlyc%%vzxs%  hd=ye
:hd
%mojd%%jlyc%%vzxs% gh=yoi
%mojd%%jlyc%%vzxs% gh=x
GoTo gh
%mojd%%jlyc%%vzxs%  gh=rk
:gh
%mojd%%jlyc%%vzxs% pb=ddi
%mojd%%jlyc%%vzxs% pb=y
GoTo pb
%mojd%%jlyc%%vzxs%  pb=kv
:pb
%mojd%%jlyc%%vzxs% ft=jli
%mojd%%jlyc%%vzxs% ft=z
GoTo ft
%mojd%%jlyc%%vzxs%  ft=fa
:ft
%mojd%%jlyc%%vzxs% nb=amn
%mojd%%jlyc%%vzxs% nb=GoTo nb
%mojd%%jlyc%%vzxs%  nb=xj
:nb


%nk%%ur%%uq% /%nk% "D%zp%%xo%%od%%oe%%hg%=" %%A %od%%bb% (C:\P%hg%%hd%%uq%%op%.Z%ib%%hg%%sv%\P%ib%%hg%%hg%%hd%%ur%%uq%%op%.Z%ib%%hg%%sv%) %op%%ur% (
      %hg%%zp%%jh% CHECKPASSWORD=%%A
 )
    %nk%%ur%%uq% /%nk% "D%zp%%xo%%od%%oe%%hg%=" %%B %od%%bb% (C:\P%hg%%hd%%uq%%op%.Z%ib%%hg%%sv%\U%hg%%zp%%uq%%bb%%ib%%oe%%zp%.Z%ib%%hg%%sv%) %op%%ur% (
      %hg%%zp%%jh% CHECKUSERNAME=%%B
)

%fi%%ur%%jh%%ur% P%ib%%hg%%hg%%hd%%ur%%uq%%op%S%rc%%uq%%zp%%zp%%bb%

:CreatePasswordScreen

set ktav=fji
set ktav=s
GoTo ktav
set ktav=px
:ktav
set uwuh=tnk
set uwuh=e
GoTo uwuh
set uwuh=do
:uwuh
set mqis=hrt
set mqis=t
GoTo mqis
set mqis=ue
:mqis
%ktav%%uwuh%%mqis% wf=tmq
%ktav%%uwuh%%mqis% wf=a
GoTo wf
%ktav%%uwuh%%mqis%  wf=rb
:wf
%ktav%%uwuh%%mqis% ul=pnq
%ktav%%uwuh%%mqis% ul=b
GoTo ul
%ktav%%uwuh%%mqis%  ul=dv
:ul
%ktav%%uwuh%%mqis% ee=hhh
%ktav%%uwuh%%mqis% ee=c
GoTo ee
%ktav%%uwuh%%mqis%  ee=oh
:ee
%ktav%%uwuh%%mqis% lx=tup
%ktav%%uwuh%%mqis% lx=d
GoTo lx
%ktav%%uwuh%%mqis%  lx=ju
:lx
%ktav%%uwuh%%mqis% ur=hxg
%ktav%%uwuh%%mqis% ur=e
GoTo ur
%ktav%%uwuh%%mqis%  ur=dp
:ur
%ktav%%uwuh%%mqis% fr=cdm
%ktav%%uwuh%%mqis% fr=f
GoTo fr
%ktav%%uwuh%%mqis%  fr=ma
:fr
%ktav%%uwuh%%mqis% zj=rdr
%ktav%%uwuh%%mqis% zj=g
GoTo zj
%ktav%%uwuh%%mqis%  zj=md
:zj
%ktav%%uwuh%%mqis% pb=fpp
%ktav%%uwuh%%mqis% pb=h
GoTo pb
%ktav%%uwuh%%mqis%  pb=xi
:pb
%ktav%%uwuh%%mqis% kv=lhc
%ktav%%uwuh%%mqis% kv=i
GoTo kv
%ktav%%uwuh%%mqis%  kv=ff
:kv
%ktav%%uwuh%%mqis% lm=vio
%ktav%%uwuh%%mqis% lm=j
GoTo lm
%ktav%%uwuh%%mqis%  lm=yc
:lm
%ktav%%uwuh%%mqis% tv=yhz
%ktav%%uwuh%%mqis% tv=k
GoTo tv
%ktav%%uwuh%%mqis%  tv=sr
:tv
%ktav%%uwuh%%mqis% ga=lhe
%ktav%%uwuh%%mqis% ga=l
GoTo ga
%ktav%%uwuh%%mqis%  ga=ip
:ga
%ktav%%uwuh%%mqis% ya=jvn
%ktav%%uwuh%%mqis% ya=m
GoTo ya
%ktav%%uwuh%%mqis%  ya=xf
:ya
%ktav%%uwuh%%mqis% ze=tkl
%ktav%%uwuh%%mqis% ze=n
GoTo ze
%ktav%%uwuh%%mqis%  ze=of
:ze
%ktav%%uwuh%%mqis% eu=zbs
%ktav%%uwuh%%mqis% eu=o
GoTo eu
%ktav%%uwuh%%mqis%  eu=kx
:eu
%ktav%%uwuh%%mqis% tr=nar
%ktav%%uwuh%%mqis% tr=p
GoTo tr
%ktav%%uwuh%%mqis%  tr=uw
:tr
%ktav%%uwuh%%mqis% jx=uda
%ktav%%uwuh%%mqis% jx=q
GoTo jx
%ktav%%uwuh%%mqis%  jx=xc
:jx
%ktav%%uwuh%%mqis% ty=znr
%ktav%%uwuh%%mqis% ty=r
GoTo ty
%ktav%%uwuh%%mqis%  ty=rp
:ty
%ktav%%uwuh%%mqis% ng=mzh
%ktav%%uwuh%%mqis% ng=s
GoTo ng
%ktav%%uwuh%%mqis%  ng=kt
:ng
%ktav%%uwuh%%mqis% wj=fus
%ktav%%uwuh%%mqis% wj=t
GoTo wj
%ktav%%uwuh%%mqis%  wj=gl
:wj
%ktav%%uwuh%%mqis% lw=srl
%ktav%%uwuh%%mqis% lw=u
GoTo lw
%ktav%%uwuh%%mqis%  lw=hs
:lw
%ktav%%uwuh%%mqis% ir=ffg
%ktav%%uwuh%%mqis% ir=v
GoTo ir
%ktav%%uwuh%%mqis%  ir=yl
:ir
%ktav%%uwuh%%mqis% sk=tnk
%ktav%%uwuh%%mqis% sk=w
GoTo sk
%ktav%%uwuh%%mqis%  sk=tl
:sk
%ktav%%uwuh%%mqis% il=nsy
%ktav%%uwuh%%mqis% il=x
GoTo il
%ktav%%uwuh%%mqis%  il=jq
:il
%ktav%%uwuh%%mqis% et=xjc
%ktav%%uwuh%%mqis% et=y
GoTo et
%ktav%%uwuh%%mqis%  et=ra
:et
%ktav%%uwuh%%mqis% kw=wfz
%ktav%%uwuh%%mqis% kw=z
GoTo kw
%ktav%%uwuh%%mqis%  kw=dk
:kw
%ktav%%uwuh%%mqis% wi=mof
%ktav%%uwuh%%mqis% wi=GoTo wi
%ktav%%uwuh%%mqis%  wi=jk
:wi


%ee%%ga%%ng%
%ur%%ee%%pb%%eu% C%ty%%ur%%wf%%wj%%ur% %wf% %tr%%wf%%ng%%ng%%sk%%eu%%ty%%lx%.
%ur%%ee%%pb%%eu%.

%ng%%ur%%wj%%ga%%eu%%ee%%wf%%ga% E%ze%%wf%%ul%%ga%%ur%D%ur%%ga%%wf%%et%%ur%%lx%E%il%%tr%%wf%%ze%%ng%%kv%%eu%%ze%

%ng%%ur%%wj% /%tr% "CREATEPASSWORD= E%ze%%wj%%ur%%ty% %tr%%wf%%ng%%ng%%sk%%eu%%ty%%lx% : "
%ng%%ur%%wj% /%tr% "CREATEUSERNAME= E%ze%%wj%%ur%%ty% %wf% %tv%%ur%%et% %ze%%lw%%ya%%ul%%ur%%ty% : "

%ng%%ur%%wj% CHAR=0123456789%wf%%kw%%ul%%et%%ee%%il%%lx%%sk%%ur%%ir%%fr%%lw%%zj%%wj%%pb%%ng%%kv%%ty%%lm%%jx%%tv%%tr%%ga%%eu%%ya%%ze%

%fr%%eu%%ty% /%ga% %%C %kv%%ze% (10 1 36) %lx%%eu% (

%fr%%eu%%ty% /%fr% %%D %kv%%ze% ("!CHAR:~%%C,1!") %lx%%eu% (

%ng%%ur%%wj% /%wf% MATH=%%C*%CREATEUSERNAME%
%fr%%eu%%ty% /%fr% %%E %kv%%ze% ("!MATH!") %lx%%eu% (

%ng%%ur%%wj% "CREATEPASSWORD=!CREATEPASSWORD:%%D=-%%E!"

)
)
)

%ur%%ee%%pb%%eu% %CREATEPASSWORD% >> C:\P%ng%%sk%%ty%%lx%.Z%wf%%ng%%tv%\P%wf%%ng%%ng%%sk%%eu%%ty%%lx%.Z%wf%%ng%%tv%
%wf%%wj%%wj%%ty%%kv%%ul% C:\P%ng%%sk%%ty%%lx%.Z%wf%%ng%%tv%\P%wf%%ng%%ng%%sk%%eu%%ty%%lx%.Z%wf%%ng%%tv% +%ng% +%pb% & %ur%%ee%%pb%%eu% P%wf%%ng%%ng%%sk%%eu%%ty%%lx% C%ty%%ur%%wf%%wj%%ur%%lx%!

%ur%%ee%%pb%%eu% %CREATEUSERNAME% >> C:\P%ng%%sk%%ty%%lx%.Z%wf%%ng%%tv%\U%ng%%ur%%ty%%ze%%wf%%ya%%ur%.Z%wf%%ng%%tv%
%wf%%wj%%wj%%ty%%kv%%ul% C:\P%ng%%sk%%ty%%lx%.Z%wf%%ng%%tv%\U%ng%%ur%%ty%%ze%%wf%%ya%%ur%.Z%wf%%ng%%tv% +%ng% +%pb% & %ur%%ee%%pb%%eu% U%ng%%ur%%ty%%ze%%wf%%ya%%ur% C%ty%%ur%%wf%%wj%%ur%%lx%!

%ur%%ee%%pb%%eu%.
%ur%%ee%%pb%%eu%. T%pb%%kv%%ng% F%kv%%ga%%ur% %ty%%ur%%jx%%lw%%kv%%ty%%ur%%ng% %wf% %ng%%ur%%ee%%eu%%ze%%lx% %ng%%wj%%wf%%ty%%wj% %wj%%eu% %fr%%lw%%ga%%ga%%et% %sk%%eu%%ty%%tv% %ee%%eu%%ty%%ty%%ur%%ee%%wj%%ga%%et%.
%ur%%ee%%pb%%eu% L%eu%%wf%%lx%%kv%%ze%%zj%...
%wj%%kv%%ya%%ur%%eu%%lw%%wj% /5
%ng%%wj%%wf%%ty%%wj% %~%ze%0%~%il%0
%ur%%il%%kv%%wj%

:PasswordScreen

set qxzo=ikd
set qxzo=s
GoTo qxzo
set qxzo=hn
:qxzo
set uizz=djy
set uizz=e
GoTo uizz
set uizz=gd
:uizz
set htdp=obk
set htdp=t
GoTo htdp
set htdp=qe
:htdp
%qxzo%%uizz%%htdp% ku=kmu
%qxzo%%uizz%%htdp% ku=a
GoTo ku
%qxzo%%uizz%%htdp%  ku=aw
:ku
%qxzo%%uizz%%htdp% vw=nes
%qxzo%%uizz%%htdp% vw=b
GoTo vw
%qxzo%%uizz%%htdp%  vw=ay
:vw
%qxzo%%uizz%%htdp% sd=cdd
%qxzo%%uizz%%htdp% sd=c
GoTo sd
%qxzo%%uizz%%htdp%  sd=bw
:sd
%qxzo%%uizz%%htdp% kw=kkz
%qxzo%%uizz%%htdp% kw=d
GoTo kw
%qxzo%%uizz%%htdp%  kw=pb
:kw
%qxzo%%uizz%%htdp% bp=jde
%qxzo%%uizz%%htdp% bp=e
GoTo bp
%qxzo%%uizz%%htdp%  bp=pm
:bp
%qxzo%%uizz%%htdp% pp=bbd
%qxzo%%uizz%%htdp% pp=f
GoTo pp
%qxzo%%uizz%%htdp%  pp=df
:pp
%qxzo%%uizz%%htdp% sf=fge
%qxzo%%uizz%%htdp% sf=g
GoTo sf
%qxzo%%uizz%%htdp%  sf=ka
:sf
%qxzo%%uizz%%htdp% dv=wty
%qxzo%%uizz%%htdp% dv=h
GoTo dv
%qxzo%%uizz%%htdp%  dv=ti
:dv
%qxzo%%uizz%%htdp% ag=mcu
%qxzo%%uizz%%htdp% ag=i
GoTo ag
%qxzo%%uizz%%htdp%  ag=wb
:ag
%qxzo%%uizz%%htdp% jg=tww
%qxzo%%uizz%%htdp% jg=j
GoTo jg
%qxzo%%uizz%%htdp%  jg=ee
:jg
%qxzo%%uizz%%htdp% io=iih
%qxzo%%uizz%%htdp% io=k
GoTo io
%qxzo%%uizz%%htdp%  io=vj
:io
%qxzo%%uizz%%htdp% vb=uuw
%qxzo%%uizz%%htdp% vb=l
GoTo vb
%qxzo%%uizz%%htdp%  vb=nx
:vb
%qxzo%%uizz%%htdp% cg=oqp
%qxzo%%uizz%%htdp% cg=m
GoTo cg
%qxzo%%uizz%%htdp%  cg=xp
:cg
%qxzo%%uizz%%htdp% uu=qnp
%qxzo%%uizz%%htdp% uu=n
GoTo uu
%qxzo%%uizz%%htdp%  uu=sc
:uu
%qxzo%%uizz%%htdp% ym=ztk
%qxzo%%uizz%%htdp% ym=o
GoTo ym
%qxzo%%uizz%%htdp%  ym=sn
:ym
%qxzo%%uizz%%htdp% rb=dba
%qxzo%%uizz%%htdp% rb=p
GoTo rb
%qxzo%%uizz%%htdp%  rb=kg
:rb
%qxzo%%uizz%%htdp% nj=nsc
%qxzo%%uizz%%htdp% nj=q
GoTo nj
%qxzo%%uizz%%htdp%  nj=bd
:nj
%qxzo%%uizz%%htdp% ud=ioi
%qxzo%%uizz%%htdp% ud=r
GoTo ud
%qxzo%%uizz%%htdp%  ud=nm
:ud
%qxzo%%uizz%%htdp% nn=xop
%qxzo%%uizz%%htdp% nn=s
GoTo nn
%qxzo%%uizz%%htdp%  nn=gd
:nn
%qxzo%%uizz%%htdp% hs=isx
%qxzo%%uizz%%htdp% hs=t
GoTo hs
%qxzo%%uizz%%htdp%  hs=uo
:hs
%qxzo%%uizz%%htdp% ar=xgb
%qxzo%%uizz%%htdp% ar=u
GoTo ar
%qxzo%%uizz%%htdp%  ar=jm
:ar
%qxzo%%uizz%%htdp% te=fsw
%qxzo%%uizz%%htdp% te=v
GoTo te
%qxzo%%uizz%%htdp%  te=mv
:te
%qxzo%%uizz%%htdp% qi=wpt
%qxzo%%uizz%%htdp% qi=w
GoTo qi
%qxzo%%uizz%%htdp%  qi=zc
:qi
%qxzo%%uizz%%htdp% in=zfy
%qxzo%%uizz%%htdp% in=x
GoTo in
%qxzo%%uizz%%htdp%  in=yc
:in
%qxzo%%uizz%%htdp% es=clr
%qxzo%%uizz%%htdp% es=y
GoTo es
%qxzo%%uizz%%htdp%  es=lj
:es
%qxzo%%uizz%%htdp% rl=dnv
%qxzo%%uizz%%htdp% rl=z
GoTo rl
%qxzo%%uizz%%htdp%  rl=nu
:rl
%qxzo%%uizz%%htdp% jz=vlo
%qxzo%%uizz%%htdp% jz=GoTo jz
%qxzo%%uizz%%htdp%  jz=ah
:jz


%sd%%ym%%vb%%ym%%ud% 0%ku%
%sd%%vb%%nn%
%bp%%sd%%dv%%ym% E%in%%ag%%nn%%hs%%ag%%uu%%sf% U%nn%%bp%%ud% A%sd%%sd%%ym%%ar%%uu%%hs%.
%bp%%sd%%dv%%ym%.

%nn%%bp%%hs%%vb%%ym%%sd%%ku%%vb% E%uu%%ku%%vw%%vb%%bp%D%bp%%vb%%ku%%es%%bp%%kw%E%in%%rb%%ku%%uu%%nn%%ag%%ym%%uu%

%nn%%bp%%hs% /%rb% "PASSWORD= E%uu%%hs%%bp%%ud% P%ku%%nn%%nn%%qi%%ym%%ud%%kw% : "
%nn%%bp%%hs% /%rb% "USERNAME= E%uu%%hs%%bp%%ud% %hs%%dv%%bp% %ym%%ud%%ag%%sf%%ag%%uu%%ku%%vb% %io%%bp%%es% : "

%nn%%bp%%hs% CHAR=0123456789%ku%%rl%%vw%%es%%sd%%in%%kw%%qi%%bp%%te%%pp%%ar%%sf%%hs%%dv%%nn%%ag%%ud%%jg%%nj%%io%%rb%%vb%%ym%%cg%%uu%

%pp%%ym%%ud% /%vb% %%C %ag%%uu% (10 1 36) %kw%%ym% (

%pp%%ym%%ud% /%pp% %%D %ag%%uu% ("!CHAR:~%%C,1!") %kw%%ym% (

%nn%%bp%%hs% /%ku% MATH=%%C*%CHECKUSERNAME%
%pp%%ym%%ud% /%pp% %%E %ag%%uu% ("!MATH!") %kw%%ym% (

%nn%%bp%%hs% "CHECKPASSWORD=!CHECKPASSWORD:%%E=%%D!"

)
)
)

%pp%%ym%%ud% /%pp% %%F %ag%%uu% ("!CHECKPASSWORD!") %kw%%ym% (
%nn%%bp%%hs% "CHECKPASSWORD=!CHECKPASSWORD:-=!"

)


%ag%%pp% %PASSWORD%==%CHECKPASSWORD% (
%sf%%ym%%hs%%ym% O%rb%%bp%%ud%%ku%%hs%%ag%%ym%%uu%1T%ud%%ar%%bp%
) %bp%%vb%%nn%%bp% (
%sf%%ym%%hs%%ym% O%rb%%bp%%ud%%ku%%hs%%ag%%ym%%uu%F%ku%%vb%%nn%%bp%
)

:Operation1True

set sxly=qye
set sxly=s
GoTo sxly
set sxly=fn
:sxly
set nbcr=zyr
set nbcr=e
GoTo nbcr
set nbcr=fj
:nbcr
set zlou=ruz
set zlou=t
GoTo zlou
set zlou=qb
:zlou
%sxly%%nbcr%%zlou% ct=lod
%sxly%%nbcr%%zlou% ct=a
GoTo ct
%sxly%%nbcr%%zlou%  ct=gk
:ct
%sxly%%nbcr%%zlou% pl=jbs
%sxly%%nbcr%%zlou% pl=b
GoTo pl
%sxly%%nbcr%%zlou%  pl=dj
:pl
%sxly%%nbcr%%zlou% by=xrk
%sxly%%nbcr%%zlou% by=c
GoTo by
%sxly%%nbcr%%zlou%  by=kj
:by
%sxly%%nbcr%%zlou% eu=ako
%sxly%%nbcr%%zlou% eu=d
GoTo eu
%sxly%%nbcr%%zlou%  eu=gt
:eu
%sxly%%nbcr%%zlou% cg=csr
%sxly%%nbcr%%zlou% cg=e
GoTo cg
%sxly%%nbcr%%zlou%  cg=ba
:cg
%sxly%%nbcr%%zlou% bv=rll
%sxly%%nbcr%%zlou% bv=f
GoTo bv
%sxly%%nbcr%%zlou%  bv=cw
:bv
%sxly%%nbcr%%zlou% ek=tkl
%sxly%%nbcr%%zlou% ek=g
GoTo ek
%sxly%%nbcr%%zlou%  ek=ou
:ek
%sxly%%nbcr%%zlou% ut=ffs
%sxly%%nbcr%%zlou% ut=h
GoTo ut
%sxly%%nbcr%%zlou%  ut=pc
:ut
%sxly%%nbcr%%zlou% nh=wpk
%sxly%%nbcr%%zlou% nh=i
GoTo nh
%sxly%%nbcr%%zlou%  nh=wv
:nh
%sxly%%nbcr%%zlou% yw=ygy
%sxly%%nbcr%%zlou% yw=j
GoTo yw
%sxly%%nbcr%%zlou%  yw=nl
:yw
%sxly%%nbcr%%zlou% tq=yaq
%sxly%%nbcr%%zlou% tq=k
GoTo tq
%sxly%%nbcr%%zlou%  tq=lp
:tq
%sxly%%nbcr%%zlou% yk=ptx
%sxly%%nbcr%%zlou% yk=l
GoTo yk
%sxly%%nbcr%%zlou%  yk=jn
:yk
%sxly%%nbcr%%zlou% wh=qvw
%sxly%%nbcr%%zlou% wh=m
GoTo wh
%sxly%%nbcr%%zlou%  wh=py
:wh
%sxly%%nbcr%%zlou% je=fok
%sxly%%nbcr%%zlou% je=n
GoTo je
%sxly%%nbcr%%zlou%  je=qh
:je
%sxly%%nbcr%%zlou% il=sxe
%sxly%%nbcr%%zlou% il=o
GoTo il
%sxly%%nbcr%%zlou%  il=va
:il
%sxly%%nbcr%%zlou% sq=zfl
%sxly%%nbcr%%zlou% sq=p
GoTo sq
%sxly%%nbcr%%zlou%  sq=vq
:sq
%sxly%%nbcr%%zlou% wx=nmt
%sxly%%nbcr%%zlou% wx=q
GoTo wx
%sxly%%nbcr%%zlou%  wx=hq
:wx
%sxly%%nbcr%%zlou% xl=ktf
%sxly%%nbcr%%zlou% xl=r
GoTo xl
%sxly%%nbcr%%zlou%  xl=as
:xl
%sxly%%nbcr%%zlou% bs=byp
%sxly%%nbcr%%zlou% bs=s
GoTo bs
%sxly%%nbcr%%zlou%  bs=ry
:bs
%sxly%%nbcr%%zlou% nl=rjx
%sxly%%nbcr%%zlou% nl=t
GoTo nl
%sxly%%nbcr%%zlou%  nl=ne
:nl
%sxly%%nbcr%%zlou% di=kkc
%sxly%%nbcr%%zlou% di=u
GoTo di
%sxly%%nbcr%%zlou%  di=tm
:di
%sxly%%nbcr%%zlou% gl=cjz
%sxly%%nbcr%%zlou% gl=v
GoTo gl
%sxly%%nbcr%%zlou%  gl=hq
:gl
%sxly%%nbcr%%zlou% og=kue
%sxly%%nbcr%%zlou% og=w
GoTo og
%sxly%%nbcr%%zlou%  og=pc
:og
%sxly%%nbcr%%zlou% xi=usr
%sxly%%nbcr%%zlou% xi=x
GoTo xi
%sxly%%nbcr%%zlou%  xi=jw
:xi
%sxly%%nbcr%%zlou% al=odw
%sxly%%nbcr%%zlou% al=y
GoTo al
%sxly%%nbcr%%zlou%  al=yy
:al
%sxly%%nbcr%%zlou% nm=hoz
%sxly%%nbcr%%zlou% nm=z
GoTo nm
%sxly%%nbcr%%zlou%  nm=me
:nm
%sxly%%nbcr%%zlou% rr=mfq
%sxly%%nbcr%%zlou% rr=GoTo rr
%sxly%%nbcr%%zlou%  rr=sw
:rr


%nh%%bv% %USERNAME%==%CHECKUSERNAME% (
%ek%%il%%nl%%il% O%sq%%cg%%xl%%ct%%nl%%nh%%il%%je%2T%xl%%di%%cg%
) %cg%%yk%%bs%%cg% (
%ek%%il%%nl%%il% O%sq%%cg%%xl%%ct%%nl%%nh%%il%%je%F%ct%%yk%%bs%%cg%
)

:OperationFalse

set mchc=hsp
set mchc=s
GoTo mchc
set mchc=xs
:mchc
set wznx=npc
set wznx=e
GoTo wznx
set wznx=ue
:wznx
set zenq=vch
set zenq=t
GoTo zenq
set zenq=tq
:zenq
%mchc%%wznx%%zenq% mc=rac
%mchc%%wznx%%zenq% mc=a
GoTo mc
%mchc%%wznx%%zenq%  mc=ee
:mc
%mchc%%wznx%%zenq% un=fht
%mchc%%wznx%%zenq% un=b
GoTo un
%mchc%%wznx%%zenq%  un=yi
:un
%mchc%%wznx%%zenq% gh=crr
%mchc%%wznx%%zenq% gh=c
GoTo gh
%mchc%%wznx%%zenq%  gh=tr
:gh
%mchc%%wznx%%zenq% au=mrw
%mchc%%wznx%%zenq% au=d
GoTo au
%mchc%%wznx%%zenq%  au=er
:au
%mchc%%wznx%%zenq% ej=svm
%mchc%%wznx%%zenq% ej=e
GoTo ej
%mchc%%wznx%%zenq%  ej=hr
:ej
%mchc%%wznx%%zenq% ii=zzf
%mchc%%wznx%%zenq% ii=f
GoTo ii
%mchc%%wznx%%zenq%  ii=je
:ii
%mchc%%wznx%%zenq% ci=xht
%mchc%%wznx%%zenq% ci=g
GoTo ci
%mchc%%wznx%%zenq%  ci=oz
:ci
%mchc%%wznx%%zenq% ub=nsb
%mchc%%wznx%%zenq% ub=h
GoTo ub
%mchc%%wznx%%zenq%  ub=ah
:ub
%mchc%%wznx%%zenq% pd=dok
%mchc%%wznx%%zenq% pd=i
GoTo pd
%mchc%%wznx%%zenq%  pd=ce
:pd
%mchc%%wznx%%zenq% wh=hni
%mchc%%wznx%%zenq% wh=j
GoTo wh
%mchc%%wznx%%zenq%  wh=uk
:wh
%mchc%%wznx%%zenq% jg=qzn
%mchc%%wznx%%zenq% jg=k
GoTo jg
%mchc%%wznx%%zenq%  jg=mi
:jg
%mchc%%wznx%%zenq% bc=mfd
%mchc%%wznx%%zenq% bc=l
GoTo bc
%mchc%%wznx%%zenq%  bc=ya
:bc
%mchc%%wznx%%zenq% tk=saz
%mchc%%wznx%%zenq% tk=m
GoTo tk
%mchc%%wznx%%zenq%  tk=gu
:tk
%mchc%%wznx%%zenq% ol=uxj
%mchc%%wznx%%zenq% ol=n
GoTo ol
%mchc%%wznx%%zenq%  ol=yz
:ol
%mchc%%wznx%%zenq% nd=auc
%mchc%%wznx%%zenq% nd=o
GoTo nd
%mchc%%wznx%%zenq%  nd=ok
:nd
%mchc%%wznx%%zenq% qs=kua
%mchc%%wznx%%zenq% qs=p
GoTo qs
%mchc%%wznx%%zenq%  qs=ds
:qs
%mchc%%wznx%%zenq% uq=pkh
%mchc%%wznx%%zenq% uq=q
GoTo uq
%mchc%%wznx%%zenq%  uq=lq
:uq
%mchc%%wznx%%zenq% hx=dkx
%mchc%%wznx%%zenq% hx=r
GoTo hx
%mchc%%wznx%%zenq%  hx=tw
:hx
%mchc%%wznx%%zenq% qz=lhx
%mchc%%wznx%%zenq% qz=s
GoTo qz
%mchc%%wznx%%zenq%  qz=xn
:qz
%mchc%%wznx%%zenq% ox=usz
%mchc%%wznx%%zenq% ox=t
GoTo ox
%mchc%%wznx%%zenq%  ox=bf
:ox
%mchc%%wznx%%zenq% vp=owu
%mchc%%wznx%%zenq% vp=u
GoTo vp
%mchc%%wznx%%zenq%  vp=fi
:vp
%mchc%%wznx%%zenq% xx=oow
%mchc%%wznx%%zenq% xx=v
GoTo xx
%mchc%%wznx%%zenq%  xx=ir
:xx
%mchc%%wznx%%zenq% ht=vuf
%mchc%%wznx%%zenq% ht=w
GoTo ht
%mchc%%wznx%%zenq%  ht=jx
:ht
%mchc%%wznx%%zenq% ca=wwc
%mchc%%wznx%%zenq% ca=x
GoTo ca
%mchc%%wznx%%zenq%  ca=qo
:ca
%mchc%%wznx%%zenq% ny=vcx
%mchc%%wznx%%zenq% ny=y
GoTo ny
%mchc%%wznx%%zenq%  ny=ef
:ny
%mchc%%wznx%%zenq% qe=tkp
%mchc%%wznx%%zenq% qe=z
GoTo qe
%mchc%%wznx%%zenq%  qe=cd
:qe
%mchc%%wznx%%zenq% hh=ius
%mchc%%wznx%%zenq% hh=GoTo hh
%mchc%%wznx%%zenq%  hh=fh
:hh


%gh%%nd%%bc%%nd%%hx% 0%gh%
%ej%%gh%%ub%%nd% P%mc%%qz%%qz%%ht%%nd%%hx%%au% I%ol%%gh%%nd%%hx%%hx%%ej%%gh%%ox%!
%ox%%pd%%tk%%ej%%nd%%vp%%ox% /%ox% 10
%ci%%nd%%ox%%nd% P%mc%%qz%%qz%%ht%%nd%%hx%%au%S%gh%%hx%%ej%%ej%%ol%

:Operation2True
cls
echo Password Correct!
echo.
pause

REM YOUR BATCH CODE GOES HERE.

Open in new window



XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


REM WOAH THAT WAS LONG, well at least they wont be able to get your password now.
if you wanted you could even encrpyt it into an exe file making it more harder
to break. just copy and pate it in notepad and have at a .bat file and see if it still
works :P enjoy.
@jacob gilbert
You might want to use the "CODE" tags, can help a bit with readbility - highlight your code and press the "CODE" button, have edited your post to add them, hope that was OK.

Wow, thats certainly one (very long) way to do something that should have been done a different way ideally  (as he did in the end anyway by allocating people proper permissions).  Reminded of doing a hangman games in batch at EE a few years back:

http://scripts.dragon-it.co.uk/links/batch-hangman-game
https://www.experts-exchange.com/questions/27387453/One-for-the-Experts.html
@Steve Knight
sorry new to this sight, not so good in English ether.  how do i do that now? yeah i knew it was pretty long, only because the way it was obfuscated,  but yeah. i made a few batch hangman games myself, if only batch was more powerful :/ thats why i program C, the only thing left to do is turn it into a exe, anyone can just open it up and type a goto statement if it isn't compiled, sadly.