تحويل كود c الى الدالفى
#5
ما هادا اخى كاش واحد هههه لم افم شىء :laugh:

الله اعلم ما يجب تحويلة هو هاتين الدالتين فقط
PHP كود :
u8 hex2byte(u8 *hex) {
    static const 
u8 hextable[256] =
        
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x00\x00\x00\x00\x00\x00"
        "\x00\x0a\x0b\x0c\x0d\x0e\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x0a\x0b\x0c\x0d\x0e\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
        "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
;

    return((
hextable[hex[0]] << 4) | hextable[hex[1]]);
}



u8 *camfrog_pwd(u8 *pwd, u8 *clsid) {
    
AES_KEY aes_ctx;
    
int     i,
            
pwdlen,
            
clsidlen;
    static const 
u8 key[16] = "CamFrogMCU DLL01";

    for(
i = 0; pwd[i << 1]; i++) {
        
pwd[i] = hex2byte(pwd + (i << 1));
    }
    
pwdlen = i;

    if(
clsid) {
        for(
i = 0; clsid[i << 1]; i++) {
            
clsid[i] = hex2byte(clsid + (i << 1));
        }
        
clsidlen = i;

        for(
i = 0; i < pwdlen; i++) {
            
pwd[i] ^= clsid[i % clsidlen];
        }
    }

    
AES_set_decrypt_key(key, sizeof(key) << 3, &aes_ctx);
    for(
i = 0; i < pwdlen; i += 16) {
        
AES_decrypt(pwd + i, pwd + i, &aes_ctx);
    }
    
pwd[i] = 0;
    return(
pwd);
} 
الباقى على ما اضن سهل و الله اعلم .
الرد


الردود في هذا الموضوع
تحويل كود c الى الدالفى - بواسطة hanipino - 11-02-2010, 09:48 AM
تحويل كود c الى الدالفى - بواسطة hanipino - 11-02-2010, 06:59 PM
تحويل كود c الى الدالفى - بواسطة kachwahed - 11-02-2010, 07:38 PM
تحويل كود c الى الدالفى - بواسطة hanipino - 11-02-2010, 10:35 PM
تحويل كود c الى الدالفى - بواسطة kachwahed - 12-02-2010, 12:33 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم