hay que dar en el clavo...

Iniciado por TymbuCai, 3 Julio 2005, 00:45 AM

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

TymbuCai


Hola...de nuevo disculpadme, solo que me siento, como si fuese el último eslabón de la Ingienería Derecha; devería promocionerse más ésta gratificante y fructífera carrera. ;)


Bueno, no más, acabo de comenzar mi 4º reto y  ya  estoy  tíos;  practicando  " puenti,  colgao" o más bien esquiando, no se si en el  L´Albaron, Pointe Platte des Chamois, Pointe Marie / Punta Maria, el Himalaya, o el Everest...

Solo espero de vosotros los "GURUSSSS ", que no me dejéis abandonao  de cualquier manera;  igual que hizo el "MINISTRUCHO  de  Trillo" si, (el  que  premiaba  a  las periodistas con  1 euro), por dar en  el  clavo  con la   pregunta;  el mismo que mando empaquetar  los restos de nuestros militares, "como si  de  paquetes  de   rebujina    se tratara";  el  mismo  que  no  tiene   dos   deos   de   vergüenza   y  la   jeta,  la  cara   más   dura  que  el  hormigón  armao........ Así a salio, y la verdad es,  que me siento  mucho mejor...



                                      Backup4all 1.5.0

Tras chequearlo con el Lenguaje; presenta las mismas características que el tuto. 

Abro el programa con el DeDe,  y  me encuentro, primeramente  que el número  que pertenece a la:   btnRegisterClick; es otro al del tuto,   004B7534  me digo pues bien, vale, seguiremos adelante:

Cojo la olla, abro al  menda, localizo la dirección, le doy el correspondiente kosky  (bp),
F9 Run  me sale el programa y busco al pringao (hes register),  pidiendonos  que  amoquinemos  los  urdeles o la pringá;  may  name  is, XXXX, purche  number  is, XXXX, number de  register key  is, XXXXXXXXXX, hay que ver eh, - sorry tío-" tampoco es pa ponerse así";  bueno  sigo,  click aceptar  y,  caigo en pleno coco (el bp); y dice el tuto,  ahora traceamos con F8 y:

F8:  una, dos, tres, cuatro, cinco, seis, siete y; vuelvo a la cuarta dirección contando la del kosky (bp), ahí estoy enrollao dando bueltas...

No tengo dudas en cuanto a la v 1.5.0 - 2.26 mb...
qué está ocurriendo?....
qué he de hacer?...
qué sucede, creo que no hierro en ningún sitio?...
por qué no puedo seguir adelante?...
etc. etc. etc......


Amablemente os ruego GURUSSSS,  prestéis  vuestra  sapiencia...GRACIAS.

4rS3NI(

Buenas

Citar...tras chequearlo con el Lenguaje; presenta las mismas características que el tuto... 

Usa PEID el language es muy viejo

Citar...abro el programa con el DeDe,  y  me encuentro, primeramente  que el número  que pertenece a la:   btnRegisterClick; es otro al del tuto,   004B7534  me digo pues bien, vale, seguiremos adelante...

004B7534 no es más que la dirección en memoria, pueden variar de pc en pc, lo que importa es que estés en el evento correcto en el DeDe (btnRegisterClick)

Citar...Cojo la olla, abro al  menda, localizo la dirección, le doy el correspondiente kosky  (bp),
F9 Run  me sale el programa y busco al pringao (hes register),  pidiendonos  que  amoquinemos  los  urdeles o la pringá;  may  name  is, XXXX, purche  number  is, XXXX, number de  register key  is, XXXXXXXXXX, hay que ver eh, - sorry tío-" tampoco es pa ponerse así";  bueno  sigo,  click aceptar  y,  caigo en pleno coco (el bp); y dice el tuto,  ahora traceamos con F8 y:

F8:  una, dos, tres, cuatro, cinco, seis, siete y; vuelvo a la cuarta dirección contando la del kosky (bp), ahí estoy enrollao dando bueltas...

Pues, por lo que veo, voy a suponer; puede ser que  al volver siempre al mismo bp sea porque te encuentres en un loop, que el programa usa ya sea para ir generando un número o para, directamente, ir comparando. Lo que me hace pensar esto es que te pide:
may  name  is, XXXX, purche  number  is, XXXX, number de  register key  is, XXXXXXXXXX
Entonces lo mas probable es que use tu nombre y ese "purchase number" para generar el serial.
Especifica un poco más y vemos  :D

Saludos





TymbuCai

Hola....

Muy bien, una cosa más  pa  la mochila, - la dirección de memoria  se puede ver afectada según la PC.

No,  no  hay  error,      name unidad:  FBackupRegistrat... 
                                  name clase:    TfrmBackupRegistration
                                  eventos:         btnRegisterClick             RVA: 004B7534

De seguro es lo que piensas y supones, pues el tuto nos dice: ahora  traceamos con F8 un largo rato, nada interesante solo como aparece nuestro nombre número de compra y serial en la ventana de registro del Olly...

O sea, "que del tirón", no más localizamos la dirección, damos el primer kosky (bp),corremos F9, nos sale el programa y buscamos al pringao – help->register; nos aparece éste reclamandonos la plata,(la que se llevo Colón, digo yo), nos registramos –aceptar-, y la Olla rompe en el único hasta ahora, Bp...esto es lo que tu comentas, que desde el principio, ya empiezan a cocerse  las habas,  no?...solo que es en el siguiente paso, -al caer en el bp-, y comenzar a tracear F8 cuando no me es permitido, pasar de la dirección 004B7541, que corresponde a la siguiente instrucción (JNZ    SHORT Backup4a. 004B753C)......

Decirte que no, no es que me devuelva al bp; vamos a ver si me explico mejor,(a partir del tercer clic F8, comienzo a tracear), las cuatro direcciones siguientes forman parte de un corchete a su izquierda y son:

                                           

                         PUSH  0
                         PUSH  0
                         DEC  ECX
                         JNZ  SHORT  Backup4a.004B753C

                                           
aquí, entre éstas cuatro  instrucciones  es  donde me veo y  me  queo  dando más vueltas que un recluta en el barrio chino...del Push, al JNZ y viceversa, tampoco me permite entrar en alguna de las cuatro con (F7), así que no me deja seguir adelante y en cuanto al salto na, osea, que salto menos que un sapo cojo...

Por lo demás, no se lo que es un loop, aunque por lo que dices, pienso, puede que sea lo que me está sucediendo o más bien, las cuatro instrucciones de marras en el corchete no?...

No pretendo ser responsable de robarle el tiempo a ningún GURUGURU, y es por lo que doblemente te ruego  me disculpes   4rS3NI( ;  si crees conveniente, si quieres echarle un ojo (no hace falta que le eches los dos), aquí, te dejo el linck donde puedes bajar al "menda",  http://debian.sk/pc/utildisk/ , (b4all150.zip), por cierto, no "duro de pelar", más bien de encontrar ya que hay versiones mas modernas ...


Un gran salu2 GURU...........................


P/D: Hay que modernizarse tío, GRACIAS.

4rS3NI(

Buenas

Si es un loop. Fijate como antes del:

                         PUSH  0
                         PUSH  0
                         DEC  ECX
                         JNZ  SHORT  Backup4a.004B753C

Hay un mov Ecx, 44. Entonces ecx va a funcionar como contador, y cada vez que pases por Dec ecx el valor de este registro se va a ir decrementando en 1 hasta llegar a cero. O sea que vas a tener que hacer el loop 44 veces (si te fijas, lo que hace es llenar la pila de ceros con los push 0, o sea que la va preparando para algo...  ::)). Para evitarte molestia, directamente poné un bp despues del jnz y dale f9.
Perdón por no ayudarte más pero en mi máquina se casca el olly y empieza a joder con eso de "el programa no respondio en 5 seg..."

Saludos, y ya nos irás diciendo cómo te va  :)



pERICOTE

#4
En este programa obtener el serial es sencillo, aunque hay que tener mucha paciencia con el traceo (F7 y F8) y no saltarse una de esas benditas calls donde se cocina todo. Sin necesidad del DEDE llego hasta 004B7534 (método del cangrejo) traceo con F7 las calls y con F8 las demas instrucciones; cerca nos topamos con un loop que con paciencia lo pasamos y seguimos adelante. Para trabajar sin problemas podemos poner BP directamente a 004B7547. Desde 004B7547 hasta 004B75D1 esta todo el tema, para conocer como se genera el serial es necesario entrar en todas las calls e inclusive las sub calls, ya que si se nos escapa una, podemos perder datos preciosos. La esencia del algoritmo esta en que el serial es de nada menos de 32 digitos que se genera con los siguientes datos BACKUP4ALL SH 140B4A pERICOTE (el nombre) 151515 (el otro dato), los cuales convertidos en mayusculas, luego de un entripado de bites genera el serial en la direccion 004B6438. Para hacerlo mas facil poner BP en 004B7543, luego en 004B5F63, reiniciar, despues dos veces F9, a partir de alli un BP en 00404D6F (no antes) F9 y pum, alli esta tu serial, comparado con el chungo (989898989898). Saludos.  ;D Espero que haya servido de algo.


TymbuCai

Hola...


Correcto, se trata de un loop;
La instrucción anterior al mismo, -mov  Ecx, 44-, dice que el movimiento, es de 44, y que ECX actúa como contador; que se iran decreciendo en 1 al pasar por - DEC  ECX -,  hasta quedar cero, y que con  los push se va llenando la pila de ceros.

Correcto, -no más llegar al 2º Push, se crea una fila de ceros y en Dec  ecx, se crea una 2ª- por consiguinte, por cada paso se crean dos columnas  de ceros en la pila...

Ahora digo yo:
                       como es que queda el valor en cero, si pa  -salir del loop- he tenido que pasar 68 veces por el contador, Dec  Ecx?, (hasta entonces,no me ha permitido salir del loop),  en éste caso, el valor debía ser -24 no?...no se; puede que mi  contador está  averiao,  y  por  eso  me hace  da 24 vueltas más?...


O sea, que el guiso comienza a hervir del tirón no?...

Supongo que los loop, aparte de restar, harán muchas más operaciones, no?

También  comentas, que dé un  kosky  (bp), en la siguiente instrucción al salto (JNZ ),
este es un PUSH  ECX, (que como observo, tiene que ver algo con el contador?), después Run F9, y así, abreviaríamos o cortaríamos camino no?...

Procuraré  las dos sendas, que siempre es más gratificante ver todos los paisajes y no dejar nada atrás.


Bueno por lo pronto, GRACIAS, de nuevo 4rS3NI( , ya que es muy importante que la mochila siga cogiendo peso y nunca  actúe como la  instrucción  DEC  ECX, en éste caso...


P/D: Un gran GURU como tu, debería ir montado ya en otra "burra"... :)

        Camarón que se duerme,..................se lo lleva la corriente. ;D


TymbuCai


Hola  pRICOTE, tas pegao un descanso sabatino, no?...


Lo del sodels, aún era  pronto y creo honestamente que lo sigue siendo hoy, aunque no soy partidario de lo fácil, tampoco  tengo  coco,  pa   partir  muros  de  hormigón...weno, fuera guasa, lo siento y te agradezco tu wena  voluntad...

Vamos a ver, dices que obtener la fecha de comunión de éste menda, es fácil; paciencia con el traceo (F7 y F8) y no saltarse una de esas venditas  Caals  donde se cocina todo...

J3, J3, J3;  tú   tes   tas   queando   conmigo   tío...

Tú,  me,   imaginas;  traceando  con  F8  las instrucciones,  y  con F7,  las  calls  donde  se cocina el  potage?..........Pues mi lié, y no te digo ná, no sabría  decirte en cuantas Calls entre, hasta que di con esta instrucción (00403D90C     OR  SI,  SI),  que  me resulto extraña y pensé; esta, lo que me dice es –que si, si- que ya es hora que me vuelva pa tras, o sino, termino colándome en la cocina  del  Bush-rrooo, "no, de éste no",  pero en la del difunto Mao, seguro que -sí;  que sí-, que me hago mas famoso que el Arguiñano visitando toas las cocinas del mundo, y  lo mismo,  me cuelo en China, Australia, Irán, la India, que aparezco por un boquete en Pernambuco...

Tu lo ves fácil, yo, como los demás, al principio me resulta un tanto complicao. Lo que si he observado antes, es que si entramos en una call F7, y seguimos traceando F8, en la misma, aunque reiteremos los pasos, (entrando en subrutinas) cuantas veces sean, siempre como nos comentó el GURU   4rS3NI(,   encontraremos  una variante o un Rent que nos hará volver a la siguiente dirección de la  Calls anterior, y así sucesivamente cuantas veces  repitamos  los movimientos...( supongo que esto, debe ser interesantísimo cuando se sabe  el valor, comparación u orden que manda cada instrucción...No me veo preparado para tal empresa aún.

Bueno fuera guasa, sobre el método del cangrejo, ( encontrar la dirección buena –btnRegisterClick,   004B7534- sin usar el DeDe).....si no he entendido mal, el proceso es el de ir entrando F7,
en las call dudosas (y sin dejar una atrás), "puesto que se perderían  importantes datos", y así sucesivamente en subratinas y todo no?...

Luego dices:
                  ...cerca nos topamos con un loop que con paciencia lo pasamos y seguimos adelante.

Pues la verdad que hay que tener paciencia, aparte de  la  explicación del GURU, como habrás visto, y que tu sabrás también perfectamente;  hay un mov Ecx, 44, por lo que Ecx funcionará como contador y cada vez que pase por DEC  ECX en el loop el valor del registro decrecerá en 1 hasta llegar a cero. Pues aquí tengo también mis dudas...
Si has leido mi respuesta a 4rS3NI(...

               68X2=136, son los valores que en la pila quedan convertidos en cero.
               Comienza  en:     0012EF38   /   0048229C
               Y termina  en:     0012ED1C  /   0012EEBC

Talvez,  no tenga importancia pero es lo que me sucede a mí.

Bien pRICOTE, supongo que el algoritmo es todo lo que encierra la creación del serial o más bien, lo que se va generando en el transcurso de la operación, con esto, es con lo que terminas el post no?...


Bueno, GRACIAS,  una  más, me alegro de verte nuevamente por aquí GURUGURU.....

4rS3NI(

Buenas

La razón por la que, a pesar de que en ecx tengas 44, hacés 68 veces el loop es porque 44 en hexadecimal equivale a 68 en el sistema decimal que es en el que contamos los humanos jeje

Ahora te doy una ayuda que podés tomar o dejar porque o te va a ahorrar muchos pasos, o te va a perder más

Luego de poner el bp en la dirección que te da el dede (la de btnregisterclic) corres el programa, rellenas los datos y le das al register. Cuando el olly pare pones un bpx  CallWindowProca y le das al f9, eso te va a llevar a la rutina que se encarga de sacar el largo de tu nombre, del número de compra etc. Esa misma rutina se usa para extraer tu nombre pero esta vez llamando a WM_GETTEXT y no a WM_GETTEXTLENGTH como la anterior. Así que si le vas dando f9, vas a ir viendo como se obtienen las distintas cosas
En fin, a partir de ahí a perseguir el serial  :P

Saludos

TymbuCai


Mas  vale  tarde  que  nunca...  Va  por  vosotros  GURUS...


Bueno vamos a ver que tal  se me  da   preparando  un   guiso  con  este  PRINGAITO,  vamos  allá;  quien dijo miedo?...



Bien, abro  la Olla y, meto al menda, en este caso,-Backup4all.exe-, a continuación, la coloco en el fogón, (ctrl.+G), escribo  la dirección buena 4B7534, y enciendo la candela (Ok), y por lo pronto la dejo a fuego lento...
Bueno como todo buen  APRENDIZ  a  cocinero, me he provisto de todos lo avíos, así que manos al  guisito  de  un PRINGAITO.
Una vez que ya  tengo  en  la Olla,  la  dirección,  le  añado  del  tirón,  3,1/4,Kg. de trompitos, (garbanzos, no vamos a guisar trompos no?); o sea,  (BP), y le  doy un  pelín, más de fuego (F9), la Olla, comienza a  bullir,  y a todo esto, como no;  me   aparece el menda   con  la  facturita  exigiendo el "pacné,  que  arríe  el  monimoni"  del  plato,   del  guiso o  el  menú;  "dice; que él no entiende de barcos",  y  que  le  digo  yo; "que  yo  menos  de  barquillas", (Help-Register);   y,   pongo lo siguiente:   

Rgistr.name:  eltyto;    Purchase number:1313;    Registratión Key(s): 1313131313, clic, (Register); observo  la  Olla  y  veo  los  trompitos,  bullendo  en   movimiento, (caigo en el BP). Ahora, repaso todas  las  recetas  a  mi  vista, (las instrucciones),  con (F8),  detenidamente;  y  nada  más  empezar,   veo  un  mov  Exc  44, que  antecede  un  -loop-, por lo que  -Ecx-,  va  a   funcionar  como  contador,  así,   cada   vez  que   pase  sobre  Dec  Ecx,  el  valor de  éste  registro, decrecerá  en  1, hasta  quedar  en  cero (0), por lo que  he de  recorrer 44, veces  el  loop; (que  serán  68,  su  valor  hexadecimal), y  si  me fijo en  la  pila,  observo,  como  se va   llenando  de  ceros  al  paso  por  los  push 0; o sea,  que  esto  no  quiere  decir  otra  cosa  más,  que  algo  se  está   cociendo  y  que  el  guiso,  ya,  se  está,  PREPARANDO.
Para un buen  APRENDIZ  de  las  ARTES   culinarias, es  muy  importante  mirar  y  repasar  todos  las  recetas,  (instrucciones),  que  no quede  nada interesante detrás; todo  esto, despacio,  sin prisas,  buscando  algo  que  le de ese  toque  o  punto especial, que  busca  todo  maestrillo  en  los  librillos, (callXXXsalto), que  genere  ese  aroma especial, autentico.
Bueno,  esto  se va  cociendo  a  la  vez  que  adquiriendo  mi   toque  personal,  (mis datos),  ( ASCII  "DMC";   ASCII  "1313";   ASCII  "eltyto")etc. Hasta que me encuentro esto:

4B75CC   .FF52    OC          CALL  DWORD  PTR  DS: [ EDX+C]
                                              TEST   AL,   AL
                                              JE    BACKUP4A, 004B7ADA

Como veo,  que esto es bastante  sospechoso,   pues le añado 1,¾ kg  de ternera (BP), doy  un poco más de fuego al fogón (F9), y  de  nuevo   el   menda   lerenda  con  la facturita  de  los  cojones  ( Invald  registration  name,  bla, bla, bla),  poo,  vale  tío, (eceptar), y nos sale de nuevo el registro, no es pesao el nota, vale  kolegui,  (Register), y  la  Olla  rompe  a  hervir  con los  trompitos, (primer BP); a continuación, aflojo  la candela (F9), y  la Olla rompe de  nuevo, ésta vez  en  el  segundo  (BP), 1,¾ kg de ternera, y  ya  puesto,  voy  a ver como  anda  de cocida  la carne,  para  ello  la  he  de trinchar con (F7);  que es lo que veo  después de este tiempo de cocción?  Pues   muy bien, veo que esto, cada vez está más caliente  y  encuentro  un   punto  de   gran  ebullición  en:

4B5F53    . FF56  10             CALL   DWORD   PTR   DS: [ ESI+10 ]
                                               TES   AL,  AL
                                               JNZ    SHORT   Backup4a. 004B5F71

Pues  aquí, es donde voy   a  añadirle,  ¾ kg  de panceta,  cuatro manitas  y  media cara de cochinillo, y  un  par  de  jabuguitos, "un autentico" (BP),  subo  un  poco mas  el  fuego del fogón  con (F9), y de nuevo, aparece el,  JUANCOJONES, con la facturita, que siiiiiii,(aceptar), otra vez los datos, vale pringao, clic, (Register); a continuación,  aflojo otra vez el fogón en (F9), hasta  que  doy  con  la  panceta  (4B5F53, y  entonces  haré  igual que  con  la  ternera, la  trinchare  con  (F7), y  en  su  interior,  caigo  en, 4B6888  PUSH   EBP, aquí,  continúo  indagando, y  muy  cerca,  veo  un  primer  punto de ebullición,  que  no es  interesante, aunque  no muy  lejos,  se  desprende  muchísima  calor  en  la:

4B68B2   .  E8  55F9FFFF                CALL  Backup4a. 004B620C
                                                           MOV   EBX,   EAX
                                                           XOR    EAX,  EAX

Ahora, después  de llevar un tiempo la  carne y los  trompitos  hirviendo, le añado la verdura, 1,1/4kg,   de calabaza, 1/2kg, habichuelas verdes, una cabeza  de ajo,  dos pimiento verde  y  una  cebolla grande, el pimentón y sazonar,  peazo de (BP),y  como  siempre  vengo  haciendo,  le doy  mas  fuego  al  fogón  con  (F9), y  como  siempre,  el  menda  del  platito, -ya  kea  meno,  cojone-  (aceptar-register),  destapo  la  Olla  que   hierve  de  nuevo  y   veo  la  ternera,   primer  (BP),  aflojando  la  candela,  poco  a  poco, voy observando coma  pasan los avíos hasta  que  la  verdura  quede  a   flote, último (BP),  la miro, por  si está tierna, (F7),  y  caigo  en   004B620C    &    55     PUSH  EBP, desde aquí,  reviso  la  lista  con (F8), sin desesperar y comienzo a  ver  que el  peaso  potaje  este, está  casi  listo;  veo  como  ha  adquirido  mi  toque  personal;  y  que  ya  huele  que  alimenta;   y  me  digo  que  aquí  hay   de  sobra;  y    pa  cuando  aparezca  el   PRINGAO,   con  el  platito  en  la  mano,  endinñarle  la  media  cara  de  cochinillo,  un  par  de  casito de  trompitos  y  por  pesao;  el  kosky  y  la  pringá...


                            2J9FA..5JX5B8..BS56LNS2NS..AC56M


Bueno en primer lugar,  GRACIAS, a  pERICOTE  y  4rS3NI(,  por  la  atención  que  me habéis  brindado  animándome  y  alentándome  siempre  en  lo  posible;  sin  vosotros, esto,   en  vez  del  guiso  del  PRINGAO,  hubiese  sido  una  ensaladilla  rusa   preparada   por  un  indígena  de la tribu  yanomami.   



P/D:  Se  le  puede  añadir  un  par  de  clavitos... ;D


pERICOTE

De solo leer se me abrió el apetito, je je je, a la mela con la dieta. Muy bien TumbyCai lo has logrado sigue adelante, a ver si nos traes otro reto para seguir aprendiendo todos.