Il VB e' poco adatto a questo tipo di compiti.
Pero', con qualche "salto mortale", si puo' scrivere del codice equivalente a quello che hai scritto, ovvero

codice:
Private Declare Sub CopyMemory _
    Lib "kernel32" Alias "RtlMoveMemory" _
    (Destination As Any, _
    Source As Any, _
    ByVal Length As Long)

Private Sub Form_Click()
    Dim va As Variant
    Dim i As Integer
    Dim v(0 To 15) As Byte
    Dim b As Integer
    
    va = CDec(1234567890)
    
    For i = 0 To 7
        Call CopyMemory(v(0), va, 16)
        b = (v(11) And &HF0) \ 16
        
        va = va * &H11
        
        Call CopyMemory(v(0), va, 16)
        v(12) = 0
        v(8) = v(8) Or b
        Call CopyMemory(va, v(0), 16)
    Next i
    
    Call CopyMemory(v(0), va, 16)
    
    Debug.Print Vis(v)
End Sub

Public Function Vis(v() As Byte) As String
    Dim j As Integer
    Dim s As String
    
    For j = 11 To 8 Step -1
        s = s & Right$("0" & Hex$(v(j)), 2)
    Next j
    Vis = s
End Function
Questo, come vedrai nella finestra di debug, ottiene lo stesso risultato di quello scritto in C ...

E' un po' complesso spiegarti cosa e come lo faccia ma posso farlo se ti interessa veramente ...