Skip to content

Instantly share code, notes, and snippets.

@matrosov
Created October 7, 2014 17:35
Show Gist options
  • Select an option

  • Save matrosov/a69ab2254aa16a024976 to your computer and use it in GitHub Desktop.

Select an option

Save matrosov/a69ab2254aa16a024976 to your computer and use it in GitHub Desktop.
Hex-Rays decompilation result
void __fastcall CMarkup::UpdateMarkupContentsVersion(CMarkup *this, int a2)
{
int v2; // eax@1
int v3; // ecx@3
int v4; // eax@3
int v5; // eax@6
int v6; // eax@8
int v7; // eax@9
int v8; // ecx@13
int v9; // esi@14
int v10; // eax@14
HWND v11; // eax@17
*(_DWORD *)(a2 + 124) = (*(_DWORD *)(a2 + 124) + 1) | 0x80000000;
v2 = *(_DWORD *)(a2 + 172);
if ( v2 )
++*(_DWORD *)(v2 + 16);
v3 = *(_DWORD *)(a2 + 148);
v4 = 0;
if ( v3 )
v4 = *(_DWORD *)(v3 + 12);
if ( *(_DWORD *)(v4 + 448) )
{
v5 = 0;
if ( v3 )
v5 = *(_DWORD *)(v3 + 12);
v6 = *(_DWORD *)(v5 + 448);
if ( *(_BYTE *)(v6 + 12) & 1 )
v7 = 0;
else
v7 = *(_DWORD *)(*(_DWORD *)(v6 + 76) + 56);
if ( a2 == v7 )
{
if ( v3 )
{
v8 = *(_DWORD *)(v3 + 12);
if ( v8 )
{
v9 = v8 + 3160;
v10 = *(_DWORD *)(v8 + 3160);
if ( v10 & 0x4000 )
{
*(_DWORD *)v9 = v10 | 0x8000;
}
else
{
v11 = CServer::GetHWND((CServer *)v8);
if ( v11 )
{
SetTimer(v11, 0x1008u, 0x64u, 0);
*(_DWORD *)v9 |= 0x4000u;
}
}
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment