NASCAR 25 sets some DACLs to the game threads which result in failure to open those in KeGetCurrentThread() when processing a request (to Wine driver) issued by such a thread. Ideally we should not use user-mode handle open functions at all in ntoskrnl / drivers, but we don't yet have full kernel object access management and both ntoskrnl and Wine drivers resort to some user-mode things currently. kernel_object_from_handle() called after doesn't depend on any access rights on user thread handle.