Number of crackmes:
Number of solutions:
Comments:
Name | Author | Language | Arch | Difficulty | Quality | Platform | Date | Solution | Comments |
---|---|---|---|---|---|---|---|---|---|
silnice | Shurafen | Assembler | x86 | 3.7 | 5.5 | Windows | 8:32 AM 06/26/2024 | 0 | 7 |
Crackme | Infos |
---|
Comment | Link |
---|---|
Well Well... Here is the code as HEX data, paste it in HEX editor and save as main.cpp :) 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 6C 69 62 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6E 74 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 78 38 36 69 6E 74 72 69 6E 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 63 6F 6E 69 6F 2E 68 3E 0D 0A 0D 0A 63 6F 6E 73 74 20 69 6E 74 20 20 20 20 20 20 70 61 63 6B 65 64 44 61 74 61 53 69 7A 65 20 3D 20 31 38 32 3B 0D 0A 63 6F 6E 73 74 20 75 69 6E 74 33 32 5F 74 20 63 68 6B 73 75 6D 20 20 20 20 20 20 20 20 20 3D 20 30 78 30 30 30 30 33 41 37 45 3B 0D 0A 0D 0A 75 6E 73 69 67 6E 65 64 20 63 68 61 72 20 70 61 63 6B 65 64 44 61 74 61 5B 31 38 32 5D 20 3D 20 7B 0D 0A 09 30 78 46 45 2C 20 30 78 34 32 2C 20 30 78 30 34 2C 20 30 78 31 43 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 46 45 2C 20 30 78 30 32 2C 20 30 78 39 44 2C 20 30 78 37 41 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 0D 0A 09 30 78 41 41 2C 20 30 78 46 39 2C 20 30 78 46 43 2C 20 30 78 46 43 2C 20 30 78 46 43 2C 20 30 78 36 36 2C 20 30 78 39 46 2C 20 30 78 39 31 2C 20 30 78 36 45 2C 20 30 78 39 39 2C 20 30 78 37 41 2C 20 30 78 38 35 2C 0D 0A 09 30 78 38 33 2C 20 30 78 39 35 2C 20 30 78 37 41 2C 20 30 78 38 35 2C 20 30 78 36 41 2C 20 30 78 39 46 2C 20 30 78 39 31 2C 20 30 78 38 37 2C 20 30 78 33 41 2C 20 30 78 46 43 2C 20 30 78 38 42 2C 20 30 78 44 46 2C 0D 0A 09 30 78 43 33 2C 20 30 78 32 45 2C 20 30 78 43 31 2C 20 30 78 41 33 2C 20 30 78 33 43 2C 20 30 78 44 33 2C 20 30 78 42 42 2C 20 30 78 41 35 2C 20 30 78 41 33 2C 20 30 78 33 43 2C 20 30 78 41 42 2C 20 30 78 43 35 2C 0D 0A 09 30 78 33 41 2C 20 30 78 33 43 2C 20 30 78 38 35 2C 20 30 78 41 44 2C 20 30 78 42 42 2C 20 30 78 43 35 2C 20 30 78 32 45 2C 20 30 78 43 37 2C 20 30 78 33 43 2C 20 30 78 42 42 2C 20 30 78 33 43 2C 20 30 78 41 37 2C 0D 0A 09 30 78 44 46 2C 20 30 78 44 46 2C 20 30 78 44 35 2C 20 30 78 33 43 2C 20 30 78 41 31 2C 20 30 78 42 42 2C 20 30 78 41 37 2C 20 30 78 43 35 2C 20 30 78 32 41 2C 20 30 78 31 32 2C 20 30 78 45 38 2C 20 30 78 38 35 2C 0D 0A 09 30 78 41 44 2C 20 30 78 41 42 2C 20 30 78 43 37 2C 20 30 78 33 43 2C 20 30 78 41 42 2C 20 30 78 43 37 2C 20 30 78 33 43 2C 20 30 78 42 39 2C 20 30 78 41 33 2C 20 30 78 41 42 2C 20 30 78 44 31 2C 20 30 78 41 46 2C 0D 0A 09 30 78 33 43 2C 20 30 78 41 33 2C 20 30 78 43 44 2C 20 30 78 41 33 2C 20 30 78 41 37 2C 20 30 78 43 33 2C 20 30 78 43 35 2C 20 30 78 41 33 2C 20 30 78 41 35 2C 20 30 78 33 43 2C 20 30 78 41 31 2C 20 30 78 44 39 2C 0D 0A 09 30 78 44 46 2C 20 30 78 44 33 2C 20 30 78 33 43 2C 20 30 78 35 30 2C 20 30 78 44 44 2C 20 30 78 44 39 2C 20 30 78 44 46 2C 20 30 78 43 35 2C 20 30 78 41 33 2C 20 30 78 41 37 2C 20 30 78 43 35 2C 20 30 78 33 43 2C 0D 0A 09 30 78 43 37 2C 20 30 78 41 33 2C 20 30 78 41 37 2C 20 30 78 43 35 2C 20 30 78 41 42 2C 20 30 78 44 46 2C 20 30 78 44 31 2C 20 30 78 33 43 2C 20 30 78 34 38 2C 20 30 78 32 41 2C 20 30 78 46 43 2C 20 30 78 37 31 2C 0D 0A 09 30 78 37 32 2C 20 30 78 34 32 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 41 39 2C 20 30 78 37 43 2C 20 30 78 38 31 2C 20 30 78 45 37 2C 20 30 78 36 31 2C 20 30 78 31 41 2C 20 30 78 38 31 2C 20 30 78 41 39 2C 0D 0A 09 30 78 46 43 2C 20 30 78 46 45 2C 20 30 78 30 32 2C 20 30 78 30 34 2C 20 30 78 37 41 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 41 39 2C 20 30 78 46 43 2C 20 30 78 46 45 2C 20 30 78 30 32 2C 20 30 78 45 35 2C 0D 0A 09 30 78 37 43 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 37 46 2C 20 30 78 45 38 2C 20 30 78 33 38 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 35 44 2C 20 30 78 41 41 2C 20 30 78 32 39 2C 20 30 78 34 44 2C 0D 0A 09 30 78 30 35 2C 20 30 78 30 36 2C 20 30 78 46 43 2C 20 30 78 46 43 2C 20 30 78 35 37 2C 20 30 78 41 44 2C 20 30 78 34 42 2C 20 30 78 35 41 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 41 39 2C 20 30 78 33 43 2C 0D 0A 09 30 78 41 39 2C 20 30 78 45 34 2C 20 30 78 41 44 2C 20 30 78 46 43 2C 20 30 78 33 43 2C 20 30 78 37 43 2C 20 30 78 46 43 2C 20 30 78 46 45 2C 20 30 78 30 32 2C 20 30 78 31 35 2C 20 30 78 37 43 2C 20 30 78 37 43 2C 0D 0A 09 30 78 46 43 2C 20 30 78 36 37 0D 0A 7D 3B 0D 0A 0D 0A 75 69 6E 74 33 32 5F 74 20 75 6E 70 61 63 6B 28 75 69 6E 74 33 32 5F 74 20 6B 65 79 29 20 7B 0D 0A 20 20 20 20 75 69 6E 74 33 32 5F 74 20 75 6E 70 61 63 6B 65 64 53 75 6D 20 20 3D 20 30 3B 0D 0A 20 20 20 20 75 6E 73 69 67 6E 65 64 20 63 68 61 72 20 44 6B 65 79 5B 34 5D 20 3D 20 7B 0D 0A 20 20 20 20 20 20 20 20 28 75 6E 73 69 67 6E 65 64 20 63 68 61 72 29 20 28 6B 65 79 20 3E 3E 20 32 34 29 2C 20 20 20 20 20 20 20 28 75 6E 73 69 67 6E 65 64 20 63 68 61 72 29 20 28 6B 65 79 20 3C 3C 20 38 20 3E 3E 20 32 34 29 2C 0D 0A 20 20 20 20 20 20 20 20 28 75 6E 73 69 67 6E 65 64 20 63 68 61 72 29 20 28 6B 65 79 20 3C 3C 20 31 36 20 3E 3E 20 32 34 29 2C 20 28 75 6E 73 69 67 6E 65 64 20 63 68 61 72 29 20 28 6B 65 79 20 3C 3C 20 32 34 20 3E 3E 20 32 34 29 0D 0A 20 20 20 20 7D 3B 0D 0A 0D 0A 20 20 20 20 66 6F 72 20 28 69 6E 74 20 69 20 3D 20 30 3B 20 69 20 3C 20 70 61 63 6B 65 64 44 61 74 61 53 69 7A 65 3B 20 69 2B 2B 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 75 6E 73 69 67 6E 65 64 20 63 68 61 72 20 75 6E 70 61 63 6B 65 64 42 79 74 65 20 3D 20 70 61 63 6B 65 64 44 61 74 61 5B 69 5D 3B 0D 0A 0D 0A 20 20 20 20 20 20 20 20 75 6E 70 61 63 6B 65 64 42 79 74 65 20 20 3D 20 5F 5F 72 6F 6C 62 28 75 6E 70 61 63 6B 65 64 42 79 74 65 2C 20 44 6B 65 79 5B 33 5D 29 3B 0D 0A 20 20 20 20 20 20 20 20 75 6E 70 61 63 6B 65 64 42 79 74 65 20 2B 3D 20 44 6B 65 79 5B 32 5D 3B 0D 0A 20 20 20 20 20 20 20 20 75 6E 70 61 63 6B 65 64 42 79 74 65 20 5E 3D 20 44 6B 65 79 5B 31 5D 3B 0D 0A 20 20 20 20 20 20 20 20 75 6E 70 61 63 6B 65 64 42 79 74 65 20 2B 3D 20 44 6B 65 79 5B 30 5D 3B 0D 0A 0D 0A 20 20 20 20 20 20 20 20 75 6E 70 61 63 6B 65 64 53 75 6D 20 2B 3D 20 75 6E 70 61 63 6B 65 64 42 79 74 65 3B 0D 0A 20 20 20 20 7D 0D 0A 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 75 6E 70 61 63 6B 65 64 53 75 6D 3B 0D 0A 7D 0D 0A 0D 0A 69 6E 74 20 6D 61 69 6E 28 29 20 7B 0D 0A 20 20 20 20 66 6F 72 20 28 75 69 6E 74 33 32 5F 74 20 69 20 3D 20 30 3B 20 69 20 3C 3D 20 30 78 46 46 46 46 46 46 46 46 3B 20 69 2B 2B 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 69 66 20 28 75 6E 70 61 63 6B 28 69 29 20 3D 3D 20 63 68 6B 73 75 6D 29 20 70 72 69 6E 74 66 28 22 30 78 25 2E 30 38 58 5C 6E 22 2C 20 69 29 3B 0D 0A 20 20 20 20 7D 0D 0A 0D 0A 20 20 20 20 70 72 69 6E 74 66 28 22 44 4F 4E 45 21 5C 6E 22 29 3B 0D 0A 20 20 20 20 67 65 74 63 68 28 29 3B 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 30 3B 0D 0A 7D 0D 0A | ==> |
Anyways here is the code: ! This is not a final keygen, you still have to figure out key checkum calculations ! !!! SPOILERS !!! #include #include #include #include #include const int packedDataSize = 182; const uint32_t chksum = 0x00003A7E; unsigned char packedData[182] = { 0xFE, 0x42, 0x04, 0x1C, 0x7C, 0xFC, 0xFE, 0x02, 0x9D, 0x7A, 0x7C, 0xFC, 0xAA, 0xF9, 0xFC, 0xFC, 0xFC, 0x66, 0x9F, 0x91, 0x6E, 0x99, 0x7A, 0x85, 0x83, 0x95, 0x7A, 0x85, 0x6A, 0x9F, 0x91, 0x87, 0x3A, 0xFC, 0x8B, 0xDF, 0xC3, 0x2E, 0xC1, 0xA3, 0x3C, 0xD3, 0xBB, 0xA5, 0xA3, 0x3C, 0xAB, 0xC5, 0x3A, 0x3C, 0x85, 0xAD, 0xBB, 0xC5, 0x2E, 0xC7, 0x3C, 0xBB, 0x3C, 0xA7, 0xDF, 0xDF, 0xD5, 0x3C, 0xA1, 0xBB, 0xA7, 0xC5, 0x2A, 0x12, 0xE8, 0x85, 0xAD, 0xAB, 0xC7, 0x3C, 0xAB, 0xC7, 0x3C, 0xB9, 0xA3, 0xAB, 0xD1, 0xAF, 0x3C, 0xA3, 0xCD, 0xA3, 0xA7, 0xC3, 0xC5, 0xA3, 0xA5, 0x3C, 0xA1, 0xD9, 0xDF, 0xD3, 0x3C, 0x50, 0xDD, 0xD9, 0xDF, 0xC5, 0xA3, 0xA7, 0xC5, 0x3C, 0xC7, 0xA3, 0xA7, 0xC5, 0xAB, 0xDF, 0xD1, 0x3C, 0x48, 0x2A, 0xFC, 0x71, 0x72, 0x42, 0x7C, 0xFC, 0xA9, 0x7C, 0x81, 0xE7, 0x61, 0x1A, 0x81, 0xA9, 0xFC, 0xFE, 0x02, 0x04, 0x7A, 0x7C, 0xFC, 0xA9, 0xFC, 0xFE, 0x02, 0xE5, 0x7C, 0x7C, 0xFC, 0x7F, 0xE8, 0x38, 0x7C, 0xFC, 0x5D, 0xAA, 0x29, 0x4D, 0x05, 0x06, 0xFC, 0xFC, 0x57, 0xAD, 0x4B, 0x5A, 0x7C, 0xFC, 0xA9, 0x3C, 0xA9, 0xE4, 0xAD, 0xFC, 0x3C, 0x7C, 0xFC, 0xFE, 0x02, 0x15, 0x7C, 0x7C, 0xFC, 0x67 }; uint32_t unpack(uint32_t key) { uint32_t unpackedSum = 0; unsigned char Dkey[4] = { (unsigned char) (key 24), (unsigned char) (key 24), (unsigned char) (key 24), (unsigned char) (key 24) }; for (int i = 0; i | ==> |
Hello) Have a look at silnice.00403338: add ebx, eax shr ebx, 10 mov edx, eax ... [in, eax] = unpackDWORD unpackDWORD is generated from Unlock Code. unpackDWORD is used to unpack locked data, which is verified later. If you struggle with it I can help with a c++ code to bruteforce all possible unpackDWORD values) | ==> |
Hi! "div eax" and "ud2" cause an exception. There is a SEH setup before executing these instructions (NOTE: xor dword ptr ss:[esp], 0xFFBFCEAA == pointer setup). After executing my exception handler execution returns to the next instruction after exception. Few antidebug features are present: hardware bp and software bp tests. Hope this helps :) | ==> |
Hi! "div eax" and "ud2" cause an exception. There is a SEH setup before executing these instructions (NOTE: xor dword ptr ss:[esp], 0xFFBFCEAA | ==> |