@@ -115,7 +115,7 @@ VOID PvEnumerateExceptionEntries(
115
115
{
116
116
for (ULONG i = 0 ; i < exceptions .NumberOfEntries ; i ++ )
117
117
{
118
- PIMAGE_RUNTIME_FUNCTION_ENTRY entry = PTR_ADD_OFFSET (exceptions .ExceptionDirectory , i * sizeof (IMAGE_RUNTIME_FUNCTION_ENTRY ));
118
+ PPH_IMAGE_RUNTIME_FUNCTION_ENTRY_AMD64 entry = PTR_ADD_OFFSET (exceptions .ExceptionDirectory , i * sizeof (PH_IMAGE_RUNTIME_FUNCTION_ENTRY_AMD64 ));
119
119
INT lvItemIndex ;
120
120
PPH_STRING symbol ;
121
121
PPH_STRING symbolName = NULL ;
@@ -175,19 +175,23 @@ VOID PvEnumerateExceptionEntries(
175
175
}
176
176
}
177
177
}
178
+ else if (imageMachine == IMAGE_FILE_MACHINE_ARM64 )
179
+ {
180
+ /* Todo */
181
+ }
178
182
179
183
//ExtendedListView_SortItems(ListViewHandle);
180
184
ExtendedListView_SetRedraw (ListViewHandle , TRUE);
181
185
}
182
186
183
- INT NTAPI PvpPeExceptionSizeCompareFunction (
187
+ INT NTAPI PvpPeExceptionSizeCompareFunctionAmd64 (
184
188
_In_ PVOID Item1 ,
185
189
_In_ PVOID Item2 ,
186
190
_In_ PVOID Context
187
191
)
188
192
{
189
- PIMAGE_RUNTIME_FUNCTION_ENTRY entry1 = Item1 ;
190
- PIMAGE_RUNTIME_FUNCTION_ENTRY entry2 = Item2 ;
193
+ PPH_IMAGE_RUNTIME_FUNCTION_ENTRY_AMD64 entry1 = Item1 ;
194
+ PPH_IMAGE_RUNTIME_FUNCTION_ENTRY_AMD64 entry2 = Item2 ;
191
195
192
196
return uintptrcmp ((ULONG_PTR )entry1 -> EndAddress - entry1 -> BeginAddress , (ULONG_PTR )entry2 -> EndAddress - entry2 -> BeginAddress );
193
197
}
@@ -245,7 +249,7 @@ INT_PTR CALLBACK PvpPeExceptionDlgProc(
245
249
PhAddListViewColumn (context -> ListViewHandle , 1 , 1 , 1 , LVCFMT_LEFT , 100 , L"SEH Handler" );
246
250
PhAddListViewColumn (context -> ListViewHandle , 2 , 2 , 2 , LVCFMT_LEFT , 200 , L"Symbol" );
247
251
PhAddListViewColumn (context -> ListViewHandle , 3 , 3 , 3 , LVCFMT_LEFT , 100 , L"Section" );
248
- PhLoadListViewColumnsFromSetting (L"ImageExceptions32ListViewColumns " , context -> ListViewHandle );
252
+ PhLoadListViewColumnsFromSetting (L"ImageExceptionsIa32ListViewColumns " , context -> ListViewHandle );
249
253
}
250
254
else if (imageMachine == IMAGE_FILE_MACHINE_AMD64 )
251
255
{
@@ -255,9 +259,13 @@ INT_PTR CALLBACK PvpPeExceptionDlgProc(
255
259
PhAddListViewColumn (context -> ListViewHandle , 4 , 4 , 4 , LVCFMT_LEFT , 100 , L"Size" );
256
260
PhAddListViewColumn (context -> ListViewHandle , 5 , 5 , 5 , LVCFMT_LEFT , 200 , L"Symbol" );
257
261
PhAddListViewColumn (context -> ListViewHandle , 6 , 6 , 6 , LVCFMT_LEFT , 100 , L"Section" );
258
- PhLoadListViewColumnsFromSetting (L"ImageExceptions64ListViewColumns " , context -> ListViewHandle );
262
+ PhLoadListViewColumnsFromSetting (L"ImageExceptionsAmd64ListViewColumns " , context -> ListViewHandle );
259
263
260
- ExtendedListView_SetCompareFunction (context -> ListViewHandle , 4 , PvpPeExceptionSizeCompareFunction );
264
+ ExtendedListView_SetCompareFunction (context -> ListViewHandle , 4 , PvpPeExceptionSizeCompareFunctionAmd64 );
265
+ }
266
+ else if (imageMachine == IMAGE_FILE_MACHINE_ARM64 )
267
+ {
268
+ /* Todo */
261
269
}
262
270
263
271
PhInitializeLayoutManager (& context -> LayoutManager , hwndDlg );
@@ -279,11 +287,15 @@ INT_PTR CALLBACK PvpPeExceptionDlgProc(
279
287
280
288
if (imageMachine == IMAGE_FILE_MACHINE_I386 )
281
289
{
282
- PhSaveListViewColumnsToSetting (L"ImageExceptions32ListViewColumns " , context -> ListViewHandle );
290
+ PhSaveListViewColumnsToSetting (L"ImageExceptionsIa32ListViewColumns " , context -> ListViewHandle );
283
291
}
284
292
else if (imageMachine == IMAGE_FILE_MACHINE_AMD64 )
285
293
{
286
- PhSaveListViewColumnsToSetting (L"ImageExceptions64ListViewColumns" , context -> ListViewHandle );
294
+ PhSaveListViewColumnsToSetting (L"ImageExceptionsAmd64ListViewColumns" , context -> ListViewHandle );
295
+ }
296
+ else if (imageMachine == IMAGE_FILE_MACHINE_ARM64 )
297
+ {
298
+ /* Todo */
287
299
}
288
300
289
301
PhDeleteLayoutManager (& context -> LayoutManager );
0 commit comments