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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  cambiar pulsacion de teclado
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: cambiar pulsacion de teclado  (Leído 3,619 veces)
byway

Desconectado Desconectado

Mensajes: 181


^^,


Ver Perfil
cambiar pulsacion de teclado
« en: 25 Mayo 2013, 02:28 am »

Hola, tal como el titulo menciona me gustaria aprender como cambiar la pulsacion del teclado.

encontre un programa el cual esta en la red, hecho en asm compilado con MASM32 es un cheat para un juego online el gunbound, el cheat es algo viejo.. solo me gustaria saber como cambiarle, modificar la opcion de que se muestre con pulsar otra tecla, este se muestra pulsando la tecla print screen .. me gustaria saber como puedo cambiar eso .. para que se muestre con otra tecla como por ejemplo control.
estuve revisando su codigo y bueno no se nada de asm ... se un poco de visual basic, con lo cual me sirve para ver la estructura.

Publico este post para que alguien que domine este lenguaje me exlpique algo.

esto es parte del codigo principal:

Código
  1.  
  2. .586
  3. .MODEL FLAT, STDCALL
  4.  
  5. OPTION       CASEMAP : NONE
  6.  
  7. INCLUDE WINAPI.inc
  8.  
  9. INCLUDELIB     KERNEL32.lib
  10. INCLUDELIB     USER32.lib
  11. INCLUDELIB GDI32.lib
  12. INCLUDELIB MSVCRT.lib
  13.  
  14.  
  15. ;MSVCRT functions
  16.  
  17. _ftol       PROTO C: VARARG
  18. _CIpow      PROTO C: VARARG         ; X^Y
  19. _itoa       PROTO C: VARARG
  20. time        PROTO C: VARARG
  21. malloc      PROTO C: VARARG
  22. difftime    PROTO C: VARARG
  23. free        PROTO C: VARARG
  24.  
  25. .DATA?
  26.  
  27. buffer DB 0ffh DUP (?)
  28. angle_buff DB 0ffh DUP (?)
  29.  
  30. .DATA
  31.  
  32. INCLUDE Data1.asm
  33. INCLUDE Data2.asm
  34.  
  35. ;INCLUDE Data1_gps.asm
  36.  
  37.  
  38. wc  = 1
  39. th  = 0
  40.  
  41.  
  42. showmore db 1 ; yep...
  43. server db wc ; default wc
  44. key     db 0ffh
  45. angle   dd 0
  46. angle2   dd 0
  47. power dd 0
  48.  
  49. angle_str   db "W.Power: %.2i",0
  50. angle_str2   db "W.Angle: %.3i",0
  51. power_str   db "Power: %.3i",0
  52.  
  53. dragonbot_ini db ".\dragonbot.ini",0
  54. default_wc db "wc",0
  55. default_th db "th",0
  56. section db "Settings",0
  57. keyname2 db "Info",0
  58. keyname1 db "Server",0
  59.  
  60. .CODE
  61.  
  62. EntryPoint:
  63.  
  64. ;invoke GetPrivateProfileStringA,offset section,offset keyname1,offset default_wc,offset buffer,0ffh,offset dragonbot_ini
  65. ;invoke CharLowerA,offset buffer
  66. ;invoke lstrcmpA,offset default_th,offset buffer
  67. ;.if eax==0
  68. ; mov server,th
  69. ;.endif
  70.  
  71. ;invoke GetPrivateProfileStringA,offset section,offset keyname2,offset default_wc,offset buffer,0ffh,offset dragonbot_ini
  72. ;invoke CharLowerA,offset buffer
  73. ;.if byte ptr[buffer]=="1"
  74. ; mov showmore,1
  75. ;.endif
  76.  
  77.  
  78.    INCLUDE WinMain.asm
  79.  
  80.  
  81. ;--- Pixel functions (WC)
  82.  
  83.    INCLUDE Get_Enemy_XY.asm
  84.    INCLUDE Get_XY.asm
  85.    INCLUDE Get_Wind_Speed.asm
  86.    INCLUDE Get_Wind_Angle.asm
  87.  
  88.    INCLUDE Get_Angle.asm
  89.  
  90. ;--- Pixel functions (TH) ; from DragonBot 8.x
  91.  
  92.    ;INCLUDE getenemyxy_gps.asm    
  93.    ;INCLUDE getselfxy_gps.asm
  94.    ;INCLUDE getwindspeed_gps.asm
  95.    ;INCLUDE getwindangle_gps.asm
  96.    ;INCLUDE getangle_gps.asm
  97.  
  98. ;--- Draw functions (Shared)
  99.  
  100.   INCLUDE Draw3.asm      ; aid lines
  101.   INCLUDE Draw0.asm      ; trace
  102.   INCLUDE Draw1.asm      ; slot lines
  103.   INCLUDE Draw2.asm      ; mobile
  104.  
  105.  
  106.   INCLUDE Get_Power.asm
  107.  
  108.  
  109. END EntryPoint
  110.  

viendo parte del codigo vi uno donde menciona en comentarios esta api en winmain.asm (dentro del zip) presumo pueda ser alli:

Código
  1. mov     edi, ds:GetAsyncKeyState

el codigo completo:

http://crystian.comxa.com/dbwc1_asm.rar
para quienes responderan que estudie y revise mas sobre ensamblador ... si estuve revisando y le veo interesante ... pero no le entiendo. ;D


« Última modificación: 25 Mayo 2013, 02:38 am por byway » En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.471


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: cambiar pulsacion de teclado
« Respuesta #1 en: 25 Mayo 2013, 04:57 am »

Fijate en WinMain.asm, linea 382:

Código
  1.                push    2Ch
  2.                call    ds:GetAsyncKeyState
  3.  

El valor 2Ch (valor en Hexa, osea en VB seria &H2C) corresponde a la tecla PRINT SCREEN. Cambiando ese valor, cambias la tecla.
Por las dudas, listado de valores completo: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx

Saludos!


En línea

MCKSys Argentina

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

byway

Desconectado Desconectado

Mensajes: 181


^^,


Ver Perfil
Re: cambiar pulsacion de teclado
« Respuesta #2 en: 26 Mayo 2013, 01:56 am »

Fijate en WinMain.asm, linea 382:

Código
  1.                push    2Ch
  2.                call    ds:GetAsyncKeyState
  3.  

El valor 2Ch (valor en Hexa, osea en VB seria &H2C) corresponde a la tecla PRINT SCREEN. Cambiando ese valor, cambias la tecla.
Por las dudas, listado de valores completo: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx

Saludos!

Gracias por responder, efectivamente si es lo que me indicas ya lo comprobe, lo cambie por otro ... pero este no muestra nada si no se presiono antes la tecla print screen, al parecer dentro de las funciones de dibujado (draw) esta codeado asi con la misma tecla, y aprovecha eso para que con la misma pulsacion haga todo.

En fin ahora ya se que se puede cambiar y cual es el codigo para esto.

ahora trato de compilar ese codigo como dll ... estoy revisando al respecto y planteare mis dudas en otro post.

Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
enviar pulsacion Key Up
Programación Visual Basic
vivachapas 2 1,238 Último mensaje 2 Enero 2008, 14:34 pm
por vivachapas
Generar Pulsacion ! « 1 2 »
Programación General
ElChispa 10 8,426 Último mensaje 5 Noviembre 2010, 17:35 pm
por ElChispa
Como Cambiar el Idioma del Teclado
Dudas Generales
x64core 3 3,097 Último mensaje 1 Noviembre 2011, 12:25 pm
por Hurubnar
Como obtener la pulsación del teclado
Programación C/C++
dac 5 2,953 Último mensaje 18 Octubre 2012, 16:59 pm
por dac
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines