WdInstrInitializeInstruction

NTSTATUS __fastcall WdInstrInitializeInstruction(_BYTE *a1, char a2, char a3, __int64 a4, int a5, int a6, char a7){
  char v7; 
  NTSTATUS result; 
  v7 = 0;
  if( !a1 )
    return -1073741811;
  memset((INT64)a1, 0i64);
  result = WdHwCreateHardwareRegister(*(LARGE_INTEGER *)(a4 + 4));
  if( result >= 0 )
  {
    *a1 = a2;
    a1[1] = a3;
    if( a7 )
    {
      a1[48] = 32;
    }
    else
    {
      a1[48] = *(_BYTE *)(a4 + 1);
      v7 = *(_BYTE *)(a4 + 2);
    }
    a1[49] = v7;
    *((_DWORD *)a1 + 13) = a5;
    *((_DWORD *)a1 + 14) = a6;
    return 0;
  }
  return result;
}

Referenced by:

HalpWdatExecuteActionBeforeInitialize
HalpWdatInitializeWdat
HalpWdatInitializeWdrt