RaspScaleCoordinates
INT64 __fastcall RaspScaleCoordinates(INT64 a1, INT64 a2){
__int64 v2;
unsigned __int16 v4;
__int64 v5;
unsigned __int64 v6;
__int64 v7;
__int64 v8;
__int64 v9;
__int64 v10;
v2 = *(_QWORD *)(a1 + 8);
v4 = 0;
v5 = *(unsigned __int16 *)(v2 + 120);
if( !(_WORD)v5 )
return 3221225473i64;
v6 = (*(unsigned int *)(a1 + 16) * (unsigned __int64)*(unsigned int *)(v2 + 96)) << 6;
v7 = 72 * v5;
*(_DWORD *)(a2 + 2) = (__int64)(v6 * *(__int16 *)(a2 + 2)) / (72 * v5);
*(_DWORD *)(a2 + 6) = (__int64)(v6 * *(__int16 *)(a2 + 6)) / (72 * v5);
*(_DWORD *)(a2 + 10) = (__int64)(v6 * *(__int16 *)(a2 + 10)) / (72 * v5);
*(_DWORD *)(a2 + 14) = (__int64)(v6 * *(__int16 *)(a2 + 14)) / (72 * v5);
*(_DWORD *)(a2 + 18) = (__int64)(v6 * *(__int16 *)(a2 + 18)) / (72 * v5);
while( v4 < *(_WORD *)(a2 + 24) )
{
v8 = v4;
*(_DWORD *)(*(_QWORD *)(a2 + 50) + 4i64 * v4) = (__int64)(v6 * *(__int16 *)(*(_QWORD *)(a2 + 50) + 4i64 * v4)) / v7;
v9 = *(_QWORD *)(a2 + 58);
v10 = (__int64)(v6 * *(__int16 *)(v9 + 4i64 * v4++)) / v7;
*(_DWORD *)(v9 + 4 * v8) = v10;
}
return 0i64;
}Referenced by:
RaspRasterize