• Jueves 14 de Noviembre de 2024, 23:07

Mostrar Mensajes

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


Mensajes - XjersonX

Páginas: [1]
1
ASM (Ensamblador) / Re: Problema con Source
« en: Martes 28 de Abril de 2009, 22:55 »
como? , un ejemplo me vendria de miedo.

2
ASM (Ensamblador) / Re: Problema con Source
« en: Martes 28 de Abril de 2009, 21:59 »
Hola denuevo ! miren tengo otro problema espero que me ayuden T_T

push eax
mov eax,04000000h
xor cx,cx

bucle:
inc eax

cmp dword ptr[eax],12345678h
cmp byte ptr[eax+4],91h

jz Final
Loop bucle

Final:
mov byte ptr[eax+4],92h
jmp bucle


Todo perfecto verdad? . Pero lo que pasa esque quisiera hacerlo que comparara entre un numero determinado y solo los que esten en ese rango se sobreescriban.

Por ejemplo:

push eax
mov eax,04000000h
xor cx,cx

bucle:
inc eax

cmp dword ptr[eax],12345678h
cmp byte ptr[eax+4],91h ; Aki hacerlo que se sobreescriban por 92h todos los que esten en un rango por ejemplo entre 91 a 99.

jz Final
Loop bucle

Final:
mov dword ptr[eax+4],92h
jmp bucle

Lo mas cuerdo es hacerlo con los simbolos de Matematicas , == Suma resta , etc.. Pero nos e como lo podria hacer. Ayuda !

De ante mano gracias muxaxos me estan ayudando mucho.

3
ASM (Ensamblador) / Re: Problema con Source
« en: Martes 28 de Abril de 2009, 18:32 »
Muchas gracias con la doble comparacion me basto.

4
ASM (Ensamblador) / Problema con Source
« en: Martes 28 de Abril de 2009, 17:42 »
Bueno Soy nuevo en la web y tengo una duda.

Lo que sucede esque cree un source que busque por toda la memoria unos determinados bytes y los sobreescriba.
Por ejemplo.

Buscar : 1234567891h
Reemplazar solo el ultimo byte por 92h

Lo que sucede esque en ASM solo me dejan hacerlo pero como maximo hasta 8 bytes osea hasta 12345678h.


push eax
mov eax,04000000h ; Desde aqui empiesa a buscar desde la direccion 04000000
xor cx,cx

bucle:
inc eax

cmp dword ptr[eax],12345678h ; no me deja buscar 1234567891h solo hasta 8 bytes osea hasta 12345678h

jz Final
Loop bucle

Final:
mov dword ptr[eax+6],92h ; sobreescribo los dos ultimos bytes por 92 y deveria quedar 12345692h


   jmp bucle


Bien , la cuestion es como buscar todo si solo me deja hasta 8 bytes y lo que tengo son 10 bytes?.

PD: Solo me falta esa parte lo demas esta hecho el SEH y el resto del codigo. Solo me falta ese pedasito ayuda !

Páginas: [1]