All pastes #258550 Raw Edit

Quelque chose

public c v1 · immutable
#258550 ·published 2006-11-26 17:04 UTC
rendered paste body
#include <stdio.h>#include <stdlib.h>#include <String.h>#define BUFF 29 // taille du serial avec les tirets.// checking part.char* suppr_tirets(char *s) {    char * ret;    int i,j=0;        ret = (char *)malloc(sizeof(char) * (BUFF-4));        for(i=0; i<BUFF; i++) {             if(s[i] == '-') continue;             else {                   ret[j] = s[i];                   j++;             }    }        return ret;}char encode(char a, int idx) {    char * magic_str;    magic_str = select_magic(a);    int len = length(magic_str);    int i;        for(i=0; i<len; i++) {             if(a == magic_str[i]) break;        int j = i - idx % len + len;    return magic_str[j];}         char * select_magic(char a) {    char ** magic_str;    int i,j;        int index[5] = {11, 9, 7, 5, 4};        *magic_str = (char **)malloc(sizeof(char*)*5);    for(i=0; i<5; i++) magic_str[i] = (char *)malloc(sizeof(char)*index[i]);        magic_str[0] = "NC5HRSIOJYU";    magic_str[1] = "1W0K4Q96F";    magic_str[2] = "3D7PVZL";    magic_str[3] = "8AG2X";    magic_str[4] = "MEBT";        for(i=0; i<5; i++)             for(j=0; j<index[i]; j++)                      if(a == magic_str[i][j]) return magic_str[i];                          return 0;}    int check_serial(char *s) {    int i;        char s1[3];    char s2;    char s3;    char s4[2];    char s5[2];    char s6;    char s7;    char s8;    char s9;    char s10;    char s11[4];    char s12[21];    char s13[7];        for(i=0; i<4; i++) {s11[i] = (int)s[21+i];    printf("%d\n", s11[i]);}        memcpy(s1, s, 3);    //printf("%s", s1);    //printf("%x", s);    //printf("\n");    //memcpy(s2, (s+3), 1);    //printf("%s\t%s\n", s1, s2);    printf("%s\n", select_magic('N'));            return 1;}            char* reordonner_lettres(char *s) {      char * ret;      int i, j[25] = {23, 2, 13, 17, 10, 7, 4, 21, 9, 16, 19,                   22, 3, 15, 24, 18, 12, 6, 0, 11, 1, 8, 20,                   5, 14};            ret = (char *)malloc(sizeof(char) * (BUFF-4));            for(i=0; i<25; i++) ret[i] = s[j[i]];            return ret;}int main(int argc, char *argv[]) {        char * s;    char * ret;    int i;        s = (char *)malloc(sizeof(char) * BUFF);    ret = (char *)malloc(sizeof(char) * (BUFF-4));        s = "45OZ2-F4DHO-144RF-K2K41-HE3EA";    for(i=0; i<BUFF; i++) printf("%c", s[i]);    printf("\n");        ret = suppr_tirets(s);    ret = reordonner_lettres(ret);    check_serial(ret);        for(i=0; i<(BUFF-4); i++) printf("%c", ret[i]);    printf("\n");        system("PAUSE");       return 0;}/*    name : TO   version : "3?"   vendeur : "HS/KH1/TOR/KH2/MSD/VBZ/COT/EPG/RVD/YPG/PSI/AVQ/NFR/PAC"*/