int __fastcall ImageRenderPrepare(int *p_n26, int a2)
{
unsigned int *p_count; // edi
int i; // esi
if ( ImageRenderDecode(p_n26, a2) < 0 )
return 0;
p_count = ImageRenderAllocContext();
if ( !p_count )
return 0;
for ( i = p_n26[2]; i; i = *(_DWORD *)(i + 16) )
{
if ( ImageRenderSetPixel(p_count, *(unsigned int **)(i + 12)) < 0 )
return 0;
}
if ( ImageRenderToOutput(p_count, p_n26, a2) >= 0 )
return BitUnpack((int *)p_count);
else
return 0;
}