Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: Erik# en 2 Enero 2009, 12:55 pm



Título: Errores en MASM con RadASM
Publicado por: Erik# en 2 Enero 2009, 12:55 pm
Mirad:

Código
  1. .386
  2. .model flat, stdcall  ;32 bit memory model
  3. option casemap :none  ;case sensitive
  4.  
  5. include CrackMe 1 - Erik.inc
  6.  
  7. .code
  8.  
  9. start:
  10.  
  11. invoke GetModuleHandle,NULL
  12. mov hInstance,eax
  13.  
  14.    invoke InitCommonControls
  15. invoke DialogBoxParam,hInstance,IDD_DIALOG1,NULL,addr DlgProc,NULL
  16. invoke ExitProcess,0
  17.  
  18. ;########################################################################
  19.  
  20. DlgProc proc hWin:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
  21.  
  22. mov eax,uMsg
  23. .if eax==WM_INITDIALOG
  24.  
  25. .elseif eax==WM_COMMAND
  26. .if eax==crackit
  27. invoke GetDlgItemText,hWin,1001,Addr serial,10
  28. eax serial,'hello'
  29. je correct
  30. invoke  MessageBox,HWND_DESKTOP,"El serial no es correcto","Incorrecto",MB_OK
  31.        invoke  ExitProcess,0
  32. correct:
  33. invoke  MessageBox,HWND_DESKTOP,"El serial es correcto","Correcto",MB_OK
  34.        invoke  ExitProcess,0
  35. .endif
  36.  
  37. .elseif eax==WM_CLOSE
  38. invoke EndDialog,hWin,0
  39. .else
  40. mov eax,FALSE
  41. ret
  42. .endif
  43. mov eax,TRUE
  44. ret
  45.  
  46. DlgProc endp
  47.  
  48. end start

Me da error en:

Código:
		invoke GetDlgItemText,hWin,1001,Addr serial,10
Código:
		invoke  MessageBox,HWND_DESKTOP,"El serial no es correcto","Incorrecto",MB_OK
Código:
		invoke  MessageBox,HWND_DESKTOP,"El serial es correcto","Correcto",MB_OK
Código:
		eax serial,9519511



Título: Re: Errores en MASM con RadASM
Publicado por: karmany en 2 Enero 2009, 15:18 pm
¿Has incluído user32.dll? sólo veo un include CrackMe 1 - Erik.inc, tal vez lo hayas incluído ahí...
GetDlgItemText --> user32.dll
MessageBoxA --> user32.dll


Título: Re: Errores en MASM con RadASM
Publicado por: Erik# en 2 Enero 2009, 16:31 pm
.inc:

Código
  1. include windows.inc
  2. include kernel32.inc
  3. include user32.inc
  4. include Comctl32.inc
  5. include shell32.inc
  6.  
  7. includelib kernel32.lib
  8. includelib user32.lib
  9. includelib Comctl32.lib
  10. includelib shell32.lib
  11.  
  12. DlgProc PROTO :HWND,:UINT,:WPARAM,:LPARAM
  13.  
  14. .const
  15.  
  16. IDD_DIALOG1 equ 101
  17. crackit equ 1002
  18. crack equ 1001
  19. ;#########################################################################
  20.  
  21. .data?
  22.  
  23. hInstance dd ?
  24.  
  25. ;#########################################################################