| Anti Crackme |
[Click to reveal]It reverses the string, applies ROT9, and converts it to binary.
|
2026-09-05 14:52 |
| CrackMe4 |
[Click to reveal]unsigned int genSerial(const char* Nickname, unsigned int code) {
unsigned int var1 = 0x97829737;
int iVar4 = 1;
int iVar2 = strlen(Nickname);
while (iVar2 + 1 > iVar4) {
var1 = var1 ^ (Nickname[iVar4 - 1]);
var1 = var1 * 0x5bd1e995;
var1 = (var1 << 5) | (var1 >> 0x1B);
var1 = var1 ^ code;
++iVar4;
}
return var1;
}
int main() {
char Nickname[64] = {0};
printf("Enter a nickname: ");
scanf_s("%63s", Nickname, sizeof(Nickname));
unsigned int Num1 = genSerial(Nickname, 0x55AA55AA);
unsigned int Num2 = genSerial(Nickname, Num1);
printf("%X-%X\n", Num1, Num2);
system("pause");
return 0;
}
|
2026-08-31 12:21 |
| Encrypted Password |
[Click to reveal]Interesting crackme.
All translated strings using keygen:
Enter the password:
Password
Incorrect password
This is correct :)
Password: Password\0
|
2026-08-28 17:27 |
| FirstCrackMe |
[Click to reveal]It receives a command-line argument and checks the string using compare.
Code: 263132
|
2026-08-25 14:58 |
| UltraSec |
[Click to reveal]5b9c2b756e6d250dd780302802b5666590f1cfe32769ebbd26ddf4d65c6fad84
|
2026-08-25 13:44 |
| First Crackme |
[Click to reveal]Interesting crackme. Uses IsDebuggerPresent for anti-debugging. The first char of the user’s string must be '5' - 0x35. The password is generated in memory using the first char of the entered string.
keygen:
char ch = 0x35;
for (int i = 0; i < 9; i++) {
ch += i;
printf("%c", ch);
}
Password: 568;?DJQY
|
2026-08-18 18:22 |
| SimpleCrackMe |
[Click to reveal]From small pieces of strings, it is assembled into one large string. Anti-debugging: IsDebuggerPresent. Password: successgoodtrybutyouarefoundatrypass01
|
2026-08-16 17:52 |
| Level One crackme for beginners |
[Click to reveal]It requires a string in argv. The argument is compared with a local var using strcmp. pass: uedf1uefeqcfdofodcsdoweoqey4857498549fneuncqpn
|
2026-08-16 17:17 |
| Adversarial Mind |
[Click to reveal]Control flow flattening implemented via a switch-case state machine designed to confuse AI analysis. The execution goes as follows: switch 0 and 1 initialize the winning and losing strings; switch 2 contains dead code pretending to assemble a string; switch 3 is empty; switch 4 performs the main input validation against the hardcoded string. If the user input is incorrect, the "You found the flag" string is written into the variable.
password: UEFTU1dPUkR7ZmFsc2VfcGFzc3dvcmR9
|
2026-05-17 18:19 |
| aola |
[Click to reveal]XOR-obfuscated string {0xEF,0xC4,0xDE,0xCF,0xD8,0x8A,0xDA,0xCB,0xD9,0xD9,0xDD,0xC5,0xD8,0xCE,0x90,0x8A} decrypts to "Enter the password:" with key 0xAA.
XOR-obfuscated string {0xF3,0xC3,0xDA,0xDA,0xC3,0xCF,0x87,0xE1,0xC3,0x87,0xF3,0xCB,0xD3,0x00,0xC4,0xC5} decrypts to "Yippie-Ki-Yay " with key 0xAA.
Check performed via strcmp.
Arithmetic(add, sub, xor) gives 0x6F6B ("ok") for correct password and 0x6E6F ("no") for incorrect.
Correct password: Yippie-Ki-Yay
|
2026-05-16 14:10 |