TtmpCloseTerminalHandle
VOID __stdcall TtmpCloseTerminalHandle(
PEPROCESS Process,
VOID *Object,
UINT64 ProcessHandleCount,
UINT64 SystemHandleCount){
unsigned int v5;
unsigned int v8;
_ETHREAD *CurrentThread;
VOID *ProcessId;
v5 = *((_DWORD *)Object + 7);
v8 = **((_DWORD **)Object + 2);
if( SystemHandleCount == 1 )
{
CurrentThread = (_ETHREAD *)KeGetCurrentThread();
--CurrentThread->Tcb.KernelApcDisable;
ExAcquireResourceExclusiveLite((UINT64)&TtmpSessionLock, 1, ProcessHandleCount);
TtmpSetTerminalPendingCleanup(*((_TTMI_SESSION **)Object + 2), (_TTMI_TERMINAL *)Object);
ExReleaseResourceLite(&TtmpSessionLock);
KeLeaveCriticalRegion();
}
ProcessId = PsGetProcessId(Process);
TtmiLogTerminalHandleClosed(v8, v5, ProcessId, SystemHandleCount);
}Referenced by:
No references.