SshpUninitialize

UINT64 **__stdcall SshpUninitialize(){
  UINT64 v0; 
  UINT64 **result; 

  if( SshpPowerSettingHandleInitialized )
  {
    SSHSupportUnregisterPowerSettingCallback();
    SshpPowerSettingHandleInitialized = 0;
  }
  if( SshpWnfSubscriptionInitialized )
  {
    ExUnsubscribeWnfStateChange(SshpWnfSubscription);
    SshpWnfSubscriptionInitialized = 0;
  }
  if( SshpTelemetryHandleRegistered )
  {
    v0 = qword_140C04700;
    qword_140C04700 = 0i64;
    dword_140C046E0 = 0;
    EtwUnregister(v0);
    SshpTelemetryHandleRegistered = 0;
  }
  if( SshpTraceHandleRegistered )
  {
    SSHSupportEtwUnregister();
    SshpTraceHandleRegistered = 0;
  }
  while( 1 )
  {
    result = (UINT64 **)&SshpLibraryList;
    if( SshpLibraryList == &SshpLibraryList )
      break;
    SleepstudyHelperDestroyLibrary(SshpLibraryList);
  }
  SshpInitialized = 0;
  return result;
}

Referenced by:

SshInitialize