SmsCenter/Release_Unicode/Des.cod

9017 lines
308 KiB
Plaintext
Raw Blame History

; Listing generated by Microsoft (R) Optimizing Compiler Version 19.34.31933.0
include listing.inc
INCLUDELIB LIBCMT
INCLUDELIB OLDNAMES
CONST SEGMENT
$SG321074 DB 'A', 00H, 'p', 00H, 'p', 00H, 'E', 00H, 'r', 00H, 'r', 00H
DB 'o', 00H, 'r', 00H, 00H, 00H
ORG $+6
$SG321075 DB 'L', 00H, 'o', 00H, 'g', 00H, 00H, 00H
$SG321076 DB 'Encrypt', 00H
$SG321077 DB 'D:\Works\Corpsms_2010\public\des\Des.cpp', 00H
ORG $+3
$SG321078 DB 'T', 00H, 00H, 00H
$SG321096 DB 'A', 00H, 'p', 00H, 'p', 00H, 'E', 00H, 'r', 00H, 'r', 00H
DB 'o', 00H, 'r', 00H, 00H, 00H
ORG $+2
$SG321100 DB 'T', 00H, 00H, 00H
$SG321097 DB 'L', 00H, 'o', 00H, 'g', 00H, 00H, 00H
$SG321098 DB 'Decrypt', 00H
$SG321099 DB 'D:\Works\Corpsms_2010\public\des\Des.cpp', 00H
ORG $+3
$SG321116 DB '%02X', 00H
CONST ENDS
PUBLIC ?__empty_global_delete@@YAXPEAX@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPEAX_K@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ; __empty_global_delete
PUBLIC __local_stdio_printf_options
PUBLIC _vsnprintf_l
PUBLIC _vsprintf_l
PUBLIC sprintf
PUBLIC ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
PUBLIC ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
PUBLIC ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ; ATL::Checked::wmemcpy_s
PUBLIC ?AtlStrLen@ATL@@YAHPEB_W@Z ; ATL::AtlStrLen
PUBLIC ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
PUBLIC ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
PUBLIC ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
PUBLIC ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked
PUBLIC ?IsShared@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsShared
PUBLIC ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
PUBLIC ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
PUBLIC ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
PUBLIC ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
PUBLIC ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
PUBLIC ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
PUBLIC ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
PUBLIC ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
PUBLIC ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
PUBLIC ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
PUBLIC ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
PUBLIC ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
PUBLIC ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
PUBLIC ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
PUBLIC ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
PUBLIC ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
PUBLIC ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
PUBLIC ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
PUBLIC ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
PUBLIC ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
PUBLIC ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
PUBLIC ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
PUBLIC ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
PUBLIC ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
PUBLIC ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
PUBLIC ?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z ; CDes::Encrypt
PUBLIC ?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z ; CDes::Decrypt
PUBLIC ??0CDes@@QEAA@XZ ; CDes::CDes
PUBLIC ??1CDes@@UEAA@XZ ; CDes::~CDes
PUBLIC ?AsciiToHex@CDes@@IEAAXPEAD0J@Z ; CDes::AsciiToHex
PUBLIC ?CharHex@CDes@@IEAAJD@Z ; CDes::CharHex
PUBLIC ?HexToAscii@CDes@@IEAAXPEAD0@Z ; CDes::HexToAscii
PUBLIC ?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z ; CDes::Des_Go
PUBLIC ?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z ; CDes::DES
PUBLIC ?SetKey@CDes@@IEAAXPEBDH@Z ; CDes::SetKey
PUBLIC ?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z ; CDes::SetSubKey
PUBLIC ?F_func@CDes@@IEAAXQEA_NQEB_N@Z ; CDes::F_func
PUBLIC ?S_func@CDes@@IEAAXQEA_NQEB_N@Z ; CDes::S_func
PUBLIC ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
PUBLIC ?Xor@CDes@@IEAAXPEA_NPEB_NH@Z ; CDes::Xor
PUBLIC ?RotateL@CDes@@IEAAXPEA_NHH@Z ; CDes::RotateL
PUBLIC ?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z ; CDes::ByteToBit
PUBLIC ?BitToByte@CDes@@IEAAXPEADPEB_NH@Z ; CDes::BitToByte
PUBLIC ??_GCDes@@UEAAPEAXI@Z ; CDes::`scalar deleting destructor'
PUBLIC ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage
PUBLIC ??_7CDes@@6B@ ; CDes::`vftable'
PUBLIC ??_R4CDes@@6B@ ; CDes::`RTTI Complete Object Locator'
PUBLIC ??_R0?AVCDes@@@8 ; CDes `RTTI Type Descriptor'
PUBLIC ??_R3CDes@@8 ; CDes::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2CDes@@8 ; CDes::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@CDes@@8 ; CDes::`RTTI Base Class Descriptor at (0,-1,0,64)'
EXTRN ??3@YAXPEAX_K@Z:PROC ; operator delete
EXTRN __report_rangecheckfailure:PROC
EXTRN _invalid_parameter_noinfo:PROC
EXTRN __stdio_common_vsprintf:PROC
EXTRN _errno:PROC
EXTRN memcpy:PROC
EXTRN memmove:PROC
EXTRN memset:PROC
EXTRN wcslen:PROC
EXTRN strlen:PROC
EXTRN wmemcpy_s:PROC
EXTRN __imp_LoadResource:PROC
EXTRN __imp_LockResource:PROC
EXTRN __imp_SizeofResource:PROC
EXTRN __imp_FindResourceW:PROC
EXTRN ?AfxThrowMemoryException@@YAXXZ:PROC ; AfxThrowMemoryException
EXTRN ?AfxThrowInvalidArgException@@YAXXZ:PROC ; AfxThrowInvalidArgException
EXTRN ?AfxThrowOleException@@YAXJ@Z:PROC ; AfxThrowOleException
EXTRN ?AfxFindStringResourceHandle@@YAPEAUHINSTANCE__@@I@Z:PROC ; AfxFindStringResourceHandle
EXTRN ?AfxGetStringManager@@YAPEAUIAtlStringMgr@ATL@@XZ:PROC ; AfxGetStringManager
EXTRN ??0CSAStatusLog@@QEAA@XZ:PROC ; CSAStatusLog::CSAStatusLog
EXTRN ??1CSAStatusLog@@QEAA@XZ:PROC ; CSAStatusLog::~CSAStatusLog
EXTRN ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z:PROC ; CSAStatusLog::Init
EXTRN ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z:PROC ; CSAStatusLog::LogError
EXTRN ??_ECDes@@UEAAPEAXI@Z:PROC ; CDes::`vector deleting destructor'
EXTRN __CxxFrameHandler4:PROC
EXTRN __GSHandlerCheck:PROC
EXTRN __GSHandlerCheck_EH4:PROC
EXTRN __chkstk:PROC
EXTRN __security_check_cookie:PROC
EXTRN ??_7type_info@@6B@:BYTE ; type_info::`vftable'
EXTRN __security_cookie:QWORD
; COMDAT ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA
_BSS SEGMENT
?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA DQ 01H DUP (?) ; `__local_stdio_printf_options'::`2'::_OptionsStorage
_BSS ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_vsnprintf_l DD imagerel $LN5
DD imagerel $LN5+117
DD imagerel $unwind$_vsnprintf_l
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_vsprintf_l DD imagerel $LN3
DD imagerel $LN3+66
DD imagerel $unwind$_vsprintf_l
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$sprintf DD imagerel $LN3
DD imagerel $LN3+79
DD imagerel $unwind$sprintf
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$memcpy_s DD imagerel memcpy_s
DD imagerel memcpy_s+313
DD imagerel $unwind$memcpy_s
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$memmove_s DD imagerel memmove_s
DD imagerel memmove_s+265
DD imagerel $unwind$memmove_s
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AfxCrtErrorCheck@@YAHH@Z DD imagerel $LN11
DD imagerel $LN11+83
DD imagerel $unwind$?AfxCrtErrorCheck@@YAHH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AtlThrowImpl@ATL@@YAXJ@Z DD imagerel $LN5
DD imagerel $LN5+39
DD imagerel $unwind$?AtlThrowImpl@ATL@@YAXJ@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z DD imagerel $LN3
DD imagerel $LN3+61
DD imagerel $unwind$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AtlStrLen@ATL@@YAHPEB_W@Z DD imagerel $LN4
DD imagerel $LN4+36
DD imagerel $unwind$?AtlStrLen@ATL@@YAHPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DD imagerel $LN9
DD imagerel $LN9+233
DD imagerel $unwind$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DD imagerel $LN4
DD imagerel $LN4+92
DD imagerel $unwind$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?IsLocked@CStringData@ATL@@QEBA_NXZ DD imagerel $LN5
DD imagerel $LN5+45
DD imagerel $unwind$?IsLocked@CStringData@ATL@@QEBA_NXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?IsShared@CStringData@ATL@@QEBA_NXZ DD imagerel $LN5
DD imagerel $LN5+45
DD imagerel $unwind$?IsShared@CStringData@ATL@@QEBA_NXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Release@CStringData@ATL@@QEAAXXZ DD imagerel $LN4
DD imagerel $LN4+87
DD imagerel $unwind$?Release@CStringData@ATL@@QEAAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DD imagerel $LN3
DD imagerel $LN3+25
DD imagerel $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z DD imagerel $LN4
DD imagerel $LN4+82
DD imagerel $unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD imagerel $LN12
DD imagerel $LN12+123
DD imagerel $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ DD imagerel $LN3
DD imagerel $LN3+39
DD imagerel $unwind$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3
DD imagerel $LN3+39
DD imagerel $unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DD imagerel $LN6
DD imagerel $LN6+133
DD imagerel $unwind$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD imagerel $LN3
DD imagerel $LN3+27
DD imagerel $unwind$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z DD imagerel $LN3
DD imagerel $LN3+32
DD imagerel $unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD imagerel $LN3
DD imagerel $LN3+27
DD imagerel $unwind$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z DD imagerel $LN3
DD imagerel $LN3+32
DD imagerel $unwind$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD imagerel $LN3
DD imagerel $LN3+47
DD imagerel $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD imagerel $LN8
DD imagerel $LN8+264
DD imagerel $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DD imagerel $LN3
DD imagerel $LN3+67
DD imagerel $unwind$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DD imagerel $LN4
DD imagerel $LN4+37
DD imagerel $unwind$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ DD imagerel $LN3
DD imagerel $LN3+19
DD imagerel $unwind$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z DD imagerel $LN3
DD imagerel $LN3+37
DD imagerel $unwind$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN6
DD imagerel $LN6+267
DD imagerel $unwind$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z DD imagerel $LN5
DD imagerel $LN5+125
DD imagerel $unwind$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN10
DD imagerel $LN10+196
DD imagerel $unwind$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN6
DD imagerel $LN6+149
DD imagerel $unwind$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN5
DD imagerel $LN5+90
DD imagerel $unwind$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DD imagerel $LN5
DD imagerel $LN5+81
DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA
DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA+24
DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD imagerel $LN4
DD imagerel $LN4+25
DD imagerel $unwind$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA
DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA+24
DD imagerel $unwind$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3
DD imagerel $LN3+39
DD imagerel $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z DD imagerel $LN4
DD imagerel $LN4+64
DD imagerel $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z DD imagerel $LN4
DD imagerel $LN4+158
DD imagerel $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z DD imagerel $LN5
DD imagerel $LN5+88
DD imagerel $unwind$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DD imagerel $LN3
DD imagerel $LN3+23
DD imagerel $unwind$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DD imagerel $LN3
DD imagerel $LN3+15
DD imagerel $unwind$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DD imagerel $LN15
DD imagerel $LN15+421
DD imagerel $unwind$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+221
DD imagerel $unwind$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+27
DD imagerel $unwind$?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+24
DD imagerel $unwind$?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+24
DD imagerel $unwind$?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DD imagerel $LN14
DD imagerel $LN14+301
DD imagerel $unwind$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+221
DD imagerel $unwind$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+27
DD imagerel $unwind$?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+24
DD imagerel $unwind$?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD imagerel ?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel ?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA+24
DD imagerel $unwind$?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AsciiToHex@CDes@@IEAAXPEAD0J@Z DD imagerel $LN6
DD imagerel $LN6+127
DD imagerel $unwind$?AsciiToHex@CDes@@IEAAXPEAD0J@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?HexToAscii@CDes@@IEAAXPEAD0@Z DD imagerel $LN8
DD imagerel $LN8+278
DD imagerel $unwind$?HexToAscii@CDes@@IEAAXPEAD0@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z DD imagerel $LN15
DD imagerel $LN15+535
DD imagerel $unwind$?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z DD imagerel $LN11
DD imagerel $LN11+578
DD imagerel $unwind$?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetKey@CDes@@IEAAXPEBDH@Z DD imagerel $LN7
DD imagerel $LN7+261
DD imagerel $unwind$?SetKey@CDes@@IEAAXPEBDH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z DD imagerel $LN6
DD imagerel $LN6+383
DD imagerel $unwind$?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?F_func@CDes@@IEAAXQEA_NQEB_N@Z DD imagerel $LN3
DD imagerel $LN3+215
DD imagerel $unwind$?F_func@CDes@@IEAAXQEA_NQEB_N@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?S_func@CDes@@IEAAXQEA_NQEB_N@Z DD imagerel $LN6
DD imagerel $LN6+288
DD imagerel $unwind$?S_func@CDes@@IEAAXQEA_NQEB_N@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Transform@CDes@@IEAAXPEA_N0PEBDH@Z DD imagerel $LN6
DD imagerel $LN6+139
DD imagerel $unwind$?Transform@CDes@@IEAAXPEA_N0PEBDH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Xor@CDes@@IEAAXPEA_NPEB_NH@Z DD imagerel $LN6
DD imagerel $LN6+97
DD imagerel $unwind$?Xor@CDes@@IEAAXPEA_NPEB_NH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?RotateL@CDes@@IEAAXPEA_NHH@Z DD imagerel $LN3
DD imagerel $LN3+170
DD imagerel $unwind$?RotateL@CDes@@IEAAXPEA_NHH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z DD imagerel $LN6
DD imagerel $LN6+97
DD imagerel $unwind$?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?BitToByte@CDes@@IEAAXPEADPEB_NH@Z DD imagerel $LN6
DD imagerel $LN6+149
DD imagerel $unwind$?BitToByte@CDes@@IEAAXPEADPEB_NH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??_GCDes@@UEAAPEAXI@Z DD imagerel $LN4
DD imagerel $LN4+59
DD imagerel $unwind$??_GCDes@@UEAAPEAXI@Z
pdata ENDS
; COMDAT ??_R1A@?0A@EA@CDes@@8
rdata$r SEGMENT
??_R1A@?0A@EA@CDes@@8 DD imagerel ??_R0?AVCDes@@@8 ; CDes::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 00H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD imagerel ??_R3CDes@@8
rdata$r ENDS
; COMDAT ??_R2CDes@@8
rdata$r SEGMENT
??_R2CDes@@8 DD imagerel ??_R1A@?0A@EA@CDes@@8 ; CDes::`RTTI Base Class Array'
ORG $+3
rdata$r ENDS
; COMDAT ??_R3CDes@@8
rdata$r SEGMENT
??_R3CDes@@8 DD 00H ; CDes::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 01H
DD imagerel ??_R2CDes@@8
rdata$r ENDS
; COMDAT ??_R0?AVCDes@@@8
data$rs SEGMENT
??_R0?AVCDes@@@8 DQ FLAT:??_7type_info@@6B@ ; CDes `RTTI Type Descriptor'
DQ 0000000000000000H
DB '.?AVCDes@@', 00H
data$rs ENDS
; COMDAT ??_R4CDes@@6B@
rdata$r SEGMENT
??_R4CDes@@6B@ DD 01H ; CDes::`RTTI Complete Object Locator'
DD 00H
DD 00H
DD imagerel ??_R0?AVCDes@@@8
DD imagerel ??_R3CDes@@8
DD imagerel ??_R4CDes@@6B@
rdata$r ENDS
; COMDAT ??_7CDes@@6B@
CONST SEGMENT
??_7CDes@@6B@ DQ FLAT:??_R4CDes@@6B@ ; CDes::`vftable'
DQ FLAT:??_ECDes@@UEAAPEAXI@Z
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??_GCDes@@UEAAPEAXI@Z DD 010d01H
DD 0420dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?BitToByte@CDes@@IEAAXPEADPEB_NH@Z DD 011801H
DD 06218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z DD 011801H
DD 02218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?RotateL@CDes@@IEAAXPEA_NHH@Z DD 011801H
DD 06218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Xor@CDes@@IEAAXPEA_NPEB_NH@Z DD 011801H
DD 02218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Transform@CDes@@IEAAXPEA_N0PEBDH@Z DD 011801H
DD 06218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?S_func@CDes@@IEAAXQEA_NQEB_N@Z DD 011301H
DD 06213H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 01dH
DB 0c5H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?F_func@CDes@@IEAAXQEA_NQEB_N@Z DD 012219H
DD 0e213H
DD imagerel __GSHandlerCheck
DD 060H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 020H
DW 0167H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z DD 022819H
DD 0150116H
DD imagerel __GSHandlerCheck
DD 090H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetKey@CDes@@IEAAXPEBDH@Z DD 011301H
DD 06213H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 025H
DW 022aH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z DD 022d19H
DD 019011bH
DD imagerel __GSHandlerCheck
DD 0b0H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z DD 011801H
DD 0a218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?HexToAscii@CDes@@IEAAXPEAD0@Z DD 011301H
DD 0a213H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AsciiToHex@CDes@@IEAAXPEAD0J@Z DD 011801H
DD 06218H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 02cH
DW 0114H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DB 010H
DB 00H
DB 02H
DB 01aH
DB 02H
DB 01aH
DB 04H
DB 'N'
DB 06H
DB '^'
DB 08H
DB 016H
DB 04H
DB 082H
DB 02H
DB '&'
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DB 02eH
DD imagerel ?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DB 02eH
DD imagerel ?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel $ip2state$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DB 0b0H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020a19H
DD 05006720aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 06H
DB 00H
DB 00H
DB 'u', 02H
DB 02H
DB 092H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 02H
DB 00H
DD imagerel ?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 018H
DD imagerel $stateUnwindMap$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
DD imagerel $tryMap$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
DD imagerel $ip2state$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DD 033419H
DD 03900122H
DD 07015H
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
DD 01c73H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 02cH
DW 018cH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DB 010H
DB 00H
DB 02H
DB 01aH
DB 02H
DB 01aH
DB 04H
DB 'N'
DB 06H
DB '^'
DB 08H
DB 016H
DB 04H
DB 082H
DB 02H
DB '&'
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DB 02eH
DD imagerel ?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DB 02eH
DD imagerel ?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DD imagerel $ip2state$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
DB 0b0H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA DD 020a19H
DD 05006720aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 06H
DB 00H
DB 00H
DB 'q', 03H
DB 02H
DB 092H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 02H
DB 00H
DD imagerel ?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DB 018H
DD imagerel $stateUnwindMap$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
DD imagerel $tryMap$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
DD imagerel $ip2state$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z DD 033419H
DD 03900122H
DD 07015H
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
DD 01c73H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DB 040H
DD imagerel $ip2state$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DD 010419H
DD 04204H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DB 040H
DD imagerel $ip2state$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DD 010819H
DD 04208H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z DD 010e01H
DD 0620eH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z DD 011301H
DD 08213H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z DD 010d01H
DD 0620dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD 010e01H
DD 0420eH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H
DB 0eH
DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 048H
DD imagerel $stateUnwindMap$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
DD imagerel $ip2state$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD 010911H
DD 04209H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DB 06H
DB 00H
DB 00H
DB 'B'
DB 02H
DB 'L'
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DB 02H
DB 0eH
DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DB 08H
DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DD 010e11H
DD 0420eH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H
DD 0420dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H
DD 0820dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H
DD 0620dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z DD 010d01H
DD 0620dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H
DD 0c20dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z DD 010e01H
DD 0420eH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ DD 010401H
DD 04204H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DB 040H
DD imagerel $ip2state$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DD 010919H
DD 04209H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DB 040H
DD imagerel $ip2state$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DD 011819H
DD 04218H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD 011301H
DD 0a213H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD 010e01H
DD 0420eH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z DD 010d01H
DD 0420dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD 010901H
DD 04209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z DD 010d01H
DD 0420dH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD 010901H
DD 04209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DB 040H
DD imagerel $ip2state$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DD 010919H
DD 08209H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD 010e01H
DD 0420eH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ DD 010901H
DD 06209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD 010e01H
DD 0620eH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z DD 011701H
DD 04217H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DB 040H
DD imagerel $ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DD 010919H
DD 04209H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 017H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Release@CStringData@ATL@@QEAAXXZ DD 010901H
DD 06209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?IsShared@CStringData@ATL@@QEBA_NXZ DD 010901H
DD 02209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?IsLocked@CStringData@ATL@@QEBA_NXZ DD 010901H
DD 02209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DB 040H
DD imagerel $ip2state$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DD 010d19H
DD 0620dH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DB 040H
DD imagerel $ip2state$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DD 011319H
DD 08213H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AtlStrLen@ATL@@YAHPEB_W@Z DD 010901H
DD 04209H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z DD 011801H
DD 04218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AtlThrowImpl@ATL@@YAXJ@Z DD 010801H
DD 04208H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AfxCrtErrorCheck@@YAHH@Z DD 010801H
DD 06208H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$memmove_s DD 011801H
DD 08218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$memcpy_s DD 011801H
DD 08218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$sprintf DD 011801H
DD 06218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_vsprintf_l DD 011801H
DD 06218H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_vsnprintf_l DD 011801H
DD 08218H
xdata ENDS
; Function compile flags: /Odtp
; COMDAT ??_GCDes@@UEAAPEAXI@Z
_TEXT SEGMENT
this$ = 48
__flags$ = 56
??_GCDes@@UEAAPEAXI@Z PROC ; CDes::`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 48 83 ec 28 sub rsp, 40 ; 00000028H
0000d 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00012 e8 00 00 00 00 call ??1CDes@@UEAA@XZ ; CDes::~CDes
00017 8b 44 24 38 mov eax, DWORD PTR __flags$[rsp]
0001b 83 e0 01 and eax, 1
0001e 85 c0 test eax, eax
00020 74 0f je SHORT $LN2@scalar
00022 ba 68 0a 00 00 mov edx, 2664 ; 00000a68H
00027 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0002c e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete
$LN2@scalar:
00031 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp]
00036 48 83 c4 28 add rsp, 40 ; 00000028H
0003a c3 ret 0
??_GCDes@@UEAAPEAXI@Z ENDP ; CDes::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?BitToByte@CDes@@IEAAXPEADPEB_NH@Z
_TEXT SEGMENT
i$1 = 32
this$ = 64
Out$ = 72
In$ = 80
bits$ = 88
?BitToByte@CDes@@IEAAXPEADPEB_NH@Z PROC ; CDes::BitToByte, COMDAT
; 133 : {
$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 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 48 83 ec 38 sub rsp, 56 ; 00000038H
; 134 : memset(Out, 0, bits>>3);
00018 8b 44 24 58 mov eax, DWORD PTR bits$[rsp]
0001c c1 f8 03 sar eax, 3
0001f 48 98 cdqe
00021 4c 8b c0 mov r8, rax
00024 33 d2 xor edx, edx
00026 48 8b 4c 24 48 mov rcx, QWORD PTR Out$[rsp]
0002b e8 00 00 00 00 call memset
; 135 : for(int i=0; i<bits; ++i)
00030 c7 44 24 20 00
00 00 00 mov DWORD PTR i$1[rsp], 0
00038 eb 0a jmp SHORT $LN4@BitToByte
$LN2@BitToByte:
0003a 8b 44 24 20 mov eax, DWORD PTR i$1[rsp]
0003e ff c0 inc eax
00040 89 44 24 20 mov DWORD PTR i$1[rsp], eax
$LN4@BitToByte:
00044 8b 44 24 58 mov eax, DWORD PTR bits$[rsp]
00048 39 44 24 20 cmp DWORD PTR i$1[rsp], eax
0004c 7d 42 jge SHORT $LN3@BitToByte
; 136 : Out[i>>3] |= In[i]<<(i&7);
0004e 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp]
00053 48 8b 4c 24 50 mov rcx, QWORD PTR In$[rsp]
00058 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax]
0005c 8b 4c 24 20 mov ecx, DWORD PTR i$1[rsp]
00060 83 e1 07 and ecx, 7
00063 d3 e0 shl eax, cl
00065 8b 4c 24 20 mov ecx, DWORD PTR i$1[rsp]
00069 c1 f9 03 sar ecx, 3
0006c 48 63 c9 movsxd rcx, ecx
0006f 48 8b 54 24 48 mov rdx, QWORD PTR Out$[rsp]
00074 0f be 0c 0a movsx ecx, BYTE PTR [rdx+rcx]
00078 0b c8 or ecx, eax
0007a 8b c1 mov eax, ecx
0007c 8b 4c 24 20 mov ecx, DWORD PTR i$1[rsp]
00080 c1 f9 03 sar ecx, 3
00083 48 63 c9 movsxd rcx, ecx
00086 48 8b 54 24 48 mov rdx, QWORD PTR Out$[rsp]
0008b 88 04 0a mov BYTE PTR [rdx+rcx], al
0008e eb aa jmp SHORT $LN2@BitToByte
$LN3@BitToByte:
; 137 : }
00090 48 83 c4 38 add rsp, 56 ; 00000038H
00094 c3 ret 0
?BitToByte@CDes@@IEAAXPEADPEB_NH@Z ENDP ; CDes::BitToByte
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z
_TEXT SEGMENT
i$1 = 0
this$ = 32
Out$ = 40
In$ = 48
bits$ = 56
?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z PROC ; CDes::ByteToBit, COMDAT
; 128 : {
$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 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 48 83 ec 18 sub rsp, 24
; 129 : for(int i=0; i<bits; ++i)
00018 c7 04 24 00 00
00 00 mov DWORD PTR i$1[rsp], 0
0001f eb 08 jmp SHORT $LN4@ByteToBit
$LN2@ByteToBit:
00021 8b 04 24 mov eax, DWORD PTR i$1[rsp]
00024 ff c0 inc eax
00026 89 04 24 mov DWORD PTR i$1[rsp], eax
$LN4@ByteToBit:
00029 8b 44 24 38 mov eax, DWORD PTR bits$[rsp]
0002d 39 04 24 cmp DWORD PTR i$1[rsp], eax
00030 7d 2a jge SHORT $LN3@ByteToBit
; 130 : Out[i] = (In[i>>3]>>(i&7)) & 1;
00032 8b 04 24 mov eax, DWORD PTR i$1[rsp]
00035 c1 f8 03 sar eax, 3
00038 48 98 cdqe
0003a 48 8b 4c 24 30 mov rcx, QWORD PTR In$[rsp]
0003f 0f be 04 01 movsx eax, BYTE PTR [rcx+rax]
00043 8b 0c 24 mov ecx, DWORD PTR i$1[rsp]
00046 83 e1 07 and ecx, 7
00049 d3 f8 sar eax, cl
0004b 83 e0 01 and eax, 1
0004e 48 63 0c 24 movsxd rcx, DWORD PTR i$1[rsp]
00052 48 8b 54 24 28 mov rdx, QWORD PTR Out$[rsp]
00057 88 04 0a mov BYTE PTR [rdx+rcx], al
0005a eb c5 jmp SHORT $LN2@ByteToBit
$LN3@ByteToBit:
; 131 : }
0005c 48 83 c4 18 add rsp, 24
00060 c3 ret 0
?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z ENDP ; CDes::ByteToBit
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?RotateL@CDes@@IEAAXPEA_NHH@Z
_TEXT SEGMENT
tv84 = 32
this$ = 64
In$ = 72
len$ = 80
loop$ = 88
?RotateL@CDes@@IEAAXPEA_NHH@Z PROC ; CDes::RotateL, COMDAT
; 122 : {
$LN3:
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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 123 : memcpy(Tmp, In, loop);
00018 48 63 44 24 58 movsxd rax, DWORD PTR loop$[rsp]
0001d 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00022 48 81 c1 51 09
00 00 add rcx, 2385 ; 00000951H
00029 4c 8b c0 mov r8, rax
0002c 48 8b 54 24 48 mov rdx, QWORD PTR In$[rsp]
00031 e8 00 00 00 00 call memcpy
; 124 : memcpy(In, In+loop, len-loop);
00036 8b 44 24 58 mov eax, DWORD PTR loop$[rsp]
0003a 8b 4c 24 50 mov ecx, DWORD PTR len$[rsp]
0003e 2b c8 sub ecx, eax
00040 8b c1 mov eax, ecx
00042 48 98 cdqe
00044 48 63 4c 24 58 movsxd rcx, DWORD PTR loop$[rsp]
00049 48 8b 54 24 48 mov rdx, QWORD PTR In$[rsp]
0004e 48 03 d1 add rdx, rcx
00051 48 8b ca mov rcx, rdx
00054 4c 8b c0 mov r8, rax
00057 48 8b d1 mov rdx, rcx
0005a 48 8b 4c 24 48 mov rcx, QWORD PTR In$[rsp]
0005f e8 00 00 00 00 call memcpy
; 125 : memcpy(In+len-loop, Tmp, loop);
00064 48 63 44 24 58 movsxd rax, DWORD PTR loop$[rsp]
00069 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
0006e 48 81 c1 51 09
00 00 add rcx, 2385 ; 00000951H
00075 48 63 54 24 50 movsxd rdx, DWORD PTR len$[rsp]
0007a 4c 8b 44 24 48 mov r8, QWORD PTR In$[rsp]
0007f 4c 03 c2 add r8, rdx
00082 49 8b d0 mov rdx, r8
00085 4c 63 44 24 58 movsxd r8, DWORD PTR loop$[rsp]
0008a 49 2b d0 sub rdx, r8
0008d 48 89 54 24 20 mov QWORD PTR tv84[rsp], rdx
00092 4c 8b c0 mov r8, rax
00095 48 8b d1 mov rdx, rcx
00098 48 8b 44 24 20 mov rax, QWORD PTR tv84[rsp]
0009d 48 8b c8 mov rcx, rax
000a0 e8 00 00 00 00 call memcpy
; 126 : }
000a5 48 83 c4 38 add rsp, 56 ; 00000038H
000a9 c3 ret 0
?RotateL@CDes@@IEAAXPEA_NHH@Z ENDP ; CDes::RotateL
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?Xor@CDes@@IEAAXPEA_NPEB_NH@Z
_TEXT SEGMENT
i$1 = 0
this$ = 32
InA$ = 40
InB$ = 48
len$ = 56
?Xor@CDes@@IEAAXPEA_NPEB_NH@Z PROC ; CDes::Xor, COMDAT
; 117 : {
$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 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 48 83 ec 18 sub rsp, 24
; 118 : for(int i=0; i<len; ++i)
00018 c7 04 24 00 00
00 00 mov DWORD PTR i$1[rsp], 0
0001f eb 08 jmp SHORT $LN4@Xor
$LN2@Xor:
00021 8b 04 24 mov eax, DWORD PTR i$1[rsp]
00024 ff c0 inc eax
00026 89 04 24 mov DWORD PTR i$1[rsp], eax
$LN4@Xor:
00029 8b 44 24 38 mov eax, DWORD PTR len$[rsp]
0002d 39 04 24 cmp DWORD PTR i$1[rsp], eax
00030 7d 2a jge SHORT $LN3@Xor
; 119 : InA[i] ^= InB[i];
00032 48 63 04 24 movsxd rax, DWORD PTR i$1[rsp]
00036 48 8b 4c 24 28 mov rcx, QWORD PTR InA$[rsp]
0003b 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax]
0003f 48 63 0c 24 movsxd rcx, DWORD PTR i$1[rsp]
00043 48 8b 54 24 30 mov rdx, QWORD PTR InB$[rsp]
00048 0f b6 0c 0a movzx ecx, BYTE PTR [rdx+rcx]
0004c 33 c1 xor eax, ecx
0004e 48 63 0c 24 movsxd rcx, DWORD PTR i$1[rsp]
00052 48 8b 54 24 28 mov rdx, QWORD PTR InA$[rsp]
00057 88 04 0a mov BYTE PTR [rdx+rcx], al
0005a eb c5 jmp SHORT $LN2@Xor
$LN3@Xor:
; 120 : }
0005c 48 83 c4 18 add rsp, 24
00060 c3 ret 0
?Xor@CDes@@IEAAXPEA_NPEB_NH@Z ENDP ; CDes::Xor
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z
_TEXT SEGMENT
i$1 = 32
this$ = 64
Out$ = 72
In$ = 80
Table$ = 88
len$ = 96
?Transform@CDes@@IEAAXPEA_N0PEBDH@Z PROC ; CDes::Transform, COMDAT
; 111 : {
$LN6:
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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 112 : for(int i=0; i<len; ++i)
00018 c7 44 24 20 00
00 00 00 mov DWORD PTR i$1[rsp], 0
00020 eb 0a jmp SHORT $LN4@Transform
$LN2@Transform:
00022 8b 44 24 20 mov eax, DWORD PTR i$1[rsp]
00026 ff c0 inc eax
00028 89 44 24 20 mov DWORD PTR i$1[rsp], eax
$LN4@Transform:
0002c 8b 44 24 60 mov eax, DWORD PTR len$[rsp]
00030 39 44 24 20 cmp DWORD PTR i$1[rsp], eax
00034 7d 2f jge SHORT $LN3@Transform
; 113 : Tmp[i] = In[ Table[i]-1 ];
00036 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp]
0003b 48 8b 4c 24 58 mov rcx, QWORD PTR Table$[rsp]
00040 0f be 04 01 movsx eax, BYTE PTR [rcx+rax]
00044 ff c8 dec eax
00046 48 98 cdqe
00048 48 63 4c 24 20 movsxd rcx, DWORD PTR i$1[rsp]
0004d 48 8b 54 24 40 mov rdx, QWORD PTR this$[rsp]
00052 4c 8b 44 24 50 mov r8, QWORD PTR In$[rsp]
00057 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax]
0005c 88 84 0a 51 09
00 00 mov BYTE PTR [rdx+rcx+2385], al
00063 eb bd jmp SHORT $LN2@Transform
$LN3@Transform:
; 114 : memcpy(Out, Tmp, len);
00065 48 63 44 24 60 movsxd rax, DWORD PTR len$[rsp]
0006a 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
0006f 48 81 c1 51 09
00 00 add rcx, 2385 ; 00000951H
00076 4c 8b c0 mov r8, rax
00079 48 8b d1 mov rdx, rcx
0007c 48 8b 4c 24 48 mov rcx, QWORD PTR Out$[rsp]
00081 e8 00 00 00 00 call memcpy
; 115 : }
00086 48 83 c4 38 add rsp, 56 ; 00000038H
0008a c3 ret 0
?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ENDP ; CDes::Transform
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?S_func@CDes@@IEAAXQEA_NQEB_N@Z
_TEXT SEGMENT
i$1 = 32
j$2 = 33
k$3 = 34
this$ = 64
Out$ = 72
In$ = 80
?S_func@CDes@@IEAAXQEA_NQEB_N@Z PROC ; CDes::S_func, COMDAT
; 103 : {
$LN6:
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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 104 : for(char i=0,j,k; i<8; ++i,In+=6,Out+=4) {
00013 c6 44 24 20 00 mov BYTE PTR i$1[rsp], 0
00018 eb 27 jmp SHORT $LN4@S_func
$LN2@S_func:
0001a 0f b6 44 24 20 movzx eax, BYTE PTR i$1[rsp]
0001f fe c0 inc al
00021 88 44 24 20 mov BYTE PTR i$1[rsp], al
00025 48 8b 44 24 50 mov rax, QWORD PTR In$[rsp]
0002a 48 83 c0 06 add rax, 6
0002e 48 89 44 24 50 mov QWORD PTR In$[rsp], rax
00033 48 8b 44 24 48 mov rax, QWORD PTR Out$[rsp]
00038 48 83 c0 04 add rax, 4
0003c 48 89 44 24 48 mov QWORD PTR Out$[rsp], rax
$LN4@S_func:
00041 0f be 44 24 20 movsx eax, BYTE PTR i$1[rsp]
00046 83 f8 08 cmp eax, 8
00049 0f 8d cc 00 00
00 jge $LN3@S_func
; 105 : j = (In[0]<<1) + In[5];
0004f b8 01 00 00 00 mov eax, 1
00054 48 6b c0 00 imul rax, rax, 0
00058 48 8b 4c 24 50 mov rcx, QWORD PTR In$[rsp]
0005d 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax]
00061 b9 01 00 00 00 mov ecx, 1
00066 48 6b c9 05 imul rcx, rcx, 5
0006a 48 8b 54 24 50 mov rdx, QWORD PTR In$[rsp]
0006f 0f b6 0c 0a movzx ecx, BYTE PTR [rdx+rcx]
00073 8d 04 41 lea eax, DWORD PTR [rcx+rax*2]
00076 88 44 24 21 mov BYTE PTR j$2[rsp], al
; 106 : k = (In[1]<<3) + (In[2]<<2) + (In[3]<<1) + In[4];
0007a b8 01 00 00 00 mov eax, 1
0007f 48 6b c0 01 imul rax, rax, 1
00083 48 8b 4c 24 50 mov rcx, QWORD PTR In$[rsp]
00088 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax]
0008c b9 01 00 00 00 mov ecx, 1
00091 48 6b c9 02 imul rcx, rcx, 2
00095 48 8b 54 24 50 mov rdx, QWORD PTR In$[rsp]
0009a 0f b6 0c 0a movzx ecx, BYTE PTR [rdx+rcx]
0009e c1 e1 02 shl ecx, 2
000a1 8d 04 c1 lea eax, DWORD PTR [rcx+rax*8]
000a4 b9 01 00 00 00 mov ecx, 1
000a9 48 6b c9 03 imul rcx, rcx, 3
000ad 48 8b 54 24 50 mov rdx, QWORD PTR In$[rsp]
000b2 0f b6 0c 0a movzx ecx, BYTE PTR [rdx+rcx]
000b6 8d 04 48 lea eax, DWORD PTR [rax+rcx*2]
000b9 b9 01 00 00 00 mov ecx, 1
000be 48 6b c9 04 imul rcx, rcx, 4
000c2 48 8b 54 24 50 mov rdx, QWORD PTR In$[rsp]
000c7 0f b6 0c 0a movzx ecx, BYTE PTR [rdx+rcx]
000cb 03 c1 add eax, ecx
000cd 88 44 24 22 mov BYTE PTR k$3[rsp], al
; 107 : ByteToBit(Out, &S_Box[i][j][k], 4);
000d1 48 0f be 44 24
20 movsx rax, BYTE PTR i$1[rsp]
000d7 48 6b c0 40 imul rax, rax, 64 ; 00000040H
000db 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
000e0 48 8d 84 01 50
01 00 00 lea rax, QWORD PTR [rcx+rax+336]
000e8 48 0f be 4c 24
21 movsx rcx, BYTE PTR j$2[rsp]
000ee 48 6b c9 10 imul rcx, rcx, 16
000f2 48 03 c1 add rax, rcx
000f5 48 0f be 4c 24
22 movsx rcx, BYTE PTR k$3[rsp]
000fb 48 03 c1 add rax, rcx
000fe 41 b9 04 00 00
00 mov r9d, 4
00104 4c 8b c0 mov r8, rax
00107 48 8b 54 24 48 mov rdx, QWORD PTR Out$[rsp]
0010c 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00111 e8 00 00 00 00 call ?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z ; CDes::ByteToBit
; 108 : }
00116 e9 ff fe ff ff jmp $LN2@S_func
$LN3@S_func:
; 109 : }
0011b 48 83 c4 38 add rsp, 56 ; 00000038H
0011f c3 ret 0
?S_func@CDes@@IEAAXQEA_NQEB_N@Z ENDP ; CDes::S_func
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?F_func@CDes@@IEAAXQEA_NQEB_N@Z
_TEXT SEGMENT
MR$ = 48
__$ArrayPad$ = 96
this$ = 128
In$ = 136
Ki$ = 144
?F_func@CDes@@IEAAXQEA_NQEB_N@Z PROC ; CDes::F_func, COMDAT
; 95 : {
$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 48 83 ec 78 sub rsp, 120 ; 00000078H
00013 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0001a 48 33 c4 xor rax, rsp
0001d 48 89 44 24 60 mov QWORD PTR __$ArrayPad$[rsp], rax
; 96 : bool MR[48];
; 97 : Transform(MR, In, E_Table, 48);
00022 48 8b 84 24 80
00 00 00 mov rax, QWORD PTR this$[rsp]
0002a 48 05 88 00 00
00 add rax, 136 ; 00000088H
00030 c7 44 24 20 30
00 00 00 mov DWORD PTR [rsp+32], 48 ; 00000030H
00038 4c 8b c8 mov r9, rax
0003b 4c 8b 84 24 88
00 00 00 mov r8, QWORD PTR In$[rsp]
00043 48 8d 54 24 30 lea rdx, QWORD PTR MR$[rsp]
00048 48 8b 8c 24 80
00 00 00 mov rcx, QWORD PTR this$[rsp]
00050 e8 00 00 00 00 call ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
; 98 : Xor(MR, Ki, 48);
00055 41 b9 30 00 00
00 mov r9d, 48 ; 00000030H
0005b 4c 8b 84 24 90
00 00 00 mov r8, QWORD PTR Ki$[rsp]
00063 48 8d 54 24 30 lea rdx, QWORD PTR MR$[rsp]
00068 48 8b 8c 24 80
00 00 00 mov rcx, QWORD PTR this$[rsp]
00070 e8 00 00 00 00 call ?Xor@CDes@@IEAAXPEA_NPEB_NH@Z ; CDes::Xor
; 99 : S_func(In, MR);
00075 4c 8d 44 24 30 lea r8, QWORD PTR MR$[rsp]
0007a 48 8b 94 24 88
00 00 00 mov rdx, QWORD PTR In$[rsp]
00082 48 8b 8c 24 80
00 00 00 mov rcx, QWORD PTR this$[rsp]
0008a e8 00 00 00 00 call ?S_func@CDes@@IEAAXQEA_NQEB_N@Z ; CDes::S_func
; 100 : Transform(In, In, P_Table, 32);
0008f 48 8b 84 24 80
00 00 00 mov rax, QWORD PTR this$[rsp]
00097 48 05 b8 00 00
00 add rax, 184 ; 000000b8H
0009d c7 44 24 20 20
00 00 00 mov DWORD PTR [rsp+32], 32 ; 00000020H
000a5 4c 8b c8 mov r9, rax
000a8 4c 8b 84 24 88
00 00 00 mov r8, QWORD PTR In$[rsp]
000b0 48 8b 94 24 88
00 00 00 mov rdx, QWORD PTR In$[rsp]
000b8 48 8b 8c 24 80
00 00 00 mov rcx, QWORD PTR this$[rsp]
000c0 e8 00 00 00 00 call ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
; 101 : }
000c5 48 8b 4c 24 60 mov rcx, QWORD PTR __$ArrayPad$[rsp]
000ca 48 33 cc xor rcx, rsp
000cd e8 00 00 00 00 call __security_check_cookie
000d2 48 83 c4 78 add rsp, 120 ; 00000078H
000d6 c3 ret 0
?F_func@CDes@@IEAAXQEA_NQEB_N@Z ENDP ; CDes::F_func
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z
_TEXT SEGMENT
i$1 = 48
KL$ = 56
KR$ = 64
K$ = 80
__$ArrayPad$ = 144
this$ = 176
pSubKey$ = 184
Key$ = 192
?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z PROC ; CDes::SetSubKey, COMDAT
; 84 : {
$LN6:
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 48 81 ec a8 00
00 00 sub rsp, 168 ; 000000a8H
00016 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0001d 48 33 c4 xor rax, rsp
00020 48 89 84 24 90
00 00 00 mov QWORD PTR __$ArrayPad$[rsp], rax
; 85 : bool K[64], *KL=&K[0], *KR=&K[28];
00028 b8 01 00 00 00 mov eax, 1
0002d 48 6b c0 00 imul rax, rax, 0
00031 48 8d 44 04 50 lea rax, QWORD PTR K$[rsp+rax]
00036 48 89 44 24 38 mov QWORD PTR KL$[rsp], rax
0003b b8 01 00 00 00 mov eax, 1
00040 48 6b c0 1c imul rax, rax, 28
00044 48 8d 44 04 50 lea rax, QWORD PTR K$[rsp+rax]
00049 48 89 44 24 40 mov QWORD PTR KR$[rsp], rax
; 86 : ByteToBit(K, Key, 64);
0004e 41 b9 40 00 00
00 mov r9d, 64 ; 00000040H
00054 4c 8b 84 24 c0
00 00 00 mov r8, QWORD PTR Key$[rsp]
0005c 48 8d 54 24 50 lea rdx, QWORD PTR K$[rsp]
00061 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00069 e8 00 00 00 00 call ?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z ; CDes::ByteToBit
; 87 : Transform(K, K, PC1_Table, 56);
0006e 48 8b 84 24 b0
00 00 00 mov rax, QWORD PTR this$[rsp]
00076 48 05 d8 00 00
00 add rax, 216 ; 000000d8H
0007c c7 44 24 20 38
00 00 00 mov DWORD PTR [rsp+32], 56 ; 00000038H
00084 4c 8b c8 mov r9, rax
00087 4c 8d 44 24 50 lea r8, QWORD PTR K$[rsp]
0008c 48 8d 54 24 50 lea rdx, QWORD PTR K$[rsp]
00091 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00099 e8 00 00 00 00 call ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
; 88 : for(int i=0; i<16; ++i) {
0009e c7 44 24 30 00
00 00 00 mov DWORD PTR i$1[rsp], 0
000a6 eb 0a jmp SHORT $LN4@SetSubKey
$LN2@SetSubKey:
000a8 8b 44 24 30 mov eax, DWORD PTR i$1[rsp]
000ac ff c0 inc eax
000ae 89 44 24 30 mov DWORD PTR i$1[rsp], eax
$LN4@SetSubKey:
000b2 83 7c 24 30 10 cmp DWORD PTR i$1[rsp], 16
000b7 0f 8d aa 00 00
00 jge $LN3@SetSubKey
; 89 : RotateL(KL, 28, LOOP_Table[i]);
000bd 48 63 44 24 30 movsxd rax, DWORD PTR i$1[rsp]
000c2 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
000ca 0f be 84 01 40
01 00 00 movsx eax, BYTE PTR [rcx+rax+320]
000d2 44 8b c8 mov r9d, eax
000d5 41 b8 1c 00 00
00 mov r8d, 28
000db 48 8b 54 24 38 mov rdx, QWORD PTR KL$[rsp]
000e0 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
000e8 e8 00 00 00 00 call ?RotateL@CDes@@IEAAXPEA_NHH@Z ; CDes::RotateL
; 90 : RotateL(KR, 28, LOOP_Table[i]);
000ed 48 63 44 24 30 movsxd rax, DWORD PTR i$1[rsp]
000f2 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
000fa 0f be 84 01 40
01 00 00 movsx eax, BYTE PTR [rcx+rax+320]
00102 44 8b c8 mov r9d, eax
00105 41 b8 1c 00 00
00 mov r8d, 28
0010b 48 8b 54 24 40 mov rdx, QWORD PTR KR$[rsp]
00110 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00118 e8 00 00 00 00 call ?RotateL@CDes@@IEAAXPEA_NHH@Z ; CDes::RotateL
; 91 : Transform((*pSubKey)[i], K, PC2_Table, 48);
0011d 48 8b 84 24 b0
00 00 00 mov rax, QWORD PTR this$[rsp]
00125 48 05 10 01 00
00 add rax, 272 ; 00000110H
0012b 48 63 4c 24 30 movsxd rcx, DWORD PTR i$1[rsp]
00130 48 6b c9 30 imul rcx, rcx, 48 ; 00000030H
00134 48 8b 94 24 b8
00 00 00 mov rdx, QWORD PTR pSubKey$[rsp]
0013c 48 03 d1 add rdx, rcx
0013f 48 8b ca mov rcx, rdx
00142 c7 44 24 20 30
00 00 00 mov DWORD PTR [rsp+32], 48 ; 00000030H
0014a 4c 8b c8 mov r9, rax
0014d 4c 8d 44 24 50 lea r8, QWORD PTR K$[rsp]
00152 48 8b d1 mov rdx, rcx
00155 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR this$[rsp]
0015d e8 00 00 00 00 call ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
; 92 : }
00162 e9 41 ff ff ff jmp $LN2@SetSubKey
$LN3@SetSubKey:
; 93 : }
00167 48 8b 8c 24 90
00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rsp]
0016f 48 33 cc xor rcx, rsp
00172 e8 00 00 00 00 call __security_check_cookie
00177 48 81 c4 a8 00
00 00 add rsp, 168 ; 000000a8H
0017e c3 ret 0
?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z ENDP ; CDes::SetSubKey
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?SetKey@CDes@@IEAAXPEBDH@Z
_TEXT SEGMENT
tv95 = 32
tv70 = 36
this$ = 64
Key$ = 72
len$ = 80
?SetKey@CDes@@IEAAXPEBDH@Z PROC ; CDes::SetKey, COMDAT
; 54 : {
$LN7:
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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 55 : memset(deskey, 0, 16);
00013 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
00018 48 05 51 0a 00
00 add rax, 2641 ; 00000a51H
0001e 41 b8 10 00 00
00 mov r8d, 16
00024 33 d2 xor edx, edx
00026 48 8b c8 mov rcx, rax
00029 e8 00 00 00 00 call memset
; 56 : memcpy(deskey, Key, len>16?16:len);
0002e 83 7c 24 50 10 cmp DWORD PTR len$[rsp], 16
00033 7e 0a jle SHORT $LN3@SetKey
00035 c7 44 24 24 10
00 00 00 mov DWORD PTR tv70[rsp], 16
0003d eb 08 jmp SHORT $LN4@SetKey
$LN3@SetKey:
0003f 8b 44 24 50 mov eax, DWORD PTR len$[rsp]
00043 89 44 24 24 mov DWORD PTR tv70[rsp], eax
$LN4@SetKey:
00047 48 63 44 24 24 movsxd rax, DWORD PTR tv70[rsp]
0004c 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00051 48 81 c1 51 0a
00 00 add rcx, 2641 ; 00000a51H
00058 4c 8b c0 mov r8, rax
0005b 48 8b 54 24 48 mov rdx, QWORD PTR Key$[rsp]
00060 e8 00 00 00 00 call memcpy
; 57 : SetSubKey(&SubKey[0], &deskey[0]);
00065 b8 01 00 00 00 mov eax, 1
0006a 48 6b c0 00 imul rax, rax, 0
0006e 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00073 48 8d 84 01 51
0a 00 00 lea rax, QWORD PTR [rcx+rax+2641]
0007b b9 00 03 00 00 mov ecx, 768 ; 00000300H
00080 48 6b c9 00 imul rcx, rcx, 0
00084 48 8b 54 24 40 mov rdx, QWORD PTR this$[rsp]
00089 48 8d 8c 0a 50
03 00 00 lea rcx, QWORD PTR [rdx+rcx+848]
00091 4c 8b c0 mov r8, rax
00094 48 8b d1 mov rdx, rcx
00097 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
0009c e8 00 00 00 00 call ?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z ; CDes::SetSubKey
; 58 : Is3DES = len>8 ? (SetSubKey(&SubKey[1], &deskey[8]), true) : false;
000a1 83 7c 24 50 08 cmp DWORD PTR len$[rsp], 8
000a6 7e 43 jle SHORT $LN5@SetKey
000a8 b8 01 00 00 00 mov eax, 1
000ad 48 6b c0 08 imul rax, rax, 8
000b1 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
000b6 48 8d 84 01 51
0a 00 00 lea rax, QWORD PTR [rcx+rax+2641]
000be b9 00 03 00 00 mov ecx, 768 ; 00000300H
000c3 48 6b c9 01 imul rcx, rcx, 1
000c7 48 8b 54 24 40 mov rdx, QWORD PTR this$[rsp]
000cc 48 8d 8c 0a 50
03 00 00 lea rcx, QWORD PTR [rdx+rcx+848]
000d4 4c 8b c0 mov r8, rax
000d7 48 8b d1 mov rdx, rcx
000da 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
000df e8 00 00 00 00 call ?SetSubKey@CDes@@IEAAXPEAY1BA@DA@_NQEBD@Z ; CDes::SetSubKey
000e4 c6 44 24 20 01 mov BYTE PTR tv95[rsp], 1
000e9 eb 05 jmp SHORT $LN6@SetKey
$LN5@SetKey:
000eb c6 44 24 20 00 mov BYTE PTR tv95[rsp], 0
$LN6@SetKey:
000f0 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
000f5 0f b6 4c 24 20 movzx ecx, BYTE PTR tv95[rsp]
000fa 88 88 50 09 00
00 mov BYTE PTR [rax+2384], cl
; 59 : }
00100 48 83 c4 38 add rsp, 56 ; 00000038H
00104 c3 ret 0
?SetKey@CDes@@IEAAXPEBDH@Z ENDP ; CDes::SetKey
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z
_TEXT SEGMENT
i$1 = 48
i$2 = 52
Li$ = 56
Ri$ = 64
tmp$ = 72
M$ = 112
__$ArrayPad$ = 176
this$ = 208
Out$ = 216
In$ = 224
pSubKey$ = 232
Type$ = 240
?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z PROC ; CDes::DES, COMDAT
; 61 : {
$LN11:
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 48 81 ec c8 00
00 00 sub rsp, 200 ; 000000c8H
0001b 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00022 48 33 c4 xor rax, rsp
00025 48 89 84 24 b0
00 00 00 mov QWORD PTR __$ArrayPad$[rsp], rax
; 62 : bool M[64], tmp[32], *Li=&M[0], *Ri=&M[32];
0002d b8 01 00 00 00 mov eax, 1
00032 48 6b c0 00 imul rax, rax, 0
00036 48 8d 44 04 70 lea rax, QWORD PTR M$[rsp+rax]
0003b 48 89 44 24 38 mov QWORD PTR Li$[rsp], rax
00040 b8 01 00 00 00 mov eax, 1
00045 48 6b c0 20 imul rax, rax, 32 ; 00000020H
00049 48 8d 44 04 70 lea rax, QWORD PTR M$[rsp+rax]
0004e 48 89 44 24 40 mov QWORD PTR Ri$[rsp], rax
; 63 : ByteToBit(M, In, 64);
00053 41 b9 40 00 00
00 mov r9d, 64 ; 00000040H
00059 4c 8b 84 24 e0
00 00 00 mov r8, QWORD PTR In$[rsp]
00061 48 8d 54 24 70 lea rdx, QWORD PTR M$[rsp]
00066 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
0006e e8 00 00 00 00 call ?ByteToBit@CDes@@IEAAXPEA_NPEBDH@Z ; CDes::ByteToBit
; 64 : Transform(M, M, IP_Table, 64);
00073 48 8b 84 24 d0
00 00 00 mov rax, QWORD PTR this$[rsp]
0007b 48 83 c0 08 add rax, 8
0007f c7 44 24 20 40
00 00 00 mov DWORD PTR [rsp+32], 64 ; 00000040H
00087 4c 8b c8 mov r9, rax
0008a 4c 8d 44 24 70 lea r8, QWORD PTR M$[rsp]
0008f 48 8d 54 24 70 lea rdx, QWORD PTR M$[rsp]
00094 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
0009c e8 00 00 00 00 call ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
; 65 : if( Type == ENCRYPT_DES ){
000a1 0f b6 84 24 f0
00 00 00 movzx eax, BYTE PTR Type$[rsp]
000a9 85 c0 test eax, eax
000ab 0f 85 98 00 00
00 jne $LN8@DES
; 66 : for(int i=0; i<16; ++i) {
000b1 c7 44 24 30 00
00 00 00 mov DWORD PTR i$1[rsp], 0
000b9 eb 0a jmp SHORT $LN4@DES
$LN2@DES:
000bb 8b 44 24 30 mov eax, DWORD PTR i$1[rsp]
000bf ff c0 inc eax
000c1 89 44 24 30 mov DWORD PTR i$1[rsp], eax
$LN4@DES:
000c5 83 7c 24 30 10 cmp DWORD PTR i$1[rsp], 16
000ca 7d 78 jge SHORT $LN3@DES
; 67 : memcpy(tmp, Ri, 32);
000cc 41 b8 20 00 00
00 mov r8d, 32 ; 00000020H
000d2 48 8b 54 24 40 mov rdx, QWORD PTR Ri$[rsp]
000d7 48 8d 4c 24 48 lea rcx, QWORD PTR tmp$[rsp]
000dc e8 00 00 00 00 call memcpy
; 68 : F_func(Ri, (*pSubKey)[i]);
000e1 48 63 44 24 30 movsxd rax, DWORD PTR i$1[rsp]
000e6 48 6b c0 30 imul rax, rax, 48 ; 00000030H
000ea 48 8b 8c 24 e8
00 00 00 mov rcx, QWORD PTR pSubKey$[rsp]
000f2 48 03 c8 add rcx, rax
000f5 48 8b c1 mov rax, rcx
000f8 4c 8b c0 mov r8, rax
000fb 48 8b 54 24 40 mov rdx, QWORD PTR Ri$[rsp]
00100 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00108 e8 00 00 00 00 call ?F_func@CDes@@IEAAXQEA_NQEB_N@Z ; CDes::F_func
; 69 : Xor(Ri, Li, 32);
0010d 41 b9 20 00 00
00 mov r9d, 32 ; 00000020H
00113 4c 8b 44 24 38 mov r8, QWORD PTR Li$[rsp]
00118 48 8b 54 24 40 mov rdx, QWORD PTR Ri$[rsp]
0011d 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00125 e8 00 00 00 00 call ?Xor@CDes@@IEAAXPEA_NPEB_NH@Z ; CDes::Xor
; 70 : memcpy(Li, tmp, 32);
0012a 41 b8 20 00 00
00 mov r8d, 32 ; 00000020H
00130 48 8d 54 24 48 lea rdx, QWORD PTR tmp$[rsp]
00135 48 8b 4c 24 38 mov rcx, QWORD PTR Li$[rsp]
0013a e8 00 00 00 00 call memcpy
; 71 : }
0013f e9 77 ff ff ff jmp $LN2@DES
$LN3@DES:
; 72 : }else{
00144 e9 93 00 00 00 jmp $LN9@DES
$LN8@DES:
; 73 : for(int i=15; i>=0; --i) {
00149 c7 44 24 34 0f
00 00 00 mov DWORD PTR i$2[rsp], 15
00151 eb 0a jmp SHORT $LN7@DES
$LN5@DES:
00153 8b 44 24 34 mov eax, DWORD PTR i$2[rsp]
00157 ff c8 dec eax
00159 89 44 24 34 mov DWORD PTR i$2[rsp], eax
$LN7@DES:
0015d 83 7c 24 34 00 cmp DWORD PTR i$2[rsp], 0
00162 7c 78 jl SHORT $LN6@DES
; 74 : memcpy(tmp, Li, 32);
00164 41 b8 20 00 00
00 mov r8d, 32 ; 00000020H
0016a 48 8b 54 24 38 mov rdx, QWORD PTR Li$[rsp]
0016f 48 8d 4c 24 48 lea rcx, QWORD PTR tmp$[rsp]
00174 e8 00 00 00 00 call memcpy
; 75 : F_func(Li, (*pSubKey)[i]);
00179 48 63 44 24 34 movsxd rax, DWORD PTR i$2[rsp]
0017e 48 6b c0 30 imul rax, rax, 48 ; 00000030H
00182 48 8b 8c 24 e8
00 00 00 mov rcx, QWORD PTR pSubKey$[rsp]
0018a 48 03 c8 add rcx, rax
0018d 48 8b c1 mov rax, rcx
00190 4c 8b c0 mov r8, rax
00193 48 8b 54 24 38 mov rdx, QWORD PTR Li$[rsp]
00198 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
001a0 e8 00 00 00 00 call ?F_func@CDes@@IEAAXQEA_NQEB_N@Z ; CDes::F_func
; 76 : Xor(Li, Ri, 32);
001a5 41 b9 20 00 00
00 mov r9d, 32 ; 00000020H
001ab 4c 8b 44 24 40 mov r8, QWORD PTR Ri$[rsp]
001b0 48 8b 54 24 38 mov rdx, QWORD PTR Li$[rsp]
001b5 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
001bd e8 00 00 00 00 call ?Xor@CDes@@IEAAXPEA_NPEB_NH@Z ; CDes::Xor
; 77 : memcpy(Ri, tmp, 32);
001c2 41 b8 20 00 00
00 mov r8d, 32 ; 00000020H
001c8 48 8d 54 24 48 lea rdx, QWORD PTR tmp$[rsp]
001cd 48 8b 4c 24 40 mov rcx, QWORD PTR Ri$[rsp]
001d2 e8 00 00 00 00 call memcpy
; 78 : }
001d7 e9 77 ff ff ff jmp $LN5@DES
$LN6@DES:
$LN9@DES:
; 79 : }
; 80 : Transform(M, M, IPR_Table, 64);
001dc 48 8b 84 24 d0
00 00 00 mov rax, QWORD PTR this$[rsp]
001e4 48 83 c0 48 add rax, 72 ; 00000048H
001e8 c7 44 24 20 40
00 00 00 mov DWORD PTR [rsp+32], 64 ; 00000040H
001f0 4c 8b c8 mov r9, rax
001f3 4c 8d 44 24 70 lea r8, QWORD PTR M$[rsp]
001f8 48 8d 54 24 70 lea rdx, QWORD PTR M$[rsp]
001fd 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00205 e8 00 00 00 00 call ?Transform@CDes@@IEAAXPEA_N0PEBDH@Z ; CDes::Transform
; 81 : BitToByte(Out, M, 64);
0020a 41 b9 40 00 00
00 mov r9d, 64 ; 00000040H
00210 4c 8d 44 24 70 lea r8, QWORD PTR M$[rsp]
00215 48 8b 94 24 d8
00 00 00 mov rdx, QWORD PTR Out$[rsp]
0021d 48 8b 8c 24 d0
00 00 00 mov rcx, QWORD PTR this$[rsp]
00225 e8 00 00 00 00 call ?BitToByte@CDes@@IEAAXPEADPEB_NH@Z ; CDes::BitToByte
; 82 : }
0022a 48 8b 8c 24 b0
00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rsp]
00232 48 33 cc xor rcx, rsp
00235 e8 00 00 00 00 call __security_check_cookie
0023a 48 81 c4 c8 00
00 00 add rsp, 200 ; 000000c8H
00241 c3 ret 0
?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z ENDP ; CDes::DES
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z
_TEXT SEGMENT
tv137 = 48
i$1 = 52
i$2 = 56
j$3 = 60
j$4 = 64
this$ = 96
Out$ = 104
In$ = 112
datalen$ = 120
Key$ = 128
keylen$ = 136
Type$ = 144
?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z PROC ; CDes::Des_Go, COMDAT
; 37 : {
$LN15:
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 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 48 83 ec 58 sub rsp, 88 ; 00000058H
; 38 : if( !( Out && In && Key && (datalen=(datalen+7)&0xfffffff8) ) )
00018 48 83 7c 24 68
00 cmp QWORD PTR Out$[rsp], 0
0001e 74 28 je SHORT $LN9@Des_Go
00020 48 83 7c 24 70
00 cmp QWORD PTR In$[rsp], 0
00026 74 20 je SHORT $LN9@Des_Go
00028 48 83 bc 24 80
00 00 00 00 cmp QWORD PTR Key$[rsp], 0
00031 74 15 je SHORT $LN9@Des_Go
00033 8b 44 24 78 mov eax, DWORD PTR datalen$[rsp]
00037 83 c0 07 add eax, 7
0003a 83 e0 f8 and eax, -8 ; fffffff8H
0003d 89 44 24 78 mov DWORD PTR datalen$[rsp], eax
00041 83 7c 24 78 00 cmp DWORD PTR datalen$[rsp], 0
00046 75 07 jne SHORT $LN8@Des_Go
$LN9@Des_Go:
; 39 : return false;
00048 32 c0 xor al, al
0004a e9 c3 01 00 00 jmp $LN1@Des_Go
$LN8@Des_Go:
; 40 : SetKey(Key, keylen);
0004f 44 8b 84 24 88
00 00 00 mov r8d, DWORD PTR keylen$[rsp]
00057 48 8b 94 24 80
00 00 00 mov rdx, QWORD PTR Key$[rsp]
0005f 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
00064 e8 00 00 00 00 call ?SetKey@CDes@@IEAAXPEBDH@Z ; CDes::SetKey
; 41 : if( !Is3DES ) { // 1<><31>DES
00069 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp]
0006e 0f b6 80 50 09
00 00 movzx eax, BYTE PTR [rax+2384]
00075 85 c0 test eax, eax
00077 0f 85 85 00 00
00 jne $LN10@Des_Go
; 42 : for(long i=0,j=datalen>>3; i<j; ++i,Out+=8,In+=8)
0007d c7 44 24 34 00
00 00 00 mov DWORD PTR i$1[rsp], 0
00085 8b 44 24 78 mov eax, DWORD PTR datalen$[rsp]
00089 c1 f8 03 sar eax, 3
0008c 89 44 24 3c mov DWORD PTR j$3[rsp], eax
00090 eb 26 jmp SHORT $LN4@Des_Go
$LN2@Des_Go:
00092 8b 44 24 34 mov eax, DWORD PTR i$1[rsp]
00096 ff c0 inc eax
00098 89 44 24 34 mov DWORD PTR i$1[rsp], eax
0009c 48 8b 44 24 68 mov rax, QWORD PTR Out$[rsp]
000a1 48 83 c0 08 add rax, 8
000a5 48 89 44 24 68 mov QWORD PTR Out$[rsp], rax
000aa 48 8b 44 24 70 mov rax, QWORD PTR In$[rsp]
000af 48 83 c0 08 add rax, 8
000b3 48 89 44 24 70 mov QWORD PTR In$[rsp], rax
$LN4@Des_Go:
000b8 8b 44 24 3c mov eax, DWORD PTR j$3[rsp]
000bc 39 44 24 34 cmp DWORD PTR i$1[rsp], eax
000c0 7d 3b jge SHORT $LN3@Des_Go
; 43 : DES(Out, In, &SubKey[0], Type);
000c2 b8 00 03 00 00 mov eax, 768 ; 00000300H
000c7 48 6b c0 00 imul rax, rax, 0
000cb 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
000d0 48 8d 84 01 50
03 00 00 lea rax, QWORD PTR [rcx+rax+848]
000d8 0f b6 8c 24 90
00 00 00 movzx ecx, BYTE PTR Type$[rsp]
000e0 88 4c 24 20 mov BYTE PTR [rsp+32], cl
000e4 4c 8b c8 mov r9, rax
000e7 4c 8b 44 24 70 mov r8, QWORD PTR In$[rsp]
000ec 48 8b 54 24 68 mov rdx, QWORD PTR Out$[rsp]
000f1 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
000f6 e8 00 00 00 00 call ?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z ; CDes::DES
000fb eb 95 jmp SHORT $LN2@Des_Go
$LN3@Des_Go:
; 44 : } else{ // 3<><33>DES <20><><EFBFBD><EFBFBD>:<3A><>(key0)-<2D><>(key1)-<2D><>(key0) <20><><EFBFBD><EFBFBD>::<3A><>(key0)-<2D><>(key1)-<2D><>(key0)
000fd e9 0e 01 00 00 jmp $LN11@Des_Go
$LN10@Des_Go:
; 45 : for(long i=0,j=datalen>>3; i<j; ++i,Out+=8,In+=8) {
00102 c7 44 24 38 00
00 00 00 mov DWORD PTR i$2[rsp], 0
0010a 8b 44 24 78 mov eax, DWORD PTR datalen$[rsp]
0010e c1 f8 03 sar eax, 3
00111 89 44 24 40 mov DWORD PTR j$4[rsp], eax
00115 eb 26 jmp SHORT $LN7@Des_Go
$LN5@Des_Go:
00117 8b 44 24 38 mov eax, DWORD PTR i$2[rsp]
0011b ff c0 inc eax
0011d 89 44 24 38 mov DWORD PTR i$2[rsp], eax
00121 48 8b 44 24 68 mov rax, QWORD PTR Out$[rsp]
00126 48 83 c0 08 add rax, 8
0012a 48 89 44 24 68 mov QWORD PTR Out$[rsp], rax
0012f 48 8b 44 24 70 mov rax, QWORD PTR In$[rsp]
00134 48 83 c0 08 add rax, 8
00138 48 89 44 24 70 mov QWORD PTR In$[rsp], rax
$LN7@Des_Go:
0013d 8b 44 24 40 mov eax, DWORD PTR j$4[rsp]
00141 39 44 24 38 cmp DWORD PTR i$2[rsp], eax
00145 0f 8d c5 00 00
00 jge $LN6@Des_Go
; 46 : DES(Out, In, &SubKey[0], Type);
0014b b8 00 03 00 00 mov eax, 768 ; 00000300H
00150 48 6b c0 00 imul rax, rax, 0
00154 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
00159 48 8d 84 01 50
03 00 00 lea rax, QWORD PTR [rcx+rax+848]
00161 0f b6 8c 24 90
00 00 00 movzx ecx, BYTE PTR Type$[rsp]
00169 88 4c 24 20 mov BYTE PTR [rsp+32], cl
0016d 4c 8b c8 mov r9, rax
00170 4c 8b 44 24 70 mov r8, QWORD PTR In$[rsp]
00175 48 8b 54 24 68 mov rdx, QWORD PTR Out$[rsp]
0017a 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
0017f e8 00 00 00 00 call ?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z ; CDes::DES
; 47 : DES(Out, Out, &SubKey[1], !Type);
00184 0f b6 84 24 90
00 00 00 movzx eax, BYTE PTR Type$[rsp]
0018c 85 c0 test eax, eax
0018e 75 07 jne SHORT $LN13@Des_Go
00190 c6 44 24 30 01 mov BYTE PTR tv137[rsp], 1
00195 eb 05 jmp SHORT $LN14@Des_Go
$LN13@Des_Go:
00197 c6 44 24 30 00 mov BYTE PTR tv137[rsp], 0
$LN14@Des_Go:
0019c b8 00 03 00 00 mov eax, 768 ; 00000300H
001a1 48 6b c0 01 imul rax, rax, 1
001a5 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
001aa 48 8d 84 01 50
03 00 00 lea rax, QWORD PTR [rcx+rax+848]
001b2 0f b6 4c 24 30 movzx ecx, BYTE PTR tv137[rsp]
001b7 88 4c 24 20 mov BYTE PTR [rsp+32], cl
001bb 4c 8b c8 mov r9, rax
001be 4c 8b 44 24 68 mov r8, QWORD PTR Out$[rsp]
001c3 48 8b 54 24 68 mov rdx, QWORD PTR Out$[rsp]
001c8 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
001cd e8 00 00 00 00 call ?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z ; CDes::DES
; 48 : DES(Out, Out, &SubKey[0], Type);
001d2 b8 00 03 00 00 mov eax, 768 ; 00000300H
001d7 48 6b c0 00 imul rax, rax, 0
001db 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
001e0 48 8d 84 01 50
03 00 00 lea rax, QWORD PTR [rcx+rax+848]
001e8 0f b6 8c 24 90
00 00 00 movzx ecx, BYTE PTR Type$[rsp]
001f0 88 4c 24 20 mov BYTE PTR [rsp+32], cl
001f4 4c 8b c8 mov r9, rax
001f7 4c 8b 44 24 68 mov r8, QWORD PTR Out$[rsp]
001fc 48 8b 54 24 68 mov rdx, QWORD PTR Out$[rsp]
00201 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
00206 e8 00 00 00 00 call ?DES@CDes@@IEAAXQEAD0QEAY1BA@DA@_N_N@Z ; CDes::DES
; 49 : }
0020b e9 07 ff ff ff jmp $LN5@Des_Go
$LN6@Des_Go:
$LN11@Des_Go:
; 50 : }
; 51 : return true;
00210 b0 01 mov al, 1
$LN1@Des_Go:
; 52 : }
00212 48 83 c4 58 add rsp, 88 ; 00000058H
00216 c3 ret 0
?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z ENDP ; CDes::Des_Go
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?HexToAscii@CDes@@IEAAXPEAD0@Z
_TEXT SEGMENT
i$1 = 32
Buf$ = 36
lLen$ = 40
tv84 = 44
lTemp$ = 48
pOrg$ = 56
$T2 = 64
pDes$ = 72
this$ = 96
pszOrgRandom$ = 104
pszDesRandom$ = 112
?HexToAscii@CDes@@IEAAXPEAD0@Z PROC ; CDes::HexToAscii, COMDAT
; 222 : {
$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 48 83 ec 58 sub rsp, 88 ; 00000058H
; 223 : char Buf[4];
; 224 : char *pDes = (char *)pszDesRandom;
00013 48 8b 44 24 70 mov rax, QWORD PTR pszDesRandom$[rsp]
00018 48 89 44 24 48 mov QWORD PTR pDes$[rsp], rax
; 225 : char *pOrg = (char *)pszOrgRandom;
0001d 48 8b 44 24 68 mov rax, QWORD PTR pszOrgRandom$[rsp]
00022 48 89 44 24 38 mov QWORD PTR pOrg$[rsp], rax
; 226 : long lLen = (long)strlen( pOrg);
00027 48 8b 4c 24 38 mov rcx, QWORD PTR pOrg$[rsp]
0002c e8 00 00 00 00 call strlen
00031 89 44 24 28 mov DWORD PTR lLen$[rsp], eax
; 227 : long lTemp;
; 228 : for( int i = 0; i < lLen/2; ++i )
00035 c7 44 24 20 00
00 00 00 mov DWORD PTR i$1[rsp], 0
0003d eb 0a jmp SHORT $LN4@HexToAscii
$LN2@HexToAscii:
0003f 8b 44 24 20 mov eax, DWORD PTR i$1[rsp]
00043 ff c0 inc eax
00045 89 44 24 20 mov DWORD PTR i$1[rsp], eax
$LN4@HexToAscii:
00049 8b 44 24 28 mov eax, DWORD PTR lLen$[rsp]
0004d 99 cdq
0004e 2b c2 sub eax, edx
00050 d1 f8 sar eax, 1
00052 39 44 24 20 cmp DWORD PTR i$1[rsp], eax
00056 0f 8d a7 00 00
00 jge $LN3@HexToAscii
; 229 : {
; 230 : memcpy( Buf , pOrg+i*2 , 2 );
0005c 8b 44 24 20 mov eax, DWORD PTR i$1[rsp]
00060 d1 e0 shl eax, 1
00062 48 98 cdqe
00064 48 8b 4c 24 38 mov rcx, QWORD PTR pOrg$[rsp]
00069 48 03 c8 add rcx, rax
0006c 48 8b c1 mov rax, rcx
0006f 41 b8 02 00 00
00 mov r8d, 2
00075 48 8b d0 mov rdx, rax
00078 48 8d 4c 24 24 lea rcx, QWORD PTR Buf$[rsp]
0007d e8 00 00 00 00 call memcpy
; 231 : Buf[2] = 0;
00082 b8 01 00 00 00 mov eax, 1
00087 48 6b c0 02 imul rax, rax, 2
0008b 48 89 44 24 40 mov QWORD PTR $T2[rsp], rax
00090 48 83 7c 24 40
04 cmp QWORD PTR $T2[rsp], 4
00096 73 02 jae SHORT $LN6@HexToAscii
00098 eb 05 jmp SHORT $LN7@HexToAscii
$LN6@HexToAscii:
0009a e8 00 00 00 00 call __report_rangecheckfailure
$LN7@HexToAscii:
0009f 48 8b 44 24 40 mov rax, QWORD PTR $T2[rsp]
000a4 c6 44 04 24 00 mov BYTE PTR Buf$[rsp+rax], 0
; 232 : lTemp = CharHex(Buf[0])*16 + CharHex(Buf[1]);
000a9 b8 01 00 00 00 mov eax, 1
000ae 48 6b c0 00 imul rax, rax, 0
000b2 0f b6 54 04 24 movzx edx, BYTE PTR Buf$[rsp+rax]
000b7 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
000bc e8 00 00 00 00 call ?CharHex@CDes@@IEAAJD@Z ; CDes::CharHex
000c1 6b c0 10 imul eax, eax, 16
000c4 89 44 24 2c mov DWORD PTR tv84[rsp], eax
000c8 b9 01 00 00 00 mov ecx, 1
000cd 48 6b c9 01 imul rcx, rcx, 1
000d1 0f b6 54 0c 24 movzx edx, BYTE PTR Buf$[rsp+rcx]
000d6 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
000db e8 00 00 00 00 call ?CharHex@CDes@@IEAAJD@Z ; CDes::CharHex
000e0 8b 4c 24 2c mov ecx, DWORD PTR tv84[rsp]
000e4 03 c8 add ecx, eax
000e6 8b c1 mov eax, ecx
000e8 89 44 24 30 mov DWORD PTR lTemp$[rsp], eax
; 233 : pDes[i] = (char)lTemp;
000ec 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp]
000f1 48 8b 4c 24 48 mov rcx, QWORD PTR pDes$[rsp]
000f6 0f b6 54 24 30 movzx edx, BYTE PTR lTemp$[rsp]
000fb 88 14 01 mov BYTE PTR [rcx+rax], dl
; 234 : }
000fe e9 3c ff ff ff jmp $LN2@HexToAscii
$LN3@HexToAscii:
; 235 : pDes[i] = 0;
00103 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp]
00108 48 8b 4c 24 48 mov rcx, QWORD PTR pDes$[rsp]
0010d c6 04 01 00 mov BYTE PTR [rcx+rax], 0
$LN5@HexToAscii:
; 236 : }
00111 48 83 c4 58 add rsp, 88 ; 00000058H
00115 c3 ret 0
?HexToAscii@CDes@@IEAAXPEAD0@Z ENDP ; CDes::HexToAscii
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?CharHex@CDes@@IEAAJD@Z
_TEXT SEGMENT
this$ = 8
ch$ = 16
?CharHex@CDes@@IEAAJD@Z PROC ; CDes::CharHex, COMDAT
; 239 : {
00000 88 54 24 10 mov BYTE PTR [rsp+16], dl
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
; 240 : if( ch == '0') return( 0 );
00009 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0000e 83 f8 30 cmp eax, 48 ; 00000030H
00011 75 07 jne SHORT $LN2@CharHex
00013 33 c0 xor eax, eax
00015 e9 5b 01 00 00 jmp $LN1@CharHex
$LN2@CharHex:
; 241 : if( ch == '1') return( 1 );
0001a 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0001f 83 f8 31 cmp eax, 49 ; 00000031H
00022 75 0a jne SHORT $LN3@CharHex
00024 b8 01 00 00 00 mov eax, 1
00029 e9 47 01 00 00 jmp $LN1@CharHex
$LN3@CharHex:
; 242 : if( ch == '2') return( 2 );
0002e 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00033 83 f8 32 cmp eax, 50 ; 00000032H
00036 75 0a jne SHORT $LN4@CharHex
00038 b8 02 00 00 00 mov eax, 2
0003d e9 33 01 00 00 jmp $LN1@CharHex
$LN4@CharHex:
; 243 : if( ch == '3') return( 3 );
00042 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00047 83 f8 33 cmp eax, 51 ; 00000033H
0004a 75 0a jne SHORT $LN5@CharHex
0004c b8 03 00 00 00 mov eax, 3
00051 e9 1f 01 00 00 jmp $LN1@CharHex
$LN5@CharHex:
; 244 : if( ch == '4') return( 4 );
00056 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0005b 83 f8 34 cmp eax, 52 ; 00000034H
0005e 75 0a jne SHORT $LN6@CharHex
00060 b8 04 00 00 00 mov eax, 4
00065 e9 0b 01 00 00 jmp $LN1@CharHex
$LN6@CharHex:
; 245 : if( ch == '5') return( 5 );
0006a 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0006f 83 f8 35 cmp eax, 53 ; 00000035H
00072 75 0a jne SHORT $LN7@CharHex
00074 b8 05 00 00 00 mov eax, 5
00079 e9 f7 00 00 00 jmp $LN1@CharHex
$LN7@CharHex:
; 246 : if( ch == '6') return( 6 );
0007e 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00083 83 f8 36 cmp eax, 54 ; 00000036H
00086 75 0a jne SHORT $LN8@CharHex
00088 b8 06 00 00 00 mov eax, 6
0008d e9 e3 00 00 00 jmp $LN1@CharHex
$LN8@CharHex:
; 247 : if( ch == '7') return( 7 );
00092 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00097 83 f8 37 cmp eax, 55 ; 00000037H
0009a 75 0a jne SHORT $LN9@CharHex
0009c b8 07 00 00 00 mov eax, 7
000a1 e9 cf 00 00 00 jmp $LN1@CharHex
$LN9@CharHex:
; 248 : if( ch == '8') return( 8 );
000a6 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
000ab 83 f8 38 cmp eax, 56 ; 00000038H
000ae 75 0a jne SHORT $LN10@CharHex
000b0 b8 08 00 00 00 mov eax, 8
000b5 e9 bb 00 00 00 jmp $LN1@CharHex
$LN10@CharHex:
; 249 : if( ch == '9') return( 9 );
000ba 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
000bf 83 f8 39 cmp eax, 57 ; 00000039H
000c2 75 0a jne SHORT $LN11@CharHex
000c4 b8 09 00 00 00 mov eax, 9
000c9 e9 a7 00 00 00 jmp $LN1@CharHex
$LN11@CharHex:
; 250 : if( ch == 'a' || ch == 'A' ) return( 10 );
000ce 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
000d3 83 f8 61 cmp eax, 97 ; 00000061H
000d6 74 0a je SHORT $LN13@CharHex
000d8 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
000dd 83 f8 41 cmp eax, 65 ; 00000041H
000e0 75 0a jne SHORT $LN12@CharHex
$LN13@CharHex:
000e2 b8 0a 00 00 00 mov eax, 10
000e7 e9 89 00 00 00 jmp $LN1@CharHex
$LN12@CharHex:
; 251 : if( ch == 'b' || ch == 'B' ) return( 11 );
000ec 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
000f1 83 f8 62 cmp eax, 98 ; 00000062H
000f4 74 0a je SHORT $LN15@CharHex
000f6 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
000fb 83 f8 42 cmp eax, 66 ; 00000042H
000fe 75 07 jne SHORT $LN14@CharHex
$LN15@CharHex:
00100 b8 0b 00 00 00 mov eax, 11
00105 eb 6e jmp SHORT $LN1@CharHex
$LN14@CharHex:
; 252 : if( ch == 'c' || ch == 'C' ) return( 12 );
00107 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0010c 83 f8 63 cmp eax, 99 ; 00000063H
0010f 74 0a je SHORT $LN17@CharHex
00111 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00116 83 f8 43 cmp eax, 67 ; 00000043H
00119 75 07 jne SHORT $LN16@CharHex
$LN17@CharHex:
0011b b8 0c 00 00 00 mov eax, 12
00120 eb 53 jmp SHORT $LN1@CharHex
$LN16@CharHex:
; 253 : if( ch == 'd' || ch == 'D' ) return( 13 );
00122 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00127 83 f8 64 cmp eax, 100 ; 00000064H
0012a 74 0a je SHORT $LN19@CharHex
0012c 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00131 83 f8 44 cmp eax, 68 ; 00000044H
00134 75 07 jne SHORT $LN18@CharHex
$LN19@CharHex:
00136 b8 0d 00 00 00 mov eax, 13
0013b eb 38 jmp SHORT $LN1@CharHex
$LN18@CharHex:
; 254 : if( ch == 'e' || ch == 'E' ) return( 14 );
0013d 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00142 83 f8 65 cmp eax, 101 ; 00000065H
00145 74 0a je SHORT $LN21@CharHex
00147 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0014c 83 f8 45 cmp eax, 69 ; 00000045H
0014f 75 07 jne SHORT $LN20@CharHex
$LN21@CharHex:
00151 b8 0e 00 00 00 mov eax, 14
00156 eb 1d jmp SHORT $LN1@CharHex
$LN20@CharHex:
; 255 : if( ch == 'f' || ch == 'F' ) return( 15 );
00158 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
0015d 83 f8 66 cmp eax, 102 ; 00000066H
00160 74 0a je SHORT $LN23@CharHex
00162 0f be 44 24 10 movsx eax, BYTE PTR ch$[rsp]
00167 83 f8 46 cmp eax, 70 ; 00000046H
0016a 75 07 jne SHORT $LN22@CharHex
$LN23@CharHex:
0016c b8 0f 00 00 00 mov eax, 15
00171 eb 02 jmp SHORT $LN1@CharHex
$LN22@CharHex:
; 256 : return( 0 );
00173 33 c0 xor eax, eax
$LN1@CharHex:
; 257 : }
00175 c3 ret 0
?CharHex@CDes@@IEAAJD@Z ENDP ; CDes::CharHex
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?AsciiToHex@CDes@@IEAAXPEAD0J@Z
_TEXT SEGMENT
i$1 = 32
p$ = 40
this$ = 64
pszOrgRandom$ = 72
pszDesRandom$ = 80
lLen$ = 88
?AsciiToHex@CDes@@IEAAXPEAD0J@Z PROC ; CDes::AsciiToHex, COMDAT
; 210 : {
$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 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 48 83 ec 38 sub rsp, 56 ; 00000038H
; 211 : char *p = (char *)pszDesRandom;
00018 48 8b 44 24 50 mov rax, QWORD PTR pszDesRandom$[rsp]
0001d 48 89 44 24 28 mov QWORD PTR p$[rsp], rax
; 212 : //long lLen = lstrlen( (char*)pszOrgRandom);
; 213 : for( long i = 0; i < lLen; ++i )
00022 c7 44 24 20 00
00 00 00 mov DWORD PTR i$1[rsp], 0
0002a eb 0a jmp SHORT $LN4@AsciiToHex
$LN2@AsciiToHex:
0002c 8b 44 24 20 mov eax, DWORD PTR i$1[rsp]
00030 ff c0 inc eax
00032 89 44 24 20 mov DWORD PTR i$1[rsp], eax
$LN4@AsciiToHex:
00036 8b 44 24 58 mov eax, DWORD PTR lLen$[rsp]
0003a 39 44 24 20 cmp DWORD PTR i$1[rsp], eax
0003e 7d 32 jge SHORT $LN3@AsciiToHex
; 214 : {
; 215 : sprintf(p, "%02X", (BYTE)pszOrgRandom[i] );
00040 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp]
00045 48 8b 4c 24 48 mov rcx, QWORD PTR pszOrgRandom$[rsp]
0004a 0f b6 04 01 movzx eax, BYTE PTR [rcx+rax]
0004e 44 8b c0 mov r8d, eax
00051 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321116
00058 48 8b 4c 24 28 mov rcx, QWORD PTR p$[rsp]
0005d e8 00 00 00 00 call sprintf
; 216 : p += 2;
00062 48 8b 44 24 28 mov rax, QWORD PTR p$[rsp]
00067 48 83 c0 02 add rax, 2
0006b 48 89 44 24 28 mov QWORD PTR p$[rsp], rax
; 217 : }
00070 eb ba jmp SHORT $LN2@AsciiToHex
$LN3@AsciiToHex:
; 218 : *p=0;
00072 48 8b 44 24 28 mov rax, QWORD PTR p$[rsp]
00077 c6 00 00 mov BYTE PTR [rax], 0
; 219 : }
0007a 48 83 c4 38 add rsp, 56 ; 00000038H
0007e c3 ret 0
?AsciiToHex@CDes@@IEAAXPEAD0J@Z ENDP ; CDes::AsciiToHex
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ??1CDes@@UEAA@XZ
_TEXT SEGMENT
this$ = 8
??1CDes@@UEAA@XZ PROC ; CDes::~CDes, COMDAT
; 27 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0000a 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_7CDes@@6B@
00011 48 89 08 mov QWORD PTR [rax], rcx
; 28 :
; 29 : }
00014 c3 ret 0
??1CDes@@UEAA@XZ ENDP ; CDes::~CDes
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; File D:\Works\Corpsms_2010\public\des\des.h
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ??0CDes@@QEAA@XZ
_TEXT SEGMENT
this$ = 8
??0CDes@@QEAA@XZ PROC ; CDes::CDes, COMDAT
; 22 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0000a 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_7CDes@@6B@
00011 48 89 08 mov QWORD PTR [rax], rcx
; File D:\Works\Corpsms_2010\public\des\des.h
; 40 : const char IP_Table[64] = {
00014 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00019 c6 40 08 3a mov BYTE PTR [rax+8], 58 ; 0000003aH
0001d 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00022 c6 40 09 32 mov BYTE PTR [rax+9], 50 ; 00000032H
00026 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0002b c6 40 0a 2a mov BYTE PTR [rax+10], 42 ; 0000002aH
0002f 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00034 c6 40 0b 22 mov BYTE PTR [rax+11], 34 ; 00000022H
00038 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0003d c6 40 0c 1a mov BYTE PTR [rax+12], 26
00041 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00046 c6 40 0d 12 mov BYTE PTR [rax+13], 18
0004a 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0004f c6 40 0e 0a mov BYTE PTR [rax+14], 10
00053 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00058 c6 40 0f 02 mov BYTE PTR [rax+15], 2
0005c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00061 c6 40 10 3c mov BYTE PTR [rax+16], 60 ; 0000003cH
00065 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0006a c6 40 11 34 mov BYTE PTR [rax+17], 52 ; 00000034H
0006e 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00073 c6 40 12 2c mov BYTE PTR [rax+18], 44 ; 0000002cH
00077 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0007c c6 40 13 24 mov BYTE PTR [rax+19], 36 ; 00000024H
00080 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00085 c6 40 14 1c mov BYTE PTR [rax+20], 28
00089 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0008e c6 40 15 14 mov BYTE PTR [rax+21], 20
00092 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00097 c6 40 16 0c mov BYTE PTR [rax+22], 12
0009b 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000a0 c6 40 17 04 mov BYTE PTR [rax+23], 4
000a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000a9 c6 40 18 3e mov BYTE PTR [rax+24], 62 ; 0000003eH
000ad 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000b2 c6 40 19 36 mov BYTE PTR [rax+25], 54 ; 00000036H
000b6 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000bb c6 40 1a 2e mov BYTE PTR [rax+26], 46 ; 0000002eH
000bf 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000c4 c6 40 1b 26 mov BYTE PTR [rax+27], 38 ; 00000026H
000c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000cd c6 40 1c 1e mov BYTE PTR [rax+28], 30
000d1 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000d6 c6 40 1d 16 mov BYTE PTR [rax+29], 22
000da 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000df c6 40 1e 0e mov BYTE PTR [rax+30], 14
000e3 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000e8 c6 40 1f 06 mov BYTE PTR [rax+31], 6
000ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000f1 c6 40 20 40 mov BYTE PTR [rax+32], 64 ; 00000040H
000f5 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
000fa c6 40 21 38 mov BYTE PTR [rax+33], 56 ; 00000038H
000fe 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00103 c6 40 22 30 mov BYTE PTR [rax+34], 48 ; 00000030H
00107 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0010c c6 40 23 28 mov BYTE PTR [rax+35], 40 ; 00000028H
00110 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00115 c6 40 24 20 mov BYTE PTR [rax+36], 32 ; 00000020H
00119 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0011e c6 40 25 18 mov BYTE PTR [rax+37], 24
00122 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00127 c6 40 26 10 mov BYTE PTR [rax+38], 16
0012b 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00130 c6 40 27 08 mov BYTE PTR [rax+39], 8
00134 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00139 c6 40 28 39 mov BYTE PTR [rax+40], 57 ; 00000039H
0013d 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00142 c6 40 29 31 mov BYTE PTR [rax+41], 49 ; 00000031H
00146 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0014b c6 40 2a 29 mov BYTE PTR [rax+42], 41 ; 00000029H
0014f 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00154 c6 40 2b 21 mov BYTE PTR [rax+43], 33 ; 00000021H
00158 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0015d c6 40 2c 19 mov BYTE PTR [rax+44], 25
00161 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00166 c6 40 2d 11 mov BYTE PTR [rax+45], 17
0016a 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0016f c6 40 2e 09 mov BYTE PTR [rax+46], 9
00173 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00178 c6 40 2f 01 mov BYTE PTR [rax+47], 1
0017c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00181 c6 40 30 3b mov BYTE PTR [rax+48], 59 ; 0000003bH
00185 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0018a c6 40 31 33 mov BYTE PTR [rax+49], 51 ; 00000033H
0018e 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00193 c6 40 32 2b mov BYTE PTR [rax+50], 43 ; 0000002bH
00197 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0019c c6 40 33 23 mov BYTE PTR [rax+51], 35 ; 00000023H
001a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001a5 c6 40 34 1b mov BYTE PTR [rax+52], 27
001a9 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001ae c6 40 35 13 mov BYTE PTR [rax+53], 19
001b2 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001b7 c6 40 36 0b mov BYTE PTR [rax+54], 11
001bb 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001c0 c6 40 37 03 mov BYTE PTR [rax+55], 3
001c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001c9 c6 40 38 3d mov BYTE PTR [rax+56], 61 ; 0000003dH
001cd 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001d2 c6 40 39 35 mov BYTE PTR [rax+57], 53 ; 00000035H
001d6 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001db c6 40 3a 2d mov BYTE PTR [rax+58], 45 ; 0000002dH
001df 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001e4 c6 40 3b 25 mov BYTE PTR [rax+59], 37 ; 00000025H
001e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001ed c6 40 3c 1d mov BYTE PTR [rax+60], 29
001f1 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001f6 c6 40 3d 15 mov BYTE PTR [rax+61], 21
001fa 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
001ff c6 40 3e 0d mov BYTE PTR [rax+62], 13
00203 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00208 c6 40 3f 05 mov BYTE PTR [rax+63], 5
0020c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00211 c6 40 40 3f mov BYTE PTR [rax+64], 63 ; 0000003fH
00215 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0021a c6 40 41 37 mov BYTE PTR [rax+65], 55 ; 00000037H
0021e 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00223 c6 40 42 2f mov BYTE PTR [rax+66], 47 ; 0000002fH
00227 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0022c c6 40 43 27 mov BYTE PTR [rax+67], 39 ; 00000027H
00230 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00235 c6 40 44 1f mov BYTE PTR [rax+68], 31
00239 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0023e c6 40 45 17 mov BYTE PTR [rax+69], 23
00242 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00247 c6 40 46 0f mov BYTE PTR [rax+70], 15
0024b 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00250 c6 40 47 07 mov BYTE PTR [rax+71], 7
; 41 : 58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4,
; 42 : 62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48, 40, 32, 24, 16, 8,
; 43 : 57, 49, 41, 33, 25, 17, 9, 1, 59, 51, 43, 35, 27, 19, 11, 3,
; 44 : 61, 53, 45, 37, 29, 21, 13, 5, 63, 55, 47, 39, 31, 23, 15, 7
; 45 : };
; 46 : // final permutation IP^-1
; 47 : const char IPR_Table[64] = {
00254 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00259 c6 40 48 28 mov BYTE PTR [rax+72], 40 ; 00000028H
0025d 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00262 c6 40 49 08 mov BYTE PTR [rax+73], 8
00266 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0026b c6 40 4a 30 mov BYTE PTR [rax+74], 48 ; 00000030H
0026f 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00274 c6 40 4b 10 mov BYTE PTR [rax+75], 16
00278 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0027d c6 40 4c 38 mov BYTE PTR [rax+76], 56 ; 00000038H
00281 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00286 c6 40 4d 18 mov BYTE PTR [rax+77], 24
0028a 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0028f c6 40 4e 40 mov BYTE PTR [rax+78], 64 ; 00000040H
00293 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00298 c6 40 4f 20 mov BYTE PTR [rax+79], 32 ; 00000020H
0029c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002a1 c6 40 50 27 mov BYTE PTR [rax+80], 39 ; 00000027H
002a5 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002aa c6 40 51 07 mov BYTE PTR [rax+81], 7
002ae 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002b3 c6 40 52 2f mov BYTE PTR [rax+82], 47 ; 0000002fH
002b7 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002bc c6 40 53 0f mov BYTE PTR [rax+83], 15
002c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002c5 c6 40 54 37 mov BYTE PTR [rax+84], 55 ; 00000037H
002c9 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002ce c6 40 55 17 mov BYTE PTR [rax+85], 23
002d2 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002d7 c6 40 56 3f mov BYTE PTR [rax+86], 63 ; 0000003fH
002db 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002e0 c6 40 57 1f mov BYTE PTR [rax+87], 31
002e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002e9 c6 40 58 26 mov BYTE PTR [rax+88], 38 ; 00000026H
002ed 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002f2 c6 40 59 06 mov BYTE PTR [rax+89], 6
002f6 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
002fb c6 40 5a 2e mov BYTE PTR [rax+90], 46 ; 0000002eH
002ff 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00304 c6 40 5b 0e mov BYTE PTR [rax+91], 14
00308 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0030d c6 40 5c 36 mov BYTE PTR [rax+92], 54 ; 00000036H
00311 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00316 c6 40 5d 16 mov BYTE PTR [rax+93], 22
0031a 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0031f c6 40 5e 3e mov BYTE PTR [rax+94], 62 ; 0000003eH
00323 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00328 c6 40 5f 1e mov BYTE PTR [rax+95], 30
0032c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00331 c6 40 60 25 mov BYTE PTR [rax+96], 37 ; 00000025H
00335 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0033a c6 40 61 05 mov BYTE PTR [rax+97], 5
0033e 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00343 c6 40 62 2d mov BYTE PTR [rax+98], 45 ; 0000002dH
00347 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0034c c6 40 63 0d mov BYTE PTR [rax+99], 13
00350 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00355 c6 40 64 35 mov BYTE PTR [rax+100], 53 ; 00000035H
00359 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0035e c6 40 65 15 mov BYTE PTR [rax+101], 21
00362 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00367 c6 40 66 3d mov BYTE PTR [rax+102], 61 ; 0000003dH
0036b 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00370 c6 40 67 1d mov BYTE PTR [rax+103], 29
00374 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00379 c6 40 68 24 mov BYTE PTR [rax+104], 36 ; 00000024H
0037d 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00382 c6 40 69 04 mov BYTE PTR [rax+105], 4
00386 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0038b c6 40 6a 2c mov BYTE PTR [rax+106], 44 ; 0000002cH
0038f 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00394 c6 40 6b 0c mov BYTE PTR [rax+107], 12
00398 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0039d c6 40 6c 34 mov BYTE PTR [rax+108], 52 ; 00000034H
003a1 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003a6 c6 40 6d 14 mov BYTE PTR [rax+109], 20
003aa 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003af c6 40 6e 3c mov BYTE PTR [rax+110], 60 ; 0000003cH
003b3 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003b8 c6 40 6f 1c mov BYTE PTR [rax+111], 28
003bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003c1 c6 40 70 23 mov BYTE PTR [rax+112], 35 ; 00000023H
003c5 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003ca c6 40 71 03 mov BYTE PTR [rax+113], 3
003ce 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003d3 c6 40 72 2b mov BYTE PTR [rax+114], 43 ; 0000002bH
003d7 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003dc c6 40 73 0b mov BYTE PTR [rax+115], 11
003e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003e5 c6 40 74 33 mov BYTE PTR [rax+116], 51 ; 00000033H
003e9 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003ee c6 40 75 13 mov BYTE PTR [rax+117], 19
003f2 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
003f7 c6 40 76 3b mov BYTE PTR [rax+118], 59 ; 0000003bH
003fb 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00400 c6 40 77 1b mov BYTE PTR [rax+119], 27
00404 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00409 c6 40 78 22 mov BYTE PTR [rax+120], 34 ; 00000022H
0040d 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00412 c6 40 79 02 mov BYTE PTR [rax+121], 2
00416 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0041b c6 40 7a 2a mov BYTE PTR [rax+122], 42 ; 0000002aH
0041f 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00424 c6 40 7b 0a mov BYTE PTR [rax+123], 10
00428 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0042d c6 40 7c 32 mov BYTE PTR [rax+124], 50 ; 00000032H
00431 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00436 c6 40 7d 12 mov BYTE PTR [rax+125], 18
0043a 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0043f c6 40 7e 3a mov BYTE PTR [rax+126], 58 ; 0000003aH
00443 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00448 c6 40 7f 1a mov BYTE PTR [rax+127], 26
0044c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00451 c6 80 80 00 00
00 21 mov BYTE PTR [rax+128], 33 ; 00000021H
00458 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0045d c6 80 81 00 00
00 01 mov BYTE PTR [rax+129], 1
00464 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00469 c6 80 82 00 00
00 29 mov BYTE PTR [rax+130], 41 ; 00000029H
00470 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00475 c6 80 83 00 00
00 09 mov BYTE PTR [rax+131], 9
0047c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00481 c6 80 84 00 00
00 31 mov BYTE PTR [rax+132], 49 ; 00000031H
00488 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0048d c6 80 85 00 00
00 11 mov BYTE PTR [rax+133], 17
00494 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00499 c6 80 86 00 00
00 39 mov BYTE PTR [rax+134], 57 ; 00000039H
004a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004a5 c6 80 87 00 00
00 19 mov BYTE PTR [rax+135], 25
; 48 : 40, 8, 48, 16, 56, 24, 64, 32, 39, 7, 47, 15, 55, 23, 63, 31,
; 49 : 38, 6, 46, 14, 54, 22, 62, 30, 37, 5, 45, 13, 53, 21, 61, 29,
; 50 : 36, 4, 44, 12, 52, 20, 60, 28, 35, 3, 43, 11, 51, 19, 59, 27,
; 51 : 34, 2, 42, 10, 50, 18, 58, 26, 33, 1, 41, 9, 49, 17, 57, 25
; 52 : };
; 53 : // expansion operation matrix
; 54 : const char E_Table[48] = {
004ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004b1 c6 80 88 00 00
00 20 mov BYTE PTR [rax+136], 32 ; 00000020H
004b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004bd c6 80 89 00 00
00 01 mov BYTE PTR [rax+137], 1
004c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004c9 c6 80 8a 00 00
00 02 mov BYTE PTR [rax+138], 2
004d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004d5 c6 80 8b 00 00
00 03 mov BYTE PTR [rax+139], 3
004dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004e1 c6 80 8c 00 00
00 04 mov BYTE PTR [rax+140], 4
004e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004ed c6 80 8d 00 00
00 05 mov BYTE PTR [rax+141], 5
004f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
004f9 c6 80 8e 00 00
00 04 mov BYTE PTR [rax+142], 4
00500 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00505 c6 80 8f 00 00
00 05 mov BYTE PTR [rax+143], 5
0050c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00511 c6 80 90 00 00
00 06 mov BYTE PTR [rax+144], 6
00518 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0051d c6 80 91 00 00
00 07 mov BYTE PTR [rax+145], 7
00524 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00529 c6 80 92 00 00
00 08 mov BYTE PTR [rax+146], 8
00530 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00535 c6 80 93 00 00
00 09 mov BYTE PTR [rax+147], 9
0053c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00541 c6 80 94 00 00
00 08 mov BYTE PTR [rax+148], 8
00548 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0054d c6 80 95 00 00
00 09 mov BYTE PTR [rax+149], 9
00554 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00559 c6 80 96 00 00
00 0a mov BYTE PTR [rax+150], 10
00560 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00565 c6 80 97 00 00
00 0b mov BYTE PTR [rax+151], 11
0056c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00571 c6 80 98 00 00
00 0c mov BYTE PTR [rax+152], 12
00578 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0057d c6 80 99 00 00
00 0d mov BYTE PTR [rax+153], 13
00584 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00589 c6 80 9a 00 00
00 0c mov BYTE PTR [rax+154], 12
00590 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00595 c6 80 9b 00 00
00 0d mov BYTE PTR [rax+155], 13
0059c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005a1 c6 80 9c 00 00
00 0e mov BYTE PTR [rax+156], 14
005a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005ad c6 80 9d 00 00
00 0f mov BYTE PTR [rax+157], 15
005b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005b9 c6 80 9e 00 00
00 10 mov BYTE PTR [rax+158], 16
005c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005c5 c6 80 9f 00 00
00 11 mov BYTE PTR [rax+159], 17
005cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005d1 c6 80 a0 00 00
00 10 mov BYTE PTR [rax+160], 16
005d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005dd c6 80 a1 00 00
00 11 mov BYTE PTR [rax+161], 17
005e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005e9 c6 80 a2 00 00
00 12 mov BYTE PTR [rax+162], 18
005f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
005f5 c6 80 a3 00 00
00 13 mov BYTE PTR [rax+163], 19
005fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00601 c6 80 a4 00 00
00 14 mov BYTE PTR [rax+164], 20
00608 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0060d c6 80 a5 00 00
00 15 mov BYTE PTR [rax+165], 21
00614 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00619 c6 80 a6 00 00
00 14 mov BYTE PTR [rax+166], 20
00620 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00625 c6 80 a7 00 00
00 15 mov BYTE PTR [rax+167], 21
0062c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00631 c6 80 a8 00 00
00 16 mov BYTE PTR [rax+168], 22
00638 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0063d c6 80 a9 00 00
00 17 mov BYTE PTR [rax+169], 23
00644 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00649 c6 80 aa 00 00
00 18 mov BYTE PTR [rax+170], 24
00650 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00655 c6 80 ab 00 00
00 19 mov BYTE PTR [rax+171], 25
0065c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00661 c6 80 ac 00 00
00 18 mov BYTE PTR [rax+172], 24
00668 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0066d c6 80 ad 00 00
00 19 mov BYTE PTR [rax+173], 25
00674 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00679 c6 80 ae 00 00
00 1a mov BYTE PTR [rax+174], 26
00680 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00685 c6 80 af 00 00
00 1b mov BYTE PTR [rax+175], 27
0068c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00691 c6 80 b0 00 00
00 1c mov BYTE PTR [rax+176], 28
00698 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0069d c6 80 b1 00 00
00 1d mov BYTE PTR [rax+177], 29
006a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006a9 c6 80 b2 00 00
00 1c mov BYTE PTR [rax+178], 28
006b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006b5 c6 80 b3 00 00
00 1d mov BYTE PTR [rax+179], 29
006bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006c1 c6 80 b4 00 00
00 1e mov BYTE PTR [rax+180], 30
006c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006cd c6 80 b5 00 00
00 1f mov BYTE PTR [rax+181], 31
006d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006d9 c6 80 b6 00 00
00 20 mov BYTE PTR [rax+182], 32 ; 00000020H
006e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006e5 c6 80 b7 00 00
00 01 mov BYTE PTR [rax+183], 1
; 55 : 32, 1, 2, 3, 4, 5, 4, 5, 6, 7, 8, 9,
; 56 : 8, 9, 10, 11, 12, 13, 12, 13, 14, 15, 16, 17,
; 57 : 16, 17, 18, 19, 20, 21, 20, 21, 22, 23, 24, 25,
; 58 : 24, 25, 26, 27, 28, 29, 28, 29, 30, 31, 32, 1
; 59 : };
; 60 : // 32-bit permutation function P used on the output of the S-boxes
; 61 : const char P_Table[32] = {
006ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006f1 c6 80 b8 00 00
00 10 mov BYTE PTR [rax+184], 16
006f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
006fd c6 80 b9 00 00
00 07 mov BYTE PTR [rax+185], 7
00704 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00709 c6 80 ba 00 00
00 14 mov BYTE PTR [rax+186], 20
00710 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00715 c6 80 bb 00 00
00 15 mov BYTE PTR [rax+187], 21
0071c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00721 c6 80 bc 00 00
00 1d mov BYTE PTR [rax+188], 29
00728 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0072d c6 80 bd 00 00
00 0c mov BYTE PTR [rax+189], 12
00734 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00739 c6 80 be 00 00
00 1c mov BYTE PTR [rax+190], 28
00740 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00745 c6 80 bf 00 00
00 11 mov BYTE PTR [rax+191], 17
0074c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00751 c6 80 c0 00 00
00 01 mov BYTE PTR [rax+192], 1
00758 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0075d c6 80 c1 00 00
00 0f mov BYTE PTR [rax+193], 15
00764 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00769 c6 80 c2 00 00
00 17 mov BYTE PTR [rax+194], 23
00770 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00775 c6 80 c3 00 00
00 1a mov BYTE PTR [rax+195], 26
0077c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00781 c6 80 c4 00 00
00 05 mov BYTE PTR [rax+196], 5
00788 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0078d c6 80 c5 00 00
00 12 mov BYTE PTR [rax+197], 18
00794 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00799 c6 80 c6 00 00
00 1f mov BYTE PTR [rax+198], 31
007a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007a5 c6 80 c7 00 00
00 0a mov BYTE PTR [rax+199], 10
007ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007b1 c6 80 c8 00 00
00 02 mov BYTE PTR [rax+200], 2
007b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007bd c6 80 c9 00 00
00 08 mov BYTE PTR [rax+201], 8
007c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007c9 c6 80 ca 00 00
00 18 mov BYTE PTR [rax+202], 24
007d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007d5 c6 80 cb 00 00
00 0e mov BYTE PTR [rax+203], 14
007dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007e1 c6 80 cc 00 00
00 20 mov BYTE PTR [rax+204], 32 ; 00000020H
007e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007ed c6 80 cd 00 00
00 1b mov BYTE PTR [rax+205], 27
007f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
007f9 c6 80 ce 00 00
00 03 mov BYTE PTR [rax+206], 3
00800 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00805 c6 80 cf 00 00
00 09 mov BYTE PTR [rax+207], 9
0080c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00811 c6 80 d0 00 00
00 13 mov BYTE PTR [rax+208], 19
00818 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0081d c6 80 d1 00 00
00 0d mov BYTE PTR [rax+209], 13
00824 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00829 c6 80 d2 00 00
00 1e mov BYTE PTR [rax+210], 30
00830 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00835 c6 80 d3 00 00
00 06 mov BYTE PTR [rax+211], 6
0083c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00841 c6 80 d4 00 00
00 16 mov BYTE PTR [rax+212], 22
00848 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0084d c6 80 d5 00 00
00 0b mov BYTE PTR [rax+213], 11
00854 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00859 c6 80 d6 00 00
00 04 mov BYTE PTR [rax+214], 4
00860 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00865 c6 80 d7 00 00
00 19 mov BYTE PTR [rax+215], 25
; 62 : 16, 7, 20, 21, 29, 12, 28, 17, 1, 15, 23, 26, 5, 18, 31, 10,
; 63 : 2, 8, 24, 14, 32, 27, 3, 9, 19, 13, 30, 6, 22, 11, 4, 25
; 64 : };
; 65 : // permuted choice table (key)
; 66 : const char PC1_Table[56] = {
0086c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00871 c6 80 d8 00 00
00 39 mov BYTE PTR [rax+216], 57 ; 00000039H
00878 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0087d c6 80 d9 00 00
00 31 mov BYTE PTR [rax+217], 49 ; 00000031H
00884 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00889 c6 80 da 00 00
00 29 mov BYTE PTR [rax+218], 41 ; 00000029H
00890 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00895 c6 80 db 00 00
00 21 mov BYTE PTR [rax+219], 33 ; 00000021H
0089c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008a1 c6 80 dc 00 00
00 19 mov BYTE PTR [rax+220], 25
008a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008ad c6 80 dd 00 00
00 11 mov BYTE PTR [rax+221], 17
008b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008b9 c6 80 de 00 00
00 09 mov BYTE PTR [rax+222], 9
008c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008c5 c6 80 df 00 00
00 01 mov BYTE PTR [rax+223], 1
008cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008d1 c6 80 e0 00 00
00 3a mov BYTE PTR [rax+224], 58 ; 0000003aH
008d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008dd c6 80 e1 00 00
00 32 mov BYTE PTR [rax+225], 50 ; 00000032H
008e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008e9 c6 80 e2 00 00
00 2a mov BYTE PTR [rax+226], 42 ; 0000002aH
008f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
008f5 c6 80 e3 00 00
00 22 mov BYTE PTR [rax+227], 34 ; 00000022H
008fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00901 c6 80 e4 00 00
00 1a mov BYTE PTR [rax+228], 26
00908 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0090d c6 80 e5 00 00
00 12 mov BYTE PTR [rax+229], 18
00914 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00919 c6 80 e6 00 00
00 0a mov BYTE PTR [rax+230], 10
00920 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00925 c6 80 e7 00 00
00 02 mov BYTE PTR [rax+231], 2
0092c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00931 c6 80 e8 00 00
00 3b mov BYTE PTR [rax+232], 59 ; 0000003bH
00938 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0093d c6 80 e9 00 00
00 33 mov BYTE PTR [rax+233], 51 ; 00000033H
00944 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00949 c6 80 ea 00 00
00 2b mov BYTE PTR [rax+234], 43 ; 0000002bH
00950 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00955 c6 80 eb 00 00
00 23 mov BYTE PTR [rax+235], 35 ; 00000023H
0095c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00961 c6 80 ec 00 00
00 1b mov BYTE PTR [rax+236], 27
00968 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0096d c6 80 ed 00 00
00 13 mov BYTE PTR [rax+237], 19
00974 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00979 c6 80 ee 00 00
00 0b mov BYTE PTR [rax+238], 11
00980 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00985 c6 80 ef 00 00
00 03 mov BYTE PTR [rax+239], 3
0098c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00991 c6 80 f0 00 00
00 3c mov BYTE PTR [rax+240], 60 ; 0000003cH
00998 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0099d c6 80 f1 00 00
00 34 mov BYTE PTR [rax+241], 52 ; 00000034H
009a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009a9 c6 80 f2 00 00
00 2c mov BYTE PTR [rax+242], 44 ; 0000002cH
009b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009b5 c6 80 f3 00 00
00 24 mov BYTE PTR [rax+243], 36 ; 00000024H
009bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009c1 c6 80 f4 00 00
00 3f mov BYTE PTR [rax+244], 63 ; 0000003fH
009c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009cd c6 80 f5 00 00
00 37 mov BYTE PTR [rax+245], 55 ; 00000037H
009d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009d9 c6 80 f6 00 00
00 2f mov BYTE PTR [rax+246], 47 ; 0000002fH
009e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009e5 c6 80 f7 00 00
00 27 mov BYTE PTR [rax+247], 39 ; 00000027H
009ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009f1 c6 80 f8 00 00
00 1f mov BYTE PTR [rax+248], 31
009f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
009fd c6 80 f9 00 00
00 17 mov BYTE PTR [rax+249], 23
00a04 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a09 c6 80 fa 00 00
00 0f mov BYTE PTR [rax+250], 15
00a10 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a15 c6 80 fb 00 00
00 07 mov BYTE PTR [rax+251], 7
00a1c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a21 c6 80 fc 00 00
00 3e mov BYTE PTR [rax+252], 62 ; 0000003eH
00a28 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a2d c6 80 fd 00 00
00 36 mov BYTE PTR [rax+253], 54 ; 00000036H
00a34 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a39 c6 80 fe 00 00
00 2e mov BYTE PTR [rax+254], 46 ; 0000002eH
00a40 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a45 c6 80 ff 00 00
00 26 mov BYTE PTR [rax+255], 38 ; 00000026H
00a4c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a51 c6 80 00 01 00
00 1e mov BYTE PTR [rax+256], 30
00a58 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a5d c6 80 01 01 00
00 16 mov BYTE PTR [rax+257], 22
00a64 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a69 c6 80 02 01 00
00 0e mov BYTE PTR [rax+258], 14
00a70 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a75 c6 80 03 01 00
00 06 mov BYTE PTR [rax+259], 6
00a7c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a81 c6 80 04 01 00
00 3d mov BYTE PTR [rax+260], 61 ; 0000003dH
00a88 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a8d c6 80 05 01 00
00 35 mov BYTE PTR [rax+261], 53 ; 00000035H
00a94 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00a99 c6 80 06 01 00
00 2d mov BYTE PTR [rax+262], 45 ; 0000002dH
00aa0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00aa5 c6 80 07 01 00
00 25 mov BYTE PTR [rax+263], 37 ; 00000025H
00aac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ab1 c6 80 08 01 00
00 1d mov BYTE PTR [rax+264], 29
00ab8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00abd c6 80 09 01 00
00 15 mov BYTE PTR [rax+265], 21
00ac4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ac9 c6 80 0a 01 00
00 0d mov BYTE PTR [rax+266], 13
00ad0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ad5 c6 80 0b 01 00
00 05 mov BYTE PTR [rax+267], 5
00adc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ae1 c6 80 0c 01 00
00 1c mov BYTE PTR [rax+268], 28
00ae8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00aed c6 80 0d 01 00
00 14 mov BYTE PTR [rax+269], 20
00af4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00af9 c6 80 0e 01 00
00 0c mov BYTE PTR [rax+270], 12
00b00 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b05 c6 80 0f 01 00
00 04 mov BYTE PTR [rax+271], 4
; 67 : 57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18,
; 68 : 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36,
; 69 : 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22,
; 70 : 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4
; 71 : };
; 72 : // permuted choice key (table)
; 73 : const char PC2_Table[48] = {
00b0c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b11 c6 80 10 01 00
00 0e mov BYTE PTR [rax+272], 14
00b18 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b1d c6 80 11 01 00
00 11 mov BYTE PTR [rax+273], 17
00b24 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b29 c6 80 12 01 00
00 0b mov BYTE PTR [rax+274], 11
00b30 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b35 c6 80 13 01 00
00 18 mov BYTE PTR [rax+275], 24
00b3c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b41 c6 80 14 01 00
00 01 mov BYTE PTR [rax+276], 1
00b48 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b4d c6 80 15 01 00
00 05 mov BYTE PTR [rax+277], 5
00b54 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b59 c6 80 16 01 00
00 03 mov BYTE PTR [rax+278], 3
00b60 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b65 c6 80 17 01 00
00 1c mov BYTE PTR [rax+279], 28
00b6c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b71 c6 80 18 01 00
00 0f mov BYTE PTR [rax+280], 15
00b78 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b7d c6 80 19 01 00
00 06 mov BYTE PTR [rax+281], 6
00b84 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b89 c6 80 1a 01 00
00 15 mov BYTE PTR [rax+282], 21
00b90 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00b95 c6 80 1b 01 00
00 0a mov BYTE PTR [rax+283], 10
00b9c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ba1 c6 80 1c 01 00
00 17 mov BYTE PTR [rax+284], 23
00ba8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00bad c6 80 1d 01 00
00 13 mov BYTE PTR [rax+285], 19
00bb4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00bb9 c6 80 1e 01 00
00 0c mov BYTE PTR [rax+286], 12
00bc0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00bc5 c6 80 1f 01 00
00 04 mov BYTE PTR [rax+287], 4
00bcc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00bd1 c6 80 20 01 00
00 1a mov BYTE PTR [rax+288], 26
00bd8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00bdd c6 80 21 01 00
00 08 mov BYTE PTR [rax+289], 8
00be4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00be9 c6 80 22 01 00
00 10 mov BYTE PTR [rax+290], 16
00bf0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00bf5 c6 80 23 01 00
00 07 mov BYTE PTR [rax+291], 7
00bfc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c01 c6 80 24 01 00
00 1b mov BYTE PTR [rax+292], 27
00c08 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c0d c6 80 25 01 00
00 14 mov BYTE PTR [rax+293], 20
00c14 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c19 c6 80 26 01 00
00 0d mov BYTE PTR [rax+294], 13
00c20 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c25 c6 80 27 01 00
00 02 mov BYTE PTR [rax+295], 2
00c2c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c31 c6 80 28 01 00
00 29 mov BYTE PTR [rax+296], 41 ; 00000029H
00c38 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c3d c6 80 29 01 00
00 34 mov BYTE PTR [rax+297], 52 ; 00000034H
00c44 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c49 c6 80 2a 01 00
00 1f mov BYTE PTR [rax+298], 31
00c50 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c55 c6 80 2b 01 00
00 25 mov BYTE PTR [rax+299], 37 ; 00000025H
00c5c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c61 c6 80 2c 01 00
00 2f mov BYTE PTR [rax+300], 47 ; 0000002fH
00c68 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c6d c6 80 2d 01 00
00 37 mov BYTE PTR [rax+301], 55 ; 00000037H
00c74 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c79 c6 80 2e 01 00
00 1e mov BYTE PTR [rax+302], 30
00c80 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c85 c6 80 2f 01 00
00 28 mov BYTE PTR [rax+303], 40 ; 00000028H
00c8c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c91 c6 80 30 01 00
00 33 mov BYTE PTR [rax+304], 51 ; 00000033H
00c98 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00c9d c6 80 31 01 00
00 2d mov BYTE PTR [rax+305], 45 ; 0000002dH
00ca4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ca9 c6 80 32 01 00
00 21 mov BYTE PTR [rax+306], 33 ; 00000021H
00cb0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00cb5 c6 80 33 01 00
00 30 mov BYTE PTR [rax+307], 48 ; 00000030H
00cbc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00cc1 c6 80 34 01 00
00 2c mov BYTE PTR [rax+308], 44 ; 0000002cH
00cc8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ccd c6 80 35 01 00
00 31 mov BYTE PTR [rax+309], 49 ; 00000031H
00cd4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00cd9 c6 80 36 01 00
00 27 mov BYTE PTR [rax+310], 39 ; 00000027H
00ce0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ce5 c6 80 37 01 00
00 38 mov BYTE PTR [rax+311], 56 ; 00000038H
00cec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00cf1 c6 80 38 01 00
00 22 mov BYTE PTR [rax+312], 34 ; 00000022H
00cf8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00cfd c6 80 39 01 00
00 35 mov BYTE PTR [rax+313], 53 ; 00000035H
00d04 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d09 c6 80 3a 01 00
00 2e mov BYTE PTR [rax+314], 46 ; 0000002eH
00d10 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d15 c6 80 3b 01 00
00 2a mov BYTE PTR [rax+315], 42 ; 0000002aH
00d1c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d21 c6 80 3c 01 00
00 32 mov BYTE PTR [rax+316], 50 ; 00000032H
00d28 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d2d c6 80 3d 01 00
00 24 mov BYTE PTR [rax+317], 36 ; 00000024H
00d34 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d39 c6 80 3e 01 00
00 1d mov BYTE PTR [rax+318], 29
00d40 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d45 c6 80 3f 01 00
00 20 mov BYTE PTR [rax+319], 32 ; 00000020H
; 74 : 14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10,
; 75 : 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2,
; 76 : 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48,
; 77 : 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32
; 78 : };
; 79 : // number left rotations of pc1
; 80 : const char LOOP_Table[16] = {
00d4c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d51 c6 80 40 01 00
00 01 mov BYTE PTR [rax+320], 1
00d58 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d5d c6 80 41 01 00
00 01 mov BYTE PTR [rax+321], 1
00d64 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d69 c6 80 42 01 00
00 02 mov BYTE PTR [rax+322], 2
00d70 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d75 c6 80 43 01 00
00 02 mov BYTE PTR [rax+323], 2
00d7c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d81 c6 80 44 01 00
00 02 mov BYTE PTR [rax+324], 2
00d88 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d8d c6 80 45 01 00
00 02 mov BYTE PTR [rax+325], 2
00d94 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00d99 c6 80 46 01 00
00 02 mov BYTE PTR [rax+326], 2
00da0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00da5 c6 80 47 01 00
00 02 mov BYTE PTR [rax+327], 2
00dac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00db1 c6 80 48 01 00
00 01 mov BYTE PTR [rax+328], 1
00db8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00dbd c6 80 49 01 00
00 02 mov BYTE PTR [rax+329], 2
00dc4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00dc9 c6 80 4a 01 00
00 02 mov BYTE PTR [rax+330], 2
00dd0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00dd5 c6 80 4b 01 00
00 02 mov BYTE PTR [rax+331], 2
00ddc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00de1 c6 80 4c 01 00
00 02 mov BYTE PTR [rax+332], 2
00de8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ded c6 80 4d 01 00
00 02 mov BYTE PTR [rax+333], 2
00df4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00df9 c6 80 4e 01 00
00 02 mov BYTE PTR [rax+334], 2
00e00 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e05 c6 80 4f 01 00
00 01 mov BYTE PTR [rax+335], 1
; 81 : 1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1
; 82 : };
; 83 : // The (in)famous S-boxes
; 84 : const char S_Box[8][4][16] = {
00e0c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e11 c6 80 50 01 00
00 0e mov BYTE PTR [rax+336], 14
00e18 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e1d c6 80 51 01 00
00 04 mov BYTE PTR [rax+337], 4
00e24 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e29 c6 80 52 01 00
00 0d mov BYTE PTR [rax+338], 13
00e30 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e35 c6 80 53 01 00
00 01 mov BYTE PTR [rax+339], 1
00e3c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e41 c6 80 54 01 00
00 02 mov BYTE PTR [rax+340], 2
00e48 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e4d c6 80 55 01 00
00 0f mov BYTE PTR [rax+341], 15
00e54 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e59 c6 80 56 01 00
00 0b mov BYTE PTR [rax+342], 11
00e60 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e65 c6 80 57 01 00
00 08 mov BYTE PTR [rax+343], 8
00e6c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e71 c6 80 58 01 00
00 03 mov BYTE PTR [rax+344], 3
00e78 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e7d c6 80 59 01 00
00 0a mov BYTE PTR [rax+345], 10
00e84 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e89 c6 80 5a 01 00
00 06 mov BYTE PTR [rax+346], 6
00e90 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00e95 c6 80 5b 01 00
00 0c mov BYTE PTR [rax+347], 12
00e9c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ea1 c6 80 5c 01 00
00 05 mov BYTE PTR [rax+348], 5
00ea8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ead c6 80 5d 01 00
00 09 mov BYTE PTR [rax+349], 9
00eb4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00eb9 c6 80 5e 01 00
00 00 mov BYTE PTR [rax+350], 0
00ec0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ec5 c6 80 5f 01 00
00 07 mov BYTE PTR [rax+351], 7
00ecc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ed1 c6 80 60 01 00
00 00 mov BYTE PTR [rax+352], 0
00ed8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00edd c6 80 61 01 00
00 0f mov BYTE PTR [rax+353], 15
00ee4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ee9 c6 80 62 01 00
00 07 mov BYTE PTR [rax+354], 7
00ef0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ef5 c6 80 63 01 00
00 04 mov BYTE PTR [rax+355], 4
00efc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f01 c6 80 64 01 00
00 0e mov BYTE PTR [rax+356], 14
00f08 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f0d c6 80 65 01 00
00 02 mov BYTE PTR [rax+357], 2
00f14 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f19 c6 80 66 01 00
00 0d mov BYTE PTR [rax+358], 13
00f20 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f25 c6 80 67 01 00
00 01 mov BYTE PTR [rax+359], 1
00f2c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f31 c6 80 68 01 00
00 0a mov BYTE PTR [rax+360], 10
00f38 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f3d c6 80 69 01 00
00 06 mov BYTE PTR [rax+361], 6
00f44 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f49 c6 80 6a 01 00
00 0c mov BYTE PTR [rax+362], 12
00f50 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f55 c6 80 6b 01 00
00 0b mov BYTE PTR [rax+363], 11
00f5c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f61 c6 80 6c 01 00
00 09 mov BYTE PTR [rax+364], 9
00f68 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f6d c6 80 6d 01 00
00 05 mov BYTE PTR [rax+365], 5
00f74 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f79 c6 80 6e 01 00
00 03 mov BYTE PTR [rax+366], 3
00f80 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f85 c6 80 6f 01 00
00 08 mov BYTE PTR [rax+367], 8
00f8c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f91 c6 80 70 01 00
00 04 mov BYTE PTR [rax+368], 4
00f98 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00f9d c6 80 71 01 00
00 01 mov BYTE PTR [rax+369], 1
00fa4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00fa9 c6 80 72 01 00
00 0e mov BYTE PTR [rax+370], 14
00fb0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00fb5 c6 80 73 01 00
00 08 mov BYTE PTR [rax+371], 8
00fbc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00fc1 c6 80 74 01 00
00 0d mov BYTE PTR [rax+372], 13
00fc8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00fcd c6 80 75 01 00
00 06 mov BYTE PTR [rax+373], 6
00fd4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00fd9 c6 80 76 01 00
00 02 mov BYTE PTR [rax+374], 2
00fe0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00fe5 c6 80 77 01 00
00 0b mov BYTE PTR [rax+375], 11
00fec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ff1 c6 80 78 01 00
00 0f mov BYTE PTR [rax+376], 15
00ff8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
00ffd c6 80 79 01 00
00 0c mov BYTE PTR [rax+377], 12
01004 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01009 c6 80 7a 01 00
00 09 mov BYTE PTR [rax+378], 9
01010 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01015 c6 80 7b 01 00
00 07 mov BYTE PTR [rax+379], 7
0101c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01021 c6 80 7c 01 00
00 03 mov BYTE PTR [rax+380], 3
01028 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0102d c6 80 7d 01 00
00 0a mov BYTE PTR [rax+381], 10
01034 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01039 c6 80 7e 01 00
00 05 mov BYTE PTR [rax+382], 5
01040 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01045 c6 80 7f 01 00
00 00 mov BYTE PTR [rax+383], 0
0104c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01051 c6 80 80 01 00
00 0f mov BYTE PTR [rax+384], 15
01058 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0105d c6 80 81 01 00
00 0c mov BYTE PTR [rax+385], 12
01064 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01069 c6 80 82 01 00
00 08 mov BYTE PTR [rax+386], 8
01070 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01075 c6 80 83 01 00
00 02 mov BYTE PTR [rax+387], 2
0107c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01081 c6 80 84 01 00
00 04 mov BYTE PTR [rax+388], 4
01088 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0108d c6 80 85 01 00
00 09 mov BYTE PTR [rax+389], 9
01094 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01099 c6 80 86 01 00
00 01 mov BYTE PTR [rax+390], 1
010a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010a5 c6 80 87 01 00
00 07 mov BYTE PTR [rax+391], 7
010ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010b1 c6 80 88 01 00
00 05 mov BYTE PTR [rax+392], 5
010b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010bd c6 80 89 01 00
00 0b mov BYTE PTR [rax+393], 11
010c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010c9 c6 80 8a 01 00
00 03 mov BYTE PTR [rax+394], 3
010d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010d5 c6 80 8b 01 00
00 0e mov BYTE PTR [rax+395], 14
010dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010e1 c6 80 8c 01 00
00 0a mov BYTE PTR [rax+396], 10
010e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010ed c6 80 8d 01 00
00 00 mov BYTE PTR [rax+397], 0
010f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
010f9 c6 80 8e 01 00
00 06 mov BYTE PTR [rax+398], 6
01100 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01105 c6 80 8f 01 00
00 0d mov BYTE PTR [rax+399], 13
0110c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01111 c6 80 90 01 00
00 0f mov BYTE PTR [rax+400], 15
01118 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0111d c6 80 91 01 00
00 01 mov BYTE PTR [rax+401], 1
01124 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01129 c6 80 92 01 00
00 08 mov BYTE PTR [rax+402], 8
01130 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01135 c6 80 93 01 00
00 0e mov BYTE PTR [rax+403], 14
0113c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01141 c6 80 94 01 00
00 06 mov BYTE PTR [rax+404], 6
01148 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0114d c6 80 95 01 00
00 0b mov BYTE PTR [rax+405], 11
01154 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01159 c6 80 96 01 00
00 03 mov BYTE PTR [rax+406], 3
01160 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01165 c6 80 97 01 00
00 04 mov BYTE PTR [rax+407], 4
0116c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01171 c6 80 98 01 00
00 09 mov BYTE PTR [rax+408], 9
01178 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0117d c6 80 99 01 00
00 07 mov BYTE PTR [rax+409], 7
01184 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01189 c6 80 9a 01 00
00 02 mov BYTE PTR [rax+410], 2
01190 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01195 c6 80 9b 01 00
00 0d mov BYTE PTR [rax+411], 13
0119c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011a1 c6 80 9c 01 00
00 0c mov BYTE PTR [rax+412], 12
011a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011ad c6 80 9d 01 00
00 00 mov BYTE PTR [rax+413], 0
011b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011b9 c6 80 9e 01 00
00 05 mov BYTE PTR [rax+414], 5
011c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011c5 c6 80 9f 01 00
00 0a mov BYTE PTR [rax+415], 10
011cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011d1 c6 80 a0 01 00
00 03 mov BYTE PTR [rax+416], 3
011d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011dd c6 80 a1 01 00
00 0d mov BYTE PTR [rax+417], 13
011e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011e9 c6 80 a2 01 00
00 04 mov BYTE PTR [rax+418], 4
011f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
011f5 c6 80 a3 01 00
00 07 mov BYTE PTR [rax+419], 7
011fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01201 c6 80 a4 01 00
00 0f mov BYTE PTR [rax+420], 15
01208 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0120d c6 80 a5 01 00
00 02 mov BYTE PTR [rax+421], 2
01214 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01219 c6 80 a6 01 00
00 08 mov BYTE PTR [rax+422], 8
01220 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01225 c6 80 a7 01 00
00 0e mov BYTE PTR [rax+423], 14
0122c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01231 c6 80 a8 01 00
00 0c mov BYTE PTR [rax+424], 12
01238 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0123d c6 80 a9 01 00
00 00 mov BYTE PTR [rax+425], 0
01244 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01249 c6 80 aa 01 00
00 01 mov BYTE PTR [rax+426], 1
01250 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01255 c6 80 ab 01 00
00 0a mov BYTE PTR [rax+427], 10
0125c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01261 c6 80 ac 01 00
00 06 mov BYTE PTR [rax+428], 6
01268 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0126d c6 80 ad 01 00
00 09 mov BYTE PTR [rax+429], 9
01274 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01279 c6 80 ae 01 00
00 0b mov BYTE PTR [rax+430], 11
01280 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01285 c6 80 af 01 00
00 05 mov BYTE PTR [rax+431], 5
0128c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01291 c6 80 b0 01 00
00 00 mov BYTE PTR [rax+432], 0
01298 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0129d c6 80 b1 01 00
00 0e mov BYTE PTR [rax+433], 14
012a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012a9 c6 80 b2 01 00
00 07 mov BYTE PTR [rax+434], 7
012b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012b5 c6 80 b3 01 00
00 0b mov BYTE PTR [rax+435], 11
012bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012c1 c6 80 b4 01 00
00 0a mov BYTE PTR [rax+436], 10
012c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012cd c6 80 b5 01 00
00 04 mov BYTE PTR [rax+437], 4
012d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012d9 c6 80 b6 01 00
00 0d mov BYTE PTR [rax+438], 13
012e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012e5 c6 80 b7 01 00
00 01 mov BYTE PTR [rax+439], 1
012ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012f1 c6 80 b8 01 00
00 05 mov BYTE PTR [rax+440], 5
012f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
012fd c6 80 b9 01 00
00 08 mov BYTE PTR [rax+441], 8
01304 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01309 c6 80 ba 01 00
00 0c mov BYTE PTR [rax+442], 12
01310 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01315 c6 80 bb 01 00
00 06 mov BYTE PTR [rax+443], 6
0131c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01321 c6 80 bc 01 00
00 09 mov BYTE PTR [rax+444], 9
01328 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0132d c6 80 bd 01 00
00 03 mov BYTE PTR [rax+445], 3
01334 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01339 c6 80 be 01 00
00 02 mov BYTE PTR [rax+446], 2
01340 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01345 c6 80 bf 01 00
00 0f mov BYTE PTR [rax+447], 15
0134c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01351 c6 80 c0 01 00
00 0d mov BYTE PTR [rax+448], 13
01358 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0135d c6 80 c1 01 00
00 08 mov BYTE PTR [rax+449], 8
01364 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01369 c6 80 c2 01 00
00 0a mov BYTE PTR [rax+450], 10
01370 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01375 c6 80 c3 01 00
00 01 mov BYTE PTR [rax+451], 1
0137c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01381 c6 80 c4 01 00
00 03 mov BYTE PTR [rax+452], 3
01388 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0138d c6 80 c5 01 00
00 0f mov BYTE PTR [rax+453], 15
01394 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01399 c6 80 c6 01 00
00 04 mov BYTE PTR [rax+454], 4
013a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013a5 c6 80 c7 01 00
00 02 mov BYTE PTR [rax+455], 2
013ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013b1 c6 80 c8 01 00
00 0b mov BYTE PTR [rax+456], 11
013b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013bd c6 80 c9 01 00
00 06 mov BYTE PTR [rax+457], 6
013c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013c9 c6 80 ca 01 00
00 07 mov BYTE PTR [rax+458], 7
013d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013d5 c6 80 cb 01 00
00 0c mov BYTE PTR [rax+459], 12
013dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013e1 c6 80 cc 01 00
00 00 mov BYTE PTR [rax+460], 0
013e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013ed c6 80 cd 01 00
00 05 mov BYTE PTR [rax+461], 5
013f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
013f9 c6 80 ce 01 00
00 0e mov BYTE PTR [rax+462], 14
01400 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01405 c6 80 cf 01 00
00 09 mov BYTE PTR [rax+463], 9
0140c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01411 c6 80 d0 01 00
00 0a mov BYTE PTR [rax+464], 10
01418 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0141d c6 80 d1 01 00
00 00 mov BYTE PTR [rax+465], 0
01424 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01429 c6 80 d2 01 00
00 09 mov BYTE PTR [rax+466], 9
01430 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01435 c6 80 d3 01 00
00 0e mov BYTE PTR [rax+467], 14
0143c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01441 c6 80 d4 01 00
00 06 mov BYTE PTR [rax+468], 6
01448 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0144d c6 80 d5 01 00
00 03 mov BYTE PTR [rax+469], 3
01454 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01459 c6 80 d6 01 00
00 0f mov BYTE PTR [rax+470], 15
01460 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01465 c6 80 d7 01 00
00 05 mov BYTE PTR [rax+471], 5
0146c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01471 c6 80 d8 01 00
00 01 mov BYTE PTR [rax+472], 1
01478 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0147d c6 80 d9 01 00
00 0d mov BYTE PTR [rax+473], 13
01484 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01489 c6 80 da 01 00
00 0c mov BYTE PTR [rax+474], 12
01490 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01495 c6 80 db 01 00
00 07 mov BYTE PTR [rax+475], 7
0149c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014a1 c6 80 dc 01 00
00 0b mov BYTE PTR [rax+476], 11
014a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014ad c6 80 dd 01 00
00 04 mov BYTE PTR [rax+477], 4
014b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014b9 c6 80 de 01 00
00 02 mov BYTE PTR [rax+478], 2
014c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014c5 c6 80 df 01 00
00 08 mov BYTE PTR [rax+479], 8
014cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014d1 c6 80 e0 01 00
00 0d mov BYTE PTR [rax+480], 13
014d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014dd c6 80 e1 01 00
00 07 mov BYTE PTR [rax+481], 7
014e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014e9 c6 80 e2 01 00
00 00 mov BYTE PTR [rax+482], 0
014f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
014f5 c6 80 e3 01 00
00 09 mov BYTE PTR [rax+483], 9
014fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01501 c6 80 e4 01 00
00 03 mov BYTE PTR [rax+484], 3
01508 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0150d c6 80 e5 01 00
00 04 mov BYTE PTR [rax+485], 4
01514 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01519 c6 80 e6 01 00
00 06 mov BYTE PTR [rax+486], 6
01520 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01525 c6 80 e7 01 00
00 0a mov BYTE PTR [rax+487], 10
0152c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01531 c6 80 e8 01 00
00 02 mov BYTE PTR [rax+488], 2
01538 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0153d c6 80 e9 01 00
00 08 mov BYTE PTR [rax+489], 8
01544 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01549 c6 80 ea 01 00
00 05 mov BYTE PTR [rax+490], 5
01550 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01555 c6 80 eb 01 00
00 0e mov BYTE PTR [rax+491], 14
0155c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01561 c6 80 ec 01 00
00 0c mov BYTE PTR [rax+492], 12
01568 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0156d c6 80 ed 01 00
00 0b mov BYTE PTR [rax+493], 11
01574 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01579 c6 80 ee 01 00
00 0f mov BYTE PTR [rax+494], 15
01580 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01585 c6 80 ef 01 00
00 01 mov BYTE PTR [rax+495], 1
0158c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01591 c6 80 f0 01 00
00 0d mov BYTE PTR [rax+496], 13
01598 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0159d c6 80 f1 01 00
00 06 mov BYTE PTR [rax+497], 6
015a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015a9 c6 80 f2 01 00
00 04 mov BYTE PTR [rax+498], 4
015b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015b5 c6 80 f3 01 00
00 09 mov BYTE PTR [rax+499], 9
015bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015c1 c6 80 f4 01 00
00 08 mov BYTE PTR [rax+500], 8
015c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015cd c6 80 f5 01 00
00 0f mov BYTE PTR [rax+501], 15
015d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015d9 c6 80 f6 01 00
00 03 mov BYTE PTR [rax+502], 3
015e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015e5 c6 80 f7 01 00
00 00 mov BYTE PTR [rax+503], 0
015ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015f1 c6 80 f8 01 00
00 0b mov BYTE PTR [rax+504], 11
015f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
015fd c6 80 f9 01 00
00 01 mov BYTE PTR [rax+505], 1
01604 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01609 c6 80 fa 01 00
00 02 mov BYTE PTR [rax+506], 2
01610 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01615 c6 80 fb 01 00
00 0c mov BYTE PTR [rax+507], 12
0161c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01621 c6 80 fc 01 00
00 05 mov BYTE PTR [rax+508], 5
01628 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0162d c6 80 fd 01 00
00 0a mov BYTE PTR [rax+509], 10
01634 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01639 c6 80 fe 01 00
00 0e mov BYTE PTR [rax+510], 14
01640 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01645 c6 80 ff 01 00
00 07 mov BYTE PTR [rax+511], 7
0164c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01651 c6 80 00 02 00
00 01 mov BYTE PTR [rax+512], 1
01658 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0165d c6 80 01 02 00
00 0a mov BYTE PTR [rax+513], 10
01664 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01669 c6 80 02 02 00
00 0d mov BYTE PTR [rax+514], 13
01670 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01675 c6 80 03 02 00
00 00 mov BYTE PTR [rax+515], 0
0167c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01681 c6 80 04 02 00
00 06 mov BYTE PTR [rax+516], 6
01688 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0168d c6 80 05 02 00
00 09 mov BYTE PTR [rax+517], 9
01694 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01699 c6 80 06 02 00
00 08 mov BYTE PTR [rax+518], 8
016a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016a5 c6 80 07 02 00
00 07 mov BYTE PTR [rax+519], 7
016ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016b1 c6 80 08 02 00
00 04 mov BYTE PTR [rax+520], 4
016b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016bd c6 80 09 02 00
00 0f mov BYTE PTR [rax+521], 15
016c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016c9 c6 80 0a 02 00
00 0e mov BYTE PTR [rax+522], 14
016d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016d5 c6 80 0b 02 00
00 03 mov BYTE PTR [rax+523], 3
016dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016e1 c6 80 0c 02 00
00 0b mov BYTE PTR [rax+524], 11
016e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016ed c6 80 0d 02 00
00 05 mov BYTE PTR [rax+525], 5
016f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
016f9 c6 80 0e 02 00
00 02 mov BYTE PTR [rax+526], 2
01700 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01705 c6 80 0f 02 00
00 0c mov BYTE PTR [rax+527], 12
0170c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01711 c6 80 10 02 00
00 07 mov BYTE PTR [rax+528], 7
01718 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0171d c6 80 11 02 00
00 0d mov BYTE PTR [rax+529], 13
01724 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01729 c6 80 12 02 00
00 0e mov BYTE PTR [rax+530], 14
01730 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01735 c6 80 13 02 00
00 03 mov BYTE PTR [rax+531], 3
0173c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01741 c6 80 14 02 00
00 00 mov BYTE PTR [rax+532], 0
01748 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0174d c6 80 15 02 00
00 06 mov BYTE PTR [rax+533], 6
01754 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01759 c6 80 16 02 00
00 09 mov BYTE PTR [rax+534], 9
01760 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01765 c6 80 17 02 00
00 0a mov BYTE PTR [rax+535], 10
0176c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01771 c6 80 18 02 00
00 01 mov BYTE PTR [rax+536], 1
01778 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0177d c6 80 19 02 00
00 02 mov BYTE PTR [rax+537], 2
01784 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01789 c6 80 1a 02 00
00 08 mov BYTE PTR [rax+538], 8
01790 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01795 c6 80 1b 02 00
00 05 mov BYTE PTR [rax+539], 5
0179c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017a1 c6 80 1c 02 00
00 0b mov BYTE PTR [rax+540], 11
017a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017ad c6 80 1d 02 00
00 0c mov BYTE PTR [rax+541], 12
017b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017b9 c6 80 1e 02 00
00 04 mov BYTE PTR [rax+542], 4
017c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017c5 c6 80 1f 02 00
00 0f mov BYTE PTR [rax+543], 15
017cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017d1 c6 80 20 02 00
00 0d mov BYTE PTR [rax+544], 13
017d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017dd c6 80 21 02 00
00 08 mov BYTE PTR [rax+545], 8
017e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017e9 c6 80 22 02 00
00 0b mov BYTE PTR [rax+546], 11
017f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
017f5 c6 80 23 02 00
00 05 mov BYTE PTR [rax+547], 5
017fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01801 c6 80 24 02 00
00 06 mov BYTE PTR [rax+548], 6
01808 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0180d c6 80 25 02 00
00 0f mov BYTE PTR [rax+549], 15
01814 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01819 c6 80 26 02 00
00 00 mov BYTE PTR [rax+550], 0
01820 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01825 c6 80 27 02 00
00 03 mov BYTE PTR [rax+551], 3
0182c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01831 c6 80 28 02 00
00 04 mov BYTE PTR [rax+552], 4
01838 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0183d c6 80 29 02 00
00 07 mov BYTE PTR [rax+553], 7
01844 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01849 c6 80 2a 02 00
00 02 mov BYTE PTR [rax+554], 2
01850 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01855 c6 80 2b 02 00
00 0c mov BYTE PTR [rax+555], 12
0185c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01861 c6 80 2c 02 00
00 01 mov BYTE PTR [rax+556], 1
01868 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0186d c6 80 2d 02 00
00 0a mov BYTE PTR [rax+557], 10
01874 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01879 c6 80 2e 02 00
00 0e mov BYTE PTR [rax+558], 14
01880 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01885 c6 80 2f 02 00
00 09 mov BYTE PTR [rax+559], 9
0188c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01891 c6 80 30 02 00
00 0a mov BYTE PTR [rax+560], 10
01898 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0189d c6 80 31 02 00
00 06 mov BYTE PTR [rax+561], 6
018a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018a9 c6 80 32 02 00
00 09 mov BYTE PTR [rax+562], 9
018b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018b5 c6 80 33 02 00
00 00 mov BYTE PTR [rax+563], 0
018bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018c1 c6 80 34 02 00
00 0c mov BYTE PTR [rax+564], 12
018c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018cd c6 80 35 02 00
00 0b mov BYTE PTR [rax+565], 11
018d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018d9 c6 80 36 02 00
00 07 mov BYTE PTR [rax+566], 7
018e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018e5 c6 80 37 02 00
00 0d mov BYTE PTR [rax+567], 13
018ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018f1 c6 80 38 02 00
00 0f mov BYTE PTR [rax+568], 15
018f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
018fd c6 80 39 02 00
00 01 mov BYTE PTR [rax+569], 1
01904 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01909 c6 80 3a 02 00
00 03 mov BYTE PTR [rax+570], 3
01910 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01915 c6 80 3b 02 00
00 0e mov BYTE PTR [rax+571], 14
0191c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01921 c6 80 3c 02 00
00 05 mov BYTE PTR [rax+572], 5
01928 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0192d c6 80 3d 02 00
00 02 mov BYTE PTR [rax+573], 2
01934 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01939 c6 80 3e 02 00
00 08 mov BYTE PTR [rax+574], 8
01940 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01945 c6 80 3f 02 00
00 04 mov BYTE PTR [rax+575], 4
0194c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01951 c6 80 40 02 00
00 03 mov BYTE PTR [rax+576], 3
01958 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0195d c6 80 41 02 00
00 0f mov BYTE PTR [rax+577], 15
01964 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01969 c6 80 42 02 00
00 00 mov BYTE PTR [rax+578], 0
01970 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01975 c6 80 43 02 00
00 06 mov BYTE PTR [rax+579], 6
0197c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01981 c6 80 44 02 00
00 0a mov BYTE PTR [rax+580], 10
01988 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0198d c6 80 45 02 00
00 01 mov BYTE PTR [rax+581], 1
01994 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01999 c6 80 46 02 00
00 0d mov BYTE PTR [rax+582], 13
019a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019a5 c6 80 47 02 00
00 08 mov BYTE PTR [rax+583], 8
019ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019b1 c6 80 48 02 00
00 09 mov BYTE PTR [rax+584], 9
019b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019bd c6 80 49 02 00
00 04 mov BYTE PTR [rax+585], 4
019c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019c9 c6 80 4a 02 00
00 05 mov BYTE PTR [rax+586], 5
019d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019d5 c6 80 4b 02 00
00 0b mov BYTE PTR [rax+587], 11
019dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019e1 c6 80 4c 02 00
00 0c mov BYTE PTR [rax+588], 12
019e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019ed c6 80 4d 02 00
00 07 mov BYTE PTR [rax+589], 7
019f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
019f9 c6 80 4e 02 00
00 02 mov BYTE PTR [rax+590], 2
01a00 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a05 c6 80 4f 02 00
00 0e mov BYTE PTR [rax+591], 14
01a0c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a11 c6 80 50 02 00
00 02 mov BYTE PTR [rax+592], 2
01a18 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a1d c6 80 51 02 00
00 0c mov BYTE PTR [rax+593], 12
01a24 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a29 c6 80 52 02 00
00 04 mov BYTE PTR [rax+594], 4
01a30 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a35 c6 80 53 02 00
00 01 mov BYTE PTR [rax+595], 1
01a3c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a41 c6 80 54 02 00
00 07 mov BYTE PTR [rax+596], 7
01a48 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a4d c6 80 55 02 00
00 0a mov BYTE PTR [rax+597], 10
01a54 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a59 c6 80 56 02 00
00 0b mov BYTE PTR [rax+598], 11
01a60 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a65 c6 80 57 02 00
00 06 mov BYTE PTR [rax+599], 6
01a6c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a71 c6 80 58 02 00
00 08 mov BYTE PTR [rax+600], 8
01a78 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a7d c6 80 59 02 00
00 05 mov BYTE PTR [rax+601], 5
01a84 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a89 c6 80 5a 02 00
00 03 mov BYTE PTR [rax+602], 3
01a90 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01a95 c6 80 5b 02 00
00 0f mov BYTE PTR [rax+603], 15
01a9c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01aa1 c6 80 5c 02 00
00 0d mov BYTE PTR [rax+604], 13
01aa8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01aad c6 80 5d 02 00
00 00 mov BYTE PTR [rax+605], 0
01ab4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ab9 c6 80 5e 02 00
00 0e mov BYTE PTR [rax+606], 14
01ac0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ac5 c6 80 5f 02 00
00 09 mov BYTE PTR [rax+607], 9
01acc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ad1 c6 80 60 02 00
00 0e mov BYTE PTR [rax+608], 14
01ad8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01add c6 80 61 02 00
00 0b mov BYTE PTR [rax+609], 11
01ae4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ae9 c6 80 62 02 00
00 02 mov BYTE PTR [rax+610], 2
01af0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01af5 c6 80 63 02 00
00 0c mov BYTE PTR [rax+611], 12
01afc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b01 c6 80 64 02 00
00 04 mov BYTE PTR [rax+612], 4
01b08 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b0d c6 80 65 02 00
00 07 mov BYTE PTR [rax+613], 7
01b14 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b19 c6 80 66 02 00
00 0d mov BYTE PTR [rax+614], 13
01b20 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b25 c6 80 67 02 00
00 01 mov BYTE PTR [rax+615], 1
01b2c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b31 c6 80 68 02 00
00 05 mov BYTE PTR [rax+616], 5
01b38 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b3d c6 80 69 02 00
00 00 mov BYTE PTR [rax+617], 0
01b44 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b49 c6 80 6a 02 00
00 0f mov BYTE PTR [rax+618], 15
01b50 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b55 c6 80 6b 02 00
00 0a mov BYTE PTR [rax+619], 10
01b5c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b61 c6 80 6c 02 00
00 03 mov BYTE PTR [rax+620], 3
01b68 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b6d c6 80 6d 02 00
00 09 mov BYTE PTR [rax+621], 9
01b74 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b79 c6 80 6e 02 00
00 08 mov BYTE PTR [rax+622], 8
01b80 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b85 c6 80 6f 02 00
00 06 mov BYTE PTR [rax+623], 6
01b8c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b91 c6 80 70 02 00
00 04 mov BYTE PTR [rax+624], 4
01b98 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01b9d c6 80 71 02 00
00 02 mov BYTE PTR [rax+625], 2
01ba4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ba9 c6 80 72 02 00
00 01 mov BYTE PTR [rax+626], 1
01bb0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01bb5 c6 80 73 02 00
00 0b mov BYTE PTR [rax+627], 11
01bbc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01bc1 c6 80 74 02 00
00 0a mov BYTE PTR [rax+628], 10
01bc8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01bcd c6 80 75 02 00
00 0d mov BYTE PTR [rax+629], 13
01bd4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01bd9 c6 80 76 02 00
00 07 mov BYTE PTR [rax+630], 7
01be0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01be5 c6 80 77 02 00
00 08 mov BYTE PTR [rax+631], 8
01bec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01bf1 c6 80 78 02 00
00 0f mov BYTE PTR [rax+632], 15
01bf8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01bfd c6 80 79 02 00
00 09 mov BYTE PTR [rax+633], 9
01c04 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c09 c6 80 7a 02 00
00 0c mov BYTE PTR [rax+634], 12
01c10 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c15 c6 80 7b 02 00
00 05 mov BYTE PTR [rax+635], 5
01c1c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c21 c6 80 7c 02 00
00 06 mov BYTE PTR [rax+636], 6
01c28 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c2d c6 80 7d 02 00
00 03 mov BYTE PTR [rax+637], 3
01c34 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c39 c6 80 7e 02 00
00 00 mov BYTE PTR [rax+638], 0
01c40 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c45 c6 80 7f 02 00
00 0e mov BYTE PTR [rax+639], 14
01c4c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c51 c6 80 80 02 00
00 0b mov BYTE PTR [rax+640], 11
01c58 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c5d c6 80 81 02 00
00 08 mov BYTE PTR [rax+641], 8
01c64 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c69 c6 80 82 02 00
00 0c mov BYTE PTR [rax+642], 12
01c70 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c75 c6 80 83 02 00
00 07 mov BYTE PTR [rax+643], 7
01c7c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c81 c6 80 84 02 00
00 01 mov BYTE PTR [rax+644], 1
01c88 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c8d c6 80 85 02 00
00 0e mov BYTE PTR [rax+645], 14
01c94 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01c99 c6 80 86 02 00
00 02 mov BYTE PTR [rax+646], 2
01ca0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ca5 c6 80 87 02 00
00 0d mov BYTE PTR [rax+647], 13
01cac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01cb1 c6 80 88 02 00
00 06 mov BYTE PTR [rax+648], 6
01cb8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01cbd c6 80 89 02 00
00 0f mov BYTE PTR [rax+649], 15
01cc4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01cc9 c6 80 8a 02 00
00 00 mov BYTE PTR [rax+650], 0
01cd0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01cd5 c6 80 8b 02 00
00 09 mov BYTE PTR [rax+651], 9
01cdc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ce1 c6 80 8c 02 00
00 0a mov BYTE PTR [rax+652], 10
01ce8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ced c6 80 8d 02 00
00 04 mov BYTE PTR [rax+653], 4
01cf4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01cf9 c6 80 8e 02 00
00 05 mov BYTE PTR [rax+654], 5
01d00 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d05 c6 80 8f 02 00
00 03 mov BYTE PTR [rax+655], 3
01d0c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d11 c6 80 90 02 00
00 0c mov BYTE PTR [rax+656], 12
01d18 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d1d c6 80 91 02 00
00 01 mov BYTE PTR [rax+657], 1
01d24 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d29 c6 80 92 02 00
00 0a mov BYTE PTR [rax+658], 10
01d30 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d35 c6 80 93 02 00
00 0f mov BYTE PTR [rax+659], 15
01d3c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d41 c6 80 94 02 00
00 09 mov BYTE PTR [rax+660], 9
01d48 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d4d c6 80 95 02 00
00 02 mov BYTE PTR [rax+661], 2
01d54 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d59 c6 80 96 02 00
00 06 mov BYTE PTR [rax+662], 6
01d60 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d65 c6 80 97 02 00
00 08 mov BYTE PTR [rax+663], 8
01d6c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d71 c6 80 98 02 00
00 00 mov BYTE PTR [rax+664], 0
01d78 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d7d c6 80 99 02 00
00 0d mov BYTE PTR [rax+665], 13
01d84 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d89 c6 80 9a 02 00
00 03 mov BYTE PTR [rax+666], 3
01d90 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01d95 c6 80 9b 02 00
00 04 mov BYTE PTR [rax+667], 4
01d9c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01da1 c6 80 9c 02 00
00 0e mov BYTE PTR [rax+668], 14
01da8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01dad c6 80 9d 02 00
00 07 mov BYTE PTR [rax+669], 7
01db4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01db9 c6 80 9e 02 00
00 05 mov BYTE PTR [rax+670], 5
01dc0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01dc5 c6 80 9f 02 00
00 0b mov BYTE PTR [rax+671], 11
01dcc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01dd1 c6 80 a0 02 00
00 0a mov BYTE PTR [rax+672], 10
01dd8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ddd c6 80 a1 02 00
00 0f mov BYTE PTR [rax+673], 15
01de4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01de9 c6 80 a2 02 00
00 04 mov BYTE PTR [rax+674], 4
01df0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01df5 c6 80 a3 02 00
00 02 mov BYTE PTR [rax+675], 2
01dfc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e01 c6 80 a4 02 00
00 07 mov BYTE PTR [rax+676], 7
01e08 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e0d c6 80 a5 02 00
00 0c mov BYTE PTR [rax+677], 12
01e14 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e19 c6 80 a6 02 00
00 09 mov BYTE PTR [rax+678], 9
01e20 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e25 c6 80 a7 02 00
00 05 mov BYTE PTR [rax+679], 5
01e2c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e31 c6 80 a8 02 00
00 06 mov BYTE PTR [rax+680], 6
01e38 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e3d c6 80 a9 02 00
00 01 mov BYTE PTR [rax+681], 1
01e44 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e49 c6 80 aa 02 00
00 0d mov BYTE PTR [rax+682], 13
01e50 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e55 c6 80 ab 02 00
00 0e mov BYTE PTR [rax+683], 14
01e5c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e61 c6 80 ac 02 00
00 00 mov BYTE PTR [rax+684], 0
01e68 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e6d c6 80 ad 02 00
00 0b mov BYTE PTR [rax+685], 11
01e74 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e79 c6 80 ae 02 00
00 03 mov BYTE PTR [rax+686], 3
01e80 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e85 c6 80 af 02 00
00 08 mov BYTE PTR [rax+687], 8
01e8c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e91 c6 80 b0 02 00
00 09 mov BYTE PTR [rax+688], 9
01e98 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01e9d c6 80 b1 02 00
00 0e mov BYTE PTR [rax+689], 14
01ea4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ea9 c6 80 b2 02 00
00 0f mov BYTE PTR [rax+690], 15
01eb0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01eb5 c6 80 b3 02 00
00 05 mov BYTE PTR [rax+691], 5
01ebc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ec1 c6 80 b4 02 00
00 02 mov BYTE PTR [rax+692], 2
01ec8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ecd c6 80 b5 02 00
00 08 mov BYTE PTR [rax+693], 8
01ed4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ed9 c6 80 b6 02 00
00 0c mov BYTE PTR [rax+694], 12
01ee0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ee5 c6 80 b7 02 00
00 03 mov BYTE PTR [rax+695], 3
01eec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ef1 c6 80 b8 02 00
00 07 mov BYTE PTR [rax+696], 7
01ef8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01efd c6 80 b9 02 00
00 00 mov BYTE PTR [rax+697], 0
01f04 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f09 c6 80 ba 02 00
00 04 mov BYTE PTR [rax+698], 4
01f10 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f15 c6 80 bb 02 00
00 0a mov BYTE PTR [rax+699], 10
01f1c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f21 c6 80 bc 02 00
00 01 mov BYTE PTR [rax+700], 1
01f28 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f2d c6 80 bd 02 00
00 0d mov BYTE PTR [rax+701], 13
01f34 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f39 c6 80 be 02 00
00 0b mov BYTE PTR [rax+702], 11
01f40 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f45 c6 80 bf 02 00
00 06 mov BYTE PTR [rax+703], 6
01f4c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f51 c6 80 c0 02 00
00 04 mov BYTE PTR [rax+704], 4
01f58 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f5d c6 80 c1 02 00
00 03 mov BYTE PTR [rax+705], 3
01f64 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f69 c6 80 c2 02 00
00 02 mov BYTE PTR [rax+706], 2
01f70 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f75 c6 80 c3 02 00
00 0c mov BYTE PTR [rax+707], 12
01f7c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f81 c6 80 c4 02 00
00 09 mov BYTE PTR [rax+708], 9
01f88 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f8d c6 80 c5 02 00
00 05 mov BYTE PTR [rax+709], 5
01f94 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01f99 c6 80 c6 02 00
00 0f mov BYTE PTR [rax+710], 15
01fa0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fa5 c6 80 c7 02 00
00 0a mov BYTE PTR [rax+711], 10
01fac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fb1 c6 80 c8 02 00
00 0b mov BYTE PTR [rax+712], 11
01fb8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fbd c6 80 c9 02 00
00 0e mov BYTE PTR [rax+713], 14
01fc4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fc9 c6 80 ca 02 00
00 01 mov BYTE PTR [rax+714], 1
01fd0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fd5 c6 80 cb 02 00
00 07 mov BYTE PTR [rax+715], 7
01fdc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fe1 c6 80 cc 02 00
00 06 mov BYTE PTR [rax+716], 6
01fe8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01fed c6 80 cd 02 00
00 00 mov BYTE PTR [rax+717], 0
01ff4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
01ff9 c6 80 ce 02 00
00 08 mov BYTE PTR [rax+718], 8
02000 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02005 c6 80 cf 02 00
00 0d mov BYTE PTR [rax+719], 13
0200c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02011 c6 80 d0 02 00
00 04 mov BYTE PTR [rax+720], 4
02018 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0201d c6 80 d1 02 00
00 0b mov BYTE PTR [rax+721], 11
02024 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02029 c6 80 d2 02 00
00 02 mov BYTE PTR [rax+722], 2
02030 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02035 c6 80 d3 02 00
00 0e mov BYTE PTR [rax+723], 14
0203c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02041 c6 80 d4 02 00
00 0f mov BYTE PTR [rax+724], 15
02048 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0204d c6 80 d5 02 00
00 00 mov BYTE PTR [rax+725], 0
02054 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02059 c6 80 d6 02 00
00 08 mov BYTE PTR [rax+726], 8
02060 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02065 c6 80 d7 02 00
00 0d mov BYTE PTR [rax+727], 13
0206c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02071 c6 80 d8 02 00
00 03 mov BYTE PTR [rax+728], 3
02078 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0207d c6 80 d9 02 00
00 0c mov BYTE PTR [rax+729], 12
02084 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02089 c6 80 da 02 00
00 09 mov BYTE PTR [rax+730], 9
02090 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02095 c6 80 db 02 00
00 07 mov BYTE PTR [rax+731], 7
0209c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020a1 c6 80 dc 02 00
00 05 mov BYTE PTR [rax+732], 5
020a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020ad c6 80 dd 02 00
00 0a mov BYTE PTR [rax+733], 10
020b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020b9 c6 80 de 02 00
00 06 mov BYTE PTR [rax+734], 6
020c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020c5 c6 80 df 02 00
00 01 mov BYTE PTR [rax+735], 1
020cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020d1 c6 80 e0 02 00
00 0d mov BYTE PTR [rax+736], 13
020d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020dd c6 80 e1 02 00
00 00 mov BYTE PTR [rax+737], 0
020e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020e9 c6 80 e2 02 00
00 0b mov BYTE PTR [rax+738], 11
020f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
020f5 c6 80 e3 02 00
00 07 mov BYTE PTR [rax+739], 7
020fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02101 c6 80 e4 02 00
00 04 mov BYTE PTR [rax+740], 4
02108 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0210d c6 80 e5 02 00
00 09 mov BYTE PTR [rax+741], 9
02114 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02119 c6 80 e6 02 00
00 01 mov BYTE PTR [rax+742], 1
02120 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02125 c6 80 e7 02 00
00 0a mov BYTE PTR [rax+743], 10
0212c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02131 c6 80 e8 02 00
00 0e mov BYTE PTR [rax+744], 14
02138 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0213d c6 80 e9 02 00
00 03 mov BYTE PTR [rax+745], 3
02144 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02149 c6 80 ea 02 00
00 05 mov BYTE PTR [rax+746], 5
02150 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02155 c6 80 eb 02 00
00 0c mov BYTE PTR [rax+747], 12
0215c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02161 c6 80 ec 02 00
00 02 mov BYTE PTR [rax+748], 2
02168 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0216d c6 80 ed 02 00
00 0f mov BYTE PTR [rax+749], 15
02174 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02179 c6 80 ee 02 00
00 08 mov BYTE PTR [rax+750], 8
02180 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02185 c6 80 ef 02 00
00 06 mov BYTE PTR [rax+751], 6
0218c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02191 c6 80 f0 02 00
00 01 mov BYTE PTR [rax+752], 1
02198 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0219d c6 80 f1 02 00
00 04 mov BYTE PTR [rax+753], 4
021a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021a9 c6 80 f2 02 00
00 0b mov BYTE PTR [rax+754], 11
021b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021b5 c6 80 f3 02 00
00 0d mov BYTE PTR [rax+755], 13
021bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021c1 c6 80 f4 02 00
00 0c mov BYTE PTR [rax+756], 12
021c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021cd c6 80 f5 02 00
00 03 mov BYTE PTR [rax+757], 3
021d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021d9 c6 80 f6 02 00
00 07 mov BYTE PTR [rax+758], 7
021e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021e5 c6 80 f7 02 00
00 0e mov BYTE PTR [rax+759], 14
021ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021f1 c6 80 f8 02 00
00 0a mov BYTE PTR [rax+760], 10
021f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
021fd c6 80 f9 02 00
00 0f mov BYTE PTR [rax+761], 15
02204 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02209 c6 80 fa 02 00
00 06 mov BYTE PTR [rax+762], 6
02210 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02215 c6 80 fb 02 00
00 08 mov BYTE PTR [rax+763], 8
0221c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02221 c6 80 fc 02 00
00 00 mov BYTE PTR [rax+764], 0
02228 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0222d c6 80 fd 02 00
00 05 mov BYTE PTR [rax+765], 5
02234 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02239 c6 80 fe 02 00
00 09 mov BYTE PTR [rax+766], 9
02240 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02245 c6 80 ff 02 00
00 02 mov BYTE PTR [rax+767], 2
0224c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02251 c6 80 00 03 00
00 06 mov BYTE PTR [rax+768], 6
02258 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0225d c6 80 01 03 00
00 0b mov BYTE PTR [rax+769], 11
02264 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02269 c6 80 02 03 00
00 0d mov BYTE PTR [rax+770], 13
02270 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02275 c6 80 03 03 00
00 08 mov BYTE PTR [rax+771], 8
0227c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02281 c6 80 04 03 00
00 01 mov BYTE PTR [rax+772], 1
02288 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0228d c6 80 05 03 00
00 04 mov BYTE PTR [rax+773], 4
02294 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02299 c6 80 06 03 00
00 0a mov BYTE PTR [rax+774], 10
022a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022a5 c6 80 07 03 00
00 07 mov BYTE PTR [rax+775], 7
022ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022b1 c6 80 08 03 00
00 09 mov BYTE PTR [rax+776], 9
022b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022bd c6 80 09 03 00
00 05 mov BYTE PTR [rax+777], 5
022c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022c9 c6 80 0a 03 00
00 00 mov BYTE PTR [rax+778], 0
022d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022d5 c6 80 0b 03 00
00 0f mov BYTE PTR [rax+779], 15
022dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022e1 c6 80 0c 03 00
00 0e mov BYTE PTR [rax+780], 14
022e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022ed c6 80 0d 03 00
00 02 mov BYTE PTR [rax+781], 2
022f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
022f9 c6 80 0e 03 00
00 03 mov BYTE PTR [rax+782], 3
02300 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02305 c6 80 0f 03 00
00 0c mov BYTE PTR [rax+783], 12
0230c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02311 c6 80 10 03 00
00 0d mov BYTE PTR [rax+784], 13
02318 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0231d c6 80 11 03 00
00 02 mov BYTE PTR [rax+785], 2
02324 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02329 c6 80 12 03 00
00 08 mov BYTE PTR [rax+786], 8
02330 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02335 c6 80 13 03 00
00 04 mov BYTE PTR [rax+787], 4
0233c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02341 c6 80 14 03 00
00 06 mov BYTE PTR [rax+788], 6
02348 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0234d c6 80 15 03 00
00 0f mov BYTE PTR [rax+789], 15
02354 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02359 c6 80 16 03 00
00 0b mov BYTE PTR [rax+790], 11
02360 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02365 c6 80 17 03 00
00 01 mov BYTE PTR [rax+791], 1
0236c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02371 c6 80 18 03 00
00 0a mov BYTE PTR [rax+792], 10
02378 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0237d c6 80 19 03 00
00 09 mov BYTE PTR [rax+793], 9
02384 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02389 c6 80 1a 03 00
00 03 mov BYTE PTR [rax+794], 3
02390 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02395 c6 80 1b 03 00
00 0e mov BYTE PTR [rax+795], 14
0239c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023a1 c6 80 1c 03 00
00 05 mov BYTE PTR [rax+796], 5
023a8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023ad c6 80 1d 03 00
00 00 mov BYTE PTR [rax+797], 0
023b4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023b9 c6 80 1e 03 00
00 0c mov BYTE PTR [rax+798], 12
023c0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023c5 c6 80 1f 03 00
00 07 mov BYTE PTR [rax+799], 7
023cc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023d1 c6 80 20 03 00
00 01 mov BYTE PTR [rax+800], 1
023d8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023dd c6 80 21 03 00
00 0f mov BYTE PTR [rax+801], 15
023e4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023e9 c6 80 22 03 00
00 0d mov BYTE PTR [rax+802], 13
023f0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
023f5 c6 80 23 03 00
00 08 mov BYTE PTR [rax+803], 8
023fc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02401 c6 80 24 03 00
00 0a mov BYTE PTR [rax+804], 10
02408 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0240d c6 80 25 03 00
00 03 mov BYTE PTR [rax+805], 3
02414 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02419 c6 80 26 03 00
00 07 mov BYTE PTR [rax+806], 7
02420 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02425 c6 80 27 03 00
00 04 mov BYTE PTR [rax+807], 4
0242c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02431 c6 80 28 03 00
00 0c mov BYTE PTR [rax+808], 12
02438 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0243d c6 80 29 03 00
00 05 mov BYTE PTR [rax+809], 5
02444 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02449 c6 80 2a 03 00
00 06 mov BYTE PTR [rax+810], 6
02450 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02455 c6 80 2b 03 00
00 0b mov BYTE PTR [rax+811], 11
0245c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02461 c6 80 2c 03 00
00 00 mov BYTE PTR [rax+812], 0
02468 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0246d c6 80 2d 03 00
00 0e mov BYTE PTR [rax+813], 14
02474 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02479 c6 80 2e 03 00
00 09 mov BYTE PTR [rax+814], 9
02480 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02485 c6 80 2f 03 00
00 02 mov BYTE PTR [rax+815], 2
0248c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02491 c6 80 30 03 00
00 07 mov BYTE PTR [rax+816], 7
02498 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0249d c6 80 31 03 00
00 0b mov BYTE PTR [rax+817], 11
024a4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024a9 c6 80 32 03 00
00 04 mov BYTE PTR [rax+818], 4
024b0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024b5 c6 80 33 03 00
00 01 mov BYTE PTR [rax+819], 1
024bc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024c1 c6 80 34 03 00
00 09 mov BYTE PTR [rax+820], 9
024c8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024cd c6 80 35 03 00
00 0c mov BYTE PTR [rax+821], 12
024d4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024d9 c6 80 36 03 00
00 0e mov BYTE PTR [rax+822], 14
024e0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024e5 c6 80 37 03 00
00 02 mov BYTE PTR [rax+823], 2
024ec 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024f1 c6 80 38 03 00
00 00 mov BYTE PTR [rax+824], 0
024f8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
024fd c6 80 39 03 00
00 06 mov BYTE PTR [rax+825], 6
02504 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02509 c6 80 3a 03 00
00 0a mov BYTE PTR [rax+826], 10
02510 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02515 c6 80 3b 03 00
00 0d mov BYTE PTR [rax+827], 13
0251c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02521 c6 80 3c 03 00
00 0f mov BYTE PTR [rax+828], 15
02528 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0252d c6 80 3d 03 00
00 03 mov BYTE PTR [rax+829], 3
02534 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02539 c6 80 3e 03 00
00 05 mov BYTE PTR [rax+830], 5
02540 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02545 c6 80 3f 03 00
00 08 mov BYTE PTR [rax+831], 8
0254c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02551 c6 80 40 03 00
00 02 mov BYTE PTR [rax+832], 2
02558 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0255d c6 80 41 03 00
00 01 mov BYTE PTR [rax+833], 1
02564 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02569 c6 80 42 03 00
00 0e mov BYTE PTR [rax+834], 14
02570 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02575 c6 80 43 03 00
00 07 mov BYTE PTR [rax+835], 7
0257c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02581 c6 80 44 03 00
00 04 mov BYTE PTR [rax+836], 4
02588 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0258d c6 80 45 03 00
00 0a mov BYTE PTR [rax+837], 10
02594 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02599 c6 80 46 03 00
00 08 mov BYTE PTR [rax+838], 8
025a0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025a5 c6 80 47 03 00
00 0d mov BYTE PTR [rax+839], 13
025ac 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025b1 c6 80 48 03 00
00 0f mov BYTE PTR [rax+840], 15
025b8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025bd c6 80 49 03 00
00 0c mov BYTE PTR [rax+841], 12
025c4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025c9 c6 80 4a 03 00
00 09 mov BYTE PTR [rax+842], 9
025d0 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025d5 c6 80 4b 03 00
00 00 mov BYTE PTR [rax+843], 0
025dc 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025e1 c6 80 4c 03 00
00 03 mov BYTE PTR [rax+844], 3
025e8 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025ed c6 80 4d 03 00
00 05 mov BYTE PTR [rax+845], 5
025f4 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
025f9 c6 80 4e 03 00
00 06 mov BYTE PTR [rax+846], 6
02600 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02605 c6 80 4f 03 00
00 0b mov BYTE PTR [rax+847], 11
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; 24 : }
0260c 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
02611 c3 ret 0
??0CDes@@QEAA@XZ ENDP ; CDes::CDes
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
_TEXT SEGMENT
b$ = 64
$T1 = 72
tv86 = 80
tv154 = 88
$T2 = 96
tv158 = 104
tv156 = 112
tv94 = 120
tv140 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z PROC ; CDes::Decrypt, COMDAT
; 172 : {
$LN14:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
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 57 push rdi
00015 b8 80 1c 00 00 mov eax, 7296 ; 00001c80H
0001a e8 00 00 00 00 call __chkstk
0001f 48 2b e0 sub rsp, rax
00022 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00029 48 33 c4 xor rax, rsp
0002c 48 89 84 24 70
1c 00 00 mov QWORD PTR __$ArrayPad$[rsp], rax
; 173 : char szBuf[1024]={0};
00034 48 8d 84 24 70
18 00 00 lea rax, QWORD PTR szBuf$[rsp]
0003c 48 8b f8 mov rdi, rax
0003f 33 c0 xor eax, eax
00041 b9 00 04 00 00 mov ecx, 1024 ; 00000400H
00046 f3 aa rep stosb
; 174 : memset( pOut , 0 , outLen );
00048 48 8b 84 24 b0
1c 00 00 mov rax, QWORD PTR outLen$[rsp]
00050 48 63 00 movsxd rax, DWORD PTR [rax]
00053 4c 8b c0 mov r8, rax
00056 33 d2 xor edx, edx
00058 48 8b 8c 24 a8
1c 00 00 mov rcx, QWORD PTR pOut$[rsp]
00060 e8 00 00 00 00 call memset
; 175 : HexToAscii( pIn , szBuf );
00065 4c 8d 84 24 70
18 00 00 lea r8, QWORD PTR szBuf$[rsp]
0006d 48 8b 94 24 98
1c 00 00 mov rdx, QWORD PTR pIn$[rsp]
00075 48 8b 8c 24 90
1c 00 00 mov rcx, QWORD PTR this$[rsp]
0007d e8 00 00 00 00 call ?HexToAscii@CDes@@IEAAXPEAD0@Z ; CDes::HexToAscii
; 176 : inLen = inLen/2;
00082 8b 84 24 a0 1c
00 00 mov eax, DWORD PTR inLen$[rsp]
00089 99 cdq
0008a 2b c2 sub eax, edx
0008c d1 f8 sar eax, 1
0008e 89 84 24 a0 1c
00 00 mov DWORD PTR inLen$[rsp], eax
; 177 : BOOL b = false;
00095 c7 44 24 40 00
00 00 00 mov DWORD PTR b$[rsp], 0
; 178 : try
; 179 : {
; 180 : b = Des_Go( pOut , szBuf , inLen , pKey , keyLen , DECRYPT_DES );
0009d c6 44 24 30 01 mov BYTE PTR [rsp+48], 1
000a2 8b 84 24 c0 1c
00 00 mov eax, DWORD PTR keyLen$[rsp]
000a9 89 44 24 28 mov DWORD PTR [rsp+40], eax
000ad 48 8b 84 24 b8
1c 00 00 mov rax, QWORD PTR pKey$[rsp]
000b5 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
000ba 44 8b 8c 24 a0
1c 00 00 mov r9d, DWORD PTR inLen$[rsp]
000c2 4c 8d 84 24 70
18 00 00 lea r8, QWORD PTR szBuf$[rsp]
000ca 48 8b 94 24 a8
1c 00 00 mov rdx, QWORD PTR pOut$[rsp]
000d2 48 8b 8c 24 90
1c 00 00 mov rcx, QWORD PTR this$[rsp]
000da e8 00 00 00 00 call ?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z ; CDes::Des_Go
000df 0f b6 c0 movzx eax, al
000e2 89 44 24 40 mov DWORD PTR b$[rsp], eax
000e6 eb 00 jmp SHORT $LN11@Decrypt
$LN12@Decrypt:
$LN11@Decrypt:
; 181 : }
; 182 : catch (...)
; 183 : {
; 184 : #ifndef MOBSETSMS_SDK
; 185 : LOG_APPERROR(_T("T"));
; 186 : #endif
; 187 : b = false;
; 188 : }
; 189 : if ( b )
000e8 83 7c 24 40 00 cmp DWORD PTR b$[rsp], 0
000ed 74 06 je SHORT $LN3@Decrypt
; 190 : {
; 191 : /*
; 192 : long outLen2 = outLen;
; 193 : outLen = (long)strlen( pOut );
; 194 : memset( pOut+outLen,0,outLen2-outLen); //<2F><><EFBFBD>󲿷<EFBFBD><F3B2BFB7><EFBFBD>0
; 195 : */
; 196 : return true;
000ef b0 01 mov al, 1
000f1 eb 21 jmp SHORT $LN1@Decrypt
; 197 : }
000f3 eb 1d jmp SHORT $LN4@Decrypt
$LN3@Decrypt:
; 198 : else
; 199 : {
; 200 : memset( pOut , 0 , outLen );
000f5 48 8b 84 24 b0
1c 00 00 mov rax, QWORD PTR outLen$[rsp]
000fd 48 63 00 movsxd rax, DWORD PTR [rax]
00100 4c 8b c0 mov r8, rax
00103 33 d2 xor edx, edx
00105 48 8b 8c 24 a8
1c 00 00 mov rcx, QWORD PTR pOut$[rsp]
0010d e8 00 00 00 00 call memset
$LN4@Decrypt:
; 201 : }
; 202 : return false;
00112 32 c0 xor al, al
$LN1@Decrypt:
; 203 : }
00114 48 8b 8c 24 70
1c 00 00 mov rcx, QWORD PTR __$ArrayPad$[rsp]
0011c 48 33 cc xor rcx, rsp
0011f e8 00 00 00 00 call __security_check_cookie
00124 48 81 c4 80 1c
00 00 add rsp, 7296 ; 00001c80H
0012b 5f pop rdi
0012c c3 ret 0
?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z ENDP ; CDes::Decrypt
_TEXT ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
b$ = 64
$T1 = 72
tv86 = 80
tv154 = 88
$T2 = 96
tv158 = 104
tv156 = 112
tv94 = 120
tv140 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Decrypt'::`1'::catch$3
; 183 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ea mov rbp, rdx
__catch$?Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z$0:
; 184 : #ifndef MOBSETSMS_SDK
; 185 : LOG_APPERROR(_T("T"));
0000d 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
00014 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
00019 90 npad 1
0001a 48 8d 85 88 00
00 00 lea rax, QWORD PTR $T3[rbp]
00021 48 89 45 48 mov QWORD PTR $T1[rbp], rax
00025 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321096
0002c 48 8b 4d 48 mov rcx, QWORD PTR $T1[rbp]
00030 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00035 48 89 45 50 mov QWORD PTR tv86[rbp], rax
00039 48 8b 45 50 mov rax, QWORD PTR tv86[rbp]
0003d 48 89 45 58 mov QWORD PTR tv154[rbp], rax
00041 48 8b 45 58 mov rax, QWORD PTR tv154[rbp]
00045 48 89 45 78 mov QWORD PTR tv94[rbp], rax
00049 48 8d 85 90 00
00 00 lea rax, QWORD PTR $T4[rbp]
00050 48 89 45 60 mov QWORD PTR $T2[rbp], rax
00054 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321097
0005b 48 8b 4d 60 mov rcx, QWORD PTR $T2[rbp]
0005f e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00064 48 89 45 68 mov QWORD PTR tv158[rbp], rax
00068 48 8b 45 68 mov rax, QWORD PTR tv158[rbp]
0006c 48 89 45 70 mov QWORD PTR tv156[rbp], rax
00070 48 8b 45 70 mov rax, QWORD PTR tv156[rbp]
00074 48 89 85 80 00
00 00 mov QWORD PTR tv140[rbp], rax
0007b 4c 8b 45 78 mov r8, QWORD PTR tv94[rbp]
0007f 48 8b 95 80 00
00 00 mov rdx, QWORD PTR tv140[rbp]
00086 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
0008d e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
00092 c7 44 24 20 b9
00 00 00 mov DWORD PTR [rsp+32], 185 ; 000000b9H
0009a 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:$SG321098
000a1 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:$SG321099
000a8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321100
000af 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
000b6 e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000bb 90 npad 1
000bc 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
000c3 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
; 186 : #endif
; 187 : b = false;
000c8 c7 45 40 00 00
00 00 mov DWORD PTR b$[rbp], 0
; 188 : }
000cf 48 8d 05 00 00
00 00 lea rax, $LN12@catch$3
000d6 48 83 c4 40 add rsp, 64 ; 00000040H
000da 5d pop rbp
000db c3 ret 0
000dc cc int 3
?catch$3@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Decrypt'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
b$ = 64
$T1 = 72
tv86 = 80
tv154 = 88
$T2 = 96
tv158 = 104
tv156 = 112
tv94 = 120
tv140 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Decrypt'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
00010 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00015 48 83 c4 20 add rsp, 32 ; 00000020H
00019 5d pop rbp
0001a c3 ret 0
?dtor$0@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Decrypt'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
b$ = 64
$T1 = 72
tv86 = 80
tv154 = 88
$T2 = 96
tv158 = 104
tv156 = 112
tv94 = 120
tv140 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Decrypt'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8b 4d 48 mov rcx, QWORD PTR $T1[rbp]
0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00012 48 83 c4 20 add rsp, 32 ; 00000020H
00016 5d pop rbp
00017 c3 ret 0
?dtor$1@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Decrypt'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
b$ = 64
$T1 = 72
tv86 = 80
tv154 = 88
$T2 = 96
tv158 = 104
tv156 = 112
tv94 = 120
tv140 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Decrypt'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8b 4d 60 mov rcx, QWORD PTR $T2[rbp]
0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00012 48 83 c4 20 add rsp, 32 ; 00000020H
00016 5d pop rbp
00017 c3 ret 0
?dtor$2@?0??Decrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Decrypt'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z
_TEXT SEGMENT
lTemp$ = 64
b$ = 68
$T1 = 72
tv95 = 80
tv170 = 88
$T2 = 96
tv174 = 104
tv172 = 112
tv135 = 120
tv149 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z PROC ; CDes::Encrypt, COMDAT
; 140 : {
$LN15:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
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 57 push rdi
00015 b8 80 1c 00 00 mov eax, 7296 ; 00001c80H
0001a e8 00 00 00 00 call __chkstk
0001f 48 2b e0 sub rsp, rax
00022 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00029 48 33 c4 xor rax, rsp
0002c 48 89 84 24 70
1c 00 00 mov QWORD PTR __$ArrayPad$[rsp], rax
; 141 : char szBuf[1024]={0};
00034 48 8d 84 24 70
18 00 00 lea rax, QWORD PTR szBuf$[rsp]
0003c 48 8b f8 mov rdi, rax
0003f 33 c0 xor eax, eax
00041 b9 00 04 00 00 mov ecx, 1024 ; 00000400H
00046 f3 aa rep stosb
; 142 : //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7>ص<EFBFBD><D8B5>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD>
; 143 : long lTemp = (inLen/8)*8;
00048 8b 84 24 a0 1c
00 00 mov eax, DWORD PTR inLen$[rsp]
0004f 99 cdq
00050 83 e2 07 and edx, 7
00053 03 c2 add eax, edx
00055 c1 f8 03 sar eax, 3
00058 c1 e0 03 shl eax, 3
0005b 89 44 24 40 mov DWORD PTR lTemp$[rsp], eax
; 144 : if ( (inLen/8)*8 != inLen )
0005f 8b 84 24 a0 1c
00 00 mov eax, DWORD PTR inLen$[rsp]
00066 99 cdq
00067 83 e2 07 and edx, 7
0006a 03 c2 add eax, edx
0006c c1 f8 03 sar eax, 3
0006f c1 e0 03 shl eax, 3
00072 3b 84 24 a0 1c
00 00 cmp eax, DWORD PTR inLen$[rsp]
00079 74 0b je SHORT $LN2@Encrypt
; 145 : lTemp += 8;
0007b 8b 44 24 40 mov eax, DWORD PTR lTemp$[rsp]
0007f 83 c0 08 add eax, 8
00082 89 44 24 40 mov DWORD PTR lTemp$[rsp], eax
$LN2@Encrypt:
; 146 : memset( pIn+inLen,0,lTemp-inLen);
00086 8b 84 24 a0 1c
00 00 mov eax, DWORD PTR inLen$[rsp]
0008d 8b 4c 24 40 mov ecx, DWORD PTR lTemp$[rsp]
00091 2b c8 sub ecx, eax
00093 8b c1 mov eax, ecx
00095 48 98 cdqe
00097 48 63 8c 24 a0
1c 00 00 movsxd rcx, DWORD PTR inLen$[rsp]
0009f 48 8b 94 24 98
1c 00 00 mov rdx, QWORD PTR pIn$[rsp]
000a7 48 03 d1 add rdx, rcx
000aa 48 8b ca mov rcx, rdx
000ad 4c 8b c0 mov r8, rax
000b0 33 d2 xor edx, edx
000b2 e8 00 00 00 00 call memset
; 147 : memset( pOut , 0 , outLen );
000b7 48 8b 84 24 b0
1c 00 00 mov rax, QWORD PTR outLen$[rsp]
000bf 48 63 00 movsxd rax, DWORD PTR [rax]
000c2 4c 8b c0 mov r8, rax
000c5 33 d2 xor edx, edx
000c7 48 8b 8c 24 a8
1c 00 00 mov rcx, QWORD PTR pOut$[rsp]
000cf e8 00 00 00 00 call memset
; 148 : BOOL b = false;
000d4 c7 44 24 44 00
00 00 00 mov DWORD PTR b$[rsp], 0
; 149 : try
; 150 : {
; 151 : b = Des_Go( szBuf , pIn , inLen , pKey , keyLen , ENCRYPT_DES );
000dc c6 44 24 30 00 mov BYTE PTR [rsp+48], 0
000e1 8b 84 24 c0 1c
00 00 mov eax, DWORD PTR keyLen$[rsp]
000e8 89 44 24 28 mov DWORD PTR [rsp+40], eax
000ec 48 8b 84 24 b8
1c 00 00 mov rax, QWORD PTR pKey$[rsp]
000f4 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
000f9 44 8b 8c 24 a0
1c 00 00 mov r9d, DWORD PTR inLen$[rsp]
00101 4c 8b 84 24 98
1c 00 00 mov r8, QWORD PTR pIn$[rsp]
00109 48 8d 94 24 70
18 00 00 lea rdx, QWORD PTR szBuf$[rsp]
00111 48 8b 8c 24 90
1c 00 00 mov rcx, QWORD PTR this$[rsp]
00119 e8 00 00 00 00 call ?Des_Go@CDes@@IEAA_NPEAD0JPEBDH_N@Z ; CDes::Des_Go
0011e 0f b6 c0 movzx eax, al
00121 89 44 24 44 mov DWORD PTR b$[rsp], eax
00125 eb 00 jmp SHORT $LN12@Encrypt
$LN13@Encrypt:
$LN12@Encrypt:
; 152 : }catch( ... )
; 153 : {
; 154 : #ifndef MOBSETSMS_SDK
; 155 : LOG_APPERROR(_T("T"));
; 156 : #endif
; 157 : b = false;
; 158 : }
; 159 : if ( b )
00127 83 7c 24 44 00 cmp DWORD PTR b$[rsp], 0
0012c 74 3f je SHORT $LN4@Encrypt
; 160 : {
; 161 : AsciiToHex( szBuf , pOut , lTemp );
0012e 44 8b 4c 24 40 mov r9d, DWORD PTR lTemp$[rsp]
00133 4c 8b 84 24 a8
1c 00 00 mov r8, QWORD PTR pOut$[rsp]
0013b 48 8d 94 24 70
18 00 00 lea rdx, QWORD PTR szBuf$[rsp]
00143 48 8b 8c 24 90
1c 00 00 mov rcx, QWORD PTR this$[rsp]
0014b e8 00 00 00 00 call ?AsciiToHex@CDes@@IEAAXPEAD0J@Z ; CDes::AsciiToHex
; 162 : outLen = (long)strlen( pOut );
00150 48 8b 8c 24 a8
1c 00 00 mov rcx, QWORD PTR pOut$[rsp]
00158 e8 00 00 00 00 call strlen
0015d 48 8b 8c 24 b0
1c 00 00 mov rcx, QWORD PTR outLen$[rsp]
00165 89 01 mov DWORD PTR [rcx], eax
; 163 : return true;
00167 b0 01 mov al, 1
00169 eb 21 jmp SHORT $LN1@Encrypt
; 164 : }
0016b eb 1d jmp SHORT $LN5@Encrypt
$LN4@Encrypt:
; 165 : else
; 166 : {
; 167 : memset( pOut , 0 , outLen );
0016d 48 8b 84 24 b0
1c 00 00 mov rax, QWORD PTR outLen$[rsp]
00175 48 63 00 movsxd rax, DWORD PTR [rax]
00178 4c 8b c0 mov r8, rax
0017b 33 d2 xor edx, edx
0017d 48 8b 8c 24 a8
1c 00 00 mov rcx, QWORD PTR pOut$[rsp]
00185 e8 00 00 00 00 call memset
$LN5@Encrypt:
; 168 : }
; 169 : return false;
0018a 32 c0 xor al, al
$LN1@Encrypt:
; 170 : }
0018c 48 8b 8c 24 70
1c 00 00 mov rcx, QWORD PTR __$ArrayPad$[rsp]
00194 48 33 cc xor rcx, rsp
00197 e8 00 00 00 00 call __security_check_cookie
0019c 48 81 c4 80 1c
00 00 add rsp, 7296 ; 00001c80H
001a3 5f pop rdi
001a4 c3 ret 0
?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z ENDP ; CDes::Encrypt
_TEXT ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
lTemp$ = 64
b$ = 68
$T1 = 72
tv95 = 80
tv170 = 88
$T2 = 96
tv174 = 104
tv172 = 112
tv135 = 120
tv149 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Encrypt'::`1'::catch$3
; 153 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ea mov rbp, rdx
__catch$?Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z$0:
; 154 : #ifndef MOBSETSMS_SDK
; 155 : LOG_APPERROR(_T("T"));
0000d 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
00014 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
00019 90 npad 1
0001a 48 8d 85 88 00
00 00 lea rax, QWORD PTR $T3[rbp]
00021 48 89 45 48 mov QWORD PTR $T1[rbp], rax
00025 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321074
0002c 48 8b 4d 48 mov rcx, QWORD PTR $T1[rbp]
00030 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00035 48 89 45 50 mov QWORD PTR tv95[rbp], rax
00039 48 8b 45 50 mov rax, QWORD PTR tv95[rbp]
0003d 48 89 45 58 mov QWORD PTR tv170[rbp], rax
00041 48 8b 45 58 mov rax, QWORD PTR tv170[rbp]
00045 48 89 45 78 mov QWORD PTR tv135[rbp], rax
00049 48 8d 85 90 00
00 00 lea rax, QWORD PTR $T4[rbp]
00050 48 89 45 60 mov QWORD PTR $T2[rbp], rax
00054 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321075
0005b 48 8b 4d 60 mov rcx, QWORD PTR $T2[rbp]
0005f e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00064 48 89 45 68 mov QWORD PTR tv174[rbp], rax
00068 48 8b 45 68 mov rax, QWORD PTR tv174[rbp]
0006c 48 89 45 70 mov QWORD PTR tv172[rbp], rax
00070 48 8b 45 70 mov rax, QWORD PTR tv172[rbp]
00074 48 89 85 80 00
00 00 mov QWORD PTR tv149[rbp], rax
0007b 4c 8b 45 78 mov r8, QWORD PTR tv135[rbp]
0007f 48 8b 95 80 00
00 00 mov rdx, QWORD PTR tv149[rbp]
00086 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
0008d e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
00092 c7 44 24 20 9b
00 00 00 mov DWORD PTR [rsp+32], 155 ; 0000009bH
0009a 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:$SG321076
000a1 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:$SG321077
000a8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:$SG321078
000af 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
000b6 e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000bb 90 npad 1
000bc 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
000c3 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
; 156 : #endif
; 157 : b = false;
000c8 c7 45 44 00 00
00 00 mov DWORD PTR b$[rbp], 0
; 158 : }
000cf 48 8d 05 00 00
00 00 lea rax, $LN13@catch$3
000d6 48 83 c4 40 add rsp, 64 ; 00000040H
000da 5d pop rbp
000db c3 ret 0
000dc cc int 3
?catch$3@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Encrypt'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
lTemp$ = 64
b$ = 68
$T1 = 72
tv95 = 80
tv170 = 88
$T2 = 96
tv174 = 104
tv172 = 112
tv135 = 120
tv149 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Encrypt'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8d 8d a0 00
00 00 lea rcx, QWORD PTR NXlog$5[rbp]
00010 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00015 48 83 c4 20 add rsp, 32 ; 00000020H
00019 5d pop rbp
0001a c3 ret 0
?dtor$0@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Encrypt'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
lTemp$ = 64
b$ = 68
$T1 = 72
tv95 = 80
tv170 = 88
$T2 = 96
tv174 = 104
tv172 = 112
tv135 = 120
tv149 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Encrypt'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8b 4d 48 mov rcx, QWORD PTR $T1[rbp]
0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00012 48 83 c4 20 add rsp, 32 ; 00000020H
00016 5d pop rbp
00017 c3 ret 0
?dtor$1@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Encrypt'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
lTemp$ = 64
b$ = 68
$T1 = 72
tv95 = 80
tv170 = 88
$T2 = 96
tv174 = 104
tv172 = 112
tv135 = 120
tv149 = 128
$T3 = 136
$T4 = 144
NXlog$5 = 160
szBuf$ = 6256
__$ArrayPad$ = 7280
this$ = 7312
pIn$ = 7320
inLen$ = 7328
pOut$ = 7336
outLen$ = 7344
pKey$ = 7352
keyLen$ = 7360
?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA PROC ; `CDes::Encrypt'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8b 4d 60 mov rcx, QWORD PTR $T2[rbp]
0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00012 48 83 c4 20 add rsp, 32 ; 00000020H
00016 5d pop rbp
00017 c3 ret 0
?dtor$2@?0??Encrypt@CDes@@QEAA_NPEADJ0AEAJPEBDJ@Z@4HA ENDP ; `CDes::Encrypt'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxstr.h
; COMDAT ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
_TEXT SEGMENT
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager, COMDAT
; 51 : {
$LN3:
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
; 52 : return( AfxGetStringManager() );
00004 e8 00 00 00 00 call ?AfxGetStringManager@@YAPEAUIAtlStringMgr@ATL@@XZ ; AfxGetStringManager
00009 90 npad 1
; 53 : }
0000a 48 83 c4 28 add rsp, 40 ; 00000028H
0000e c3 ret 0
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxstr.h
; COMDAT ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
_TEXT SEGMENT
nID$ = 48
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance, COMDAT
; 46 : {
$LN3:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 48 83 ec 28 sub rsp, 40 ; 00000028H
; 47 : return( AfxFindStringResourceHandle( nID ) );
00008 8b 4c 24 30 mov ecx, DWORD PTR nID$[rsp]
0000c e8 00 00 00 00 call ?AfxFindStringResourceHandle@@YAPEAUHINSTANCE__@@I@Z ; AfxFindStringResourceHandle
00011 90 npad 1
; 48 : }
00012 48 83 c4 28 add rsp, 40 ; 00000028H
00016 c3 ret 0
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z
_TEXT SEGMENT
bRet$ = 32
nID$1 = 36
this$ = 64
pv$ = 72
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad, COMDAT
; 2705 : {
$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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 2706 : bool bRet = false;
0000e c6 44 24 20 00 mov BYTE PTR bRet$[rsp], 0
; 2707 :
; 2708 : if( (pv != NULL) && IS_INTRESOURCE( pv ) )
00013 48 83 7c 24 48
00 cmp QWORD PTR pv$[rsp], 0
00019 74 33 je SHORT $LN2@CheckImpli
0001b 48 8b 44 24 48 mov rax, QWORD PTR pv$[rsp]
00020 48 c1 e8 10 shr rax, 16
00024 48 85 c0 test rax, rax
00027 75 25 jne SHORT $LN2@CheckImpli
; 2709 : {
; 2710 : UINT nID = LOWORD( reinterpret_cast< DWORD_PTR >( pv ) );
00029 48 8b 44 24 48 mov rax, QWORD PTR pv$[rsp]
0002e 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00034 0f b7 c0 movzx eax, ax
00037 89 44 24 24 mov DWORD PTR nID$1[rsp], eax
; 2711 : (nID);
; 2712 : #ifdef _ATL_USE_WINAPI_FAMILY_DESKTOP_APP
; 2713 : if( !LoadString( nID ) )
0003b 8b 54 24 24 mov edx, DWORD PTR nID$1[rsp]
0003f 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00044 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
; 2714 : {
; 2715 : ATLTRACE( atlTraceString, 2, _T( "Warning: implicit LoadString(%u) failed\n" ), nID );
; 2716 : }
; 2717 : bRet = true;
00049 c6 44 24 20 01 mov BYTE PTR bRet$[rsp], 1
$LN2@CheckImpli:
; 2718 : #else
; 2719 : ATLTRACE( atlTraceString, 2, _T( "Warning: LoadString(%u) not supported under the current WINAPI_FAMILY.\n" ), nID );
; 2720 : #endif
; 2721 : }
; 2722 :
; 2723 : return( bRet );
0004e 0f b6 44 24 20 movzx eax, BYTE PTR bRet$[rsp]
; 2724 : }
00053 48 83 c4 38 add rsp, 56 ; 00000038H
00057 c3 ret 0
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z
_TEXT SEGMENT
nLength$ = 32
pImage$ = 40
pszBuffer$ = 48
this$ = 80
hInstance$ = 88
nID$ = 96
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
; 2350 : {
$LN4:
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 48 83 ec 48 sub rsp, 72 ; 00000048H
; 2351 : const ATLSTRINGRESOURCEIMAGE* pImage = AtlGetStringResourceImage( hInstance, nID );
00013 8b 54 24 60 mov edx, DWORD PTR nID$[rsp]
00017 48 8b 4c 24 58 mov rcx, QWORD PTR hInstance$[rsp]
0001c e8 00 00 00 00 call ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
00021 48 89 44 24 28 mov QWORD PTR pImage$[rsp], rax
; 2352 : if( pImage == NULL )
00026 48 83 7c 24 28
00 cmp QWORD PTR pImage$[rsp], 0
0002c 75 04 jne SHORT $LN2@LoadString
; 2353 : {
; 2354 : return( FALSE );
0002e 33 c0 xor eax, eax
00030 eb 67 jmp SHORT $LN1@LoadString
$LN2@LoadString:
; 2355 : }
; 2356 :
; 2357 : int nLength = StringTraits::GetBaseTypeLength( pImage->achString, pImage->nLength );
00032 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp]
00037 0f b7 00 movzx eax, WORD PTR [rax]
0003a 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp]
0003f 48 83 c1 02 add rcx, 2
00043 8b d0 mov edx, eax
00045 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
0004a 89 44 24 20 mov DWORD PTR nLength$[rsp], eax
; 2358 : PXSTR pszBuffer = this->GetBuffer( nLength );
0004e 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp]
00052 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
00057 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
0005c 48 89 44 24 30 mov QWORD PTR pszBuffer$[rsp], rax
; 2359 : StringTraits::ConvertToBaseType( pszBuffer, nLength, pImage->achString, pImage->nLength );
00061 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp]
00066 0f b7 00 movzx eax, WORD PTR [rax]
00069 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp]
0006e 48 83 c1 02 add rcx, 2
00072 44 8b c8 mov r9d, eax
00075 4c 8b c1 mov r8, rcx
00078 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp]
0007c 48 8b 4c 24 30 mov rcx, QWORD PTR pszBuffer$[rsp]
00081 e8 00 00 00 00 call ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
; 2360 : this->ReleaseBufferSetLength( nLength );
00086 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp]
0008a 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
0008f e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
; 2361 :
; 2362 : return( TRUE );
00094 b8 01 00 00 00 mov eax, 1
$LN1@LoadString:
; 2363 : }
00099 48 83 c4 48 add rsp, 72 ; 00000048H
0009d c3 ret 0
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z
_TEXT SEGMENT
hInstance$ = 32
this$ = 64
nID$ = 72
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
; 2336 : {
$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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 2337 : HINSTANCE hInstance = StringTraits::FindStringResourceInstance( nID );
0000d 8b 4c 24 48 mov ecx, DWORD PTR nID$[rsp]
00011 e8 00 00 00 00 call ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
00016 48 89 44 24 20 mov QWORD PTR hInstance$[rsp], rax
; 2338 : if( hInstance == NULL )
0001b 48 83 7c 24 20
00 cmp QWORD PTR hInstance$[rsp], 0
00021 75 04 jne SHORT $LN2@LoadString
; 2339 : {
; 2340 : return( FALSE );
00023 33 c0 xor eax, eax
00025 eb 14 jmp SHORT $LN1@LoadString
$LN2@LoadString:
; 2341 : }
; 2342 :
; 2343 : return( LoadString( hInstance, nID ) );
00027 44 8b 44 24 48 mov r8d, DWORD PTR nID$[rsp]
0002c 48 8b 54 24 20 mov rdx, QWORD PTR hInstance$[rsp]
00031 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00036 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
$LN1@LoadString:
; 2344 : }
0003b 48 83 c4 38 add rsp, 56 ; 00000038H
0003f c3 ret 0
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z
_TEXT SEGMENT
this$ = 48
pszSrc$ = 56
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=, COMDAT
; 1318 : {
$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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 1319 : CThisSimpleString::operator=( pszSrc );
0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp]
00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00018 e8 00 00 00 00 call ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
; 1320 :
; 1321 : return( *this );
0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp]
; 1322 : }
00022 48 83 c4 28 add rsp, 40 ; 00000028H
00026 c3 ret 0
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
_TEXT SEGMENT
this$ = 48
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; 1298 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 28 sub rsp, 40 ; 00000028H
; 1299 : }
00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0000e e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00013 90 npad 1
00014 48 83 c4 28 add rsp, 40 ; 00000028H
00018 c3 ret 0
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
_TEXT ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
this$ = 48
?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA PROC ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp]
0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00012 48 83 c4 20 add rsp, 32 ; 00000020H
00016 5d pop rbp
00017 c3 ret 0
?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA ENDP ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
_TEXT SEGMENT
this$ = 48
pszSrc$ = 56
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; 1049 : {
$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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 1048 : CThisSimpleString( StringTraits::GetDefaultManager() )
0000e e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
00013 48 8b d0 mov rdx, rax
00016 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0001b e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
00020 90 npad 1
; 1050 : if( !CheckImplicitLoad( pszSrc ) )
00021 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp]
00026 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0002b e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
00030 0f b6 c0 movzx eax, al
00033 85 c0 test eax, eax
00035 75 10 jne SHORT $LN2@CStringT
; 1051 : {
; 1052 : *this = pszSrc;
00037 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp]
0003c 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00041 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
00046 90 npad 1
$LN2@CStringT:
; 1053 : }
; 1054 : }
00047 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp]
0004c 48 83 c4 28 add rsp, 40 ; 00000028H
00050 c3 ret 0
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
_TEXT ENDS
; Function compile flags: /Odtp
; COMDAT text$x
text$x SEGMENT
this$ = 48
pszSrc$ = 56
?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA PROC ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8b ea mov rbp, rdx
00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp]
0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00012 48 83 c4 20 add rsp, 32 ; 00000020H
00016 5d pop rbp
00017 c3 ret 0
?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA ENDP ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
_TEXT SEGMENT
this$ = 48
nLength$ = 56
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetLength, COMDAT
; 867 : {
$LN5:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 28 sub rsp, 40 ; 00000028H
; 868 : ATLASSERT( nLength >= 0 );
; 869 : ATLASSERT( nLength <= GetData()->nAllocLength );
; 870 :
; 871 : if( nLength < 0 || nLength > GetData()->nAllocLength)
0000d 83 7c 24 38 00 cmp DWORD PTR nLength$[rsp], 0
00012 7c 13 jl SHORT $LN3@SetLength
00014 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00019 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0001e 8b 40 0c mov eax, DWORD PTR [rax+12]
00021 39 44 24 38 cmp DWORD PTR nLength$[rsp], eax
00025 7e 0a jle SHORT $LN2@SetLength
$LN3@SetLength:
; 872 : AtlThrow(E_INVALIDARG);
00027 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H
0002c e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN2@SetLength:
; 873 :
; 874 : GetData()->nDataLength = nLength;
00031 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00036 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0003b 8b 4c 24 38 mov ecx, DWORD PTR nLength$[rsp]
0003f 89 48 08 mov DWORD PTR [rax+8], ecx
; 875 : m_pszData[nLength] = 0;
00042 48 63 44 24 38 movsxd rax, DWORD PTR nLength$[rsp]
00047 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0004c 48 8b 09 mov rcx, QWORD PTR [rcx]
0004f 33 d2 xor edx, edx
00051 66 89 14 41 mov WORD PTR [rcx+rax*2], dx
$LN4@SetLength:
; 876 : }
00055 48 83 c4 28 add rsp, 40 ; 00000028H
00059 c3 ret 0
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
_TEXT SEGMENT
pOldData$ = 32
pStringMgr$ = 40
pNewData$ = 48
tv78 = 56
this$ = 80
nLength$ = 88
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Reallocate, COMDAT
; 849 : {
$LN6:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 48 sub rsp, 72 ; 00000048H
; 850 : CStringData* pOldData = GetData();
0000d 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
00012 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00017 48 89 44 24 20 mov QWORD PTR pOldData$[rsp], rax
; 851 : ATLASSERT( pOldData->nAllocLength < nLength );
; 852 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
0001c 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp]
00021 48 8b 00 mov rax, QWORD PTR [rax]
00024 48 89 44 24 28 mov QWORD PTR pStringMgr$[rsp], rax
; 853 : if ( pOldData->nAllocLength >= nLength || nLength <= 0)
00029 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp]
0002e 8b 4c 24 58 mov ecx, DWORD PTR nLength$[rsp]
00032 39 48 0c cmp DWORD PTR [rax+12], ecx
00035 7d 07 jge SHORT $LN3@Reallocate
00037 83 7c 24 58 00 cmp DWORD PTR nLength$[rsp], 0
0003c 7f 07 jg SHORT $LN2@Reallocate
$LN3@Reallocate:
; 854 : {
; 855 : ThrowMemoryException();
0003e e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
; 856 : return;
00043 eb 4b jmp SHORT $LN1@Reallocate
$LN2@Reallocate:
; 857 : }
; 858 : CStringData* pNewData = pStringMgr->Reallocate( pOldData, nLength, sizeof( XCHAR ) );
00045 48 8b 44 24 28 mov rax, QWORD PTR pStringMgr$[rsp]
0004a 48 8b 00 mov rax, QWORD PTR [rax]
0004d 48 8b 40 10 mov rax, QWORD PTR [rax+16]
00051 48 89 44 24 38 mov QWORD PTR tv78[rsp], rax
00056 41 b9 02 00 00
00 mov r9d, 2
0005c 44 8b 44 24 58 mov r8d, DWORD PTR nLength$[rsp]
00061 48 8b 54 24 20 mov rdx, QWORD PTR pOldData$[rsp]
00066 48 8b 4c 24 28 mov rcx, QWORD PTR pStringMgr$[rsp]
0006b ff 54 24 38 call QWORD PTR tv78[rsp]
0006f 48 89 44 24 30 mov QWORD PTR pNewData$[rsp], rax
; 859 : if( pNewData == NULL )
00074 48 83 7c 24 30
00 cmp QWORD PTR pNewData$[rsp], 0
0007a 75 05 jne SHORT $LN4@Reallocate
; 860 : {
; 861 : ThrowMemoryException();
0007c e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
$LN4@Reallocate:
; 862 : }
; 863 : Attach( pNewData );
00081 48 8b 54 24 30 mov rdx, QWORD PTR pNewData$[rsp]
00086 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
0008b e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN1@Reallocate:
$LN5@Reallocate:
; 864 : }
00090 48 83 c4 48 add rsp, 72 ; 00000048H
00094 c3 ret 0
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
_TEXT SEGMENT
nNewLength$1 = 32
pOldData$ = 40
this$ = 64
nLength$ = 72
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2, COMDAT
; 818 : {
$LN10:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 38 sub rsp, 56 ; 00000038H
; 819 : CStringData* pOldData = GetData();
0000d 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00012 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00017 48 89 44 24 28 mov QWORD PTR pOldData$[rsp], rax
; 820 : if( pOldData->nDataLength > nLength )
0001c 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp]
00021 8b 4c 24 48 mov ecx, DWORD PTR nLength$[rsp]
00025 39 48 08 cmp DWORD PTR [rax+8], ecx
00028 7e 0c jle SHORT $LN2@PrepareWri
; 821 : {
; 822 : nLength = pOldData->nDataLength;
0002a 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp]
0002f 8b 40 08 mov eax, DWORD PTR [rax+8]
00032 89 44 24 48 mov DWORD PTR nLength$[rsp], eax
$LN2@PrepareWri:
; 823 : }
; 824 : if( pOldData->IsShared() )
00036 48 8b 4c 24 28 mov rcx, QWORD PTR pOldData$[rsp]
0003b e8 00 00 00 00 call ?IsShared@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsShared
00040 0f b6 c0 movzx eax, al
00043 85 c0 test eax, eax
00045 74 10 je SHORT $LN3@PrepareWri
; 825 : {
; 826 : Fork( nLength );
00047 8b 54 24 48 mov edx, DWORD PTR nLength$[rsp]
0004b 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00050 e8 00 00 00 00 call ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
; 827 : }
00055 eb 68 jmp SHORT $LN4@PrepareWri
$LN3@PrepareWri:
; 828 : else if( pOldData->nAllocLength < nLength )
00057 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp]
0005c 8b 4c 24 48 mov ecx, DWORD PTR nLength$[rsp]
00060 39 48 0c cmp DWORD PTR [rax+12], ecx
00063 7d 5a jge SHORT $LN5@PrepareWri
; 829 : {
; 830 : // Grow exponentially, until we hit 1G, then by 1M thereafter.
; 831 : int nNewLength = pOldData->nAllocLength;
00065 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp]
0006a 8b 40 0c mov eax, DWORD PTR [rax+12]
0006d 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax
; 832 : if( nNewLength > 1024 * 1024 * 1024 )
00071 81 7c 24 20 00
00 00 40 cmp DWORD PTR nNewLength$1[rsp], 1073741824 ; 40000000H
00079 7e 0f jle SHORT $LN6@PrepareWri
; 833 : {
; 834 : nNewLength += 1024 * 1024;
0007b 8b 44 24 20 mov eax, DWORD PTR nNewLength$1[rsp]
0007f 05 00 00 10 00 add eax, 1048576 ; 00100000H
00084 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax
; 835 : }
00088 eb 15 jmp SHORT $LN7@PrepareWri
$LN6@PrepareWri:
; 836 : else
; 837 : {
; 838 : // Exponential growth factor is 1.5.
; 839 : nNewLength = nNewLength + nNewLength / 2;
0008a 8b 44 24 20 mov eax, DWORD PTR nNewLength$1[rsp]
0008e 99 cdq
0008f 2b c2 sub eax, edx
00091 d1 f8 sar eax, 1
00093 8b 4c 24 20 mov ecx, DWORD PTR nNewLength$1[rsp]
00097 03 c8 add ecx, eax
00099 8b c1 mov eax, ecx
0009b 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax
$LN7@PrepareWri:
; 840 : }
; 841 : if( nNewLength < nLength )
0009f 8b 44 24 48 mov eax, DWORD PTR nLength$[rsp]
000a3 39 44 24 20 cmp DWORD PTR nNewLength$1[rsp], eax
000a7 7d 08 jge SHORT $LN8@PrepareWri
; 842 : {
; 843 : nNewLength = nLength;
000a9 8b 44 24 48 mov eax, DWORD PTR nLength$[rsp]
000ad 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax
$LN8@PrepareWri:
; 844 : }
; 845 : Reallocate( nNewLength );
000b1 8b 54 24 20 mov edx, DWORD PTR nNewLength$1[rsp]
000b5 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
000ba e8 00 00 00 00 call ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
$LN5@PrepareWri:
$LN4@PrepareWri:
; 846 : }
; 847 : }
000bf 48 83 c4 38 add rsp, 56 ; 00000038H
000c3 c3 ret 0
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z
_TEXT SEGMENT
nTooShort$ = 32
nShared$ = 36
pOldData$ = 40
this$ = 64
nLength$ = 72
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite, COMDAT
; 803 : {
$LN5:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 38 sub rsp, 56 ; 00000038H
; 804 : if (nLength < 0)
0000d 83 7c 24 48 00 cmp DWORD PTR nLength$[rsp], 0
00012 7d 0a jge SHORT $LN2@PrepareWri
; 805 : AtlThrow(E_INVALIDARG);
00014 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H
00019 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN2@PrepareWri:
; 806 :
; 807 : CStringData* pOldData = GetData();
0001e 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
00023 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00028 48 89 44 24 28 mov QWORD PTR pOldData$[rsp], rax
; 808 : int nShared = 1-pOldData->nRefs; // nShared < 0 means true, >= 0 means false
0002d 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp]
00032 b9 01 00 00 00 mov ecx, 1
00037 2b 48 10 sub ecx, DWORD PTR [rax+16]
0003a 8b c1 mov eax, ecx
0003c 89 44 24 24 mov DWORD PTR nShared$[rsp], eax
; 809 : int nTooShort = pOldData->nAllocLength-nLength; // nTooShort < 0 means true, >= 0 means false
00040 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp]
00045 8b 4c 24 48 mov ecx, DWORD PTR nLength$[rsp]
00049 8b 40 0c mov eax, DWORD PTR [rax+12]
0004c 2b c1 sub eax, ecx
0004e 89 44 24 20 mov DWORD PTR nTooShort$[rsp], eax
; 810 : if( (nShared|nTooShort) < 0 ) // If either sign bit is set (i.e. either is less than zero), we need to copy data
00052 8b 44 24 20 mov eax, DWORD PTR nTooShort$[rsp]
00056 8b 4c 24 24 mov ecx, DWORD PTR nShared$[rsp]
0005a 0b c8 or ecx, eax
0005c 8b c1 mov eax, ecx
0005e 85 c0 test eax, eax
00060 7d 0e jge SHORT $LN3@PrepareWri
; 811 : {
; 812 : PrepareWrite2( nLength );
00062 8b 54 24 48 mov edx, DWORD PTR nLength$[rsp]
00066 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
0006b e8 00 00 00 00 call ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
$LN3@PrepareWri:
; 813 : }
; 814 :
; 815 : return( m_pszData );
00070 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
00075 48 8b 00 mov rax, QWORD PTR [rax]
$LN4@PrepareWri:
; 816 : }
00078 48 83 c4 38 add rsp, 56 ; 00000038H
0007c c3 ret 0
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ
_TEXT SEGMENT
this$ = 8
?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetData, COMDAT
; 799 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
; 800 : return( reinterpret_cast< CStringData* >( m_pszData )-1 );
00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0000a 48 8b 00 mov rax, QWORD PTR [rax]
0000d 48 83 e8 18 sub rax, 24
; 801 : }
00011 c3 ret 0
?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetData
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
_TEXT SEGMENT
nOldLength$ = 32
tv86 = 36
nCharsToCopy$ = 40
pOldData$ = 48
pNewData$ = 56
tv76 = 64
tv83 = 72
tv136 = 80
tv134 = 88
this$ = 112
nLength$ = 120
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Fork, COMDAT
; 783 : {
$LN6:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 68 sub rsp, 104 ; 00000068H
; 784 : CStringData* pOldData = GetData();
0000d 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp]
00012 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00017 48 89 44 24 30 mov QWORD PTR pOldData$[rsp], rax
; 785 : int nOldLength = pOldData->nDataLength;
0001c 48 8b 44 24 30 mov rax, QWORD PTR pOldData$[rsp]
00021 8b 40 08 mov eax, DWORD PTR [rax+8]
00024 89 44 24 20 mov DWORD PTR nOldLength$[rsp], eax
; 786 : CStringData* pNewData = pOldData->pStringMgr->Clone()->Allocate( nLength, sizeof( XCHAR ) );
00028 48 8b 44 24 30 mov rax, QWORD PTR pOldData$[rsp]
0002d 48 8b 00 mov rax, QWORD PTR [rax]
00030 48 8b 4c 24 30 mov rcx, QWORD PTR pOldData$[rsp]
00035 48 8b 09 mov rcx, QWORD PTR [rcx]
00038 48 8b 00 mov rax, QWORD PTR [rax]
0003b ff 50 20 call QWORD PTR [rax+32]
0003e 48 89 44 24 40 mov QWORD PTR tv76[rsp], rax
00043 48 8b 44 24 40 mov rax, QWORD PTR tv76[rsp]
00048 48 8b 00 mov rax, QWORD PTR [rax]
0004b 48 8b 00 mov rax, QWORD PTR [rax]
0004e 48 89 44 24 48 mov QWORD PTR tv83[rsp], rax
00053 41 b8 02 00 00
00 mov r8d, 2
00059 8b 54 24 78 mov edx, DWORD PTR nLength$[rsp]
0005d 48 8b 4c 24 40 mov rcx, QWORD PTR tv76[rsp]
00062 ff 54 24 48 call QWORD PTR tv83[rsp]
00066 48 89 44 24 38 mov QWORD PTR pNewData$[rsp], rax
; 787 : if( pNewData == NULL )
0006b 48 83 7c 24 38
00 cmp QWORD PTR pNewData$[rsp], 0
00071 75 05 jne SHORT $LN2@Fork
; 788 : {
; 789 : ThrowMemoryException();
00073 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
$LN2@Fork:
; 790 : }
; 791 : int nCharsToCopy = ((nOldLength < nLength) ? nOldLength : nLength)+1; // Copy '\0'
00078 8b 44 24 78 mov eax, DWORD PTR nLength$[rsp]
0007c 39 44 24 20 cmp DWORD PTR nOldLength$[rsp], eax
00080 7d 0a jge SHORT $LN4@Fork
00082 8b 44 24 20 mov eax, DWORD PTR nOldLength$[rsp]
00086 89 44 24 24 mov DWORD PTR tv86[rsp], eax
0008a eb 08 jmp SHORT $LN5@Fork
$LN4@Fork:
0008c 8b 44 24 78 mov eax, DWORD PTR nLength$[rsp]
00090 89 44 24 24 mov DWORD PTR tv86[rsp], eax
$LN5@Fork:
00094 8b 44 24 24 mov eax, DWORD PTR tv86[rsp]
00098 ff c0 inc eax
0009a 89 44 24 28 mov DWORD PTR nCharsToCopy$[rsp], eax
; 792 : memcpy_s( PXSTR( pNewData->data() ), nCharsToCopy * sizeof( XCHAR ),
0009e 48 8b 4c 24 30 mov rcx, QWORD PTR pOldData$[rsp]
000a3 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
000a8 48 89 44 24 50 mov QWORD PTR tv136[rsp], rax
000ad 48 8b 4c 24 38 mov rcx, QWORD PTR pNewData$[rsp]
000b2 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
000b7 48 89 44 24 58 mov QWORD PTR tv134[rsp], rax
000bc 48 63 44 24 28 movsxd rax, DWORD PTR nCharsToCopy$[rsp]
000c1 48 d1 e0 shl rax, 1
000c4 48 63 4c 24 28 movsxd rcx, DWORD PTR nCharsToCopy$[rsp]
000c9 48 d1 e1 shl rcx, 1
000cc 4c 8b c8 mov r9, rax
000cf 4c 8b 44 24 50 mov r8, QWORD PTR tv136[rsp]
000d4 48 8b d1 mov rdx, rcx
000d7 48 8b 4c 24 58 mov rcx, QWORD PTR tv134[rsp]
000dc e8 00 00 00 00 call memcpy_s
; 793 : PCXSTR( pOldData->data() ), nCharsToCopy * sizeof( XCHAR ));
; 794 : pNewData->nDataLength = nOldLength;
000e1 48 8b 44 24 38 mov rax, QWORD PTR pNewData$[rsp]
000e6 8b 4c 24 20 mov ecx, DWORD PTR nOldLength$[rsp]
000ea 89 48 08 mov DWORD PTR [rax+8], ecx
; 795 : pOldData->Release();
000ed 48 8b 4c 24 30 mov rcx, QWORD PTR pOldData$[rsp]
000f2 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
; 796 : Attach( pNewData );
000f7 48 8b 54 24 38 mov rdx, QWORD PTR pNewData$[rsp]
000fc 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp]
00101 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN3@Fork:
; 797 : }
00106 48 83 c4 68 add rsp, 104 ; 00000068H
0010a c3 ret 0
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Fork
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z
_TEXT SEGMENT
this$ = 48
pData$ = 56
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Attach, COMDAT
; 779 : {
$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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 780 : m_pszData = static_cast< PXSTR >( pData->data() );
0000e 48 8b 4c 24 38 mov rcx, QWORD PTR pData$[rsp]
00013 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
00018 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0001d 48 89 01 mov QWORD PTR [rcx], rax
; 781 : }
00020 48 83 c4 28 add rsp, 40 ; 00000028H
00024 c3 ret 0
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Attach
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ
_TEXT SEGMENT
?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException, COMDAT
; 772 : {
$LN3:
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
; 773 : AtlThrow( E_OUTOFMEMORY );
00004 b9 0e 00 07 80 mov ecx, -2147024882 ; ffffffff8007000eH
00009 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN2@ThrowMemor:
; 774 : }
0000e 48 83 c4 28 add rsp, 40 ; 00000028H
00012 c3 ret 0
?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
_TEXT SEGMENT
psz$ = 48
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::StringLength, COMDAT
; 729 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 28 sub rsp, 40 ; 00000028H
; 730 : if( psz == NULL )
00009 48 83 7c 24 30
00 cmp QWORD PTR psz$[rsp], 0
0000f 75 04 jne SHORT $LN2@StringLeng
; 731 : {
; 732 : return( 0 );
00011 33 c0 xor eax, eax
00013 eb 0b jmp SHORT $LN1@StringLeng
$LN2@StringLeng:
; 733 : }
; 734 : return( int( wcslen( psz ) ) );
00015 48 8b 4c 24 30 mov rcx, QWORD PTR psz$[rsp]
0001a e8 00 00 00 00 call wcslen
0001f 90 npad 1
$LN1@StringLeng:
; 735 : }
00020 48 83 c4 28 add rsp, 40 ; 00000028H
00024 c3 ret 0
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::StringLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
_TEXT SEGMENT
pchDest$ = 48
nDestLen$ = 56
pchSrc$ = 64
nChars$ = 72
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped, COMDAT
; 716 : {
$LN3:
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 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 48 83 ec 28 sub rsp, 40 ; 00000028H
; 717 : memmove_s( pchDest, nDestLen*sizeof( XCHAR ),
00018 48 63 44 24 48 movsxd rax, DWORD PTR nChars$[rsp]
0001d 48 d1 e0 shl rax, 1
00020 48 8b 4c 24 38 mov rcx, QWORD PTR nDestLen$[rsp]
00025 48 d1 e1 shl rcx, 1
00028 4c 8b c8 mov r9, rax
0002b 4c 8b 44 24 40 mov r8, QWORD PTR pchSrc$[rsp]
00030 48 8b d1 mov rdx, rcx
00033 48 8b 4c 24 30 mov rcx, QWORD PTR pchDest$[rsp]
00038 e8 00 00 00 00 call memmove_s
0003d 90 npad 1
; 718 : pchSrc, nChars*sizeof( XCHAR ) );
; 719 : }
0003e 48 83 c4 28 add rsp, 40 ; 00000028H
00042 c3 ret 0
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z
_TEXT SEGMENT
nOldLength$1 = 32
pszBuffer$2 = 40
nOffset$3 = 48
tv81 = 56
tv90 = 64
this$ = 96
pszSrc$ = 104
nLength$ = 112
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
; 607 : {
$LN8:
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 48 83 ec 58 sub rsp, 88 ; 00000058H
; 608 : if( nLength == 0 )
00013 83 7c 24 70 00 cmp DWORD PTR nLength$[rsp], 0
00018 75 0f jne SHORT $LN2@SetString
; 609 : {
; 610 : Empty();
0001a 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
0001f e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
; 611 : }
00024 e9 da 00 00 00 jmp $LN3@SetString
$LN2@SetString:
; 612 : else
; 613 : {
; 614 : // It is possible that pszSrc points to a location inside of our
; 615 : // buffer. GetBuffer() might change m_pszData if (1) the buffer
; 616 : // is shared or (2) the buffer is too small to hold the new
; 617 : // string. We detect this aliasing, and modify pszSrc to point
; 618 : // into the newly allocated buffer instead.
; 619 :
; 620 : if(pszSrc == NULL)
00029 48 83 7c 24 68
00 cmp QWORD PTR pszSrc$[rsp], 0
0002f 75 0a jne SHORT $LN4@SetString
; 621 : AtlThrow(E_INVALIDARG);
00031 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H
00036 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN4@SetString:
; 622 :
; 623 : UINT nOldLength = GetLength();
0003b 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
00040 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
00045 89 44 24 20 mov DWORD PTR nOldLength$1[rsp], eax
; 624 : UINT_PTR nOffset = pszSrc-GetString();
00049 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
0004e e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
00053 48 8b 4c 24 68 mov rcx, QWORD PTR pszSrc$[rsp]
00058 48 2b c8 sub rcx, rax
0005b 48 8b c1 mov rax, rcx
0005e 48 d1 f8 sar rax, 1
00061 48 89 44 24 30 mov QWORD PTR nOffset$3[rsp], rax
; 625 : // If 0 <= nOffset <= nOldLength, then pszSrc points into our
; 626 : // buffer
; 627 :
; 628 : PXSTR pszBuffer = GetBuffer( nLength );
00066 8b 54 24 70 mov edx, DWORD PTR nLength$[rsp]
0006a 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
0006f e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
00074 48 89 44 24 28 mov QWORD PTR pszBuffer$2[rsp], rax
; 629 : if( nOffset <= nOldLength )
00079 8b 44 24 20 mov eax, DWORD PTR nOldLength$1[rsp]
0007d 48 39 44 24 30 cmp QWORD PTR nOffset$3[rsp], rax
00082 77 3b ja SHORT $LN5@SetString
; 630 : {
; 631 : CopyCharsOverlapped( pszBuffer, GetAllocLength(),
00084 48 8b 44 24 28 mov rax, QWORD PTR pszBuffer$2[rsp]
00089 48 8b 4c 24 30 mov rcx, QWORD PTR nOffset$3[rsp]
0008e 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2]
00092 48 89 44 24 38 mov QWORD PTR tv81[rsp], rax
00097 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
0009c e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
000a1 48 98 cdqe
000a3 44 8b 4c 24 70 mov r9d, DWORD PTR nLength$[rsp]
000a8 48 8b 4c 24 38 mov rcx, QWORD PTR tv81[rsp]
000ad 4c 8b c1 mov r8, rcx
000b0 48 8b d0 mov rdx, rax
000b3 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$2[rsp]
000b8 e8 00 00 00 00 call ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
; 632 : pszBuffer+nOffset, nLength );
; 633 : }
000bd eb 36 jmp SHORT $LN6@SetString
$LN5@SetString:
; 634 : else
; 635 : {
; 636 : memcpy_s( pszBuffer, GetAllocLength() * sizeof( XCHAR ), pszSrc, nLength * sizeof( XCHAR ));
000bf 48 63 44 24 70 movsxd rax, DWORD PTR nLength$[rsp]
000c4 48 d1 e0 shl rax, 1
000c7 48 89 44 24 40 mov QWORD PTR tv90[rsp], rax
000cc 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
000d1 e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
000d6 48 98 cdqe
000d8 48 d1 e0 shl rax, 1
000db 48 8b 4c 24 40 mov rcx, QWORD PTR tv90[rsp]
000e0 4c 8b c9 mov r9, rcx
000e3 4c 8b 44 24 68 mov r8, QWORD PTR pszSrc$[rsp]
000e8 48 8b d0 mov rdx, rax
000eb 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$2[rsp]
000f0 e8 00 00 00 00 call memcpy_s
$LN6@SetString:
; 637 : }
; 638 : ReleaseBufferSetLength( nLength );
000f5 8b 54 24 70 mov edx, DWORD PTR nLength$[rsp]
000f9 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp]
000fe e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
$LN3@SetString:
$LN7@SetString:
; 639 : }
; 640 : }
00103 48 83 c4 58 add rsp, 88 ; 00000058H
00107 c3 ret 0
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetString
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z
_TEXT SEGMENT
this$ = 48
pszSrc$ = 56
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
; 601 : {
$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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 602 : SetString( pszSrc, StringLength( pszSrc ) );
0000e 48 8b 4c 24 38 mov rcx, QWORD PTR pszSrc$[rsp]
00013 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
00018 44 8b c0 mov r8d, eax
0001b 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp]
00020 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00025 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
; 603 : }
0002a 48 83 c4 28 add rsp, 40 ; 00000028H
0002e c3 ret 0
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetString
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z
_TEXT SEGMENT
this$ = 48
nNewLength$ = 56
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength, COMDAT
; 566 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 28 sub rsp, 40 ; 00000028H
; 567 : ATLASSERT( nNewLength >= 0 );
; 568 : SetLength( nNewLength );
0000d 8b 54 24 38 mov edx, DWORD PTR nNewLength$[rsp]
00011 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00016 e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
; 569 : }
0001b 48 83 c4 28 add rsp, 40 ; 00000028H
0001f c3 ret 0
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ
_TEXT SEGMENT
this$ = 8
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetString, COMDAT
; 528 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
; 529 : return( m_pszData );
00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0000a 48 8b 00 mov rax, QWORD PTR [rax]
; 530 : }
0000d c3 ret 0
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetString
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
_TEXT SEGMENT
this$ = 48
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetLength, COMDAT
; 518 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 28 sub rsp, 40 ; 00000028H
; 519 : return( GetData()->nDataLength );
00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00013 8b 40 08 mov eax, DWORD PTR [rax+8]
; 520 : }
00016 48 83 c4 28 add rsp, 40 ; 00000028H
0001a c3 ret 0
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z
_TEXT SEGMENT
this$ = 48
nMinBufferLength$ = 56
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer, COMDAT
; 507 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 48 83 ec 28 sub rsp, 40 ; 00000028H
; 508 : return( PrepareWrite( nMinBufferLength ) );
0000d 8b 54 24 38 mov edx, DWORD PTR nMinBufferLength$[rsp]
00011 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00016 e8 00 00 00 00 call ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
; 509 : }
0001b 48 83 c4 28 add rsp, 40 ; 00000028H
0001f c3 ret 0
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
_TEXT SEGMENT
this$ = 48
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength, COMDAT
; 485 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 28 sub rsp, 40 ; 00000028H
; 486 : return( GetData()->nAllocLength );
00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00013 8b 40 0c mov eax, DWORD PTR [rax+12]
; 487 : }
00016 48 83 c4 28 add rsp, 40 ; 00000028H
0001a c3 ret 0
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
_TEXT SEGMENT
pOldData$ = 32
pStringMgr$ = 40
pNewData$1 = 48
this$ = 80
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::Empty, COMDAT
; 436 : {
$LN6:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 48 sub rsp, 72 ; 00000048H
; 437 : CStringData* pOldData = GetData();
00009 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00013 48 89 44 24 20 mov QWORD PTR pOldData$[rsp], rax
; 438 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
00018 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp]
0001d 48 8b 00 mov rax, QWORD PTR [rax]
00020 48 89 44 24 28 mov QWORD PTR pStringMgr$[rsp], rax
; 439 : if( pOldData->nDataLength == 0 )
00025 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp]
0002a 83 78 08 00 cmp DWORD PTR [rax+8], 0
0002e 75 02 jne SHORT $LN2@Empty
; 440 : {
; 441 : return;
00030 eb 4e jmp SHORT $LN1@Empty
$LN2@Empty:
; 442 : }
; 443 :
; 444 : if( pOldData->IsLocked() )
00032 48 8b 4c 24 20 mov rcx, QWORD PTR pOldData$[rsp]
00037 e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked
0003c 0f b6 c0 movzx eax, al
0003f 85 c0 test eax, eax
00041 74 0e je SHORT $LN3@Empty
; 445 : {
; 446 : // Don't reallocate a locked buffer that's shrinking
; 447 : SetLength( 0 );
00043 33 d2 xor edx, edx
00045 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
0004a e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
; 448 : }
0004f eb 2f jmp SHORT $LN1@Empty
$LN3@Empty:
; 449 : else
; 450 : {
; 451 : pOldData->Release();
00051 48 8b 4c 24 20 mov rcx, QWORD PTR pOldData$[rsp]
00056 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
; 452 : CStringData* pNewData = pStringMgr->GetNilString();
0005b 48 8b 44 24 28 mov rax, QWORD PTR pStringMgr$[rsp]
00060 48 8b 00 mov rax, QWORD PTR [rax]
00063 48 8b 4c 24 28 mov rcx, QWORD PTR pStringMgr$[rsp]
00068 ff 50 18 call QWORD PTR [rax+24]
0006b 48 89 44 24 30 mov QWORD PTR pNewData$1[rsp], rax
; 453 : Attach( pNewData );
00070 48 8b 54 24 30 mov rdx, QWORD PTR pNewData$1[rsp]
00075 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp]
0007a e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
0007f 90 npad 1
$LN1@Empty:
; 454 : }
; 455 : }
00080 48 83 c4 48 add rsp, 72 ; 00000048H
00084 c3 ret 0
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::Empty
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z
_TEXT SEGMENT
this$ = 48
pszSrc$ = 56
??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::operator=, COMDAT
; 313 : {
$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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 314 : SetString( pszSrc );
0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp]
00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp]
00018 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
; 315 :
; 316 : return( *this );
0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp]
; 317 : }
00022 48 83 c4 28 add rsp, 40 ; 00000028H
00026 c3 ret 0
??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::operator=
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ
_TEXT SEGMENT
pData$ = 32
this$ = 64
??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>, COMDAT
; 260 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 38 sub rsp, 56 ; 00000038H
; 261 : CStringData* pData = GetData();
00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00013 48 89 44 24 20 mov QWORD PTR pData$[rsp], rax
; 262 : pData->Release();
00018 48 8b 4c 24 20 mov rcx, QWORD PTR pData$[rsp]
0001d e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
; 263 : }
00022 48 83 c4 38 add rsp, 56 ; 00000038H
00026 c3 ret 0
??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z
_TEXT SEGMENT
tv65 = 32
__atl_condVal$1 = 36
pData$ = 40
this$ = 64
pStringMgr$ = 72
??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>, COMDAT
; 203 : explicit CSimpleStringT(_Inout_ IAtlStringMgr* pStringMgr)
$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 48 83 ec 38 sub rsp, 56 ; 00000038H
$LN4@CSimpleStr:
; 204 : {
; 205 : ATLENSURE( pStringMgr != NULL );
0000e 48 83 7c 24 48
00 cmp QWORD PTR pStringMgr$[rsp], 0
00014 74 0a je SHORT $LN10@CSimpleStr
00016 c7 44 24 20 01
00 00 00 mov DWORD PTR tv65[rsp], 1
0001e eb 08 jmp SHORT $LN11@CSimpleStr
$LN10@CSimpleStr:
00020 c7 44 24 20 00
00 00 00 mov DWORD PTR tv65[rsp], 0
$LN11@CSimpleStr:
00028 8b 44 24 20 mov eax, DWORD PTR tv65[rsp]
0002c 89 44 24 24 mov DWORD PTR __atl_condVal$1[rsp], eax
$LN7@CSimpleStr:
00030 33 c0 xor eax, eax
00032 85 c0 test eax, eax
00034 75 fa jne SHORT $LN7@CSimpleStr
00036 83 7c 24 24 00 cmp DWORD PTR __atl_condVal$1[rsp], 0
0003b 75 0a jne SHORT $LN8@CSimpleStr
0003d b9 05 40 00 80 mov ecx, -2147467259 ; ffffffff80004005H
00042 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN8@CSimpleStr:
00047 33 c0 xor eax, eax
00049 85 c0 test eax, eax
0004b 75 c1 jne SHORT $LN4@CSimpleStr
; 206 : CStringData* pData = pStringMgr->GetNilString();
0004d 48 8b 44 24 48 mov rax, QWORD PTR pStringMgr$[rsp]
00052 48 8b 00 mov rax, QWORD PTR [rax]
00055 48 8b 4c 24 48 mov rcx, QWORD PTR pStringMgr$[rsp]
0005a ff 50 18 call QWORD PTR [rax+24]
0005d 48 89 44 24 28 mov QWORD PTR pData$[rsp], rax
; 207 : Attach( pData );
00062 48 8b 54 24 28 mov rdx, QWORD PTR pData$[rsp]
00067 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp]
0006c e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
; 208 : }
00071 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
$LN9@CSimpleStr:
00076 48 83 c4 38 add rsp, 56 ; 00000038H
0007a c3 ret 0
??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z
_TEXT SEGMENT
pszDest$ = 48
nDestLength$ = 56
pszSrc$ = 64
nSrcLength$ = 72
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType, COMDAT
; 789 : {
$LN4:
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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 790 : if (nSrcLength == -1) { nSrcLength=1 + GetBaseTypeLength(pszSrc); }
00017 83 7c 24 48 ff cmp DWORD PTR nSrcLength$[rsp], -1
0001c 75 10 jne SHORT $LN2@ConvertToB
0001e 48 8b 4c 24 40 mov rcx, QWORD PTR pszSrc$[rsp]
00023 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
00028 ff c0 inc eax
0002a 89 44 24 48 mov DWORD PTR nSrcLength$[rsp], eax
$LN2@ConvertToB:
; 791 : // nLen is in wchar_ts
; 792 : Checked::wmemcpy_s(pszDest, nDestLength, pszSrc, nSrcLength);
0002e 48 63 44 24 48 movsxd rax, DWORD PTR nSrcLength$[rsp]
00033 48 63 4c 24 38 movsxd rcx, DWORD PTR nDestLength$[rsp]
00038 4c 8b c8 mov r9, rax
0003b 4c 8b 44 24 40 mov r8, QWORD PTR pszSrc$[rsp]
00040 48 8b d1 mov rdx, rcx
00043 48 8b 4c 24 30 mov rcx, QWORD PTR pszDest$[rsp]
00048 e8 00 00 00 00 call ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ; ATL::Checked::wmemcpy_s
; 793 : }
0004d 48 83 c4 28 add rsp, 40 ; 00000028H
00051 c3 ret 0
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z
_TEXT SEGMENT
pszSrc$ = 8
nLength$ = 16
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
; 768 : {
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
; 769 : (void)pszSrc;
; 770 : // Returns required buffer size in wchar_ts
; 771 : return nLength;
00009 8b 44 24 10 mov eax, DWORD PTR nLength$[rsp]
; 772 : }
0000d c3 ret 0
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
_TEXT SEGMENT
pszSrc$ = 48
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
; 760 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 28 sub rsp, 40 ; 00000028H
; 761 : // Returns required buffer size in wchar_ts
; 762 : return AtlStrLen( pszSrc );
00009 48 8b 4c 24 30 mov rcx, QWORD PTR pszSrc$[rsp]
0000e e8 00 00 00 00 call ?AtlStrLen@ATL@@YAHPEB_W@Z ; ATL::AtlStrLen
00013 90 npad 1
; 763 : }
00014 48 83 c4 28 add rsp, 40 ; 00000028H
00018 c3 ret 0
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?Release@CStringData@ATL@@QEAAXXZ
_TEXT SEGMENT
tv77 = 32
tv79 = 40
this$ = 64
?Release@CStringData@ATL@@QEAAXXZ PROC ; ATL::CStringData::Release, COMDAT
; 85 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 38 sub rsp, 56 ; 00000038H
; 86 : ATLASSERT( nRefs != 0 );
; 87 :
; 88 : if( _InterlockedDecrement( &nRefs ) <= 0 )
00009 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
0000e 48 83 c0 10 add rax, 16
00012 b9 ff ff ff ff mov ecx, -1
00017 f0 0f c1 08 lock xadd DWORD PTR [rax], ecx
0001b ff c9 dec ecx
0001d 8b c1 mov eax, ecx
0001f 85 c0 test eax, eax
00021 7f 2f jg SHORT $LN2@Release
; 89 : {
; 90 : pStringMgr->Free( this );
00023 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
00028 48 8b 00 mov rax, QWORD PTR [rax]
0002b 48 89 44 24 20 mov QWORD PTR tv77[rsp], rax
00030 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp]
00035 48 8b 00 mov rax, QWORD PTR [rax]
00038 48 8b 00 mov rax, QWORD PTR [rax]
0003b 48 8b 40 08 mov rax, QWORD PTR [rax+8]
0003f 48 89 44 24 28 mov QWORD PTR tv79[rsp], rax
00044 48 8b 54 24 40 mov rdx, QWORD PTR this$[rsp]
00049 48 8b 4c 24 20 mov rcx, QWORD PTR tv77[rsp]
0004e ff 54 24 28 call QWORD PTR tv79[rsp]
$LN2@Release:
; 91 : }
; 92 : }
00052 48 83 c4 38 add rsp, 56 ; 00000038H
00056 c3 ret 0
?Release@CStringData@ATL@@QEAAXXZ ENDP ; ATL::CStringData::Release
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?IsShared@CStringData@ATL@@QEBA_NXZ
_TEXT SEGMENT
tv66 = 0
this$ = 32
?IsShared@CStringData@ATL@@QEBA_NXZ PROC ; ATL::CStringData::IsShared, COMDAT
; 72 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 18 sub rsp, 24
; 73 : return( nRefs > 1 );
00009 48 8b 44 24 20 mov rax, QWORD PTR this$[rsp]
0000e 83 78 10 01 cmp DWORD PTR [rax+16], 1
00012 7e 09 jle SHORT $LN3@IsShared
00014 c7 04 24 01 00
00 00 mov DWORD PTR tv66[rsp], 1
0001b eb 07 jmp SHORT $LN4@IsShared
$LN3@IsShared:
0001d c7 04 24 00 00
00 00 mov DWORD PTR tv66[rsp], 0
$LN4@IsShared:
00024 0f b6 04 24 movzx eax, BYTE PTR tv66[rsp]
; 74 : }
00028 48 83 c4 18 add rsp, 24
0002c c3 ret 0
?IsShared@CStringData@ATL@@QEBA_NXZ ENDP ; ATL::CStringData::IsShared
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?IsLocked@CStringData@ATL@@QEBA_NXZ
_TEXT SEGMENT
tv66 = 0
this$ = 32
?IsLocked@CStringData@ATL@@QEBA_NXZ PROC ; ATL::CStringData::IsLocked, COMDAT
; 68 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 18 sub rsp, 24
; 69 : return nRefs < 0;
00009 48 8b 44 24 20 mov rax, QWORD PTR this$[rsp]
0000e 83 78 10 00 cmp DWORD PTR [rax+16], 0
00012 7d 09 jge SHORT $LN3@IsLocked
00014 c7 04 24 01 00
00 00 mov DWORD PTR tv66[rsp], 1
0001b eb 07 jmp SHORT $LN4@IsLocked
$LN3@IsLocked:
0001d c7 04 24 00 00
00 00 mov DWORD PTR tv66[rsp], 0
$LN4@IsLocked:
00024 0f b6 04 24 movzx eax, BYTE PTR tv66[rsp]
; 70 : }
00028 48 83 c4 18 add rsp, 24
0002c c3 ret 0
?IsLocked@CStringData@ATL@@QEBA_NXZ ENDP ; ATL::CStringData::IsLocked
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?data@CStringData@ATL@@QEAAPEAXXZ
_TEXT SEGMENT
this$ = 8
?data@CStringData@ATL@@QEAAPEAXXZ PROC ; ATL::CStringData::data, COMDAT
; 58 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
; 59 : return (this+1);
00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp]
0000a 48 83 c0 18 add rax, 24
; 60 : }
0000e c3 ret 0
?data@CStringData@ATL@@QEAAPEAXXZ ENDP ; ATL::CStringData::data
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
_TEXT SEGMENT
hResource$ = 32
hInstance$ = 64
id$ = 72
?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z PROC ; ATL::AtlGetStringResourceImage, COMDAT
; 370 : {
$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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 371 : HRSRC hResource;
; 372 : /*
; 373 : The and operation (& static_cast<WORD>(~0)) protects the expression from being greater
; 374 : than WORD - this would cause a runtime error when the application is compiled with /RTCc flag.
; 375 : */
; 376 : hResource = ::FindResourceW(hInstance, MAKEINTRESOURCEW( (((id>>4)+1) & static_cast<WORD>(~0)) ), (LPWSTR) RT_STRING);
0000d 8b 44 24 48 mov eax, DWORD PTR id$[rsp]
00011 c1 e8 04 shr eax, 4
00014 ff c0 inc eax
00016 25 ff ff 00 00 and eax, 65535 ; 0000ffffH
0001b 0f b7 c0 movzx eax, ax
0001e 41 b8 06 00 00
00 mov r8d, 6
00024 8b d0 mov edx, eax
00026 48 8b 4c 24 40 mov rcx, QWORD PTR hInstance$[rsp]
0002b ff 15 00 00 00
00 call QWORD PTR __imp_FindResourceW
00031 48 89 44 24 20 mov QWORD PTR hResource$[rsp], rax
; 377 : if( hResource == NULL )
00036 48 83 7c 24 20
00 cmp QWORD PTR hResource$[rsp], 0
0003c 75 04 jne SHORT $LN2@AtlGetStri
; 378 : {
; 379 : return( NULL );
0003e 33 c0 xor eax, eax
00040 eb 15 jmp SHORT $LN1@AtlGetStri
$LN2@AtlGetStri:
; 380 : }
; 381 :
; 382 : return _AtlGetStringResourceImage( hInstance, hResource, id );
00042 44 8b 44 24 48 mov r8d, DWORD PTR id$[rsp]
00047 48 8b 54 24 20 mov rdx, QWORD PTR hResource$[rsp]
0004c 48 8b 4c 24 40 mov rcx, QWORD PTR hInstance$[rsp]
00051 e8 00 00 00 00 call ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
00056 90 npad 1
$LN1@AtlGetStri:
; 383 : }
00057 48 83 c4 38 add rsp, 56 ; 00000038H
0005b c3 ret 0
?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ENDP ; ATL::AtlGetStringResourceImage
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
_TEXT SEGMENT
iIndex$ = 32
nResourceSize$ = 36
pImage$ = 40
hGlobal$ = 48
pImageEnd$ = 56
hInstance$ = 80
hResource$ = 88
id$ = 96
?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z PROC ; ATL::_AtlGetStringResourceImage, COMDAT
; 327 : {
$LN9:
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 48 83 ec 48 sub rsp, 72 ; 00000048H
; 328 : const ATLSTRINGRESOURCEIMAGE* pImage;
; 329 : const ATLSTRINGRESOURCEIMAGE* pImageEnd;
; 330 : ULONG nResourceSize;
; 331 : HGLOBAL hGlobal;
; 332 : UINT iIndex;
; 333 :
; 334 : hGlobal = ::LoadResource( hInstance, hResource );
00013 48 8b 54 24 58 mov rdx, QWORD PTR hResource$[rsp]
00018 48 8b 4c 24 50 mov rcx, QWORD PTR hInstance$[rsp]
0001d ff 15 00 00 00
00 call QWORD PTR __imp_LoadResource
00023 48 89 44 24 30 mov QWORD PTR hGlobal$[rsp], rax
; 335 : if( hGlobal == NULL )
00028 48 83 7c 24 30
00 cmp QWORD PTR hGlobal$[rsp], 0
0002e 75 07 jne SHORT $LN4@AtlGetStri
; 336 : {
; 337 : return( NULL );
00030 33 c0 xor eax, eax
00032 e9 ad 00 00 00 jmp $LN1@AtlGetStri
$LN4@AtlGetStri:
; 338 : }
; 339 :
; 340 : pImage = (const ATLSTRINGRESOURCEIMAGE*)::LockResource( hGlobal );
00037 48 8b 4c 24 30 mov rcx, QWORD PTR hGlobal$[rsp]
0003c ff 15 00 00 00
00 call QWORD PTR __imp_LockResource
00042 48 89 44 24 28 mov QWORD PTR pImage$[rsp], rax
; 341 : if( pImage == NULL )
00047 48 83 7c 24 28
00 cmp QWORD PTR pImage$[rsp], 0
0004d 75 07 jne SHORT $LN5@AtlGetStri
; 342 : {
; 343 : return( NULL );
0004f 33 c0 xor eax, eax
00051 e9 8e 00 00 00 jmp $LN1@AtlGetStri
$LN5@AtlGetStri:
; 344 : }
; 345 :
; 346 : nResourceSize = ::SizeofResource( hInstance, hResource );
00056 48 8b 54 24 58 mov rdx, QWORD PTR hResource$[rsp]
0005b 48 8b 4c 24 50 mov rcx, QWORD PTR hInstance$[rsp]
00060 ff 15 00 00 00
00 call QWORD PTR __imp_SizeofResource
00066 89 44 24 24 mov DWORD PTR nResourceSize$[rsp], eax
; 347 : pImageEnd = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+nResourceSize);
0006a 8b 44 24 24 mov eax, DWORD PTR nResourceSize$[rsp]
0006e 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp]
00073 48 03 c8 add rcx, rax
00076 48 8b c1 mov rax, rcx
00079 48 89 44 24 38 mov QWORD PTR pImageEnd$[rsp], rax
; 348 : iIndex = id&0x000f;
0007e 8b 44 24 60 mov eax, DWORD PTR id$[rsp]
00082 83 e0 0f and eax, 15
00085 89 44 24 20 mov DWORD PTR iIndex$[rsp], eax
$LN2@AtlGetStri:
; 349 :
; 350 : while( (iIndex > 0) && (pImage < pImageEnd) )
00089 83 7c 24 20 00 cmp DWORD PTR iIndex$[rsp], 0
0008e 76 2f jbe SHORT $LN3@AtlGetStri
00090 48 8b 44 24 38 mov rax, QWORD PTR pImageEnd$[rsp]
00095 48 39 44 24 28 cmp QWORD PTR pImage$[rsp], rax
0009a 73 23 jae SHORT $LN3@AtlGetStri
; 351 : {
; 352 : pImage = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+(sizeof( ATLSTRINGRESOURCEIMAGE )+(pImage->nLength*sizeof( WCHAR ))));
0009c 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp]
000a1 0f b7 00 movzx eax, WORD PTR [rax]
000a4 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp]
000a9 48 8d 44 41 02 lea rax, QWORD PTR [rcx+rax*2+2]
000ae 48 89 44 24 28 mov QWORD PTR pImage$[rsp], rax
; 353 : iIndex--;
000b3 8b 44 24 20 mov eax, DWORD PTR iIndex$[rsp]
000b7 ff c8 dec eax
000b9 89 44 24 20 mov DWORD PTR iIndex$[rsp], eax
; 354 : }
000bd eb ca jmp SHORT $LN2@AtlGetStri
$LN3@AtlGetStri:
; 355 : if( pImage >= pImageEnd )
000bf 48 8b 44 24 38 mov rax, QWORD PTR pImageEnd$[rsp]
000c4 48 39 44 24 28 cmp QWORD PTR pImage$[rsp], rax
000c9 72 04 jb SHORT $LN6@AtlGetStri
; 356 : {
; 357 : return( NULL );
000cb 33 c0 xor eax, eax
000cd eb 15 jmp SHORT $LN1@AtlGetStri
$LN6@AtlGetStri:
; 358 : }
; 359 : if( pImage->nLength == 0 )
000cf 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp]
000d4 0f b7 00 movzx eax, WORD PTR [rax]
000d7 85 c0 test eax, eax
000d9 75 04 jne SHORT $LN7@AtlGetStri
; 360 : {
; 361 : return( NULL );
000db 33 c0 xor eax, eax
000dd eb 05 jmp SHORT $LN1@AtlGetStri
$LN7@AtlGetStri:
; 362 : }
; 363 :
; 364 : return( pImage );
000df 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp]
$LN1@AtlGetStri:
; 365 : }
000e4 48 83 c4 48 add rsp, 72 ; 00000048H
000e8 c3 ret 0
?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ENDP ; ATL::_AtlGetStringResourceImage
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?AtlStrLen@ATL@@YAHPEB_W@Z
_TEXT SEGMENT
str$ = 48
?AtlStrLen@ATL@@YAHPEB_W@Z PROC ; ATL::AtlStrLen, COMDAT
; 60 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 48 83 ec 28 sub rsp, 40 ; 00000028H
; 61 : if (str == NULL)
00009 48 83 7c 24 30
00 cmp QWORD PTR str$[rsp], 0
0000f 75 04 jne SHORT $LN2@AtlStrLen
; 62 : return 0;
00011 33 c0 xor eax, eax
00013 eb 0a jmp SHORT $LN1@AtlStrLen
$LN2@AtlStrLen:
; 63 : return static_cast<int>(::wcslen(str));
00015 48 8b 4c 24 30 mov rcx, QWORD PTR str$[rsp]
0001a e8 00 00 00 00 call wcslen
$LN1@AtlStrLen:
; 64 : }
0001f 48 83 c4 28 add rsp, 40 ; 00000028H
00023 c3 ret 0
?AtlStrLen@ATL@@YAHPEB_W@Z ENDP ; ATL::AtlStrLen
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlchecked.h
; COMDAT ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z
_TEXT SEGMENT
_S1$ = 48
_N1$ = 56
_S2$ = 64
_N$ = 72
?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z PROC ; ATL::Checked::wmemcpy_s, COMDAT
; 77 : {
$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 48 83 ec 28 sub rsp, 40 ; 00000028H
; 78 : ATLMFC_CRT_ERRORCHECK(::wmemcpy_s(_S1, _N1, _S2, _N));
00018 4c 8b 4c 24 48 mov r9, QWORD PTR _N$[rsp]
0001d 4c 8b 44 24 40 mov r8, QWORD PTR _S2$[rsp]
00022 48 8b 54 24 38 mov rdx, QWORD PTR _N1$[rsp]
00027 48 8b 4c 24 30 mov rcx, QWORD PTR _S1$[rsp]
0002c e8 00 00 00 00 call wmemcpy_s
00031 8b c8 mov ecx, eax
00033 e8 00 00 00 00 call ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
; 79 : }
00038 48 83 c4 28 add rsp, 40 ; 00000028H
0003c c3 ret 0
?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ENDP ; ATL::Checked::wmemcpy_s
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlexcept.h
; COMDAT ?AtlThrowImpl@ATL@@YAXJ@Z
_TEXT SEGMENT
hr$ = 48
?AtlThrowImpl@ATL@@YAXJ@Z PROC ; ATL::AtlThrowImpl, COMDAT
; 65 : {
$LN5:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 48 83 ec 28 sub rsp, 40 ; 00000028H
; 66 : ATLTRACE(atlTraceException, 0, _T("AtlThrow: hr = 0x%x\n"), hr );
; 67 : #ifdef _AFX
; 68 : if( hr == E_OUTOFMEMORY )
00008 81 7c 24 30 0e
00 07 80 cmp DWORD PTR hr$[rsp], -2147024882 ; ffffffff8007000eH
00010 75 07 jne SHORT $LN2@AtlThrowIm
; 69 : {
; 70 : AfxThrowMemoryException();
00012 e8 00 00 00 00 call ?AfxThrowMemoryException@@YAXXZ ; AfxThrowMemoryException
; 71 : }
00017 eb 09 jmp SHORT $LN3@AtlThrowIm
$LN2@AtlThrowIm:
; 72 : else
; 73 : {
; 74 : AfxThrowOleException( hr );
00019 8b 4c 24 30 mov ecx, DWORD PTR hr$[rsp]
0001d e8 00 00 00 00 call ?AfxThrowOleException@@YAXJ@Z ; AfxThrowOleException
$LN3@AtlThrowIm:
$LN4@AtlThrowIm:
; 75 : }
; 76 : #else
; 77 : throw CAtlException( hr );
; 78 : #endif
; 79 : };
00022 48 83 c4 28 add rsp, 40 ; 00000028H
00026 c3 ret 0
?AtlThrowImpl@ATL@@YAXJ@Z ENDP ; ATL::AtlThrowImpl
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.h
; COMDAT ?AfxCrtErrorCheck@@YAHH@Z
_TEXT SEGMENT
tv64 = 32
error$ = 64
?AfxCrtErrorCheck@@YAHH@Z PROC ; AfxCrtErrorCheck, COMDAT
; 506 : {
$LN11:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 48 83 ec 38 sub rsp, 56 ; 00000038H
; 507 : switch(error)
00008 8b 44 24 40 mov eax, DWORD PTR error$[rsp]
0000c 89 44 24 20 mov DWORD PTR tv64[rsp], eax
00010 83 7c 24 20 00 cmp DWORD PTR tv64[rsp], 0
00015 74 2c je SHORT $LN8@AfxCrtErro
00017 83 7c 24 20 0c cmp DWORD PTR tv64[rsp], 12
0001c 74 17 je SHORT $LN4@AfxCrtErro
0001e 83 7c 24 20 16 cmp DWORD PTR tv64[rsp], 22
00023 74 17 je SHORT $LN5@AfxCrtErro
00025 83 7c 24 20 22 cmp DWORD PTR tv64[rsp], 34 ; 00000022H
0002a 74 10 je SHORT $LN6@AfxCrtErro
0002c 83 7c 24 20 50 cmp DWORD PTR tv64[rsp], 80 ; 00000050H
00031 74 10 je SHORT $LN7@AfxCrtErro
00033 eb 10 jmp SHORT $LN9@AfxCrtErro
$LN4@AfxCrtErro:
; 508 : {
; 509 : case ENOMEM:
; 510 : AfxThrowMemoryException();
00035 e8 00 00 00 00 call ?AfxThrowMemoryException@@YAXXZ ; AfxThrowMemoryException
; 511 : break;
0003a eb 0e jmp SHORT $LN2@AfxCrtErro
$LN5@AfxCrtErro:
$LN6@AfxCrtErro:
; 512 : case EINVAL:
; 513 : case ERANGE:
; 514 : AfxThrowInvalidArgException();
0003c e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException
; 515 : break;
00041 eb 07 jmp SHORT $LN2@AfxCrtErro
$LN7@AfxCrtErro:
$LN8@AfxCrtErro:
; 516 : case STRUNCATE:
; 517 : case 0:
; 518 : break;
00043 eb 05 jmp SHORT $LN2@AfxCrtErro
$LN9@AfxCrtErro:
; 519 : default:
; 520 : AfxThrowInvalidArgException();
00045 e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException
$LN2@AfxCrtErro:
; 521 : break;
; 522 : }
; 523 : return error;
0004a 8b 44 24 40 mov eax, DWORD PTR error$[rsp]
$LN10@AfxCrtErro:
; 524 : }
0004e 48 83 c4 38 add rsp, 56 ; 00000038H
00052 c3 ret 0
?AfxCrtErrorCheck@@YAHH@Z ENDP ; AfxCrtErrorCheck
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h
; COMDAT memmove_s
_TEXT SEGMENT
tv66 = 32
tv70 = 36
tv74 = 40
_Expr_val$1 = 44
_Expr_val$2 = 48
_Expr_val$3 = 52
_Destination$ = 80
_DestinationSize$ = 88
_Source$ = 96
_SourceSize$ = 104
memmove_s PROC ; COMDAT
; 73 : {
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 48 83 ec 48 sub rsp, 72 ; 00000048H
; 74 : if (_SourceSize == 0)
00018 48 83 7c 24 68
00 cmp QWORD PTR _SourceSize$[rsp], 0
0001e 75 07 jne SHORT $LN2@memmove_s
; 75 : {
; 76 : return 0;
00020 33 c0 xor eax, eax
00022 e9 dd 00 00 00 jmp $LN1@memmove_s
$LN2@memmove_s:
; 77 : }
; 78 :
; 79 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
00027 48 83 7c 24 50
00 cmp QWORD PTR _Destination$[rsp], 0
0002d 74 0a je SHORT $LN7@memmove_s
0002f c7 44 24 20 01
00 00 00 mov DWORD PTR tv66[rsp], 1
00037 eb 08 jmp SHORT $LN8@memmove_s
$LN7@memmove_s:
00039 c7 44 24 20 00
00 00 00 mov DWORD PTR tv66[rsp], 0
$LN8@memmove_s:
00041 8b 44 24 20 mov eax, DWORD PTR tv66[rsp]
00045 89 44 24 2c mov DWORD PTR _Expr_val$1[rsp], eax
00049 83 7c 24 2c 00 cmp DWORD PTR _Expr_val$1[rsp], 0
0004e 75 1a jne SHORT $LN3@memmove_s
00050 e8 00 00 00 00 call _errno
00055 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
0005b e8 00 00 00 00 call _invalid_parameter_noinfo
00060 b8 16 00 00 00 mov eax, 22
00065 e9 9a 00 00 00 jmp $LN1@memmove_s
$LN3@memmove_s:
; 80 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
0006a 48 83 7c 24 60
00 cmp QWORD PTR _Source$[rsp], 0
00070 74 0a je SHORT $LN9@memmove_s
00072 c7 44 24 24 01
00 00 00 mov DWORD PTR tv70[rsp], 1
0007a eb 08 jmp SHORT $LN10@memmove_s
$LN9@memmove_s:
0007c c7 44 24 24 00
00 00 00 mov DWORD PTR tv70[rsp], 0
$LN10@memmove_s:
00084 8b 44 24 24 mov eax, DWORD PTR tv70[rsp]
00088 89 44 24 30 mov DWORD PTR _Expr_val$2[rsp], eax
0008c 83 7c 24 30 00 cmp DWORD PTR _Expr_val$2[rsp], 0
00091 75 17 jne SHORT $LN4@memmove_s
00093 e8 00 00 00 00 call _errno
00098 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
0009e e8 00 00 00 00 call _invalid_parameter_noinfo
000a3 b8 16 00 00 00 mov eax, 22
000a8 eb 5a jmp SHORT $LN1@memmove_s
$LN4@memmove_s:
; 81 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
000aa 48 8b 44 24 68 mov rax, QWORD PTR _SourceSize$[rsp]
000af 48 39 44 24 58 cmp QWORD PTR _DestinationSize$[rsp], rax
000b4 72 0a jb SHORT $LN11@memmove_s
000b6 c7 44 24 28 01
00 00 00 mov DWORD PTR tv74[rsp], 1
000be eb 08 jmp SHORT $LN12@memmove_s
$LN11@memmove_s:
000c0 c7 44 24 28 00
00 00 00 mov DWORD PTR tv74[rsp], 0
$LN12@memmove_s:
000c8 8b 44 24 28 mov eax, DWORD PTR tv74[rsp]
000cc 89 44 24 34 mov DWORD PTR _Expr_val$3[rsp], eax
000d0 83 7c 24 34 00 cmp DWORD PTR _Expr_val$3[rsp], 0
000d5 75 17 jne SHORT $LN5@memmove_s
000d7 e8 00 00 00 00 call _errno
000dc c7 00 22 00 00
00 mov DWORD PTR [rax], 34 ; 00000022H
000e2 e8 00 00 00 00 call _invalid_parameter_noinfo
000e7 b8 22 00 00 00 mov eax, 34 ; 00000022H
000ec eb 16 jmp SHORT $LN1@memmove_s
$LN5@memmove_s:
; 82 :
; 83 : memmove(_Destination, _Source, _SourceSize);
000ee 4c 8b 44 24 68 mov r8, QWORD PTR _SourceSize$[rsp]
000f3 48 8b 54 24 60 mov rdx, QWORD PTR _Source$[rsp]
000f8 48 8b 4c 24 50 mov rcx, QWORD PTR _Destination$[rsp]
000fd e8 00 00 00 00 call memmove
; 84 : return 0;
00102 33 c0 xor eax, eax
$LN1@memmove_s:
; 85 : }
00104 48 83 c4 48 add rsp, 72 ; 00000048H
00108 c3 ret 0
memmove_s ENDP
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h
; COMDAT memcpy_s
_TEXT SEGMENT
tv66 = 32
tv75 = 36
tv79 = 40
_Expr_val$1 = 44
_Expr_val$2 = 48
_Expr_val$3 = 52
_Destination$ = 80
_DestinationSize$ = 88
_Source$ = 96
_SourceSize$ = 104
memcpy_s PROC ; COMDAT
; 45 : {
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 48 83 ec 48 sub rsp, 72 ; 00000048H
; 46 : if (_SourceSize == 0)
00018 48 83 7c 24 68
00 cmp QWORD PTR _SourceSize$[rsp], 0
0001e 75 07 jne SHORT $LN2@memcpy_s
; 47 : {
; 48 : return 0;
00020 33 c0 xor eax, eax
00022 e9 0d 01 00 00 jmp $LN1@memcpy_s
$LN2@memcpy_s:
; 49 : }
; 50 :
; 51 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
00027 48 83 7c 24 50
00 cmp QWORD PTR _Destination$[rsp], 0
0002d 74 0a je SHORT $LN9@memcpy_s
0002f c7 44 24 20 01
00 00 00 mov DWORD PTR tv66[rsp], 1
00037 eb 08 jmp SHORT $LN10@memcpy_s
$LN9@memcpy_s:
00039 c7 44 24 20 00
00 00 00 mov DWORD PTR tv66[rsp], 0
$LN10@memcpy_s:
00041 8b 44 24 20 mov eax, DWORD PTR tv66[rsp]
00045 89 44 24 2c mov DWORD PTR _Expr_val$1[rsp], eax
00049 83 7c 24 2c 00 cmp DWORD PTR _Expr_val$1[rsp], 0
0004e 75 1a jne SHORT $LN3@memcpy_s
00050 e8 00 00 00 00 call _errno
00055 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
0005b e8 00 00 00 00 call _invalid_parameter_noinfo
00060 b8 16 00 00 00 mov eax, 22
00065 e9 ca 00 00 00 jmp $LN1@memcpy_s
$LN3@memcpy_s:
; 52 : if (_Source == NULL || _DestinationSize < _SourceSize)
0006a 48 83 7c 24 60
00 cmp QWORD PTR _Source$[rsp], 0
00070 74 10 je SHORT $LN5@memcpy_s
00072 48 8b 44 24 68 mov rax, QWORD PTR _SourceSize$[rsp]
00077 48 39 44 24 58 cmp QWORD PTR _DestinationSize$[rsp], rax
0007c 0f 83 9c 00 00
00 jae $LN4@memcpy_s
$LN5@memcpy_s:
; 53 : {
; 54 : memset(_Destination, 0, _DestinationSize);
00082 4c 8b 44 24 58 mov r8, QWORD PTR _DestinationSize$[rsp]
00087 33 d2 xor edx, edx
00089 48 8b 4c 24 50 mov rcx, QWORD PTR _Destination$[rsp]
0008e e8 00 00 00 00 call memset
; 55 :
; 56 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
00093 48 83 7c 24 60
00 cmp QWORD PTR _Source$[rsp], 0
00099 74 0a je SHORT $LN11@memcpy_s
0009b c7 44 24 24 01
00 00 00 mov DWORD PTR tv75[rsp], 1
000a3 eb 08 jmp SHORT $LN12@memcpy_s
$LN11@memcpy_s:
000a5 c7 44 24 24 00
00 00 00 mov DWORD PTR tv75[rsp], 0
$LN12@memcpy_s:
000ad 8b 44 24 24 mov eax, DWORD PTR tv75[rsp]
000b1 89 44 24 30 mov DWORD PTR _Expr_val$2[rsp], eax
000b5 83 7c 24 30 00 cmp DWORD PTR _Expr_val$2[rsp], 0
000ba 75 17 jne SHORT $LN6@memcpy_s
000bc e8 00 00 00 00 call _errno
000c1 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
000c7 e8 00 00 00 00 call _invalid_parameter_noinfo
000cc b8 16 00 00 00 mov eax, 22
000d1 eb 61 jmp SHORT $LN1@memcpy_s
$LN6@memcpy_s:
; 57 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
000d3 48 8b 44 24 68 mov rax, QWORD PTR _SourceSize$[rsp]
000d8 48 39 44 24 58 cmp QWORD PTR _DestinationSize$[rsp], rax
000dd 72 0a jb SHORT $LN13@memcpy_s
000df c7 44 24 28 01
00 00 00 mov DWORD PTR tv79[rsp], 1
000e7 eb 08 jmp SHORT $LN14@memcpy_s
$LN13@memcpy_s:
000e9 c7 44 24 28 00
00 00 00 mov DWORD PTR tv79[rsp], 0
$LN14@memcpy_s:
000f1 8b 44 24 28 mov eax, DWORD PTR tv79[rsp]
000f5 89 44 24 34 mov DWORD PTR _Expr_val$3[rsp], eax
000f9 83 7c 24 34 00 cmp DWORD PTR _Expr_val$3[rsp], 0
000fe 75 17 jne SHORT $LN7@memcpy_s
00100 e8 00 00 00 00 call _errno
00105 c7 00 22 00 00
00 mov DWORD PTR [rax], 34 ; 00000022H
0010b e8 00 00 00 00 call _invalid_parameter_noinfo
00110 b8 22 00 00 00 mov eax, 34 ; 00000022H
00115 eb 1d jmp SHORT $LN1@memcpy_s
$LN7@memcpy_s:
; 58 :
; 59 : // Unreachable, but required to suppress /analyze warnings:
; 60 : return EINVAL;
00117 b8 16 00 00 00 mov eax, 22
0011c eb 16 jmp SHORT $LN1@memcpy_s
$LN4@memcpy_s:
; 61 : }
; 62 : memcpy(_Destination, _Source, _SourceSize);
0011e 4c 8b 44 24 68 mov r8, QWORD PTR _SourceSize$[rsp]
00123 48 8b 54 24 60 mov rdx, QWORD PTR _Source$[rsp]
00128 48 8b 4c 24 50 mov rcx, QWORD PTR _Destination$[rsp]
0012d e8 00 00 00 00 call memcpy
; 63 : return 0;
00132 33 c0 xor eax, eax
$LN1@memcpy_s:
; 64 : }
00134 48 83 c4 48 add rsp, 72 ; 00000048H
00138 c3 ret 0
memcpy_s ENDP
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h
; COMDAT sprintf
_TEXT SEGMENT
_Result$ = 32
_ArgList$ = 40
_Buffer$ = 64
_Format$ = 72
sprintf PROC ; COMDAT
; 1771 : {
$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 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000f 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00014 48 83 ec 38 sub rsp, 56 ; 00000038H
; 1772 : int _Result;
; 1773 : va_list _ArgList;
; 1774 : __crt_va_start(_ArgList, _Format);
00018 48 8d 44 24 50 lea rax, QWORD PTR _Format$[rsp+8]
0001d 48 89 44 24 28 mov QWORD PTR _ArgList$[rsp], rax
; 1775 :
; 1776 : _Result = _vsprintf_l(_Buffer, _Format, NULL, _ArgList);
00022 4c 8b 4c 24 28 mov r9, QWORD PTR _ArgList$[rsp]
00027 45 33 c0 xor r8d, r8d
0002a 48 8b 54 24 48 mov rdx, QWORD PTR _Format$[rsp]
0002f 48 8b 4c 24 40 mov rcx, QWORD PTR _Buffer$[rsp]
00034 e8 00 00 00 00 call _vsprintf_l
00039 89 44 24 20 mov DWORD PTR _Result$[rsp], eax
; 1777 :
; 1778 : __crt_va_end(_ArgList);
0003d 48 c7 44 24 28
00 00 00 00 mov QWORD PTR _ArgList$[rsp], 0
; 1779 : return _Result;
00046 8b 44 24 20 mov eax, DWORD PTR _Result$[rsp]
; 1780 : }
0004a 48 83 c4 38 add rsp, 56 ; 00000038H
0004e c3 ret 0
sprintf ENDP
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h
; COMDAT _vsprintf_l
_TEXT SEGMENT
_Buffer$ = 64
_Format$ = 72
_Locale$ = 80
_ArgList$ = 88
_vsprintf_l PROC ; COMDAT
; 1458 : {
$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 48 83 ec 38 sub rsp, 56 ; 00000038H
; 1459 : return _vsnprintf_l(_Buffer, (size_t)-1, _Format, _Locale, _ArgList);
00018 48 8b 44 24 58 mov rax, QWORD PTR _ArgList$[rsp]
0001d 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
00022 4c 8b 4c 24 50 mov r9, QWORD PTR _Locale$[rsp]
00027 4c 8b 44 24 48 mov r8, QWORD PTR _Format$[rsp]
0002c 48 c7 c2 ff ff
ff ff mov rdx, -1
00033 48 8b 4c 24 40 mov rcx, QWORD PTR _Buffer$[rsp]
00038 e8 00 00 00 00 call _vsnprintf_l
; 1460 : }
0003d 48 83 c4 38 add rsp, 56 ; 00000038H
00041 c3 ret 0
_vsprintf_l ENDP
_TEXT ENDS
; Function compile flags: /Odtp
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h
; COMDAT _vsnprintf_l
_TEXT SEGMENT
_Result$ = 48
tv74 = 52
_Buffer$ = 80
_BufferCount$ = 88
_Format$ = 96
_Locale$ = 104
_ArgList$ = 112
_vsnprintf_l PROC ; COMDAT
; 1391 : {
$LN5:
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 48 83 ec 48 sub rsp, 72 ; 00000048H
; 1392 : int const _Result = __stdio_common_vsprintf(
00018 e8 00 00 00 00 call __local_stdio_printf_options
0001d 48 8b 00 mov rax, QWORD PTR [rax]
00020 48 83 c8 01 or rax, 1
00024 48 8b 4c 24 70 mov rcx, QWORD PTR _ArgList$[rsp]
00029 48 89 4c 24 28 mov QWORD PTR [rsp+40], rcx
0002e 48 8b 4c 24 68 mov rcx, QWORD PTR _Locale$[rsp]
00033 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx
00038 4c 8b 4c 24 60 mov r9, QWORD PTR _Format$[rsp]
0003d 4c 8b 44 24 58 mov r8, QWORD PTR _BufferCount$[rsp]
00042 48 8b 54 24 50 mov rdx, QWORD PTR _Buffer$[rsp]
00047 48 8b c8 mov rcx, rax
0004a e8 00 00 00 00 call __stdio_common_vsprintf
0004f 89 44 24 30 mov DWORD PTR _Result$[rsp], eax
; 1393 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION,
; 1394 : _Buffer, _BufferCount, _Format, _Locale, _ArgList);
; 1395 :
; 1396 : return _Result < 0 ? -1 : _Result;
00053 83 7c 24 30 00 cmp DWORD PTR _Result$[rsp], 0
00058 7d 0a jge SHORT $LN3@vsnprintf_
0005a c7 44 24 34 ff
ff ff ff mov DWORD PTR tv74[rsp], -1
00062 eb 08 jmp SHORT $LN4@vsnprintf_
$LN3@vsnprintf_:
00064 8b 44 24 30 mov eax, DWORD PTR _Result$[rsp]
00068 89 44 24 34 mov DWORD PTR tv74[rsp], eax
$LN4@vsnprintf_:
0006c 8b 44 24 34 mov eax, DWORD PTR tv74[rsp]
; 1397 : }
00070 48 83 c4 48 add rsp, 72 ; 00000048H
00074 c3 ret 0
_vsnprintf_l ENDP
_TEXT ENDS
; Function compile flags: /Odtp
; 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
; 91 : static unsigned __int64 _OptionsStorage;
; 92 : return &_OptionsStorage;
00000 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 : }
00007 c3 ret 0
__local_stdio_printf_options ENDP
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z
_TEXT SEGMENT
__formal$ = 8
__formal$ = 16
__formal$ = 24
?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
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 c3 ret 0
?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z
_TEXT SEGMENT
__formal$ = 8
__formal$ = 16
?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
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 c3 ret 0
?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?__empty_global_delete@@YAXPEAX_K@Z
_TEXT SEGMENT
__formal$ = 8
__formal$ = 16
?__empty_global_delete@@YAXPEAX_K@Z PROC ; __empty_global_delete, COMDAT
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 c3 ret 0
?__empty_global_delete@@YAXPEAX_K@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp
; File D:\Works\Corpsms_2010\public\des\Des.cpp
; COMDAT ?__empty_global_delete@@YAXPEAX@Z
_TEXT SEGMENT
__formal$ = 8
?__empty_global_delete@@YAXPEAX@Z PROC ; __empty_global_delete, COMDAT
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 c3 ret 0
?__empty_global_delete@@YAXPEAX@Z ENDP ; __empty_global_delete
_TEXT ENDS
END