最牛的逆向工具Ida pro 6.5 和最新的x86 arm Hex-Rays decompiler 1.9源码插件
大老的博客:
dd5K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0D9L8$3N6Q4x3X3g2K6K9h3&6S2i4K6u0W2j5$3!0E0i4K6u0W2j5$3&6Q4x3V1k6V1j5h3I4S2L8%4q4V1i4K6y4r3M7r3g2V1K9i4V1`.
新版本的变化很大源码插件升级为1.9版本再加上我自己写的插件,反编译源码可读效果大幅提高。
signed int __fastcall AES_set_decrypt_key(int a1, int a2, int a3)
{
signed int result; // r0@1
signed int v4; // r3@2
int v5; // r1@2
int v6; // r2@3
int v7; // r3@3
int v8; // r0@3
int v9; // r4@4
int v10; // r4@4
int v11; // r4@4
int v12; // r4@4
signed int v13; // r10@7
int v14; // r9@7
int v15; // r0@8
unsigned int v16; // r2@9
unsigned int v17; // r1@9
int v18; // r1@9
unsigned int v19; // r3@9
int v20; // ST04_4@9
int v21; // r7@9
int v22; // [sp+Ch] [bp-2Ch]@1
v22 = a3;
result = AES_set_encrypt_key(a1, a2, a3);
if ( result >= 0 )
{
v4 = *(_DWORD *)(v22 + 240);
v5 = 4 * v4;
if ( 4 * v4 > 0 )
{
v6 = v22;
v7 = v22 + 16 * v4;
v8 = 0;
do
{
v9 = *(_DWORD *)v6;
v8 += 4;
v5 -= 4;
*(_DWORD *)v6 = *(_DWORD *)v7;
*(_DWORD *)v7 = v9;
v10 = *(_DWORD *)(v6 + 4);
*(_DWORD *)(v6 + 4) = *(_DWORD *)(v7 + 4);
*(_DWORD *)(v7 + 4) = v10;
v11 = *(_DWORD *)(v6 + 8);
*(_DWORD *)(v6 + 8) = *(_DWORD *)(v7 + 8);
*(_DWORD *)(v7 + 8) = v11;
v12 = *(_DWORD *)(v6 + 12);
*(_DWORD *)(v6 + 12) = *(_DWORD *)(v7 + 12);
*(_DWORD *)(v7 + 12) = v12;
v6 += 16;
v7 -= 16;
}
while ( v8 < v5 );
v4 = *(_DWORD *)(v22 + 240);
}
if ( v4 > 1 )
{
v13 = 1;
v14 = v22 + 16;
do
{
v15 = v14;
v14 += 16;
do
{
v16 = ((*(_DWORD *)v15 & 0x80808080) - ((*(_DWORD *)v15 & 0x80808080) >> 7)) & 0x1B1B1B1B ^ 2 * (*(_DWORD *)v15 & 0x7F7F7F7F);
v17 = v16 & 0x80808080;
v18 = (v17 - (v17 >> 7)) & 0x1B1B1B1B ^ 2 * (v16 & 0x7F7F7F7F);
v19 = *(_DWORD *)v15 ^ ((v18 & 0x80808080) - ((v18 & 0x80808080) >> 7)) & 0x1B1B1B1B ^ 2 * (v18 & 0x7F7F7F7F);
v20 = v19 ^ v16;
v21 = v19 ^ v18;
*(_DWORD *)v15 = v16 ^ v18 ^ ((v18 & 0x80808080) - ((v18 & 0x80808080) >> 7)) & 0x1B1B1B1B ^ 2 * (v18 & 0x7F7F7F7F) ^ (v19 >> 8) ^ (v19 << 24) ^ ((unsigned int)v21 >> 16) ^ (v21 << 16) ^ ((unsigned int)v20 >> 24) ^ (v20 << 8);
v15 += 4;
}
while ( v14 != v15 );
++v13;
}
while ( *(_DWORD *)(v22 + 240) > v13 );
}
result = 0;
}
return result;
}
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
上传的附件: