谁能把C++的这个算法改成AU3
C++代码#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void EnCode(char* lpstr);
int main()
{
char str="";
printf("河南网通用户名转换工具n请输入用户名:n");
scanf("%s",str);
EnCode(str);
printf("真实的登录账户为:n2:%sn",str);
return 0;
}
void EnCode(char* lpstr)
{
char cas_str[]=
"9012345678abcdeABCDEFGHIJKLMNfghijklmnUVWXYZxyzuvwopqrstOPQRST";
int cas_str_buffer;
int cas_esi = 37;
char src_str="",dec_str="";
int k=0;
int cas_eax,cas_edx;
div_t x;
unsigned int i,j;
cas_str_buffer=25;
cas_str_buffer=35;
cas_str_buffer=182;
cas_str_buffer=236;
cas_str_buffer=43;
cas_str_buffer=41;
cas_str_buffer=53;
cas_str_buffer=18;
cas_str_buffer=226;
cas_str_buffer=215;
cas_str_buffer=24;
cas_str_buffer=117;
cas_str_buffer=35;
cas_str_buffer=201;
cas_str_buffer=52;
cas_str_buffer=17;
strcpy(src_str,lpstr);
for ( i=0;i<strlen(src_str);i++)
{
for(j=0;j<strlen(cas_str);j++)
{
if (src_str==cas_str)
{
if(i<16) cas_eax=cas_str_buffer;
else
{
x=div(i,16);
cas_eax=cas_str_buffer ;
}
cas_edx=cas_esi+cas_esi*2 ;
cas_eax=cas_eax^cas_edx;
cas_eax=cas_eax^k;
cas_eax=cas_eax+j;
x = div(cas_eax,62);
dec_str=cas_str;
cas_edx=x.rem ;
cas_esi=cas_esi^(cas_edx+9433);
break;
}
}
if(dec_str==NULL)
dec_str=src_str;
k=k+5;
}
strcpy(lpstr,dec_str)联通的账号加密算法,有点绕 需要做吗?
页:
[1]