Number of crackmes:
Number of writeups:
Comments:
| Name | Author | Language | Arch | Difficulty | Quality | Platform | Date | Downloads | Writeups | Comments |
|---|
| Crackme | Date | Infos |
|---|
| Crackme | Comment | Date |
|---|---|---|
| Bobs gambling | dzctf(bob_is_free_1337) | 2026-05-29 09:41 |
| CrackmesForBeginners (CFB) #2 | .######### ...#.....# ##.#.###.# #....#...# #.####.### #...#....# ###.####.# #......#.# #.####.#.. ######...E SDDSSASSDDSSDDDSSDDD | 2026-05-29 09:29 |
| CrackmesForBeginners (CFB) #4 | rotors_spin_9 | 2026-05-29 08:54 |
| CRACKME | simba123 难度标高哦了 | 2026-05-29 07:57 |
| learn for begineer | v5 = time(0) / 10; snprintf(v2, 0x40u, "kali_secret_%ld_key", v5); | 2026-05-29 07:54 |
| Easy Rust crackme | LOBYTE(v7) = *v2 != 'srekcarc'; if ( !v7 && *v5 == 'tnuhssap' ) break; | 2026-05-29 07:47 |
| my first crackme | ADMIN | 2026-05-29 05:58 |
| CrackmesForBeginners (CFB) #3 | pwn_vm_3 | 2026-05-28 08:19 |
| learn for begineer | 密码是名字最困难的? | 2026-05-25 09:10 |
| aola | Yippie-Ki-Yay *(_WORD *)Buffer = word_140004020 ^ 0xAAAA; v8 = _mm_xor_si128(_mm_shuffle_epi32(_mm_cvtsi32_si128(0xAAAAAAAA), 0), (__m128i)xmmword_140004030); *(_WORD *)Buffer_1 = word_14000401E ^ 0xAAAA; sub_140002F40("%s", v8.m128i_i8); sub_140002EE0("%63s", Str1); sub_140001770(v7); if ( !strcmp(Str1, Str2) ) puts(Buffer); else puts(Buffer_1); return 0; } | 2026-05-25 07:49 |
| Tenzo Crackme | wowyoufoundit v50 = 0x4F3D2B1987654321LL; LODWORD(Src_1) = 0x84736251; BYTE4(Src_1) = 0x95; v64 = 0x22DCB5E6B3AC1DE9LL; LODWORD(v65) = -2030526317; BYTE4(v65) = 0x56; v26 |= *(&v64 + j) ^ (0xA5 - 7 * j) ^ __ROR1__(17 * (j + 3) + (*(&v50 + j) ^ *(v32 + j)), 5); | 2026-05-25 07:28 |
| superEZcrackME | @0xBlarky 你使用010打开bvs文件,用ida查看exe文件,这个里面最重要的就是读取文件,你可以通过搜索open或者在字符串中寻找到关键位置,前面有文件判断,参数判断到后面while ( fread(&Buffer_, 2u, 1u, Stream) == 1 ) { if ( n512_1 >= n512 ) { Size = 56 * n512; n512 *= 2LL; v62 = (char *)realloc(v62, Size); } v18 = &unk_14000B180; for ( k = 0; k != 14; ++k ) { if ( *v18 == Buffer_ ) { v20 = (char *)&unk_14000B180 + 16 * k; goto LABEL_29; } v18 += 4; }这里就是转换,字节码表藏在&unk_14000B180; | 2026-05-22 08:38 |
| DebugMe | #define _GNU_SOURCE #include <errno.h> #include <sched.h> #include <signal.h> #include <stdbool.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/ptrace.h> #include <sys/resource.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> static const char *k_stage1 = "\033[1mDebugMe stage 1: \033[0m"; static const char *k_done = "Well done :)"; static void pin_cpu0(void) { cpu_set_t set; CPU_ZERO(&set); CPU_SET(0, &set); if (sched_setaffinity(0, sizeof(set), &set) == -1) { perror("sched_setaffinity"); } } static void demote_child(void) { struct sched_param sp; memset(&sp, 0, sizeof(sp)); if (sched_setscheduler(0, SCHED_IDLE, &sp) == -1) { if (setpriority(PRIO_PROCESS, 0, 19) == -1) { perror("setpriority"); } } } static int wait_stopped(pid_t pid) { int status = 0; for (;;) { if (waitpid(pid, &status, WUNTRACED) == -1) { if (errno == EINTR) { continue; } perror("waitpid"); return -1; } if (WIFSTOPPED(status)) { return 0; } if (WIFEXITED(status) || WIFSIGNALED(status)) { fprintf(stderr, "target exited before stop/attach completed\n"); return -1; } } } static int attach_target(pid_t target) { if (kill(target, SIGSTOP) == -1) { perror("kill(SIGSTOP)"); return -1; } if (wait_stopped(target) == -1) { return -1; } if (ptrace(PTRACE_SEIZE, target, NULL, (void *)0) == -1) { perror("ptrace(PTRACE_SEIZE)"); return -1; } if (ptrace(PTRACE_CONT, target, NULL, NULL) == -1) { perror("ptrace(PTRACE_CONT)"); return -1; } return 0; } static int child_exec(int write_fd, const char *path, const char *tracer_pid) { if (dup2(write_fd, STDOUT_FILENO) == -1 || dup2(write_fd, STDERR_FILENO) == -1) { perror("dup2"); return 127; } if (write_fd > STDERR_FILENO) { close(write_fd); } pin_cpu0(); demote_child(); execl(path, path, tracer_pid, (char *)NULL); perror("execl"); return 127; } int main(int argc, char **argv) { int pipefd[2]; pid_t target; char tracer_pid[32]; char ch; char logbuf[65536]; size_t log_len = 0; size_t stage1_match = 0; size_t done_match = 0; bool armed = false; bool attached = false; bool detached = false; const char *path = "./DebugMe"; if (argc > 2) { fprintf(stderr, "usage: %s [path-to-DebugMe]\n", argv[0]); return 1; } if (argc == 2) { path = argv[1]; } pin_cpu0(); snprintf(tracer_pid, sizeof(tracer_pid), "%ld", (long)getpid()); if (pipe(pipefd) == -1) { perror("pipe"); return 1; } target = fork(); if (target == -1) { perror("fork"); close(pipefd[0]); close(pipefd[1]); return 1; } if (target == 0) { close(pipefd[0]); _exit(child_exec(pipefd[1], path, tracer_pid)); } close(pipefd[1]); for (;;) { ssize_t n = read(pipefd[0], &ch, 1); if (n == -1) { if (errno == EINTR) { continue; } perror("read"); break; } if (n == 0) { break; } if (log_len < sizeof(logbuf) - 1) { logbuf[log_len++] = ch; logbuf[log_len] = '\0'; } if (!armed) { if (ch == k_stage1[stage1_match]) { stage1_match++; if (k_stage1[stage1_match] == '\0') { armed = true; } } else if (ch == k_stage1[0]) { stage1_match = 1; } else { stage1_match = 0; } continue; } if (!attached) { attached = true; if (attach_target(target) == -1) { break; } } if (!detached) { if (ch == k_done[done_match]) { done_match++; if (k_done[done_match] == '\0') { if (ptrace(PTRACE_DETACH, target, NULL, NULL) == -1 && errno != ESRCH) { perror("ptrace(PTRACE_DETACH)"); } detached = true; } } else if (ch == k_done[0]) { done_match = 1; } else { done_match = 0; } } } close(pipefd[0]); if (log_len != 0) { if (write(STDOUT_FILENO, logbuf, log_len) == -1) { perror("write"); return 1; } } { int status = 0; while (waitpid(target, &status, 0) == -1) { if (errno == EINTR) { continue; } perror("waitpid"); return 1; } if (WIFEXITED(status)) { return WEXITSTATUS(status); } if (WIFSIGNALED(status)) { fprintf(stderr, "\ntarget died with signal %d\n", WTERMSIG(status)); return 128 + WTERMSIG(status); } } return 1; } | 2026-05-22 08:27 |
| CrackMeBaby2 | int main() { if (anti_debug()) { MessageBoxA(..., "Debugger detected! Bye (:", "Anti-Debug", ...); ExitProcess(0); } secret_name = "igr0t"; real_flag = "flag{can-you-crack?}"; hidden_input = "lfkm0cmx:~'~boacdm"; denied_msg = xor_decode("Access Denied...\n", 0x0A); print_banner(); print("Input the pass:\n"); input = read_line(); transformed = input; xor_each_byte(transformed, 0x0A); if (input == "flag{can-you-crack?}") { print(denied_msg); } else if (transformed == "lfkm0cmx:~'~boacdm") //flag:igr0t-theking { print("You are good , but...\n"); print("Say my name..."); name = read_line(); if (name == "igr0t") print("You Win.. (;"); } else { print(denied_msg); } cleanup(); return 0; } | 2026-05-22 03:51 |
| VaultBreaker | v7 = kEncoded[n10]; if ( !v10 || *(int *)v10 > 1 ) QByteArray::reallocData(&v10, n_1, 1); *((_BYTE *)s2 + n10++) = v7 ^ 0x5A; | 2026-05-20 01:08 |
| InputPrinter | void __cdecl vuln() { char buf[64]; // [rsp+0h] [rbp-40h] BYREF printf("%p\n", buf); fflush(stdout); read(0, buf, 0xFFu); printf("you wrote: %s", buf); }输入长度大于64位就行了嘛 | 2026-05-20 01:05 |
| chaloia by salar | int __cdecl main_0(int argc, const char **argv, const char **envp) { char v4; // [esp+DCh] [ebp-54h] BYREF int v5; // [esp+DDh] [ebp-53h] int v6; // [esp+E1h] [ebp-4Fh] int v7; // [esp+E5h] [ebp-4Bh] int v8; // [esp+E9h] [ebp-47h] __int16 v9; // [esp+EDh] [ebp-43h] char v10; // [esp+EFh] [ebp-41h] _BYTE v11[28]; // [esp+F8h] [ebp-38h] BYREF _BYTE v12[24]; // [esp+114h] [ebp-1Ch] BYREF v4 = 0; v5 = 0; v6 = 0; v7 = 0; v8 = 0; v9 = 0; v10 = 0; while ( 1 ) { printf("Name: "); scanf_s("%20s", v12); if ( sub_4111D1((int)v12) < 3 ) { printf("Not enough letters.\n"); return 0; } sub_41109B((int)v12, (int)&v4); printf("Pass: "); scanf_s("%20s", v11); if ( sub_4110B4((int)v11, (int)&v4) ) break; printf("Badboy! Wrong Password!\n"); } printf("Right Password! Now write a keygen!\nHave fun!\n"); return 0; } char *__cdecl sub_4114A0(char *a1, _BYTE *a2) { char *result; // eax char n101; // [esp+D3h] [ebp-5h] char *v4; // [esp+E4h] [ebp+Ch] n101 = 'e'; while ( 1 ) { result = a1; if ( !*a1 ) break; *a2 = *a1 - 48; v4 = a2 + 666; *(v4 - 666) += n101; n101 = *a1; v4 -= 666; *v4 %= 122; *v4 += 48; ++a1; a2 = v4 + 1; } return result; } | 2026-05-19 03:23 |
| keygencrackme_1 by zyen | 名字框:任意非空 serial:10 内存存在有一个点击器每一次公式为serial == 10 * X * X 第二次40 90 160 | 2026-05-19 02:49 |
| PieIsMyFav | 3 | 2026-05-19 01:29 |
| CrackMe#1-InfoSecInstitute-dotNET-Reversing | // InfoSecInstitute_dotNET_Reversing.Form1 // Token: 0x06000028 RID: 40 RVA: 0x0004D218 File Offset: 0x0004B618 private void btn_Chk_Click(object sender, EventArgs e) { if (Operators.CompareString(this.txt_Pwd.Text, "p@55w0rd!", false) == 0) { Interaction.MsgBox("Congratulations !", MsgBoxStyle.Information, "Correct!"); } else { Interaction.MsgBox("Invalid password", MsgBoxStyle.Critical, "Error!"); } } | 2026-05-18 09:50 |
| Miner | wonderwhatthepasswordishmm = "wonderwhatthepasswordishmm"; | 2026-05-18 08:35 |
| Cracking / thinking challenge | void sub_401420() { int v0; // [esp+8h] [ebp-50h] void *Buf1; // [esp+10h] [ebp-48h] BYREF size_t Size; // [esp+14h] [ebp-44h] _BYTE Buf1_1[16]; // [esp+18h] [ebp-40h] BYREF void *Buf2; // [esp+28h] [ebp-30h] int Size_1; // [esp+2Ch] [ebp-2Ch] _BYTE Buf2_1[40]; // [esp+30h] [ebp-28h] BYREF Buf1 = Buf1_1; LOBYTE(v0) = 0; Size = 0; Buf1_1[0] = 0; Buf2 = Buf2_1; sub_403E00("13", (int)"", v0); std::__ostream_insert<char,std::char_traits<char>>(&std::cout, "password :", 10); std::operator>><char>(&std::cin, &Buf1); if ( Size == Size_1 && (!Size || !memcmp(Buf1, Buf2, Size)) ) std::__ostream_insert<char,std::char_traits<char>>(&std::cout, "Welcome , thanks for using ", 27); else sub_401420(); if ( Buf2 != Buf2_1 ) operator delete(Buf2); if ( Buf1 != Buf1_1 ) operator delete(Buf1); } | 2026-05-18 08:32 |
| Keyg3n_M1#1 | __int64 __fastcall check_key(const char *s) { int i; // [rsp+18h] [rbp-18h] int n999; // [rsp+1Ch] [rbp-14h] n999 = 0; if ( strlen(s) <= 7 || strlen(s) > 0xA ) { printf("Nope <3"); exit(0); } for ( i = 0; i < strlen(s); ++i ) n999 += s[i]; if ( n999 <= 999 ) { printf("Nope <3"); exit(0); } return 1; } | 2026-05-18 08:19 |
| nasm crack | supersecret | 2026-05-18 08:14 |
| easyAF | int __fastcall main(int argc, const char **argv, const char **envp) { int v3; // ebx __int64 envp_1; // rdx int v5; // r12d _BYTE v7[32]; // [rsp+0h] [rbp-60h] BYREF _BYTE v8[40]; // [rsp+20h] [rbp-40h] BYREF unsigned __int64 v9; // [rsp+48h] [rbp-18h] v9 = __readfsqword(0x28u); std::string::basic_string(v7, argv, envp); std::string::operator=(v7, "pass"); std::string::basic_string(v8, "pass", envp_1); std::operator<<<std::char_traits<char>>(&std::cout, "Enter the password: "); std::operator>><char>(&std::cin, v8); if ( (unsigned __int8)std::operator==<char>(v8, v7) ) { std::operator<<<std::char_traits<char>>(&std::cout, "Welldone!"); v3 = 0; v5 = 0; } else { if ( (unsigned __int8)std::operator!=<char>(v8, v7) ) { std::operator<<<std::char_traits<char>>(&std::cout, "Nope"); exit(0); } v5 = 1; } std::string::~string(v8); std::string::~string(v7); if ( v5 == 1 ) return 0; return v3; } | 2026-05-18 08:09 |
| Crypt0 - Beginner CrackMe | int __cdecl main_0(int argc, const char **argv, const char **envp) { _BYTE v4[36]; // [esp+D4h] [ebp-9Ch] BYREF _BYTE v5[36]; // [esp+F8h] [ebp-78h] BYREF _BYTE v6[36]; // [esp+11Ch] [ebp-54h] BYREF _BYTE v7[32]; // [esp+140h] [ebp-30h] BYREF int v8; // [esp+16Ch] [ebp-4h] __CheckForDebuggerJustMyCode(&unk_429033); sub_41106E("Nick"); v8 = 1; sub_41106E("4ACE00F"); sub_4110FA(v5); LOBYTE(v8) = 2; sub_4110FA(v4); LOBYTE(v8) = 3; sub_411357(std::cout, "Username: "); sub_4110EB(std::cin, v5); if ( (unsigned __int8)sub_4114BF(v5, v7) ) { sub_411357(std::cout, "password: "); sub_4110EB(std::cin, v4); if ( (unsigned __int8)sub_4114BF(v4, v6) ) MessageBoxW(0, L"Good Job bro! Keep going :)", L"Done", 0x40u); } else { system("cls"); sub_411357(std::cout, "user not registered! :( \n "); system("pause"); } LOBYTE(v8) = 2; sub_4113E3(v4); LOBYTE(v8) = 1; sub_4113E3(v5); LOBYTE(v8) = 0; sub_4113E3(v6); v8 = -1; sub_4113E3(v7); return 0; } | 2026-05-18 08:06 |
| EZ crackme | password dd 35353450h ; DATA XREF: LOAD:0804807C↑o .data:0804A000 ; $_48_1_+3↑r .data:0804A004 dd 64723077h 合并转换554Pdr0w | 2026-05-18 07:57 |
| Simple crackme | ::countAndFlagsBits = 0x44724F7753736150LL; 小端序硬编码 | 2026-05-18 07:53 |
| Very easy crackme | private void button1_Click(object sender, EventArgs e) { bool flag = this.textBox1.Text == "thebovl_Admin" && this.textBox2.Text == "findpasswaseasyrightquestion"; bool flag2 = flag; if (flag2) { MessageBox.Show("Welcome, thebovl!", "Welcome!"); } else { MessageBox.Show("Username or password have error!", "Error"); | 2026-05-18 07:42 |
| Beginner Friendly | 0100003EF4 buhnahna db 'buhnahna',0 ; DATA XREF: ___cxx_global_var_init+B↑o __cstring:0000000100003EFD ; const char enter_password__[] __cstring:0000000100003EFD enter_password__ db 'enter password: ',0 __cstring:0000000100003EFD ; DATA XREF: _main+1F↑o __cstring:0000000100003F0E ; const char asc_100003F0E[] | 2026-05-18 07:38 |
| Сipher | 凯撒密码工int __fastcall main(int argc, const char **argv, const char **envp) { std::ostream *v3; // rax std::ostream *v4; // rax std::ostream *v5; // rax std::ostream *v6; // rax _BYTE v8[32]; // [rsp+20h] [rbp-60h] _BYTE _._0123456789[13]; // [rsp+40h] [rbp-40h] BYREF _BYTE v10[32]; // [rsp+50h] [rbp-30h] char _._0123456789_1[13]; // [rsp+70h] [rbp-10h] BYREF char Str[80]; // [rsp+80h] [rbp+0h] BYREF int v13; // [rsp+D0h] [rbp+50h] char v14; // [rsp+D7h] [rbp+57h] int j; // [rsp+D8h] [rbp+58h] int i; // [rsp+DCh] [rbp+5Ch] _main(); setlocale(0, "rus"); SetConsoleCP(0x4E3u); SetConsoleOutputCP(0x4E3u); i = 0; j = 0; v8[0] = -64; v8[1] = -63; v8[2] = -62; v8[3] = -61; v8[4] = -60; v8[5] = -59; v8[6] = -58; v8[7] = -57; v8[8] = -56; v8[9] = -55; v8[10] = -54; v8[11] = -53; v8[12] = -52; v8[13] = -51; v8[14] = -50; v8[15] = -49; v8[16] = -48; v8[17] = -47; v8[18] = -46; v8[19] = -45; v8[20] = -44; v8[21] = -43; v8[22] = -42; v8[23] = -41; v8[24] = -40; v8[25] = -39; v8[26] = -38; v8[27] = -37; v8[28] = -36; v8[29] = -35; v8[30] = -34; v8[31] = -33; qmemcpy(_._0123456789, "_.,0123456789", sizeof(_._0123456789)); v10[0] = -32; v10[1] = -31; v10[2] = -30; v10[3] = -29; v10[4] = -28; v10[5] = -27; v10[6] = -26; v10[7] = -25; v10[8] = -24; v10[9] = -23; v10[10] = -22; v10[11] = -21; v10[12] = -20; v10[13] = -19; v10[14] = -18; v10[15] = -17; v10[16] = -16; v10[17] = -15; v10[18] = -14; v10[19] = -13; v10[20] = -12; v10[21] = -11; v10[22] = -10; v10[23] = -9; v10[24] = -8; v10[25] = -7; v10[26] = -6; v10[27] = -5; v10[28] = -4; v10[29] = -3; v10[30] = -2; v10[31] = -1; qmemcpy(_._0123456789_1, "_.,0123456789", sizeof(_._0123456789_1)); v3 = std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, &::Str); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(v3); std::istream::getline(refptr__ZSt3cin, Str, 80);// 输入 v4 = std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, asc_488038); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(v4); std::istream::operator>>(refptr__ZSt3cin); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(refptr__ZSt4cout); for ( i = 0; i < strlen(Str); ++i ) { if ( Str[i] == 32 ) { Str[i] = 32; } else { v14 = 0; for ( j = 0; j <= 44; ++j ) { if ( Str[i] == v8[j] ) { Str[i] = v8[(v13 + j) % 45]; v14 = 1; break; } if ( Str[i] == v10[j] ) { Str[i] = v10[(v13 + j) % 45]; v14 = 1; break; } } if ( v14 != 1 ) Str[i] = Str[i]; } } v5 = std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, &byte_488048); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(v5); v6 = std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, Str); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(v6); return 0; } | 2026-05-18 06:52 |
| TGUs Crackme | // Token: 0x06000003 RID: 3 RVA: 0x00002130 File Offset: 0x00000330 private void SubmitButton_Click(object sender, EventArgs e) { string text = this.passcodeTextBox.Text; bool flag = text == "hard-crackme-code"; if (flag) { MessageBox.Show("Correct Passcode"); } else { MessageBox.Show("Incorrect Passcode"); | 2026-05-14 15:03 |
| Basic Crackme ConsoleBased | __int64 GetPassword() { _BYTE v1[48]; // [rsp+20h] [rbp-60h] BYREF system_0("cls"); std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Input a password\n>"); std::string::basic_string(v1); if ( (unsigned __int8)std::operator==<char>(v1, "ErhwHwrhrwWhrwwHwhr") ) std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Vaild Password\n<Enter anything to Retry>"); std::operator>><char>(refptr__ZSt3cin); if ( (unsigned __int8)std::operator!=<char>(v1, "ErhwHwrhrwWhrwwHwhr") ) std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Invaild Password\n<Enter anything to Retry>"); std::operator>><char>(refptr__ZSt3cin); return std::string::~string(v1); } | 2026-05-14 14:39 |
| Christmas CrackMe | 3812 | 2026-05-14 14:21 |
| 4RM master | __int64 sub_14001DFF0() { __int64 v0; // x0 int i; // [xsp+0h] [xbp-30h] __int64 v3; // [xsp+10h] [xbp-20h] char pL7v5CLpt011s4v_[24]; // [xsp+18h] [xbp-18h] BYREF v3 = sub_140003AF0(); strcpy(pL7v5CLpt011s4v_, "pL7v5CLpt011s4v`"); for ( i = 0; i < (int)sub_140004BD0(pL7v5CLpt011s4v_); ++i ) { if ( (*(char *)(v3 + i) ^ dword_1400F0000) != pL7v5CLpt011s4v_[i] ) { v0 = 0; return sub_1400056C8(v0); } } v0 = 1; return sub_1400056C8(v0); } | 2026-05-14 14:14 |
| dotqw's first c | // Token: 0x06000002 RID: 2 RVA: 0x00002068 File Offset: 0x00000268 private void button1_Click(object sender, EventArgs e) { string text = this.keyfield.Text; bool flag = text == "XOQIBwcLudyp6NG"; if (flag) { MessageBox.Show("nice, you did it"); Application.Exit(); } else { MessageBox.Show("nope, thats not it"); | 2026-05-14 09:29 |
| zrox's crackme easy | using System; using System.ComponentModel; using System.Drawing; using System.Windows.Forms; namespace olartik { // Token: 0x02000003 RID: 3 public class Form1 : Form { // Token: 0x06000002 RID: 2 RVA: 0x0000205F File Offset: 0x0000025F public Form1() { this.InitializeComponent(); } // Token: 0x06000003 RID: 3 RVA: 0x00002070 File Offset: 0x00000270 private void btnLogin_Click(object sender, EventArgs e) { string b = "sifreyok"; if (this.txtKey.Text == b) { MessageBox.Show("giris basarili"); return; } MessageBox.Show("giris basarisiz"); } // Token: 0x06000004 RID: 4 RVA: 0x000020AD File Offset: 0x000002AD protected override void Dispose(bool disposing) { if (disposing && this.components != null) { this.components.Dispose(); } base.Dispose(disposing); } // Token: 0x06000005 RID: 5 RVA: 0x000020CC File Offset: 0x000002CC private void InitializeComponent() { this.txtKey = new TextBox(); this.btnLogin = new Button(); base.SuspendLayout(); this.txtKey.Location = new Point(12, 12); this.txtKey.Name = "txtKey"; this.txtKey.Size = new Size(260, 22); this.txtKey.TabIndex = 0; this.btnLogin.Location = new Point(12, 40); this.btnLogin.Name = "btnLogin"; this.btnLogin.Size = new Size(75, 23); this.btnLogin.TabIndex = 1; this.btnLogin.Text = "Giris"; this.btnLogin.UseVisualStyleBackColor = true; this.btnLogin.Click += this.btnLogin_Click; base.AutoScaleDimensions = new SizeF(8f, 16f); base.AutoScaleMode = AutoScaleMode.Font; base.ClientSize = new Size(284, 76); base.Controls.Add(this.btnLogin); base.Controls.Add(this.txtKey); base.Name = "Form1"; this.Text = "Key Giris Uygulamasi"; base.ResumeLayout(false); base.PerformLayout(); } // Token: 0x04000001 RID: 1 private IContainer components; // Token: 0x04000002 RID: 2 private TextBox txtKey; // Token: 0x04000003 RID: 3 private Button btnLogin; } } | 2026-05-14 05:41 |
| Validator (easy) | VmFsaWRQYXNzd29yZA== | 2026-05-14 05:34 |
| A CrackMe by ByteClassic (on yt) | int __fastcall main(int argc, const char **argv, const char **envp) { std::ostream *v3; // rax _BYTE v5[16]; // [rsp+20h] [rbp-60h] BYREF _BYTE v6[15]; // [rsp+30h] [rbp-50h] BYREF _BYTE v7[17]; // [rsp+3Fh] [rbp-41h] BYREF _main(); std::string::string((std::string *)v6); std::allocator<char>::allocator(v7); std::string::string(v5, "secret123", v7); std::allocator<char>::~allocator(v7); std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Enter password: "); std::getline<char,std::char_traits<char>,std::allocator<char>>(refptr__ZSt3cin, v6); if ( (unsigned __int8)std::operator==<char>(v6, v5) ) v3 = (std::ostream *)std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Correct password!"); else v3 = (std::ostream *)std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Incorrect password!"); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(v3); system_0("pause"); std::string::~string((std::string *)v5); std::string::~string((std::string *)v6); return 0; } | 2026-05-13 09:36 |
| A CrackMe by ByteClassic (on yt) | int __fastcall main(int argc, const char **argv, const char **envp) { std::ostream *v3; // rax _BYTE v5[16]; // [rsp+20h] [rbp-60h] BYREF _BYTE v6[15]; // [rsp+30h] [rbp-50h] BYREF _BYTE v7[17]; // [rsp+3Fh] [rbp-41h] BYREF _main(); std::string::string((std::string *)v6); std::allocator<char>::allocator(v7); std::string::string(v5, "secret123", v7); std::allocator<char>::~allocator(v7); std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Enter password: "); std::getline<char,std::char_traits<char>,std::allocator<char>>(refptr__ZSt3cin, v6); if ( (unsigned __int8)std::operator==<char>(v6, v5) ) v3 = (std::ostream *)std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Correct password!"); else v3 = (std::ostream *)std::operator<<<std::char_traits<char>>(refptr__ZSt4cout, "Incorrect password!"); refptr__ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(v3); system_0("pause"); std::string::~string((std::string *)v5); std::string::~string((std::string *)v6); return 0; } | 2026-05-13 09:36 |
| really easy | int __fastcall main(int argc, const char **argv, const char **envp) { char s1[56]; // [rsp+0h] [rbp-40h] BYREF unsigned __int64 v5; // [rsp+38h] [rbp-8h] v5 = __readfsqword(0x28u); printf("Enter password: "); __isoc99_scanf("%41s", s1); if ( !strcmp(s1, "iloveicecream") ) puts("I love ice cream too!"); else puts("Wrong try again."); return 0; } | 2026-05-13 09:34 |
| Ez Crackme | using System; namespace superdupercrackme1377 { // Token: 0x02000002 RID: 2 internal class Program { // Token: 0x06000001 RID: 1 RVA: 0x00002050 File Offset: 0x00000250 private static void Main(string[] args) { string b = "ar@gerg554y345@htw54"; Console.WriteLine("введи пароль пидорас"); if (Console.ReadLine() == b) { Console.WriteLine("правильный пароль, ты пидорас"); return; } Console.WriteLine("неправильный пароль, иди нахуй"); } } } | 2026-05-13 09:32 |
| Easy crackme | import java.util.Scanner; public class Main { public static boolean checkValidity(String s) { s.startsWith("KEY"); int v1 = 0; for(int v = 0; true; ++v) { int v2 = 1; if(v >= s.length()) { break; } if((s.charAt(v) & 3) != 0) { v2 = 0; } v1 += v2; } return v1 == 4; } public static void main(String[] arr_s) { Scanner scanner0 = new Scanner(System.in); System.out.print("Thanks for downloading this product. "); do { System.out.print("Enter the validation key here to complete, or exit with ENTER: "); String s = scanner0.nextLine(); if(s.trim().isEmpty()) { System.out.println("Exiting.."); System.exit(0); } if(s.length() != 10) { System.out.println("Length requirement not met"); } } while(s.length() != 10); if(Main.checkValidity(s)) { System.out.println("Validation key accepted"); return; } System.out.println("Validation key is invalid"); System.exit(0); } } | 2026-05-13 09:28 |
| ACrack | int __fastcall main(int argc, const char **argv, const char **envp) { char *Str1_1; // [rsp+20h] [rbp-10h] char *Str1; // [rsp+28h] [rbp-8h] _main(); printf("Mini crackme by @microsoftstorage writed on C!\n"); printf("Nickname: "); scanf("%s[^\n]", Str1); if ( !strcmp(Str1, "CrackMeOne") ) { printf("True!\n"); printf("Password: "); scanf("%s[^\n]", Str1_1); if ( !strcmp(Str1_1, "t.me/Umno223") ) printf("True!\n"); else printf("Bad password, try again\n"); } else { printf("bad nickname! try again\n"); } return 0; } | 2026-05-13 09:15 |
| Password(Very Easy) | GetDlgItemTextA(hDlg, 1001, lpText, 260); if ( lstrcmpA(lpText, String2) ) // "SuperPass" MessageBoxA( 0, lpText, aPasswordTrash, // "Password Trash:" MB_OK); else MessageBoxA( 0, lpText, Caption, // "Password Good:" MB_OK); } break; case 0x10u: | 2026-05-13 09:12 |
| ZEXOR-v1(Linux version) | .rodata:0000000000002008 00000013 C AEXORRBSHA36325S33 | 2026-05-13 09:03 |
| GetToKnow-v0.1 | int __fastcall main(int argc, const char **argv, const char **envp) { char Str2[64]; // [rsp+20h] [rbp-60h] BYREF char Str1[28]; // [rsp+60h] [rbp-20h] BYREF _main(); strcpy(Str1, "1mN0TTh3PwTru5tM3"); puts_0("Enter Password: "); scanf("%s", Str2); if ( strcmp(Str1, Str2) ) puts_0("Try again..."); else puts_0("YOU DID IT! LETS GOOO"); system_0("pause"); return 0; } | 2026-05-13 08:53 |
| very easy crack me $$$ by whekkees | // Hidden C++ exception states: #wind=2 int __fastcall main(int argc, const char **argv, const char **envp) { unsigned __int64 n15; // r14 __int64 v4; // rax __int64 envp_1; // r8 __int64 Size_4; // rbx __int64 Size_3; // rax void **Buf1_1; // rcx char *v9; // rsi unsigned __int64 n15_3; // r15 size_t Size_1; // r8 void **Buf1_3; // rcx char *v13; // rdi size_t envp_2; // r8 char *v15; // rax char *v16; // rax char qwerty[8]; // [rsp+30h] [rbp-19h] BYREF _DWORD Buf2[2]; // [rsp+38h] [rbp-11h] BYREF void *Buf1_2[2]; // [rsp+40h] [rbp-9h] BYREF size_t Size_2; // [rsp+50h] [rbp+7h] unsigned __int64 n15_2; // [rsp+58h] [rbp+Fh] void *Buf1[2]; // [rsp+60h] [rbp+17h] BYREF size_t Size; // [rsp+70h] [rbp+27h] unsigned __int64 n15_1; // [rsp+78h] [rbp+2Fh] *(_OWORD *)Buf1 = 0; Size = 0; n15 = 15; n15_1 = 15; LOBYTE(Buf1[0]) = 0; *(_OWORD *)Buf1_2 = 0; Size_2 = 0; n15_2 = 15; LOBYTE(Buf1_2[0]) = 0; strcpy((char *)Buf2, "whekkes"); strcpy(qwerty, "qwerty"); v4 = sub_140001630(std::cout, "Welcome to my so eazy crack me good luck by whekkees", envp); std::ostream::operator<<(v4, sub_140001810); sub_140001630(std::cout, "Please enter ur login: \n", envp_1); sub_140001850(std::cin, Buf1); Size_4 = -1; Size_3 = -1; do ++Size_3; while ( *((_BYTE *)Buf2 + Size_3) ); Buf1_1 = Buf1; v9 = (char *)Buf1[0]; n15_3 = n15_1; if ( n15_1 > 0xF ) Buf1_1 = (void **)Buf1[0]; Size_1 = Size; if ( Size == Size_3 && (!Size || !memcmp(Buf1_1, Buf2, Size)) ) { sub_140001630(std::cout, "Please enter ur password: \n", Size_1); sub_140001850(std::cin, Buf1_2); do ++Size_4; while ( qwerty[Size_4] ); Buf1_3 = Buf1_2; v13 = (char *)Buf1_2[0]; n15 = n15_2; if ( n15_2 > 0xF ) Buf1_3 = (void **)Buf1_2[0]; envp_2 = Size_2; if ( Size_2 == Size_4 && (!Size_2 || !memcmp(Buf1_3, qwerty, Size_2)) ) sub_140001630(std::cout, "Nice job bro ", envp_2); } else { v13 = (char *)Buf1_2[0]; } if ( n15 > 0xF ) { v15 = v13; if ( n15 + 1 >= 0x1000 ) { v13 = (char *)*((_QWORD *)v13 - 1); if ( (unsigned __int64)(v15 - v13 - 8) > 0x1F ) invoke_watson(0, 0, 0, 0, 0); } j_j_free(v13); } if ( n15_3 > 0xF ) { v16 = v9; if ( n15_3 + 1 >= 0x1000 ) { v9 = (char *)*((_QWORD *)v9 - 1); if ( (unsigned __int64)(v16 - v9 - 8) > 0x1F ) invoke_watson(0, 0, 0, 0, 0); } j_j_free(v9); } return 0; } | 2026-05-13 08:50 |
| U Can't Pass | jnz short loc_118E | 2026-05-13 08:42 |
| superEZcrackME | 0: IMPEXT 0 1: JE 4, 420, Var[0] 2: PRINT 1 3: JMP 5 4: PRINT 2 5: RET | 2026-05-13 08:23 |
| superEZcrackME | 420 写道in.txt | 2026-05-13 03:12 |
| catgirl.crack | bool flag = password.Equals("Mint", StringComparison.OrdinalIgnoreCase); | 2026-05-12 08:20 |
| Fixed Easy Crackme | sub_140001700(std::cin, Buf1); EasyPassword = Block; // "EasyPassword" if ( (unsigned __int64)n0xF > 0xF ) EasyPassword = (void **)Block[0]; // "EasyPassword" Size_1 = (const char **)Size; n15_1 = n15; | 2026-05-12 08:12 |
| Find the serial | int __cdecl sub_401DF4(int a1) { int ____VB________; // eax int v2; // eax int *sub_4024CC_1; // edi int v4; // eax int v5; // edx int v6; // eax int v7; // eax __int16 v8; // cx bool v9; // of __int16 n3; // cx double v11; // st7 char v12; // fps char v16; // fps int v20; // eax int v21; // eax int v22; // eax int v23; // eax int v24; // eax int v25; // eax int v26; // eax int v27; // edx int v28; // ebx int v29; // eax int v30; // eax int v31; // eax int v32; // eax int v33; // eax int v34; // eax int v35; // eax int v36; // eax int v37; // eax int v38; // eax int v39; // eax __int16 v40; // ax __int16 v41; // ax int *sub_4024CC_2; // [esp-28h] [ebp-180h] int v44; // [esp-Ch] [ebp-164h] BYREF double v45; // [esp+0h] [ebp-158h] int v46; // [esp+8h] [ebp-150h] double v47; // [esp+Ch] [ebp-14Ch] int v48; // [esp+14h] [ebp-144h] int v49; // [esp+18h] [ebp-140h] int v50; // [esp+1Ch] [ebp-13Ch] int v51; // [esp+20h] [ebp-138h] int v52; // [esp+24h] [ebp-134h] int i_1; // [esp+3Ch] [ebp-11Ch] __int16 v54; // [esp+58h] [ebp-100h] int ***p_p_p_p_n10; // [esp+60h] [ebp-F8h] BYREF _DWORD v56[2]; // [esp+64h] [ebp-F4h] BYREF const wchar_t *&H; // [esp+6Ch] [ebp-ECh] _DWORD v58[4]; // [esp+74h] [ebp-E4h] BYREF _DWORD v59[2]; // [esp+84h] [ebp-D4h] BYREF int (__stdcall **v60)(int); // [esp+8Ch] [ebp-CCh] wchar_t Serial_[4]; // [esp+94h] [ebp-C4h] BYREF int v62; // [esp+9Ch] [ebp-BCh] int p_n10[4]; // [esp+A4h] [ebp-B4h] BYREF int sub_4024CC[4]; // [esp+B4h] [ebp-A4h] BYREF _DWORD v65[2]; // [esp+C4h] [ebp-94h] BYREF int n2; // [esp+CCh] [ebp-8Ch] int v67; // [esp+D4h] [ebp-84h] BYREF int v68; // [esp+D8h] [ebp-80h] BYREF int v69; // [esp+DCh] [ebp-7Ch] BYREF int v70; // [esp+E0h] [ebp-78h] BYREF int v71; // [esp+E4h] [ebp-74h] BYREF int v72; // [esp+E8h] [ebp-70h] BYREF int v73; // [esp+ECh] [ebp-6Ch] BYREF int v74; // [esp+F0h] [ebp-68h] BYREF int v75; // [esp+F4h] [ebp-64h] BYREF int v76; // [esp+F8h] [ebp-60h] BYREF int v77; // [esp+FCh] [ebp-5Ch] BYREF int v78; // [esp+100h] [ebp-58h] BYREF int v79; // [esp+104h] [ebp-54h] BYREF int v80; // [esp+108h] [ebp-50h] BYREF int v81; // [esp+10Ch] [ebp-4Ch] BYREF int v82; // [esp+110h] [ebp-48h] BYREF int v83; // [esp+114h] [ebp-44h] BYREF int v84; // [esp+118h] [ebp-40h] BYREF unsigned int n6; // [esp+11Ch] [ebp-3Ch] int **p_p_p_n10[3]; // [esp+124h] [ebp-34h] BYREF unsigned __int8 *v87; // [esp+130h] [ebp-28h] int (__stdcall *v88)(int); // [esp+13Ch] [ebp-1Ch] BYREF int i; // [esp+140h] [ebp-18h] int *v90; // [esp+14Ch] [ebp-Ch] int *v91; // [esp+150h] [ebp-8h] int v92; // [esp+154h] [ebp-4h] unsigned int v93; // [esp+160h] [ebp+8h] v90 = &v44; v91 = dword_401100; v92 = a1 & 1; v93 = a1 & 0xFFFFFFFE; (*(void (__cdecl **)(unsigned int))(*(_DWORD *)v93 + 4))(v93); v88 = 0; n6 = 0; v84 = 0; v83 = 0; v82 = 0; v81 = 0; v80 = 0; v79 = 0; v78 = 0; v77 = 0; v76 = 0; v75 = 0; v74 = 0; v73 = 0; v72 = 0; v71 = 0; v70 = 0; v69 = 0; v68 = 0; v67 = 0; v65[0] = 0; sub_4024CC[0] = 0; p_n10[0] = 0; *(_DWORD *)Serial_ = 0; v59[0] = 0; v58[0] = 0; v56[0] = 0; p_p_p_p_n10 = 0; _vbaAryConstruct2(p_p_p_n10, dword_401BAC, 17); ____VB________ = ___VB______; // 是某个 VB 对象/窗体对象 if ( !___VB______ ) { _vbaNew2(dword_4016EC, &___VB______); ____VB________ = ___VB______; } v2 = (*(int (__cdecl **)(int))(*(_DWORD *)____VB________ + 768))(____VB________); sub_4024CC_1 = (int *)_vbaObjSet(&v67, v2); v4 = (*(int (**)(void))(*sub_4024CC_1 + 160))(); __asm { fnclex } if ( v4 < 0 ) _vbaHresultCheckObj(v4, sub_4024CC_1, dword_401B70, 160); v5 = v84; v84 = 0; _vbaStrMove((int)&v88, v5); // v88输入字符串 _vbaFreeObj(&v67); i_1 = _vbaLenBstr(v88); for ( i = 1; i <= i_1; i += 2 ) // 而是每次跳 2 个字符 { &H = L"&H"; // "&H" + "72" 变成 "&H72"在 VB 里,&H72 表示十六进制数 0x72。 v60 = &v88; v56[0] = 8; n2 = 2; v65[0] = 2; v59[0] = 16392; rtcMidCharVar(sub_4024CC, v59, i, v65); // rtcMidCharVar(..., i, ..., 2)取输入串从第 i 个位置开始的 2 个字符 if ( n6 >= 6 ) _vbaGenerateBoundsError(); v6 = _vbaVarCat(p_n10, sub_4024CC, v56); v7 = _vbaStrVarVal(&v84, v6); rtcR8ValFromBstr(v7); v87[n6] = _vbaFpUI1(); _vbaFreeStr(&v84, (int (__stdcall *)(int))sub_4024CC_2); sub_4024CC_2 = p_n10; _vbaFreeVarList(3, v65, sub_4024CC); if ( __OFADD__(1, n6) ) goto LABEL_33; ++n6; if ( __OFADD__(i, 2) ) goto LABEL_33; } // 所以整个循环的本质把输入字符串:72696768742E转换成字节数组: // [0x72, 0x69, 0x67, 0x68, 0x74, 0x2E]也就是 ASCII:r i g h t . if ( *v87 != 'r' ) goto LABEL_28; if ( !is_mul_ok(3u, v87[1]) ) goto LABEL_33; if ( 3 * v87[1] == '\x01;' ) // 3 * v87[1] == 315两边除以 3:b1 = 105 = 0x69 = 'i' // { v8 = v87[2]; // v87[2] - 100 == 3移项:b2 = 103 = 0x67 = 'g' v9 = __OFSUB__(v8, 'd'); n3 = v8 - 'd'; if ( v9 ) goto LABEL_33; if ( n3 == 3 ) { v48 = v87[3]; // v87[3] / 2 == 52 b3 = 104 = 0x68 = 'h' v47 = (double)v48; v11 = v47; if ( dword_403000 ) adj_fdiv_m64(0, 0x40000000); else v11 = v47 / 2.0; if ( (v12 & 0xD) != 0 ) goto LABEL_32; _vbaFpR8(); if ( v11 == 52.0 ) { v46 = v87[4]; v45 = (double)v46; v11 = v45; if ( dword_403000 ) adj_fdiv_m64(0, 1074790400); else v11 = v45 / 4.0; if ( (v16 & 0xD) == 0 ) { _vbaFpR8(); if ( v11 != 29.0 ) goto LABEL_28; v59[0] = 16401; v60 = (int (__stdcall **)(int))(v87 + 5);// 先看 dword_401B90 是什么 // 你前面查出来了: // // TEXT // 401B90 -> "E" // 所以这里一定和字符串 "E" 有关。 // // rtcHexVarFromVar 是什么含义 // 它把某个值转成十六进制字符串。 // // 比如: // // 0x2E -> "2E" // 0x1E -> "1E" // 0xE0 -> "E0" // 这里传入的是: // // C // (v87 + 5) // 也就是第 6 个字节 b5。 // // 所以这一步的意思是: // // 把第 6 个字节转成 hex 字符串 // // __vbaInStrVar(..., "E", hexstr, 1) // 这个相当于 VB 的 InStr,就是: // // 在字符串里找 "E" // // 如果找到了,返回位置;找不到返回 0。 rtcHexVarFromVar(v65, v59); v58[2] = dword_401B90; v58[0] = 8; &H = 0; v56[0] = 32770; v20 = _vbaInStrVar(sub_4024CC, 0, v58, v65, 1); v54 = _vbaVarTstEq(v56, v20); _vbaFreeVarList(2, v65, sub_4024CC); if ( v54 ) // 结合 VarTstEq 的结果,可读成: // // 如果 "E" 不在第 6 个字节的十六进制表示里,就失败。 // // 所以条件是: // // Hex(b5) 必须包含字母 E goto LABEL_28; v21 = rtcBstrFromAnsi(*v87); _vbaStrMove((int)&v73, v21); v22 = rtcBstrFromAnsi(v87[1]); _vbaStrMove((int)&v72, v22); v23 = rtcBstrFromAnsi(v87[2]); _vbaStrMove((int)&v71, v23); v24 = rtcBstrFromAnsi(v87[3]); _vbaStrMove((int)&v70, v24); v25 = rtcBstrFromAnsi(v87[4]); _vbaStrMove((int)&v69, v25); v26 = rtcBstrFromAnsi(v87[5]); _vbaStrMove((int)&v68, v26); v27 = v73; v28 = v72; wcscpy(Serial_, L"\n"); p_n10[0] = 10; sub_4024CC[0] = 10; v52 = v71; v51 = v70; v50 = v69; v62 = -2147352572; p_n10[2] = -2147352572; sub_4024CC[2] = -2147352572; v73 = 0; v72 = 0; v71 = 0; v70 = 0; v69 = 0; v49 = v68; v68 = 0; v29 = _vbaStrMove((int)&v84, v27); v30 = _vbaStrCat(v29); _vbaStrMove((int)&v83, v30); v31 = _vbaStrMove((int)&v82, v28); v32 = _vbaStrCat(v31); _vbaStrMove((int)&v81, v32); v33 = _vbaStrMove((int)&v80, v52); v34 = _vbaStrCat(v33); _vbaStrMove((int)&v79, v34); v35 = _vbaStrMove((int)&v78, v51); v36 = _vbaStrCat(v35); _vbaStrMove((int)&v77, v36); v37 = _vbaStrMove((int)&v76, v50); v38 = _vbaStrCat(v37); _vbaStrMove((int)&v75, v38); v39 = _vbaStrMove((int)&v74, v49); n2 = _vbaStrCat(v39); v65[0] = 8; v40 = v87[5]; v9 = __OFADD__(18, v40); v41 = v40 + 18; if ( !v9 ) { rtcMsgBox(v65, v41, sub_4024CC, p_n10, Serial_); _vbaFreeStrList( 17, &v84, &v83, &v82, &v81, &v80, &v79, &v78, &v77, &v76, &v75, &v74, &v73, &v72, &v71, &v70, &v69, &v68); _vbaFreeVarList(4, v65, sub_4024CC); goto LABEL_31; } LABEL_33: _vbaErrorOverflow(sub_4024CC_1); } LABEL_32: _vbaFPException(v93, v11); } } } LABEL_28: (*(void (__cdecl **)(unsigned int))(*(_DWORD *)v93 + 1788))(v93); LABEL_31: v92 = 0; _vbaFreeStr(&v88, ::sub_4024CC); p_p_p_p_n10 = p_p_p_n10; return _vbaAryDestruct(0, &p_p_p_p_n10); } | 2026-05-09 09:20 |
| Find the serial | 72696768740E 72696768741E 72696768742E 72696768743E 72696768744E 72696768745E 72696768746E 72696768747E ... | 2026-05-09 08:37 |
| c++ pavler1 | o'k | 2026-05-09 06:16 |
| lvl0 easy crackmes | // bad sp value at call has been detected, the output may be wrong! int __cdecl main(int argc, const char **argv, const char **envp) { _BYTE v4[24]; // [esp+0h] [ebp-D0h] BYREF _BYTE v5[24]; // [esp+18h] [ebp-B8h] BYREF _BYTE v6[24]; // [esp+30h] [ebp-A0h] BYREF _BYTE v7[24]; // [esp+48h] [ebp-88h] BYREF _BYTE v8[24]; // [esp+60h] [ebp-70h] BYREF _BYTE v9[24]; // [esp+78h] [ebp-58h] BYREF _BYTE v10[24]; // [esp+90h] [ebp-40h] BYREF _DWORD v11[6]; // [esp+A8h] [ebp-28h] BYREF char v12; // [esp+C1h] [ebp-Fh] BYREF char v13; // [esp+C2h] [ebp-Eh] BYREF char v14; // [esp+C3h] [ebp-Dh] BYREF char v15; // [esp+C4h] [ebp-Ch] BYREF char v16; // [esp+C5h] [ebp-Bh] BYREF char v17; // [esp+C6h] [ebp-Ah] BYREF char v18; // [esp+C7h] [ebp-9h] BYREF int *p_argc; // [esp+C8h] [ebp-8h] p_argc = &argc; __main(); std::string::basic_string(v11); std::allocator<char>::allocator(&v12); std::string::basic_string(v10, "C++ is best", &v12); std::allocator<char>::~allocator(&v12); std::allocator<char>::allocator(&v13); std::string::basic_string(v9, "Dota 2 >>>>> LoL", &v13); std::allocator<char>::~allocator(&v13); std::allocator<char>::allocator(&v14); std::string::basic_string(v8, "Python is trash", &v14); std::allocator<char>::~allocator(&v14); std::allocator<char>::allocator(&v15); std::string::basic_string(v7, "Hate from africa", &v15); std::allocator<char>::~allocator(&v15); std::allocator<char>::allocator(&v16); std::string::basic_string(v6, &unk_4060A3, &v16); std::allocator<char>::~allocator(&v16); std::allocator<char>::allocator(&v17); std::string::basic_string(v5, "fentanyl", &v17); std::allocator<char>::~allocator(&v17); std::allocator<char>::allocator(&v18); std::string::basic_string(v4, "imgay", &v18); std::allocator<char>::~allocator(&v18); std::operator<<<std::char_traits<char>>(&std::cout, "Find my secret : "); std::operator>><char>(&std::cin, v11); if ( (unsigned __int8)std::operator==<char>(v11, v4) ) std::operator<<<std::char_traits<char>>(&std::cout, "\nCorrect DaDdYYYY\n"); else std::operator<<<std::char_traits<char>>(&std::cout, "\nWRONG\n"); std::string::~string(v4); std::string::~string(v5); std::string::~string(v6); std::string::~string(v7); std::string::~string(v8); std::string::~string(v9); std::string::~string(v10); std::string::~string(v11); return 0; } | 2026-05-09 02:56 |