Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
|
pwnium2k14_reverse2 [2014/07/06 16:15] Spl3en |
pwnium2k14_reverse2 [2017/04/09 15:33] (Version actuelle) |
||
|---|---|---|---|
| Ligne 54: | Ligne 54: | ||
| case 275: | case 275: | ||
| *(_BYTE *)(*(_DWORD *)(a1 + 16) + 54016) |= 8u; | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 54016) |= 8u; | ||
| - | break; | ||
| - | case 274: | ||
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 54016) |= 2u; | ||
| - | break; | ||
| - | case 273: | ||
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 54016) |= 1u; | ||
| break; | break; | ||
| [...] | [...] | ||
| Ligne 81: | Ligne 75: | ||
| <code C> | <code C> | ||
| - | |||
| if ( v5 > 0 ) | if ( v5 > 0 ) | ||
| { | { | ||
| - | v7 = v4 + 28; | + | v7 = v4 + 28; |
| - | v6 = 0; | + | v6 = 0; |
| - | do | + | do |
| + | { | ||
| + | if ( *(_DWORD *)(v7 - 28) == 254 ) | ||
| { | { | ||
| - | if ( *(_DWORD *)(v7 - 28) == 254 ) | + | if ( *(_DWORD *)(v7 - 24) == 254 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 - 24) == 254 ) | + | if ( *(_DWORD *)(v7 - 20) == 251 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 - 20) == 251 ) | + | if ( *(_DWORD *)(v7 - 16) == 254 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 - 16) == 254 ) | + | if ( *(_DWORD *)(v7 - 12) == 253 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 - 12) == 253 ) | + | if ( *(_DWORD *)(v7 - 8) == 247 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 - 8) == 247 ) | + | if ( *(_DWORD *)(v7 - 4) == 253 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 - 4) == 253 ) | + | if ( *(_DWORD *)v7 == 251 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)v7 == 251 ) | + | if ( *(_DWORD *)(v7 + 4) == 247 ) |
| - | { | + | { |
| - | if ( *(_DWORD *)(v7 + 4) == 247 ) | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15108) = 71; // 71 |
| - | { // écriture dans le tableau de bytes : | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15109) = *(_BYTE *)(v7 - 24) + 81; // 254 + 81 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15108) = 71; // 71 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15110) = 12048 / *(_DWORD *)(v7 - 20); // 12048 / 251 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15109) = *(_BYTE *)(v7 - 24) + 81; // 254 + 81 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15111) = *(_DWORD *)(v7 - 8) ^ 0xB3; // 247 ^ 0xB3 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15110) = 12048 / *(_DWORD *)(v7 - 20); // 12048 / 251 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15112) = 23845 / *(_DWORD *)v7; // 23845 / 251 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15111) = *(_DWORD *)(v7 - 8) ^ 0xB3; // 247 ^ 0xB3 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15113) = *(_BYTE *)(v7 + 4) + 83; // 253 + 83 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15112) = 23845 / *(_DWORD *)v7; // 23845 / 251 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15114) = 48; // 48 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15113) = *(_BYTE *)(v7 + 4) + 83; // 253 + 83 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15115) = *(_BYTE *)(v7 - 4) + 64 - *(_BYTE *)v7; // 253 + 64 - 251 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15114) = 48; // 48 | + | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15116) = *(_BYTE *)(v7 + 4) ^ 0xD6; // 247 ^ 0xD6 |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15115) = *(_BYTE *)(v7 - 4) + 64 - *(_BYTE *)v7; // 253 + 64 - 251 | + | } |
| - | *(_BYTE *)(*(_DWORD *)(a1 + 16) + 15116) = *(_BYTE *)(v7 + 4) ^ 0xD6; // 247 ^ 0xD6 | + | } |
| - | // | + | } |
| - | } | + | } |
| - | } | + | } |
| - | } | + | } |
| - | } | + | } |
| - | } | + | } |
| - | } | + | |
| - | } | + | |
| - | } | + | |
| - | } | + | |
| - | ++v6; | + | |
| - | dword_414BE0 = v6; | + | |
| - | v7 += 4; | + | |
| } | } | ||
| - | while ( v5 != v6 ); | + | ++v6; |
| + | dword_414BE0 = v6; | ||
| + | v7 += 4; | ||
| + | } | ||
| + | while ( v5 != v6 ); | ||
| } | } | ||
| </code> | </code> | ||