omniarepair on 2:50 PM 03/30/2019: same here cant seem to get it work on windows 8 neither
kalipo on 9:53 AM 03/31/2019: The correct key is '?'
kalipo on 9:56 AM 03/31/2019: Actually the code just checks if the first character is ? the rest are ignored. So the answer is ? followed by anything
Moltivie on 8:16 AM 05/17/2019: When Ghidra comes in...
http[s]://im[gu]r.c[o]m/a/6hM8a9K
evilprogrammer on 5:27 AM 07/16/2019: the answer is in this line:
DIV ECX
the line above means like this EDX
Parad0x13 on 3:28 AM 09/05/2019:
License: ?
"Congrats! This license is valid!" string easily found and xrefd only at 0xbf26c8
Analyzing the decomp for this function I see that:
len(license) % 0x3c must equal 3
license must be larger than 0x2a
license must be smaller than 0x48
This can be easily found with the following python:
for n in range(0x2a + 1, 0x48):
if n % 0x3c == 3: print(chr(n))
juansacco on 8:53 PM 10/04/2019: The crackme only checks for the serial to start with ?
Does not check for size, smaller or larger than, so some of the explainations here are wrong.
xor edx, edx ; Logical Exclusive OR
mov ecx, 3Ch ; '
juansacco on 8:53 PM 10/04/2019: ENTER LICENSE: ?
Congrats! This license is valid!
hareega on 4:18 AM 05/03/2020: a character % is equal to 0x03 between 0x2A and 0x48
PowerShell solution :
❯ For ($i=0x2A ; $i -le 0x48; $i++) { if ( $i % 0x3c -eq 0x03 ) { Write-Host ($i -as [char])} }
maxicek on 1:20 PM 08/01/2020: well, thought it would be harder.. :D
https://pastebin.com/rKXieuzw
NCP on 8:19 AM 10/17/2020: What does the program do with those weird byte chains in main?
DasGamerPro on 10:24 PM 12/07/2020: I patched it sorry you can show me how to do it with no pathing?