Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - ferk93

#1
ASM / Re: Que compilador recomiendan?
13 Julio 2009, 15:04 PM
Creo que lo que tu quieres es un ensamblador, que permite crear ejecutables a partir de un codigo en lenguaje ensamblador.

Yo personalmente uso fasm y de momento me va bastante bien,tambien tiene fama de ser bastante rapido porque esta programado en asm, el lenguaje ensamblador es el mismo uses el programa que uses, lo unico que difieren ligeramente las sintaxis segun cual uses, pero tranquilo porque fasm esta perfectamente documentado en su web.
Te recomiendo que leas el manual de fasm para evitar futuros problemas de sintaxis junto a manuales del lenguaje ensamblador en general (en este mismo subforo tienes buenos tutoriales para comenzar)

Si quieres programar shellcodes tambien podrias hechar un vistazo a la revista HackxCrack nº 30, que se basa en linux, pero explica las bases para programar cosas de estas y luego podrias intentar hacer una para windows (publicando el codigo que estaria muy bien). Puedes encontrar estas revistas en este foro.

Saludos, espero q te sirva.
#2
ASM / Re: Sintaxis FASM
8 Julio 2009, 23:38 PM
Ok,  gracias a los dos y ya nos veRemos q me da q voy a tener muchas dudas con esto del ASM.
#3
ASM / Re: Sintaxis FASM
8 Julio 2009, 22:41 PM
Ok, todo bien, pero un par de cosas:

ese "xor cl, cl" pone a cero el registro verdad?
porque usas el registro "cl"?
porque pones "byte" delante de [Numero1]?
que hace exactamnt ese "ret"?

Gracias, y por cierto, en primer codigo q ha posteado Erik# no lo compila el FASM,
de hecho tengo la duda de que se pueda hacer un "pop" a una variable definida en .data
es posible?

Gracias y un saludo!
#4
ASM / Sintaxis FASM
8 Julio 2009, 17:43 PM
Mi pregunta es, como se puede mover el valor de un registro a una variable?

include 'C:\fasm\INCLUDE\WIN32AX.inc'

.data
num1 db 3
num2 db 2

.code
mov eax, num1
add eax, num2
mov num2, eax


Asi deberia mover el valor de la suma a la variable num2, pero visto que no tambien probe a hacerlo asi

include 'C:\fasm\INCLUDE\WIN32AX.inc'

.data
num1 db 3
num2 db 2
num3 db 0

.code
mov eax, num1
add eax, num2
add num3, eax  ; tambien con  mov num3, eax


como tampoco funciono intente hacerlo con la pila

include 'C:\fasm\INCLUDE\WIN32AX.inc'

.data
num1 db 3
num2 db 2

.code
mov eax, num1
add eax, num2
push eax
pop num2

Donde falla?

Gracias a todos..
#5
Gracias a ambos por vuestra ayuda.

Ahora lo tengo claro.

Salu2!
#6
Buenas a to2!

Acabo de empezar a estudiar el lenguaje ensamblador y me ha surgido una duda sobre los registros.

Es lo mismo un registro de tipo EAX que de tipo AX?

Si no es asi, en que se diferencian?

Gracias de antemano y prdon x la duda, que se que es algo muy basico.