que error le encuentran a este codigo en nasm?

Iniciado por Belial & Grimoire, 14 Julio 2013, 02:21 AM

0 Miembros y 1 Visitante están viendo este tema.

Belial & Grimoire

hola

Quise hacer por mi mismo un downloader para practicar asm, pero tengo un problema, nasm no me da ningun error, gcc tampoco pero cuando lo ejecuto, me sale un mensaje de error y se cierra, me podrian decir que fallo le encuentran porfavor?

[Bits 32]

section .data
remote_file db 'http://www.crackberrista.com/wp-content/uploads/2012/01/hacker.gif',0
local_file db 'hacker.gif',0
url db 'urlmon.dll'
ldlib dd '0xFFFFFFFF'
URDo db 'URLDownloadToFileA'
urd dd '0xFFFFFFFF'

section .text
extern _LoadLibraryA@4
extern _GetProcAddress@8
extern _FreeLibrary@4
extern _ExitProcess@4
global _WinMain@16

_WinMain@16:

push url
call _LoadLibraryA@4
mov [ldlib], eax

push URDo
push dword [ldlib]
call _GetProcAddress@8
mov [urd], eax

push 0
push 0
push local_file
push remote_file
push 0
call [urd]

call _FreeLibrary@4

push 0
call _ExitProcess@4
ret 16
.                                 

Danyfirex


Belial & Grimoire

nop, ese no es el problema, olvide la comilla pero ahorita lo arreglo, algo mas que puedan ver?, es que no se que pueda estar mal, o no se si todo el codigo que hice este mal

salu2
.                                 

mr.blood

OllyDBG y mira donde crashea. Es ASM osea que veras la linea exacta ;).

Sa1uDoS

Belial & Grimoire

hola

ya use olly, y creo ya encontre el problema, al poner varios breaks, creo lo que falla es GetProcAddress, en hmodule, tiene un numeros, pero al llegar con el break cambia a NULL, despues avanza y me aparece una violacion de acceso

entonces de que otra forma obtengo GetProcAddress?
.                                 

Belial & Grimoire

que tonteria hice, ya lo resolvi, olvide poner cero despues de "urlmon.dll" y "URLDownloadToFileA"... ", 0", me imagino que por eso me daba null

bueno, gracias

salu2
.                                 

mr.blood

Tranquilo esos errores tontos suelen ocurrir, sobre todo al principio jeje.

Sa1uDoS