; Listing generated by Microsoft (R) Optimizing Compiler Version 19.29.30038.1 include listing.inc INCLUDELIB MSVCRTD INCLUDELIB OLDNAMES 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 __02E23235_vcruntime_new@h DB 01H __A2143F22_corecrt_stdio_config@h DB 01H __829E1958_corecrt_wstdio@h DB 01H __6DFAE8B8_stdio@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 __092B7E84_vector DB 01H __337731E1_NativeCode@cpp 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 __FAD76A5B_iomanip DB 01H __83FB8DDC_xatomic@h DB 01H msvcjmc 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 ??2@YAPEAX_KPEAX@Z ; operator new PUBLIC __local_stdio_printf_options PUBLIC _vfprintf_l PUBLIC printf PUBLIC wmemcpy PUBLIC ?max@?$numeric_limits@_J@std@@SA_JXZ ; std::numeric_limits<__int64>::max PUBLIC ??0exception@std@@QEAA@QEBDH@Z ; std::exception::exception PUBLIC ??0exception@std@@QEAA@AEBV01@@Z ; std::exception::exception PUBLIC ??1exception@std@@UEAA@XZ ; std::exception::~exception PUBLIC ?what@exception@std@@UEBAPEBDXZ ; std::exception::what PUBLIC ??_Gexception@std@@UEAAPEAXI@Z ; std::exception::`scalar deleting destructor' PUBLIC ??0bad_alloc@std@@AEAA@QEBD@Z ; std::bad_alloc::bad_alloc PUBLIC ??1bad_alloc@std@@UEAA@XZ ; std::bad_alloc::~bad_alloc PUBLIC ??0bad_alloc@std@@QEAA@AEBV01@@Z ; std::bad_alloc::bad_alloc PUBLIC ??_Gbad_alloc@std@@UEAAPEAXI@Z ; std::bad_alloc::`scalar deleting destructor' PUBLIC ??0bad_array_new_length@std@@QEAA@XZ ; std::bad_array_new_length::bad_array_new_length PUBLIC ??1bad_array_new_length@std@@UEAA@XZ ; std::bad_array_new_length::~bad_array_new_length PUBLIC ??0bad_array_new_length@std@@QEAA@AEBV01@@Z ; std::bad_array_new_length::bad_array_new_length PUBLIC ??_Gbad_array_new_length@std@@UEAAPEAXI@Z ; std::bad_array_new_length::`scalar deleting destructor' PUBLIC ?_Throw_bad_array_new_length@std@@YAXXZ ; std::_Throw_bad_array_new_length PUBLIC ?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z ; std::_Default_allocate_traits::_Allocate PUBLIC ?_Adjust_manually_vector_aligned@std@@YAXAEAPEAXAEA_K@Z ; std::_Adjust_manually_vector_aligned PUBLIC ??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z ; std::_Container_proxy::_Container_proxy PUBLIC ??0_Container_base12@std@@QEAA@XZ ; std::_Container_base12::_Container_base12 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 ??0_Iterator_base12@std@@QEAA@XZ ; std::_Iterator_base12::_Iterator_base12 PUBLIC ??0_Iterator_base12@std@@QEAA@AEBU01@@Z ; std::_Iterator_base12::_Iterator_base12 PUBLIC ??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z ; std::_Iterator_base12::operator= PUBLIC ??1_Iterator_base12@std@@QEAA@XZ ; std::_Iterator_base12::~_Iterator_base12 PUBLIC ?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z ; std::_Iterator_base12::_Adopt PUBLIC ?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ ; std::_Iterator_base12::_Orphan_me_v2 PUBLIC ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ ; std::_Iterator_base12::_Getcont PUBLIC ?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z ; std::_Iterator_base12::_Adopt_unlocked PUBLIC ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z ; std::_Iterator_base12::_Adopt_locked PUBLIC ?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ ; std::_Iterator_base12::_Orphan_me_unlocked PUBLIC ?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ ; std::_Iterator_base12::_Orphan_me_locked PUBLIC ??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z ; std::_Construct_in_place PUBLIC ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z ; std::_Narrow_char_traits::eq_int_type PUBLIC ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ ; std::_Narrow_char_traits::eof 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 ?hex@std@@YAAEAVios_base@1@AEAV21@@Z ; std::hex 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 ??0_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK PUBLIC ??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK PUBLIC ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK PUBLIC ??1_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::~_NATIVE_CODE_LINK PUBLIC ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z ; _NATIVE_CODE_LINK::`scalar deleting destructor' PUBLIC ??0?$allocator@K@std@@QEAA@XZ ; std::allocator::allocator PUBLIC ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ; std::allocator::deallocate PUBLIC ?allocate@?$allocator@K@std@@QEAAPEAK_K@Z ; std::allocator::allocate PUBLIC ?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z ; std::_Default_allocator_traits >::max_size PUBLIC ??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ ; std::vector >::vector > PUBLIC ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z ; std::vector >::push_back PUBLIC ?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ ; std::vector >::clear PUBLIC ?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::begin PUBLIC ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::end PUBLIC ?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ ; std::vector >::_Unchecked_begin PUBLIC ?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ ; std::vector >::_Unchecked_end PUBLIC ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::size PUBLIC ?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::max_size PUBLIC ?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::capacity PUBLIC ?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z ; std::vector >::_Umove PUBLIC ?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z ; std::vector >::_Umove_if_noexcept1 PUBLIC ?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z ; std::vector >::_Umove_if_noexcept PUBLIC ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy PUBLIC ?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z ; std::vector >::_Calculate_growth PUBLIC ?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z ; std::vector >::_Change_array PUBLIC ?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ ; std::vector >::_Xlength PUBLIC ?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ; std::vector >::_Orphan_range_unlocked PUBLIC ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ; std::vector >::_Orphan_range_locked PUBLIC ?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ; std::vector >::_Orphan_range PUBLIC ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal PUBLIC ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEBAAEBV?$allocator@K@2@XZ ; std::vector >::_Getal PUBLIC ??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ ; std::_Vector_val >::_Vector_val > 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 ?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEBAAEBV?$allocator@K@2@XZ ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first PUBLIC ??0_NATIVE_CODE_BLOCK@@QEAA@XZ ; _NATIVE_CODE_BLOCK::_NATIVE_CODE_BLOCK PUBLIC ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcAppendToBlock PUBLIC ?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcPrependToBlock PUBLIC ?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z ; NcInsertLinkAfter PUBLIC ?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z ; NcInsertLinkBefore PUBLIC ?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z ; NcUnlink PUBLIC ?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z ; NcCountInstructions PUBLIC ?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ; NcCalcBlockSizeInBytes PUBLIC ?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z ; NcChangeLabelId PUBLIC ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ; NcGenUnusedLabelId PUBLIC ?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z ; NcFixLabelsForBlocks PUBLIC ?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z ; NcInsertBlockAfter PUBLIC ?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z ; NcInsertBlockBefore PUBLIC ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z ; NcCreateLabels PUBLIC ?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z ; NcValidateJmp PUBLIC ?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z ; NcDeepCopyLink PUBLIC ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z ; NcDeepCopyPartialBlock PUBLIC ?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z ; NcDeepCopyBlock PUBLIC ?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z ; NcGetDeltaToLabel PUBLIC ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z ; NcFixRelJmps PUBLIC ?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z ; NcDisassemble PUBLIC ?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z ; NcAssemble PUBLIC ?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcDeleteBlock PUBLIC ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcDebugPrint PUBLIC ?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcPrintBlockCode PUBLIC ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z ; std::_Vector_const_iterator > >::_Vector_const_iterator > > PUBLIC ??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ; std::_Vector_const_iterator > >::operator== PUBLIC ??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ; std::_Vector_const_iterator > >::operator!= PUBLIC ?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z ; std::_Vector_const_iterator > >::_Compat PUBLIC ?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z ; std::_Verify_range PUBLIC ?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z ; std::_Vector_const_iterator > >::_Seek_to PUBLIC ??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ ; std::_Vector_const_iterator > >::~_Vector_const_iterator > > PUBLIC ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z ; std::_Vector_const_iterator > >::_Vector_const_iterator > > PUBLIC ?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ ; std::_Vector_iterator > >::_Unwrapped PUBLIC ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ ; std::_Vector_iterator > >::~_Vector_iterator > > PUBLIC ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z ; std::_Vector_iterator > >::_Vector_iterator > > PUBLIC ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z ; std::_Vector_iterator > >::_Vector_iterator > > PUBLIC ??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z ; std::find > >,unsigned long> PUBLIC ??$log2@H$0A@@@YANH@Z ; log2 PUBLIC ??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z ; std::operator<<,__int64> PUBLIC ??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z ; std::setfill PUBLIC ??0?$_Fillobj@D@std@@QEAA@D@Z ; std::_Fillobj::_Fillobj PUBLIC ??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z ; std::operator<<,char> PUBLIC ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z ; std::operator<< > PUBLIC ??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z ; std::addressof > > PUBLIC ??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z ; std::vector >::emplace_back PUBLIC ??$forward@AEBK@std@@YAAEBKAEBK@Z ; std::forward PUBLIC ??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z ; std::vector >::_Emplace_back_with_unused_capacity PUBLIC ??$_Unfancy@K@std@@YAPEAKPEAK@Z ; std::_Unfancy PUBLIC ??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z ; std::_Default_allocator_traits >::construct PUBLIC ??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z ; std::vector >::_Emplace_reallocate PUBLIC ?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z ; std::allocator::allocate PUBLIC ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z ; std::allocator::allocator PUBLIC ??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z ; std::_Compressed_pair,std::_Vector_val >,1>::_Compressed_pair,std::_Vector_val >,1><> PUBLIC ??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z ; std::_Container_base12::_Alloc_proxy > PUBLIC ??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z ; std::basic_ostream >::_Sentry_base::_Sentry_base PUBLIC ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::_Sentry_base::~_Sentry_base PUBLIC ??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z ; std::basic_ostream >::sentry::sentry PUBLIC ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::sentry::~sentry PUBLIC ??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ ; std::basic_ostream >::sentry::operator bool PUBLIC ??$min@_K@std@@YAAEB_KAEB_K0@Z ; std::min PUBLIC ??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z ; std::_Unfancy PUBLIC ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z ; std::_Destroy_range > PUBLIC ??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z ; std::_Get_size_of_n<16> PUBLIC ??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z ; std::_Allocate<16,std::_Default_allocate_traits,0> PUBLIC ??$_Deallocate@$0BA@$0A@@std@@YAXPEAX_K@Z ; std::_Deallocate<16,0> PUBLIC ??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z ; std::addressof PUBLIC ??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z ; std::_Voidify_iter PUBLIC ??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z ; std::forward PUBLIC ??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z ; std::_Adl_verify_range > >,std::_Vector_iterator > > > PUBLIC ??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z ; std::_Get_unwrapped > > &> PUBLIC ??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z ; std::_Get_unwrapped > > const &> PUBLIC ??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z ; std::_Find_unchecked PUBLIC ??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z ; std::_Seek_wrapped > >,unsigned long *> PUBLIC ??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z ; std::_Voidify_iter PUBLIC ??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z ; std::_Allocate_manually_vector_aligned PUBLIC ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z ; std::_Uninitialized_move > PUBLIC ??$_Get_size_of_n@$03@std@@YA_K_K@Z ; std::_Get_size_of_n<4> PUBLIC ??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z ; std::_Find_unchecked1 PUBLIC ??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z ; std::forward PUBLIC ??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z ; std::_Get_unwrapped PUBLIC ??$move@AEAK@std@@YA$$QEAKAEAK@Z ; std::move PUBLIC ??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z ; std::_Copy_memmove PUBLIC ??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z ; std::_Uninitialized_backout_al >::_Uninitialized_backout_al > PUBLIC ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ ; std::_Uninitialized_backout_al >::~_Uninitialized_backout_al > PUBLIC ?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ ; std::_Uninitialized_backout_al >::_Release PUBLIC ?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z ; std::_Uninitialized_backout_al >::__autoclassinit2 PUBLIC ??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z ; std::_Uninitialized_backout_al >::_Emplace_back PUBLIC ??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z ; std::_Refancy PUBLIC ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z ; std::_To_address PUBLIC ??$forward@K@std@@YA$$QEAKAEAK@Z ; std::forward PUBLIC ??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z ; std::_Default_allocator_traits >::construct PUBLIC __JustMyCode_Default PUBLIC ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage PUBLIC ??_7exception@std@@6B@ ; std::exception::`vftable' PUBLIC ??_C@_0BC@EOODALEL@Unknown?5exception@ ; `string' PUBLIC ??_7bad_alloc@std@@6B@ ; std::bad_alloc::`vftable' PUBLIC ??_7bad_array_new_length@std@@6B@ ; std::bad_array_new_length::`vftable' PUBLIC ??_C@_0BF@KINCDENJ@bad?5array?5new?5length@ ; `string' PUBLIC _TI3?AVbad_array_new_length@std@@ PUBLIC _CTA3?AVbad_array_new_length@std@@ PUBLIC ??_R0?AVbad_array_new_length@std@@@8 ; std::bad_array_new_length `RTTI Type Descriptor' PUBLIC _CT??_R0?AVbad_array_new_length@std@@@8??0bad_array_new_length@std@@QEAA@AEBV01@@Z24 PUBLIC ??_R0?AVbad_alloc@std@@@8 ; std::bad_alloc `RTTI Type Descriptor' PUBLIC _CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QEAA@AEBV01@@Z24 PUBLIC ??_R0?AVexception@std@@@8 ; std::exception `RTTI Type Descriptor' PUBLIC _CT??_R0?AVexception@std@@@8??0exception@std@@QEAA@AEBV01@@Z24 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@_0BJ@LFDBABJJ@ITERATOR?5LIST?5CORRUPTED?$CB@ ; `string' PUBLIC ??_C@_1FG@EMKODCE@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAI?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo?$AAr?$AA_@ ; `string' PUBLIC ??_C@_1DG@PLBPCAEM@?$AA?$CC?$AAI?$AAT?$AAE?$AAR?$AAA?$AAT?$AAO?$AAR?$AA?5?$AAL?$AAI?$AAS?$AAT?$AA?5@ ; `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@_0DF@KKBEBOEB@Failed?5to?5validate?5jump?4?5Type?3?5@ ; `string' PUBLIC ??_C@_0CL@COPJALEP@XedDecode?5failed?5in?5NcDeepCopyL@ ; `string' PUBLIC ??_C@_0CA@KDIENFLL@XedDecode?5failed?5with?5error?5?$CFs?6@ ; `string' PUBLIC ??_C@_0L@ILJOJNOL@Label?3?5?$CFu?6@ ; `string' PUBLIC ??_C@_07KNNCJAOA@?$CFs?3?5?$CFu?6@ ; `string' PUBLIC ??_C@_03OFAPEBGM@?$CFs?6@ ; `string' PUBLIC ??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ ; `string' PUBLIC ??_C@_0BO@CAOBBIOC@vector?5iterators?5incompatible@ ; `string' PUBLIC ??_C@_0GH@IJJCCHP@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ ; `string' PUBLIC ??_C@_1MO@MBPFCBOF@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ ; `string' PUBLIC ??_C@_1NC@CDEGKPGM@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAc?$AAt?$AAo?$AAr?$AA_?$AAc?$AAo@ ; `string' PUBLIC ??_C@_1EA@DJDGNIII@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ ; `string' PUBLIC ??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ ; `string' PUBLIC ??_C@_0BA@FOIKENOD@vector?5too?5long@ ; `string' PUBLIC ??_C@_1CG@LJCPDKEJ@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAr?$AAi?$AAf?$AAy?$AA_?$AAr?$AAa@ ; `string' PUBLIC ??_C@_1EO@GFNCMDLA@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAl?$AAl?$AAo?$AAc?$AAa?$AAt?$AAe?$AA_@ ; `string' PUBLIC ??_C@_0DI@PBEELKIF@vector?5iterators?5in?5range?5are?5f@ ; `string' PUBLIC ??_C@_1HE@KBMFDAFB@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ ; `string' PUBLIC ??_C@_0CB@LIAHLBAO@vector?5iterator?5range?5transpose@ ; `string' PUBLIC ??_C@_1EG@ODKBEHFN@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ ; `string' PUBLIC ??_R4exception@std@@6B@ ; std::exception::`RTTI Complete Object Locator' PUBLIC ??_R3exception@std@@8 ; std::exception::`RTTI Class Hierarchy Descriptor' PUBLIC ??_R2exception@std@@8 ; std::exception::`RTTI Base Class Array' PUBLIC ??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)' PUBLIC ??_R4bad_alloc@std@@6B@ ; std::bad_alloc::`RTTI Complete Object Locator' PUBLIC ??_R3bad_alloc@std@@8 ; std::bad_alloc::`RTTI Class Hierarchy Descriptor' PUBLIC ??_R2bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Array' PUBLIC ??_R1A@?0A@EA@bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)' PUBLIC ??_R4bad_array_new_length@std@@6B@ ; std::bad_array_new_length::`RTTI Complete Object Locator' PUBLIC ??_R3bad_array_new_length@std@@8 ; std::bad_array_new_length::`RTTI Class Hierarchy Descriptor' PUBLIC ??_R2bad_array_new_length@std@@8 ; std::bad_array_new_length::`RTTI Base Class Array' PUBLIC ??_R1A@?0A@EA@bad_array_new_length@std@@8 ; std::bad_array_new_length::`RTTI Base Class Descriptor at (0,-1,0,64)' PUBLIC __real@3ff0000000000000 EXTRN ??2@YAPEAX_K@Z:PROC ; operator new EXTRN ??3@YAXPEAX_K@Z:PROC ; operator delete EXTRN ??_U@YAPEAX_K@Z:PROC ; operator new[] EXTRN ??_V@YAXPEAX@Z:PROC ; operator delete[] EXTRN __imp__invalid_parameter:PROC EXTRN memcpy:PROC EXTRN memmove:PROC EXTRN __imp_wcslen:PROC EXTRN strlen:PROC EXTRN __imp_GetStdHandle:PROC EXTRN __imp_SetConsoleTextAttribute:PROC EXTRN __imp_malloc:PROC EXTRN abs:PROC EXTRN __imp_rand: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 __imp___acrt_iob_func:PROC EXTRN __imp___stdio_common_vfprintf:PROC EXTRN __imp_log2:PROC EXTRN ?uncaught_exception@std@@YA_NXZ:PROC ; std::uncaught_exception EXTRN __std_exception_copy:PROC EXTRN __std_exception_destroy:PROC EXTRN ??_Eexception@std@@UEAAPEAXI@Z:PROC ; std::exception::`vector deleting destructor' EXTRN ??_Ebad_alloc@std@@UEAAPEAXI@Z:PROC ; std::bad_alloc::`vector deleting destructor' EXTRN ??_Ebad_array_new_length@std@@UEAAPEAXI@Z:PROC ; std::bad_array_new_length::`vector deleting destructor' EXTRN ?_Xbad_alloc@std@@YAXXZ:PROC ; std::_Xbad_alloc EXTRN ?_Xlength_error@std@@YAXPEBD@Z:PROC ; std::_Xlength_error 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 __imp_?good@ios_base@std@@QEBA_NXZ:PROC EXTRN __imp_?flags@ios_base@std@@QEBAHXZ:PROC EXTRN __imp_?setf@ios_base@std@@QEAAHHH@Z:PROC EXTRN __imp_?width@ios_base@std@@QEBA_JXZ:PROC EXTRN __imp_?width@ios_base@std@@QEAA_J_J@Z:PROC EXTRN __imp_?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z:PROC EXTRN __imp_?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z:PROC EXTRN __imp_?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ:PROC EXTRN __imp_?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ:PROC EXTRN __imp_?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBADXZ:PROC EXTRN __imp_?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAADD@Z:PROC EXTRN __imp_?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ:PROC EXTRN __imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@P6AAEAVios_base@1@AEAV21@@Z@Z:PROC EXTRN __imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@H@Z:PROC EXTRN __imp_?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ:PROC EXTRN ?setw@std@@YA?AU?$_Smanip@_J@1@_J@Z:PROC ; std::setw EXTRN xed_category_enum_t2str:PROC EXTRN xed_iclass_enum_t2str:PROC EXTRN xed_iform_map:PROC EXTRN xed_iform_to_category:PROC EXTRN xed_inst_operand:PROC EXTRN xed_error_enum_t2str:PROC EXTRN xed_decode:PROC EXTRN xed_operand_values_set_mode:PROC EXTRN xed_encoder_request_zero_set_mode:PROC EXTRN xed_encode:PROC EXTRN xed_convert_to_encoder_request:PROC EXTRN xed_decoded_inst_zero_set_mode:PROC EXTRN xed_decoded_inst_zero:PROC EXTRN xed_decoded_inst_get_branch_displacement:PROC EXTRN xed_decoded_inst_get_branch_displacement_width:PROC EXTRN xed_decoded_inst_get_branch_displacement_width_bits:PROC EXTRN _CxxThrowException:PROC 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 ??_7type_info@@6B@:BYTE ; type_info::`vftable' EXTRN __imp_?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A:BYTE EXTRN __security_cookie:QWORD EXTRN _fltused:DWORD ; 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$??2@YAPEAX_KPEAX@Z DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$??2@YAPEAX_KPEAX@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$?max@?$numeric_limits@_J@std@@SA_JXZ DD imagerel $LN3 DD imagerel $LN3+47 DD imagerel $unwind$?max@?$numeric_limits@_J@std@@SA_JXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0exception@std@@QEAA@QEBDH@Z DD imagerel $LN3 DD imagerel $LN3+116 DD imagerel $unwind$??0exception@std@@QEAA@QEBDH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0exception@std@@QEAA@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+123 DD imagerel $unwind$??0exception@std@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1exception@std@@UEAA@XZ DD imagerel $LN3 DD imagerel $LN3+77 DD imagerel $unwind$??1exception@std@@UEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?what@exception@std@@UEBAPEBDXZ DD imagerel $LN5 DD imagerel $LN5+96 DD imagerel $unwind$?what@exception@std@@UEBAPEBDXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??_Gexception@std@@UEAAPEAXI@Z DD imagerel $LN4 DD imagerel $LN4+82 DD imagerel $unwind$??_Gexception@std@@UEAAPEAXI@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0bad_alloc@std@@AEAA@QEBD@Z DD imagerel $LN3 DD imagerel $LN3+95 DD imagerel $unwind$??0bad_alloc@std@@AEAA@QEBD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1bad_alloc@std@@UEAA@XZ DD imagerel $LN3 DD imagerel $LN3+41 DD imagerel $unwind$??1bad_alloc@std@@UEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0bad_alloc@std@@QEAA@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+77 DD imagerel $unwind$??0bad_alloc@std@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??_Gbad_alloc@std@@UEAAPEAXI@Z DD imagerel $LN4 DD imagerel $LN4+82 DD imagerel $unwind$??_Gbad_alloc@std@@UEAAPEAXI@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0bad_array_new_length@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+84 DD imagerel $unwind$??0bad_array_new_length@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1bad_array_new_length@std@@UEAA@XZ DD imagerel $LN3 DD imagerel $LN3+41 DD imagerel $unwind$??1bad_array_new_length@std@@UEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0bad_array_new_length@std@@QEAA@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+77 DD imagerel $unwind$??0bad_array_new_length@std@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??_Gbad_array_new_length@std@@UEAAPEAXI@Z DD imagerel $LN4 DD imagerel $LN4+82 DD imagerel $unwind$??_Gbad_array_new_length@std@@UEAAPEAXI@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Throw_bad_array_new_length@std@@YAXXZ DD imagerel $LN3 DD imagerel $LN3+68 DD imagerel $unwind$?_Throw_bad_array_new_length@std@@YAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z 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$??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z DD imagerel $LN3 DD imagerel $LN3+85 DD imagerel $unwind$??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_Container_base12@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+62 DD imagerel $unwind$??0_Container_base12@std@@QEAA@XZ 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$??0_Iterator_base12@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+77 DD imagerel $unwind$??0_Iterator_base12@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_Iterator_base12@std@@QEAA@AEBU01@@Z DD imagerel $LN3 DD imagerel $LN3+101 DD imagerel $unwind$??0_Iterator_base12@std@@QEAA@AEBU01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z DD imagerel $LN6 DD imagerel $LN6+127 DD imagerel $unwind$??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1_Iterator_base12@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$??1_Iterator_base12@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z DD imagerel $LN6 DD imagerel $LN6+116 DD imagerel $unwind$?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ DD imagerel $LN4 DD imagerel $LN4+66 DD imagerel $unwind$?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ DD imagerel $LN5 DD imagerel $LN5+94 DD imagerel $unwind$?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z DD imagerel $LN4 DD imagerel $LN4+128 DD imagerel $unwind$?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z DD imagerel $LN3 DD imagerel $LN3+163 DD imagerel $unwind$?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ DD imagerel $LN14 DD imagerel $LN14+267 DD imagerel $unwind$?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ DD imagerel $LN3 DD imagerel $LN3+151 DD imagerel $unwind$?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z DD imagerel $LN3 DD imagerel $LN3+127 DD imagerel $unwind$??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z DD imagerel $LN5 DD imagerel $LN5+95 DD imagerel $unwind$?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?eof@?$_Narrow_char_traits@DH@std@@SAHXZ DD imagerel $LN3 DD imagerel $LN3+42 DD imagerel $unwind$?eof@?$_Narrow_char_traits@DH@std@@SAHXZ 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$?hex@std@@YAAEAVios_base@1@AEAV21@@Z DD imagerel $LN3 DD imagerel $LN3+72 DD imagerel $unwind$?hex@std@@YAAEAVios_base@1@AEAV21@@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$xed_iform_to_iclass DD imagerel xed_iform_to_iclass DD imagerel xed_iform_to_iclass+77 DD imagerel $unwind$xed_iform_to_iclass pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_operand_type DD imagerel xed_operand_type DD imagerel xed_operand_type+52 DD imagerel $unwind$xed_operand_type pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_inst_iform_enum DD imagerel xed_inst_iform_enum DD imagerel xed_inst_iform_enum+52 DD imagerel $unwind$xed_inst_iform_enum pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_inst_iclass DD imagerel xed_inst_iclass DD imagerel xed_inst_iclass+60 DD imagerel $unwind$xed_inst_iclass pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_inst_category DD imagerel xed_inst_category DD imagerel xed_inst_category+60 DD imagerel $unwind$xed_inst_category pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_inst_noperands DD imagerel xed_inst_noperands DD imagerel xed_inst_noperands+51 DD imagerel $unwind$xed_inst_noperands pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_relbr DD imagerel xed_relbr DD imagerel xed_relbr+184 DD imagerel $unwind$xed_relbr pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_inst1 DD imagerel xed_inst1 DD imagerel xed_inst1+184 DD imagerel $unwind$xed_inst1 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_decoded_inst_inst DD imagerel xed_decoded_inst_inst DD imagerel xed_decoded_inst_inst+55 DD imagerel $unwind$xed_decoded_inst_inst pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_decoded_inst_get_category DD imagerel xed_decoded_inst_get_category DD imagerel xed_decoded_inst_get_category+66 DD imagerel $unwind$xed_decoded_inst_get_category pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_decoded_inst_get_iclass DD imagerel xed_decoded_inst_get_iclass DD imagerel xed_decoded_inst_get_iclass+66 DD imagerel $unwind$xed_decoded_inst_get_iclass pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_decoded_inst_noperands DD imagerel xed_decoded_inst_noperands DD imagerel xed_decoded_inst_noperands+67 DD imagerel $unwind$xed_decoded_inst_noperands pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_decoded_inst_set_mode DD imagerel xed_decoded_inst_set_mode DD imagerel xed_decoded_inst_set_mode+157 DD imagerel $unwind$xed_decoded_inst_set_mode pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$xed_decoded_inst_get_length DD imagerel xed_decoded_inst_get_length DD imagerel xed_decoded_inst_get_length+55 DD imagerel $unwind$xed_decoded_inst_get_length pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_NATIVE_CODE_LINK@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+198 DD imagerel $unwind$??0_NATIVE_CODE_LINK@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN4 DD imagerel $LN4+117 DD imagerel $unwind$??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z DD imagerel $LN6 DD imagerel $LN6+238 DD imagerel $unwind$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA DD imagerel ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA DD imagerel ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA+39 DD imagerel $unwind$?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1_NATIVE_CODE_LINK@@QEAA@XZ DD imagerel $LN4 DD imagerel $LN4+90 DD imagerel $unwind$??1_NATIVE_CODE_LINK@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z DD imagerel $LN4 DD imagerel $LN4+82 DD imagerel $unwind$??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$allocator@K@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??0?$allocator@K@std@@QEAA@XZ 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$?allocate@?$allocator@K@std@@QEAAPEAK_K@Z DD imagerel $LN3 DD imagerel $LN3+66 DD imagerel $unwind$?allocate@?$allocator@K@std@@QEAAPEAK_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z DD imagerel $LN3 DD imagerel $LN3+51 DD imagerel $unwind$?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+137 DD imagerel $unwind$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z DD imagerel $LN3 DD imagerel $LN3+65 DD imagerel $unwind$?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ DD imagerel $LN3 DD imagerel $LN3+125 DD imagerel $unwind$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ DD imagerel $LN3 DD imagerel $LN3+121 DD imagerel $unwind$?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ DD imagerel $LN3 DD imagerel $LN3+121 DD imagerel $unwind$?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ DD imagerel $LN3 DD imagerel $LN3+52 DD imagerel $unwind$?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ DD imagerel $LN3 DD imagerel $LN3+52 DD imagerel $unwind$?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ DD imagerel $LN3 DD imagerel $LN3+75 DD imagerel $unwind$?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ DD imagerel $LN3 DD imagerel $LN3+102 DD imagerel $unwind$?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ DD imagerel $LN3 DD imagerel $LN3+75 DD imagerel $unwind$?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z DD imagerel $LN3 DD imagerel $LN3+97 DD imagerel $unwind$?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z DD imagerel $LN3 DD imagerel $LN3+97 DD imagerel $unwind$?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z DD imagerel $LN3 DD imagerel $LN3+119 DD imagerel $unwind$?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z 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$?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z DD imagerel $LN5 DD imagerel $LN5+168 DD imagerel $unwind$?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z DD imagerel $LN4 DD imagerel $LN4+299 DD imagerel $unwind$?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ DD imagerel $LN3 DD imagerel $LN3+49 DD imagerel $unwind$?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD imagerel $LN8 DD imagerel $LN8+184 DD imagerel $unwind$?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD imagerel $LN4 DD imagerel $LN4+177 DD imagerel $unwind$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA DD imagerel ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA DD imagerel ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA+37 DD imagerel $unwind$?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD imagerel $LN3 DD imagerel $LN3+77 DD imagerel $unwind$?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z 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$?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEBAAEBV?$allocator@K@2@XZ DD imagerel $LN3 DD imagerel $LN3+56 DD imagerel $unwind$?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEBAAEBV?$allocator@K@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+105 DD imagerel $unwind$??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@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$?_Get_first@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEBAAEBV?$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@@QEBAAEBV?$allocator@K@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_NATIVE_CODE_BLOCK@@QEAA@XZ DD imagerel $LN4 DD imagerel $LN4+115 DD imagerel $unwind$??0_NATIVE_CODE_BLOCK@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z DD imagerel $LN7 DD imagerel $LN7+218 DD imagerel $unwind$?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z DD imagerel $LN7 DD imagerel $LN7+216 DD imagerel $unwind$?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z DD imagerel $LN5 DD imagerel $LN5+145 DD imagerel $unwind$?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z DD imagerel $LN5 DD imagerel $LN5+148 DD imagerel $unwind$?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z DD imagerel $LN6 DD imagerel $LN6+127 DD imagerel $unwind$?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z DD imagerel $LN8 DD imagerel $LN8+187 DD imagerel $unwind$?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN7 DD imagerel $LN7+140 DD imagerel $unwind$?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z DD imagerel $LN8 DD imagerel $LN8+162 DD imagerel $unwind$?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN9 DD imagerel $LN9+491 DD imagerel $unwind$?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z DD imagerel $LN17 DD imagerel $LN17+623 DD imagerel $unwind$?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z DD imagerel $LN10 DD imagerel $LN10+406 DD imagerel $unwind$?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z DD imagerel $LN10 DD imagerel $LN10+389 DD imagerel $unwind$?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN18 DD imagerel $LN18+689 DD imagerel $unwind$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA DD imagerel ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA DD imagerel ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA+44 DD imagerel $unwind$?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z DD imagerel $LN23 DD imagerel $LN23+391 DD imagerel $unwind$?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z DD imagerel $LN14 DD imagerel $LN14+472 DD imagerel $unwind$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DD imagerel ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DD imagerel ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA+44 DD imagerel $unwind$?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DD imagerel ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DD imagerel ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA+44 DD imagerel $unwind$?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN12 DD imagerel $LN12+500 DD imagerel $unwind$?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z DD imagerel $LN3 DD imagerel $LN3+79 DD imagerel $unwind$?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z DD imagerel $LN13 DD imagerel $LN13+277 DD imagerel $unwind$?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN19 DD imagerel $LN19+900 DD imagerel $unwind$?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z DD imagerel $LN13 DD imagerel $LN13+541 DD imagerel $unwind$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA DD imagerel ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA DD imagerel ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA+44 DD imagerel $unwind$?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z DD imagerel $LN9 DD imagerel $LN9+257 DD imagerel $unwind$?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN10 DD imagerel $LN10+201 DD imagerel $unwind$?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN11 DD imagerel $LN11+327 DD imagerel $unwind$?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $LN10 DD imagerel $LN10+338 DD imagerel $unwind$?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z DD imagerel $LN3 DD imagerel $LN3+107 DD imagerel $unwind$??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z DD imagerel $LN5 DD imagerel $LN5+118 DD imagerel $unwind$??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z DD imagerel $LN5 DD imagerel $LN5+101 DD imagerel $unwind$??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z DD imagerel $LN12 DD imagerel $LN12+208 DD imagerel $unwind$?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z DD imagerel $LN21 DD imagerel $LN21+351 DD imagerel $unwind$?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z DD imagerel $LN3 DD imagerel $LN3+69 DD imagerel $unwind$?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+41 DD imagerel $unwind$??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+82 DD imagerel $unwind$??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ DD imagerel $LN3 DD imagerel $LN3+57 DD imagerel $unwind$?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+41 DD imagerel $unwind$??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+60 DD imagerel $unwind$??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z DD imagerel $LN3 DD imagerel $LN3+72 DD imagerel $unwind$??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z DD imagerel $LN7 DD imagerel $LN7+241 DD imagerel $unwind$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DD imagerel ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DD imagerel ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA+39 DD imagerel $unwind$?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DD imagerel ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DD imagerel ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA+39 DD imagerel $unwind$?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$log2@H$0A@@@YANH@Z DD imagerel $LN3 DD imagerel $LN3+54 DD imagerel $unwind$??$log2@H$0A@@@YANH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z DD imagerel $LN3 DD imagerel $LN3+117 DD imagerel $unwind$??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z DD imagerel $LN3 DD imagerel $LN3+71 DD imagerel $unwind$??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Fillobj@D@std@@QEAA@D@Z DD imagerel $LN3 DD imagerel $LN3+68 DD imagerel $unwind$??0?$_Fillobj@D@std@@QEAA@D@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z DD imagerel $LN3 DD imagerel $LN3+110 DD imagerel $unwind$??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DD imagerel $LN23 DD imagerel $LN23+1097 DD imagerel $unwind$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DD imagerel ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DD imagerel ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA+36 DD imagerel $unwind$?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DD imagerel ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DD imagerel ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA+91 DD imagerel $unwind$?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z DD imagerel $LN4 DD imagerel $LN4+182 DD imagerel $unwind$??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$forward@AEBK@std@@YAAEBKAEBK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$forward@AEBK@std@@YAAEBKAEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z DD imagerel $LN3 DD imagerel $LN3+211 DD imagerel $unwind$??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Unfancy@K@std@@YAPEAKPEAK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$_Unfancy@K@std@@YAPEAKPEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z DD imagerel $LN3 DD imagerel $LN3+106 DD imagerel $unwind$??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DD imagerel $LN13 DD imagerel $LN13+593 DD imagerel $unwind$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA DD imagerel ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA DD imagerel ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA+94 DD imagerel $unwind$?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z DD imagerel $LN3 DD imagerel $LN3+66 DD imagerel $unwind$?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z 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$??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z DD imagerel $LN3 DD imagerel $LN3+79 DD imagerel $unwind$??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z DD imagerel $LN3 DD imagerel $LN3+133 DD imagerel $unwind$??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DD imagerel $LN4 DD imagerel $LN4+148 DD imagerel $unwind$??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DD imagerel $LN4 DD imagerel $LN4+120 DD imagerel $unwind$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DD imagerel $LN7 DD imagerel $LN7+261 DD imagerel $unwind$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA DD imagerel ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA DD imagerel ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA+39 DD imagerel $unwind$?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DD imagerel $LN6 DD imagerel $LN6+116 DD imagerel $unwind$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ DD imagerel $LN3 DD imagerel $LN3+52 DD imagerel $unwind$??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$min@_K@std@@YAAEB_KAEB_K0@Z DD imagerel $LN5 DD imagerel $LN5+119 DD imagerel $unwind$??$min@_K@std@@YAAEB_KAEB_K0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@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$??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z DD imagerel $LN4 DD imagerel $LN4+91 DD imagerel $unwind$??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z DD imagerel $LN5 DD imagerel $LN5+94 DD imagerel $unwind$??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@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$??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z DD imagerel $LN3 DD imagerel $LN3+65 DD imagerel $unwind$??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z DD imagerel $LN3 DD imagerel $LN3+104 DD imagerel $unwind$??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z DD imagerel $LN3 DD imagerel $LN3+73 DD imagerel $unwind$??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z DD imagerel $LN13 DD imagerel $LN13+277 DD imagerel $unwind$??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DD imagerel $LN7 DD imagerel $LN7+342 DD imagerel $unwind$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA DD imagerel ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA DD imagerel ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA+36 DD imagerel $unwind$?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Get_size_of_n@$03@std@@YA_K_K@Z DD imagerel $LN4 DD imagerel $LN4+94 DD imagerel $unwind$??$_Get_size_of_n@$03@std@@YA_K_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z DD imagerel $LN7 DD imagerel $LN7+123 DD imagerel $unwind$??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z DD imagerel $LN3 DD imagerel $LN3+51 DD imagerel $unwind$??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$move@AEAK@std@@YA$$QEAKAEAK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$move@AEAK@std@@YA$$QEAKAEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z DD imagerel $LN3 DD imagerel $LN3+196 DD imagerel $unwind$??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z DD imagerel $LN3 DD imagerel $LN3+111 DD imagerel $unwind$??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+78 DD imagerel $unwind$??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ DD imagerel $LN3 DD imagerel $LN3+73 DD imagerel $unwind$?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z DD imagerel $LN3 DD imagerel $LN3+50 DD imagerel $unwind$?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z DD imagerel $LN3 DD imagerel $LN3+158 DD imagerel $unwind$??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z DD imagerel $LN3 DD imagerel $LN3+51 DD imagerel $unwind$??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$forward@K@std@@YA$$QEAKAEAK@Z DD imagerel $LN3 DD imagerel $LN3+48 DD imagerel $unwind$??$forward@K@std@@YA$$QEAKAEAK@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z DD imagerel $LN3 DD imagerel $LN3+106 DD imagerel $unwind$??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z pdata ENDS ; COMDAT __real@3ff0000000000000 CONST SEGMENT __real@3ff0000000000000 DQ 03ff0000000000000r ; 1 CONST 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 ??_R1A@?0A@EA@bad_array_new_length@std@@8 rdata$r SEGMENT ??_R1A@?0A@EA@bad_array_new_length@std@@8 DD imagerel ??_R0?AVbad_array_new_length@std@@@8 ; std::bad_array_new_length::`RTTI Base Class Descriptor at (0,-1,0,64)' DD 02H DD 00H DD 0ffffffffH DD 00H DD 040H DD imagerel ??_R3bad_array_new_length@std@@8 rdata$r ENDS ; COMDAT ??_R2bad_array_new_length@std@@8 rdata$r SEGMENT ??_R2bad_array_new_length@std@@8 DD imagerel ??_R1A@?0A@EA@bad_array_new_length@std@@8 ; std::bad_array_new_length::`RTTI Base Class Array' DD imagerel ??_R1A@?0A@EA@bad_alloc@std@@8 DD imagerel ??_R1A@?0A@EA@exception@std@@8 ORG $+3 rdata$r ENDS ; COMDAT ??_R3bad_array_new_length@std@@8 rdata$r SEGMENT ??_R3bad_array_new_length@std@@8 DD 00H ; std::bad_array_new_length::`RTTI Class Hierarchy Descriptor' DD 00H DD 03H DD imagerel ??_R2bad_array_new_length@std@@8 rdata$r ENDS ; COMDAT ??_R4bad_array_new_length@std@@6B@ rdata$r SEGMENT ??_R4bad_array_new_length@std@@6B@ DD 01H ; std::bad_array_new_length::`RTTI Complete Object Locator' DD 00H DD 00H DD imagerel ??_R0?AVbad_array_new_length@std@@@8 DD imagerel ??_R3bad_array_new_length@std@@8 DD imagerel ??_R4bad_array_new_length@std@@6B@ rdata$r ENDS ; COMDAT ??_R1A@?0A@EA@bad_alloc@std@@8 rdata$r SEGMENT ??_R1A@?0A@EA@bad_alloc@std@@8 DD imagerel ??_R0?AVbad_alloc@std@@@8 ; std::bad_alloc::`RTTI Base Class Descriptor at (0,-1,0,64)' DD 01H DD 00H DD 0ffffffffH DD 00H DD 040H DD imagerel ??_R3bad_alloc@std@@8 rdata$r ENDS ; COMDAT ??_R2bad_alloc@std@@8 rdata$r SEGMENT ??_R2bad_alloc@std@@8 DD imagerel ??_R1A@?0A@EA@bad_alloc@std@@8 ; std::bad_alloc::`RTTI Base Class Array' DD imagerel ??_R1A@?0A@EA@exception@std@@8 ORG $+3 rdata$r ENDS ; COMDAT ??_R3bad_alloc@std@@8 rdata$r SEGMENT ??_R3bad_alloc@std@@8 DD 00H ; std::bad_alloc::`RTTI Class Hierarchy Descriptor' DD 00H DD 02H DD imagerel ??_R2bad_alloc@std@@8 rdata$r ENDS ; COMDAT ??_R4bad_alloc@std@@6B@ rdata$r SEGMENT ??_R4bad_alloc@std@@6B@ DD 01H ; std::bad_alloc::`RTTI Complete Object Locator' DD 00H DD 00H DD imagerel ??_R0?AVbad_alloc@std@@@8 DD imagerel ??_R3bad_alloc@std@@8 DD imagerel ??_R4bad_alloc@std@@6B@ rdata$r ENDS ; COMDAT ??_R1A@?0A@EA@exception@std@@8 rdata$r SEGMENT ??_R1A@?0A@EA@exception@std@@8 DD imagerel ??_R0?AVexception@std@@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)' DD 00H DD 00H DD 0ffffffffH DD 00H DD 040H DD imagerel ??_R3exception@std@@8 rdata$r ENDS ; COMDAT ??_R2exception@std@@8 rdata$r SEGMENT ??_R2exception@std@@8 DD imagerel ??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Array' ORG $+3 rdata$r ENDS ; COMDAT ??_R3exception@std@@8 rdata$r SEGMENT ??_R3exception@std@@8 DD 00H ; std::exception::`RTTI Class Hierarchy Descriptor' DD 00H DD 01H DD imagerel ??_R2exception@std@@8 rdata$r ENDS ; COMDAT ??_R4exception@std@@6B@ rdata$r SEGMENT ??_R4exception@std@@6B@ DD 01H ; std::exception::`RTTI Complete Object Locator' DD 00H DD 00H DD imagerel ??_R0?AVexception@std@@@8 DD imagerel ??_R3exception@std@@8 DD imagerel ??_R4exception@std@@6B@ rdata$r ENDS ; COMDAT ??_C@_1EG@ODKBEHFN@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ CONST SEGMENT ??_C@_1EG@ODKBEHFN@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ DB '"' DB 00H, 'v', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'o', 00H, 'r', 00H DB ' ', 00H, 'i', 00H, 't', 00H, 'e', 00H, 'r', 00H, 'a', 00H, 't' DB 00H, 'o', 00H, 'r', 00H, ' ', 00H, 'r', 00H, 'a', 00H, 'n', 00H DB 'g', 00H, 'e', 00H, ' ', 00H, 't', 00H, 'r', 00H, 'a', 00H, 'n' DB 00H, 's', 00H, 'p', 00H, 'o', 00H, 's', 00H, 'e', 00H, 'd', 00H DB '"', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CB@LIAHLBAO@vector?5iterator?5range?5transpose@ CONST SEGMENT ??_C@_0CB@LIAHLBAO@vector?5iterator?5range?5transpose@ DB 'vector iterato' DB 'r range transposed', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1HE@KBMFDAFB@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ CONST SEGMENT ??_C@_1HE@KBMFDAFB@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ DB '"' DB 00H, 'v', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'o', 00H, 'r', 00H DB ' ', 00H, 'i', 00H, 't', 00H, 'e', 00H, 'r', 00H, 'a', 00H, 't' DB 00H, 'o', 00H, 'r', 00H, 's', 00H, ' ', 00H, 'i', 00H, 'n', 00H DB ' ', 00H, 'r', 00H, 'a', 00H, 'n', 00H, 'g', 00H, 'e', 00H, ' ' DB 00H, 'a', 00H, 'r', 00H, 'e', 00H, ' ', 00H, 'f', 00H, 'r', 00H DB 'o', 00H, 'm', 00H, ' ', 00H, 'd', 00H, 'i', 00H, 'f', 00H, 'f' DB 00H, 'e', 00H, 'r', 00H, 'e', 00H, 'n', 00H, 't', 00H, ' ', 00H DB 'c', 00H, 'o', 00H, 'n', 00H, 't', 00H, 'a', 00H, 'i', 00H, 'n' DB 00H, 'e', 00H, 'r', 00H, 's', 00H, '"', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DI@PBEELKIF@vector?5iterators?5in?5range?5are?5f@ CONST SEGMENT ??_C@_0DI@PBEELKIF@vector?5iterators?5in?5range?5are?5f@ DB 'vector itera' DB 'tors in range are from different containers', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1EO@GFNCMDLA@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAl?$AAl?$AAo?$AAc?$AAa?$AAt?$AAe?$AA_@ CONST SEGMENT ??_C@_1EO@GFNCMDLA@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAl?$AAl?$AAo?$AAc?$AAa?$AAt?$AAe?$AA_@ DB 's' DB 00H, 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_', 00H, 'A', 00H DB 'l', 00H, 'l', 00H, 'o', 00H, 'c', 00H, 'a', 00H, 't', 00H, 'e' DB 00H, '_', 00H, 'm', 00H, 'a', 00H, 'n', 00H, 'u', 00H, 'a', 00H DB 'l', 00H, 'l', 00H, 'y', 00H, '_', 00H, 'v', 00H, 'e', 00H, 'c' DB 00H, 't', 00H, 'o', 00H, 'r', 00H, '_', 00H, 'a', 00H, 'l', 00H DB 'i', 00H, 'g', 00H, 'n', 00H, 'e', 00H, 'd', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1CG@LJCPDKEJ@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAr?$AAi?$AAf?$AAy?$AA_?$AAr?$AAa@ CONST SEGMENT ??_C@_1CG@LJCPDKEJ@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAr?$AAi?$AAf?$AAy?$AA_?$AAr?$AAa@ DB 's' DB 00H, 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_', 00H, 'V', 00H DB 'e', 00H, 'r', 00H, 'i', 00H, 'f', 00H, 'y', 00H, '_', 00H, 'r' DB 00H, 'a', 00H, 'n', 00H, 'g', 00H, 'e', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BA@FOIKENOD@vector?5too?5long@ CONST SEGMENT ??_C@_0BA@FOIKENOD@vector?5too?5long@ DB 'vector too long', 00H ; `string' CONST 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@_1EA@DJDGNIII@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ CONST SEGMENT ??_C@_1EA@DJDGNIII@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ DB '"' DB 00H, 'v', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'o', 00H, 'r', 00H DB ' ', 00H, 'i', 00H, 't', 00H, 'e', 00H, 'r', 00H, 'a', 00H, 't' DB 00H, 'o', 00H, 'r', 00H, 's', 00H, ' ', 00H, 'i', 00H, 'n', 00H DB 'c', 00H, 'o', 00H, 'm', 00H, 'p', 00H, 'a', 00H, 't', 00H, 'i' DB 00H, 'b', 00H, 'l', 00H, 'e', 00H, '"', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1NC@CDEGKPGM@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAc?$AAt?$AAo?$AAr?$AA_?$AAc?$AAo@ CONST SEGMENT ??_C@_1NC@CDEGKPGM@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAc?$AAt?$AAo?$AAr?$AA_?$AAc?$AAo@ DB 's' DB 00H, 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_', 00H, 'V', 00H DB 'e', 00H, 'c', 00H, 't', 00H, 'o', 00H, 'r', 00H, '_', 00H, 'c' DB 00H, 'o', 00H, 'n', 00H, 's', 00H, 't', 00H, '_', 00H, 'i', 00H DB 't', 00H, 'e', 00H, 'r', 00H, 'a', 00H, 't', 00H, 'o', 00H, 'r' DB 00H, '<', 00H, 'c', 00H, 'l', 00H, 'a', 00H, 's', 00H, 's', 00H DB ' ', 00H, 's', 00H, 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_' DB 00H, 'V', 00H, 'e', 00H, 'c', 00H, 't', 00H, 'o', 00H, 'r', 00H DB '_', 00H, 'v', 00H, 'a', 00H, 'l', 00H, '<', 00H, 's', 00H, 't' DB 00H, 'r', 00H, 'u', 00H, 'c', 00H, 't', 00H, ' ', 00H, 's', 00H DB 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_', 00H, 'S', 00H, 'i' DB 00H, 'm', 00H, 'p', 00H, 'l', 00H, 'e', 00H, '_', 00H, 't', 00H DB 'y', 00H, 'p', 00H, 'e', 00H, 's', 00H, '<', 00H, 'u', 00H, 'n' DB 00H, 's', 00H, 'i', 00H, 'g', 00H, 'n', 00H, 'e', 00H, 'd', 00H DB ' ', 00H, 'l', 00H, 'o', 00H, 'n', 00H, 'g', 00H, '>', 00H, ' ' DB 00H, '>', 00H, ' ', 00H, '>', 00H, ':', 00H, ':', 00H, '_', 00H DB 'C', 00H, 'o', 00H, 'm', 00H, 'p', 00H, 'a', 00H, 't', 00H, 00H DB 00H ; `string' CONST ENDS ; COMDAT ??_C@_1MO@MBPFCBOF@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ CONST SEGMENT ??_C@_1MO@MBPFCBOF@?$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, 'v', 00H, 'e', 00H DB 'c', 00H, 't', 00H, 'o', 00H, 'r', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0GH@IJJCCHP@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ CONST SEGMENT ??_C@_0GH@IJJCCHP@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\vector', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BO@CAOBBIOC@vector?5iterators?5incompatible@ CONST SEGMENT ??_C@_0BO@CAOBBIOC@vector?5iterators?5incompatible@ DB 'vector iterators ' DB 'incompatible', 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@_03OFAPEBGM@?$CFs?6@ CONST SEGMENT ??_C@_03OFAPEBGM@?$CFs?6@ DB '%s', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_07KNNCJAOA@?$CFs?3?5?$CFu?6@ CONST SEGMENT ??_C@_07KNNCJAOA@?$CFs?3?5?$CFu?6@ DB '%s: %u', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0L@ILJOJNOL@Label?3?5?$CFu?6@ CONST SEGMENT ??_C@_0L@ILJOJNOL@Label?3?5?$CFu?6@ DB 'Label: %u', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CA@KDIENFLL@XedDecode?5failed?5with?5error?5?$CFs?6@ CONST SEGMENT ??_C@_0CA@KDIENFLL@XedDecode?5failed?5with?5error?5?$CFs?6@ DB 'XedDecode' DB ' failed with error %s', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CL@COPJALEP@XedDecode?5failed?5in?5NcDeepCopyL@ CONST SEGMENT ??_C@_0CL@COPJALEP@XedDecode?5failed?5in?5NcDeepCopyL@ DB 'XedDecode fail' DB 'ed in NcDeepCopyLink: %s %u', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DF@KKBEBOEB@Failed?5to?5validate?5jump?4?5Type?3?5@ CONST SEGMENT ??_C@_0DF@KKBEBOEB@Failed?5to?5validate?5jump?4?5Type?3?5@ DB 'Failed to ' DB 'validate jump. Type: %s, Displacement: %d', 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@_1DG@PLBPCAEM@?$AA?$CC?$AAI?$AAT?$AAE?$AAR?$AAA?$AAT?$AAO?$AAR?$AA?5?$AAL?$AAI?$AAS?$AAT?$AA?5@ CONST SEGMENT ??_C@_1DG@PLBPCAEM@?$AA?$CC?$AAI?$AAT?$AAE?$AAR?$AAA?$AAT?$AAO?$AAR?$AA?5?$AAL?$AAI?$AAS?$AAT?$AA?5@ DB '"' DB 00H, 'I', 00H, 'T', 00H, 'E', 00H, 'R', 00H, 'A', 00H, 'T', 00H DB 'O', 00H, 'R', 00H, ' ', 00H, 'L', 00H, 'I', 00H, 'S', 00H, 'T' DB 00H, ' ', 00H, 'C', 00H, 'O', 00H, 'R', 00H, 'R', 00H, 'U', 00H DB 'P', 00H, 'T', 00H, 'E', 00H, 'D', 00H, '!', 00H, '"', 00H, 00H DB 00H ; `string' CONST ENDS ; COMDAT ??_C@_1FG@EMKODCE@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAI?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo?$AAr?$AA_@ CONST SEGMENT ??_C@_1FG@EMKODCE@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAI?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo?$AAr?$AA_@ DB 's' DB 00H, 't', 00H, 'd', 00H, ':', 00H, ':', 00H, '_', 00H, 'I', 00H DB 't', 00H, 'e', 00H, 'r', 00H, 'a', 00H, 't', 00H, 'o', 00H, 'r' DB 00H, '_', 00H, 'b', 00H, 'a', 00H, 's', 00H, 'e', 00H, '1', 00H DB '2', 00H, ':', 00H, ':', 00H, '_', 00H, 'O', 00H, 'r', 00H, 'p' DB 00H, 'h', 00H, 'a', 00H, 'n', 00H, '_', 00H, 'm', 00H, 'e', 00H DB '_', 00H, 'u', 00H, 'n', 00H, 'l', 00H, 'o', 00H, 'c', 00H, 'k' DB 00H, 'e', 00H, 'd', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BJ@LFDBABJJ@ITERATOR?5LIST?5CORRUPTED?$CB@ CONST SEGMENT ??_C@_0BJ@LFDBABJJ@ITERATOR?5LIST?5CORRUPTED?$CB@ DB 'ITERATOR LIST CORRU' DB 'PTED!', 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 _CT??_R0?AVexception@std@@@8??0exception@std@@QEAA@AEBV01@@Z24 xdata$x SEGMENT _CT??_R0?AVexception@std@@@8??0exception@std@@QEAA@AEBV01@@Z24 DD 00H DD imagerel ??_R0?AVexception@std@@@8 DD 00H DD 0ffffffffH ORG $+4 DD 018H DD imagerel ??0exception@std@@QEAA@AEBV01@@Z xdata$x ENDS ; COMDAT ??_R0?AVexception@std@@@8 data$r SEGMENT ??_R0?AVexception@std@@@8 DQ FLAT:??_7type_info@@6B@ ; std::exception `RTTI Type Descriptor' DQ 0000000000000000H DB '.?AVexception@std@@', 00H data$r ENDS ; COMDAT _CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QEAA@AEBV01@@Z24 xdata$x SEGMENT _CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QEAA@AEBV01@@Z24 DD 010H DD imagerel ??_R0?AVbad_alloc@std@@@8 DD 00H DD 0ffffffffH ORG $+4 DD 018H DD imagerel ??0bad_alloc@std@@QEAA@AEBV01@@Z xdata$x ENDS ; COMDAT ??_R0?AVbad_alloc@std@@@8 data$r SEGMENT ??_R0?AVbad_alloc@std@@@8 DQ FLAT:??_7type_info@@6B@ ; std::bad_alloc `RTTI Type Descriptor' DQ 0000000000000000H DB '.?AVbad_alloc@std@@', 00H data$r ENDS ; COMDAT _CT??_R0?AVbad_array_new_length@std@@@8??0bad_array_new_length@std@@QEAA@AEBV01@@Z24 xdata$x SEGMENT _CT??_R0?AVbad_array_new_length@std@@@8??0bad_array_new_length@std@@QEAA@AEBV01@@Z24 DD 00H DD imagerel ??_R0?AVbad_array_new_length@std@@@8 DD 00H DD 0ffffffffH ORG $+4 DD 018H DD imagerel ??0bad_array_new_length@std@@QEAA@AEBV01@@Z xdata$x ENDS ; COMDAT ??_R0?AVbad_array_new_length@std@@@8 data$r SEGMENT ??_R0?AVbad_array_new_length@std@@@8 DQ FLAT:??_7type_info@@6B@ ; std::bad_array_new_length `RTTI Type Descriptor' DQ 0000000000000000H DB '.?AVbad_array_new_length@std@@', 00H data$r ENDS ; COMDAT _CTA3?AVbad_array_new_length@std@@ xdata$x SEGMENT _CTA3?AVbad_array_new_length@std@@ DD 03H DD imagerel _CT??_R0?AVbad_array_new_length@std@@@8??0bad_array_new_length@std@@QEAA@AEBV01@@Z24 DD imagerel _CT??_R0?AVbad_alloc@std@@@8??0bad_alloc@std@@QEAA@AEBV01@@Z24 DD imagerel _CT??_R0?AVexception@std@@@8??0exception@std@@QEAA@AEBV01@@Z24 xdata$x ENDS ; COMDAT _TI3?AVbad_array_new_length@std@@ xdata$x SEGMENT _TI3?AVbad_array_new_length@std@@ DD 00H DD imagerel ??1bad_array_new_length@std@@UEAA@XZ DD 00H DD imagerel _CTA3?AVbad_array_new_length@std@@ xdata$x ENDS ; COMDAT ??_C@_0BF@KINCDENJ@bad?5array?5new?5length@ CONST SEGMENT ??_C@_0BF@KINCDENJ@bad?5array?5new?5length@ DB 'bad array new length', 00H ; `string' CONST ENDS ; COMDAT ??_7bad_array_new_length@std@@6B@ CONST SEGMENT ??_7bad_array_new_length@std@@6B@ DQ FLAT:??_R4bad_array_new_length@std@@6B@ ; std::bad_array_new_length::`vftable' DQ FLAT:??_Ebad_array_new_length@std@@UEAAPEAXI@Z DQ FLAT:?what@exception@std@@UEBAPEBDXZ CONST ENDS ; COMDAT ??_7bad_alloc@std@@6B@ CONST SEGMENT ??_7bad_alloc@std@@6B@ DQ FLAT:??_R4bad_alloc@std@@6B@ ; std::bad_alloc::`vftable' DQ FLAT:??_Ebad_alloc@std@@UEAAPEAXI@Z DQ FLAT:?what@exception@std@@UEBAPEBDXZ CONST ENDS ; COMDAT ??_C@_0BC@EOODALEL@Unknown?5exception@ CONST SEGMENT ??_C@_0BC@EOODALEL@Unknown?5exception@ DB 'Unknown exception', 00H ; `string' CONST ENDS ; COMDAT ??_7exception@std@@6B@ CONST SEGMENT ??_7exception@std@@6B@ DQ FLAT:??_R4exception@std@@6B@ ; std::exception::`vftable' DQ FLAT:??_Eexception@std@@UEAAPEAXI@Z DQ FLAT:?what@exception@std@@UEBAPEBDXZ CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z DD 025051d01H DD 0118231dH DD 070110021H DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$forward@K@std@@YA$$QEAKAEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z DD 05051601H DD 01130316H DD 0700c0019H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z DD 025051d01H DD 0118231dH DD 070110039H DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$move@AEAK@std@@YA$$QEAKAEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z DD 025052201H DD 011d2322H DD 07016001dH DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Get_size_of_n@$03@std@@YA_K_K@Z DD 025051301H DD 010e2313H DD 070070025H DD 05006H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 045H DW 013dH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DB 028H DD imagerel $stateUnwindMap$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DD imagerel $ip2state$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DD 025054c19H DD 011d2322H DD 07016002fH DD 05015H DD imagerel __GSHandlerCheck_EH4 DD imagerel $cppxdata$??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z DD 016aH xdata ENDS ; COMDAT CONST CONST SEGMENT ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z$rtcName$0 DB 05fH ; std::_Uninitialized_move > DB 042H DB 061H DB 063H DB 06bH DB 06fH DB 075H DB 074H DB 00H ORG $+7 ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z$rtcVarDesc DD 068H ; std::_Uninitialized_move > DD 018H DQ FLAT:??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z$rtcName$0 ORG $+48 ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z$rtcFrameData DD 01H ; std::_Uninitialized_move > DD 00H DQ FLAT:??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z DD 035051301H DD 010e3313H DD 07007002bH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z DD 025051d01H DD 0118231dH DD 070110021H DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H 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$??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z DD 025051301H DD 010e2313H DD 070070025H DD 05006H 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$??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$min@_K@std@@YAAEB_KAEB_K0@Z DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DB 060H DD imagerel $ip2state$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DD 025051319H DD 010e2313H DD 070070021H DD 05006H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DB 06H DB 00H DB 00H DB 'p' DB 02H DB 0f1H, 02H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DB 028H DD imagerel $stateUnwindMap$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DD imagerel $ip2state$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DD 025051811H DD 01132318H DD 0700c0021H DD 0500bH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DB 060H DD imagerel $ip2state$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ DD 025051319H DD 010e2313H DD 070070021H DD 05006H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z DD 025051801H DD 01132318H DD 0700c0025H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH 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 xdata xdata SEGMENT $unwind$?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DB 06H DB 00H DB 00H DB 'm', 04H DB 02H DB 0ddH, 03H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DB 02H DB 01H DB 080H DD imagerel ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $tryMap$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DB 02H DB 00H DB 00H DB 02H DD imagerel $handlerMap$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DB 04H DB 08H DB 010H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DB 038H DD imagerel $stateUnwindMap$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DD imagerel $tryMap$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DD imagerel $ip2state$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z DD 025051d19H DD 0118231dH DD 07011004bH DD 05010H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z DD 025051d01H DD 0118231dH DD 070110021H DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Unfancy@K@std@@YAPEAKPEAK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z DD 025051801H DD 01132318H DD 0700c002bH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$forward@AEBK@std@@YAAEBKAEBK@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z DD 025051801H DD 01132318H DD 0700c002bH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H 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 DW 03aH DW 0430H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DB 0aH DB 00H DB 00H DB 0caH DB 02H DB 011H, 02H DB 04H DB 0adH, 0aH DB 02H DB 0ecH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DB 02H DB 01H DB 080H DD imagerel ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $tryMap$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DB 02H DB 02H DB 02H DB 04H DD imagerel $handlerMap$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DB 06H DB 0eH DD imagerel ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA DB 028H DB 030H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DB 038H DD imagerel $stateUnwindMap$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DD imagerel $tryMap$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DD imagerel $ip2state$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DD 025054119H DD 01122317H DD 0700b004bH DD 0500aH DD imagerel __GSHandlerCheck_EH4 DD imagerel $cppxdata$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z DD 0243H xdata ENDS ; COMDAT CONST CONST SEGMENT ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$rtcName$0 DB 05fH ; std::operator<< > DB 04fH DB 06bH DB 00H ORG $+12 ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$rtcVarDesc DD 048H ; std::operator<< > DD 010H DQ FLAT:??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$rtcName$0 ORG $+48 ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$rtcFrameData DD 01H ; std::operator<< > DD 00H DQ FLAT:??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z DD 025051801H DD 01132318H DD 0700c001fH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$_Fillobj@D@std@@QEAA@D@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z DD 025051801H DD 01132318H DD 0700c001fH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$log2@H$0A@@@YANH@Z DD 035051201H DD 010d3312H DD 07006001fH DD 05005H 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 xdata xdata SEGMENT $unwind$?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z DB 08H DB 00H DB 00H DB 'X' DB 04H DB 'm', 02H DB 02H DB 01aH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z DB 04H DB 0eH DD imagerel ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA DB 02eH DD imagerel ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z DB 028H DD imagerel $stateUnwindMap$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z DD imagerel $ip2state$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z DD 025052211H DD 011d2322H DD 070160027H DD 05015H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z DD 035051801H DD 01133318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z DD 035051801H DD 01133318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z DD 025051801H DD 01132318H DD 0700c001fH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z DD 025051801H DD 01132318H DD 0700c001fH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z DD 025051301H DD 010e2313H DD 070070035H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z DD 025051301H DD 010e2313H DD 070070029H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z DD 025051301H DD 010e2313H DD 07007002dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z DD 025051801H DD 01132318H DD 0700c0029H DD 0500bH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z DB 06H DB 00H DB 00H DB 0b6H DB 02H DB 'p' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z DB 028H DD imagerel $stateUnwindMap$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z DD imagerel $ip2state$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z DD 025051d11H DD 0118231dH DD 070110041H DD 05010H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 037H DW 036aH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DD 035063e19H DD 010f3314H DD 0700800eaH DD 050066007H DD imagerel __GSHandlerCheck DD 0748H xdata ENDS ; COMDAT CONST CONST SEGMENT ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 DB 042H ; NcFixRelJmps DB 072H DB 061H DB 06eH DB 063H DB 068H DB 044H DB 069H DB 073H DB 070H DB 00H ORG $+5 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$1 DB 04dH ; NcFixRelJmps DB 061H DB 063H DB 068H DB 069H DB 06eH DB 065H DB 053H DB 074H DB 061H DB 074H DB 065H DB 00H ORG $+3 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$2 DB 045H ; NcFixRelJmps DB 06eH DB 063H DB 06fH DB 064H DB 065H DB 072H DB 049H DB 06eH DB 073H DB 074H DB 072H DB 075H DB 063H DB 074H DB 069H DB 06fH DB 06eH DB 00H ORG $+5 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$3 DB 045H ; NcFixRelJmps DB 06eH DB 063H DB 06fH DB 064H DB 065H DB 072H DB 052H DB 065H DB 071H DB 075H DB 065H DB 073H DB 074H DB 00H ORG $+1 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$4 DB 045H ; NcFixRelJmps DB 06eH DB 063H DB 06fH DB 064H DB 065H DB 042H DB 075H DB 066H DB 066H DB 065H DB 072H DB 00H ORG $+3 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$5 DB 052H ; NcFixRelJmps DB 065H DB 074H DB 075H DB 072H DB 06eH DB 065H DB 064H DB 053H DB 069H DB 07aH DB 065H DB 00H ORG $+11 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc DD 0384H ; NcFixRelJmps DD 04H DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$5 DD 0358H DD 0fH DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$4 DD 0280H DD 0c0H DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$3 DD 0c0H DD 01a0H DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$2 DD 098H DD 08H DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$1 DD 054H DD 04H DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 ORG $+288 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData DD 06H ; NcFixRelJmps DD 00H DQ FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z DD 025051801H DD 01132318H DD 0700c0029H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 040H DW 01dbH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z DD 025054719H DD 0118231dH DD 070110037H DD 05010H DD imagerel __GSHandlerCheck DD 01a0H xdata ENDS ; COMDAT CONST CONST SEGMENT ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 DB 04cH ; NcDeepCopyPartialBlock DB 00H ORG $+14 ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc DD 084H ; NcDeepCopyPartialBlock DD 04H DQ FLAT:?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 ORG $+48 ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData DD 01H ; NcDeepCopyPartialBlock DD 00H DQ FLAT:?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc CONST ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z DB 0aH DB 00H DB 00H DB 082H DB 02H DB 08aH DB 00H DB 'D' DB 04H DB 0c0H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z DB 04H DB 0eH DD imagerel ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA DB 036H DD imagerel ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z DB 028H DD imagerel $stateUnwindMap$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z DD imagerel $ip2state$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z DD 035051311H DD 010e3313H DD 07007003bH DD 05006H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z DD 025051701H DD 01122317H DD 0700b0021H DD 0500aH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 036H DW 0298H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DB 06H DB 00H DB 00H DB 'y', 07H DB 02H DB 084H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DB 028H DD imagerel $stateUnwindMap$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DD imagerel $ip2state$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DD 025053d19H DD 010e2313H DD 07007004bH DD 05006H DD imagerel __GSHandlerCheck_EH4 DD imagerel $cppxdata$?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z DD 0242H xdata ENDS ; COMDAT CONST CONST SEGMENT ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 DB 043H ; NcCreateLabels DB 075H DB 072H DB 072H DB 065H DB 06eH DB 074H DB 04cH DB 061H DB 062H DB 065H DB 06cH DB 049H DB 064H DB 00H ORG $+1 ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc DD 024H ; NcCreateLabels DD 04H DQ FLAT:?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 ORG $+48 ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData DD 01H ; NcCreateLabels DD 00H DQ FLAT:?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z DD 025051d01H DD 0118231dH DD 070110021H DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z DD 025051d01H DD 0118231dH DD 070110021H DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z DD 025051801H DD 01132318H DD 0700c0055H DD 0500bH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 036H DW 01d2H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z DD 025053d19H DD 010e2313H DD 070070051H DD 05006H DD imagerel __GSHandlerCheck DD 0270H xdata ENDS ; COMDAT CONST CONST SEGMENT ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 DB 052H ; NcGenUnusedLabelId DB 065H DB 074H DB 075H DB 072H DB 06eH DB 04cH DB 061H DB 062H DB 065H DB 06cH DB 049H DB 064H DB 00H ORG $+2 ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc DD 024H ; NcGenUnusedLabelId DD 04H DQ FLAT:?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z$rtcName$0 ORG $+48 ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData DD 01H ; NcGenUnusedLabelId DD 00H DQ FLAT:?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z DD 025051c01H DD 0117231cH DD 070100021H DD 0500fH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z DD 025051301H DD 010e2313H DD 070070025H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z DD 025051701H DD 01122317H DD 0700b0025H DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_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@@QEBAAEBV?$allocator@K@2@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$??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEBAAEBV?$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 $unwind$?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 040H DB 098H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DB 06H DB 00H DB 00H DB 0c6H DB 02H DB '6' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DB 028H DD imagerel $stateUnwindMap$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD imagerel $ip2state$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD 025054719H DD 0118231dH DD 070110021H DD 05010H DD imagerel __GSHandlerCheck_EH4 DD imagerel $cppxdata$?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD 0faH xdata ENDS ; COMDAT CONST CONST SEGMENT ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z$rtcName$0 DB 05fH ; std::vector >::_Orphan_range_locked DB 04cH DB 06fH DB 063H DB 06bH DB 00H ORG $+10 ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z$rtcVarDesc DD 024H ; std::vector >::_Orphan_range_locked DD 04H DQ FLAT:?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z$rtcName$0 ORG $+48 ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z$rtcFrameData DD 01H ; std::vector >::_Orphan_range_locked DD 00H DQ FLAT:?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z DD 025051d01H DD 0118231dH DD 07011002dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z DD 025052201H DD 011d2322H DD 07016002fH DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z DD 025051801H DD 01132318H DD 0700c0029H DD 0500bH 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 xdata xdata SEGMENT $unwind$?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z DD 035052201H DD 011d3322H DD 070160023H DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z DD 025052201H DD 011d2322H DD 07016001dH DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z DD 025052201H DD 011d2322H DD 07016001dH DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ DD 025051301H DD 010e2313H DD 070070021H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ DD 025051301H DD 010e2313H DD 070070025H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ DD 025051301H DD 010e2313H DD 070070021H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ DD 025051801H DD 01132318H DD 0700c0023H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ DD 025051801H DD 01132318H DD 0700c0023H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ DB 060H DD imagerel $ip2state$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ DD 025051319H DD 010e2313H DD 070070029H DD 05006H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ DB 060H DD imagerel $ip2state$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ DD 025051319H DD 010e2313H DD 070070025H DD 05006H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?allocate@?$allocator@K@std@@QEAAPEAK_K@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata 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$??0?$allocator@K@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1_NATIVE_CODE_LINK@@QEAA@XZ DD 025051301H DD 010e2313H DD 070070021H DD 05006H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H DB 05H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA DD 031001H DD 0700c4210H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z DB 06H DB 00H DB 00H DB 't' DB 02H DB 08dH, 02H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z DB 028H DD imagerel $stateUnwindMap$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z DD imagerel $ip2state$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z DD 025052111H DD 011c2321H DD 070150021H DD 05014H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z DD 025051c01H DD 0117231cH DD 07010001dH DD 0500fH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_NATIVE_CODE_LINK@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_decoded_inst_get_length DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 03fH DB 084H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_decoded_inst_set_mode DD 025054619H DD 0117231cH DD 070100021H DD 0500fH DD imagerel __GSHandlerCheck DD 0f8H xdata ENDS ; COMDAT CONST CONST SEGMENT xed_decoded_inst_set_mode$rtcName$0 DB 064H DB 073H DB 074H DB 061H DB 074H DB 065H DB 00H ORG $+9 xed_decoded_inst_set_mode$rtcVarDesc DD 028H DD 08H DQ FLAT:xed_decoded_inst_set_mode$rtcName$0 ORG $+48 xed_decoded_inst_set_mode$rtcFrameData DD 01H DD 00H DQ FLAT:xed_decoded_inst_set_mode$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_decoded_inst_noperands DD 025051301H DD 010e2313H DD 070070021H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_decoded_inst_get_iclass DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_decoded_inst_get_category DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_decoded_inst_inst DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_inst1 DD 025062301H DD 011e2323H DD 07017001cH DD 050156016H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 040H DB 09eH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_relbr DD 025064719H DD 0118231dH DD 070110026H DD 0500f6010H DD imagerel __GSHandlerCheck DD 0128H xdata ENDS ; COMDAT CONST CONST SEGMENT xed_relbr$rtcName$0 DB 06fH DB 00H ORG $+14 xed_relbr$rtcVarDesc DD 028H DD 030H DQ FLAT:xed_relbr$rtcName$0 ORG $+48 xed_relbr$rtcFrameData DD 01H DD 00H DQ FLAT:xed_relbr$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_inst_noperands DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_inst_category DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_inst_iclass DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_inst_iform_enum DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_operand_type DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$xed_iform_to_iclass DD 025051201H DD 010d2312H DD 070060021H DD 05005H 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$?hex@std@@YAAEAVios_base@1@AEAV21@@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H 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$?eof@?$_Narrow_char_traits@DH@std@@SAHXZ DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z DD 025051801H DD 01132318H DD 0700c001fH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 036H DB 07eH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ DD 025053d19H DD 010e2313H DD 070070021H DD 05006H DD imagerel __GSHandlerCheck DD 0f8H xdata ENDS ; COMDAT CONST CONST SEGMENT ?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ$rtcName$0 DB 05fH ; std::_Iterator_base12::_Orphan_me_locked DB 04cH DB 06fH DB 063H DB 06bH DB 00H ORG $+10 ?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ$rtcVarDesc DD 024H ; std::_Iterator_base12::_Orphan_me_locked DD 04H DQ FLAT:?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ$rtcName$0 ORG $+48 ?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ$rtcFrameData DD 01H ; std::_Iterator_base12::_Orphan_me_locked DD 00H DQ FLAT:?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ DD 035051301H DD 010e3313H DD 070070027H DD 05006H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 03bH DB 08aH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z DD 025054219H DD 01132318H DD 0700c0021H DD 0500bH DD imagerel __GSHandlerCheck DD 0f8H xdata ENDS ; COMDAT CONST CONST SEGMENT ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z$rtcName$0 DB 05fH ; std::_Iterator_base12::_Adopt_locked DB 04cH DB 06fH DB 063H DB 06bH DB 00H ORG $+10 ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z$rtcVarDesc DD 024H ; std::_Iterator_base12::_Adopt_locked DD 04H DQ FLAT:?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z$rtcName$0 ORG $+48 ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z$rtcFrameData DD 01H ; std::_Iterator_base12::_Adopt_locked DD 00H DQ FLAT:?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ DD 025051301H DD 010e2313H DD 07007001fH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1_Iterator_base12@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_Iterator_base12@std@@QEAA@AEBU01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_Iterator_base12@std@@QEAA@XZ 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$??0_Container_base12@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH 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$?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_Throw_bad_array_new_length@std@@YAXXZ DD 025050f01H DD 010a230fH DD 070030023H DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??_Gbad_array_new_length@std@@UEAAPEAXI@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0bad_array_new_length@std@@QEAA@AEBV01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1bad_array_new_length@std@@UEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0bad_array_new_length@std@@QEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??_Gbad_alloc@std@@UEAAPEAXI@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0bad_alloc@std@@QEAA@AEBV01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1bad_alloc@std@@UEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0bad_alloc@std@@AEAA@QEBD@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??_Gexception@std@@UEAAPEAXI@Z DD 025051701H DD 01122317H DD 0700b001dH DD 0500aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?what@exception@std@@UEBAPEBDXZ DD 025051301H DD 010e2313H DD 07007001fH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1exception@std@@UEAA@XZ DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0exception@std@@QEAA@AEBV01@@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0exception@std@@QEAA@QEBDH@Z DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?max@?$numeric_limits@_J@std@@SA_JXZ DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H 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$??2@YAPEAX_KPEAX@Z DD 025051801H DD 01132318H DD 0700c001dH DD 0500bH 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 ??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z _TEXT SEGMENT $T1 = 200 __formal$ = 256 _Ptr$ = 264 <_Args_0>$ = 272 ??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z PROC ; std::_Default_allocator_traits >::construct, COMDAT ; 707 : static _CONSTEXPR20_DYNALLOC void construct(_Alloc&, _Objty* const _Ptr, _Types&&... _Args) { $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 08 01 00 00 sub rsp, 264 ; 00000108H 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 00029 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 00030 e8 00 00 00 00 call ??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z ; std::_Voidify_iter 00035 48 8b d0 mov rdx, rax 00038 b9 04 00 00 00 mov ecx, 4 0003d e8 00 00 00 00 call ??2@YAPEAX_KPEAX@Z ; operator new 00042 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 00049 48 8b 8d 10 01 00 00 mov rcx, QWORD PTR <_Args_0>$[rbp] 00050 e8 00 00 00 00 call ??$forward@K@std@@YA$$QEAKAEAK@Z ; std::forward 00055 48 8b 8d c8 00 00 00 mov rcx, QWORD PTR $T1[rbp] 0005c 8b 00 mov eax, DWORD PTR [rax] 0005e 89 01 mov DWORD PTR [rcx], eax ; 708 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 709 : if (_STD is_constant_evaluated()) { ; 710 : _STD construct_at(_Ptr, _STD forward<_Types>(_Args)...); ; 711 : } else ; 712 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 713 : { ; 714 : ::new (_Voidify_iter(_Ptr)) _Objty(_STD forward<_Types>(_Args)...); ; 715 : } ; 716 : } 00060 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00067 5f pop rdi 00068 5d pop rbp 00069 c3 ret 0 ??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z ENDP ; std::_Default_allocator_traits >::construct _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\type_traits ; COMDAT ??$forward@K@std@@YA$$QEAKAEAK@Z _TEXT SEGMENT _Arg$ = 224 ??$forward@K@std@@YA$$QEAKAEAK@Z PROC ; std::forward, COMDAT ; 1443 : remove_reference_t<_Ty>& _Arg) noexcept { // forward an lvalue as either an lvalue or an rvalue $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:__D1154D4E_type_traits 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1444 : return static_cast<_Ty&&>(_Arg); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Arg$[rbp] ; 1445 : } 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 ??$forward@K@std@@YA$$QEAKAEAK@Z ENDP ; std::forward _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\xutility ; COMDAT ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z _TEXT SEGMENT _Val$ = 224 ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z PROC ; std::_To_address, COMDAT ; 4074 : _NODISCARD constexpr auto _To_address(const _Iter& _Val) 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:__7CE971A6_xutility 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 4075 : _STL_INTERNAL_STATIC_ASSERT(is_pointer_v<_Iter>); ; 4076 : return _Val; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Val$[rbp] 00026 48 8b 00 mov rax, QWORD PTR [rax] ; 4077 : } 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 ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z ENDP ; std::_To_address _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 ??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z _TEXT SEGMENT _Ptr$ = 224 ??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z PROC ; std::_Refancy, COMDAT ; 298 : _CONSTEXPR20 _Pointer _Refancy(_Pointer _Ptr) 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 ; 299 : return _Ptr; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Ptr$[rbp] ; 300 : } 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 ??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z ENDP ; std::_Refancy _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 ??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z _TEXT SEGMENT tv78 = 192 tv76 = 200 tv74 = 208 this$ = 256 <_Vals_0>$ = 264 ??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z PROC ; std::_Uninitialized_backout_al >::_Emplace_back, COMDAT ; 1610 : _CONSTEXPR20_DYNALLOC void _Emplace_back(_Types&&... _Vals) { // construct a new element at *_Last and increment $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:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1611 : allocator_traits<_Alloc>::construct(_Al, _Unfancy(_Last), _STD forward<_Types>(_Vals)...); 00024 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR <_Vals_0>$[rbp] 0002b e8 00 00 00 00 call ??$forward@K@std@@YA$$QEAKAEAK@Z ; std::forward 00030 48 89 85 c0 00 00 00 mov QWORD PTR tv78[rbp], rax 00037 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 0003e 48 8b 48 08 mov rcx, QWORD PTR [rax+8] 00042 e8 00 00 00 00 call ??$_Unfancy@K@std@@YAPEAKPEAK@Z ; std::_Unfancy 00047 48 89 85 c8 00 00 00 mov QWORD PTR tv76[rbp], rax 0004e 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00055 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00059 48 89 85 d0 00 00 00 mov QWORD PTR tv74[rbp], rax 00060 4c 8b 85 c0 00 00 00 mov r8, QWORD PTR tv78[rbp] 00067 48 8b 95 c8 00 00 00 mov rdx, QWORD PTR tv76[rbp] 0006e 48 8b 8d d0 00 00 00 mov rcx, QWORD PTR tv74[rbp] 00075 e8 00 00 00 00 call ??$construct@KK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAK$$QEAK@Z ; std::_Default_allocator_traits >::construct ; 1612 : ++_Last; 0007a 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00081 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00085 48 83 c0 04 add rax, 4 00089 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00090 48 89 41 08 mov QWORD PTR [rcx+8], rax ; 1613 : } 00094 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 0009b 5f pop rdi 0009c 5d pop rbp 0009d c3 ret 0 ??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z ENDP ; std::_Uninitialized_backout_al >::_Emplace_back _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z _TEXT SEGMENT this$ = 224 classSize$ = 232 ?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z PROC ; std::_Uninitialized_backout_al >::__autoclassinit2, 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 c8 00 00 00 sub rsp, 200 ; 000000c8H 00013 48 8b ec mov rbp, rsp 00016 48 8b bd e0 00 00 00 mov rdi, QWORD PTR this$[rbp] 0001d 33 c0 xor eax, eax 0001f 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR classSize$[rbp] 00026 f3 aa rep stosb 00028 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002f 5f pop rdi 00030 5d pop rbp 00031 c3 ret 0 ?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z ENDP ; std::_Uninitialized_backout_al >::__autoclassinit2 _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 ?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ _TEXT SEGMENT this$ = 224 ?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ PROC ; std::_Uninitialized_backout_al >::_Release, COMDAT ; 1615 : constexpr pointer _Release() { // suppress any exception handling backout and return _Last $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 ; 1616 : _First = _Last; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0002d 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 00031 48 89 08 mov QWORD PTR [rax], rcx ; 1617 : return _Last; 00034 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003b 48 8b 40 08 mov rax, QWORD PTR [rax+8] ; 1618 : } 0003f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00046 5f pop rdi 00047 5d pop rbp 00048 c3 ret 0 ?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ ENDP ; std::_Uninitialized_backout_al >::_Release _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 ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ PROC ; std::_Uninitialized_backout_al >::~_Uninitialized_backout_al >, COMDAT ; 1605 : _CONSTEXPR20_DYNALLOC ~_Uninitialized_backout_al() { $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 ; 1606 : _Destroy_range(_First, _Last, _Al); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 4c 8b 40 10 mov r8, QWORD PTR [rax+16] 0002a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00031 48 8b 50 08 mov rdx, QWORD PTR [rax+8] 00035 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003c 48 8b 08 mov rcx, QWORD PTR [rax] 0003f e8 00 00 00 00 call ??$_Destroy_range@V?$allocator@K@std@@@std@@YAXPEAKQEAKAEAV?$allocator@K@0@@Z ; std::_Destroy_range > ; 1607 : } 00044 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004b 5f pop rdi 0004c 5d pop rbp 0004d c3 ret 0 ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ ENDP ; std::_Uninitialized_backout_al >::~_Uninitialized_backout_al > _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 ??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z _TEXT SEGMENT this$ = 224 _Dest$ = 232 _Al_$ = 240 ??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z PROC ; std::_Uninitialized_backout_al >::_Uninitialized_backout_al >, COMDAT ; 1600 : : _First(_Dest), _Last(_Dest), _Al(_Al_) {} $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 00029 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00030 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Dest$[rbp] 00037 48 89 08 mov QWORD PTR [rax], rcx 0003a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00041 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Dest$[rbp] 00048 48 89 48 08 mov QWORD PTR [rax+8], rcx 0004c 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00053 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR _Al_$[rbp] 0005a 48 89 48 10 mov QWORD PTR [rax+16], rcx 0005e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00065 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0006c 5f pop rdi 0006d 5d pop rbp 0006e c3 ret 0 ??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z ENDP ; std::_Uninitialized_backout_al >::_Uninitialized_backout_al > _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\xutility ; COMDAT ??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z _TEXT SEGMENT _FirstPtr$ = 8 _LastPtr$ = 40 _DestPtr$ = 72 _First_ch$ = 104 _Last_ch$ = 136 _Dest_ch$ = 168 _Count$ = 200 _First$ = 448 _Last$ = 456 _Dest$ = 464 ??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z PROC ; std::_Copy_memmove, COMDAT ; 4153 : _OutCtgIt _Copy_memmove(_CtgIt _First, _CtgIt _Last, _OutCtgIt _Dest) { $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 c8 01 00 00 sub rsp, 456 ; 000001c8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__7CE971A6_xutility 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 4154 : auto _FirstPtr = _To_address(_First); 00029 48 8d 8d c0 01 00 00 lea rcx, QWORD PTR _First$[rbp] 00030 e8 00 00 00 00 call ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z ; std::_To_address 00035 48 89 45 08 mov QWORD PTR _FirstPtr$[rbp], rax ; 4155 : auto _LastPtr = _To_address(_Last); 00039 48 8d 8d c8 01 00 00 lea rcx, QWORD PTR _Last$[rbp] 00040 e8 00 00 00 00 call ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z ; std::_To_address 00045 48 89 45 28 mov QWORD PTR _LastPtr$[rbp], rax ; 4156 : auto _DestPtr = _To_address(_Dest); 00049 48 8d 8d d0 01 00 00 lea rcx, QWORD PTR _Dest$[rbp] 00050 e8 00 00 00 00 call ??$_To_address@PEAK@std@@YA?A_PAEBQEAK@Z ; std::_To_address 00055 48 89 45 48 mov QWORD PTR _DestPtr$[rbp], rax ; 4157 : const char* const _First_ch = const_cast(reinterpret_cast(_FirstPtr)); 00059 48 8b 45 08 mov rax, QWORD PTR _FirstPtr$[rbp] 0005d 48 89 45 68 mov QWORD PTR _First_ch$[rbp], rax ; 4158 : const char* const _Last_ch = const_cast(reinterpret_cast(_LastPtr)); 00061 48 8b 45 28 mov rax, QWORD PTR _LastPtr$[rbp] 00065 48 89 85 88 00 00 00 mov QWORD PTR _Last_ch$[rbp], rax ; 4159 : char* const _Dest_ch = const_cast(reinterpret_cast(_DestPtr)); 0006c 48 8b 45 48 mov rax, QWORD PTR _DestPtr$[rbp] 00070 48 89 85 a8 00 00 00 mov QWORD PTR _Dest_ch$[rbp], rax ; 4160 : const auto _Count = static_cast(_Last_ch - _First_ch); 00077 48 8b 45 68 mov rax, QWORD PTR _First_ch$[rbp] 0007b 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR _Last_ch$[rbp] 00082 48 2b c8 sub rcx, rax 00085 48 8b c1 mov rax, rcx 00088 48 89 85 c8 00 00 00 mov QWORD PTR _Count$[rbp], rax ; 4161 : _CSTD memmove(_Dest_ch, _First_ch, _Count); 0008f 4c 8b 85 c8 00 00 00 mov r8, QWORD PTR _Count$[rbp] 00096 48 8b 55 68 mov rdx, QWORD PTR _First_ch$[rbp] 0009a 48 8b 8d a8 00 00 00 mov rcx, QWORD PTR _Dest_ch$[rbp] 000a1 e8 00 00 00 00 call memmove ; 4162 : if constexpr (is_pointer_v<_OutCtgIt>) { ; 4163 : return reinterpret_cast<_OutCtgIt>(_Dest_ch + _Count); 000a6 48 8b 85 c8 00 00 00 mov rax, QWORD PTR _Count$[rbp] 000ad 48 8b 8d a8 00 00 00 mov rcx, QWORD PTR _Dest_ch$[rbp] 000b4 48 03 c8 add rcx, rax 000b7 48 8b c1 mov rax, rcx ; 4164 : } else { ; 4165 : return _Dest + (_LastPtr - _FirstPtr); ; 4166 : } ; 4167 : } 000ba 48 8d a5 a8 01 00 00 lea rsp, QWORD PTR [rbp+424] 000c1 5f pop rdi 000c2 5d pop rbp 000c3 c3 ret 0 ??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z ENDP ; std::_Copy_memmove _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\type_traits ; COMDAT ??$move@AEAK@std@@YA$$QEAKAEAK@Z _TEXT SEGMENT _Arg$ = 224 ??$move@AEAK@std@@YA$$QEAKAEAK@Z PROC ; std::move, COMDAT ; 1455 : _NODISCARD constexpr remove_reference_t<_Ty>&& move(_Ty&& _Arg) noexcept { // forward _Arg as movable $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:__D1154D4E_type_traits 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1456 : return static_cast&&>(_Arg); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Arg$[rbp] ; 1457 : } 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 ??$move@AEAK@std@@YA$$QEAKAEAK@Z ENDP ; std::move _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\xutility ; COMDAT ??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z _TEXT SEGMENT _It$ = 224 ??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z PROC ; std::_Get_unwrapped, COMDAT ; 1324 : _NODISCARD constexpr decltype(auto) _Get_unwrapped(_Iter&& _It) { $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:__7CE971A6_xutility 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1325 : // unwrap an iterator previously subjected to _Adl_verify_range or otherwise validated ; 1326 : if constexpr (is_pointer_v>) { // special-case pointers and arrays ; 1327 : return _It + 0; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _It$[rbp] 00026 48 8b 00 mov rax, QWORD PTR [rax] ; 1328 : } else if constexpr (_Unwrappable_v<_Iter>) { ; 1329 : return static_cast<_Iter&&>(_It)._Unwrapped(); ; 1330 : } else { ; 1331 : return static_cast<_Iter&&>(_It); ; 1332 : } ; 1333 : } 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 ??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z ENDP ; std::_Get_unwrapped _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\type_traits ; COMDAT ??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z _TEXT SEGMENT _Arg$ = 224 ??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z PROC ; std::forward, COMDAT ; 1443 : remove_reference_t<_Ty>& _Arg) noexcept { // forward an lvalue as either an lvalue or an rvalue $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:__D1154D4E_type_traits 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1444 : return static_cast<_Ty&&>(_Arg); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Arg$[rbp] ; 1445 : } 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 ??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z ENDP ; std::forward _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\xutility ; COMDAT ??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z _TEXT SEGMENT _First$ = 224 _Last$ = 232 _Val$ = 240 __formal$ = 248 ??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z PROC ; std::_Find_unchecked1, COMDAT ; 5298 : _NODISCARD constexpr _InIt _Find_unchecked1(_InIt _First, const _InIt _Last, const _Ty& _Val, false_type) { $LN7: 00000 44 88 4c 24 20 mov BYTE PTR [rsp+32], r9b 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 e8 00 00 00 sub rsp, 232 ; 000000e8H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__7CE971A6_xutility 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 5299 : // find first matching _Val ; 5300 : for (; _First != _Last; ++_First) { 0002e eb 12 jmp SHORT $LN4@Find_unche $LN2@Find_unche: 00030 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _First$[rbp] 00037 48 83 c0 04 add rax, 4 0003b 48 89 85 e0 00 00 00 mov QWORD PTR _First$[rbp], rax $LN4@Find_unche: 00042 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Last$[rbp] 00049 48 39 85 e0 00 00 00 cmp QWORD PTR _First$[rbp], rax 00050 74 18 je SHORT $LN3@Find_unche ; 5301 : if (*_First == _Val) { 00052 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _First$[rbp] 00059 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR _Val$[rbp] 00060 8b 09 mov ecx, DWORD PTR [rcx] 00062 39 08 cmp DWORD PTR [rax], ecx 00064 75 02 jne SHORT $LN5@Find_unche ; 5302 : break; 00066 eb 02 jmp SHORT $LN3@Find_unche $LN5@Find_unche: ; 5303 : } ; 5304 : } 00068 eb c6 jmp SHORT $LN2@Find_unche $LN3@Find_unche: ; 5305 : ; 5306 : return _First; 0006a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _First$[rbp] ; 5307 : } 00071 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00078 5f pop rdi 00079 5d pop rbp 0007a c3 ret 0 ??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z ENDP ; std::_Find_unchecked1 _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_size_of_n@$03@std@@YA_K_K@Z _TEXT SEGMENT _Overflow_is_possible$ = 4 _Max_possible$1 = 40 _Count$ = 288 ??$_Get_size_of_n@$03@std@@YA_K_K@Z PROC ; std::_Get_size_of_n<4>, COMDAT ; 59 : _NODISCARD constexpr size_t _Get_size_of_n(const size_t _Count) { $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 28 01 00 00 sub rsp, 296 ; 00000128H 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 ; 60 : constexpr bool _Overflow_is_possible = _Ty_size > 1; 0001f c6 45 04 01 mov BYTE PTR _Overflow_is_possible$[rbp], 1 ; 61 : ; 62 : if constexpr (_Overflow_is_possible) { ; 63 : constexpr size_t _Max_possible = static_cast(-1) / _Ty_size; 00023 48 b8 ff ff ff ff ff ff ff 3f mov rax, 4611686018427387903 ; 3fffffffffffffffH 0002d 48 89 45 28 mov QWORD PTR _Max_possible$1[rbp], rax ; 64 : if (_Count > _Max_possible) { 00031 48 b8 ff ff ff ff ff ff ff 3f mov rax, 4611686018427387903 ; 3fffffffffffffffH 0003b 48 39 85 20 01 00 00 cmp QWORD PTR _Count$[rbp], rax 00042 76 05 jbe SHORT $LN2@Get_size_o ; 65 : _Throw_bad_array_new_length(); // multiply overflow 00044 e8 00 00 00 00 call ?_Throw_bad_array_new_length@std@@YAXXZ ; std::_Throw_bad_array_new_length $LN2@Get_size_o: ; 66 : } ; 67 : } ; 68 : ; 69 : return _Count * _Ty_size; 00049 48 8b 85 20 01 00 00 mov rax, QWORD PTR _Count$[rbp] 00050 48 c1 e0 02 shl rax, 2 $LN3@Get_size_o: ; 70 : } 00054 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 0005b 5f pop rdi 0005c 5d pop rbp 0005d c3 ret 0 ??$_Get_size_of_n@$03@std@@YA_K_K@Z ENDP ; std::_Get_size_of_n<4> _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 ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z _TEXT SEGMENT _UFirst$ = 8 _ULast$ = 40 _Backout$ = 72 $T4 = 312 __$ArrayPad$ = 328 _First$ = 368 _Last$ = 376 _Dest$ = 384 _Al$ = 392 ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z PROC ; std::_Uninitialized_move >, COMDAT ; 1693 : const _InIt _First, const _InIt _Last, _Alloc_ptr_t<_Alloc> _Dest, _Alloc& _Al) { $LN7: 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 78 01 00 00 sub rsp, 376 ; 00000178H 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 26 00 00 00 mov ecx, 38 ; 00000026H 0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00031 f3 ab rep stosd 00033 48 8b 8c 24 98 01 00 00 mov rcx, QWORD PTR [rsp+408] 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 48 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0004c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1694 : // move [_First, _Last) to raw _Dest, using _Al ; 1695 : // note: only called internally from elsewhere in the STL ; 1696 : using _Ptrval = typename _Alloc::value_type*; ; 1697 : auto _UFirst = _Get_unwrapped(_First); 00058 48 8d 8d 70 01 00 00 lea rcx, QWORD PTR _First$[rbp] 0005f e8 00 00 00 00 call ??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z ; std::_Get_unwrapped 00064 48 89 45 08 mov QWORD PTR _UFirst$[rbp], rax ; 1698 : const auto _ULast = _Get_unwrapped(_Last); 00068 48 8d 8d 78 01 00 00 lea rcx, QWORD PTR _Last$[rbp] 0006f e8 00 00 00 00 call ??$_Get_unwrapped@AEBQEAK@std@@YA?A_TAEBQEAK@Z ; std::_Get_unwrapped 00074 48 89 45 28 mov QWORD PTR _ULast$[rbp], rax ; 1699 : if constexpr (conjunction_v::_Really_trivial>, ; 1700 : _Uses_default_construct<_Alloc, _Ptrval, decltype(_STD move(*_UFirst))>>) { ; 1701 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1702 : if (!_STD is_constant_evaluated()) ; 1703 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1704 : { ; 1705 : _Copy_memmove(_UFirst, _ULast, _Unfancy(_Dest)); 00078 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR _Dest$[rbp] 0007f e8 00 00 00 00 call ??$_Unfancy@K@std@@YAPEAKPEAK@Z ; std::_Unfancy 00084 4c 8b c0 mov r8, rax 00087 48 8b 55 28 mov rdx, QWORD PTR _ULast$[rbp] 0008b 48 8b 4d 08 mov rcx, QWORD PTR _UFirst$[rbp] 0008f e8 00 00 00 00 call ??$_Copy_memmove@PEAKPEAK@std@@YAPEAKPEAK00@Z ; std::_Copy_memmove ; 1706 : return _Dest + (_ULast - _UFirst); 00094 48 8b 45 08 mov rax, QWORD PTR _UFirst$[rbp] 00098 48 8b 4d 28 mov rcx, QWORD PTR _ULast$[rbp] 0009c 48 2b c8 sub rcx, rax 0009f 48 8b c1 mov rax, rcx 000a2 48 c1 f8 02 sar rax, 2 000a6 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR _Dest$[rbp] 000ad 48 8d 04 81 lea rax, QWORD PTR [rcx+rax*4] 000b1 eb 74 jmp SHORT $LN1@Uninitiali ; 1707 : } ; 1708 : } ; 1709 : ; 1710 : _Uninitialized_backout_al<_Alloc> _Backout{_Dest, _Al}; 000b3 ba 18 00 00 00 mov edx, 24 000b8 48 8d 4d 48 lea rcx, QWORD PTR _Backout$[rbp] 000bc e8 00 00 00 00 call ?__autoclassinit2@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX_K@Z 000c1 4c 8b 85 88 01 00 00 mov r8, QWORD PTR _Al$[rbp] 000c8 48 8b 95 80 01 00 00 mov rdx, QWORD PTR _Dest$[rbp] 000cf 48 8d 4d 48 lea rcx, QWORD PTR _Backout$[rbp] 000d3 e8 00 00 00 00 call ??0?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@PEAKAEAV?$allocator@K@1@@Z ; std::_Uninitialized_backout_al >::_Uninitialized_backout_al > ; 1711 : for (; _UFirst != _ULast; ++_UFirst) { 000d8 eb 0c jmp SHORT $LN4@Uninitiali $LN2@Uninitiali: 000da 48 8b 45 08 mov rax, QWORD PTR _UFirst$[rbp] 000de 48 83 c0 04 add rax, 4 000e2 48 89 45 08 mov QWORD PTR _UFirst$[rbp], rax $LN4@Uninitiali: 000e6 48 8b 45 28 mov rax, QWORD PTR _ULast$[rbp] 000ea 48 39 45 08 cmp QWORD PTR _UFirst$[rbp], rax 000ee 74 17 je SHORT $LN3@Uninitiali ; 1712 : _Backout._Emplace_back(_STD move(*_UFirst)); 000f0 48 8b 4d 08 mov rcx, QWORD PTR _UFirst$[rbp] 000f4 e8 00 00 00 00 call ??$move@AEAK@std@@YA$$QEAKAEAK@Z ; std::move 000f9 48 8b d0 mov rdx, rax 000fc 48 8d 4d 48 lea rcx, QWORD PTR _Backout$[rbp] 00100 e8 00 00 00 00 call ??$_Emplace_back@K@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAX$$QEAK@Z ; std::_Uninitialized_backout_al >::_Emplace_back ; 1713 : } 00105 eb d3 jmp SHORT $LN2@Uninitiali $LN3@Uninitiali: ; 1714 : ; 1715 : return _Backout._Release(); 00107 48 8d 4d 48 lea rcx, QWORD PTR _Backout$[rbp] 0010b e8 00 00 00 00 call ?_Release@?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAAPEAKXZ ; std::_Uninitialized_backout_al >::_Release 00110 48 89 85 38 01 00 00 mov QWORD PTR $T4[rbp], rax 00117 48 8d 4d 48 lea rcx, QWORD PTR _Backout$[rbp] 0011b e8 00 00 00 00 call ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ ; std::_Uninitialized_backout_al >::~_Uninitialized_backout_al > 00120 48 8b 85 38 01 00 00 mov rax, QWORD PTR $T4[rbp] $LN1@Uninitiali: ; 1716 : } 00127 48 8b f8 mov rdi, rax 0012a 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0012e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z$rtcFrameData 00135 e8 00 00 00 00 call _RTC_CheckStackVars 0013a 48 8b c7 mov rax, rdi 0013d 48 8b 8d 48 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00144 48 33 cd xor rcx, rbp 00147 e8 00 00 00 00 call __security_check_cookie 0014c 48 8d a5 58 01 00 00 lea rsp, QWORD PTR [rbp+344] 00153 5f pop rdi 00154 5d pop rbp 00155 c3 ret 0 ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z ENDP ; std::_Uninitialized_move > _TEXT ENDS ; COMDAT text$x text$x SEGMENT _UFirst$ = 8 _ULast$ = 40 _Backout$ = 72 $T4 = 312 __$ArrayPad$ = 328 _First$ = 368 _Last$ = 376 _Dest$ = 384 _Al$ = 392 ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA PROC ; `std::_Uninitialized_move >'::`1'::dtor$0 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 48 lea rcx, QWORD PTR _Backout$[rbp] 00018 e8 00 00 00 00 call ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ ; std::_Uninitialized_backout_al >::~_Uninitialized_backout_al > 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA ENDP ; `std::_Uninitialized_move >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT _UFirst$ = 8 _ULast$ = 40 _Backout$ = 72 $T4 = 312 __$ArrayPad$ = 328 _First$ = 368 _Last$ = 376 _Dest$ = 384 _Al$ = 392 ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA PROC ; `std::_Uninitialized_move >'::`1'::dtor$0 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 48 lea rcx, QWORD PTR _Backout$[rbp] 00018 e8 00 00 00 00 call ??1?$_Uninitialized_backout_al@V?$allocator@K@std@@@std@@QEAA@XZ ; std::_Uninitialized_backout_al >::~_Uninitialized_backout_al > 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 ?dtor$0@?0???$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z@4HA ENDP ; `std::_Uninitialized_move >'::`1'::dtor$0 text$x 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 ??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z _TEXT SEGMENT _Block_size$ = 8 _Ptr_container$ = 40 _Ptr$ = 72 _Bytes$ = 320 ??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z PROC ; std::_Allocate_manually_vector_aligned, COMDAT ; 134 : __declspec(allocator) void* _Allocate_manually_vector_aligned(const size_t _Bytes) { $LN13: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 58 01 00 00 sub rsp, 344 ; 00000158H 0000e 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 135 : // allocate _Bytes manually aligned to at least _Big_allocation_alignment ; 136 : const size_t _Block_size = _Non_user_size + _Bytes; 0001f 48 8b 85 40 01 00 00 mov rax, QWORD PTR _Bytes$[rbp] 00026 48 83 c0 2f add rax, 47 ; 0000002fH 0002a 48 89 45 08 mov QWORD PTR _Block_size$[rbp], rax ; 137 : if (_Block_size <= _Bytes) { 0002e 48 8b 85 40 01 00 00 mov rax, QWORD PTR _Bytes$[rbp] 00035 48 39 45 08 cmp QWORD PTR _Block_size$[rbp], rax 00039 77 05 ja SHORT $LN8@Allocate_m ; 138 : _Throw_bad_array_new_length(); // add overflow 0003b e8 00 00 00 00 call ?_Throw_bad_array_new_length@std@@YAXXZ ; std::_Throw_bad_array_new_length $LN8@Allocate_m: ; 139 : } ; 140 : ; 141 : const uintptr_t _Ptr_container = reinterpret_cast(_Traits::_Allocate(_Block_size)); 00040 48 8b 4d 08 mov rcx, QWORD PTR _Block_size$[rbp] 00044 e8 00 00 00 00 call ?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z ; std::_Default_allocate_traits::_Allocate 00049 48 89 45 28 mov QWORD PTR _Ptr_container$[rbp], rax $LN4@Allocate_m: ; 142 : _STL_VERIFY(_Ptr_container != 0, "invalid argument"); // validate even in release since we're doing p[-1] 0004d 48 83 7d 28 00 cmp QWORD PTR _Ptr_container$[rbp], 0 00052 74 02 je SHORT $LN9@Allocate_m 00054 eb 6b jmp SHORT $LN10@Allocate_m $LN9@Allocate_m: $LN7@Allocate_m: 00056 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BB@FCMFBGOM@invalid?5argument@ 0005d 48 89 44 24 28 mov QWORD PTR [rsp+40], rax 00062 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 00069 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 0006e 45 33 c9 xor r9d, r9d 00071 41 b8 8e 00 00 00 mov r8d, 142 ; 0000008eH 00077 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 0007e b9 02 00 00 00 mov ecx, 2 00083 ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 00089 83 f8 01 cmp eax, 1 0008c 75 03 jne SHORT $LN12@Allocate_m 0008e cc int 3 0008f 33 c0 xor eax, eax $LN12@Allocate_m: 00091 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 0009a 41 b9 8e 00 00 00 mov r9d, 142 ; 0000008eH 000a0 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@ 000a7 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1EO@GFNCMDLA@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAA?$AAl?$AAl?$AAo?$AAc?$AAa?$AAt?$AAe?$AA_@ 000ae 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@ 000b5 ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 000bb 33 c0 xor eax, eax 000bd 85 c0 test eax, eax 000bf 75 95 jne SHORT $LN7@Allocate_m $LN10@Allocate_m: 000c1 33 c0 xor eax, eax 000c3 85 c0 test eax, eax 000c5 75 86 jne SHORT $LN4@Allocate_m ; 143 : void* const _Ptr = reinterpret_cast((_Ptr_container + _Non_user_size) & ~(_Big_allocation_alignment - 1)); 000c7 48 8b 45 28 mov rax, QWORD PTR _Ptr_container$[rbp] 000cb 48 83 c0 2f add rax, 47 ; 0000002fH 000cf 48 83 e0 e0 and rax, -32 ; ffffffffffffffe0H 000d3 48 89 45 48 mov QWORD PTR _Ptr$[rbp], rax ; 144 : static_cast(_Ptr)[-1] = _Ptr_container; 000d7 b8 08 00 00 00 mov eax, 8 000dc 48 6b c0 ff imul rax, rax, -1 000e0 48 8b 4d 48 mov rcx, QWORD PTR _Ptr$[rbp] 000e4 48 8b 55 28 mov rdx, QWORD PTR _Ptr_container$[rbp] 000e8 48 89 14 01 mov QWORD PTR [rcx+rax], rdx ; 145 : ; 146 : #ifdef _DEBUG ; 147 : static_cast(_Ptr)[-2] = _Big_allocation_sentinel; 000ec b8 08 00 00 00 mov eax, 8 000f1 48 6b c0 fe imul rax, rax, -2 000f5 48 8b 4d 48 mov rcx, QWORD PTR _Ptr$[rbp] 000f9 48 ba fa fa fa fa fa fa fa fa mov rdx, -361700864190383366 ; fafafafafafafafaH 00103 48 89 14 01 mov QWORD PTR [rcx+rax], rdx ; 148 : #endif // _DEBUG ; 149 : return _Ptr; 00107 48 8b 45 48 mov rax, QWORD PTR _Ptr$[rbp] $LN11@Allocate_m: ; 150 : } 0010b 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 00112 5f pop rdi 00113 5d pop rbp 00114 c3 ret 0 ??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z ENDP ; std::_Allocate_manually_vector_aligned _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\xutility ; COMDAT ??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z _TEXT SEGMENT _It$ = 224 ??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z PROC ; std::_Voidify_iter, COMDAT ; 130 : _NODISCARD constexpr void* _Voidify_iter(_Iter _It) 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:__7CE971A6_xutility 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 131 : if constexpr (is_pointer_v<_Iter>) { ; 132 : return const_cast(static_cast(_It)); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _It$[rbp] ; 133 : } else { ; 134 : return const_cast(static_cast(_STD addressof(*_It))); ; 135 : } ; 136 : } 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 ??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z ENDP ; std::_Voidify_iter _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\xutility ; COMDAT ??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z _TEXT SEGMENT _It$ = 224 _UIt$ = 232 ??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z PROC ; std::_Seek_wrapped > >,unsigned long *>, COMDAT ; 1427 : constexpr void _Seek_wrapped(_Iter& _It, _UIter&& _UIt) { $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:__7CE971A6_xutility 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1428 : if constexpr (_Wrapped_seekable_v<_Iter, _UIter>) { ; 1429 : _It._Seek_to(_STD forward<_UIter>(_UIt)); 00024 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _UIt$[rbp] 0002b e8 00 00 00 00 call ??$forward@PEAK@std@@YA$$QEAPEAKAEAPEAK@Z ; std::forward 00030 48 8b 10 mov rdx, QWORD PTR [rax] 00033 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _It$[rbp] 0003a e8 00 00 00 00 call ?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z ; std::_Vector_const_iterator > >::_Seek_to ; 1430 : } else { ; 1431 : _It = _STD forward<_UIter>(_UIt); ; 1432 : } ; 1433 : } 0003f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00046 5f pop rdi 00047 5d pop rbp 00048 c3 ret 0 ??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z ENDP ; std::_Seek_wrapped > >,unsigned long *> _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\xutility ; COMDAT ??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z _TEXT SEGMENT $T1 = 196 _First$ = 256 _Last$ = 264 _Val$ = 272 ??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z PROC ; std::_Find_unchecked, COMDAT ; 5333 : _NODISCARD _CONSTEXPR20 _InIt _Find_unchecked(const _InIt _First, const _InIt _Last, const _Ty& _Val) { $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 08 01 00 00 sub rsp, 264 ; 00000108H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__7CE971A6_xutility 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 5334 : // find first matching _Val; choose optimization ; 5335 : // activate optimization for contiguous iterators to (const) bytes and integral values ; 5336 : return _Find_unchecked1(_First, _Last, _Val, bool_constant<_Memchr_in_find_is_safe<_InIt, _Ty>>{}); 00029 48 8d 85 c4 00 00 00 lea rax, QWORD PTR $T1[rbp] 00030 48 8b f8 mov rdi, rax 00033 33 c0 xor eax, eax 00035 b9 01 00 00 00 mov ecx, 1 0003a f3 aa rep stosb 0003c 44 0f b6 8d c4 00 00 00 movzx r9d, BYTE PTR $T1[rbp] 00044 4c 8b 85 10 01 00 00 mov r8, QWORD PTR _Val$[rbp] 0004b 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _Last$[rbp] 00052 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR _First$[rbp] 00059 e8 00 00 00 00 call ??$_Find_unchecked1@PEAKK@std@@YAPEAKPEAKQEAKAEBKU?$integral_constant@_N$0A@@0@@Z ; std::_Find_unchecked1 ; 5337 : } 0005e 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00065 5f pop rdi 00066 5d pop rbp 00067 c3 ret 0 ??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z ENDP ; std::_Find_unchecked _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\xutility ; COMDAT ??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z _TEXT SEGMENT _It$ = 224 ??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z PROC ; std::_Get_unwrapped > > const &>, COMDAT ; 1324 : _NODISCARD constexpr decltype(auto) _Get_unwrapped(_Iter&& _It) { $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:__7CE971A6_xutility 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1325 : // unwrap an iterator previously subjected to _Adl_verify_range or otherwise validated ; 1326 : if constexpr (is_pointer_v>) { // special-case pointers and arrays ; 1327 : return _It + 0; ; 1328 : } else if constexpr (_Unwrappable_v<_Iter>) { ; 1329 : return static_cast<_Iter&&>(_It)._Unwrapped(); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _It$[rbp] 00026 e8 00 00 00 00 call ?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ ; std::_Vector_iterator > >::_Unwrapped ; 1330 : } else { ; 1331 : return static_cast<_Iter&&>(_It); ; 1332 : } ; 1333 : } 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 ??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z ENDP ; std::_Get_unwrapped > > const &> _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\xutility ; COMDAT ??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z _TEXT SEGMENT _It$ = 224 ??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z PROC ; std::_Get_unwrapped > > &>, COMDAT ; 1324 : _NODISCARD constexpr decltype(auto) _Get_unwrapped(_Iter&& _It) { $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:__7CE971A6_xutility 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1325 : // unwrap an iterator previously subjected to _Adl_verify_range or otherwise validated ; 1326 : if constexpr (is_pointer_v>) { // special-case pointers and arrays ; 1327 : return _It + 0; ; 1328 : } else if constexpr (_Unwrappable_v<_Iter>) { ; 1329 : return static_cast<_Iter&&>(_It)._Unwrapped(); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _It$[rbp] 00026 e8 00 00 00 00 call ?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ ; std::_Vector_iterator > >::_Unwrapped ; 1330 : } else { ; 1331 : return static_cast<_Iter&&>(_It); ; 1332 : } ; 1333 : } 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 ??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z ENDP ; std::_Get_unwrapped > > &> _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\xutility ; COMDAT ??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z _TEXT SEGMENT _First$ = 224 _Last$ = 232 ??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z PROC ; std::_Adl_verify_range > >,std::_Vector_iterator > > >, COMDAT ; 1307 : constexpr void _Adl_verify_range(const _Iter& _First, const _Sentinel& _Last) { $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:__7CE971A6_xutility 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1308 : // check that [_First, _Last) forms an iterator range ; 1309 : if constexpr (_Range_verifiable_v<_Iter, _Sentinel>) { ; 1310 : _Verify_range(_First, _Last); 00024 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Last$[rbp] 0002b 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _First$[rbp] 00032 e8 00 00 00 00 call ?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z ; std::_Verify_range ; 1311 : } ; 1312 : } 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 ??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z ENDP ; std::_Adl_verify_range > >,std::_Vector_iterator > > > _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\type_traits ; COMDAT ??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z _TEXT SEGMENT _Arg$ = 224 ??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z PROC ; std::forward, COMDAT ; 1443 : remove_reference_t<_Ty>& _Arg) noexcept { // forward an lvalue as either an lvalue or an rvalue $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:__D1154D4E_type_traits 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1444 : return static_cast<_Ty&&>(_Arg); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Arg$[rbp] ; 1445 : } 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 ??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z ENDP ; std::forward _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\xutility ; COMDAT ??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z _TEXT SEGMENT _It$ = 224 ??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z PROC ; std::_Voidify_iter, COMDAT ; 130 : _NODISCARD constexpr void* _Voidify_iter(_Iter _It) 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:__7CE971A6_xutility 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 131 : if constexpr (is_pointer_v<_Iter>) { ; 132 : return const_cast(static_cast(_It)); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _It$[rbp] ; 133 : } else { ; 134 : return const_cast(static_cast(_STD addressof(*_It))); ; 135 : } ; 136 : } 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 ??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z ENDP ; std::_Voidify_iter _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\xstddef ; COMDAT ??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z _TEXT SEGMENT _Val$ = 224 ??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z PROC ; std::addressof, COMDAT ; 274 : _NODISCARD constexpr _Ty* addressof(_Ty& _Val) 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:__40B2458B_xstddef 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 275 : return __builtin_addressof(_Val); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Val$[rbp] ; 276 : } 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 ??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z ENDP ; std::addressof _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 ??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z _TEXT SEGMENT _Bytes$ = 224 ??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z PROC ; std::_Allocate<16,std::_Default_allocate_traits,0>, COMDAT ; 230 : __declspec(allocator) _CONSTEXPR20_DYNALLOC void* _Allocate(const size_t _Bytes) { $LN5: 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 ; 231 : // allocate _Bytes when !_HAS_ALIGNED_NEW || _Align <= __STDCPP_DEFAULT_NEW_ALIGNMENT__ ; 232 : #if defined(_M_IX86) || defined(_M_X64) ; 233 : #ifdef __cpp_lib_constexpr_dynamic_alloc // TRANSITION, GH-1532 ; 234 : if (!_STD is_constant_evaluated()) ; 235 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 236 : { ; 237 : if (_Bytes >= _Big_allocation_threshold) { // boost the alignment of big allocations to help autovectorization 0001f 48 81 bd e0 00 00 00 00 10 00 00 cmp QWORD PTR _Bytes$[rbp], 4096 ; 00001000H 0002a 72 0e jb SHORT $LN2@Allocate ; 238 : return _Allocate_manually_vector_aligned<_Traits>(_Bytes); 0002c 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Bytes$[rbp] 00033 e8 00 00 00 00 call ??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z ; std::_Allocate_manually_vector_aligned 00038 eb 1a jmp SHORT $LN1@Allocate $LN2@Allocate: ; 239 : } ; 240 : } ; 241 : #endif // defined(_M_IX86) || defined(_M_X64) ; 242 : ; 243 : if (_Bytes != 0) { 0003a 48 83 bd e0 00 00 00 00 cmp QWORD PTR _Bytes$[rbp], 0 00042 74 0e je SHORT $LN3@Allocate ; 244 : return _Traits::_Allocate(_Bytes); 00044 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Bytes$[rbp] 0004b e8 00 00 00 00 call ?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z ; std::_Default_allocate_traits::_Allocate 00050 eb 02 jmp SHORT $LN1@Allocate $LN3@Allocate: ; 245 : } ; 246 : ; 247 : return nullptr; 00052 33 c0 xor eax, eax $LN1@Allocate: ; 248 : } 00054 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0005b 5f pop rdi 0005c 5d pop rbp 0005d c3 ret 0 ??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z ENDP ; std::_Allocate<16,std::_Default_allocate_traits,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 ??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z _TEXT SEGMENT _Overflow_is_possible$ = 4 _Max_possible$1 = 40 _Count$ = 288 ??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z PROC ; std::_Get_size_of_n<16>, COMDAT ; 59 : _NODISCARD constexpr size_t _Get_size_of_n(const size_t _Count) { $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 28 01 00 00 sub rsp, 296 ; 00000128H 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 ; 60 : constexpr bool _Overflow_is_possible = _Ty_size > 1; 0001f c6 45 04 01 mov BYTE PTR _Overflow_is_possible$[rbp], 1 ; 61 : ; 62 : if constexpr (_Overflow_is_possible) { ; 63 : constexpr size_t _Max_possible = static_cast(-1) / _Ty_size; 00023 48 b8 ff ff ff ff ff ff ff 0f mov rax, 1152921504606846975 ; 0fffffffffffffffH 0002d 48 89 45 28 mov QWORD PTR _Max_possible$1[rbp], rax ; 64 : if (_Count > _Max_possible) { 00031 48 b8 ff ff ff ff ff ff ff 0f mov rax, 1152921504606846975 ; 0fffffffffffffffH 0003b 48 39 85 20 01 00 00 cmp QWORD PTR _Count$[rbp], rax 00042 76 05 jbe SHORT $LN2@Get_size_o ; 65 : _Throw_bad_array_new_length(); // multiply overflow 00044 e8 00 00 00 00 call ?_Throw_bad_array_new_length@std@@YAXXZ ; std::_Throw_bad_array_new_length $LN2@Get_size_o: ; 66 : } ; 67 : } ; 68 : ; 69 : return _Count * _Ty_size; 00049 48 6b 85 20 01 00 00 10 imul rax, QWORD PTR _Count$[rbp], 16 $LN3@Get_size_o: ; 70 : } 00051 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 00058 5f pop rdi 00059 5d pop rbp 0005a c3 ret 0 ??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z ENDP ; std::_Get_size_of_n<16> _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\xstddef ; COMDAT ??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z _TEXT SEGMENT _Ptr$ = 224 ??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z PROC ; std::_Unfancy, COMDAT ; 288 : _NODISCARD constexpr _Ty* _Unfancy(_Ty* _Ptr) noexcept { // do nothing for plain pointers $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:__40B2458B_xstddef 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 289 : return _Ptr; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Ptr$[rbp] ; 290 : } 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 ??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z ENDP ; std::_Unfancy _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 ??$min@_K@std@@YAAEB_KAEB_K0@Z _TEXT SEGMENT $T1 = 200 tv65 = 216 _Left$ = 256 _Right$ = 264 ??$min@_K@std@@YAAEB_KAEB_K0@Z PROC ; std::min, COMDAT ; 66 : const _Ty& _Left, const _Ty& _Right) noexcept(noexcept(_Right < _Left)) /* strengthened */ { $LN5: 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 ; 67 : // return smaller of _Left and _Right ; 68 : return _Right < _Left ? _Right : _Left; 00024 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Right$[rbp] 0002b 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR _Left$[rbp] 00032 48 8b 09 mov rcx, QWORD PTR [rcx] 00035 48 39 08 cmp QWORD PTR [rax], rcx 00038 73 10 jae SHORT $LN3@min 0003a 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Right$[rbp] 00041 48 89 85 d8 00 00 00 mov QWORD PTR tv65[rbp], rax 00048 eb 0e jmp SHORT $LN4@min $LN3@min: 0004a 48 8b 85 00 01 00 00 mov rax, QWORD PTR _Left$[rbp] 00051 48 89 85 d8 00 00 00 mov QWORD PTR tv65[rbp], rax $LN4@min: 00058 48 8b 85 d8 00 00 00 mov rax, QWORD PTR tv65[rbp] 0005f 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 00066 48 8b 85 c8 00 00 00 mov rax, QWORD PTR $T1[rbp] ; 69 : } 0006d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00074 5f pop rdi 00075 5d pop rbp 00076 c3 ret 0 ??$min@_K@std@@YAAEB_KAEB_K0@Z ENDP ; std::min _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\ostream ; COMDAT ??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ _TEXT SEGMENT this$ = 224 ??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ PROC ; std::basic_ostream >::sentry::operator bool, COMDAT ; 124 : explicit __CLR_OR_THIS_CALL operator bool() const { $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:__65C59933_ostream 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 125 : return _Ok; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 0f b6 40 08 movzx eax, BYTE PTR [rax+8] ; 126 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00031 5f pop rdi 00032 5d pop rbp 00033 c3 ret 0 ??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ ENDP ; std::basic_ostream >::sentry::operator bool _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\ostream ; COMDAT ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ _TEXT SEGMENT _Zero_uncaught_exceptions$ = 4 tv72 = 212 this$ = 256 ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ PROC ; std::basic_ostream >::sentry::~sentry, COMDAT ; 109 : __CLR_OR_THIS_CALL ~sentry() 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:__65C59933_ostream 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 110 : #if !_HAS_EXCEPTIONS ; 111 : const bool _Zero_uncaught_exceptions = true; ; 112 : #elif _HAS_DEPRECATED_UNCAUGHT_EXCEPTION ; 113 : const bool _Zero_uncaught_exceptions = !_STD uncaught_exception(); // TRANSITION, ArchivedOS-12000909 0001f e8 00 00 00 00 call ?uncaught_exception@std@@YA_NXZ ; std::uncaught_exception 00024 0f b6 c0 movzx eax, al 00027 85 c0 test eax, eax 00029 75 09 jne SHORT $LN4@sentry 0002b c6 85 d4 00 00 00 01 mov BYTE PTR tv72[rbp], 1 00032 eb 07 jmp SHORT $LN5@sentry $LN4@sentry: 00034 c6 85 d4 00 00 00 00 mov BYTE PTR tv72[rbp], 0 $LN5@sentry: 0003b 0f b6 85 d4 00 00 00 movzx eax, BYTE PTR tv72[rbp] 00042 88 45 04 mov BYTE PTR _Zero_uncaught_exceptions$[rbp], al ; 114 : #else // ^^^ _HAS_DEPRECATED_UNCAUGHT_EXCEPTION / !_HAS_DEPRECATED_UNCAUGHT_EXCEPTION vvv ; 115 : const bool _Zero_uncaught_exceptions = _STD uncaught_exceptions() == 0; ; 116 : #endif // !_HAS_DEPRECATED_UNCAUGHT_EXCEPTION ; 117 : ; 118 : if (_Zero_uncaught_exceptions) { 00045 0f b6 45 04 movzx eax, BYTE PTR _Zero_uncaught_exceptions$[rbp] 00049 85 c0 test eax, eax 0004b 74 10 je SHORT $LN2@sentry ; 119 : this->_Myostr._Osfx(); 0004d 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00054 48 8b 08 mov rcx, QWORD PTR [rax] 00057 ff 15 00 00 00 00 call QWORD PTR __imp_?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ $LN2@sentry: ; 120 : } ; 121 : } 0005d 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00064 e8 00 00 00 00 call ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::_Sentry_base::~_Sentry_base 00069 90 npad 1 0006a 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00071 5f pop rdi 00072 5d pop rbp 00073 c3 ret 0 ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ENDP ; std::basic_ostream >::sentry::~sentry _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\ostream ; COMDAT ??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z _TEXT SEGMENT _Tied$ = 8 this$ = 256 _Ostr$ = 264 ??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z PROC ; std::basic_ostream >::sentry::sentry, COMDAT ; 92 : explicit __CLR_OR_THIS_CALL sentry(basic_ostream& _Ostr) : _Sentry_base(_Ostr) { $LN7: 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:__65C59933_ostream 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00024 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _Ostr$[rbp] 0002b 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00032 e8 00 00 00 00 call ??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z ; std::basic_ostream >::_Sentry_base::_Sentry_base 00037 90 npad 1 ; 93 : if (!_Ostr.good()) { 00038 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0003f 48 8b 00 mov rax, QWORD PTR [rax] 00042 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00046 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 0004d 48 03 c8 add rcx, rax 00050 48 8b c1 mov rax, rcx 00053 48 8b c8 mov rcx, rax 00056 ff 15 00 00 00 00 call QWORD PTR __imp_?good@ios_base@std@@QEBA_NXZ 0005c 0f b6 c0 movzx eax, al 0005f 85 c0 test eax, eax 00061 75 10 jne SHORT $LN2@sentry ; 94 : _Ok = false; 00063 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 0006a c6 40 08 00 mov BYTE PTR [rax+8], 0 ; 95 : return; 0006e e9 81 00 00 00 jmp $LN1@sentry $LN2@sentry: ; 96 : } ; 97 : ; 98 : const auto _Tied = _Ostr.tie(); 00073 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0007a 48 8b 00 mov rax, QWORD PTR [rax] 0007d 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00081 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00088 48 03 c8 add rcx, rax 0008b 48 8b c1 mov rax, rcx 0008e 48 8b c8 mov rcx, rax 00091 ff 15 00 00 00 00 call QWORD PTR __imp_?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ 00097 48 89 45 08 mov QWORD PTR _Tied$[rbp], rax ; 99 : if (!_Tied || _Tied == &_Ostr) { 0009b 48 83 7d 08 00 cmp QWORD PTR _Tied$[rbp], 0 000a0 74 0d je SHORT $LN4@sentry 000a2 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Ostr$[rbp] 000a9 48 39 45 08 cmp QWORD PTR _Tied$[rbp], rax 000ad 75 0d jne SHORT $LN3@sentry $LN4@sentry: ; 100 : _Ok = true; 000af 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 000b6 c6 40 08 01 mov BYTE PTR [rax+8], 1 ; 101 : return; 000ba eb 38 jmp SHORT $LN1@sentry $LN3@sentry: ; 102 : } ; 103 : ; 104 : _Tied->flush(); 000bc 48 8b 4d 08 mov rcx, QWORD PTR _Tied$[rbp] 000c0 ff 15 00 00 00 00 call QWORD PTR __imp_?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ ; 105 : _Ok = _Ostr.good(); // store test only after flushing tie 000c6 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Ostr$[rbp] 000cd 48 8b 00 mov rax, QWORD PTR [rax] 000d0 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 000d4 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 000db 48 03 c8 add rcx, rax 000de 48 8b c1 mov rax, rcx 000e1 48 8b c8 mov rcx, rax 000e4 ff 15 00 00 00 00 call QWORD PTR __imp_?good@ios_base@std@@QEBA_NXZ 000ea 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 000f1 88 41 08 mov BYTE PTR [rcx+8], al $LN1@sentry: ; 106 : } 000f4 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 000fb 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00102 5f pop rdi 00103 5d pop rbp 00104 c3 ret 0 ??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z ENDP ; std::basic_ostream >::sentry::sentry _TEXT ENDS ; COMDAT text$x text$x SEGMENT _Tied$ = 8 this$ = 256 _Ostr$ = 264 ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA PROC ; `std::basic_ostream >::sentry::sentry'::`1'::dtor$0 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 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0001b e8 00 00 00 00 call ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::_Sentry_base::~_Sentry_base 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA ENDP ; `std::basic_ostream >::sentry::sentry'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT _Tied$ = 8 this$ = 256 _Ostr$ = 264 ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA PROC ; `std::basic_ostream >::sentry::sentry'::`1'::dtor$0 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 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0001b e8 00 00 00 00 call ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::_Sentry_base::~_Sentry_base 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$0@?0???0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z@4HA ENDP ; `std::basic_ostream >::sentry::sentry'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\ostream ; COMDAT ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ _TEXT SEGMENT _Rdbuf$ = 8 tv72 = 216 this$ = 256 ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ PROC ; std::basic_ostream >::_Sentry_base::~_Sentry_base, COMDAT ; 78 : __CLR_OR_THIS_CALL ~_Sentry_base() noexcept { // destroy after unlocking $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 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:__65C59933_ostream 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 79 : const auto _Rdbuf = _Myostr.rdbuf(); 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 89 85 d8 00 00 00 mov QWORD PTR tv72[rbp], rax 00030 48 8b 85 d8 00 00 00 mov rax, QWORD PTR tv72[rbp] 00037 48 8b 00 mov rax, QWORD PTR [rax] 0003a 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 0003e 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR tv72[rbp] 00045 48 03 c8 add rcx, rax 00048 48 8b c1 mov rax, rcx 0004b 48 8b c8 mov rcx, rax 0004e ff 15 00 00 00 00 call QWORD PTR __imp_?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ 00054 48 89 45 08 mov QWORD PTR _Rdbuf$[rbp], rax ; 80 : if (_Rdbuf) { 00058 48 83 7d 08 00 cmp QWORD PTR _Rdbuf$[rbp], 0 0005d 74 0f je SHORT $LN2@Sentry_bas ; 81 : _Rdbuf->_Unlock(); 0005f 48 8b 45 08 mov rax, QWORD PTR _Rdbuf$[rbp] 00063 48 8b 00 mov rax, QWORD PTR [rax] 00066 48 8b 4d 08 mov rcx, QWORD PTR _Rdbuf$[rbp] 0006a ff 50 10 call QWORD PTR [rax+16] 0006d 90 npad 1 $LN2@Sentry_bas: ; 82 : } ; 83 : } 0006e 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00075 5f pop rdi 00076 5d pop rbp 00077 c3 ret 0 ??1_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ENDP ; std::basic_ostream >::_Sentry_base::~_Sentry_base _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\ostream ; COMDAT ??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z _TEXT SEGMENT _Rdbuf$ = 8 tv73 = 216 this$ = 256 _Ostr$ = 264 ??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z PROC ; std::basic_ostream >::_Sentry_base::_Sentry_base, COMDAT ; 71 : __CLR_OR_THIS_CALL _Sentry_base(basic_ostream& _Ostr) : _Myostr(_Ostr) { // lock the stream buffer, if there $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 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:__65C59933_ostream 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00024 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00032 48 89 08 mov QWORD PTR [rax], rcx ; 72 : const auto _Rdbuf = _Myostr.rdbuf(); 00035 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 0003c 48 8b 00 mov rax, QWORD PTR [rax] 0003f 48 89 85 d8 00 00 00 mov QWORD PTR tv73[rbp], rax 00046 48 8b 85 d8 00 00 00 mov rax, QWORD PTR tv73[rbp] 0004d 48 8b 00 mov rax, QWORD PTR [rax] 00050 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00054 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR tv73[rbp] 0005b 48 03 c8 add rcx, rax 0005e 48 8b c1 mov rax, rcx 00061 48 8b c8 mov rcx, rax 00064 ff 15 00 00 00 00 call QWORD PTR __imp_?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ 0006a 48 89 45 08 mov QWORD PTR _Rdbuf$[rbp], rax ; 73 : if (_Rdbuf) { 0006e 48 83 7d 08 00 cmp QWORD PTR _Rdbuf$[rbp], 0 00073 74 0e je SHORT $LN2@Sentry_bas ; 74 : _Rdbuf->_Lock(); 00075 48 8b 45 08 mov rax, QWORD PTR _Rdbuf$[rbp] 00079 48 8b 00 mov rax, QWORD PTR [rax] 0007c 48 8b 4d 08 mov rcx, QWORD PTR _Rdbuf$[rbp] 00080 ff 50 08 call QWORD PTR [rax+8] $LN2@Sentry_bas: ; 75 : } ; 76 : } 00083 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 0008a 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00091 5f pop rdi 00092 5d pop rbp 00093 c3 ret 0 ??0_Sentry_base@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z ENDP ; std::basic_ostream >::_Sentry_base::_Sentry_base _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 ??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z _TEXT SEGMENT _New_proxy$ = 8 $T1 = 232 this$ = 288 _Al$ = 296 ??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z PROC ; std::_Container_base12::_Alloc_proxy >, COMDAT ; 1073 : _CONSTEXPR20_CONTAINER void _Alloc_proxy(_Alloc&& _Al) { $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 28 01 00 00 sub rsp, 296 ; 00000128H 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 ; 1074 : _Container_proxy* const _New_proxy = _Unfancy(_Al.allocate(1)); 00024 ba 01 00 00 00 mov edx, 1 00029 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR _Al$[rbp] 00030 e8 00 00 00 00 call ?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z ; std::allocator::allocate 00035 48 8b c8 mov rcx, rax 00038 e8 00 00 00 00 call ??$_Unfancy@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@PEAU10@@Z ; std::_Unfancy 0003d 48 89 45 08 mov QWORD PTR _New_proxy$[rbp], rax ; 1075 : _Construct_in_place(*_New_proxy, this); 00041 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 89 85 e8 00 00 00 mov QWORD PTR $T1[rbp], rax 0004f 48 8d 95 e8 00 00 00 lea rdx, QWORD PTR $T1[rbp] 00056 48 8b 4d 08 mov rcx, QWORD PTR _New_proxy$[rbp] 0005a e8 00 00 00 00 call ??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z ; std::_Construct_in_place ; 1076 : _Myproxy = _New_proxy; 0005f 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 00066 48 8b 4d 08 mov rcx, QWORD PTR _New_proxy$[rbp] 0006a 48 89 08 mov QWORD PTR [rax], rcx ; 1077 : _New_proxy->_Mycont = this; 0006d 48 8b 45 08 mov rax, QWORD PTR _New_proxy$[rbp] 00071 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 00078 48 89 08 mov QWORD PTR [rax], rcx ; 1078 : } 0007b 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 00082 5f pop rdi 00083 5d pop rbp 00084 c3 ret 0 ??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z ENDP ; std::_Container_base12::_Alloc_proxy > _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 ??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z _TEXT SEGMENT this$ = 224 __formal$ = 232 ??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z PROC ; std::_Compressed_pair,std::_Vector_val >,1>::_Compressed_pair,std::_Vector_val >,1><>, COMDAT ; 1370 : : _Ty1(), _Myval2(_STD forward<_Other2>(_Val2)...) {} $LN3: 00000 88 54 24 10 mov BYTE PTR [rsp+16], dl 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 55 push rbp 0000a 57 push rdi 0000b 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00023 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0002a e8 00 00 00 00 call ??0?$allocator@K@std@@QEAA@XZ ; std::allocator::allocator 0002f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00036 48 8b c8 mov rcx, rax 00039 e8 00 00 00 00 call ??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ ; std::_Vector_val >::_Vector_val > 0003e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00045 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004c 5f pop rdi 0004d 5d pop rbp 0004e c3 ret 0 ??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z ENDP ; std::_Compressed_pair,std::_Vector_val >,1>::_Compressed_pair,std::_Vector_val >,1><> _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:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z _TEXT SEGMENT this$ = 224 _Count$ = 232 ?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z PROC ; std::allocator::allocate, COMDAT ; 838 : _NODISCARD _CONSTEXPR20_DYNALLOC __declspec(allocator) _Ty* allocate(_CRT_GUARDOVERFLOW const size_t _Count) { $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 ; 839 : return static_cast<_Ty*>(_Allocate<_New_alignof<_Ty>>(_Get_size_of_n(_Count))); 00024 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Count$[rbp] 0002b e8 00 00 00 00 call ??$_Get_size_of_n@$0BA@@std@@YA_K_K@Z ; std::_Get_size_of_n<16> 00030 48 8b c8 mov rcx, rax 00033 e8 00 00 00 00 call ??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z ; std::_Allocate<16,std::_Default_allocate_traits,0> ; 840 : } 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 ?allocate@?$allocator@U_Container_proxy@std@@@std@@QEAAPEAU_Container_proxy@2@_K@Z ENDP ; std::allocator::allocate _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 ??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z _TEXT SEGMENT _Al$ = 8 _My_data$ = 40 _Myfirst$ = 72 _Mylast$ = 104 _Whereoff$ = 136 _Oldsize$ = 168 _Newsize$ = 200 _Newcapacity$ = 232 _Newvec$ = 264 _Constructed_last$ = 296 _Constructed_first$ = 328 tv134 = 536 tv132 = 544 this$ = 592 _Whereptr$ = 600 <_Val_0>$ = 608 ??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z PROC ; std::vector >::_Emplace_reallocate, COMDAT ; 765 : _CONSTEXPR20_CONTAINER pointer _Emplace_reallocate(const pointer _Whereptr, _Valty&&... _Val) { $LN13: 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 02 00 00 sub rsp, 600 ; 00000258H 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 ; 766 : // reallocate and insert by perfectly forwarding _Val at _Whereptr ; 767 : _Alty& _Al = _Getal(); 00029 48 8b 8d 50 02 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 48 89 45 08 mov QWORD PTR _Al$[rbp], rax ; 768 : auto& _My_data = _Mypair._Myval2; 00039 48 8b 85 50 02 00 00 mov rax, QWORD PTR this$[rbp] 00040 48 89 45 28 mov QWORD PTR _My_data$[rbp], rax ; 769 : pointer& _Myfirst = _My_data._Myfirst; 00044 48 8b 45 28 mov rax, QWORD PTR _My_data$[rbp] 00048 48 83 c0 08 add rax, 8 0004c 48 89 45 48 mov QWORD PTR _Myfirst$[rbp], rax ; 770 : pointer& _Mylast = _My_data._Mylast; 00050 48 8b 45 28 mov rax, QWORD PTR _My_data$[rbp] 00054 48 83 c0 10 add rax, 16 00058 48 89 45 68 mov QWORD PTR _Mylast$[rbp], rax ; 771 : ; 772 : _STL_INTERNAL_CHECK(_Mylast == _My_data._Myend); // check that we have no unused capacity ; 773 : ; 774 : const auto _Whereoff = static_cast(_Whereptr - _Myfirst); 0005c 48 8b 45 48 mov rax, QWORD PTR _Myfirst$[rbp] 00060 48 8b 00 mov rax, QWORD PTR [rax] 00063 48 8b 8d 58 02 00 00 mov rcx, QWORD PTR _Whereptr$[rbp] 0006a 48 2b c8 sub rcx, rax 0006d 48 8b c1 mov rax, rcx 00070 48 c1 f8 02 sar rax, 2 00074 48 89 85 88 00 00 00 mov QWORD PTR _Whereoff$[rbp], rax ; 775 : const auto _Oldsize = static_cast(_Mylast - _Myfirst); 0007b 48 8b 45 68 mov rax, QWORD PTR _Mylast$[rbp] 0007f 48 8b 4d 48 mov rcx, QWORD PTR _Myfirst$[rbp] 00083 48 8b 09 mov rcx, QWORD PTR [rcx] 00086 48 8b 00 mov rax, QWORD PTR [rax] 00089 48 2b c1 sub rax, rcx 0008c 48 c1 f8 02 sar rax, 2 00090 48 89 85 a8 00 00 00 mov QWORD PTR _Oldsize$[rbp], rax ; 776 : ; 777 : if (_Oldsize == max_size()) { 00097 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 0009e e8 00 00 00 00 call ?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::max_size 000a3 48 39 85 a8 00 00 00 cmp QWORD PTR _Oldsize$[rbp], rax 000aa 75 05 jne SHORT $LN2@Emplace_re ; 778 : _Xlength(); 000ac e8 00 00 00 00 call ?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ ; std::vector >::_Xlength $LN2@Emplace_re: ; 779 : } ; 780 : ; 781 : const size_type _Newsize = _Oldsize + 1; 000b1 48 8b 85 a8 00 00 00 mov rax, QWORD PTR _Oldsize$[rbp] 000b8 48 ff c0 inc rax 000bb 48 89 85 c8 00 00 00 mov QWORD PTR _Newsize$[rbp], rax ; 782 : const size_type _Newcapacity = _Calculate_growth(_Newsize); 000c2 48 8b 95 c8 00 00 00 mov rdx, QWORD PTR _Newsize$[rbp] 000c9 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 000d0 e8 00 00 00 00 call ?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z ; std::vector >::_Calculate_growth 000d5 48 89 85 e8 00 00 00 mov QWORD PTR _Newcapacity$[rbp], rax ; 783 : ; 784 : const pointer _Newvec = _Al.allocate(_Newcapacity); 000dc 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Newcapacity$[rbp] 000e3 48 8b 4d 08 mov rcx, QWORD PTR _Al$[rbp] 000e7 e8 00 00 00 00 call ?allocate@?$allocator@K@std@@QEAAPEAK_K@Z ; std::allocator::allocate 000ec 48 89 85 08 01 00 00 mov QWORD PTR _Newvec$[rbp], rax ; 785 : const pointer _Constructed_last = _Newvec + _Whereoff + 1; 000f3 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 000fa 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR _Whereoff$[rbp] 00101 48 8d 44 88 04 lea rax, QWORD PTR [rax+rcx*4+4] 00106 48 89 85 28 01 00 00 mov QWORD PTR _Constructed_last$[rbp], rax ; 786 : pointer _Constructed_first = _Constructed_last; 0010d 48 8b 85 28 01 00 00 mov rax, QWORD PTR _Constructed_last$[rbp] 00114 48 89 85 48 01 00 00 mov QWORD PTR _Constructed_first$[rbp], rax ; 787 : ; 788 : _TRY_BEGIN ; 789 : _Alty_traits::construct(_Al, _Unfancy(_Newvec + _Whereoff), _STD forward<_Valty>(_Val)...); 0011b 48 8b 8d 60 02 00 00 mov rcx, QWORD PTR <_Val_0>$[rbp] 00122 e8 00 00 00 00 call ??$forward@AEBK@std@@YAAEBKAEBK@Z ; std::forward 00127 48 89 85 18 02 00 00 mov QWORD PTR tv134[rbp], rax 0012e 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 00135 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR _Whereoff$[rbp] 0013c 48 8d 04 88 lea rax, QWORD PTR [rax+rcx*4] 00140 48 8b c8 mov rcx, rax 00143 e8 00 00 00 00 call ??$_Unfancy@K@std@@YAPEAKPEAK@Z ; std::_Unfancy 00148 48 89 85 20 02 00 00 mov QWORD PTR tv132[rbp], rax 0014f 4c 8b 85 18 02 00 00 mov r8, QWORD PTR tv134[rbp] 00156 48 8b 95 20 02 00 00 mov rdx, QWORD PTR tv132[rbp] 0015d 48 8b 4d 08 mov rcx, QWORD PTR _Al$[rbp] 00161 e8 00 00 00 00 call ??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z ; std::_Default_allocator_traits >::construct ; 790 : _Constructed_first = _Newvec + _Whereoff; 00166 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 0016d 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR _Whereoff$[rbp] 00174 48 8d 04 88 lea rax, QWORD PTR [rax+rcx*4] 00178 48 89 85 48 01 00 00 mov QWORD PTR _Constructed_first$[rbp], rax ; 791 : ; 792 : if (_Whereptr == _Mylast) { // at back, provide strong guarantee 0017f 48 8b 45 68 mov rax, QWORD PTR _Mylast$[rbp] 00183 48 8b 00 mov rax, QWORD PTR [rax] 00186 48 39 85 58 02 00 00 cmp QWORD PTR _Whereptr$[rbp], rax 0018d 75 23 jne SHORT $LN4@Emplace_re ; 793 : _Umove_if_noexcept(_Myfirst, _Mylast, _Newvec); 0018f 4c 8b 8d 08 01 00 00 mov r9, QWORD PTR _Newvec$[rbp] 00196 48 8b 45 68 mov rax, QWORD PTR _Mylast$[rbp] 0019a 4c 8b 00 mov r8, QWORD PTR [rax] 0019d 48 8b 45 48 mov rax, QWORD PTR _Myfirst$[rbp] 001a1 48 8b 10 mov rdx, QWORD PTR [rax] 001a4 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 001ab e8 00 00 00 00 call ?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z ; std::vector >::_Umove_if_noexcept ; 794 : } else { // provide basic guarantee 001b0 eb 60 jmp SHORT $LN5@Emplace_re $LN4@Emplace_re: ; 795 : _Umove(_Myfirst, _Whereptr, _Newvec); 001b2 4c 8b 8d 08 01 00 00 mov r9, QWORD PTR _Newvec$[rbp] 001b9 4c 8b 85 58 02 00 00 mov r8, QWORD PTR _Whereptr$[rbp] 001c0 48 8b 45 48 mov rax, QWORD PTR _Myfirst$[rbp] 001c4 48 8b 10 mov rdx, QWORD PTR [rax] 001c7 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 001ce e8 00 00 00 00 call ?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z ; std::vector >::_Umove ; 796 : _Constructed_first = _Newvec; 001d3 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 001da 48 89 85 48 01 00 00 mov QWORD PTR _Constructed_first$[rbp], rax ; 797 : _Umove(_Whereptr, _Mylast, _Newvec + _Whereoff + 1); 001e1 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 001e8 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR _Whereoff$[rbp] 001ef 48 8d 44 88 04 lea rax, QWORD PTR [rax+rcx*4+4] 001f4 4c 8b c8 mov r9, rax 001f7 48 8b 45 68 mov rax, QWORD PTR _Mylast$[rbp] 001fb 4c 8b 00 mov r8, QWORD PTR [rax] 001fe 48 8b 95 58 02 00 00 mov rdx, QWORD PTR _Whereptr$[rbp] 00205 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 0020c e8 00 00 00 00 call ?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z ; std::vector >::_Umove 00211 90 npad 1 $LN5@Emplace_re: 00212 eb 00 jmp SHORT $LN9@Emplace_re $LN10@Emplace_re: $LN9@Emplace_re: ; 798 : } ; 799 : _CATCH_ALL ; 800 : _Destroy(_Constructed_first, _Constructed_last); ; 801 : _Al.deallocate(_Newvec, _Newcapacity); ; 802 : _RERAISE; ; 803 : _CATCH_END ; 804 : ; 805 : _Change_array(_Newvec, _Newsize, _Newcapacity); 00214 4c 8b 8d e8 00 00 00 mov r9, QWORD PTR _Newcapacity$[rbp] 0021b 4c 8b 85 c8 00 00 00 mov r8, QWORD PTR _Newsize$[rbp] 00222 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _Newvec$[rbp] 00229 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 00230 e8 00 00 00 00 call ?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z ; std::vector >::_Change_array ; 806 : return _Newvec + _Whereoff; 00235 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 0023c 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR _Whereoff$[rbp] 00243 48 8d 04 88 lea rax, QWORD PTR [rax+rcx*4] ; 807 : } 00247 48 8d a5 38 02 00 00 lea rsp, QWORD PTR [rbp+568] 0024e 5f pop rdi 0024f 5d pop rbp 00250 c3 ret 0 $LN11@Emplace_re: ??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z ENDP ; std::vector >::_Emplace_reallocate _TEXT ENDS ; COMDAT text$x text$x SEGMENT _Al$ = 8 _My_data$ = 40 _Myfirst$ = 72 _Mylast$ = 104 _Whereoff$ = 136 _Oldsize$ = 168 _Newsize$ = 200 _Newcapacity$ = 232 _Newvec$ = 264 _Constructed_last$ = 296 _Constructed_first$ = 328 tv134 = 536 tv132 = 544 this$ = 592 _Whereptr$ = 600 <_Val_0>$ = 608 ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA PROC ; `std::vector >::_Emplace_reallocate'::`1'::catch$0 ; 798 : } ; 799 : _CATCH_ALL 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] __catch$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z$0: ; 798 : } ; 799 : _CATCH_ALL ; 800 : _Destroy(_Constructed_first, _Constructed_last); 00014 4c 8b 85 28 01 00 00 mov r8, QWORD PTR _Constructed_last$[rbp] 0001b 48 8b 95 48 01 00 00 mov rdx, QWORD PTR _Constructed_first$[rbp] 00022 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 00029 e8 00 00 00 00 call ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy ; 798 : } ; 799 : _CATCH_ALL ; 800 : _Destroy(_Constructed_first, _Constructed_last); ; 801 : _Al.deallocate(_Newvec, _Newcapacity); 0002e 4c 8b 85 e8 00 00 00 mov r8, QWORD PTR _Newcapacity$[rbp] 00035 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _Newvec$[rbp] 0003c 48 8b 4d 08 mov rcx, QWORD PTR _Al$[rbp] 00040 e8 00 00 00 00 call ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ; std::allocator::deallocate ; 798 : } ; 799 : _CATCH_ALL ; 800 : _Destroy(_Constructed_first, _Constructed_last); ; 801 : _Al.deallocate(_Newvec, _Newcapacity); ; 802 : _RERAISE; 00045 33 d2 xor edx, edx 00047 33 c9 xor ecx, ecx 00049 e8 00 00 00 00 call _CxxThrowException 0004e 90 npad 1 ; 798 : } ; 799 : _CATCH_ALL ; 800 : _Destroy(_Constructed_first, _Constructed_last); ; 801 : _Al.deallocate(_Newvec, _Newcapacity); ; 802 : _RERAISE; ; 803 : _CATCH_END 0004f 48 8d 05 00 00 00 00 lea rax, $LN10@catch$0 00056 48 83 c4 28 add rsp, 40 ; 00000028H 0005a 5f pop rdi 0005b 5d pop rbp 0005c c3 ret 0 0005d cc int 3 ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA ENDP ; `std::vector >::_Emplace_reallocate'::`1'::catch$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT _Al$ = 8 _My_data$ = 40 _Myfirst$ = 72 _Mylast$ = 104 _Whereoff$ = 136 _Oldsize$ = 168 _Newsize$ = 200 _Newcapacity$ = 232 _Newvec$ = 264 _Constructed_last$ = 296 _Constructed_first$ = 328 tv134 = 536 tv132 = 544 this$ = 592 _Whereptr$ = 600 <_Val_0>$ = 608 ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA PROC ; `std::vector >::_Emplace_reallocate'::`1'::catch$0 ; 799 : _CATCH_ALL 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] __catch$??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z$0: ; 800 : _Destroy(_Constructed_first, _Constructed_last); 00014 4c 8b 85 28 01 00 00 mov r8, QWORD PTR _Constructed_last$[rbp] 0001b 48 8b 95 48 01 00 00 mov rdx, QWORD PTR _Constructed_first$[rbp] 00022 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR this$[rbp] 00029 e8 00 00 00 00 call ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy ; 801 : _Al.deallocate(_Newvec, _Newcapacity); 0002e 4c 8b 85 e8 00 00 00 mov r8, QWORD PTR _Newcapacity$[rbp] 00035 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _Newvec$[rbp] 0003c 48 8b 4d 08 mov rcx, QWORD PTR _Al$[rbp] 00040 e8 00 00 00 00 call ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ; std::allocator::deallocate ; 802 : _RERAISE; 00045 33 d2 xor edx, edx 00047 33 c9 xor ecx, ecx 00049 e8 00 00 00 00 call _CxxThrowException 0004e 90 npad 1 ; 803 : _CATCH_END 0004f 48 8d 05 00 00 00 00 lea rax, $LN10@catch$0 00056 48 83 c4 28 add rsp, 40 ; 00000028H 0005a 5f pop rdi 0005b 5d pop rbp 0005c c3 ret 0 0005d cc int 3 ?catch$0@?0???$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z@4HA ENDP ; `std::vector >::_Emplace_reallocate'::`1'::catch$0 text$x 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 ??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z _TEXT SEGMENT $T1 = 200 __formal$ = 256 _Ptr$ = 264 <_Args_0>$ = 272 ??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z PROC ; std::_Default_allocator_traits >::construct, COMDAT ; 707 : static _CONSTEXPR20_DYNALLOC void construct(_Alloc&, _Objty* const _Ptr, _Types&&... _Args) { $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 08 01 00 00 sub rsp, 264 ; 00000108H 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 00029 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR _Ptr$[rbp] 00030 e8 00 00 00 00 call ??$_Voidify_iter@PEAK@std@@YAPEAXPEAK@Z ; std::_Voidify_iter 00035 48 8b d0 mov rdx, rax 00038 b9 04 00 00 00 mov ecx, 4 0003d e8 00 00 00 00 call ??2@YAPEAX_KPEAX@Z ; operator new 00042 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 00049 48 8b 8d 10 01 00 00 mov rcx, QWORD PTR <_Args_0>$[rbp] 00050 e8 00 00 00 00 call ??$forward@AEBK@std@@YAAEBKAEBK@Z ; std::forward 00055 48 8b 8d c8 00 00 00 mov rcx, QWORD PTR $T1[rbp] 0005c 8b 00 mov eax, DWORD PTR [rax] 0005e 89 01 mov DWORD PTR [rcx], eax ; 708 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 709 : if (_STD is_constant_evaluated()) { ; 710 : _STD construct_at(_Ptr, _STD forward<_Types>(_Args)...); ; 711 : } else ; 712 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 713 : { ; 714 : ::new (_Voidify_iter(_Ptr)) _Objty(_STD forward<_Types>(_Args)...); ; 715 : } ; 716 : } 00060 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00067 5f pop rdi 00068 5d pop rbp 00069 c3 ret 0 ??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z ENDP ; std::_Default_allocator_traits >::construct _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\xstddef ; COMDAT ??$_Unfancy@K@std@@YAPEAKPEAK@Z _TEXT SEGMENT _Ptr$ = 224 ??$_Unfancy@K@std@@YAPEAKPEAK@Z PROC ; std::_Unfancy, COMDAT ; 288 : _NODISCARD constexpr _Ty* _Unfancy(_Ty* _Ptr) noexcept { // do nothing for plain pointers $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:__40B2458B_xstddef 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 289 : return _Ptr; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Ptr$[rbp] ; 290 : } 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 ??$_Unfancy@K@std@@YAPEAKPEAK@Z ENDP ; std::_Unfancy _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 ??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z _TEXT SEGMENT _My_data$ = 8 _Mylast$ = 40 _Result$ = 72 tv81 = 280 tv79 = 288 tv77 = 296 this$ = 336 <_Val_0>$ = 344 ??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z PROC ; std::vector >::_Emplace_back_with_unused_capacity, COMDAT ; 721 : _CONSTEXPR20_CONTAINER decltype(auto) _Emplace_back_with_unused_capacity(_Valty&&... _Val) { $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 58 01 00 00 sub rsp, 344 ; 00000158H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 722 : // insert by perfectly forwarding into element at end, provide strong guarantee ; 723 : auto& _My_data = _Mypair._Myval2; 00024 48 8b 85 50 01 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 724 : pointer& _Mylast = _My_data._Mylast; 0002f 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00033 48 83 c0 10 add rax, 16 00037 48 89 45 28 mov QWORD PTR _Mylast$[rbp], rax ; 725 : _STL_INTERNAL_CHECK(_Mylast != _My_data._Myend); // check that we have unused capacity ; 726 : _Alty_traits::construct(_Getal(), _Unfancy(_Mylast), _STD forward<_Valty>(_Val)...); 0003b 48 8b 8d 58 01 00 00 mov rcx, QWORD PTR <_Val_0>$[rbp] 00042 e8 00 00 00 00 call ??$forward@AEBK@std@@YAAEBKAEBK@Z ; std::forward 00047 48 89 85 18 01 00 00 mov QWORD PTR tv81[rbp], rax 0004e 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 00052 48 8b 08 mov rcx, QWORD PTR [rax] 00055 e8 00 00 00 00 call ??$_Unfancy@K@std@@YAPEAKPEAK@Z ; std::_Unfancy 0005a 48 89 85 20 01 00 00 mov QWORD PTR tv79[rbp], rax 00061 48 8b 8d 50 01 00 00 mov rcx, QWORD PTR this$[rbp] 00068 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 0006d 48 89 85 28 01 00 00 mov QWORD PTR tv77[rbp], rax 00074 4c 8b 85 18 01 00 00 mov r8, QWORD PTR tv81[rbp] 0007b 48 8b 95 20 01 00 00 mov rdx, QWORD PTR tv79[rbp] 00082 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR tv77[rbp] 00089 e8 00 00 00 00 call ??$construct@KAEBK@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SAXAEAV?$allocator@K@1@QEAKAEBK@Z ; std::_Default_allocator_traits >::construct ; 727 : _Orphan_range(_Mylast, _Mylast); 0008e 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 00092 4c 8b 00 mov r8, QWORD PTR [rax] 00095 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 00099 48 8b 10 mov rdx, QWORD PTR [rax] 0009c 48 8b 8d 50 01 00 00 mov rcx, QWORD PTR this$[rbp] 000a3 e8 00 00 00 00 call ?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ; std::vector >::_Orphan_range ; 728 : _Ty& _Result = *_Mylast; 000a8 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 000ac 48 8b 00 mov rax, QWORD PTR [rax] 000af 48 89 45 48 mov QWORD PTR _Result$[rbp], rax ; 729 : ++_Mylast; 000b3 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 000b7 48 8b 00 mov rax, QWORD PTR [rax] 000ba 48 83 c0 04 add rax, 4 000be 48 8b 4d 28 mov rcx, QWORD PTR _Mylast$[rbp] 000c2 48 89 01 mov QWORD PTR [rcx], rax ; 730 : #if _HAS_CXX17 ; 731 : return _Result; 000c5 48 8b 45 48 mov rax, QWORD PTR _Result$[rbp] ; 732 : #else // ^^^ _HAS_CXX17 ^^^ // vvv !_HAS_CXX17 vvv ; 733 : (void) _Result; ; 734 : #endif // _HAS_CXX17 ; 735 : } 000c9 48 8d a5 38 01 00 00 lea rsp, QWORD PTR [rbp+312] 000d0 5f pop rdi 000d1 5d pop rbp 000d2 c3 ret 0 ??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z ENDP ; std::vector >::_Emplace_back_with_unused_capacity _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\type_traits ; COMDAT ??$forward@AEBK@std@@YAAEBKAEBK@Z _TEXT SEGMENT _Arg$ = 224 ??$forward@AEBK@std@@YAAEBKAEBK@Z PROC ; std::forward, COMDAT ; 1443 : remove_reference_t<_Ty>& _Arg) noexcept { // forward an lvalue as either an lvalue or an rvalue $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:__D1154D4E_type_traits 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1444 : return static_cast<_Ty&&>(_Arg); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Arg$[rbp] ; 1445 : } 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 ??$forward@AEBK@std@@YAAEBKAEBK@Z ENDP ; std::forward _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 ??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z _TEXT SEGMENT _My_data$ = 8 _Mylast$ = 40 _Result$ = 72 tv83 = 280 tv81 = 288 this$ = 336 <_Val_0>$ = 344 ??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z PROC ; std::vector >::emplace_back, COMDAT ; 739 : _CONSTEXPR20_CONTAINER decltype(auto) emplace_back(_Valty&&... _Val) { $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 58 01 00 00 sub rsp, 344 ; 00000158H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 740 : // insert by perfectly forwarding into element at end, provide strong guarantee ; 741 : auto& _My_data = _Mypair._Myval2; 00024 48 8b 85 50 01 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 742 : pointer& _Mylast = _My_data._Mylast; 0002f 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00033 48 83 c0 10 add rax, 16 00037 48 89 45 28 mov QWORD PTR _Mylast$[rbp], rax ; 743 : if (_Mylast != _My_data._Myend) { 0003b 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 0003f 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00043 48 8b 49 18 mov rcx, QWORD PTR [rcx+24] 00047 48 39 08 cmp QWORD PTR [rax], rcx 0004a 74 1d je SHORT $LN2@emplace_ba ; 744 : return _Emplace_back_with_unused_capacity(_STD forward<_Valty>(_Val)...); 0004c 48 8b 8d 58 01 00 00 mov rcx, QWORD PTR <_Val_0>$[rbp] 00053 e8 00 00 00 00 call ??$forward@AEBK@std@@YAAEBKAEBK@Z ; std::forward 00058 48 8b d0 mov rdx, rax 0005b 48 8b 8d 50 01 00 00 mov rcx, QWORD PTR this$[rbp] 00062 e8 00 00 00 00 call ??$_Emplace_back_with_unused_capacity@AEBK@?$vector@KV?$allocator@K@std@@@std@@AEAA?A_TAEBK@Z ; std::vector >::_Emplace_back_with_unused_capacity 00067 eb 43 jmp SHORT $LN1@emplace_ba $LN2@emplace_ba: ; 745 : } ; 746 : ; 747 : _Ty& _Result = *_Emplace_reallocate(_Mylast, _STD forward<_Valty>(_Val)...); 00069 48 8b 8d 58 01 00 00 mov rcx, QWORD PTR <_Val_0>$[rbp] 00070 e8 00 00 00 00 call ??$forward@AEBK@std@@YAAEBKAEBK@Z ; std::forward 00075 48 89 85 18 01 00 00 mov QWORD PTR tv83[rbp], rax 0007c 48 8b 45 28 mov rax, QWORD PTR _Mylast$[rbp] 00080 48 8b 00 mov rax, QWORD PTR [rax] 00083 48 89 85 20 01 00 00 mov QWORD PTR tv81[rbp], rax 0008a 4c 8b 85 18 01 00 00 mov r8, QWORD PTR tv83[rbp] 00091 48 8b 95 20 01 00 00 mov rdx, QWORD PTR tv81[rbp] 00098 48 8b 8d 50 01 00 00 mov rcx, QWORD PTR this$[rbp] 0009f e8 00 00 00 00 call ??$_Emplace_reallocate@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKQEAKAEBK@Z ; std::vector >::_Emplace_reallocate 000a4 48 89 45 48 mov QWORD PTR _Result$[rbp], rax ; 748 : #if _HAS_CXX17 ; 749 : return _Result; 000a8 48 8b 45 48 mov rax, QWORD PTR _Result$[rbp] $LN1@emplace_ba: ; 750 : #else // ^^^ _HAS_CXX17 ^^^ // vvv !_HAS_CXX17 vvv ; 751 : (void) _Result; ; 752 : #endif // _HAS_CXX17 ; 753 : } 000ac 48 8d a5 38 01 00 00 lea rsp, QWORD PTR [rbp+312] 000b3 5f pop rdi 000b4 5d pop rbp 000b5 c3 ret 0 ??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z ENDP ; std::vector >::emplace_back _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\xstddef ; COMDAT ??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z _TEXT SEGMENT _Val$ = 224 ??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z PROC ; std::addressof > >, COMDAT ; 274 : _NODISCARD constexpr _Ty* addressof(_Ty& _Val) 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:__40B2458B_xstddef 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 275 : return __builtin_addressof(_Val); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Val$[rbp] ; 276 : } 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 ??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z ENDP ; std::addressof > > _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\ostream ; COMDAT ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z _TEXT SEGMENT _State$ = 4 _Ok$ = 40 _Pad$4 = 88 $T5 = 308 $T6 = 340 $T7 = 372 $T8 = 404 $T9 = 436 $T10 = 468 $T11 = 504 tv65 = 516 tv305 = 520 tv303 = 520 tv300 = 520 tv295 = 520 tv281 = 520 tv266 = 520 tv130 = 520 tv245 = 528 tv204 = 528 tv179 = 528 tv306 = 536 tv304 = 536 tv301 = 536 tv243 = 537 tv177 = 537 tv307 = 540 tv302 = 540 __$ArrayPad$ = 544 _Ostr$ = 592 _Ch$ = 600 ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z PROC ; std::operator<< >, COMDAT ; 779 : basic_ostream& _Ostr, char _Ch) { // insert a char into char stream $LN23: 00000 88 54 24 10 mov BYTE PTR [rsp+16], dl 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 55 push rbp 0000a 57 push rdi 0000b 48 81 ec 58 02 00 00 sub rsp, 600 ; 00000258H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 0001c b9 5e 00 00 00 mov ecx, 94 ; 0000005eH 00021 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00026 f3 ab rep stosd 00028 48 8b 8c 24 78 02 00 00 mov rcx, QWORD PTR [rsp+632] 00030 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00037 48 33 c5 xor rax, rbp 0003a 48 89 85 20 02 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00041 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__65C59933_ostream 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 780 : using _Elem = char; ; 781 : using _Myos = basic_ostream<_Elem, _Traits>; ; 782 : ; 783 : ios_base::iostate _State = ios_base::goodbit; 0004d c7 45 04 00 00 00 00 mov DWORD PTR _State$[rbp], 0 ; 784 : const typename _Myos::sentry _Ok(_Ostr); 00054 48 8b 95 50 02 00 00 mov rdx, QWORD PTR _Ostr$[rbp] 0005b 48 8d 4d 28 lea rcx, QWORD PTR _Ok$[rbp] 0005f e8 00 00 00 00 call ??0sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@AEAV12@@Z ; std::basic_ostream >::sentry::sentry 00064 90 npad 1 ; 785 : ; 786 : if (_Ok) { // state okay, insert 00065 48 8d 4d 28 lea rcx, QWORD PTR _Ok$[rbp] 00069 e8 00 00 00 00 call ??Bsentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEBA_NXZ ; std::basic_ostream >::sentry::operator bool 0006e 0f b6 c0 movzx eax, al 00071 85 c0 test eax, eax 00073 0f 84 1d 03 00 00 je $LN8@operator ; 787 : streamsize _Pad = _Ostr.width() <= 1 ? 0 : _Ostr.width() - 1; 00079 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 00080 48 8b 00 mov rax, QWORD PTR [rax] 00083 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00087 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 0008e 48 03 c8 add rcx, rax 00091 48 8b c1 mov rax, rcx 00094 48 8b c8 mov rcx, rax 00097 ff 15 00 00 00 00 call QWORD PTR __imp_?width@ios_base@std@@QEBA_JXZ 0009d 48 83 f8 01 cmp rax, 1 000a1 7f 0d jg SHORT $LN15@operator 000a3 48 c7 85 08 02 00 00 00 00 00 00 mov QWORD PTR tv130[rbp], 0 000ae eb 2e jmp SHORT $LN16@operator $LN15@operator: 000b0 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 000b7 48 8b 00 mov rax, QWORD PTR [rax] 000ba 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 000be 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 000c5 48 03 c8 add rcx, rax 000c8 48 8b c1 mov rax, rcx 000cb 48 8b c8 mov rcx, rax 000ce ff 15 00 00 00 00 call QWORD PTR __imp_?width@ios_base@std@@QEBA_JXZ 000d4 48 ff c8 dec rax 000d7 48 89 85 08 02 00 00 mov QWORD PTR tv130[rbp], rax $LN16@operator: 000de 48 8b 85 08 02 00 00 mov rax, QWORD PTR tv130[rbp] 000e5 48 89 45 58 mov QWORD PTR _Pad$4[rbp], rax ; 788 : ; 789 : _TRY_IO_BEGIN ; 790 : if ((_Ostr.flags() & ios_base::adjustfield) != ios_base::left) { 000e9 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 000f0 48 8b 00 mov rax, QWORD PTR [rax] 000f3 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 000f7 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 000fe 48 03 c8 add rcx, rax 00101 48 8b c1 mov rax, rcx 00104 48 8b c8 mov rcx, rax 00107 ff 15 00 00 00 00 call QWORD PTR __imp_?flags@ios_base@std@@QEBAHXZ 0010d 89 85 04 02 00 00 mov DWORD PTR tv65[rbp], eax 00113 8b 85 04 02 00 00 mov eax, DWORD PTR tv65[rbp] 00119 25 c0 01 00 00 and eax, 448 ; 000001c0H 0011e 83 f8 40 cmp eax, 64 ; 00000040H 00121 0f 84 eb 00 00 00 je $LN10@operator ; 791 : for (; _State == ios_base::goodbit && 0 < _Pad; --_Pad) { // pad on left 00127 eb 0b jmp SHORT $LN4@operator $LN2@operator: 00129 48 8b 45 58 mov rax, QWORD PTR _Pad$4[rbp] 0012d 48 ff c8 dec rax 00130 48 89 45 58 mov QWORD PTR _Pad$4[rbp], rax $LN4@operator: 00134 83 7d 04 00 cmp DWORD PTR _State$[rbp], 0 00138 0f 85 d4 00 00 00 jne $LN10@operator 0013e 48 83 7d 58 00 cmp QWORD PTR _Pad$4[rbp], 0 00143 0f 8e c9 00 00 00 jle $LN10@operator ; 792 : if (_Traits::eq_int_type(_Traits::eof(), _Ostr.rdbuf()->sputc(_Ostr.fill()))) { 00149 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 00150 48 8b 00 mov rax, QWORD PTR [rax] 00153 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00157 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 0015e 48 03 c8 add rcx, rax 00161 48 8b c1 mov rax, rcx 00164 48 8b c8 mov rcx, rax 00167 ff 15 00 00 00 00 call QWORD PTR __imp_?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ 0016d 48 89 85 08 02 00 00 mov QWORD PTR tv300[rbp], rax 00174 48 8b 85 08 02 00 00 mov rax, QWORD PTR tv300[rbp] 0017b 48 89 85 10 02 00 00 mov QWORD PTR tv179[rbp], rax 00182 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 00189 48 8b 00 mov rax, QWORD PTR [rax] 0018c 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00190 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00197 48 03 c8 add rcx, rax 0019a 48 8b c1 mov rax, rcx 0019d 48 8b c8 mov rcx, rax 001a0 ff 15 00 00 00 00 call QWORD PTR __imp_?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBADXZ 001a6 88 85 18 02 00 00 mov BYTE PTR tv301[rbp], al 001ac 0f b6 85 18 02 00 00 movzx eax, BYTE PTR tv301[rbp] 001b3 88 85 19 02 00 00 mov BYTE PTR tv177[rbp], al 001b9 0f b6 95 19 02 00 00 movzx edx, BYTE PTR tv177[rbp] 001c0 48 8b 8d 10 02 00 00 mov rcx, QWORD PTR tv179[rbp] 001c7 ff 15 00 00 00 00 call QWORD PTR __imp_?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z 001cd 89 85 1c 02 00 00 mov DWORD PTR tv302[rbp], eax 001d3 8b 85 1c 02 00 00 mov eax, DWORD PTR tv302[rbp] 001d9 89 85 34 01 00 00 mov DWORD PTR $T5[rbp], eax 001df e8 00 00 00 00 call ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ ; std::_Narrow_char_traits::eof 001e4 89 85 54 01 00 00 mov DWORD PTR $T6[rbp], eax 001ea 48 8d 95 34 01 00 00 lea rdx, QWORD PTR $T5[rbp] 001f1 48 8d 8d 54 01 00 00 lea rcx, QWORD PTR $T6[rbp] 001f8 e8 00 00 00 00 call ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z ; std::_Narrow_char_traits::eq_int_type 001fd 0f b6 c0 movzx eax, al 00200 85 c0 test eax, eax 00202 74 09 je SHORT $LN11@operator ; 793 : _State |= ios_base::badbit; 00204 8b 45 04 mov eax, DWORD PTR _State$[rbp] 00207 83 c8 04 or eax, 4 0020a 89 45 04 mov DWORD PTR _State$[rbp], eax $LN11@operator: ; 794 : } ; 795 : } 0020d e9 17 ff ff ff jmp $LN2@operator $LN10@operator: ; 796 : } ; 797 : ; 798 : if (_State == ios_base::goodbit && _Traits::eq_int_type(_Traits::eof(), _Ostr.rdbuf()->sputc(_Ch))) { 00212 83 7d 04 00 cmp DWORD PTR _State$[rbp], 0 00216 0f 85 8d 00 00 00 jne $LN12@operator 0021c 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 00223 48 8b 00 mov rax, QWORD PTR [rax] 00226 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 0022a 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00231 48 03 c8 add rcx, rax 00234 48 8b c1 mov rax, rcx 00237 48 8b c8 mov rcx, rax 0023a ff 15 00 00 00 00 call QWORD PTR __imp_?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ 00240 48 89 85 08 02 00 00 mov QWORD PTR tv303[rbp], rax 00247 48 8b 85 08 02 00 00 mov rax, QWORD PTR tv303[rbp] 0024e 48 89 85 10 02 00 00 mov QWORD PTR tv204[rbp], rax 00255 0f b6 95 58 02 00 00 movzx edx, BYTE PTR _Ch$[rbp] 0025c 48 8b 8d 10 02 00 00 mov rcx, QWORD PTR tv204[rbp] 00263 ff 15 00 00 00 00 call QWORD PTR __imp_?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z 00269 89 85 18 02 00 00 mov DWORD PTR tv304[rbp], eax 0026f 8b 85 18 02 00 00 mov eax, DWORD PTR tv304[rbp] 00275 89 85 74 01 00 00 mov DWORD PTR $T7[rbp], eax 0027b e8 00 00 00 00 call ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ ; std::_Narrow_char_traits::eof 00280 89 85 94 01 00 00 mov DWORD PTR $T8[rbp], eax 00286 48 8d 95 74 01 00 00 lea rdx, QWORD PTR $T7[rbp] 0028d 48 8d 8d 94 01 00 00 lea rcx, QWORD PTR $T8[rbp] 00294 e8 00 00 00 00 call ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z ; std::_Narrow_char_traits::eq_int_type 00299 0f b6 c0 movzx eax, al 0029c 85 c0 test eax, eax 0029e 74 09 je SHORT $LN12@operator ; 799 : _State |= ios_base::badbit; 002a0 8b 45 04 mov eax, DWORD PTR _State$[rbp] 002a3 83 c8 04 or eax, 4 002a6 89 45 04 mov DWORD PTR _State$[rbp], eax $LN12@operator: ; 800 : } ; 801 : ; 802 : for (; _State == ios_base::goodbit && 0 < _Pad; --_Pad) { // pad on right 002a9 eb 0b jmp SHORT $LN7@operator $LN5@operator: 002ab 48 8b 45 58 mov rax, QWORD PTR _Pad$4[rbp] 002af 48 ff c8 dec rax 002b2 48 89 45 58 mov QWORD PTR _Pad$4[rbp], rax $LN7@operator: 002b6 83 7d 04 00 cmp DWORD PTR _State$[rbp], 0 002ba 0f 85 d4 00 00 00 jne $LN6@operator 002c0 48 83 7d 58 00 cmp QWORD PTR _Pad$4[rbp], 0 002c5 0f 8e c9 00 00 00 jle $LN6@operator ; 803 : if (_Traits::eq_int_type(_Traits::eof(), _Ostr.rdbuf()->sputc(_Ostr.fill()))) { 002cb 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 002d2 48 8b 00 mov rax, QWORD PTR [rax] 002d5 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 002d9 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 002e0 48 03 c8 add rcx, rax 002e3 48 8b c1 mov rax, rcx 002e6 48 8b c8 mov rcx, rax 002e9 ff 15 00 00 00 00 call QWORD PTR __imp_?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ 002ef 48 89 85 08 02 00 00 mov QWORD PTR tv305[rbp], rax 002f6 48 8b 85 08 02 00 00 mov rax, QWORD PTR tv305[rbp] 002fd 48 89 85 10 02 00 00 mov QWORD PTR tv245[rbp], rax 00304 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0030b 48 8b 00 mov rax, QWORD PTR [rax] 0030e 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00312 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00319 48 03 c8 add rcx, rax 0031c 48 8b c1 mov rax, rcx 0031f 48 8b c8 mov rcx, rax 00322 ff 15 00 00 00 00 call QWORD PTR __imp_?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBADXZ 00328 88 85 18 02 00 00 mov BYTE PTR tv306[rbp], al 0032e 0f b6 85 18 02 00 00 movzx eax, BYTE PTR tv306[rbp] 00335 88 85 19 02 00 00 mov BYTE PTR tv243[rbp], al 0033b 0f b6 95 19 02 00 00 movzx edx, BYTE PTR tv243[rbp] 00342 48 8b 8d 10 02 00 00 mov rcx, QWORD PTR tv245[rbp] 00349 ff 15 00 00 00 00 call QWORD PTR __imp_?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z 0034f 89 85 1c 02 00 00 mov DWORD PTR tv307[rbp], eax 00355 8b 85 1c 02 00 00 mov eax, DWORD PTR tv307[rbp] 0035b 89 85 b4 01 00 00 mov DWORD PTR $T9[rbp], eax 00361 e8 00 00 00 00 call ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ ; std::_Narrow_char_traits::eof 00366 89 85 d4 01 00 00 mov DWORD PTR $T10[rbp], eax 0036c 48 8d 95 b4 01 00 00 lea rdx, QWORD PTR $T9[rbp] 00373 48 8d 8d d4 01 00 00 lea rcx, QWORD PTR $T10[rbp] 0037a e8 00 00 00 00 call ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z ; std::_Narrow_char_traits::eq_int_type 0037f 0f b6 c0 movzx eax, al 00382 85 c0 test eax, eax 00384 74 09 je SHORT $LN13@operator ; 804 : _State |= ios_base::badbit; 00386 8b 45 04 mov eax, DWORD PTR _State$[rbp] 00389 83 c8 04 or eax, 4 0038c 89 45 04 mov DWORD PTR _State$[rbp], eax $LN13@operator: ; 805 : } ; 806 : } 0038f e9 17 ff ff ff jmp $LN5@operator $LN6@operator: 00394 eb 00 jmp SHORT $LN8@operator $LN21@operator: $LN8@operator: ; 807 : _CATCH_IO_(ios_base, _Ostr) ; 808 : } ; 809 : ; 810 : _Ostr.width(0); 00396 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0039d 48 8b 00 mov rax, QWORD PTR [rax] 003a0 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 003a4 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 003ab 48 03 c8 add rcx, rax 003ae 48 8b c1 mov rax, rcx 003b1 48 89 85 08 02 00 00 mov QWORD PTR tv281[rbp], rax 003b8 33 d2 xor edx, edx 003ba 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR tv281[rbp] 003c1 ff 15 00 00 00 00 call QWORD PTR __imp_?width@ios_base@std@@QEAA_J_J@Z ; 811 : _Ostr.setstate(_State); 003c7 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 003ce 48 8b 00 mov rax, QWORD PTR [rax] 003d1 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 003d5 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 003dc 48 03 c8 add rcx, rax 003df 48 8b c1 mov rax, rcx 003e2 48 89 85 08 02 00 00 mov QWORD PTR tv295[rbp], rax 003e9 45 33 c0 xor r8d, r8d 003ec 8b 55 04 mov edx, DWORD PTR _State$[rbp] 003ef 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR tv295[rbp] 003f6 ff 15 00 00 00 00 call QWORD PTR __imp_?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z ; 812 : return _Ostr; 003fc 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 00403 48 89 85 f8 01 00 00 mov QWORD PTR $T11[rbp], rax 0040a 48 8d 4d 28 lea rcx, QWORD PTR _Ok$[rbp] 0040e e8 00 00 00 00 call ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::sentry::~sentry 00413 48 8b 85 f8 01 00 00 mov rax, QWORD PTR $T11[rbp] ; 813 : } 0041a 48 8b f8 mov rdi, rax 0041d 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 00421 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$rtcFrameData 00428 e8 00 00 00 00 call _RTC_CheckStackVars 0042d 48 8b c7 mov rax, rdi 00430 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00437 48 33 cd xor rcx, rbp 0043a e8 00 00 00 00 call __security_check_cookie 0043f 48 8d a5 38 02 00 00 lea rsp, QWORD PTR [rbp+568] 00446 5f pop rdi 00447 5d pop rbp 00448 c3 ret 0 ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z ENDP ; std::operator<< > _TEXT ENDS ; COMDAT text$x text$x SEGMENT _State$ = 4 _Ok$ = 40 _Pad$4 = 88 $T5 = 308 $T6 = 340 $T7 = 372 $T8 = 404 $T9 = 436 $T10 = 468 $T11 = 504 tv65 = 516 tv305 = 520 tv303 = 520 tv300 = 520 tv295 = 520 tv281 = 520 tv266 = 520 tv130 = 520 tv245 = 528 tv204 = 528 tv179 = 528 tv306 = 536 tv304 = 536 tv301 = 536 tv243 = 537 tv177 = 537 tv307 = 540 tv302 = 540 __$ArrayPad$ = 544 _Ostr$ = 592 _Ch$ = 600 ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA PROC ; `std::operator<< >'::`1'::dtor$0 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 28 lea rcx, QWORD PTR _Ok$[rbp] 00018 e8 00 00 00 00 call ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::sentry::~sentry 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA ENDP ; `std::operator<< >'::`1'::dtor$0 text$x ENDS ; COMDAT text$x text$x SEGMENT _State$ = 4 _Ok$ = 40 _Pad$4 = 88 $T5 = 308 $T6 = 340 $T7 = 372 $T8 = 404 $T9 = 436 $T10 = 468 $T11 = 504 tv65 = 516 tv305 = 520 tv303 = 520 tv300 = 520 tv295 = 520 tv281 = 520 tv266 = 520 tv130 = 520 tv245 = 528 tv204 = 528 tv179 = 528 tv306 = 536 tv304 = 536 tv301 = 536 tv243 = 537 tv177 = 537 tv307 = 540 tv302 = 540 __$ArrayPad$ = 544 _Ostr$ = 592 _Ch$ = 600 ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA PROC ; `std::operator<< >'::`1'::catch$1 ; 807 : _CATCH_IO_(ios_base, _Ostr) 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] __catch$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$0: 00014 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0001b 48 8b 00 mov rax, QWORD PTR [rax] 0001e 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00022 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00029 48 03 c8 add rcx, rax 0002c 48 8b c1 mov rax, rcx 0002f 48 89 85 08 02 00 00 mov QWORD PTR tv266[rbp], rax 00036 41 b0 01 mov r8b, 1 00039 ba 04 00 00 00 mov edx, 4 0003e 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR tv266[rbp] 00045 ff 15 00 00 00 00 call QWORD PTR __imp_?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z 0004b 90 npad 1 0004c 48 8d 05 00 00 00 00 lea rax, $LN21@catch$1 00053 48 83 c4 28 add rsp, 40 ; 00000028H 00057 5f pop rdi 00058 5d pop rbp 00059 c3 ret 0 0005a cc int 3 ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA ENDP ; `std::operator<< >'::`1'::catch$1 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT _State$ = 4 _Ok$ = 40 _Pad$4 = 88 $T5 = 308 $T6 = 340 $T7 = 372 $T8 = 404 $T9 = 436 $T10 = 468 $T11 = 504 tv65 = 516 tv305 = 520 tv303 = 520 tv300 = 520 tv295 = 520 tv281 = 520 tv266 = 520 tv130 = 520 tv245 = 528 tv204 = 528 tv179 = 528 tv306 = 536 tv304 = 536 tv301 = 536 tv243 = 537 tv177 = 537 tv307 = 540 tv302 = 540 __$ArrayPad$ = 544 _Ostr$ = 592 _Ch$ = 600 ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA PROC ; `std::operator<< >'::`1'::dtor$0 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 28 lea rcx, QWORD PTR _Ok$[rbp] 00018 e8 00 00 00 00 call ??1sentry@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAA@XZ ; std::basic_ostream >::sentry::~sentry 0001d 48 83 c4 28 add rsp, 40 ; 00000028H 00021 5f pop rdi 00022 5d pop rbp 00023 c3 ret 0 ?dtor$0@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA ENDP ; `std::operator<< >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT _State$ = 4 _Ok$ = 40 _Pad$4 = 88 $T5 = 308 $T6 = 340 $T7 = 372 $T8 = 404 $T9 = 436 $T10 = 468 $T11 = 504 tv65 = 516 tv305 = 520 tv303 = 520 tv300 = 520 tv295 = 520 tv281 = 520 tv266 = 520 tv130 = 520 tv245 = 528 tv204 = 528 tv179 = 528 tv306 = 536 tv304 = 536 tv301 = 536 tv243 = 537 tv177 = 537 tv307 = 540 tv302 = 540 __$ArrayPad$ = 544 _Ostr$ = 592 _Ch$ = 600 ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA PROC ; `std::operator<< >'::`1'::catch$1 ; 807 : _CATCH_IO_(ios_base, _Ostr) 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] __catch$??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z$0: 00014 48 8b 85 50 02 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0001b 48 8b 00 mov rax, QWORD PTR [rax] 0001e 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00022 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00029 48 03 c8 add rcx, rax 0002c 48 8b c1 mov rax, rcx 0002f 48 89 85 08 02 00 00 mov QWORD PTR tv266[rbp], rax 00036 41 b0 01 mov r8b, 1 00039 ba 04 00 00 00 mov edx, 4 0003e 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR tv266[rbp] 00045 ff 15 00 00 00 00 call QWORD PTR __imp_?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z 0004b 90 npad 1 0004c 48 8d 05 00 00 00 00 lea rax, $LN21@catch$1 00053 48 83 c4 28 add rsp, 40 ; 00000028H 00057 5f pop rdi 00058 5d pop rbp 00059 c3 ret 0 0005a cc int 3 ?catch$1@?0???$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z@4HA ENDP ; `std::operator<< >'::`1'::catch$1 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\iomanip ; COMDAT ??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z _TEXT SEGMENT tv79 = 192 _Ostr$ = 240 _Manip$ = 248 ??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z PROC ; std::operator<<,char>, COMDAT ; 49 : const _Fillobj<_Elem2>& _Manip) { // set fill character in output stream $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 f8 00 00 00 sub rsp, 248 ; 000000f8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__FAD76A5B_iomanip 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 50 : static_assert(is_same_v<_Elem, _Elem2>, "wrong character type for setfill"); ; 51 : ; 52 : _Ostr.fill(_Manip._Fill); 00024 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0002b 48 8b 00 mov rax, QWORD PTR [rax] 0002e 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00032 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 00039 48 03 c8 add rcx, rax 0003c 48 8b c1 mov rax, rcx 0003f 48 89 85 c0 00 00 00 mov QWORD PTR tv79[rbp], rax 00046 48 8b 85 f8 00 00 00 mov rax, QWORD PTR _Manip$[rbp] 0004d 0f b6 10 movzx edx, BYTE PTR [rax] 00050 48 8b 8d c0 00 00 00 mov rcx, QWORD PTR tv79[rbp] 00057 ff 15 00 00 00 00 call QWORD PTR __imp_?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAADD@Z ; 53 : return _Ostr; 0005d 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _Ostr$[rbp] ; 54 : } 00064 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 0006b 5f pop rdi 0006c 5d pop rbp 0006d c3 ret 0 ??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z ENDP ; std::operator<<,char> _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\iomanip ; COMDAT ??0?$_Fillobj@D@std@@QEAA@D@Z _TEXT SEGMENT this$ = 224 _Ch$ = 232 ??0?$_Fillobj@D@std@@QEAA@D@Z PROC ; std::_Fillobj::_Fillobj, COMDAT ; 27 : _Fillobj(_Elem _Ch) : _Fill(_Ch) {} $LN3: 00000 88 54 24 10 mov BYTE PTR [rsp+16], dl 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 55 push rbp 0000a 57 push rdi 0000b 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__FAD76A5B_iomanip 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00023 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0002a 0f b6 8d e8 00 00 00 movzx ecx, BYTE PTR _Ch$[rbp] 00031 88 08 mov BYTE PTR [rax], cl 00033 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00041 5f pop rdi 00042 5d pop rbp 00043 c3 ret 0 ??0?$_Fillobj@D@std@@QEAA@D@Z ENDP ; std::_Fillobj::_Fillobj _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\iomanip ; COMDAT ??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z _TEXT SEGMENT __$ReturnUdt$ = 224 _Ch$ = 232 ??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z PROC ; std::setfill, COMDAT ; 34 : _NODISCARD _Fillobj<_Elem> setfill(_Elem _Ch) { $LN3: 00000 88 54 24 10 mov BYTE PTR [rsp+16], dl 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 55 push rbp 0000a 57 push rdi 0000b 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__FAD76A5B_iomanip 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 35 : return _Fillobj<_Elem>(_Ch); 00023 0f b6 95 e8 00 00 00 movzx edx, BYTE PTR _Ch$[rbp] 0002a 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 00031 e8 00 00 00 00 call ??0?$_Fillobj@D@std@@QEAA@D@Z ; std::_Fillobj::_Fillobj 00036 48 8b 85 e0 00 00 00 mov rax, QWORD PTR __$ReturnUdt$[rbp] ; 36 : } 0003d 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00044 5f pop rdi 00045 5d pop rbp 00046 c3 ret 0 ??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z ENDP ; std::setfill _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\iomanip ; COMDAT ??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z _TEXT SEGMENT tv79 = 192 _Ostr$ = 240 _Manip$ = 248 ??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z PROC ; std::operator<<,__int64>, COMDAT ; 423 : const _Smanip<_Arg>& _Manip) { // insert by calling function with output stream and argument $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 f8 00 00 00 sub rsp, 248 ; 000000f8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__FAD76A5B_iomanip 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 424 : (*_Manip._Pfun)(_Ostr, _Manip._Manarg); 00024 48 8b 85 f8 00 00 00 mov rax, QWORD PTR _Manip$[rbp] 0002b 48 8b 00 mov rax, QWORD PTR [rax] 0002e 48 89 85 c0 00 00 00 mov QWORD PTR tv79[rbp], rax 00035 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _Ostr$[rbp] 0003c 48 8b 00 mov rax, QWORD PTR [rax] 0003f 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 00043 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR _Ostr$[rbp] 0004a 48 03 c8 add rcx, rax 0004d 48 8b c1 mov rax, rcx 00050 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _Manip$[rbp] 00057 48 8b 51 08 mov rdx, QWORD PTR [rcx+8] 0005b 48 8b c8 mov rcx, rax 0005e ff 95 c0 00 00 00 call QWORD PTR tv79[rbp] ; 425 : return _Ostr; 00064 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _Ostr$[rbp] ; 426 : } 0006b 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 00072 5f pop rdi 00073 5d pop rbp 00074 c3 ret 0 ??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z ENDP ; std::operator<<,__int64> _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\cmath ; COMDAT ??$log2@H$0A@@@YANH@Z _TEXT SEGMENT _Left$ = 224 ??$log2@H$0A@@@YANH@Z PROC ; log2, COMDAT ; 662 : _GENERIC_MATH1(log2) $LN3: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp 00005 57 push rdi 00006 48 81 ec f8 00 00 00 sub rsp, 248 ; 000000f8H 0000d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00012 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__6D66DEAE_cmath 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode 0001e f2 0f 2a 85 e0 00 00 00 cvtsi2sd xmm0, DWORD PTR _Left$[rbp] 00026 ff 15 00 00 00 00 call QWORD PTR __imp_log2 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 ??$log2@H$0A@@@YANH@Z ENDP ; log2 _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\xutility ; COMDAT ??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z _TEXT SEGMENT $T1 = 200 $T2 = 228 tv79 = 248 tv77 = 256 __$ReturnUdt$ = 304 _First$ = 312 _Last$ = 320 _Val$ = 328 ??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z PROC ; std::find > >,unsigned long>, COMDAT ; 5340 : _NODISCARD _CONSTEXPR20 _InIt find(_InIt _First, const _InIt _Last, const _Ty& _Val) { // find first matching _Val $LN7: 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 38 01 00 00 sub rsp, 312 ; 00000138H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 c7 85 e4 00 00 00 00 00 00 00 mov DWORD PTR $T2[rbp], 0 0002c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__7CE971A6_xutility 00033 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 5341 : _Adl_verify_range(_First, _Last); 00038 48 8b 95 40 01 00 00 mov rdx, QWORD PTR _Last$[rbp] 0003f 48 8b 8d 38 01 00 00 mov rcx, QWORD PTR _First$[rbp] 00046 e8 00 00 00 00 call ??$_Adl_verify_range@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@V12@@std@@YAXAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@0@Z ; std::_Adl_verify_range > >,std::_Vector_iterator > > > ; 5342 : _Seek_wrapped(_First, _Find_unchecked(_Get_unwrapped(_First), _Get_unwrapped(_Last), _Val)); 0004b 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Last$[rbp] 00052 e8 00 00 00 00 call ??$_Get_unwrapped@AEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEBV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z ; std::_Get_unwrapped > > const &> 00057 48 89 85 f8 00 00 00 mov QWORD PTR tv79[rbp], rax 0005e 48 8b 8d 38 01 00 00 mov rcx, QWORD PTR _First$[rbp] 00065 e8 00 00 00 00 call ??$_Get_unwrapped@AEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@@std@@YA?A_TAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@@Z ; std::_Get_unwrapped > > &> 0006a 48 89 85 00 01 00 00 mov QWORD PTR tv77[rbp], rax 00071 4c 8b 85 48 01 00 00 mov r8, QWORD PTR _Val$[rbp] 00078 48 8b 95 f8 00 00 00 mov rdx, QWORD PTR tv79[rbp] 0007f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR tv77[rbp] 00086 e8 00 00 00 00 call ??$_Find_unchecked@PEAKK@std@@YAPEAKQEAK0AEBK@Z ; std::_Find_unchecked 0008b 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 00092 48 8d 95 c8 00 00 00 lea rdx, QWORD PTR $T1[rbp] 00099 48 8b 8d 38 01 00 00 mov rcx, QWORD PTR _First$[rbp] 000a0 e8 00 00 00 00 call ??$_Seek_wrapped@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@PEAK@std@@YAXAEAV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@$$QEAPEAK@Z ; std::_Seek_wrapped > >,unsigned long *> ; 5343 : return _First; 000a5 48 8b 95 38 01 00 00 mov rdx, QWORD PTR _First$[rbp] 000ac 48 8b 8d 30 01 00 00 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 000b3 e8 00 00 00 00 call ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z 000b8 8b 85 e4 00 00 00 mov eax, DWORD PTR $T2[rbp] 000be 83 c8 01 or eax, 1 000c1 89 85 e4 00 00 00 mov DWORD PTR $T2[rbp], eax 000c7 48 8b 8d 38 01 00 00 mov rcx, QWORD PTR _First$[rbp] 000ce e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 000d3 90 npad 1 000d4 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Last$[rbp] 000db e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 000e0 48 8b 85 30 01 00 00 mov rax, QWORD PTR __$ReturnUdt$[rbp] ; 5344 : } 000e7 48 8d a5 18 01 00 00 lea rsp, QWORD PTR [rbp+280] 000ee 5f pop rdi 000ef 5d pop rbp 000f0 c3 ret 0 ??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z ENDP ; std::find > >,unsigned long> _TEXT ENDS ; COMDAT text$x text$x SEGMENT $T1 = 200 $T2 = 228 tv79 = 248 tv77 = 256 __$ReturnUdt$ = 304 _First$ = 312 _Last$ = 320 _Val$ = 328 ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA PROC ; `std::find > >,unsigned long>'::`1'::dtor$0 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 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Last$[rbp] 0001b e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA ENDP ; `std::find > >,unsigned long>'::`1'::dtor$0 text$x ENDS ; COMDAT text$x text$x SEGMENT $T1 = 200 $T2 = 228 tv79 = 248 tv77 = 256 __$ReturnUdt$ = 304 _First$ = 312 _Last$ = 320 _Val$ = 328 ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA PROC ; `std::find > >,unsigned long>'::`1'::dtor$1 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 8b 8d 38 01 00 00 mov rcx, QWORD PTR _First$[rbp] 0001b e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA ENDP ; `std::find > >,unsigned long>'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT $T1 = 200 $T2 = 228 tv79 = 248 tv77 = 256 __$ReturnUdt$ = 304 _First$ = 312 _Last$ = 320 _Val$ = 328 ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA PROC ; `std::find > >,unsigned long>'::`1'::dtor$0 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 8b 8d 40 01 00 00 mov rcx, QWORD PTR _Last$[rbp] 0001b e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$0@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA ENDP ; `std::find > >,unsigned long>'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT $T1 = 200 $T2 = 228 tv79 = 248 tv77 = 256 __$ReturnUdt$ = 304 _First$ = 312 _Last$ = 320 _Val$ = 328 ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA PROC ; `std::find > >,unsigned long>'::`1'::dtor$1 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 8b 8d 38 01 00 00 mov rcx, QWORD PTR _First$[rbp] 0001b e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$1@?0???$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z@4HA ENDP ; `std::find > >,unsigned long>'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z _TEXT SEGMENT this$ = 224 __param0$ = 232 __param1$ = 240 ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z PROC ; std::_Vector_iterator > >::_Vector_iterator > >, 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 4c 8b 85 f0 00 00 00 mov r8, QWORD PTR __param1$[rbp] 00024 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR __param0$[rbp] 0002b 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00032 e8 00 00 00 00 call ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z ; std::_Vector_const_iterator > >::_Vector_const_iterator > > 00037 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 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 ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z ENDP ; std::_Vector_iterator > >::_Vector_iterator > > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z _TEXT SEGMENT this$ = 224 __that$ = 232 ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z PROC ; std::_Vector_iterator > >::_Vector_iterator > >, 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 8b 95 e8 00 00 00 mov rdx, QWORD PTR __that$[rbp] 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z 0002b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00039 5f pop rdi 0003a 5d pop rbp 0003b c3 ret 0 ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z ENDP ; std::_Vector_iterator > >::_Vector_iterator > > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ PROC ; std::_Vector_iterator > >::~_Vector_iterator > >, 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 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001a e8 00 00 00 00 call ??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 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 ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ ENDP ; std::_Vector_iterator > >::~_Vector_iterator > > _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 ?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ _TEXT SEGMENT this$ = 224 ?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ PROC ; std::_Vector_iterator > >::_Unwrapped, COMDAT ; 335 : _NODISCARD _CONSTEXPR20_CONTAINER value_type* _Unwrapped() const 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 ; 336 : return _Unfancy(this->_Ptr); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8b 48 10 mov rcx, QWORD PTR [rax+16] 0002a e8 00 00 00 00 call ??$_Unfancy@K@std@@YAPEAKPEAK@Z ; std::_Unfancy ; 337 : } 0002f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00036 5f pop rdi 00037 5d pop rbp 00038 c3 ret 0 ?_Unwrapped@?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAPEAKXZ ENDP ; std::_Vector_iterator > >::_Unwrapped _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z _TEXT SEGMENT this$ = 224 __that$ = 232 ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z PROC ; std::_Vector_const_iterator > >::_Vector_const_iterator > >, 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 8b 95 e8 00 00 00 mov rdx, QWORD PTR __that$[rbp] 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ??0_Iterator_base12@std@@QEAA@AEBU01@@Z ; std::_Iterator_base12::_Iterator_base12 0002b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR __that$[rbp] 00039 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 0003d 48 89 48 10 mov QWORD PTR [rax+16], rcx 00041 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004f 5f pop rdi 00050 5d pop rbp 00051 c3 ret 0 ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@AEBV01@@Z ENDP ; std::_Vector_const_iterator > >::_Vector_const_iterator > > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ PROC ; std::_Vector_const_iterator > >::~_Vector_const_iterator > >, 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 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001a e8 00 00 00 00 call ??1_Iterator_base12@std@@QEAA@XZ ; std::_Iterator_base12::~_Iterator_base12 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 ??1?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ ENDP ; std::_Vector_const_iterator > >::~_Vector_const_iterator > > _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 ?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z _TEXT SEGMENT this$ = 224 _It$ = 232 ?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z PROC ; std::_Vector_const_iterator > >::_Seek_to, COMDAT ; 208 : _CONSTEXPR20_CONTAINER void _Seek_to(const value_type* _It) 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:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 209 : _Ptr = _Refancy<_Tptr>(const_cast(_It)); 00024 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _It$[rbp] 0002b e8 00 00 00 00 call ??$_Refancy@PEAK$0A@@std@@YAPEAKPEAK@Z ; std::_Refancy 00030 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00037 48 89 41 10 mov QWORD PTR [rcx+16], rax ; 210 : } 0003b 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00042 5f pop rdi 00043 5d pop rbp 00044 c3 ret 0 ?_Seek_to@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAAXPEBK@Z ENDP ; std::_Vector_const_iterator > >::_Seek_to _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 ?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z _TEXT SEGMENT tv69 = 192 _First$ = 240 _Last$ = 248 ?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z PROC ; std::_Verify_range, COMDAT ; 196 : const _Vector_const_iterator& _First, const _Vector_const_iterator& _Last) noexcept { $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 08 01 00 00 sub rsp, 264 ; 00000108H 00013 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN4@Verify_ran: ; 197 : _STL_VERIFY(_First._Getcont() == _Last._Getcont(), "vector iterators in range are from different containers"); 00024 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR _First$[rbp] 0002b e8 00 00 00 00 call ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ ; std::_Iterator_base12::_Getcont 00030 48 89 85 c0 00 00 00 mov QWORD PTR tv69[rbp], rax 00037 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _Last$[rbp] 0003e e8 00 00 00 00 call ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ ; std::_Iterator_base12::_Getcont 00043 48 8b 8d c0 00 00 00 mov rcx, QWORD PTR tv69[rbp] 0004a 48 3b c8 cmp rcx, rax 0004d 75 02 jne SHORT $LN7@Verify_ran 0004f eb 6b jmp SHORT $LN15@Verify_ran $LN7@Verify_ran: 00051 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0DI@PBEELKIF@vector?5iterators?5in?5range?5are?5f@ 00058 48 89 44 24 28 mov QWORD PTR [rsp+40], rax 0005d 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 00064 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 00069 45 33 c9 xor r9d, r9d 0006c 41 b8 c5 00 00 00 mov r8d, 197 ; 000000c5H 00072 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GH@IJJCCHP@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 00079 b9 02 00 00 00 mov ecx, 2 0007e ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 00084 83 f8 01 cmp eax, 1 00087 75 03 jne SHORT $LN19@Verify_ran 00089 cc int 3 0008a 33 c0 xor eax, eax $LN19@Verify_ran: 0008c 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00095 41 b9 c5 00 00 00 mov r9d, 197 ; 000000c5H 0009b 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:??_C@_1MO@MBPFCBOF@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ 000a2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1CG@LJCPDKEJ@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAr?$AAi?$AAf?$AAy?$AA_?$AAr?$AAa@ 000a9 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1HE@KBMFDAFB@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ 000b0 ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 000b6 33 c0 xor eax, eax 000b8 85 c0 test eax, eax 000ba 75 95 jne SHORT $LN7@Verify_ran $LN15@Verify_ran: 000bc 33 c0 xor eax, eax 000be 85 c0 test eax, eax 000c0 0f 85 5e ff ff ff jne $LN4@Verify_ran $LN10@Verify_ran: ; 198 : _STL_VERIFY(_First._Ptr <= _Last._Ptr, "vector iterator range transposed"); 000c6 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _First$[rbp] 000cd 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _Last$[rbp] 000d4 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 000d8 48 39 48 10 cmp QWORD PTR [rax+16], rcx 000dc 77 02 ja SHORT $LN13@Verify_ran 000de eb 6b jmp SHORT $LN17@Verify_ran $LN13@Verify_ran: 000e0 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CB@LIAHLBAO@vector?5iterator?5range?5transpose@ 000e7 48 89 44 24 28 mov QWORD PTR [rsp+40], rax 000ec 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 000f3 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 000f8 45 33 c9 xor r9d, r9d 000fb 41 b8 c6 00 00 00 mov r8d, 198 ; 000000c6H 00101 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GH@IJJCCHP@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 00108 b9 02 00 00 00 mov ecx, 2 0010d ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 00113 83 f8 01 cmp eax, 1 00116 75 03 jne SHORT $LN20@Verify_ran 00118 cc int 3 00119 33 c0 xor eax, eax $LN20@Verify_ran: 0011b 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00124 41 b9 c6 00 00 00 mov r9d, 198 ; 000000c6H 0012a 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:??_C@_1MO@MBPFCBOF@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ 00131 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1CG@LJCPDKEJ@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAr?$AAi?$AAf?$AAy?$AA_?$AAr?$AAa@ 00138 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1EG@ODKBEHFN@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ 0013f ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 00145 33 c0 xor eax, eax 00147 85 c0 test eax, eax 00149 75 95 jne SHORT $LN13@Verify_ran $LN17@Verify_ran: 0014b 33 c0 xor eax, eax 0014d 85 c0 test eax, eax 0014f 0f 85 71 ff ff ff jne $LN10@Verify_ran ; 199 : } 00155 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 0015c 5f pop rdi 0015d 5d pop rbp 0015e c3 ret 0 ?_Verify_range@std@@YAXAEBV?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@1@0@Z ENDP ; std::_Verify_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\vector ; COMDAT ?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z _TEXT SEGMENT tv69 = 192 this$ = 240 _Right$ = 248 ?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z PROC ; std::_Vector_const_iterator > >::_Compat, COMDAT ; 185 : _CONSTEXPR20_CONTAINER void _Compat(const _Vector_const_iterator& _Right) const noexcept { $LN12: 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 30 lea rbp, QWORD PTR [rsp+48] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN4@Compat: ; 186 : // test for compatible iterator pair ; 187 : #if _ITERATOR_DEBUG_LEVEL == 0 ; 188 : (void) _Right; ; 189 : #else // ^^^ _ITERATOR_DEBUG_LEVEL == 0 ^^^ // vvv _ITERATOR_DEBUG_LEVEL != 0 vvv ; 190 : _STL_VERIFY(this->_Getcont() == _Right._Getcont(), "vector iterators incompatible"); 00024 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0002b e8 00 00 00 00 call ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ ; std::_Iterator_base12::_Getcont 00030 48 89 85 c0 00 00 00 mov QWORD PTR tv69[rbp], rax 00037 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _Right$[rbp] 0003e e8 00 00 00 00 call ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ ; std::_Iterator_base12::_Getcont 00043 48 8b 8d c0 00 00 00 mov rcx, QWORD PTR tv69[rbp] 0004a 48 3b c8 cmp rcx, rax 0004d 75 02 jne SHORT $LN7@Compat 0004f eb 6b jmp SHORT $LN9@Compat $LN7@Compat: 00051 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BO@CAOBBIOC@vector?5iterators?5incompatible@ 00058 48 89 44 24 28 mov QWORD PTR [rsp+40], rax 0005d 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 00064 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 00069 45 33 c9 xor r9d, r9d 0006c 41 b8 be 00 00 00 mov r8d, 190 ; 000000beH 00072 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GH@IJJCCHP@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 00079 b9 02 00 00 00 mov ecx, 2 0007e ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 00084 83 f8 01 cmp eax, 1 00087 75 03 jne SHORT $LN11@Compat 00089 cc int 3 0008a 33 c0 xor eax, eax $LN11@Compat: 0008c 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00095 41 b9 be 00 00 00 mov r9d, 190 ; 000000beH 0009b 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:??_C@_1MO@MBPFCBOF@?$AAC?$AA?3?$AA?2?$AAP?$AAr?$AAo?$AAg?$AAr?$AAa?$AAm?$AA?5?$AAF?$AAi?$AAl?$AAe@ 000a2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1NC@CDEGKPGM@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAV?$AAe?$AAc?$AAt?$AAo?$AAr?$AA_?$AAc?$AAo@ 000a9 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1EA@DJDGNIII@?$AA?$CC?$AAv?$AAe?$AAc?$AAt?$AAo?$AAr?$AA?5?$AAi?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo@ 000b0 ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 000b6 33 c0 xor eax, eax 000b8 85 c0 test eax, eax 000ba 75 95 jne SHORT $LN7@Compat $LN9@Compat: 000bc 33 c0 xor eax, eax 000be 85 c0 test eax, eax 000c0 0f 85 5e ff ff ff jne $LN4@Compat ; 191 : #endif // _ITERATOR_DEBUG_LEVEL == 0 ; 192 : } 000c6 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 000cd 5f pop rdi 000ce 5d pop rbp 000cf c3 ret 0 ?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z ENDP ; std::_Vector_const_iterator > >::_Compat _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 ??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z _TEXT SEGMENT tv69 = 192 this$ = 240 _Right$ = 248 ??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z PROC ; std::_Vector_const_iterator > >::operator!=, COMDAT ; 163 : _NODISCARD bool operator!=(const _Vector_const_iterator& _Right) const noexcept { $LN5: 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 f8 00 00 00 sub rsp, 248 ; 000000f8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 164 : return !(*this == _Right); 00024 48 8b 95 f8 00 00 00 mov rdx, QWORD PTR _Right$[rbp] 0002b 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00032 e8 00 00 00 00 call ??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ; std::_Vector_const_iterator > >::operator== 00037 0f b6 c0 movzx eax, al 0003a 85 c0 test eax, eax 0003c 75 0c jne SHORT $LN3@operator 0003e c7 85 c0 00 00 00 01 00 00 00 mov DWORD PTR tv69[rbp], 1 00048 eb 0a jmp SHORT $LN4@operator $LN3@operator: 0004a c7 85 c0 00 00 00 00 00 00 00 mov DWORD PTR tv69[rbp], 0 $LN4@operator: 00054 0f b6 85 c0 00 00 00 movzx eax, BYTE PTR tv69[rbp] ; 165 : } 0005b 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 00062 5f pop rdi 00063 5d pop rbp 00064 c3 ret 0 ??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ENDP ; std::_Vector_const_iterator > >::operator!= _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 ??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z _TEXT SEGMENT tv69 = 192 this$ = 240 _Right$ = 248 ??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z PROC ; std::_Vector_const_iterator > >::operator==, COMDAT ; 152 : _NODISCARD _CONSTEXPR20_CONTAINER bool operator==(const _Vector_const_iterator& _Right) const noexcept { $LN5: 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 f8 00 00 00 sub rsp, 248 ; 000000f8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 153 : _Compat(_Right); 00024 48 8b 95 f8 00 00 00 mov rdx, QWORD PTR _Right$[rbp] 0002b 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00032 e8 00 00 00 00 call ?_Compat@?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBAXAEBV12@@Z ; std::_Vector_const_iterator > >::_Compat ; 154 : return _Ptr == _Right._Ptr; 00037 48 8b 85 f0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003e 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _Right$[rbp] 00045 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 00049 48 39 48 10 cmp QWORD PTR [rax+16], rcx 0004d 75 0c jne SHORT $LN3@operator 0004f c7 85 c0 00 00 00 01 00 00 00 mov DWORD PTR tv69[rbp], 1 00059 eb 0a jmp SHORT $LN4@operator $LN3@operator: 0005b c7 85 c0 00 00 00 00 00 00 00 mov DWORD PTR tv69[rbp], 0 $LN4@operator: 00065 0f b6 85 c0 00 00 00 movzx eax, BYTE PTR tv69[rbp] ; 155 : } 0006c 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 00073 5f pop rdi 00074 5d pop rbp 00075 c3 ret 0 ??8?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ENDP ; std::_Vector_const_iterator > >::operator== _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 ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z _TEXT SEGMENT this$ = 224 _Parg$ = 232 _Pvector$ = 240 ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z PROC ; std::_Vector_const_iterator > >::_Vector_const_iterator > >, COMDAT ; 42 : _CONSTEXPR20_CONTAINER _Vector_const_iterator(_Tptr _Parg, const _Container_base* _Pvector) noexcept : _Ptr(_Parg) { $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 00029 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00030 e8 00 00 00 00 call ??0_Iterator_base12@std@@QEAA@XZ ; std::_Iterator_base12::_Iterator_base12 00035 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003c 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Parg$[rbp] 00043 48 89 48 10 mov QWORD PTR [rax+16], rcx ; 43 : this->_Adopt(_Pvector); 00047 48 8b 95 f0 00 00 00 mov rdx, QWORD PTR _Pvector$[rbp] 0004e 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00055 e8 00 00 00 00 call ?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z ; std::_Iterator_base12::_Adopt ; 44 : } 0005a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00061 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00068 5f pop rdi 00069 5d pop rbp 0006a c3 ret 0 ??0?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z ENDP ; std::_Vector_const_iterator > >::_Vector_const_iterator > > _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT T$1 = 8 i$2 = 36 $T3 = 260 $T4 = 296 tv93 = 328 tv95 = 336 tv130 = 344 tv132 = 352 tv144 = 360 tv142 = 368 Block$ = 416 ?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcPrintBlockCode, COMDAT ; 584 : { $LN10: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec a8 01 00 00 sub rsp, 424 ; 000001a8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 585 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 0001f 48 8b 85 a0 01 00 00 mov rax, QWORD PTR Block$[rbp] 00026 48 8b 00 mov rax, QWORD PTR [rax] 00029 48 89 45 08 mov QWORD PTR T$1[rbp], rax 0002d eb 0b jmp SHORT $LN4@NcPrintBlo $LN2@NcPrintBlo: 0002f 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00033 48 8b 00 mov rax, QWORD PTR [rax] 00036 48 89 45 08 mov QWORD PTR T$1[rbp], rax $LN4@NcPrintBlo: 0003a 48 83 7d 08 00 cmp QWORD PTR T$1[rbp], 0 0003f 0f 84 03 01 00 00 je $LN3@NcPrintBlo 00045 48 8b 85 a0 01 00 00 mov rax, QWORD PTR Block$[rbp] 0004c 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00050 48 8b 00 mov rax, QWORD PTR [rax] 00053 48 39 45 08 cmp QWORD PTR T$1[rbp], rax 00057 0f 84 eb 00 00 00 je $LN3@NcPrintBlo ; 586 : { ; 587 : if (!(T->Flags & CODE_FLAG_IS_LABEL)) 0005d 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00061 8b 40 18 mov eax, DWORD PTR [rax+24] 00064 83 e0 01 and eax, 1 00067 85 c0 test eax, eax 00069 0f 85 d4 00 00 00 jne $LN8@NcPrintBlo ; 588 : { ; 589 : for (uint32_t i = 0; i < T->RawDataSize; i++) 0006f c7 45 24 00 00 00 00 mov DWORD PTR i$2[rbp], 0 00076 eb 08 jmp SHORT $LN7@NcPrintBlo $LN5@NcPrintBlo: 00078 8b 45 24 mov eax, DWORD PTR i$2[rbp] 0007b ff c0 inc eax 0007d 89 45 24 mov DWORD PTR i$2[rbp], eax $LN7@NcPrintBlo: 00080 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00084 8b 40 28 mov eax, DWORD PTR [rax+40] 00087 39 45 24 cmp DWORD PTR i$2[rbp], eax 0008a 0f 83 b3 00 00 00 jae $LN6@NcPrintBlo ; 590 : { ; 591 : std::cout << std::hex << std::setw(2) << std::setfill('0') << (int)T->RawData[i] << ' '; 00090 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?hex@std@@YAAEAVios_base@1@AEAV21@@Z ; std::hex 00097 48 8b 0d 00 00 00 00 mov rcx, QWORD PTR __imp_?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A 0009e ff 15 00 00 00 00 call QWORD PTR __imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@P6AAEAVios_base@1@AEAV21@@Z@Z 000a4 48 89 85 48 01 00 00 mov QWORD PTR tv93[rbp], rax 000ab ba 02 00 00 00 mov edx, 2 000b0 48 8d 8d 28 01 00 00 lea rcx, QWORD PTR $T4[rbp] 000b7 e8 00 00 00 00 call ?setw@std@@YA?AU?$_Smanip@_J@1@_J@Z ; std::setw 000bc 48 89 85 50 01 00 00 mov QWORD PTR tv95[rbp], rax 000c3 48 8b 95 50 01 00 00 mov rdx, QWORD PTR tv95[rbp] 000ca 48 8b 8d 48 01 00 00 mov rcx, QWORD PTR tv93[rbp] 000d1 e8 00 00 00 00 call ??$?6DU?$char_traits@D@std@@_J@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Smanip@_J@0@@Z ; std::operator<<,__int64> 000d6 48 89 85 58 01 00 00 mov QWORD PTR tv130[rbp], rax 000dd b2 30 mov dl, 48 ; 00000030H 000df 48 8d 8d 04 01 00 00 lea rcx, QWORD PTR $T3[rbp] 000e6 e8 00 00 00 00 call ??$setfill@D@std@@YA?AU?$_Fillobj@D@0@D@Z ; std::setfill 000eb 48 89 85 60 01 00 00 mov QWORD PTR tv132[rbp], rax 000f2 48 8b 95 60 01 00 00 mov rdx, QWORD PTR tv132[rbp] 000f9 48 8b 8d 58 01 00 00 mov rcx, QWORD PTR tv130[rbp] 00100 e8 00 00 00 00 call ??$?6DU?$char_traits@D@std@@D@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@AEBU?$_Fillobj@D@0@@Z ; std::operator<<,char> 00105 48 89 85 68 01 00 00 mov QWORD PTR tv144[rbp], rax 0010c 8b 45 24 mov eax, DWORD PTR i$2[rbp] 0010f 48 8b 4d 08 mov rcx, QWORD PTR T$1[rbp] 00113 48 8b 49 20 mov rcx, QWORD PTR [rcx+32] 00117 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax] 0011b 89 85 70 01 00 00 mov DWORD PTR tv142[rbp], eax 00121 8b 95 70 01 00 00 mov edx, DWORD PTR tv142[rbp] 00127 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR tv144[rbp] 0012e ff 15 00 00 00 00 call QWORD PTR __imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@H@Z 00134 b2 20 mov dl, 32 ; 00000020H 00136 48 8b c8 mov rcx, rax 00139 e8 00 00 00 00 call ??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z ; std::operator<< > ; 592 : } 0013e e9 35 ff ff ff jmp $LN5@NcPrintBlo $LN6@NcPrintBlo: $LN8@NcPrintBlo: ; 593 : } ; 594 : } 00143 e9 e7 fe ff ff jmp $LN2@NcPrintBlo $LN3@NcPrintBlo: ; 595 : } 00148 48 8d a5 88 01 00 00 lea rsp, QWORD PTR [rbp+392] 0014f 5f pop rdi 00150 5d pop rbp 00151 c3 ret 0 ?NcPrintBlockCode@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcPrintBlockCode _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT ConsoleHandle$ = 8 T$1 = 40 IClass$2 = 68 tv131 = 276 tv129 = 280 Block$ = 320 ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcDebugPrint, COMDAT ; 554 : { $LN11: 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 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 555 : HANDLE ConsoleHandle = GetStdHandle(STD_OUTPUT_HANDLE); 0001f b9 f5 ff ff ff mov ecx, -11 ; fffffff5H 00024 ff 15 00 00 00 00 call QWORD PTR __imp_GetStdHandle 0002a 48 89 45 08 mov QWORD PTR ConsoleHandle$[rbp], rax ; 556 : if (!ConsoleHandle) 0002e 48 83 7d 08 00 cmp QWORD PTR ConsoleHandle$[rbp], 0 00033 75 05 jne SHORT $LN5@NcDebugPri ; 557 : return; 00035 e9 03 01 00 00 jmp $LN1@NcDebugPri $LN5@NcDebugPri: ; 558 : ; 559 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 0003a 48 8b 85 40 01 00 00 mov rax, QWORD PTR Block$[rbp] 00041 48 8b 00 mov rax, QWORD PTR [rax] 00044 48 89 45 28 mov QWORD PTR T$1[rbp], rax 00048 eb 0b jmp SHORT $LN4@NcDebugPri $LN2@NcDebugPri: 0004a 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0004e 48 8b 00 mov rax, QWORD PTR [rax] 00051 48 89 45 28 mov QWORD PTR T$1[rbp], rax $LN4@NcDebugPri: 00055 48 83 7d 28 00 cmp QWORD PTR T$1[rbp], 0 0005a 0f 84 dd 00 00 00 je $LN3@NcDebugPri 00060 48 8b 85 40 01 00 00 mov rax, QWORD PTR Block$[rbp] 00067 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0006b 48 8b 00 mov rax, QWORD PTR [rax] 0006e 48 39 45 28 cmp QWORD PTR T$1[rbp], rax 00072 0f 84 c5 00 00 00 je $LN3@NcDebugPri ; 560 : { ; 561 : if (T->Flags & CODE_FLAG_IS_LABEL) 00078 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0007c 8b 40 18 mov eax, DWORD PTR [rax+24] 0007f 83 e0 01 and eax, 1 00082 85 c0 test eax, eax 00084 74 26 je SHORT $LN6@NcDebugPri ; 562 : { ; 563 : SetConsoleTextAttribute(ConsoleHandle, FOREGROUND_GREEN | FOREGROUND_RED); 00086 66 ba 06 00 mov dx, 6 0008a 48 8b 4d 08 mov rcx, QWORD PTR ConsoleHandle$[rbp] 0008e ff 15 00 00 00 00 call QWORD PTR __imp_SetConsoleTextAttribute ; 564 : printf("Label: %u\n", T->Label); 00094 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00098 8b 50 1c mov edx, DWORD PTR [rax+28] 0009b 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@ILJOJNOL@Label?3?5?$CFu?6@ 000a2 e8 00 00 00 00 call printf ; 565 : } 000a7 e9 8c 00 00 00 jmp $LN7@NcDebugPri $LN6@NcDebugPri: ; 566 : else ; 567 : { ; 568 : XED_ICLASS_ENUM IClass = XedDecodedInstGetIClass(&T->XedInstruction); 000ac 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 000b0 48 83 c0 30 add rax, 48 ; 00000030H 000b4 48 8b c8 mov rcx, rax 000b7 e8 00 00 00 00 call xed_decoded_inst_get_iclass 000bc 89 45 44 mov DWORD PTR IClass$2[rbp], eax ; 569 : if (T->Flags & CODE_FLAG_IS_REL_JMP) 000bf 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 000c3 8b 40 18 mov eax, DWORD PTR [rax+24] 000c6 83 e0 02 and eax, 2 000c9 85 c0 test eax, eax 000cb 74 46 je SHORT $LN8@NcDebugPri ; 570 : { ; 571 : SetConsoleTextAttribute(ConsoleHandle, FOREGROUND_GREEN | FOREGROUND_RED); 000cd 66 ba 06 00 mov dx, 6 000d1 48 8b 4d 08 mov rcx, QWORD PTR ConsoleHandle$[rbp] 000d5 ff 15 00 00 00 00 call QWORD PTR __imp_SetConsoleTextAttribute ; 572 : printf("%s: %u\n", XedIClassEnumToString(IClass), T->Label); 000db 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 000df 8b 40 1c mov eax, DWORD PTR [rax+28] 000e2 89 85 14 01 00 00 mov DWORD PTR tv131[rbp], eax 000e8 8b 4d 44 mov ecx, DWORD PTR IClass$2[rbp] 000eb e8 00 00 00 00 call xed_iclass_enum_t2str 000f0 48 89 85 18 01 00 00 mov QWORD PTR tv129[rbp], rax 000f7 44 8b 85 14 01 00 00 mov r8d, DWORD PTR tv131[rbp] 000fe 48 8b 95 18 01 00 00 mov rdx, QWORD PTR tv129[rbp] 00105 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_07KNNCJAOA@?$CFs?3?5?$CFu?6@ 0010c e8 00 00 00 00 call printf ; 573 : } 00111 eb 25 jmp SHORT $LN9@NcDebugPri $LN8@NcDebugPri: ; 574 : else ; 575 : { ; 576 : SetConsoleTextAttribute(ConsoleHandle, FOREGROUND_GREEN | FOREGROUND_BLUE); 00113 66 ba 03 00 mov dx, 3 00117 48 8b 4d 08 mov rcx, QWORD PTR ConsoleHandle$[rbp] 0011b ff 15 00 00 00 00 call QWORD PTR __imp_SetConsoleTextAttribute ; 577 : printf("%s\n", XedIClassEnumToString(IClass)); 00121 8b 4d 44 mov ecx, DWORD PTR IClass$2[rbp] 00124 e8 00 00 00 00 call xed_iclass_enum_t2str 00129 48 8b d0 mov rdx, rax 0012c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_03OFAPEBGM@?$CFs?6@ 00133 e8 00 00 00 00 call printf $LN9@NcDebugPri: $LN7@NcDebugPri: ; 578 : } ; 579 : } ; 580 : } 00138 e9 0d ff ff ff jmp $LN2@NcDebugPri $LN3@NcDebugPri: $LN1@NcDebugPri: ; 581 : } 0013d 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 00144 5f pop rdi 00145 5d pop rbp 00146 c3 ret 0 ?NcDebugPrint@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcDebugPrint _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT BlockEnding$ = 8 T$1 = 40 Next$2 = 72 $T3 = 296 tv78 = 312 Block$ = 352 ?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcDeleteBlock, COMDAT ; 539 : { $LN10: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 68 01 00 00 sub rsp, 360 ; 00000168H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 540 : if (!Block->Start || !Block->End) 0001f 48 8b 85 60 01 00 00 mov rax, QWORD PTR Block$[rbp] 00026 48 83 38 00 cmp QWORD PTR [rax], 0 0002a 74 0e je SHORT $LN6@NcDeleteBl 0002c 48 8b 85 60 01 00 00 mov rax, QWORD PTR Block$[rbp] 00033 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 00038 75 05 jne SHORT $LN5@NcDeleteBl $LN6@NcDeleteBl: ; 541 : return; 0003a e9 80 00 00 00 jmp $LN1@NcDeleteBl $LN5@NcDeleteBl: ; 542 : ; 543 : PNATIVE_CODE_LINK BlockEnding = Block->End->Next; 0003f 48 8b 85 60 01 00 00 mov rax, QWORD PTR Block$[rbp] 00046 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0004a 48 8b 00 mov rax, QWORD PTR [rax] 0004d 48 89 45 08 mov QWORD PTR BlockEnding$[rbp], rax ; 544 : ; 545 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != BlockEnding;) 00051 48 8b 85 60 01 00 00 mov rax, QWORD PTR Block$[rbp] 00058 48 8b 00 mov rax, QWORD PTR [rax] 0005b 48 89 45 28 mov QWORD PTR T$1[rbp], rax $LN2@NcDeleteBl: 0005f 48 83 7d 28 00 cmp QWORD PTR T$1[rbp], 0 00064 74 59 je SHORT $LN3@NcDeleteBl 00066 48 8b 45 08 mov rax, QWORD PTR BlockEnding$[rbp] 0006a 48 39 45 28 cmp QWORD PTR T$1[rbp], rax 0006e 74 4f je SHORT $LN3@NcDeleteBl ; 546 : { ; 547 : PNATIVE_CODE_LINK Next = T->Next; 00070 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00074 48 8b 00 mov rax, QWORD PTR [rax] 00077 48 89 45 48 mov QWORD PTR Next$2[rbp], rax ; 548 : delete T; 0007b 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0007f 48 89 85 28 01 00 00 mov QWORD PTR $T3[rbp], rax 00086 48 83 bd 28 01 00 00 00 cmp QWORD PTR $T3[rbp], 0 0008e 74 1a je SHORT $LN8@NcDeleteBl 00090 ba 01 00 00 00 mov edx, 1 00095 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR $T3[rbp] 0009c e8 00 00 00 00 call ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z 000a1 48 89 85 38 01 00 00 mov QWORD PTR tv78[rbp], rax 000a8 eb 0b jmp SHORT $LN9@NcDeleteBl $LN8@NcDeleteBl: 000aa 48 c7 85 38 01 00 00 00 00 00 00 mov QWORD PTR tv78[rbp], 0 $LN9@NcDeleteBl: ; 549 : T = Next; 000b5 48 8b 45 48 mov rax, QWORD PTR Next$2[rbp] 000b9 48 89 45 28 mov QWORD PTR T$1[rbp], rax ; 550 : } 000bd eb a0 jmp SHORT $LN2@NcDeleteBl $LN3@NcDeleteBl: $LN1@NcDeleteBl: ; 551 : } 000bf 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] 000c6 5f pop rdi 000c7 5d pop rbp 000c8 c3 ret 0 ?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcDeleteBlock _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z _TEXT SEGMENT Buffer$ = 8 BufferOffset$ = 40 T$1 = 72 Block$ = 320 OutSize$ = 328 ?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z PROC ; NcAssemble, COMDAT ; 514 : { $LN9: 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 48 01 00 00 sub rsp, 328 ; 00000148H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 515 : if (!NcFixRelJmps(Block)) 00024 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR Block$[rbp] 0002b e8 00 00 00 00 call ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z ; NcFixRelJmps 00030 85 c0 test eax, eax 00032 75 07 jne SHORT $LN5@NcAssemble ; 516 : return NULL; 00034 33 c0 xor eax, eax 00036 e9 bc 00 00 00 jmp $LN1@NcAssemble $LN5@NcAssemble: ; 517 : ; 518 : *OutSize = NcCalcBlockSizeInBytes(Block); 0003b 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR Block$[rbp] 00042 e8 00 00 00 00 call ?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ; NcCalcBlockSizeInBytes 00047 48 8b 8d 48 01 00 00 mov rcx, QWORD PTR OutSize$[rbp] 0004e 89 01 mov DWORD PTR [rcx], eax ; 519 : ; 520 : PUCHAR Buffer = (PUCHAR)malloc(*OutSize); 00050 48 8b 85 48 01 00 00 mov rax, QWORD PTR OutSize$[rbp] 00057 8b 00 mov eax, DWORD PTR [rax] 00059 8b c8 mov ecx, eax 0005b ff 15 00 00 00 00 call QWORD PTR __imp_malloc 00061 48 89 45 08 mov QWORD PTR Buffer$[rbp], rax ; 521 : if (!Buffer) 00065 48 83 7d 08 00 cmp QWORD PTR Buffer$[rbp], 0 0006a 75 07 jne SHORT $LN6@NcAssemble ; 522 : return NULL; 0006c 33 c0 xor eax, eax 0006e e9 84 00 00 00 jmp $LN1@NcAssemble $LN6@NcAssemble: ; 523 : ; 524 : PUCHAR BufferOffset = Buffer; 00073 48 8b 45 08 mov rax, QWORD PTR Buffer$[rbp] 00077 48 89 45 28 mov QWORD PTR BufferOffset$[rbp], rax ; 525 : ; 526 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 0007b 48 8b 85 40 01 00 00 mov rax, QWORD PTR Block$[rbp] 00082 48 8b 00 mov rax, QWORD PTR [rax] 00085 48 89 45 48 mov QWORD PTR T$1[rbp], rax 00089 eb 0b jmp SHORT $LN4@NcAssemble $LN2@NcAssemble: 0008b 48 8b 45 48 mov rax, QWORD PTR T$1[rbp] 0008f 48 8b 00 mov rax, QWORD PTR [rax] 00092 48 89 45 48 mov QWORD PTR T$1[rbp], rax $LN4@NcAssemble: 00096 48 83 7d 48 00 cmp QWORD PTR T$1[rbp], 0 0009b 74 56 je SHORT $LN3@NcAssemble 0009d 48 8b 85 40 01 00 00 mov rax, QWORD PTR Block$[rbp] 000a4 48 8b 40 08 mov rax, QWORD PTR [rax+8] 000a8 48 8b 00 mov rax, QWORD PTR [rax] 000ab 48 39 45 48 cmp QWORD PTR T$1[rbp], rax 000af 74 42 je SHORT $LN3@NcAssemble ; 527 : { ; 528 : if (T->Flags & CODE_FLAG_IS_LABEL) 000b1 48 8b 45 48 mov rax, QWORD PTR T$1[rbp] 000b5 8b 40 18 mov eax, DWORD PTR [rax+24] 000b8 83 e0 01 and eax, 1 000bb 85 c0 test eax, eax 000bd 74 02 je SHORT $LN7@NcAssemble ; 529 : continue; 000bf eb ca jmp SHORT $LN2@NcAssemble $LN7@NcAssemble: ; 530 : ; 531 : RtlCopyMemory(BufferOffset, T->RawData, T->RawDataSize); 000c1 48 8b 45 48 mov rax, QWORD PTR T$1[rbp] 000c5 8b 40 28 mov eax, DWORD PTR [rax+40] 000c8 44 8b c0 mov r8d, eax 000cb 48 8b 45 48 mov rax, QWORD PTR T$1[rbp] 000cf 48 8b 50 20 mov rdx, QWORD PTR [rax+32] 000d3 48 8b 4d 28 mov rcx, QWORD PTR BufferOffset$[rbp] 000d7 e8 00 00 00 00 call memcpy ; 532 : BufferOffset += T->RawDataSize; 000dc 48 8b 45 48 mov rax, QWORD PTR T$1[rbp] 000e0 8b 40 28 mov eax, DWORD PTR [rax+40] 000e3 48 8b 4d 28 mov rcx, QWORD PTR BufferOffset$[rbp] 000e7 48 03 c8 add rcx, rax 000ea 48 8b c1 mov rax, rcx 000ed 48 89 45 28 mov QWORD PTR BufferOffset$[rbp], rax ; 533 : } 000f1 eb 98 jmp SHORT $LN2@NcAssemble $LN3@NcAssemble: ; 534 : ; 535 : return Buffer; 000f3 48 8b 45 08 mov rax, QWORD PTR Buffer$[rbp] $LN1@NcAssemble: ; 536 : } 000f7 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 000fe 5f pop rdi 000ff 5d pop rbp 00100 c3 ret 0 ?NcAssemble@@YAPEAXPEAU_NATIVE_CODE_BLOCK@@PEAK@Z ENDP ; NcAssemble _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z _TEXT SEGMENT Buf$ = 8 Offset$ = 36 Link$1 = 72 PossibleSize$2 = 100 DecodeError$3 = 132 $T4 = 360 $T5 = 392 $T6 = 424 $T7 = 456 tv80 = 468 tv130 = 472 tv76 = 472 Block$ = 512 Buffer$ = 520 BufferSize$ = 528 ?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z PROC ; NcDisassemble, COMDAT ; 482 : { $LN13: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 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 08 02 00 00 sub rsp, 520 ; 00000208H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 483 : PUCHAR Buf = (PUCHAR)Buffer; 00029 48 8b 85 08 02 00 00 mov rax, QWORD PTR Buffer$[rbp] 00030 48 89 45 08 mov QWORD PTR Buf$[rbp], rax ; 484 : ULONG Offset = 0; 00034 c7 45 24 00 00 00 00 mov DWORD PTR Offset$[rbp], 0 $LN2@NcDisassem: ; 485 : ; 486 : while (Offset < BufferSize) 0003b 8b 85 10 02 00 00 mov eax, DWORD PTR BufferSize$[rbp] 00041 39 45 24 cmp DWORD PTR Offset$[rbp], eax 00044 0f 83 b8 01 00 00 jae $LN3@NcDisassem ; 487 : { ; 488 : PNATIVE_CODE_LINK Link = new NATIVE_CODE_LINK; 0004a b9 f0 00 00 00 mov ecx, 240 ; 000000f0H 0004f e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 00054 48 89 85 88 01 00 00 mov QWORD PTR $T5[rbp], rax 0005b 48 83 bd 88 01 00 00 00 cmp QWORD PTR $T5[rbp], 0 00063 74 15 je SHORT $LN6@NcDisassem 00065 48 8b 8d 88 01 00 00 mov rcx, QWORD PTR $T5[rbp] 0006c e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK 00071 48 89 85 d8 01 00 00 mov QWORD PTR tv76[rbp], rax 00078 eb 0b jmp SHORT $LN7@NcDisassem $LN6@NcDisassem: 0007a 48 c7 85 d8 01 00 00 00 00 00 00 mov QWORD PTR tv76[rbp], 0 $LN7@NcDisassem: 00085 48 8b 85 d8 01 00 00 mov rax, QWORD PTR tv76[rbp] 0008c 48 89 85 68 01 00 00 mov QWORD PTR $T4[rbp], rax 00093 48 8b 85 68 01 00 00 mov rax, QWORD PTR $T4[rbp] 0009a 48 89 45 48 mov QWORD PTR Link$1[rbp], rax ; 489 : Link->Flags = CODE_FLAG_IS_INST; 0009e 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 000a2 c7 40 18 04 00 00 00 mov DWORD PTR [rax+24], 4 ; 490 : ULONG PossibleSize = min(15, BufferSize - Offset); 000a9 8b 45 24 mov eax, DWORD PTR Offset$[rbp] 000ac 8b 8d 10 02 00 00 mov ecx, DWORD PTR BufferSize$[rbp] 000b2 2b c8 sub ecx, eax 000b4 8b c1 mov eax, ecx 000b6 83 f8 0f cmp eax, 15 000b9 76 0c jbe SHORT $LN8@NcDisassem 000bb c7 85 d4 01 00 00 0f 00 00 00 mov DWORD PTR tv80[rbp], 15 000c5 eb 13 jmp SHORT $LN9@NcDisassem $LN8@NcDisassem: 000c7 8b 45 24 mov eax, DWORD PTR Offset$[rbp] 000ca 8b 8d 10 02 00 00 mov ecx, DWORD PTR BufferSize$[rbp] 000d0 2b c8 sub ecx, eax 000d2 8b c1 mov eax, ecx 000d4 89 85 d4 01 00 00 mov DWORD PTR tv80[rbp], eax $LN9@NcDisassem: 000da 8b 85 d4 01 00 00 mov eax, DWORD PTR tv80[rbp] 000e0 89 45 64 mov DWORD PTR PossibleSize$2[rbp], eax ; 491 : XED_ERROR_ENUM DecodeError = XedDecode(&Link->XedInstruction, (Buf + Offset), PossibleSize); 000e3 8b 45 24 mov eax, DWORD PTR Offset$[rbp] 000e6 48 8b 4d 08 mov rcx, QWORD PTR Buf$[rbp] 000ea 48 03 c8 add rcx, rax 000ed 48 8b c1 mov rax, rcx 000f0 48 8b 4d 48 mov rcx, QWORD PTR Link$1[rbp] 000f4 48 83 c1 30 add rcx, 48 ; 00000030H 000f8 44 8b 45 64 mov r8d, DWORD PTR PossibleSize$2[rbp] 000fc 48 8b d0 mov rdx, rax 000ff e8 00 00 00 00 call xed_decode 00104 89 85 84 00 00 00 mov DWORD PTR DecodeError$3[rbp], eax ; 492 : if (DecodeError != XED_ERROR_NONE) 0010a 83 bd 84 00 00 00 00 cmp DWORD PTR DecodeError$3[rbp], 0 00111 74 67 je SHORT $LN4@NcDisassem ; 493 : { ; 494 : printf("XedDecode failed with error %s\n", XedErrorEnumToString(DecodeError)); 00113 8b 8d 84 00 00 00 mov ecx, DWORD PTR DecodeError$3[rbp] 00119 e8 00 00 00 00 call xed_error_enum_t2str 0011e 48 8b d0 mov rdx, rax 00121 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0CA@KDIENFLL@XedDecode?5failed?5with?5error?5?$CFs?6@ 00128 e8 00 00 00 00 call printf ; 495 : NcDeleteBlock(Block); 0012d 48 8b 8d 00 02 00 00 mov rcx, QWORD PTR Block$[rbp] 00134 e8 00 00 00 00 call ?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcDeleteBlock ; 496 : delete Link; 00139 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 0013d 48 89 85 a8 01 00 00 mov QWORD PTR $T6[rbp], rax 00144 48 83 bd a8 01 00 00 00 cmp QWORD PTR $T6[rbp], 0 0014c 74 1a je SHORT $LN10@NcDisassem 0014e ba 01 00 00 00 mov edx, 1 00153 48 8b 8d a8 01 00 00 mov rcx, QWORD PTR $T6[rbp] 0015a e8 00 00 00 00 call ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z 0015f 48 89 85 d8 01 00 00 mov QWORD PTR tv130[rbp], rax 00166 eb 0b jmp SHORT $LN11@NcDisassem $LN10@NcDisassem: 00168 48 c7 85 d8 01 00 00 00 00 00 00 mov QWORD PTR tv130[rbp], 0 $LN11@NcDisassem: ; 497 : return FALSE; 00173 33 c0 xor eax, eax 00175 e9 99 00 00 00 jmp $LN1@NcDisassem $LN4@NcDisassem: ; 498 : } ; 499 : Link->RawDataSize = XedDecodedInstGetLength(&Link->XedInstruction); 0017a 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 0017e 48 83 c0 30 add rax, 48 ; 00000030H 00182 48 8b c8 mov rcx, rax 00185 e8 00 00 00 00 call xed_decoded_inst_get_length 0018a 48 8b 4d 48 mov rcx, QWORD PTR Link$1[rbp] 0018e 89 41 28 mov DWORD PTR [rcx+40], eax ; 500 : Link->RawData = new UCHAR[Link->RawDataSize]; 00191 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 00195 8b 40 28 mov eax, DWORD PTR [rax+40] 00198 8b c8 mov ecx, eax 0019a e8 00 00 00 00 call ??_U@YAPEAX_K@Z ; operator new[] 0019f 48 89 85 c8 01 00 00 mov QWORD PTR $T7[rbp], rax 001a6 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 001aa 48 8b 8d c8 01 00 00 mov rcx, QWORD PTR $T7[rbp] 001b1 48 89 48 20 mov QWORD PTR [rax+32], rcx ; 501 : RtlCopyMemory(Link->RawData, (Buf + Offset), Link->RawDataSize); 001b5 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 001b9 8b 40 28 mov eax, DWORD PTR [rax+40] 001bc 8b 4d 24 mov ecx, DWORD PTR Offset$[rbp] 001bf 48 8b 55 08 mov rdx, QWORD PTR Buf$[rbp] 001c3 48 03 d1 add rdx, rcx 001c6 48 8b ca mov rcx, rdx 001c9 44 8b c0 mov r8d, eax 001cc 48 8b d1 mov rdx, rcx 001cf 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 001d3 48 8b 48 20 mov rcx, QWORD PTR [rax+32] 001d7 e8 00 00 00 00 call memcpy ; 502 : ; 503 : NcAppendToBlock(Block, Link); 001dc 48 8b 55 48 mov rdx, QWORD PTR Link$1[rbp] 001e0 48 8b 8d 00 02 00 00 mov rcx, QWORD PTR Block$[rbp] 001e7 e8 00 00 00 00 call ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcAppendToBlock ; 504 : ; 505 : Offset += Link->RawDataSize; 001ec 48 8b 45 48 mov rax, QWORD PTR Link$1[rbp] 001f0 8b 40 28 mov eax, DWORD PTR [rax+40] 001f3 8b 4d 24 mov ecx, DWORD PTR Offset$[rbp] 001f6 03 c8 add ecx, eax 001f8 8b c1 mov eax, ecx 001fa 89 45 24 mov DWORD PTR Offset$[rbp], eax ; 506 : } 001fd e9 39 fe ff ff jmp $LN2@NcDisassem $LN3@NcDisassem: ; 507 : ; 508 : NcCreateLabels(Block); 00202 48 8b 8d 00 02 00 00 mov rcx, QWORD PTR Block$[rbp] 00209 e8 00 00 00 00 call ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z ; NcCreateLabels ; 509 : ; 510 : return TRUE; 0020e b8 01 00 00 00 mov eax, 1 $LN1@NcDisassem: ; 511 : } 00213 48 8d a5 e8 01 00 00 lea rsp, QWORD PTR [rbp+488] 0021a 5f pop rdi 0021b 5d pop rbp 0021c c3 ret 0 ?NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z ENDP ; NcDisassemble _TEXT ENDS ; COMDAT text$x text$x SEGMENT Buf$ = 8 Offset$ = 36 Link$1 = 72 PossibleSize$2 = 100 DecodeError$3 = 132 $T4 = 360 $T5 = 392 $T6 = 424 $T7 = 456 tv80 = 468 tv130 = 472 tv76 = 472 Block$ = 512 Buffer$ = 520 BufferSize$ = 528 ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA PROC ; `NcDisassemble'::`1'::dtor$0 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 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 88 01 00 00 mov rcx, QWORD PTR $T5[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA ENDP ; `NcDisassemble'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT Buf$ = 8 Offset$ = 36 Link$1 = 72 PossibleSize$2 = 100 DecodeError$3 = 132 $T4 = 360 $T5 = 392 $T6 = 424 $T7 = 456 tv80 = 468 tv130 = 472 tv76 = 472 Block$ = 512 Buffer$ = 520 BufferSize$ = 528 ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA PROC ; `NcDisassemble'::`1'::dtor$0 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 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 88 01 00 00 mov rcx, QWORD PTR $T5[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$0@?0??NcDisassemble@@YAHPEAU_NATIVE_CODE_BLOCK@@PEAXK@Z@4HA ENDP ; `NcDisassemble'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT T$9 = 8 BranchDisp$10 = 36 DispWidth$11 = 68 MachineState$12 = 104 EncoderInstruction$13 = 144 EncoderRequest$14 = 592 EncodeBuffer$15 = 808 ReturnedSize$16 = 852 IClass$17 = 884 Err$18 = 916 $T19 = 1528 $T20 = 1608 $T21 = 1688 $T22 = 1720 $T23 = 1760 tv174 = 1812 __$ArrayPad$ = 1816 Block$ = 1856 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcFixRelJmps, COMDAT ; 399 : { $LN19: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 56 push rsi 00007 57 push rdi 00008 48 81 ec 50 07 00 00 sub rsp, 1872 ; 00000750H 0000f 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00014 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48] 00019 b9 38 01 00 00 mov ecx, 312 ; 00000138H 0001e b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00023 f3 ab rep stosd 00025 48 8b 8c 24 78 07 00 00 mov rcx, QWORD PTR [rsp+1912] 0002d 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00034 48 33 c5 xor rax, rbp 00037 48 89 85 18 07 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003e 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00045 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 400 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next;) 0004a 48 8b 85 40 07 00 00 mov rax, QWORD PTR Block$[rbp] 00051 48 8b 00 mov rax, QWORD PTR [rax] 00054 48 89 45 08 mov QWORD PTR T$9[rbp], rax $LN2@NcFixRelJm: 00058 48 83 7d 08 00 cmp QWORD PTR T$9[rbp], 0 0005d 0f 84 ec 02 00 00 je $LN3@NcFixRelJm 00063 48 8b 85 40 07 00 00 mov rax, QWORD PTR Block$[rbp] 0006a 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0006e 48 8b 00 mov rax, QWORD PTR [rax] 00071 48 39 45 08 cmp QWORD PTR T$9[rbp], rax 00075 0f 84 d4 02 00 00 je $LN3@NcFixRelJm ; 401 : { ; 402 : if (T->Flags & CODE_FLAG_IS_REL_JMP) 0007b 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 0007f 8b 40 18 mov eax, DWORD PTR [rax+24] 00082 83 e0 02 and eax, 2 00085 85 c0 test eax, eax 00087 0f 84 b2 02 00 00 je $LN7@NcFixRelJm ; 403 : { ; 404 : INT32 BranchDisp = 0; 0008d c7 45 24 00 00 00 00 mov DWORD PTR BranchDisp$10[rbp], 0 ; 405 : if (!NcGetDeltaToLabel(T, &BranchDisp)) 00094 48 8d 55 24 lea rdx, QWORD PTR BranchDisp$10[rbp] 00098 48 8b 4d 08 mov rcx, QWORD PTR T$9[rbp] 0009c e8 00 00 00 00 call ?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z ; NcGetDeltaToLabel 000a1 85 c0 test eax, eax 000a3 75 07 jne SHORT $LN8@NcFixRelJm ; 406 : return FALSE; 000a5 33 c0 xor eax, eax 000a7 e9 a8 02 00 00 jmp $LN1@NcFixRelJm $LN8@NcFixRelJm: ; 407 : ; 408 : ULONG DispWidth = XedDecodedInstGetBranchDisplacementWidthBits(&T->XedInstruction); 000ac 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 000b0 48 83 c0 30 add rax, 48 ; 00000030H 000b4 48 8b c8 mov rcx, rax 000b7 e8 00 00 00 00 call xed_decoded_inst_get_branch_displacement_width_bits 000bc 89 45 44 mov DWORD PTR DispWidth$11[rbp], eax ; 409 : if (log2(abs(BranchDisp)) + 1 > DispWidth) 000bf 8b 4d 24 mov ecx, DWORD PTR BranchDisp$10[rbp] 000c2 e8 00 00 00 00 call abs 000c7 8b c8 mov ecx, eax 000c9 e8 00 00 00 00 call ??$log2@H$0A@@@YANH@Z ; log2 000ce f2 0f 58 05 00 00 00 00 addsd xmm0, QWORD PTR __real@3ff0000000000000 000d6 8b 45 44 mov eax, DWORD PTR DispWidth$11[rbp] 000d9 f2 48 0f 2a c8 cvtsi2sd xmm1, rax 000de 66 0f 2f c1 comisd xmm0, xmm1 000e2 0f 86 c3 01 00 00 jbe $LN9@NcFixRelJm ; 410 : { ; 411 : //duh oh ; 412 : if (DispWidth == 32) 000e8 83 7d 44 20 cmp DWORD PTR DispWidth$11[rbp], 32 ; 00000020H 000ec 75 07 jne SHORT $LN11@NcFixRelJm ; 413 : return FALSE; 000ee 33 c0 xor eax, eax 000f0 e9 5f 02 00 00 jmp $LN1@NcFixRelJm $LN11@NcFixRelJm: ; 414 : ; 415 : ////Grow displacement width to required size ; 416 : //DispWidth *= 2; ; 417 : ; 418 : ////Check again ; 419 : //if (log2(abs(BranchDisp)) + 1 > DispWidth) ; 420 : //{ ; 421 : // if (DispWidth == 32) ; 422 : // return FALSE; ; 423 : ; 424 : // //Grow once more if not already at 32 ; 425 : // DispWidth *= 2; ; 426 : //} ; 427 : ; 428 : DispWidth = 32; 000f5 c7 45 44 20 00 00 00 mov DWORD PTR DispWidth$11[rbp], 32 ; 00000020H ; 429 : ; 430 : //Encode new instruction ; 431 : XED_STATE MachineState; ; 432 : MachineState.mmode = XED_MACHINE_MODE_LONG_64; 000fc c7 45 68 01 00 00 00 mov DWORD PTR MachineState$12[rbp], 1 ; 433 : MachineState.stack_addr_width = XED_ADDRESS_WIDTH_64b; 00103 c7 45 6c 08 00 00 00 mov DWORD PTR MachineState$12[rbp+4], 8 ; 434 : XED_ENCODER_INSTRUCTION EncoderInstruction; ; 435 : XED_ENCODER_REQUEST EncoderRequest; ; 436 : UCHAR EncodeBuffer[15]; ; 437 : UINT ReturnedSize; ; 438 : XED_ICLASS_ENUM IClass = XedDecodedInstGetIClass(&T->XedInstruction); 0010a 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 0010e 48 83 c0 30 add rax, 48 ; 00000030H 00112 48 8b c8 mov rcx, rax 00115 e8 00 00 00 00 call xed_decoded_inst_get_iclass 0011a 89 85 74 03 00 00 mov DWORD PTR IClass$17[rbp], eax ; 439 : ; 440 : //Do the encoding ; 441 : XedInst1(&EncoderInstruction, MachineState, IClass, DispWidth, XedRelBr(0, DispWidth)); 00120 44 8b 45 44 mov r8d, DWORD PTR DispWidth$11[rbp] 00124 33 d2 xor edx, edx 00126 48 8d 8d 48 06 00 00 lea rcx, QWORD PTR $T20[rbp] 0012d e8 00 00 00 00 call xed_relbr 00132 48 8d 8d f8 05 00 00 lea rcx, QWORD PTR $T19[rbp] 00139 48 8b f9 mov rdi, rcx 0013c 48 8b f0 mov rsi, rax 0013f b9 30 00 00 00 mov ecx, 48 ; 00000030H 00144 f3 a4 rep movsb 00146 48 8d 85 e0 06 00 00 lea rax, QWORD PTR $T23[rbp] 0014d 48 8d 8d f8 05 00 00 lea rcx, QWORD PTR $T19[rbp] 00154 48 8b f8 mov rdi, rax 00157 48 8b f1 mov rsi, rcx 0015a b9 30 00 00 00 mov ecx, 48 ; 00000030H 0015f f3 a4 rep movsb 00161 48 8d 85 e0 06 00 00 lea rax, QWORD PTR $T23[rbp] 00168 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 0016d 44 8b 4d 44 mov r9d, DWORD PTR DispWidth$11[rbp] 00171 44 8b 85 74 03 00 00 mov r8d, DWORD PTR IClass$17[rbp] 00178 48 8b 55 68 mov rdx, QWORD PTR MachineState$12[rbp] 0017c 48 8d 8d 90 00 00 00 lea rcx, QWORD PTR EncoderInstruction$13[rbp] 00183 e8 00 00 00 00 call xed_inst1 ; 442 : XedEncoderRequestZeroSetMode(&EncoderRequest, &MachineState); 00188 48 8d 55 68 lea rdx, QWORD PTR MachineState$12[rbp] 0018c 48 8d 8d 50 02 00 00 lea rcx, QWORD PTR EncoderRequest$14[rbp] 00193 e8 00 00 00 00 call xed_encoder_request_zero_set_mode ; 443 : if (!XedConvertToEncoderRequest(&EncoderRequest, &EncoderInstruction)) 00198 48 8d 95 90 00 00 00 lea rdx, QWORD PTR EncoderInstruction$13[rbp] 0019f 48 8d 8d 50 02 00 00 lea rcx, QWORD PTR EncoderRequest$14[rbp] 001a6 e8 00 00 00 00 call xed_convert_to_encoder_request 001ab 85 c0 test eax, eax 001ad 75 07 jne SHORT $LN12@NcFixRelJm ; 444 : return FALSE; 001af 33 c0 xor eax, eax 001b1 e9 9e 01 00 00 jmp $LN1@NcFixRelJm $LN12@NcFixRelJm: ; 445 : XED_ERROR_ENUM Err = XedEncode(&EncoderRequest, EncodeBuffer, 15, &ReturnedSize); 001b6 4c 8d 8d 54 03 00 00 lea r9, QWORD PTR ReturnedSize$16[rbp] 001bd 41 b8 0f 00 00 00 mov r8d, 15 001c3 48 8d 95 28 03 00 00 lea rdx, QWORD PTR EncodeBuffer$15[rbp] 001ca 48 8d 8d 50 02 00 00 lea rcx, QWORD PTR EncoderRequest$14[rbp] 001d1 e8 00 00 00 00 call xed_encode 001d6 89 85 94 03 00 00 mov DWORD PTR Err$18[rbp], eax ; 446 : if (XED_ERROR_NONE != Err) 001dc 83 bd 94 03 00 00 00 cmp DWORD PTR Err$18[rbp], 0 001e3 74 07 je SHORT $LN13@NcFixRelJm ; 447 : return FALSE; 001e5 33 c0 xor eax, eax 001e7 e9 68 01 00 00 jmp $LN1@NcFixRelJm $LN13@NcFixRelJm: ; 448 : ; 449 : //fixup T->RawData ; 450 : delete[] T->RawData; 001ec 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 001f0 48 8b 40 20 mov rax, QWORD PTR [rax+32] 001f4 48 89 85 98 06 00 00 mov QWORD PTR $T21[rbp], rax 001fb 48 8b 8d 98 06 00 00 mov rcx, QWORD PTR $T21[rbp] 00202 e8 00 00 00 00 call ??_V@YAXPEAX@Z ; operator delete[] ; 451 : T->RawDataSize = ReturnedSize; 00207 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 0020b 8b 8d 54 03 00 00 mov ecx, DWORD PTR ReturnedSize$16[rbp] 00211 89 48 28 mov DWORD PTR [rax+40], ecx ; 452 : T->RawData = new UCHAR[ReturnedSize]; 00214 8b 85 54 03 00 00 mov eax, DWORD PTR ReturnedSize$16[rbp] 0021a 8b c8 mov ecx, eax 0021c e8 00 00 00 00 call ??_U@YAPEAX_K@Z ; operator new[] 00221 48 89 85 b8 06 00 00 mov QWORD PTR $T22[rbp], rax 00228 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 0022c 48 8b 8d b8 06 00 00 mov rcx, QWORD PTR $T22[rbp] 00233 48 89 48 20 mov QWORD PTR [rax+32], rcx ; 453 : RtlCopyMemory(T->RawData, EncodeBuffer, ReturnedSize); 00237 8b 85 54 03 00 00 mov eax, DWORD PTR ReturnedSize$16[rbp] 0023d 44 8b c0 mov r8d, eax 00240 48 8d 95 28 03 00 00 lea rdx, QWORD PTR EncodeBuffer$15[rbp] 00247 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 0024b 48 8b 48 20 mov rcx, QWORD PTR [rax+32] 0024f e8 00 00 00 00 call memcpy ; 454 : ; 455 : //Decode instruction so its proper and all that ; 456 : XedDecodedInstZeroSetMode(&T->XedInstruction, &MachineState); 00254 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 00258 48 83 c0 30 add rax, 48 ; 00000030H 0025c 48 8d 55 68 lea rdx, QWORD PTR MachineState$12[rbp] 00260 48 8b c8 mov rcx, rax 00263 e8 00 00 00 00 call xed_decoded_inst_zero_set_mode ; 457 : if (XED_ERROR_NONE != XedDecode(&T->XedInstruction, T->RawData, T->RawDataSize)) 00268 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 0026c 48 83 c0 30 add rax, 48 ; 00000030H 00270 48 8b 4d 08 mov rcx, QWORD PTR T$9[rbp] 00274 44 8b 41 28 mov r8d, DWORD PTR [rcx+40] 00278 48 8b 4d 08 mov rcx, QWORD PTR T$9[rbp] 0027c 48 8b 51 20 mov rdx, QWORD PTR [rcx+32] 00280 48 8b c8 mov rcx, rax 00283 e8 00 00 00 00 call xed_decode 00288 85 c0 test eax, eax 0028a 74 07 je SHORT $LN14@NcFixRelJm ; 458 : return FALSE; 0028c 33 c0 xor eax, eax 0028e e9 c1 00 00 00 jmp $LN1@NcFixRelJm $LN14@NcFixRelJm: ; 459 : ; 460 : //Go back to the start and loop through all labels again because now this instruction is larger :)))) ; 461 : T = Block->Start; 00293 48 8b 85 40 07 00 00 mov rax, QWORD PTR Block$[rbp] 0029a 48 8b 00 mov rax, QWORD PTR [rax] 0029d 48 89 45 08 mov QWORD PTR T$9[rbp], rax ; 462 : continue; 002a1 e9 b2 fd ff ff jmp $LN2@NcFixRelJm ; 463 : } 002a6 e9 94 00 00 00 jmp $LN10@NcFixRelJm $LN9@NcFixRelJm: ; 464 : else ; 465 : { ; 466 : DispWidth = XedDecodedInstGetBranchDisplacementWidth(&T->XedInstruction); 002ab 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 002af 48 83 c0 30 add rax, 48 ; 00000030H 002b3 48 8b c8 mov rcx, rax 002b6 e8 00 00 00 00 call xed_decoded_inst_get_branch_displacement_width 002bb 89 45 44 mov DWORD PTR DispWidth$11[rbp], eax ; 467 : switch (DispWidth) 002be 8b 45 44 mov eax, DWORD PTR DispWidth$11[rbp] 002c1 89 85 14 07 00 00 mov DWORD PTR tv174[rbp], eax 002c7 83 bd 14 07 00 00 01 cmp DWORD PTR tv174[rbp], 1 002ce 74 14 je SHORT $LN15@NcFixRelJm 002d0 83 bd 14 07 00 00 02 cmp DWORD PTR tv174[rbp], 2 002d7 74 2a je SHORT $LN16@NcFixRelJm 002d9 83 bd 14 07 00 00 04 cmp DWORD PTR tv174[rbp], 4 002e0 74 41 je SHORT $LN17@NcFixRelJm 002e2 eb 5b jmp SHORT $LN5@NcFixRelJm $LN15@NcFixRelJm: ; 468 : { ; 469 : case 1: *(PINT8)&T->RawData[T->RawDataSize - DispWidth] = (INT8)BranchDisp; break; 002e4 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 002e8 8b 4d 44 mov ecx, DWORD PTR DispWidth$11[rbp] 002eb 8b 40 28 mov eax, DWORD PTR [rax+40] 002ee 2b c1 sub eax, ecx 002f0 8b c0 mov eax, eax 002f2 48 8b 4d 08 mov rcx, QWORD PTR T$9[rbp] 002f6 48 8b 49 20 mov rcx, QWORD PTR [rcx+32] 002fa 0f b6 55 24 movzx edx, BYTE PTR BranchDisp$10[rbp] 002fe 88 14 01 mov BYTE PTR [rcx+rax], dl 00301 eb 3c jmp SHORT $LN5@NcFixRelJm $LN16@NcFixRelJm: ; 470 : case 2: *(PINT16)&T->RawData[T->RawDataSize - DispWidth] = (INT16)BranchDisp; break; 00303 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 00307 8b 4d 44 mov ecx, DWORD PTR DispWidth$11[rbp] 0030a 8b 40 28 mov eax, DWORD PTR [rax+40] 0030d 2b c1 sub eax, ecx 0030f 8b c0 mov eax, eax 00311 48 8b 4d 08 mov rcx, QWORD PTR T$9[rbp] 00315 48 8b 49 20 mov rcx, QWORD PTR [rcx+32] 00319 0f b7 55 24 movzx edx, WORD PTR BranchDisp$10[rbp] 0031d 66 89 14 01 mov WORD PTR [rcx+rax], dx 00321 eb 1c jmp SHORT $LN5@NcFixRelJm $LN17@NcFixRelJm: ; 471 : case 4: *(PINT32)&T->RawData[T->RawDataSize - DispWidth] = (INT32)BranchDisp; break; 00323 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 00327 8b 4d 44 mov ecx, DWORD PTR DispWidth$11[rbp] 0032a 8b 40 28 mov eax, DWORD PTR [rax+40] 0032d 2b c1 sub eax, ecx 0032f 8b c0 mov eax, eax 00331 48 8b 4d 08 mov rcx, QWORD PTR T$9[rbp] 00335 48 8b 49 20 mov rcx, QWORD PTR [rcx+32] 00339 8b 55 24 mov edx, DWORD PTR BranchDisp$10[rbp] 0033c 89 14 01 mov DWORD PTR [rcx+rax], edx $LN5@NcFixRelJm: $LN10@NcFixRelJm: $LN7@NcFixRelJm: ; 472 : } ; 473 : } ; 474 : } ; 475 : ; 476 : T = T->Next; 0033f 48 8b 45 08 mov rax, QWORD PTR T$9[rbp] 00343 48 8b 00 mov rax, QWORD PTR [rax] 00346 48 89 45 08 mov QWORD PTR T$9[rbp], rax ; 477 : } 0034a e9 09 fd ff ff jmp $LN2@NcFixRelJm $LN3@NcFixRelJm: ; 478 : return TRUE; 0034f b8 01 00 00 00 mov eax, 1 $LN1@NcFixRelJm: ; 479 : } 00354 48 8b f8 mov rdi, rax 00357 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48] 0035b 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData 00362 e8 00 00 00 00 call _RTC_CheckStackVars 00367 48 8b c7 mov rax, rdi 0036a 48 8b 8d 18 07 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00371 48 33 cd xor rcx, rbp 00374 e8 00 00 00 00 call __security_check_cookie 00379 48 8d a5 20 07 00 00 lea rsp, QWORD PTR [rbp+1824] 00380 5f pop rdi 00381 5e pop rsi 00382 5d pop rbp 00383 c3 ret 0 ?NcFixRelJmps@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcFixRelJmps _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z _TEXT SEGMENT Delta$ = 4 T$1 = 40 T$2 = 72 Link$ = 320 DeltaOut$ = 328 ?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z PROC ; NcGetDeltaToLabel, COMDAT ; 363 : { $LN13: 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 48 01 00 00 sub rsp, 328 ; 00000148H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 364 : INT32 Delta = 0; 00024 c7 45 04 00 00 00 00 mov DWORD PTR Delta$[rbp], 0 ; 365 : //First checking backwards because I feel like thats the direction most jmps are in ; 366 : for (PNATIVE_CODE_LINK T = Link; T; T = T->Prev) 0002b 48 8b 85 40 01 00 00 mov rax, QWORD PTR Link$[rbp] 00032 48 89 45 28 mov QWORD PTR T$1[rbp], rax 00036 eb 0c jmp SHORT $LN4@NcGetDelta $LN2@NcGetDelta: 00038 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0003c 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00040 48 89 45 28 mov QWORD PTR T$1[rbp], rax $LN4@NcGetDelta: 00044 48 83 7d 28 00 cmp QWORD PTR T$1[rbp], 0 00049 74 4c je SHORT $LN3@NcGetDelta ; 367 : { ; 368 : if (T->Flags & CODE_FLAG_IS_LABEL) 0004b 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0004f 8b 40 18 mov eax, DWORD PTR [rax+24] 00052 83 e0 01 and eax, 1 00055 85 c0 test eax, eax 00057 74 2b je SHORT $LN8@NcGetDelta ; 369 : { ; 370 : if (T->Label == Link->Label) 00059 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0005d 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR Link$[rbp] 00064 8b 49 1c mov ecx, DWORD PTR [rcx+28] 00067 39 48 1c cmp DWORD PTR [rax+28], ecx 0006a 75 16 jne SHORT $LN9@NcGetDelta ; 371 : { ; 372 : *DeltaOut = Delta; 0006c 48 8b 85 48 01 00 00 mov rax, QWORD PTR DeltaOut$[rbp] 00073 8b 4d 04 mov ecx, DWORD PTR Delta$[rbp] 00076 89 08 mov DWORD PTR [rax], ecx ; 373 : return TRUE; 00078 b8 01 00 00 00 mov eax, 1 0007d e9 89 00 00 00 jmp $LN1@NcGetDelta $LN9@NcGetDelta: ; 374 : } ; 375 : continue; 00082 eb b4 jmp SHORT $LN2@NcGetDelta $LN8@NcGetDelta: ; 376 : } ; 377 : Delta -= T->RawDataSize; 00084 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00088 8b 40 28 mov eax, DWORD PTR [rax+40] 0008b 8b 4d 04 mov ecx, DWORD PTR Delta$[rbp] 0008e 2b c8 sub ecx, eax 00090 8b c1 mov eax, ecx 00092 89 45 04 mov DWORD PTR Delta$[rbp], eax ; 378 : } 00095 eb a1 jmp SHORT $LN2@NcGetDelta $LN3@NcGetDelta: ; 379 : ; 380 : //Now check forwards ; 381 : Delta = 0; 00097 c7 45 04 00 00 00 00 mov DWORD PTR Delta$[rbp], 0 ; 382 : for (PNATIVE_CODE_LINK T = Link->Next; T; T = T->Next) 0009e 48 8b 85 40 01 00 00 mov rax, QWORD PTR Link$[rbp] 000a5 48 8b 00 mov rax, QWORD PTR [rax] 000a8 48 89 45 48 mov QWORD PTR T$2[rbp], rax 000ac eb 0b jmp SHORT $LN7@NcGetDelta $LN5@NcGetDelta: 000ae 48 8b 45 48 mov rax, QWORD PTR T$2[rbp] 000b2 48 8b 00 mov rax, QWORD PTR [rax] 000b5 48 89 45 48 mov QWORD PTR T$2[rbp], rax $LN7@NcGetDelta: 000b9 48 83 7d 48 00 cmp QWORD PTR T$2[rbp], 0 000be 74 49 je SHORT $LN6@NcGetDelta ; 383 : { ; 384 : if (T->Flags & CODE_FLAG_IS_LABEL) 000c0 48 8b 45 48 mov rax, QWORD PTR T$2[rbp] 000c4 8b 40 18 mov eax, DWORD PTR [rax+24] 000c7 83 e0 01 and eax, 1 000ca 85 c0 test eax, eax 000cc 74 28 je SHORT $LN10@NcGetDelta ; 385 : { ; 386 : if (T->Label == Link->Label) 000ce 48 8b 45 48 mov rax, QWORD PTR T$2[rbp] 000d2 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR Link$[rbp] 000d9 8b 49 1c mov ecx, DWORD PTR [rcx+28] 000dc 39 48 1c cmp DWORD PTR [rax+28], ecx 000df 75 13 jne SHORT $LN11@NcGetDelta ; 387 : { ; 388 : *DeltaOut = Delta; 000e1 48 8b 85 48 01 00 00 mov rax, QWORD PTR DeltaOut$[rbp] 000e8 8b 4d 04 mov ecx, DWORD PTR Delta$[rbp] 000eb 89 08 mov DWORD PTR [rax], ecx ; 389 : return TRUE; 000ed b8 01 00 00 00 mov eax, 1 000f2 eb 17 jmp SHORT $LN1@NcGetDelta $LN11@NcGetDelta: ; 390 : } ; 391 : continue; 000f4 eb b8 jmp SHORT $LN5@NcGetDelta $LN10@NcGetDelta: ; 392 : } ; 393 : Delta += T->RawDataSize; 000f6 48 8b 45 48 mov rax, QWORD PTR T$2[rbp] 000fa 8b 40 28 mov eax, DWORD PTR [rax+40] 000fd 8b 4d 04 mov ecx, DWORD PTR Delta$[rbp] 00100 03 c8 add ecx, eax 00102 8b c1 mov eax, ecx 00104 89 45 04 mov DWORD PTR Delta$[rbp], eax ; 394 : } 00107 eb a5 jmp SHORT $LN5@NcGetDelta $LN6@NcGetDelta: ; 395 : return FALSE; 00109 33 c0 xor eax, eax $LN1@NcGetDelta: ; 396 : } 0010b 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 00112 5f pop rdi 00113 5d pop rbp 00114 c3 ret 0 ?NcGetDeltaToLabel@@YAHPEAU_NATIVE_CODE_LINK@@PEAH@Z ENDP ; NcGetDeltaToLabel _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z _TEXT SEGMENT Block$ = 224 BlockCopy$ = 232 ?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z PROC ; NcDeepCopyBlock, COMDAT ; 358 : { $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:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 359 : return NcDeepCopyPartialBlock(Block->Start, Block->End, BlockCopy); 00024 4c 8b 85 e8 00 00 00 mov r8, QWORD PTR BlockCopy$[rbp] 0002b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 00032 48 8b 50 08 mov rdx, QWORD PTR [rax+8] 00036 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0003d 48 8b 08 mov rcx, QWORD PTR [rax] 00040 e8 00 00 00 00 call ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z ; NcDeepCopyPartialBlock ; 360 : } 00045 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004c 5f pop rdi 0004d 5d pop rbp 0004e c3 ret 0 ?NcDeepCopyBlock@@YAHPEAU_NATIVE_CODE_BLOCK@@0@Z ENDP ; NcDeepCopyBlock _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT $L0$4 = 8 $L0$5 = 40 $L0$6 = 72 L$7 = 100 CurLink$8 = 136 Temp$9 = 168 tv88 = 376 __$ArrayPad$ = 384 Start$ = 432 End$ = 440 Block$ = 448 ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcDeepCopyPartialBlock, COMDAT ; 333 : { $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 b8 01 00 00 sub rsp, 440 ; 000001b8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00022 b9 36 00 00 00 mov ecx, 54 ; 00000036H 00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002c f3 ab rep stosd 0002e 48 8b 8c 24 d8 01 00 00 mov rcx, QWORD PTR [rsp+472] 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 80 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00047 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 334 : if (!Start || !End || !Start->Block || Start->Block != End->Block || !Block) 00053 48 83 bd b0 01 00 00 00 cmp QWORD PTR Start$[rbp], 0 0005b 74 3a je SHORT $LN9@NcDeepCopy 0005d 48 83 bd b8 01 00 00 00 cmp QWORD PTR End$[rbp], 0 00065 74 30 je SHORT $LN9@NcDeepCopy 00067 48 8b 85 b0 01 00 00 mov rax, QWORD PTR Start$[rbp] 0006e 48 83 78 10 00 cmp QWORD PTR [rax+16], 0 00073 74 22 je SHORT $LN9@NcDeepCopy 00075 48 8b 85 b0 01 00 00 mov rax, QWORD PTR Start$[rbp] 0007c 48 8b 8d b8 01 00 00 mov rcx, QWORD PTR End$[rbp] 00083 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 00087 48 39 48 10 cmp QWORD PTR [rax+16], rcx 0008b 75 0a jne SHORT $LN9@NcDeepCopy 0008d 48 83 bd c0 01 00 00 00 cmp QWORD PTR Block$[rbp], 0 00095 75 07 jne SHORT $LN8@NcDeepCopy $LN9@NcDeepCopy: ; 335 : return FALSE; 00097 33 c0 xor eax, eax 00099 e9 27 01 00 00 jmp $LN1@NcDeepCopy $LN8@NcDeepCopy: ; 336 : ; 337 : Block->LabelIds.clear(); 0009e 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Block$[rbp] 000a5 48 83 c0 10 add rax, 16 000a9 48 8b c8 mov rcx, rax 000ac e8 00 00 00 00 call ?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ ; std::vector >::clear ; 338 : Block->Start = Block->End = NULL; 000b1 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Block$[rbp] 000b8 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 000c0 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Block$[rbp] 000c7 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 339 : ; 340 : for (ULONG L : Start->Block->LabelIds) 000ce 48 8b 85 b0 01 00 00 mov rax, QWORD PTR Start$[rbp] 000d5 48 8b 40 10 mov rax, QWORD PTR [rax+16] 000d9 48 83 c0 10 add rax, 16 000dd 48 89 45 08 mov QWORD PTR $L0$4[rbp], rax 000e1 48 8b 4d 08 mov rcx, QWORD PTR $L0$4[rbp] 000e5 e8 00 00 00 00 call ?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ ; std::vector >::_Unchecked_begin 000ea 48 89 45 28 mov QWORD PTR $L0$5[rbp], rax 000ee 48 8b 4d 08 mov rcx, QWORD PTR $L0$4[rbp] 000f2 e8 00 00 00 00 call ?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ ; std::vector >::_Unchecked_end 000f7 48 89 45 48 mov QWORD PTR $L0$6[rbp], rax 000fb eb 0c jmp SHORT $LN4@NcDeepCopy $LN2@NcDeepCopy: 000fd 48 8b 45 28 mov rax, QWORD PTR $L0$5[rbp] 00101 48 83 c0 04 add rax, 4 00105 48 89 45 28 mov QWORD PTR $L0$5[rbp], rax $LN4@NcDeepCopy: 00109 48 8b 45 48 mov rax, QWORD PTR $L0$6[rbp] 0010d 48 39 45 28 cmp QWORD PTR $L0$5[rbp], rax 00111 74 2d je SHORT $LN3@NcDeepCopy 00113 48 8b 45 28 mov rax, QWORD PTR $L0$5[rbp] 00117 8b 00 mov eax, DWORD PTR [rax] 00119 89 45 64 mov DWORD PTR L$7[rbp], eax ; 341 : Block->LabelIds.push_back(L); 0011c 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Block$[rbp] 00123 48 83 c0 10 add rax, 16 00127 48 89 85 78 01 00 00 mov QWORD PTR tv88[rbp], rax 0012e 48 8d 55 64 lea rdx, QWORD PTR L$7[rbp] 00132 48 8b 8d 78 01 00 00 mov rcx, QWORD PTR tv88[rbp] 00139 e8 00 00 00 00 call ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z ; std::vector >::push_back 0013e eb bd jmp SHORT $LN2@NcDeepCopy $LN3@NcDeepCopy: ; 342 : ; 343 : for (PNATIVE_CODE_LINK CurLink = Start; CurLink && CurLink != End->Next; CurLink = CurLink->Next) 00140 48 8b 85 b0 01 00 00 mov rax, QWORD PTR Start$[rbp] 00147 48 89 85 88 00 00 00 mov QWORD PTR CurLink$8[rbp], rax 0014e eb 11 jmp SHORT $LN7@NcDeepCopy $LN5@NcDeepCopy: 00150 48 8b 85 88 00 00 00 mov rax, QWORD PTR CurLink$8[rbp] 00157 48 8b 00 mov rax, QWORD PTR [rax] 0015a 48 89 85 88 00 00 00 mov QWORD PTR CurLink$8[rbp], rax $LN7@NcDeepCopy: 00161 48 83 bd 88 00 00 00 00 cmp QWORD PTR CurLink$8[rbp], 0 00169 74 55 je SHORT $LN6@NcDeepCopy 0016b 48 8b 85 b8 01 00 00 mov rax, QWORD PTR End$[rbp] 00172 48 8b 00 mov rax, QWORD PTR [rax] 00175 48 39 85 88 00 00 00 cmp QWORD PTR CurLink$8[rbp], rax 0017c 74 42 je SHORT $LN6@NcDeepCopy ; 344 : { ; 345 : PNATIVE_CODE_LINK Temp = NcDeepCopyLink(CurLink); 0017e 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR CurLink$8[rbp] 00185 e8 00 00 00 00 call ?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z ; NcDeepCopyLink 0018a 48 89 85 a8 00 00 00 mov QWORD PTR Temp$9[rbp], rax ; 346 : if (!Temp) 00191 48 83 bd a8 00 00 00 00 cmp QWORD PTR Temp$9[rbp], 0 00199 75 10 jne SHORT $LN10@NcDeepCopy ; 347 : { ; 348 : NcDeleteBlock(Block); 0019b 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR Block$[rbp] 001a2 e8 00 00 00 00 call ?NcDeleteBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@@Z ; NcDeleteBlock ; 349 : return FALSE; 001a7 33 c0 xor eax, eax 001a9 eb 1a jmp SHORT $LN1@NcDeepCopy $LN10@NcDeepCopy: ; 350 : } ; 351 : NcAppendToBlock(Block, Temp); 001ab 48 8b 95 a8 00 00 00 mov rdx, QWORD PTR Temp$9[rbp] 001b2 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR Block$[rbp] 001b9 e8 00 00 00 00 call ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcAppendToBlock ; 352 : } 001be eb 90 jmp SHORT $LN5@NcDeepCopy $LN6@NcDeepCopy: ; 353 : ; 354 : return TRUE; 001c0 b8 01 00 00 00 mov eax, 1 $LN1@NcDeepCopy: ; 355 : } 001c5 48 8b f8 mov rdi, rax 001c8 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 001cc 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData 001d3 e8 00 00 00 00 call _RTC_CheckStackVars 001d8 48 8b c7 mov rax, rdi 001db 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 001e2 48 33 cd xor rcx, rbp 001e5 e8 00 00 00 00 call __security_check_cookie 001ea 48 8d a5 98 01 00 00 lea rsp, QWORD PTR [rbp+408] 001f1 5f pop rdi 001f2 5d pop rbp 001f3 c3 ret 0 ?NcDeepCopyPartialBlock@@YAHPEAU_NATIVE_CODE_LINK@@0PEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcDeepCopyPartialBlock _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z _TEXT SEGMENT NewLink$1 = 8 DecodeError$2 = 36 $T3 = 264 $T4 = 296 $T5 = 328 $T6 = 360 $T7 = 392 tv151 = 404 tv155 = 408 tv149 = 408 tv131 = 408 tv81 = 408 Link$ = 448 ?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z PROC ; NcDeepCopyLink, COMDAT ; 312 : { $LN14: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec d8 01 00 00 sub rsp, 472 ; 000001d8H 0000e 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 313 : if (Link->Flags & CODE_FLAG_IS_LABEL) 0001f 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Link$[rbp] 00026 8b 40 18 mov eax, DWORD PTR [rax+24] 00029 83 e0 01 and eax, 1 0002c 85 c0 test eax, eax 0002e 74 67 je SHORT $LN2@NcDeepCopy ; 314 : { ; 315 : return new NATIVE_CODE_LINK(Link->Label, NULL); 00030 b9 f0 00 00 00 mov ecx, 240 ; 000000f0H 00035 e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 0003a 48 89 85 28 01 00 00 mov QWORD PTR $T4[rbp], rax 00041 48 83 bd 28 01 00 00 00 cmp QWORD PTR $T4[rbp], 0 00049 74 22 je SHORT $LN6@NcDeepCopy 0004b 45 33 c0 xor r8d, r8d 0004e 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Link$[rbp] 00055 8b 50 1c mov edx, DWORD PTR [rax+28] 00058 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR $T4[rbp] 0005f e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK 00064 48 89 85 98 01 00 00 mov QWORD PTR tv81[rbp], rax 0006b eb 0b jmp SHORT $LN7@NcDeepCopy $LN6@NcDeepCopy: 0006d 48 c7 85 98 01 00 00 00 00 00 00 mov QWORD PTR tv81[rbp], 0 $LN7@NcDeepCopy: 00078 48 8b 85 98 01 00 00 mov rax, QWORD PTR tv81[rbp] 0007f 48 89 85 08 01 00 00 mov QWORD PTR $T3[rbp], rax 00086 48 8b 85 08 01 00 00 mov rax, QWORD PTR $T3[rbp] 0008d e9 3c 01 00 00 jmp $LN1@NcDeepCopy ; 316 : } 00092 e9 37 01 00 00 jmp $LN1@NcDeepCopy $LN2@NcDeepCopy: ; 317 : else ; 318 : { ; 319 : PNATIVE_CODE_LINK NewLink = new NATIVE_CODE_LINK(Link->Flags, Link->RawData, Link->RawDataSize); 00097 b9 f0 00 00 00 mov ecx, 240 ; 000000f0H 0009c e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 000a1 48 89 85 68 01 00 00 mov QWORD PTR $T6[rbp], rax 000a8 48 83 bd 68 01 00 00 00 cmp QWORD PTR $T6[rbp], 0 000b0 74 3d je SHORT $LN8@NcDeepCopy 000b2 c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 000ba 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Link$[rbp] 000c1 44 8b 48 28 mov r9d, DWORD PTR [rax+40] 000c5 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Link$[rbp] 000cc 4c 8b 40 20 mov r8, QWORD PTR [rax+32] 000d0 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Link$[rbp] 000d7 8b 50 18 mov edx, DWORD PTR [rax+24] 000da 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR $T6[rbp] 000e1 e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK 000e6 48 89 85 98 01 00 00 mov QWORD PTR tv131[rbp], rax 000ed eb 0b jmp SHORT $LN9@NcDeepCopy $LN8@NcDeepCopy: 000ef 48 c7 85 98 01 00 00 00 00 00 00 mov QWORD PTR tv131[rbp], 0 $LN9@NcDeepCopy: 000fa 48 8b 85 98 01 00 00 mov rax, QWORD PTR tv131[rbp] 00101 48 89 85 48 01 00 00 mov QWORD PTR $T5[rbp], rax 00108 48 8b 85 48 01 00 00 mov rax, QWORD PTR $T5[rbp] 0010f 48 89 45 08 mov QWORD PTR NewLink$1[rbp], rax ; 320 : NewLink->Label = Link->Label; 00113 48 8b 45 08 mov rax, QWORD PTR NewLink$1[rbp] 00117 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR Link$[rbp] 0011e 8b 49 1c mov ecx, DWORD PTR [rcx+28] 00121 89 48 1c mov DWORD PTR [rax+28], ecx ; 321 : XED_ERROR_ENUM DecodeError = XedDecode(&NewLink->XedInstruction, Link->RawData, Link->RawDataSize); 00124 48 8b 45 08 mov rax, QWORD PTR NewLink$1[rbp] 00128 48 83 c0 30 add rax, 48 ; 00000030H 0012c 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR Link$[rbp] 00133 44 8b 41 28 mov r8d, DWORD PTR [rcx+40] 00137 48 8b 8d c0 01 00 00 mov rcx, QWORD PTR Link$[rbp] 0013e 48 8b 51 20 mov rdx, QWORD PTR [rcx+32] 00142 48 8b c8 mov rcx, rax 00145 e8 00 00 00 00 call xed_decode 0014a 89 45 24 mov DWORD PTR DecodeError$2[rbp], eax ; 322 : if (DecodeError != XED_ERROR_NONE) 0014d 83 7d 24 00 cmp DWORD PTR DecodeError$2[rbp], 0 00151 74 77 je SHORT $LN4@NcDeepCopy ; 323 : { ; 324 : printf("XedDecode failed in NcDeepCopyLink: %s %u\n", XedErrorEnumToString(DecodeError), Link->RawDataSize); 00153 48 8b 85 c0 01 00 00 mov rax, QWORD PTR Link$[rbp] 0015a 8b 40 28 mov eax, DWORD PTR [rax+40] 0015d 89 85 94 01 00 00 mov DWORD PTR tv151[rbp], eax 00163 8b 4d 24 mov ecx, DWORD PTR DecodeError$2[rbp] 00166 e8 00 00 00 00 call xed_error_enum_t2str 0016b 48 89 85 98 01 00 00 mov QWORD PTR tv149[rbp], rax 00172 44 8b 85 94 01 00 00 mov r8d, DWORD PTR tv151[rbp] 00179 48 8b 95 98 01 00 00 mov rdx, QWORD PTR tv149[rbp] 00180 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0CL@COPJALEP@XedDecode?5failed?5in?5NcDeepCopyL@ 00187 e8 00 00 00 00 call printf ; 325 : delete NewLink; 0018c 48 8b 45 08 mov rax, QWORD PTR NewLink$1[rbp] 00190 48 89 85 88 01 00 00 mov QWORD PTR $T7[rbp], rax 00197 48 83 bd 88 01 00 00 00 cmp QWORD PTR $T7[rbp], 0 0019f 74 1a je SHORT $LN10@NcDeepCopy 001a1 ba 01 00 00 00 mov edx, 1 001a6 48 8b 8d 88 01 00 00 mov rcx, QWORD PTR $T7[rbp] 001ad e8 00 00 00 00 call ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z 001b2 48 89 85 98 01 00 00 mov QWORD PTR tv155[rbp], rax 001b9 eb 0b jmp SHORT $LN11@NcDeepCopy $LN10@NcDeepCopy: 001bb 48 c7 85 98 01 00 00 00 00 00 00 mov QWORD PTR tv155[rbp], 0 $LN11@NcDeepCopy: ; 326 : return NULL; 001c6 33 c0 xor eax, eax 001c8 eb 04 jmp SHORT $LN1@NcDeepCopy $LN4@NcDeepCopy: ; 327 : } ; 328 : return NewLink; 001ca 48 8b 45 08 mov rax, QWORD PTR NewLink$1[rbp] $LN1@NcDeepCopy: ; 329 : } ; 330 : } 001ce 48 8d a5 a8 01 00 00 lea rsp, QWORD PTR [rbp+424] 001d5 5f pop rdi 001d6 5d pop rbp 001d7 c3 ret 0 ?NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z ENDP ; NcDeepCopyLink _TEXT ENDS ; COMDAT text$x text$x SEGMENT NewLink$1 = 8 DecodeError$2 = 36 $T3 = 264 $T4 = 296 $T5 = 328 $T6 = 360 $T7 = 392 tv151 = 404 tv155 = 408 tv149 = 408 tv131 = 408 tv81 = 408 Link$ = 448 ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA PROC ; `NcDeepCopyLink'::`1'::dtor$0 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 30 lea rbp, QWORD PTR [rdx+48] 00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR $T4[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA ENDP ; `NcDeepCopyLink'::`1'::dtor$0 text$x ENDS ; COMDAT text$x text$x SEGMENT NewLink$1 = 8 DecodeError$2 = 36 $T3 = 264 $T4 = 296 $T5 = 328 $T6 = 360 $T7 = 392 tv151 = 404 tv155 = 408 tv149 = 408 tv131 = 408 tv81 = 408 Link$ = 448 ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA PROC ; `NcDeepCopyLink'::`1'::dtor$1 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 30 lea rbp, QWORD PTR [rdx+48] 00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR $T6[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA ENDP ; `NcDeepCopyLink'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT NewLink$1 = 8 DecodeError$2 = 36 $T3 = 264 $T4 = 296 $T5 = 328 $T6 = 360 $T7 = 392 tv151 = 404 tv155 = 408 tv149 = 408 tv131 = 408 tv81 = 408 Link$ = 448 ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA PROC ; `NcDeepCopyLink'::`1'::dtor$0 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 30 lea rbp, QWORD PTR [rdx+48] 00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 28 01 00 00 mov rcx, QWORD PTR $T4[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$0@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA ENDP ; `NcDeepCopyLink'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT NewLink$1 = 8 DecodeError$2 = 36 $T3 = 264 $T4 = 296 $T5 = 328 $T6 = 360 $T7 = 392 tv151 = 404 tv155 = 408 tv149 = 408 tv131 = 408 tv81 = 408 Link$ = 448 ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA PROC ; `NcDeepCopyLink'::`1'::dtor$1 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 30 lea rbp, QWORD PTR [rdx+48] 00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR $T6[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$1@?0??NcDeepCopyLink@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@@Z@4HA ENDP ; `NcDeepCopyLink'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z _TEXT SEGMENT T$ = 8 Jmp$ = 256 Delta$ = 264 ?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z PROC ; NcValidateJmp, COMDAT ; 272 : { $LN23: 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:__337731E1_NativeCode@cpp 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 273 : PNATIVE_CODE_LINK T; ; 274 : if (Delta > 0) 00023 83 bd 08 01 00 00 00 cmp DWORD PTR Delta$[rbp], 0 0002a 0f 8e a2 00 00 00 jle $LN10@NcValidate ; 275 : { ; 276 : T = Jmp->Next; 00030 48 8b 85 00 01 00 00 mov rax, QWORD PTR Jmp$[rbp] 00037 48 8b 00 mov rax, QWORD PTR [rax] 0003a 48 89 45 08 mov QWORD PTR T$[rbp], rax $LN21@NcValidate: $LN2@NcValidate: ; 277 : while (Delta > 0 && T) 0003e 83 bd 08 01 00 00 00 cmp DWORD PTR Delta$[rbp], 0 00045 7e 44 jle SHORT $LN3@NcValidate 00047 48 83 7d 08 00 cmp QWORD PTR T$[rbp], 0 0004c 74 3d je SHORT $LN3@NcValidate ; 278 : { ; 279 : if (T->Flags & CODE_FLAG_IS_LABEL) 0004e 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00052 8b 40 18 mov eax, DWORD PTR [rax+24] 00055 83 e0 01 and eax, 1 00058 85 c0 test eax, eax 0005a 74 02 je SHORT $LN12@NcValidate ; 280 : continue; 0005c eb e0 jmp SHORT $LN2@NcValidate $LN12@NcValidate: ; 281 : Delta -= XedDecodedInstGetLength(&T->XedInstruction); 0005e 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00062 48 83 c0 30 add rax, 48 ; 00000030H 00066 48 8b c8 mov rcx, rax 00069 e8 00 00 00 00 call xed_decoded_inst_get_length 0006e 8b 8d 08 01 00 00 mov ecx, DWORD PTR Delta$[rbp] 00074 2b c8 sub ecx, eax 00076 8b c1 mov eax, ecx 00078 89 85 08 01 00 00 mov DWORD PTR Delta$[rbp], eax ; 282 : T = T->Next; 0007e 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00082 48 8b 00 mov rax, QWORD PTR [rax] 00085 48 89 45 08 mov QWORD PTR T$[rbp], rax ; 283 : } 00089 eb b3 jmp SHORT $LN21@NcValidate $LN3@NcValidate: ; 284 : if (Delta != 0 || !T) 0008b 83 bd 08 01 00 00 00 cmp DWORD PTR Delta$[rbp], 0 00092 75 07 jne SHORT $LN14@NcValidate 00094 48 83 7d 08 00 cmp QWORD PTR T$[rbp], 0 00099 75 07 jne SHORT $LN13@NcValidate $LN14@NcValidate: ; 285 : return NULL; 0009b 33 c0 xor eax, eax 0009d e9 db 00 00 00 jmp $LN1@NcValidate $LN13@NcValidate: $LN4@NcValidate: ; 286 : while (T && (T->Flags & CODE_FLAG_IS_LABEL)) 000a2 48 83 7d 08 00 cmp QWORD PTR T$[rbp], 0 000a7 74 1b je SHORT $LN5@NcValidate 000a9 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 000ad 8b 40 18 mov eax, DWORD PTR [rax+24] 000b0 83 e0 01 and eax, 1 000b3 85 c0 test eax, eax 000b5 74 0d je SHORT $LN5@NcValidate ; 287 : T = T->Next; 000b7 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 000bb 48 8b 00 mov rax, QWORD PTR [rax] 000be 48 89 45 08 mov QWORD PTR T$[rbp], rax 000c2 eb de jmp SHORT $LN4@NcValidate $LN5@NcValidate: ; 288 : return T; 000c4 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 000c8 e9 b0 00 00 00 jmp $LN1@NcValidate ; 289 : } 000cd e9 a4 00 00 00 jmp $LN11@NcValidate $LN10@NcValidate: ; 290 : else if (Delta < 0) 000d2 83 bd 08 01 00 00 00 cmp DWORD PTR Delta$[rbp], 0 000d9 0f 8d 97 00 00 00 jge $LN15@NcValidate ; 291 : { ; 292 : T = Jmp; 000df 48 8b 85 00 01 00 00 mov rax, QWORD PTR Jmp$[rbp] 000e6 48 89 45 08 mov QWORD PTR T$[rbp], rax $LN22@NcValidate: $LN6@NcValidate: ; 293 : while (T) 000ea 48 83 7d 08 00 cmp QWORD PTR T$[rbp], 0 000ef 74 49 je SHORT $LN7@NcValidate ; 294 : { ; 295 : if (T->Flags & CODE_FLAG_IS_LABEL) 000f1 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 000f5 8b 40 18 mov eax, DWORD PTR [rax+24] 000f8 83 e0 01 and eax, 1 000fb 85 c0 test eax, eax 000fd 74 02 je SHORT $LN16@NcValidate ; 296 : continue; 000ff eb e9 jmp SHORT $LN6@NcValidate $LN16@NcValidate: ; 297 : Delta += XedDecodedInstGetLength(&T->XedInstruction); 00101 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00105 48 83 c0 30 add rax, 48 ; 00000030H 00109 48 8b c8 mov rcx, rax 0010c e8 00 00 00 00 call xed_decoded_inst_get_length 00111 8b 8d 08 01 00 00 mov ecx, DWORD PTR Delta$[rbp] 00117 03 c8 add ecx, eax 00119 8b c1 mov eax, ecx 0011b 89 85 08 01 00 00 mov DWORD PTR Delta$[rbp], eax ; 298 : if (Delta >= 0) 00121 83 bd 08 01 00 00 00 cmp DWORD PTR Delta$[rbp], 0 00128 7c 02 jl SHORT $LN17@NcValidate ; 299 : break; 0012a eb 0e jmp SHORT $LN7@NcValidate $LN17@NcValidate: ; 300 : T = T->Prev; 0012c 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00130 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00134 48 89 45 08 mov QWORD PTR T$[rbp], rax ; 301 : } 00138 eb b0 jmp SHORT $LN22@NcValidate $LN7@NcValidate: ; 302 : if (Delta != 0 || !T) 0013a 83 bd 08 01 00 00 00 cmp DWORD PTR Delta$[rbp], 0 00141 75 07 jne SHORT $LN19@NcValidate 00143 48 83 7d 08 00 cmp QWORD PTR T$[rbp], 0 00148 75 04 jne SHORT $LN18@NcValidate $LN19@NcValidate: ; 303 : return NULL; 0014a 33 c0 xor eax, eax 0014c eb 2f jmp SHORT $LN1@NcValidate $LN18@NcValidate: $LN8@NcValidate: ; 304 : while (T && (T->Flags & CODE_FLAG_IS_LABEL)) 0014e 48 83 7d 08 00 cmp QWORD PTR T$[rbp], 0 00153 74 1b je SHORT $LN9@NcValidate 00155 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00159 8b 40 18 mov eax, DWORD PTR [rax+24] 0015c 83 e0 01 and eax, 1 0015f 85 c0 test eax, eax 00161 74 0d je SHORT $LN9@NcValidate ; 305 : T = T->Next; 00163 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00167 48 8b 00 mov rax, QWORD PTR [rax] 0016a 48 89 45 08 mov QWORD PTR T$[rbp], rax 0016e eb de jmp SHORT $LN8@NcValidate $LN9@NcValidate: ; 306 : return T; 00170 48 8b 45 08 mov rax, QWORD PTR T$[rbp] 00174 eb 07 jmp SHORT $LN1@NcValidate $LN15@NcValidate: $LN11@NcValidate: ; 307 : } ; 308 : return Jmp; 00176 48 8b 85 00 01 00 00 mov rax, QWORD PTR Jmp$[rbp] $LN1@NcValidate: ; 309 : } 0017d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00184 5f pop rdi 00185 5d pop rbp 00186 c3 ret 0 ?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z ENDP ; NcValidateJmp _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT CurrentLabelId$ = 4 T$4 = 40 Category$5 = 68 OperandCount$6 = 100 Inst$7 = 136 Operand$8 = 168 OperandType$9 = 196 BranchDisplacement$10 = 228 JmpPos$11 = 264 $T12 = 488 $T13 = 520 tv163 = 536 tv157 = 536 __$ArrayPad$ = 544 Block$ = 592 ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcCreateLabels, COMDAT ; 220 : { $LN18: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 58 02 00 00 sub rsp, 600 ; 00000258H 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 5e 00 00 00 mov ecx, 94 ; 0000005eH 0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00022 f3 ab rep stosd 00024 48 8b 8c 24 78 02 00 00 mov rcx, QWORD PTR [rsp+632] 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 20 02 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 221 : ULONG CurrentLabelId = 0; 00049 c7 45 04 00 00 00 00 mov DWORD PTR CurrentLabelId$[rbp], 0 ; 222 : for (PNATIVE_CODE_LINK T = Block->Start; T; T = T->Next) 00050 48 8b 85 50 02 00 00 mov rax, QWORD PTR Block$[rbp] 00057 48 8b 00 mov rax, QWORD PTR [rax] 0005a 48 89 45 28 mov QWORD PTR T$4[rbp], rax 0005e eb 0b jmp SHORT $LN4@NcCreateLa $LN2@NcCreateLa: 00060 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 00064 48 8b 00 mov rax, QWORD PTR [rax] 00067 48 89 45 28 mov QWORD PTR T$4[rbp], rax $LN4@NcCreateLa: 0006b 48 83 7d 28 00 cmp QWORD PTR T$4[rbp], 0 00070 0f 84 07 02 00 00 je $LN3@NcCreateLa ; 223 : { ; 224 : if (!(T->Flags & CODE_FLAG_IS_INST)) 00076 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 0007a 8b 40 18 mov eax, DWORD PTR [rax+24] 0007d 83 e0 04 and eax, 4 00080 85 c0 test eax, eax 00082 75 02 jne SHORT $LN5@NcCreateLa ; 225 : continue; 00084 eb da jmp SHORT $LN2@NcCreateLa $LN5@NcCreateLa: ; 226 : ; 227 : XED_CATEGORY_ENUM Category = XedDecodedInstGetCategory(&T->XedInstruction); 00086 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 0008a 48 83 c0 30 add rax, 48 ; 00000030H 0008e 48 8b c8 mov rcx, rax 00091 e8 00 00 00 00 call xed_decoded_inst_get_category 00096 89 45 44 mov DWORD PTR Category$5[rbp], eax ; 228 : if (Category != XED_CATEGORY_COND_BR && Category != XED_CATEGORY_UNCOND_BR) 00099 83 7d 44 1c cmp DWORD PTR Category$5[rbp], 28 0009d 74 08 je SHORT $LN6@NcCreateLa 0009f 83 7d 44 5b cmp DWORD PTR Category$5[rbp], 91 ; 0000005bH 000a3 74 02 je SHORT $LN6@NcCreateLa ; 229 : continue; 000a5 eb b9 jmp SHORT $LN2@NcCreateLa $LN6@NcCreateLa: ; 230 : ; 231 : ULONG OperandCount = XedDecodedInstNumOperands(&T->XedInstruction); 000a7 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 000ab 48 83 c0 30 add rax, 48 ; 00000030H 000af 48 8b c8 mov rcx, rax 000b2 e8 00 00 00 00 call xed_decoded_inst_noperands 000b7 89 45 64 mov DWORD PTR OperandCount$6[rbp], eax ; 232 : if (OperandCount < 1) 000ba 83 7d 64 01 cmp DWORD PTR OperandCount$6[rbp], 1 000be 73 02 jae SHORT $LN7@NcCreateLa ; 233 : continue; 000c0 eb 9e jmp SHORT $LN2@NcCreateLa $LN7@NcCreateLa: ; 234 : ; 235 : CONST XED_INST* Inst = XedDecodedInstInst(&T->XedInstruction); 000c2 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 000c6 48 83 c0 30 add rax, 48 ; 00000030H 000ca 48 8b c8 mov rcx, rax 000cd e8 00 00 00 00 call xed_decoded_inst_inst 000d2 48 89 85 88 00 00 00 mov QWORD PTR Inst$7[rbp], rax ; 236 : if (!Inst) 000d9 48 83 bd 88 00 00 00 00 cmp QWORD PTR Inst$7[rbp], 0 000e1 75 05 jne SHORT $LN8@NcCreateLa ; 237 : continue; 000e3 e9 78 ff ff ff jmp $LN2@NcCreateLa $LN8@NcCreateLa: ; 238 : ; 239 : CONST XED_OPERAND* Operand = XedInstOperand(Inst, 0); 000e8 33 d2 xor edx, edx 000ea 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR Inst$7[rbp] 000f1 e8 00 00 00 00 call xed_inst_operand 000f6 48 89 85 a8 00 00 00 mov QWORD PTR Operand$8[rbp], rax ; 240 : if (!Operand) 000fd 48 83 bd a8 00 00 00 00 cmp QWORD PTR Operand$8[rbp], 0 00105 75 05 jne SHORT $LN9@NcCreateLa ; 241 : continue; 00107 e9 54 ff ff ff jmp $LN2@NcCreateLa $LN9@NcCreateLa: ; 242 : ; 243 : XED_OPERAND_TYPE_ENUM OperandType = XedOperandType(Operand); 0010c 48 8b 8d a8 00 00 00 mov rcx, QWORD PTR Operand$8[rbp] 00113 e8 00 00 00 00 call xed_operand_type 00118 89 85 c4 00 00 00 mov DWORD PTR OperandType$9[rbp], eax ; 244 : if (OperandType != XED_OPERAND_TYPE_IMM && OperandType != XED_OPERAND_TYPE_IMM_CONST) 0011e 83 bd c4 00 00 00 02 cmp DWORD PTR OperandType$9[rbp], 2 00125 74 0e je SHORT $LN10@NcCreateLa 00127 83 bd c4 00 00 00 03 cmp DWORD PTR OperandType$9[rbp], 3 0012e 74 05 je SHORT $LN10@NcCreateLa ; 245 : continue; 00130 e9 2b ff ff ff jmp $LN2@NcCreateLa $LN10@NcCreateLa: ; 246 : ; 247 : INT32 BranchDisplacement = XedDecodedInstGetBranchDisplacement(&T->XedInstruction); 00135 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 00139 48 83 c0 30 add rax, 48 ; 00000030H 0013d 48 8b c8 mov rcx, rax 00140 e8 00 00 00 00 call xed_decoded_inst_get_branch_displacement 00145 89 85 e4 00 00 00 mov DWORD PTR BranchDisplacement$10[rbp], eax ; 248 : PNATIVE_CODE_LINK JmpPos = NcValidateJmp(T, BranchDisplacement); 0014b 8b 95 e4 00 00 00 mov edx, DWORD PTR BranchDisplacement$10[rbp] 00151 48 8b 4d 28 mov rcx, QWORD PTR T$4[rbp] 00155 e8 00 00 00 00 call ?NcValidateJmp@@YAPEAU_NATIVE_CODE_LINK@@PEAU1@H@Z ; NcValidateJmp 0015a 48 89 85 08 01 00 00 mov QWORD PTR JmpPos$11[rbp], rax ; 249 : if (!JmpPos) 00161 48 83 bd 08 01 00 00 00 cmp QWORD PTR JmpPos$11[rbp], 0 00169 75 25 jne SHORT $LN11@NcCreateLa ; 250 : { ; 251 : printf("Failed to validate jump. Type: %s, Displacement: %d\n", XedCategoryEnumToString(Category), BranchDisplacement); 0016b 8b 4d 44 mov ecx, DWORD PTR Category$5[rbp] 0016e e8 00 00 00 00 call xed_category_enum_t2str 00173 44 8b 85 e4 00 00 00 mov r8d, DWORD PTR BranchDisplacement$10[rbp] 0017a 48 8b d0 mov rdx, rax 0017d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0DF@KKBEBOEB@Failed?5to?5validate?5jump?4?5Type?3?5@ 00184 e8 00 00 00 00 call printf ; 252 : return FALSE; 00189 33 c0 xor eax, eax 0018b e9 f2 00 00 00 jmp $LN1@NcCreateLa $LN11@NcCreateLa: ; 253 : } ; 254 : ; 255 : if (JmpPos->Prev && (JmpPos->Prev->Flags & CODE_FLAG_IS_LABEL)) 00190 48 8b 85 08 01 00 00 mov rax, QWORD PTR JmpPos$11[rbp] 00197 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 0019c 74 2f je SHORT $LN12@NcCreateLa 0019e 48 8b 85 08 01 00 00 mov rax, QWORD PTR JmpPos$11[rbp] 001a5 48 8b 40 08 mov rax, QWORD PTR [rax+8] 001a9 8b 40 18 mov eax, DWORD PTR [rax+24] 001ac 83 e0 01 and eax, 1 001af 85 c0 test eax, eax 001b1 74 1a je SHORT $LN12@NcCreateLa ; 256 : { ; 257 : T->Label = JmpPos->Prev->Label; 001b3 48 8b 85 08 01 00 00 mov rax, QWORD PTR JmpPos$11[rbp] 001ba 48 8b 40 08 mov rax, QWORD PTR [rax+8] 001be 48 8b 4d 28 mov rcx, QWORD PTR T$4[rbp] 001c2 8b 40 1c mov eax, DWORD PTR [rax+28] 001c5 89 41 1c mov DWORD PTR [rcx+28], eax ; 258 : } 001c8 e9 9a 00 00 00 jmp $LN13@NcCreateLa $LN12@NcCreateLa: ; 259 : else ; 260 : { ; 261 : NcInsertLinkBefore(JmpPos, new NATIVE_CODE_LINK(CurrentLabelId, Block)); 001cd b9 f0 00 00 00 mov ecx, 240 ; 000000f0H 001d2 e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 001d7 48 89 85 08 02 00 00 mov QWORD PTR $T13[rbp], rax 001de 48 83 bd 08 02 00 00 00 cmp QWORD PTR $T13[rbp], 0 001e6 74 1f je SHORT $LN15@NcCreateLa 001e8 4c 8b 85 50 02 00 00 mov r8, QWORD PTR Block$[rbp] 001ef 8b 55 04 mov edx, DWORD PTR CurrentLabelId$[rbp] 001f2 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR $T13[rbp] 001f9 e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK 001fe 48 89 85 18 02 00 00 mov QWORD PTR tv157[rbp], rax 00205 eb 0b jmp SHORT $LN16@NcCreateLa $LN15@NcCreateLa: 00207 48 c7 85 18 02 00 00 00 00 00 00 mov QWORD PTR tv157[rbp], 0 $LN16@NcCreateLa: 00212 48 8b 85 18 02 00 00 mov rax, QWORD PTR tv157[rbp] 00219 48 89 85 e8 01 00 00 mov QWORD PTR $T12[rbp], rax 00220 48 8b 95 e8 01 00 00 mov rdx, QWORD PTR $T12[rbp] 00227 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR JmpPos$11[rbp] 0022e e8 00 00 00 00 call ?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z ; NcInsertLinkBefore ; 262 : Block->LabelIds.push_back(CurrentLabelId); 00233 48 8b 85 50 02 00 00 mov rax, QWORD PTR Block$[rbp] 0023a 48 83 c0 10 add rax, 16 0023e 48 89 85 18 02 00 00 mov QWORD PTR tv163[rbp], rax 00245 48 8d 55 04 lea rdx, QWORD PTR CurrentLabelId$[rbp] 00249 48 8b 8d 18 02 00 00 mov rcx, QWORD PTR tv163[rbp] 00250 e8 00 00 00 00 call ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z ; std::vector >::push_back ; 263 : T->Label = CurrentLabelId; 00255 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 00259 8b 4d 04 mov ecx, DWORD PTR CurrentLabelId$[rbp] 0025c 89 48 1c mov DWORD PTR [rax+28], ecx ; 264 : ++CurrentLabelId; 0025f 8b 45 04 mov eax, DWORD PTR CurrentLabelId$[rbp] 00262 ff c0 inc eax 00264 89 45 04 mov DWORD PTR CurrentLabelId$[rbp], eax $LN13@NcCreateLa: ; 265 : } ; 266 : T->Flags |= CODE_FLAG_IS_REL_JMP; 00267 48 8b 45 28 mov rax, QWORD PTR T$4[rbp] 0026b 8b 40 18 mov eax, DWORD PTR [rax+24] 0026e 83 c8 02 or eax, 2 00271 48 8b 4d 28 mov rcx, QWORD PTR T$4[rbp] 00275 89 41 18 mov DWORD PTR [rcx+24], eax ; 267 : } 00278 e9 e3 fd ff ff jmp $LN2@NcCreateLa $LN3@NcCreateLa: ; 268 : return TRUE; 0027d b8 01 00 00 00 mov eax, 1 $LN1@NcCreateLa: ; 269 : } 00282 48 8b f8 mov rdi, rax 00285 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 00289 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData 00290 e8 00 00 00 00 call _RTC_CheckStackVars 00295 48 8b c7 mov rax, rdi 00298 48 8b 8d 20 02 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 0029f 48 33 cd xor rcx, rbp 002a2 e8 00 00 00 00 call __security_check_cookie 002a7 48 8d a5 38 02 00 00 lea rsp, QWORD PTR [rbp+568] 002ae 5f pop rdi 002af 5d pop rbp 002b0 c3 ret 0 ?NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcCreateLabels _TEXT ENDS ; COMDAT text$x text$x SEGMENT CurrentLabelId$ = 4 T$4 = 40 Category$5 = 68 OperandCount$6 = 100 Inst$7 = 136 Operand$8 = 168 OperandType$9 = 196 BranchDisplacement$10 = 228 JmpPos$11 = 264 $T12 = 488 $T13 = 520 tv163 = 536 tv157 = 536 __$ArrayPad$ = 544 Block$ = 592 ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA PROC ; `NcCreateLabels'::`1'::dtor$0 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 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR $T13[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA ENDP ; `NcCreateLabels'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT CurrentLabelId$ = 4 T$4 = 40 Category$5 = 68 OperandCount$6 = 100 Inst$7 = 136 Operand$8 = 168 OperandType$9 = 196 BranchDisplacement$10 = 228 JmpPos$11 = 264 $T12 = 488 $T13 = 520 tv163 = 536 tv157 = 536 __$ArrayPad$ = 544 Block$ = 592 ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA PROC ; `NcCreateLabels'::`1'::dtor$0 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 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00019 48 8b 8d 08 02 00 00 mov rcx, QWORD PTR $T13[rbp] 00020 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 00025 48 83 c4 28 add rsp, 40 ; 00000028H 00029 5f pop rdi 0002a 5d pop rbp 0002b c3 ret 0 ?dtor$0@?0??NcCreateLabels@@YAHPEAU_NATIVE_CODE_BLOCK@@@Z@4HA ENDP ; `NcCreateLabels'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z _TEXT SEGMENT T$1 = 8 Link$ = 256 Block$ = 264 FixLabels$ = 272 ?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z PROC ; NcInsertBlockBefore, COMDAT ; 200 : { $LN10: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 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 08 01 00 00 sub rsp, 264 ; 00000108H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 201 : if (!Link || !Link->Block || !Block || !Block->Start || !Block->End) 00029 48 83 bd 00 01 00 00 00 cmp QWORD PTR Link$[rbp], 0 00031 74 33 je SHORT $LN6@NcInsertBl 00033 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 0003a 48 83 78 10 00 cmp QWORD PTR [rax+16], 0 0003f 74 25 je SHORT $LN6@NcInsertBl 00041 48 83 bd 08 01 00 00 00 cmp QWORD PTR Block$[rbp], 0 00049 74 1b je SHORT $LN6@NcInsertBl 0004b 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00052 48 83 38 00 cmp QWORD PTR [rax], 0 00056 74 0e je SHORT $LN6@NcInsertBl 00058 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 0005f 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 00064 75 07 jne SHORT $LN5@NcInsertBl $LN6@NcInsertBl: ; 202 : return FALSE; 00066 33 c0 xor eax, eax 00068 e9 0e 01 00 00 jmp $LN1@NcInsertBl $LN5@NcInsertBl: ; 203 : ; 204 : if (FixLabels && Block->LabelIds.size() && Link->Block->LabelIds.size()) 0006d 83 bd 10 01 00 00 00 cmp DWORD PTR FixLabels$[rbp], 0 00074 74 4b je SHORT $LN7@NcInsertBl 00076 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 0007d 48 83 c0 10 add rax, 16 00081 48 8b c8 mov rcx, rax 00084 e8 00 00 00 00 call ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::size 00089 48 85 c0 test rax, rax 0008c 74 33 je SHORT $LN7@NcInsertBl 0008e 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 00095 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00099 48 83 c0 10 add rax, 16 0009d 48 8b c8 mov rcx, rax 000a0 e8 00 00 00 00 call ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::size 000a5 48 85 c0 test rax, rax 000a8 74 17 je SHORT $LN7@NcInsertBl ; 205 : NcFixLabelsForBlocks(Link->Block, Block); 000aa 48 8b 95 08 01 00 00 mov rdx, QWORD PTR Block$[rbp] 000b1 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000b8 48 8b 48 10 mov rcx, QWORD PTR [rax+16] 000bc e8 00 00 00 00 call ?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z ; NcFixLabelsForBlocks $LN7@NcInsertBl: ; 206 : ; 207 : if (Link->Prev) 000c1 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000c8 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 000cd 74 18 je SHORT $LN8@NcInsertBl ; 208 : Link->Prev->Next = Block->Start; 000cf 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000d6 48 8b 40 08 mov rax, QWORD PTR [rax+8] 000da 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR Block$[rbp] 000e1 48 8b 09 mov rcx, QWORD PTR [rcx] 000e4 48 89 08 mov QWORD PTR [rax], rcx $LN8@NcInsertBl: ; 209 : Block->Start->Prev = Link->Prev; 000e7 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 000ee 48 8b 00 mov rax, QWORD PTR [rax] 000f1 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR Link$[rbp] 000f8 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 000fc 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 210 : Block->End->Next = Link; 00100 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00107 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0010b 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR Link$[rbp] 00112 48 89 08 mov QWORD PTR [rax], rcx ; 211 : Link->Prev = Block->End; 00115 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 0011c 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR Block$[rbp] 00123 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 00127 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 212 : ; 213 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 0012b 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00132 48 8b 00 mov rax, QWORD PTR [rax] 00135 48 89 45 08 mov QWORD PTR T$1[rbp], rax 00139 eb 0b jmp SHORT $LN4@NcInsertBl $LN2@NcInsertBl: 0013b 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 0013f 48 8b 00 mov rax, QWORD PTR [rax] 00142 48 89 45 08 mov QWORD PTR T$1[rbp], rax $LN4@NcInsertBl: 00146 48 83 7d 08 00 cmp QWORD PTR T$1[rbp], 0 0014b 74 29 je SHORT $LN3@NcInsertBl 0014d 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00154 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00158 48 8b 00 mov rax, QWORD PTR [rax] 0015b 48 39 45 08 cmp QWORD PTR T$1[rbp], rax 0015f 74 15 je SHORT $LN3@NcInsertBl ; 214 : T->Block = Link->Block; 00161 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00165 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR Link$[rbp] 0016c 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 00170 48 89 48 10 mov QWORD PTR [rax+16], rcx 00174 eb c5 jmp SHORT $LN2@NcInsertBl $LN3@NcInsertBl: ; 215 : ; 216 : return TRUE; 00176 b8 01 00 00 00 mov eax, 1 $LN1@NcInsertBl: ; 217 : } 0017b 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00182 5f pop rdi 00183 5d pop rbp 00184 c3 ret 0 ?NcInsertBlockBefore@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z ENDP ; NcInsertBlockBefore _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z _TEXT SEGMENT T$1 = 8 Link$ = 256 Block$ = 264 FixLabels$ = 272 ?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z PROC ; NcInsertBlockAfter, COMDAT ; 180 : { $LN10: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 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 08 01 00 00 sub rsp, 264 ; 00000108H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 181 : if (!Link || !Link->Block || !Block || !Block->Start || !Block->End || Link->Block == Block) 00029 48 83 bd 00 01 00 00 00 cmp QWORD PTR Link$[rbp], 0 00031 74 47 je SHORT $LN6@NcInsertBl 00033 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 0003a 48 83 78 10 00 cmp QWORD PTR [rax+16], 0 0003f 74 39 je SHORT $LN6@NcInsertBl 00041 48 83 bd 08 01 00 00 00 cmp QWORD PTR Block$[rbp], 0 00049 74 2f je SHORT $LN6@NcInsertBl 0004b 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00052 48 83 38 00 cmp QWORD PTR [rax], 0 00056 74 22 je SHORT $LN6@NcInsertBl 00058 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 0005f 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 00064 74 14 je SHORT $LN6@NcInsertBl 00066 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 0006d 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR Block$[rbp] 00074 48 39 48 10 cmp QWORD PTR [rax+16], rcx 00078 75 07 jne SHORT $LN5@NcInsertBl $LN6@NcInsertBl: ; 182 : return FALSE; 0007a 33 c0 xor eax, eax 0007c e9 0b 01 00 00 jmp $LN1@NcInsertBl $LN5@NcInsertBl: ; 183 : ; 184 : if (FixLabels && Block->LabelIds.size() && Link->Block->LabelIds.size()) 00081 83 bd 10 01 00 00 00 cmp DWORD PTR FixLabels$[rbp], 0 00088 74 4b je SHORT $LN7@NcInsertBl 0008a 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00091 48 83 c0 10 add rax, 16 00095 48 8b c8 mov rcx, rax 00098 e8 00 00 00 00 call ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::size 0009d 48 85 c0 test rax, rax 000a0 74 33 je SHORT $LN7@NcInsertBl 000a2 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000a9 48 8b 40 10 mov rax, QWORD PTR [rax+16] 000ad 48 83 c0 10 add rax, 16 000b1 48 8b c8 mov rcx, rax 000b4 e8 00 00 00 00 call ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::size 000b9 48 85 c0 test rax, rax 000bc 74 17 je SHORT $LN7@NcInsertBl ; 185 : NcFixLabelsForBlocks(Link->Block, Block); 000be 48 8b 95 08 01 00 00 mov rdx, QWORD PTR Block$[rbp] 000c5 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000cc 48 8b 48 10 mov rcx, QWORD PTR [rax+16] 000d0 e8 00 00 00 00 call ?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z ; NcFixLabelsForBlocks $LN7@NcInsertBl: ; 186 : ; 187 : if (Link->Next) 000d5 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000dc 48 83 38 00 cmp QWORD PTR [rax], 0 000e0 74 19 je SHORT $LN8@NcInsertBl ; 188 : Link->Next->Prev = Block->End; 000e2 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 000e9 48 8b 00 mov rax, QWORD PTR [rax] 000ec 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR Block$[rbp] 000f3 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 000f7 48 89 48 08 mov QWORD PTR [rax+8], rcx $LN8@NcInsertBl: ; 189 : Block->End->Next = Link->Next; 000fb 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00102 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00106 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR Link$[rbp] 0010d 48 8b 09 mov rcx, QWORD PTR [rcx] 00110 48 89 08 mov QWORD PTR [rax], rcx ; 190 : Block->Start->Prev = Link; 00113 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 0011a 48 8b 00 mov rax, QWORD PTR [rax] 0011d 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR Link$[rbp] 00124 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 191 : Link->Next = Block->Start; 00128 48 8b 85 00 01 00 00 mov rax, QWORD PTR Link$[rbp] 0012f 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR Block$[rbp] 00136 48 8b 09 mov rcx, QWORD PTR [rcx] 00139 48 89 08 mov QWORD PTR [rax], rcx ; 192 : ; 193 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 0013c 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00143 48 8b 00 mov rax, QWORD PTR [rax] 00146 48 89 45 08 mov QWORD PTR T$1[rbp], rax 0014a eb 0b jmp SHORT $LN4@NcInsertBl $LN2@NcInsertBl: 0014c 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00150 48 8b 00 mov rax, QWORD PTR [rax] 00153 48 89 45 08 mov QWORD PTR T$1[rbp], rax $LN4@NcInsertBl: 00157 48 83 7d 08 00 cmp QWORD PTR T$1[rbp], 0 0015c 74 29 je SHORT $LN3@NcInsertBl 0015e 48 8b 85 08 01 00 00 mov rax, QWORD PTR Block$[rbp] 00165 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00169 48 8b 00 mov rax, QWORD PTR [rax] 0016c 48 39 45 08 cmp QWORD PTR T$1[rbp], rax 00170 74 15 je SHORT $LN3@NcInsertBl ; 194 : T->Block = Link->Block; 00172 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00176 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR Link$[rbp] 0017d 48 8b 49 10 mov rcx, QWORD PTR [rcx+16] 00181 48 89 48 10 mov QWORD PTR [rax+16], rcx 00185 eb c5 jmp SHORT $LN2@NcInsertBl $LN3@NcInsertBl: ; 195 : ; 196 : return TRUE; 00187 b8 01 00 00 00 mov eax, 1 $LN1@NcInsertBl: ; 197 : } 0018c 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00193 5f pop rdi 00194 5d pop rbp 00195 c3 ret 0 ?NcInsertBlockAfter@@YAHPEAU_NATIVE_CODE_LINK@@PEAU_NATIVE_CODE_BLOCK@@H@Z ENDP ; NcInsertBlockAfter _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z _TEXT SEGMENT T$1 = 8 $T2 = 228 $T3 = 264 $T4 = 312 $T5 = 344 $T6 = 392 $T7 = 424 $T8 = 472 $T9 = 516 tv178 = 532 tv176 = 536 tv89 = 536 tv181 = 544 tv138 = 552 tv133 = 560 tv183 = 568 tv92 = 576 tv188 = 584 tv161 = 592 tv153 = 600 tv193 = 608 tv159 = 616 tv165 = 624 Block1$ = 672 Block2$ = 680 ?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z PROC ; NcFixLabelsForBlocks, COMDAT ; 169 : { $LN17: 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 a8 02 00 00 sub rsp, 680 ; 000002a8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 c7 85 04 02 00 00 00 00 00 00 mov DWORD PTR $T9[rbp], 0 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 170 : for (PNATIVE_CODE_LINK T = Block2->Start; T && T != Block2->End->Next; T = T->Next) 0002e 48 8b 85 a8 02 00 00 mov rax, QWORD PTR Block2$[rbp] 00035 48 8b 00 mov rax, QWORD PTR [rax] 00038 48 89 45 08 mov QWORD PTR T$1[rbp], rax 0003c eb 0b jmp SHORT $LN4@NcFixLabel $LN2@NcFixLabel: 0003e 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00042 48 8b 00 mov rax, QWORD PTR [rax] 00045 48 89 45 08 mov QWORD PTR T$1[rbp], rax $LN4@NcFixLabel: 00049 48 83 7d 08 00 cmp QWORD PTR T$1[rbp], 0 0004e 0f 84 11 02 00 00 je $LN3@NcFixLabel 00054 48 8b 85 a8 02 00 00 mov rax, QWORD PTR Block2$[rbp] 0005b 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0005f 48 8b 00 mov rax, QWORD PTR [rax] 00062 48 39 45 08 cmp QWORD PTR T$1[rbp], rax 00066 0f 84 f9 01 00 00 je $LN3@NcFixLabel ; 171 : { ; 172 : if ((T->Flags & CODE_FLAG_IS_LABEL) && StdFind(Block1->LabelIds.begin(), Block1->LabelIds.end(), T->Label) != Block1->LabelIds.end()) 0006c 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00070 8b 40 18 mov eax, DWORD PTR [rax+24] 00073 83 e0 01 and eax, 1 00076 85 c0 test eax, eax 00078 0f 84 48 01 00 00 je $LN7@NcFixLabel 0007e 48 8d 85 08 01 00 00 lea rax, QWORD PTR $T3[rbp] 00085 48 89 85 38 01 00 00 mov QWORD PTR $T4[rbp], rax 0008c 48 8b 85 a0 02 00 00 mov rax, QWORD PTR Block1$[rbp] 00093 48 83 c0 10 add rax, 16 00097 48 89 85 18 02 00 00 mov QWORD PTR tv89[rbp], rax 0009e 48 8b 95 38 01 00 00 mov rdx, QWORD PTR $T4[rbp] 000a5 48 8b 8d 18 02 00 00 mov rcx, QWORD PTR tv89[rbp] 000ac e8 00 00 00 00 call ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::end 000b1 48 89 85 20 02 00 00 mov QWORD PTR tv181[rbp], rax 000b8 48 8b 85 20 02 00 00 mov rax, QWORD PTR tv181[rbp] 000bf 48 89 85 28 02 00 00 mov QWORD PTR tv138[rbp], rax 000c6 48 8d 85 58 01 00 00 lea rax, QWORD PTR $T5[rbp] 000cd 48 89 85 88 01 00 00 mov QWORD PTR $T6[rbp], rax 000d4 48 8b 85 a0 02 00 00 mov rax, QWORD PTR Block1$[rbp] 000db 48 83 c0 10 add rax, 16 000df 48 89 85 30 02 00 00 mov QWORD PTR tv133[rbp], rax 000e6 48 8b 95 88 01 00 00 mov rdx, QWORD PTR $T6[rbp] 000ed 48 8b 8d 30 02 00 00 mov rcx, QWORD PTR tv133[rbp] 000f4 e8 00 00 00 00 call ?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::begin 000f9 48 89 85 38 02 00 00 mov QWORD PTR tv183[rbp], rax 00100 48 8b 85 38 02 00 00 mov rax, QWORD PTR tv183[rbp] 00107 48 89 85 40 02 00 00 mov QWORD PTR tv92[rbp], rax 0010e 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00112 48 83 c0 1c add rax, 28 00116 4c 8b c8 mov r9, rax 00119 4c 8b 85 28 02 00 00 mov r8, QWORD PTR tv138[rbp] 00120 48 8b 95 40 02 00 00 mov rdx, QWORD PTR tv92[rbp] 00127 48 8d 8d a8 01 00 00 lea rcx, QWORD PTR $T7[rbp] 0012e e8 00 00 00 00 call ??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z ; std::find > >,unsigned long> 00133 48 89 85 48 02 00 00 mov QWORD PTR tv188[rbp], rax 0013a 8b 85 04 02 00 00 mov eax, DWORD PTR $T9[rbp] 00140 83 c8 01 or eax, 1 00143 89 85 04 02 00 00 mov DWORD PTR $T9[rbp], eax 00149 48 8b 85 48 02 00 00 mov rax, QWORD PTR tv188[rbp] 00150 48 89 85 50 02 00 00 mov QWORD PTR tv161[rbp], rax 00157 48 8b 85 a0 02 00 00 mov rax, QWORD PTR Block1$[rbp] 0015e 48 83 c0 10 add rax, 16 00162 48 89 85 58 02 00 00 mov QWORD PTR tv153[rbp], rax 00169 48 8d 95 d8 01 00 00 lea rdx, QWORD PTR $T8[rbp] 00170 48 8b 8d 58 02 00 00 mov rcx, QWORD PTR tv153[rbp] 00177 e8 00 00 00 00 call ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::end 0017c 48 89 85 60 02 00 00 mov QWORD PTR tv193[rbp], rax 00183 8b 85 04 02 00 00 mov eax, DWORD PTR $T9[rbp] 00189 83 c8 02 or eax, 2 0018c 89 85 04 02 00 00 mov DWORD PTR $T9[rbp], eax 00192 48 8b 85 60 02 00 00 mov rax, QWORD PTR tv193[rbp] 00199 48 89 85 68 02 00 00 mov QWORD PTR tv159[rbp], rax 001a0 48 8b 95 68 02 00 00 mov rdx, QWORD PTR tv159[rbp] 001a7 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR tv161[rbp] 001ae e8 00 00 00 00 call ??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ; std::_Vector_const_iterator > >::operator!= 001b3 0f b6 c0 movzx eax, al 001b6 85 c0 test eax, eax 001b8 74 0c je SHORT $LN7@NcFixLabel 001ba c7 85 70 02 00 00 01 00 00 00 mov DWORD PTR tv165[rbp], 1 001c4 eb 0a jmp SHORT $LN8@NcFixLabel $LN7@NcFixLabel: 001c6 c7 85 70 02 00 00 00 00 00 00 mov DWORD PTR tv165[rbp], 0 $LN8@NcFixLabel: 001d0 0f b6 85 70 02 00 00 movzx eax, BYTE PTR tv165[rbp] 001d7 88 85 e4 00 00 00 mov BYTE PTR $T2[rbp], al 001dd 8b 85 04 02 00 00 mov eax, DWORD PTR $T9[rbp] 001e3 83 e0 02 and eax, 2 001e6 85 c0 test eax, eax 001e8 74 13 je SHORT $LN15@NcFixLabel 001ea 83 a5 04 02 00 00 fd and DWORD PTR $T9[rbp], -3 001f1 48 8d 8d d8 01 00 00 lea rcx, QWORD PTR $T8[rbp] 001f8 e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ $LN15@NcFixLabel: 001fd 8b 85 04 02 00 00 mov eax, DWORD PTR $T9[rbp] 00203 83 e0 01 and eax, 1 00206 85 c0 test eax, eax 00208 74 13 je SHORT $LN16@NcFixLabel 0020a 83 a5 04 02 00 00 fe and DWORD PTR $T9[rbp], -2 00211 48 8d 8d a8 01 00 00 lea rcx, QWORD PTR $T7[rbp] 00218 e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ $LN16@NcFixLabel: 0021d 0f b6 85 e4 00 00 00 movzx eax, BYTE PTR $T2[rbp] 00224 85 c0 test eax, eax 00226 74 38 je SHORT $LN5@NcFixLabel ; 173 : { ; 174 : NcChangeLabelId(Block2, T->Label, NcGenUnusedLabelId(Block1)); 00228 48 8b 8d a0 02 00 00 mov rcx, QWORD PTR Block1$[rbp] 0022f e8 00 00 00 00 call ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ; NcGenUnusedLabelId 00234 89 85 14 02 00 00 mov DWORD PTR tv178[rbp], eax 0023a 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 0023e 8b 40 1c mov eax, DWORD PTR [rax+28] 00241 89 85 18 02 00 00 mov DWORD PTR tv176[rbp], eax 00247 44 8b 85 14 02 00 00 mov r8d, DWORD PTR tv178[rbp] 0024e 8b 95 18 02 00 00 mov edx, DWORD PTR tv176[rbp] 00254 48 8b 8d a8 02 00 00 mov rcx, QWORD PTR Block2$[rbp] 0025b e8 00 00 00 00 call ?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z ; NcChangeLabelId $LN5@NcFixLabel: ; 175 : } ; 176 : } 00260 e9 d9 fd ff ff jmp $LN2@NcFixLabel $LN3@NcFixLabel: ; 177 : } 00265 48 8d a5 88 02 00 00 lea rsp, QWORD PTR [rbp+648] 0026c 5f pop rdi 0026d 5d pop rbp 0026e c3 ret 0 ?NcFixLabelsForBlocks@@YAXPEAU_NATIVE_CODE_BLOCK@@0@Z ENDP ; NcFixLabelsForBlocks _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT ReturnLabelId$ = 4 $T4 = 228 $T5 = 264 $T6 = 312 $T7 = 344 $T8 = 392 $T9 = 424 $T10 = 472 tv161 = 504 tv81 = 504 tv164 = 512 tv130 = 520 tv93 = 528 tv166 = 536 tv84 = 544 tv168 = 552 tv153 = 560 tv145 = 568 tv170 = 576 tv151 = 584 __$ArrayPad$ = 592 Block$ = 640 ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcGenUnusedLabelId, COMDAT ; 151 : { $LN9: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 88 02 00 00 sub rsp, 648 ; 00000288H 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 6a 00 00 00 mov ecx, 106 ; 0000006aH 0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00022 f3 ab rep stosd 00024 48 8b 8c 24 a8 02 00 00 mov rcx, QWORD PTR [rsp+680] 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 50 02 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 152 : ULONG ReturnLabelId = rand(); 00049 ff 15 00 00 00 00 call QWORD PTR __imp_rand 0004f 89 45 04 mov DWORD PTR ReturnLabelId$[rbp], eax $LN2@NcGenUnuse: ; 153 : while (StdFind(Block->LabelIds.begin(), Block->LabelIds.end(), ReturnLabelId) != Block->LabelIds.end()) 00052 48 8d 85 08 01 00 00 lea rax, QWORD PTR $T5[rbp] 00059 48 89 85 38 01 00 00 mov QWORD PTR $T6[rbp], rax 00060 48 8b 85 80 02 00 00 mov rax, QWORD PTR Block$[rbp] 00067 48 83 c0 10 add rax, 16 0006b 48 89 85 f8 01 00 00 mov QWORD PTR tv81[rbp], rax 00072 48 8b 95 38 01 00 00 mov rdx, QWORD PTR $T6[rbp] 00079 48 8b 8d f8 01 00 00 mov rcx, QWORD PTR tv81[rbp] 00080 e8 00 00 00 00 call ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::end 00085 48 89 85 00 02 00 00 mov QWORD PTR tv164[rbp], rax 0008c 48 8b 85 00 02 00 00 mov rax, QWORD PTR tv164[rbp] 00093 48 89 85 08 02 00 00 mov QWORD PTR tv130[rbp], rax 0009a 48 8d 85 58 01 00 00 lea rax, QWORD PTR $T7[rbp] 000a1 48 89 85 88 01 00 00 mov QWORD PTR $T8[rbp], rax 000a8 48 8b 85 80 02 00 00 mov rax, QWORD PTR Block$[rbp] 000af 48 83 c0 10 add rax, 16 000b3 48 89 85 10 02 00 00 mov QWORD PTR tv93[rbp], rax 000ba 48 8b 95 88 01 00 00 mov rdx, QWORD PTR $T8[rbp] 000c1 48 8b 8d 10 02 00 00 mov rcx, QWORD PTR tv93[rbp] 000c8 e8 00 00 00 00 call ?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::begin 000cd 48 89 85 18 02 00 00 mov QWORD PTR tv166[rbp], rax 000d4 48 8b 85 18 02 00 00 mov rax, QWORD PTR tv166[rbp] 000db 48 89 85 20 02 00 00 mov QWORD PTR tv84[rbp], rax 000e2 4c 8d 4d 04 lea r9, QWORD PTR ReturnLabelId$[rbp] 000e6 4c 8b 85 08 02 00 00 mov r8, QWORD PTR tv130[rbp] 000ed 48 8b 95 20 02 00 00 mov rdx, QWORD PTR tv84[rbp] 000f4 48 8d 8d a8 01 00 00 lea rcx, QWORD PTR $T9[rbp] 000fb e8 00 00 00 00 call ??$find@V?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@K@std@@YA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@0@V10@V10@AEBK@Z ; std::find > >,unsigned long> 00100 48 89 85 28 02 00 00 mov QWORD PTR tv168[rbp], rax 00107 48 8b 85 28 02 00 00 mov rax, QWORD PTR tv168[rbp] 0010e 48 89 85 30 02 00 00 mov QWORD PTR tv153[rbp], rax 00115 48 8b 85 80 02 00 00 mov rax, QWORD PTR Block$[rbp] 0011c 48 83 c0 10 add rax, 16 00120 48 89 85 38 02 00 00 mov QWORD PTR tv145[rbp], rax 00127 48 8d 95 d8 01 00 00 lea rdx, QWORD PTR $T10[rbp] 0012e 48 8b 8d 38 02 00 00 mov rcx, QWORD PTR tv145[rbp] 00135 e8 00 00 00 00 call ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ; std::vector >::end 0013a 48 89 85 40 02 00 00 mov QWORD PTR tv170[rbp], rax 00141 48 8b 85 40 02 00 00 mov rax, QWORD PTR tv170[rbp] 00148 48 89 85 48 02 00 00 mov QWORD PTR tv151[rbp], rax 0014f 48 8b 95 48 02 00 00 mov rdx, QWORD PTR tv151[rbp] 00156 48 8b 8d 30 02 00 00 mov rcx, QWORD PTR tv153[rbp] 0015d e8 00 00 00 00 call ??9?$_Vector_const_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEBA_NAEBV01@@Z ; std::_Vector_const_iterator > >::operator!= 00162 88 85 e4 00 00 00 mov BYTE PTR $T4[rbp], al 00168 48 8d 8d d8 01 00 00 lea rcx, QWORD PTR $T10[rbp] 0016f e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 00174 48 8d 8d a8 01 00 00 lea rcx, QWORD PTR $T9[rbp] 0017b e8 00 00 00 00 call ??1?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@XZ 00180 0f b6 85 e4 00 00 00 movzx eax, BYTE PTR $T4[rbp] 00187 85 c0 test eax, eax 00189 74 0e je SHORT $LN3@NcGenUnuse ; 154 : ReturnLabelId = rand(); 0018b ff 15 00 00 00 00 call QWORD PTR __imp_rand 00191 89 45 04 mov DWORD PTR ReturnLabelId$[rbp], eax 00194 e9 b9 fe ff ff jmp $LN2@NcGenUnuse $LN3@NcGenUnuse: ; 155 : Block->LabelIds.push_back(ReturnLabelId); 00199 48 8b 85 80 02 00 00 mov rax, QWORD PTR Block$[rbp] 001a0 48 83 c0 10 add rax, 16 001a4 48 89 85 f8 01 00 00 mov QWORD PTR tv161[rbp], rax 001ab 48 8d 55 04 lea rdx, QWORD PTR ReturnLabelId$[rbp] 001af 48 8b 8d f8 01 00 00 mov rcx, QWORD PTR tv161[rbp] 001b6 e8 00 00 00 00 call ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z ; std::vector >::push_back ; 156 : return ReturnLabelId; 001bb 8b 45 04 mov eax, DWORD PTR ReturnLabelId$[rbp] ; 157 : } 001be 8b f8 mov edi, eax 001c0 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 001c4 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z$rtcFrameData 001cb e8 00 00 00 00 call _RTC_CheckStackVars 001d0 8b c7 mov eax, edi 001d2 48 8b 8d 50 02 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 001d9 48 33 cd xor rcx, rbp 001dc e8 00 00 00 00 call __security_check_cookie 001e1 48 8d a5 68 02 00 00 lea rsp, QWORD PTR [rbp+616] 001e8 5f pop rdi 001e9 5d pop rbp 001ea c3 ret 0 ?NcGenUnusedLabelId@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcGenUnusedLabelId _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z _TEXT SEGMENT T$1 = 8 Block$ = 256 Original$ = 264 New$ = 272 ?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z PROC ; NcChangeLabelId, COMDAT ; 160 : { $LN8: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx 00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000e 55 push rbp 0000f 57 push rdi 00010 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 161 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 00028 48 8b 85 00 01 00 00 mov rax, QWORD PTR Block$[rbp] 0002f 48 8b 00 mov rax, QWORD PTR [rax] 00032 48 89 45 08 mov QWORD PTR T$1[rbp], rax 00036 eb 0b jmp SHORT $LN4@NcChangeLa $LN2@NcChangeLa: 00038 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 0003c 48 8b 00 mov rax, QWORD PTR [rax] 0003f 48 89 45 08 mov QWORD PTR T$1[rbp], rax $LN4@NcChangeLa: 00043 48 83 7d 08 00 cmp QWORD PTR T$1[rbp], 0 00048 74 4e je SHORT $LN3@NcChangeLa 0004a 48 8b 85 00 01 00 00 mov rax, QWORD PTR Block$[rbp] 00051 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00055 48 8b 00 mov rax, QWORD PTR [rax] 00058 48 39 45 08 cmp QWORD PTR T$1[rbp], rax 0005c 74 3a je SHORT $LN3@NcChangeLa ; 162 : { ; 163 : if (((T->Flags & CODE_FLAG_IS_LABEL) || (T->Flags & CODE_FLAG_IS_REL_JMP)) && T->Label == Original) 0005e 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00062 8b 40 18 mov eax, DWORD PTR [rax+24] 00065 83 e0 01 and eax, 1 00068 85 c0 test eax, eax 0006a 75 0e jne SHORT $LN6@NcChangeLa 0006c 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 00070 8b 40 18 mov eax, DWORD PTR [rax+24] 00073 83 e0 02 and eax, 2 00076 85 c0 test eax, eax 00078 74 1c je SHORT $LN5@NcChangeLa $LN6@NcChangeLa: 0007a 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 0007e 8b 8d 08 01 00 00 mov ecx, DWORD PTR Original$[rbp] 00084 39 48 1c cmp DWORD PTR [rax+28], ecx 00087 75 0d jne SHORT $LN5@NcChangeLa ; 164 : T->Label = New; 00089 48 8b 45 08 mov rax, QWORD PTR T$1[rbp] 0008d 8b 8d 10 01 00 00 mov ecx, DWORD PTR New$[rbp] 00093 89 48 1c mov DWORD PTR [rax+28], ecx $LN5@NcChangeLa: ; 165 : } 00096 eb a0 jmp SHORT $LN2@NcChangeLa $LN3@NcChangeLa: ; 166 : } 00098 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 0009f 5f pop rdi 000a0 5d pop rbp 000a1 c3 ret 0 ?NcChangeLabelId@@YAXPEAU_NATIVE_CODE_BLOCK@@KK@Z ENDP ; NcChangeLabelId _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT TotalSize$ = 4 T$1 = 40 Block$ = 288 ?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; NcCalcBlockSizeInBytes, COMDAT ; 139 : { $LN7: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 28 01 00 00 sub rsp, 296 ; 00000128H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 140 : ULONG TotalSize = 0; 0001f c7 45 04 00 00 00 00 mov DWORD PTR TotalSize$[rbp], 0 ; 141 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 00026 48 8b 85 20 01 00 00 mov rax, QWORD PTR Block$[rbp] 0002d 48 8b 00 mov rax, QWORD PTR [rax] 00030 48 89 45 28 mov QWORD PTR T$1[rbp], rax 00034 eb 0b jmp SHORT $LN4@NcCalcBloc $LN2@NcCalcBloc: 00036 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0003a 48 8b 00 mov rax, QWORD PTR [rax] 0003d 48 89 45 28 mov QWORD PTR T$1[rbp], rax $LN4@NcCalcBloc: 00041 48 83 7d 28 00 cmp QWORD PTR T$1[rbp], 0 00046 74 37 je SHORT $LN3@NcCalcBloc 00048 48 8b 85 20 01 00 00 mov rax, QWORD PTR Block$[rbp] 0004f 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00053 48 8b 00 mov rax, QWORD PTR [rax] 00056 48 39 45 28 cmp QWORD PTR T$1[rbp], rax 0005a 74 23 je SHORT $LN3@NcCalcBloc ; 142 : { ; 143 : if (T->Flags & CODE_FLAG_IS_LABEL) 0005c 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00060 8b 40 18 mov eax, DWORD PTR [rax+24] 00063 83 e0 01 and eax, 1 00066 85 c0 test eax, eax 00068 74 02 je SHORT $LN5@NcCalcBloc ; 144 : continue; 0006a eb ca jmp SHORT $LN2@NcCalcBloc $LN5@NcCalcBloc: ; 145 : TotalSize += T->RawDataSize; 0006c 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00070 8b 40 28 mov eax, DWORD PTR [rax+40] 00073 8b 4d 04 mov ecx, DWORD PTR TotalSize$[rbp] 00076 03 c8 add ecx, eax 00078 8b c1 mov eax, ecx 0007a 89 45 04 mov DWORD PTR TotalSize$[rbp], eax ; 146 : } 0007d eb b7 jmp SHORT $LN2@NcCalcBloc $LN3@NcCalcBloc: ; 147 : return TotalSize; 0007f 8b 45 04 mov eax, DWORD PTR TotalSize$[rbp] ; 148 : } 00082 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 00089 5f pop rdi 0008a 5d pop rbp 0008b c3 ret 0 ?NcCalcBlockSizeInBytes@@YAKPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; NcCalcBlockSizeInBytes _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z _TEXT SEGMENT InstructionCount$ = 4 T$1 = 40 Block$ = 288 CountCombinedAsOne$ = 296 ?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z PROC ; NcCountInstructions, COMDAT ; 125 : { $LN8: 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 28 01 00 00 sub rsp, 296 ; 00000128H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 126 : ULONG InstructionCount = 0; 00023 c7 45 04 00 00 00 00 mov DWORD PTR InstructionCount$[rbp], 0 ; 127 : for (PNATIVE_CODE_LINK T = Block->Start; T && T != Block->End->Next; T = T->Next) 0002a 48 8b 85 20 01 00 00 mov rax, QWORD PTR Block$[rbp] 00031 48 8b 00 mov rax, QWORD PTR [rax] 00034 48 89 45 28 mov QWORD PTR T$1[rbp], rax 00038 eb 0b jmp SHORT $LN4@NcCountIns $LN2@NcCountIns: 0003a 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0003e 48 8b 00 mov rax, QWORD PTR [rax] 00041 48 89 45 28 mov QWORD PTR T$1[rbp], rax $LN4@NcCountIns: 00045 48 83 7d 28 00 cmp QWORD PTR T$1[rbp], 0 0004a 74 62 je SHORT $LN3@NcCountIns 0004c 48 8b 85 20 01 00 00 mov rax, QWORD PTR Block$[rbp] 00053 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00057 48 8b 00 mov rax, QWORD PTR [rax] 0005a 48 39 45 28 cmp QWORD PTR T$1[rbp], rax 0005e 74 4e je SHORT $LN3@NcCountIns ; 128 : { ; 129 : if (T->Flags & CODE_FLAG_IS_LABEL) 00060 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00064 8b 40 18 mov eax, DWORD PTR [rax+24] 00067 83 e0 01 and eax, 1 0006a 85 c0 test eax, eax 0006c 74 02 je SHORT $LN5@NcCountIns ; 130 : continue; 0006e eb ca jmp SHORT $LN2@NcCountIns $LN5@NcCountIns: ; 131 : if (CountCombinedAsOne && T->Next && (T->Flags & CODE_FLAG_DO_NOT_DIVIDE) && !(T->Next->Flags & CODE_FLAG_DO_NOT_DIVIDE)) 00070 83 bd 28 01 00 00 00 cmp DWORD PTR CountCombinedAsOne$[rbp], 0 00077 74 2b je SHORT $LN6@NcCountIns 00079 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 0007d 48 83 38 00 cmp QWORD PTR [rax], 0 00081 74 21 je SHORT $LN6@NcCountIns 00083 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00087 8b 40 18 mov eax, DWORD PTR [rax+24] 0008a 83 e0 08 and eax, 8 0008d 85 c0 test eax, eax 0008f 74 13 je SHORT $LN6@NcCountIns 00091 48 8b 45 28 mov rax, QWORD PTR T$1[rbp] 00095 48 8b 00 mov rax, QWORD PTR [rax] 00098 8b 40 18 mov eax, DWORD PTR [rax+24] 0009b 83 e0 08 and eax, 8 0009e 85 c0 test eax, eax 000a0 75 02 jne SHORT $LN6@NcCountIns ; 132 : continue; 000a2 eb 96 jmp SHORT $LN2@NcCountIns $LN6@NcCountIns: ; 133 : ++InstructionCount; 000a4 8b 45 04 mov eax, DWORD PTR InstructionCount$[rbp] 000a7 ff c0 inc eax 000a9 89 45 04 mov DWORD PTR InstructionCount$[rbp], eax ; 134 : } 000ac eb 8c jmp SHORT $LN2@NcCountIns $LN3@NcCountIns: ; 135 : return InstructionCount; 000ae 8b 45 04 mov eax, DWORD PTR InstructionCount$[rbp] ; 136 : } 000b1 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 000b8 5f pop rdi 000b9 5d pop rbp 000ba c3 ret 0 ?NcCountInstructions@@YAKPEAU_NATIVE_CODE_BLOCK@@H@Z ENDP ; NcCountInstructions _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z _TEXT SEGMENT Link$ = 224 ?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z PROC ; NcUnlink, COMDAT ; 114 : { $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 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:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 115 : if (Link) 0001f 48 83 bd e0 00 00 00 00 cmp QWORD PTR Link$[rbp], 0 00027 74 4c je SHORT $LN2@NcUnlink ; 116 : { ; 117 : if (Link->Next) 00029 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Link$[rbp] 00030 48 83 38 00 cmp QWORD PTR [rax], 0 00034 74 19 je SHORT $LN3@NcUnlink ; 118 : Link->Next->Prev = Link->Prev; 00036 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Link$[rbp] 0003d 48 8b 00 mov rax, QWORD PTR [rax] 00040 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Link$[rbp] 00047 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 0004b 48 89 48 08 mov QWORD PTR [rax+8], rcx $LN3@NcUnlink: ; 119 : if (Link->Prev) 0004f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Link$[rbp] 00056 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 0005b 74 18 je SHORT $LN4@NcUnlink ; 120 : Link->Prev->Next = Link->Next; 0005d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Link$[rbp] 00064 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00068 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Link$[rbp] 0006f 48 8b 09 mov rcx, QWORD PTR [rcx] 00072 48 89 08 mov QWORD PTR [rax], rcx $LN4@NcUnlink: $LN2@NcUnlink: ; 121 : } ; 122 : } 00075 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0007c 5f pop rdi 0007d 5d pop rbp 0007e c3 ret 0 ?NcUnlink@@YAXPEAU_NATIVE_CODE_LINK@@@Z ENDP ; NcUnlink _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z _TEXT SEGMENT Link1$ = 224 Link2$ = 232 ?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z PROC ; NcInsertLinkBefore, COMDAT ; 102 : { $LN5: 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:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 103 : if (Link1) 00024 48 83 bd e0 00 00 00 00 cmp QWORD PTR Link1$[rbp], 0 0002c 74 5c je SHORT $LN2@NcInsertLi ; 104 : { ; 105 : Link2->Next = Link1; 0002e 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 00035 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Link1$[rbp] 0003c 48 89 08 mov QWORD PTR [rax], rcx ; 106 : Link2->Prev = Link1->Prev; 0003f 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 00046 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Link1$[rbp] 0004d 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 00051 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 107 : Link1->Prev = Link2; 00055 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Link1$[rbp] 0005c 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link2$[rbp] 00063 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 108 : if (Link2->Prev) 00067 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 0006e 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 00073 74 15 je SHORT $LN3@NcInsertLi ; 109 : Link2->Prev->Next = Link2; 00075 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 0007c 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00080 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link2$[rbp] 00087 48 89 08 mov QWORD PTR [rax], rcx $LN3@NcInsertLi: $LN2@NcInsertLi: ; 110 : } ; 111 : } 0008a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00091 5f pop rdi 00092 5d pop rbp 00093 c3 ret 0 ?NcInsertLinkBefore@@YAXPEAU_NATIVE_CODE_LINK@@0@Z ENDP ; NcInsertLinkBefore _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z _TEXT SEGMENT Link1$ = 224 Link2$ = 232 ?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z PROC ; NcInsertLinkAfter, COMDAT ; 90 : { $LN5: 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:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 91 : if (Link1) 00024 48 83 bd e0 00 00 00 00 cmp QWORD PTR Link1$[rbp], 0 0002c 74 59 je SHORT $LN2@NcInsertLi ; 92 : { ; 93 : Link2->Prev = Link1; 0002e 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 00035 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Link1$[rbp] 0003c 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 94 : Link2->Next = Link1->Next; 00040 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 00047 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Link1$[rbp] 0004e 48 8b 09 mov rcx, QWORD PTR [rcx] 00051 48 89 08 mov QWORD PTR [rax], rcx ; 95 : Link1->Next = Link2; 00054 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Link1$[rbp] 0005b 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link2$[rbp] 00062 48 89 08 mov QWORD PTR [rax], rcx ; 96 : if (Link2->Next) 00065 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 0006c 48 83 38 00 cmp QWORD PTR [rax], 0 00070 74 15 je SHORT $LN3@NcInsertLi ; 97 : Link2->Next->Prev = Link2; 00072 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link2$[rbp] 00079 48 8b 00 mov rax, QWORD PTR [rax] 0007c 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link2$[rbp] 00083 48 89 48 08 mov QWORD PTR [rax+8], rcx $LN3@NcInsertLi: $LN2@NcInsertLi: ; 98 : } ; 99 : } 00087 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0008e 5f pop rdi 0008f 5d pop rbp 00090 c3 ret 0 ?NcInsertLinkAfter@@YAXPEAU_NATIVE_CODE_LINK@@0@Z ENDP ; NcInsertLinkAfter _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z _TEXT SEGMENT Block$ = 224 Link$ = 232 ?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z PROC ; NcPrependToBlock, COMDAT ; 70 : { $LN7: 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:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 71 : if (!Link) 00024 48 83 bd e8 00 00 00 00 cmp QWORD PTR Link$[rbp], 0 0002c 75 05 jne SHORT $LN2@NcPrependT ; 72 : return; 0002e e9 9b 00 00 00 jmp $LN1@NcPrependT $LN2@NcPrependT: ; 73 : ; 74 : Link->Block = Block; 00033 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link$[rbp] 0003a 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Block$[rbp] 00041 48 89 48 10 mov QWORD PTR [rax+16], rcx ; 75 : Link->Next = Block->Start; 00045 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link$[rbp] 0004c 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Block$[rbp] 00053 48 8b 09 mov rcx, QWORD PTR [rcx] 00056 48 89 08 mov QWORD PTR [rax], rcx ; 76 : Link->Prev = NULL; 00059 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link$[rbp] 00060 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 ; 77 : ; 78 : if (!Block->End || !Block->Start) 00068 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0006f 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 00074 74 0d je SHORT $LN5@NcPrependT 00076 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0007d 48 83 38 00 cmp QWORD PTR [rax], 0 00081 75 25 jne SHORT $LN3@NcPrependT $LN5@NcPrependT: ; 79 : { ; 80 : Block->Start = Block->End = Link; 00083 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0008a 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 00091 48 89 48 08 mov QWORD PTR [rax+8], rcx 00095 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0009c 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 000a3 48 89 08 mov QWORD PTR [rax], rcx ; 81 : } 000a6 eb 26 jmp SHORT $LN4@NcPrependT $LN3@NcPrependT: ; 82 : else ; 83 : { ; 84 : Block->Start->Prev = Link; 000a8 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 000af 48 8b 00 mov rax, QWORD PTR [rax] 000b2 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 000b9 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 85 : Block->Start = Link; 000bd 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 000c4 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 000cb 48 89 08 mov QWORD PTR [rax], rcx $LN4@NcPrependT: $LN1@NcPrependT: ; 86 : } ; 87 : } 000ce 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000d5 5f pop rdi 000d6 5d pop rbp 000d7 c3 ret 0 ?NcPrependToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ENDP ; NcPrependToBlock _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z _TEXT SEGMENT Block$ = 224 Link$ = 232 ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z PROC ; NcAppendToBlock, COMDAT ; 50 : { $LN7: 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:__337731E1_NativeCode@cpp 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 51 : if (!Link) 00024 48 83 bd e8 00 00 00 00 cmp QWORD PTR Link$[rbp], 0 0002c 75 05 jne SHORT $LN2@NcAppendTo ; 52 : return; 0002e e9 9d 00 00 00 jmp $LN1@NcAppendTo $LN2@NcAppendTo: ; 53 : ; 54 : Link->Block = Block; 00033 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link$[rbp] 0003a 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Block$[rbp] 00041 48 89 48 10 mov QWORD PTR [rax+16], rcx ; 55 : Link->Prev = Block->End; 00045 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link$[rbp] 0004c 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR Block$[rbp] 00053 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 00057 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 56 : Link->Next = NULL; 0005b 48 8b 85 e8 00 00 00 mov rax, QWORD PTR Link$[rbp] 00062 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 57 : ; 58 : if (!Block->End || !Block->Start) 00069 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 00070 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 00075 74 0d je SHORT $LN5@NcAppendTo 00077 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0007e 48 83 38 00 cmp QWORD PTR [rax], 0 00082 75 25 jne SHORT $LN3@NcAppendTo $LN5@NcAppendTo: ; 59 : { ; 60 : Block->Start = Block->End = Link; 00084 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0008b 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 00092 48 89 48 08 mov QWORD PTR [rax+8], rcx 00096 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 0009d 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 000a4 48 89 08 mov QWORD PTR [rax], rcx ; 61 : } 000a7 eb 27 jmp SHORT $LN4@NcAppendTo $LN3@NcAppendTo: ; 62 : else ; 63 : { ; 64 : Block->End->Next = Link; 000a9 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 000b0 48 8b 40 08 mov rax, QWORD PTR [rax+8] 000b4 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 000bb 48 89 08 mov QWORD PTR [rax], rcx ; 65 : Block->End = Link; 000be 48 8b 85 e0 00 00 00 mov rax, QWORD PTR Block$[rbp] 000c5 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR Link$[rbp] 000cc 48 89 48 08 mov QWORD PTR [rax+8], rcx $LN4@NcAppendTo: $LN1@NcAppendTo: ; 66 : } ; 67 : } 000d0 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000d7 5f pop rdi 000d8 5d pop rbp 000d9 c3 ret 0 ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ENDP ; NcAppendToBlock _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ??0_NATIVE_CODE_BLOCK@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0_NATIVE_CODE_BLOCK@@QEAA@XZ PROC ; _NATIVE_CODE_BLOCK::_NATIVE_CODE_BLOCK, COMDAT ; 44 : { $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:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 83 c0 10 add rax, 16 0002a 48 8b c8 mov rcx, rax 0002d e8 00 00 00 00 call ??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ ; std::vector >::vector > ; 45 : Start = End = NULL; 00032 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00039 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 00041 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 46 : LabelIds.clear(); 0004f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00056 48 83 c0 10 add rax, 16 0005a 48 8b c8 mov rcx, rax 0005d e8 00 00 00 00 call ?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ ; std::vector >::clear ; 47 : } 00062 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00069 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00070 5f pop rdi 00071 5d pop rbp 00072 c3 ret 0 ??0_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@@QEBAAEBV?$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@@QEBAAEBV?$allocator@K@2@XZ PROC ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first, COMDAT ; 1381 : constexpr const _Ty1& _Get_first() const 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 ; 1382 : return *this; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] ; 1383 : } 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@@QEBAAEBV?$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\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 ??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ PROC ; std::_Vector_val >::_Vector_val >, COMDAT ; 401 : _CONSTEXPR20_CONTAINER _Vector_val() noexcept : _Myfirst(), _Mylast(), _Myend() {} $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 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ??0_Container_base12@std@@QEAA@XZ ; std::_Container_base12::_Container_base12 0002b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 0003a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00041 48 c7 40 10 00 00 00 00 mov QWORD PTR [rax+16], 0 00049 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00050 48 c7 40 18 00 00 00 00 mov QWORD PTR [rax+24], 0 00058 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0005f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00066 5f pop rdi 00067 5d pop rbp 00068 c3 ret 0 ??0?$_Vector_val@U?$_Simple_types@K@std@@@std@@QEAA@XZ ENDP ; std::_Vector_val >::_Vector_val > _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@@AEBAAEBV?$allocator@K@2@XZ _TEXT SEGMENT this$ = 224 ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEBAAEBV?$allocator@K@2@XZ PROC ; std::vector >::_Getal, COMDAT ; 1821 : _NODISCARD _CONSTEXPR20_CONTAINER const _Alty& _Getal() const 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 ; 1822 : 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@@QEBAAEBV?$allocator@K@2@XZ ; std::_Compressed_pair,std::_Vector_val >,1>::_Get_first ; 1823 : } 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@@AEBAAEBV?$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 ?_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 ?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z _TEXT SEGMENT this$ = 224 _First$ = 232 _Last$ = 240 ?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z PROC ; std::vector >::_Orphan_range, COMDAT ; 1802 : _CONSTEXPR20_CONTAINER void _Orphan_range(pointer _First, pointer _Last) const { $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 ; 1803 : // orphan iterators within specified (inclusive) range ; 1804 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1805 : if (_STD is_constant_evaluated()) { ; 1806 : _Orphan_range_unlocked(_First, _Last); ; 1807 : } else ; 1808 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1809 : { ; 1810 : _Orphan_range_locked(_First, _Last); 00029 4c 8b 85 f0 00 00 00 mov r8, QWORD PTR _Last$[rbp] 00030 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _First$[rbp] 00037 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0003e e8 00 00 00 00 call ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ; std::vector >::_Orphan_range_locked ; 1811 : } ; 1812 : } 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 ?_Orphan_range@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ENDP ; std::vector >::_Orphan_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\vector ; COMDAT ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z _TEXT SEGMENT _Lock$ = 4 __$ArrayPad$ = 216 this$ = 256 _First$ = 264 _Last$ = 272 ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z PROC ; std::vector >::_Orphan_range_locked, COMDAT ; 1797 : void _Orphan_range_locked(pointer _First, pointer _Last) const { $LN4: 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 08 01 00 00 sub rsp, 264 ; 00000108H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00022 b9 0a 00 00 00 mov ecx, 10 00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002c f3 ab rep stosd 0002e 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR [rsp+296] 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 d8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00047 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1798 : _Lockit _Lock(_LOCK_DEBUG); 00053 ba 03 00 00 00 mov edx, 3 00058 48 8d 4d 04 lea rcx, QWORD PTR _Lock$[rbp] 0005c ff 15 00 00 00 00 call QWORD PTR __imp_??0_Lockit@std@@QEAA@H@Z 00062 90 npad 1 ; 1799 : _Orphan_range_unlocked(_First, _Last); 00063 4c 8b 85 10 01 00 00 mov r8, QWORD PTR _Last$[rbp] 0006a 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _First$[rbp] 00071 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00078 e8 00 00 00 00 call ?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ; std::vector >::_Orphan_range_unlocked 0007d 90 npad 1 ; 1800 : } 0007e 48 8d 4d 04 lea rcx, QWORD PTR _Lock$[rbp] 00082 ff 15 00 00 00 00 call QWORD PTR __imp_??1_Lockit@std@@QEAA@XZ 00088 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0008c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z$rtcFrameData 00093 e8 00 00 00 00 call _RTC_CheckStackVars 00098 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 0009f 48 33 cd xor rcx, rbp 000a2 e8 00 00 00 00 call __security_check_cookie 000a7 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 000ae 5f pop rdi 000af 5d pop rbp 000b0 c3 ret 0 ?_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ENDP ; std::vector >::_Orphan_range_locked _TEXT ENDS ; COMDAT text$x text$x SEGMENT _Lock$ = 4 __$ArrayPad$ = 216 this$ = 256 _First$ = 264 _Last$ = 272 ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA PROC ; `std::vector >::_Orphan_range_locked'::`1'::dtor$0 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 04 lea rcx, QWORD PTR _Lock$[rbp] 00018 ff 15 00 00 00 00 call QWORD PTR __imp_??1_Lockit@std@@QEAA@XZ 0001e 48 83 c4 28 add rsp, 40 ; 00000028H 00022 5f pop rdi 00023 5d pop rbp 00024 c3 ret 0 ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA ENDP ; `std::vector >::_Orphan_range_locked'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT _Lock$ = 4 __$ArrayPad$ = 216 this$ = 256 _First$ = 264 _Last$ = 272 ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA PROC ; `std::vector >::_Orphan_range_locked'::`1'::dtor$0 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 04 lea rcx, QWORD PTR _Lock$[rbp] 00018 ff 15 00 00 00 00 call QWORD PTR __imp_??1_Lockit@std@@QEAA@XZ 0001e 48 83 c4 28 add rsp, 40 ; 00000028H 00022 5f pop rdi 00023 5d pop rbp 00024 c3 ret 0 ?dtor$0@?0??_Orphan_range_locked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z@4HA ENDP ; `std::vector >::_Orphan_range_locked'::`1'::dtor$0 text$x 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 ?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z _TEXT SEGMENT _Pnext$ = 8 _Pnextptr$1 = 40 _Temp$2 = 72 _Temp$3 = 104 this$ = 352 _First$ = 360 _Last$ = 368 ?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z PROC ; std::vector >::_Orphan_range_unlocked, COMDAT ; 1782 : _CONSTEXPR20_CONTAINER void _Orphan_range_unlocked(pointer _First, pointer _Last) const { $LN8: 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 68 01 00 00 sub rsp, 360 ; 00000168H 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 ; 1783 : _Iterator_base12** _Pnext = &_Mypair._Myval2._Myproxy->_Myfirstiter; 00029 48 8b 85 60 01 00 00 mov rax, QWORD PTR this$[rbp] 00030 48 8b 00 mov rax, QWORD PTR [rax] 00033 48 83 c0 08 add rax, 8 00037 48 89 45 08 mov QWORD PTR _Pnext$[rbp], rax $LN2@Orphan_ran: ; 1784 : while (*_Pnext) { 0003b 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 0003f 48 83 38 00 cmp QWORD PTR [rax], 0 00043 74 69 je SHORT $LN3@Orphan_ran ; 1785 : const auto _Pnextptr = static_cast(**_Pnext)._Ptr; 00045 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 00049 48 8b 00 mov rax, QWORD PTR [rax] 0004c 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00050 48 89 45 28 mov QWORD PTR _Pnextptr$1[rbp], rax ; 1786 : if (_Pnextptr < _First || _Last < _Pnextptr) { // skip the iterator 00054 48 8b 85 68 01 00 00 mov rax, QWORD PTR _First$[rbp] 0005b 48 39 45 28 cmp QWORD PTR _Pnextptr$1[rbp], rax 0005f 72 0d jb SHORT $LN6@Orphan_ran 00061 48 8b 45 28 mov rax, QWORD PTR _Pnextptr$1[rbp] 00065 48 39 85 70 01 00 00 cmp QWORD PTR _Last$[rbp], rax 0006c 73 19 jae SHORT $LN4@Orphan_ran $LN6@Orphan_ran: ; 1787 : const auto _Temp = *_Pnext; // TRANSITION, VSO-1269037 0006e 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 00072 48 8b 00 mov rax, QWORD PTR [rax] 00075 48 89 45 48 mov QWORD PTR _Temp$2[rbp], rax ; 1788 : _Pnext = &_Temp->_Mynextiter; 00079 48 8b 45 48 mov rax, QWORD PTR _Temp$2[rbp] 0007d 48 83 c0 08 add rax, 8 00081 48 89 45 08 mov QWORD PTR _Pnext$[rbp], rax ; 1789 : } else { // orphan the iterator 00085 eb 25 jmp SHORT $LN5@Orphan_ran $LN4@Orphan_ran: ; 1790 : const auto _Temp = *_Pnext; // TRANSITION, VSO-1269037 00087 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 0008b 48 8b 00 mov rax, QWORD PTR [rax] 0008e 48 89 45 68 mov QWORD PTR _Temp$3[rbp], rax ; 1791 : _Temp->_Myproxy = nullptr; 00092 48 8b 45 68 mov rax, QWORD PTR _Temp$3[rbp] 00096 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1792 : *_Pnext = _Temp->_Mynextiter; 0009d 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 000a1 48 8b 4d 68 mov rcx, QWORD PTR _Temp$3[rbp] 000a5 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 000a9 48 89 08 mov QWORD PTR [rax], rcx $LN5@Orphan_ran: ; 1793 : } ; 1794 : } 000ac eb 8d jmp SHORT $LN2@Orphan_ran $LN3@Orphan_ran: ; 1795 : } 000ae 48 8d a5 48 01 00 00 lea rsp, QWORD PTR [rbp+328] 000b5 5f pop rdi 000b6 5d pop rbp 000b7 c3 ret 0 ?_Orphan_range_unlocked@?$vector@KV?$allocator@K@std@@@std@@AEBAXPEAK0@Z ENDP ; std::vector >::_Orphan_range_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\vector ; COMDAT ?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ _TEXT SEGMENT ?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ PROC ; std::vector >::_Xlength, COMDAT ; 1773 : [[noreturn]] static void _Xlength() { $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:__092B7E84_vector 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1774 : _Xlength_error("vector too long"); 0001b 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0BA@FOIKENOD@vector?5too?5long@ 00022 e8 00 00 00 00 call ?_Xlength_error@std@@YAXPEBD@Z ; std::_Xlength_error $LN2@Xlength: ; 1775 : } 00027 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002e 5f pop rdi 0002f 5d pop rbp 00030 c3 ret 0 ?_Xlength@?$vector@KV?$allocator@K@std@@@std@@CAXXZ ENDP ; std::vector >::_Xlength _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 ?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z _TEXT SEGMENT _My_data$ = 8 _Myfirst$ = 40 _Mylast$ = 72 _Myend$ = 104 tv90 = 312 tv88 = 320 tv86 = 328 this$ = 368 _Newvec$ = 376 _Newsize$ = 384 _Newcapacity$ = 392 ?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z PROC ; std::vector >::_Change_array, COMDAT ; 1736 : const pointer _Newvec, const size_type _Newsize, const size_type _Newcapacity) { $LN4: 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 78 01 00 00 sub rsp, 376 ; 00000178H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1737 : // orphan all iterators, discard old array, acquire new array ; 1738 : auto& _My_data = _Mypair._Myval2; 0002e 48 8b 85 70 01 00 00 mov rax, QWORD PTR this$[rbp] 00035 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1739 : pointer& _Myfirst = _My_data._Myfirst; 00039 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 0003d 48 83 c0 08 add rax, 8 00041 48 89 45 28 mov QWORD PTR _Myfirst$[rbp], rax ; 1740 : pointer& _Mylast = _My_data._Mylast; 00045 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00049 48 83 c0 10 add rax, 16 0004d 48 89 45 48 mov QWORD PTR _Mylast$[rbp], rax ; 1741 : pointer& _Myend = _My_data._Myend; 00051 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00055 48 83 c0 18 add rax, 24 00059 48 89 45 68 mov QWORD PTR _Myend$[rbp], rax ; 1742 : ; 1743 : _My_data._Orphan_all(); 0005d 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00061 e8 00 00 00 00 call ?_Orphan_all@_Container_base12@std@@QEAAXXZ ; std::_Container_base12::_Orphan_all ; 1744 : ; 1745 : if (_Myfirst) { // destroy and deallocate old array 00066 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 0006a 48 83 38 00 cmp QWORD PTR [rax], 0 0006e 74 71 je SHORT $LN2@Change_arr ; 1746 : _Destroy(_Myfirst, _Mylast); 00070 48 8b 45 48 mov rax, QWORD PTR _Mylast$[rbp] 00074 4c 8b 00 mov r8, QWORD PTR [rax] 00077 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 0007b 48 8b 10 mov rdx, QWORD PTR [rax] 0007e 48 8b 8d 70 01 00 00 mov rcx, QWORD PTR this$[rbp] 00085 e8 00 00 00 00 call ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy ; 1747 : _Getal().deallocate(_Myfirst, static_cast(_Myend - _Myfirst)); 0008a 48 8b 8d 70 01 00 00 mov rcx, QWORD PTR this$[rbp] 00091 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 00096 48 89 85 38 01 00 00 mov QWORD PTR tv90[rbp], rax 0009d 48 8b 45 68 mov rax, QWORD PTR _Myend$[rbp] 000a1 48 8b 4d 28 mov rcx, QWORD PTR _Myfirst$[rbp] 000a5 48 8b 09 mov rcx, QWORD PTR [rcx] 000a8 48 8b 00 mov rax, QWORD PTR [rax] 000ab 48 2b c1 sub rax, rcx 000ae 48 c1 f8 02 sar rax, 2 000b2 48 89 85 40 01 00 00 mov QWORD PTR tv88[rbp], rax 000b9 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 000bd 48 8b 00 mov rax, QWORD PTR [rax] 000c0 48 89 85 48 01 00 00 mov QWORD PTR tv86[rbp], rax 000c7 4c 8b 85 40 01 00 00 mov r8, QWORD PTR tv88[rbp] 000ce 48 8b 95 48 01 00 00 mov rdx, QWORD PTR tv86[rbp] 000d5 48 8b 8d 38 01 00 00 mov rcx, QWORD PTR tv90[rbp] 000dc e8 00 00 00 00 call ?deallocate@?$allocator@K@std@@QEAAXQEAK_K@Z ; std::allocator::deallocate $LN2@Change_arr: ; 1748 : } ; 1749 : ; 1750 : _Myfirst = _Newvec; 000e1 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 000e5 48 8b 8d 78 01 00 00 mov rcx, QWORD PTR _Newvec$[rbp] 000ec 48 89 08 mov QWORD PTR [rax], rcx ; 1751 : _Mylast = _Newvec + _Newsize; 000ef 48 8b 85 78 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 000f6 48 8b 8d 80 01 00 00 mov rcx, QWORD PTR _Newsize$[rbp] 000fd 48 8d 04 88 lea rax, QWORD PTR [rax+rcx*4] 00101 48 8b 4d 48 mov rcx, QWORD PTR _Mylast$[rbp] 00105 48 89 01 mov QWORD PTR [rcx], rax ; 1752 : _Myend = _Newvec + _Newcapacity; 00108 48 8b 85 78 01 00 00 mov rax, QWORD PTR _Newvec$[rbp] 0010f 48 8b 8d 88 01 00 00 mov rcx, QWORD PTR _Newcapacity$[rbp] 00116 48 8d 04 88 lea rax, QWORD PTR [rax+rcx*4] 0011a 48 8b 4d 68 mov rcx, QWORD PTR _Myend$[rbp] 0011e 48 89 01 mov QWORD PTR [rcx], rax ; 1753 : } 00121 48 8d a5 58 01 00 00 lea rsp, QWORD PTR [rbp+344] 00128 5f pop rdi 00129 5d pop rbp 0012a c3 ret 0 ?_Change_array@?$vector@KV?$allocator@K@std@@@std@@AEAAXQEAK_K1@Z ENDP ; std::vector >::_Change_array _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 ?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z _TEXT SEGMENT _Oldcapacity$ = 8 _Max$ = 40 _Geometric$ = 72 this$ = 320 _Newsize$ = 328 ?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z PROC ; std::vector >::_Calculate_growth, COMDAT ; 1683 : _CONSTEXPR20_CONTAINER size_type _Calculate_growth(const size_type _Newsize) const { $LN5: 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 48 01 00 00 sub rsp, 328 ; 00000148H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1684 : // given _Oldcapacity and _Newsize, calculate geometric growth ; 1685 : const size_type _Oldcapacity = capacity(); 00024 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR this$[rbp] 0002b e8 00 00 00 00 call ?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::capacity 00030 48 89 45 08 mov QWORD PTR _Oldcapacity$[rbp], rax ; 1686 : const auto _Max = max_size(); 00034 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR this$[rbp] 0003b e8 00 00 00 00 call ?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ; std::vector >::max_size 00040 48 89 45 28 mov QWORD PTR _Max$[rbp], rax ; 1687 : ; 1688 : if (_Oldcapacity > _Max - _Oldcapacity / 2) { 00044 33 d2 xor edx, edx 00046 48 8b 45 08 mov rax, QWORD PTR _Oldcapacity$[rbp] 0004a b9 02 00 00 00 mov ecx, 2 0004f 48 f7 f1 div rcx 00052 48 8b 4d 28 mov rcx, QWORD PTR _Max$[rbp] 00056 48 2b c8 sub rcx, rax 00059 48 8b c1 mov rax, rcx 0005c 48 39 45 08 cmp QWORD PTR _Oldcapacity$[rbp], rax 00060 76 06 jbe SHORT $LN2@Calculate_ ; 1689 : return _Max; // geometric growth would overflow 00062 48 8b 45 28 mov rax, QWORD PTR _Max$[rbp] 00066 eb 36 jmp SHORT $LN1@Calculate_ $LN2@Calculate_: ; 1690 : } ; 1691 : ; 1692 : const size_type _Geometric = _Oldcapacity + _Oldcapacity / 2; 00068 33 d2 xor edx, edx 0006a 48 8b 45 08 mov rax, QWORD PTR _Oldcapacity$[rbp] 0006e b9 02 00 00 00 mov ecx, 2 00073 48 f7 f1 div rcx 00076 48 8b 4d 08 mov rcx, QWORD PTR _Oldcapacity$[rbp] 0007a 48 03 c8 add rcx, rax 0007d 48 8b c1 mov rax, rcx 00080 48 89 45 48 mov QWORD PTR _Geometric$[rbp], rax ; 1693 : ; 1694 : if (_Geometric < _Newsize) { 00084 48 8b 85 48 01 00 00 mov rax, QWORD PTR _Newsize$[rbp] 0008b 48 39 45 48 cmp QWORD PTR _Geometric$[rbp], rax 0008f 73 09 jae SHORT $LN3@Calculate_ ; 1695 : return _Newsize; // geometric growth would be insufficient 00091 48 8b 85 48 01 00 00 mov rax, QWORD PTR _Newsize$[rbp] 00098 eb 04 jmp SHORT $LN1@Calculate_ $LN3@Calculate_: ; 1696 : } ; 1697 : ; 1698 : return _Geometric; // geometric growth is sufficient 0009a 48 8b 45 48 mov rax, QWORD PTR _Geometric$[rbp] $LN1@Calculate_: ; 1699 : } 0009e 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 000a5 5f pop rdi 000a6 5d pop rbp 000a7 c3 ret 0 ?_Calculate_growth@?$vector@KV?$allocator@K@std@@@std@@AEBA_K_K@Z ENDP ; std::vector >::_Calculate_growth _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 ?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z _TEXT SEGMENT $T1 = 196 this$ = 256 _First$ = 264 _Last$ = 272 _Dest$ = 280 ?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z PROC ; std::vector >::_Umove_if_noexcept, COMDAT ; 1672 : _CONSTEXPR20_CONTAINER void _Umove_if_noexcept(pointer _First, pointer _Last, pointer _Dest) { $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 18 01 00 00 sub rsp, 280 ; 00000118H 0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1673 : // move_if_noexcept [_First, _Last) to raw _Dest, using allocator ; 1674 : _Umove_if_noexcept1(_First, _Last, _Dest, 0002e 48 8d 85 c4 00 00 00 lea rax, QWORD PTR $T1[rbp] 00035 48 8b f8 mov rdi, rax 00038 33 c0 xor eax, eax 0003a b9 01 00 00 00 mov ecx, 1 0003f f3 aa rep stosb 00041 0f b6 85 c4 00 00 00 movzx eax, BYTE PTR $T1[rbp] 00048 88 44 24 20 mov BYTE PTR [rsp+32], al 0004c 4c 8b 8d 18 01 00 00 mov r9, QWORD PTR _Dest$[rbp] 00053 4c 8b 85 10 01 00 00 mov r8, QWORD PTR _Last$[rbp] 0005a 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _First$[rbp] 00061 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00068 e8 00 00 00 00 call ?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z ; std::vector >::_Umove_if_noexcept1 ; 1675 : bool_constant, negation>>>{}); ; 1676 : } 0006d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00074 5f pop rdi 00075 5d pop rbp 00076 c3 ret 0 ?_Umove_if_noexcept@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00@Z ENDP ; std::vector >::_Umove_if_noexcept _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 ?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z _TEXT SEGMENT this$ = 224 _First$ = 232 _Last$ = 240 _Dest$ = 248 __formal$ = 256 ?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z PROC ; std::vector >::_Umove_if_noexcept1, COMDAT ; 1662 : _CONSTEXPR20_CONTAINER void _Umove_if_noexcept1(pointer _First, pointer _Last, pointer _Dest, true_type) { $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 e8 00 00 00 sub rsp, 232 ; 000000e8H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1663 : // move [_First, _Last) to raw _Dest, using allocator ; 1664 : _Uninitialized_move(_First, _Last, _Dest, _Getal()); 0002e 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00035 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 0003a 4c 8b c8 mov r9, rax 0003d 4c 8b 85 f8 00 00 00 mov r8, QWORD PTR _Dest$[rbp] 00044 48 8b 95 f0 00 00 00 mov rdx, QWORD PTR _Last$[rbp] 0004b 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _First$[rbp] 00052 e8 00 00 00 00 call ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z ; std::_Uninitialized_move > ; 1665 : } 00057 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0005e 5f pop rdi 0005f 5d pop rbp 00060 c3 ret 0 ?_Umove_if_noexcept1@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK00U?$integral_constant@_N$00@2@@Z ENDP ; std::vector >::_Umove_if_noexcept1 _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 ?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z _TEXT SEGMENT this$ = 224 _First$ = 232 _Last$ = 240 _Dest$ = 248 ?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z PROC ; std::vector >::_Umove, COMDAT ; 1657 : _CONSTEXPR20_CONTAINER pointer _Umove(pointer _First, pointer _Last, pointer _Dest) { $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 e8 00 00 00 sub rsp, 232 ; 000000e8H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1658 : // move [_First, _Last) to raw _Dest, using allocator ; 1659 : return _Uninitialized_move(_First, _Last, _Dest, _Getal()); 0002e 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00035 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 0003a 4c 8b c8 mov r9, rax 0003d 4c 8b 85 f8 00 00 00 mov r8, QWORD PTR _Dest$[rbp] 00044 48 8b 95 f0 00 00 00 mov rdx, QWORD PTR _Last$[rbp] 0004b 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _First$[rbp] 00052 e8 00 00 00 00 call ??$_Uninitialized_move@PEAKV?$allocator@K@std@@@std@@YAPEAKQEAK0PEAKAEAV?$allocator@K@0@@Z ; std::_Uninitialized_move > ; 1660 : } 00057 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0005e 5f pop rdi 0005f 5d pop rbp 00060 c3 ret 0 ?_Umove@?$vector@KV?$allocator@K@std@@@std@@AEAAPEAKPEAK00@Z ENDP ; std::vector >::_Umove _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 ?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ _TEXT SEGMENT _My_data$ = 8 this$ = 256 ?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ PROC ; std::vector >::capacity, COMDAT ; 1557 : _NODISCARD _CONSTEXPR20_CONTAINER size_type capacity() const 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 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1558 : auto& _My_data = _Mypair._Myval2; 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1559 : return static_cast(_My_data._Myend - _My_data._Myfirst); 0002a 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 0002e 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00032 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 00036 48 8b 40 18 mov rax, QWORD PTR [rax+24] 0003a 48 2b c1 sub rax, rcx 0003d 48 c1 f8 02 sar rax, 2 ; 1560 : } 00041 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00048 5f pop rdi 00049 5d pop rbp 0004a c3 ret 0 ?capacity@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ENDP ; std::vector >::capacity _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 ?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ _TEXT SEGMENT $T1 = 200 $T2 = 232 this$ = 288 ?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ PROC ; std::vector >::max_size, COMDAT ; 1552 : _NODISCARD _CONSTEXPR20_CONTAINER size_type max_size() const 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 28 01 00 00 sub rsp, 296 ; 00000128H 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 ; 1553 : return (_STD min)( 0001f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEBAAEBV?$allocator@K@2@XZ ; std::vector >::_Getal 0002b 48 8b c8 mov rcx, rax 0002e e8 00 00 00 00 call ?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z ; std::_Default_allocator_traits >::max_size 00033 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 0003a e8 00 00 00 00 call ?max@?$numeric_limits@_J@std@@SA_JXZ ; std::numeric_limits<__int64>::max 0003f 48 89 85 e8 00 00 00 mov QWORD PTR $T2[rbp], rax 00046 48 8d 95 c8 00 00 00 lea rdx, QWORD PTR $T1[rbp] 0004d 48 8d 8d e8 00 00 00 lea rcx, QWORD PTR $T2[rbp] 00054 e8 00 00 00 00 call ??$min@_K@std@@YAAEB_KAEB_K0@Z ; std::min 00059 48 8b 00 mov rax, QWORD PTR [rax] ; 1554 : static_cast((numeric_limits::max)()), _Alty_traits::max_size(_Getal())); ; 1555 : } 0005c 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 00063 5f pop rdi 00064 5d pop rbp 00065 c3 ret 0 ?max_size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ENDP ; std::vector >::max_size _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 ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ _TEXT SEGMENT _My_data$ = 8 this$ = 256 ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ PROC ; std::vector >::size, COMDAT ; 1547 : _NODISCARD _CONSTEXPR20_CONTAINER size_type size() const 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 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1548 : auto& _My_data = _Mypair._Myval2; 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1549 : return static_cast(_My_data._Mylast - _My_data._Myfirst); 0002a 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 0002e 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00032 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 00036 48 8b 40 10 mov rax, QWORD PTR [rax+16] 0003a 48 2b c1 sub rax, rcx 0003d 48 c1 f8 02 sar rax, 2 ; 1550 : } 00041 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00048 5f pop rdi 00049 5d pop rbp 0004a c3 ret 0 ?size@?$vector@KV?$allocator@K@std@@@std@@QEBA_KXZ ENDP ; std::vector >::size _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 ?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ _TEXT SEGMENT this$ = 224 ?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ PROC ; std::vector >::_Unchecked_end, COMDAT ; 1534 : _NODISCARD _CONSTEXPR20_CONTAINER pointer _Unchecked_end() 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 ; 1535 : return _Mypair._Myval2._Mylast; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8b 40 10 mov rax, QWORD PTR [rax+16] ; 1536 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00031 5f pop rdi 00032 5d pop rbp 00033 c3 ret 0 ?_Unchecked_end@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ ENDP ; std::vector >::_Unchecked_end _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 ?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ _TEXT SEGMENT this$ = 224 ?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ PROC ; std::vector >::_Unchecked_begin, COMDAT ; 1526 : _NODISCARD _CONSTEXPR20_CONTAINER pointer _Unchecked_begin() 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 ; 1527 : return _Mypair._Myval2._Myfirst; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8b 40 08 mov rax, QWORD PTR [rax+8] ; 1528 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00031 5f pop rdi 00032 5d pop rbp 00033 c3 ret 0 ?_Unchecked_begin@?$vector@KV?$allocator@K@std@@@std@@QEAAPEAKXZ ENDP ; std::vector >::_Unchecked_begin _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 ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ _TEXT SEGMENT _My_data$ = 8 tv80 = 216 tv78 = 224 this$ = 272 __$ReturnUdt$ = 280 ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ PROC ; std::vector >::end, COMDAT ; 1484 : _NODISCARD _CONSTEXPR20_CONTAINER iterator end() 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 18 01 00 00 sub rsp, 280 ; 00000118H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1485 : auto& _My_data = _Mypair._Myval2; 00024 48 8b 85 10 01 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1486 : return iterator(_My_data._Mylast, _STD addressof(_My_data)); 0002f 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00033 e8 00 00 00 00 call ??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z ; std::addressof > > 00038 48 89 85 d8 00 00 00 mov QWORD PTR tv80[rbp], rax 0003f 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00043 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00047 48 89 85 e0 00 00 00 mov QWORD PTR tv78[rbp], rax 0004e 4c 8b 85 d8 00 00 00 mov r8, QWORD PTR tv80[rbp] 00055 48 8b 95 e0 00 00 00 mov rdx, QWORD PTR tv78[rbp] 0005c 48 8b 8d 18 01 00 00 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 00063 e8 00 00 00 00 call ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z 00068 48 8b 85 18 01 00 00 mov rax, QWORD PTR __$ReturnUdt$[rbp] ; 1487 : } 0006f 48 8d a5 f8 00 00 00 lea rsp, QWORD PTR [rbp+248] 00076 5f pop rdi 00077 5d pop rbp 00078 c3 ret 0 ?end@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ENDP ; std::vector >::end _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 ?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ _TEXT SEGMENT _My_data$ = 8 tv80 = 216 tv78 = 224 this$ = 272 __$ReturnUdt$ = 280 ?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ PROC ; std::vector >::begin, COMDAT ; 1474 : _NODISCARD _CONSTEXPR20_CONTAINER iterator begin() 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 18 01 00 00 sub rsp, 280 ; 00000118H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1475 : auto& _My_data = _Mypair._Myval2; 00024 48 8b 85 10 01 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1476 : return iterator(_My_data._Myfirst, _STD addressof(_My_data)); 0002f 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00033 e8 00 00 00 00 call ??$addressof@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@YAPEAV?$_Vector_val@U?$_Simple_types@K@std@@@0@AEAV10@@Z ; std::addressof > > 00038 48 89 85 d8 00 00 00 mov QWORD PTR tv80[rbp], rax 0003f 48 8b 45 08 mov rax, QWORD PTR _My_data$[rbp] 00043 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00047 48 89 85 e0 00 00 00 mov QWORD PTR tv78[rbp], rax 0004e 4c 8b 85 d8 00 00 00 mov r8, QWORD PTR tv80[rbp] 00055 48 8b 95 e0 00 00 00 mov rdx, QWORD PTR tv78[rbp] 0005c 48 8b 8d 18 01 00 00 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 00063 e8 00 00 00 00 call ??0?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@std@@QEAA@PEAKPEBU_Container_base12@1@@Z 00068 48 8b 85 18 01 00 00 mov rax, QWORD PTR __$ReturnUdt$[rbp] ; 1477 : } 0006f 48 8d a5 f8 00 00 00 lea rsp, QWORD PTR [rbp+248] 00076 5f pop rdi 00077 5d pop rbp 00078 c3 ret 0 ?begin@?$vector@KV?$allocator@K@std@@@std@@QEAA?AV?$_Vector_iterator@V?$_Vector_val@U?$_Simple_types@K@std@@@std@@@2@XZ ENDP ; std::vector >::begin _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 ?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ _TEXT SEGMENT _My_data$ = 8 _Myfirst$ = 40 _Mylast$ = 72 this$ = 320 ?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ PROC ; std::vector >::clear, COMDAT ; 1449 : _CONSTEXPR20_CONTAINER void clear() noexcept { // erase all $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 0d 00 00 00 00 lea rcx, OFFSET FLAT:__092B7E84_vector 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1450 : auto& _My_data = _Mypair._Myval2; 0001f 48 8b 85 40 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 89 45 08 mov QWORD PTR _My_data$[rbp], rax ; 1451 : 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 ; 1452 : 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 ; 1453 : ; 1454 : _My_data._Orphan_all(); 00042 48 8b 4d 08 mov rcx, QWORD PTR _My_data$[rbp] 00046 e8 00 00 00 00 call ?_Orphan_all@_Container_base12@std@@QEAAXXZ ; std::_Container_base12::_Orphan_all ; 1455 : _Destroy(_Myfirst, _Mylast); 0004b 48 8b 45 48 mov rax, QWORD PTR _Mylast$[rbp] 0004f 4c 8b 00 mov r8, QWORD PTR [rax] 00052 48 8b 45 28 mov rax, QWORD PTR _Myfirst$[rbp] 00056 48 8b 10 mov rdx, QWORD PTR [rax] 00059 48 8b 8d 40 01 00 00 mov rcx, QWORD PTR this$[rbp] 00060 e8 00 00 00 00 call ?_Destroy@?$vector@KV?$allocator@K@std@@@std@@AEAAXPEAK0@Z ; std::vector >::_Destroy ; 1456 : _Mylast = _Myfirst; 00065 48 8b 45 48 mov rax, QWORD PTR _Mylast$[rbp] 00069 48 8b 4d 28 mov rcx, QWORD PTR _Myfirst$[rbp] 0006d 48 8b 09 mov rcx, QWORD PTR [rcx] 00070 48 89 08 mov QWORD PTR [rax], rcx ; 1457 : } 00073 48 8d a5 28 01 00 00 lea rsp, QWORD PTR [rbp+296] 0007a 5f pop rdi 0007b 5d pop rbp 0007c c3 ret 0 ?clear@?$vector@KV?$allocator@K@std@@@std@@QEAAXXZ ENDP ; std::vector >::clear _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 ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z _TEXT SEGMENT this$ = 224 _Val$ = 232 ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z PROC ; std::vector >::push_back, COMDAT ; 755 : _CONSTEXPR20_CONTAINER void push_back(const _Ty& _Val) { // insert element at end, provide strong guarantee $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:__092B7E84_vector 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 756 : emplace_back(_Val); 00024 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Val$[rbp] 0002b 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00032 e8 00 00 00 00 call ??$emplace_back@AEBK@?$vector@KV?$allocator@K@std@@@std@@QEAA?A_TAEBK@Z ; std::vector >::emplace_back ; 757 : } 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 ?push_back@?$vector@KV?$allocator@K@std@@@std@@QEAAXAEBK@Z ENDP ; std::vector >::push_back _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 ??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ _TEXT SEGMENT $T1 = 196 $T2 = 228 tv83 = 248 tv69 = 248 this$ = 288 ??0?$vector@KV?$allocator@K@std@@@std@@QEAA@XZ PROC ; std::vector >::vector >, COMDAT ; 476 : : _Mypair(_Zero_then_variadic_args_t{}) { $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 28 01 00 00 sub rsp, 296 ; 00000128H 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 0001f 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 89 85 f8 00 00 00 mov QWORD PTR tv69[rbp], rax 0002d 0f b6 95 c4 00 00 00 movzx edx, BYTE PTR $T1[rbp] 00034 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR tv69[rbp] 0003b e8 00 00 00 00 call ??$?0$$V@?$_Compressed_pair@V?$allocator@K@std@@V?$_Vector_val@U?$_Simple_types@K@std@@@2@$00@std@@QEAA@U_Zero_then_variadic_args_t@1@@Z ; std::_Compressed_pair,std::_Vector_val >,1>::_Compressed_pair,std::_Vector_val >,1><> ; 477 : _Mypair._Myval2._Alloc_proxy(_GET_PROXY_ALLOCATOR(_Alty, _Getal())); 00040 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 00047 48 89 85 f8 00 00 00 mov QWORD PTR tv83[rbp], rax 0004e 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 00055 e8 00 00 00 00 call ?_Getal@?$vector@KV?$allocator@K@std@@@std@@AEAAAEAV?$allocator@K@2@XZ ; std::vector >::_Getal 0005a 48 8b d0 mov rdx, rax 0005d 48 8d 8d e4 00 00 00 lea rcx, QWORD PTR $T2[rbp] 00064 e8 00 00 00 00 call ??$?0K@?$allocator@U_Container_proxy@std@@@std@@QEAA@AEBV?$allocator@K@1@@Z ; std::allocator::allocator 00069 48 8b d0 mov rdx, rax 0006c 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR tv83[rbp] 00073 e8 00 00 00 00 call ??$_Alloc_proxy@V?$allocator@U_Container_proxy@std@@@std@@@_Container_base12@std@@QEAAX$$QEAV?$allocator@U_Container_proxy@std@@@1@@Z ; std::_Container_base12::_Alloc_proxy > ; 478 : } 00078 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 0007f 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 00086 5f pop rdi 00087 5d pop rbp 00088 c3 ret 0 ??0?$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 ?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z _TEXT SEGMENT __formal$ = 224 ?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z PROC ; std::_Default_allocator_traits >::max_size, COMDAT ; 727 : _NODISCARD static _CONSTEXPR20_DYNALLOC size_type max_size(const _Alloc&) 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 ; 728 : return static_cast(-1) / sizeof(value_type); 0001f 48 b8 ff ff ff ff ff ff ff 3f mov rax, 4611686018427387903 ; 3fffffffffffffffH ; 729 : } 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 ?max_size@?$_Default_allocator_traits@V?$allocator@K@std@@@std@@SA_KAEBV?$allocator@K@2@@Z ENDP ; std::_Default_allocator_traits >::max_size _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 ?allocate@?$allocator@K@std@@QEAAPEAK_K@Z _TEXT SEGMENT this$ = 224 _Count$ = 232 ?allocate@?$allocator@K@std@@QEAAPEAK_K@Z PROC ; std::allocator::allocate, COMDAT ; 838 : _NODISCARD _CONSTEXPR20_DYNALLOC __declspec(allocator) _Ty* allocate(_CRT_GUARDOVERFLOW const size_t _Count) { $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 ; 839 : return static_cast<_Ty*>(_Allocate<_New_alignof<_Ty>>(_Get_size_of_n(_Count))); 00024 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Count$[rbp] 0002b e8 00 00 00 00 call ??$_Get_size_of_n@$03@std@@YA_K_K@Z ; std::_Get_size_of_n<4> 00030 48 8b c8 mov rcx, rax 00033 e8 00 00 00 00 call ??$_Allocate@$0BA@U_Default_allocate_traits@std@@$0A@@std@@YAPEAX_K@Z ; std::_Allocate<16,std::_Default_allocate_traits,0> ; 840 : } 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 ?allocate@?$allocator@K@std@@QEAAPEAK_K@Z ENDP ; std::allocator::allocate _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\xmemory ; COMDAT ??0?$allocator@K@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0?$allocator@K@std@@QEAA@XZ PROC ; std::allocator::allocator, COMDAT ; 825 : constexpr allocator() 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 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 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 ??0?$allocator@K@std@@QEAA@XZ ENDP ; std::allocator::allocator _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z _TEXT SEGMENT this$ = 224 __flags$ = 232 ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z PROC ; _NATIVE_CODE_LINK::`scalar deleting destructor', COMDAT $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 e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001e e8 00 00 00 00 call ??1_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::~_NATIVE_CODE_LINK 00023 8b 85 e8 00 00 00 mov eax, DWORD PTR __flags$[rbp] 00029 83 e0 01 and eax, 1 0002c 85 c0 test eax, eax 0002e 74 11 je SHORT $LN2@scalar 00030 ba f0 00 00 00 mov edx, 240 ; 000000f0H 00035 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0003c e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete $LN2@scalar: 00041 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004f 5f pop rdi 00050 5d pop rbp 00051 c3 ret 0 ??_G_NATIVE_CODE_LINK@@QEAAPEAXI@Z ENDP ; _NATIVE_CODE_LINK::`scalar deleting destructor' _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ??1_NATIVE_CODE_LINK@@QEAA@XZ _TEXT SEGMENT $T1 = 200 this$ = 256 ??1_NATIVE_CODE_LINK@@QEAA@XZ PROC ; _NATIVE_CODE_LINK::~_NATIVE_CODE_LINK, COMDAT ; 38 : { $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 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:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 39 : if (RawData) 0001f 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 83 78 20 00 cmp QWORD PTR [rax+32], 0 0002b 74 23 je SHORT $LN2@NATIVE_COD ; 40 : delete RawData; 0002d 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00034 48 8b 40 20 mov rax, QWORD PTR [rax+32] 00038 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 0003f ba 01 00 00 00 mov edx, 1 00044 48 8b 8d c8 00 00 00 mov rcx, QWORD PTR $T1[rbp] 0004b e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete $LN2@NATIVE_COD: ; 41 : } 00050 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00057 5f pop rdi 00058 5d pop rbp 00059 c3 ret 0 ??1_NATIVE_CODE_LINK@@QEAA@XZ ENDP ; _NATIVE_CODE_LINK::~_NATIVE_CODE_LINK _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z _TEXT SEGMENT $T1 = 200 this$ = 256 F$ = 264 Rd$ = 272 Rds$ = 280 Decode$ = 288 ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z PROC ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK, COMDAT ; 25 : { $LN6: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx 0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00013 55 push rbp 00014 57 push rdi 00015 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 0001c 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00021 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 24 : : _NATIVE_CODE_LINK() 0002d 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00034 e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK 00039 90 npad 1 ; 26 : Flags = F; 0003a 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00041 8b 8d 08 01 00 00 mov ecx, DWORD PTR F$[rbp] 00047 89 48 18 mov DWORD PTR [rax+24], ecx ; 27 : RawDataSize = Rds; 0004a 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00051 8b 8d 18 01 00 00 mov ecx, DWORD PTR Rds$[rbp] 00057 89 48 28 mov DWORD PTR [rax+40], ecx ; 28 : RawData = new UCHAR[Rds]; 0005a 8b 85 18 01 00 00 mov eax, DWORD PTR Rds$[rbp] 00060 8b c8 mov ecx, eax 00062 e8 00 00 00 00 call ??_U@YAPEAX_K@Z ; operator new[] 00067 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 0006e 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00075 48 8b 8d c8 00 00 00 mov rcx, QWORD PTR $T1[rbp] 0007c 48 89 48 20 mov QWORD PTR [rax+32], rcx ; 29 : if (Rd) 00080 48 83 bd 10 01 00 00 00 cmp QWORD PTR Rd$[rbp], 0 00088 74 53 je SHORT $LN2@NATIVE_COD ; 30 : { ; 31 : RtlCopyMemory(RawData, Rd, Rds); 0008a 8b 85 18 01 00 00 mov eax, DWORD PTR Rds$[rbp] 00090 44 8b c0 mov r8d, eax 00093 48 8b 95 10 01 00 00 mov rdx, QWORD PTR Rd$[rbp] 0009a 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 000a1 48 8b 48 20 mov rcx, QWORD PTR [rax+32] 000a5 e8 00 00 00 00 call memcpy ; 32 : if (Decode) 000aa 83 bd 20 01 00 00 00 cmp DWORD PTR Decode$[rbp], 0 000b1 74 2a je SHORT $LN2@NATIVE_COD ; 33 : XedDecode(&XedInstruction, RawData, RawDataSize); 000b3 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 000ba 48 83 c0 30 add rax, 48 ; 00000030H 000be 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 000c5 44 8b 41 28 mov r8d, DWORD PTR [rcx+40] 000c9 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 000d0 48 8b 51 20 mov rdx, QWORD PTR [rcx+32] 000d4 48 8b c8 mov rcx, rax 000d7 e8 00 00 00 00 call xed_decode 000dc 90 npad 1 $LN2@NATIVE_COD: ; 34 : } ; 35 : } 000dd 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 000e4 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 000eb 5f pop rdi 000ec 5d pop rbp 000ed c3 ret 0 ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z ENDP ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK _TEXT ENDS ; COMDAT text$x text$x SEGMENT $T1 = 200 this$ = 256 F$ = 264 Rd$ = 272 Rds$ = 280 Decode$ = 288 ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA PROC ; `_NATIVE_CODE_LINK::_NATIVE_CODE_LINK'::`1'::dtor$0 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 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0001b e8 00 00 00 00 call ??1_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::~_NATIVE_CODE_LINK 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA ENDP ; `_NATIVE_CODE_LINK::_NATIVE_CODE_LINK'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT text$x text$x SEGMENT $T1 = 200 this$ = 256 F$ = 264 Rd$ = 272 Rds$ = 280 Decode$ = 288 ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA PROC ; `_NATIVE_CODE_LINK::_NATIVE_CODE_LINK'::`1'::dtor$0 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 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0001b e8 00 00 00 00 call ??1_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::~_NATIVE_CODE_LINK 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 5f pop rdi 00025 5d pop rbp 00026 c3 ret 0 ?dtor$0@?0???0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z@4HA ENDP ; `_NATIVE_CODE_LINK::_NATIVE_CODE_LINK'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z _TEXT SEGMENT this$ = 224 LabelId$ = 232 B$ = 240 ??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z PROC ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK, COMDAT ; 17 : { $LN4: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx 00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000e 55 push rbp 0000f 57 push rdi 00010 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__337731E1_NativeCode@cpp 00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 16 : : _NATIVE_CODE_LINK() 00028 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0002f e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@XZ ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK ; 18 : Block = B; 00034 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003b 48 8b 8d f0 00 00 00 mov rcx, QWORD PTR B$[rbp] 00042 48 89 48 10 mov QWORD PTR [rax+16], rcx ; 19 : Label = LabelId; 00046 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0004d 8b 8d e8 00 00 00 mov ecx, DWORD PTR LabelId$[rbp] 00053 89 48 1c mov DWORD PTR [rax+28], ecx ; 20 : Flags = CODE_FLAG_IS_LABEL; 00056 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0005d c7 40 18 01 00 00 00 mov DWORD PTR [rax+24], 1 ; 21 : } 00064 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0006b 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00072 5f pop rdi 00073 5d pop rbp 00074 c3 ret 0 ??0_NATIVE_CODE_LINK@@QEAA@KPEAU_NATIVE_CODE_BLOCK@@@Z ENDP ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.cpp ; COMDAT ??0_NATIVE_CODE_LINK@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0_NATIVE_CODE_LINK@@QEAA@XZ PROC ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK, COMDAT ; 4 : { $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:__337731E1_NativeCode@cpp 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 5 : XedDecodedInstZero(&XedInstruction); 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 83 c0 30 add rax, 48 ; 00000030H 0002a 48 8b c8 mov rcx, rax 0002d e8 00 00 00 00 call xed_decoded_inst_zero ; 6 : XedDecodedInstSetMode(&XedInstruction, XED_MACHINE_MODE_LONG_64, XED_ADDRESS_WIDTH_64b); 00032 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00039 48 83 c0 30 add rax, 48 ; 00000030H 0003d 41 b8 08 00 00 00 mov r8d, 8 00043 ba 01 00 00 00 mov edx, 1 00048 48 8b c8 mov rcx, rax 0004b e8 00 00 00 00 call xed_decoded_inst_set_mode ; 7 : Flags = 0UL; 00050 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00057 c7 40 18 00 00 00 00 mov DWORD PTR [rax+24], 0 ; 8 : Next = Prev = NULL; 0005e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00065 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 0006d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00074 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 9 : Block = NULL; 0007b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00082 48 c7 40 10 00 00 00 00 mov QWORD PTR [rax+16], 0 ; 10 : Label = 0UL; 0008a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00091 c7 40 1c 00 00 00 00 mov DWORD PTR [rax+28], 0 ; 11 : RawData = NULL; 00098 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0009f 48 c7 40 20 00 00 00 00 mov QWORD PTR [rax+32], 0 ; 12 : RawDataSize = 0UL; 000a7 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 000ae c7 40 28 00 00 00 00 mov DWORD PTR [rax+40], 0 ; 13 : } 000b5 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 000bc 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000c3 5f pop rdi 000c4 5d pop rbp 000c5 c3 ret 0 ??0_NATIVE_CODE_LINK@@QEAA@XZ ENDP ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-decoded-inst-api.h ; COMDAT xed_decoded_inst_get_length _TEXT SEGMENT p$ = 224 xed_decoded_inst_get_length PROC ; COMDAT ; 282 : xed_decoded_inst_get_length(const xed_decoded_inst_t* p) { 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:__0AA8C18B_xed-decoded-inst-api@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 283 : return p->_decoded_length; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 00026 0f b6 80 a6 00 00 00 movzx eax, BYTE PTR [rax+166] ; 284 : } 0002d 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00034 5f pop rdi 00035 5d pop rbp 00036 c3 ret 0 xed_decoded_inst_get_length ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-decoded-inst-api.h ; COMDAT xed_decoded_inst_set_mode _TEXT SEGMENT dstate$ = 8 __$ArrayPad$ = 216 p$ = 256 mmode$ = 264 stack_addr_width$ = 272 xed_decoded_inst_set_mode PROC ; COMDAT ; 259 : { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx 00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000e 55 push rbp 0000f 57 push rdi 00010 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001c 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00021 b9 0a 00 00 00 mov ecx, 10 00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002b f3 ab rep stosd 0002d 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR [rsp+296] 00035 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 0003c 48 33 c5 xor rax, rbp 0003f 48 89 85 d8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00046 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__0AA8C18B_xed-decoded-inst-api@h 0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 260 : xed_state_t dstate; ; 261 : dstate.mmode = mmode; 00052 8b 85 08 01 00 00 mov eax, DWORD PTR mmode$[rbp] 00058 89 45 08 mov DWORD PTR dstate$[rbp], eax ; 262 : dstate.stack_addr_width = stack_addr_width; 0005b 8b 85 10 01 00 00 mov eax, DWORD PTR stack_addr_width$[rbp] 00061 89 45 0c mov DWORD PTR dstate$[rbp+4], eax ; 263 : xed_operand_values_set_mode(p, &dstate); 00064 48 8d 55 08 lea rdx, QWORD PTR dstate$[rbp] 00068 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR p$[rbp] 0006f e8 00 00 00 00 call xed_operand_values_set_mode ; 264 : } 00074 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 00078 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:xed_decoded_inst_set_mode$rtcFrameData 0007f e8 00 00 00 00 call _RTC_CheckStackVars 00084 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 0008b 48 33 cd xor rcx, rbp 0008e e8 00 00 00 00 call __security_check_cookie 00093 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 0009a 5f pop rdi 0009b 5d pop rbp 0009c c3 ret 0 xed_decoded_inst_set_mode ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-decoded-inst-api.h ; COMDAT xed_decoded_inst_noperands _TEXT SEGMENT noperands$ = 4 p$ = 256 xed_decoded_inst_noperands PROC ; COMDAT ; 170 : xed_decoded_inst_noperands(const xed_decoded_inst_t* p) { 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:__0AA8C18B_xed-decoded-inst-api@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 171 : unsigned int noperands = xed_inst_noperands(xed_decoded_inst_inst(p)); 0001f 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR p$[rbp] 00026 e8 00 00 00 00 call xed_decoded_inst_inst 0002b 48 8b c8 mov rcx, rax 0002e e8 00 00 00 00 call xed_inst_noperands 00033 89 45 04 mov DWORD PTR noperands$[rbp], eax ; 172 : return noperands; 00036 8b 45 04 mov eax, DWORD PTR noperands$[rbp] ; 173 : } 00039 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00040 5f pop rdi 00041 5d pop rbp 00042 c3 ret 0 xed_decoded_inst_noperands ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-decoded-inst-api.h ; COMDAT xed_decoded_inst_get_iclass _TEXT SEGMENT p$ = 224 xed_decoded_inst_get_iclass PROC ; COMDAT ; 75 : xed_decoded_inst_get_iclass( const xed_decoded_inst_t* p){ 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:__0AA8C18B_xed-decoded-inst-api@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN4@xed_decode: ; 76 : xed_assert(p->_inst != 0); 0001f 33 c0 xor eax, eax 00021 85 c0 test eax, eax 00023 75 fa jne SHORT $LN4@xed_decode ; 77 : return xed_inst_iclass(p->_inst); 00025 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 0002c 48 8b 88 a8 00 00 00 mov rcx, QWORD PTR [rax+168] 00033 e8 00 00 00 00 call xed_inst_iclass ; 78 : } 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 xed_decoded_inst_get_iclass ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-decoded-inst-api.h ; COMDAT xed_decoded_inst_get_category _TEXT SEGMENT p$ = 224 xed_decoded_inst_get_category PROC ; COMDAT ; 54 : xed_decoded_inst_get_category(const xed_decoded_inst_t* p) { 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:__0AA8C18B_xed-decoded-inst-api@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode $LN4@xed_decode: ; 55 : xed_assert(p->_inst != 0); 0001f 33 c0 xor eax, eax 00021 85 c0 test eax, eax 00023 75 fa jne SHORT $LN4@xed_decode ; 56 : return xed_inst_category(p->_inst); 00025 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 0002c 48 8b 88 a8 00 00 00 mov rcx, QWORD PTR [rax+168] 00033 e8 00 00 00 00 call xed_inst_category ; 57 : } 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 xed_decoded_inst_get_category ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-decoded-inst-api.h ; COMDAT xed_decoded_inst_inst _TEXT SEGMENT p$ = 224 xed_decoded_inst_inst PROC ; COMDAT ; 46 : xed_decoded_inst_inst( const xed_decoded_inst_t* p) { 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:__0AA8C18B_xed-decoded-inst-api@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 47 : return p->_inst; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 00026 48 8b 80 a8 00 00 00 mov rax, QWORD PTR [rax+168] ; 48 : } 0002d 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00034 5f pop rdi 00035 5d pop rbp 00036 c3 ret 0 xed_decoded_inst_inst ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-encoder-hl.h ; COMDAT xed_inst1 _TEXT SEGMENT inst$ = 224 mode$ = 232 iclass$ = 240 effective_operand_width$ = 248 op0$ = 256 xed_inst1 PROC ; COMDAT ; 490 : xed_encoder_operand_t op0) { 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 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 56 push rsi 00016 57 push rdi 00017 48 81 ec e0 00 00 00 sub rsp, 224 ; 000000e0H 0001e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00023 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1C89993E_xed-encoder-hl@h 0002a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 491 : ; 492 : inst->mode=mode; 0002f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR inst$[rbp] 00036 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR mode$[rbp] 0003d 48 89 08 mov QWORD PTR [rax], rcx ; 493 : inst->iclass = iclass; 00040 48 8b 85 e0 00 00 00 mov rax, QWORD PTR inst$[rbp] 00047 8b 8d f0 00 00 00 mov ecx, DWORD PTR iclass$[rbp] 0004d 89 48 08 mov DWORD PTR [rax+8], ecx ; 494 : inst->effective_operand_width = effective_operand_width; 00050 48 8b 85 e0 00 00 00 mov rax, QWORD PTR inst$[rbp] 00057 8b 8d f8 00 00 00 mov ecx, DWORD PTR effective_operand_width$[rbp] 0005d 89 48 0c mov DWORD PTR [rax+12], ecx ; 495 : inst->effective_address_width = 0; 00060 48 8b 85 e0 00 00 00 mov rax, QWORD PTR inst$[rbp] 00067 c7 40 10 00 00 00 00 mov DWORD PTR [rax+16], 0 ; 496 : inst->prefixes.i = 0; 0006e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR inst$[rbp] 00075 c7 40 14 00 00 00 00 mov DWORD PTR [rax+20], 0 ; 497 : inst->operands[0] = op0; 0007c b8 30 00 00 00 mov eax, 48 ; 00000030H 00081 48 6b c0 00 imul rax, rax, 0 00085 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR inst$[rbp] 0008c 48 8d 7c 01 20 lea rdi, QWORD PTR [rcx+rax+32] 00091 48 8b b5 00 01 00 00 mov rsi, QWORD PTR op0$[rbp] 00098 b9 30 00 00 00 mov ecx, 48 ; 00000030H 0009d f3 a4 rep movsb ; 498 : inst->noperands = 1; 0009f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR inst$[rbp] 000a6 c7 40 18 01 00 00 00 mov DWORD PTR [rax+24], 1 ; 499 : } 000ad 48 8d a5 c0 00 00 00 lea rsp, QWORD PTR [rbp+192] 000b4 5f pop rdi 000b5 5e pop rsi 000b6 5d pop rbp 000b7 c3 ret 0 xed_inst1 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-encoder-hl.h ; COMDAT xed_relbr _TEXT SEGMENT o$ = 8 __$ArrayPad$ = 264 $T4 = 304 brdisp$ = 312 width_bits$ = 320 xed_relbr PROC ; COMDAT ; 105 : xed_uint_t width_bits) { 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx 00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000e 55 push rbp 0000f 56 push rsi 00010 57 push rdi 00011 48 81 ec 30 01 00 00 sub rsp, 304 ; 00000130H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00022 b9 14 00 00 00 mov ecx, 20 00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002c f3 ab rep stosd 0002e 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR [rsp+344] 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 08 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00047 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1C89993E_xed-encoder-hl@h 0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 106 : xed_encoder_operand_t o; ; 107 : o.type = XED_ENCODER_OPERAND_TYPE_BRDISP; 00053 c7 45 08 01 00 00 00 mov DWORD PTR o$[rbp], 1 ; 108 : o.u.brdisp = brdisp; 0005a 8b 85 38 01 00 00 mov eax, DWORD PTR brdisp$[rbp] 00060 89 45 10 mov DWORD PTR o$[rbp+8], eax ; 109 : o.width_bits = width_bits; 00063 8b 85 40 01 00 00 mov eax, DWORD PTR width_bits$[rbp] 00069 89 45 30 mov DWORD PTR o$[rbp+40], eax ; 110 : return o; 0006c 48 8d 45 08 lea rax, QWORD PTR o$[rbp] 00070 48 8b bd 30 01 00 00 mov rdi, QWORD PTR $T4[rbp] 00077 48 8b f0 mov rsi, rax 0007a b9 30 00 00 00 mov ecx, 48 ; 00000030H 0007f f3 a4 rep movsb 00081 48 8b 85 30 01 00 00 mov rax, QWORD PTR $T4[rbp] ; 111 : } 00088 48 8b f8 mov rdi, rax 0008b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0008f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:xed_relbr$rtcFrameData 00096 e8 00 00 00 00 call _RTC_CheckStackVars 0009b 48 8b c7 mov rax, rdi 0009e 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 000a5 48 33 cd xor rcx, rbp 000a8 e8 00 00 00 00 call __security_check_cookie 000ad 48 8d a5 10 01 00 00 lea rsp, QWORD PTR [rbp+272] 000b4 5f pop rdi 000b5 5e pop rsi 000b6 5d pop rbp 000b7 c3 ret 0 xed_relbr ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-inst.h ; COMDAT xed_inst_noperands _TEXT SEGMENT p$ = 224 xed_inst_noperands PROC ; COMDAT ; 312 : static XED_INLINE unsigned int xed_inst_noperands(const xed_inst_t* p) { 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:__F5B5218E_xed-inst@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 313 : return p->_noperands; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 00026 0f b6 00 movzx eax, BYTE PTR [rax] ; 314 : } 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 xed_inst_noperands ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-inst.h ; COMDAT xed_inst_category _TEXT SEGMENT p$ = 224 xed_inst_category PROC ; COMDAT ; 297 : static XED_INLINE xed_category_enum_t xed_inst_category(const xed_inst_t* p) { 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:__F5B5218E_xed-inst@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 298 : return xed_iform_to_category(xed_inst_iform_enum(p)); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR p$[rbp] 00026 e8 00 00 00 00 call xed_inst_iform_enum 0002b 8b c8 mov ecx, eax 0002d e8 00 00 00 00 call xed_iform_to_category ; 299 : } 00032 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00039 5f pop rdi 0003a 5d pop rbp 0003b c3 ret 0 xed_inst_category ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-inst.h ; COMDAT xed_inst_iclass _TEXT SEGMENT p$ = 224 xed_inst_iclass PROC ; COMDAT ; 293 : static XED_INLINE xed_iclass_enum_t xed_inst_iclass(const xed_inst_t* p) { 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:__F5B5218E_xed-inst@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 294 : return xed_iform_to_iclass(xed_inst_iform_enum(p)); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR p$[rbp] 00026 e8 00 00 00 00 call xed_inst_iform_enum 0002b 8b c8 mov ecx, eax 0002d e8 00 00 00 00 call xed_iform_to_iclass ; 295 : } 00032 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00039 5f pop rdi 0003a 5d pop rbp 0003b c3 ret 0 xed_inst_iclass ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-inst.h ; COMDAT xed_inst_iform_enum _TEXT SEGMENT p$ = 224 xed_inst_iform_enum PROC ; COMDAT ; 289 : static XED_INLINE xed_iform_enum_t xed_inst_iform_enum(const xed_inst_t* p) { 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:__F5B5218E_xed-inst@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 290 : return (xed_iform_enum_t)p->_iform_enum; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 00026 0f b7 40 06 movzx eax, WORD PTR [rax+6] ; 291 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00031 5f pop rdi 00032 5d pop rbp 00033 c3 ret 0 xed_inst_iform_enum ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-inst.h ; COMDAT xed_operand_type _TEXT SEGMENT p$ = 224 xed_operand_type PROC ; COMDAT ; 96 : xed_operand_type(const xed_operand_t* p) { 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:__F5B5218E_xed-inst@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 97 : return (xed_operand_type_enum_t)p->_type; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR p$[rbp] 00026 0f b6 40 04 movzx eax, BYTE PTR [rax+4] ; 98 : } 0002a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00031 5f pop rdi 00032 5d pop rbp 00033 c3 ret 0 xed_operand_type ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\build\obj\wkit\include\xed\xed-iform-map.h ; COMDAT xed_iform_to_iclass _TEXT SEGMENT ii$ = 8 iform$ = 256 xed_iform_to_iclass PROC ; COMDAT ; 74 : XED_INLINE xed_iclass_enum_t xed_iform_to_iclass(xed_iform_enum_t iform) { 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp 00005 57 push rdi 00006 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00012 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__F79B480A_xed-iform-map@h 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 75 : const xed_iform_info_t* ii = xed_iform_map(iform); 0001e 8b 8d 00 01 00 00 mov ecx, DWORD PTR iform$[rbp] 00024 e8 00 00 00 00 call xed_iform_map 00029 48 89 45 08 mov QWORD PTR ii$[rbp], rax ; 76 : if (ii) 0002d 48 83 7d 08 00 cmp QWORD PTR ii$[rbp], 0 00032 74 0d je SHORT $LN2@xed_iform_ ; 77 : return (xed_iclass_enum_t) ii->iclass; 00034 48 8b 45 08 mov rax, QWORD PTR ii$[rbp] 00038 8b 00 mov eax, DWORD PTR [rax] 0003a 25 ff ff 00 00 and eax, 65535 ; 0000ffffH 0003f eb 02 jmp SHORT $LN1@xed_iform_ $LN2@xed_iform_: ; 78 : return XED_ICLASS_INVALID; 00041 33 c0 xor eax, eax $LN1@xed_iform_: ; 79 : } 00043 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 0004a 5f pop rdi 0004b 5d pop rbp 0004c c3 ret 0 xed_iform_to_iclass 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\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\ios ; COMDAT ?hex@std@@YAAEAVios_base@1@AEAV21@@Z _TEXT SEGMENT _Iosbase$ = 224 ?hex@std@@YAAEAVios_base@1@AEAV21@@Z PROC ; std::hex, COMDAT ; 206 : inline ios_base& __CLRCALL_OR_CDECL hex(ios_base& _Iosbase) { // set basefield to hex $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:__FD1AE8DD_ios 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 207 : _Iosbase.setf(ios_base::hex, ios_base::basefield); 0001f 41 b8 00 0e 00 00 mov r8d, 3584 ; 00000e00H 00025 ba 00 08 00 00 mov edx, 2048 ; 00000800H 0002a 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Iosbase$[rbp] 00031 ff 15 00 00 00 00 call QWORD PTR __imp_?setf@ios_base@std@@QEAAHHH@Z ; 208 : return _Iosbase; 00037 48 8b 85 e0 00 00 00 mov rax, QWORD PTR _Iosbase$[rbp] ; 209 : } 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 ?hex@std@@YAAEAVios_base@1@AEAV21@@Z ENDP ; std::hex _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)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xstring ; COMDAT ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ _TEXT SEGMENT ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ PROC ; std::_Narrow_char_traits::eof, COMDAT ; 477 : _NODISCARD static constexpr int_type eof() noexcept { $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:__A9EB37C6_xstring 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 478 : return static_cast(EOF); 0001b b8 ff ff ff ff mov eax, -1 ; 479 : } 00020 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00027 5f pop rdi 00028 5d pop rbp 00029 c3 ret 0 ?eof@?$_Narrow_char_traits@DH@std@@SAHXZ ENDP ; std::_Narrow_char_traits::eof _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\xstring ; COMDAT ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z _TEXT SEGMENT tv65 = 192 _Left$ = 240 _Right$ = 248 ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z PROC ; std::_Narrow_char_traits::eq_int_type, COMDAT ; 469 : _NODISCARD static constexpr bool eq_int_type(const int_type& _Left, const int_type& _Right) noexcept { $LN5: 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 f8 00 00 00 sub rsp, 248 ; 000000f8H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__A9EB37C6_xstring 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 470 : return _Left == _Right; 00024 48 8b 85 f0 00 00 00 mov rax, QWORD PTR _Left$[rbp] 0002b 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR _Right$[rbp] 00032 8b 09 mov ecx, DWORD PTR [rcx] 00034 39 08 cmp DWORD PTR [rax], ecx 00036 75 0c jne SHORT $LN3@eq_int_typ 00038 c7 85 c0 00 00 00 01 00 00 00 mov DWORD PTR tv65[rbp], 1 00042 eb 0a jmp SHORT $LN4@eq_int_typ $LN3@eq_int_typ: 00044 c7 85 c0 00 00 00 00 00 00 00 mov DWORD PTR tv65[rbp], 0 $LN4@eq_int_typ: 0004e 0f b6 85 c0 00 00 00 movzx eax, BYTE PTR tv65[rbp] ; 471 : } 00055 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 0005c 5f pop rdi 0005d 5d pop rbp 0005e c3 ret 0 ?eq_int_type@?$_Narrow_char_traits@DH@std@@SA_NAEBH0@Z ENDP ; std::_Narrow_char_traits::eq_int_type _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\xutility ; COMDAT ??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z _TEXT SEGMENT $T1 = 200 tv80 = 216 _Obj$ = 256 <_Args_0>$ = 264 ??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z PROC ; std::_Construct_in_place, COMDAT ; 151 : is_nothrow_constructible_v<_Ty, _Types...>) { $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:__7CE971A6_xutility 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00024 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR _Obj$[rbp] 0002b e8 00 00 00 00 call ??$addressof@U_Container_proxy@std@@@std@@YAPEAU_Container_proxy@0@AEAU10@@Z ; std::addressof 00030 48 8b c8 mov rcx, rax 00033 e8 00 00 00 00 call ??$_Voidify_iter@PEAU_Container_proxy@std@@@std@@YAPEAXPEAU_Container_proxy@0@@Z ; std::_Voidify_iter 00038 48 8b d0 mov rdx, rax 0003b b9 10 00 00 00 mov ecx, 16 00040 e8 00 00 00 00 call ??2@YAPEAX_KPEAX@Z ; operator new 00045 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 0004c 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR <_Args_0>$[rbp] 00053 e8 00 00 00 00 call ??$forward@PEAU_Container_base12@std@@@std@@YA$$QEAPEAU_Container_base12@0@AEAPEAU10@@Z ; std::forward 00058 48 8b 00 mov rax, QWORD PTR [rax] 0005b 48 89 85 d8 00 00 00 mov QWORD PTR tv80[rbp], rax 00062 48 8b 95 d8 00 00 00 mov rdx, QWORD PTR tv80[rbp] 00069 48 8b 8d c8 00 00 00 mov rcx, QWORD PTR $T1[rbp] 00070 e8 00 00 00 00 call ??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z ; std::_Container_proxy::_Container_proxy ; 152 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 153 : if (_STD is_constant_evaluated()) { ; 154 : _STD construct_at(_STD addressof(_Obj), _STD forward<_Types>(_Args)...); ; 155 : } else ; 156 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 157 : { ; 158 : ::new (_Voidify_iter(_STD addressof(_Obj))) _Ty(_STD forward<_Types>(_Args)...); ; 159 : } ; 160 : } 00075 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 0007c 5f pop rdi 0007d 5d pop rbp 0007e c3 ret 0 ??$_Construct_in_place@U_Container_proxy@std@@PEAU_Container_base12@2@@std@@YAXAEAU_Container_proxy@0@$$QEAPEAU_Container_base12@0@@Z ENDP ; std::_Construct_in_place _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_me_locked@_Iterator_base12@std@@AEAAXXZ _TEXT SEGMENT _Lock$ = 4 __$ArrayPad$ = 216 this$ = 256 ?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ PROC ; std::_Iterator_base12::_Orphan_me_locked, COMDAT ; 1212 : void _Orphan_me_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 ; 1213 : _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 ; 1214 : _Orphan_me_unlocked(); 00058 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0005f e8 00 00 00 00 call ?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ ; std::_Iterator_base12::_Orphan_me_unlocked ; 1215 : } 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_me_locked@_Iterator_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_me_locked@_Iterator_base12@std@@AEAAXXZ ENDP ; std::_Iterator_base12::_Orphan_me_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_me_unlocked@_Iterator_base12@std@@AEAAXXZ _TEXT SEGMENT _Pnext$ = 8 _Temp$1 = 40 this$ = 288 ?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ PROC ; std::_Iterator_base12::_Orphan_me_unlocked, COMDAT ; 1200 : _CONSTEXPR20_CONTAINER void _Orphan_me_unlocked() noexcept { $LN14: 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:__DD38B15A_xmemory 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1201 : _Iterator_base12** _Pnext = &_Myproxy->_Myfirstiter; 0001f 48 8b 85 20 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$[rbp], rax $LN2@Orphan_me_: ; 1202 : while (*_Pnext && *_Pnext != this) { 00031 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 00035 48 83 38 00 cmp QWORD PTR [rax], 0 00039 74 29 je SHORT $LN6@Orphan_me_ 0003b 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 0003f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 00046 48 39 08 cmp QWORD PTR [rax], rcx 00049 74 19 je SHORT $LN6@Orphan_me_ ; 1203 : const auto _Temp = *_Pnext; // TRANSITION, VSO-1269037 0004b 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 0004f 48 8b 00 mov rax, QWORD PTR [rax] 00052 48 89 45 28 mov QWORD PTR _Temp$1[rbp], rax ; 1204 : _Pnext = &_Temp->_Mynextiter; 00056 48 8b 45 28 mov rax, QWORD PTR _Temp$1[rbp] 0005a 48 83 c0 08 add rax, 8 0005e 48 89 45 08 mov QWORD PTR _Pnext$[rbp], rax ; 1205 : } 00062 eb cd jmp SHORT $LN2@Orphan_me_ $LN6@Orphan_me_: ; 1206 : ; 1207 : _STL_VERIFY(*_Pnext, "ITERATOR LIST CORRUPTED!"); 00064 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 00068 48 83 38 00 cmp QWORD PTR [rax], 0 0006c 74 02 je SHORT $LN9@Orphan_me_ 0006e eb 6b jmp SHORT $LN11@Orphan_me_ $LN9@Orphan_me_: 00070 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BJ@LFDBABJJ@ITERATOR?5LIST?5CORRUPTED?$CB@ 00077 48 89 44 24 28 mov QWORD PTR [rsp+40], rax 0007c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_02DKCKIIND@?$CFs@ 00083 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 00088 45 33 c9 xor r9d, r9d 0008b 41 b8 b7 04 00 00 mov r8d, 1207 ; 000004b7H 00091 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0GI@KDIDHNIL@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ 00098 b9 02 00 00 00 mov ecx, 2 0009d ff 15 00 00 00 00 call QWORD PTR __imp__CrtDbgReport 000a3 83 f8 01 cmp eax, 1 000a6 75 03 jne SHORT $LN13@Orphan_me_ 000a8 cc int 3 000a9 33 c0 xor eax, eax $LN13@Orphan_me_: 000ab 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 000b4 41 b9 b7 04 00 00 mov r9d, 1207 ; 000004b7H 000ba 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@ 000c1 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1FG@EMKODCE@?$AAs?$AAt?$AAd?$AA?3?$AA?3?$AA_?$AAI?$AAt?$AAe?$AAr?$AAa?$AAt?$AAo?$AAr?$AA_@ 000c8 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1DG@PLBPCAEM@?$AA?$CC?$AAI?$AAT?$AAE?$AAR?$AAA?$AAT?$AAO?$AAR?$AA?5?$AAL?$AAI?$AAS?$AAT?$AA?5@ 000cf ff 15 00 00 00 00 call QWORD PTR __imp__invalid_parameter 000d5 33 c0 xor eax, eax 000d7 85 c0 test eax, eax 000d9 75 95 jne SHORT $LN9@Orphan_me_ $LN11@Orphan_me_: 000db 33 c0 xor eax, eax 000dd 85 c0 test eax, eax 000df 75 83 jne SHORT $LN6@Orphan_me_ ; 1208 : *_Pnext = _Mynextiter; 000e1 48 8b 45 08 mov rax, QWORD PTR _Pnext$[rbp] 000e5 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 000ec 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 000f0 48 89 08 mov QWORD PTR [rax], rcx ; 1209 : _Myproxy = nullptr; 000f3 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 000fa 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1210 : } 00101 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 00108 5f pop rdi 00109 5d pop rbp 0010a c3 ret 0 ?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ ENDP ; std::_Iterator_base12::_Orphan_me_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 ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z _TEXT SEGMENT _Lock$ = 4 __$ArrayPad$ = 216 this$ = 256 _Parent_proxy$ = 264 ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z PROC ; std::_Iterator_base12::_Adopt_locked, COMDAT ; 1195 : void _Adopt_locked(_Container_proxy* _Parent_proxy) 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 08 01 00 00 sub rsp, 264 ; 00000108H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 0001d b9 0a 00 00 00 mov ecx, 10 00022 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00027 f3 ab rep stosd 00029 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR [rsp+296] 00031 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00038 48 33 c5 xor rax, rbp 0003b 48 89 85 d8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00042 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__DD38B15A_xmemory 00049 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1196 : _Lockit _Lock(_LOCK_DEBUG); 0004e ba 03 00 00 00 mov edx, 3 00053 48 8d 4d 04 lea rcx, QWORD PTR _Lock$[rbp] 00057 ff 15 00 00 00 00 call QWORD PTR __imp_??0_Lockit@std@@QEAA@H@Z ; 1197 : _Adopt_unlocked(_Parent_proxy); 0005d 48 8b 95 08 01 00 00 mov rdx, QWORD PTR _Parent_proxy$[rbp] 00064 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 0006b e8 00 00 00 00 call ?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z ; std::_Iterator_base12::_Adopt_unlocked ; 1198 : } 00070 48 8d 4d 04 lea rcx, QWORD PTR _Lock$[rbp] 00074 ff 15 00 00 00 00 call QWORD PTR __imp_??1_Lockit@std@@QEAA@XZ 0007a 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0007e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z$rtcFrameData 00085 e8 00 00 00 00 call _RTC_CheckStackVars 0008a 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00091 48 33 cd xor rcx, rbp 00094 e8 00 00 00 00 call __security_check_cookie 00099 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 000a0 5f pop rdi 000a1 5d pop rbp 000a2 c3 ret 0 ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z ENDP ; std::_Iterator_base12::_Adopt_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 ?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z _TEXT SEGMENT this$ = 224 _Parent_proxy$ = 232 ?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z PROC ; std::_Iterator_base12::_Adopt_unlocked, COMDAT ; 1186 : _CONSTEXPR20_CONTAINER void _Adopt_unlocked(_Container_proxy* _Parent_proxy) 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 ; 1187 : if (_Myproxy) { // adopted, remove self from list 00024 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 83 38 00 cmp QWORD PTR [rax], 0 0002f 74 0c je SHORT $LN2@Adopt_unlo ; 1188 : _Orphan_me_unlocked(); 00031 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00038 e8 00 00 00 00 call ?_Orphan_me_unlocked@_Iterator_base12@std@@AEAAXXZ ; std::_Iterator_base12::_Orphan_me_unlocked $LN2@Adopt_unlo: ; 1189 : } ; 1190 : _Mynextiter = _Parent_proxy->_Myfirstiter; 0003d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00044 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Parent_proxy$[rbp] 0004b 48 8b 49 08 mov rcx, QWORD PTR [rcx+8] 0004f 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 1191 : _Parent_proxy->_Myfirstiter = this; 00053 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Parent_proxy$[rbp] 0005a 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00061 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 1192 : _Myproxy = _Parent_proxy; 00065 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0006c 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Parent_proxy$[rbp] 00073 48 89 08 mov QWORD PTR [rax], rcx ; 1193 : } 00076 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0007d 5f pop rdi 0007e 5d pop rbp 0007f c3 ret 0 ?_Adopt_unlocked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z ENDP ; std::_Iterator_base12::_Adopt_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 ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ _TEXT SEGMENT tv68 = 192 this$ = 240 ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ PROC ; std::_Iterator_base12::_Getcont, COMDAT ; 1175 : _CONSTEXPR20_CONTAINER const _Container_base12* _Getcont() const noexcept { $LN5: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec f8 00 00 00 sub rsp, 248 ; 000000f8H 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 ; 1176 : return _Myproxy ? _Myproxy->_Mycont : nullptr; 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 83 38 00 cmp QWORD PTR [rax], 0 0002a 74 16 je SHORT $LN3@Getcont 0002c 48 8b 85 f0 00 00 00 mov rax, QWORD PTR this$[rbp] 00033 48 8b 00 mov rax, QWORD PTR [rax] 00036 48 8b 00 mov rax, QWORD PTR [rax] 00039 48 89 85 c0 00 00 00 mov QWORD PTR tv68[rbp], rax 00040 eb 0b jmp SHORT $LN4@Getcont $LN3@Getcont: 00042 48 c7 85 c0 00 00 00 00 00 00 00 mov QWORD PTR tv68[rbp], 0 $LN4@Getcont: 0004d 48 8b 85 c0 00 00 00 mov rax, QWORD PTR tv68[rbp] ; 1177 : } 00054 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 0005b 5f pop rdi 0005c 5d pop rbp 0005d c3 ret 0 ?_Getcont@_Iterator_base12@std@@QEBAPEBU_Container_base12@2@XZ ENDP ; std::_Iterator_base12::_Getcont _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_me_v2@_Iterator_base12@std@@QEAAXXZ _TEXT SEGMENT this$ = 224 ?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ PROC ; std::_Iterator_base12::_Orphan_me_v2, COMDAT ; 1152 : _CONSTEXPR20_CONTAINER void _Orphan_me_v2() 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 ; 1153 : if (_Myproxy) { // adopted, remove self from list 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_me_ ; 1154 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1155 : if (_STD is_constant_evaluated()) { ; 1156 : _Orphan_me_unlocked(); ; 1157 : } else ; 1158 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1159 : { ; 1160 : _Orphan_me_locked(); 0002c 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00033 e8 00 00 00 00 call ?_Orphan_me_locked@_Iterator_base12@std@@AEAAXXZ ; std::_Iterator_base12::_Orphan_me_locked $LN2@Orphan_me_: ; 1161 : } ; 1162 : } ; 1163 : } 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_me_v2@_Iterator_base12@std@@QEAAXXZ ENDP ; std::_Iterator_base12::_Orphan_me_v2 _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 ?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z _TEXT SEGMENT _Parent_proxy$1 = 8 this$ = 256 _Parent$ = 264 ?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z PROC ; std::_Iterator_base12::_Adopt, COMDAT ; 1134 : _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept { $LN6: 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:__DD38B15A_xmemory 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 1135 : if (_Parent) { // have a parent, do adoption 00024 48 83 bd 08 01 00 00 00 cmp QWORD PTR _Parent$[rbp], 0 0002c 74 30 je SHORT $LN2@Adopt ; 1136 : _Container_proxy* _Parent_proxy = _Parent->_Myproxy; 0002e 48 8b 85 08 01 00 00 mov rax, QWORD PTR _Parent$[rbp] 00035 48 8b 00 mov rax, QWORD PTR [rax] 00038 48 89 45 08 mov QWORD PTR _Parent_proxy$1[rbp], rax ; 1137 : if (_Myproxy != _Parent_proxy) { // change parentage 0003c 48 8b 85 00 01 00 00 mov rax, QWORD PTR this$[rbp] 00043 48 8b 4d 08 mov rcx, QWORD PTR _Parent_proxy$1[rbp] 00047 48 39 08 cmp QWORD PTR [rax], rcx 0004a 74 10 je SHORT $LN4@Adopt ; 1138 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1139 : if (_STD is_constant_evaluated()) { ; 1140 : _Adopt_unlocked(_Parent_proxy); ; 1141 : } else ; 1142 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1143 : { ; 1144 : _Adopt_locked(_Parent_proxy); 0004c 48 8b 55 08 mov rdx, QWORD PTR _Parent_proxy$1[rbp] 00050 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00057 e8 00 00 00 00 call ?_Adopt_locked@_Iterator_base12@std@@AEAAXPEAU_Container_proxy@2@@Z ; std::_Iterator_base12::_Adopt_locked $LN4@Adopt: ; 1145 : } ; 1146 : } ; 1147 : } else { // no future parent, just disown current parent 0005c eb 0c jmp SHORT $LN3@Adopt $LN2@Adopt: ; 1148 : _Orphan_me_v2(); 0005e 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR this$[rbp] 00065 e8 00 00 00 00 call ?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ ; std::_Iterator_base12::_Orphan_me_v2 $LN3@Adopt: ; 1149 : } ; 1150 : } 0006a 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00071 5f pop rdi 00072 5d pop rbp 00073 c3 ret 0 ?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z ENDP ; std::_Iterator_base12::_Adopt _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 ??1_Iterator_base12@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??1_Iterator_base12@std@@QEAA@XZ PROC ; std::_Iterator_base12::~_Iterator_base12, COMDAT ; 1130 : _CONSTEXPR20_CONTAINER ~_Iterator_base12() 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 ; 1131 : _Orphan_me_v2(); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ ; std::_Iterator_base12::_Orphan_me_v2 ; 1132 : } 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 ??1_Iterator_base12@std@@QEAA@XZ ENDP ; std::_Iterator_base12::~_Iterator_base12 _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 ??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z _TEXT SEGMENT this$ = 224 _Right$ = 232 ??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z PROC ; std::_Iterator_base12::operator=, COMDAT ; 1114 : _CONSTEXPR20_CONTAINER _Iterator_base12& operator=(const _Iterator_base12& _Right) noexcept { $LN6: 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 ; 1115 : if (_Myproxy != _Right._Myproxy) { 00024 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Right$[rbp] 00032 48 8b 09 mov rcx, QWORD PTR [rcx] 00035 48 39 08 cmp QWORD PTR [rax], rcx 00038 74 34 je SHORT $LN2@operator ; 1116 : if (_Right._Myproxy) { 0003a 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Right$[rbp] 00041 48 83 38 00 cmp QWORD PTR [rax], 0 00045 74 1b je SHORT $LN3@operator ; 1117 : _Adopt(_Right._Myproxy->_Mycont); 00047 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Right$[rbp] 0004e 48 8b 00 mov rax, QWORD PTR [rax] 00051 48 8b 10 mov rdx, QWORD PTR [rax] 00054 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0005b e8 00 00 00 00 call ?_Adopt@_Iterator_base12@std@@QEAAXPEBU_Container_base12@2@@Z ; std::_Iterator_base12::_Adopt ; 1118 : } else { // becoming invalid, disown current parent 00060 eb 0c jmp SHORT $LN2@operator $LN3@operator: ; 1119 : #if _ITERATOR_DEBUG_LEVEL == 2 ; 1120 : _Orphan_me_v2(); 00062 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00069 e8 00 00 00 00 call ?_Orphan_me_v2@_Iterator_base12@std@@QEAAXXZ ; std::_Iterator_base12::_Orphan_me_v2 $LN2@operator: ; 1121 : #else // _ITERATOR_DEBUG_LEVEL == 2 ; 1122 : _Myproxy = nullptr; ; 1123 : #endif // _ITERATOR_DEBUG_LEVEL == 2 ; 1124 : } ; 1125 : } ; 1126 : return *this; 0006e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] ; 1127 : } 00075 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0007c 5f pop rdi 0007d 5d pop rbp 0007e c3 ret 0 ??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z ENDP ; std::_Iterator_base12::operator= _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 ??0_Iterator_base12@std@@QEAA@AEBU01@@Z _TEXT SEGMENT this$ = 224 _Right$ = 232 ??0_Iterator_base12@std@@QEAA@AEBU01@@Z PROC ; std::_Iterator_base12::_Iterator_base12, COMDAT ; 1110 : _CONSTEXPR20_CONTAINER _Iterator_base12(const _Iterator_base12& _Right) 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 ; 1113 : ; 1114 : _CONSTEXPR20_CONTAINER _Iterator_base12& operator=(const _Iterator_base12& _Right) noexcept { ; 1115 : if (_Myproxy != _Right._Myproxy) { ; 1116 : if (_Right._Myproxy) { ; 1117 : _Adopt(_Right._Myproxy->_Mycont); ; 1118 : } else { // becoming invalid, disown current parent ; 1119 : #if _ITERATOR_DEBUG_LEVEL == 2 ; 1120 : _Orphan_me_v2(); ; 1121 : #else // _ITERATOR_DEBUG_LEVEL == 2 ; 1122 : _Myproxy = nullptr; ; 1123 : #endif // _ITERATOR_DEBUG_LEVEL == 2 ; 1124 : } ; 1125 : } ; 1126 : return *this; ; 1127 : } ; 1128 : ; 1129 : #if _ITERATOR_DEBUG_LEVEL == 2 ; 1130 : _CONSTEXPR20_CONTAINER ~_Iterator_base12() noexcept { ; 1131 : _Orphan_me_v2(); ; 1132 : } ; 1133 : ; 1134 : _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept { ; 1135 : if (_Parent) { // have a parent, do adoption ; 1136 : _Container_proxy* _Parent_proxy = _Parent->_Myproxy; ; 1137 : if (_Myproxy != _Parent_proxy) { // change parentage ; 1138 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1139 : if (_STD is_constant_evaluated()) { ; 1140 : _Adopt_unlocked(_Parent_proxy); ; 1141 : } else ; 1142 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1143 : { ; 1144 : _Adopt_locked(_Parent_proxy); ; 1145 : } ; 1146 : } ; 1147 : } else { // no future parent, just disown current parent ; 1148 : _Orphan_me_v2(); ; 1149 : } ; 1150 : } ; 1151 : ; 1152 : _CONSTEXPR20_CONTAINER void _Orphan_me_v2() noexcept { ; 1153 : if (_Myproxy) { // adopted, remove self from list ; 1154 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1155 : if (_STD is_constant_evaluated()) { ; 1156 : _Orphan_me_unlocked(); ; 1157 : } else ; 1158 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1159 : { ; 1160 : _Orphan_me_locked(); ; 1161 : } ; 1162 : } ; 1163 : } ; 1164 : ; 1165 : #else // ^^^ _ITERATOR_DEBUG_LEVEL == 2 ^^^ / vvv _ITERATOR_DEBUG_LEVEL != 2 vvv ; 1166 : _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept { ; 1167 : if (_Parent) { // have a parent, do adoption ; 1168 : _Myproxy = _Parent->_Myproxy; ; 1169 : } else { // no future parent, just disown current parent ; 1170 : _Myproxy = nullptr; ; 1171 : } ; 1172 : } ; 1173 : #endif // _ITERATOR_DEBUG_LEVEL != 2 ; 1174 : ; 1175 : _CONSTEXPR20_CONTAINER const _Container_base12* _Getcont() const noexcept { ; 1176 : return _Myproxy ? _Myproxy->_Mycont : nullptr; ; 1177 : } ; 1178 : ; 1179 : static constexpr bool _Unwrap_when_unverified = _ITERATOR_DEBUG_LEVEL == 0; ; 1180 : ; 1181 : mutable _Container_proxy* _Myproxy = nullptr; 00024 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0002b 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1182 : mutable _Iterator_base12* _Mynextiter = nullptr; 00032 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00039 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 ; 1111 : *this = _Right; 00041 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Right$[rbp] 00048 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0004f e8 00 00 00 00 call ??4_Iterator_base12@std@@QEAAAEAU01@AEBU01@@Z ; std::_Iterator_base12::operator= ; 1112 : } 00054 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0005b 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00062 5f pop rdi 00063 5d pop rbp 00064 c3 ret 0 ??0_Iterator_base12@std@@QEAA@AEBU01@@Z ENDP ; std::_Iterator_base12::_Iterator_base12 _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 ??0_Iterator_base12@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0_Iterator_base12@std@@QEAA@XZ PROC ; std::_Iterator_base12::_Iterator_base12, COMDAT ; 1108 : _CONSTEXPR20_CONTAINER _Iterator_base12() noexcept = default; // construct orphaned iterator $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 ; 1109 : ; 1110 : _CONSTEXPR20_CONTAINER _Iterator_base12(const _Iterator_base12& _Right) noexcept { ; 1111 : *this = _Right; ; 1112 : } ; 1113 : ; 1114 : _CONSTEXPR20_CONTAINER _Iterator_base12& operator=(const _Iterator_base12& _Right) noexcept { ; 1115 : if (_Myproxy != _Right._Myproxy) { ; 1116 : if (_Right._Myproxy) { ; 1117 : _Adopt(_Right._Myproxy->_Mycont); ; 1118 : } else { // becoming invalid, disown current parent ; 1119 : #if _ITERATOR_DEBUG_LEVEL == 2 ; 1120 : _Orphan_me_v2(); ; 1121 : #else // _ITERATOR_DEBUG_LEVEL == 2 ; 1122 : _Myproxy = nullptr; ; 1123 : #endif // _ITERATOR_DEBUG_LEVEL == 2 ; 1124 : } ; 1125 : } ; 1126 : return *this; ; 1127 : } ; 1128 : ; 1129 : #if _ITERATOR_DEBUG_LEVEL == 2 ; 1130 : _CONSTEXPR20_CONTAINER ~_Iterator_base12() noexcept { ; 1131 : _Orphan_me_v2(); ; 1132 : } ; 1133 : ; 1134 : _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept { ; 1135 : if (_Parent) { // have a parent, do adoption ; 1136 : _Container_proxy* _Parent_proxy = _Parent->_Myproxy; ; 1137 : if (_Myproxy != _Parent_proxy) { // change parentage ; 1138 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1139 : if (_STD is_constant_evaluated()) { ; 1140 : _Adopt_unlocked(_Parent_proxy); ; 1141 : } else ; 1142 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1143 : { ; 1144 : _Adopt_locked(_Parent_proxy); ; 1145 : } ; 1146 : } ; 1147 : } else { // no future parent, just disown current parent ; 1148 : _Orphan_me_v2(); ; 1149 : } ; 1150 : } ; 1151 : ; 1152 : _CONSTEXPR20_CONTAINER void _Orphan_me_v2() noexcept { ; 1153 : if (_Myproxy) { // adopted, remove self from list ; 1154 : #ifdef __cpp_lib_constexpr_dynamic_alloc ; 1155 : if (_STD is_constant_evaluated()) { ; 1156 : _Orphan_me_unlocked(); ; 1157 : } else ; 1158 : #endif // __cpp_lib_constexpr_dynamic_alloc ; 1159 : { ; 1160 : _Orphan_me_locked(); ; 1161 : } ; 1162 : } ; 1163 : } ; 1164 : ; 1165 : #else // ^^^ _ITERATOR_DEBUG_LEVEL == 2 ^^^ / vvv _ITERATOR_DEBUG_LEVEL != 2 vvv ; 1166 : _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept { ; 1167 : if (_Parent) { // have a parent, do adoption ; 1168 : _Myproxy = _Parent->_Myproxy; ; 1169 : } else { // no future parent, just disown current parent ; 1170 : _Myproxy = nullptr; ; 1171 : } ; 1172 : } ; 1173 : #endif // _ITERATOR_DEBUG_LEVEL != 2 ; 1174 : ; 1175 : _CONSTEXPR20_CONTAINER const _Container_base12* _Getcont() const noexcept { ; 1176 : return _Myproxy ? _Myproxy->_Mycont : nullptr; ; 1177 : } ; 1178 : ; 1179 : static constexpr bool _Unwrap_when_unverified = _ITERATOR_DEBUG_LEVEL == 0; ; 1180 : ; 1181 : mutable _Container_proxy* _Myproxy = nullptr; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1182 : mutable _Iterator_base12* _Mynextiter = nullptr; 0002d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00034 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 ; 1108 : _CONSTEXPR20_CONTAINER _Iterator_base12() noexcept = default; // construct orphaned iterator 0003c 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 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 ??0_Iterator_base12@std@@QEAA@XZ ENDP ; std::_Iterator_base12::_Iterator_base12 _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 ??0_Container_base12@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0_Container_base12@std@@QEAA@XZ PROC ; std::_Container_base12::_Container_base12, COMDAT ; 1064 : _CONSTEXPR20_CONTAINER _Container_base12() noexcept = default; $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 ; 1065 : ; 1066 : _Container_base12(const _Container_base12&) = delete; ; 1067 : _Container_base12& operator=(const _Container_base12&) = delete; ; 1068 : ; 1069 : _CONSTEXPR20_CONTAINER void _Orphan_all() noexcept; ; 1070 : _CONSTEXPR20_CONTAINER void _Swap_proxy_and_iterators(_Container_base12&) noexcept; ; 1071 : ; 1072 : template ; 1073 : _CONSTEXPR20_CONTAINER void _Alloc_proxy(_Alloc&& _Al) { ; 1074 : _Container_proxy* const _New_proxy = _Unfancy(_Al.allocate(1)); ; 1075 : _Construct_in_place(*_New_proxy, this); ; 1076 : _Myproxy = _New_proxy; ; 1077 : _New_proxy->_Mycont = this; ; 1078 : } ; 1079 : ; 1080 : template ; 1081 : _CONSTEXPR20_CONTAINER void _Reload_proxy(_Alloc&& _Old_alloc, _Alloc&& _New_alloc) { ; 1082 : // pre: no iterators refer to the existing proxy ; 1083 : _Container_proxy* const _New_proxy = _Unfancy(_New_alloc.allocate(1)); ; 1084 : _Construct_in_place(*_New_proxy, this); ; 1085 : _New_proxy->_Mycont = this; ; 1086 : _Delete_plain_internal(_Old_alloc, _STD exchange(_Myproxy, _New_proxy)); ; 1087 : } ; 1088 : ; 1089 : _Container_proxy* _Myproxy = nullptr; 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 1064 : _CONSTEXPR20_CONTAINER _Container_base12() noexcept = default; 0002d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00034 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0003b 5f pop rdi 0003c 5d pop rbp 0003d c3 ret 0 ??0_Container_base12@std@@QEAA@XZ ENDP ; std::_Container_base12::_Container_base12 _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 ??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z _TEXT SEGMENT this$ = 224 _Mycont_$ = 232 ??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z PROC ; std::_Container_proxy::_Container_proxy, COMDAT ; 1056 : _CONSTEXPR20_CONTAINER _Container_proxy(_Container_base12* _Mycont_) noexcept : _Mycont(_Mycont_) {} $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 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Mycont_$[rbp] 00032 48 89 08 mov QWORD PTR [rax], rcx ; 1057 : ; 1058 : const _Container_base12* _Mycont = nullptr; ; 1059 : mutable _Iterator_base12* _Myfirstiter = nullptr; 00035 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003c 48 c7 40 08 00 00 00 00 mov QWORD PTR [rax+8], 0 ; 1056 : _CONSTEXPR20_CONTAINER _Container_proxy(_Container_base12* _Mycont_) noexcept : _Mycont(_Mycont_) {} 00044 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 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 ??0_Container_proxy@std@@QEAA@PEAU_Container_base12@1@@Z ENDP ; std::_Container_proxy::_Container_proxy _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)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\xmemory ; COMDAT ?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z _TEXT SEGMENT _Bytes$ = 224 ?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z PROC ; std::_Default_allocate_traits::_Allocate, COMDAT ; 84 : void* _Allocate(const size_t _Bytes) { $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 ; 85 : return ::operator new(_Bytes); 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR _Bytes$[rbp] 00026 e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new ; 86 : } 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 ?_Allocate@_Default_allocate_traits@std@@SAPEAX_K@Z ENDP ; std::_Default_allocate_traits::_Allocate _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\exception ; COMDAT ?_Throw_bad_array_new_length@std@@YAXXZ _TEXT SEGMENT $T1 = 200 ?_Throw_bad_array_new_length@std@@YAXXZ PROC ; std::_Throw_bad_array_new_length, COMDAT ; 320 : [[noreturn]] inline void _Throw_bad_array_new_length() { $LN3: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec 18 01 00 00 sub rsp, 280 ; 00000118H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__89F7010A_exception 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 321 : _THROW(bad_array_new_length{}); 0001b 48 8d 8d c8 00 00 00 lea rcx, QWORD PTR $T1[rbp] 00022 e8 00 00 00 00 call ??0bad_array_new_length@std@@QEAA@XZ ; std::bad_array_new_length::bad_array_new_length 00027 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_TI3?AVbad_array_new_length@std@@ 0002e 48 8d 8d c8 00 00 00 lea rcx, QWORD PTR $T1[rbp] 00035 e8 00 00 00 00 call _CxxThrowException $LN2@Throw_bad_: ; 322 : } 0003a 48 8d a5 f8 00 00 00 lea rsp, QWORD PTR [rbp+248] 00041 5f pop rdi 00042 5d pop rbp 00043 c3 ret 0 ?_Throw_bad_array_new_length@std@@YAXXZ ENDP ; std::_Throw_bad_array_new_length _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??_Gbad_array_new_length@std@@UEAAPEAXI@Z _TEXT SEGMENT this$ = 224 __flags$ = 232 ??_Gbad_array_new_length@std@@UEAAPEAXI@Z PROC ; std::bad_array_new_length::`scalar deleting destructor', COMDAT $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 e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001e e8 00 00 00 00 call ??1bad_array_new_length@std@@UEAA@XZ 00023 8b 85 e8 00 00 00 mov eax, DWORD PTR __flags$[rbp] 00029 83 e0 01 and eax, 1 0002c 85 c0 test eax, eax 0002e 74 11 je SHORT $LN2@scalar 00030 ba 18 00 00 00 mov edx, 24 00035 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0003c e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete $LN2@scalar: 00041 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004f 5f pop rdi 00050 5d pop rbp 00051 c3 ret 0 ??_Gbad_array_new_length@std@@UEAAPEAXI@Z ENDP ; std::bad_array_new_length::`scalar deleting destructor' _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??0bad_array_new_length@std@@QEAA@AEBV01@@Z _TEXT SEGMENT this$ = 224 __that$ = 232 ??0bad_array_new_length@std@@QEAA@AEBV01@@Z PROC ; std::bad_array_new_length::bad_array_new_length, 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 8b 95 e8 00 00 00 mov rdx, QWORD PTR __that$[rbp] 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ??0bad_alloc@std@@QEAA@AEBV01@@Z 0002b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7bad_array_new_length@std@@6B@ 00039 48 89 08 mov QWORD PTR [rax], rcx 0003c 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 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 ??0bad_array_new_length@std@@QEAA@AEBV01@@Z ENDP ; std::bad_array_new_length::bad_array_new_length _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??1bad_array_new_length@std@@UEAA@XZ _TEXT SEGMENT this$ = 224 ??1bad_array_new_length@std@@UEAA@XZ PROC ; std::bad_array_new_length::~bad_array_new_length, 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 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001a e8 00 00 00 00 call ??1bad_alloc@std@@UEAA@XZ 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 ??1bad_array_new_length@std@@UEAA@XZ ENDP ; std::bad_array_new_length::~bad_array_new_length _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\vcruntime_exception.h ; COMDAT ??0bad_array_new_length@std@@QEAA@XZ _TEXT SEGMENT this$ = 224 ??0bad_array_new_length@std@@QEAA@XZ PROC ; std::bad_array_new_length::bad_array_new_length, COMDAT ; 141 : { $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:__BDCC0984_vcruntime_exception@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 140 : : bad_alloc("bad array new length") 0001f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BF@KINCDENJ@bad?5array?5new?5length@ 00026 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0002d e8 00 00 00 00 call ??0bad_alloc@std@@AEAA@QEBD@Z ; std::bad_alloc::bad_alloc ; 141 : { 00032 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00039 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7bad_array_new_length@std@@6B@ 00040 48 89 08 mov QWORD PTR [rax], rcx ; 142 : } 00043 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0004a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00051 5f pop rdi 00052 5d pop rbp 00053 c3 ret 0 ??0bad_array_new_length@std@@QEAA@XZ ENDP ; std::bad_array_new_length::bad_array_new_length _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??_Gbad_alloc@std@@UEAAPEAXI@Z _TEXT SEGMENT this$ = 224 __flags$ = 232 ??_Gbad_alloc@std@@UEAAPEAXI@Z PROC ; std::bad_alloc::`scalar deleting destructor', COMDAT $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 e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001e e8 00 00 00 00 call ??1bad_alloc@std@@UEAA@XZ 00023 8b 85 e8 00 00 00 mov eax, DWORD PTR __flags$[rbp] 00029 83 e0 01 and eax, 1 0002c 85 c0 test eax, eax 0002e 74 11 je SHORT $LN2@scalar 00030 ba 18 00 00 00 mov edx, 24 00035 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0003c e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete $LN2@scalar: 00041 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004f 5f pop rdi 00050 5d pop rbp 00051 c3 ret 0 ??_Gbad_alloc@std@@UEAAPEAXI@Z ENDP ; std::bad_alloc::`scalar deleting destructor' _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??0bad_alloc@std@@QEAA@AEBV01@@Z _TEXT SEGMENT this$ = 224 __that$ = 232 ??0bad_alloc@std@@QEAA@AEBV01@@Z PROC ; std::bad_alloc::bad_alloc, 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 8b 95 e8 00 00 00 mov rdx, QWORD PTR __that$[rbp] 0001f 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00026 e8 00 00 00 00 call ??0exception@std@@QEAA@AEBV01@@Z ; std::exception::exception 0002b 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7bad_alloc@std@@6B@ 00039 48 89 08 mov QWORD PTR [rax], rcx 0003c 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 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 ??0bad_alloc@std@@QEAA@AEBV01@@Z ENDP ; std::bad_alloc::bad_alloc _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??1bad_alloc@std@@UEAA@XZ _TEXT SEGMENT this$ = 224 ??1bad_alloc@std@@UEAA@XZ PROC ; std::bad_alloc::~bad_alloc, 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 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001a e8 00 00 00 00 call ??1exception@std@@UEAA@XZ ; std::exception::~exception 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 ??1bad_alloc@std@@UEAA@XZ ENDP ; std::bad_alloc::~bad_alloc _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\vcruntime_exception.h ; COMDAT ??0bad_alloc@std@@AEAA@QEBD@Z _TEXT SEGMENT this$ = 224 _Message$ = 232 ??0bad_alloc@std@@AEAA@QEBD@Z PROC ; std::bad_alloc::bad_alloc, COMDAT ; 130 : { $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:__BDCC0984_vcruntime_exception@h 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 129 : : exception(_Message, 1) 00024 41 b8 01 00 00 00 mov r8d, 1 0002a 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR _Message$[rbp] 00031 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00038 e8 00 00 00 00 call ??0exception@std@@QEAA@QEBDH@Z ; std::exception::exception ; 130 : { 0003d 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00044 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7bad_alloc@std@@6B@ 0004b 48 89 08 mov QWORD PTR [rax], rcx ; 131 : } 0004e 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00055 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0005c 5f pop rdi 0005d 5d pop rbp 0005e c3 ret 0 ??0bad_alloc@std@@AEAA@QEBD@Z ENDP ; std::bad_alloc::bad_alloc _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ??_Gexception@std@@UEAAPEAXI@Z _TEXT SEGMENT this$ = 224 __flags$ = 232 ??_Gexception@std@@UEAAPEAXI@Z PROC ; std::exception::`scalar deleting destructor', COMDAT $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 e8 00 00 00 sub rsp, 232 ; 000000e8H 00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00017 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001e e8 00 00 00 00 call ??1exception@std@@UEAA@XZ ; std::exception::~exception 00023 8b 85 e8 00 00 00 mov eax, DWORD PTR __flags$[rbp] 00029 83 e0 01 and eax, 1 0002c 85 c0 test eax, eax 0002e 74 11 je SHORT $LN2@scalar 00030 ba 18 00 00 00 mov edx, 24 00035 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0003c e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete $LN2@scalar: 00041 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00048 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0004f 5f pop rdi 00050 5d pop rbp 00051 c3 ret 0 ??_Gexception@std@@UEAAPEAXI@Z ENDP ; std::exception::`scalar deleting destructor' _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\vcruntime_exception.h ; COMDAT ?what@exception@std@@UEBAPEBDXZ _TEXT SEGMENT tv69 = 192 this$ = 240 ?what@exception@std@@UEBAPEBDXZ PROC ; std::exception::what, COMDAT ; 94 : { $LN5: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec f8 00 00 00 sub rsp, 248 ; 000000f8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__BDCC0984_vcruntime_exception@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 95 : return _Data._What ? _Data._What : "Unknown exception"; 0001f 48 8b 85 f0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 83 78 08 00 cmp QWORD PTR [rax+8], 0 0002b 74 14 je SHORT $LN3@what 0002d 48 8b 85 f0 00 00 00 mov rax, QWORD PTR this$[rbp] 00034 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00038 48 89 85 c0 00 00 00 mov QWORD PTR tv69[rbp], rax 0003f eb 0e jmp SHORT $LN4@what $LN3@what: 00041 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BC@EOODALEL@Unknown?5exception@ 00048 48 89 85 c0 00 00 00 mov QWORD PTR tv69[rbp], rax $LN4@what: 0004f 48 8b 85 c0 00 00 00 mov rax, QWORD PTR tv69[rbp] ; 96 : } 00056 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 0005d 5f pop rdi 0005e 5d pop rbp 0005f c3 ret 0 ?what@exception@std@@UEBAPEBDXZ ENDP ; std::exception::what _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\vcruntime_exception.h ; COMDAT ??1exception@std@@UEAA@XZ _TEXT SEGMENT this$ = 224 ??1exception@std@@UEAA@XZ PROC ; std::exception::~exception, COMDAT ; 89 : { $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:__BDCC0984_vcruntime_exception@h 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode 0001f 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00026 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7exception@std@@6B@ 0002d 48 89 08 mov QWORD PTR [rax], rcx ; 90 : __std_exception_destroy(&_Data); 00030 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00037 48 83 c0 08 add rax, 8 0003b 48 8b c8 mov rcx, rax 0003e e8 00 00 00 00 call __std_exception_destroy ; 91 : } 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 ??1exception@std@@UEAA@XZ ENDP ; std::exception::~exception _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\vcruntime_exception.h ; COMDAT ??0exception@std@@QEAA@AEBV01@@Z _TEXT SEGMENT this$ = 224 _Other$ = 232 ??0exception@std@@QEAA@AEBV01@@Z PROC ; std::exception::exception, COMDAT ; 72 : { $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:__BDCC0984_vcruntime_exception@h 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 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7exception@std@@6B@ 00032 48 89 08 mov QWORD PTR [rax], rcx ; 71 : : _Data() 00035 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0003c 48 83 c0 08 add rax, 8 00040 48 8b f8 mov rdi, rax 00043 33 c0 xor eax, eax 00045 b9 10 00 00 00 mov ecx, 16 0004a f3 aa rep stosb ; 73 : __std_exception_copy(&_Other._Data, &_Data); 0004c 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00053 48 83 c0 08 add rax, 8 00057 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Other$[rbp] 0005e 48 83 c1 08 add rcx, 8 00062 48 8b d0 mov rdx, rax 00065 e8 00 00 00 00 call __std_exception_copy ; 74 : } 0006a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00071 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00078 5f pop rdi 00079 5d pop rbp 0007a c3 ret 0 ??0exception@std@@QEAA@AEBV01@@Z ENDP ; std::exception::exception _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\vcruntime_exception.h ; COMDAT ??0exception@std@@QEAA@QEBDH@Z _TEXT SEGMENT this$ = 224 _Message$ = 232 __formal$ = 240 ??0exception@std@@QEAA@QEBDH@Z PROC ; std::exception::exception, COMDAT ; 66 : { $LN3: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 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:__BDCC0984_vcruntime_exception@h 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode 00029 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00030 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_7exception@std@@6B@ 00037 48 89 08 mov QWORD PTR [rax], rcx ; 65 : : _Data() 0003a 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00041 48 83 c0 08 add rax, 8 00045 48 8b f8 mov rdi, rax 00048 33 c0 xor eax, eax 0004a b9 10 00 00 00 mov ecx, 16 0004f f3 aa rep stosb ; 67 : _Data._What = _Message; 00051 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 00058 48 8b 8d e8 00 00 00 mov rcx, QWORD PTR _Message$[rbp] 0005f 48 89 48 08 mov QWORD PTR [rax+8], rcx ; 68 : } 00063 48 8b 85 e0 00 00 00 mov rax, QWORD PTR this$[rbp] 0006a 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00071 5f pop rdi 00072 5d pop rbp 00073 c3 ret 0 ??0exception@std@@QEAA@QEBDH@Z ENDP ; std::exception::exception _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\limits ; COMDAT ?max@?$numeric_limits@_J@std@@SA_JXZ _TEXT SEGMENT ?max@?$numeric_limits@_J@std@@SA_JXZ PROC ; std::numeric_limits<__int64>::max, COMDAT ; 647 : _NODISCARD static constexpr long long(max)() noexcept { $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:__44860E64_limits 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 648 : return LLONG_MAX; 0001b 48 b8 ff ff ff ff ff ff ff 7f mov rax, 9223372036854775807 ; 7fffffffffffffffH ; 649 : } 00025 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 0002c 5f pop rdi 0002d 5d pop rbp 0002e c3 ret 0 ?max@?$numeric_limits@_J@std@@SA_JXZ ENDP ; std::numeric_limits<__int64>::max _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:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include\vcruntime_new.h ; COMDAT ??2@YAPEAX_KPEAX@Z _TEXT SEGMENT _Size$ = 224 _Where$ = 232 ??2@YAPEAX_KPEAX@Z PROC ; operator new, COMDAT ; 167 : { $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:__02E23235_vcruntime_new@h 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 168 : (void)_Size; ; 169 : return _Where; 00024 48 8b 85 e8 00 00 00 mov rax, QWORD PTR _Where$[rbp] ; 170 : } 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 ??2@YAPEAX_KPEAX@Z ENDP ; operator new _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File C:\@\Work\code-virtualizer\CodeVirtualizer\NativeCode.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:__337731E1_NativeCode@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\NativeCode.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:__337731E1_NativeCode@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\NativeCode.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:__337731E1_NativeCode@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\NativeCode.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:__337731E1_NativeCode@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