Skip to content

Commit e27614d

Browse files
committed
Implement ZwSetInformationThread ThreadHideFromDebugger
1 parent 7144036 commit e27614d

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

src/dumpulator/dumpulator.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -831,6 +831,11 @@ def syscall_arg(index):
831831
argvalue = syscall_arg(i)
832832
if issubclass(argtype, PVOID):
833833
argvalue = argtype(argvalue, dp)
834+
elif issubclass(argtype, Enum):
835+
try:
836+
argvalue = argtype(dp.args[i])
837+
except KeyError as x:
838+
raise Exception(f"Unknown enum value {dp.args[i]} for {type(argtype)}")
834839
else:
835840
argvalue = argtype(argvalue)
836841
args.append(argvalue)

src/dumpulator/ntsyscalls.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3561,6 +3561,11 @@ def ZwSetInformationThread(dp: Dumpulator,
35613561
ThreadInformation: PVOID,
35623562
ThreadInformationLength: ULONG
35633563
):
3564+
if ThreadInformationClass == THREADINFOCLASS.ThreadHideFromDebugger:
3565+
assert ThreadInformation == 0
3566+
assert ThreadInformationLength == 0
3567+
assert ThreadHandle == dp.NtCurrentThread()
3568+
return STATUS_SUCCESS
35643569
raise NotImplementedError()
35653570

35663571
@syscall

0 commit comments

Comments
 (0)