نمایش نتایج: از شماره 1 تا 3 , از مجموع 3

موضوع: دوستان اشنا به زبان c لطفا مطالعه کنید

  1. #1
    کاربر اخراج شده
    تاریخ عضویت
    Nov 2014
    نوشته ها
    0
    تشکر تشکر کرده 
    0
    تشکر تشکر شده 
    0
    تشکر شده در
    0 پست

    پیش فرض دوستان اشنا به زبان c لطفا مطالعه کنید

    با سلام

    خوب برای تشخیص و ساخت جنرتور لایسنس نیاز به همکاری سایر دوستان هست.

    خوب ابتدا در فایل پیوست من فایل دکامپایل شده لایت اسپید رو میزارم اگر نیاز شد ببینید

    ولی در کل سیستم لایسنس بر پایه این چند فنکشین هستت

    کد PHP:

    License
    ::License(void )(
        
    _unknown_ __eax                        // r0
    )
    {
    // addr = 0x08060A70
        
    signed int __ebp// r6

        
    __eax __eax;
        return 
    __eax;
    }

    License::License(void )(
        
    _unknown_ __eax                        // r0
    )
    {
    // addr = 0x08060A78
        
    signed int __ebp// r6

        
    __eax __eax;
        return 
    __eax;
    }

    License::~Licensevoid ?...?(
        
    _unknown_ __eax                        // r0
    )
    {
    // addr = 0x08060A80
        
    signed int __ebp// r6

        
    __eax __eax;
        return 
    __eax;
    }

    License::~License(void )(
        
    _unknown_ __eax                        // r0
    )
    {
    // addr = 0x08060A88
        
    signed int __ebp// r6

        
    __eax __eax;
        return 
    __eax;
    }

    perr(char * )(
        
    _unknown_ __eax                        // r0
    )
    {
    // addr = 0x08060A90
        
    signed int __ebp// r6

        
    __eax __eax;
        
    _push(__eax);
        
    _push("[ERROR] %s\n");
        
    _push(__imp__stderr);
        
    fprintf();
        return 
    __eax;
    }

    createHostId(char & * , int )(
        
    intOrPtr __edx                         // r3
    )
    {
    // addr = 0x08060AAC
        
    char _v16;                             // _cfa_fffffff0
        
    signed int _v36;                       // _cfa_ffffffdc
        
    signed int _v52;                       // _cfa_ffffffcc
        
    char _v124;                            // _cfa_ffffff84
        
    char _v140;                            // _cfa_ffffff74
        
    char _v156;                            // _cfa_ffffff64
        
    char _v252;                            // _cfa_ffffff04
        
    intOrPtr _v256;                        // _cfa_ffffff00
        
    intOrPtr _v260;                        // _cfa_fffffefc
        
    intOrPtr _v264;                        // _cfa_fffffef8
        
    intOrPtr _v268;                        // _cfa_fffffef4
        
    signed int _v272;                      // _cfa_fffffef0
        
    signed int _v276;                      // _cfa_fffffeec
        
    intOrPtr _v280;                        // _cfa_fffffee8
        
    signed int __ebx;                      // r1
        
    _unknown_ __edi;                       // r4
        
    _unknown_ __esi;                       // r5
        
    signed int __ebp// r6
        
    intOrPtr _t55;                         // _t55
        
    intOrPtr _t56;                         // _t56
        
    intOrPtr _t57;                         // _t57
        
    intOrPtr _t58;                         // _t58
        
    intOrPtr_t62;                        // _t62
        
    intOrPtr _t66;                         // _t66
        
    _unknown_ _t73;                        // _t73
        
    char_t75;                            // _t75
        
    _unknown_ _t86;                        // _t86
        
    char_t88;                            // _t88

        
    __esp __esp 272;
        
    _push(384);
        
    _push(0);
        
    _push(ZcreateHostId);
        
    _v256 _t55;
        
    _v260 __edx;
        
    _v272 0;
        
    open64();
        
    _v264 _t55;
        
    __esp __esp 16;
        
    _t56 _t55 1;
        if(
    _t56 == 0) {
            
    _push(_t86);
            
    _push(384);
            
    _push(65);
            
    _push(ZcreateHostId);
            
    open64();
            
    _v264 _t56;
            
    __esp __esp 16;
            
    __eflags _v264 255;
            
    _t57 = -1;
            if(
    _v264 != 255) {
                
    _v272 1;
                goto 
    L1;
            }
        } else {
    L1:
            
    _t58 =  &_v124;
            
    _push(_t88);
            
    _push(_t58);
            
    _push(_v264);
            
    _push(3);
            
    __fxstat64();
            
    _v268 _t58;
            
    __esp __esp 16;
            if(
    _t58 != 0) {
                
    _t66 = (_v272 << 2) + _v272 + (_v272 << 2) + _v272 1;
                
    _v276 0;
                if(
    _t66 0) {
                    
    _v280 _t66;
                    goto 
    L6;
                    do {
                        while(
    1) {
    L6:
                            
    __esp __esp 12;
                            
    MD5_Init( &_v252);
                            
    __esp __esp 8;
                            
    _push(8);
                            
    _push( &_v36);
                            
    _push( &_v252);
                            
    MD5_Update();
                            
    __esp __esp 12;
                            
    _push(4);
                            
    _push( &_v52);
                            
    _push( &_v252);
                            
    MD5_Update();
                            
    _pop(__ecx);
                            
    _pop(__ebx);
                            
    _push( &_v252);
                            
    _push( &_v156);
                            
    _t73 MD5_Final();
                            
    __esp __esp 16;
                            if(
    _v272 != 0) {
                                break;
                            }
                            
    _push(_t73);
                            
    _push(16);
                            
    _t75 =  &_v140;
                            
    _push(_t75);
                            
    _push(_v264);
                            
    read();
                            
    __esp __esp 16;
                            if(
    _t75 == 16) {
                                
    __ecx 16;
                                
    asm("cld ");
                                
    _t88 =  &_v156;
                                
    asm("rep cmpsb ");
                                if(
    __eflags == 0) {
                                    goto 
    L5;
                                } else {
                                    goto 
    L8;
                                }
    L19:
                            } else {
    L8:
                                
    _v276 _v276 1;
                                
    _v268 = -1;
                                if(
    _v280 _v276) {
                                    continue;
                                } else {
                                }
                            }
                            goto 
    L10;
                        }
                        
    _push(0);
                        
    _push(0);
                        
    _push(0);
                        
    _push(_v264);
                        
    __ebx _v52;
                        
    lseek64();
                        
    __esp __esp 12;
                        
    _push(16);
                        
    _push( &_v156);
                        
    _push(_v264);
                        
    write();
                        
    __esp __esp 12;
                        
    _push( &_v124);
                        
    _push(_v264);
                        
    _push(3);
                        
    __fxstat64();
                        
    __esp __esp 16;
                        
    __eflags _v52 _v52;
                        if(
    _v52 != _v52) {
                            goto 
    L5;
                        }
                        goto 
    L10;
    L5:
                        
    _v276 _v276 1;
                        
    __eflags _v280 _v276;
                    } while(
    _v280 _v276);
                }
            }
    L10:
            
    __esp __esp 12;
            
    _push(_v264);
            
    close();
            
    __esp __esp 16;
            if(
    _v268 == 255) {
                
    __esp __esp 12;
                
    _push(ZcreateHostId);
                
    unlink();
            } else {
                
    _push(_v52 _v36);
                
    _push(136099744);
                
    _push(_v260);
                
    _t62 _v256;
                
    _push( *_t62);
                
    snprintf();
                 *
    _v256 =  *_v256 _t62;
            }
            
    __esp __esp 16;
            
    _t57 _v268;
        }
        
    __esp =  &_v16;
        return 
    _t57;
        goto 
    L19;
    }

    isXEN(void )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x08060D04
        
    _unknown_ _v8;                         // _cfa_fffffff8
        
    char _v4108;                           // _cfa_ffffeff4
        
    signed int __ebp// r6
        
    _unknown_ _t5;                         // _t5
        
    _unknown_ _t9;                         // _t9

        
    _push(__ebx);
        
    __esp __esp 4100;
        
    _push(136083489);
        
    _push("/proc/xen/capabilities");
        
    _push(4096);
        
    _push( &_v4108);
        
    _t5 __ecx->readFile(char * , int char * , 2)(__edx__eflags);
        
    _t9 0;
        
    __esp __esp 16;
        if(
    _t5 != 0) {
            
    __esp __esp 12;
            
    _push("find /proc/irq/ | grep xenbus");
            
    system();
            
    __esp __esp 16;
            
    __eflags _t5;
            if(
    _t5 != 0) {
                goto 
    L2;
            } else {
                return 
    2;
            }
        } else {
            
    _t9 2;
    L2:
            return 
    _t9;
        }
    }

    handler(int )(
        
    _unknown_ __eax,                       // r0
        
    _unknown_ __esi                        // r5
    )
    {
    // addr = 0x08060D5C
        
    _unknown_ _v12;                        // _cfa_fffffff4
        
    intOrPtr _v16;                         // _cfa_fffffff0
        
    intOrPtr _v40;                         // _cfa_ffffffd8
        
    signed int __ebp// r6
        
    _unknown_ _t14;                        // _t14

        
    _push(1);
        
    _push( &no_vmware);
        
    longjmp();
        
    _push(_t14);
        
    _push(__esi);
        
    __esp __esp 12;
        
    _v40 1;
        
    _push(handler(int ));
        
    _push(11);
        
    signal();
         *
    __esp =  &no_vmware;
        
    _setjmp();
        
    __esp __esp 16;
        if(
    __eax != 0) {
            
    __esp __esp 8;
            
    _v16 0;
            
    _push(0);
            
    _push(11);
            
    signal();
            return 
    _v16;
        } else {
            
    asm("in eax, dx");
            
    __esp __esp 8;
            
    _push(0);
            
    _push(11);
            
    signal();
            return 
    _v16;
        }
    }

    isVMware(void )(
        
    _unknown_ __eax,                       // r0
        
    _unknown_ __esi                        // r5
    )
    {
    // addr = 0x08060D70
        
    _unknown_ _v8;                         // _cfa_fffffff8
        
    intOrPtr _v12;                         // _cfa_fffffff4
        
    signed int __ebp// r6

        
    _push(__esi);
        
    __esp __esp 12;
        
    _v12 1;
        
    _push(handler(int ));
        
    _push(11);
        
    signal();
         *
    __esp =  &no_vmware;
        
    _setjmp();
        
    __esp __esp 16;
        if(
    __eax != 0) {
            
    __esp __esp 8;
            
    _v12 0;
            
    _push(0);
            
    _push(11);
            
    signal();
            return 
    _v12;
        } else {
            
    asm("in eax, dx");
            
    __esp __esp 8;
            
    _push(0);
            
    _push(11);
            
    signal();
            return 
    _v12;
        }
    }

    License::detectVMWare(void )(
        
    signed int __ebx,                      // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    char__edi,                           // r4
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x08060DE0
        
    char _v16;                             // _cfa_fffffff0
        
    intOrPtr _v32;                         // _cfa_ffffffe0
        
    intOrPtr _v36;                         // _cfa_ffffffdc
        
    intOrPtr _v40;                         // _cfa_ffffffd8
        
    char _v44;                             // _cfa_ffffffd4
        
    signed char _v48;                      // _cfa_ffffffd0
        
    char _v4112;                           // _cfa_ffffeff0
        
    char _v4280;                           // _cfa_ffffef48
        
    signed int __ebp// r6
        
    signed int _t20;                       // _t20
        
    signed char _t21;                      // _t21
        
    signed int _t23;                       // _t23
        
    signed int _t24;                       // _t24
        
    signed int _t26;                       // _t26
        
    char_t35;                            // _t35
        
    _unknown_ _t38;                        // _t38
        
    _unknown_ _t43;                        // _t43
        
    signed int_t44;                      // _t44

        
    _t37 __esi;
        
    __edi __edi;
        
    __edx __edx;
        
    __ecx __ecx;
        
    _t34 __ebx;
        
    _push(__edi);
        
    _push(__esi);
        
    _push(__ebx);
        
    __esp __esp 44;
        
    _t20 isXEN(void )(__ebx__eflags);
        if(
    _t20 == 0) {
            
    fork();
            
    __eflags _t20;
            
    _t34 _t20;
            if(
    __eflags 0) {
                
    __esp __esp 12;
                
    _push("fork() failed");
                
    _t21 _t20->error(char * , ... )();
                
    __esp =  &(__esp[4]);
                goto 
    L10;
            } else {
                if(
    __eflags == 0) {
                    
    __esp __esp 8;
                    
    _v36 0;
                    
    _v32 0;
                    
    _v44 0;
                    
    _v40 0;
                    
    _push( ?_? ( &_v44));
                    
    _push(4);
                    
    setrlimit64();
                    
    _t23 isVMware(void )( &_v44__esi);
                     *
    __esp _t23;
                    exit();
                    
    _push(_t43);
                    
    _t44 __esp;
                    
    _push(_t37);
                    
    _push(_t34);
                    
    __esp __esp 4196;
                    
    _t35 =  &_v4280;
                    
    _push(_t35);
                    
    _push("/proc/vz/vestat");
                    
    _push(3);
                    
    __xstat64();
                    
    _t38 0;
                    
    __esp =  &(__esp[4]);
                    
    __eflags _t23;
                    if(
    __eflags != 0) {
    L15:
                        
    _t24 isXEN(void )(_t35__eflags);
                        
    __eflags _t24;
                        if(
    _t24 != 0) {
                            
    __esp =  &_v16;
                            
    _pop(__ebx);
                            
    _pop(__esi);
                            return 
    2;
                        } else {
                            
    _t36 _isVMWare;
                            
    __eflags _isVMWare;
                            if(
    __eflags == 0) {
                                
    _push(136083489);
                                
    _push("/proc/cpuinfo");
                                
    _push(4096);
                                
    _t36 =  &_v4112;
                                
    _push(_t36);
                                
    _t26 __ecx->readFile(char * , int char * , 2)(__edx__eflags);
                                
    _pop(__edx);
                                
    _pop(__ecx);
                                 *((
    char*)(_t44 _t26 + -4104)) = 0;
                                
    _push("User Mode Linux");
                                
    _push(_t36);
                                
    strstr();
                                
    __esp =  &(__esp[4]);
                                
    __eflags _t26;
                                if(
    _t26 == 0) {
                                    goto 
    L18;
                                } else {
                                    
    __esp =  &_v16;
                                    
    _pop(__ebx);
                                    
    _pop(__esi);
                                    return 
    4;
                                }
                            } else {
                                
    _t38 3;
    L18:
                                
    __esp =  &_v16;
                                
    _pop(__ebx);
                                
    _pop(__esi);
                                return 
    _t38;
                            }
                        }
                    } else {
                        
    _push(_t23);
                        
    _push(_t35);
                        
    _push("/proc/vz/vzquota");
                        
    _push(3);
                        
    __xstat64();
                        
    __esp =  &(__esp[4]);
                        
    __eflags _t23 1;
                        if(
    __eflags == 0) {
                            
    __esp =  &_v16;
                            
    _pop(__ebx);
                            
    _pop(__esi);
                            return 
    0;
                        } else {
                            goto 
    L15;
                        }
                    }
                } else {
                    
    __edi =  &_v48;
                    do {
                        
    __esp __esp 12;
                        
    _t21 my_sleep(100);
                        
    __esp =  &(__esp[2]);
                        
    _push(1);
                        
    _push(__edi);
                        
    _push(_t34);
                        
    waitpid();
                        
    __esp =  &(__esp[4]);
                        
    __eflags _t21 _t34;
                        if(
    _t21 != _t34) {
                            goto 
    L5;
                        } else {
                            
    _t21 _v48;
                            
    __eflags _t21 127;
                            if(
    __eflags != 0) {
                                goto 
    L5;
                            } else {
                                
    _t20 __eflags == 255;
                                
    _isVMWare _t20;
                                goto 
    L1;
                            }
                        }
                        goto 
    L23;
    L5:
                        
    _t37 1;
                        
    __eflags 9;
                    } while(
    <= 9);
                    
    __esp __esp 8;
                    
    _push(9);
                    
    _push(_t34);
                    
    kill();
                    
    __esp =  &(__esp[4]);
    L10:
                    
    __esp =  &_v16;
                    
    _pop(__ebx);
                    
    _pop(__esi);
                    
    _pop(__edi);
                    return 
    _t21;
                }
            }
        } else {
    L1:
            
    __esp =  &_v16;
            
    _pop(__ebx);
            
    _pop(__esi);
            
    _pop(__edi);
            return 
    _t20;
        }
    L23:
    }

    detectVPS(void )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x08060EAC
        
    char _v12;                             // _cfa_fffffff4
        
    char _v4108;                           // _cfa_ffffeff4
        
    char _v4204;                           // _cfa_ffffef94
        
    _unknown_ __esi;                       // r5
        
    signed int __ebp// r6
        
    _unknown_ _t9;                         // _t9
        
    _unknown_ _t12;                        // _t12
        
    char_t18;                            // _t18
        
    _unknown_ _t20;                        // _t20

        
    __edx __edx;
        
    __ecx __ecx;
        
    _push(__ebx);
        
    __esp __esp 4196;
        
    _t18 =  &_v4204;
        
    _push(_t18);
        
    _push("/proc/vz/vestat");
        
    _push(3);
        
    __xstat64();
        
    _t20 0;
        
    __esp __esp 16;
        if(
    _t9 != 0) {
    L2:
            if(
    isXEN(void )(_t18_t26) != 0) {
                
    __esp =  &_v12;
                
    _pop(__ebx);
                return 
    2;
            } else {
                
    _t19 _isVMWare;
                if(
    _isVMWare == 0) {
                    
    _push(136083489);
                    
    _push("/proc/cpuinfo");
                    
    _push(4096);
                    
    _t19 =  &_v4108;
                    
    _push(_t19);
                    
    _t12 __ecx->readFile(char * , int char * , 2)(__edx__eflags);
                    
    _pop(__edx);
                    
    _pop(__ecx);
                     *((
    char*)(__ebp _t12 + -4104)) = 0;
                    
    _push("User Mode Linux");
                    
    _push(_t19);
                    
    strstr();
                    
    __esp __esp 16;
                    
    __eflags _t12;
                    if(
    _t12 == 0) {
                        goto 
    L5;
                    } else {
                        
    __esp =  &_v12;
                        
    _pop(__ebx);
                        return 
    4;
                    }
                } else {
                    
    _t20 3;
    L5:
                    
    __esp =  &_v12;
                    
    _pop(__ebx);
                    return 
    _t20;
                }
            }
        } else {
            
    _push(_t9);
            
    _push(_t18);
            
    _push("/proc/vz/vzquota");
            
    _push(3);
            
    __xstat64();
            
    __esp __esp 16;
            
    _t26 _t9 1;
            if(
    _t9 == 0) {
                
    __esp =  &_v12;
                
    _pop(__ebx);
                return 
    0;
            } else {
                goto 
    L2;
            }
        }
    }

    getMAC(ifi_infochar * * , int int * )(
        
    _unknown_ __ebx,                       // r1
        
    intOrPtr __ecx,                        // r2
        
    intOrPtr __edx,                        // r3
        
    _unknown_ __eflags,                    // r9
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x08060F70
        
    _unknown_ _v16;                        // _cfa_fffffff0
        
    intOrPtr _v20;                         // _cfa_ffffffec
        
    intOrPtr _v24;                         // _cfa_ffffffe8
        
    intOrPtr _v28;                         // _cfa_ffffffe4
        
    intOrPtr _v32;                         // _cfa_ffffffe0
        
    signed int __ebp// r6
        
    intOrPtr _t46;                         // _t46
        
    _unknown_ _t66;                        // _t66
        
    intOrPtr _t68;                         // _t68
        
    intOrPtr _t80;                         // _t80
        
    short _t83;                            // _t83

        
    _t68 _t46;
        
    _v20 __edx;
        
    _v28 __edx;
        
    _v24 __ecx;
         *
    _a4 detectVPS(void )(_t68__ecx__edx__eflags);
        if(
    _t68 == 0) {
            
    _v32 _v20;
            goto 
    L8;
        } else {
            
    _v32 _v20;
            do {
                
    _t83 =  *((short*)(_t68 24));
                if(
    _t83 != 0) {
                    
    asm("cld ");
                    
    asm("rep cmpsb ");
                    if(
    _t83 != 0) {
                        
    __esp __esp 8;
                        
    _push( *(_t68 21) & 255);
                        
    _push( *(_t68 20) & 255);
                        
    _push( *(_t68 19) & 255);
                        
    _push( *(_t68 18) & 255);
                        
    _push( *(_t68 17) & 255);
                        
    _push( *(_t68 16) & 255);
                        
    _t66 136083489;
                        if(
    _v32 != _v28) {
                            
    _t66 136055055;
                        }
                        
    _push(_t66);
                        
    _push("%s%02X:%02X:%02X:%02X:%02X:%02X");
                        
    _push(_v24);
                        
    _push(_v32);
                        
    snprintf();
                        
    _t80 _v20 _t66;
                        
    _v32 _t80;
                        
    _v20 _t80;
                        
    _v24 _v24 _t66;
                        
    __esp __esp 48;
                    }
                }
                
    _t68 =  *((intOrPtr*)(_t68 44));
            } while(
    _t68 != 0);
    L8:
            if(
    _v32 == _v28) {
    L11:
                if(
    createHostId(char & * , int )(_v24) + == 0) {
                    
    createHostId(char & * , int )(_v24);
                    
    _v32 _v20;
                } else {
                    
    _v32 _v20;
                }
    L13:
                
    _v32 _v32 _v28;
                return 
    _v32;
            }
            if( *
    _a4 == 0) {
                goto 
    L13;
            }
             *
    _v32 44;
            
    _v20 _v20 1;
            goto 
    L11;
        }
    }

    License::readSerialNum(char * , char * , int )(
        
    _unknown_ __eflags,                    // r9
        
    intOrPtr _a4,                          // _cfa_4
        
    intOrPtr _a8,                          // _cfa_8
        
    intOrPtr _a12                          // _cfa_c
    )
    {
    // addr = 0x08061070
        
    _unknown_ _v16;                        // _cfa_fffffff0
        
    char __ebx;                            // r1
        
    _unknown_ __edi;                       // r4
        
    intOrPtr __esi;                        // r5
        
    signed int __ebp// r6
        
    char _t9;                              // _t9
        
    char _t11;                             // _t11
        
    _unknown_ _t14;                        // _t14

        
    _push(_a4);
        
    _push("conf/serial.no");
        
    _t14 _a12 1;
        
    _push(_t14);
        
    __esi _a8;
        
    _push(__esi);
        
    _t9 __ecx->readFile(char * , int char * , 2)(__edx__eflags);
        
    __esp __esp 16;
        
    __ebx _t9;
        if(
    _t9 == 255) {
            
    _push(_a4);
            
    _push( &M081C2AF1);
            
    _push(_t14);
            
    _push(__esi);
            
    __ebx __ecx->readFile(char * , int char * , 2)(__edx__eflags);
            
    __esp __esp 16;
        }
        if(
    __ebx >= 0) {
            while(
    1) {
                
    __esp __esp 12;
                
    _t11 =  *((char*)(__esi __ebx 1));
                
    _push(_t11);
                
    isspace();
                
    __esp __esp 16;
                
    __eflags _t11;
                if(
    _t11 == 0) {
                    break;
                }
                
    __ebx __ebx 1;
                
    __eflags __ebx;
            }
             *((
    char*)(__esi __ebx)) = 0;
        } else {
        }
        return 
    __ebx;
    }

    getSerialNum(char * , char * , int )(
        
    _unknown_ __ecx,                       // r2
        
    signed int __edx,                      // r3
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x080610DC
        
    char _v16;                             // _cfa_fffffff0
        
    unsigned int _v60;                     // _cfa_ffffffc4
        
    signed int _v64;                       // _cfa_ffffffc0
        
    _unknown_ __ebx;                       // r1
        
    _unknown_ __edi;                       // r4
        
    _unknown_ __esi;                       // r5
        
    signed int __ebp// r6
        
    _unknown_ _t47;                        // _t47
        
    signed int _t48;                       // _t48
        
    signed int _t50;                       // _t50
        
    char _t51;                             // _t51
        
    _unknown_ _t53;                        // _t53
        
    char_t54;                            // _t54
        
    signed int _t56;                       // _t56
        
    signed char _t62;                      // _t62
        
    signed int _t64;                       // _t64
        
    signed int _t69;                       // _t69
        
    signed int _t81;                       // _t81
        
    char_t82;                            // _t82
        
    _unknown_ _t91;                        // _t91
        
    signed char _t105;                     // _t105
        
    signed int _t112;                      // _t112
        
    signed int _t113;                      // _t113
        
    char _t114;                            // _t114
        
    signed int _t124;                      // _t124
        
    _unknown_ _t125;                       // _t125
        
    signed int _t126;                      // _t126
        
    _unknown_ _t127;                       // _t127

        
    _push(_t127);
        
    _push(_t81);
        
    __esp __esp 64;
        
    _push(__ecx);
        
    _push(__edx);
        
    _push(_t47);
        
    _t128 __edx;
        
    _t48 __eflags->readSerialNum(char * , char * , int )();
        
    __esp __esp 16;
        
    _t112 _t48;
        if(
    _t48 >= 0) {
             *((
    char*)(__edx _t48)) = 0;
            
    _t82 __edx _t48;
            while(
    _t128 != _t82) {
                
    __esp __esp 12;
                
    _t50 =  *_t128;
                
    _push(_t50);
                
    isspace();
                
    __esp __esp 16;
                
    __eflags _t50;
                if(
    _t50 == 0) {
    L8:
                    if(
    _t82 _t128) {
    L6:
                        
    __esp __esp 12;
                        
    _t51 =  *((char*)(_t82 1));
                        
    _push(_t51);
                        
    isspace();
                        
    __esp __esp 16;
                        if(
    _t51 != 0) {
                            
    _t82 _t82 1;
                            goto 
    L8;
                        }
                    }
                } else {
                    
    _t128 _t128 1;
                    
    __eflags _t128;
                    continue;
                }
    L9:
                 *
    _t82 0;
                
    asm("cld ");
                
    asm("repne scasb ");
                
    _t53 0xfffffffffffffffe;
                
    _t81 4;
                if( !-
    16 4) {
    L27:
                    
    _t54 ERR_INV_SERIAL;
                    goto 
    L28;
                } else {
                    if(
    _t53 == 19) {
                        
    __eflags =  *((char*)(_t128 4)) - 45;
                        if( *((
    char*)(_t128 4)) != 45) {
                            goto 
    L27;
                        } else {
                            
    __eflags =  *((char*)(_t128 9)) - 45;
                            if( *((
    char*)(_t128 9)) == 45) {
                                
    __eflags =  *((char*)(_t128 14)) - 45;
                                if( *((
    char*)(_t128 14)) != 45) {
                                    goto 
    L27;
                                } else {
                                    
    _t81 5;
                                    goto 
    L11;
                                }
    L33:
                            } else {
                                goto 
    L27;
                            }
                        }
                    } else {
    L11:
                        
    _t124 0;
                        
    _t91 _t81 _t81 _t128;
                        
    _t113 _t128;
                        
    _t128 _t128;
                        do {
                             *((
    char*)(__ebp _t124 40)) =  *_t113;
                             *((
    char*)(__ebp _t124 36)) =  *((intOrPtr*)(_t113 _t81));
                             *((
    char*)(__ebp _t124 32)) =  *((intOrPtr*)(_t113 _t81 2));
                             *((
    char*)(__ebp _t124 28)) =  *((intOrPtr*)(_t91 _t124));
                            
    _t124 _t124 1;
                            
    _t113 _t113 1;
                        } while(
    _t124 <= 3);
                        
    _t125 0;
                        while(
    1) {
                            
    _t62 =  *((intOrPtr*)(__ebp _t125 40));
                            if(
    _t62 0) {
                                goto 
    L27;
                            }
                            
    _t114 =  *((intOrPtr*)((_t62 255) +  &Base64::s_decodeTable));
                            if(
    _t114 == 255) {
                                goto 
    L27;
                            } else {
                                
    _t64 =  *(_t125 +  &s_achLocSwitch) & 255;
                                
    _t125 _t125 1;
                                 *((
    char*)(__ebp _t64 56)) = _t114;
                                if(
    _t125 <= 15) {
                                    continue;
                                } else {
                                    
    _t126 0;
                                    do {
                                        
    _v64 _t126 1;
                                        
    _t69 =  *(__ebp _t126 48) & 255;
                                        
    _t128 = (_t69 << _t126 _t69 >> _t126) & 63;
                                        
    _t105 = (_t126 << _t126) + 42 ^ (( *(__ebp _t126 56) & 255) << _t126 | ( *(__ebp _t126 56) & 255) >> _t126) & 63 ^ (( *(__ebp _t126 52) & 255) << _v64 | ( *(__ebp _t126 52) & 255) >> _t126) & 63 ^ (_t69 << _t126 _t69 >> _t126) & 63;
                                        
    _t81 0;
                                        while(
    _t81 _t126) {
                                            
    _t105 = (_t105 3) << | (_t105 0xc) << | (_t105 0x20) >> | (_t105 0x10) >> 1;
                                            
    _t81 _t81 1;
                                            
    __eflags _t81;
                                        }
                                        if(
    _t105 !=  *((intOrPtr*)(__ebp _t126 44))) {
                                            goto 
    L27;
                                        } else {
                                            goto 
    L22;
                                        }
                                        goto 
    L29;
    L22:
                                        
    _t126 _v64;
                                    } while(
    _t126 <= 3);
                                    
    _t56 _v60 >> 255;
                                    if(
    _t56 1) {
                                        
    _t54 "Serial number type does not match server's edition!";
    L28:
                                        
    perr(char * )(_t54);
                                        
    _t56 = -1;
                                    }
                                }
                            }
                            goto 
    L29;
                        }
                        goto 
    L27;
                    }
                }
    L29:
                
    _t112 _t56;
                goto 
    L30;
            }
            if(
    _t82 _t128) {
                goto 
    L6;
            }
            goto 
    L9;
        }
    L30:
        
    __esp =  &_v16;
        
    _pop(__ebx);
        
    _pop(__esi);
        return 
    _t112;
        goto 
    L33;
    }

    getDecryptedKey(unsigned char * , int )(
        
    intOrPtr __eax,                        // r0
        
    _unknown_ __edx                        // r3
    )
    {
    // addr = 0x080612C4
        
    char _v29;                             // _cfa_ffffffe3
        
    char _v30;                             // _cfa_ffffffe2
        
    char _v31;                             // _cfa_ffffffe1
        
    char _v32;                             // _cfa_ffffffe0
        
    char _v33;                             // _cfa_ffffffdf
        
    char _v34;                             // _cfa_ffffffde
        
    char _v35;                             // _cfa_ffffffdd
        
    char _v36;                             // _cfa_ffffffdc
        
    char _v37;                             // _cfa_ffffffdb
        
    char _v38;                             // _cfa_ffffffda
        
    char _v39;                             // _cfa_ffffffd9
        
    char _v40;                             // _cfa_ffffffd8
        
    char _v41;                             // _cfa_ffffffd7
        
    char _v42;                             // _cfa_ffffffd6
        
    char _v43;                             // _cfa_ffffffd5
        
    char _v44;                             // _cfa_ffffffd4
        
    intOrPtr _v48;                         // _cfa_ffffffd0
        
    signed int _v64;                       // _cfa_ffffffc0
        
    signed int _v80;                       // _cfa_ffffffb0
        
    signed int __ebx;                      // r1
        
    signed int __edi;                      // r4
        
    _unknown_ __esi;                       // r5
        
    signed int __ebp// r6
        
    signed int _t35;                       // _t35
        
    signed char _t37;                      // _t37
        
    signed int _t43;                       // _t43

        
    _v48 __eax;
        
    _v44 134;
        
    _v43 33;
        
    _v42 216;
        
    _v41 16;
        
    _v40 193;
        
    _v39 31;
        
    _v38 129;
        
    _v37 96;
        
    _v36 169;
        
    _v35 104;
        
    _v34 103;
        
    _v33 21;
        
    _v32 112;
        
    _v31 110;
        
    _v30 238;
        
    _v29 184;
        if(
    __edx <= 450 || __edx 451) {
            return -
    1;
        } else {
            
    __edi 0;
            do {
                
    __esi 0;
                if(
    __edi >= 451) {
                    goto 
    L7;
                }
                
    __ebx __edi;
                while(
    1) {
                    
    _t35 __ebx;
                    
    asm("cdq ");
                    
    _t43 _t35 226;
                    
    _v64 _t43;
                    
    _v80 _t35 226;
                    
    _t37 =  *((intOrPtr*)(__ebp __esi 40));
                    
    __esi __esi 1;
                     *(
    _v48 __ebx) = _t37 ^  *(_v80 _t43 +  &s_achKey);
                    if(
    __esi >= 16) {
                        goto 
    L7;
                    }
                    
    __ebx __edi __esi;
                    if(
    __ebx 451) {
                        continue;
                    }
                    goto 
    L7;
                }
    L7:
                
    __edi __edi 16;
            } while(
    __edi 451);
            return 
    451;
        }
    }

    buildLicenseRequest(char * , char * , int )(
        
    _unknown_ __ebx,                       // r1
        
    intOrPtr __ecx,                        // r2
        
    intOrPtr __edx,                        // r3
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x08061384
        
    _unknown_ _v16;                        // _cfa_fffffff0
        
    char _v852;                            // _cfa_fffffcac
        
    char _v1052;                           // _cfa_fffffbe4
        
    char _v1308;                           // _cfa_fffffae4
        
    char _v1564;                           // _cfa_fffff9e4
        
    char _v1704;                           // _cfa_fffff958
        
    char _v1834;                           // _cfa_fffff8d6
        
    char _v1964;                           // _cfa_fffff854
        
    char _v4012;                           // _cfa_fffff054
        
    intOrPtr _v4016;                       // _cfa_fffff050
        
    intOrPtr _v4020;                       // _cfa_fffff04c
        
    intOrPtr _v4024;                       // _cfa_fffff048
        
    _unknown_ __edi;                       // r4
        
    signed int __ebp// r6
        
    _unknown_ _t18;                        // _t18
        
    intOrPtr _t22;                         // _t22
        
    char_t23;                            // _t23
        
    char_t27;                            // _t27
        
    _unknown_ _t30;                        // _t30
        
    _unknown_ _t34;                        // _t34
        
    intOrPtr _t35;                         // _t35
        
    char_t36;                            // _t36
        
    char_t41;                            // _t41
        
    char_t44;                            // _t44
        
    char_t45;                            // _t45
        
    _unknown_ _t47;                        // _t47
        
    intOrPtr _t49;                         // _t49
        
    _unknown_ _t51;                        // _t51

        
    _v4020 __edx;
        
    _v4024 __ecx;
        
    _t41 =  &_v1308;
        
    _t47 getSerialNum(char * , char * , int )(256_t41__eflags);
        
    _t51 _t47 255;
        
    _t18 = -1;
        if(
    _t51 != 0) {
            
    __esp __esp 8;
            
    _push(0);
            
    _push(2);
            
    _t34 256->get_ifi_info(int int )(_t41_t51);
            
    _t44 =  &_v1564;
            
    _t22 getMAC(ifi_infochar * * , int int * )(_t34256_t44_t51,  &_v4016);
            
    __esp __esp 16;
            if(
    _t22 <= 0) {
    L14:
                
    _t23 "Network configuration is invalid, at least one working network interface is required.\n";
                goto 
    L12;
            } else {
                if(
    _t34 != 0) {
                    
    __esp __esp 12;
                    
    _t22 _t34->free_ifi_info(ifi_info)();
                    
    __esp __esp 12;
                }
                if(
    _t47 == 1) {
                    
    _t22 _v4016;
                    
    __eflags _t22;
                    if(
    _t22 != 0) {
                        goto 
    L5;
                    } else {
                        
    _t23 "VPS serial number can only be used on a VPS machine.\n";
    L12:
                        
    perr(char * )(_t23);
                        
    _t18 = -2;
                    }
                } else {
    L5:
                    
    _push(_t22);
                    
    _push(390);
                    
    _push(0);
                    
    _t35 =  &_v1964;
                    
    _push(_t35);
                    
    memset();
                     *
    __esp _t35;
                    
    uname();
                     *
    __esp =  &_v1704;
                    
    _push( &_v1834);
                    
    _push(_t35);
                    
    _push(_t44);
                    
    _push( &M081C96DE);
                    
    _t27 =  &_v1308;
                    
    _push(_t27);
                    
    _push("Serial: %s\nRelease: %s\nMAC: %s\nOS: %s %s\nMachine: %s\n");
                    
    _push(1024);
                    
    _t45 =  &_v1052;
                    
    _push(_t45);
                    
    snprintf();
                    
    __esp __esp 48;
                    
    _t36 _t27;
                    if(
    _t27 200) {
                        
    _t36 200;
                        
    _v852 0;
                    }
                    
    _t49 =  &_v4012;
                    
    SSLContext::initSSL(void )();
                    
    _t30 getDecryptedKey(unsigned char * , int )(_t492048);
                    if(
    _t30 == 255) {
    L13:
                        
    perr(char * )("Failed to encrpyt request!");
                        
    __esp __esp 12;
                        
    _push(1);
                        exit();
                        goto 
    L14;
                    } else {
                        
    __esp __esp 8;
                        
    _push(_v4024);
                        
    _push(_v4020);
                        
    _push(_t36);
                        
    _push(_t45);
                        
    _push(_t30);
                        
    _push(_t49);
                        
    _t18 2048->publickey_encryptunsigned char * , int char * , int char * , int ?...?(_t49);
                        
    __esp __esp 32;
                        if(
    _t18 == 255) {
                            goto 
    L13;
                        }
                    }
                }
            }
        }
        return 
    _t18;
    }

    License::generateLicenseRequest(char * )(
        
    char__ebx,                           // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags,                    // r9
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x080614F4
        
    intOrPtr _v0;                          // _cfa_0
        
    char _v20;                             // _cfa_ffffffec
        
    char _v1052;                           // _cfa_fffffbe4
        
    char _v1564;                           // _cfa_fffff9e4
        
    char _v2080;                           // _cfa_fffff7e0
        
    char _v3672;                           // _cfa_fffff1a8
        
    _unknown_ __edi;                       // r4
        
    signed int __ebp// r6
        
    _unknown_ _t12;                        // _t12
        
    char_t13;                            // _t13
        
    char_t14;                            // _t14
        
    _unknown_ _t17;                        // _t17
        
    _unknown_ _t20;                        // _t20
        
    _unknown_ _t21;                        // _t21
        
    char_t22;                            // _t22
        
    char_t23;                            // _t23
        
    char_t28;                            // _t28
        
    _unknown_ _t30;                        // _t30
        
    intOrPtr _t31;                         // _t31
        
    char_t32;                            // _t32
        
    _unknown_ _t34;                        // _t34
        
    char_t35;                            // _t35
        
    _unknown_ _t36;                        // _t36
        
    _unknown_ _t39;                        // _t39

        
    _t23 __ebx;
        
    __esp __esp 1548;
        
    _t31 _a4;
        
    _t28 =  &_v1052;
        
    _t12 buildLicenseRequest(char * , char * , int )(__ebx1024_t28__esi__eflags);
        
    _t39 _t12;
        
    _t34 _t12;
        if(
    _t39 0) {
            
    __esp __esp 12;
            
    _push(1);
            goto 
    L5;
        } else {
            
    _push("lic_req.bin");
            
    _push(_t31);
            
    _push(512);
            
    _push( &_v1564);
            
    _t20 1024->getAbsoluteFile(char * , unsigned int char * , 2)(_t28_t39);
            
    __esp __esp 16;
            
    _t21 _t20 1;
            if(
    _t21 == 0) {
    L3:
                
    _push(_t34);
                
    _push(_t31);
                
    _push("[ERROR] Failed to create license key request file - lic_req.bin under %s!\n");
                
    _push(__imp__stderr);
                
    fprintf();
                
    _pop(__ebx);
    L4:
                
    _push(1);
    L5:
                exit();
            } else {
                
    _push(_t21);
                
    _push(438);
                
    _push(65);
                
    _t22 =  &_v1564;
                
    _push(_t22);
                
    open64();
                
    __esp __esp 16;
                
    _t23 _t22;
                if(
    _t22 == 255) {
                    goto 
    L3;
                }
            }
        }
        
    _push(1024);
        
    _push(_t34);
        
    _t13 =  &_v1052;
        
    _push(_t13);
        
    _push(_t23);
        
    write();
        
    __esp __esp 16;
        if(
    _t13 != _t34) {
            
    __esp __esp 12;
            
    _push("write()");
            
    perror();
            
    _pop(__ebx);
            goto 
    L4;
        }
        
    __esp __esp 12;
        
    _push(_t23);
        
    close();
        
    _pop(__eax);
        
    _pop(__edx);
        
    _t14 =  &_v1564;
        
    _push(_t14);
        
    _push("[OK] You license key request has been created at %s.\n");
        
    printf();
         *
    __esp 0;
        exit();
        
    _push(_t36);
        
    _push(_t31);
        
    _push(_t34);
        
    _push(_t23);
        
    __esp __esp 2060;
        
    _t32 _t14;
        
    _t35 _t28;
        
    _t30 getDecryptedKey(unsigned char * , int )( &_v36722048);
        
    __eflags _t30 255;
        
    _t17 = -1;
        if(
    _t30 != 255) {
            
    __esp __esp 8;
            
    _push(_v0);
            
    _push(1024);
            
    _push(_t35);
            
    _push(_t32);
            
    _push(_t30);
            
    _push( &_v2080);
            
    _t17 _t30->publickey_decrypt(unsigned char * , int char * , int char * , int )(_t35);
            
    __esp __esp 32;
        }
        
    __esp =  &_v20;
        return 
    _t17;
    }

    decrypt_license_key(char * , int char * , int )(
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __esi,                       // r5
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x080615C8
        
    _unknown_ _v16;                        // _cfa_fffffff0
        
    char _v2076;                           // _cfa_fffff7e4
        
    _unknown_ __ebx;                       // r1
        
    _unknown_ __edi;                       // r4
        
    signed int __ebp// r6
        
    _unknown_ _t5;                         // _t5
        
    _unknown_ _t8;                         // _t8
        
    _unknown_ _t12;                        // _t12

        
    __ecx __ecx;
        
    __edi _t5;
        
    __ebx __ecx;
        
    _t12 getDecryptedKey(unsigned char * , int )( &_v20762048);
        
    _t8 = -1;
        if(
    _t12 != 255) {
            
    __esp __esp 8;
            
    _push(_a4);
            
    _push(__ebx);
            
    _push(__edx);
            
    _push(__edi);
            
    _push(_t12);
            
    _push( &_v2076);
            
    _t8 _t12->publickey_decrypt(unsigned char * , int char * , int char * , int )(__edx);
            
    __esp __esp 32;
        }
        return 
    _t8;
    }

    build_format_string(int char * )(
        
    _unknown_ __eax,                       // r0
        
    char__edx                            // r3
    )
    {
    // addr = 0x08061618
        
    signed int __ebp// r6
        
    char_t2;                             // _t2
        
    char_t3;                             // _t3
        
    _unknown_ _t5;                         // _t5

        
    __ecx __eax;
        
    __ebp __esp;
        
    _t2 __edx;
        
    _t5 0;
        while(
    _t5 __ecx) {
             *
    _t2 37;
            
    _t3 _t2 1;
             *
    _t3 99;
            
    _t5 _t5 1;
            
    _t2 _t3 1;
        }
        
    __esp __ebp;
        return 
    _t2;
    }

    License::checkLicenseKey(char * , long & , 2char * , int ifi_info)(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __eflags,                    // r9
        
    _unknown_ _a4,                         // _cfa_4
        
    signed int _a8,                        // _cfa_8
        
    signed int _a12,                       // _cfa_c
        
    signed int _a16,                       // _cfa_10
        
    intOrPtr _a20,                         // _cfa_14
        
    signed int _a24                        // _cfa_18
    )
    {
    // addr = 0x08061634
        
    char _v16;                             // _cfa_fffffff0
        
    char _v284;                            // _cfa_fffffee4
        
    char _v540;                            // _cfa_fffffde4
        
    char _v604;                            // _cfa_fffffda4
        
    char _v860;                            // _cfa_fffffca4
        
    signed int _v864;                      // _cfa_fffffca0
        
    signed int _v868;                      // _cfa_fffffc9c
        
    signed int_v872;                     // _cfa_fffffc98
        
    signed int _v876;                      // _cfa_fffffc94
        
    signed int _v880;                      // _cfa_fffffc90
        
    signed int _v884;                      // _cfa_fffffc8c
        
    signed int _v888;                      // _cfa_fffffc88
        
    signed int _v892;                      // _cfa_fffffc84
        
    signed int _v896;                      // _cfa_fffffc80
        
    signed int _v900;                      // _cfa_fffffc7c
        
    signed int _v904;                      // _cfa_fffffc78
        
    signed int _v908;                      // _cfa_fffffc74
        
    signed int _v912;                      // _cfa_fffffc70
        
    signed int _v916;                      // _cfa_fffffc6c
        
    signed int _v917;                      // _cfa_fffffc6b
        
    _unknown_ __edi;                       // r4
        
    _unknown_ __esi;                       // r5
        
    signed int __ebp// r6
        
    signed int _t117;                      // _t117
        
    _unknown_ _t118;                       // _t118
        
    signed int _t120;                      // _t120
        
    signed int _t123;                      // _t123
        
    signed int _t127;                      // _t127
        
    signed int _t130;                      // _t130
        
    char_t134;                           // _t134
        
    char_t138;                           // _t138
        
    _unknown_ _t141;                       // _t141
        
    char_t143;                           // _t143
        
    char_t147;                           // _t147
        
    char_t151;                           // _t151
        
    char_t153;                           // _t153
        
    char_t155;                           // _t155
        
    signed int _t162;                      // _t162
        
    signed int _t163;                      // _t163
        
    signed int _t168;                      // _t168
        
    signed int _t169;                      // _t169
        
    signed int _t172;                      // _t172
        
    signed int _t174;                      // _t174
        
    signed int _t176;                      // _t176
        
    signed int _t178;                      // _t178
        
    signed int _t182;                      // _t182
        
    char_t185;                           // _t185
        
    char_t186;                           // _t186
        
    char_t187;                           // _t187
        
    signed int _t188;                      // _t188
        
    char_t189;                           // _t189
        
    signed int _t193;                      // _t193
        
    signed int _t194;                      // _t194
        
    signed int _t195;                      // _t195
        
    signed int _t197;                      // _t197
        
    signed int _t215;                      // _t215
        
    signed int _t217;                      // _t217
        
    signed int _t219;                      // _t219
        
    signed int _t221;                      // _t221
        
    signed int _t222;                      // _t222
        
    char_t223;                           // _t223

        
    __esp __esp 920;
        
    _t219 _a16;
        
    _t193 _a20 _t219;
        
    _t117 _a8;
        
    _v864 1;
        
    _v876 0;
        
    _v880 _t193;
        
    _v884 0;
        
    _v888 0;
        
    _v892 0;
        
    _v896 0;
        
    _v900 1;
        
    _v904 0;
        
    _v868 _t117;
        
    _push(0);
        
    _v872 _a12;
        
    time();
        
    __esp __esp 16;
        
    _v908 _t117;
         *
    _v872 1158167400;
        if(
    _t219 == _v880) {
    L66:
            
    _push(_t117);
            
    _push(_v900);
            
    _push("[WARNING] Server signature does not match the license key #%d.\n          Please request a new license key! \n");
            goto 
    L67;
        } else {
            do {
                
    _t120 _v880 _t219;
                
    _push(_t193);
                
    _push(_t120);
                
    _push(10);
                
    _push(_t219);
                
    memchr();
                
    __esp __esp 16;
                
    _v912 _t120;
                if(
    _t120 == 0) {
                    
    _v912 _v880;
                }
                
    _t201 _v912;
                 *
    _t201 0;
                
    _t123 _t201 _t219;
                
    _push(_t201);
                
    _push(_t123);
                
    _push(58);
                
    _push(_t219);
                
    memchr();
                
    __esp __esp 16;
                
    _t181 _t123;
                if(
    _t123 == 0) {
                    goto 
    L9;
                } else {
                     *
    _t123 0;
                    
    _t181 _t181 1;
                    
    _t193 =  *_t181;
                    
    _v917 _t193;
                    if(
    _t193 == 32) {
                        do {
                            
    _t181 _t181 1;
                            
    _t123 =  *_t181;
                            
    _v917 _t123;
                        } while(
    _t123 == 32);
                    }
                    
    __esp __esp 8;
                    
    _push( &M081C0791);
                    
    _push(_t219);
                    
    strcasecmp();
                    
    __esp __esp 16;
                    if(
    _t123 == 0) {
                        
    _push(0);
                        
    _push(10);
                        
    _push(0);
                        
    _push(_t181);
                        
    __strtol_internal();
                        
    __esp __esp 16;
                        
    __eflags _t123;
                        if(
    _t123 <= 0) {
                            
    _t201 _v868;
                             *
    _v868 0;
                        } else {
                            
    _t193 _v868;
                             *
    _t193 _t123;
                        }
                        
    _t181 _v868;
                        
    HttpGlobals::s_expire =  *_v868;
                        goto 
    L9;
                    } else {
                        
    __esp __esp 8;
                        
    _push("Serial");
                        
    _push(_t219);
                        
    strcasecmp();
                        
    __esp __esp 16;
                        if(
    _t123 != 0) {
                            
    __esp __esp 8;
                            
    _push(136353553);
                            
    _push(_t219);
                            
    strcasecmp();
                            
    __esp __esp 16;
                            
    __eflags _t123;
                            if(
    __eflags == 0) {
                                
    __esp __esp 12;
                                
    _push( &_v864);
                                
    _t219 =  &_v540;
                                
    _t193 256;
                                
    _t201 _t219;
                                
    _t168 getMAC(ifi_infochar * * , int int * )(_t181256_t219__eflags);
                                
    __esp __esp 16;
                                
    __eflags _t168;
                                if(
    _t168 <= 0) {
                                    break;
                                } else {
                                    
    _t169 _t219 _t168;
                                    
    __eflags _t219 _t169;
                                    
    _t217 _t219;
                                    
    _v916 _t169;
                                    
    _v896 0;
                                    if(
    _t219 _t169) {
                                        
    __esp __esp 8;
                                        
    _push(44);
                                        
    _push(_t217);
                                        
    strchr();
                                        
    __esp __esp 16;
                                        
    __eflags _t169;
                                        
    _t222 _t169;
                                        if(
    _t169 == 0) {
    L51:
                                            
    _t222 _v916;
                                        } else {
    L47:
                                             *
    _t169 0;
                                        }
    L48:
                                        
    __esp __esp 8;
                                        
    _push(_t217);
                                        
    _push(_t181);
                                        
    strstr();
                                        
    __esp __esp 16;
                                        
    __eflags _t169;
                                        if(
    _t169 == 0) {
                                            
    _v896 0;
                                        } else {
                                            
    _t217 _t222 1;
                                            
    _v896 1;
                                            
    __eflags _t217 _v916;
                                            if(
    _t217 _v916) {
                                                
    __esp __esp 8;
                                                
    _push(44);
                                                
    _push(_t217);
                                                
    strchr();
                                                
    __esp __esp 16;
                                                
    __eflags _t169;
                                                
    _t222 _t169;
                                                if(
    _t169 != 0) {
                                                    goto 
    L47;
                                                } else {
                                                    goto 
    L51;
                                                }
                                                goto 
    L48;
                                            }
                                        }
                                    }
                                    goto 
    L9;
                                }
                            } else {
                                
    __esp __esp 8;
                                
    _push(136101539);
                                
    _push(_t219);
                                
    strcasecmp();
                                
    __esp __esp 16;
                                
    __eflags _t123;
                                if(
    __eflags == 0) {
                                    
    __esp __esp 12;
                                    
    _t223 =  &_v604;
                                    
    _push(_t223);
                                    
    _t181->AccessControl(void )();
                                    
    __esp __esp 12;
                                    
    _push(0);
                                    
    _push(136116393);
                                    
    _push(_t223);
                                    
    _t181->addSubNetControl(char * , int )(_t193_t201__eflags);
                                    
    __esp __esp 12;
                                    
    _push(1);
                                    
    _push(_t181);
                                    
    _push(_t223);
                                    
    _t172 _t181->addList(char * , int )(_t193__eflags);
                                    
    __esp __esp 16;
                                    
    __eflags _t172;
                                    if(
    __eflags 0) {
                                        
    _t181 _a24;
                                        while(
    1) {
                                            
    __eflags _t181;
                                            if(
    __eflags == 0) {
                                                break;
                                            }
                                            
    __esp __esp 8;
                                            
    _push( *((intOrPtr*)(_t181 32)));
                                            
    _push(_t223);
                                            
    _t172->hasAccess(sockaddr)();
                                            
    __esp __esp 16;
                                            
    __eflags _t172;
                                            if(
    __eflags != 0) {
                                                
    _t174 1;
                                            } else {
                                                
    _t181 =  *(_t181 44);
                                                continue;
                                            }
    L80:
                                            
    _v896 _t174;
                                            goto 
    L81;
                                        }
                                        
    _t174 0;
                                        goto 
    L80;
                                    }
    L81:
                                    
    __esp __esp 12;
                                    
    _push(_t223);
                                    
    _t181->~AccessControl(void )(_t193_t201__eflags);
                                    
    __esp __esp 16;
                                } else {
                                    
    __esp __esp 8;
                                    
    _push(136312636);
                                    
    _push(_t219);
                                    
    strcasecmp();
                                    
    __esp __esp 16;
                                    
    __eflags _t123;
                                    if(
    _t123 == 0) {
                                        
    _push(0);
                                        
    _push(10);
                                        
    _push(0);
                                        
    _push(_t181);
                                        
    __strtol_internal();
                                        
    __esp __esp 16;
                                        
    _v900 _t123;
                                    } else {
                                        
    __esp __esp 8;
                                        
    _push("UPG");
                                        
    _push(_t219);
                                        
    strcasecmp();
                                        
    __esp __esp 16;
                                        
    __eflags _t123;
                                        if(
    _t123 == 0) {
                                            
    _push(0);
                                            
    _push(10);
                                            
    _push(0);
                                            
    _push(_t181);
                                            
    __strtol_internal();
                                            
    __esp __esp 16;
                                            
    __eflags _t123;
                                            if(
    _t123 != 0) {
                                                
    _t201 _v872;
                                                 *
    _v872 _t123;
                                            }
                                        } else {
                                            
    __esp __esp 8;
                                            
    _push("PROC");
                                            
    _push(_t219);
                                            
    strcasecmp();
                                            
    __esp __esp 16;
                                            
    __eflags _t123;
                                            if(
    _t123 == 0) {
                                                
    __eflags _v917 86;
                                                if(
    _v917 == 86) {
    L77:
                                                    
    _t181 _t181 1;
                                                    
    _v876 1;
                                                } else {
                                                    
    __eflags _v917 118;
                                                    if(
    _v917 == 118) {
                                                        goto 
    L77;
                                                    }
                                                }
                                                
    _push(0);
                                                
    _push(10);
                                                
    _push(0);
                                                
    _push(_t181);
                                                
    __strtol_internal();
                                                
    __esp __esp 16;
                                                
    __eflags _t123;
                                                
    _v904 _t123;
                                                if(
    _t123 == 0) {
                                                    
    _v904 1;
                                                }
                                            }
                                        }
                                    }
                                }
                                goto 
    L9;
                            }
                        } else {
                            
    __esp __esp 8;
                            
    _push("TRIAL");
                            
    _push(_t181);
                            
    strcasecmp();
                            
    __esp __esp 16;
                            if(
    _t123 != 0) {
                                
    __esp __esp 8;
                                
    _push("PERM");
                                
    _push(_t181);
                                
    strcasecmp();
                                
    __esp __esp 16;
                                
    __eflags _t123;
                                
    _v884 1;
                                if(
    __eflags == 0) {
                                    goto 
    L9;
                                } else {
                                    
    _t201 =  ?_? ( &_v284);
                                    
    _t176 getSerialNum(char * , char * , int )(256,  &_v284__eflags);
                                    
    _v888 _t176;
                                    
    __eflags _t176 1;
                                    if(
    __eflags == 0) {
    L68:
                                        
    _t118 = -1;
    L69:
                                        
    __esp =  &_v16;
                                        return 
    _t118;
                                    } else {
                                        
    _t193 20;
                                        
    asm("cld ");
                                        
    asm("rep cmpsb ");
                                        if(
    __eflags == 0) {
                                            goto 
    L68;
                                        } else {
                                            
    __esp __esp 8;
                                            
    _t178 =  &_v284;
                                            
    _push(_t178);
                                            
    _push(_t181);
                                            
    strcmp();
                                            
    __esp __esp 16;
                                            
    __eflags _t178;
                                            if(
    _t178 != 0) {
                                                
    __esp __esp 8;
                                                
    _push("[ERROR] Serial number does not match!\n");
    L67:
                                                
    _push(__imp__stderr);
                                                
    fprintf();
                                                goto 
    L68;
                                            } else {
                                                
    _v884 1;
                                                goto 
    L9;
                                            }
                                        }
                                    }
                                }
                            } else {
                                
    _v892 1;
                                goto 
    L9;
                            }
                        }
                    }
                }
                goto 
    L88;
    L9:
                
    _t219 _v912 1;
            } while(
    _t219 != _v880);
            if(
    _v892 != 0) {
    L13:
                if(
    _v876 != || _v888 == 1) {
                    
    __eflags _v864;
                    if(
    __eflags == 0) {
                        
    _t127 detectVPS(void )(_t181_t193_t201__eflags);
                        
    __eflags _t127;
                        
    _v864 _t127;
                        if(
    _t127 != 0) {
                            goto 
    L60;
                        } else {
                            
    __esp __esp 8;
                            
    _push("[ERROR] VPS license cannot be used on non-VPS server. \n       Please upgrade your license! \n");
                            goto 
    L67;
                        }
                    } else {
    L60:
                        
    _t182 _v868;
                        
    asm("cdq ");
                        
    _t194 =  *_t182;
                        
    __eflags _t194;
                        
    HttpGlobals::s_maxServerConns 500 _v904;
                        if(
    _t194 != 0) {
                            goto 
    L16;
                        } else {
                            goto 
    L61;
                        }
                    }
                } else {
                    
    _t182 _v868;
                    
    _t194 =  *_t182;
                    if(
    _t194 == 0) {
    L61:
                        
    _t197 =  *_v872;
                        
    _t162 _t197 _v908;
                        
    asm("cdq ");
                        
    _t163 _t162 86400;
                        
    _t215 _t162 86400;
                        
    __eflags _t197 1239431912;
                        if(
    _t197 <= 1239431912) {
                            
    __esp __esp 12;
                            
    _push("[ERROR] You are not authorized to use this binary, please purchase upgrades.");
                            
    puts();
                            
    _t118 = -1;
                            goto 
    L69;
                        } else {
                            
    __eflags _t197 _v908;
                            if(
    _t197 >= _v908) {
                                
    _push(_t215);
                                
    _push(_t163);
                                
    _push(_v900);
                                
    _push("[OK] License key #%d verification passed! Software upgrade expires in %d days.\n");
                                
    printf();
                            } else {
                                
    __esp __esp 8;
                                
    _push(_v900);
                                
    _push("[OK] License key #%d verification passed! Software upgrade has expired.\n");
                                
    printf();
                            }
                            goto 
    L22;
                        }
                    } else {
    L16:
                        
    _t130 _v872;
                        if(
    _t194 >  *_t130) {
                             *
    _t130 _t194;
                            
    _t194 =  *_t182;
                        }
                        if(
    _t194 _v908) {
                            
    _t195 _t194 _v908;
                            
    asm("cdq ");
                            
    __eflags _v892;
                            
    _t221 _t195 86400;
                            if(
    _v892 != 0) {
                                
    _t185 =  &_v860;
                                
    _t134 build_format_string(int char * )(43_t185);
                                 *
    _t134 37;
                                 *((
    char*)(_t134 1)) = 100;
                                
    _t138 build_format_string(int char * )(6_t134 2);
                                 *
    _t138 10;
                                 *((
    char*)(_t138 1)) = 0;
                                
    _push(_t195);
                                
    _push(33);
                                
    _push(115);
                                
    _push(121);
                                
    _push(97);
                                
    _push(100);
                                
    _push(32);
                                
    _push(_t221);
                                
    _push(32);
                                
    _push(110);
                                
    _push(105);
                                
    _push(32);
                                
    _push(101);
                                
    _push(114);
                                
    _push(105);
                                
    _push(112);
                                
    _push(120);
                                
    _push(101);
                                
    _push(32);
                                
    _push(108);
                                
    _push(108);
                                
    _push(105);
                                
    _push(119);
                                
    _push(32);
                                
    _push(121);
                                
    _push(101);
                                
    _push(107);
                                
    _push(32);
                                
    _push(101);
                                
    _push(115);
                                
    _push(110);
                                
    _push(101);
                                
    _push(99);
                                
    _push(105);
                                
    _push(108);
                                
    _push(32);
                                
    _push(108);
                                
    _push(97);
                                
    _push(105);
                                
    _push(114);
                                
    _push(116);
                                
    _push(32);
                                
    _push(114);
                                
    _push(117);
                                
    _push(111);
                                
    _push(89);
                                
    _push(32);
                                
    _push(93);
                                
    _push(75);
                                
    _push(79);
                                
    _push(91);
                                
    _push(_t185);
                                
    printf();
                                
    __esp __esp 208;
                            } else {
                                
    _t186 =  &_v860;
                                
    _t143 build_format_string(int char * )(23_t186);
                                 *
    _t143 37;
                                 *((
    char*)(_t143 1)) = 100;
                                
    _t147 build_format_string(int char * )(16_t143 2);
                                 *
    _t147 37;
                                 *((
    char*)(_t147 1)) = 100;
                                
    _t151 build_format_string(int char * )(6_t147 2);
                                 *
    _t151 10;
                                 *((
    char*)(_t151 1)) = 0;
                                
    _push(33);
                                
    _push(115);
                                
    _push(121);
                                
    _push(97);
                                
    _push(100);
                                
    _push(32);
                                
    _push(_t221);
                                
    _push(32);
                                
    _push(110);
                                
    _push(105);
                                
    _push(32);
                                
    _push(101);
                                
    _push(114);
                                
    _push(105);
                                
    _push(112);
                                
    _push(120);
                                
    _push(101);
                                
    _push(32);
                                
    _push(108);
                                
    _push(108);
                                
    _push(105);
                                
    _push(119);
                                
    _push(32);
                                
    _push(_v900);
                                
    _push(32);
                                
    _push(121);
                                
    _push(101);
                                
    _push(107);
                                
    _push(32);
                                
    _push(101);
                                
    _push(115);
                                
    _push(110);
                                
    _push(101);
                                
    _push(99);
                                
    _push(105);
                                
    _push(108);
                                
    _push(32);
                                
    _push(101);
                                
    _push(115);
                                
    _push(97);
                                
    _push(101);
                                
    _push(76);
                                
    _push(32);
                                
    _push(93);
                                
    _push(75);
                                
    _push(79);
                                
    _push(91);
                                
    _push(_t186);
                                
    printf();
                                
    __esp __esp 192;
                            }
                            goto 
    L23;
                        } else {
                            if(
    _v892 != 0) {
                                
    _t187 =  &_v860;
                                
    _t153 build_format_string(int char * )(42_t187);
                                 *
    _t153 10;
                                 *((
    char*)(_t153 1)) = 0;
                                
    _push(33);
                                
    _push(100);
                                
    _push(101);
                                
    _push(114);
                                
    _push(105);
                                
    _push(112);
                                
    _push(120);
                                
    _push(101);
                                
    _push(32);
                                
    _push(115);
                                
    _push(97);
                                
    _push(104);
                                
    _push(32);
                                
    _push(121);
                                
    _push(101);
                                
    _push(107);
                                
    _push(32);
                                
    _push(101);
                                
    _push(115);
                                
    _push(110);
                                
    _push(101);
                                
    _push(99);
                                
    _push(105);
                                
    _push(108);
                                
    _push(32);
                                
    _push(108);
                                
    _push(97);
                                
    _push(105);
                                
    _push(114);
                                
    _push(116);
                                
    _push(32);
                                
    _push(114);
                                
    _push(117);
                                
    _push(111);
                                
    _push(121);
                                
    _push(32);
                                
    _push(44);
                                
    _push(121);
                                
    _push(114);
                                
    _push(114);
                                
    _push(111);
                                
    _push(83);
                                
    _push(_t187);
                                
    _push(__imp__stderr);
                                
    fprintf();
                                
    _t118 = -1;
                                goto 
    L69;
                            } else {
                                
    _t188 _t194 86400;
                                if(
    _v908 _t188) {
                                    
    _t189 =  &_v860;
                                    
    _t155 build_format_string(int char * )(36_t189);
                                    
    __esp __esp 8;
                                     *
    _t155 10;
                                     *((
    char*)(_t155 1)) = 0;
                                    
    _push(33);
                                    
    _push(100);
                                    
    _push(101);
                                    
    _push(114);
                                    
    _push(105);
                                    
    _push(112);
                                    
    _push(120);
                                    
    _push(101);
                                    
    _push(32);
                                    
    _push(115);
                                    
    _push(97);
                                    
    _push(104);
                                    
    _push(32);
                                    
    _push(121);
                                    
    _push(101);
                                    
    _push(107);
                                    
    _push(32);
                                    
    _push(101);
                                    
    _push(115);
                                    
    _push(110);
                                    
    _push(101);
                                    
    _push(99);
                                    
    _push(105);
                                    
    _push(108);
                                    
    _push(32);
                                    
    _push(114);
                                    
    _push(117);
                                    
    _push(111);
                                    
    _push(121);
                                    
    _push(32);
                                    
    _push(44);
                                    
    _push(121);
                                    
    _push(114);
                                    
    _push(114);
                                    
    _push(111);
                                    
    _push(83);
                                    
    _push(_t189);
                                    
    _push(__imp__stderr);
                                    
    fprintf();
                                    
    _t141 = -2;
                                } else {
                                    
    _push(_t219);
                                    
    asm("cdq ");
                                    
    _push((_t188 _v908) / 86400);
                                    
    _push("[WARNING] Your license key has expired, please renew you license key in %ld days!\n");
                                    
    _push(__imp__stderr);
                                    
    fprintf();
                                     *
    _v868 _t188;
    L22:
                                    
    __esp __esp 16;
    L23:
                                    if(
    _v904 <= 0) {
                                        
    _v904 2;
                                    }
                                    
    HttpGlobals::s_children 8;
                                    
    _t141 0;
                                }
                                
    __esp =  &_v16;
                                return 
    _t141;
                            }
                        }
                    }
                }
            } else {
                
    _t117 _v896;
                if(
    _t117 == 0) {
                    goto 
    L66;
                } else {
                    if(
    _v884 == 0) {
                        
    __esp __esp 8;
                        
    _push("[WARNING] Serial number is invalid. \n         Please request a new license key! \n");
                        goto 
    L67;
                    } else {
                        goto 
    L13;
                    }
                }
            }
        }
    L88:
    }

    License::verifyLicenseKey(char * , long & , 2int char * , int * )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags,                    // r9
        
    intOrPtr _a4,                          // _cfa_4
        
    intOrPtr _a8,                          // _cfa_8
        
    intOrPtr _a12,                         // _cfa_c
        
    intOrPtr _a16,                         // _cfa_10
        
    intOrPtr _a20,                         // _cfa_14
        
    intOrPtr _a24                          // _cfa_18
    )
    {
    // addr = 0x08061F3C
        
    char _v16;                             // _cfa_fffffff0
        
    char _v540;                            // _cfa_fffffde4
        
    char _v1564;                           // _cfa_fffff9e4
        
    char _v2588;                           // _cfa_fffff5e4
        
    char__edi;                           // r4
        
    signed int __ebp// r6
        
    _unknown_ _t20;                        // _t20
        
    _unknown_ _t21;                        // _t21
        
    _unknown_ _t22;                        // _t22
        
    intOrPtr _t23;                         // _t23
        
    _unknown_ _t24;                        // _t24
        
    intOrPtr _t25;                         // _t25
        
    _unknown_ _t27;                        // _t27
        
    intOrPtr _t28;                         // _t28
        
    _unknown_ _t29;                        // _t29
        
    intOrPtr _t30;                         // _t30
        
    _unknown_ _t32;                        // _t32
        
    _unknown_ _t33;                        // _t33
        
    _unknown_ _t35;                        // _t35
        
    char_t40;                            // _t40
        
    intOrPtr _t41;                         // _t41
        
    _unknown_ _t42;                        // _t42
        
    _unknown_ _t43;                        // _t43
        
    _unknown_ _t44;                        // _t44
        
    char_t45;                            // _t45
        
    _unknown_ _t46;                        // _t46
        
    intOrPtr _t47;                         // _t47
        
    intOrPtr _t49;                         // _t49
        
    _unknown_ _t50;                        // _t50
        
    _unknown_ _t52;                        // _t52
        
    _unknown_ _t57;                        // _t57

        
    _t46 __edx;
        
    _t44 __ecx;
        
    __esp __esp 2584;
        
    _push(0);
        
    time();
        
    __esp __esp 16;
        
    _t52 _t20 1239345512;
        if(
    _t52 <= 0) {
            
    __esp __esp 8;
            
    _push("[ERROR] Clock on your server is not accurate, fix it first.\n");
            goto 
    L20;
        } else {
            
    _push("conf/license.key");
            
    _push(_a4);
            
    _push(512);
            
    _t40 =  &_v540;
            
    _push(_t40);
            
    _t22 __ecx->getAbsoluteFile(char * , unsigned int char * , 2)(__edx_t52);
            
    __esp __esp 16;
            
    _t23 _t22 1;
            if(
    _t23 == 0) {
    L10:
                
    _push( &M081C2B5E);
                
    _push(_a4);
                
    _push(512);
                
    _push(_t40);
                
    _t24 _t44->getAbsoluteFile(char * , unsigned int char * , 2)(_t46__eflags);
                
    __esp __esp 16;
                
    _t25 _t24 1;
                
    __eflags _t25;
                if(
    _t25 == 0) {
    L13:
                    
    __eflags _a16;
                    if(
    __eflags != 0) {
    L19:
                        
    _push(_a4);
                        
    _push(_a4);
                        
    _push("[ERROR] Failed to find your license key under - %s or %sconf/!\n");
                        goto 
    L20;
                    } else {
                        
    _push("conf/trial.key");
                        
    _push(_a4);
                        
    _push(512);
                        
    _push(_t40);
                        
    _t27 _t44->getAbsoluteFile(char * , unsigned int char * , 2)(_t46__eflags);
                        
    __esp __esp 16;
                        
    _t28 _t27 1;
                        
    __eflags _t28;
                        if(
    __eflags == 0) {
    L16:
                            
    _push( &M081C2B6F);
                            
    _push(_a4);
                            
    _push(512);
                            
    _push(_t40);
                            
    _t29 _t44->getAbsoluteFile(char * , unsigned int char * , 2)(_t46__eflags);
                            
    __esp __esp 16;
                            
    _t28 _t29 1;
                            
    __eflags _t28;
                            if(
    _t28 == 0) {
                                goto 
    L19;
                            } else {
                                
    __esp __esp 8;
                                
    _push(0);
                                
    _push(_t40);
                                
    open64();
                                
    __esp __esp 16;
                                
    __eflags _t28 255;
                                
    _t49 _t28;
                                if(
    _t28 != 255) {
                                    goto 
    L3;
                                } else {
                                    goto 
    L19;
                                }
                            }
                        } else {
                            
    __esp __esp 8;
                            
    _push(0);
                            
    _push(_t40);
                            
    open64();
                            
    __esp __esp 16;
                            
    __eflags _t28 255;
                            
    _t49 _t28;
                            if(
    __eflags != 0) {
                                goto 
    L3;
                            } else {
                                goto 
    L16;
                            }
                        }
                    }
                } else {
                    
    __esp __esp 8;
                    
    _push(0);
                    
    _push(_t40);
                    
    open64();
                    
    __esp __esp 16;
                    
    __eflags _t25 255;
                    
    _t49 _t25;
                    if(
    _t25 != 255) {
                        goto 
    L3;
                    } else {
                        goto 
    L13;
                    }
                }
            } else {
                
    __esp __esp 8;
                
    _push(0);
                
    _push(_t40);
                
    open64();
                
    __esp __esp 16;
                
    _t49 _t23;
                if(
    _t23 == 255) {
                    goto 
    L10;
                } else {
    L3:
                    
    _push(_t28);
                    
    _push(1024);
                    
    __edi =  &_v1564;
                    
    _push(__edi);
                    
    _push(_t49);
                    
    read();
                    
    __esp __esp 16;
                    
    _t41 _t28;
                    if(
    _t28 <= 0) {
                        
    __esp __esp 12;
                        
    _push("read()");
                        
    perror();
                        
    _t21 = -1;
                        goto 
    L21;
                    } else {
                        
    __esp __esp 12;
                        
    _push(_t49);
                        
    close();
                        
    _t30 _a20;
                        
    __esp __esp 16;
                        if(
    _t30 != 0) {
                            
    _push(_t30);
                            
    _push(_t41);
                            
    _push(__edi);
                            
    _push(_a20);
                            
    memmove();
                             *
    _a24 _t41;
                            
    __esp __esp 16;
                        }
                        
    __esp __esp 12;
                        
    _push(1024);
                        
    _t47 _t41;
                        
    _t45 =  &_v2588;
                        
    _t32 decrypt_license_key(char * , int char * , int )(_t45_t47_t49);
                        
    __esp __esp 16;
                        
    _t57 _t32 255;
                        
    _t42 _t32;
                        if(
    _t57 == 0) {
                            
    __esp __esp 8;
                            
    _push("[ERROR] Failed to decrypt your license key.\n");
    L20:
                            
    _push(__imp__stderr);
                            
    fprintf();
                            
    _t21 = -1;
    L21:
                            
    __esp =  &_v16;
                            return 
    _t21;
                        } else {
                            
    __esp __esp 8;
                            
    _push(0);
                            
    _push(2);
                            
    _t33 _t45->get_ifi_info(int int )(_t47_t57);
                            
    _pop(__edi);
                            
    _t50 _t33;
                            
    _pop(__eax);
                            
    _push(_t50);
                            
    _push(_t42);
                            
    _push( &_v2588);
                            
    _push(_a12);
                            
    _push(_a8);
                            
    _push(_a4);
                            
    _t35 _t42->checkLicenseKey(char * , long & , 2char * , int ifi_info)(_t45_t47_t57);
                            
    __esp __esp 32;
                            
    _t43 _t35;
                            if(
    _t50 != 0) {
                                
    __esp __esp 12;
                                
    _t50->free_ifi_info(ifi_info)();
                                
    __esp __esp 12;
                            }
                            
    __esp =  &_v16;
                            return 
    _t43;
                        }
                    }
                }
            }
        }
    }

    registerCallback(void * , HttpFetch)()
    {
    // addr = 0x08062138
        
    signed int __ebp// r6

        
    return 0;
    }

    startRegister(char * , 0int )(
        
    _unknown_ __ebx,                       // r1
        
    intOrPtr __ecx,                        // r2
        
    intOrPtr __edx,                        // r3
        
    _unknown_ __edi,                       // r4
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x08062140
        
    char _v16;                             // _cfa_fffffff0
        
    char _v1007;                           // _cfa_fffffc11
        
    char _v1052;                           // _cfa_fffffbe4
        
    intOrPtr _v1056;                       // _cfa_fffffbe0
        
    intOrPtr _v1060;                       // _cfa_fffffbdc
        
    char__esi;                           // r5
        
    signed int __ebp// r6
        
    _unknown_ _t10;                        // _t10
        
    _unknown_ _t14;                        // _t14
        
    _unknown_ _t16;                        // _t16
        
    _unknown_ _t19;                        // _t19
        
    _unknown_ _t28;                        // _t28

        
    __edx __edx;
        
    __esp __esp 1056;
        
    asm("cld ");
        
    _v1060 __ecx;
        
    __esi "http://license.litespeedtech.com/lic_reg.php";
        
    _v1056 __edx;
        
    _push(11 << 2);
        
    _push(__esi);
        
    _push( &_v1052);
        
    memcpy();
        
    __esp __esp 12;
        
    asm("movsb ");
        
    _push(979);
        
    _push(0);
        
    _t19 _t10;
        
    _push( &_v1007);
        
    memset();
         *
    __esp =  &s_fetch;
        
    _t19->reset(void )(__eflags);
        
    __esp __esp 12;
        
    _push(_t19);
        
    _push(0);
        
    _push(_v1060);
        
    _push(_v1056);
        
    _push(0);
        
    _push( &_v1052);
        
    _push( &s_fetch);
         *
    136614424 registerCallback(void * , HttpFetch);
         *
    136614428 0;
        
    _t14 _t19->startReqchar * , int 1int 11?...?(0__edx__esi 0x16__eflags);
        
    __esp __esp 32;
        
    _t28 _t14;
        if(
    _t28 != 0) {
            
    __esp __esp 12;
            
    _push("Failed to send registration request.\n");
            
    _t14->error(char * , ... )();
            
    _t16 = -1;
        } else {
            
    __esp __esp 12;
            
    _push( &s_fetch);
            
    _t19->process(void )(__edx_t28);
            
    _t16 0;
        }
        
    __esp =  &_v16;
        return 
    _t16;
    }

    checkResult(char * , int )(
        
    char__ebx,                           // r1
        
    _unknown_ __ecx,                       // r2
        
    intOrPtr __edx,                        // r3
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags                     // r9
    )
    {
    // addr = 0x080621F8
        
    char _v16;                             // _cfa_fffffff0
        
    char _v540;                            // _cfa_fffffde4
        
    char _v1052;                           // _cfa_fffffbe4
        
    char _v2076;                           // _cfa_fffff7e4
        
    intOrPtr _v2080;                       // _cfa_fffff7e0
        
    intOrPtr _v2084;                       // _cfa_fffff7dc
        
    intOrPtr _v2088;                       // _cfa_fffff7d8
        
    intOrPtr __edi;                        // r4
        
    signed int __ebp// r6
        
    intOrPtr _t33;                         // _t33
        
    intOrPtr _t37;                         // _t37
        
    _unknown_ _t38;                        // _t38
        
    _unknown_ _t40;                        // _t40
        
    _unknown_ _t44;                        // _t44
        
    intOrPtr _t45;                         // _t45
        
    _unknown_ _t47;                        // _t47
        
    intOrPtr _t48;                         // _t48
        
    _unknown_ _t51;                        // _t51
        
    intOrPtr _t52;                         // _t52
        
    char_t54;                            // _t54
        
    _unknown_ _t56;                        // _t56
        
    intOrPtr _t57;                         // _t57
        
    _unknown_ _t59;                        // _t59
        
    _unknown_ _t61;                        // _t61
        
    intOrPtr _t62;                         // _t62
        
    _unknown_ _t65;                        // _t65
        
    char_t66;                            // _t66
        
    _unknown_ _t68;                        // _t68
        
    _unknown_ _t73;                        // _t73

        
    _t65 __ecx;
        
    __ebx __ebx;
        
    _push(__esi);
        
    _push(__ebx);
        
    __esp __esp 2076;
        
    _t73 =  *136614376 200;
        
    _v2084 _t33;
        
    _t71 __edx;
        if(
    _t73 != 0) {
    L3:
            
    __esp __esp 12;
            
    _push("[LICENSE] Failed to communicate with licensing server: license.litespeedtech.com");
            
    _t33->error(char * , ... )();
    L4:
            
    _t68 = -1;
    L5:
            
    __esp =  &_v16;
            
    _pop(__ebx);
            
    _pop(__esi);
            return 
    _t68;
        }
        
    __esp __esp 8;
        
    _push( &_v2080);
        
    _push( *136614372);
        
    __ebx =  *136614412;
        
    _t33 __ebx->getReadBuffer(unsigned int & )(__edx_t73);
        
    __esp __esp 8;
        
    _push("text/plain");
        
    _push(__ebx);
        
    __edi _t33;
        
    strcasecmp();
        
    __esp __esp 32;
        if(
    _t33 != 0) {
            
    __esp __esp 8;
            
    _push(__edi);
            
    _push("[LICENSE] License key operation failure: %s");
            
    _t37 _t33->error(char * , ... )();
            
    __esp __esp 8;
            
    _push("EXCEPTION");
            
    _push(__edi);
            
    strstr();
            
    __esp __esp 32;
            
    _t68 0;
            
    __eflags _t37;
            if(
    _t37 != 0) {
                goto 
    L5;
            }
            
    __eflags __edx 2;
            if(
    __eflags == 0) {
                
    _push("conf/license.key");
                
    _push(_v2084);
                
    _push(512);
                
    _t71 =  &_v540;
                
    _push(_t71);
                
    _t38 __ecx->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                
    __esp __esp 16;
                
    __eflags _t38 1;
                if(
    __eflags != 0) {
                    
    _push("conf/license.key.bad");
                    
    _push(_v2084);
                    
    _push(512);
                    
    __ebx =  &_v1052;
                    
    _push(__ebx);
                    
    __ecx->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                    
    _pop(__eax);
                    
    _pop(__edx);
                    
    _push(__ebx);
                    
    _push(_t71);
                    
    rename();
                    
    __esp __esp 16;
                }
                
    _push("conf/trial.key");
                
    _push(_v2084);
                
    _push(512);
                
    _push(_t71);
                
    _t40 _t65->getAbsoluteFile(char * , unsigned int char * , 2)(_t68__eflags);
                
    __esp __esp 16;
                
    __eflags _t40 1;
                if(
    _t40 == 0) {
                    goto 
    L8;
                } else {
                    
    __esp __esp 12;
                    
    _push(_t71);
                    
    unlink();
                    
    __esp __esp 16;
                    
    _t68 100;
                    goto 
    L5;
                }
            }
    L8:
            
    _t68 100;
            goto 
    L5;
        }
        
    __esp __esp 8;
        
    _push("application/license-key");
        
    _push(__ebx);
        
    strcasecmp();
        
    __esp __esp 16;
        if(
    _t33 == 0) {
            
    __esp __esp 12;
            
    __ebx =  &_v2076;
            
    _push(1024);
            
    _t66 __ebx;
            
    _t44 decrypt_license_key(char * , int char * , int )(_t66_v2080__edx);
            
    __esp __esp 16;
            
    _t45 _t44 1;
            
    __eflags _t45;
            if(
    _t45 == 0) {
                
    __esp __esp 12;
                
    _push("[LICENSE] Failed to decrypt license key received!");
                
    _t45->error(char * , ... )();
                goto 
    L4;
            }
            
    _push(_t45);
            
    _push(2);
            
    _push("OK");
            
    _push(__ebx);
            
    strncasecmp();
            
    __esp __esp 16;
            
    _t68 0;
            
    __eflags _t45;
            if(
    _t45 == 0) {
                goto 
    L5;
            }
            
    _push(_t45);
            
    _push(3);
            
    _push("BAN");
            
    _push(__ebx);
            
    strncasecmp();
            
    __esp __esp 16;
            
    __eflags _t45;
            if(
    __eflags == 0) {
                
    _push("conf/license.key");
                
    _push(_v2084);
                
    _push(512);
                
    __ebx =  &_v540;
                
    _push(__ebx);
                
    _t47 _t66->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                
    __esp __esp 16;
                
    _t48 _t47 1;
                
    __eflags _t48;
                if(
    _t48 != 0) {
                    
    __esp __esp 12;
                    
    _push(__ebx);
                    
    unlink();
                    
    __esp __esp 16;
                }
                
    __esp __esp 12;
                
    _push("[LICENSE] Your license key has been revoked!");
                
    _t48->error(char * , ... )();
                goto 
    L4;
            }
            
    _push(_t45);
            
    _push(8);
            
    _push("Serial: ");
            
    _push(__ebx);
            
    strncasecmp();
            
    __esp __esp 16;
            
    __eflags _t45;
            if(
    _t45 != 0) {
                
    __esp __esp 12;
                
    _push("[LICENSE] Currupted License key has been received!");
                
    _t45->error(char * , ... )();
                goto 
    L4;
            }
            
    __eflags __edx;
            if(
    __eflags == 0) {
                
    _push( &M081C2B5E);
                
    _push(_v2084);
                
    _push(512);
                
    __ebx =  &_v540;
                
    _push(__ebx);
                
    _t51 _t66->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                
    __esp __esp 16;
                
    _t52 _t51 1;
                
    __eflags _t52;
                if(
    _t52 == 0) {
    L29:
                    
    __esp __esp 8;
                    
    _push(_v2084);
                    
    _push("[LICENSE] Failed to create license key file - license.key under %s!\n");
                    
    _t52->error(char * , ... )();
                    goto 
    L4;
                }
                
    _push(__edx);
                
    _push(384);
                
    _push(65);
                
    _push(__ebx);
                
    open64();
                
    _v2088 _t52;
                
    __esp __esp 16;
                
    _t52 _t52 1;
                
    __eflags _t52;
                if(
    _t52 != 0) {
    L16:
                    
    _push(_t66);
                    
    _push(_v2080);
                    
    _push(__edi);
                    
    _push(_v2088);
                    
    write();
                    
    __esp __esp 16;
                    
    __eflags _t52 _v2080;
                    if(
    _t52 != _v2080) {
                        
    __esp __esp 12;
                        
    _push("write()");
                        
    perror();
                        goto 
    L4;
                    }
                    
    __esp __esp 12;
                    
    _push(_v2088);
                    
    close();
                    
    _pop(__eax);
                    
    _pop(__edx);
                    
    _t54 =  &_v540;
                    
    _push(_t54);
                    
    _push("[OK] Updated license key has been created at %s.\n");
                    
    _t54->notice(char * , ... )();
                    
    _t68 1;
                    goto 
    L5;
                }
                goto 
    L29;
            }
            
    __eflags __edx 1;
            if(
    __eflags == 0) {
                
    _push("conf/license.key");
                
    _push(_v2084);
                
    _push(512);
                
    __ebx =  &_v540;
                
    _push(__ebx);
                
    _t56 _t66->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                
    __esp __esp 16;
                
    _t57 _t56 1;
                
    __eflags _t57;
                if(
    _t57 == 0) {
    L32:
                    
    __esp __esp 8;
                    
    _push(_v2084);
                    
    _push("[LICENSE] License key has been migrated, failed to create a temp license key file - license.key under %s/conf!\n");
                    
    _t57->error(char * , ... )();
                    goto 
    L4;
                }
                
    _push(_t66);
                
    _push(384);
                
    _push(65);
                
    _push(__ebx);
                
    open64();
                
    _v2088 _t57;
                
    __esp __esp 16;
                
    _t52 _t57 1;
                
    __eflags _t52;
                if(
    _t52 != 0) {
                    goto 
    L16;
                }
                goto 
    L32;
            }
            
    __eflags __edx 2;
            if(
    __eflags == 0) {
                
    _push("conf/license.key");
                
    _push(_v2084);
                
    _push(512);
                
    _t71 =  &_v540;
                
    _push(_t71);
                
    _t59 _t66->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                
    __esp __esp 16;
                
    __eflags _t59 1;
                if(
    __eflags != 0) {
                    
    _push("conf/license.key.old");
                    
    _push(_v2084);
                    
    _push(512);
                    
    __ebx =  &_v1052;
                    
    _push(__ebx);
                    
    _t66->getAbsoluteFile(char * , unsigned int char * , 2)(0__eflags);
                    
    _pop(__eax);
                    
    _pop(__edx);
                    
    _push(__ebx);
                    
    _push(_t71);
                    
    rename();
                    
    __esp __esp 16;
                }
                
    _push("conf/license.key");
                
    _push(_v2084);
                
    _push(512);
                
    _push(_t71);
                
    _t61 _t66->getAbsoluteFile(char * , unsigned int char * , 2)(_t68__eflags);
                
    __esp __esp 16;
                
    _t62 _t61 1;
                
    __eflags _t62;
                if(
    _t62 == 0) {
    L22:
                    
    __esp __esp 8;
                    
    _push(_v2084);
                    
    _push("[LICENSE] License key update is available, failed to create updated license key file - license.key under %s/conf!\n");
                    
    _t62->error(char * , ... )();
                    goto 
    L4;
                } else {
                    
    _push(__ebx);
                    
    _push(384);
                    
    _push(65);
                    
    _push(_t71);
                    
    open64();
                    
    _v2088 _t62;
                    
    __esp __esp 16;
                    
    _t52 _t62 1;
                    
    __eflags _t52;
                    if(
    _t52 != 0) {
                        goto 
    L16;
                    }
                    goto 
    L22;
                }
            }
            goto 
    L16;
        }
        goto 
    L3;
    }

    buildRegisterReqBody(char * , char * , int 1int 0int 0int )(
        
    char __eax,                            // r0
        
    intOrPtr __ecx,                        // r2
        
    _unknown_ __edx,                       // r3
        
    intOrPtr _a4,                          // _cfa_4
        
    intOrPtr _a8,                          // _cfa_8
        
    intOrPtr _a12,                         // _cfa_c
        
    intOrPtr _a16,                         // _cfa_10
        
    intOrPtr _a20,                         // _cfa_14
        
    intOrPtr _a24                          // _cfa_18
    )
    {
    // addr = 0x080625D0
        
    char _v16;                             // _cfa_fffffff0
        
    intOrPtr _v20;                         // _cfa_ffffffec
        
    _unknown_ __ebx;                       // r1
        
    _unknown_ __edi;                       // r4
        
    _unknown_ __esi;                       // r5
        
    signed int __ebp// r6
        
    _unknown_ _t28;                        // _t28
        
    _unknown_ _t32;                        // _t32
        
    _unknown_ _t36;                        // _t36
        
    _unknown_ _t38;                        // _t38
        
    intOrPtr _t39;                         // _t39
        
    _unknown_ _t40;                        // _t40
        
    _unknown_ _t46;                        // _t46
        
    _unknown_ _t47;                        // _t47
        
    _unknown_ _t48;                        // _t48
        
    _unknown_ _t49;                        // _t49

        
    __edx __edx;
        
    _push(_t38);
        
    __esp __esp 24;
        
    _push(0);
        
    __edi __edx;
        
    _v20 __ecx;
        
    _t39 _a4;
        
    time();
         *
    __esp __eax;
        
    srand();
        
    rand();
         *
    __esp __eax;
        
    rand();
        
    _push(__eax);
        
    _push("multipart/form-data; boundary=---------------------------%d%d");
        
    _push(_a8);
        
    _push(_t39);
        
    snprintf();
        
    __esp __esp 20;
        
    _push(__eax);
        
    _t40 _t39 30;
        
    _push(_t40);
        
    _push("--%s
    \nContent-Disposition: form-data; name="
    sel_action"
    \n
    \n%s
    \n"
    );
        
    _push(_v20);
        
    _push(__edx);
        
    snprintf();
        
    _t44 __eax;
        
    __esp __esp 32;
        if(
    _a12 != 0) {
            
    _push(_t40);
            
    _push("--%s
    \nContent-Disposition: form-data; name="
    lic_req"; filename="lic_req.bin"
    \nContent-Type: application/octet-stream
    \n
    \n"
    );
            
    _push(_v20 __eax);
            
    _t36 __edx __eax;
            
    _push(_t36);
            
    snprintf();
            
    __esp __esp 12;
            
    _push(_a16);
            
    _t48 __eax _t36;
            
    _push(_a12);
            
    _push(__edx _t48);
            
    memmove();
            
    _t49 _t48 _a16;
             *((
    short*)(__edx _t49)) = 2573;
            
    __esp __esp 16;
            
    _t44 _t49 2;
        }
        if(
    _a20 != 0) {
            
    _push(_t40);
            
    _push("--%s
    \nContent-Disposition: form-data; name="
    license_key"; filename="license.key"
    \nContent-Type: application/octet-stream
    \n
    \n"
    );
            
    _push(_v20 _t44);
            
    _t32 __edi _t44;
            
    _push(_t32);
            
    snprintf();
            
    __esp __esp 12;
            
    _push(_a24);
            
    _t46 _t44 _t32;
            
    _push(_a20);
            
    _push(__edi _t46);
            
    memmove();
            
    _t47 _t46 _a24;
             *((
    short*)(__edi _t47)) = 2573;
            
    __esp __esp 16;
            
    _t44 _t47 2;
        }
        
    __esp __esp 12;
        
    _push(_t40);
        
    _push(_t40);
        
    _push("--%s
    \nContent-Disposition: form-data; name="
    Submit"
    \n
    \nSend
    \n--%s--
    \n"
    );
        
    _v20 _v20 _t44;
        
    _push(_v20);
        
    _t28 __edi _t44;
        
    _push(_t28);
        
    snprintf();
        
    __esp =  &_v16;
        
    _pop(__ebx);
        return 
    _t44 _t28;
    }

    License::registerLicense(char * )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __edi,                       // r4
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags,                    // r9
        
    _unknown_ _a4                          // _cfa_4
    )
    {
    // addr = 0x080626CC
        
    char _v12;                             // _cfa_fffffff4
        
    char _v4108;                           // _cfa_ffffeff4
        
    char _v5132;                           // _cfa_ffffebf4
        
    char _v6156;                           // _cfa_ffffe7f4
        
    signed int __ebp// r6
        
    _unknown_ _t8;                         // _t8
        
    _unknown_ _t11;                        // _t11
        
    _unknown_ _t24;                        // _t24

        
    __edi __edi;
        
    _push(__ebx);
        
    __esp __esp 6144;
        
    _t17 =  &_v5132;
        
    _t8 buildLicenseRequest(char * , char * , int )(_t171024_t17__esi__eflags);
        
    _t31 _t8;
        
    _t24 = -1;
        if(
    _t8 >= 0) {
            
    __esp __esp 8;
            
    _push(0);
            
    _push(0);
            
    _push(_t8);
            
    _push(_t17);
            
    _push(1024);
            
    _t29 =  ?_? ( &_v4108);
            
    _t17 =  ?_? ( &_v6156);
            
    _push( ?_? ( &_v6156));
            
    _t11 buildRegisterReqBody(char * , char * , int 1int 0int 0int )(1363907194096,  ?_? ( &_v4108));
            
    __esp __esp 32;
            
    startRegister(char * , 0int )( &_v6156_t11,  &_v4108__edi_t31);
            
    _t24 checkResult(char * , int )(_t17_t110_t290);
        }
        
    __esp =  &_v12;
        
    _pop(__ebx);
        return 
    _t24;
    }

    License::migrateLicense(char * )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __edi,                       // r4
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags,                    // r9
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x08062744
        
    char _v16;                             // _cfa_fffffff0
        
    char _v4124;                           // _cfa_ffffefe4
        
    char _v5148;                           // _cfa_ffffebe4
        
    char _v6172;                           // _cfa_ffffe7e4
        
    intOrPtr _v6176;                       // _cfa_ffffe7e0
        
    char _v6180;                           // _cfa_ffffe7dc
        
    char _v6184;                           // _cfa_ffffe7d8
        
    signed int __ebp// r6
        
    _unknown_ _t15;                        // _t15
        
    _unknown_ _t17;                        // _t17
        
    char_t22;                            // _t22
        
    intOrPtr _t28;                         // _t28

        
    __esp __esp 6180;
        
    _push( &_v6176);
        
    _t22 =  &_v5148;
        
    _push(_t22);
        
    _push(1);
        
    _push( &_v6180);
        
    _push( &_v6184);
        
    _t33 _a4;
        
    _push(_a4);
        
    _v6176 0;
        
    _t22->verifyLicenseKey(char * , long & , 2int char * , int * )(__ecx__edx__esi__eflags);
        
    _t28 _v6176;
        
    __esp __esp 32;
        
    _t37 _t28;
        
    _t15 = -1;
        if(
    _t28 != 0) {
            
    __esp __esp 8;
            
    _push(_t28);
            
    _push(_t22);
            
    _push(0);
            
    _push(0);
            
    _push(1024);
            
    _t35 =  ?_? ( &_v4124);
            
    _t23 =  ?_? ( &_v6172);
            
    _push( ?_? ( &_v6172));
            
    _t17 buildRegisterReqBody(char * , char * , int 1int 0int 0int )(1362920184096,  ?_? ( &_v4124));
            
    __esp __esp 32;
            
    startRegister(char * , 0int )( &_v6172_t17,  &_v4124_t33_t37);
            
    _t15 checkResult(char * , int )(_t23_t171_t35_t37);
        }
        
    __esp =  &_v16;
        return 
    _t15;
    }

    License::autoMigrateLicense(char * , char * , int )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __edi,                       // r4
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags,                    // r9
        
    _unknown_ _a4,                         // _cfa_4
        
    intOrPtr _a8,                          // _cfa_8
        
    intOrPtr _a12                          // _cfa_c
    )
    {
    // addr = 0x080627E4
        
    char _v12;                             // _cfa_fffffff4
        
    char _v4108;                           // _cfa_ffffeff4
        
    char _v5132;                           // _cfa_ffffebf4
        
    char _v6156;                           // _cfa_ffffe7f4
        
    signed int __ebp// r6
        
    _unknown_ _t10;                        // _t10
        
    _unknown_ _t13;                        // _t13
        
    _unknown_ _t26;                        // _t26

        
    __edi __edi;
        
    _push(__ebx);
        
    __esp __esp 6144;
        
    _t19 =  &_v6156;
        
    _t10 buildLicenseRequest(char * , char * , int )(_t191024_t19__esi__eflags);
        
    _t33 _t10;
        
    _t26 = -1;
        if(
    _t10 >= 0) {
            
    __esp __esp 8;
            
    _push(_a12);
            
    _push(_a8);
            
    _push(_t10);
            
    _push(_t19);
            
    _push(1024);
            
    _t31 =  ?_? ( &_v4108);
            
    _t19 =  ?_? ( &_v5132);
            
    _push( ?_? ( &_v5132));
            
    _t13 buildRegisterReqBody(char * , char * , int 1int 0int 0int )(1362899914096,  ?_? ( &_v4108));
            
    __esp __esp 32;
            
    startRegister(char * , 0int )( &_v5132_t13,  &_v4108__edi_t33);
            
    _t26 checkResult(char * , int )(_t19_t131_t31_t33);
        }
        
    __esp =  &_v12;
        
    _pop(__ebx);
        return 
    _t26;
    }

    License::validateLicense(char * )(
        
    _unknown_ __ebx,                       // r1
        
    _unknown_ __ecx,                       // r2
        
    _unknown_ __edx,                       // r3
        
    _unknown_ __edi,                       // r4
        
    _unknown_ __esi,                       // r5
        
    _unknown_ __eflags,                    // r9
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x08062864
        
    char _v16;                             // _cfa_fffffff0
        
    char _v4124;                           // _cfa_ffffefe4
        
    char _v5148;                           // _cfa_ffffebe4
        
    char _v6172;                           // _cfa_ffffe7e4
        
    char _v7149;                           // _cfa_ffffe413
        
    char _v7196;                           // _cfa_ffffe3e4
        
    intOrPtr _v7200;                       // _cfa_ffffe3e0
        
    char _v7204;                           // _cfa_ffffe3dc
        
    char _v7208;                           // _cfa_ffffe3d8
        
    intOrPtr _v7212;                       // _cfa_ffffe3d4
        
    signed int __ebp// r6
        
    _unknown_ _t24;                        // _t24
        
    intOrPtr _t26;                         // _t26
        
    _unknown_ _t31;                        // _t31
        
    _unknown_ _t36;                        // _t36
        
    char_t38;                            // _t38
        
    char_t39;                            // _t39
        
    char_t45;                            // _t45
        
    intOrPtr _t47;                         // _t47
        
    char_t53;                            // _t53
        
    _unknown_ _t55;                        // _t55
        
    _unknown_ _t56;                        // _t56

        
    __esp __esp 7204;
        
    _push( &_v7200);
        
    _t38 =  &_v5148;
        
    _push(_t38);
        
    _push(0);
        
    _push( &_v7204);
        
    _push( &_v7208);
        
    _push(_a4);
        
    _t24 _t38->verifyLicenseKey(char * , long & , 2int char * , int * )(__ecx__edx__esi__eflags);
        
    __esp __esp 32;
        
    _t55 _t24;
        if(
    _t55 0) {
            
    __eflags _t24 254;
            if(
    _t24 == 254) {
                goto 
    L1;
            } else {
                
    _t47 _v7200;
                
    __eflags _t47;
                
    _t33 100;
                if(
    __eflags <= 0) {
                    goto 
    L3;
                } else {
                    
    _push(100);
                    
    _push(_t47);
                    
    _push(_t38);
                    
    _push(_a4);
                    
    _t36 _t38->autoMigrateLicense(char * , char * , int )(__ecx_t47__edi__esi__eflags);
                    
    __esp =  &_v16;
                    return 
    _t36;
                }
            }
        } else {
    L1:
            
    __esp __esp 8;
            
    _push(_v7200);
            
    _push(_t38);
            
    _push(0);
            
    _push(0);
            
    _push(1024);
            
    _t39 =  &_v6172;
            
    _t45 =  &_v4124;
            
    _push(_t39);
            
    _t26 buildRegisterReqBody(char * , char * , int 1int 0int 0int )(1363379484096_t45);
            
    asm("cld ");
            
    _t53 "http://license.litespeedtech.com/lic_check.php";
            
    _v7212 _t26;
            
    _push(11 << 2);
            
    _push(_t53);
            
    _push( &_v7196);
            
    memcpy();
            
    __esp __esp 12;
            
    __esp __esp 28;
            
    asm("movsw ");
            
    asm("movsb ");
            
    _push(977);
            
    _push(0);
            
    _push( &_v7149);
            
    memset();
             *
    __esp =  &s_fetch;
            
    _t39->reset(void )(_t55);
            
    __esp __esp 12;
             *
    136614424 registerCallback(void * , HttpFetch);
             *
    136614428 0;
            
    _push(_t39);
            
    _push(0);
            
    _push(_v7212);
            
    _push( &_v4124);
            
    _push(0);
            
    _push( &_v7196);
            
    _push( &s_fetch);
            
    _t31 _t39->startReqchar * , int 1int 11?...?(0_t45_t53 0x16_t55);
            
    __esp __esp 32;
            
    _t56 _t31;
            if(
    _t56 != 0) {
                
    __esp __esp 12;
                
    _push("[LICENSE] Failed to send registration request.\n");
                
    _t31->error(char * , ... )();
                
    _t33 2;
                
    __esp __esp 16;
                
    __eflags 2;
                if(
    __eflags == 0) {
                    goto 
    L5;
                }
            } else {
                
    __esp __esp 12;
                
    _push( &s_fetch);
                
    _t39->process(void )(_t45_t56);
                
    _t33 0;
                
    __esp __esp 16;
                if(
    == 0) {
    L5:
                    
    _t33 checkResult(char * , int )(_t3902_t53__eflags);
                    
    __eflags _t33 255;
                    if(
    _t33 == 255) {
                        
    _t33 0;
                    }
                }
            }
    L3:
            
    __esp =  &_v16;
            return 
    _t33;
        }
    }

    __tcf_0(
        
    char __ebx,                            // r1
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x080629CC
        
    intOrPtr _v0;                          // _cfa_0
        
    char _v16;                             // _cfa_fffffff0
        
    intOrPtr__esi;                       // r5
        
    char__ebp;                           // r6
        
    intOrPtr _t9;                          // _t9
        
    intOrPtr _t12;                         // _t12
        
    intOrPtr _t13;                         // _t13

        
    __ebx __ebx;
        
    _a4 =  &s_fetch;
        
    __esp __ebp;
        
    _pop(__ebp);
        
    _push(__ebp);
        
    __ebp __esp;
        
    _push(__esi);
        
    _push(__ebx);
        
    __esi _a4;
        
    _t9 =  *__esi;
        if(
    _t9 != 255) {
            
    __esp __esp 12;
            
    _push(_t9);
            
    close();
            
    __esp __esp 16;
        }
        
    __ebx =  *((intOrPtr*)(__esi 4));
        if(
    __ebx != 0) {
            
    __esp __esp 12;
            
    _push(__ebx);
            
    VMemBuf::~VMemBuf(void )();
             *
    __esp __ebx;
            
    __ebx->operator deletevoid * ();
            
    __esp __esp 16;
        }
        
    _t12 =  *((intOrPtr*)(__esi 12));
        if(
    _t12 != 0) {
            
    __esp __esp 12;
            
    _push(_t12);
            
    L1();
            
    __esp __esp 16;
        }
        
    _t13 =  *((intOrPtr*)(__esi 44));
        if(
    _t13 != 0) {
            
    _v0 _t13;
            
    __esp =  &_v16;
            
    _pop(__ebx);
            
    _pop(__esi);
            
    __esp __ebp;
            
    _pop(__ebp);
            goto 
    __imp__free;
        }
        
    __esp =  &_v16;
        
    _pop(__ebx);
        
    _pop(__esi);
        return 
    _t13;
    }

    _GLOBAL__I__ZN7LicenseC2Ev()
    {
    // addr = 0x080629DC
        
    signed int __ebp// r6

        
    __eax =  &s_fetch->HttpFetch(void )();
        
    __esp __esp 8;
        
    _push( &__dso_handle);
        
    _push(0);
        
    _push(__tcf_0);
        
    __cxa_atexit();
        
    __esp __esp 16;
        return 
    __eax;
    }

    GeoInfo::GeoInfo(void )(
        
    intOrPtr _a4                           // _cfa_4
    )
    {
    // addr = 0x08062A08
        
    _unknown_ __edi;                       // r4
        
    signed int __ebp// r6
        
    intOrPtr_t5;                         // _t5

        
    _t5 _a4;
         *
    _t5 = -1;
        
    asm("cld ");
        
    _push(<< 2);
        
    _push(0);
        
    _push(_t5 4);
        
    memset();
        
    __esp __esp 12;
        return 
    0;

    خوب در این کد تمام مراحل قابل رویت هست و فقط نیاز به بررسی توسط شخصی کاملا مسلط به این زبان داره فایل کامل دکامپایل نیز پیوست
    فایل های پیوست شده فایل های پیوست شده

  2. # ADS




     

  3. #2
    عضو انجمن hamid.soltani92 آواتار ها
    تاریخ عضویت
    Sep 2009
    نوشته ها
    930
    تشکر تشکر کرده 
    1,059
    تشکر تشکر شده 
    4,464
    تشکر شده در
    1,721 پست

    پیش فرض پاسخ : دوستان اشنا به زبان c لطفا مطالعه کنید

    عملا دارید حقوق سازنده رو زیر پا می‌گذارید. شرم آوره!
    قانون انجمن:
    36-2: ایجاد هر گونه تاپیک در خصوص قالب های ریپ شده ، اسکریپت و موارد دارای کپی رایت ممنوع می باشد.

  4. #3
    عضو جدید
    تاریخ عضویت
    Mar 2012
    نوشته ها
    68
    تشکر تشکر کرده 
    45
    تشکر تشکر شده 
    40
    تشکر شده در
    38 پست

    پیش فرض پاسخ : دوستان اشنا به زبان c لطفا مطالعه کنید

    دوست من وجدانا کارتون درست نیست.

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 0
    آخرين نوشته: November 29th, 2014, 09:45
  2. نظر سنجی از همه دوستان
    توسط behrooz در انجمن سوالات و مشکلات
    پاسخ ها: 0
    آخرين نوشته: August 21st, 2013, 20:12
  3. دوستان من گيج شدم !
    توسط shazo در انجمن مباحث دیگر
    پاسخ ها: 2
    آخرين نوشته: March 14th, 2012, 07:55

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •