Definition guest_ptr.hh:88
Status codes returned by Windows NT system calls.
Definition NTSTATUS.hh:34
Handler class for the NtCreateUserProcess system call.
Definition NtCreateUserProcess.hh:42
virtual const std::shared_ptr< THREAD > get_new_thread() const =0
Get the newly created THREAD object.
virtual void ThreadHandlePtr(const guest_ptr< void > &pThreadHandle)=0
Setter for ThreadHandlePtr.
static NTSTATUS inject(uint64_t &ProcessHandle, uint64_t &ThreadHandle, PROCESS_ACCESS_MASK ProcessDesiredAccess, THREAD_ACCESS_MASK ThreadDesiredAccess, const guest_ptr< void > &pProcessObjectAttributes, const guest_ptr< void > &pThreadObjectAttributes, ProcessCreateFlags ProcessFlags, ThreadCreateFlags ThreadFlags, const RTL_USER_PROCESS_PARAMETERS *ProcessParameters, PS_CREATE_INFO &CreateInfo, const guest_ptr< void > &pAttributeList)
virtual PROCESS_ACCESS_MASK ProcessDesiredAccess() const =0
Getter for ProcessDesiredAccess.
virtual guest_ptr< void > ProcessHandlePtr() const =0
Getter for ProcessHandlePtr.
virtual void ProcessHandle(uint64_t ProcessHandle)=0
virtual std::shared_ptr< THREAD > get_new_thread()=0
Get the newly created THREAD object.
virtual THREAD_ACCESS_MASK ThreadDesiredAccess() const =0
Getter for ThreadDesiredAccess.
virtual const std::shared_ptr< PROCESS > get_new_process() const =0
Get the newly created PROCESS object.
virtual void CreateInfoPtr(const guest_ptr< void > &pCreateInfo)=0
Setter for CreateInfoPtr.
virtual void ProcessParametersPtr(const guest_ptr< void > &pProcessParameters)=0
Setter for ProcessParametersPtr.
virtual void ThreadHandle(uint64_t ThreadHandle)=0
virtual void ProcessHandlePtr(const guest_ptr< void > &pProcessHandle)=0
Setter for ProcessHandlePtr.
virtual void AttributeListPtr(const guest_ptr< void > &pAttributeList)=0
Setter for AttributeListPtr.
virtual ProcessCreateFlags ProcessFlags() const =0
Getter for ProcessFlags.
virtual const RTL_USER_PROCESS_PARAMETERS * ProcessParameters() const =0
virtual OBJECT_ATTRIBUTES * ProcessObjectAttributes()=0
virtual guest_ptr< void > ThreadObjectAttributesPtr() const =0
Getter for ThreadObjectAttributesPtr.
virtual ThreadCreateFlags ThreadFlags() const =0
Getter for ThreadFlags.
virtual void ProcessDesiredAccess(PROCESS_ACCESS_MASK ProcessDesiredAccess)=0
Setter for ProcessDesiredAccess.
virtual void ProcessObjectAttributesPtr(const guest_ptr< void > &pProcessObjectAttributes)=0
Setter for ProcessObjectAttributesPtr.
virtual const OBJECT_ATTRIBUTES * ProcessObjectAttributes() const =0
virtual guest_ptr< void > CreateInfoPtr() const =0
Getter for CreateInfoPtr.
virtual guest_ptr< void > ProcessParametersPtr() const =0
Getter for ProcessParametersPtr.
virtual const OBJECT_ATTRIBUTES * ThreadObjectAttributes() const =0
virtual const PS_CREATE_INFO * CreateInfo() const =0
virtual uint64_t ThreadHandle() const =0
virtual PS_CREATE_INFO * CreateInfo()=0
virtual PS_ATTRIBUTE_LIST * AttributeList()=0
virtual void ProcessFlags(ProcessCreateFlags ProcessFlags)=0
Setter for ProcessFlags.
virtual void ThreadDesiredAccess(THREAD_ACCESS_MASK ThreadDesiredAccess)=0
Setter for ThreadDesiredAccess.
virtual const PS_ATTRIBUTE_LIST * AttributeList() const =0
virtual OBJECT_ATTRIBUTES * ThreadObjectAttributes()=0
virtual guest_ptr< void > ProcessObjectAttributesPtr() const =0
Getter for ProcessObjectAttributesPtr.
virtual void ThreadFlags(ThreadCreateFlags ThreadFlags)=0
Setter for ThreadFlags.
virtual std::shared_ptr< PROCESS > get_new_process()=0
Get the newly created PROCESS object.
virtual void ThreadObjectAttributesPtr(const guest_ptr< void > &pThreadObjectAttributes)=0
Setter for ThreadObjectAttributesPtr.
virtual guest_ptr< void > AttributeListPtr() const =0
Getter for AttributeListPtr.
virtual RTL_USER_PROCESS_PARAMETERS * ProcessParameters()=0
virtual uint64_t ProcessHandle() const =0
virtual guest_ptr< void > ThreadHandlePtr() const =0
Getter for ThreadHandlePtr.
Base type for NT system calls.
Definition NtSystemCall.hh:29
Definition OBJECT_ATTRIBUTES.hh:38
ACCESS_MASK class for process permissions.
Definition PROCESS_ACCESS_MASK.hh:72
Definition PS_ATTRIBUTE_LIST.hh:116
Definition PS_CREATE_INFO.hh:43
Definition ProcessCreateFlags.hh:33
Definition RTL_USER_PROCESS_PARAMETERS.hh:33
ACCESS_MASK class for thread permissions.
Definition THREAD_ACCESS_MASK.hh:67
Definition ThreadCreateFlags.hh:34
Core IntroVirt classes.
Definition Cr0.hh:20