|
5901
|
Programación / ASM / Re: Equivalencia de __ftol2_sse en MASM
|
en: 8 Febrero 2010, 21:52 pm
|
Gracias Ethernal Idol!! Aunque ya habia hecho una implementación en base a OllyDbg. Me quedó asi: ftol2 proc
; local tmp:DWORD ; fistp tmp ; mov eax, tmp ; ret
push ebp mov ebp,esp sub esp,020h and esp,0fffffff0h fld st fst dword ptr ss:[esp+018h] fistp qword ptr ss:[esp+010h] fild qword ptr ss:[esp+010h] mov edx,dword ptr ss:[esp+018h] mov eax,dword ptr ss:[esp+010h] test eax,eax je @Converte_20375125
@Converte_203750E9:
fsubp st(1),st test edx,edx jns @Converte_2037510D fstp dword ptr ss:[esp] mov ecx,dword ptr ss:[esp] xor ecx,080000000h add ecx,07fffffffh adc eax,0 mov edx,dword ptr ss:[esp+014h] adc edx,0 jmp @Converte_20375139
@Converte_2037510D:
fstp dword ptr ss:[esp] mov ecx,dword ptr ss:[esp] add ecx,07fffffffh sbb eax,0 mov edx,dword ptr ss:[esp+014h] sbb edx,0 jmp @Converte_20375139
@Converte_20375125:
mov edx,dword ptr ss:[esp+014h] test edx,07fffffffh jnz @Converte_203750E9 fstp dword ptr ss:[esp+018h] fstp dword ptr ss:[esp+018h]
@Converte_20375139:
leave retn ;<= Procedure End ftol2 endp
(Es el código que viene luego del Je tuyo de 401267, es por si la PC no tiene SSE2) De todas formas, nuevamente, Gracias PD: Lo comentado es una versión "reducida", pero tiene falencias...
|
|
|
5902
|
Programación / ASM / Equivalencia de __ftol2_sse en MASM
|
en: 8 Febrero 2010, 05:50 am
|
Hola! Estoy pasando un código de VC 2008 a MASM y me he encontrado con lo siguiente: FLD QWORD PTR SS:[EBP-24] MOV ESI,EAX CALL 20375090 ;__ftol2_sse CDQ
Según tengo entendido, esta función se encarga de convertir un Float en Dword. El problema es que no encuentro ninguna macro o función que me permita hacer lo mismo que hace esta función en MASM. ¿ Alguien tiene alguna idea ?
|
|
|
5904
|
Programación / Ingeniería Inversa / Re: Ferreteria Plus crack serial full GDS - Ingenieria inversa en proceso...
|
en: 7 Febrero 2010, 20:36 pm
|
La verdad, no uso el programa, pero quizás esto les ayude: 1) Ir a Administración-Configuracion-Diseñador Facturas Preimpresas. 2) En Factura "A" (si quieren cambiar las facturas), hacer click en Ajustar. Se abrirá el Editor de facturas. 3) Hacer click en Abrir (Ctrl+O) y buscar el archivo "factura.frf" (si quieren editar las facturas). 4) Una vez hechos los cambios, usar el comando "Guardar como" y guardar el archivo. 5) Para que el programa lo use, renombrar el archivo ORIGINAL con otra extension, y, al archivo recién creado, colocarle el nombre del original (en este caso factura.frf). Espero les sea útil... Saludos!
|
|
|
5905
|
Programación / Ingeniería Inversa / Re: Probando mi Protección
|
en: 3 Febrero 2010, 04:42 am
|
El tema es que al ser un lenguaje interpretado, hay muchas variantes, pero pocas opciones. Si corre en la VM, entonces se puede debuggear. Y asi termina la cosa. Despues, todas las protecciones terminan siendo sólo contra las "listas muertas" (Reflector, CFF Explorer, etc). La idea sería, quizás, implementar detecciones del depurador de IL. O incluso, hacer que crashee el mismo. Pero son ideas nomás... Por lo pronto, el protector está muy bueno! Saludos! Ah! La idea de la clave del registro que no puede ser borrada por Regedit, está buena. Pero te aconsejo poner un botón para limpiar la misma (al menos en esta versión de prueba)
|
|
|
5907
|
Programación / Ingeniería Inversa / Re: Probando mi Protección
|
en: 2 Febrero 2010, 07:05 am
|
Pues, comparado con el anterior, el avance es impresionante! Te cuento: usé Reflector para ubicar los opcodes malos. Con CFF Explorer los ubiqué en el EXE y los parcheé a NOP. Una vez reconstruido el método que compara los seriales, usé Calimero para sacar el serial correcto. Esta vez no hay MessageBox, pero si el serial válido para mi PC De todas formas, está genial . Saludos! PD: Me gustaría ver el fuente del protector...
|
|
|
5910
|
Programación / Programación Visual Basic / Re: Dll's en C++ incorporados
|
en: 30 Enero 2010, 23:24 pm
|
Hola!
La puedes incorporar como si lo hicieras con cualquier otra API. Defines la funcion/sub con Declare y listo.
Por supuesto, como dice Karcrack, al momento de compilar en C++ debes seleccionar la convención de llamadas STDCALL. Si usas CDECL (la que es por defecto) VB fallará al llamar a la función.
Saludos!
|
|
|
|
|
|
|