- UID
- 2198
注册时间2005-6-29
阅读权限255
最后登录1970-1-1
副坛主
该用户从未签到
|
楼主 |
发表于 2019-11-22 17:32:34
|
显示全部楼层
补上~
- VOID NsBreakAwayFromMemoryOrderModuleList(PWCHAR szFullDllName)
- {
- PTEB pTeb = NtCurrentTeb();
- PPEB pPeb = pTeb->ProcessEnvironmentBlock;
- PPEB_LDR_DATA Ldr = pPeb->Ldr;
- LIST_ENTRY* Head = NULL;
- LIST_ENTRY* entry = NULL;
- Head = Ldr->InLoadOrderModuleList.Flink;
- entry = Head->Flink;
- while (entry != Head)
- {
- PLDR_DATA_TABLE_ENTRY item = (PLDR_DATA_TABLE_ENTRY)entry;
- if (CheckDllPatch(&item->FullDllName, szFullDllName))
- RemoveEntryList(entry);
- entry = entry->Flink;
- }
- Head = Ldr->InMemoryOrderModuleList.Flink;
- entry = Head->Flink;
- while (entry != Head)
- {
- PLDR_DATA_TABLE_ENTRY item = \
- (PLDR_DATA_TABLE_ENTRY)CONTAINING_RECORD(entry, LDR_DATA_TABLE_ENTRY, InMemoryOrderLinks);
- if (CheckDllPatch(&item->FullDllName, szFullDllName))
- RemoveEntryList(entry);
- entry = entry->Flink;
- }
- Head = Ldr->InInitializationOrderModuleList.Flink;
- entry = Head->Flink;
- while (entry != Head)
- {
- PLDR_DATA_TABLE_ENTRY item = \
- (PLDR_DATA_TABLE_ENTRY)CONTAINING_RECORD(entry, LDR_DATA_TABLE_ENTRY, InInitializationOrderLinks);;
- if (CheckDllPatch(&item->FullDllName, szFullDllName))
- RemoveEntryList(entry);
- entry = entry->Flink;
- }
- }
复制代码
|
|