\_________________________ | Crack de Xara3d _/ \_____________/--------/ / / \_/ / / /___/ Ben oui je suis sous $ et sous linux .... Bon je pense comme meme aux utilisateurs de kro (mais non poa la biere ;) alors j'ai fait un little tutorial tres simple, alors pour commencer il nous faut - Softice 3.xx - Windasm 8.9 - HexWorkshop On lance Xara3D, des le demarrage une boite nous demande de nous enregistrer, ça commence bien ! On clique sur continue, et la on peut voir, en fond d'ecran X3D DEMO, encore mieux, on continue à regarder le logiciel, et on peut (encore une fois) apercevoir dans le menu HELP, Unlock. Alors, recapitulons : un nag screen, un fond d'ecran et une boite ou l'on peut s'enregistrer, ca fait beaucoup tout ca ! - On va commencer par le nag. On lance X3D, le nag apparait et la attention c'est violent ! On fait surgir SoftIce (ctrl+d), on tape hwnd, une liste apparait, on regarde celle qui sont referencer a Xara on localise la premiere zone "Button" et on met un bmsg des- sus, donc je disais bmsg numerodupremierboutton 0202. ATTENTION ! Regarde bien si "button" appartient a Xara ! Normalement ici c'est pas trop dur meme le reste ne le sera pas. On sort de SoftIce, et on valide en appuyant sur " Continue " et la, normalement SoftIce s'est declenche. On appuie plusieurs fois sur F12, au bout de 13 fois, la boite a disparu, c'est donc qu'il faut appuyer 12 fois, logique non ? C'est pour arriver a la fin de la routine du nag, pour localiser, le call qui nous envoie justement cette boite ! Au bout de 12X si tout va bien on doit apercevoir : :0040F650 83F801 cmp eax, 00000001 :0040F653 C68424B404000003 mov byte ptr [esp+000004B4], 03 :0040F65B 8D8C2448010000 lea ecx, dword ptr [esp+00000148] :0040F662 7447 je 0040F6AB ... On trace avec F10 jusque : 00412EF8 :00412EF0 56 push esi :00412EF1 8BF1 mov esi, ecx :00412EF3 E8D8BEFFFF call 0040EDD0 :00412EF8 8BCE mov ecx, esi { On est ici } :00412EFA E831FFFFFF call 00412E30 :00412EFF A148DD4900 mov eax, dword ptr [0049DD48] :00412F04 6821010000 push 00000121 :00412F09 6A00 push 00000000 :00412F0B 6A00 push 00000000 :00412F0D 8B401C mov eax, dword ptr [eax+1C] :00412F10 50 push eax ... Tiens c'est bizarre, nous on arrive en :00412EF8, et pourquoi pas au debut, c'est qu'on est deja passe par la ???? Et si on mettait un bpx en 00412ef0, pour voir ou cela nous mene. On lance X3D, on valide le nag et on appelle SoftIce pour mettre notre bpx. On sort de SoftIce on va dans help, ... unlock et bingo ! SoftIce se lance on trace avec F10, tiens SoftIce, s'est interrompu en :00412ef3 on appuie sur F4 pour faire un aperçu de l'écran et on peut constater que le nag screen apparait, c'est bon on le tient ce programme on patch ce call par des nops. On relance le prog, oh, c'est quoi le nag, est toujours la ! On continu on va dans unlock et la on le voit plus ce nag ! C'est qu'il doit y avoir un autre appelle du call 0040edd0. On rentre dans le call avec Windasm tout simplement et on peut y voir : * Referenced by a CALL at Addresses: |:00412C88 , :00412EF3 ... On a deja ete en :00412ef3, alors on va dans l'autre, on trouve le call et on le patch en mettant EB 18 90 90 90, mais pourquoi, tout simplement, parcequ'il permet de continuer la routine tant dis que s'il y avait eu que des nops le programme se serait arrete, faites le test ! Et maintenant, pourquoi Unlock a disparu tout seul, tout simplement, parceque 0040EDD0 n'a plus aucun lien, et il utilisait seulement ce lien alors voilà, c'est logique non ? hackvador@caramail.com