Normalization__LoadTables
INT64 __fastcall Normalization__LoadTables(INT64 a1, UINT16 *a2, UINT64 a3, INT64 a4){
char v6;
UINT64 v8;
UINT64 v9;
UINT64 v10;
UINT16 *v11;
int v12;
v6 = BYTE1(a1);
memset(a4, 0i64);
v8 = a3 >> 1;
if( a3 >> 1 < a2[26] )
return 3221225624i64;
v9 = a2[27];
if( v8 < v9 )
return 3221225624i64;
v10 = a2[28];
if( v8 < v10
|| v8 < a2[29]
|| v8 < a2[30]
|| v8 < a2[31]
|| v8 < a2[32]
|| v8 < a2[33]
|| (_DWORD)v10 - (_DWORD)v9 != 4352 )
{
return 3221225624i64;
}
*(_QWORD *)(a4 + 8) = a2;
*(_QWORD *)(a4 + 16) = a3;
*(_DWORD *)a4 = a2[20];
*(_DWORD *)(a4 + 24) = a2[21];
*(_DWORD *)(a4 + 28) = a2[22];
*(_QWORD *)(a4 + 32) = &a2[a2[27]];
*(_QWORD *)(a4 + 40) = &a2[a2[28]];
*(_DWORD *)(a4 + 56) = a2[23];
*(_QWORD *)(a4 + 64) = &a2[a2[29]];
*(_QWORD *)(a4 + 72) = &a2[a2[30]];
*(_QWORD *)(a4 + 80) = &a2[a2[31]];
v11 = 0i64;
v12 = a2[24];
*(_DWORD *)(a4 + 88) = v12;
if( v12 )
{
*(_BYTE *)(a4 + 112) = 0;
*(_QWORD *)(a4 + 96) = &a2[a2[32]];
v11 = &a2[a2[33]];
}
else
{
*(_BYTE *)(a4 + 112) = 1;
*(_QWORD *)(a4 + 96) = 0i64;
}
*(_QWORD *)(a4 + 104) = v11;
*(_QWORD *)(a4 + 48) = &a2[a2[26]];
Normalization__LoadClassMapExceptions(a4);
*(_BYTE *)(a4 + 113) = (v6 & 1) == 0;
return 0i64;
}Referenced by:
RtlpGetNormalization