Underc0de

Programación General => C# - VB.NET => Mensaje iniciado por: Flamer en Diciembre 27, 2016, 02:04:38 PM

Título: [Aporte] Ghost Killer Adf.ly by Flamer
Publicado por: Flamer en Diciembre 27, 2016, 02:04:38 PM

(https://2.bp.blogspot.com/-2gxcK1gzhKs/WGKUbfwrcVI/AAAAAAAABAc/pqOUIZYfRsY2t2nENoPfnhI4QxrTYS5pQCLcB/s1600/Sin%2Bt%25C3%25ADtulo.png)


Proyecto:   Ghost Killer  Adf.ly

        Autor:  Flamer

Referencias:  https://foro.elhacker.net/net/c_adfly_killer_05-t455465.0.html;msg2080233 (https://foro.elhacker.net/net/c_adfly_killer_05-t455465.0.html;msg2080233)

            Por:  Doddy

   Lenguaje:  VB:Net 2010    

Descripción: Basado en el programa de Doddy, este también decodifica los enlaces adf.ly pero con la diferencia de que este tiene un modo de trabajo invisible sin la necesidad de estar llamando al programa cada rato este a párese cuando un enlace adf.ly asido copiado al porta papeles con la decodificación ya realizada.


Código (vbnet) [Seleccionar]

Public Class Form1
   Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
       Timer1.Interval = 3000
       Timer2.Interval = 1
       msg.Visible = False
   End Sub


   Function decodifica(l)
       On Error Resume Next
       Dim web As New Object
       Dim i, f, x As Integer
       Dim a, b, t, code As String

       Err.Number = 0

       web = CreateObject("Microsoft.XmlHttp")
       web.open("Get ", l, False)
       web.send()
       code = web.responseText



       i = InStr(code, "var ysmm")
       f = InStr(code, "var easyUrl") - i
       code = Mid(code, i, f)
       code = Replace(code, "var ysmm = '", "")
       code = Trim(Replace(code, "';", ""))
       a = ""
       b = ""
       If Err.Number <> 0 Then
           decodifica = "...:::Error En La Decodificacion:::..."
       Else
           For x = 1 To Len(code)
               t = (x - 1) Mod 2
               If t = 0 Then
                   a = a & Mid(code, x, 1)
               Else
                   b = Mid(code, x, 1) & b
               End If
           Next


           code = System.Text.Encoding.UTF8.GetString(System.Convert.FromBase64String(a & b))
           decodifica = code.Substring(2)
       End If


   End Function

   Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
       If url.Text <> "" Then
           If InStr(url.Text, "adf.ly") Then
               Resul.Text = decodifica(url.Text)
           Else
               MsgBox("No Es Una url De adf.ly", , "Aviso De Error")
           End If
       Else
           MsgBox("El Campo Esta Vasio", , "Aviso De Error")
       End If

   End Sub

   Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
       Clipboard.SetData("UnicodeText", Resul.Text)
       msg.Visible = True
       Timer1.Start()
   End Sub

   Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
       msg.Visible = False
       Timer1.Stop()
   End Sub

   Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
       Me.Visible = False
       Timer2.Start()

   End Sub

   Private Sub Timer2_Tick(sender As System.Object, e As System.EventArgs) Handles Timer2.Tick
       Dim t As String

       t = CStr(Clipboard.GetData("UnicodeText"))

       If url.Text <> t Then
           If InStr(t, "adf.ly") Then
               url.Text = t
               Resul.Text = decodifica(t)
               If Resul.Text <> "...:::Error En La Decodificacion:::..." Then
                   Timer2.Stop()
                   Me.Visible = True
               End If
               
           End If
       End If
   End Sub

   Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
       Resul.Text = ""
       url.Text = ""
   End Sub
End Class






descarga codigo fuente mas Exe: http://www.mediafire.com/file/v02ew6doec1y2dj/Ghost_Killer_adf.ly.rar (http://www.mediafire.com/file/v02ew6doec1y2dj/Ghost_Killer_adf.ly.rar)
Título: Re:[Aporte] Ghost Killer Adf.ly by Flamer
Publicado por: fudmario en Diciembre 29, 2016, 09:13:20 PM
Hola,...
Sugerencia: Evita usar On Error Resume Next en VB.NET, siempre es mejor tener un control de errores, puedes optar por un bloque Try/Catch.

En .NET dispones de una amplia Biblioteca de Classes para poder utilizarla, razon por la cual trata de evitar usar:(CreateObject("Microsoft.XmlHttp")).
En vb.net puedes usar: WebClient.DownloadString (https://msdn.microsoft.com/es-es/library/fhd1f0sw(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1)

Saludos...
Título: Re:[Aporte] Ghost Killer Adf.ly by Flamer
Publicado por: Flamer en Diciembre 30, 2016, 01:23:34 PM
No creo que tenga algo de malo que utilice objectos, no le perjudica al programa o si

y usar DownloadString solo para que se viera mas profesional y enredoso, pues yo no soy así y creo que es mas simple así que hasta un novato lo entendería y lo hice para que se viera mas simple y diferente a el de doddy ya que el usa ese comando en su Clase DH Tools.

y con lo de los errores si tienes razón estaría mejor usar try/catch pero estoy mas familiarizado con on error resume next

Saludos flamer y no soy bueno programando
Título: Re:[Aporte] Ghost Killer Adf.ly by Flamer
Publicado por: fudmario en Diciembre 30, 2016, 09:48:46 PM
 
Si bien VB.NET es flexible en ciertas cosas, no siempre es la mejor y/o la más óptima forma de realizar las cosas, como te dije teniendo a mano tan extensa libreria de clases que ofrece .NetFramework, porqué no aprovecharlas?....

De hecho Utilizando, WebClient.DownloadString tendrias un mejor control de lo que va a pasar en tiempo de ejecución.


Igual que tú, Yo tampoco soy bueno programando solo conozco pocas cosas, pero con el tiempo aprenderás y entenderás por que es mejor hacerlo de una u otra forma(como por ejemplo especificar el tipo de retorno en una función).


Saludos.
Título: Re:[Aporte] Ghost Killer Adf.ly by Flamer
Publicado por: Flamer en Diciembre 31, 2016, 02:40:33 PM
ok entendido a lo mejor tienes razón