冬
冬月
Unregistered / Unconfirmed
GUEST, unregistred user!
void XBOX(BYTE *p_buff,int len,DWORD dwKey)
{
int templen = len &
3;
DWORD dwecx = dwKey;
len = len >&gt
2;
if(len &gt
1)
{
while(len &gt
0)
{
dwecx = XPBox[(dwecx+len-1)%0x162F]+0x2E6D23C1;
*(DWORD *)p_buff = *(DWORD *)p_buff ^ dwecx;
p_buff += 4;
len--;
}
}
dwecx ^= XPBox[templen%0x162F];
if(templen &gt
0)
{
for(int i=0;i<templen;i++)
{
p_buff = p_buff ^ (BYTE)(dwecx &
0xFF);
dwecx = dwecx >&gt
8;
}
}
}
{
int templen = len &
3;
DWORD dwecx = dwKey;
len = len >&gt
2;
if(len &gt
1)
{
while(len &gt
0)
{
dwecx = XPBox[(dwecx+len-1)%0x162F]+0x2E6D23C1;
*(DWORD *)p_buff = *(DWORD *)p_buff ^ dwecx;
p_buff += 4;
len--;
}
}
dwecx ^= XPBox[templen%0x162F];
if(templen &gt
0)
{
for(int i=0;i<templen;i++)
{
p_buff = p_buff ^ (BYTE)(dwecx &
0xFF);
dwecx = dwecx >&gt
8;
}
}
}