You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2137 lines
70 KiB

; Listing generated by Microsoft (R) Optimizing Compiler Version 19.29.30038.1
3 years ago
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
3 years ago
__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
3 years ago
__741AE07E_corecrt_math@h DB 01H
__80A05712_cstdlib DB 01H
__44860E64_limits DB 01H
__D1154D4E_type_traits DB 01H
3 years ago
__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
3 years ago
__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
__A82FFE99_RipXorInst@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
__83FB8DDC_xatomic@h DB 01H
3 years ago
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 wmemcpy
PUBLIC ??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ; std::_Maklocstr<wchar_t>
PUBLIC ?_Maklocwcs@std@@YAPEA_WPEB_W@Z ; std::_Maklocwcs
PUBLIC ??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ; std::_Maklocstr<char>
PUBLIC ??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ; std::time_get<char,std::istreambuf_iterator<char,std::char_traits<char> > >::_Getvals<wchar_t>
PUBLIC ??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ; std::time_get<wchar_t,std::istreambuf_iterator<wchar_t,std::char_traits<wchar_t> > >::_Getvals<wchar_t>
PUBLIC ?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z ; JitEmitRipRelativeXorD
PUBLIC ?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z ; JitEmitRipRelativeXorW
PUBLIC ?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z ; JitEmitRipRelativeXorB
PUBLIC __JustMyCode_Default
PUBLIC ??_C@_0GI@LEPEPCM@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ ; `string'
3 years ago
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'
3 years ago
PUBLIC ??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ ; `string'
PUBLIC ??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ ; `string'
EXTRN ??2@YAPEAX_K@Z:PROC ; operator new
EXTRN ??3@YAXPEAX_K@Z:PROC ; operator delete
EXTRN memcpy:PROC
EXTRN __imp_wcslen:PROC
EXTRN strlen:PROC
EXTRN __imp__calloc_dbg:PROC
EXTRN ?_Xbad_alloc@std@@YAXXZ:PROC ; std::_Xbad_alloc
EXTRN _Mbrtowc:PROC
EXTRN __imp_?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ:PROC
EXTRN __imp_?_Getdays@_Locinfo@std@@QEBAPEBDXZ:PROC
EXTRN __imp_?_Getmonths@_Locinfo@std@@QEBAPEBDXZ:PROC
EXTRN __imp_?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ:PROC
EXTRN __imp_?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ:PROC
EXTRN xed_decode:PROC
EXTRN ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z:PROC ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK
3 years ago
EXTRN ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z:PROC ; NcAppendToBlock
EXTRN _RTC_CheckStackVars:PROC
EXTRN _RTC_InitBase:PROC
EXTRN _RTC_Shutdown:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN __GSHandlerCheck:PROC
EXTRN __GSHandlerCheck_EH4:PROC
EXTRN __security_check_cookie:PROC
EXTRN __security_cookie:QWORD
; COMDAT pdata
pdata SEGMENT
$pdata$?__empty_global_delete@@YAXPEAX@Z DD imagerel $LN3
DD imagerel $LN3+41
3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
DD imagerel $unwind$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$wmemcpy DD imagerel $LN3
DD imagerel $LN3+83
3 years ago
DD imagerel $unwind$wmemcpy
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z DD imagerel $LN12
DD imagerel $LN12+586
3 years ago
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
3 years ago
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
3 years ago
DD imagerel $unwind$??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z DD imagerel $LN5
DD imagerel $LN5+356
3 years ago
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
3 years ago
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$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DD imagerel $LN6
DD imagerel $LN6+379
3 years ago
DD imagerel $unwind$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA+44
DD imagerel $unwind$?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DD imagerel $LN6
DD imagerel $LN6+377
3 years ago
DD imagerel $unwind$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA+44
DD imagerel $unwind$?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DD imagerel $LN6
DD imagerel $LN6+368
3 years ago
DD imagerel $unwind$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA+44
DD imagerel $unwind$?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
pdata ENDS
; COMDAT rtc$TMZ
rtc$TMZ SEGMENT
_RTC_Shutdown.rtc$TMZ DQ FLAT:_RTC_Shutdown
rtc$TMZ ENDS
; COMDAT rtc$IMZ
rtc$IMZ SEGMENT
_RTC_InitBase.rtc$IMZ DQ FLAT:_RTC_InitBase
rtc$IMZ ENDS
; COMDAT ??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@
CONST SEGMENT
??_C@_1BK@MHIKGOKE@?$AA?3?$AAA?$AAM?$AA?3?$AAa?$AAm?$AA?3?$AAP?$AAM?$AA?3?$AAp?$AAm@ DB ':'
DB 00H, 'A', 00H, 'M', 00H, ':', 00H, 'a', 00H, 'm', 00H, ':', 00H
DB 'P', 00H, 'M', 00H, ':', 00H, 'p', 00H, 'm', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@
CONST SEGMENT
??_C@_0N@LPFKKEBD@?3AM?3am?3PM?3pm@ DB ':AM:am:PM:pm', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0GI@IIACENIN@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@
3 years ago
CONST SEGMENT
??_C@_0GI@IIACENIN@C?3?2Program?5Files?5?$CIx86?$CJ?2Microsof@ DB 'C:\Pro'
3 years ago
DB 'gram Files (x86)\Microsoft Visual Studio\2019\Community\VC\To'
DB 'ols\MSVC\14.29.30037\include\xlocnum', 00H ; `string'
3 years ago
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@
3 years ago
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'
3 years ago
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
DB 05H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03fH
DW 0157H
voltbl ENDS
3 years ago
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA DD 031001H
DD 0700c4210H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 06H
DB 00H
DB 00H
DB 0feH
3 years ago
DB 02H
DB 09eH
3 years ago
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 02H
DB 0eH
DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 028H
DD imagerel $stateUnwindMap$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
DD imagerel $ip2state$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DD 035054619H
DD 0117331cH
DD 070100031H
3 years ago
DD 0500fH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
DD 0172H
3 years ago
xdata ENDS
; COMDAT CONST
CONST SEGMENT
?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcName$0 DB 052H ; JitEmitRipRelativeXorB
DB 061H
DB 077H
DB 044H
DB 061H
DB 074H
DB 061H
DB 00H
ORG $+8
?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcVarDesc DD 034H ; JitEmitRipRelativeXorB
3 years ago
DD 07H
DQ FLAT:?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcName$0
ORG $+48
?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcFrameData DD 01H ; JitEmitRipRelativeXorB
DD 00H
DQ FLAT:?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
DB 05H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03fH
DW 0160H
voltbl ENDS
3 years ago
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA DD 031001H
DD 0700c4210H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 06H
DB 00H
DB 00H
DB 01dH, 02H
3 years ago
DB 02H
DB 09eH
3 years ago
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 02H
DB 0eH
DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 028H
DD imagerel $stateUnwindMap$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
DD imagerel $ip2state$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DD 035054619H
DD 0117331cH
DD 070100033H
3 years ago
DD 0500fH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
DD 0182H
3 years ago
xdata ENDS
; COMDAT CONST
CONST SEGMENT
?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcName$0 DB 052H ; JitEmitRipRelativeXorW
DB 061H
DB 077H
DB 044H
DB 061H
DB 074H
DB 061H
DB 00H
ORG $+8
?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcVarDesc DD 038H ; JitEmitRipRelativeXorW
3 years ago
DD 09H
DQ FLAT:?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcName$0
ORG $+48
?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcFrameData DD 01H ; JitEmitRipRelativeXorW
DD 00H
DQ FLAT:?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
DB 05H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03fH
DW 0162H
voltbl ENDS
3 years ago
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA DD 031001H
DD 0700c4210H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 06H
DB 00H
DB 00H
DB '-', 02H
3 years ago
DB 02H
DB 09eH
3 years ago
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 02H
DB 0eH
DD imagerel ?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DB 028H
DD imagerel $stateUnwindMap$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
DD imagerel $ip2state$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z DD 035054619H
DD 0117331cH
DD 070100033H
3 years ago
DD 0500fH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
DD 0182H
3 years ago
xdata ENDS
; COMDAT CONST
CONST SEGMENT
?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcName$0 DB 052H ; JitEmitRipRelativeXorD
DB 061H
DB 077H
DB 044H
DB 061H
DB 074H
DB 061H
DB 00H
ORG $+8
?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcVarDesc DD 038H ; JitEmitRipRelativeXorD
3 years ago
DD 0aH
DQ FLAT:?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcName$0
ORG $+48
?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcFrameData DD 01H ; JitEmitRipRelativeXorD
DD 00H
DQ FLAT:?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcVarDesc
CONST 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
3 years ago
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
3 years ago
DD 0119231eH
DD 070120026H
DD 050106011H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z DD 035051d01H
3 years ago
DD 0118331dH
DD 07011002bH
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?_Maklocwcs@std@@YAPEA_WPEB_W@Z DD 035051301H
3 years ago
DD 010e3313H
DD 070070027H
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 040H
DW 0231H
voltbl ENDS
3 years ago
; COMDAT xdata
xdata SEGMENT
$unwind$??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z DD 035054719H
3 years ago
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<wchar_t>
DB 057H
DB 063H
DB 00H
??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcName$1 DB 05fH ; std::_Maklocstr<wchar_t>
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<wchar_t>
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<wchar_t>
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<wchar_t>
DD 00H
DQ FLAT:??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$wmemcpy DD 025051d01H
3 years ago
DD 0118231dH
DD 07011001dH
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z DD 025051d01H
3 years ago
DD 0118231dH
DD 07011001dH
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z DD 025051801H
3 years ago
DD 01132318H
DD 0700c001dH
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAX_K@Z DD 025051801H
3 years ago
DD 01132318H
DD 0700c001dH
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAX@Z DD 025051301H
3 years ago
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:\@\Work\code-virtualizer\CodeVirtualizer\RipXorInst.cpp
3 years ago
; COMDAT ?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
_TEXT SEGMENT
RawData$ = 4
Link$ = 40
$T4 = 264
$T5 = 296
tv79 = 312
3 years ago
__$ArrayPad$ = 320
Block$ = 368
RipDelta$ = 376
Value$ = 384
?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z PROC ; JitEmitRipRelativeXorB, COMDAT
; 28 : {
$LN6:
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 88 01
00 00 sub rsp, 392 ; 00000188H
00017 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001c 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00021 b9 26 00 00 00 mov ecx, 38 ; 00000026H
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 a8
01 00 00 mov rcx, QWORD PTR [rsp+424]
00035 48 8b 05 00 00
3 years ago
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 40 01
3 years ago
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__A82FFE99_RipXorInst@cpp
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
3 years ago
; 29 : UCHAR RawData[] = { 0x80, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00 };
00052 c6 45 04 80 mov BYTE PTR RawData$[rbp], 128 ; 00000080H
00056 c6 45 05 35 mov BYTE PTR RawData$[rbp+1], 53 ; 00000035H
0005a c6 45 06 00 mov BYTE PTR RawData$[rbp+2], 0
0005e c6 45 07 00 mov BYTE PTR RawData$[rbp+3], 0
00062 c6 45 08 00 mov BYTE PTR RawData$[rbp+4], 0
00066 c6 45 09 00 mov BYTE PTR RawData$[rbp+5], 0
0006a c6 45 0a 00 mov BYTE PTR RawData$[rbp+6], 0
3 years ago
; 30 :
3 years ago
; 31 : PNATIVE_CODE_LINK Link = new NATIVE_CODE_LINK(CODE_FLAG_IS_INST | CODE_FLAG_DO_NOT_DIVIDE, RawData, sizeof(RawData));
3 years ago
0006e b9 f0 00 00 00 mov ecx, 240 ; 000000f0H
00073 e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new
00078 48 89 85 28 01
3 years ago
00 00 mov QWORD PTR $T5[rbp], rax
0007f 48 83 bd 28 01
3 years ago
00 00 00 cmp QWORD PTR $T5[rbp], 0
00087 74 2c je SHORT $LN3@JitEmitRip
00089 c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
00091 41 b9 07 00 00
3 years ago
00 mov r9d, 7
00097 4c 8d 45 04 lea r8, QWORD PTR RawData$[rbp]
0009b ba 0c 00 00 00 mov edx, 12
000a0 48 8b 8d 28 01
3 years ago
00 00 mov rcx, QWORD PTR $T5[rbp]
000a7 e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK
000ac 48 89 85 38 01
00 00 mov QWORD PTR tv79[rbp], rax
000b3 eb 0b jmp SHORT $LN4@JitEmitRip
3 years ago
$LN3@JitEmitRip:
000b5 48 c7 85 38 01
3 years ago
00 00 00 00 00
00 mov QWORD PTR tv79[rbp], 0
3 years ago
$LN4@JitEmitRip:
000c0 48 8b 85 38 01
00 00 mov rax, QWORD PTR tv79[rbp]
000c7 48 89 85 08 01
3 years ago
00 00 mov QWORD PTR $T4[rbp], rax
000ce 48 8b 85 08 01
3 years ago
00 00 mov rax, QWORD PTR $T4[rbp]
000d5 48 89 45 28 mov QWORD PTR Link$[rbp], rax
3 years ago
; 32 : *(PINT32)&Link->RawData[2] = RipDelta;
000d9 b8 01 00 00 00 mov eax, 1
000de 48 6b c0 02 imul rax, rax, 2
000e2 48 8b 4d 28 mov rcx, QWORD PTR Link$[rbp]
000e6 48 8b 49 20 mov rcx, QWORD PTR [rcx+32]
000ea 8b 95 78 01 00
3 years ago
00 mov edx, DWORD PTR RipDelta$[rbp]
000f0 89 14 08 mov DWORD PTR [rax+rcx], edx
3 years ago
; 33 : *(PUCHAR)&Link->RawData[6] = (UCHAR)Value;
000f3 b8 01 00 00 00 mov eax, 1
000f8 48 6b c0 06 imul rax, rax, 6
000fc 48 8b 4d 28 mov rcx, QWORD PTR Link$[rbp]
00100 48 8b 49 20 mov rcx, QWORD PTR [rcx+32]
00104 0f b6 95 80 01
3 years ago
00 00 movzx edx, BYTE PTR Value$[rbp]
0010b 88 14 08 mov BYTE PTR [rax+rcx], dl
3 years ago
; 34 : XedDecode(&Link->XedInstruction, Link->RawData, Link->RawDataSize);
0010e 48 8b 45 28 mov rax, QWORD PTR Link$[rbp]
00112 48 83 c0 30 add rax, 48 ; 00000030H
00116 48 8b 4d 28 mov rcx, QWORD PTR Link$[rbp]
0011a 44 8b 41 28 mov r8d, DWORD PTR [rcx+40]
0011e 48 8b 4d 28 mov rcx, QWORD PTR Link$[rbp]
00122 48 8b 51 20 mov rdx, QWORD PTR [rcx+32]
00126 48 8b c8 mov rcx, rax
00129 e8 00 00 00 00 call xed_decode
3 years ago
; 35 : NcAppendToBlock(Block, Link);
0012e 48 8b 55 28 mov rdx, QWORD PTR Link$[rbp]
00132 48 8b 8d 70 01
3 years ago
00 00 mov rcx, QWORD PTR Block$[rbp]
00139 e8 00 00 00 00 call ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcAppendToBlock
3 years ago
; 36 : return TRUE;
0013e b8 01 00 00 00 mov eax, 1
3 years ago
; 37 : }
00143 8b f8 mov edi, eax
00145 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00149 48 8d 15 00 00
3 years ago
00 00 lea rdx, OFFSET FLAT:?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcFrameData
00150 e8 00 00 00 00 call _RTC_CheckStackVars
00155 8b c7 mov eax, edi
00157 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0015e 48 33 cd xor rcx, rbp
00161 e8 00 00 00 00 call __security_check_cookie
00166 48 8d a5 58 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+344]
0016d 5f pop rdi
0016e 5d pop rbp
0016f c3 ret 0
3 years ago
?JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z ENDP ; JitEmitRipRelativeXorB
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
RawData$ = 4
Link$ = 40
$T4 = 264
$T5 = 296
tv79 = 312
3 years ago
__$ArrayPad$ = 320
Block$ = 368
RipDelta$ = 376
Value$ = 384
?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA PROC ; `JitEmitRipRelativeXorB'::`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]
3 years ago
00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H
00019 48 8b 8d 28 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??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA ENDP ; `JitEmitRipRelativeXorB'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; COMDAT text$x
text$x SEGMENT
RawData$ = 4
Link$ = 40
$T4 = 264
$T5 = 296
tv79 = 312
3 years ago
__$ArrayPad$ = 320
Block$ = 368
RipDelta$ = 376
Value$ = 384
?dtor$0@?0??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA PROC ; `JitEmitRipRelativeXorB'::`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]
3 years ago
00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H
00019 48 8b 8d 28 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??JitEmitRipRelativeXorB@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA ENDP ; `JitEmitRipRelativeXorB'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File C:\@\Work\code-virtualizer\CodeVirtualizer\RipXorInst.cpp
3 years ago
; COMDAT ?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
_TEXT SEGMENT
RawData$ = 8
Link$ = 56
$T4 = 280
$T5 = 312
tv79 = 328
3 years ago
__$ArrayPad$ = 336
Block$ = 384
RipDelta$ = 392
Value$ = 400
?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z PROC ; JitEmitRipRelativeXorW, COMDAT
; 16 : {
$LN6:
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 98 01
00 00 sub rsp, 408 ; 00000198H
00017 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001c 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00021 b9 2a 00 00 00 mov ecx, 42 ; 0000002aH
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 b8
01 00 00 mov rcx, QWORD PTR [rsp+440]
00035 48 8b 05 00 00
3 years ago
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 50 01
3 years ago
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__A82FFE99_RipXorInst@cpp
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
3 years ago
; 17 : UCHAR RawData[] = { 0x66, 0x81, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
00052 c6 45 08 66 mov BYTE PTR RawData$[rbp], 102 ; 00000066H
00056 c6 45 09 81 mov BYTE PTR RawData$[rbp+1], 129 ; 00000081H
0005a c6 45 0a 35 mov BYTE PTR RawData$[rbp+2], 53 ; 00000035H
0005e c6 45 0b 00 mov BYTE PTR RawData$[rbp+3], 0
00062 c6 45 0c 00 mov BYTE PTR RawData$[rbp+4], 0
00066 c6 45 0d 00 mov BYTE PTR RawData$[rbp+5], 0
0006a c6 45 0e 00 mov BYTE PTR RawData$[rbp+6], 0
0006e c6 45 0f 00 mov BYTE PTR RawData$[rbp+7], 0
00072 c6 45 10 00 mov BYTE PTR RawData$[rbp+8], 0
3 years ago
; 18 :
3 years ago
; 19 : PNATIVE_CODE_LINK Link = new NATIVE_CODE_LINK(CODE_FLAG_IS_INST | CODE_FLAG_DO_NOT_DIVIDE, RawData, sizeof(RawData));
3 years ago
00076 b9 f0 00 00 00 mov ecx, 240 ; 000000f0H
0007b e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new
00080 48 89 85 38 01
3 years ago
00 00 mov QWORD PTR $T5[rbp], rax
00087 48 83 bd 38 01
3 years ago
00 00 00 cmp QWORD PTR $T5[rbp], 0
0008f 74 2c je SHORT $LN3@JitEmitRip
00091 c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
00099 41 b9 09 00 00
3 years ago
00 mov r9d, 9
0009f 4c 8d 45 08 lea r8, QWORD PTR RawData$[rbp]
000a3 ba 0c 00 00 00 mov edx, 12
000a8 48 8b 8d 38 01
3 years ago
00 00 mov rcx, QWORD PTR $T5[rbp]
000af e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK
000b4 48 89 85 48 01
00 00 mov QWORD PTR tv79[rbp], rax
000bb eb 0b jmp SHORT $LN4@JitEmitRip
3 years ago
$LN3@JitEmitRip:
000bd 48 c7 85 48 01
3 years ago
00 00 00 00 00
00 mov QWORD PTR tv79[rbp], 0
3 years ago
$LN4@JitEmitRip:
000c8 48 8b 85 48 01
00 00 mov rax, QWORD PTR tv79[rbp]
000cf 48 89 85 18 01
3 years ago
00 00 mov QWORD PTR $T4[rbp], rax
000d6 48 8b 85 18 01
3 years ago
00 00 mov rax, QWORD PTR $T4[rbp]
000dd 48 89 45 38 mov QWORD PTR Link$[rbp], rax
3 years ago
; 20 : *(PINT32)&Link->RawData[3] = RipDelta;
000e1 b8 01 00 00 00 mov eax, 1
000e6 48 6b c0 03 imul rax, rax, 3
000ea 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
000ee 48 8b 49 20 mov rcx, QWORD PTR [rcx+32]
000f2 8b 95 88 01 00
3 years ago
00 mov edx, DWORD PTR RipDelta$[rbp]
000f8 89 14 08 mov DWORD PTR [rax+rcx], edx
3 years ago
; 21 : *(PUSHORT)&Link->RawData[7] = (USHORT)Value;
000fb b8 01 00 00 00 mov eax, 1
00100 48 6b c0 07 imul rax, rax, 7
00104 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
00108 48 8b 49 20 mov rcx, QWORD PTR [rcx+32]
0010c 0f b7 95 90 01
3 years ago
00 00 movzx edx, WORD PTR Value$[rbp]
00113 66 89 14 08 mov WORD PTR [rax+rcx], dx
3 years ago
; 22 : XedDecode(&Link->XedInstruction, Link->RawData, Link->RawDataSize);
00117 48 8b 45 38 mov rax, QWORD PTR Link$[rbp]
0011b 48 83 c0 30 add rax, 48 ; 00000030H
0011f 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
00123 44 8b 41 28 mov r8d, DWORD PTR [rcx+40]
00127 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
0012b 48 8b 51 20 mov rdx, QWORD PTR [rcx+32]
0012f 48 8b c8 mov rcx, rax
00132 e8 00 00 00 00 call xed_decode
3 years ago
; 23 : NcAppendToBlock(Block, Link);
00137 48 8b 55 38 mov rdx, QWORD PTR Link$[rbp]
0013b 48 8b 8d 80 01
3 years ago
00 00 mov rcx, QWORD PTR Block$[rbp]
00142 e8 00 00 00 00 call ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcAppendToBlock
3 years ago
; 24 : return TRUE;
00147 b8 01 00 00 00 mov eax, 1
3 years ago
; 25 : }
0014c 8b f8 mov edi, eax
0014e 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00152 48 8d 15 00 00
3 years ago
00 00 lea rdx, OFFSET FLAT:?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcFrameData
00159 e8 00 00 00 00 call _RTC_CheckStackVars
0015e 8b c7 mov eax, edi
00160 48 8b 8d 50 01
3 years ago
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00167 48 33 cd xor rcx, rbp
0016a e8 00 00 00 00 call __security_check_cookie
0016f 48 8d a5 68 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+360]
00176 5f pop rdi
00177 5d pop rbp
00178 c3 ret 0
3 years ago
?JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z ENDP ; JitEmitRipRelativeXorW
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
RawData$ = 8
Link$ = 56
$T4 = 280
$T5 = 312
tv79 = 328
3 years ago
__$ArrayPad$ = 336
Block$ = 384
RipDelta$ = 392
Value$ = 400
?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA PROC ; `JitEmitRipRelativeXorW'::`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]
3 years ago
00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H
00019 48 8b 8d 38 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??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA ENDP ; `JitEmitRipRelativeXorW'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; COMDAT text$x
text$x SEGMENT
RawData$ = 8
Link$ = 56
$T4 = 280
$T5 = 312
tv79 = 328
3 years ago
__$ArrayPad$ = 336
Block$ = 384
RipDelta$ = 392
Value$ = 400
?dtor$0@?0??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA PROC ; `JitEmitRipRelativeXorW'::`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]
3 years ago
00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H
00019 48 8b 8d 38 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??JitEmitRipRelativeXorW@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA ENDP ; `JitEmitRipRelativeXorW'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File C:\@\Work\code-virtualizer\CodeVirtualizer\RipXorInst.cpp
3 years ago
; COMDAT ?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z
_TEXT SEGMENT
RawData$ = 8
Link$ = 56
$T4 = 280
$T5 = 312
tv79 = 328
3 years ago
__$ArrayPad$ = 336
Block$ = 384
RipDelta$ = 392
Value$ = 400
?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z PROC ; JitEmitRipRelativeXorD, COMDAT
; 4 : {
$LN6:
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 98 01
00 00 sub rsp, 408 ; 00000198H
00017 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001c 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00021 b9 2a 00 00 00 mov ecx, 42 ; 0000002aH
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 b8
01 00 00 mov rcx, QWORD PTR [rsp+440]
00035 48 8b 05 00 00
3 years ago
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 50 01
3 years ago
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__A82FFE99_RipXorInst@cpp
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
3 years ago
; 5 : UCHAR RawData[] = { 0x81, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
00052 c6 45 08 81 mov BYTE PTR RawData$[rbp], 129 ; 00000081H
00056 c6 45 09 35 mov BYTE PTR RawData$[rbp+1], 53 ; 00000035H
0005a c6 45 0a 00 mov BYTE PTR RawData$[rbp+2], 0
0005e c6 45 0b 00 mov BYTE PTR RawData$[rbp+3], 0
00062 c6 45 0c 00 mov BYTE PTR RawData$[rbp+4], 0
00066 c6 45 0d 00 mov BYTE PTR RawData$[rbp+5], 0
0006a c6 45 0e 00 mov BYTE PTR RawData$[rbp+6], 0
0006e c6 45 0f 00 mov BYTE PTR RawData$[rbp+7], 0
00072 c6 45 10 00 mov BYTE PTR RawData$[rbp+8], 0
00076 c6 45 11 00 mov BYTE PTR RawData$[rbp+9], 0
3 years ago
; 6 :
3 years ago
; 7 : PNATIVE_CODE_LINK Link = new NATIVE_CODE_LINK(CODE_FLAG_IS_INST | CODE_FLAG_DO_NOT_DIVIDE, RawData, sizeof(RawData));
3 years ago
0007a b9 f0 00 00 00 mov ecx, 240 ; 000000f0H
0007f e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new
00084 48 89 85 38 01
3 years ago
00 00 mov QWORD PTR $T5[rbp], rax
0008b 48 83 bd 38 01
3 years ago
00 00 00 cmp QWORD PTR $T5[rbp], 0
00093 74 2c je SHORT $LN3@JitEmitRip
00095 c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
0009d 41 b9 0a 00 00
3 years ago
00 mov r9d, 10
000a3 4c 8d 45 08 lea r8, QWORD PTR RawData$[rbp]
000a7 ba 0c 00 00 00 mov edx, 12
000ac 48 8b 8d 38 01
3 years ago
00 00 mov rcx, QWORD PTR $T5[rbp]
000b3 e8 00 00 00 00 call ??0_NATIVE_CODE_LINK@@QEAA@KPEAXKH@Z ; _NATIVE_CODE_LINK::_NATIVE_CODE_LINK
000b8 48 89 85 48 01
00 00 mov QWORD PTR tv79[rbp], rax
000bf eb 0b jmp SHORT $LN4@JitEmitRip
3 years ago
$LN3@JitEmitRip:
000c1 48 c7 85 48 01
3 years ago
00 00 00 00 00
00 mov QWORD PTR tv79[rbp], 0
3 years ago
$LN4@JitEmitRip:
000cc 48 8b 85 48 01
00 00 mov rax, QWORD PTR tv79[rbp]
000d3 48 89 85 18 01
3 years ago
00 00 mov QWORD PTR $T4[rbp], rax
000da 48 8b 85 18 01
3 years ago
00 00 mov rax, QWORD PTR $T4[rbp]
000e1 48 89 45 38 mov QWORD PTR Link$[rbp], rax
3 years ago
; 8 : *(PINT32)&Link->RawData[2] = RipDelta;
000e5 b8 01 00 00 00 mov eax, 1
000ea 48 6b c0 02 imul rax, rax, 2
000ee 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
000f2 48 8b 49 20 mov rcx, QWORD PTR [rcx+32]
000f6 8b 95 88 01 00
3 years ago
00 mov edx, DWORD PTR RipDelta$[rbp]
000fc 89 14 08 mov DWORD PTR [rax+rcx], edx
3 years ago
; 9 : *(PULONG)&Link->RawData[6] = Value;
000ff b8 01 00 00 00 mov eax, 1
00104 48 6b c0 06 imul rax, rax, 6
00108 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
0010c 48 8b 49 20 mov rcx, QWORD PTR [rcx+32]
00110 8b 95 90 01 00
3 years ago
00 mov edx, DWORD PTR Value$[rbp]
00116 89 14 08 mov DWORD PTR [rax+rcx], edx
3 years ago
; 10 : XedDecode(&Link->XedInstruction, Link->RawData, Link->RawDataSize);
00119 48 8b 45 38 mov rax, QWORD PTR Link$[rbp]
0011d 48 83 c0 30 add rax, 48 ; 00000030H
00121 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
00125 44 8b 41 28 mov r8d, DWORD PTR [rcx+40]
00129 48 8b 4d 38 mov rcx, QWORD PTR Link$[rbp]
0012d 48 8b 51 20 mov rdx, QWORD PTR [rcx+32]
00131 48 8b c8 mov rcx, rax
00134 e8 00 00 00 00 call xed_decode
3 years ago
; 11 : NcAppendToBlock(Block, Link);
00139 48 8b 55 38 mov rdx, QWORD PTR Link$[rbp]
0013d 48 8b 8d 80 01
3 years ago
00 00 mov rcx, QWORD PTR Block$[rbp]
00144 e8 00 00 00 00 call ?NcAppendToBlock@@YAXPEAU_NATIVE_CODE_BLOCK@@PEAU_NATIVE_CODE_LINK@@@Z ; NcAppendToBlock
3 years ago
; 12 : return TRUE;
00149 b8 01 00 00 00 mov eax, 1
3 years ago
; 13 : }
0014e 8b f8 mov edi, eax
00150 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00154 48 8d 15 00 00
3 years ago
00 00 lea rdx, OFFSET FLAT:?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z$rtcFrameData
0015b e8 00 00 00 00 call _RTC_CheckStackVars
00160 8b c7 mov eax, edi
00162 48 8b 8d 50 01
3 years ago
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00169 48 33 cd xor rcx, rbp
0016c e8 00 00 00 00 call __security_check_cookie
00171 48 8d a5 68 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+360]
00178 5f pop rdi
00179 5d pop rbp
0017a c3 ret 0
3 years ago
?JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z ENDP ; JitEmitRipRelativeXorD
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
RawData$ = 8
Link$ = 56
$T4 = 280
$T5 = 312
tv79 = 328
3 years ago
__$ArrayPad$ = 336
Block$ = 384
RipDelta$ = 392
Value$ = 400
?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA PROC ; `JitEmitRipRelativeXorD'::`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]
3 years ago
00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H
00019 48 8b 8d 38 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??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA ENDP ; `JitEmitRipRelativeXorD'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; COMDAT text$x
text$x SEGMENT
RawData$ = 8
Link$ = 56
$T4 = 280
$T5 = 312
tv79 = 328
3 years ago
__$ArrayPad$ = 336
Block$ = 384
RipDelta$ = 392
Value$ = 400
?dtor$0@?0??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA PROC ; `JitEmitRipRelativeXorD'::`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]
3 years ago
00014 ba f0 00 00 00 mov edx, 240 ; 000000f0H
00019 48 8b 8d 38 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??JitEmitRipRelativeXorD@@YAHPEAU_NATIVE_CODE_BLOCK@@HK@Z@4HA ENDP ; `JitEmitRipRelativeXorD'::`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\xloctime
3 years ago
; 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<wchar_t,std::istreambuf_iterator<wchar_t,std::char_traits<wchar_t> > >::_Getvals<wchar_t>, COMDAT
; 173 : void __CLR_OR_THIS_CALL _Getvals(_Elem2, const _Locinfo& _Lobj) { // get values
3 years ago
$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
3 years ago
; 174 : _Cvt = _Lobj._Getcvt();
3 years ago
0002a 48 8d 95 c8 00
3 years ago
00 00 lea rdx, QWORD PTR $T1[rbp]
00031 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
00038 ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ
0003e 48 8b 8d 30 01
3 years ago
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
3 years ago
; 175 :
; 176 : if (is_same_v<_Elem2, wchar_t>) {
3 years ago
00053 33 c0 xor eax, eax
00055 83 f8 01 cmp eax, 1
00058 74 5c je SHORT $LN2@Getvals
3 years ago
; 177 : _Days = reinterpret_cast<const _Elem*>(_Maklocwcs(reinterpret_cast<const wchar_t*>(_Lobj._W_Getdays())));
3 years ago
0005a 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
00061 ff 15 00 00 00
3 years ago
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
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
00076 48 89 41 10 mov QWORD PTR [rcx+16], rax
3 years ago
; 178 : _Months =
3 years ago
0007a 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
00081 ff 15 00 00 00
3 years ago
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
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
00096 48 89 41 18 mov QWORD PTR [rcx+24], rax
3 years ago
; 179 : reinterpret_cast<const _Elem*>(_Maklocwcs(reinterpret_cast<const wchar_t*>(_Lobj._W_Getmonths())));
; 180 : _Ampm = reinterpret_cast<const _Elem*>(_Maklocwcs(L":AM:am:PM:pm"));
3 years ago
0009a 48 8d 0d 00 00
3 years ago
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
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
000ad 48 89 41 20 mov QWORD PTR [rcx+32], rax
3 years ago
; 181 : } else {
3 years ago
000b1 e9 a3 00 00 00 jmp $LN3@Getvals
3 years ago
$LN2@Getvals:
; 182 : _Days = _Maklocstr(_Lobj._Getdays(), static_cast<_Elem*>(nullptr), _Cvt);
3 years ago
000b6 48 8b 85 30 01
3 years ago
00 00 mov rax, QWORD PTR this$[rbp]
000bd 48 83 c0 2c add rax, 44 ; 0000002cH
000c1 48 89 85 08 01
3 years ago
00 00 mov QWORD PTR tv85[rbp], rax
000c8 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
000cf ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_?_Getdays@_Locinfo@std@@QEBAPEBDXZ
000d5 48 8b 8d 08 01
3 years ago
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<wchar_t>
000e9 48 8b 8d 30 01
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
000f0 48 89 41 10 mov QWORD PTR [rcx+16], rax
3 years ago
; 183 : _Months = _Maklocstr(_Lobj._Getmonths(), static_cast<_Elem*>(nullptr), _Cvt);
3 years ago
000f4 48 8b 85 30 01
3 years ago
00 00 mov rax, QWORD PTR this$[rbp]
000fb 48 83 c0 2c add rax, 44 ; 0000002cH
000ff 48 89 85 08 01
3 years ago
00 00 mov QWORD PTR tv93[rbp], rax
00106 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
0010d ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_?_Getmonths@_Locinfo@std@@QEBAPEBDXZ
00113 48 8b 8d 08 01
3 years ago
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<wchar_t>
00127 48 8b 8d 30 01
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
0012e 48 89 41 18 mov QWORD PTR [rcx+24], rax
3 years ago
; 184 : _Ampm = _Maklocstr(":AM:am:PM:pm", static_cast<_Elem*>(nullptr), _Cvt);
3 years ago
00132 48 8b 85 30 01
3 years ago
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
3 years ago
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<wchar_t>
0014e 48 8b 8d 30 01
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
00155 48 89 41 20 mov QWORD PTR [rcx+32], rax
3 years ago
$LN3@Getvals:
; 185 : }
; 186 : }
3 years ago
00159 48 8d a5 10 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+272]
00160 5f pop rdi
00161 5e pop rsi
00162 5d pop rbp
00163 c3 ret 0
3 years ago
??$_Getvals@_W@?$time_get@_WV?$istreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ENDP ; std::time_get<wchar_t,std::istreambuf_iterator<wchar_t,std::char_traits<wchar_t> > >::_Getvals<wchar_t>
_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
3 years ago
; 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<char,std::istreambuf_iterator<char,std::char_traits<char> > >::_Getvals<wchar_t>, COMDAT
; 173 : void __CLR_OR_THIS_CALL _Getvals(_Elem2, const _Locinfo& _Lobj) { // get values
3 years ago
$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
3 years ago
; 174 : _Cvt = _Lobj._Getcvt();
3 years ago
0002a 48 8d 95 c8 00
3 years ago
00 00 lea rdx, QWORD PTR $T1[rbp]
00031 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
00038 ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ
0003e 48 8b 8d 30 01
3 years ago
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
3 years ago
; 175 :
; 176 : if (is_same_v<_Elem2, wchar_t>) {
3 years ago
00053 33 c0 xor eax, eax
00055 83 f8 01 cmp eax, 1
00058 74 5c je SHORT $LN2@Getvals
3 years ago
; 177 : _Days = reinterpret_cast<const _Elem*>(_Maklocwcs(reinterpret_cast<const wchar_t*>(_Lobj._W_Getdays())));
3 years ago
0005a 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
00061 ff 15 00 00 00
3 years ago
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
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
00076 48 89 41 10 mov QWORD PTR [rcx+16], rax
3 years ago
; 178 : _Months =
3 years ago
0007a 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
00081 ff 15 00 00 00
3 years ago
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
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
00096 48 89 41 18 mov QWORD PTR [rcx+24], rax
3 years ago
; 179 : reinterpret_cast<const _Elem*>(_Maklocwcs(reinterpret_cast<const wchar_t*>(_Lobj._W_Getmonths())));
; 180 : _Ampm = reinterpret_cast<const _Elem*>(_Maklocwcs(L":AM:am:PM:pm"));
3 years ago
0009a 48 8d 0d 00 00
3 years ago
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
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
000ad 48 89 41 20 mov QWORD PTR [rcx+32], rax
3 years ago
; 181 : } else {
3 years ago
000b1 e9 a3 00 00 00 jmp $LN3@Getvals
3 years ago
$LN2@Getvals:
; 182 : _Days = _Maklocstr(_Lobj._Getdays(), static_cast<_Elem*>(nullptr), _Cvt);
3 years ago
000b6 48 8b 85 30 01
3 years ago
00 00 mov rax, QWORD PTR this$[rbp]
000bd 48 83 c0 2c add rax, 44 ; 0000002cH
000c1 48 89 85 08 01
3 years ago
00 00 mov QWORD PTR tv85[rbp], rax
000c8 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
000cf ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_?_Getdays@_Locinfo@std@@QEBAPEBDXZ
000d5 48 8b 8d 08 01
3 years ago
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<char>
000e9 48 8b 8d 30 01
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
000f0 48 89 41 10 mov QWORD PTR [rcx+16], rax
3 years ago
; 183 : _Months = _Maklocstr(_Lobj._Getmonths(), static_cast<_Elem*>(nullptr), _Cvt);
3 years ago
000f4 48 8b 85 30 01
3 years ago
00 00 mov rax, QWORD PTR this$[rbp]
000fb 48 83 c0 2c add rax, 44 ; 0000002cH
000ff 48 89 85 08 01
3 years ago
00 00 mov QWORD PTR tv93[rbp], rax
00106 48 8b 8d 40 01
3 years ago
00 00 mov rcx, QWORD PTR _Lobj$[rbp]
0010d ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_?_Getmonths@_Locinfo@std@@QEBAPEBDXZ
00113 48 8b 8d 08 01
3 years ago
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<char>
00127 48 8b 8d 30 01
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
0012e 48 89 41 18 mov QWORD PTR [rcx+24], rax
3 years ago
; 184 : _Ampm = _Maklocstr(":AM:am:PM:pm", static_cast<_Elem*>(nullptr), _Cvt);
3 years ago
00132 48 8b 85 30 01
3 years ago
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
3 years ago
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<char>
0014e 48 8b 8d 30 01
3 years ago
00 00 mov rcx, QWORD PTR this$[rbp]
00155 48 89 41 20 mov QWORD PTR [rcx+32], rax
3 years ago
$LN3@Getvals:
; 185 : }
; 186 : }
3 years ago
00159 48 8d a5 10 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+272]
00160 5f pop rdi
00161 5e pop rsi
00162 5d pop rbp
00163 c3 ret 0
3 years ago
??$_Getvals@_W@?$time_get@DV?$istreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@IEAAX_WAEBV_Locinfo@1@@Z ENDP ; std::time_get<char,std::istreambuf_iterator<char,std::char_traits<char> > >::_Getvals<wchar_t>
_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
3 years ago
; 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<char>, COMDAT
; 522 : _Elem* __CRTDECL _Maklocstr(const char* _Ptr, _Elem*, const _Locinfo::_Cvtvec&) {
3 years ago
$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
3 years ago
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
3 years ago
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
3 years ago
00 call QWORD PTR __imp__calloc_dbg
00060 48 89 45 28 mov QWORD PTR _Ptrdest$[rbp], rax
3 years ago
; 527 :
; 528 : if (!_Ptrdest) {
3 years ago
00064 48 83 7d 28 00 cmp QWORD PTR _Ptrdest$[rbp], 0
00069 75 05 jne SHORT $LN5@Maklocstr
3 years ago
; 529 : _Xbad_alloc();
3 years ago
0006b e8 00 00 00 00 call ?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc
3 years ago
$LN5@Maklocstr:
; 530 : }
; 531 :
; 532 : for (_Elem* _Ptrnext = _Ptrdest; 0 < _Count; --_Count, ++_Ptrnext, ++_Ptr) {
3 years ago
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
3 years ago
$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
3 years ago
00 00 mov rax, QWORD PTR _Ptr$[rbp]
00097 48 ff c0 inc rax
0009a 48 89 85 40 01
3 years ago
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
3 years ago
; 533 : *_Ptrnext = static_cast<_Elem>(static_cast<unsigned char>(*_Ptr));
3 years ago
000a8 48 8b 45 48 mov rax, QWORD PTR _Ptrnext$1[rbp]
000ac 48 8b 8d 40 01
3 years ago
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
3 years ago
; 534 : }
3 years ago
000b8 eb c0 jmp SHORT $LN2@Maklocstr
3 years ago
$LN3@Maklocstr:
; 535 :
; 536 : return _Ptrdest;
3 years ago
000ba 48 8b 45 28 mov rax, QWORD PTR _Ptrdest$[rbp]
3 years ago
$LN6@Maklocstr:
; 537 : }
3 years ago
000be 48 8d a5 28 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+296]
000c5 5f pop rdi
000c6 5d pop rbp
000c7 c3 ret 0
3 years ago
??$_Maklocstr@D@std@@YAPEADPEBDPEADAEBU_Cvtvec@@@Z ENDP ; std::_Maklocstr<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\xlocnum
3 years ago
; 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
3 years ago
; 91 : const size_t _Count = _CSTD wcslen(_Ptr) + 1;
0001f 48 8b 8d 20 01
3 years ago
00 00 mov rcx, QWORD PTR _Ptr$[rbp]
00026 ff 15 00 00 00
3 years ago
00 call QWORD PTR __imp_wcslen
0002c 48 ff c0 inc rax
0002f 48 89 45 08 mov QWORD PTR _Count$[rbp], rax
3 years ago
; 92 :
; 93 : wchar_t* _Ptrdest = static_cast<wchar_t*>(_calloc_dbg(_Count, sizeof(wchar_t), _CRT_BLOCK, __FILE__, __LINE__));
00033 8b 05 00 00 00
3 years ago
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
3 years ago
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
3 years ago
00 call QWORD PTR __imp__calloc_dbg
0005c 48 89 45 28 mov QWORD PTR _Ptrdest$[rbp], rax
3 years ago
; 94 :
; 95 : if (!_Ptrdest) {
00060 48 83 7d 28 00 cmp QWORD PTR _Ptrdest$[rbp], 0
00065 75 05 jne SHORT $LN2@Maklocwcs
3 years ago
; 96 : _Xbad_alloc();
00067 e8 00 00 00 00 call ?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc
3 years ago
$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
3 years ago
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
3 years ago
; 100 : return _Ptrdest;
00080 48 8b 45 28 mov rax, QWORD PTR _Ptrdest$[rbp]
3 years ago
$LN3@Maklocwcs:
; 101 : }
00084 48 8d a5 08 01
3 years ago
00 00 lea rsp, QWORD PTR [rbp+264]
0008b 5f pop rdi
0008c 5d pop rbp
0008d c3 ret 0
3 years ago
?_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
3 years ago
; 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<wchar_t>, COMDAT
; 540 : inline wchar_t* __CRTDECL _Maklocstr(const char* _Ptr, wchar_t*, const _Locinfo::_Cvtvec& _Cvt) {
3 years ago
$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
3 years ago
02 00 00 mov rcx, QWORD PTR [rsp+600]
00036 48 8b 05 00 00
3 years ago
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 f8 01
3 years ago
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
3 years ago
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
3 years ago
; 549 :
; 550 : _Count1 = _CSTD strlen(_Ptr) + 1;
3 years ago
00066 48 8b 8d 20 02
3 years ago
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
3 years ago
; 551 : for (_Count = _Count1, _Wchars = 0, _Ptr1 = _Ptr; 0 < _Count; _Count -= _Bytes, _Ptr1 += _Bytes, ++_Wchars) {
3 years ago
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
3 years ago
00 00 00 mov QWORD PTR _Wchars$[rbp], 0
00089 48 8b 85 20 02
3 years ago
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
3 years ago
$LN2@Maklocstr:
00096 48 63 85 84 00
3 years ago
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
3 years ago
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
3 years ago
$LN4@Maklocstr:
000cb 48 83 7d 08 00 cmp QWORD PTR _Count$[rbp], 0
000d0 76 3a jbe SHORT $LN3@Maklocstr
3 years ago
; 552 : if ((_Bytes = _Mbrtowc(&_Wc, _Ptr1, _Count, &_Mbst1, &_Cvt)) <= 0) {
3 years ago
000d2 48 8b 85 30 02
3 years ago
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
3 years ago
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
3 years ago
00 00 lea rcx, QWORD PTR _Wc$[rbp]
000f4 e8 00 00 00 00 call _Mbrtowc
000f9 89 85 84 00 00
3 years ago
00 mov DWORD PTR _Bytes$[rbp], eax
000ff 83 bd 84 00 00
3 years ago
00 00 cmp DWORD PTR _Bytes$[rbp], 0
00106 7f 02 jg SHORT $LN8@Maklocstr
3 years ago
; 553 : break;
3 years ago
00108 eb 02 jmp SHORT $LN3@Maklocstr
3 years ago
$LN8@Maklocstr:
; 554 : }
; 555 : }
3 years ago
0010a eb 8a jmp SHORT $LN2@Maklocstr
3 years ago
$LN3@Maklocstr:
; 556 :
; 557 : ++_Wchars; // count terminating nul
3 years ago
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
3 years ago
; 558 :
; 559 : wchar_t* _Ptrdest = static_cast<wchar_t*>(_calloc_dbg(_Wchars, sizeof(wchar_t), _CRT_BLOCK, __FILE__, __LINE__));
3 years ago
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
3 years ago
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
3 years ago
00 call QWORD PTR __imp__calloc_dbg
0013b 48 89 85 e8 00
3 years ago
00 00 mov QWORD PTR _Ptrdest$[rbp], rax
; 560 :
; 561 : if (!_Ptrdest) {
3 years ago
00142 48 83 bd e8 00
3 years ago
00 00 00 cmp QWORD PTR _Ptrdest$[rbp], 0
0014a 75 05 jne SHORT $LN9@Maklocstr
3 years ago
; 562 : _Xbad_alloc();
3 years ago
0014c e8 00 00 00 00 call ?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc
3 years ago
$LN9@Maklocstr:
; 563 : }
; 564 :
; 565 : wchar_t* _Ptrnext = _Ptrdest;
3 years ago
00151 48 8b 85 e8 00
3 years ago
00 00 mov rax, QWORD PTR _Ptrdest$[rbp]
00158 48 89 85 08 01
3 years ago
00 00 mov QWORD PTR _Ptrnext$[rbp], rax
; 566 : mbstate_t _Mbst2 = {};
3 years ago
0015f 48 8d 85 28 01
3 years ago
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
3 years ago
; 567 :
; 568 : for (; 0 < _Wchars; _Count -= _Bytes, _Ptr += _Bytes, --_Wchars, ++_Ptrnext) {
3 years ago
00172 eb 4d jmp SHORT $LN7@Maklocstr
3 years ago
$LN5@Maklocstr:
00174 48 63 85 84 00
3 years ago
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
3 years ago
00 00 movsxd rax, DWORD PTR _Bytes$[rbp]
00190 48 8b 8d 20 02
3 years ago
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
3 years ago
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
3 years ago
00 00 mov rax, QWORD PTR _Ptrnext$[rbp]
001b6 48 83 c0 02 add rax, 2
001ba 48 89 85 08 01
3 years ago
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
3 years ago
; 569 : if ((_Bytes = _Mbrtowc(_Ptrnext, _Ptr, _Count1, &_Mbst2, &_Cvt)) <= 0) {
3 years ago
001c8 48 8b 85 30 02
3 years ago
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
3 years ago
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
3 years ago
00 00 mov rdx, QWORD PTR _Ptr$[rbp]
001e6 48 8b 8d 08 01
3 years ago
00 00 mov rcx, QWORD PTR _Ptrnext$[rbp]
001ed e8 00 00 00 00 call _Mbrtowc
001f2 89 85 84 00 00
3 years ago
00 mov DWORD PTR _Bytes$[rbp], eax
001f8 83 bd 84 00 00
3 years ago
00 00 cmp DWORD PTR _Bytes$[rbp], 0
001ff 7f 02 jg SHORT $LN10@Maklocstr
3 years ago
; 570 : break;
3 years ago
00201 eb 05 jmp SHORT $LN6@Maklocstr
3 years ago
$LN10@Maklocstr:
; 571 : }
; 572 : }
3 years ago
00203 e9 6c ff ff ff jmp $LN5@Maklocstr
3 years ago
$LN6@Maklocstr:
; 573 :
; 574 : *_Ptrnext = L'\0';
3 years ago
00208 33 c0 xor eax, eax
0020a 48 8b 8d 08 01
3 years ago
00 00 mov rcx, QWORD PTR _Ptrnext$[rbp]
00211 66 89 01 mov WORD PTR [rcx], ax
3 years ago
; 575 :
; 576 : return _Ptrdest;
3 years ago
00214 48 8b 85 e8 00
3 years ago
00 00 mov rax, QWORD PTR _Ptrdest$[rbp]
$LN11@Maklocstr:
; 577 : }
3 years ago
0021b 48 8b f8 mov rdi, rax
0021e 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00222 48 8d 15 00 00
3 years ago
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
3 years ago
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
3 years ago
00 00 lea rsp, QWORD PTR [rbp+520]
00247 5f pop rdi
00248 5d pop rbp
00249 c3 ret 0
3 years ago
??$_Maklocstr@_W@std@@YAPEA_WPEBDPEA_WAEBU_Cvtvec@@@Z ENDP ; std::_Maklocstr<wchar_t>
_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
3 years ago
00 00 lea rcx, OFFSET FLAT:__93DC0B45_wchar@h
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
3 years ago
; 235 : #pragma warning(suppress: 6386) // Buffer overrun
; 236 : return (wchar_t*)memcpy(_S1, _S2, _N*sizeof(wchar_t));
00029 48 8b 85 f0 00
3 years ago
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
3 years ago
00 00 mov rdx, QWORD PTR _S2$[rbp]
0003d 48 8b 8d e0 00
3 years ago
00 00 mov rcx, QWORD PTR _S1$[rbp]
00044 e8 00 00 00 00 call memcpy
3 years ago
; 237 : }
00049 48 8d a5 c8 00
3 years ago
00 00 lea rsp, QWORD PTR [rbp+200]
00050 5f pop rdi
00051 5d pop rbp
00052 c3 ret 0
3 years ago
wmemcpy ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File C:\@\Work\code-virtualizer\CodeVirtualizer\RipXorInst.cpp
3 years ago
; 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:__A82FFE99_RipXorInst@cpp
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00029 48 8d a5 c8 00
3 years ago
00 00 lea rsp, QWORD PTR [rbp+200]
00030 5f pop rdi
00031 5d pop rbp
00032 c3 ret 0
3 years ago
?__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\RipXorInst.cpp
3 years ago
; 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:__A82FFE99_RipXorInst@cpp
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00024 48 8d a5 c8 00
3 years ago
00 00 lea rsp, QWORD PTR [rbp+200]
0002b 5f pop rdi
0002c 5d pop rbp
0002d c3 ret 0
3 years ago
?__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\RipXorInst.cpp
3 years ago
; 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:__A82FFE99_RipXorInst@cpp
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
00024 48 8d a5 c8 00
3 years ago
00 00 lea rsp, QWORD PTR [rbp+200]
0002b 5f pop rdi
0002c 5d pop rbp
0002d c3 ret 0
3 years ago
?__empty_global_delete@@YAXPEAX_K@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File C:\@\Work\code-virtualizer\CodeVirtualizer\RipXorInst.cpp
3 years ago
; 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:__A82FFE99_RipXorInst@cpp
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
0001f 48 8d a5 c8 00
3 years ago
00 00 lea rsp, QWORD PTR [rbp+200]
00026 5f pop rdi
00027 5d pop rbp
00028 c3 ret 0
3 years ago
?__empty_global_delete@@YAXPEAX@Z ENDP ; __empty_global_delete
_TEXT ENDS
END