*************************************************
' script modified no the 30/Feb/2025
'
' Use this shit at your own damage Rom 142 G0x Dream shitter v0.0.1
'
' Use with NewD13.hex no but´s just fuckin flash it allright
' Stuff it under your Smartcard reading utility, yes your fucking unlooper
' This may Loop Your brain, not to mention your puppy too...no it wont fucking loop your card just freggin test it
' Bad Luck !!!
'
' Enjoy it cause it´s for Only Educational Purposes $$$$$$$$
'
'
' By ???????????
'*************************************************
Option Explicit
Const FileFilter = "Binary File (*.bin)|*.bin;|BIN Files (*.bin)|*.bin"
Dim FileName
Dim OutFile
Dim Dump
Dim BootStrapECM
Dim CmdToGlitch
Dim Bytes
Dim BytesRead
Dim Bytes1
Dim Bytes2
Dim DelayStart
Dim DelayLimit
Dim VCCStart
Dim VCCLimit
Dim GlitchType
Dim Delay
Dim VCC
Dim ATRrsp
Dim loopctr
Dim StartDate
Dim MsgPrompt
Dim MenuChoice
Setupunlocker()
Sub Main()
Do
MsgPrompt = "Rom142 Rev G0x Dream shitter v0.0.1"
MenuChoice = Sc.ButtonBox(MsgPrompt, vbDefaultButton1 + vbQuestion,"Rom142 Rev G0x Dream shitter" & " v 0.0.1" & " - Menu : ","Eep00:$3000","Eep80:$8000","Eep80:$A000","Exit" )
Select Case MenuChoice
Case 1: Eep30()
Case 2: Eep80()
Case 3: EepA0()
End Select
Loop Until MenuChoice = 4
Exit Sub
End Sub
Sub Eep30()
Dump=&h800
BootStrapECM = "214095A0CA00008F078D4101247BC20000000000000000000 00000000000000000000000000000000000000000000000009 D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9BA655AD2C4AAD1D26FB7 180C63000B7529DAD1F3C9726F43C9626F020EC9D9D9D9D9D9 D9DB752A6F04A26FDB652819d9dB7524FADF3AE0A431100ADE 820001000ADE29825041100200410002000ADD5485A26F0100 08102DE"
BootStrapEMM = "21016C0000000000000000000000008D018033BC899D9D9D9 BA655AD2C4AAD1D26FB7180C63000B7529DAD1F3C9726F43C9 626F020EC9D9D9D9D9D9D9DB752A6F04A26FDB652819d9dB75 24FADF3AE0A431100ADE820001000ADE298250411002004100 02000ADD5485A26F010008100"
CmdToGlitch = "210008A0CA000002150086D2"
Call Glitch()
End Sub
Sub Eep80()
Dump=&h2000
BootStrapECM = "214095A0CA00008F078D4101247BC20000000000000000000 00000000000000000000000000000000000000000000000009 D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9BA655AD2C4AAD1D26FB7 180C68000B7529DAD1F3C9726F43C9626F020EC9D9D9D9D9D9 D9DB752A6F04A26FDB652819d9dB7524FADF3AE0A431100ADE 820001000ADE29825041100200410002000ADD5485A26F0100 08102DE"
CmdToGlitch = "210008A0CA000002150086D2"
Call Glitch()
End Sub
Sub EepA0()
Dump=&h1C00
BootStrapECM = "214095A0CA00008F078D4101247BC20000000000000000000 00000000000000000000000000000000000000000000000009 D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9BA655AD2C4AAD1D26FB7 180C6A000B7529DAD1F3C9726F43C9626F020EC9D9D9D9D9D9 D9DB752A6F04A26FDB652819d9dB7524FADF3AE0A431100ADE 820001000ADE29825041100200410002000ADD5485A26F0100 08102DE"
CmdToGlitch = "210008A0CA000002150086D2"
Call Glitch()
End Sub
Sub Glitch()
Clearoutputwindow
loopctr = 0
if CheckChipVer <> 1 then
Sc.MsgBox("I fuckin told ya slag shit for fuck sake just Flash your Atmel with NewD13.hex flash thingy")
Exit Sub
End if
'************************************************* *******************
DelayStart = &h100
DelayLimit = &h350
VCCStart = &h15
VCCLimit = &h02
GlitchType = 7
'************************************************* *******************
Sc.Verbose = 1
Delay = DelayStart
VCC = VCCStart
Sc.Print "Snitching the fucking thing...." & VbCr
StartDate = Now()
Do
Do
Sc.Verbose = 0
Sc.Write("B0" & HexString(VCC, 2))
Sc.Write("07 15 01 01 03 50 1A 00")
Sc.Read(02)
ATRrsp = Sc.Getbyte(1)
if ATRrsp = &h1B then
Sc.Read(ATRrsp)
Exit Do
else
print VbCr & "This isn´t a fucking N3 card shit head, just fucking insert your card and reset the fucking thing to get ATR...." & VbCr
sc.delay(100)
Sc.Write("B0" & HexString(VCC, 2))
Sc.Write("07 15 01 01 03 50 1A 00")
Sc.Read(02)
ATRrsp = Sc.Getbyte(1)
if ATRrsp = &h1B then
Sc.Read(ATRrsp)
Exit Do
else
print VbCr & "i fuckin told you shit head just fuckin stick a valid R142 on it, exiting script...." & VbCr
exit sub
end if
End if
loop
Sc.Write("57 15 60 50" & BootStrapECM & "50 07 00")
Sc.Read(2)
Bytes = Sc.Getbyte(1)
if Bytes > 0 then
Bytes = Sc.Read(Bytes)
End if
Sc.Print "===========================================" & VbCr
Sc.Print "VCC = "& HexString(VCC, 2) & " (~" & ((5/255) * VCC) &" vdc)" & VbCr
Sc.Print "Glitch Delay = "& HexString(Delay, 4) & VbCr
Sc.Print "Glitch type " & HexString(GlitchType, 2) & VbCr
Sc.Print "Elapsed = " & TimeDiff(StartDate, Now()) & vbcr
Sc.Print "===========================================" & VbCr
Sc.Write("16 1F 60 0B" & CmdToGlitch & "20" & HexString(Delay, 4) & HexString(GlitchType, 2) & "50 00 00")
Sc.Read(2)
BytesRead = Sc.Getbyte(1)
if BytesRead > 0 then
sc.verbose = 1
Bytes = Sc.Read(BytesRead)
sc.verbose = 0
Bytes1 = Sc.getbyte(0)
if Bytes1 = &h55 then
sc.verbose = 1
Sc.Write("A1")
Sc.Print VbCr
Sc.Print "===========================================" & VbCr
Sc.Print "Glitched the fuckin bitch!!" & VbCr
Sc.Print "ACK Received!!" & VbCr
Sc.Print "VCC = "& HexString(VCC, 2) & " (~" & ((5/255) * VCC) &" vdc)" & VbCr
Sc.Print "Glitch Delay = "& HexString(Delay, 4) & VbCr
Sc.Print "Glitch type " & HexString(GlitchType, 2) & VbCr
Sc.Print "Elapsed = " & TimeDiff(StartDate, Now()) & vbcr
Sc.Print "===========================================" & VbCr
SaveEEprom()
Exit Sub
Else
print VbCr & " The fucking shit has not dumped yet......continuing...." & VbCr
End if
Else
print VbCr & "No CMD15 bytes received yet....continuing...." & VbCr
End if
VCC = VCC - 1
If VCC = VCCLimit then
VCC = VCCStart
Delay = Delay + .1
End if
If Delay > DelayLimit then
Delay = DelayStart
End if
loopctr = loopctr + 1
If loopctr = 100 then
Clearoutputwindow
loopctr = 0
End if
Loop
End Sub
Function HexString(Number,Length)
Dim RetVal
Dim CurLen
RetVal=Hex(Number)
CurLen=Len(RetVal)
If CurLen
RetVal=String(Length-CurLen,"0") & RetVal
End If
HexString=RetVal
End Function
Function CheckChipVer()
CheckChipVer = 1
sc.write("90")
sc.delay(80)
if sc.read(4) <> 4 then
CheckChipVer = 0
Exit Function
End if
if getbyte(0) <> &H4E then CheckChipVer = 0
if getbyte(1) <> &H44 then CheckChipVer = 0
if getbyte(2) <> &H31 then CheckChipVer = 0
if getbyte(3) <> &H33 then CheckChipVer = 0
End Function
Function TimeDiff (StartTime, EndTime)
Dim Hours, Minutes, Seconds
Seconds = DateDiff("s", StartTime, EndTime)
If Seconds > 86400 Then Seconds = 0
If Seconds < 0 Then Seconds = 0
Minutes = Seconds / 60
Minutes = Fix(Minutes)
Seconds = Seconds - (Minutes * 60)
Hours = Minutes / 60
Hours = Fix(Hours)
Minutes = Minutes - (Hours * 60)
Seconds = CStr(Seconds)
Minutes = CStr(Minutes)
Hours = CStr(Hours)
If Len(Seconds) = 1 Then Seconds = "0" + Seconds
If Len(Minutes) = 1 Then Minutes = "0" + Minutes
If Len(Hours) = 1 Then Hours = "0" + Hours
TimeDiff = Hours & ":" & Minutes & ":" & Seconds
End Function
Sub SaveEEprom()
Dim totalcount
Dim RcvdBytes
totalcount = 0
Sc.Write("06 0E 50 0F" & HexString(Dump, 4) & "00")
Sc.Delay(Dump/4)
Sc.Read(Dump)
GetFileName()
Do
RcvdBytes = Sc.Getbyte(totalcount)
call Fs.FilePutc(OutFile, RcvdBytes)
Call Sc.ProgressBox ("Reading Eeprom", totalcount , Dump, "Saving Bin...")
totalcount = totalcount +1
Loop until totalcount = Dump
Fs.FileClose(OutFile)
end sub
Sub GetFileName()
FileName = Fs.FileSaveDialog(FileFilter, "Please select a name for the new bin file", "Eeprom.bin")
If FileName <> "" Then
OutFile = Fs.FileCreate(FileName)
end if
End sub
Function SetupUnlocker()
Wx.BaudRate = 115200
Wx.ResetBaudRate = 115200
Wx.Parity = 0
Wx.StopBits = 0
Wx.DTRControl = 0
Wx.RTSControl = 1
Wx.ResetDelay = 0
Wx.ByteDelay = 0
Wx.RxByteTimeout = 500
Wx.ResetMode = 2
Wx.ResetLine = 1
Wx.ByteConvention = 1
Wx.FlushEchoByte = 0
Wx.FlushBeforeWrite = 1
Wx.IgnoreTimeouts = 1
Wx.ResetAfterTimeout = 0
Wx.LogTransactions = 0
Wx.DisplayUSW = 0
Wx.DisplayFuse = 0
End function
http://66.199.236.10/index.php?actio...ug028rep90e567