Alguien sabe que es hece el sufijo large?

Iniciado por pepeBocachancla, 30 Septiembre 2009, 02:22 AM

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

pepeBocachancla

Estaba revisando código en ensamblador, cuando me encontré con la siguiente instrucción:
Código (asm) [Seleccionar]
mov ebx, large fs:0
De esta instrucción lo entiendo todo, pero me puse a buscar que hacía "large" y no encontré casi nada, lo único que encontré fue esto
CitarSMALL and LARGE can be used determine the width of a displacement:

MOV EAX, [LARGE $1234]

This instruction generates a 'normal' move with a 32-bit displacement ($00001234).

MOV EAX, [SMALL $1234]

The second instruction will generate a move with an address size override prefix and a 16-bit displacement ($1234).

SMALL can be used to save space. The following example generates an address size override and a 2-byte address (in total three bytes)

MOV EAX, [SMALL 123]

as opposed to

MOV EAX, [123]

which will generate no address size override and a 4-byte address (in total four bytes).
La idea que yo tenía era más o meno esa, pero me sorprendió mucho no encontrar esta información nada más que en una página, así que os pregunto vosotros si sabéis lo que es.

Por cierto, si alguien quiere ver el código que estaba mirando, era este
http://www.yersinia.net/payload.txt
Y creó Dios el Bit y el Byte y vio Dios que era bueno.
Y bendiciéndolos dijo: "creced y multiplicaos".
Genesis 1:21,22

Eternal Idol

¿Que ensamblador estas usando? En MASM eso no va y la ayuda que citas es de Borland ... no existen los sufijos en las instruccione definidas por Intel.

Mostranos el binario de ambas instrucciones ...
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

pepeBocachancla

Pues no te puedo mostrar el binario, porque el el txt que os linké no aparece, y en cuanto al ensamblador, no se si es NASM o FASM, pero creo que es uno de los dos.

Por si sirve de ayuda, encontré cosas parecidas en otros textos por internet
http://www.openrce.org/articles/full_view/21
http://www.datarescue.com/laboratory/trojan2008/index.html
http://books.google.com/books?id=YKl6XnEa_CAC&pg=PA118&lpg=PA118&dq=%22large+fs:0%22&source=bl&ots=0KrGlICsmY&sig=NEcEfklyCFWcVZW6NO0hflyB4xo&hl=es&ei=mVLDStCpLcLc-Qa2ufjuCw&sa=X&oi=book_result&ct=result&resnum=6#v=onepage&q=%22large%20fs%3A0%22&f=false
http://archive.cert.uni-stuttgart.de/bugtraq/2003/02/msg00166.html
http://pastebin.com/m51046240
http://www.the-interweb.com/bdump/istbar/downloadfile.txt

De todas formas, si nadie lo sabe aquí, puedo probar a preguntar en el foro de malware porque como todas las referencias que aparecen a esta instrucción son relacionadas, igual alguien lo utilizó y sabe de que va

Gracias por tu interés
Y creó Dios el Bit y el Byte y vio Dios que era bueno.
Y bendiciéndolos dijo: "creced y multiplicaos".
Genesis 1:21,22