// UnicodeStrToUpper - decompiled from Platform.efi
__int64 __fastcall UnicodeStrToUpper(__int64 n12)
{
__int64 n3; // rax
unsigned int n3_1; // ebx
__int64 CpuPciCfg; // rax
unsigned __int16 VariableSize; // ax
int VariableSize_1; // edx
int n335; // eax
n3 = (unsigned int)n3; /*0x5ace*/
n3_1 = 3; /*0x5ad4*/
if ( n3 == 3 )
{
CpuPciCfg = ReadCpuPciCfg(n12, 31, 0); /*0x5ae7*/
VariableSize = GetVariableSize((unsigned __int16 *)(CpuPciCfg + 2)); /*0x5af0*/
VariableSize_1 = VariableSize; /*0x5af5*/
if ( ((VariableSize + 24128) & 0xFF70) != 0 )
{
if ( (unsigned __int16)(VariableSize + 25280) <= 8u && (n335 = 335, _bittest(&n335, VariableSize_1 + 25280)) )
{
n3_1 = 2; /*0x5b20*/
}
else
{
DebugPrint(0x80000000, "Unsupported PCH SKU, LpcDeviceId: 0x%04x!\n", (unsigned __int16)VariableSize_1);
Assert( /*0x5b4f*/
(__int64)"e:\\hs\\PurleySktPkg\\SouthClusterLbg\\Library\\PeiDxeSmmPchInfoLib\\PchInfoLib.c",
252,
(__int64)"((BOOLEAN)(0==1))");
}
}
else
{
n3_1 = 1; /*0x5b56*/
}
n3 = n3_1; /*0x5b5b*/
return n3_1; /*0x5b61*/
}
return n3; /*0x5b63*/
}