crackmes.one

wolverine2k's OldSoft's KeyGenMe #2 -- Upgraded from DOS by wolverine2k

Author:
wolverine2k

Language:
C/C++

Upload:
1:07 PM 03/29/2019

Level:
1

Platform
Windows

Description

Upgraded an old pascal based OldSoft's KeyGenMe #2 to work in modern Windows without needing the DOS emulator. Generate a KeyGen. No patching, please.

rebellion on 1:43 PM 04/08/2019: Just Another StrCMP crackme PS C:\Users\Rebellion\Downloads\5c9e187b33c5d4419da55648 .\oldsofts_keygenme_2.exe OldSoft's KeyGenMe #2 -- Upgraded from DOS by wolverine2k Enter your name: rebellion Enter a serial number: 21-1028 Good Job. You have cracked OldSoft's KeyGenMe #2 Press any key to continue . . .

Fsociety10 on 12:39 PM 04/14/2019: @rebellion how did you find it

DrSpawn on 11:03 AM 04/16/2019: Change 0000000000402D31 lea rcx,qword ptr ds:[4040A2] to 0000000000402D31 lea rcx,qword ptr ds:[65FDC0]

c0b01d on 1:13 PM 04/16/2019: OldSoft's KeyGenMe #2 -- Upgraded from DOS by wolverine2k Enter your name: c0b01d Enter a serial number: 15-481 Good Job. You have cracked OldSoft's KeyGenMe #2 Press any key to continue . . . And here is a keyGen I made: https://pastebin.com/6DTAw92U

Flyour on 2:55 PM 04/28/2019: OldSoft's KeyGenMe #2 -- Upgraded from DOS by wolverine2k Enter your name: abc Enter a serial number: 6-309 Good Job. You have cracked OldSoft's KeyGenMe #2

u_u on 12:15 AM 04/29/2019: @c0b01d's solution is near perfect. The first part of the serial in his keygen isn't correct. The corrected keygen is here: https://pastebin.com/6DTAw92U I would've loved to have written a writeup for it, but I wasn't smart enough to make it past the first part of the keygen.

u_u on 12:16 AM 04/29/2019: pasted the wrong link, here it is: https://pastebin.com/bhnFwP7F

th3_5had0w on 5:11 PM 05/03/2019: i put a breakpoint at: jz short loc_402D55 and edit the zero flag to 1 Is this count as a solution?

cubi on 2:34 PM 05/10/2019: Keygen: def serial (username): L = len(username) prefix = 3 * (L 1) + L checksum = (L * (L + 7)) // 2 + sum(map(ord, username)) # ^^^^^^^^^^^^^^^^^^ doesn't need to be calculated in sum return f"{prefix}-{checksum}"

cubi on 2:41 PM 05/10/2019: Note to self: crackmes.one ignores formatting in comments... Formatted code can be found here: https://pastebin.com/igMU6qmC

coyote_0x90 on 8:04 PM 05/20/2019: OldSoft's KeyGenMe #2 -- Upgraded from DOS by wolverine2k Enter your name: coyote_0x90 Enter a serial number: 26-1126 Good Job. You have cracked OldSoft's KeyGenMe #2 Press any key to continue . . . C++ keygen https://pastebin.com/2A3uWbfM

Farseer on 5:22 AM 06/04/2019: I just Got the Function From Ida Pro and I change last Line Code from return sprintf(v1, "%d-%d", 3 * (unsigned int)(v2 1) + (unsigned int)v2, v4); to std::cout 1) + (unsigned int)v2

Farseer on 5:26 AM 06/04/2019: Code : https://pastebin.com/xQuFEdTh Image : https://imgur.com/a/ofHaX9t I don't know why my comments not full save in post

markoto on 8:19 AM 06/21/2019: This is a nice easy keygen crackme.

juansacco on 8:57 AM 09/04/2019: Enter your name: juan Enter a serial number: 10-452 Good Job. You have cracked OldSoft's KeyGenMe #2 Press any key to continue . . .

Parad0x13 on 3:07 AM 09/05/2019: U: pikachu P: 16-790 First thing I noticed was that "\nGood Job. You have cracked OldSoft's" xrefd in 0x402cc0 The function 0x401560 generates the serial In that function we see that the format of the serial is %d-%d The function iterates through each letter in the user input However I wasn't really able to follow the logic well even though it's pretty simple