Jump to content
Tuts 4 You

[KEYGENME] Team IREC KeygenMe #3


Recommended Posts

Posted

Here is the new Team IREC KeygenMe #3.

Codded for newbies,written in Dev C++ console windows application.

Rules :-

Only a valid keygenMe is expected which can generate valid serials on any machine.

No bruting,fishing or self keygen.

Regards,

Blue Indian

Admin,Team IREC

[iNDIAN REVERSE ENGINEERING CLUB]

WEB : Click here for website

Forum : Click here for forum

KeyGenMe #3.zip

Posted

too much math functions and floating point operation for my own preference. won't solve without bruting it. Also brute can take long time

Posted

Here's what you're doing? You perform actions with untreated memory into local variables. If the name more than the computer name, then what value will be taken from the array with the name of the computer when they are added?

Posted (edited)

If the author would have written everything correctly, then it's keygen:


#include <stdio.h>
#include <Windows.h>int main()
{
char szName[260] = {0};
char szCompName[260] = {0};
DWORD aName[128] = {0};
DWORD aCompName[128] = {0};
DWORD aSum[128] = {0}; printf("Name: ");
scanf("%s", szName); DWORD dwCompNameLen = 260;
GetComputerName(szCompName, &dwCompNameLen); int nLenOfName = lstrlen(szName);
for (int i = 0; i < nLenOfName; i++) {
aName[i] = szName[i] + 1;
} for (int i = 0; i < (int)dwCompNameLen - 1; i++) {
aCompName[i] = szCompName[i] - 2;
} for (int i = 0; i < nLenOfName; i++) {
aSum[i] = aName[i] - aCompName[i];
} int nSerial = aSum[9] + aSum[10];
nSerial = (nSerial + dwCompNameLen) * nLenOfName; printf("Serial: %d\n", nSerial); return 0;
}
too much math functions and floating point operation for my own preference. won't solve without bruting it. Also brute can take long time

Only because of this and decided to watch it. But was disappointed. :angry:

Edited by BoRoV
Posted

If the author would have written everything correctly, then it's keygen:


#include <stdio.h>
#include <Windows.h>int main()
{
char szName[260] = {0};
char szCompName[260] = {0};
DWORD aName[128] = {0};
DWORD aCompName[128] = {0};
DWORD aSum[128] = {0}; printf("Name: ");
scanf("%s", szName); DWORD dwCompNameLen = 260;
GetComputerName(szCompName, &dwCompNameLen); int nLenOfName = lstrlen(szName);
for (int i = 0; i < nLenOfName; i++) {
aName[i] = szName[i] + 1;
} for (int i = 0; i < (int)dwCompNameLen - 1; i++) {
aCompName[i] = szCompName[i] - 2;
} for (int i = 0; i < nLenOfName; i++) {
aSum[i] = aName[i] - aCompName[i];
} int nSerial = aSum[9] + aSum[10];
nSerial = (nSerial + dwCompNameLen) * nLenOfName; printf("Serial: %d\n", nSerial); return 0;
}

Only because of this and decided to watch it. But was disappointed. :angry:

Dear BoRoV as far the untreated memory considered,we have created this bug in this KGM.

By the soution by you is not working.And remember that this KGM can be solved,but some debugging and antidebugging trick needed.

And as you stated above that you are disappointed,we are sorry for that just wait for our KeygenMe 5.

I think you will surely enjoy that.

Thanks

Blue Indian

Admin,Team IREC

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...