; Listing generated by Microsoft (R) Optimizing Compiler Version 19.29.30038.1 include listing.inc INCLUDELIB MSVCRTD INCLUDELIB OLDNAMES PUBLIC ?TestBuffer@@3PAEA ; TestBuffer PUBLIC ?TestBufferSize@@3KA ; TestBufferSize PUBLIC ?meme1@@3PAEA ; meme1 PUBLIC ?meme2@@3PAEA ; meme2 msvcjmc SEGMENT __B2D2BA86_ctype@h DB 01H __79C7FC57_basetsd@h DB 01H __1FEB9909_corecrt_memcpy_s@h DB 01H __A751F051_corecrt_memory@h DB 01H __9200769A_corecrt_wstring@h DB 01H __32E5F013_string@h DB 01H __D545DD43_guiddef@h DB 01H __D5DDFBF3_winnt@h DB 01H __439612F0_processthreadsapi@h DB 01H __5733279A_memoryapi@h DB 01H __D4435474_winerror@h DB 01H __B3ED30D4_winbase@h DB 01H __DB057BA3_winuser@h DB 01H __A7113148_winioctl@h DB 01H __B49664B7_stdlib@h DB 01H __EC5BC72C_propidl@h DB 01H __6DA674A0_oleauto@h DB 01H __A118E6DC_stralign@h DB 01H __A2143F22_corecrt_stdio_config@h DB 01H __829E1958_corecrt_wstdio@h DB 01H __6DFAE8B8_stdio@h DB 01H __02E23235_vcruntime_new@h DB 01H __C6E16F6F_corecrt_wconio@h DB 01H __6D390390_corecrt_wio@h DB 01H __1157D6BA_corecrt_wtime@h DB 01H __1DC1E279_stat@h DB 01H __93DC0B45_wchar@h DB 01H __256B8DBF_cstddef DB 01H __741AE07E_corecrt_math@h DB 01H __80A05712_cstdlib DB 01H __44860E64_limits DB 01H __D1154D4E_type_traits DB 01H __20BB4341_malloc@h DB 01H __BDCC0984_vcruntime_exception@h DB 01H __89F7010A_exception DB 01H __7CE971A6_xutility DB 01H __DD38B15A_xmemory DB 01H __CB45C7EF_tuple DB 01H __3033C7F7_xpolymorphic_allocator@h DB 01H __A9EB37C6_xstring DB 01H __8CFB8476_string DB 01H __6D66DEAE_cmath DB 01H __00B93B57_stdexcept DB 01H __79ECA8A5_xcall_once@h DB 01H __A0B61CF9_time@h DB 01H __8476F639_xthreads@h DB 01H __2FB352A6_atomic DB 01H __C6B1BA85_system_error DB 01H __65F43743_vcruntime_typeinfo@h DB 01H __0C3682BF_typeinfo DB 01H __F82802EA_memory DB 01H __D46D55E5_xfacet DB 01H __13BF6177_xlocinfo DB 01H __76D543F7_xlocale DB 01H __2A5A1664_xiosbase DB 01H __E85225E0_xlocnum DB 01H __FD1AE8DD_ios DB 01H __C33030D8_xlocmon DB 01H __B7A2C865_xloctime DB 01H __8660297E_xed-util@h DB 01H __F79B480A_xed-iform-map@h DB 01H __F5B5218E_xed-inst@h DB 01H __68D74A7D_xed-flags@h DB 01H __A4B65E9F_xed-operand-accessors@h DB 01H __E8B35E51_xed-state@h DB 01H __1E3F2A25_xed-encode@h DB 01H __1C89993E_xed-encoder-hl@h DB 01H __0AA8C18B_xed-decoded-inst-api@h DB 01H __0A045E7B_NativeCode@h DB 01H __386EB99F_Main@cpp DB 01H __092B7E84_vector DB 01H __0615AC09_istream DB 01H __65C59933_ostream DB 01H __021983EB_streambuf DB 01H __6D45C6E6_iterator DB 01H __886FDBE2_iosfwd DB 01H __B7ADD299_utility DB 01H __40B2458B_xstddef DB 01H __83FB8DDC_xatomic@h DB 01H msvcjmc ENDS _DATA SEGMENT ?TestBuffer@@3PAEA DB 048H ; TestBuffer DB 033H DB 0c0H DB 048H DB 033H DB 0c0H DB 0ebH DB 0eH DB 048H DB 033H DB 0c0H DB 048H DB 033H DB 0c0H DB 07eH DB 06H DB 048H DB 033H DB 0c0H DB 048H DB 033H DB 0c0H DB 048H DB 033H DB 0c0H DB 048H DB 033H DB 0c0H DB 0ebH DB 0f8H DB 050H DB 048H DB 0b8H DB 0ffH DB 0ffH DB 0ffH DB 0ffH DB 0ffH DB 0ffH DB 0ffH DB 0fH DB 048H DB 087H DB 04H DB 024H DB 0c3H ?meme2@@3PAEA DB 0c3H ; meme2 ORG $+1 ?TestBufferSize@@3KA DD 02eH ; TestBufferSize ?meme1@@3PAEA DB 0b8H ; meme1 DB 0deH DB 0c0H DB 0acH DB 0eH _DATA ENDS PUBLIC ?__empty_global_delete@@YAXPEAX@Z ; __empty_global_delete PUBLIC ?__empty_global_delete@@YAXPEAX_K@Z ; __empty_global_delete PUBLIC ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ; __empty_global_delete PUBLIC ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ; __empty_global_delete PUBLIC __local_stdio_printf_options PUBLIC _vfprintf_l PUBLIC printf PUBLIC wmemcpy PUBLIC ?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z ; std::_Adjust_manually_vector_aligned PUBLIC ?_Orphan_all@_Container_base12@std@@QEAAXXZ ; std::_Container_base12::_Orphan_all PUBLIC ?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ ; std::_Container_base12::_Orphan_all_unlocked PUBLIC ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ ; std::_Container_base12::_Orphan_all_locked PUBLIC ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ; std::_Maklocstr PUBLIC ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs PUBLIC ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ; std::_Maklocstr PUBLIC ??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ; std::time_get > >::_Getvals PUBLIC ??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ; std::time_get > >::_Getvals PUBLIC ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ; std::allocator::deallocate PUBLIC ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ ; std::vector >::~vector > PUBLIC ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy PUBLIC ?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ ; std::vector >::_Tidy PUBLIC ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal PUBLIC ?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first PUBLIC ??1_NATIVE_CODE_BLOCK@@QEAA@XZ ; _NATIVE_CODE_BLOCK::~_NATIVE_CODE_BLOCK PUBLIC ?MakeExecutableBuffer@@YAPEAXPEAXK@Z ; MakeExecutableBuffer PUBLIC main PUBLIC ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z ; std::allocator::allocator PUBLIC ??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z ; std::exchange PUBLIC ??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z ; std::_Delete_plain_internal > PUBLIC ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z ; std::_Destroy_range > PUBLIC ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z ; std::_Deallocate<16,0> PUBLIC ??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z ; std::_Deallocate_plain > PUBLIC ?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z ; std::_Default_allocator_traits >::deallocate PUBLIC __JustMyCode_Default PUBLIC ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage PUBLIC ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA ; `std::_Adjust_manually_vector_aligned'::`1'::__LINE__Var PUBLIC ??_C@_0BB@FCMFBGOM@invalid?5argument@ ; `string' PUBLIC ??_C@_02DKCKIIND@?$CFs@ ; `string' PUBLIC ??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ ; `string' PUBLIC ??_C@_1NA@FOAKNOEL@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ ; `string' PUBLIC ??_C@_1EK@NIFDJFDG@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAd?$AAj?$AAu?$AAs?$AAt?$AA_?$AAm?$AAa@ ; `string' PUBLIC ??_C@_1CG@JNLFBNGN@?$AA?$CC?$AAi?$AAn?$AAv?$AAa?$AAl?$AAi?$AAd?$AA?5?$AAa?$AAr?$AAg?$AAu?$AAm?$AAe@ ; `string' PUBLIC ??_C@_0GI@LEPEPCM@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ ; `string' PUBLIC ?__LINE__Var@?0??_Maklocwcs@std@@YAPEA_WPEB_W@Z@4JA ; `std::_Maklocwcs'::`1'::__LINE__Var PUBLIC ??_C@_0GI@IIACENIN@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ ; `string' PUBLIC ??_C@_0M@INKCCKOG@?6?6Original?6@ ; `string' PUBLIC ??_C@_06CHBCCLOP@?6?6New?6@ ; `string' PUBLIC ??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ ; `string' PUBLIC ??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ ; `string' EXTRN ??3@YAXPEAX_K@Z:PROC ; operator delete EXTRN __imp__invalid_parameter:PROC EXTRN memcpy:PROC EXTRN __imp_wcslen:PROC EXTRN strlen:PROC EXTRN __imp_VirtualAlloc:PROC EXTRN __imp_srand:PROC EXTRN __imp___acrt_iob_func:PROC EXTRN __imp___stdio_common_vfprintf:PROC EXTRN __imp__calloc_dbg:PROC EXTRN __imp__CrtDbgReport:PROC EXTRN __imp_??0_Lockit@std@@QEAA@H@Z:PROC EXTRN __imp_??1_Lockit@std@@QEAA@XZ:PROC EXTRN ?_Xbad_alloc@std@@YAXXZ:PROC ; std::_Xbad_alloc EXTRN __imp__time64:PROC EXTRN _Mbrtowc:PROC EXTRN __imp_?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ:PROC EXTRN __imp_?_Getdays@_Locinfo@std@@QEBAPEBDXZ:PROC EXTRN __imp_?_Getmonths@_Locinfo@std@@QEBAPEBDXZ:PROC EXTRN __imp_?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ:PROC EXTRN __imp_?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ:PROC EXTRN xed_tables_init:PROC EXTRN ??0_NATIVE_CODE_BLOCK@@QEAA@XZ:PROC ; _NATIVE_CODE_BLOCK::_NATIVE_CODE_BLOCK EXTRN ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z:PROC ; NcGenUnusedLabelId EXTRN ?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z:PROC ; NcDisassemble EXTRN ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z:PROC ; NcDebugPrint EXTRN ?ObfCreateOpaqueBranches@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@1@Z:PROC ; ObfCreateOpaqueBranches EXTRN ?ObfCombineOpaqueBranches@@YAHPEAU_NATIVE_CODE_BLOCK@@0KK@Z:PROC ; ObfCombineOpaqueBranches EXTRN ?ObfInsertOpaqueBranchBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z:PROC ; ObfInsertOpaqueBranchBlock EXTRN _RTC_CheckStackVars:PROC EXTRN _RTC_InitBase:PROC EXTRN _RTC_Shutdown:PROC EXTRN __CheckForDebuggerJustMyCode:PROC EXTRN __CxxFrameHandler4:PROC EXTRN __GSHandlerCheck:PROC EXTRN __GSHandlerCheck_EH4:PROC EXTRN __security_check_cookie:PROC EXTRN __security_cookie:QWORD ; COMDAT ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA _BSS SEGMENT ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA DQ 01H DUP (?) ; `__local_stdio_printf_options'::`2'::_OptionsStorage _BSS ENDS ; COMDAT pdata pdata SEGMENT $pdata$?__empty_global_delete@@YAXPEAX@Z DD imagerel $LN3 DD imagerel $LN3+41 DD imagerel $unwind$?__empty_global_delete@@YAXPEAX@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?__empty_global_delete@@YAXPEAX_K@Z DD imagerel $LN3 DD imagerel $LN3+46 DD imagerel $unwind$?__empty_global_delete@@YAXPEAX_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z DD imagerel $LN3 DD imagerel $LN3+46 DD imagerel $unwind$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z DD imagerel $LN3 DD imagerel $LN3+51 DD imagerel $unwind$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$__local_stdio_printf_options DD imagerel $LN3 DD imagerel $LN3+44 DD imagerel $unwind$__local_stdio_printf_options pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_vfprintf_l DD imagerel $LN3 DD imagerel $LN3+103 DD imagerel $unwind$_vfprintf_l pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$printf DD imagerel $LN3 DD imagerel $LN3+216 DD imagerel $unwind$printf pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$wmemcpy DD imagerel $LN3 DD imagerel $LN3+83 DD imagerel $unwind$wmemcpy pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z DD imagerel $LN21 DD imagerel $LN21+453 DD imagerel $unwind$?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_all@_Container_base12@std@@QEAAXXZ DD imagerel $LN4 DD imagerel $LN4+66 DD imagerel $unwind$?_Orphan_all@_Container_base12@std@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ DD imagerel $LN6 DD imagerel $LN6+123 DD imagerel $unwind$?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ DD imagerel $LN3 DD imagerel $LN3+151 DD imagerel $unwind$?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$time DD imagerel time DD imagerel time+54 DD imagerel $unwind$time pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z DD imagerel $LN12 DD imagerel $LN12+586 DD imagerel $unwind$??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Maklocwcs@std@@YAPEA_WPEB_W@Z DD imagerel $LN4 DD imagerel $LN4+142 DD imagerel $unwind$?_Maklocwcs@std@@YAPEA_WPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z DD imagerel $LN7 DD imagerel $LN7+200 DD imagerel $unwind$??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z DD imagerel $LN5 DD imagerel $LN5+356 DD imagerel $unwind$??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z DD imagerel $LN5 DD imagerel $LN5+356 DD imagerel $unwind$??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z DD imagerel $LN3 DD imagerel $LN3+77 DD imagerel $unwind$?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+203 DD imagerel $unwind$??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z DD imagerel $LN3 DD imagerel $LN3+85 DD imagerel $unwind$?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ DD imagerel $LN4 DD imagerel $LN4+257 DD imagerel $unwind$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ DD imagerel $LN3 DD imagerel $LN3+56 DD imagerel $unwind$?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1_NATIVE_CODE_BLOCK@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??1_NATIVE_CODE_BLOCK@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?MakeExecutableBuffer@@YAPEAXPEAXK@Z DD imagerel $LN4 DD imagerel $LN4+113 DD imagerel $unwind$?MakeExecutableBuffer@@YAPEAXPEAXK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$main DD imagerel $LN6 DD imagerel $LN6+390 DD imagerel $unwind$main pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$main$dtor$0 DD imagerel main$dtor$0 DD imagerel main$dtor$0+36 DD imagerel $unwind$main$dtor$0 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$main$dtor$1 DD imagerel main$dtor$1 DD imagerel main$dtor$1+36 DD imagerel $unwind$main$dtor$1 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$main$dtor$2 DD imagerel main$dtor$2 DD imagerel main$dtor$2+39 DD imagerel $unwind$main$dtor$2 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z DD imagerel $LN3 DD imagerel $LN3+84 DD imagerel $unwind$??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z DD imagerel $LN3 DD imagerel $LN3+65 DD imagerel $unwind$??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z DD imagerel $LN3 DD imagerel $LN3+51 DD imagerel $unwind$??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z DD imagerel $LN4 DD imagerel $LN4+98 DD imagerel $unwind$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z DD imagerel $LN3 DD imagerel $LN3+72 DD imagerel $unwind$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z DD imagerel $LN3 DD imagerel $LN3+74 DD imagerel $unwind$?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z pdata ENDS ; COMDAT rtc$TMZ rtc$TMZ SEGMENT _RTC_Shutdown.rtc$TMZ DQ FLAT:_RTC_Shutdown rtc$TMZ ENDS ; COMDAT rtc$IMZ rtc$IMZ SEGMENT _RTC_InitBase.rtc$IMZ DQ FLAT:_RTC_InitBase rtc$IMZ ENDS ; COMDAT ??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ CONST SEGMENT ??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ DB ':' DB 00H, 'A', 00H, 'M', 00H, ':', 00H, 'a', 00H, 'm', 00H, ':', 00H DB 'P', 00H, 'M', 00H, ':', 00H, 'p', 00H, 'm', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ CONST SEGMENT ??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ DB ':AM:am:PM:pm', 00H ; `string' CONST ENDS ; COMDAT ??_C@_06CHBCCLOP@?6?6New?6@ CONST SEGMENT ??_C@_06CHBCCLOP@?6?6New?6@ DB 0aH, 0aH, 'New', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0M@INKCCKOG@?6?6Original?6@ CONST SEGMENT ??_C@_0M@INKCCKOG@?6?6Original?6@ DB 0aH, 0aH, 'Original', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0GI@IIACENIN@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ CONST SEGMENT ??_C@_0GI@IIACENIN@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ DB 'C:\Pro' DB 'gram Files (x86)\Microsoft Visual Studio\2019\Community\VC\To' DB 'ols\MSVC\14.29.30037\include\xlocnum', 00H ; `string' CONST ENDS ; COMDAT ?__LINE__Var@?0??_Maklocwcs@std@@YAPEA_WPEB_W@Z@4JA _DATA SEGMENT ?__LINE__Var@?0??_Maklocwcs@std@@YAPEA_WPEB_W@Z@4JA DD 05aH ; `std::_Maklocwcs'::`1'::__LINE__Var _DATA ENDS ; COMDAT ??_C@_0GI@LEPEPCM@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ CONST SEGMENT ??_C@_0GI@LEPEPCM@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ DB 'C:\Prog' DB 'ram Files (x86)\Microsoft Visual Studio\2019\Community\VC\Too' DB 'ls\MSVC\14.29.30037\include\xlocale', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1CG@JNLFBNGN@?$AA?$CC?$AAi?$AAn?$AAv?$AAa?$AAl?$AAi?$AAd?$AA?5?$AAa?$AAr?$AAg?$AAu?$AAm?$AAe@ CONST SEGMENT ??_C@_1CG@JNLFBNGN@?$AA?$CC?$AAi?$AAn?$AAv?$AAa?$AAl?$AAi?$AAd?$AA?5?$AAa?$AAr?$AAg?$AAu?$AAm?$AAe@ DB '"' DB 00H, 'i', 00H, 'n', 00H, 'v', 00H, 'a', 00H, 'l', 00H, 'i', 00H DB 'd', 00H, ' ', 00H, 'a', 00H, 'r', 00H, 'g', 00H, 'u', 00H, 'm' DB 00H, 'e', 00H, 'n', 00H, 't', 00H, '"', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1EK@NIFDJFDG@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAd?$AAj?$AAu?$AAs?$AAt?$AA_?$AAm?$AAa@ CONST SEGMENT ??_C@_1EK@NIFDJFDG@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAd?$AAj?$AAu?$AAs?$AAt?$AA_?$AAm?$AAa@ DB 's' DB 00H, 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_', 00H, 'A', 00H DB 'd', 00H, 'j', 00H, 'u', 00H, 's', 00H, 't', 00H, '_', 00H, 'm' DB 00H, 'a', 00H, 'n', 00H, 'u', 00H, 'a', 00H, 'l', 00H, 'l', 00H DB 'y', 00H, '_', 00H, 'v', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'o' DB 00H, 'r', 00H, '_', 00H, 'a', 00H, 'l', 00H, 'i', 00H, 'g', 00H DB 'n', 00H, 'e', 00H, 'd', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1NA@FOAKNOEL@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ CONST SEGMENT ??_C@_1NA@FOAKNOEL@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ DB 'C' DB 00H, ':', 00H, '\', 00H, 'P', 00H, 'r', 00H, 'o', 00H, 'g', 00H DB 'r', 00H, 'a', 00H, 'm', 00H, ' ', 00H, 'F', 00H, 'i', 00H, 'l' DB 00H, 'e', 00H, 's', 00H, ' ', 00H, '(', 00H, 'x', 00H, '8', 00H DB '6', 00H, ')', 00H, '\', 00H, 'M', 00H, 'i', 00H, 'c', 00H, 'r' DB 00H, 'o', 00H, 's', 00H, 'o', 00H, 'f', 00H, 't', 00H, ' ', 00H DB 'V', 00H, 'i', 00H, 's', 00H, 'u', 00H, 'a', 00H, 'l', 00H, ' ' DB 00H, 'S', 00H, 't', 00H, 'u', 00H, 'd', 00H, 'i', 00H, 'o', 00H DB '\', 00H, '2', 00H, '0', 00H, '1', 00H, '9', 00H, '\', 00H, 'C' DB 00H, 'o', 00H, 'm', 00H, 'm', 00H, 'u', 00H, 'n', 00H, 'i', 00H DB 't', 00H, 'y', 00H, '\', 00H, 'V', 00H, 'C', 00H, '\', 00H, 'T' DB 00H, 'o', 00H, 'o', 00H, 'l', 00H, 's', 00H, '\', 00H, 'M', 00H DB 'S', 00H, 'V', 00H, 'C', 00H, '\', 00H, '1', 00H, '4', 00H, '.' DB 00H, '2', 00H, '9', 00H, '.', 00H, '3', 00H, '0', 00H, '0', 00H DB '3', 00H, '7', 00H, '\', 00H, 'i', 00H, 'n', 00H, 'c', 00H, 'l' DB 00H, 'u', 00H, 'd', 00H, 'e', 00H, '\', 00H, 'x', 00H, 'm', 00H DB 'e', 00H, 'm', 00H, 'o', 00H, 'r', 00H, 'y', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ CONST SEGMENT ??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ DB 'C:\Pro' DB 'gram Files (x86)\Microsoft Visual Studio\2019\Community\VC\To' DB 'ols\MSVC\14.29.30037\include\xmemory', 00H ; `string' CONST ENDS ; COMDAT ??_C@_02DKCKIIND@?$CFs@ CONST SEGMENT ??_C@_02DKCKIIND@?$CFs@ DB '%s', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BB@FCMFBGOM@invalid?5argument@ CONST SEGMENT ??_C@_0BB@FCMFBGOM@invalid?5argument@ DB 'invalid argument', 00H ; `string' CONST ENDS ; COMDAT ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA _DATA SEGMENT ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA DD 099H ; `std::_Adjust_manually_vector_aligned'::`1'::__LINE__Var _DATA ENDS ; COMDAT xdata xdata SEGMENT $unwind$?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z DB 060H DD imagerel $ip2state$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z DD 025051819H DD 01132318H DD 0700c001dH DD 0500bH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z DB 060H DD imagerel $ip2state$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z DD 025051819H DD 01132318H DD 0700c001dH DD 0500bH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 02aH DW 016dH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$main$dtor$2 DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$main$dtor$1 DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$main$dtor$0 DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$main DB 0eH DB 00H DB 00H DB 0b6H DB 02H DB 'B' DB 04H DB 01aH DB 06H DB 0b9H, 02H DB 04H DB 01aH DB 02H DB 014H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$main DB 06H DB 0eH DD imagerel main$dtor$0 DB 02eH DD imagerel main$dtor$1 DB 02eH DD imagerel main$dtor$2 xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$main DB 028H DD imagerel $stateUnwindMap$main DD imagerel $ip2state$main xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$main DD 025053119H DD 010a230fH DD 07003003dH DD 05002H DD imagerel __GSHandlerCheck_EH4 DD imagerel $cppxdata$main DD 01d2H xdata ENDS ; COMDAT CONST CONST SEGMENT main$rtcName$0 DB 042H DB 06cH DB 06fH DB 063H DB 06bH DB 00H ORG $+2 main$rtcName$1 DB 04eH DB 06fH DB 074H DB 054H DB 061H DB 06bH DB 065H DB 06eH DB 00H ORG $+3 main$rtcName$2 DB 054H DB 061H DB 06bH DB 065H DB 06eH DB 00H ORG $+6 main$rtcVarDesc DD 0c8H DD 030H DQ FLAT:main$rtcName$2 DD 078H DD 030H DQ FLAT:main$rtcName$1 DD 028H DD 030H DQ FLAT:main$rtcName$0 ORG $+144 main$rtcFrameData DD 03H DD 00H DQ FLAT:main$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?MakeExecutableBuffer@@YAPEAXPEAXK@Z DD 025051701H DD 01122317H DD 0700b0021H DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1_NATIVE_CODE_BLOCK@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ DB 060H DD imagerel $ip2state$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ DD 025051319H DD 010e2313H DD 07007002fH DD 05006H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 036H DB 0b2H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ DD 025053d19H DD 010e2313H DD 070070029H DD 05006H DD imagerel __GSHandlerCheck DD 0138H xdata ENDS ; COMDAT CONST CONST SEGMENT ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ$rtcName$0 DB 024H ; std::vector >::~vector > DB 053H DB 031H DB 00H ORG $+12 ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ$rtcVarDesc DD 044H ; std::vector >::~vector > DD 01H DQ FLAT:??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ$rtcName$0 ORG $+48 ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ$rtcFrameData DD 01H ; std::vector >::~vector > DD 00H DQ FLAT:??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z DD 025061e01H DD 0119231eH DD 070120026H DD 050106011H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z DD 025061e01H DD 0119231eH DD 070120026H DD 050106011H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z DD 035051d01H DD 0118331dH DD 07011002bH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Maklocwcs@std@@YAPEA_WPEB_W@Z DD 035051301H DD 010e3313H DD 070070027H DD 05006H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 040H DW 0231H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z DD 035054719H DD 0118331dH DD 070110047H DD 05010H DD imagerel __GSHandlerCheck DD 0228H xdata ENDS ; COMDAT CONST CONST SEGMENT ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$0 DB 05fH ; std::_Maklocstr DB 057H DB 063H DB 00H ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$1 DB 05fH ; std::_Maklocstr DB 04dH DB 062H DB 073H DB 074H DB 031H DB 00H ORG $+1 ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$2 DB 05fH ; std::_Maklocstr DB 04dH DB 062H DB 073H DB 074H DB 032H DB 00H ORG $+13 ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcVarDesc DD 0158H ; std::_Maklocstr DD 08H DQ FLAT:??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$2 DD 0f8H DD 08H DQ FLAT:??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$1 DD 0d4H DD 02H DQ FLAT:??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$0 ORG $+144 ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcFrameData DD 03H ; std::_Maklocstr DD 00H DQ FLAT:??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$time DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 036H DB 07eH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ DD 025053d19H DD 010e2313H DD 070070021H DD 05006H DD imagerel __GSHandlerCheck DD 0f8H xdata ENDS ; COMDAT CONST CONST SEGMENT ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ$rtcName$0 DB 05fH ; std::_Container_base12::_Orphan_all_locked DB 04cH DB 06fH DB 063H DB 06bH DB 00H ORG $+10 ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ$rtcVarDesc DD 024H ; std::_Container_base12::_Orphan_all_locked DD 04H DQ FLAT:?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ$rtcName$0 ORG $+48 ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ$rtcFrameData DD 01H ; std::_Container_base12::_Orphan_all_locked DD 00H DQ FLAT:?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ DD 025051301H DD 010e2313H DD 070070021H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_all@_Container_base12@std@@QEAAXXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z DD 035051801H DD 01133318H DD 0700c002fH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$wmemcpy DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 045H DB 0bfH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$printf DD 025054c19H DD 011d2322H DD 07016002bH DD 05015H DD imagerel __GSHandlerCheck DD 0148H xdata ENDS ; COMDAT CONST CONST SEGMENT printf$rtcName$0 DB 05fH DB 041H DB 072H DB 067H DB 04cH DB 069H DB 073H DB 074H DB 00H ORG $+7 printf$rtcVarDesc DD 048H DD 08H DQ FLAT:printf$rtcName$0 ORG $+48 printf$rtcFrameData DD 01H DD 00H DQ FLAT:printf$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$_vfprintf_l DD 035052201H DD 011d3322H DD 07016001fH DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$__local_stdio_printf_options DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?__empty_global_delete@@YAXPEAX_K@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?__empty_global_delete@@YAXPEAX@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; Function compile flags: /Odt ; COMDAT __JustMyCode_Default _TEXT SEGMENT __JustMyCode_Default PROC ; COMDAT 00000 c2 00 00 ret 0 __JustMyCode_Default ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z _TEXT SEGMENT _Al$ = 224 _Ptr$ = 232 _Count$ = 240 ?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z PROC ; std::_Default_allocator_traits >::deallocate, COMDAT ; 693 : static _CONSTEXPR20_DYNALLOC void deallocate(_Alloc& _Al, const pointer _Ptr, const size_type _Count) { $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 694 : // no overflow check on the following multiply; we assume _Allocate did that check ; 695 : #ifdef __cpp_lib_constexpr_dynamic_alloc // TRANSITION, GH-1532 ; 696 : if (_STD is_constant_evaluated()) { ; 697 : _Al.deallocate(_Ptr, _Count); ; 698 : } else ; 699 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 700 : { ; 701 : (void) _Al; ; 702 : _Deallocate<_New_alignof>(_Ptr, sizeof(value_type) * _Count); 00029 48 6b 85 f0 00 00 00 10 imul rax, QWORD PTR _Count$[rbp], 16 00031 48 8b d0 mov rdx, rax 00034 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 0003b e8 00 00 00 00 call ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z ; std::_Deallocate<16,0> ; 703 : } ; 704 : } 00040 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00047 5f pop rdi 00048 5d pop rbp 00049 c3 ret 0 ?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z ENDP ; std::_Default_allocator_traits >::deallocate _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z _TEXT SEGMENT _Al$ = 224 _Ptr$ = 232 ??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z PROC ; std::_Deallocate_plain >, COMDAT ; 985 : _CONSTEXPR20_DYNALLOC void _Deallocate_plain(_Alloc& _Al, typename _Alloc::value_type* const _Ptr) noexcept { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 986 : // deallocate a plain pointer using an allocator ; 987 : using _Alloc_traits = allocator_traits<_Alloc>; ; 988 : if constexpr (is_same_v<_Alloc_ptr_t<_Alloc>, typename _Alloc::value_type*>) { ; 989 : _Alloc_traits::deallocate(_Al, _Ptr, 1); 00024 41 b8 01 00 00 00 mov r8d, 1 0002a 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Ptr$[rbp] 00031 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Al$[rbp] 00038 e8 00 00 00 00 call ?deallocate@?$_Default_allocator_traits@V?$allocator@U_Container_proxy@std@@@std@@@std@@SAXAEAV?$allocator@U_Container_proxy@std@@@2@QEAU_Container_proxy@2@_K@Z ; std::_Default_allocator_traits >::deallocate 0003d 90 npad 1 ; 990 : } else { ; 991 : using _Ptr_traits = pointer_traits<_Alloc_ptr_t<_Alloc>>; ; 992 : _Alloc_traits::deallocate(_Al, _Ptr_traits::pointer_to(*_Ptr), 1); ; 993 : } ; 994 : } 0003e 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00045 5f pop rdi 00046 5d pop rbp 00047 c3 ret 0 ??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z ENDP ; std::_Deallocate_plain > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z _TEXT SEGMENT _Ptr$ = 224 _Bytes$ = 232 ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z PROC ; std::_Deallocate<16,0>, COMDAT ; 251 : _CONSTEXPR20_DYNALLOC void _Deallocate(void* _Ptr, size_t _Bytes) noexcept { $LN4: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 252 : // deallocate storage allocated by _Allocate when !_HAS_ALIGNED_NEW || _Align <= __STDCPP_DEFAULT_NEW_ALIGNMENT__ ; 253 : #ifdef __cpp_lib_constexpr_dynamic_alloc // TRANSITION, GH-1532 ; 254 : if (_STD is_constant_evaluated()) { ; 255 : ::operator delete(_Ptr); ; 256 : } else ; 257 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 258 : { ; 259 : #if defined(_M_IX86) || defined(_M_X64) ; 260 : if (_Bytes >= _Big_allocation_threshold) { // boost the alignment of big allocations to help autovectorization 00024 48 81 bd e8 00 00 00 00 10 00 00 cmp QWORD PTR _Bytes$[rbp], 4096 ; 00001000H 0002f 72 13 jb SHORT $LN2@Deallocate ; 261 : _Adjust_manually_vector_aligned(_Ptr, _Bytes); 00031 48 8d 95 e8 00 00 00 lea rdx, QWORD PTR _Bytes$[rbp] 00038 48 8d 8d e0 00 00 00 lea rcx, QWORD PTR _Ptr$[rbp] 0003f e8 00 00 00 00 call ?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z ; std::_Adjust_manually_vector_aligned $LN2@Deallocate: ; 262 : } ; 263 : #endif // defined(_M_IX86) || defined(_M_X64) ; 264 : ::operator delete(_Ptr, _Bytes); 00044 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Bytes$[rbp] 0004b 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 00052 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00057 90 npad 1 ; 265 : } ; 266 : } 00058 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0005f 5f pop rdi 00060 5d pop rbp 00061 c3 ret 0 ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z ENDP ; std::_Deallocate<16,0> _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z _TEXT SEGMENT _First$ = 224 _Last$ = 232 _Al$ = 240 ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z PROC ; std::_Destroy_range >, COMDAT ; 945 : _Alloc_ptr_t<_Alloc> _First, const _Alloc_ptr_t<_Alloc> _Last, _Alloc& _Al) noexcept { $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 946 : // note that this is an optimization for debug mode codegen; in release mode the BE removes all of this ; 947 : using _Ty = typename _Alloc::value_type; ; 948 : if constexpr (!conjunction_v, _Uses_default_destroy<_Alloc, _Ty*>>) { ; 949 : for (; _First != _Last; ++_First) { ; 950 : allocator_traits<_Alloc>::destroy(_Al, _Unfancy(_First)); ; 951 : } ; 952 : } ; 953 : } 00029 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00030 5f pop rdi 00031 5d pop rbp 00032 c3 ret 0 ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z ENDP ; std::_Destroy_range > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z _TEXT SEGMENT _Al$ = 224 _Ptr$ = 232 ??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z PROC ; std::_Delete_plain_internal >, COMDAT ; 998 : _CONSTEXPR20_DYNALLOC void _Delete_plain_internal(_Alloc& _Al, typename _Alloc::value_type* const _Ptr) noexcept { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 999 : // destroy *_Ptr in place, then deallocate _Ptr using _Al; used for internal container types the user didn't name ; 1000 : using _Ty = typename _Alloc::value_type; ; 1001 : _Ptr->~_Ty(); ; 1002 : _Deallocate_plain(_Al, _Ptr); 00024 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Ptr$[rbp] 0002b 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Al$[rbp] 00032 e8 00 00 00 00 call ??$_Deallocate_plain@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z ; std::_Deallocate_plain > ; 1003 : } 00037 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0003e 5f pop rdi 0003f 5d pop rbp 00040 c3 ret 0 ??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z ENDP ; std::_Delete_plain_internal > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\utility ; COMDAT ??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z _TEXT SEGMENT _Old_val$ = 8 _Val$ = 256 _New_val$ = 264 ??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z PROC ; std::exchange, COMDAT ; 614 : conjunction_v, is_nothrow_assignable<_Ty&, _Other>>) /* strengthened */ { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__B7ADD299_utility 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 615 : // assign _New_val to _Val, return previous _Val ; 616 : _Ty _Old_val = static_cast<_Ty&&>(_Val); 00024 48 8b 85 00 01 00 00 mov rax, QWORD PTR _Val$[rbp] 0002b 48 8b 00 mov rax, QWORD PTR [rax] 0002e 48 89 45 08 mov QWORD PTR _Old_val$[rbp], rax ; 617 : _Val = static_cast<_Other&&>(_New_val); 00032 48 8b 85 00 01 00 00 mov rax, QWORD PTR _Val$[rbp] 00039 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _New_val$[rbp] 00040 48 8b 09 mov rcx, QWORD PTR [rcx] 00043 48 89 08 mov QWORD PTR [rax], rcx ; 618 : return _Old_val; 00046 48 8b 45 08 mov rax, QWORD PTR _Old_val$[rbp] ; 619 : } 0004a 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00051 5f pop rdi 00052 5d pop rbp 00053 c3 ret 0 ??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z ENDP ; std::exchange _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z _TEXT SEGMENT this$ = 224 __formal$ = 232 ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z PROC ; std::allocator::allocator, COMDAT ; 829 : constexpr allocator(const allocator<_Other>&) noexcept {} $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00024 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00032 5f pop rdi 00033 5d pop rbp 00034 c3 ret 0 ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z ENDP ; std::allocator::allocator _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\Main.cpp ; COMDAT main _TEXT SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main PROC ; COMDAT ; 44 : { $LN6: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec e8 01 00 00 sub rsp, 488 ; 000001e8H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00014 b9 42 00 00 00 mov ecx, 66 ; 00000042H 00019 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0001e f3 ab rep stosd 00020 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00027 48 33 c5 xor rax, rbp 0002a 48 89 85 b0 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00031 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__386EB99F_Main@cpp 00038 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 45 : XedTablesInit(); 0003d e8 00 00 00 00 call xed_tables_init ; 46 : srand(time(NULL)); 00042 33 c9 xor ecx, ecx 00044 e8 00 00 00 00 call time 00049 8b c8 mov ecx, eax 0004b ff 15 00 00 00 00 call QWORD PTR __imp_srand ; 47 : ; 48 : ; 49 : NATIVE_CODE_BLOCK Block; 00051 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 00055 e8 00 00 00 00 call ??0_NATIVE_CODE_BLOCK@@QEAA@XZ ; _NATIVE_CODE_BLOCK::_NATIVE_CODE_BLOCK 0005a 90 npad 1 ; 50 : NcDisassemble(&Block, TestBuffer, TestBufferSize); 0005b 44 8b 05 00 00 00 00 mov r8d, DWORD PTR ?TestBufferSize@@3KA ; TestBufferSize 00062 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?TestBuffer@@3PAEA ; TestBuffer 00069 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 0006d e8 00 00 00 00 call ?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z ; NcDisassemble ; 51 : NATIVE_CODE_BLOCK NotTaken; 00072 48 8d 4d 58 lea rcx, QWORD PTR NotTaken$[rbp] 00076 e8 00 00 00 00 call ??0_NATIVE_CODE_BLOCK@@QEAA@XZ ; _NATIVE_CODE_BLOCK::_NATIVE_CODE_BLOCK 0007b 90 npad 1 ; 52 : NATIVE_CODE_BLOCK Taken; 0007c 48 8d 8d a8 00 00 00 lea rcx, QWORD PTR Taken$[rbp] 00083 e8 00 00 00 00 call ??0_NATIVE_CODE_BLOCK@@QEAA@XZ ; _NATIVE_CODE_BLOCK::_NATIVE_CODE_BLOCK 00088 90 npad 1 ; 53 : printf("\n\nOriginal\n"); 00089 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0M@INKCCKOG@?6?6Original?6@ 00090 e8 00 00 00 00 call printf ; 54 : NcDebugPrint(&Block); 00095 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 00099 e8 00 00 00 00 call ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcDebugPrint ; 55 : ObfCreateOpaqueBranches(Block.Start->Next, Block.Start->Next->Next->Next->Next, &NotTaken, &Taken); 0009e 48 8b 45 08 mov rax, QWORD PTR Block$[rbp] 000a2 48 8b 00 mov rax, QWORD PTR [rax] 000a5 48 8b 00 mov rax, QWORD PTR [rax] 000a8 48 8b 00 mov rax, QWORD PTR [rax] 000ab 4c 8d 8d a8 00 00 00 lea r9, QWORD PTR Taken$[rbp] 000b2 4c 8d 45 58 lea r8, QWORD PTR NotTaken$[rbp] 000b6 48 8b 10 mov rdx, QWORD PTR [rax] 000b9 48 8b 45 08 mov rax, QWORD PTR Block$[rbp] 000bd 48 8b 08 mov rcx, QWORD PTR [rax] 000c0 e8 00 00 00 00 call ?ObfCreateOpaqueBranches@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@1@Z ; ObfCreateOpaqueBranches ; 56 : //printf("\n\nNotTaken\n"); ; 57 : //NcDebugPrint(&NotTaken); ; 58 : //printf("\n\nTaken\n"); ; 59 : //NcDebugPrint(&Taken); ; 60 : //printf("\n\nCombined\n"); ; 61 : ObfCombineOpaqueBranches(&NotTaken, &Taken, NcGenUnusedLabelId(&Block), NcGenUnusedLabelId(&Block)); 000c5 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 000c9 e8 00 00 00 00 call ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ; NcGenUnusedLabelId 000ce 89 85 a4 01 00 00 mov DWORD PTR tv135[rbp], eax 000d4 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 000d8 e8 00 00 00 00 call ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ; NcGenUnusedLabelId 000dd 89 85 a8 01 00 00 mov DWORD PTR tv133[rbp], eax 000e3 44 8b 8d a4 01 00 00 mov r9d, DWORD PTR tv135[rbp] 000ea 44 8b 85 a8 01 00 00 mov r8d, DWORD PTR tv133[rbp] 000f1 48 8d 95 a8 00 00 00 lea rdx, QWORD PTR Taken$[rbp] 000f8 48 8d 4d 58 lea rcx, QWORD PTR NotTaken$[rbp] 000fc e8 00 00 00 00 call ?ObfCombineOpaqueBranches@@YAHPEAU_NATIVE_CODE_BLOCK@@0KK@Z ; ObfCombineOpaqueBranches ; 62 : ObfInsertOpaqueBranchBlock(Block.Start->Next, Block.Start->Next->Next->Next->Next, &NotTaken); 00101 48 8b 45 08 mov rax, QWORD PTR Block$[rbp] 00105 48 8b 00 mov rax, QWORD PTR [rax] 00108 48 8b 00 mov rax, QWORD PTR [rax] 0010b 48 8b 00 mov rax, QWORD PTR [rax] 0010e 4c 8d 45 58 lea r8, QWORD PTR NotTaken$[rbp] 00112 48 8b 10 mov rdx, QWORD PTR [rax] 00115 48 8b 45 08 mov rax, QWORD PTR Block$[rbp] 00119 48 8b 08 mov rcx, QWORD PTR [rax] 0011c e8 00 00 00 00 call ?ObfInsertOpaqueBranchBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z ; ObfInsertOpaqueBranchBlock ; 63 : printf("\n\nNew\n"); 00121 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_06CHBCCLOP@?6?6New?6@ 00128 e8 00 00 00 00 call printf ; 64 : NcDebugPrint(&Block); 0012d 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 00131 e8 00 00 00 00 call ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcDebugPrint 00136 90 npad 1 ; 65 : ; 66 : ; 67 : ; 68 : //PNATIVE_CODE_LINK Return1776 = new NATIVE_CODE_LINK(CODE_FLAG_IS_INST, meme1, sizeof(meme1)); ; 69 : //PNATIVE_CODE_LINK RetInst = new NATIVE_CODE_LINK(CODE_FLAG_IS_INST, meme2, sizeof(meme2)); ; 70 : //PNATIVE_CODE_BLOCK Pre1 = JitEmitPreRipMov(Return1776); ; 71 : //PNATIVE_CODE_BLOCK Post1 = JitEmitPostRipMov(Return1776); ; 72 : //PNATIVE_CODE_BLOCK Pre2 = JitEmitPreRipMov(RetInst); ; 73 : //PNATIVE_CODE_BLOCK Post2 = JitEmitPostRipMov(RetInst); ; 74 : ; 75 : //NcAppendToBlock(Pre1, Return1776); ; 76 : //NcInsertBlockAfter(Pre1->End, Post1, 0); ; 77 : //Pre1->End = Post1->End; ; 78 : //NcInsertBlockAfter(Pre1->End, Pre2, 0); ; 79 : //Pre1->End = Pre2->End; ; 80 : //NcAppendToBlock(Pre1, RetInst); ; 81 : //NcInsertBlockAfter(Pre1->End, Post2, 0); ; 82 : //Pre1->End = Post2->End; ; 83 : ; 84 : ///*Pre->Start = Return1776; ; 85 : //Pre->End = Return1776;*/ ; 86 : ; 87 : //for (ULONG i = 0; i < Return1776->RawDataSize; i++) ; 88 : // Return1776->RawData[i] = (UCHAR)rand(); ; 89 : //for (ULONG i = 0; i < RetInst->RawDataSize; i++) ; 90 : // RetInst->RawData[i] = (UCHAR)rand(); ; 91 : ; 92 : ; 93 : ; 94 : //ULONG AsmLen; ; 95 : //PVOID Asm = NcAssemble(Pre1, &AsmLen); ; 96 : //PUCHAR Tb = (PUCHAR)Asm; ; 97 : //for (uint32_t i = 0; i < AsmLen; i++) ; 98 : //{ ; 99 : // std::cout << std::hex << std::setw(2) << std::setfill('0') << (int)Tb[i] << ' '; ; 100 : //} ; 101 : ; 102 : //system("pause"); ; 103 : ; 104 : //typedef ULONG64(*FnGet1776)(); ; 105 : //FnGet1776 ExecBuffer = (FnGet1776)MakeExecutableBuffer(Asm, AsmLen); ; 106 : //if (ExecBuffer) ; 107 : //{ ; 108 : // printf("The numba was: %X\n", ExecBuffer()); ; 109 : // printf("The numba was: %X\n", ExecBuffer()); ; 110 : ; 111 : // printf("The numba was: %X\n", ExecBuffer()); ; 112 : ; 113 : // printf("The numba was: %X\n", ExecBuffer()); ; 114 : ; 115 : //} ; 116 : ; 117 : ; 118 : //NcDebugPrint(Post); ; 119 : ; 120 : ; 121 : ; 122 : /*NATIVE_CODE_BLOCK Block; ; 123 : NcDisassemble(&Block, TestBuffer, TestBufferSize); ; 124 : PNATIVE_CODE_LINK NewLink = new NATIVE_CODE_LINK(CODE_FLAG_IS_INST, meme1, sizeof(meme1)); ; 125 : ; 126 : NcInsertLinkBefore(Block.End->Prev->Prev->Prev->Prev, NewLink); ; 127 : ULONG AssembledSize; ; 128 : PVOID AssembledBlock = NcAssemble(&Block, &AssembledSize); ; 129 : if (!AssembledBlock || !AssembledSize) ; 130 : { ; 131 : printf("Something failed nicka.\n"); ; 132 : system("pause"); ; 133 : return -1; ; 134 : } ; 135 : PUCHAR Tb = (PUCHAR)AssembledBlock; ; 136 : for (uint32_t i = 0; i < AssembledSize; i++) ; 137 : { ; 138 : std::cout << std::hex << std::setw(2) << std::setfill('0') << (int)Tb[i] << ' '; ; 139 : } ; 140 : */ ; 141 : ; 142 : ; 143 : //PNATIVE_CODE_BLOCK OpaqueBranch = ObfGenOpaqueBranch(Block.Start, Block.End); ; 144 : //NcDebugPrint(OpaqueBranch); ; 145 : ; 146 : ; 147 : ; 148 : /*NATIVE_CODE_LINK T; ; 149 : T.RawDataSize = 10; ; 150 : T.RawData = new UCHAR[10]; ; 151 : memset(T.RawData, 0xAA, 10); ; 152 : JIT_BITWISE_DATA Data; ; 153 : RtlSecureZeroMemory(&Data, sizeof(JIT_BITWISE_DATA)); ; 154 : PNATIVE_CODE_BLOCK NewBlock = JitEmitPreRipMov(&T); ; 155 : if (NewBlock) ; 156 : { ; 157 : printf("\n"); ; 158 : NcDebugPrint(NewBlock); ; 159 : printf("\n"); ; 160 : NcPrintBlockCode(NewBlock); ; 161 : } ; 162 : system("pause");*/ ; 163 : ; 164 : } 00137 48 8d 8d a8 00 00 00 lea rcx, QWORD PTR Taken$[rbp] 0013e e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 00143 90 npad 1 00144 48 8d 4d 58 lea rcx, QWORD PTR NotTaken$[rbp] 00148 e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 0014d 90 npad 1 0014e 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 00152 e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 00157 33 c0 xor eax, eax 00159 8b f8 mov edi, eax 0015b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0015f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:main$rtcFrameData 00166 e8 00 00 00 00 call _RTC_CheckStackVars 0016b 8b c7 mov eax, edi 0016d 48 8b 8d b0 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00174 48 33 cd xor rcx, rbp 00177 e8 00 00 00 00 call __security_check_cookie 0017c 48 8d a5 c8 01 00 00 lea rsp, QWORD PTR [rbp+456] 00183 5f pop rdi 00184 5d pop rbp 00185 c3 ret 0 main ENDP _TEXT ENDS ; COMDAT text$x text$x SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main$dtor$0 PROC 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 83 ec 28 sub rsp, 40 ; 00000028H 00010 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32] 00014 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 00018 e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 main$dtor$0 ENDP text$x ENDS ; COMDAT text$x text$x SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main$dtor$1 PROC 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 83 ec 28 sub rsp, 40 ; 00000028H 00010 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32] 00014 48 8d 4d 58 lea rcx, QWORD PTR NotTaken$[rbp] 00018 e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 main$dtor$1 ENDP text$x ENDS ; COMDAT text$x text$x SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main$dtor$2 PROC 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 83 ec 28 sub rsp, 40 ; 00000028H 00010 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32] 00014 48 8d 8d a8 00 00 00 lea rcx, QWORD PTR Taken$[rbp] 0001b e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 main$dtor$2 ENDP text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main$dtor$0 PROC 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 83 ec 28 sub rsp, 40 ; 00000028H 00010 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32] 00014 48 8d 4d 08 lea rcx, QWORD PTR Block$[rbp] 00018 e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 main$dtor$0 ENDP text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main$dtor$1 PROC 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 83 ec 28 sub rsp, 40 ; 00000028H 00010 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32] 00014 48 8d 4d 58 lea rcx, QWORD PTR NotTaken$[rbp] 00018 e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 main$dtor$1 ENDP text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT Block$ = 8 NotTaken$ = 88 Taken$ = 168 tv135 = 420 tv133 = 424 __$ArrayPad$ = 432 main$dtor$2 PROC 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 83 ec 28 sub rsp, 40 ; 00000028H 00010 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32] 00014 48 8d 8d a8 00 00 00 lea rcx, QWORD PTR Taken$[rbp] 0001b e8 00 00 00 00 call ??1_NATIVE_CODE_BLOCK@@QEAA@XZ 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 main$dtor$2 ENDP text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\Main.cpp ; COMDAT ?MakeExecutableBuffer@@YAPEAXPEAXK@Z _TEXT SEGMENT ExecBuffer$ = 8 Buffer$ = 256 BufferSize$ = 264 ?MakeExecutableBuffer@@YAPEAXPEAXK@Z PROC ; MakeExecutableBuffer, COMDAT ; 14 : { $LN4: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 55 push rbp 0000a 57 push rdi 0000b 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__386EB99F_Main@cpp 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 15 : PVOID ExecBuffer = VirtualAlloc(nullptr, BufferSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE); 00023 8b 85 08 01 00 00 mov eax, DWORD PTR BufferSize$[rbp] 00029 41 b9 40 00 00 00 mov r9d, 64 ; 00000040H 0002f 41 b8 00 10 00 00 mov r8d, 4096 ; 00001000H 00035 8b d0 mov edx, eax 00037 33 c9 xor ecx, ecx 00039 ff 15 00 00 00 00 call QWORD PTR __imp_VirtualAlloc 0003f 48 89 45 08 mov QWORD PTR ExecBuffer$[rbp], rax ; 16 : if (!ExecBuffer) 00043 48 83 7d 08 00 cmp QWORD PTR ExecBuffer$[rbp], 0 00048 75 04 jne SHORT $LN2@MakeExecut ; 17 : return NULL; 0004a 33 c0 xor eax, eax 0004c eb 19 jmp SHORT $LN1@MakeExecut $LN2@MakeExecut: ; 18 : RtlCopyMemory(ExecBuffer, Buffer, BufferSize); 0004e 8b 85 08 01 00 00 mov eax, DWORD PTR BufferSize$[rbp] 00054 44 8b c0 mov r8d, eax 00057 48 8b 95 00 01 00 00 mov rdx, QWORD PTR Buffer$[rbp] 0005e 48 8b 4d 08 mov rcx, QWORD PTR ExecBuffer$[rbp] 00062 e8 00 00 00 00 call memcpy $LN1@MakeExecut: ; 19 : } 00067 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 0006e 5f pop rdi 0006f 5d pop rbp 00070 c3 ret 0 ?MakeExecutableBuffer@@YAPEAXPEAXK@Z ENDP ; MakeExecutableBuffer _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??1_NATIVE_CODE_BLOCK@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??1_NATIVE_CODE_BLOCK@@QEAA@XZ PROC ; _NATIVE_CODE_BLOCK::~_NATIVE_CODE_BLOCK, COMDAT $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0001a 48 83 c0 10 add rax, 16 0001e 48 8b c8 mov rcx, rax 00021 e8 00 00 00 00 call ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ ; std::vector >::~vector > 00026 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002d 5f pop rdi 0002e 5d pop rbp 0002f c3 ret 0 ??1_NATIVE_CODE_BLOCK@@QEAA@XZ ENDP ; _NATIVE_CODE_BLOCK::~_NATIVE_CODE_BLOCK _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ _TEXT SEGMENT this$ = 224 ?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ PROC ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first, COMDAT ; 1377 : constexpr _Ty1& _Get_first() noexcept { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1378 : return *this; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] ; 1379 : } 00026 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002d 5f pop rdi 0002e 5d pop rbp 0002f c3 ret 0 ?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ ENDP ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\vector ; COMDAT ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ _TEXT SEGMENT this$ = 224 ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ PROC ; std::vector >::_Getal, COMDAT ; 1817 : _NODISCARD _CONSTEXPR20_CONTAINER _Alty& _Getal() noexcept { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1818 : return _Mypair._Get_first(); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8b c8 mov rcx, rax 00029 e8 00 00 00 00 call ?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAAAEAV?$allocator@K@2@XZ ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first ; 1819 : } 0002e 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00035 5f pop rdi 00036 5d pop rbp 00037 c3 ret 0 ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ENDP ; std::vector >::_Getal _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\vector ; COMDAT ?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ _TEXT SEGMENT _My_data$ = 8 _Myfirst$ = 40 _Mylast$ = 72 _Myend$ = 104 tv90 = 312 tv88 = 320 tv86 = 328 this$ = 368 ?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ PROC ; std::vector >::_Tidy, COMDAT ; 1755 : _CONSTEXPR20_CONTAINER void _Tidy() noexcept { // free all storage $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 78 01 00 00 sub rsp, 376 ; 00000178H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1756 : auto& _My_data = _Mypair._Myval2; 0001f 48 8b 85 70 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1757 : pointer& _Myfirst = _My_data._Myfirst; 0002a 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 0002e 48 83 c0 08 add rax, 8 00032 48 89 45 28 mov QWORD PTR _Myfirst$[rbp], rax ; 1758 : pointer& _Mylast = _My_data._Mylast; 00036 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 0003a 48 83 c0 10 add rax, 16 0003e 48 89 45 48 mov QWORD PTR _Mylast$[rbp], rax ; 1759 : pointer& _Myend = _My_data._Myend; 00042 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00046 48 83 c0 18 add rax, 24 0004a 48 89 45 68 mov QWORD PTR _Myend$[rbp], rax ; 1760 : ; 1761 : _My_data._Orphan_all(); 0004e 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00052 e8 00 00 00 00 call ?_Orphan_all@_Container_base12@std@@QEAAXXZ ; std::_Container_base12::_Orphan_all ; 1762 : ; 1763 : if (_Myfirst) { // destroy and deallocate old array 00057 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 0005b 48 83 38 00 cmp QWORD PTR [rax], 0 0005f 0f 84 92 00 00 00 je $LN2@Tidy ; 1764 : _Destroy(_Myfirst, _Mylast); 00065 48 8b 45 48 mov rax, QWORD PTR _Mylast$[rbp] 00069 4c 8b 00 mov r8, QWORD PTR [rax] 0006c 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 00070 48 8b 10 mov rdx, QWORD PTR [rax] 00073 48 8b 8d 70 01 00 00 mov rcx, QWORD PTR this$[rbp] 0007a e8 00 00 00 00 call ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy ; 1765 : _Getal().deallocate(_Myfirst, static_cast(_Myend - _Myfirst)); 0007f 48 8b 8d 70 01 00 00 mov rcx, QWORD PTR this$[rbp] 00086 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 0008b 48 89 85 38 01 00 00 mov QWORD PTR tv90[rbp], rax 00092 48 8b 45 68 mov rax, QWORD PTR _Myend$[rbp] 00096 48 8b 4d 28 mov rcx, QWORD PTR _Myfirst$[rbp] 0009a 48 8b 09 mov rcx, QWORD PTR [rcx] 0009d 48 8b 00 mov rax, QWORD PTR [rax] 000a0 48 2b c1 sub rax, rcx 000a3 48 c1 f8 02 sar rax, 2 000a7 48 89 85 40 01 00 00 mov QWORD PTR tv88[rbp], rax 000ae 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 000b2 48 8b 00 mov rax, QWORD PTR [rax] 000b5 48 89 85 48 01 00 00 mov QWORD PTR tv86[rbp], rax 000bc 4c 8b 85 40 01 00 00 mov r8, QWORD PTR tv88[rbp] 000c3 48 8b 95 48 01 00 00 mov rdx, QWORD PTR tv86[rbp] 000ca 48 8b 8d 38 01 00 00 mov rcx, QWORD PTR tv90[rbp] 000d1 e8 00 00 00 00 call ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ; std::allocator::deallocate ; 1766 : ; 1767 : _Myfirst = nullptr; 000d6 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 000da 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1768 : _Mylast = nullptr; 000e1 48 8b 45 48 mov rax, QWORD PTR _Mylast$[rbp] 000e5 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1769 : _Myend = nullptr; 000ec 48 8b 45 68 mov rax, QWORD PTR _Myend$[rbp] 000f0 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 $LN2@Tidy: ; 1770 : } ; 1771 : } 000f7 48 8d a5 58 01 00 00 lea rsp, QWORD PTR [rbp+344] 000fe 5f pop rdi 000ff 5d pop rbp 00100 c3 ret 0 ?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ ENDP ; std::vector >::_Tidy _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\vector ; COMDAT ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z _TEXT SEGMENT this$ = 224 _First$ = 232 _Last$ = 240 ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z PROC ; std::vector >::_Destroy, COMDAT ; 1678 : _CONSTEXPR20_CONTAINER void _Destroy(pointer _First, pointer _Last) { $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1679 : // destroy [_First, _Last) using allocator ; 1680 : _Destroy_range(_First, _Last, _Getal()); 00029 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00030 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 00035 4c 8b c0 mov r8, rax 00038 48 8b 95 f0 00 00 00 mov rdx, QWORD PTR _Last$[rbp] 0003f 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _First$[rbp] 00046 e8 00 00 00 00 call ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z ; std::_Destroy_range > ; 1681 : } 0004b 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00052 5f pop rdi 00053 5d pop rbp 00054 c3 ret 0 ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ENDP ; std::vector >::_Destroy _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\vector ; COMDAT ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ _TEXT SEGMENT _Alproxy$ = 8 $S1$ = 36 $T4 = 260 __$ArrayPad$ = 280 this$ = 320 ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ PROC ; std::vector >::~vector >, COMDAT ; 711 : _CONSTEXPR20_CONTAINER ~vector() noexcept { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 48 01 00 00 sub rsp, 328 ; 00000148H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00018 b9 1a 00 00 00 mov ecx, 26 0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00022 f3 ab rep stosd 00024 48 8b 8c 24 68 01 00 00 mov rcx, QWORD PTR [rsp+360] 0002c 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00033 48 33 c5 xor rax, rbp 00036 48 89 85 18 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 712 : _Tidy(); 00049 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR this$[rbp] 00050 e8 00 00 00 00 call ?_Tidy@?$vector@KV?$allocator@K@std@@@std@@AEAAXXZ ; std::vector >::_Tidy ; 713 : #if _ITERATOR_DEBUG_LEVEL != 0 ; 714 : auto&& _Alproxy = _GET_PROXY_ALLOCATOR(_Alty, _Getal()); 00055 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR this$[rbp] 0005c e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 00061 48 8b d0 mov rdx, rax 00064 48 8d 4d 24 lea rcx, QWORD PTR $S1$[rbp] 00068 e8 00 00 00 00 call ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z ; std::allocator::allocator 0006d 48 8d 45 24 lea rax, QWORD PTR $S1$[rbp] 00071 48 89 45 08 mov QWORD PTR _Alproxy$[rbp], rax ; 715 : _Delete_plain_internal(_Alproxy, _STD exchange(_Mypair._Myval2._Myproxy, nullptr)); 00075 48 c7 85 04 01 00 00 00 00 00 00 mov QWORD PTR $T4[rbp], 0 00080 48 8b 85 40 01 00 00 mov rax, QWORD PTR this$[rbp] 00087 48 8d 95 04 01 00 00 lea rdx, QWORD PTR $T4[rbp] 0008e 48 8b c8 mov rcx, rax 00091 e8 00 00 00 00 call ??$exchange@PEAU_Container_proxy@std@@$$T@std@@YAPEAU_Container_proxy@0@AEAPEAU10@$$QEA$$T@Z ; std::exchange 00096 48 8b d0 mov rdx, rax 00099 48 8b 4d 08 mov rcx, QWORD PTR _Alproxy$[rbp] 0009d e8 00 00 00 00 call ??$_Delete_plain_internal@V?$allocator@U_Container_proxy@std@@@std@@@std@@YAXAEAV?$allocator@U_Container_proxy@std@@@0@QEAU_Container_proxy@0@@Z ; std::_Delete_plain_internal > ; 716 : #endif // _ITERATOR_DEBUG_LEVEL != 0 ; 717 : } 000a2 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 000a6 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ$rtcFrameData 000ad e8 00 00 00 00 call _RTC_CheckStackVars 000b2 48 8b 8d 18 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 000b9 48 33 cd xor rcx, rbp 000bc e8 00 00 00 00 call __security_check_cookie 000c1 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 000c8 5f pop rdi 000c9 5d pop rbp 000ca c3 ret 0 ??1?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ ENDP ; std::vector >::~vector > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z _TEXT SEGMENT this$ = 224 _Ptr$ = 232 _Count$ = 240 ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z PROC ; std::allocator::deallocate, COMDAT ; 833 : _CONSTEXPR20_DYNALLOC void deallocate(_Ty* const _Ptr, const size_t _Count) { $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 834 : // no overflow check on the following multiply; we assume _Allocate did that check ; 835 : _Deallocate<_New_alignof<_Ty>>(_Ptr, sizeof(_Ty) * _Count); 00029 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _Count$[rbp] 00030 48 c1 e0 02 shl rax, 2 00034 48 8b d0 mov rdx, rax 00037 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 0003e e8 00 00 00 00 call ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z ; std::_Deallocate<16,0> ; 836 : } 00043 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004a 5f pop rdi 0004b 5d pop rbp 0004c c3 ret 0 ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ENDP ; std::allocator::deallocate _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xloctime ; COMDAT ??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z _TEXT SEGMENT $T1 = 200 tv93 = 264 tv85 = 264 this$ = 304 __formal$ = 312 _Lobj$ = 320 ??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z PROC ; std::time_get > >::_Getvals, COMDAT ; 173 : void __CLR_OR_THIS_CALL _Getvals(_Elem2, const _Locinfo& _Lobj) { // get values $LN5: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 66 89 54 24 10 mov WORD PTR [rsp+16], dx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 56 push rsi 00011 57 push rdi 00012 48 81 ec 30 01 00 00 sub rsp, 304 ; 00000130H 00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001e 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__B7A2C865_xloctime 00025 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 174 : _Cvt = _Lobj._Getcvt(); 0002a 48 8d 95 c8 00 00 00 lea rdx, QWORD PTR $T1[rbp] 00031 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 00038 ff 15 00 00 00 00 call QWORD PTR __imp_?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ 0003e 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00045 48 8d 79 2c lea rdi, QWORD PTR [rcx+44] 00049 48 8b f0 mov rsi, rax 0004c b9 2c 00 00 00 mov ecx, 44 ; 0000002cH 00051 f3 a4 rep movsb ; 175 : ; 176 : if (is_same_v<_Elem2, wchar_t>) { 00053 33 c0 xor eax, eax 00055 83 f8 01 cmp eax, 1 00058 74 5c je SHORT $LN2@Getvals ; 177 : _Days = reinterpret_cast(_Maklocwcs(reinterpret_cast(_Lobj._W_Getdays()))); 0005a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 00061 ff 15 00 00 00 00 call QWORD PTR __imp_?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ 00067 48 8b c8 mov rcx, rax 0006a e8 00 00 00 00 call ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs 0006f 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00076 48 89 41 10 mov QWORD PTR [rcx+16], rax ; 178 : _Months = 0007a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 00081 ff 15 00 00 00 00 call QWORD PTR __imp_?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ 00087 48 8b c8 mov rcx, rax 0008a e8 00 00 00 00 call ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs 0008f 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00096 48 89 41 18 mov QWORD PTR [rcx+24], rax ; 179 : reinterpret_cast(_Maklocwcs(reinterpret_cast(_Lobj._W_Getmonths()))); ; 180 : _Ampm = reinterpret_cast(_Maklocwcs(L":AM:am:PM:pm")); 0009a 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ 000a1 e8 00 00 00 00 call ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs 000a6 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 000ad 48 89 41 20 mov QWORD PTR [rcx+32], rax ; 181 : } else { 000b1 e9 a3 00 00 00 jmp $LN3@Getvals $LN2@Getvals: ; 182 : _Days = _Maklocstr(_Lobj._Getdays(), static_cast<_Elem*>(nullptr), _Cvt); 000b6 48 8b 85 30 01 00 00 mov rax, QWORD PTR this$[rbp] 000bd 48 83 c0 2c add rax, 44 ; 0000002cH 000c1 48 89 85 08 01 00 00 mov QWORD PTR tv85[rbp], rax 000c8 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 000cf ff 15 00 00 00 00 call QWORD PTR __imp_?_Getdays@_Locinfo@std@@QEBAPEBDXZ 000d5 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR tv85[rbp] 000dc 4c 8b c1 mov r8, rcx 000df 33 d2 xor edx, edx 000e1 48 8b c8 mov rcx, rax 000e4 e8 00 00 00 00 call ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ; std::_Maklocstr 000e9 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 000f0 48 89 41 10 mov QWORD PTR [rcx+16], rax ; 183 : _Months = _Maklocstr(_Lobj._Getmonths(), static_cast<_Elem*>(nullptr), _Cvt); 000f4 48 8b 85 30 01 00 00 mov rax, QWORD PTR this$[rbp] 000fb 48 83 c0 2c add rax, 44 ; 0000002cH 000ff 48 89 85 08 01 00 00 mov QWORD PTR tv93[rbp], rax 00106 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 0010d ff 15 00 00 00 00 call QWORD PTR __imp_?_Getmonths@_Locinfo@std@@QEBAPEBDXZ 00113 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR tv93[rbp] 0011a 4c 8b c1 mov r8, rcx 0011d 33 d2 xor edx, edx 0011f 48 8b c8 mov rcx, rax 00122 e8 00 00 00 00 call ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ; std::_Maklocstr 00127 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 0012e 48 89 41 18 mov QWORD PTR [rcx+24], rax ; 184 : _Ampm = _Maklocstr(":AM:am:PM:pm", static_cast<_Elem*>(nullptr), _Cvt); 00132 48 8b 85 30 01 00 00 mov rax, QWORD PTR this$[rbp] 00139 48 83 c0 2c add rax, 44 ; 0000002cH 0013d 4c 8b c0 mov r8, rax 00140 33 d2 xor edx, edx 00142 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ 00149 e8 00 00 00 00 call ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ; std::_Maklocstr 0014e 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00155 48 89 41 20 mov QWORD PTR [rcx+32], rax $LN3@Getvals: ; 185 : } ; 186 : } 00159 48 8d a5 10 01 00 00 lea rsp, QWORD PTR [rbp+272] 00160 5f pop rdi 00161 5e pop rsi 00162 5d pop rbp 00163 c3 ret 0 ??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ENDP ; std::time_get > >::_Getvals _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xloctime ; COMDAT ??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z _TEXT SEGMENT $T1 = 200 tv93 = 264 tv85 = 264 this$ = 304 __formal$ = 312 _Lobj$ = 320 ??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z PROC ; std::time_get > >::_Getvals, COMDAT ; 173 : void __CLR_OR_THIS_CALL _Getvals(_Elem2, const _Locinfo& _Lobj) { // get values $LN5: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 66 89 54 24 10 mov WORD PTR [rsp+16], dx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 56 push rsi 00011 57 push rdi 00012 48 81 ec 30 01 00 00 sub rsp, 304 ; 00000130H 00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001e 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__B7A2C865_xloctime 00025 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 174 : _Cvt = _Lobj._Getcvt(); 0002a 48 8d 95 c8 00 00 00 lea rdx, QWORD PTR $T1[rbp] 00031 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 00038 ff 15 00 00 00 00 call QWORD PTR __imp_?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ 0003e 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00045 48 8d 79 2c lea rdi, QWORD PTR [rcx+44] 00049 48 8b f0 mov rsi, rax 0004c b9 2c 00 00 00 mov ecx, 44 ; 0000002cH 00051 f3 a4 rep movsb ; 175 : ; 176 : if (is_same_v<_Elem2, wchar_t>) { 00053 33 c0 xor eax, eax 00055 83 f8 01 cmp eax, 1 00058 74 5c je SHORT $LN2@Getvals ; 177 : _Days = reinterpret_cast(_Maklocwcs(reinterpret_cast(_Lobj._W_Getdays()))); 0005a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 00061 ff 15 00 00 00 00 call QWORD PTR __imp_?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ 00067 48 8b c8 mov rcx, rax 0006a e8 00 00 00 00 call ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs 0006f 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00076 48 89 41 10 mov QWORD PTR [rcx+16], rax ; 178 : _Months = 0007a 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 00081 ff 15 00 00 00 00 call QWORD PTR __imp_?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ 00087 48 8b c8 mov rcx, rax 0008a e8 00 00 00 00 call ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs 0008f 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00096 48 89 41 18 mov QWORD PTR [rcx+24], rax ; 179 : reinterpret_cast(_Maklocwcs(reinterpret_cast(_Lobj._W_Getmonths()))); ; 180 : _Ampm = reinterpret_cast(_Maklocwcs(L":AM:am:PM:pm")); 0009a 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ 000a1 e8 00 00 00 00 call ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs 000a6 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 000ad 48 89 41 20 mov QWORD PTR [rcx+32], rax ; 181 : } else { 000b1 e9 a3 00 00 00 jmp $LN3@Getvals $LN2@Getvals: ; 182 : _Days = _Maklocstr(_Lobj._Getdays(), static_cast<_Elem*>(nullptr), _Cvt); 000b6 48 8b 85 30 01 00 00 mov rax, QWORD PTR this$[rbp] 000bd 48 83 c0 2c add rax, 44 ; 0000002cH 000c1 48 89 85 08 01 00 00 mov QWORD PTR tv85[rbp], rax 000c8 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 000cf ff 15 00 00 00 00 call QWORD PTR __imp_?_Getdays@_Locinfo@std@@QEBAPEBDXZ 000d5 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR tv85[rbp] 000dc 4c 8b c1 mov r8, rcx 000df 33 d2 xor edx, edx 000e1 48 8b c8 mov rcx, rax 000e4 e8 00 00 00 00 call ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ; std::_Maklocstr 000e9 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 000f0 48 89 41 10 mov QWORD PTR [rcx+16], rax ; 183 : _Months = _Maklocstr(_Lobj._Getmonths(), static_cast<_Elem*>(nullptr), _Cvt); 000f4 48 8b 85 30 01 00 00 mov rax, QWORD PTR this$[rbp] 000fb 48 83 c0 2c add rax, 44 ; 0000002cH 000ff 48 89 85 08 01 00 00 mov QWORD PTR tv93[rbp], rax 00106 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Lobj$[rbp] 0010d ff 15 00 00 00 00 call QWORD PTR __imp_?_Getmonths@_Locinfo@std@@QEBAPEBDXZ 00113 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR tv93[rbp] 0011a 4c 8b c1 mov r8, rcx 0011d 33 d2 xor edx, edx 0011f 48 8b c8 mov rcx, rax 00122 e8 00 00 00 00 call ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ; std::_Maklocstr 00127 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 0012e 48 89 41 18 mov QWORD PTR [rcx+24], rax ; 184 : _Ampm = _Maklocstr(":AM:am:PM:pm", static_cast<_Elem*>(nullptr), _Cvt); 00132 48 8b 85 30 01 00 00 mov rax, QWORD PTR this$[rbp] 00139 48 83 c0 2c add rax, 44 ; 0000002cH 0013d 4c 8b c0 mov r8, rax 00140 33 d2 xor edx, edx 00142 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ 00149 e8 00 00 00 00 call ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ; std::_Maklocstr 0014e 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR this$[rbp] 00155 48 89 41 20 mov QWORD PTR [rcx+32], rax $LN3@Getvals: ; 185 : } ; 186 : } 00159 48 8d a5 10 01 00 00 lea rsp, QWORD PTR [rbp+272] 00160 5f pop rdi 00161 5e pop rsi 00162 5d pop rbp 00163 c3 ret 0 ??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ENDP ; std::time_get > >::_Getvals _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xlocale ; COMDAT ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z _TEXT SEGMENT _Count$ = 8 _Ptrdest$ = 40 _Ptrnext$1 = 72 _Ptr$ = 320 __formal$ = 328 __formal$ = 336 ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z PROC ; std::_Maklocstr, COMDAT ; 522 : _Elem* __CRTDECL _Maklocstr(const char* _Ptr, _Elem*, const _Locinfo::_Cvtvec&) { $LN7: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec 58 01 00 00 sub rsp, 344 ; 00000158H 00018 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__76D543F7_xlocale 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 523 : // convert C string to _Elem sequence using _Cvtvec ; 524 : size_t _Count = _CSTD strlen(_Ptr) + 1; 00029 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 00030 e8 00 00 00 00 call strlen 00035 48 ff c0 inc rax 00038 48 89 45 08 mov QWORD PTR _Count$[rbp], rax ; 525 : ; 526 : _Elem* _Ptrdest = static_cast<_Elem*>(_calloc_dbg(_Count, sizeof(_Elem), _CRT_BLOCK, __FILE__, __LINE__)); 0003c c7 44 24 20 0e 02 00 00 mov DWORD PTR [rsp+32], 526 ; 0000020eH 00044 4c 8d 0d 00 00 00 00 lea r9, OFFSET FLAT:??_C@_0GI@LEPEPCM@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 0004b 41 b8 02 00 00 00 mov r8d, 2 00051 ba 01 00 00 00 mov edx, 1 00056 48 8b 4d 08 mov rcx, QWORD PTR _Count$[rbp] 0005a ff 15 00 00 00 00 call QWORD PTR __imp__calloc_dbg 00060 48 89 45 28 mov QWORD PTR _Ptrdest$[rbp], rax ; 527 : ; 528 : if (!_Ptrdest) { 00064 48 83 7d 28 00 cmp QWORD PTR _Ptrdest$[rbp], 0 00069 75 05 jne SHORT $LN5@Maklocstr ; 529 : _Xbad_alloc(); 0006b e8 00 00 00 00 call ?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc $LN5@Maklocstr: ; 530 : } ; 531 : ; 532 : for (_Elem* _Ptrnext = _Ptrdest; 0 < _Count; --_Count, ++_Ptrnext, ++_Ptr) { 00070 48 8b 45 28 mov rax, QWORD PTR _Ptrdest$[rbp] 00074 48 89 45 48 mov QWORD PTR _Ptrnext$1[rbp], rax 00078 eb 27 jmp SHORT $LN4@Maklocstr $LN2@Maklocstr: 0007a 48 8b 45 08 mov rax, QWORD PTR _Count$[rbp] 0007e 48 ff c8 dec rax 00081 48 89 45 08 mov QWORD PTR _Count$[rbp], rax 00085 48 8b 45 48 mov rax, QWORD PTR _Ptrnext$1[rbp] 00089 48 ff c0 inc rax 0008c 48 89 45 48 mov QWORD PTR _Ptrnext$1[rbp], rax 00090 48 8b 85 40 01 00 00 mov rax, QWORD PTR _Ptr$[rbp] 00097 48 ff c0 inc rax 0009a 48 89 85 40 01 00 00 mov QWORD PTR _Ptr$[rbp], rax $LN4@Maklocstr: 000a1 48 83 7d 08 00 cmp QWORD PTR _Count$[rbp], 0 000a6 76 12 jbe SHORT $LN3@Maklocstr ; 533 : *_Ptrnext = static_cast<_Elem>(static_cast(*_Ptr)); 000a8 48 8b 45 48 mov rax, QWORD PTR _Ptrnext$1[rbp] 000ac 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 000b3 0f b6 09 movzx ecx, BYTE PTR [rcx] 000b6 88 08 mov BYTE PTR [rax], cl ; 534 : } 000b8 eb c0 jmp SHORT $LN2@Maklocstr $LN3@Maklocstr: ; 535 : ; 536 : return _Ptrdest; 000ba 48 8b 45 28 mov rax, QWORD PTR _Ptrdest$[rbp] $LN6@Maklocstr: ; 537 : } 000be 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 000c5 5f pop rdi 000c6 5d pop rbp 000c7 c3 ret 0 ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ENDP ; std::_Maklocstr _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xlocnum ; COMDAT ?_Maklocwcs@std@@YAPEA_WPEB_W@Z _TEXT SEGMENT _Count$ = 8 _Ptrdest$ = 40 _Ptr$ = 288 ?_Maklocwcs@std@@YAPEA_WPEB_W@Z PROC ; std::_Maklocwcs, COMDAT ; 90 : inline wchar_t* _Maklocwcs(const wchar_t* _Ptr) { // copy NTWCS to allocated storage $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 38 01 00 00 sub rsp, 312 ; 00000138H 0000e 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__E85225E0_xlocnum 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 91 : const size_t _Count = _CSTD wcslen(_Ptr) + 1; 0001f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 00026 ff 15 00 00 00 00 call QWORD PTR __imp_wcslen 0002c 48 ff c0 inc rax 0002f 48 89 45 08 mov QWORD PTR _Count$[rbp], rax ; 92 : ; 93 : wchar_t* _Ptrdest = static_cast(_calloc_dbg(_Count, sizeof(wchar_t), _CRT_BLOCK, __FILE__, __LINE__)); 00033 8b 05 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??_Maklocwcs@std@@YAPEA_WPEB_W@Z@4JA 00039 83 c0 03 add eax, 3 0003c 89 44 24 20 mov DWORD PTR [rsp+32], eax 00040 4c 8d 0d 00 00 00 00 lea r9, OFFSET FLAT:??_C@_0GI@IIACENIN@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 00047 41 b8 02 00 00 00 mov r8d, 2 0004d ba 02 00 00 00 mov edx, 2 00052 48 8b 4d 08 mov rcx, QWORD PTR _Count$[rbp] 00056 ff 15 00 00 00 00 call QWORD PTR __imp__calloc_dbg 0005c 48 89 45 28 mov QWORD PTR _Ptrdest$[rbp], rax ; 94 : ; 95 : if (!_Ptrdest) { 00060 48 83 7d 28 00 cmp QWORD PTR _Ptrdest$[rbp], 0 00065 75 05 jne SHORT $LN2@Maklocwcs ; 96 : _Xbad_alloc(); 00067 e8 00 00 00 00 call ?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc $LN2@Maklocwcs: ; 97 : } ; 98 : ; 99 : _CSTD wmemcpy(_Ptrdest, _Ptr, _Count); 0006c 4c 8b 45 08 mov r8, QWORD PTR _Count$[rbp] 00070 48 8b 95 20 01 00 00 mov rdx, QWORD PTR _Ptr$[rbp] 00077 48 8b 4d 28 mov rcx, QWORD PTR _Ptrdest$[rbp] 0007b e8 00 00 00 00 call wmemcpy ; 100 : return _Ptrdest; 00080 48 8b 45 28 mov rax, QWORD PTR _Ptrdest$[rbp] $LN3@Maklocwcs: ; 101 : } 00084 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 0008b 5f pop rdi 0008c 5d pop rbp 0008d c3 ret 0 ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ENDP ; std::_Maklocwcs _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xlocale ; COMDAT ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z _TEXT SEGMENT _Count$ = 8 _Count1$ = 40 _Wchars$ = 72 _Ptr1$ = 104 _Bytes$ = 132 _Wc$ = 164 _Mbst1$ = 200 _Ptrdest$ = 232 _Ptrnext$ = 264 _Mbst2$ = 296 __$ArrayPad$ = 504 _Ptr$ = 544 __formal$ = 552 _Cvt$ = 560 ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z PROC ; std::_Maklocstr, COMDAT ; 540 : inline wchar_t* __CRTDECL _Maklocstr(const char* _Ptr, wchar_t*, const _Locinfo::_Cvtvec& _Cvt) { $LN12: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec 38 02 00 00 sub rsp, 568 ; 00000238H 00018 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 0001d 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48] 00022 b9 52 00 00 00 mov ecx, 82 ; 00000052H 00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002c f3 ab rep stosd 0002e 48 8b 8c 24 58 02 00 00 mov rcx, QWORD PTR [rsp+600] 00036 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 0003d 48 33 c5 xor rax, rbp 00040 48 89 85 f8 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00047 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__76D543F7_xlocale 0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 541 : // convert C string to wchar_t sequence using _Cvtvec ; 542 : size_t _Count; ; 543 : size_t _Count1; ; 544 : size_t _Wchars; ; 545 : const char* _Ptr1; ; 546 : int _Bytes; ; 547 : wchar_t _Wc; ; 548 : mbstate_t _Mbst1 = {}; 00053 48 8d 85 c8 00 00 00 lea rax, QWORD PTR _Mbst1$[rbp] 0005a 48 8b f8 mov rdi, rax 0005d 33 c0 xor eax, eax 0005f b9 08 00 00 00 mov ecx, 8 00064 f3 aa rep stosb ; 549 : ; 550 : _Count1 = _CSTD strlen(_Ptr) + 1; 00066 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 0006d e8 00 00 00 00 call strlen 00072 48 ff c0 inc rax 00075 48 89 45 28 mov QWORD PTR _Count1$[rbp], rax ; 551 : for (_Count = _Count1, _Wchars = 0, _Ptr1 = _Ptr; 0 < _Count; _Count -= _Bytes, _Ptr1 += _Bytes, ++_Wchars) { 00079 48 8b 45 28 mov rax, QWORD PTR _Count1$[rbp] 0007d 48 89 45 08 mov QWORD PTR _Count$[rbp], rax 00081 48 c7 45 48 00 00 00 00 mov QWORD PTR _Wchars$[rbp], 0 00089 48 8b 85 20 02 00 00 mov rax, QWORD PTR _Ptr$[rbp] 00090 48 89 45 68 mov QWORD PTR _Ptr1$[rbp], rax 00094 eb 35 jmp SHORT $LN4@Maklocstr $LN2@Maklocstr: 00096 48 63 85 84 00 00 00 movsxd rax, DWORD PTR _Bytes$[rbp] 0009d 48 8b 4d 08 mov rcx, QWORD PTR _Count$[rbp] 000a1 48 2b c8 sub rcx, rax 000a4 48 8b c1 mov rax, rcx 000a7 48 89 45 08 mov QWORD PTR _Count$[rbp], rax 000ab 48 63 85 84 00 00 00 movsxd rax, DWORD PTR _Bytes$[rbp] 000b2 48 8b 4d 68 mov rcx, QWORD PTR _Ptr1$[rbp] 000b6 48 03 c8 add rcx, rax 000b9 48 8b c1 mov rax, rcx 000bc 48 89 45 68 mov QWORD PTR _Ptr1$[rbp], rax 000c0 48 8b 45 48 mov rax, QWORD PTR _Wchars$[rbp] 000c4 48 ff c0 inc rax 000c7 48 89 45 48 mov QWORD PTR _Wchars$[rbp], rax $LN4@Maklocstr: 000cb 48 83 7d 08 00 cmp QWORD PTR _Count$[rbp], 0 000d0 76 3a jbe SHORT $LN3@Maklocstr ; 552 : if ((_Bytes = _Mbrtowc(&_Wc, _Ptr1, _Count, &_Mbst1, &_Cvt)) <= 0) { 000d2 48 8b 85 30 02 00 00 mov rax, QWORD PTR _Cvt$[rbp] 000d9 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 000de 4c 8d 8d c8 00 00 00 lea r9, QWORD PTR _Mbst1$[rbp] 000e5 4c 8b 45 08 mov r8, QWORD PTR _Count$[rbp] 000e9 48 8b 55 68 mov rdx, QWORD PTR _Ptr1$[rbp] 000ed 48 8d 8d a4 00 00 00 lea rcx, QWORD PTR _Wc$[rbp] 000f4 e8 00 00 00 00 call _Mbrtowc 000f9 89 85 84 00 00 00 mov DWORD PTR _Bytes$[rbp], eax 000ff 83 bd 84 00 00 00 00 cmp DWORD PTR _Bytes$[rbp], 0 00106 7f 02 jg SHORT $LN8@Maklocstr ; 553 : break; 00108 eb 02 jmp SHORT $LN3@Maklocstr $LN8@Maklocstr: ; 554 : } ; 555 : } 0010a eb 8a jmp SHORT $LN2@Maklocstr $LN3@Maklocstr: ; 556 : ; 557 : ++_Wchars; // count terminating nul 0010c 48 8b 45 48 mov rax, QWORD PTR _Wchars$[rbp] 00110 48 ff c0 inc rax 00113 48 89 45 48 mov QWORD PTR _Wchars$[rbp], rax ; 558 : ; 559 : wchar_t* _Ptrdest = static_cast(_calloc_dbg(_Wchars, sizeof(wchar_t), _CRT_BLOCK, __FILE__, __LINE__)); 00117 c7 44 24 20 2f 02 00 00 mov DWORD PTR [rsp+32], 559 ; 0000022fH 0011f 4c 8d 0d 00 00 00 00 lea r9, OFFSET FLAT:??_C@_0GI@LEPEPCM@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 00126 41 b8 02 00 00 00 mov r8d, 2 0012c ba 02 00 00 00 mov edx, 2 00131 48 8b 4d 48 mov rcx, QWORD PTR _Wchars$[rbp] 00135 ff 15 00 00 00 00 call QWORD PTR __imp__calloc_dbg 0013b 48 89 85 e8 00 00 00 mov QWORD PTR _Ptrdest$[rbp], rax ; 560 : ; 561 : if (!_Ptrdest) { 00142 48 83 bd e8 00 00 00 00 cmp QWORD PTR _Ptrdest$[rbp], 0 0014a 75 05 jne SHORT $LN9@Maklocstr ; 562 : _Xbad_alloc(); 0014c e8 00 00 00 00 call ?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc $LN9@Maklocstr: ; 563 : } ; 564 : ; 565 : wchar_t* _Ptrnext = _Ptrdest; 00151 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Ptrdest$[rbp] 00158 48 89 85 08 01 00 00 mov QWORD PTR _Ptrnext$[rbp], rax ; 566 : mbstate_t _Mbst2 = {}; 0015f 48 8d 85 28 01 00 00 lea rax, QWORD PTR _Mbst2$[rbp] 00166 48 8b f8 mov rdi, rax 00169 33 c0 xor eax, eax 0016b b9 08 00 00 00 mov ecx, 8 00170 f3 aa rep stosb ; 567 : ; 568 : for (; 0 < _Wchars; _Count -= _Bytes, _Ptr += _Bytes, --_Wchars, ++_Ptrnext) { 00172 eb 4d jmp SHORT $LN7@Maklocstr $LN5@Maklocstr: 00174 48 63 85 84 00 00 00 movsxd rax, DWORD PTR _Bytes$[rbp] 0017b 48 8b 4d 08 mov rcx, QWORD PTR _Count$[rbp] 0017f 48 2b c8 sub rcx, rax 00182 48 8b c1 mov rax, rcx 00185 48 89 45 08 mov QWORD PTR _Count$[rbp], rax 00189 48 63 85 84 00 00 00 movsxd rax, DWORD PTR _Bytes$[rbp] 00190 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 00197 48 03 c8 add rcx, rax 0019a 48 8b c1 mov rax, rcx 0019d 48 89 85 20 02 00 00 mov QWORD PTR _Ptr$[rbp], rax 001a4 48 8b 45 48 mov rax, QWORD PTR _Wchars$[rbp] 001a8 48 ff c8 dec rax 001ab 48 89 45 48 mov QWORD PTR _Wchars$[rbp], rax 001af 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Ptrnext$[rbp] 001b6 48 83 c0 02 add rax, 2 001ba 48 89 85 08 01 00 00 mov QWORD PTR _Ptrnext$[rbp], rax $LN7@Maklocstr: 001c1 48 83 7d 48 00 cmp QWORD PTR _Wchars$[rbp], 0 001c6 76 40 jbe SHORT $LN6@Maklocstr ; 569 : if ((_Bytes = _Mbrtowc(_Ptrnext, _Ptr, _Count1, &_Mbst2, &_Cvt)) <= 0) { 001c8 48 8b 85 30 02 00 00 mov rax, QWORD PTR _Cvt$[rbp] 001cf 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 001d4 4c 8d 8d 28 01 00 00 lea r9, QWORD PTR _Mbst2$[rbp] 001db 4c 8b 45 28 mov r8, QWORD PTR _Count1$[rbp] 001df 48 8b 95 20 02 00 00 mov rdx, QWORD PTR _Ptr$[rbp] 001e6 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ptrnext$[rbp] 001ed e8 00 00 00 00 call _Mbrtowc 001f2 89 85 84 00 00 00 mov DWORD PTR _Bytes$[rbp], eax 001f8 83 bd 84 00 00 00 00 cmp DWORD PTR _Bytes$[rbp], 0 001ff 7f 02 jg SHORT $LN10@Maklocstr ; 570 : break; 00201 eb 05 jmp SHORT $LN6@Maklocstr $LN10@Maklocstr: ; 571 : } ; 572 : } 00203 e9 6c ff ff ff jmp $LN5@Maklocstr $LN6@Maklocstr: ; 573 : ; 574 : *_Ptrnext = L'\0'; 00208 33 c0 xor eax, eax 0020a 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ptrnext$[rbp] 00211 66 89 01 mov WORD PTR [rcx], ax ; 575 : ; 576 : return _Ptrdest; 00214 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Ptrdest$[rbp] $LN11@Maklocstr: ; 577 : } 0021b 48 8b f8 mov rdi, rax 0021e 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] 00222 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcFrameData 00229 e8 00 00 00 00 call _RTC_CheckStackVars 0022e 48 8b c7 mov rax, rdi 00231 48 8b 8d f8 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00238 48 33 cd xor rcx, rbp 0023b e8 00 00 00 00 call __security_check_cookie 00240 48 8d a5 08 02 00 00 lea rsp, QWORD PTR [rbp+520] 00247 5f pop rdi 00248 5d pop rbp 00249 c3 ret 0 ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ENDP ; std::_Maklocstr _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\time.h ; COMDAT time _TEXT SEGMENT _Time$ = 224 time PROC ; COMDAT ; 521 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__A0B61CF9_time@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 522 : return _time64(_Time); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Time$[rbp] 00026 ff 15 00 00 00 00 call QWORD PTR __imp__time64 ; 523 : } 0002c 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00033 5f pop rdi 00034 5d pop rbp 00035 c3 ret 0 time ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ _TEXT SEGMENT _Lock$ = 4 __$ArrayPad$ = 216 this$ = 256 ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ PROC ; std::_Container_base12::_Orphan_all_locked, COMDAT ; 1095 : void _Orphan_all_locked() noexcept { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00018 b9 0a 00 00 00 mov ecx, 10 0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00022 f3 ab rep stosd 00024 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR [rsp+296] 0002c 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00033 48 33 c5 xor rax, rbp 00036 48 89 85 d8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1096 : _Lockit _Lock(_LOCK_DEBUG); 00049 ba 03 00 00 00 mov edx, 3 0004e 48 8d 4d 04 lea rcx, QWORD PTR _Lock$[rbp] 00052 ff 15 00 00 00 00 call QWORD PTR __imp_??0_Lockit@std@@QEAA@H@Z ; 1097 : _Orphan_all_unlocked(); 00058 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0005f e8 00 00 00 00 call ?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ ; std::_Container_base12::_Orphan_all_unlocked ; 1098 : } 00064 48 8d 4d 04 lea rcx, QWORD PTR _Lock$[rbp] 00068 ff 15 00 00 00 00 call QWORD PTR __imp_??1_Lockit@std@@QEAA@XZ 0006e 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 00072 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ$rtcFrameData 00079 e8 00 00 00 00 call _RTC_CheckStackVars 0007e 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00085 48 33 cd xor rcx, rbp 00088 e8 00 00 00 00 call __security_check_cookie 0008d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00094 5f pop rdi 00095 5d pop rbp 00096 c3 ret 0 ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ ENDP ; std::_Container_base12::_Orphan_all_locked _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ _TEXT SEGMENT _Pnext$1 = 8 this$ = 256 ?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ PROC ; std::_Container_base12::_Orphan_all_unlocked, COMDAT ; 1220 : _CONSTEXPR20_CONTAINER void _Container_base12::_Orphan_all_unlocked() noexcept { $LN6: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1221 : for (auto& _Pnext = _Myproxy->_Myfirstiter; _Pnext; _Pnext = _Pnext->_Mynextiter) { // TRANSITION, VSO-1269037 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8b 00 mov rax, QWORD PTR [rax] 00029 48 83 c0 08 add rax, 8 0002d 48 89 45 08 mov QWORD PTR _Pnext$1[rbp], rax 00031 eb 12 jmp SHORT $LN4@Orphan_all $LN2@Orphan_all: 00033 48 8b 45 08 mov rax, QWORD PTR _Pnext$1[rbp] 00037 48 8b 00 mov rax, QWORD PTR [rax] 0003a 48 8b 4d 08 mov rcx, QWORD PTR _Pnext$1[rbp] 0003e 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00042 48 89 01 mov QWORD PTR [rcx], rax $LN4@Orphan_all: 00045 48 8b 45 08 mov rax, QWORD PTR _Pnext$1[rbp] 00049 48 83 38 00 cmp QWORD PTR [rax], 0 0004d 74 10 je SHORT $LN3@Orphan_all ; 1222 : _Pnext->_Myproxy = nullptr; 0004f 48 8b 45 08 mov rax, QWORD PTR _Pnext$1[rbp] 00053 48 8b 00 mov rax, QWORD PTR [rax] 00056 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1223 : } 0005d eb d4 jmp SHORT $LN2@Orphan_all $LN3@Orphan_all: ; 1224 : _Myproxy->_Myfirstiter = nullptr; 0005f 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00066 48 8b 00 mov rax, QWORD PTR [rax] 00069 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 ; 1225 : } 00071 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00078 5f pop rdi 00079 5d pop rbp 0007a c3 ret 0 ?_Orphan_all_unlocked@_Container_base12@std@@AEAAXXZ ENDP ; std::_Container_base12::_Orphan_all_unlocked _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?_Orphan_all@_Container_base12@std@@QEAAXXZ _TEXT SEGMENT this$ = 224 ?_Orphan_all@_Container_base12@std@@QEAAXXZ PROC ; std::_Container_base12::_Orphan_all, COMDAT ; 1227 : _CONSTEXPR20_CONTAINER void _Container_base12::_Orphan_all() noexcept { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1228 : #if _ITERATOR_DEBUG_LEVEL == 2 ; 1229 : if (_Myproxy) { // proxy allocated, drain it 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 83 38 00 cmp QWORD PTR [rax], 0 0002a 74 0c je SHORT $LN2@Orphan_all ; 1230 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1231 : if (_STD is_constant_evaluated()) { ; 1232 : _Orphan_all_unlocked(); ; 1233 : } else ; 1234 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1235 : { ; 1236 : _Orphan_all_locked(); 0002c 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00033 e8 00 00 00 00 call ?_Orphan_all_locked@_Container_base12@std@@AEAAXXZ ; std::_Container_base12::_Orphan_all_locked $LN2@Orphan_all: ; 1237 : } ; 1238 : } ; 1239 : #endif // _ITERATOR_DEBUG_LEVEL == 2 ; 1240 : } 00038 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0003f 5f pop rdi 00040 5d pop rbp 00041 c3 ret 0 ?_Orphan_all@_Container_base12@std@@QEAAXXZ ENDP ; std::_Container_base12::_Orphan_all _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z _TEXT SEGMENT _Ptr_user$ = 8 _Ptr_container$ = 40 _Min_back_shift$ = 72 _Back_shift$ = 104 _Ptr$ = 352 _Bytes$ = 360 ?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z PROC ; std::_Adjust_manually_vector_aligned, COMDAT ; 153 : inline void _Adjust_manually_vector_aligned(void*& _Ptr, size_t& _Bytes) { $LN21: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec 78 01 00 00 sub rsp, 376 ; 00000178H 00013 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 154 : // adjust parameters from _Allocate_manually_vector_aligned to pass to operator delete ; 155 : _Bytes += _Non_user_size; 00024 48 8b 85 68 01 00 00 mov rax, QWORD PTR _Bytes$[rbp] 0002b 48 8b 00 mov rax, QWORD PTR [rax] 0002e 48 83 c0 2f add rax, 47 ; 0000002fH 00032 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR _Bytes$[rbp] 00039 48 89 01 mov QWORD PTR [rcx], rax ; 156 : ; 157 : const uintptr_t* const _Ptr_user = reinterpret_cast(_Ptr); 0003c 48 8b 85 60 01 00 00 mov rax, QWORD PTR _Ptr$[rbp] 00043 48 8b 00 mov rax, QWORD PTR [rax] 00046 48 89 45 08 mov QWORD PTR _Ptr_user$[rbp], rax ; 158 : const uintptr_t _Ptr_container = _Ptr_user[-1]; 0004a b8 08 00 00 00 mov eax, 8 0004f 48 6b c0 ff imul rax, rax, -1 00053 48 8b 4d 08 mov rcx, QWORD PTR _Ptr_user$[rbp] 00057 48 8b 04 01 mov rax, QWORD PTR [rcx+rax] 0005b 48 89 45 28 mov QWORD PTR _Ptr_container$[rbp], rax $LN4@Adjust_man: ; 159 : ; 160 : // If the following asserts, it likely means that we are performing ; 161 : // an aligned delete on memory coming from an unaligned allocation. ; 162 : _STL_ASSERT(_Ptr_user[-2] == _Big_allocation_sentinel, "invalid argument"); 0005f b8 08 00 00 00 mov eax, 8 00064 48 6b c0 fe imul rax, rax, -2 00068 48 8b 4d 08 mov rcx, QWORD PTR _Ptr_user$[rbp] 0006c 48 ba fa fa fa fa fa fa fa fa mov rdx, -361700864190383366 ; fafafafafafafafaH 00076 48 39 14 01 cmp QWORD PTR [rcx+rax], rdx 0007a 75 02 jne SHORT $LN14@Adjust_man 0007c eb 77 jmp SHORT $LN15@Adjust_man $LN14@Adjust_man: $LN7@Adjust_man: 0007e 8b 05 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA 00084 83 c0 09 add eax, 9 00087 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BB@FCMFBGOM@invalid?5argument@ 0008e 48 89 4c 24 28 mov QWORD PTR [rsp+40], rcx 00093 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 0009a 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx 0009f 45 33 c9 xor r9d, r9d 000a2 44 8b c0 mov r8d, eax 000a5 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 000ac b9 02 00 00 00 mov ecx, 2 000b1 ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 000b7 83 f8 01 cmp eax, 1 000ba 75 03 jne SHORT $LN19@Adjust_man 000bc cc int 3 000bd 33 c0 xor eax, eax $LN19@Adjust_man: 000bf 8b 05 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA 000c5 83 c0 09 add eax, 9 000c8 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 000d1 44 8b c8 mov r9d, eax 000d4 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:??_C@_1NA@FOAKNOEL@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ 000db 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1EK@NIFDJFDG@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAd?$AAj?$AAu?$AAs?$AAt?$AA_?$AAm?$AAa@ 000e2 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1CG@JNLFBNGN@?$AA?$CC?$AAi?$AAn?$AAv?$AAa?$AAl?$AAi?$AAd?$AA?5?$AAa?$AAr?$AAg?$AAu?$AAm?$AAe@ 000e9 ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 000ef 33 c0 xor eax, eax 000f1 85 c0 test eax, eax 000f3 75 89 jne SHORT $LN7@Adjust_man $LN15@Adjust_man: 000f5 33 c0 xor eax, eax 000f7 85 c0 test eax, eax 000f9 0f 85 60 ff ff ff jne $LN4@Adjust_man ; 163 : ; 164 : // Extra paranoia on aligned allocation/deallocation; ensure _Ptr_container is ; 165 : // in range [_Min_back_shift, _Non_user_size] ; 166 : #ifdef _DEBUG ; 167 : constexpr uintptr_t _Min_back_shift = 2 * sizeof(void*); 000ff 48 c7 45 48 10 00 00 00 mov QWORD PTR _Min_back_shift$[rbp], 16 ; 168 : #else // ^^^ _DEBUG ^^^ // vvv !_DEBUG vvv ; 169 : constexpr uintptr_t _Min_back_shift = sizeof(void*); ; 170 : #endif // _DEBUG ; 171 : const uintptr_t _Back_shift = reinterpret_cast(_Ptr) - _Ptr_container; 00107 48 8b 85 60 01 00 00 mov rax, QWORD PTR _Ptr$[rbp] 0010e 48 8b 4d 28 mov rcx, QWORD PTR _Ptr_container$[rbp] 00112 48 8b 00 mov rax, QWORD PTR [rax] 00115 48 2b c1 sub rax, rcx 00118 48 89 45 68 mov QWORD PTR _Back_shift$[rbp], rax $LN10@Adjust_man: ; 172 : _STL_VERIFY(_Back_shift >= _Min_back_shift && _Back_shift <= _Non_user_size, "invalid argument"); 0011c 48 83 7d 68 10 cmp QWORD PTR _Back_shift$[rbp], 16 00121 72 09 jb SHORT $LN16@Adjust_man 00123 48 83 7d 68 2f cmp QWORD PTR _Back_shift$[rbp], 47 ; 0000002fH 00128 77 02 ja SHORT $LN16@Adjust_man 0012a eb 77 jmp SHORT $LN17@Adjust_man $LN16@Adjust_man: $LN13@Adjust_man: 0012c 8b 05 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA 00132 83 c0 13 add eax, 19 00135 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BB@FCMFBGOM@invalid?5argument@ 0013c 48 89 4c 24 28 mov QWORD PTR [rsp+40], rcx 00141 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 00148 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx 0014d 45 33 c9 xor r9d, r9d 00150 44 8b c0 mov r8d, eax 00153 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 0015a b9 02 00 00 00 mov ecx, 2 0015f ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 00165 83 f8 01 cmp eax, 1 00168 75 03 jne SHORT $LN20@Adjust_man 0016a cc int 3 0016b 33 c0 xor eax, eax $LN20@Adjust_man: 0016d 8b 05 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z@4JA 00173 83 c0 13 add eax, 19 00176 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 0017f 44 8b c8 mov r9d, eax 00182 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:??_C@_1NA@FOAKNOEL@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ 00189 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1EK@NIFDJFDG@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAd?$AAj?$AAu?$AAs?$AAt?$AA_?$AAm?$AAa@ 00190 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1CG@JNLFBNGN@?$AA?$CC?$AAi?$AAn?$AAv?$AAa?$AAl?$AAi?$AAd?$AA?5?$AAa?$AAr?$AAg?$AAu?$AAm?$AAe@ 00197 ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 0019d 33 c0 xor eax, eax 0019f 85 c0 test eax, eax 001a1 75 89 jne SHORT $LN13@Adjust_man $LN17@Adjust_man: 001a3 33 c0 xor eax, eax 001a5 85 c0 test eax, eax 001a7 0f 85 6f ff ff ff jne $LN10@Adjust_man ; 173 : _Ptr = reinterpret_cast(_Ptr_container); 001ad 48 8b 85 60 01 00 00 mov rax, QWORD PTR _Ptr$[rbp] 001b4 48 8b 4d 28 mov rcx, QWORD PTR _Ptr_container$[rbp] 001b8 48 89 08 mov QWORD PTR [rax], rcx ; 174 : } 001bb 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] 001c2 5f pop rdi 001c3 5d pop rbp 001c4 c3 ret 0 ?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z ENDP ; std::_Adjust_manually_vector_aligned _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\wchar.h ; COMDAT wmemcpy _TEXT SEGMENT _S1$ = 224 _S2$ = 232 _N$ = 240 wmemcpy PROC ; COMDAT ; 234 : { $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__93DC0B45_wchar@h 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 235 : #pragma warning(suppress: 6386) // Buffer overrun ; 236 : return (wchar_t*)memcpy(_S1, _S2, _N*sizeof(wchar_t)); 00029 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _N$[rbp] 00030 48 d1 e0 shl rax, 1 00033 4c 8b c0 mov r8, rax 00036 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _S2$[rbp] 0003d 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _S1$[rbp] 00044 e8 00 00 00 00 call memcpy ; 237 : } 00049 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00050 5f pop rdi 00051 5d pop rbp 00052 c3 ret 0 wmemcpy ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h ; COMDAT printf _TEXT SEGMENT _Result$ = 4 _ArgList$ = 40 tv77 = 280 tv75 = 288 __$ArrayPad$ = 296 _Format$ = 336 printf PROC ; COMDAT ; 956 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000f 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00014 55 push rbp 00015 57 push rdi 00016 48 81 ec 58 01 00 00 sub rsp, 344 ; 00000158H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00027 b9 1e 00 00 00 mov ecx, 30 0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00031 f3 ab rep stosd 00033 48 8b 8c 24 78 01 00 00 mov rcx, QWORD PTR [rsp+376] 0003b 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00042 48 33 c5 xor rax, rbp 00045 48 89 85 28 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0004c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__6DFAE8B8_stdio@h 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 957 : int _Result; ; 958 : va_list _ArgList; ; 959 : __crt_va_start(_ArgList, _Format); 00058 48 8d 85 58 01 00 00 lea rax, QWORD PTR _Format$[rbp+8] 0005f 48 89 45 28 mov QWORD PTR _ArgList$[rbp], rax ; 960 : _Result = _vfprintf_l(stdout, _Format, NULL, _ArgList); 00063 48 8b 45 28 mov rax, QWORD PTR _ArgList$[rbp] 00067 48 89 85 18 01 00 00 mov QWORD PTR tv77[rbp], rax 0006e b9 01 00 00 00 mov ecx, 1 00073 ff 15 00 00 00 00 call QWORD PTR __imp___acrt_iob_func 00079 48 89 85 20 01 00 00 mov QWORD PTR tv75[rbp], rax 00080 4c 8b 8d 18 01 00 00 mov r9, QWORD PTR tv77[rbp] 00087 45 33 c0 xor r8d, r8d 0008a 48 8b 95 50 01 00 00 mov rdx, QWORD PTR _Format$[rbp] 00091 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR tv75[rbp] 00098 e8 00 00 00 00 call _vfprintf_l 0009d 89 45 04 mov DWORD PTR _Result$[rbp], eax ; 961 : __crt_va_end(_ArgList); 000a0 48 c7 45 28 00 00 00 00 mov QWORD PTR _ArgList$[rbp], 0 ; 962 : return _Result; 000a8 8b 45 04 mov eax, DWORD PTR _Result$[rbp] ; 963 : } 000ab 8b f8 mov edi, eax 000ad 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 000b1 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:printf$rtcFrameData 000b8 e8 00 00 00 00 call _RTC_CheckStackVars 000bd 8b c7 mov eax, edi 000bf 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 000c6 48 33 cd xor rcx, rbp 000c9 e8 00 00 00 00 call __security_check_cookie 000ce 48 8d a5 38 01 00 00 lea rsp, QWORD PTR [rbp+312] 000d5 5f pop rdi 000d6 5d pop rbp 000d7 c3 ret 0 printf ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h ; COMDAT _vfprintf_l _TEXT SEGMENT _Stream$ = 224 _Format$ = 232 _Locale$ = 240 _ArgList$ = 248 _vfprintf_l PROC ; COMDAT ; 644 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 55 push rbp 00015 57 push rdi 00016 48 81 ec f8 00 00 00 sub rsp, 248 ; 000000f8H 0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__6DFAE8B8_stdio@h 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 645 : return __stdio_common_vfprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Stream, _Format, _Locale, _ArgList); 0002e e8 00 00 00 00 call __local_stdio_printf_options 00033 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _ArgList$[rbp] 0003a 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx 0003f 4c 8b 8d f0 00 00 00 mov r9, QWORD PTR _Locale$[rbp] 00046 4c 8b 85 e8 00 00 00 mov r8, QWORD PTR _Format$[rbp] 0004d 48 8b 95 e0 00 00 00 mov rdx, QWORD PTR _Stream$[rbp] 00054 48 8b 08 mov rcx, QWORD PTR [rax] 00057 ff 15 00 00 00 00 call QWORD PTR __imp___stdio_common_vfprintf ; 646 : } 0005d 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00064 5f pop rdi 00065 5d pop rbp 00066 c3 ret 0 _vfprintf_l ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_stdio_config.h ; COMDAT __local_stdio_printf_options _TEXT SEGMENT __local_stdio_printf_options PROC ; COMDAT ; 90 : { $LN3: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__A2143F22_corecrt_stdio_config@h 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 91 : static unsigned __int64 _OptionsStorage; ; 92 : return &_OptionsStorage; 0001b 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage ; 93 : } 00022 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 __local_stdio_printf_options ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\Main.cpp ; COMDAT ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z _TEXT SEGMENT __formal$ = 224 __formal$ = 232 __formal$ = 240 ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT $LN3: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__386EB99F_Main@cpp 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00029 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00030 5f pop rdi 00031 5d pop rbp 00032 c3 ret 0 ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ENDP ; __empty_global_delete _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\Main.cpp ; COMDAT ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z _TEXT SEGMENT __formal$ = 224 __formal$ = 232 ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__386EB99F_Main@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00024 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002b 5f pop rdi 0002c 5d pop rbp 0002d c3 ret 0 ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ENDP ; __empty_global_delete _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\Main.cpp ; COMDAT ?__empty_global_delete@@YAXPEAX_K@Z _TEXT SEGMENT __formal$ = 224 __formal$ = 232 ?__empty_global_delete@@YAXPEAX_K@Z PROC ; __empty_global_delete, COMDAT $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__386EB99F_Main@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00024 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002b 5f pop rdi 0002c 5d pop rbp 0002d c3 ret 0 ?__empty_global_delete@@YAXPEAX_K@Z ENDP ; __empty_global_delete _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\Main.cpp ; COMDAT ?__empty_global_delete@@YAXPEAX@Z _TEXT SEGMENT __formal$ = 224 ?__empty_global_delete@@YAXPEAX@Z PROC ; __empty_global_delete, COMDAT $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__386EB99F_Main@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode 0001f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00026 5f pop rdi 00027 5d pop rbp 00028 c3 ret 0 ?__empty_global_delete@@YAXPEAX@Z ENDP ; __empty_global_delete _TEXT ENDS END