@@ -126,23 +126,28 @@ HRESULT CheckModuleAddress(HANDLE process, LPCVOID remoteImageBase, LPCVOID loca
126126 SIZE_T resultBytes = VirtualQueryEx (process, (LPCVOID )remoteImageBase, &remoteImageInfo, sizeof (remoteImageInfo));
127127 if (resultBytes != sizeof (remoteImageInfo))
128128 {
129+ Assert (UNREACHED );
129130 return E_ACCESSDENIED ;
130131 }
131132 if (remoteImageInfo.BaseAddress != (PVOID )remoteImageBase)
132133 {
134+ Assert (UNREACHED );
133135 return E_ACCESSDENIED ;
134136 }
135137 if (remoteImageInfo.Type != MEM_IMAGE )
136138 {
139+ Assert (UNREACHED );
137140 return E_ACCESSDENIED ;
138141 }
139142 if (remoteImageInfo.State != MEM_COMMIT )
140143 {
144+ Assert (UNREACHED );
141145 return E_ACCESSDENIED ;
142146 }
143147
144148 if (remoteImageInfo.RegionSize < sizeof (remoteImageHeader))
145149 {
150+ Assert (UNREACHED );
146151 return E_ACCESSDENIED ;
147152 }
148153
@@ -152,6 +157,7 @@ HRESULT CheckModuleAddress(HANDLE process, LPCVOID remoteImageBase, LPCVOID loca
152157 }
153158 if (resultBytes < sizeof (remoteImageHeader))
154159 {
160+ Assert (UNREACHED );
155161 return E_ACCESSDENIED ;
156162 }
157163 PIMAGE_DOS_HEADER localDosHeader = (PIMAGE_DOS_HEADER )localImageBase;
@@ -164,23 +170,28 @@ HRESULT CheckModuleAddress(HANDLE process, LPCVOID remoteImageBase, LPCVOID loca
164170 uintptr_t remoteMaxRead = (uintptr_t )remoteNtHeader + sizeof (IMAGE_NT_HEADERS );
165171 if (remoteMaxRead >= remoteHeaderMax || remoteMaxRead < (uintptr_t )remoteImageHeader)
166172 {
173+ Assert (UNREACHED );
167174 return E_ACCESSDENIED ;
168175 }
169176
170177 if (localNtHeader->FileHeader .NumberOfSections != remoteNtHeader->FileHeader .NumberOfSections )
171178 {
179+ Assert (UNREACHED );
172180 return E_ACCESSDENIED ;
173181 }
174182 if (localNtHeader->FileHeader .NumberOfSymbols != remoteNtHeader->FileHeader .NumberOfSymbols )
175183 {
184+ Assert (UNREACHED );
176185 return E_ACCESSDENIED ;
177186 }
178187 if (localNtHeader->OptionalHeader .CheckSum != remoteNtHeader->OptionalHeader .CheckSum )
179188 {
189+ Assert (UNREACHED );
180190 return E_ACCESSDENIED ;
181191 }
182192 if (localNtHeader->OptionalHeader .SizeOfImage != remoteNtHeader->OptionalHeader .SizeOfImage )
183193 {
194+ Assert (UNREACHED );
184195 return E_ACCESSDENIED ;
185196 }
186197
@@ -207,12 +218,14 @@ ServerConnectProcess(
207218 HANDLE targetHandle;
208219 if (!DuplicateHandle (GetCurrentProcess (), processHandle, GetCurrentProcess (), &targetHandle, 0 , false , DUPLICATE_SAME_ACCESS ))
209220 {
221+ Assert (UNREACHED );
210222 return E_ACCESSDENIED ;
211223 }
212224#else
213225 HANDLE targetHandle = OpenProcess (PROCESS_VM_OPERATION | PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_QUERY_LIMITED_INFORMATION , false , clientPid);
214226 if (!targetHandle)
215227 {
228+ Assert (UNREACHED );
216229 return E_ACCESSDENIED ;
217230 }
218231#endif
@@ -902,6 +915,7 @@ ProcessContextManager::RegisterNewProcess(DWORD pid, HANDLE processHandle, intpt
902915 // We cannot register multiple ProcessContexts for a single process
903916 if (ProcessContexts.ContainsKey (pid))
904917 {
918+ Assert (UNREACHED );
905919 return E_ACCESSDENIED ;
906920 }
907921
0 commit comments