EmpCacheBiosDate
UINT8 __stdcall EmpCacheBiosDate(){
VOID **v0;
VOID **v1;
UINT8 v2;
_WORD *v3;
_WORD *v4;
unsigned int v5;
_HANDLE v6;
CHAR Str[2];
char v9;
char v10;
VOID *Handle;
VOID *BaseAddress;
_KAPC_STATE ApcState;
memset(&ApcState, 0, sizeof(ApcState));
v2 = 0;
BaseAddress = 0i64;
Handle = 0i64;
LODWORD(EmpCachedBiosDate) = 0;
v9 = 0;
if( *(&ExBootDevicesRemovedEvent + 276) == 1 )
{
v3 = EmpMapPhysicalAddress(v1, v0, (_KAPC_STATE *)&Handle);
v4 = v3;
if( v3 )
{
*(_WORD *)Str = v3[3];
v5 = strtoul(Str, 0i64, 16i64);
LODWORD(EmpCachedBiosDate) = (v5 < 0x80 ? 0x20000000 : 419430400) + (v5 << 16);
*(_WORD *)Str = *v4;
LODWORD(EmpCachedBiosDate) = ((unsigned int)strtoul(Str, 0i64, 16i64) << 8) | EmpCachedBiosDate;
*(_WORD *)Str = *(_WORD *)((char *)v4 + 3);
LODWORD(EmpCachedBiosDate) = strtoul(Str, 0i64, 16i64) | EmpCachedBiosDate;
v2 = 1;
v10 = 1;
v6 = (int)Handle;
ZwUnmapViewOfSection((VOID *)0xFFFFFFFFFFFFFFFFi64, BaseAddress);
KiUnstackDetachProcess(&ApcState, 0i64);
ZwClose(v6);
}
}
return v2;
}Referenced by:
EmInitSystem