SiOpenArcNameObject
NTSTATUS __stdcall SiOpenArcNameObject(WCHAR *ArcPath, VOID **ObjectHandle){
NTSTATUS v3;
NTSTATUS v4;
_UNICODE_STRING DestinationString;
_OBJECT_ATTRIBUTES ObjectAttributes;
VOID *LinkHandle;
*(&ObjectAttributes.Length + 1) = 0;
*(&ObjectAttributes.Attributes + 1) = 0;
LinkHandle = 0i64;
DestinationString = 0i64;
RtlInitUnicodeString(&DestinationString, ArcPath);
ObjectAttributes.RootDirectory = 0i64;
ObjectAttributes.ObjectName = &DestinationString;
ObjectAttributes.Length = 48;
ObjectAttributes.Attributes = 576;
*(_OWORD *)&ObjectAttributes.SecurityDescriptor = 0i64;
v3 = ZwOpenSymbolicLinkObject(&LinkHandle, 131073, &ObjectAttributes);
v4 = v3;
if( v3 < 0 )
{
if( v3 != -1073741801 && v3 != -1073741670 )
return -1073740718;
}
else
{
*ObjectHandle = LinkHandle;
}
return v4;
}Referenced by:
SiGetBiosSystemDisk