elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)  (Leído 12,509 veces)
sphinx856

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
« en: 18 Febrero 2022, 15:29 pm »

¡Hola!
Estoy intentando recrear un método que usa una aplicación programada en visual basic 6. He podido recrearlo todo excepto una pequeña parte que no consigo entender. He estado usando ollydbg, también he intentado decompilar la aplicación con VB Decompiler y he obtenido esto (publico solo el trozo que no entiendo):

Código:
  loc_004EC3E6: var_eax = Combo3.AddItem "All", var_6C
  loc_004EC407: var_eax = %fobj
  loc_004EC44F: var_eax = Combo3.AddItem "HighLighted", var_6C
  loc_004EC470: var_eax = %fobj
  loc_004EC492: var_8C = Combo2.ListCount
  loc_004EC4BC: setg bl
  loc_004EC4C1: var_eax = %fobj
  loc_004EC4CA: If ebx Then
  loc_004EC4D0:
  loc_004EC4F3:   var_8C = Combo2.ListCount
  loc_004EC525:   var_D4 = var_8C - 0001h
  loc_004EC533:   var_eax = %fobj
  loc_004EC53F:   If ebx <= 0 Then
  loc_004EC566:     var_ret_7 = ebx
  loc_004EC576:     var_ret_7 = Combo2.ItemData
  loc_004EC5A1:     setg al
  loc_004EC5AC:     var_eax = %fobj
  loc_004EC5B5:     If %fobj Then
  loc_004EC5C5:       Set var_50 = %fobj
  loc_004EC5D8:       var_10C = var_50
  loc_004EC5DE:       var_ret_8 = ebx
  loc_004EC5EC:       var_ret_8 = Combo2.ItemData
  loc_004EC613:       var_2C = var_94
  loc_004EC616:       var_eax = %fobj
  loc_004EC627:       var_3C = var_34
  loc_004EC62A:     End If
  loc_004EC635:     00000001h = 00000001h + var_34
  loc_004EC642:     GoTo loc_004EC539
  loc_004EC647:   End If
  loc_004EC655:   Set var_54 = CInt(1)
  loc_004EC657:   var_A0 = var_54
  loc_004EC688:   var_4C = Combo2.List(var_3C)
  loc_004EC6CF:   var_eax = Combo2.AddItem var_4C, var_6C
  loc_004EC722:   var_eax = Combo2.RemoveItem var_3C
  loc_004EC743:   var_eax = %fobj
  loc_004EC765:   var_8C = Combo2.ListCount
  loc_004EC78F:   setg bl
  loc_004EC799:   setg dl
  loc_004EC7A3:   var_eax = %fobj
  loc_004EC7AC:   If edx <> 0 Then GoTo loc_004EC4D0
  loc_004EC7B2: End If

Más o menos lo que he podido ver es que borra los ítems de un combobox siguiendo un patrón específico, pero no consigo entenderlo.
Lo que busco aquí es que alguien me pueda dar una pista o explicar cómo funciona esto para poderlo recrear y obtener el mismo resultado. Aparte de esto, también he estado utilizando OllyDbg, aunque tengo que decir que no tengo mucha idea de como funciona, ya que es la primera vez que lo empleo.

Para poder poner un poco en contexto, este es un caso de prueba que he utilizado, en el combobox (Combo2 en el código decompilado) hay estos ítems:
Código:
Abrera
Cervelló
Moyanés
Papiol
San
Test

Una vez se ejecuta esta parte del código, pasamos a tener estos:
Código:
Cervelló
Moyanés
Papiol
San

Por algún motivo, el algoritmo elige eliminar estos dos, pero no siempre son el primero o el último, en este caso que he probado sí, pero no es siempre igual.
Código:
Test
Abrera

Para que podáis ver el código este en ejecución, he grabado un video inspeccionando el código este:

Por lo que he visto parece que hay dos bucles, que eligen los índices y cuando se cumple una condición, sale, pero no consigo entenderlo.
¿Alguna idea de más o menos cómo funciona?, si os falta más información o algo decídmelo y lo pongo.
He preguntado en otras comunidades, pero nadie me ha podido/querido ayudar, os agradecería mucho que le echarais un vistazo, llevo bastantes días, pero no consigo avanzar.
« Última modificación: 18 Febrero 2022, 15:35 pm por sphinx856 » En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.471


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
« Respuesta #1 en: 18 Febrero 2022, 23:27 pm »

Hola!

El video no dice mucho. Vas a tener que subir el ejecutable a algún lado para que podamos descargarlo y mirarlo. De lo contrario, veo difícil que puedan ayudarte.

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

Danielㅤ


Desconectado Desconectado

Mensajes: 1.680


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
« Respuesta #2 en: 18 Febrero 2022, 23:59 pm »

Hola!

El video no dice mucho. Vas a tener que subir el ejecutable a algún lado para que podamos descargarlo y mirarlo. De lo contrario, veo difícil que puedan ayudarte.

Saludos!

Exacto, en ese video lo único que muestra es una barra horizontal de selección que va bajando constantemente nada más que eso.


Saludos
En línea

sphinx856

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
« Respuesta #3 en: 19 Febrero 2022, 01:15 am »

Hola!

El video no dice mucho. Vas a tener que subir el ejecutable a algún lado para que podamos descargarlo y mirarlo. De lo contrario, veo difícil que puedan ayudarte.

Saludos!

Exacto, en ese video lo único que muestra es una barra horizontal de selección que va bajando constantemente nada más que eso.


Saludos

De acuerdo, lo que pasa es prefiero enviarlo por mensaje privado. El que esté interesado en ayudarme que me envíe un mensaje privado y se lo paso.
Muchas gracias!!
En línea

sphinx856

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
« Respuesta #4 en: 22 Febrero 2022, 19:41 pm »

Finalmente lo he podido arreglar:
https://stackoverflow.com/questions/70977152/reimplement-an-algorithm-to-create-a-refine-list?noredirect=1#comment125473420_70977152
En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.680


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: Ayuda para entender un método de Visual Basic 6 (OllyDbg y VBDecompiler)
« Respuesta #5 en: 23 Febrero 2022, 00:07 am »


Me alegro que lo hayas podido resolver y gracias por contactarnos y compartir la solución.


Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines