char *__fastcall ImageRenderGetScanline(int n2, int a2)
{
char *v4; // eax
unsigned int count; // ebx
char *Pool; // eax
char *Pool_1; // ebp
if ( (unsigned int)(n2 - 1) > 0x27 )
return 0;
if ( !*(_DWORD *)(a2 + 4 * n2 + 176) )
{
v4 = ImageRenderColorConvert(n2, a2);
*(_DWORD *)(a2 + 4 * n2 + 176) = v4;
if ( !v4 )
return 0;
}
count = *(_DWORD *)(28 * n2 + a2 + 804) * *(_DWORD *)(28 * n2 + a2 + 804);
Pool = (char *)PeiAllocatePool((void *)count);
Pool_1 = Pool;
if ( !Pool )
return 0;
if ( count )
CopyMem(Pool, *(char **)(a2 + 4 * n2 + 176), count);
return Pool_1;
}