كود:
Private gBytes() As Byte
Private gHash As New MD5Hash
Private Function CheckHex(gHex As String) As String
' This function will append a '0' if Hex Value is single digit.
If Len(gHex) = 1 Then
gHex = "0" & gHex
End If
CheckHex = gHex
End Function
Private Sub Command1_Click()
Dim gIMEI As String
Dim gHexVal1(3) As String
Dim gHexVal2(3) As String
Dim gHexVal3(3) As String
Dim gHexVal4(3) As String
Dim X As Integer
Dim gHashStr As String
Dim gXoredHash As Long
gIMEI = Text1.Text
If IsNumeric(gIMEI) = False Or Len(gIMEI) < 15 Then
MsgBox "رقم غير صحيح!", vbExclamation, "Error"
Exit Sub
End If
gIMEI = gIMEI & "5e8dd316726b0335" 'Append Unlock Hash with IMEI
gBytes = StrConv(gIMEI, vbFromUnicode)
gHashStr = gHash.HashBytes(gBytes) 'Creating MD5 Hash
'MsgBox gHashStr
For X = 0 To 3
gHexVal1(0) = Mid(gHashStr, 1, 2)
gHexVal1(1) = Mid(gHashStr, 9, 2)
gHexVal1(2) = Mid(gHashStr, 17, 2)
gHexVal1(3) = Mid(gHashStr, 25, 2)
gHexVal2(0) = Mid(gHashStr, 3, 2)
gHexVal2(1) = Mid(gHashStr, 11, 2)
gHexVal2(2) = Mid(gHashStr, 19, 2)
gHexVal2(3) = Mid(gHashStr, 27, 2)
gHexVal3(0) = Mid(gHashStr, 5, 2)
gHexVal3(1) = Mid(gHashStr, 13, 2)
gHexVal3(2) = Mid(gHashStr, 21, 2)
gHexVal3(3) = Mid(gHashStr, 29, 2)
gHexVal4(0) = Mid(gHashStr, 7, 2)
gHexVal4(1) = Mid(gHashStr, 15, 2)
gHexVal4(2) = Mid(gHashStr, 23, 2)
gHexVal4(3) = Mid(gHashStr, 31, 2)
Next X
gHexVal1(0) = Hex(Val("&H" & gHexVal1(0)) Xor Val("&H" & gHexVal1(1)) Xor Val("&H" & gHexVal1(2)) Xor Val("&H" & gHexVal1(3)))
gHexVal1(1) = Hex(Val("&H" & gHexVal2(0)) Xor Val("&H" & gHexVal2(1)) Xor Val("&H" & gHexVal2(2)) Xor Val("&H" & gHexVal2(3)))
gHexVal1(2) = Hex(Val("&H" & gHexVal3(0)) Xor Val("&H" & gHexVal3(1)) Xor Val("&H" & gHexVal3(2)) Xor Val("&H" & gHexVal3(3)))
gHexVal1(3) = Hex(Val("&H" & gHexVal4(0)) Xor Val("&H" & gHexVal4(1)) Xor Val("&H" & gHexVal4(2)) Xor Val("&H" & gHexVal4(3)))
For X = 0 To 3
gHexVal1(X) = CheckHex(gHexVal1(X))
Next X
gXoredHash = Val("&H" & gHexVal1(0) & gHexVal1(1) & gHexVal1(2) & gHexVal1(3))
Text2.Text = gXoredHash And &H1FFFFFF Or &H2000000
End Sub
Private Sub Command2_Click()
End
End Sub
المفضلات