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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  ¿Existe alguna forma de declarar variables en la pila en ensamblador?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Existe alguna forma de declarar variables en la pila en ensamblador?  (Leído 308 veces)
marax

Desconectado Desconectado

Mensajes: 185


Women; an alias for "Fully-automatic weapon."


Ver Perfil
¿Existe alguna forma de declarar variables en la pila en ensamblador?
« en: 20 Febrero 2021, 21:46 pm »

En HLLs el compilador se encarga de procesar los calculos necesarios para el uso de variables en la pila, ademas de ocasionar la localidad entre las variables declaradas.

¿Existe alguna forma de hacer esto en ensamblador? Una tecnica, o algo asi...

Lo unico que se me ocurre es:

Código
  1. mov ebp, esp
  2. push eax ;a partir de ahora existe una variable en SS:EBP+ESP+4

¿Hay alguna otra forma que "Memorizando" las posiciones de memoria?

(Eso lo he aprendido desensamblado .COMs con DEBUG.EXE. Si existe una tecnica mas moderna agradeceria una pequeña explicacion o una referencia)

Saludos.


En línea

"Durante diez años has venido a mi cueva: estarías harto de tu luz y de este camino sin mí, sin mi águila y sin mi serpiente."
Eternal Idol
Moderador
***
Desconectado Desconectado

Mensajes: 5.701


15 años en el foro.


Ver Perfil WWW
Re: ¿Existe alguna forma de declarar variables en la pila en ensamblador?
« Respuesta #1 en: 20 Febrero 2021, 21:51 pm »

En MASM podes usar PROC y LOCAL para eso.

In the second directive, within a procedure definition (PROC), LOCAL creates stack-based variables that exist for the duration of the procedure. The labelId may be a simple variable or an array containing count elements, where count is a constant expression.

https://docs.microsoft.com/en-us/cpp/assembler/masm/local-masm?view=msvc-160
https://docs.microsoft.com/en-us/cpp/assembler/masm/proc?view=msvc-160


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
marax

Desconectado Desconectado

Mensajes: 185


Women; an alias for "Fully-automatic weapon."


Ver Perfil
Re: ¿Existe alguna forma de declarar variables en la pila en ensamblador?
« Respuesta #2 en: 20 Febrero 2021, 21:57 pm »

En MASM podes usar PROC y LOCAL para eso.

In the second directive, within a procedure definition (PROC), LOCAL creates stack-based variables that exist for the duration of the procedure. The labelId may be a simple variable or an array containing count elements, where count is a constant expression.

https://docs.microsoft.com/en-us/cpp/assembler/masm/local-masm?view=msvc-160
https://docs.microsoft.com/en-us/cpp/assembler/masm/proc?view=msvc-160

Muchas gracias por tu atencion.
Realmente llevaba bastante tiempo buscando una forma comoda de hacer esto.

Saludos.
En línea

"Durante diez años has venido a mi cueva: estarías harto de tu luz y de este camino sin mí, sin mi águila y sin mi serpiente."
Eternal Idol
Moderador
***
Desconectado Desconectado

Mensajes: 5.701


15 años en el foro.


Ver Perfil WWW
Re: ¿Existe alguna forma de declarar variables en la pila en ensamblador?
« Respuesta #3 en: 20 Febrero 2021, 22:20 pm »

De nadas  ::)
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Existe alguna forma de saltarse el DRM « 1 2 »
Multimedia
Valkyr 11 3,492 Último mensaje 11 Septiembre 2006, 12:05 pm
por kentchicken
existe alguna forma de jugar al kane& lynch online?
Juegos y Consolas
drp 0 936 Último mensaje 10 Mayo 2009, 17:51 pm
por drp
Existe alguna función o alguna forma para contar archivos/ficheros .txt
Programación C/C++
gibranini 3 1,529 Último mensaje 8 Octubre 2014, 07:34 am
por milx86
Existe alguna forma de encontrar al spamer en mi red? « 1 2 »
Seguridad
Ytsejam92 12 6,258 Último mensaje 19 Septiembre 2016, 22:53 pm
por warcry.
Existe alguna forma de generar un diccionario sin que se guarde de forma local
Bugs y Exploits
15-19 5 1,893 Último mensaje 6 Abril 2019, 21:47 pm
por 556eknown
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines