downloadbrowseHMX0101's Secretme #2

Download secretme#2.zip, 12 kb (password: crackmes.de)
Browse contents of secretme#2.zip

=====================
HMX0101's Secretme #2
=====================

This is my new crackme with a
easy algorithm but a little bit long :D

To beat this crackme, you need:

- Unpack it!
- Try to make it works in your computer
- Make a keygen/patch to insert your data
inside the crackme to register the crackme
- Write a tutorial

Rules:

- Patching the goodboy jump is not allowed.

==========
Greets to:
==========

TWiST, dila, moofy, ScR1pT_, Ank83, KLiZMA, Kerberos,
R.E.M, CracksLatinos, and all members in crackmes.de

===============
Regards,
HMX0101 / R.E.M
===============

Difficulty: 1 - Very easy, for newbies
Platform: Windows 2000/XP only
Language: Unspecified/other

Published: 20. Apr, 2006
Downloads: 1127

Rating

Votes: 5
Crackme is good.

Rate this crackme:

Send a message to HMX0101 »

View profile of HMX0101 »

Solutions

Solution by br0ken, published 24. oct, 2007; download (39 kb), password: crackmes.de or browse.

br0ken has rated this crackme as awesome.

Submit your solution »

Discussion and comments

TQN
04. Apr 2006
Easier than Secretme #1, but still hard for newbie like me.
TQN
04. Apr 2006
This crackme will be solved when the computer name is: "HMX0101". Did you test your crackme all another computers when GetComputerNameA -> some functions in strenc.pas -> must be equal with "1075411813". I think the unique key is "HMX0101".
HMX0101
Author
04. Apr 2006
no the key is different for each computername :)

example:
if you computername is aabbcc the key is 1575118436

the idea is modify the strings in the crackme to show the goodboy message :D
indomit
14. Apr 2006
I solve it. But I only replace string "HMX1011" to name of my computer (of coz I change the length too ;)) in *.exe. I do not change the key, stored in the same place. I think it have another solution: There is a need to replace machine-depend key, and not change computer name. Is that so?
HMX0101
Author
14. Apr 2006
you need to change the computername and the key :)
indomit
15. Apr 2006
For what? %) I trace th prog, and I see that it satisfied by only one check %) it check computername and jump to congratulations %)
indomit
22. Apr 2006
Now another trouble:
Are you sure that your prog can be patched for computer with name which length 1 or 2 chars?
I mean if (length(ComputerName)<3).
I change the name of my comp to "F", patch the prog, and after run, it show exception "divizion by zero". And the same with computer name such as "AC" or "FF". But if length(ComputerName)>2 and <16 it work normal...
BugHunter
24. Apr 2006
Hey HMX0101, is it okay if I put this one up at REM page too?
HMX0101
Author
24. Apr 2006
BugHunter:
Sure, you can put in REM page :)

indomit:
no, it only works with computer name length > 3 :(
l0calh0st
24. Apr 2006
No one has submitted solution ...What do you want in solution...it must be patched(if you don't want to change computer name like me :))....then i can make a keygenerator for finding key for a username...
TDC[NL]
24. Apr 2006
Yeah, finding a key for a specific computername is relatively easy if u spend some time.

But if you patch the exe someone who runs the target still has to change his own PC name to the one that's patched inside, so is patching that part allowed HMX0101?
HMX0101
Author
24. Apr 2006
the only that can be patched is the computer name and the key for the computer name inside the crackme :)
BugHunter
24. Apr 2006
So the end user who downloads a solution will have to change his own PC name to see the solution working?
HMX0101
Author
24. Apr 2006
No, you need to make a keygen for generate a serial for your computer name and a patch for change the name/serial inside the crackme...
BugHunter
25. Apr 2006
Yes, and you have to fool the GetComputerName API so after it's called the memory of the crackme will be changed to the right PC name?
DigitalAcid
15. Oct 2007
I patched 1 compare and it said it was registered for my computer name (that same compare also checks the key).
I don't think it's a right solution, but it works :). I would call it a "selfpatch" since the crackme is already gathering all the info...

=>
- Make a keygen/patch to insert your data
inside the crackme to register the crackme
br0ken
15. Oct 2007
@Digital Acid, I did the exact same thing ;) Algo is HUGE!
br0ken
15. Oct 2007
It's also got custom code for finding computer name.
GetComputerNameA doesn't show up in the search.
DigitalAcid
09. Nov 2007
My own patched file doesn't work anymore and I did exactly the same as you before I read your tutorial.
Mine used to work though, but it seems it's crashing now because it's trying to divide by zero (ECX == 0).
I don't know why... but apparently it thinks my computername is now "0" and i didn't change it at all O.o.
HMX0101
Author
09. Nov 2007
Crackme only works with comp-names bigger than three chars, read previous comments... ;)
DigitalAcid
09. Nov 2007
My computername is 8 characters long...
HMX0101
Author
09. Nov 2007
None algo is perfect, always have problems/bugs... i think a good idea would be make a keygen and check if name can be used to register crackme ;)
br0ken
10. Nov 2007
@DigitalAcid, I (again) tested my solution with computer name* = 7,8 and 14 characters. It worked on all three occasions. I tested my patched file too. It works irrespective of computername* length. Olly didn't raise any exceptions either ;) What seems to be the problem?

* = All computernames are assumed > 3 chars.
br0ken
10. Nov 2007
It is quite possible, some computer names may not have a key. As HMX0101 said, maybe serial algo is flawed? Change your computer name and see if it works.
DigitalAcid
10. Nov 2007
But it used to work and now that i try it again, it doesn't work anymore.
I don't know what it is, but it's probably my pc again.
It's always possible that the algo is buggy of course, but I think that's not the case here.
I tried it with another computername now and still the same problem.

There are 2 divisons (IDIV ECX) and since ECX is 0, i get an exception.
When I nop those 2, I get this:


Registered to: 0
Thank you for registering

You may leave your comment, thoughts and discuss this crackme with other reversers here.
Acting childish will not be tolerated.
HTML and such will be left as-is, so don't try.