Obfuscation presets available in VBScript and ASP Obfuscator GUI

Quick navigation:


Available presets for code mangling:

Original code (before protection):
dim  errorLevel
errorLevel  =  4  '  error  level  to  show  alerts  for
sub  log_error(whereStr,msg)
        call  log_common(3,"error:"  &  whereStr,msg)    'call  common  function
end  sub
sub  log_common(lvl,whereStr,msg)
        Dim  buf
        buf    =  "<div  class=logitem>"  &  Date  &    whereStr  &        msg  &  "</div>"
        if  lvl  >=  error_level  then
                alert(buf)
        end  if
        alert(buf)
end  sub
This is a trivial VBScript code with 1 global var, 2 subs that refer to it and have local variables or parameters of the same name.

 

Mode testing - recommended for stage 1:
dim  ReplacementFor_errorlevel
ReplacementFor_errorlevel  =  4 
sub  ReplacementFor_log_error(ReplacementFor_wherestr,ReplacementFor_msg)
        call  ReplacementFor_log_common(3,"error:"  &  ReplacementFor_wherestr,ReplacementFor_msg)   
end  sub
sub  ReplacementFor_log_common(ReplacementFor_lvl,ReplacementFor_wherestr,ReplacementFor_msg)
        Dim  ReplacementFor_buf
        ReplacementFor_buf    =  "<div  class=logitem>"  &  Date  &    ReplacementFor_wherestr  &        ReplacementFor_msg  &  "</div>"
        if  ReplacementFor_lvl  >=  ReplacementFor_error_level    then
                alert(ReplacementFor_buf)
        end  if
        alert(ReplacementFor_buf)
end  sub

Whitespaces are not jammed, so line numbers should be same as in original code. Symbols that will be renamed get ReplacementFor_ prefix. Best mode for preparation your code for protection and testing protected output.
    Details

This preset is ideal for preparing your code for protection and testing protected code:
  • Line numbers in protected code should match ones in original code;
  • Whitespaces are not jammed in code;
  • Comments are replaced with same number of newlines;
  • encoding, integer and string mangling are turned off;
  • symbols that will be replaced with unreadable names in production mode will get prefix "ReplacementFor_" when using this mode.

WHEN TO USE: This preset is for stage when you just prepare your code for protection, mostly when you collect names of symbols that can't be changed. Using this preset allows to receive informative error messages from compilers/interpreters your code is written for.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode testing - recommended for stage 2 (same as stage 1 + whitespace jamming enabled):
dim  ReplacementFor_errorlevel
  ReplacementFor_errorlevel=4
  sub  ReplacementFor_log_error(ReplacementFor_wherestr,ReplacementFor_msg)
call  ReplacementFor_log_common(3,"error:"  &ReplacementFor_wherestr,ReplacementFor_msg)
end  sub
  sub  ReplacementFor_log_common(ReplacementFor_lvl,ReplacementFor_wherestr,ReplacementFor_msg)
Dim  ReplacementFor_buf
  ReplacementFor_buf="<div  class=logitem>"  &Date  &ReplacementFor_wherestr  &ReplacementFor_msg  &"</div>"
  if  ReplacementFor_lvl>=ReplacementFor_error_level  then
  alert(ReplacementFor_buf)
end  if
  alert(ReplacementFor_buf)
end  sub

Whitespaces are jammed. Symbols that will be renamed get ReplacementFor_ prefix. Prepare your code for protection using this mode too after testing it protected with previous mode to check whether removal of line breaks will affect your code (it should not!! but it would be easier to detect the problem caused by newline removal using this preset rather than production presets).
    Details

These presets are optimized for preparing your code for protection:
  • Whitespaces are jammed in the code;
  • Comments are removed;
  • encoding, integer and string mangling are turned off so you get informative error messages from compilers/interpreters;
  • symbols that will be replaced with unreadable names in production mode will get prefix "ReplacementFor_" when using this mode.
WHEN TO USE: This preset is for stage when you've finished preparing your code for protection and wish to try it protected with jamming enabled. Jamming spaces and removal of comments is unlikely to create issues, but it's better to test how jammed code works by trying this preset first. If your code works with this preset, it's safe to use any of production presets here.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode lite protection - protect everything but leave symbol names as is:
dim  errorlevel
  errorlevel=(&h15b+8871-&H23fe)
  sub  log_error(wherestr,msg)
call  log_common((&h97c+6552-&H2311),"error:"  &wherestr,msg)
end  sub
  sub  log_common(lvl,wherestr,msg)
Dim  buf
  buf="<div  class=logitem>"  &Date  &wherestr  &msg  &"</div>"
  if  lvl>=error_level  then
  alert(buf)
end  if
  alert(buf)
end  sub

No symbol names are changed. Comments are removed, whitespace is jammed. String and integer constants are obfuscated.This can be used when you don't have time to test your code afer obfuscation at all; the code after obfuscation should work exactly as before obfuscation.
    Details

When this preset is selected, all obfuscation stages except renaming of symbols are performed:
  • comments are removed
  • whitespaces are jammed
  • strings and integers are mangled
WHEN TO USE: When this preset is selected, symbol names are not changed. This means there is no need to compose list of exceptions (names of symbols that can't be changed) and test whether code works afterwards. Since gathering exceptions is most time-consuming part, use of this mode allows to get some protection very quickly. Output should work exactly the same as original code, so extensive testing of protected code is not required.
PLEASE NOTE When this mode is selected, it's still possible to use asserters for licensing conditions (expiration, binding to domain name and user-implemented asserters).
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode lite protection - just remove comments, do not change anything else:
dim  errorlevel
errorlevel  =  4 
sub  log_error(wherestr,msg)
        call  log_common(3,"error:"  &  wherestr,msg)   
end  sub
sub  log_common(lvl,wherestr,msg)
        Dim  buf
        buf    =  "<div  class=logitem>"  &  Date  &    wherestr  &        msg  &  "</div>"
        if  lvl  >=  error_level    then
                alert(buf)
        end  if
        alert(buf)
end  sub

Only comments are removed, nothing else is changed.
    Details

When this preset is applied, only comments are removed. No obfuscation and no whitespace jamming is performed.
WHEN TO USE: This is useful if you wish to just remove comments (and possibly encode file afterwards) without spending any time and effort for preparing your project for obfuscation (i.e. collecting symbol names that can't be changed)
PLEASE NOTE It's impossible to use licensing conditions asserters when using this preset.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode lite protection - do not parse source at all and do not change it:
dim  errorLevel
errorLevel  =  4  '  error  level  to  show  alerts  for
sub  log_error(whereStr,msg)
        call  log_common(3,"error:"  &  whereStr,msg)    'call  common  function
end  sub
sub  log_common(lvl,whereStr,msg)
        Dim  buf
        buf    =  "<div  class=logitem>"  &  Date  &    whereStr  &        msg  &  "</div>"
        if  lvl  >=  error_level  then
                alert(buf)
        end  if
        alert(buf)
end  sub

Code is same as original (i.e. it's not changed). This mode is useful if you plan to apply encoding to the code - as a result, your code won't be readable and you won't have to test it. We don't recommend you to use this mode anyway, even if you enable encoding for the code.
    Details

No parsing and no transformation are performed (i.e. no jamming, no comment removal, no symbol renaming, no string and number obfuscation).

Asserters (binding to domain name, expiration and user-implemented licensing conditions validation) offer only weak protection when this mode is selected.

WHEN TO USE:This mode is useful only if you wish to just encode your files. This will "hide" your code, but protection won't be irreversable. Apply this mode if you don't have time to prepare code for obfuscation.
It's greatly advicable to use 'jam and obfuscate everything, but do not change symbol names' preset instead of this preset - it also won't require any time for preparing for obfuscation, but at it will remove comments, jam spaces and will obfuscate strings and numbers.

It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode production - md5 engine for all symbols:
dim  z3cbda2ccd8
  z3cbda2ccd8=(&h1909+1253-&H1dea)
  sub  z9fe5826ce8(z6730620206,zea4cd01646)
call  za56048cb23((&hb32+324-&Hc73),"error:"  &z6730620206,zea4cd01646)
end  sub
  sub  za56048cb23(z0799d4fdb1,z6730620206,zea4cd01646)
Dim  z1f7dba04b5
  z1f7dba04b5="<div  class=logitem>"  &Date  &z6730620206  &zea4cd01646  &"</div>"
  if  z0799d4fdb1>=zfafb4b3d80  then
  alert(z1f7dba04b5)
end  if
  alert(z1f7dba04b5)
end  sub

Production mode with md5 mangler for all symbols. Comments are removed, whitespace is jammed, strings and integers are mangled too.
    Details

This is a default preset for production.
  • All symbols are replaced with their md5 hash (with some seed) if using non-trial version (in trial version, all symbols will be just prefixed with a string "ReplacementFor_")
  • encoding is enabled (if encoding-related preset permits encoding)
  • integer and string mangling is on
  • comments are removed.
  • whitespaces are jammed everywhere.
PLEASE NOTE: In trial edition all symbols will be just prefixed with a string "ReplacementFor_" !! Once you purchase a product from the store, real symbol obfuscation will be performed without need to edit or test your project.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode production - replace symbols with "lI":
dim  llIIl
  llIIl=(&h1805+1608-&H1e49)
  sub  IIIll(Illll,lIlll)
call  lIlIl((&h227+5298-&H16d6),"error:"  &Illll,lIlll)
end  sub
  sub  lIlIl(IIlIl,Illll,lIlll)
Dim  llIll
  llIll="<div  class=logitem>"  &Date  &Illll  &lIlll  &"</div>"
  if  IIlIl>=IIIIl  then
  alert(llIll)
end  if
  alert(llIll)
end  sub

Production mode with mangler that turns all symbols into names like IIlIllI. Comments are removed, whitespace is jammed, strings and integers are mangled too.
    Details

  • All symbols are replaced with combinations of 'I' and 'l' (e.g. "lIIIl") if using non-trial version (with trial version, all symbols will be just prefixed with a string "ReplacementFor_")
  • encoding is enabled (if encoding-related preset permits encoding)
  • integer and string mangling is on
  • comments are removed.
  • whitespaces are jammed everywhere.
PLEASE NOTE: In trial edition all symbols will be just prefixed with a string "ReplacementFor_" !! Once you purchase a product from the store, real symbol obfuscation will be performed without need to edit or test your project.
It's not recommended to change ANY setting in this mode except settings in section "Obfuscation engines' options"!

Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE'.

Mode production - minimize size of output:
dim  w
  w=4
  sub  o(c,e)
call  v(3,"error:"  &c,e)
end  sub
  sub  v(i,c,e)
Dim  m
  m="<div  class=logitem>"  &Date  &c  &e  &"</div>"
  if  i>=j  then
  alert(m)
end  if
  alert(m)
end  sub

All symbols get shortest name possible (though without considering their scope). Comments are removed, whitespace is jammed, integer and string constants are left as is.
    Details

When this mode is applied, the output will have minimal size:
  • all symbols are given shortest name possible if using non-trial version (with trial version, all symbols will be just prefixed with a string "ReplacementFor_")
  • encoding is disabled
  • integer and string mangling is NOT performed
  • comments are removed
  • whitespaces are jammed
PLEASE NOTE: In trial edition all symbols will be just prefixed with a string "ReplacementFor_" !! Once you purchase a product from the store, real symbol obfuscation will be performed without need to edit or test your project again.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode production - replace symbols with permutations of characters:
dim  mt7cc
  mt7cc=(&h48f+109-&H4f8)
  sub  pxaru(vhp6c,s2sl6)
call  tusib((&h738+2021-&Hf1a),"error:"  &vhp6c,s2sl6)
end  sub
  sub  tusib(wz3dw,vhp6c,s2sl6)
Dim  gpk42
  gpk42="<div  class=logitem>"  &Date  &vhp6c  &s2sl6  &"</div>"
  if  wz3dw>=jsyjg  then
  alert(gpk42)
end  if
  alert(gpk42)
end  sub

Production mode with "combs" mangler for all symbols (turning each symbol into combination of characters). Comments are removed, whitespace is jammed, strings and integers are mangled too.
    Details

When this mode is applied, the output all symbols will become random permuations of all characters possible for identifier (looking more random compared to default md5 engine). No disadvantages compared to preset that uses md5!
  • all symbols are given names consisting random set of characters, not only characters that can be used in hex digit if using non-trial version (in trial version, all symbols will be just prefixed with a string "ReplacementFor_")
  • encoding is disabled
  • integer and string mangling is NOT performed
  • comments are removed
  • whitespace is jammed
PLEASE NOTE: In trial edition all symbols will be just prefixed with a string "ReplacementFor_" !! Once you purchase a product from the store, real symbol obfuscation will be performed without need to edit your project.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...

Available presets for encoding of code:

Original code (before protection):
Raw code sample
Dim  blah
blah  =12
sub  fn1(arg1) 
  blah  =    blah  *  arg1
end  sub

Code inside markup
<html>
<script  language=vbscript>
<!--
Dim  blah
blah  =12
sub  fn1(arg1) 
  blah  =    blah  *  arg1
end  sub
-->
</script>
no comment

 

Mode no encoding:
Raw code sample
Dim  z193a2e9280
  z193a2e9280=(&h75f+3536-&H1523)
  sub  zfed78b91fd(z833aebdda5)
z193a2e9280=z193a2e9280*z833aebdda5
  end  sub


Code inside markup
<html>  <script  language=vbscript><!--
Dim  z193a2e9280
  z193a2e9280=(&hd80+5813-&H2429)
  sub  zfed78b91fd(z833aebdda5)
z193a2e9280=z193a2e9280*z833aebdda5
  end  sub
 
--></script> 
No encoding at all.
    Details

This mode turns off encoding for files of all kinds.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode encode only raw code:
Raw code sample
execute("dIm  xierio"):xierio  =  unescape("execute%28%22dIm  xdlDZd%22%29%3axdlDZd  %3d  unescape%28%22D%252569%25256d%252520%25257A1%2525393%252561%252532e%252539%252532%2525380%25250A%252520%25257a%2525319%252533a%252532e%2525392%252538%252530%25253D%252528%252526h%2525318%252534%252b%252534%2525343%252531%25252d%252526H%2525312%2525637%252529%25250A%252520%252573u%252562%252520%25257Af%252565d%252537%252538b%252539%252531%252566%252564%252528%25257A%252538%2525333%252561e%252562%252564d%2525615%252529%25250Az%252531%2525393%252561%252532e%252539%252532%2525380%25253D%25257a%252531%252539%252533a%252532%252565%252539%252532%2525380%25252Az%252538%252533%252533a%252565%252562d%252564a%252535%25250A%252520%252565%25256ed%252520%252573u%252562%25250a%25250a%22%29%3a%3a  xdlDZd  %3d  ST990d62110f%28xdlDZd%29%3a  ExEcuTeGLobAL%28xdlDZd%29%3a  xdlDZd  %3d  Empty%3a  "):function  STd62744bc73(ST7ef49b8f9c):dim  ST11b1d52719,ST3c8fbb0340,STb74fb1bf38:ST11b1d52719=1:do:ST3c8fbb0340=instr(ST11b1d52719,ST7ef49b8f9c,"^"):if  ST3c8fbb0340=(&h5de+2455-&Hf75)  then:STb74fb1bf38=STb74fb1bf38&mid(ST7ef49b8f9c,ST11b1d52719):exit  do:else:STb74fb1bf38=STb74fb1bf38&mid(ST7ef49b8f9c,ST11b1d52719,ST3c8fbb0340-ST11b1d52719-(&h1e60+908-&H21eb)):dim  STbf3f594eb5:STbf3f594eb5=instr(ST3c8fbb0340+1,ST7ef49b8f9c,"^"):dim  ST3172b459c8:ST3172b459c8=mid(ST7ef49b8f9c,ST3c8fbb0340+1,STbf3f594eb5-ST3c8fbb0340-1):ST11b1d52719=STbf3f594eb5+(&h86+2787-&Hb68):STb74fb1bf38=STb74fb1bf38&string(cInt(ST3172b459c8),""""):end  if:loop:STd62744bc73=STb74fb1bf38:end  function::function  ST990d62110f(ST7ef49b8f9c):ST990d62110f=unescape(ST7ef49b8f9c):end  function::xierio  =  STd62744bc73(xierio):ExEcUteGlObAL(xierio):

Code inside markup
<html>  <script  language=vbscript><!--
Dim  z193a2e9280
  z193a2e9280=(&h2053+1059-&H246a)
  sub  zfed78b91fd(z833aebdda5)
z193a2e9280=z193a2e9280*z833aebdda5
  end  sub
 
--></script> 
Encoding is enabled in files with raw code. Pieces of code inside files with html markup are not encoded.
    Details

This preset turns on encoding for raw VBS code (in files with vbs extension and the like), VBS code embedded into .html/.php/.asp/.aspx files and the like won't be encoded.

PLEASE NOTE: When "testing" or "production: minimize size" code mangling is selected using Settings ⇒ Select preset for code mangling.., encoding is effectively disabled.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode encode ALL code:
Raw code sample
execute("dIm  xbGjnS"):xbGjnS  =  unescape("execute%28%22dIm  xnYYbP%22%29%3axnYYbP  %3d  unescape%28%22D%252569%25256D%252520%25257A1%2525393%2525612%2525659%252532%252538%252530%25250a%252520z%2525319%252533a%252532%2525659%252532%2525380%25253D%252528%252526%2525681%252534%2525631%25252B%2525344%252537%252531%25252D%252526%252548%252532%252536%252532%252563%252529%25250a%252520%252573%252575b%252520z%252566%252565%2525647%252538b%252539%252531f%252564%252528z%2525383%252533a%252565%252562d%252564%252561%252535%252529%25250a%25257A%2525319%252533%2525612%252565%2525392%252538%252530%25253D%25257A1%2525393%252561%252532e%252539%252532%252538%252530%252a%25257A%252538%2525333%252561e%252562%252564d%2525615%25250A%252520e%25256Ed%252520%252573u%252562%25250a%25250A%22%29%3a%3a  xnYYbP  %3d  ST990d62110f%28xnYYbP%29%3a  ExEcuTeGLobAL%28xnYYbP%29%3a  xnYYbP  %3d  Empty%3a  "):function  STd62744bc73(ST7ef49b8f9c):dim  ST11b1d52719,ST3c8fbb0340,STb74fb1bf38:ST11b1d52719=1:do:ST3c8fbb0340=instr(ST11b1d52719,ST7ef49b8f9c,"^"):if  ST3c8fbb0340=(&h5de+2455-&Hf75)  then:STb74fb1bf38=STb74fb1bf38&mid(ST7ef49b8f9c,ST11b1d52719):exit  do:else:STb74fb1bf38=STb74fb1bf38&mid(ST7ef49b8f9c,ST11b1d52719,ST3c8fbb0340-ST11b1d52719-(&h1e60+908-&H21eb)):dim  STbf3f594eb5:STbf3f594eb5=instr(ST3c8fbb0340+1,ST7ef49b8f9c,"^"):dim  ST3172b459c8:ST3172b459c8=mid(ST7ef49b8f9c,ST3c8fbb0340+1,STbf3f594eb5-ST3c8fbb0340-1):ST11b1d52719=STbf3f594eb5+(&h86+2787-&Hb68):STb74fb1bf38=STb74fb1bf38&string(cInt(ST3172b459c8),""""):end  if:loop:STd62744bc73=STb74fb1bf38:end  function::function  ST990d62110f(ST7ef49b8f9c):ST990d62110f=unescape(ST7ef49b8f9c):end  function::xbGjnS  =  STd62744bc73(xbGjnS):ExEcUteGlObAL(xbGjnS):

Code inside markup
<html>  <script  language=vbscript><!--
execute("dIm  xpWeYM"):xpWeYM  =  unescape("execute%28%22dIm  xIYByw%22%29%3axIYByw  %3d  unescape%28%22cape%2528%2522%2525252537%252525252B%2525252534%25252525302%2525252536%252525252D%2525252526H%2525252531%2525252539%25252525635%2525252529%252525250A%2525252520%2525252573u%2525252562%2525252520z%2525252566%2525252565d%2525252537%2525252538b%2525252539%2525252531f%2525252564%2525252528%252525257a%25252525383%2525252533a%2525252565%2525252562%2525252564%2525252564a%2525252535%2525252529%252525250Az%25252525319%2525252533a%2525252532e%2525252539%25252525328%2525252530%252525253dz%25252525319%2525252533%25252525612%2525252565%25252525392%25252525380%252525252az%2525252538%25252525333%2525252561%2525252565b%2525252564%2525252564%25252execute%2528%2522dIm  xfhhOk%2522%2529%253axfhhOk  %253d  unes525615%252525250A%2525252520%2525252565n%2525252564%2525252520s%2525252575b%252525250a%2525252520%252522%252529%25253a%25253a  xywilU  %25253d  ST990d62110f%252528xywilU%252529%25253a  ExEcuTeGLobAL%252528xywilU%252529%25253a  xywilU  %25253d  Empty%25253a  execute%252528%252522dIm  xywilU%252522%252529%25253axywilU  %25253d  unescape%252528%252522%252525250A%2525252544%2525252569%252525256D%2525252520z%25252525319%2525252533a%2525252532%2525252565%25252525392%25252525380%252525250A%2525252520z%25252525319%2525252533a%2525252532e%2525252539%25252525328%2525252530%252525253d%2525252528%2525252526h%25252525611%2522%2529%253axfhhOk  %253d  mID%2528xfhhOk%252c419%252c168%2529%2526mID%2528xfhhOk%252c1%252c387%2529%2526mID%2528xfhhOk%252c388%252c31%2529%253a  xfhhOk  %253d  ExEcUteGlObAL%2528xfhhOk%2529%253a%253a  %22%29%3axIYByw  %3d  mID%28xIYByw%2c411%2c35%29%26mID%28xIYByw%2c1%2c227%29%26mID%28xIYByw%2c228%2c183%29%26mID%28xIYByw%2c446%2c499%29%3a  xIYByw  %3d  ExEcUteGlObAL%28xIYByw%29%3a%3a  "):function  STd62744bc73(ST7ef49b8f9c):dim  ST11b1d52719,ST3c8fbb0340,STb74fb1bf38:ST11b1d52719=1:do:ST3c8fbb0340=instr(ST11b1d52719,ST7ef49b8f9c,"^"):if  ST3c8fbb0340=(&h5de+2455-&Hf75)  then:STb74fb1bf38=STb74fb1bf38&mid(ST7ef49b8f9c,ST11b1d52719):exit  do:else:STb74fb1bf38=STb74fb1bf38&mid(ST7ef49b8f9c,ST11b1d52719,ST3c8fbb0340-ST11b1d52719-(&h1e60+908-&H21eb)):dim  STbf3f594eb5:STbf3f594eb5=instr(ST3c8fbb0340+1,ST7ef49b8f9c,"^"):dim  ST3172b459c8:ST3172b459c8=mid(ST7ef49b8f9c,ST3c8fbb0340+1,STbf3f594eb5-ST3c8fbb0340-1):ST11b1d52719=STbf3f594eb5+(&h86+2787-&Hb68):STb74fb1bf38=STb74fb1bf38&string(cInt(ST3172b459c8),""""):end  if:loop:STd62744bc73=STb74fb1bf38:end  function::function  ST990d62110f(ST7ef49b8f9c):ST990d62110f=unescape(ST7ef49b8f9c):end  function::xpWeYM  =  STd62744bc73(xpWeYM):ExEcUteGlObAL(xpWeYM)
--></script> 
Encoding is enabled in files with raw code.
    Details

This preset turns on encoding for raw VBS code (in files with vbs extension and the like) and for VBS code embedded into .html/.php/.asp/.aspx files - i.e. VBS code will be encoded everywhere.

PLEASE NOTE: When "debugging" or "minimize size" code mangling is selected using Settings ⇒ Select preset for code mangling.., encoding is effectively disabled.
It's not recommended to change ANY setting in this mode!
Apply all your common settings like name of file with headers and footers to add, etc to the mode with title 'BASE' and in preset selected using Settings ⇒ Select preset for code mangling...
Mode default encoding options:
Most recommended options for encoding.
    Details


Available presets for mangling html markup around code:

Original code (before protection):
<html>
        <body  bgsound=wow.wav  background=red>
                <h1  class=BigTitle>Doc  Title</h1>
                        some  text


                                                here  and            <b>here</b>
                        <!--  here  is  a  comment  a  several  newlines  after  it-->


                                        again  text
        </body>
</html>
no comment

 

Mode no protection: do not make any changes to html markup:
<html>
        <body  bgsound=wow.wav  background=red>
                <h1  class=BigTitle>Doc  Title</h1>
                        some  text


                                                here  and            <b>here</b>
                        <!--  here  is  a  comment  a  several  newlines  after  it-->


                                        again  text
        </body>
</html>
Markup is not changed at all, comments are preserved too.
    Details

This doesn't change html markup at all, and it doesn't remove html comments (but scripts are still protected):
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
WHEN TO USE: Use this preset when preparing your project for protection and when testing it.
Mode very lite protection: only remove html comments:
<html>
        <body  bgsound=wow.wav  background=red>
                <h1  class=BigTitle>Doc  Title</h1>
                        some  text


                                                here  and            <b>here</b>
                       


                                        again  text
        </body>
</html>
Markup is not changed at all, html comments are stripped.
    Details

This preset only removes html comments:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
Mode lite protection: only jam whitespaces between tags:
<html>  <body  bgsound="wow.wav"  background="red">  <h1  class="BigTitle">Doc  Title</h1>  some  text  here  and  <b>here</b>  <!--  here  is  a  comment  a  several  newlines  after  it-->  again  text  </body>  </html>
Spaces and newlines that are safe to remove are removed. Comments are preserved.
    Details

This preset provides lite protection for html markup around code:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
Mode medium protection: jam whitespaces between tags, strip html comments:
<html>  <body  bgsound="wow.wav"  background="red">  <h1  class="BigTitle">Doc  Title</h1>  some  text  here  and  <b>here</b>    again  text  </body>  </html>
Spaces and newlines that are safe to remove are removed. Comments are stripped off.
    Details

This preset provides medium to lite protection for html markup around code:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
Mode strong protection: jam spaces, strip comments, convert text to entites:
<html>  &#x20;&#x20;  <body  bgsound="wow.wav"  background="red">  <h1  class="BigTitle">&#x44;&#x6f;c  T&#x69;&#x74;le</h1>  &#x09;&#x20;&#x20;&#x20;  &#x73;ome&#x20;&#x74;&#x65;xt  &#x09;&#x09;he&#x72;&#x65;  &#x61;nd&#x20;&#x20;&#x20;&#x20;&#x20;&#x20;<b>h&#x65;&#x72;&#x65;</b>  &#x09;&#x20;&#x20;&#x20;&#x20;  &#x09;  &#x20;  ag&#x61;&#x69;&#x6e;  tex&#x74;  &#x20;&#x20;  </body>  </html>
Spaces and newlines that are safe to remove are removed. Comments are stripped off. Most of of the characters between elements are converted into entities; values of attributes are not converted to entities; names of attributes and elements are left as is. Output may become larger than input.
    Details

This preset provides strong protection for html markup around code:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
the text
becomes (note excess of whitespace was removed):
the text
Mode almost strongest protection: do all but except converting text to entities:
<hTmL>  <bodY  bgSOuNd="&#x77;ow&#x2e;wav"  bAckGround="&#x72;&#x65;&#x64;">  <H1  CLaSS="B&#x69;&#x67;Titl&#x65;">Doc  Title</h1>  some  text  here  and  <b>here</b>    again  text  </BOdY>  </hTML>
Spaces and newlines that are safe to remove are removed. Comments are stripped off. Values of attributes are converted to entities; names of attributes and elements are mangled (converted to random case). Text between elements is left as is.
    Details

This preset provides almost strongest protection for html markup around code:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
the text
becomes (note excess of whitespace was removed):
the text
Mode almost strongest protection: do all but do not change case of tag and attribute names:
<html>  &#x20;  &#x20;<body  bgsound="wo&#x77;&#x2e;&#x77;&#x61;v"  background="&#x72;e&#x64;">  <h1  class="&#x42;&#x69;g&#x54;i&#x74;&#x6c;&#x65;">D&#x6f;&#x63;&#x20;Titl&#x65;</h1>  &#x09;&#x20;&#x20;&#x20;&#x20;s&#x6f;me  t&#x65;x&#x74;  &#x09;  &#x09;&#x68;&#x65;&#x72;e  &#x61;&#x6e;d&#x20;&#x20;&#x20;&#x20;  <b>&#x68;&#x65;r&#x65;</b>  &#x09;  &#x20;  &#x20;  &#x20;  &#x61;gain&#x20;text  &#x20;&#x20;&#x20;</body>  </html>
Spaces and newlines that are safe to remove are removed. Comments are stripped off. Most of of the characters between elements are converted into entities; values of attributes are converted to entities; names of attributes and elements are left as is. Output may become larger than input.
    Details

This preset provides almost strongest protection for html markup around code:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
the text
becomes (note excess of whitespace was removed):
the text
Mode strongest protection: do everything possible to make markup unreadable:
<HtmL>  <BOdy  BgSOund="&#x77;o&#x77;&#x2e;&#x77;&#x61;&#x76;"  bACkgRoUnd="&#x72;&#x65;&#x64;">  &#x09;<H1  ClasS="&#x42;&#x69;&#x67;&#x54;it&#x6c;&#x65;">Do&#x63;&#x20;&#x54;&#x69;&#x74;&#x6c;&#x65;</h1>  &#x20;&#x20;  &#x73;om&#x65;&#x20;&#x74;e&#x78;t  &#x09;&#x09;&#x09;&#x68;&#x65;&#x72;e&#x20;an&#x64;  &#x20;&#x20;&#x20;&#x20;<B>h&#x65;&#x72;e</b>  &#x09;&#x20;&#x20;&#x20;&#x20;  &#x20;  a&#x67;&#x61;&#x69;n  t&#x65;xt  &#x20;  </BoDy>  </HTMl>
Spaces and newlines that are safe to remove are removed. Comments are stripped off. Most of of the characters between elements are converted into entities; values of attributes are converted to entities; names of attributes and elements are mangled (by using random case of letters). Output will definitely become larger than input.
    Details

This preset provides strongest protection for html markup around code:
  • protect scripts;
  • all html comments are stripped;
  • redundant whitespaces in html markup are jammed;
  • names of attributes are made less readable by using random case of characters;
  • names of elements are made less readable by using random case of characters;
  • characters inside attribute values are replaced with entities;
  • characters between tags are replaced with entities;
the text
becomes (note excess of whitespace was removed):
the text

More samples of VBScript and ASP obfuscation

See another page with samples of obfuscated files, with server-side and client-side VBScript being obfuscated.