#include
int main()
{
    int a[10];
    int i,b=0;
    int code = 0xa65b939e;
    long j;
    a[0] = 0x601407;
    a[1] = 0x3;
    a[2] = 0x740110ac;
    a[3] = 0xf006300;
    a[4] = 0x51b3;
    for(i = 0; i < 5; i++){
        b ^= a[i];
    }
    b ^= 0x200;
    b ^= 0x1de4cbea;
    b *= 0x12C4B7E;
    printf("result: %x\n",b);
    printf("code  : %x\n",code);
    //printf("result/code= %x\n",temp/0x12c4b7e);
    return 0;
}

这是第三个数据包(第二次发送的数据包)的校验验证程序。

经过分析,新版协议变动如图:

Free Dr.com源代码更新_第1张图片

更新方案:

1.源代码中的 0x1312FC7 替换成0x1de4cbea

2.将源代码中的0x7E 替换成  0x200

3.删除相应的 0x5300、0x45的复制语句