RtlPcToFilePath

NTSTATUS __stdcall RtlPcToFilePath(VOID *PcValue, _UNICODE_STRING *FilePath){
  _ETHREAD *CurrentThread; 
  INT64 *v5; 
  NTSTATUS v6; 
  INT64 *v7; 
  unsigned __int64 v8; 

  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --CurrentThread->Tcb.KernelApcDisable;
  ExAcquireResourceSharedLite((UINT64)&PsLoadedModuleResource, 1);
  v5 = (INT64 *)PsLoadedModuleList;
  v6 = 0;
  if( PsLoadedModuleList )
  {
    while( v5 != &PsLoadedModuleList )
    {
      v7 = v5;
      v5 = (INT64 *)*v5;
      v8 = v7[6];
      if( (unsigned __int64)PcValue >= v8 && (unsigned __int64)PcValue < v8 + *((unsigned int *)v7 + 16) )
      {
        RtlCopyUnicodeString(FilePath, (PCUNICODE_STRING)(v7 + 9));
        goto LABEL_7;
      }
    }
  }
  v6 = -1073741275;
LABEL_7:
  ExReleaseResourceLite(&PsLoadedModuleResource);
  KeLeaveCriticalRegion();
  return v6;
}

Referenced by:

EtwpProviderArrivalCallback
KitLogFeatureUsage