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 - TomaSs

#61
También está la posibilidad de descargar un pack completo desde la siguiente página:

http://radasm.cherrytree.at/download/

y como podemos ver abajo está para descargar "RadASM complete package" que hace todo lo que tu haces de forma manual.

Un saludo ;)
#63
Cita de: .:UND3R:. en  7 Junio 2012, 22:23 PM
Clic derecho-> Fill whit NOP'S (not operands)

Saludos

Correcto y eficaz
Estas hecho un gran fiera del OllyDBG ;) thx!

Cita de: Иōҳ en  7 Junio 2012, 22:51 PM
Hola,

Cuando me iniciaba en el reversing una noche estaba aburrido y me puse a modificar el buscaminas, nunca escribí nada de como hacerlo porque es muy fácil, te dejo el link:

http://www.noxsoft.net/2011/10/winmine-no-minas-time-lose/

Nunca aumenta el tiempo, y nunca pierdes xD.

Saludos,
Nox.

Parece muy interesante, en cuanto tenga tiempo le echaré un ojo.
Mil gracias!
#64
Hola compañeros!
Pues miren, he estado echando un ojo al hackeo del buscaminas, y el hecho de cambiarle el valor al "tiempo" es muy sencillo, pero me he metido con OllyDbg para hacer que directamente no incremente el tiempo, he encontrado la siguiente instrucción que es la que se encarga de incrementarlo:

INC DWORD PTR DS:[100579C]

Me he puesto a modificarla y he conseguido que el tiempo decremente en vez de incrementar, símplemente cambiando "INC" por "DEC" pero, habría alguna forma de que directamente se salte dicha instrucción? para que directamente ni incremente ni decremente, como sería?

Muchas gracias de antemano! ;)
#65
alguien podría resubirlo??? gracias!
#66
Ejercicios / Re: Formula o algoritmo???
30 Mayo 2012, 17:20 PM
pero por lo que puedo ver, ahí no usas para nada el número de nodo que busca, el m, es porque al final solo hiciste que diseñara el arbol en vez de buscar su fila, no?

de todos modos, no es mal trabajo, aunque me cuesta un poco verlo con tanto bucle anidado haha
#67
Eso no hay forma de hacerlo, lo que si puedes hacer es leerlo en forma de cadena (carácter a carácter) y posteriormente pasarlo a entero, ya que al leer carácter a carácter si que puedes controlar la pulsación de enter únicamente.
Una vez leída esa cadena, ya sería cuestión de chequear si se han introducido caracteres inválidos, etc
A! y el tamaño que podría tener esa cadena sería de 7 caracteres (6 + mas el fin de cadena), teniendo en cuenta los límites de los enteros, que van de -32767 to 32767 (incluido el signo negativo)

EI: juntando mensajes.

Aquí te va un programilla que te he hecho para sacar los números (de tipo double), después ya sería pasarlos a un array, lo cual sería tarea muy facil, y además con el entero que devuelve la función "obtenerNumero()" podrás controlar muy bien si los números introducidos son correctos ;)


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void leerCadena(char *, int);
int obtenerEntero(char *, double *);

int main(){
char cadena[7];
double numero;
int res;
   
       printf("\nIntroduce el numero: ");
leerCadena(cadena, sizeof(cadena));

res = obtenerEntero(cadena, &numero);

printf("\nNumero introducido: %f <<%d>>\n\n", numero, res);

system("PAUSE");
return(0);
}

//Función que leerá una cadena por teclado
//Recibirá por parámetros un puntero a char, el cual apuntará a la cadena a rellenar
//y el tamaño máximo que tendrá la misma. Como resultado, la cadena apuntada por el puntero
//contendrá la cadena de caracteres introducida por teclado.
void leerCadena(char * cadena, int tamano){
   
   int i=0;

   char aux; //Variable temporal en la que se irá guardando cada caracter introducido
       
fflush(stdin);//--->Limpiamos buffer
   
   aux = getchar();//------->Hacemos lectura del primer caracter, por si el primer
                        //caracter es el fin de linea (cadena vacía), para que
                           //se compruebe en el siguiente while
   
   while(i<tamano-1 && aux!='\n'){//---->Lectura de la "cadena" caracter a caracter, para así poder ir comprobando cada uno de
       cadena[i] = aux;             //los caracteres hasta que se encuentre un "retorno de carro" o se supere el limite
       aux = getchar();             //de caracteres de la cadena menos 1 (menos uno para reservar el último para el fin de cadena)
       i++;
}
   cadena[i] = '\0';//--->Agregamos el fin de cadena al final de nuestro vector de caracteres
}

//Función que transformará una cadena de caracteres en un entero (en caso de ser posible).
//Recibirá por parámetros un puntero a char, el cual apuntará a la cadena a transformar
//y un puntero a entero, el cual apuntará al entero en el que se guardará el entero (buscado)
//una vez transformada la cadena. Los parámetros de salida de la función serán 1 en caso
//de que el número sea correcto, -1 en caso de que la cadena de caracteres contenga algún
//caracter inválido (que no corresponda a entero), o 0 en caso de que sea vacío el entero.
int obtenerEntero(char * cadena, double * numero){

int tamano = 0; //Variable en la que se almacenará el tamaño de la cadena
int numPunt = 0; //Variable que contendrá el número de puntos (decimales) encontrados
char aux; //Variable temporal en la que se irá guardando cada caracter de la cadena
int res; //Variable que retornará la función

aux = cadena[tamano];//-->Comprobamos el primer caracter, por si el primer
                        //caracter es el fin de linea (cadena vacía), para que
                           //se compruebe en el siguiente while

//Recorrido de la cadena hasta que encuentre el final de cadena, o encuentre un
//caracter no permitido (distinto de un dígito o de .), o hasta que lea más de
//dos puntos (..), lo cual se considerará también cadena erronea.
while(aux != '\0' && (aux>=48 && aux<=57 || aux==46) && numPunt<=1){
if(aux==46){
numPunt++;
}
tamano++;
aux = cadena[tamano];
}

if(tamano == 0){//Si el tamaño es 0 la cadena está vacia (devuelve 0)

numero = '\0';
res = 0;
}else if(aux != '\0'){//Si no ha llegado al final, la cadena es erronea (devuelve -1)

numero = '\0';
res = -1;
}else{//En cualquier otro caso el número será válido (devuelve 1) y en el contenido
 //del double apuntado por el puntero "numero" se introducirá la cadena
 //transformada a double con atof()
*numero = atof(cadena);
res = 1;
}

return(res);
}
#68
Ejercicios / Re: Formula o algoritmo???
30 Mayo 2012, 13:37 PM
¿Como lo veis? a ver si alguien podría aportar algo más matemático, en caso de que fuera posible ;)
#69
Ejercicios / Re: Ejercicios de la Universidad
30 Mayo 2012, 13:36 PM
Pues aquí te dejo un rar con casi todas las prácticas de 1º de Ingeniería informática (c++) de mi universidad (Universidad de La Rioja).

http://www.mediafire.com/?iw3r8gl96z0l0v7

Espero que te sirva ;)
#70
Pues en el primer switch(menu) te falta el break en el case 1, creo que puede ser por eso ;)