From 3d150a796ea741b72e09bc371e44a92533c487d6 Mon Sep 17 00:00:00 2001 From: caheckman <48068198+caheckman@users.noreply.github.com> Date: Thu, 17 Sep 2020 14:27:19 -0400 Subject: [PATCH] Update for VS2017 VS2019 --- .../FunctionID/data/common_symbols_win32.txt | 53 +++++++++++++++ .../FunctionID/data/common_symbols_win64.txt | 64 +++++++++++++++++++ .../ghidra_scripts/RemoveFunctions.java | 31 +++++++++ 3 files changed, 148 insertions(+) diff --git a/Ghidra/Features/FunctionID/data/common_symbols_win32.txt b/Ghidra/Features/FunctionID/data/common_symbols_win32.txt index 22ffb4a384..bb0fa6f9d5 100644 --- a/Ghidra/Features/FunctionID/data/common_symbols_win32.txt +++ b/Ghidra/Features/FunctionID/data/common_symbols_win32.txt @@ -1,4 +1,10 @@ ??$AtlMultiply@I@ATL@@YAJPAIII@Z +??$_Allocate@$07U_Default_allocate_traits@std@@$0A@@std@@YAPAXI@Z +??$_Construct_in_place@PADABQAD@std@@YAXAAPADABQAD@Z +??$_Deallocate@$07$0A@@std@@YAXPAXI@Z +??$_Min_value@I@std@@YAABIABI0@Z +??$_Unfancy@D@std@@YAPADPAD@Z +??$addressof@PAD@std@@YAPAPADAAPAD@Z ??0?$CHeapPtr@_WVCCRTAllocator@ATL@@@ATL@@QAE@XZ ??0?$CSimpleStringT@D$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z @@ -7,6 +13,7 @@ ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ??0?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@QAE@PBDABV?$allocator@D@@@Z ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z +??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@QBD@Z ??0AFX_MAINTAIN_STATE2@@QAE@PAVAFX_MODULE_STATE@@@Z ??0COleVariant@@QAE@PBDG@Z ??0CPreserveLastError@ATL@@QAE@XZ @@ -19,32 +26,45 @@ ??0DName@@QAE@ABV0@@Z ??0DName@@QAE@W4DNameStatus@@@Z ??0_LocaleUpdate@@QAE@PAUlocaleinfo_struct@@@Z +??0_LocaleUpdate@@QAE@QAU__crt_locale_pointers@@@Z ??0_Locinfo@@QAE@PBD@Z +??0_Locinfo@std@@QAE@PBD@Z ??0_Lockit@@QAE@XZ ??0_Lockit@std@@QAE@H@Z ??0bad_cast@@QAE@PBD@Z +??0bad_cast@std@@QAE@XZ ??0exception@@QAE@ABQBD@Z ??0exception@@QAE@ABV0@@Z ??0exception@std@@QAE@ABQBD@Z +??0exception@std@@QAE@ABV01@@Z +??0exception@std@@QAE@QBD@Z ??0facet@locale@@IAE@I@Z +??0invalid_argument@std@@QAE@PBD@Z ??0ios@@IAE@XZ +??0locale@std@@QAE@ABV01@@Z ??1?$CHeapPtr@_WVCCRTAllocator@ATL@@@ATL@@QAE@XZ ??1?$CStringT@DV?$StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@QAE@XZ ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ +??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ ??1AFX_MAINTAIN_STATE2@@QAE@XZ ??1CGdiObject@@UAE@XZ ??1COleVariant@@QAE@XZ ??1CPreserveLastError@ATL@@QAE@XZ ??1CString@@QAE@XZ +??1_Locinfo@std@@QAE@XZ ??1_Lockit@std@@QAE@XZ +??1exception@std@@UAE@XZ ??1ios@@UAE@XZ ??1locale@std@@QAE@XZ ??2@YAPAXI@Z +??2@YAPAXIPAX@Z ??2@YAPAXIPBDH@Z ??2CObject@@SGPAXIPBDH@Z +??2_Crt_new_delete@std@@SAPAXI@Z ??3@YAXPAX@Z ??3@YAXPAXI@Z ??3CObject@@SGXPAX@Z +??3_Crt_new_delete@std@@SAXPAX@Z ??4CString@@QAEABV0@ABV0@@Z ??4CString@@QAEABV0@PBD@Z ??4DName@@QAEAAV0@ABV0@@Z @@ -59,10 +79,15 @@ ??BCString@@QBEPBDXZ ??BCTraceCategory@ATL@@QBEKXZ ??Bid@locale@@QAEIXZ +??Bid@locale@std@@QAEIXZ ??RCTraceFileAndLineInfo@ATL@@QBAXHIPBDZZ ??RCTraceFileAndLineInfo@ATL@@QBAXKIPBDZZ ??RCTraceFileAndLineInfo@ATL@@QBAXKIPB_WZZ +??_M@YGXPAXIIP6EX0@Z@Z +??_U@YAPAXI@Z +??_U@YAPAXIABUnothrow_t@std@@@Z ??_V@YAXPAX@Z +??_V@YAXPAXI@Z ?AfxAssertFailedLine@@YAHPBDH@Z ?AfxAssertFailedLine@@YGHPBDH@Z ?AfxAssertValidObject@@YAXPBVCObject@@PBDH@Z @@ -95,6 +120,7 @@ ?Attach@?$CSimpleStringT@D$0A@@ATL@@AAEXPAUCStringData@2@@Z ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ?Attach@CGdiObject@@QAEHPAX@Z +?CheckFailed@__sanitizer@@YAXPBDH0_K1@Z ?CloneData@?$CSimpleStringT@D$0A@@ATL@@CAPAUCStringData@2@PAU32@@Z ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPAUCStringData@2@PAU32@@Z ?CopyChars@?$CSimpleStringT@D$0A@@ATL@@SAXPADIPBDH@Z @@ -161,6 +187,8 @@ ?_AtlGetConversionACP@ATL@@YGIXZ ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ?_AtlGetThreadACPThunk@ATL@@YGIXZ +?_Calculate_growth@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEII@Z +?_ConcRT_CoreAssert@details@Concurrency@@YAXPBD0H@Z ?_Copy@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@AAEPADI@Z ?_Copy@?$basic_string@GU?$char_traits@G@@V?$allocator@G@@@@AAEPAGI@Z ?_Copy_s@?$char_traits@D@std@@SAPADPADIPBDI@Z @@ -168,44 +196,65 @@ ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXI@Z ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@V_STL70@@@std@@IAEXI@Z +?_Facet_Register@std@@YAXPAV_Facet_base@1@@Z ?_Freeze@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@AAEXXZ +?_Get_data@?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QAEAAV?$_String_val@U?$_Simple_types@D@std@@@2@XZ +?_Get_data@?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QBEABV?$_String_val@U?$_Simple_types@D@std@@@2@XZ +?_Getal@?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QAEAAV?$allocator@D@2@XZ +?_Getal@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAEAAV?$allocator@D@2@XZ ?_Getfacet@locale@@QBEPBVfacet@1@IH@Z +?_Getfacet@locale@std@@QBEPBVfacet@12@I@Z ?_Grow@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@AAEHIH@Z ?_Grow@?$basic_string@GU?$char_traits@G@@V?$allocator@G@@@@AAEHIH@Z ?_Incref@facet@locale@@QAEXXZ ?_Incref@facet@locale@std@@QAEXXZ +?_Ios_base_dtor@ios_base@std@@CAXPAV12@@Z ?_Iscloc@locale@@QBEHXZ ?_Myptr@?$_String_val@U?$_Simple_types@D@std@@@std@@QAEPADXZ ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEPADXZ +?_Orphan_all@_Container_base12@std@@QAEXXZ ?_Peek@?$istreambuf_iterator@DU?$char_traits@D@@@@AAEDXZ ?_Peek@?$istreambuf_iterator@GU?$char_traits@G@@@@AAEGXZ ?_Refcnt@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@AAEAAEPBD@Z +?_SpinOnce@?$_SpinWait@$00@details@Concurrency@@QAE_NXZ +?_Throw_bad_cast@std@@YAXXZ ?_Tidy@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@AAEXH@Z ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEX_NI@Z +?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@V_STL70@@@std@@IAEX_NI@Z ?_Tidy@?$basic_string@GU?$char_traits@G@@V?$allocator@G@@@@AAEXH@Z +?_Tidy_deallocate@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAEXXZ +?_Tidy_deallocate@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXXZ ?_Widen@@YADDPAD@Z ?_Widen@@YAGDPAG@Z ?_Xlen@@YAXXZ ?_Xran@@YAXXZ ?__global_delete@@YAXPAXI@Z ?append@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@QAEAAV1@ID@Z +?assign@?$_Narrow_char_traits@DH@std@@SAXAADABD@Z +?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@QBDI@Z +?assign@?$char_traits@D@std@@SAXAADABD@Z ?atlBadThunkCall@ATL@@YAXXZ ?atlBadThunkCall@ATL@@YGXXZ ?c_str@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@QBEPBDXZ +?c_str@locale@std@@QBEPBDXZ +?clear@ios_base@std@@QAEXH_N@Z ?copy@?$char_traits@D@@SAPADPADPBDI@Z +?copy@?$char_traits@D@std@@SAPADQADQBDI@Z ?data@CStringData@ATL@@QAEPAXXZ ?flags@ios_base@@QBEHXZ ?g_pfnGetThreadACP@ATL@@3P6GIXZA ?getloc@ios_base@@QBE?AVlocale@@XZ ?getloc@ios_base@std@@QBE?AVlocale@2@XZ ?isEmpty@DName@@QBEHXZ +?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ ?memcpy_s@Checked@ATL@@YAXPAXIPBXI@Z ?size@?$basic_string@DU?$char_traits@D@@V?$allocator@D@@@@QBEIXZ @_RTC_CheckStackVars@8 @__security_check_cookie@4 @_guard_check_icall@4 _DeleteCriticalSection +_FastWppTraceMessage _GetTheFunctionPtr@8 _HRESULT_FROM_WIN32 _InitializeCriticalSection @@ -215,6 +264,7 @@ _ResolveThunk@20 _SendMessageW _SetLastError@4 _UnregisterClassW +_WmlTrace __CrtDbgReport __CrtDbgReportW __CxxThrowException@8 @@ -235,6 +285,7 @@ __SEH_prolog4 ___doserrno ___guard_check_icall_fptr ___local_stdio_printf_options +___std_exception_copy ___std_exception_destroy __alloca_probe __dosmaperr @@ -273,6 +324,7 @@ __imp__WideCharToMultiByte@32 __imp__lstrlenA@4 __invalid_parameter __invalid_parameter_noinfo +__invalid_parameter_noinfo_noreturn __invoke_watson __isctype __lock @@ -289,6 +341,7 @@ _memmove _memmove_s _memset _sprintf +_sprintf_s _strcpy _strlen _swprintf_s diff --git a/Ghidra/Features/FunctionID/data/common_symbols_win64.txt b/Ghidra/Features/FunctionID/data/common_symbols_win64.txt index 8fb65f2d7e..e0546d5036 100644 --- a/Ghidra/Features/FunctionID/data/common_symbols_win64.txt +++ b/Ghidra/Features/FunctionID/data/common_symbols_win64.txt @@ -1,10 +1,15 @@ +??$?0D@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@D@1@@Z ??$AtlMultiply@_K@ATL@@YAJPEA_K_K1@Z +??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z +??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z +??$construct@PEADAEBQEAD@?$_Default_allocator_traits@V?$allocator@D@std@@@std@@SAXAEAV?$allocator@D@1@QEAPEADAEBQEAD@Z ??0?$CHeapPtr@_WVCCRTAllocator@ATL@@@ATL@@QEAA@XZ ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ??0?$CStringT@DV?$StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@QEAA@XZ ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAA@PEBD@Z +??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAA@QEBD@Z ??0AFX_MAINTAIN_STATE2@@QEAA@PEAVAFX_MODULE_STATE@@@Z ??0CObject@@IEAA@XZ ??0CPoint@@QEAA@HH@Z @@ -17,8 +22,11 @@ ??0_LocaleUpdate@@QEAA@QEAU__crt_locale_pointers@@@Z ??0_Locinfo@std@@QEAA@PEBD@Z ??0_Lockit@std@@QEAA@H@Z +??0_Scoped_lock@_ReentrantPPLLock@details@Concurrency@@QEAA@AEAV123@@Z +??0bad_cast@std@@QEAA@XZ ??0exception@std@@QEAA@AEBQEBD@Z ??0exception@std@@QEAA@AEBV01@@Z +??0invalid_argument@std@@QEAA@PEBD@Z ??1?$CHeapPtr@_WVCCRTAllocator@ATL@@@ATL@@QEAA@XZ ??1?$CStringT@DV?$StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@QEAA@XZ ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ @@ -32,15 +40,18 @@ ??1_LocaleUpdate@@QEAA@XZ ??1_Locinfo@std@@QEAA@XZ ??1_Lockit@std@@QEAA@XZ +??1_Scoped_lock@_ReentrantPPLLock@details@Concurrency@@QEAA@XZ ??1exception@std@@UEAA@XZ ??1locale@std@@QEAA@XZ ??2@YAPEAX_K@Z ??2@YAPEAX_KAEAVHeapManager@@H@Z ??2@YAPEAX_KPEAX@Z ??2CObject@@SAPEAX_KPEBDH@Z +??2_Crt_new_delete@std@@SAPEAX_K@Z ??3@YAXPEAX@Z ??3@YAXPEAX_K@Z ??3CObject@@SAXPEAX@Z +??3_Crt_new_delete@std@@SAXPEAX@Z ??4?$CSimpleStringT@D$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ??6CDumpContext@@QEAAAEAV0@PEBD@Z @@ -53,8 +64,11 @@ ??RCTraceFileAndLineInfo@ATL@@QEBAX_KIPEBDZZ ??RCTraceFileAndLineInfo@ATL@@QEBAX_KIPEB_WZZ ??YDName@@QEAAAEAV0@AEBV0@@Z +??_M@YAXPEAX_K1P6AX0@Z@Z ??_U@YAPEAX_K@Z +??_U@YAPEAX_KAEBUnothrow_t@std@@@Z ??_V@YAXPEAX@Z +??_V@YAXPEAX_K@Z ?AfxAssertFailedLine@@YAHPEBDH@Z ?AfxAssertValidObject@@YAXPEBVCObject@@PEBDH@Z ?AfxCrtErrorCheck@@YAHH@Z @@ -85,6 +99,7 @@ ?Delete@CException@@QEAAXXZ ?Empty@?$CSimpleStringT@D$0A@@ATL@@QEAAXXZ ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ +?FastCurrentContext@SchedulerBase@details@Concurrency@@SAPEAVContextBase@23@XZ ?FillBuffer@CArchive@@QEAAXI@Z ?Flush@CArchive@@QEAAXXZ ?Fork@?$CSimpleStringT@D$0A@@ATL@@AEAAXH@Z @@ -105,6 +120,7 @@ ?GetInstance@CMFCVisualManager@@SAPEAV1@XZ ?GetLength@?$CSimpleStringT@D$0A@@ATL@@QEBAHXZ ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ +?GetLocaleT@_LocaleUpdate@@QEAAPEAU__crt_locale_pointers@@XZ ?GetNext@CObList@@QEAAAEAPEAVCObject@@AEAPEAU__POSITION@@@Z ?GetParent@CWnd@@QEBAPEAV1@XZ ?GetParentFrame@CWnd@@QEBAPEAVCFrameWnd@@XZ @@ -149,39 +165,75 @@ ?_Allocate@std@@YAPEAX_K0_N@Z ?_AtlGetConversionACP@ATL@@YAIXZ ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z +?_ConcRT_CoreAssert@details@Concurrency@@YAXPEBD0H@Z ?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IEAAX_K0@Z +?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@V_STL70@@@std@@IEAAX_K0@Z ?_Deallocate@std@@YAXPEAX_K1@Z ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAX_K@Z +?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z +?_Get_data@?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QEAAAEAV?$_String_val@U?$_Simple_types@D@std@@@2@XZ +?_Get_data@?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QEBAAEBV?$_String_val@U?$_Simple_types@D@std@@@2@XZ +?_Getal@?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QEAAAEAV?$allocator@D@2@XZ +?_Getal@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAAAEAV?$allocator@D@2@XZ ?_Getgloballocale@locale@std@@CAPEAV_Locimp@12@XZ +?_Ios_base_dtor@ios_base@std@@CAXPEAV12@@Z +?_Mbrtowc@@YAHPEA_WPEBD_KPEAHPEBU_Cvtvec@@@Z ?_Myptr@?$_String_val@U?$_Simple_types@D@std@@@std@@QEAAPEADXZ ?_Myptr@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IEAAPEADXZ +?_Orphan_all@_Container_base12@std@@QEAAXXZ +?_SpinOnce@?$_SpinWait@$00@details@Concurrency@@QEAA_NXZ +?_Throw_bad_array_new_length@std@@YAXXZ +?_Throw_bad_cast@std@@YAXXZ ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAX_N_K@Z ?_Xbad_alloc@std@@YAXXZ ?_Xlen@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEBAXXZ +?_Xlen@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@SAXXZ ?_Xlen@_String_base@std@@SAXXZ +?_Xlen_string@std@@YAXXZ ?_Xlength_error@std@@YAXPEBD@Z ?_Xout_of_range@std@@YAXPEBD@Z ?__global_delete@@YAXPEAX_K@Z +?allocate@?$allocator@D@std@@QEAAPEAD_K@Z +?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@QEBD_K@Z +?assign@?$_Narrow_char_traits@DH@std@@SAXAEADAEBD@Z ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@AEBV12@_K1@Z +?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@V_STL70@@@std@@QEAAAEAV12@AEBV12@_K1@Z +?assign@?$char_traits@D@std@@SAXAEADAEBD@Z ?clear@ios_base@std@@QEAAXH_N@Z +?copy@?$_Narrow_char_traits@DH@std@@SAPEADQEADQEBD_K@Z +?copy@?$char_traits@D@std@@SAPEADQEADQEBD_K@Z ?data@CStringData@ATL@@QEAAPEAXXZ +?deallocate@?$allocator@D@std@@QEAAXQEAD_K@Z ?g_pfnGetThreadACP@ATL@@3P6AIXZEA ?getloc@ios_base@std@@QEBA?AVlocale@2@XZ +?max_size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEBA_KXZ AtlTraceVA +FastWppTraceMessage GdiplusShutdown +GetTheFunctionPtr HRESULT_FROM_WIN32 +WmlTrace _CrtDbgReport _CrtDbgReportW _CxxThrowException +_Getctype _Getcvt _Init_thread_footer _Init_thread_header +_Mbrtowc _RTC_CheckStackVars +_Wcrtomb +__acrt_getptd +__acrt_update_locale_info +__acrt_update_multibyte_info __guard_check_icall_fptr +__guard_dispatch_icall_fptr __imp_ActivateActCtx +__imp_CloseHandle __imp_CoTaskMemFree __imp_DeleteDC __imp_EnterCriticalSection +__imp_ExFreePoolWithTag __imp_FindResourceA __imp_FindResourceW __imp_GetClientRect @@ -207,6 +259,7 @@ __imp_SetLastError __imp_SetRectEmpty __imp_SizeofResource __imp_WideCharToMultiByte +__imp_free __local_stdio_printf_options __security_check_cookie __std_exception_copy @@ -216,6 +269,7 @@ __stdio_common_vsprintf_s __stdio_common_vswprintf_s __updatetlocinfo __updatetmbcinfo +__xmlRaiseError _errno _free_base _free_dbg @@ -223,13 +277,16 @@ _getptd _guard_check_icall _invalid_parameter _invalid_parameter_noinfo +_invalid_parameter_noinfo_noreturn _invoke_watson _lock +_malloc_dbg _unlock _unlock_file _vswprintf_s_l atexit free +log malloc memcmp memcpy @@ -237,11 +294,18 @@ memcpy_s memmove memmove_s memset +sprintf_s +sqrt strcpy_s strlen strnlen swprintf_s +terminate wcscpy_s wcslen wcsnlen wmemcpy_s +xmlFree +xmlMalloc +xmlStrEqual +xmlStrdup diff --git a/Ghidra/Features/FunctionID/ghidra_scripts/RemoveFunctions.java b/Ghidra/Features/FunctionID/ghidra_scripts/RemoveFunctions.java index e2d2bd9e83..69ca9d9c08 100644 --- a/Ghidra/Features/FunctionID/ghidra_scripts/RemoveFunctions.java +++ b/Ghidra/Features/FunctionID/ghidra_scripts/RemoveFunctions.java @@ -163,6 +163,7 @@ public class RemoveFunctions extends GhidraScript { REMOVE_HASHES.add(fh(8, 0x3d7242fc6eb079a7L)); // ??1@@QAE@XZ REMOVE_HASHES.add(fh(7, 0x690dec263cb912aaL)); // ?OnDrawTasksGroupAreaBorder@CMFCVisualManagerOfficeXP@@MAEXPAVCDC@@VCRect@@HH@Z REMOVE_HASHES.add(fh(7, 0x6b745608ae7e77fbL)); // ??1?$CArray@... destructors based on CArray + REMOVE_HASHES.add(fh(3, 0xfcc148b0692f6a69L)); // thunk FORCE_SPECIFIC.add(fh(2, 0x5ef2f47ee7151243L)); // __SEH_epilog4_GS, __EH_epilog3_GS, and __EH_epilog3_catch_GS FORCE_RELATION.add(fh(2, 0x5ef2f47ee7151243L)); @@ -304,6 +305,11 @@ public class RemoveFunctions extends GhidraScript { REMOVE_HASHES.add(fh(13, 0xac7036a5a6a27973L)); // destructor REMOVE_HASHES.add(fh(6, 0x561ffc1c6cdb8a09L)); // Mysize REMOVE_HASHES.add(fh(8, 0x6838c16db21b0fcdL)); // ??1_AsyncTaskCollection@details@Concurrency@@UEAA@XZ + REMOVE_HASHES.add(fh(6, 0x69e6a6ae661a1d17L)); // Generic size() + REMOVE_HASHES.add(fh(4, 0xd4c0bfb00c09e33dL)); // Access field + REMOVE_HASHES.add(fh(4, 0xdcfb1bce9467ae7fL)); // Save registers + REMOVE_HASHES.add(fh(6, 0xef1dcb79b04b45a7L)); // 2 calls + REMOVE_HASHES.add(fh(10, 0xa234bc1264c50f3eL)); // vector destructor FORCE_RELATION.add(fh(6, 0x508d431b82512d5bL)); // Generic wrapper, one obvious child FORCE_RELATION.add(fh(19, 0x1e68c4d4d83e7585L)); // A little too generic stream thing, force parent @@ -321,6 +327,23 @@ public class RemoveFunctions extends GhidraScript { FORCE_RELATION.add(fh(15, 0x51980975b49f9f73L)); // ??1SchedulingNode@details@Concurrency@@QEAA@XZ FORCE_RELATION.add(fh(18, 0xcf323a39c909432bL)); // ?_Future_error_map@std@@YAPEBDH@Z FORCE_RELATION.add(fh(14, 0x41110421841870bdL)); // iterator::operator= + FORCE_RELATION.add(fh(15, 0x4750629cadd994f2L)); // Uninitialized_move + FORCE_RELATION.add(fh(17, 0x4b561bb90906f120L)); // pair constructor + FORCE_RELATION.add(fh(12, 0x5bd6de97fe12c3deL)); // ??0_WDI_RECEIVE_COALESCING_CAPABILITIES@@QEAA@XZ + FORCE_RELATION.add(fh(15, 0x708244492155654L)); // _Ucopy + FORCE_RELATION.add(fh(11, 0x809e950df92527a5L)); // Emplace + FORCE_RELATION.add(fh(17, 0xb33a994d051dd9a0L)); // ??_G_AsyncTaskCollection@details@Concurrency@@UEAAPEAXI@Z + FORCE_RELATION.add(fh(14, 0xee6fd3046cf7ee06L)); // ??0_WDI_CHECKSUM_OFFLOAD_CAPABILITIES_CONTAINER@@QEAA@XZ + FORCE_RELATION.add(fh(16, 0xfb2a575f03442e59L)); // ?Equals@Guid@Platform@@QEAA_NAEBU_GUID@@@Z + FORCE_RELATION.add(fh(17, 0x2d294fe5f48b3f3fL)); // Find_unchecked + FORCE_RELATION.add(fh(13, 0x64bd12c74e7fa730L)); // boolean check on field + FORCE_RELATION.add(fh(17, 0xa9e139912ed9207aL)); // Generic initializer + FORCE_RELATION.add(fh(13, 0xe624a060e19a0c64L)); // copy + FORCE_RELATION.add(fh(35, 0x4423b59693bfd81L)); // Generic destructor + FORCE_RELATION.add(fh(19, 0x637ebec60980e058L)); // operator= + FORCE_RELATION.add(fh(25, 0xa6ea183912b2677dL)); // Generic copy + FORCE_RELATION.add(fh(11, 0xb7e0a1d58b88d05cL)); // Generic constructor + FORCE_RELATION.add(fh(12, 0xceece41b9d9525cbL)); // Generic constructor FORCE_SPECIFIC.add(fh(26, 0xf0f7f2439683bfeaL)); // Variants with specialized constants FORCE_SPECIFIC.add(fh(17, 0xf468f6c40495d8caL)); // Dispatcher form with lots of specific constants @@ -330,6 +353,8 @@ public class RemoveFunctions extends GhidraScript { FORCE_SPECIFIC.add(fh(15, 0x4389c3585fa0606aL)); // has_flag FORCE_SPECIFIC.add(fh(15, 0xcc72f3219032eacfL)); // ?__acrt_stdio_parse_mode_D@@YA_NAEAU__acrt_stdio_stream_mode@@@Z FORCE_SPECIFIC.add(fh(36, 0xa07803de9bbbebbbL)); // vector deleting destructor + FORCE_SPECIFIC.add(fh(20, 0x4af9f6ef9467bbcaL)); // ??_GFileLCRec@@QEAAPEAXI@Z + FORCE_SPECIFIC.add(fh(11, 0x17c3832d5e7abe3L)); // isnan, isinf FORCE_SPECIFIC.add(fh(12, 0x1997c3c57f1359d6L)); // ?dtor$9@?0??AddMenuCommands@CMFCToolBarsCustomizeDialog@@QEAAXPEBVCMenu@@HPEB_W1@Z@4HA FORCE_RELATION.add(fh(12, 0x1997c3c57f1359d6L)); @@ -371,6 +396,12 @@ public class RemoveFunctions extends GhidraScript { FORCE_RELATION.add(fh(12, 0x892067d7b5484452L)); FORCE_SPECIFIC.add(fh(12, 0x2155a28b83bb2704L)); // destructor FORCE_RELATION.add(fh(12, 0x2155a28b83bb2704L)); + FORCE_SPECIFIC.add(fh(14, 0x205bb2f03257b770L)); // destructor + FORCE_RELATION.add(fh(14, 0x205bb2f03257b770L)); + FORCE_SPECIFIC.add(fh(12, 0xbdcafd32892d723L)); // ??1_Locimp@locale@std@@MEAA@XZ + FORCE_RELATION.add(fh(12, 0xbdcafd32892d723L)); + FORCE_SPECIFIC.add(fh(12, 0xcd7e1f68717240f8L)); // destructor + FORCE_RELATION.add(fh(12, 0xcd7e1f68717240f8L)); FORCE_SPECIFIC.add(fh(10, 0x5c4a91ec77ecc3d2L)); // strnlen AUTO_PASS.add(fh(10, 0x5c4a91ec77ecc3d2L));