int __fastcall ImageRenderCopyBlock(int *p_n2, int n26, int p_n2a, int a4)
{
unsigned int *p_count; // eax
int v7; // ecx
char *count; // edx
p_count = ImageRenderAllocContext();
p_n2[3] = (int)p_count;
if ( p_count )
{
if ( ImageRenderBits(p_count, (char *)4, 4) >= 0 )
{
v7 = 0;
if ( n26 > 9 )
{
LOBYTE(v7) = n26 > 26;
++v7;
}
count = *(char **)(a4 + 4 * v7 + 152);
if ( (!count || ImageRenderBits((unsigned int *)p_n2[3], count, p_n2[1]) >= 0)
&& ImageRenderReadPixel((unsigned int *)p_n2[3], p_n2[1], p_n2[2]) >= 0 )
{
return 0;
}
}
p_n2[3] = 0;
}
return -1;
}