SmsCenter/Release_Unicode/SPThread.cod
2025-01-03 16:47:25 +08:00

11059 lines
387 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

; Listing generated by Microsoft (R) Optimizing Compiler Version 19.34.31933.0
TITLE D:\Works\Corpsms_2010\SmsCenter\Release_Unicode\SPThread.obj
.686P
.XMM
include listing.inc
.model flat
INCLUDELIB LIBCMT
INCLUDELIB OLDNAMES
PUBLIC ?On_SPDZ@CSPThread@@QAEXIJ@Z ; CSPThread::On_SPDZ
EXTRN ?GetThisMessageMap@CCmdTarget@@KGPBUAFX_MSGMAP@@XZ:PROC ; CCmdTarget::GetThisMessageMap
CONST SEGMENT
?_messageEntries@?1??GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ@4QBUAFX_MSGMAP_ENTRY@@B DD 05aeH ; `CSPThread::GetThisMessageMap'::`2'::_messageEntries
DD 00H
DD 00H
DD 00H
DD 01fH
DD FLAT:?On_SPDZ@CSPThread@@QAEXIJ@Z
DD 00H
DD 00H
DD 00H
DD 00H
DD 00H
DD 00H
?messageMap@?1??GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ@4U3@B DD FLAT:?GetThisMessageMap@CCmdTarget@@KGPBUAFX_MSGMAP@@XZ ; `CSPThread::GetThisMessageMap'::`2'::messageMap
DD FLAT:?_messageEntries@?1??GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ@4QBUAFX_MSGMAP_ENTRY@@B
CONST ENDS
PUBLIC ?__empty_global_delete@@YAXPAX@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPAXI@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z ; __empty_global_delete
PUBLIC ___local_stdio_printf_options
PUBLIC ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
PUBLIC ??2CObject@@SGPAXI@Z ; CObject::operator new
PUBLIC ??3CObject@@SGXPAX@Z ; CObject::operator delete
PUBLIC ?Serialize@CObject@@UAEXAAVCArchive@@@Z ; CObject::Serialize
PUBLIC ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
PUBLIC ?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z ; ATL::Checked::wmemcpy_s
PUBLIC ?AtlStrLen@ATL@@YAHPB_W@Z ; ATL::AtlStrLen
PUBLIC ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
PUBLIC ?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
PUBLIC ?AtlConvertSystemTimeToVariantTime@ATL@@YAHABU_SYSTEMTIME@@PAN@Z ; ATL::AtlConvertSystemTimeToVariantTime
PUBLIC ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
PUBLIC ?IsLocked@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsLocked
PUBLIC ?IsShared@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsShared
PUBLIC ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
PUBLIC ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z ; ATL::ChTraitsCRT<wchar_t>::GetFormattedLength
PUBLIC ?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z ; ATL::ChTraitsCRT<wchar_t>::Format
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
PUBLIC ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
PUBLIC ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
PUBLIC ??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
PUBLIC ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
PUBLIC ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
PUBLIC ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
PUBLIC ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
PUBLIC ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
PUBLIC ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QBEPAUIAtlStringMgr@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetManager
PUBLIC ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
PUBLIC ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
PUBLIC ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
PUBLIC ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_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@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
PUBLIC ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
PUBLIC ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
PUBLIC ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
PUBLIC ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
PUBLIC ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
PUBLIC ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@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@@QAE@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@@QAEAAV01@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
PUBLIC ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QBEPAUIAtlStringMgr@2@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::GetManager
PUBLIC ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
PUBLIC ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::FormatV
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
PUBLIC ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
PUBLIC ??0CTime@ATL@@QAE@_J@Z ; ATL::CTime::CTime
PUBLIC ?GetLocalTm@CTime@ATL@@QBEPAUtm@@PAU3@@Z ; ATL::CTime::GetLocalTm
PUBLIC ?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::CTime::GetAsSystemTime
PUBLIC ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
PUBLIC ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
PUBLIC ?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ ; ATL::COleDateTime::GetTickCount
PUBLIC ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
PUBLIC ??0COleDateTime@ATL@@QAE@_J@Z ; ATL::COleDateTime::COleDateTime
PUBLIC ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
PUBLIC ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
PUBLIC ?GetYear@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetYear
PUBLIC ?GetMonth@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMonth
PUBLIC ?GetDay@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetDay
PUBLIC ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
PUBLIC ?GetMinute@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMinute
PUBLIC ?GetSecond@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetSecond
PUBLIC ?GetDayOfWeek@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetDayOfWeek
PUBLIC ??4COleDateTime@ATL@@QAEAAV01@AB_J@Z ; ATL::COleDateTime::operator=
PUBLIC ??8COleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator==
PUBLIC ??MCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator<
PUBLIC ??OCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator>
PUBLIC ?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z ; ATL::COleDateTime::SetDateTime
PUBLIC ?DoubleFromDate@COleDateTime@ATL@@KGNN@Z ; ATL::COleDateTime::DoubleFromDate
PUBLIC ?ConvertSystemTimeToVariantTime@COleDateTime@ATL@@IAEHABU_SYSTEMTIME@@@Z ; ATL::COleDateTime::ConvertSystemTimeToVariantTime
PUBLIC ??0_variant_t@@QAE@JG@Z ; _variant_t::_variant_t
PUBLIC ??1_variant_t@@QAE@XZ ; _variant_t::~_variant_t
PUBLIC ?GetRuntimeClass@CSPThread@@UBEPAUCRuntimeClass@@XZ ; CSPThread::GetRuntimeClass
PUBLIC ?CreateObject@CSPThread@@SGPAVCObject@@XZ ; CSPThread::CreateObject
PUBLIC ??0CSPThread@@QAE@XZ ; CSPThread::CSPThread
PUBLIC ??1CSPThread@@UAE@XZ ; CSPThread::~CSPThread
PUBLIC ?GetBBMonDay@CSPThread@@SAHVCOleDateTime@ATL@@AAH1@Z ; CSPThread::GetBBMonDay
PUBLIC ?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z ; CSPThread::SetParam
PUBLIC ?InitInstance@CSPThread@@UAEHXZ ; CSPThread::InitInstance
PUBLIC ?ExitInstance@CSPThread@@UAEHXZ ; CSPThread::ExitInstance
PUBLIC ?GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ ; CSPThread::GetThisMessageMap
PUBLIC ?GetMessageMap@CSPThread@@MBEPBUAFX_MSGMAP@@XZ ; CSPThread::GetMessageMap
PUBLIC ??_GCSPThread@@UAEPAXI@Z ; CSPThread::`scalar deleting destructor'
PUBLIC ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage
PUBLIC ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@ ; `string'
PUBLIC ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@ ; `string'
PUBLIC ??_C@_13JKNELIBG@?$AAT@ ; `string'
PUBLIC ??_R0?AVCObject@@@8 ; CObject `RTTI Type Descriptor'
PUBLIC ??_R3CObject@@8 ; CObject::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2CObject@@8 ; CObject::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@CObject@@8 ; CObject::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC ??_R1A@?0A@EA@CCmdTarget@@8 ; CCmdTarget::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC ??_R0?AVCCmdTarget@@@8 ; CCmdTarget `RTTI Type Descriptor'
PUBLIC ??_R3CCmdTarget@@8 ; CCmdTarget::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2CCmdTarget@@8 ; CCmdTarget::`RTTI Base Class Array'
PUBLIC ?classCSPThread@CSPThread@@2UCRuntimeClass@@B ; CSPThread::classCSPThread
PUBLIC ??_7CSPThread@@6B@ ; CSPThread::`vftable'
PUBLIC ??_C@_09IDFCFOOG@CSPThread@ ; `string'
PUBLIC ??_C@_1BA@IIDKJHG@?$AAc?$AAo?$AAr?$AAp?$AAs?$AAm?$AAs@ ; `string'
PUBLIC ?__LINE__Var@?0??On_SPDZ@CSPThread@@QAEXIJ@Z@4JA ; `CSPThread::On_SPDZ'::`1'::__LINE__Var
PUBLIC ??_C@_1MM@BAAGAMJB@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAd?$AAz?$AA?4?$AA?$CK?$AA?0?$AAu?$AAs?$AAe@ ; `string'
PUBLIC ??_C@_1O@CLJHPHJA@?$AAC?$AAo?$AAr?$AAp?$AAI?$AAD@ ; `string'
PUBLIC ??_C@_1O@DLKCLNNL@?$AAU?$AAs?$AAe?$AAr?$AAI?$AAD@ ; `string'
PUBLIC ??_C@_1BA@LMMOGBEM@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd@ ; `string'
PUBLIC ??_C@_1O@KGJGNKBM@?$AAA?$AAd?$AAd?$AAC?$AAm?$AAd@ ; `string'
PUBLIC ??_C@_1O@OLLJFFCG@?$AAM?$AAo?$AAb?$AAi?$AAl?$AAe@ ; `string'
PUBLIC ??_C@_19HDODELJD@?$AAD?$AAZ?$AAI?$AAD@ ; `string'
PUBLIC ??_C@_1BE@DDFINHDL@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd?$AAI?$AAD@ ; `string'
PUBLIC ??_C@_1BC@DIGKBDEI@?$AAS?$AAe?$AAn?$AAd?$AAL?$AAa?$AAs?$AAt@ ; `string'
PUBLIC ??_C@_1BC@KMMELMEH@?$AAB?$AAi?$AAr?$AAt?$AAh?$AAd?$AAa?$AAy@ ; `string'
PUBLIC ??_C@_1FO@EEKDKMAK@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAd?$AAz?$AA?5?$AAs?$AAe?$AAt?$AA?5?$AAS@ ; `string'
PUBLIC ??_C@_15PCKCLKH@?$AAS?$AAP@ ; `string'
PUBLIC ??_C@_1FC@CKBOBDNO@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAO@ ; `string'
PUBLIC ??_C@_1BI@FLJFLJON@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA1@ ; `string'
PUBLIC ??_C@_1BI@EJCABGAD@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA2@ ; `string'
PUBLIC ??_C@_1BI@PBJMHBGG@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA3@ ; `string'
PUBLIC ??_C@_1M@HNBPHGM@?$AAP?$AAr?$AAi?$AAc?$AAe@ ; `string'
PUBLIC ??_C@_1O@CIMGHIFA@?$AAi?$AAs?$AAW?$AAe?$AAe?$AAk@ ; `string'
PUBLIC ??_C@_1BA@MPCEHOJO@?$AAW?$AAe?$AAe?$AAk?$AAD?$AAa?$AAy@ ; `string'
PUBLIC ??_C@_15LKJGBLKM@?$AAX?$AAD@ ; `string'
PUBLIC ??_C@_1KG@EFKDDHOK@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAD@ ; `string'
PUBLIC ??_C@_17DACEHHP@?$AAM?$AAs?$AAg@ ; `string'
PUBLIC ??_C@_1MA@BHMFJEAA@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@ ; `string'
PUBLIC ??_C@_1KE@BJIAFIDP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@ ; `string'
PUBLIC ??_C@_15HMPEDBNI@?$AAH?$AAL@ ; `string'
PUBLIC ??_C@_1BO@ICAHPMKB@?$AA?$CF?$AA0?$AA4?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd@ ; `string'
PUBLIC ??_C@_1KG@NHFKCCLP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@ ; `string'
PUBLIC ??_C@_1BE@MMJOHFKE@?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AAI?$AAD@ ; `string'
PUBLIC ??_C@_1FO@HKHFCEJC@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AA?5@ ; `string'
PUBLIC ??_C@_07MPEIFHDG@On_SPDZ@ ; `string'
PUBLIC ??_C@_0CN@HDLHKOEL@D?3?2Works?2Corpsms_2010?2SmsCenter@ ; `string'
PUBLIC ??_R4CSPThread@@6B@ ; CSPThread::`RTTI Complete Object Locator'
PUBLIC ??_R0?AVCSPThread@@@8 ; CSPThread `RTTI Type Descriptor'
PUBLIC ??_R3CSPThread@@8 ; CSPThread::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2CSPThread@@8 ; CSPThread::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@CSPThread@@8 ; CSPThread::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC ??_R1A@?0A@EA@CWinThread@@8 ; CWinThread::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC ??_R0?AVCWinThread@@@8 ; CWinThread `RTTI Type Descriptor'
PUBLIC ??_R3CWinThread@@8 ; CWinThread::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2CWinThread@@8 ; CWinThread::`RTTI Base Class Array'
PUBLIC __real@3ed845c8a0ce5129
PUBLIC __real@bed845c8a0ce5129
EXTRN ??2@YAPAXI@Z:PROC ; operator new
EXTRN ??3@YAXPAX@Z:PROC ; operator delete
EXTRN ?__global_delete@@YAXPAXI@Z:PROC ; __global_delete
EXTRN __invalid_parameter_noinfo:PROC
EXTRN __errno:PROC
EXTRN _ceil:PROC
EXTRN ___stdio_common_vswprintf:PROC
EXTRN ___stdio_common_vswprintf_s:PROC
EXTRN _memcpy:PROC
EXTRN _memmove:PROC
EXTRN _memset:PROC
EXTRN _wcscmp:PROC
EXTRN _wcscpy:PROC
EXTRN _wcslen:PROC
EXTRN _wmemcpy_s:PROC
EXTRN __localtime64_s:PROC
EXTRN __time64:PROC
EXTRN __imp__Sleep@4:PROC
EXTRN __imp__GetLocalTime@4:PROC
EXTRN __imp__LoadResource@8:PROC
EXTRN __imp__LockResource@4:PROC
EXTRN __imp__SizeofResource@8:PROC
EXTRN __imp__FindResourceW@12:PROC
EXTRN ?AfxThrowMemoryException@@YGXXZ:PROC ; AfxThrowMemoryException
EXTRN ?AfxThrowInvalidArgException@@YGXXZ:PROC ; AfxThrowInvalidArgException
EXTRN ?AfxThrowOleException@@YGXJ@Z:PROC ; AfxThrowOleException
EXTRN ?AfxFindStringResourceHandle@@YGPAUHINSTANCE__@@I@Z:PROC ; AfxFindStringResourceHandle
EXTRN __imp__CoUninitialize@0:PROC
EXTRN __imp__CoInitializeEx@8:PROC
EXTRN __imp__SystemTimeToVariantTime@8:PROC
EXTRN __imp__VariantTimeToSystemTime@12:PROC
EXTRN __imp__VariantClear@4:PROC
EXTRN ?AfxGetStringManager@@YGPAUIAtlStringMgr@ATL@@XZ:PROC ; AfxGetStringManager
EXTRN ?OnCmdMsg@CCmdTarget@@UAEHIHPAXPAUAFX_CMDHANDLERINFO@@@Z:PROC ; CCmdTarget::OnCmdMsg
EXTRN ?OnFinalRelease@CCmdTarget@@UAEXXZ:PROC ; CCmdTarget::OnFinalRelease
EXTRN ?IsInvokeAllowed@CCmdTarget@@UAEHJ@Z:PROC ; CCmdTarget::IsInvokeAllowed
EXTRN ?GetDispatchIID@CCmdTarget@@UAEHPAU_GUID@@@Z:PROC ; CCmdTarget::GetDispatchIID
EXTRN ?GetTypeInfoCount@CCmdTarget@@UAEIXZ:PROC ; CCmdTarget::GetTypeInfoCount
EXTRN ?GetTypeLibCache@CCmdTarget@@UAEPAVCTypeLibCache@@XZ:PROC ; CCmdTarget::GetTypeLibCache
EXTRN ?GetTypeLib@CCmdTarget@@UAEJKPAPAUITypeLib@@@Z:PROC ; CCmdTarget::GetTypeLib
EXTRN ?GetCommandMap@CCmdTarget@@MBEPBUAFX_OLECMDMAP@@XZ:PROC ; CCmdTarget::GetCommandMap
EXTRN ?GetDispatchMap@CCmdTarget@@MBEPBUAFX_DISPMAP@@XZ:PROC ; CCmdTarget::GetDispatchMap
EXTRN ?GetConnectionMap@CCmdTarget@@MBEPBUAFX_CONNECTIONMAP@@XZ:PROC ; CCmdTarget::GetConnectionMap
EXTRN ?GetInterfaceMap@CCmdTarget@@MBEPBUAFX_INTERFACEMAP@@XZ:PROC ; CCmdTarget::GetInterfaceMap
EXTRN ?GetEventSinkMap@CCmdTarget@@MBEPBUAFX_EVENTSINKMAP@@XZ:PROC ; CCmdTarget::GetEventSinkMap
EXTRN ?OnCreateAggregates@CCmdTarget@@UAEHXZ:PROC ; CCmdTarget::OnCreateAggregates
EXTRN ?GetInterfaceHook@CCmdTarget@@UAEPAUIUnknown@@PBX@Z:PROC ; CCmdTarget::GetInterfaceHook
EXTRN ?GetExtraConnectionPoints@CCmdTarget@@MAEHPAVCPtrArray@@@Z:PROC ; CCmdTarget::GetExtraConnectionPoints
EXTRN ?GetConnectionHook@CCmdTarget@@MAEPAUIConnectionPoint@@ABU_GUID@@@Z:PROC ; CCmdTarget::GetConnectionHook
EXTRN ??0CWinThread@@QAE@XZ:PROC ; CWinThread::CWinThread
EXTRN ?Run@CWinThread@@UAEHXZ:PROC ; CWinThread::Run
EXTRN ?PreTranslateMessage@CWinThread@@UAEHPAUtagMSG@@@Z:PROC ; CWinThread::PreTranslateMessage
EXTRN ?PumpMessage@CWinThread@@UAEHXZ:PROC ; CWinThread::PumpMessage
EXTRN ?OnIdle@CWinThread@@UAEHJ@Z:PROC ; CWinThread::OnIdle
EXTRN ?IsIdleMessage@CWinThread@@UAEHPAUtagMSG@@@Z:PROC ; CWinThread::IsIdleMessage
EXTRN ?ExitInstance@CWinThread@@UAEHXZ:PROC ; CWinThread::ExitInstance
EXTRN ?ProcessWndProcException@CWinThread@@UAEJPAVCException@@PBUtagMSG@@@Z:PROC ; CWinThread::ProcessWndProcException
EXTRN ?ProcessMessageFilter@CWinThread@@UAEHHPAUtagMSG@@@Z:PROC ; CWinThread::ProcessMessageFilter
EXTRN ?GetMainWnd@CWinThread@@UAEPAVCWnd@@XZ:PROC ; CWinThread::GetMainWnd
EXTRN ??1CWinThread@@UAE@XZ:PROC ; CWinThread::~CWinThread
EXTRN ?Delete@CWinThread@@UAEXXZ:PROC ; CWinThread::Delete
EXTRN ?_com_issue_error@@YGXJ@Z:PROC ; _com_issue_error
EXTRN ??0CAdoRecordSet@@QAE@XZ:PROC ; CAdoRecordSet::CAdoRecordSet
EXTRN ??1CAdoRecordSet@@UAE@XZ:PROC ; CAdoRecordSet::~CAdoRecordSet
EXTRN ?IsEOF@CAdoRecordSet@@QAEHXZ:PROC ; CAdoRecordSet::IsEOF
EXTRN ?GetRecordCount@CAdoRecordSet@@QAEJXZ:PROC ; CAdoRecordSet::GetRecordCount
EXTRN ?SetAdoConnection@CAdoRecordSet@@QAEXPAVCAdoConnection@@@Z:PROC ; CAdoRecordSet::SetAdoConnection
EXTRN ?MoveFirst@CAdoRecordSet@@QAEHXZ:PROC ; CAdoRecordSet::MoveFirst
EXTRN ?MoveNext@CAdoRecordSet@@QAEHXZ:PROC ; CAdoRecordSet::MoveNext
EXTRN ?Move@CAdoRecordSet@@QAEHJV_variant_t@@@Z:PROC ; CAdoRecordSet::Move
EXTRN ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z:PROC ; CAdoRecordSet::Open
EXTRN ?Close@CAdoRecordSet@@QAEXXZ:PROC ; CAdoRecordSet::Close
EXTRN ?GetCollect@CAdoRecordSet@@QAEHPB_WAAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z:PROC ; CAdoRecordSet::GetCollect
EXTRN ?GetCollect@CAdoRecordSet@@QAEHPB_WPA_W@Z:PROC ; CAdoRecordSet::GetCollect
EXTRN ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z:PROC ; CAdoRecordSet::GetCollect
EXTRN ?GetCollect@CAdoRecordSet@@QAEHPB_WAAH@Z:PROC ; CAdoRecordSet::GetCollect
EXTRN ?GetCollect@CAdoRecordSet@@QAEHPB_WAAVCOleDateTime@ATL@@@Z:PROC ; CAdoRecordSet::GetCollect
EXTRN ??0CSAStatusLog@@QAE@XZ:PROC ; CSAStatusLog::CSAStatusLog
EXTRN ??1CSAStatusLog@@QAE@XZ:PROC ; CSAStatusLog::~CSAStatusLog
EXTRN ?Init@CSAStatusLog@@QAEXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z:PROC ; CSAStatusLog::Init
EXTRN ?LogError@CSAStatusLog@@QAEHPB_WPBD1J@Z:PROC ; CSAStatusLog::LogError
EXTRN ??0CAdoConnection@@QAE@XZ:PROC ; CAdoConnection::CAdoConnection
EXTRN ??1CAdoConnection@@UAE@XZ:PROC ; CAdoConnection::~CAdoConnection
EXTRN ?ConnectSQLServer2@CAdoConnection@@QAEHV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0000J@Z:PROC ; CAdoConnection::ConnectSQLServer2
EXTRN ?SetCommandTimeout@CAdoConnection@@QAEHJ@Z:PROC ; CAdoConnection::SetCommandTimeout
EXTRN ?SubmitSms@CSendThread@@SAJAAU_SubmitData@@PAVCAdoRecordSet@@1PAVCSmsCenterDlg@@JJJ@Z:PROC ; CSendThread::SubmitSms
EXTRN ??_ECSPThread@@UAEPAXI@Z:PROC ; CSPThread::`vector deleting destructor'
EXTRN @__security_check_cookie@4:PROC
EXTRN ___CxxFrameHandler3:PROC
EXTRN __chkstk:PROC
EXTRN _memset:PROC
EXTRN ??_7type_info@@6B@:QWORD ; type_info::`vftable'
EXTRN ?classCWinThread@CWinThread@@2UCRuntimeClass@@B:BYTE ; CWinThread::classCWinThread
EXTRN ___security_cookie:DWORD
EXTRN __fltused:DWORD
; COMDAT ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA
_BSS SEGMENT
?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA DQ 01H DUP (?) ; `__local_stdio_printf_options'::`2'::_OptionsStorage
_BSS ENDS
; COMDAT __real@bed845c8a0ce5129
CONST SEGMENT
__real@bed845c8a0ce5129 DQ 0bed845c8a0ce5129r ; -5.78704e-06
CONST ENDS
; COMDAT __real@3ed845c8a0ce5129
CONST SEGMENT
__real@3ed845c8a0ce5129 DQ 03ed845c8a0ce5129r ; 5.78704e-06
CONST ENDS
; COMDAT ??_R2CWinThread@@8
rdata$r SEGMENT
??_R2CWinThread@@8 DD FLAT:??_R1A@?0A@EA@CWinThread@@8 ; CWinThread::`RTTI Base Class Array'
DD FLAT:??_R1A@?0A@EA@CCmdTarget@@8
DD FLAT:??_R1A@?0A@EA@CObject@@8
rdata$r ENDS
; COMDAT ??_R3CWinThread@@8
rdata$r SEGMENT
??_R3CWinThread@@8 DD 00H ; CWinThread::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 03H
DD FLAT:??_R2CWinThread@@8
rdata$r ENDS
; COMDAT ??_R0?AVCWinThread@@@8
data$rs SEGMENT
??_R0?AVCWinThread@@@8 DD FLAT:??_7type_info@@6B@ ; CWinThread `RTTI Type Descriptor'
DD 00H
DB '.?AVCWinThread@@', 00H
data$rs ENDS
; COMDAT ??_R1A@?0A@EA@CWinThread@@8
rdata$r SEGMENT
??_R1A@?0A@EA@CWinThread@@8 DD FLAT:??_R0?AVCWinThread@@@8 ; CWinThread::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 02H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3CWinThread@@8
rdata$r ENDS
; COMDAT ??_R1A@?0A@EA@CSPThread@@8
rdata$r SEGMENT
??_R1A@?0A@EA@CSPThread@@8 DD FLAT:??_R0?AVCSPThread@@@8 ; CSPThread::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 03H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3CSPThread@@8
rdata$r ENDS
; COMDAT ??_R2CSPThread@@8
rdata$r SEGMENT
??_R2CSPThread@@8 DD FLAT:??_R1A@?0A@EA@CSPThread@@8 ; CSPThread::`RTTI Base Class Array'
DD FLAT:??_R1A@?0A@EA@CWinThread@@8
DD FLAT:??_R1A@?0A@EA@CCmdTarget@@8
DD FLAT:??_R1A@?0A@EA@CObject@@8
rdata$r ENDS
; COMDAT ??_R3CSPThread@@8
rdata$r SEGMENT
??_R3CSPThread@@8 DD 00H ; CSPThread::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 04H
DD FLAT:??_R2CSPThread@@8
rdata$r ENDS
; COMDAT ??_R0?AVCSPThread@@@8
data$rs SEGMENT
??_R0?AVCSPThread@@@8 DD FLAT:??_7type_info@@6B@ ; CSPThread `RTTI Type Descriptor'
DD 00H
DB '.?AVCSPThread@@', 00H
data$rs ENDS
; COMDAT ??_R4CSPThread@@6B@
rdata$r SEGMENT
??_R4CSPThread@@6B@ DD 00H ; CSPThread::`RTTI Complete Object Locator'
DD 00H
DD 00H
DD FLAT:??_R0?AVCSPThread@@@8
DD FLAT:??_R3CSPThread@@8
rdata$r ENDS
; COMDAT ??_C@_0CN@HDLHKOEL@D?3?2Works?2Corpsms_2010?2SmsCenter@
CONST SEGMENT
??_C@_0CN@HDLHKOEL@D?3?2Works?2Corpsms_2010?2SmsCenter@ DB 'D:\Works\Corp'
DB 'sms_2010\SmsCenter\SPThread.cpp', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_07MPEIFHDG@On_SPDZ@
CONST SEGMENT
??_C@_07MPEIFHDG@On_SPDZ@ DB 'On_SPDZ', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1FO@HKHFCEJC@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AA?5@
CONST SEGMENT
??_C@_1FO@HKHFCEJC@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AA?5@ DB 'u'
DB 00H, 'p', 00H, 'd', 00H, 'a', 00H, 't', 00H, 'e', 00H, ' ', 00H
DB 'D', 00H, 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's', 00H, 'g'
DB 00H, ' ', 00H, 's', 00H, 'e', 00H, 't', 00H, ' ', 00H, 's', 00H
DB 't', 00H, 'a', 00H, 't', 00H, 'u', 00H, 's', 00H, '=', 00H, '1'
DB 00H, ' ', 00H, 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e', 00H
DB ' ', 00H, 'D', 00H, 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's'
DB 00H, 'g', 00H, 'I', 00H, 'D', 00H, '=', 00H, '%', 00H, 'd', 00H
DB 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BE@MMJOHFKE@?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AAI?$AAD@
CONST SEGMENT
??_C@_1BE@MMJOHFKE@?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AAI?$AAD@ DB 'D', 00H
DB 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's', 00H, 'g', 00H, 'I'
DB 00H, 'D', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1KG@NHFKCCLP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@
CONST SEGMENT
??_C@_1KG@NHFKCCLP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@ DB 's'
DB 00H, 'e', 00H, 'l', 00H, 'e', 00H, 'c', 00H, 't', 00H, ' ', 00H
DB 't', 00H, 'o', 00H, 'p', 00H, ' ', 00H, '1', 00H, ' ', 00H, '*'
DB 00H, ' ', 00H, 'f', 00H, 'r', 00H, 'o', 00H, 'm', 00H, ' ', 00H
DB 'D', 00H, 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's', 00H, 'g'
DB 00H, ' ', 00H, 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e', 00H
DB ' ', 00H, 'O', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H, 'm'
DB 00H, 'd', 00H, '=', 00H, '''', 00H, '%', 00H, 's', 00H, '''', 00H
DB ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 'K', 00H, 'e'
DB 00H, 'y', 00H, '1', 00H, '=', 00H, '''', 00H, '%', 00H, 's', 00H
DB '''', 00H, ' ', 00H, 'o', 00H, 'r', 00H, 'd', 00H, 'e', 00H, 'r'
DB 00H, ' ', 00H, 'b', 00H, 'y', 00H, ' ', 00H, 'M', 00H, 's', 00H
DB 'g', 00H, 'T', 00H, 'i', 00H, 'm', 00H, 'e', 00H, ' ', 00H, 'd'
DB 00H, 'e', 00H, 's', 00H, 'c', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BO@ICAHPMKB@?$AA?$CF?$AA0?$AA4?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd@
CONST SEGMENT
??_C@_1BO@ICAHPMKB@?$AA?$CF?$AA0?$AA4?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd@ DB '%'
DB 00H, '0', 00H, '4', 00H, 'd', 00H, '.', 00H, '%', 00H, '0', 00H
DB '2', 00H, 'd', 00H, '.', 00H, '%', 00H, '0', 00H, '2', 00H, 'd'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_15HMPEDBNI@?$AAH?$AAL@
CONST SEGMENT
??_C@_15HMPEDBNI@?$AAH?$AAL@ DB 'H', 00H, 'L', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1KE@BJIAFIDP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@
CONST SEGMENT
??_C@_1KE@BJIAFIDP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@ DB 's'
DB 00H, 'e', 00H, 'l', 00H, 'e', 00H, 'c', 00H, 't', 00H, ' ', 00H
DB 't', 00H, 'o', 00H, 'p', 00H, ' ', 00H, '1', 00H, ' ', 00H, '*'
DB 00H, ' ', 00H, 'f', 00H, 'r', 00H, 'o', 00H, 'm', 00H, ' ', 00H
DB 'D', 00H, 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's', 00H, 'g'
DB 00H, ' ', 00H, 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e', 00H
DB ' ', 00H, 'O', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H, 'm'
DB 00H, 'd', 00H, '=', 00H, '''', 00H, '%', 00H, 's', 00H, '''', 00H
DB ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 's', 00H, 't'
DB 00H, 'a', 00H, 't', 00H, 'u', 00H, 's', 00H, '=', 00H, '0', 00H
DB ' ', 00H, 'o', 00H, 'r', 00H, 'd', 00H, 'e', 00H, 'r', 00H, ' '
DB 00H, 'b', 00H, 'y', 00H, ' ', 00H, 'M', 00H, 's', 00H, 'g', 00H
DB 'T', 00H, 'i', 00H, 'm', 00H, 'e', 00H, ' ', 00H, 'd', 00H, 'e'
DB 00H, 's', 00H, 'c', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1MA@BHMFJEAA@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@
CONST SEGMENT
??_C@_1MA@BHMFJEAA@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@ DB 's'
DB 00H, 'e', 00H, 'l', 00H, 'e', 00H, 'c', 00H, 't', 00H, ' ', 00H
DB 't', 00H, 'o', 00H, 'p', 00H, ' ', 00H, '1', 00H, ' ', 00H, '*'
DB 00H, ' ', 00H, 'f', 00H, 'r', 00H, 'o', 00H, 'm', 00H, ' ', 00H
DB 'D', 00H, 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's', 00H, 'g'
DB 00H, ' ', 00H, 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e', 00H
DB ' ', 00H, 'O', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H, 'm'
DB 00H, 'd', 00H, '=', 00H, '''', 00H, '%', 00H, 's', 00H, '''', 00H
DB ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 'K', 00H, 'e'
DB 00H, 'y', 00H, '1', 00H, '=', 00H, '''', 00H, '%', 00H, 's', 00H
DB '''', 00H, ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 's'
DB 00H, 't', 00H, 'a', 00H, 't', 00H, 'u', 00H, 's', 00H, '=', 00H
DB '0', 00H, ' ', 00H, 'o', 00H, 'r', 00H, 'd', 00H, 'e', 00H, 'r'
DB 00H, ' ', 00H, 'b', 00H, 'y', 00H, ' ', 00H, 'M', 00H, 's', 00H
DB 'g', 00H, 'T', 00H, 'i', 00H, 'm', 00H, 'e', 00H, ' ', 00H, 'd'
DB 00H, 'e', 00H, 's', 00H, 'c', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_17DACEHHP@?$AAM?$AAs?$AAg@
CONST SEGMENT
??_C@_17DACEHHP@?$AAM?$AAs?$AAg@ DB 'M', 00H, 's', 00H, 'g', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1KG@EFKDDHOK@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAD@
CONST SEGMENT
??_C@_1KG@EFKDDHOK@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAD@ DB 's'
DB 00H, 'e', 00H, 'l', 00H, 'e', 00H, 'c', 00H, 't', 00H, ' ', 00H
DB '*', 00H, ' ', 00H, 'f', 00H, 'r', 00H, 'o', 00H, 'm', 00H, ' '
DB 00H, 'D', 00H, 'a', 00H, 't', 00H, 'a', 00H, 'M', 00H, 's', 00H
DB 'g', 00H, ' ', 00H, 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e'
DB 00H, ' ', 00H, 'O', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H
DB 'm', 00H, 'd', 00H, '=', 00H, '''', 00H, '%', 00H, 's', 00H, ''''
DB 00H, ' ', 00H, 'a', 00H, 'n', 00H, 'd', 00H, ' ', 00H, 'c', 00H
DB 'o', 00H, 'n', 00H, 'v', 00H, 'e', 00H, 'r', 00H, 't', 00H, '('
DB 00H, 'i', 00H, 'n', 00H, 't', 00H, ',', 00H, 'k', 00H, 'e', 00H
DB 'y', 00H, '1', 00H, ')', 00H, '=', 00H, '%', 00H, 'd', 00H, ' '
DB 00H, 'o', 00H, 'r', 00H, 'd', 00H, 'e', 00H, 'r', 00H, ' ', 00H
DB 'b', 00H, 'y', 00H, ' ', 00H, 'y', 00H, 'e', 00H, 'l', 00H, 'e'
DB 00H, 'v', 00H, 'e', 00H, 'l', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_15LKJGBLKM@?$AAX?$AAD@
CONST SEGMENT
??_C@_15LKJGBLKM@?$AAX?$AAD@ DB 'X', 00H, 'D', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BA@MPCEHOJO@?$AAW?$AAe?$AAe?$AAk?$AAD?$AAa?$AAy@
CONST SEGMENT
??_C@_1BA@MPCEHOJO@?$AAW?$AAe?$AAe?$AAk?$AAD?$AAa?$AAy@ DB 'W', 00H, 'e', 00H
DB 'e', 00H, 'k', 00H, 'D', 00H, 'a', 00H, 'y', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1O@CIMGHIFA@?$AAi?$AAs?$AAW?$AAe?$AAe?$AAk@
CONST SEGMENT
??_C@_1O@CIMGHIFA@?$AAi?$AAs?$AAW?$AAe?$AAe?$AAk@ DB 'i', 00H, 's', 00H, 'W'
DB 00H, 'e', 00H, 'e', 00H, 'k', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1M@HNBPHGM@?$AAP?$AAr?$AAi?$AAc?$AAe@
CONST SEGMENT
??_C@_1M@HNBPHGM@?$AAP?$AAr?$AAi?$AAc?$AAe@ DB 'P', 00H, 'r', 00H, 'i', 00H
DB 'c', 00H, 'e', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BI@PBJMHBGG@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA3@
CONST SEGMENT
??_C@_1BI@PBJMHBGG@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA3@ DB 'D'
DB 00H, 'Z', 00H, 'S', 00H, 'e', 00H, 'n', 00H, 'd', 00H, 'T', 00H
DB 'i', 00H, 'm', 00H, 'e', 00H, '3', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BI@EJCABGAD@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA2@
CONST SEGMENT
??_C@_1BI@EJCABGAD@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA2@ DB 'D'
DB 00H, 'Z', 00H, 'S', 00H, 'e', 00H, 'n', 00H, 'd', 00H, 'T', 00H
DB 'i', 00H, 'm', 00H, 'e', 00H, '2', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BI@FLJFLJON@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA1@
CONST SEGMENT
??_C@_1BI@FLJFLJON@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA1@ DB 'D'
DB 00H, 'Z', 00H, 'S', 00H, 'e', 00H, 'n', 00H, 'd', 00H, 'T', 00H
DB 'i', 00H, 'm', 00H, 'e', 00H, '1', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1FC@CKBOBDNO@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAO@
CONST SEGMENT
??_C@_1FC@CKBOBDNO@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAO@ DB 's'
DB 00H, 'e', 00H, 'l', 00H, 'e', 00H, 'c', 00H, 't', 00H, ' ', 00H
DB '*', 00H, ' ', 00H, 'f', 00H, 'r', 00H, 'o', 00H, 'm', 00H, ' '
DB 00H, 'O', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H, 'm', 00H
DB 'd', 00H, ' ', 00H, 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e'
DB 00H, ' ', 00H, 'O', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H
DB 'm', 00H, 'd', 00H, 'I', 00H, 'D', 00H, '=', 00H, '%', 00H, 'd'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_15PCKCLKH@?$AAS?$AAP@
CONST SEGMENT
??_C@_15PCKCLKH@?$AAS?$AAP@ DB 'S', 00H, 'P', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1FO@EEKDKMAK@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAd?$AAz?$AA?5?$AAs?$AAe?$AAt?$AA?5?$AAS@
CONST SEGMENT
??_C@_1FO@EEKDKMAK@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAd?$AAz?$AA?5?$AAs?$AAe?$AAt?$AA?5?$AAS@ DB 'u'
DB 00H, 'p', 00H, 'd', 00H, 'a', 00H, 't', 00H, 'e', 00H, ' ', 00H
DB 'd', 00H, 'z', 00H, ' ', 00H, 's', 00H, 'e', 00H, 't', 00H, ' '
DB 00H, 'S', 00H, 'e', 00H, 'n', 00H, 'd', 00H, 'L', 00H, 'a', 00H
DB 's', 00H, 't', 00H, '=', 00H, 'G', 00H, 'e', 00H, 't', 00H, 'D'
DB 00H, 'A', 00H, 'T', 00H, 'E', 00H, '(', 00H, ')', 00H, ' ', 00H
DB 'w', 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e', 00H, ' ', 00H, 'D'
DB 00H, 'Z', 00H, 'I', 00H, 'D', 00H, '=', 00H, '%', 00H, 'd', 00H
DB 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BC@KMMELMEH@?$AAB?$AAi?$AAr?$AAt?$AAh?$AAd?$AAa?$AAy@
CONST SEGMENT
??_C@_1BC@KMMELMEH@?$AAB?$AAi?$AAr?$AAt?$AAh?$AAd?$AAa?$AAy@ DB 'B', 00H, 'i'
DB 00H, 'r', 00H, 't', 00H, 'h', 00H, 'd', 00H, 'a', 00H, 'y', 00H
DB 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BC@DIGKBDEI@?$AAS?$AAe?$AAn?$AAd?$AAL?$AAa?$AAs?$AAt@
CONST SEGMENT
??_C@_1BC@DIGKBDEI@?$AAS?$AAe?$AAn?$AAd?$AAL?$AAa?$AAs?$AAt@ DB 'S', 00H, 'e'
DB 00H, 'n', 00H, 'd', 00H, 'L', 00H, 'a', 00H, 's', 00H, 't', 00H
DB 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BE@DDFINHDL@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd?$AAI?$AAD@
CONST SEGMENT
??_C@_1BE@DDFINHDL@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd?$AAI?$AAD@ DB 'O', 00H
DB 'p', 00H, 'e', 00H, 'r', 00H, 'C', 00H, 'm', 00H, 'd', 00H, 'I'
DB 00H, 'D', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_19HDODELJD@?$AAD?$AAZ?$AAI?$AAD@
CONST SEGMENT
??_C@_19HDODELJD@?$AAD?$AAZ?$AAI?$AAD@ DB 'D', 00H, 'Z', 00H, 'I', 00H, 'D'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1O@OLLJFFCG@?$AAM?$AAo?$AAb?$AAi?$AAl?$AAe@
CONST SEGMENT
??_C@_1O@OLLJFFCG@?$AAM?$AAo?$AAb?$AAi?$AAl?$AAe@ DB 'M', 00H, 'o', 00H, 'b'
DB 00H, 'i', 00H, 'l', 00H, 'e', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1O@KGJGNKBM@?$AAA?$AAd?$AAd?$AAC?$AAm?$AAd@
CONST SEGMENT
??_C@_1O@KGJGNKBM@?$AAA?$AAd?$AAd?$AAC?$AAm?$AAd@ DB 'A', 00H, 'd', 00H, 'd'
DB 00H, 'C', 00H, 'm', 00H, 'd', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BA@LMMOGBEM@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd@
CONST SEGMENT
??_C@_1BA@LMMOGBEM@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd@ DB 'O', 00H, 'p', 00H
DB 'e', 00H, 'r', 00H, 'C', 00H, 'm', 00H, 'd', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1O@DLKCLNNL@?$AAU?$AAs?$AAe?$AAr?$AAI?$AAD@
CONST SEGMENT
??_C@_1O@DLKCLNNL@?$AAU?$AAs?$AAe?$AAr?$AAI?$AAD@ DB 'U', 00H, 's', 00H, 'e'
DB 00H, 'r', 00H, 'I', 00H, 'D', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1O@CLJHPHJA@?$AAC?$AAo?$AAr?$AAp?$AAI?$AAD@
CONST SEGMENT
??_C@_1O@CLJHPHJA@?$AAC?$AAo?$AAr?$AAp?$AAI?$AAD@ DB 'C', 00H, 'o', 00H, 'r'
DB 00H, 'p', 00H, 'I', 00H, 'D', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1MM@BAAGAMJB@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAd?$AAz?$AA?4?$AA?$CK?$AA?0?$AAu?$AAs?$AAe@
CONST SEGMENT
??_C@_1MM@BAAGAMJB@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAd?$AAz?$AA?4?$AA?$CK?$AA?0?$AAu?$AAs?$AAe@ DB 's'
DB 00H, 'e', 00H, 'l', 00H, 'e', 00H, 'c', 00H, 't', 00H, ' ', 00H
DB 'd', 00H, 'z', 00H, '.', 00H, '*', 00H, ',', 00H, 'u', 00H, 's'
DB 00H, 'e', 00H, 'r', 00H, 's', 00H, '.', 00H, 'm', 00H, 'o', 00H
DB 'b', 00H, 'i', 00H, 'l', 00H, 'e', 00H, ' ', 00H, 'f', 00H, 'r'
DB 00H, 'o', 00H, 'm', 00H, ' ', 00H, 'd', 00H, 'z', 00H, ',', 00H
DB 'u', 00H, 's', 00H, 'e', 00H, 'r', 00H, 's', 00H, ' ', 00H, 'w'
DB 00H, 'h', 00H, 'e', 00H, 'r', 00H, 'e', 00H, ' ', 00H, 'd', 00H
DB 'z', 00H, '.', 00H, 'u', 00H, 's', 00H, 'e', 00H, 'r', 00H, 'i'
DB 00H, 'd', 00H, ' ', 00H, '=', 00H, ' ', 00H, 'u', 00H, 's', 00H
DB 'e', 00H, 'r', 00H, 's', 00H, '.', 00H, 'u', 00H, 's', 00H, 'e'
DB 00H, 'r', 00H, 'i', 00H, 'd', 00H, ' ', 00H, 'o', 00H, 'r', 00H
DB 'd', 00H, 'e', 00H, 'r', 00H, ' ', 00H, 'b', 00H, 'y', 00H, ' '
DB 00H, 'd', 00H, 'z', 00H, '.', 00H, 'O', 00H, 'p', 00H, 'e', 00H
DB 'r', 00H, 'C', 00H, 'm', 00H, 'd', 00H, ',', 00H, 'd', 00H, 'z'
DB 00H, '.', 00H, 'B', 00H, 'i', 00H, 'r', 00H, 't', 00H, 'h', 00H
DB 'd', 00H, 'a', 00H, 'y', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ?__LINE__Var@?0??On_SPDZ@CSPThread@@QAEXIJ@Z@4JA
_DATA SEGMENT
?__LINE__Var@?0??On_SPDZ@CSPThread@@QAEXIJ@Z@4JA DD 048H ; `CSPThread::On_SPDZ'::`1'::__LINE__Var
_DATA ENDS
; COMDAT ??_C@_1BA@IIDKJHG@?$AAc?$AAo?$AAr?$AAp?$AAs?$AAm?$AAs@
CONST SEGMENT
??_C@_1BA@IIDKJHG@?$AAc?$AAo?$AAr?$AAp?$AAs?$AAm?$AAs@ DB 'c', 00H, 'o', 00H
DB 'r', 00H, 'p', 00H, 's', 00H, 'm', 00H, 's', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_09IDFCFOOG@CSPThread@
CONST SEGMENT
??_C@_09IDFCFOOG@CSPThread@ DB 'CSPThread', 00H ; `string'
CONST ENDS
; COMDAT ??_7CSPThread@@6B@
CONST SEGMENT
??_7CSPThread@@6B@ DD FLAT:??_R4CSPThread@@6B@ ; CSPThread::`vftable'
DD FLAT:?GetRuntimeClass@CSPThread@@UBEPAUCRuntimeClass@@XZ
DD FLAT:??_ECSPThread@@UAEPAXI@Z
DD FLAT:?Serialize@CObject@@UAEXAAVCArchive@@@Z
DD FLAT:?OnCmdMsg@CCmdTarget@@UAEHIHPAXPAUAFX_CMDHANDLERINFO@@@Z
DD FLAT:?OnFinalRelease@CCmdTarget@@UAEXXZ
DD FLAT:?IsInvokeAllowed@CCmdTarget@@UAEHJ@Z
DD FLAT:?GetDispatchIID@CCmdTarget@@UAEHPAU_GUID@@@Z
DD FLAT:?GetTypeInfoCount@CCmdTarget@@UAEIXZ
DD FLAT:?GetTypeLibCache@CCmdTarget@@UAEPAVCTypeLibCache@@XZ
DD FLAT:?GetTypeLib@CCmdTarget@@UAEJKPAPAUITypeLib@@@Z
DD FLAT:?GetMessageMap@CSPThread@@MBEPBUAFX_MSGMAP@@XZ
DD FLAT:?GetCommandMap@CCmdTarget@@MBEPBUAFX_OLECMDMAP@@XZ
DD FLAT:?GetDispatchMap@CCmdTarget@@MBEPBUAFX_DISPMAP@@XZ
DD FLAT:?GetConnectionMap@CCmdTarget@@MBEPBUAFX_CONNECTIONMAP@@XZ
DD FLAT:?GetInterfaceMap@CCmdTarget@@MBEPBUAFX_INTERFACEMAP@@XZ
DD FLAT:?GetEventSinkMap@CCmdTarget@@MBEPBUAFX_EVENTSINKMAP@@XZ
DD FLAT:?OnCreateAggregates@CCmdTarget@@UAEHXZ
DD FLAT:?GetInterfaceHook@CCmdTarget@@UAEPAUIUnknown@@PBX@Z
DD FLAT:?GetExtraConnectionPoints@CCmdTarget@@MAEHPAVCPtrArray@@@Z
DD FLAT:?GetConnectionHook@CCmdTarget@@MAEPAUIConnectionPoint@@ABU_GUID@@@Z
DD FLAT:?InitInstance@CSPThread@@UAEHXZ
DD FLAT:?Run@CWinThread@@UAEHXZ
DD FLAT:?PreTranslateMessage@CWinThread@@UAEHPAUtagMSG@@@Z
DD FLAT:?PumpMessage@CWinThread@@UAEHXZ
DD FLAT:?OnIdle@CWinThread@@UAEHJ@Z
DD FLAT:?IsIdleMessage@CWinThread@@UAEHPAUtagMSG@@@Z
DD FLAT:?ExitInstance@CSPThread@@UAEHXZ
DD FLAT:?ProcessWndProcException@CWinThread@@UAEJPAVCException@@PBUtagMSG@@@Z
DD FLAT:?ProcessMessageFilter@CWinThread@@UAEHHPAUtagMSG@@@Z
DD FLAT:?GetMainWnd@CWinThread@@UAEPAVCWnd@@XZ
DD FLAT:?Delete@CWinThread@@UAEXXZ
CONST ENDS
; COMDAT ?classCSPThread@CSPThread@@2UCRuntimeClass@@B
CONST SEGMENT
?classCSPThread@CSPThread@@2UCRuntimeClass@@B DD FLAT:??_C@_09IDFCFOOG@CSPThread@ ; CSPThread::classCSPThread
DD 0118H
DD 0ffffH
DD FLAT:?CreateObject@CSPThread@@SGPAVCObject@@XZ
DD FLAT:?classCWinThread@CWinThread@@2UCRuntimeClass@@B
DD 00H
DD 00H
CONST ENDS
; COMDAT ??_R2CCmdTarget@@8
rdata$r SEGMENT
??_R2CCmdTarget@@8 DD FLAT:??_R1A@?0A@EA@CCmdTarget@@8 ; CCmdTarget::`RTTI Base Class Array'
DD FLAT:??_R1A@?0A@EA@CObject@@8
rdata$r ENDS
; COMDAT ??_R3CCmdTarget@@8
rdata$r SEGMENT
??_R3CCmdTarget@@8 DD 00H ; CCmdTarget::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 02H
DD FLAT:??_R2CCmdTarget@@8
rdata$r ENDS
; COMDAT ??_R0?AVCCmdTarget@@@8
data$rs SEGMENT
??_R0?AVCCmdTarget@@@8 DD FLAT:??_7type_info@@6B@ ; CCmdTarget `RTTI Type Descriptor'
DD 00H
DB '.?AVCCmdTarget@@', 00H
data$rs ENDS
; COMDAT ??_R1A@?0A@EA@CCmdTarget@@8
rdata$r SEGMENT
??_R1A@?0A@EA@CCmdTarget@@8 DD FLAT:??_R0?AVCCmdTarget@@@8 ; CCmdTarget::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 01H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3CCmdTarget@@8
rdata$r ENDS
; COMDAT ??_R1A@?0A@EA@CObject@@8
rdata$r SEGMENT
??_R1A@?0A@EA@CObject@@8 DD FLAT:??_R0?AVCObject@@@8 ; CObject::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 00H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3CObject@@8
rdata$r ENDS
; COMDAT ??_R2CObject@@8
rdata$r SEGMENT
??_R2CObject@@8 DD FLAT:??_R1A@?0A@EA@CObject@@8 ; CObject::`RTTI Base Class Array'
rdata$r ENDS
; COMDAT ??_R3CObject@@8
rdata$r SEGMENT
??_R3CObject@@8 DD 00H ; CObject::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 01H
DD FLAT:??_R2CObject@@8
rdata$r ENDS
; COMDAT ??_R0?AVCObject@@@8
data$rs SEGMENT
??_R0?AVCObject@@@8 DD FLAT:??_7type_info@@6B@ ; CObject `RTTI Type Descriptor'
DD 00H
DB '.?AVCObject@@', 00H
data$rs ENDS
; COMDAT ??_C@_13JKNELIBG@?$AAT@
CONST SEGMENT
??_C@_13JKNELIBG@?$AAT@ DB 'T', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
CONST SEGMENT
??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@ DB 'L', 00H, 'o', 00H, 'g', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
CONST SEGMENT
??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@ DB 'A', 00H, 'p'
DB 00H, 'p', 00H, 'E', 00H, 'r', 00H, 'r', 00H, 'o', 00H, 'r', 00H
DB 00H, 00H ; `string'
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 081H
DB 08eH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 023H
DW 01297H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__catchsym$?On_SPDZ@CSPThread@@QAEXIJ@Z$13 DD 00H
DD 00H
DD 00H
DD FLAT:__catch$?On_SPDZ@CSPThread@@QAEXIJ@Z$0
__tryblocktable$?On_SPDZ@CSPThread@@QAEXIJ@Z DD 00H
DD 08H
DD 0cH
DD 01H
DD FLAT:__catchsym$?On_SPDZ@CSPThread@@QAEXIJ@Z$13
__ehfuncinfo$?On_SPDZ@CSPThread@@QAEXIJ@Z DD 019930522H
DD 0dH
DD FLAT:__unwindtable$?On_SPDZ@CSPThread@@QAEXIJ@Z
DD 01H
DD FLAT:__tryblocktable$?On_SPDZ@CSPThread@@QAEXIJ@Z
DD 2 DUP(00H)
DD 00H
DD 00H
__unwindtable$?On_SPDZ@CSPThread@@QAEXIJ@Z DD 0ffffffffH
DD 00H
DD 00H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$2
DD 01H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$3
DD 02H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$4
DD 03H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$5
DD 03H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$6
DD 05H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$7
DD 06H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$8
DD 06H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$9
DD 0ffffffffH
DD 00H
DD 09H
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$10
DD 0aH
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$11
DD 0bH
DD FLAT:__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$12
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z DD 019930522H
DD 05H
DD FLAT:__unwindtable$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 00H
__unwindtable$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z DD 0ffffffffH
DD FLAT:__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$0
DD 00H
DD FLAT:__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$1
DD 01H
DD FLAT:__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$2
DD 02H
DD FLAT:__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$3
DD 03H
DD FLAT:__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$4
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 0dH
DW 019aH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 048H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$??1CSPThread@@UAE@XZ DD 019930522H
DD 05H
DD FLAT:__unwindtable$??1CSPThread@@UAE@XZ
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
__unwindtable$??1CSPThread@@UAE@XZ DD 0ffffffffH
DD FLAT:__unwindfunclet$??1CSPThread@@UAE@XZ$0
DD 00H
DD FLAT:__unwindfunclet$??1CSPThread@@UAE@XZ$1
DD 01H
DD FLAT:__unwindfunclet$??1CSPThread@@UAE@XZ$2
DD 02H
DD FLAT:__unwindfunclet$??1CSPThread@@UAE@XZ$3
DD 03H
DD FLAT:__unwindfunclet$??1CSPThread@@UAE@XZ$4
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 048H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$??0CSPThread@@QAE@XZ DD 019930522H
DD 05H
DD FLAT:__unwindtable$??0CSPThread@@QAE@XZ
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 00H
__unwindtable$??0CSPThread@@QAE@XZ DD 0ffffffffH
DD FLAT:__unwindfunclet$??0CSPThread@@QAE@XZ$0
DD 00H
DD FLAT:__unwindfunclet$??0CSPThread@@QAE@XZ$1
DD 01H
DD FLAT:__unwindfunclet$??0CSPThread@@QAE@XZ$2
DD 02H
DD FLAT:__unwindfunclet$??0CSPThread@@QAE@XZ$3
DD 03H
DD FLAT:__unwindfunclet$??0CSPThread@@QAE@XZ$4
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 018H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$?CreateObject@CSPThread@@SGPAVCObject@@XZ DD 0ffffffffH
DD FLAT:__unwindfunclet$?CreateObject@CSPThread@@SGPAVCObject@@XZ$0
__ehfuncinfo$?CreateObject@CSPThread@@SGPAVCObject@@XZ DD 019930522H
DD 01H
DD FLAT:__unwindtable$?CreateObject@CSPThread@@SGPAVCObject@@XZ
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 00H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$??1_variant_t@@QAE@XZ DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?DoubleFromDate@COleDateTime@ATL@@KGNN@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
DB 013H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 01bH
DB 0abH
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
DB 013H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 01bH
DB 08dH
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$??4COleDateTime@ATL@@QAEAAV01@AB_J@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 050H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 04dH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 04dH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 04dH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 04dH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 04dH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 04dH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
DB 013H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 01bH
DB 0c7H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 0dH
DB 084H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 016H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z DD 0ffffffffH
DD FLAT:__unwindfunclet$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z$0
__ehfuncinfo$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z DD 019930522H
DD 01H
DD FLAT:__unwindtable$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 00H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 016H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ DD 0ffffffffH
DD FLAT:__unwindfunclet$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ$0
__ehfuncinfo$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ DD 019930522H
DD 01H
DD FLAT:__unwindtable$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 016H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z DD 0ffffffffH
DD FLAT:__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z$0
__ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z DD 019930522H
DD 01H
DD FLAT:__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 00H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 016H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z DD 0ffffffffH
DD FLAT:__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z$0
__ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z DD 019930522H
DD 01H
DD FLAT:__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 00H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 016H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ DD 0ffffffffH
DD FLAT:__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ$0
__ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ DD 019930522H
DD 01H
DD FLAT:__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 0dH
DW 011cH
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 09H
voltbl ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 04H
xdata$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT ??_GCSPThread@@UAEPAXI@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___flags$ = 8 ; size = 4
??_GCSPThread@@UAEPAXI@Z PROC ; CSPThread::`scalar deleting destructor', COMDAT
; _this$ = ecx
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ??1CSPThread@@UAE@XZ ; CSPThread::~CSPThread
00014 8b 45 08 mov eax, DWORD PTR ___flags$[ebp]
00017 83 e0 01 and eax, 1
0001a 74 26 je SHORT $LN2@scalar
0001c 8b 45 08 mov eax, DWORD PTR ___flags$[ebp]
0001f 83 e0 04 and eax, 4
00022 75 0d jne SHORT $LN3@scalar
00024 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00027 50 push eax
00028 e8 00 00 00 00 call ??3CObject@@SGXPAX@Z ; CObject::operator delete
0002d eb 13 jmp SHORT $LN2@scalar
0002f eb 11 jmp SHORT $LN2@scalar
$LN3@scalar:
00031 68 18 01 00 00 push 280 ; 00000118H
00036 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00039 50 push eax
0003a e8 00 00 00 00 call ?__global_delete@@YAXPAXI@Z ; __global_delete
0003f 83 c4 08 add esp, 8
$LN2@scalar:
00042 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00045 5f pop edi
00046 5e pop esi
00047 5b pop ebx
00048 8b e5 mov esp, ebp
0004a 5d pop ebp
0004b c2 04 00 ret 4
??_GCSPThread@@UAEPAXI@Z ENDP ; CSPThread::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?GetMessageMap@CSPThread@@MBEPBUAFX_MSGMAP@@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetMessageMap@CSPThread@@MBEPBUAFX_MSGMAP@@XZ PROC ; CSPThread::GetMessageMap, COMDAT
; _this$ = ecx
; 44 : BEGIN_MESSAGE_MAP(CSPThread, CWinThread)
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
0000c e8 00 00 00 00 call ?GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ ; CSPThread::GetThisMessageMap
00011 5f pop edi
00012 5e pop esi
00013 5b pop ebx
00014 8b e5 mov esp, ebp
00016 5d pop ebp
00017 c3 ret 0
?GetMessageMap@CSPThread@@MBEPBUAFX_MSGMAP@@XZ ENDP ; CSPThread::GetMessageMap
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ
_TEXT SEGMENT
?GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ PROC ; CSPThread::GetThisMessageMap, COMDAT
; 44 : BEGIN_MESSAGE_MAP(CSPThread, CWinThread)
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 45 : //{{AFX_MSG_MAP(CSPThread)
; 46 : // NOTE - the ClassWizard will add and remove mapping macros here.
; 47 : //}}AFX_MSG_MAP
; 48 : ON_THREAD_MESSAGE(TH_SMSSP,On_SPDZ)
; 49 : END_MESSAGE_MAP()
00009 b8 00 00 00 00 mov eax, OFFSET ?messageMap@?1??GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ@4U3@B
0000e 5f pop edi
0000f 5e pop esi
00010 5b pop ebx
00011 8b e5 mov esp, ebp
00013 5d pop ebp
00014 c3 ret 0
?GetThisMessageMap@CSPThread@@KGPBUAFX_MSGMAP@@XZ ENDP ; CSPThread::GetThisMessageMap
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?On_SPDZ@CSPThread@@QAEXIJ@Z
_TEXT SEGMENT
tv488 = -59920 ; size = 4
tv457 = -59920 ; size = 4
tv426 = -59920 ; size = 4
tv490 = -59916 ; size = 4
tv459 = -59916 ; size = 4
tv428 = -59916 ; size = 4
tv492 = -59912 ; size = 4
tv461 = -59912 ; size = 4
tv430 = -59912 ; size = 4
tv582 = -59908 ; size = 4
tv494 = -59908 ; size = 4
tv463 = -59908 ; size = 4
tv432 = -59908 ; size = 4
tv751 = -59904 ; size = 4
tv642 = -59904 ; size = 4
tv496 = -59904 ; size = 4
tv465 = -59904 ; size = 4
tv434 = -59904 ; size = 4
tv876 = -59900 ; size = 4
tv837 = -59900 ; size = 4
tv818 = -59900 ; size = 4
tv799 = -59900 ; size = 4
tv793 = -59900 ; size = 4
tv779 = -59900 ; size = 4
tv670 = -59900 ; size = 4
tv651 = -59900 ; size = 4
tv644 = -59900 ; size = 4
tv612 = -59900 ; size = 4
tv498 = -59900 ; size = 4
tv467 = -59900 ; size = 4
tv436 = -59900 ; size = 4
tv403 = -59900 ; size = 4
tv397 = -59900 ; size = 4
tv391 = -59900 ; size = 4
tv385 = -59900 ; size = 4
tv379 = -59900 ; size = 4
tv373 = -59900 ; size = 4
tv352 = -59900 ; size = 4
tv263 = -59900 ; size = 4
tv210 = -59900 ; size = 4
tv204 = -59900 ; size = 4
tv198 = -59900 ; size = 4
tv192 = -59900 ; size = 4
tv186 = -59900 ; size = 4
tv180 = -59900 ; size = 4
tv174 = -59900 ; size = 4
tv168 = -59900 ; size = 4
tv162 = -59900 ; size = 4
tv89 = -59900 ; size = 4
$T2 = -59896 ; size = 4
$T3 = -59892 ; size = 4
$T4 = -59888 ; size = 4
_NXlog$5 = -59372 ; size = 6056
_data$6 = -53316 ; size = 17556
_lMobType$7 = -35760 ; size = 4
_lMsgID$8 = -35756 ; size = 4
_strTime$9 = -35752 ; size = 4
_t$10 = -35748 ; size = 16
_data$11 = -35732 ; size = 17556
_lMobType$12 = -18176 ; size = 4
_lAdoCount$13 = -18172 ; size = 4
_iDay$14 = -18168 ; size = 4
_iMon$15 = -18164 ; size = 4
_b3$16 = -18160 ; size = 4
_strSelect3$17 = -18156 ; size = 4
_bSend$18 = -18152 ; size = 4
_tt3$19 = -18148 ; size = 16
_tt2$20 = -18132 ; size = 16
_tt1$21 = -18116 ; size = 16
_tts$22 = -18100 ; size = 16
_ttn$23 = -18084 ; size = 16
_tNow$24 = -18068 ; size = 12
_t3$25 = -18056 ; size = 12
_t2$26 = -18044 ; size = 12
_t1$27 = -18032 ; size = 12
_szWeek$28 = -18020 ; size = 64
_bWeek$29 = -17956 ; size = 4
_lTemp$30 = -17952 ; size = 4
_b2$31 = -17948 ; size = 4
_strSelect2$32 = -17944 ; size = 4
_data$33 = -17940 ; size = 17556
_lMobType$34 = -384 ; size = 4
_strSelect3$35 = -380 ; size = 4
_lAllCount2$36 = -376 ; size = 4
_lDZID$37 = -372 ; size = 4
_tYSend$38 = -368 ; size = 12
_tSend$39 = -356 ; size = 12
_szAddCmd$40 = -344 ; size = 64
_szOperCmd$41 = -280 ; size = 64
_tBirthday$42 = -216 ; size = 12
_lOperCmdID$43 = -204 ; size = 4
_strOldMsg$44 = -200 ; size = 4
_lOldPrice$45 = -196 ; size = 4
_bOldMsg$46 = -192 ; size = 4
_tOldBirthday$47 = -188 ; size = 12
_szOldAddCmd$48 = -176 ; size = 64
_szOldOperCmd$49 = -112 ; size = 64
_strMobile$50 = -48 ; size = 4
_lUserID$51 = -44 ; size = 4
_lCorpID$52 = -40 ; size = 4
_lAllCount$53 = -36 ; size = 4
_b$54 = -32 ; size = 4
_strSelect$55 = -28 ; size = 4
_this$ = -24 ; size = 4
__$ArrayPad$ = -20 ; size = 4
__$EHRec$ = -16 ; size = 16
_wParam$ = 8 ; size = 4
_lParam$ = 12 ; size = 4
?On_SPDZ@CSPThread@@QAEXIJ@Z PROC ; CSPThread::On_SPDZ, COMDAT
; _this$ = ecx
; 72 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?On_SPDZ@CSPThread@@QAEXIJ@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 51 push ecx
00012 b8 00 ea 00 00 mov eax, 59904 ; 0000ea00H
00017 e8 00 00 00 00 call __chkstk
0001c a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
00021 33 c5 xor eax, ebp
00023 89 45 ec mov DWORD PTR __$ArrayPad$[ebp], eax
00026 53 push ebx
00027 56 push esi
00028 57 push edi
00029 50 push eax
0002a 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp+4]
0002d 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00033 89 65 f0 mov DWORD PTR __$EHRec$[ebp], esp
00036 89 4d e8 mov DWORD PTR _this$[ebp], ecx
; 73 : if ( m_bStart ) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
00039 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0003c 83 78 44 00 cmp DWORD PTR [eax+68], 0
00040 74 05 je SHORT $LN4@On_SPDZ
; 74 : return ;
00042 e9 42 12 00 00 jmp $LN1@On_SPDZ
$LN4@On_SPDZ:
; 75 :
; 76 : Sleep(10000); //<2F><>ʱ10<31><30>
00047 68 10 27 00 00 push 10000 ; 00002710H
0004c ff 15 00 00 00
00 call DWORD PTR __imp__Sleep@4
; 77 : m_pSMSDlg->m_bAutoSend_SP = false;
00052 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00055 8b 88 10 01 00
00 mov ecx, DWORD PTR [eax+272]
0005b c7 81 64 12 00
00 00 00 00 00 mov DWORD PTR [ecx+4708], 0
; 78 :
; 79 : m_bStart = true;
00065 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00068 c7 40 44 01 00
00 00 mov DWORD PTR [eax+68], 1
; 80 :
; 81 : try {
0006f c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+12], 0
; 82 : CString strSelect;
00076 8d 4d e4 lea ecx, DWORD PTR _strSelect$55[ebp]
00079 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0007e c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+12], 1
; 83 : strSelect.Format( _T("select dz.*,users.mobile from dz,users where dz.userid = users.userid order by dz.OperCmd,dz.Birthday") );
00082 68 00 00 00 00 push OFFSET ??_C@_1MM@BAAGAMJB@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAd?$AAz?$AA?4?$AA?$CK?$AA?0?$AAu?$AAs?$AAe@
00087 8d 45 e4 lea eax, DWORD PTR _strSelect$55[ebp]
0008a 50 push eax
0008b e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00090 83 c4 08 add esp, 8
; 84 : BOOL b = m_AdoRS.Open( strSelect );
00093 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00096 83 c0 68 add eax, 104 ; 00000068H
00099 89 85 04 16 ff
ff mov DWORD PTR tv89[ebp], eax
0009f 6a 03 push 3
000a1 6a 03 push 3
000a3 6a 01 push 1
000a5 8d 4d e4 lea ecx, DWORD PTR _strSelect$55[ebp]
000a8 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
000ad 50 push eax
000ae 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv89[ebp]
000b4 e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
000b9 89 45 e0 mov DWORD PTR _b$54[ebp], eax
; 85 : long lAllCount = m_AdoRS.GetRecordCount() ;
000bc 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
000bf 83 c1 68 add ecx, 104 ; 00000068H
000c2 e8 00 00 00 00 call ?GetRecordCount@CAdoRecordSet@@QAEJXZ ; CAdoRecordSet::GetRecordCount
000c7 89 45 dc mov DWORD PTR _lAllCount$53[ebp], eax
; 86 : if ( b && lAllCount>0) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>û<EFBFBD>
000ca 83 7d e0 00 cmp DWORD PTR _b$54[ebp], 0
000ce 0f 84 db 10 00
00 je $LN6@On_SPDZ
000d4 83 7d dc 00 cmp DWORD PTR _lAllCount$53[ebp], 0
000d8 0f 8e d1 10 00
00 jle $LN6@On_SPDZ
; 87 : {
; 88 : m_AdoRS.MoveFirst();
000de 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
000e1 83 c1 68 add ecx, 104 ; 00000068H
000e4 e8 00 00 00 00 call ?MoveFirst@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::MoveFirst
; 89 : long lCorpID=0;
000e9 c7 45 d8 00 00
00 00 mov DWORD PTR _lCorpID$52[ebp], 0
; 90 : long lUserID=0;
000f0 c7 45 d4 00 00
00 00 mov DWORD PTR _lUserID$51[ebp], 0
; 91 : CString strMobile;
000f7 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
000fa e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
000ff c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+12], 2
; 92 : TCHAR szOldOperCmd[32]={0};
00103 6a 40 push 64 ; 00000040H
00105 6a 00 push 0
00107 8d 45 90 lea eax, DWORD PTR _szOldOperCmd$49[ebp]
0010a 50 push eax
0010b e8 00 00 00 00 call _memset
00110 83 c4 0c add esp, 12 ; 0000000cH
; 93 : TCHAR szOldAddCmd[32]={0};
00113 6a 40 push 64 ; 00000040H
00115 6a 00 push 0
00117 8d 85 50 ff ff
ff lea eax, DWORD PTR _szOldAddCmd$48[ebp]
0011d 50 push eax
0011e e8 00 00 00 00 call _memset
00123 83 c4 0c add esp, 12 ; 0000000cH
; 94 : COleDateTime tOldBirthday;
00126 8d 8d 44 ff ff
ff lea ecx, DWORD PTR _tOldBirthday$47[ebp]
0012c e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 95 : BOOL bOldMsg = false;
00131 c7 85 40 ff ff
ff 00 00 00 00 mov DWORD PTR _bOldMsg$46[ebp], 0
; 96 : long lOldPrice=0;
0013b c7 85 3c ff ff
ff 00 00 00 00 mov DWORD PTR _lOldPrice$45[ebp], 0
; 97 : CString strOldMsg;
00145 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
0014b e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00150 c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+12], 3
; 98 : long lOperCmdID;
; 99 : COleDateTime tBirthday;
00154 8d 8d 28 ff ff
ff lea ecx, DWORD PTR _tBirthday$42[ebp]
0015a e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 100 : TCHAR szOperCmd[32]={0};
0015f 6a 40 push 64 ; 00000040H
00161 6a 00 push 0
00163 8d 85 e8 fe ff
ff lea eax, DWORD PTR _szOperCmd$41[ebp]
00169 50 push eax
0016a e8 00 00 00 00 call _memset
0016f 83 c4 0c add esp, 12 ; 0000000cH
; 101 : TCHAR szAddCmd[32]={0};
00172 6a 40 push 64 ; 00000040H
00174 6a 00 push 0
00176 8d 85 a8 fe ff
ff lea eax, DWORD PTR _szAddCmd$40[ebp]
0017c 50 push eax
0017d e8 00 00 00 00 call _memset
00182 83 c4 0c add esp, 12 ; 0000000cH
; 102 : COleDateTime tSend;
00185 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
0018b e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 103 : COleDateTime tYSend; //Ӧ<><D3A6><EFBFBD>͵<EFBFBD>ʱ<EFBFBD><CAB1>
00190 8d 8d 90 fe ff
ff lea ecx, DWORD PTR _tYSend$38[ebp]
00196 e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 104 : long lDZID;
; 105 : long lAllCount2=0;
0019b c7 85 88 fe ff
ff 00 00 00 00 mov DWORD PTR _lAllCount2$36[ebp], 0
$LN2@On_SPDZ:
; 106 : while( !m_AdoRS.IsEOF() && lAllCount2<lAllCount)
001a5 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
001a8 83 c1 68 add ecx, 104 ; 00000068H
001ab e8 00 00 00 00 call ?IsEOF@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::IsEOF
001b0 85 c0 test eax, eax
001b2 0f 85 dc 0f 00
00 jne $LN3@On_SPDZ
001b8 8b 85 88 fe ff
ff mov eax, DWORD PTR _lAllCount2$36[ebp]
001be 3b 45 dc cmp eax, DWORD PTR _lAllCount$53[ebp]
001c1 0f 8d cd 0f 00
00 jge $LN3@On_SPDZ
; 107 : {
; 108 : m_AdoRS.GetCollect( _T("CorpID"), lCorpID );
001c7 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
001ca 83 c0 68 add eax, 104 ; 00000068H
001cd 89 85 04 16 ff
ff mov DWORD PTR tv162[ebp], eax
001d3 8d 4d d8 lea ecx, DWORD PTR _lCorpID$52[ebp]
001d6 51 push ecx
001d7 68 00 00 00 00 push OFFSET ??_C@_1O@CLJHPHJA@?$AAC?$AAo?$AAr?$AAp?$AAI?$AAD@
001dc 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv162[ebp]
001e2 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z ; CAdoRecordSet::GetCollect
; 109 : m_AdoRS.GetCollect( _T("UserID"), lUserID );
001e7 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
001ea 83 c0 68 add eax, 104 ; 00000068H
001ed 89 85 04 16 ff
ff mov DWORD PTR tv168[ebp], eax
001f3 8d 4d d4 lea ecx, DWORD PTR _lUserID$51[ebp]
001f6 51 push ecx
001f7 68 00 00 00 00 push OFFSET ??_C@_1O@DLKCLNNL@?$AAU?$AAs?$AAe?$AAr?$AAI?$AAD@
001fc 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv168[ebp]
00202 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z ; CAdoRecordSet::GetCollect
; 110 : m_AdoRS.GetCollect( _T("OperCmd"), szOperCmd );
00207 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0020a 83 c0 68 add eax, 104 ; 00000068H
0020d 89 85 04 16 ff
ff mov DWORD PTR tv174[ebp], eax
00213 8d 8d e8 fe ff
ff lea ecx, DWORD PTR _szOperCmd$41[ebp]
00219 51 push ecx
0021a 68 00 00 00 00 push OFFSET ??_C@_1BA@LMMOGBEM@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd@
0021f 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv174[ebp]
00225 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WPA_W@Z ; CAdoRecordSet::GetCollect
; 111 : m_AdoRS.GetCollect( _T("AddCmd") , szAddCmd );
0022a 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0022d 83 c0 68 add eax, 104 ; 00000068H
00230 89 85 04 16 ff
ff mov DWORD PTR tv180[ebp], eax
00236 8d 8d a8 fe ff
ff lea ecx, DWORD PTR _szAddCmd$40[ebp]
0023c 51 push ecx
0023d 68 00 00 00 00 push OFFSET ??_C@_1O@KGJGNKBM@?$AAA?$AAd?$AAd?$AAC?$AAm?$AAd@
00242 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv180[ebp]
00248 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WPA_W@Z ; CAdoRecordSet::GetCollect
; 112 : m_AdoRS.GetCollect( _T("Mobile") , strMobile );
0024d 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00250 83 c0 68 add eax, 104 ; 00000068H
00253 89 85 04 16 ff
ff mov DWORD PTR tv186[ebp], eax
00259 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
0025c 51 push ecx
0025d 68 00 00 00 00 push OFFSET ??_C@_1O@OLLJFFCG@?$AAM?$AAo?$AAb?$AAi?$AAl?$AAe@
00262 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv186[ebp]
00268 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CAdoRecordSet::GetCollect
; 113 : m_AdoRS.GetCollect( _T("DZID") , lDZID );
0026d 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00270 83 c0 68 add eax, 104 ; 00000068H
00273 89 85 04 16 ff
ff mov DWORD PTR tv192[ebp], eax
00279 8d 8d 8c fe ff
ff lea ecx, DWORD PTR _lDZID$37[ebp]
0027f 51 push ecx
00280 68 00 00 00 00 push OFFSET ??_C@_19HDODELJD@?$AAD?$AAZ?$AAI?$AAD@
00285 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv192[ebp]
0028b e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z ; CAdoRecordSet::GetCollect
; 114 : m_AdoRS.GetCollect( _T("OperCmdID") , lOperCmdID );
00290 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00293 83 c0 68 add eax, 104 ; 00000068H
00296 89 85 04 16 ff
ff mov DWORD PTR tv198[ebp], eax
0029c 8d 8d 34 ff ff
ff lea ecx, DWORD PTR _lOperCmdID$43[ebp]
002a2 51 push ecx
002a3 68 00 00 00 00 push OFFSET ??_C@_1BE@DDFINHDL@?$AAO?$AAp?$AAe?$AAr?$AAC?$AAm?$AAd?$AAI?$AAD@
002a8 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv198[ebp]
002ae e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z ; CAdoRecordSet::GetCollect
; 115 : m_AdoRS.GetCollect( _T("SendLast") , tSend );
002b3 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
002b6 83 c0 68 add eax, 104 ; 00000068H
002b9 89 85 04 16 ff
ff mov DWORD PTR tv204[ebp], eax
002bf 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
002c5 51 push ecx
002c6 68 00 00 00 00 push OFFSET ??_C@_1BC@DIGKBDEI@?$AAS?$AAe?$AAn?$AAd?$AAL?$AAa?$AAs?$AAt@
002cb 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv204[ebp]
002d1 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAVCOleDateTime@ATL@@@Z ; CAdoRecordSet::GetCollect
; 116 : m_AdoRS.GetCollect( _T("Birthday") , tBirthday );
002d6 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
002d9 83 c0 68 add eax, 104 ; 00000068H
002dc 89 85 04 16 ff
ff mov DWORD PTR tv210[ebp], eax
002e2 8d 8d 28 ff ff
ff lea ecx, DWORD PTR _tBirthday$42[ebp]
002e8 51 push ecx
002e9 68 00 00 00 00 push OFFSET ??_C@_1BC@KMMELMEH@?$AAB?$AAi?$AAr?$AAt?$AAh?$AAd?$AAa?$AAy@
002ee 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv210[ebp]
002f4 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAVCOleDateTime@ATL@@@Z ; CAdoRecordSet::GetCollect
; 117 : Sleep(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>
002f9 6a 0a push 10 ; 0000000aH
002fb ff 15 00 00 00
00 call DWORD PTR __imp__Sleep@4
; 118 : if ( strMobile.GetLength() < 11 )
00301 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
00304 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
00309 83 f8 0b cmp eax, 11 ; 0000000bH
0030c 7d 1f jge SHORT $LN7@On_SPDZ
; 119 : {
; 120 : lAllCount2 ++;
0030e 8b 85 88 fe ff
ff mov eax, DWORD PTR _lAllCount2$36[ebp]
00314 83 c0 01 add eax, 1
00317 89 85 88 fe ff
ff mov DWORD PTR _lAllCount2$36[ebp], eax
; 121 : m_AdoRS.MoveNext();
0031d 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00320 83 c1 68 add ecx, 104 ; 00000068H
00323 e8 00 00 00 00 call ?MoveNext@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::MoveNext
; 122 : continue;
00328 e9 78 fe ff ff jmp $LN2@On_SPDZ
$LN7@On_SPDZ:
; 123 : }
; 124 :
; 125 : if ( bOldMsg &&
; 126 : !_tcscmp(szOperCmd,szOldOperCmd) && //<2F>¾<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
; 127 : !_tcscmp(szAddCmd,szOldAddCmd ) &&
0032d 83 bd 40 ff ff
ff 00 cmp DWORD PTR _bOldMsg$46[ebp], 0
00334 0f 84 af 01 00
00 je $LN8@On_SPDZ
0033a 8d 45 90 lea eax, DWORD PTR _szOldOperCmd$49[ebp]
0033d 50 push eax
0033e 8d 8d e8 fe ff
ff lea ecx, DWORD PTR _szOperCmd$41[ebp]
00344 51 push ecx
00345 e8 00 00 00 00 call _wcscmp
0034a 83 c4 08 add esp, 8
0034d 85 c0 test eax, eax
0034f 0f 85 94 01 00
00 jne $LN8@On_SPDZ
00355 8d 85 50 ff ff
ff lea eax, DWORD PTR _szOldAddCmd$48[ebp]
0035b 50 push eax
0035c 8d 8d a8 fe ff
ff lea ecx, DWORD PTR _szAddCmd$40[ebp]
00362 51 push ecx
00363 e8 00 00 00 00 call _wcscmp
00368 83 c4 08 add esp, 8
0036b 85 c0 test eax, eax
0036d 0f 85 76 01 00
00 jne $LN8@On_SPDZ
00373 8d 85 44 ff ff
ff lea eax, DWORD PTR _tOldBirthday$47[ebp]
00379 50 push eax
0037a 8d 8d 28 ff ff
ff lea ecx, DWORD PTR _tBirthday$42[ebp]
00380 e8 00 00 00 00 call ??8COleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator==
00385 0f b6 c8 movzx ecx, al
00388 85 c9 test ecx, ecx
0038a 0f 84 59 01 00
00 je $LN8@On_SPDZ
; 128 : tBirthday== tOldBirthday )
; 129 : {
; 130 : CString strSelect3;
00390 8d 8d 84 fe ff
ff lea ecx, DWORD PTR _strSelect3$35[ebp]
00396 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0039b c6 45 fc 04 mov BYTE PTR __$EHRec$[ebp+12], 4
; 131 : if ( tSend.GetStatus()!= COleDateTime::valid || tSend < tYSend ) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ϊ<EFBFBD>գ<EFBFBD><D5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>С<EFBFBD><D0A1>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,<2C><><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
0039f 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
003a5 e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
003aa 85 c0 test eax, eax
003ac 75 1d jne SHORT $LN11@On_SPDZ
003ae 8d 85 90 fe ff
ff lea eax, DWORD PTR _tYSend$38[ebp]
003b4 50 push eax
003b5 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
003bb e8 00 00 00 00 call ??MCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator<
003c0 0f b6 c8 movzx ecx, al
003c3 85 c9 test ecx, ecx
003c5 0f 84 0a 01 00
00 je $LN10@On_SPDZ
$LN11@On_SPDZ:
; 132 : {
; 133 : //<2F><><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
; 134 : strSelect3.Format( _T("update dz set SendLast=GetDATE() where DZID=%d") ,lDZID );
003cb 8b 85 8c fe ff
ff mov eax, DWORD PTR _lDZID$37[ebp]
003d1 50 push eax
003d2 68 00 00 00 00 push OFFSET ??_C@_1FO@EEKDKMAK@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAd?$AAz?$AA?5?$AAs?$AAe?$AAt?$AA?5?$AAS@
003d7 8d 8d 84 fe ff
ff lea ecx, DWORD PTR _strSelect3$35[ebp]
003dd 51 push ecx
003de e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
003e3 83 c4 0c add esp, 12 ; 0000000cH
; 135 : m_AdoRS2.Open(strSelect3);
003e6 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
003e9 05 a0 00 00 00 add eax, 160 ; 000000a0H
003ee 89 85 04 16 ff
ff mov DWORD PTR tv263[ebp], eax
003f4 6a 03 push 3
003f6 6a 03 push 3
003f8 6a 01 push 1
003fa 8d 8d 84 fe ff
ff lea ecx, DWORD PTR _strSelect3$35[ebp]
00400 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00405 50 push eax
00406 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv263[ebp]
0040c e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
; 136 : m_AdoRS2.Close();
00411 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00414 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
0041a e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 137 :
; 138 :
; 139 : //<2F><EFBFBD><E1BDBB><EFBFBD><EFBFBD>
; 140 : long lMobType = MOBILE_TYPE_CMCC;
0041f c7 85 80 fe ff
ff 00 00 00 00 mov DWORD PTR _lMobType$34[ebp], 0
; 141 : //if ( isNumUnicom((char*)(LPCTSTR)strMobile) )
; 142 : // lMobType = MOBILE_TYPE_UNICOM;
; 143 :
; 144 : SubmitData data={0};
00429 68 94 44 00 00 push 17556 ; 00004494H
0042e 6a 00 push 0
00430 8d 85 ec b9 ff
ff lea eax, DWORD PTR _data$33[ebp]
00436 50 push eax
00437 e8 00 00 00 00 call _memset
0043c 83 c4 0c add esp, 12 ; 0000000cH
; 145 : data.lCorpID = lCorpID;
0043f 8b 45 d8 mov eax, DWORD PTR _lCorpID$52[ebp]
00442 89 85 fc b9 ff
ff mov DWORD PTR _data$33[ebp+16], eax
; 146 : data.lUserID = lUserID;
00448 8b 45 d4 mov eax, DWORD PTR _lUserID$51[ebp]
0044b 89 85 00 ba ff
ff mov DWORD PTR _data$33[ebp+20], eax
; 147 : _tcscpy( data.szName , _T("SP") );
00451 68 00 00 00 00 push OFFSET ??_C@_15PCKCLKH@?$AAS?$AAP@
00456 8d 85 44 ba ff
ff lea eax, DWORD PTR _data$33[ebp+88]
0045c 50 push eax
0045d e8 00 00 00 00 call _wcscpy
00462 83 c4 08 add esp, 8
; 148 : _tcscpy( data.szMobile , strMobile );
00465 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
00468 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
0046d 50 push eax
0046e 8d 85 84 ba ff
ff lea eax, DWORD PTR _data$33[ebp+152]
00474 50 push eax
00475 e8 00 00 00 00 call _wcscpy
0047a 83 c4 08 add esp, 8
; 149 : _tcscpy( data.szMsg , strOldMsg );
0047d 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
00483 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00488 50 push eax
00489 8d 85 c4 ba ff
ff lea eax, DWORD PTR _data$33[ebp+216]
0048f 50 push eax
00490 e8 00 00 00 00 call _wcscpy
00495 83 c4 08 add esp, 8
; 150 : CSendThread::SubmitSms( data,&m_AdoRS2,&m_AdoRS3,m_pSMSDlg,lMobType,SMSTYPE_SP,lOldPrice); //<2F><><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
00498 8b 85 3c ff ff
ff mov eax, DWORD PTR _lOldPrice$45[ebp]
0049e 50 push eax
0049f 6a 05 push 5
004a1 8b 8d 80 fe ff
ff mov ecx, DWORD PTR _lMobType$34[ebp]
004a7 51 push ecx
004a8 8b 55 e8 mov edx, DWORD PTR _this$[ebp]
004ab 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
004b1 50 push eax
004b2 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
004b5 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
004bb 51 push ecx
004bc 8b 55 e8 mov edx, DWORD PTR _this$[ebp]
004bf 81 c2 a0 00 00
00 add edx, 160 ; 000000a0H
004c5 52 push edx
004c6 8d 85 ec b9 ff
ff lea eax, DWORD PTR _data$33[ebp]
004cc 50 push eax
004cd e8 00 00 00 00 call ?SubmitSms@CSendThread@@SAJAAU_SubmitData@@PAVCAdoRecordSet@@1PAVCSmsCenterDlg@@JJJ@Z ; CSendThread::SubmitSms
004d2 83 c4 1c add esp, 28 ; 0000001cH
$LN10@On_SPDZ:
; 151 : }
; 152 : }
004d5 c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+12], 3
004d9 8d 8d 84 fe ff
ff lea ecx, DWORD PTR _strSelect3$35[ebp]
004df e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
004e4 e9 8c 0c 00 00 jmp $LN9@On_SPDZ
$LN8@On_SPDZ:
; 153 : else
; 154 : {
; 155 : bOldMsg = false;
004e9 c7 85 40 ff ff
ff 00 00 00 00 mov DWORD PTR _bOldMsg$46[ebp], 0
; 156 : _tcscpy( szOldOperCmd , szOperCmd ); //<2F><><EFBFBD>浱ǰָ<C7B0><D6B8>
004f3 8d 85 e8 fe ff
ff lea eax, DWORD PTR _szOperCmd$41[ebp]
004f9 50 push eax
004fa 8d 4d 90 lea ecx, DWORD PTR _szOldOperCmd$49[ebp]
004fd 51 push ecx
004fe e8 00 00 00 00 call _wcscpy
00503 83 c4 08 add esp, 8
; 157 : _tcscpy( szOldAddCmd , szAddCmd );
00506 8d 85 a8 fe ff
ff lea eax, DWORD PTR _szAddCmd$40[ebp]
0050c 50 push eax
0050d 8d 8d 50 ff ff
ff lea ecx, DWORD PTR _szOldAddCmd$48[ebp]
00513 51 push ecx
00514 e8 00 00 00 00 call _wcscpy
00519 83 c4 08 add esp, 8
; 158 : tOldBirthday = tBirthday;
0051c 8b 85 28 ff ff
ff mov eax, DWORD PTR _tBirthday$42[ebp]
00522 89 85 44 ff ff
ff mov DWORD PTR _tOldBirthday$47[ebp], eax
00528 8b 8d 2c ff ff
ff mov ecx, DWORD PTR _tBirthday$42[ebp+4]
0052e 89 8d 48 ff ff
ff mov DWORD PTR _tOldBirthday$47[ebp+4], ecx
00534 8b 95 30 ff ff
ff mov edx, DWORD PTR _tBirthday$42[ebp+8]
0053a 89 95 4c ff ff
ff mov DWORD PTR _tOldBirthday$47[ebp+8], edx
; 159 : //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
; 160 : CString strSelect2;
00540 8d 8d e8 b9 ff
ff lea ecx, DWORD PTR _strSelect2$32[ebp]
00546 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0054b c6 45 fc 05 mov BYTE PTR __$EHRec$[ebp+12], 5
; 161 : BOOL b2;
; 162 : //Sleep(100); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>Ҫ<EFBFBD><D2AA>
; 163 : strSelect2.Format(_T("select * from OperCmd where OperCmdID=%d"),lOperCmdID);
0054f 8b 85 34 ff ff
ff mov eax, DWORD PTR _lOperCmdID$43[ebp]
00555 50 push eax
00556 68 00 00 00 00 push OFFSET ??_C@_1FC@CKBOBDNO@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAO@
0055b 8d 8d e8 b9 ff
ff lea ecx, DWORD PTR _strSelect2$32[ebp]
00561 51 push ecx
00562 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00567 83 c4 0c add esp, 12 ; 0000000cH
; 164 : b2 = m_AdoRS2.Open( strSelect2 );
0056a 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0056d 05 a0 00 00 00 add eax, 160 ; 000000a0H
00572 89 85 04 16 ff
ff mov DWORD PTR tv352[ebp], eax
00578 6a 03 push 3
0057a 6a 03 push 3
0057c 6a 01 push 1
0057e 8d 8d e8 b9 ff
ff lea ecx, DWORD PTR _strSelect2$32[ebp]
00584 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00589 50 push eax
0058a 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv352[ebp]
00590 e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
00595 89 85 e4 b9 ff
ff mov DWORD PTR _b2$31[ebp], eax
; 165 : if ( b2 && m_AdoRS2.GetRecordCount() )
0059b 83 bd e4 b9 ff
ff 00 cmp DWORD PTR _b2$31[ebp], 0
005a2 0f 84 be 0b 00
00 je $LN12@On_SPDZ
005a8 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
005ab 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
005b1 e8 00 00 00 00 call ?GetRecordCount@CAdoRecordSet@@QAEJXZ ; CAdoRecordSet::GetRecordCount
005b6 85 c0 test eax, eax
005b8 0f 84 a8 0b 00
00 je $LN12@On_SPDZ
; 166 : {
; 167 : //<2F><><EFBFBD>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD>ʱ<EFBFBD><EFBFBD><E4B7A2>
; 168 : long lTemp;
; 169 : BOOL bWeek;
; 170 : TCHAR szWeek[32]={0};
005be 6a 40 push 64 ; 00000040H
005c0 6a 00 push 0
005c2 8d 85 9c b9 ff
ff lea eax, DWORD PTR _szWeek$28[ebp]
005c8 50 push eax
005c9 e8 00 00 00 00 call _memset
005ce 83 c4 0c add esp, 12 ; 0000000cH
; 171 : COleDateTime t1;
005d1 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
005d7 e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 172 : COleDateTime t2;
005dc 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
005e2 e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 173 : COleDateTime t3;
005e7 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
005ed e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@XZ ; ATL::COleDateTime::COleDateTime
; 174 : COleDateTime tNow = ::COleDateTime::GetCurrentTime();
005f2 8d 85 6c b9 ff
ff lea eax, DWORD PTR _tNow$24[ebp]
005f8 50 push eax
005f9 e8 00 00 00 00 call ?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ ; ATL::COleDateTime::GetTickCount
; 175 : m_AdoRS2.MoveFirst();
005fe 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00601 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00607 e8 00 00 00 00 call ?MoveFirst@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::MoveFirst
; 176 : m_AdoRS2.GetCollect( _T("DZSendTime1") , t1 );
0060c 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0060f 05 a0 00 00 00 add eax, 160 ; 000000a0H
00614 89 85 04 16 ff
ff mov DWORD PTR tv373[ebp], eax
0061a 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
00620 51 push ecx
00621 68 00 00 00 00 push OFFSET ??_C@_1BI@FLJFLJON@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA1@
00626 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv373[ebp]
0062c e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAVCOleDateTime@ATL@@@Z ; CAdoRecordSet::GetCollect
; 177 : m_AdoRS2.GetCollect( _T("DZSendTime2") , t2 );
00631 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00634 05 a0 00 00 00 add eax, 160 ; 000000a0H
00639 89 85 04 16 ff
ff mov DWORD PTR tv379[ebp], eax
0063f 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
00645 51 push ecx
00646 68 00 00 00 00 push OFFSET ??_C@_1BI@EJCABGAD@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA2@
0064b 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv379[ebp]
00651 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAVCOleDateTime@ATL@@@Z ; CAdoRecordSet::GetCollect
; 178 : m_AdoRS2.GetCollect( _T("DZSendTime3") , t3 );
00656 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00659 05 a0 00 00 00 add eax, 160 ; 000000a0H
0065e 89 85 04 16 ff
ff mov DWORD PTR tv385[ebp], eax
00664 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
0066a 51 push ecx
0066b 68 00 00 00 00 push OFFSET ??_C@_1BI@PBJMHBGG@?$AAD?$AAZ?$AAS?$AAe?$AAn?$AAd?$AAT?$AAi?$AAm?$AAe?$AA3@
00670 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv385[ebp]
00676 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAVCOleDateTime@ATL@@@Z ; CAdoRecordSet::GetCollect
; 179 : m_AdoRS2.GetCollect( _T("Price") , lOldPrice );
0067b 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0067e 05 a0 00 00 00 add eax, 160 ; 000000a0H
00683 89 85 04 16 ff
ff mov DWORD PTR tv391[ebp], eax
00689 8d 8d 3c ff ff
ff lea ecx, DWORD PTR _lOldPrice$45[ebp]
0068f 51 push ecx
00690 68 00 00 00 00 push OFFSET ??_C@_1M@HNBPHGM@?$AAP?$AAr?$AAi?$AAc?$AAe@
00695 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv391[ebp]
0069b e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z ; CAdoRecordSet::GetCollect
; 180 : m_AdoRS2.GetCollect( _T("isWeek") , bWeek );
006a0 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
006a3 05 a0 00 00 00 add eax, 160 ; 000000a0H
006a8 89 85 04 16 ff
ff mov DWORD PTR tv397[ebp], eax
006ae 8d 8d dc b9 ff
ff lea ecx, DWORD PTR _bWeek$29[ebp]
006b4 51 push ecx
006b5 68 00 00 00 00 push OFFSET ??_C@_1O@CIMGHIFA@?$AAi?$AAs?$AAW?$AAe?$AAe?$AAk@
006ba 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv397[ebp]
006c0 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAH@Z ; CAdoRecordSet::GetCollect
; 181 : m_AdoRS2.GetCollect( _T("WeekDay"), szWeek );
006c5 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
006c8 05 a0 00 00 00 add eax, 160 ; 000000a0H
006cd 89 85 04 16 ff
ff mov DWORD PTR tv403[ebp], eax
006d3 8d 8d 9c b9 ff
ff lea ecx, DWORD PTR _szWeek$28[ebp]
006d9 51 push ecx
006da 68 00 00 00 00 push OFFSET ??_C@_1BA@MPCEHOJO@?$AAW?$AAe?$AAe?$AAk?$AAD?$AAa?$AAy@
006df 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv403[ebp]
006e5 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WPA_W@Z ; CAdoRecordSet::GetCollect
; 182 : m_AdoRS2.Close();
006ea 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
006ed 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
006f3 e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 183 :
; 184 : t1.SetDateTime(tNow.GetYear() , tNow.GetMonth() , tNow.GetDay(),t1.GetHour(),t1.GetMinute(),t1.GetSecond());
006f8 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
006fe e8 00 00 00 00 call ?GetSecond@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetSecond
00703 89 85 04 16 ff
ff mov DWORD PTR tv436[ebp], eax
00709 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
0070f e8 00 00 00 00 call ?GetMinute@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMinute
00714 89 85 00 16 ff
ff mov DWORD PTR tv434[ebp], eax
0071a 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
00720 e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
00725 89 85 fc 15 ff
ff mov DWORD PTR tv432[ebp], eax
0072b 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00731 e8 00 00 00 00 call ?GetDay@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetDay
00736 89 85 f8 15 ff
ff mov DWORD PTR tv430[ebp], eax
0073c 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00742 e8 00 00 00 00 call ?GetMonth@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMonth
00747 89 85 f4 15 ff
ff mov DWORD PTR tv428[ebp], eax
0074d 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00753 e8 00 00 00 00 call ?GetYear@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetYear
00758 89 85 f0 15 ff
ff mov DWORD PTR tv426[ebp], eax
0075e 8b 85 04 16 ff
ff mov eax, DWORD PTR tv436[ebp]
00764 50 push eax
00765 8b 8d 00 16 ff
ff mov ecx, DWORD PTR tv434[ebp]
0076b 51 push ecx
0076c 8b 95 fc 15 ff
ff mov edx, DWORD PTR tv432[ebp]
00772 52 push edx
00773 8b 85 f8 15 ff
ff mov eax, DWORD PTR tv430[ebp]
00779 50 push eax
0077a 8b 8d f4 15 ff
ff mov ecx, DWORD PTR tv428[ebp]
00780 51 push ecx
00781 8b 95 f0 15 ff
ff mov edx, DWORD PTR tv426[ebp]
00787 52 push edx
00788 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
0078e e8 00 00 00 00 call ?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z ; ATL::COleDateTime::SetDateTime
; 185 : t2.SetDateTime(tNow.GetYear() , tNow.GetMonth() , tNow.GetDay(),t2.GetHour(),t2.GetMinute(),t2.GetSecond());
00793 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
00799 e8 00 00 00 00 call ?GetSecond@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetSecond
0079e 89 85 04 16 ff
ff mov DWORD PTR tv467[ebp], eax
007a4 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
007aa e8 00 00 00 00 call ?GetMinute@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMinute
007af 89 85 00 16 ff
ff mov DWORD PTR tv465[ebp], eax
007b5 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
007bb e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
007c0 89 85 fc 15 ff
ff mov DWORD PTR tv463[ebp], eax
007c6 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
007cc e8 00 00 00 00 call ?GetDay@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetDay
007d1 89 85 f8 15 ff
ff mov DWORD PTR tv461[ebp], eax
007d7 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
007dd e8 00 00 00 00 call ?GetMonth@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMonth
007e2 89 85 f4 15 ff
ff mov DWORD PTR tv459[ebp], eax
007e8 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
007ee e8 00 00 00 00 call ?GetYear@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetYear
007f3 89 85 f0 15 ff
ff mov DWORD PTR tv457[ebp], eax
007f9 8b 85 04 16 ff
ff mov eax, DWORD PTR tv467[ebp]
007ff 50 push eax
00800 8b 8d 00 16 ff
ff mov ecx, DWORD PTR tv465[ebp]
00806 51 push ecx
00807 8b 95 fc 15 ff
ff mov edx, DWORD PTR tv463[ebp]
0080d 52 push edx
0080e 8b 85 f8 15 ff
ff mov eax, DWORD PTR tv461[ebp]
00814 50 push eax
00815 8b 8d f4 15 ff
ff mov ecx, DWORD PTR tv459[ebp]
0081b 51 push ecx
0081c 8b 95 f0 15 ff
ff mov edx, DWORD PTR tv457[ebp]
00822 52 push edx
00823 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
00829 e8 00 00 00 00 call ?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z ; ATL::COleDateTime::SetDateTime
; 186 : t3.SetDateTime(tNow.GetYear() , tNow.GetMonth() , tNow.GetDay(),t3.GetHour(),t3.GetMinute(),t3.GetSecond());
0082e 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
00834 e8 00 00 00 00 call ?GetSecond@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetSecond
00839 89 85 04 16 ff
ff mov DWORD PTR tv498[ebp], eax
0083f 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
00845 e8 00 00 00 00 call ?GetMinute@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMinute
0084a 89 85 00 16 ff
ff mov DWORD PTR tv496[ebp], eax
00850 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
00856 e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
0085b 89 85 fc 15 ff
ff mov DWORD PTR tv494[ebp], eax
00861 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00867 e8 00 00 00 00 call ?GetDay@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetDay
0086c 89 85 f8 15 ff
ff mov DWORD PTR tv492[ebp], eax
00872 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00878 e8 00 00 00 00 call ?GetMonth@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetMonth
0087d 89 85 f4 15 ff
ff mov DWORD PTR tv490[ebp], eax
00883 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00889 e8 00 00 00 00 call ?GetYear@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetYear
0088e 89 85 f0 15 ff
ff mov DWORD PTR tv488[ebp], eax
00894 8b 85 04 16 ff
ff mov eax, DWORD PTR tv498[ebp]
0089a 50 push eax
0089b 8b 8d 00 16 ff
ff mov ecx, DWORD PTR tv496[ebp]
008a1 51 push ecx
008a2 8b 95 fc 15 ff
ff mov edx, DWORD PTR tv494[ebp]
008a8 52 push edx
008a9 8b 85 f8 15 ff
ff mov eax, DWORD PTR tv492[ebp]
008af 50 push eax
008b0 8b 8d f4 15 ff
ff mov ecx, DWORD PTR tv490[ebp]
008b6 51 push ecx
008b7 8b 95 f0 15 ff
ff mov edx, DWORD PTR tv488[ebp]
008bd 52 push edx
008be 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
008c4 e8 00 00 00 00 call ?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z ; ATL::COleDateTime::SetDateTime
; 187 : SYSTEMTIME ttn;tNow.GetAsSystemTime(ttn);
008c9 8d 85 5c b9 ff
ff lea eax, DWORD PTR _ttn$23[ebp]
008cf 50 push eax
008d0 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
008d6 e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 188 : SYSTEMTIME tts;tSend.GetAsSystemTime(tts);
008db 8d 85 4c b9 ff
ff lea eax, DWORD PTR _tts$22[ebp]
008e1 50 push eax
008e2 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
008e8 e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 189 : SYSTEMTIME tt1;t1.GetAsSystemTime(tt1);
008ed 8d 85 3c b9 ff
ff lea eax, DWORD PTR _tt1$21[ebp]
008f3 50 push eax
008f4 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
008fa e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 190 : SYSTEMTIME tt2;t2.GetAsSystemTime(tt2);
008ff 8d 85 2c b9 ff
ff lea eax, DWORD PTR _tt2$20[ebp]
00905 50 push eax
00906 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
0090c e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 191 : SYSTEMTIME tt3;t3.GetAsSystemTime(tt3);
00911 8d 85 1c b9 ff
ff lea eax, DWORD PTR _tt3$19[ebp]
00917 50 push eax
00918 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
0091e e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 192 :
; 193 : BOOL bSend=false;
00923 c7 85 18 b9 ff
ff 00 00 00 00 mov DWORD PTR _bSend$18[ebp], 0
; 194 : if ( !bSend &&
; 195 : tSend.GetStatus() != COleDateTime::valid &&
; 196 : t1.GetHour() > 2 &&
0092d 83 bd 18 b9 ff
ff 00 cmp DWORD PTR _bSend$18[ebp], 0
00934 75 66 jne SHORT $LN13@On_SPDZ
00936 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
0093c e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00941 85 c0 test eax, eax
00943 74 57 je SHORT $LN13@On_SPDZ
00945 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
0094b e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
00950 83 f8 02 cmp eax, 2
00953 7e 47 jle SHORT $LN13@On_SPDZ
00955 8d 85 90 b9 ff
ff lea eax, DWORD PTR _t1$27[ebp]
0095b 50 push eax
0095c 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00962 e8 00 00 00 00 call ??OCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator>
00967 0f b6 c8 movzx ecx, al
0096a 85 c9 test ecx, ecx
0096c 74 2e je SHORT $LN13@On_SPDZ
; 197 : tNow>t1 )
; 198 : {
; 199 : bSend = true;
0096e c7 85 18 b9 ff
ff 01 00 00 00 mov DWORD PTR _bSend$18[ebp], 1
; 200 : tYSend = t1;
00978 8b 85 90 b9 ff
ff mov eax, DWORD PTR _t1$27[ebp]
0097e 89 85 90 fe ff
ff mov DWORD PTR _tYSend$38[ebp], eax
00984 8b 8d 94 b9 ff
ff mov ecx, DWORD PTR _t1$27[ebp+4]
0098a 89 8d 94 fe ff
ff mov DWORD PTR _tYSend$38[ebp+4], ecx
00990 8b 95 98 b9 ff
ff mov edx, DWORD PTR _t1$27[ebp+8]
00996 89 95 98 fe ff
ff mov DWORD PTR _tYSend$38[ebp+8], edx
$LN13@On_SPDZ:
; 201 : }
; 202 : if ( !bSend &&
; 203 : tSend.GetStatus() == COleDateTime::valid &&
; 204 : t1.GetHour() > 2 &&
; 205 : tSend < t1 &&
0099c 83 bd 18 b9 ff
ff 00 cmp DWORD PTR _bSend$18[ebp], 0
009a3 75 7f jne SHORT $LN14@On_SPDZ
009a5 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
009ab e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
009b0 85 c0 test eax, eax
009b2 75 70 jne SHORT $LN14@On_SPDZ
009b4 8d 8d 90 b9 ff
ff lea ecx, DWORD PTR _t1$27[ebp]
009ba e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
009bf 83 f8 02 cmp eax, 2
009c2 7e 60 jle SHORT $LN14@On_SPDZ
009c4 8d 85 90 b9 ff
ff lea eax, DWORD PTR _t1$27[ebp]
009ca 50 push eax
009cb 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
009d1 e8 00 00 00 00 call ??MCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator<
009d6 0f b6 c8 movzx ecx, al
009d9 85 c9 test ecx, ecx
009db 74 47 je SHORT $LN14@On_SPDZ
009dd 8d 85 90 b9 ff
ff lea eax, DWORD PTR _t1$27[ebp]
009e3 50 push eax
009e4 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
009ea e8 00 00 00 00 call ??OCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator>
009ef 0f b6 c8 movzx ecx, al
009f2 85 c9 test ecx, ecx
009f4 74 2e je SHORT $LN14@On_SPDZ
; 206 : tNow>t1 )
; 207 : {
; 208 : bSend = true;
009f6 c7 85 18 b9 ff
ff 01 00 00 00 mov DWORD PTR _bSend$18[ebp], 1
; 209 : tYSend = t1;
00a00 8b 85 90 b9 ff
ff mov eax, DWORD PTR _t1$27[ebp]
00a06 89 85 90 fe ff
ff mov DWORD PTR _tYSend$38[ebp], eax
00a0c 8b 8d 94 b9 ff
ff mov ecx, DWORD PTR _t1$27[ebp+4]
00a12 89 8d 94 fe ff
ff mov DWORD PTR _tYSend$38[ebp+4], ecx
00a18 8b 95 98 b9 ff
ff mov edx, DWORD PTR _t1$27[ebp+8]
00a1e 89 95 98 fe ff
ff mov DWORD PTR _tYSend$38[ebp+8], edx
$LN14@On_SPDZ:
; 210 : }
; 211 : /*
; 212 : if ( !bSend &&
; 213 : tSend.GetStatus() == COleDateTime::valid &&
; 214 : t1.GetHour() > 2 &&
; 215 : tSend > t1 &&
; 216 : tNow>t1 && tNow < t2 )
; 217 : {
; 218 : bSend = true;
; 219 : tYSend = t1;
; 220 : }
; 221 : */
; 222 : if ( !bSend &&
; 223 : tSend.GetStatus() == COleDateTime::valid &&
; 224 : t2.GetHour() > 2 &&
; 225 : tSend < t2 &&
00a24 83 bd 18 b9 ff
ff 00 cmp DWORD PTR _bSend$18[ebp], 0
00a2b 75 7f jne SHORT $LN15@On_SPDZ
00a2d 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
00a33 e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00a38 85 c0 test eax, eax
00a3a 75 70 jne SHORT $LN15@On_SPDZ
00a3c 8d 8d 84 b9 ff
ff lea ecx, DWORD PTR _t2$26[ebp]
00a42 e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
00a47 83 f8 02 cmp eax, 2
00a4a 7e 60 jle SHORT $LN15@On_SPDZ
00a4c 8d 85 84 b9 ff
ff lea eax, DWORD PTR _t2$26[ebp]
00a52 50 push eax
00a53 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
00a59 e8 00 00 00 00 call ??MCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator<
00a5e 0f b6 c8 movzx ecx, al
00a61 85 c9 test ecx, ecx
00a63 74 47 je SHORT $LN15@On_SPDZ
00a65 8d 85 84 b9 ff
ff lea eax, DWORD PTR _t2$26[ebp]
00a6b 50 push eax
00a6c 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00a72 e8 00 00 00 00 call ??OCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator>
00a77 0f b6 c8 movzx ecx, al
00a7a 85 c9 test ecx, ecx
00a7c 74 2e je SHORT $LN15@On_SPDZ
; 226 : tNow>t2 )
; 227 : {
; 228 : bSend = true;
00a7e c7 85 18 b9 ff
ff 01 00 00 00 mov DWORD PTR _bSend$18[ebp], 1
; 229 : tYSend = t2;
00a88 8b 85 84 b9 ff
ff mov eax, DWORD PTR _t2$26[ebp]
00a8e 89 85 90 fe ff
ff mov DWORD PTR _tYSend$38[ebp], eax
00a94 8b 8d 88 b9 ff
ff mov ecx, DWORD PTR _t2$26[ebp+4]
00a9a 89 8d 94 fe ff
ff mov DWORD PTR _tYSend$38[ebp+4], ecx
00aa0 8b 95 8c b9 ff
ff mov edx, DWORD PTR _t2$26[ebp+8]
00aa6 89 95 98 fe ff
ff mov DWORD PTR _tYSend$38[ebp+8], edx
$LN15@On_SPDZ:
; 230 : }
; 231 : if ( !bSend &&
; 232 : tSend.GetStatus() == COleDateTime::valid &&
; 233 : t3.GetHour() > 2 &&
; 234 : tSend < t3 &&
00aac 83 bd 18 b9 ff
ff 00 cmp DWORD PTR _bSend$18[ebp], 0
00ab3 75 7f jne SHORT $LN16@On_SPDZ
00ab5 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
00abb e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00ac0 85 c0 test eax, eax
00ac2 75 70 jne SHORT $LN16@On_SPDZ
00ac4 8d 8d 78 b9 ff
ff lea ecx, DWORD PTR _t3$25[ebp]
00aca e8 00 00 00 00 call ?GetHour@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetHour
00acf 83 f8 02 cmp eax, 2
00ad2 7e 60 jle SHORT $LN16@On_SPDZ
00ad4 8d 85 78 b9 ff
ff lea eax, DWORD PTR _t3$25[ebp]
00ada 50 push eax
00adb 8d 8d 9c fe ff
ff lea ecx, DWORD PTR _tSend$39[ebp]
00ae1 e8 00 00 00 00 call ??MCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator<
00ae6 0f b6 c8 movzx ecx, al
00ae9 85 c9 test ecx, ecx
00aeb 74 47 je SHORT $LN16@On_SPDZ
00aed 8d 85 78 b9 ff
ff lea eax, DWORD PTR _t3$25[ebp]
00af3 50 push eax
00af4 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00afa e8 00 00 00 00 call ??OCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator>
00aff 0f b6 c8 movzx ecx, al
00b02 85 c9 test ecx, ecx
00b04 74 2e je SHORT $LN16@On_SPDZ
; 235 : tNow>t3 )
; 236 : {
; 237 : bSend = true;
00b06 c7 85 18 b9 ff
ff 01 00 00 00 mov DWORD PTR _bSend$18[ebp], 1
; 238 : tYSend = t3;
00b10 8b 85 78 b9 ff
ff mov eax, DWORD PTR _t3$25[ebp]
00b16 89 85 90 fe ff
ff mov DWORD PTR _tYSend$38[ebp], eax
00b1c 8b 8d 7c b9 ff
ff mov ecx, DWORD PTR _t3$25[ebp+4]
00b22 89 8d 94 fe ff
ff mov DWORD PTR _tYSend$38[ebp+4], ecx
00b28 8b 95 80 b9 ff
ff mov edx, DWORD PTR _t3$25[ebp+8]
00b2e 89 95 98 fe ff
ff mov DWORD PTR _tYSend$38[ebp+8], edx
$LN16@On_SPDZ:
; 239 : }
; 240 :
; 241 : if ( bSend && bWeek )
00b34 83 bd 18 b9 ff
ff 00 cmp DWORD PTR _bSend$18[ebp], 0
00b3b 74 46 je SHORT $LN17@On_SPDZ
00b3d 83 bd dc b9 ff
ff 00 cmp DWORD PTR _bWeek$29[ebp], 0
00b44 74 3d je SHORT $LN17@On_SPDZ
; 242 : {
; 243 : //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˰<EFBFBD><CBB0><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>Ƚ<EFBFBD>
; 244 : lTemp = tNow.GetDayOfWeek();
00b46 8d 8d 6c b9 ff
ff lea ecx, DWORD PTR _tNow$24[ebp]
00b4c e8 00 00 00 00 call ?GetDayOfWeek@COleDateTime@ATL@@QBEHXZ ; ATL::COleDateTime::GetDayOfWeek
00b51 89 85 e0 b9 ff
ff mov DWORD PTR _lTemp$30[ebp], eax
; 245 : lTemp--;
00b57 8b 85 e0 b9 ff
ff mov eax, DWORD PTR _lTemp$30[ebp]
00b5d 83 e8 01 sub eax, 1
00b60 89 85 e0 b9 ff
ff mov DWORD PTR _lTemp$30[ebp], eax
; 246 : if ( szWeek[lTemp] != '1' ) //<2F><><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2>÷<EFBFBD><C3B7><EFBFBD>
00b66 8b 85 e0 b9 ff
ff mov eax, DWORD PTR _lTemp$30[ebp]
00b6c 0f b7 8c 45 9c
b9 ff ff movzx ecx, WORD PTR _szWeek$28[ebp+eax*2]
00b74 83 f9 31 cmp ecx, 49 ; 00000031H
00b77 74 0a je SHORT $LN17@On_SPDZ
; 247 : bSend = false;
00b79 c7 85 18 b9 ff
ff 00 00 00 00 mov DWORD PTR _bSend$18[ebp], 0
$LN17@On_SPDZ:
; 248 : }
; 249 :
; 250 : if ( bSend ) //<2F><>Ҫ<EFBFBD><D2AA><EFBFBD>ͣ<EFBFBD>ȡ<EFBFBD><C8A1>Ϣ
00b83 83 bd 18 b9 ff
ff 00 cmp DWORD PTR _bSend$18[ebp], 0
00b8a 0f 84 d6 05 00
00 je $LN12@On_SPDZ
; 251 : {
; 252 : CString strSelect3;
00b90 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00b96 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00b9b c6 45 fc 06 mov BYTE PTR __$EHRec$[ebp+12], 6
; 253 : BOOL b3;
; 254 : if ( !_tcscmp(szOperCmd,_T("XD") )) //<2F>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>
00b9f 68 00 00 00 00 push OFFSET ??_C@_15LKJGBLKM@?$AAX?$AAD@
00ba4 8d 85 e8 fe ff
ff lea eax, DWORD PTR _szOperCmd$41[ebp]
00baa 50 push eax
00bab e8 00 00 00 00 call _wcscmp
00bb0 83 c4 08 add esp, 8
00bb3 85 c0 test eax, eax
00bb5 0f 85 97 02 00
00 jne $LN20@On_SPDZ
; 255 : {
; 256 : //<2F><><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
; 257 : int iMon=0;
00bbb c7 85 0c b9 ff
ff 00 00 00 00 mov DWORD PTR _iMon$15[ebp], 0
; 258 : int iDay=0;
00bc5 c7 85 08 b9 ff
ff 00 00 00 00 mov DWORD PTR _iDay$14[ebp], 0
; 259 : if ( GetBBMonDay(tBirthday,iMon,iDay) && iDay>0 )
00bcf 8d 85 08 b9 ff
ff lea eax, DWORD PTR _iDay$14[ebp]
00bd5 50 push eax
00bd6 8d 8d 0c b9 ff
ff lea ecx, DWORD PTR _iMon$15[ebp]
00bdc 51 push ecx
00bdd 83 ec 0c sub esp, 12 ; 0000000cH
00be0 8b d4 mov edx, esp
00be2 8b 85 28 ff ff
ff mov eax, DWORD PTR _tBirthday$42[ebp]
00be8 89 02 mov DWORD PTR [edx], eax
00bea 8b 8d 2c ff ff
ff mov ecx, DWORD PTR _tBirthday$42[ebp+4]
00bf0 89 4a 04 mov DWORD PTR [edx+4], ecx
00bf3 8b 85 30 ff ff
ff mov eax, DWORD PTR _tBirthday$42[ebp+8]
00bf9 89 42 08 mov DWORD PTR [edx+8], eax
00bfc e8 00 00 00 00 call ?GetBBMonDay@CSPThread@@SAHVCOleDateTime@ATL@@AAH1@Z ; CSPThread::GetBBMonDay
00c01 83 c4 14 add esp, 20 ; 00000014H
00c04 85 c0 test eax, eax
00c06 0f 84 41 02 00
00 je $LN22@On_SPDZ
00c0c 83 bd 08 b9 ff
ff 00 cmp DWORD PTR _iDay$14[ebp], 0
00c13 0f 8e 34 02 00
00 jle $LN22@On_SPDZ
; 260 : {
; 261 : strSelect3.Format( _T("select * from DataMsg where OperCmd='%s' and convert(int,key1)=%d order by yelevel") , szOperCmd,iMon);
00c19 8b 85 0c b9 ff
ff mov eax, DWORD PTR _iMon$15[ebp]
00c1f 50 push eax
00c20 8d 8d e8 fe ff
ff lea ecx, DWORD PTR _szOperCmd$41[ebp]
00c26 51 push ecx
00c27 68 00 00 00 00 push OFFSET ??_C@_1KG@EFKDDHOK@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AA?$CK?$AA?5?$AAf?$AAr?$AAo?$AAm?$AA?5?$AAD@
00c2c 8d 95 14 b9 ff
ff lea edx, DWORD PTR _strSelect3$17[ebp]
00c32 52 push edx
00c33 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00c38 83 c4 10 add esp, 16 ; 00000010H
; 262 : b3 = m_AdoRS2.Open(strSelect3 );
00c3b 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00c3e 05 a0 00 00 00 add eax, 160 ; 000000a0H
00c43 89 85 04 16 ff
ff mov DWORD PTR tv612[ebp], eax
00c49 6a 03 push 3
00c4b 6a 03 push 3
00c4d 6a 01 push 1
00c4f 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00c55 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00c5a 50 push eax
00c5b 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv612[ebp]
00c61 e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
00c66 89 85 10 b9 ff
ff mov DWORD PTR _b3$16[ebp], eax
; 263 : if ( b3 && !m_AdoRS2.IsEOF() )
00c6c 83 bd 10 b9 ff
ff 00 cmp DWORD PTR _b3$16[ebp], 0
00c73 0f 84 d4 01 00
00 je $LN22@On_SPDZ
00c79 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00c7c 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00c82 e8 00 00 00 00 call ?IsEOF@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::IsEOF
00c87 85 c0 test eax, eax
00c89 0f 85 be 01 00
00 jne $LN22@On_SPDZ
; 264 : {
; 265 : long lAdoCount = m_AdoRS2.GetRecordCount();
00c8f 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00c92 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00c98 e8 00 00 00 00 call ?GetRecordCount@CAdoRecordSet@@QAEJXZ ; CAdoRecordSet::GetRecordCount
00c9d 89 85 04 b9 ff
ff mov DWORD PTR _lAdoCount$13[ebp], eax
; 266 : if ( iDay<=lAdoCount )
00ca3 8b 85 08 b9 ff
ff mov eax, DWORD PTR _iDay$14[ebp]
00ca9 3b 85 04 b9 ff
ff cmp eax, DWORD PTR _lAdoCount$13[ebp]
00caf 0f 8f 98 01 00
00 jg $LN22@On_SPDZ
; 267 : {
; 268 : m_AdoRS2.Move(iDay-1);
00cb5 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00cb8 05 a0 00 00 00 add eax, 160 ; 000000a0H
00cbd 89 85 04 16 ff
ff mov DWORD PTR tv644[ebp], eax
00cc3 8b 8d 08 b9 ff
ff mov ecx, DWORD PTR _iDay$14[ebp]
00cc9 83 e9 01 sub ecx, 1
00ccc 89 8d 00 16 ff
ff mov DWORD PTR tv642[ebp], ecx
00cd2 83 ec 10 sub esp, 16 ; 00000010H
00cd5 8b cc mov ecx, esp
00cd7 89 a5 10 16 ff
ff mov DWORD PTR $T4[ebp], esp
00cdd 6a 03 push 3
00cdf 6a 01 push 1
00ce1 e8 00 00 00 00 call ??0_variant_t@@QAE@JG@Z ; _variant_t::_variant_t
00ce6 89 85 fc 15 ff
ff mov DWORD PTR tv582[ebp], eax
00cec c6 45 fc 07 mov BYTE PTR __$EHRec$[ebp+12], 7
00cf0 8b 95 00 16 ff
ff mov edx, DWORD PTR tv642[ebp]
00cf6 52 push edx
00cf7 c6 45 fc 06 mov BYTE PTR __$EHRec$[ebp+12], 6
00cfb 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv644[ebp]
00d01 e8 00 00 00 00 call ?Move@CAdoRecordSet@@QAEHJV_variant_t@@@Z ; CAdoRecordSet::Move
; 269 : m_AdoRS2.GetCollect( _T("Msg") , strOldMsg );
00d06 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00d09 05 a0 00 00 00 add eax, 160 ; 000000a0H
00d0e 89 85 04 16 ff
ff mov DWORD PTR tv651[ebp], eax
00d14 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
00d1a 51 push ecx
00d1b 68 00 00 00 00 push OFFSET ??_C@_17DACEHHP@?$AAM?$AAs?$AAg@
00d20 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv651[ebp]
00d26 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CAdoRecordSet::GetCollect
; 270 : m_AdoRS2.Close();
00d2b 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00d2e 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00d34 e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 271 : //<2F><><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
; 272 : strSelect3.Format( _T("update dz set SendLast=GetDATE() where DZID=%d") ,lDZID );
00d39 8b 85 8c fe ff
ff mov eax, DWORD PTR _lDZID$37[ebp]
00d3f 50 push eax
00d40 68 00 00 00 00 push OFFSET ??_C@_1FO@EEKDKMAK@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAd?$AAz?$AA?5?$AAs?$AAe?$AAt?$AA?5?$AAS@
00d45 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00d4b 51 push ecx
00d4c e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00d51 83 c4 0c add esp, 12 ; 0000000cH
; 273 : m_AdoRS2.Open(strSelect3);
00d54 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00d57 05 a0 00 00 00 add eax, 160 ; 000000a0H
00d5c 89 85 04 16 ff
ff mov DWORD PTR tv670[ebp], eax
00d62 6a 03 push 3
00d64 6a 03 push 3
00d66 6a 01 push 1
00d68 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00d6e e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00d73 50 push eax
00d74 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv670[ebp]
00d7a e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
; 274 : m_AdoRS2.Close();
00d7f 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00d82 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00d88 e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 275 : bOldMsg = true;
00d8d c7 85 40 ff ff
ff 01 00 00 00 mov DWORD PTR _bOldMsg$46[ebp], 1
; 276 :
; 277 : //<2F><EFBFBD><E1BDBB><EFBFBD><EFBFBD>
; 278 : long lMobType = MOBILE_TYPE_CMCC;
00d97 c7 85 00 b9 ff
ff 00 00 00 00 mov DWORD PTR _lMobType$12[ebp], 0
; 279 : //if ( isNumUnicom((char*)(LPCTSTR)strMobile) )
; 280 : // lMobType = MOBILE_TYPE_UNICOM;
; 281 :
; 282 : SubmitData data={0};
00da1 68 94 44 00 00 push 17556 ; 00004494H
00da6 6a 00 push 0
00da8 8d 85 6c 74 ff
ff lea eax, DWORD PTR _data$11[ebp]
00dae 50 push eax
00daf e8 00 00 00 00 call _memset
00db4 83 c4 0c add esp, 12 ; 0000000cH
; 283 : data.lCorpID = lCorpID;
00db7 8b 45 d8 mov eax, DWORD PTR _lCorpID$52[ebp]
00dba 89 85 7c 74 ff
ff mov DWORD PTR _data$11[ebp+16], eax
; 284 : data.lUserID = lUserID;
00dc0 8b 45 d4 mov eax, DWORD PTR _lUserID$51[ebp]
00dc3 89 85 80 74 ff
ff mov DWORD PTR _data$11[ebp+20], eax
; 285 : _tcscpy( data.szName , _T("SP") );
00dc9 68 00 00 00 00 push OFFSET ??_C@_15PCKCLKH@?$AAS?$AAP@
00dce 8d 85 c4 74 ff
ff lea eax, DWORD PTR _data$11[ebp+88]
00dd4 50 push eax
00dd5 e8 00 00 00 00 call _wcscpy
00dda 83 c4 08 add esp, 8
; 286 : _tcscpy( data.szMobile , strMobile );
00ddd 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
00de0 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00de5 50 push eax
00de6 8d 85 04 75 ff
ff lea eax, DWORD PTR _data$11[ebp+152]
00dec 50 push eax
00ded e8 00 00 00 00 call _wcscpy
00df2 83 c4 08 add esp, 8
; 287 : _tcscpy( data.szMsg , strOldMsg );
00df5 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
00dfb e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00e00 50 push eax
00e01 8d 85 44 75 ff
ff lea eax, DWORD PTR _data$11[ebp+216]
00e07 50 push eax
00e08 e8 00 00 00 00 call _wcscpy
00e0d 83 c4 08 add esp, 8
; 288 : CSendThread::SubmitSms( data,&m_AdoRS2,&m_AdoRS3,m_pSMSDlg,lMobType,SMSTYPE_SP,lOldPrice); //<2F><><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
00e10 8b 85 3c ff ff
ff mov eax, DWORD PTR _lOldPrice$45[ebp]
00e16 50 push eax
00e17 6a 05 push 5
00e19 8b 8d 00 b9 ff
ff mov ecx, DWORD PTR _lMobType$12[ebp]
00e1f 51 push ecx
00e20 8b 55 e8 mov edx, DWORD PTR _this$[ebp]
00e23 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
00e29 50 push eax
00e2a 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00e2d 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
00e33 51 push ecx
00e34 8b 55 e8 mov edx, DWORD PTR _this$[ebp]
00e37 81 c2 a0 00 00
00 add edx, 160 ; 000000a0H
00e3d 52 push edx
00e3e 8d 85 6c 74 ff
ff lea eax, DWORD PTR _data$11[ebp]
00e44 50 push eax
00e45 e8 00 00 00 00 call ?SubmitSms@CSendThread@@SAJAAU_SubmitData@@PAVCAdoRecordSet@@1PAVCSmsCenterDlg@@JJJ@Z ; CSendThread::SubmitSms
00e4a 83 c4 1c add esp, 28 ; 0000001cH
$LN22@On_SPDZ:
; 289 : }
; 290 : else
; 291 : {
; 292 : //strSelect.Format( _T("Error:%s:%s->%s,û<>й<EFBFBD><D0B9><EFBFBD><EFBFBD>ƻظ<C6BB><D8B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>!"),smsSend.ServiceType,smsSend.szRecvNum,smsSend.szSendNum);
; 293 : //g_dlg->AddLog((char*)(LPCSTR)strSelect);
; 294 : }
; 295 : }
; 296 : }
; 297 : }
00e4d e9 05 03 00 00 jmp $LN21@On_SPDZ
$LN20@On_SPDZ:
; 298 : else
; 299 : {
; 300 : //<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
; 301 : if ( _tcslen(szAddCmd) > 0 )
00e52 8d 85 a8 fe ff
ff lea eax, DWORD PTR _szAddCmd$40[ebp]
00e58 50 push eax
00e59 e8 00 00 00 00 call _wcslen
00e5e 83 c4 04 add esp, 4
00e61 85 c0 test eax, eax
00e63 76 24 jbe SHORT $LN26@On_SPDZ
; 302 : strSelect3.Format( _T("select top 1 * from DataMsg where OperCmd='%s' and Key1='%s' and status=0 order by MsgTime desc") , szOperCmd,szAddCmd );
00e65 8d 85 a8 fe ff
ff lea eax, DWORD PTR _szAddCmd$40[ebp]
00e6b 50 push eax
00e6c 8d 8d e8 fe ff
ff lea ecx, DWORD PTR _szOperCmd$41[ebp]
00e72 51 push ecx
00e73 68 00 00 00 00 push OFFSET ??_C@_1MA@BHMFJEAA@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@
00e78 8d 95 14 b9 ff
ff lea edx, DWORD PTR _strSelect3$17[ebp]
00e7e 52 push edx
00e7f e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00e84 83 c4 10 add esp, 16 ; 00000010H
00e87 eb 1b jmp SHORT $LN27@On_SPDZ
$LN26@On_SPDZ:
; 303 : else
; 304 : strSelect3.Format( _T("select top 1 * from DataMsg where OperCmd='%s' and status=0 order by MsgTime desc") , szOperCmd );
00e89 8d 85 e8 fe ff
ff lea eax, DWORD PTR _szOperCmd$41[ebp]
00e8f 50 push eax
00e90 68 00 00 00 00 push OFFSET ??_C@_1KE@BJIAFIDP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@
00e95 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00e9b 51 push ecx
00e9c e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00ea1 83 c4 0c add esp, 12 ; 0000000cH
$LN27@On_SPDZ:
; 305 : if ( !_tcscmp(szOperCmd,_T("HL")) ) //<2F><>Ҫ<EFBFBD><D2AA>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B4A6>
00ea4 68 00 00 00 00 push OFFSET ??_C@_15HMPEDBNI@?$AAH?$AAL@
00ea9 8d 85 e8 fe ff
ff lea eax, DWORD PTR _szOperCmd$41[ebp]
00eaf 50 push eax
00eb0 e8 00 00 00 00 call _wcscmp
00eb5 83 c4 08 add esp, 8
00eb8 85 c0 test eax, eax
00eba 75 79 jne SHORT $LN28@On_SPDZ
; 306 : {
; 307 : SYSTEMTIME t ;
; 308 : ::GetLocalTime(&t);
00ebc 8d 85 5c 74 ff
ff lea eax, DWORD PTR _t$10[ebp]
00ec2 50 push eax
00ec3 ff 15 00 00 00
00 call DWORD PTR __imp__GetLocalTime@4
; 309 : CString strTime;
00ec9 8d 8d 58 74 ff
ff lea ecx, DWORD PTR _strTime$9[ebp]
00ecf e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00ed4 c6 45 fc 08 mov BYTE PTR __$EHRec$[ebp+12], 8
; 310 : strTime.Format( _T("%04d.%02d.%02d") , t.wYear,t.wMonth,t.wDay );
00ed8 0f b7 85 62 74
ff ff movzx eax, WORD PTR _t$10[ebp+6]
00edf 50 push eax
00ee0 0f b7 8d 5e 74
ff ff movzx ecx, WORD PTR _t$10[ebp+2]
00ee7 51 push ecx
00ee8 0f b7 95 5c 74
ff ff movzx edx, WORD PTR _t$10[ebp]
00eef 52 push edx
00ef0 68 00 00 00 00 push OFFSET ??_C@_1BO@ICAHPMKB@?$AA?$CF?$AA0?$AA4?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd?$AA?4?$AA?$CF?$AA0?$AA2?$AAd@
00ef5 8d 85 58 74 ff
ff lea eax, DWORD PTR _strTime$9[ebp]
00efb 50 push eax
00efc e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00f01 83 c4 14 add esp, 20 ; 00000014H
; 311 : strSelect3.Format( _T("select top 1 * from DataMsg where OperCmd='%s' and Key1='%s' order by MsgTime desc") , szOperCmd,strTime );
00f04 8b 85 58 74 ff
ff mov eax, DWORD PTR _strTime$9[ebp]
00f0a 50 push eax
00f0b 8d 8d e8 fe ff
ff lea ecx, DWORD PTR _szOperCmd$41[ebp]
00f11 51 push ecx
00f12 68 00 00 00 00 push OFFSET ??_C@_1KG@NHFKCCLP@?$AAs?$AAe?$AAl?$AAe?$AAc?$AAt?$AA?5?$AAt?$AAo?$AAp?$AA?5?$AA1?$AA?5?$AA?$CK?$AA?5@
00f17 8d 95 14 b9 ff
ff lea edx, DWORD PTR _strSelect3$17[ebp]
00f1d 52 push edx
00f1e e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
00f23 83 c4 10 add esp, 16 ; 00000010H
; 312 : }
00f26 c6 45 fc 06 mov BYTE PTR __$EHRec$[ebp+12], 6
00f2a 8d 8d 58 74 ff
ff lea ecx, DWORD PTR _strTime$9[ebp]
00f30 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
$LN28@On_SPDZ:
; 313 : b3 = m_AdoRS2.Open(strSelect3 );
00f35 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00f38 05 a0 00 00 00 add eax, 160 ; 000000a0H
00f3d 89 85 04 16 ff
ff mov DWORD PTR tv779[ebp], eax
00f43 6a 03 push 3
00f45 6a 03 push 3
00f47 6a 01 push 1
00f49 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00f4f e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00f54 50 push eax
00f55 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv779[ebp]
00f5b e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
00f60 89 85 10 b9 ff
ff mov DWORD PTR _b3$16[ebp], eax
; 314 : if ( b3 && m_AdoRS2.GetRecordCount()>0 )
00f66 83 bd 10 b9 ff
ff 00 cmp DWORD PTR _b3$16[ebp], 0
00f6d 0f 84 e4 01 00
00 je $LN21@On_SPDZ
00f73 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00f76 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00f7c e8 00 00 00 00 call ?GetRecordCount@CAdoRecordSet@@QAEJXZ ; CAdoRecordSet::GetRecordCount
00f81 85 c0 test eax, eax
00f83 0f 8e ce 01 00
00 jle $LN21@On_SPDZ
; 315 : {
; 316 : m_AdoRS2.MoveFirst();
00f89 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00f8c 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00f92 e8 00 00 00 00 call ?MoveFirst@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::MoveFirst
; 317 : long lMsgID;
; 318 : m_AdoRS2.GetCollect( _T("DataMsgID") , lMsgID );
00f97 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00f9a 05 a0 00 00 00 add eax, 160 ; 000000a0H
00f9f 89 85 04 16 ff
ff mov DWORD PTR tv793[ebp], eax
00fa5 8d 8d 54 74 ff
ff lea ecx, DWORD PTR _lMsgID$8[ebp]
00fab 51 push ecx
00fac 68 00 00 00 00 push OFFSET ??_C@_1BE@MMJOHFKE@?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AAI?$AAD@
00fb1 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv793[ebp]
00fb7 e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAJ@Z ; CAdoRecordSet::GetCollect
; 319 : m_AdoRS2.GetCollect( _T("Msg") , strOldMsg );
00fbc 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
00fbf 05 a0 00 00 00 add eax, 160 ; 000000a0H
00fc4 89 85 04 16 ff
ff mov DWORD PTR tv799[ebp], eax
00fca 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
00fd0 51 push ecx
00fd1 68 00 00 00 00 push OFFSET ??_C@_17DACEHHP@?$AAM?$AAs?$AAg@
00fd6 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv799[ebp]
00fdc e8 00 00 00 00 call ?GetCollect@CAdoRecordSet@@QAEHPB_WAAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CAdoRecordSet::GetCollect
; 320 : m_AdoRS2.Close();
00fe1 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
00fe4 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00fea e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 321 : strSelect3.Format( _T("update DataMsg set status=1 where DataMsgID=%d") , lMsgID );
00fef 8b 85 54 74 ff
ff mov eax, DWORD PTR _lMsgID$8[ebp]
00ff5 50 push eax
00ff6 68 00 00 00 00 push OFFSET ??_C@_1FO@HKHFCEJC@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAD?$AAa?$AAt?$AAa?$AAM?$AAs?$AAg?$AA?5@
00ffb 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
01001 51 push ecx
01002 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
01007 83 c4 0c add esp, 12 ; 0000000cH
; 322 : m_AdoRS2.Open(strSelect3);
0100a 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0100d 05 a0 00 00 00 add eax, 160 ; 000000a0H
01012 89 85 04 16 ff
ff mov DWORD PTR tv818[ebp], eax
01018 6a 03 push 3
0101a 6a 03 push 3
0101c 6a 01 push 1
0101e 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
01024 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
01029 50 push eax
0102a 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv818[ebp]
01030 e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
; 323 : m_AdoRS2.Close();
01035 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
01038 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
0103e e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 324 : //<2F><><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
; 325 : strSelect3.Format( _T("update dz set SendLast=GetDATE() where DZID=%d") ,lDZID );
01043 8b 85 8c fe ff
ff mov eax, DWORD PTR _lDZID$37[ebp]
01049 50 push eax
0104a 68 00 00 00 00 push OFFSET ??_C@_1FO@EEKDKMAK@?$AAu?$AAp?$AAd?$AAa?$AAt?$AAe?$AA?5?$AAd?$AAz?$AA?5?$AAs?$AAe?$AAt?$AA?5?$AAS@
0104f 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
01055 51 push ecx
01056 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
0105b 83 c4 0c add esp, 12 ; 0000000cH
; 326 : m_AdoRS2.Open(strSelect3);
0105e 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
01061 05 a0 00 00 00 add eax, 160 ; 000000a0H
01066 89 85 04 16 ff
ff mov DWORD PTR tv837[ebp], eax
0106c 6a 03 push 3
0106e 6a 03 push 3
01070 6a 01 push 1
01072 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
01078 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
0107d 50 push eax
0107e 8b 8d 04 16 ff
ff mov ecx, DWORD PTR tv837[ebp]
01084 e8 00 00 00 00 call ?Open@CAdoRecordSet@@QAEHPB_WJW4CursorTypeEnum@ADODB@@W4LockTypeEnum@3@@Z ; CAdoRecordSet::Open
; 327 : m_AdoRS2.Close();
01089 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
0108c 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
01092 e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 328 : bOldMsg = true;
01097 c7 85 40 ff ff
ff 01 00 00 00 mov DWORD PTR _bOldMsg$46[ebp], 1
; 329 :
; 330 : //<2F><EFBFBD><E1BDBB><EFBFBD><EFBFBD>
; 331 : long lMobType = MOBILE_TYPE_CMCC;
010a1 c7 85 50 74 ff
ff 00 00 00 00 mov DWORD PTR _lMobType$7[ebp], 0
; 332 : //if ( isNumUnicom((char*)(LPCTSTR)strMobile) )
; 333 : // lMobType = MOBILE_TYPE_UNICOM;
; 334 :
; 335 : SubmitData data={0};
010ab 68 94 44 00 00 push 17556 ; 00004494H
010b0 6a 00 push 0
010b2 8d 85 bc 2f ff
ff lea eax, DWORD PTR _data$6[ebp]
010b8 50 push eax
010b9 e8 00 00 00 00 call _memset
010be 83 c4 0c add esp, 12 ; 0000000cH
; 336 : data.lCorpID = lCorpID;
010c1 8b 45 d8 mov eax, DWORD PTR _lCorpID$52[ebp]
010c4 89 85 cc 2f ff
ff mov DWORD PTR _data$6[ebp+16], eax
; 337 : data.lUserID = lUserID;
010ca 8b 45 d4 mov eax, DWORD PTR _lUserID$51[ebp]
010cd 89 85 d0 2f ff
ff mov DWORD PTR _data$6[ebp+20], eax
; 338 : _tcscpy( data.szName , _T("SP") );
010d3 68 00 00 00 00 push OFFSET ??_C@_15PCKCLKH@?$AAS?$AAP@
010d8 8d 85 14 30 ff
ff lea eax, DWORD PTR _data$6[ebp+88]
010de 50 push eax
010df e8 00 00 00 00 call _wcscpy
010e4 83 c4 08 add esp, 8
; 339 : _tcscpy( data.szMobile , strMobile );
010e7 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
010ea e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
010ef 50 push eax
010f0 8d 85 54 30 ff
ff lea eax, DWORD PTR _data$6[ebp+152]
010f6 50 push eax
010f7 e8 00 00 00 00 call _wcscpy
010fc 83 c4 08 add esp, 8
; 340 : _tcscpy( data.szMsg , strOldMsg );
010ff 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
01105 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
0110a 50 push eax
0110b 8d 85 94 30 ff
ff lea eax, DWORD PTR _data$6[ebp+216]
01111 50 push eax
01112 e8 00 00 00 00 call _wcscpy
01117 83 c4 08 add esp, 8
; 341 : CSendThread::SubmitSms( data,&m_AdoRS2,&m_AdoRS3,m_pSMSDlg,lMobType,SMSTYPE_SP,lOldPrice); //<2F><><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
0111a 8b 85 3c ff ff
ff mov eax, DWORD PTR _lOldPrice$45[ebp]
01120 50 push eax
01121 6a 05 push 5
01123 8b 8d 50 74 ff
ff mov ecx, DWORD PTR _lMobType$7[ebp]
01129 51 push ecx
0112a 8b 55 e8 mov edx, DWORD PTR _this$[ebp]
0112d 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
01133 50 push eax
01134 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
01137 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
0113d 51 push ecx
0113e 8b 55 e8 mov edx, DWORD PTR _this$[ebp]
01141 81 c2 a0 00 00
00 add edx, 160 ; 000000a0H
01147 52 push edx
01148 8d 85 bc 2f ff
ff lea eax, DWORD PTR _data$6[ebp]
0114e 50 push eax
0114f e8 00 00 00 00 call ?SubmitSms@CSendThread@@SAJAAU_SubmitData@@PAVCAdoRecordSet@@1PAVCSmsCenterDlg@@JJJ@Z ; CSendThread::SubmitSms
01154 83 c4 1c add esp, 28 ; 0000001cH
$LN21@On_SPDZ:
; 342 : }
; 343 : else
; 344 : {
; 345 : //strSelect.Format( _T("Error:%s:%s->%s,û<>й<EFBFBD><D0B9><EFBFBD><EFBFBD>ƻظ<C6BB><D8B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>!"),smsSend.ServiceType,smsSend.szRecvNum,smsSend.szSendNum);
; 346 : //g_dlg->AddLog((char*)(LPCSTR)strSelect);
; 347 : }
; 348 : }
; 349 : }
01157 c6 45 fc 05 mov BYTE PTR __$EHRec$[ebp+12], 5
0115b 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
01161 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
$LN12@On_SPDZ:
; 350 : }
; 351 : }
01166 c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+12], 3
0116a 8d 8d e8 b9 ff
ff lea ecx, DWORD PTR _strSelect2$32[ebp]
01170 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
$LN9@On_SPDZ:
; 352 : lAllCount2 ++;
01175 8b 85 88 fe ff
ff mov eax, DWORD PTR _lAllCount2$36[ebp]
0117b 83 c0 01 add eax, 1
0117e 89 85 88 fe ff
ff mov DWORD PTR _lAllCount2$36[ebp], eax
; 353 : //Sleep(50); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>Ҫ<EFBFBD><D2AA>
; 354 : m_AdoRS.MoveNext(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
01184 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
01187 83 c1 68 add ecx, 104 ; 00000068H
0118a e8 00 00 00 00 call ?MoveNext@CAdoRecordSet@@QAEHXZ ; CAdoRecordSet::MoveNext
; 355 : }
0118f e9 11 f0 ff ff jmp $LN2@On_SPDZ
$LN3@On_SPDZ:
; 356 : }
01194 c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+12], 2
01198 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
0119e e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
011a3 c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+12], 1
011a7 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
011aa e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
$LN6@On_SPDZ:
; 357 : m_AdoRS.Close();
011af 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
011b2 83 c1 68 add ecx, 104 ; 00000068H
011b5 e8 00 00 00 00 call ?Close@CAdoRecordSet@@QAEXXZ ; CAdoRecordSet::Close
; 358 : }
011ba c6 45 fc 00 mov BYTE PTR __$EHRec$[ebp+12], 0
011be 8d 4d e4 lea ecx, DWORD PTR _strSelect$55[ebp]
011c1 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
011c6 e9 a2 00 00 00 jmp $LN32@On_SPDZ
__catch$?On_SPDZ@CSPThread@@QAEXIJ@Z$0:
; 359 : catch (...)
; 360 : {
; 361 : LOG_APPERROR(_T("T"));
011cb 8d 8d 14 18 ff
ff lea ecx, DWORD PTR _NXlog$5[ebp]
011d1 e8 00 00 00 00 call ??0CSAStatusLog@@QAE@XZ ; CSAStatusLog::CSAStatusLog
011d6 c6 45 fc 0a mov BYTE PTR __$EHRec$[ebp+12], 10 ; 0000000aH
011da 51 push ecx
011db 8b cc mov ecx, esp
011dd 89 a5 0c 16 ff
ff mov DWORD PTR $T3[ebp], esp
011e3 68 00 00 00 00 push OFFSET ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
011e8 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
011ed 89 85 04 16 ff
ff mov DWORD PTR tv876[ebp], eax
011f3 c6 45 fc 0b mov BYTE PTR __$EHRec$[ebp+12], 11 ; 0000000bH
011f7 51 push ecx
011f8 8b cc mov ecx, esp
011fa 89 a5 08 16 ff
ff mov DWORD PTR $T2[ebp], esp
01200 68 00 00 00 00 push OFFSET ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
01205 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0120a 89 85 00 16 ff
ff mov DWORD PTR tv751[ebp], eax
01210 c6 45 fc 0c mov BYTE PTR __$EHRec$[ebp+12], 12 ; 0000000cH
01214 c6 45 fc 0a mov BYTE PTR __$EHRec$[ebp+12], 10 ; 0000000aH
01218 8d 8d 14 18 ff
ff lea ecx, DWORD PTR _NXlog$5[ebp]
0121e e8 00 00 00 00 call ?Init@CSAStatusLog@@QAEXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
01223 a1 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??On_SPDZ@CSPThread@@QAEXIJ@Z@4JA
01228 05 21 01 00 00 add eax, 289 ; 00000121H
0122d 50 push eax
0122e 68 00 00 00 00 push OFFSET ??_C@_07MPEIFHDG@On_SPDZ@
01233 68 00 00 00 00 push OFFSET ??_C@_0CN@HDLHKOEL@D?3?2Works?2Corpsms_2010?2SmsCenter@
01238 68 00 00 00 00 push OFFSET ??_C@_13JKNELIBG@?$AAT@
0123d 8d 8d 14 18 ff
ff lea ecx, DWORD PTR _NXlog$5[ebp]
01243 e8 00 00 00 00 call ?LogError@CSAStatusLog@@QAEHPB_WPBD1J@Z ; CSAStatusLog::LogError
01248 c6 45 fc 09 mov BYTE PTR __$EHRec$[ebp+12], 9
0124c 8d 8d 14 18 ff
ff lea ecx, DWORD PTR _NXlog$5[ebp]
01252 e8 00 00 00 00 call ??1CSAStatusLog@@QAE@XZ ; CSAStatusLog::~CSAStatusLog
; 362 : m_bStart = false;
01257 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
0125a c7 40 44 00 00
00 00 mov DWORD PTR [eax+68], 0
; 363 : return ;
01261 b8 00 00 00 00 mov eax, $LN46@On_SPDZ
01266 c3 ret 0
; 364 : }
01267 b8 00 00 00 00 mov eax, $LN32@On_SPDZ
0126c c3 ret 0
$LN32@On_SPDZ:
0126d c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+12], -1
01274 eb 09 jmp SHORT $LN45@On_SPDZ
$LN46@On_SPDZ:
01276 c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+12], -1
; 363 : return ;
0127d eb 0a jmp SHORT $LN1@On_SPDZ
$LN45@On_SPDZ:
; 365 :
; 366 : m_bStart = false;
0127f 8b 45 e8 mov eax, DWORD PTR _this$[ebp]
01282 c7 40 44 00 00
00 00 mov DWORD PTR [eax+68], 0
$LN1@On_SPDZ:
; 367 : return ;
; 368 : }
01289 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp+4]
0128c 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
01293 59 pop ecx
01294 5f pop edi
01295 5e pop esi
01296 5b pop ebx
01297 8b 4d ec mov ecx, DWORD PTR __$ArrayPad$[ebp]
0129a 33 cd xor ecx, ebp
0129c e8 00 00 00 00 call @__security_check_cookie@4
012a1 8b e5 mov esp, ebp
012a3 5d pop ebp
012a4 c2 08 00 ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$2:
00000 8d 4d e4 lea ecx, DWORD PTR _strSelect$55[ebp]
00003 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$3:
00008 8d 4d d0 lea ecx, DWORD PTR _strMobile$50[ebp]
0000b e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$4:
00010 8d 8d 38 ff ff
ff lea ecx, DWORD PTR _strOldMsg$44[ebp]
00016 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$5:
0001b 8d 8d 84 fe ff
ff lea ecx, DWORD PTR _strSelect3$35[ebp]
00021 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$6:
00026 8d 8d e8 b9 ff
ff lea ecx, DWORD PTR _strSelect2$32[ebp]
0002c e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$7:
00031 8d 8d 14 b9 ff
ff lea ecx, DWORD PTR _strSelect3$17[ebp]
00037 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$8:
0003c 8b 8d 10 16 ff
ff mov ecx, DWORD PTR $T4[ebp]
00042 e9 00 00 00 00 jmp ??1_variant_t@@QAE@XZ ; _variant_t::~_variant_t
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$9:
00047 8d 8d 58 74 ff
ff lea ecx, DWORD PTR _strTime$9[ebp]
0004d e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$10:
00052 8d 8d 14 18 ff
ff lea ecx, DWORD PTR _NXlog$5[ebp]
00058 e9 00 00 00 00 jmp ??1CSAStatusLog@@QAE@XZ ; CSAStatusLog::~CSAStatusLog
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$11:
0005d 8b 8d 0c 16 ff
ff mov ecx, DWORD PTR $T3[ebp]
00063 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?On_SPDZ@CSPThread@@QAEXIJ@Z$12:
00068 8b 8d 08 16 ff
ff mov ecx, DWORD PTR $T2[ebp]
0006e e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00073 cc int 3
00074 cc int 3
00075 cc int 3
00076 cc int 3
00077 cc int 3
__ehhandler$?On_SPDZ@CSPThread@@QAEXIJ@Z:
00078 90 npad 1
00079 90 npad 1
0007a 8b 54 24 08 mov edx, DWORD PTR [esp+8]
0007e 8d 42 0c lea eax, DWORD PTR [edx+12]
00081 8b 8a ec 15 ff
ff mov ecx, DWORD PTR [edx-59924]
00087 33 c8 xor ecx, eax
00089 e8 00 00 00 00 call @__security_check_cookie@4
0008e 8b 4a f8 mov ecx, DWORD PTR [edx-8]
00091 33 c8 xor ecx, eax
00093 e8 00 00 00 00 call @__security_check_cookie@4
00098 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?On_SPDZ@CSPThread@@QAEXIJ@Z
0009d e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?On_SPDZ@CSPThread@@QAEXIJ@Z ENDP ; CSPThread::On_SPDZ
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?ExitInstance@CSPThread@@UAEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?ExitInstance@CSPThread@@UAEHXZ PROC ; CSPThread::ExitInstance, COMDAT
; _this$ = ecx
; 38 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 39 : CoUninitialize();
0000c ff 15 00 00 00
00 call DWORD PTR __imp__CoUninitialize@0
; 40 : // TODO: perform any per-thread cleanup here
; 41 : return CWinThread::ExitInstance();
00012 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00015 e8 00 00 00 00 call ?ExitInstance@CWinThread@@UAEHXZ ; CWinThread::ExitInstance
; 42 : }
0001a 5f pop edi
0001b 5e pop esi
0001c 5b pop ebx
0001d 8b e5 mov esp, ebp
0001f 5d pop ebp
00020 c3 ret 0
?ExitInstance@CSPThread@@UAEHXZ ENDP ; CSPThread::ExitInstance
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?InitInstance@CSPThread@@UAEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?InitInstance@CSPThread@@UAEHXZ PROC ; CSPThread::InitInstance, COMDAT
; _this$ = ecx
; 31 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 32 : CoInitializeEx( NULL , COINIT_MULTITHREADED );
0000c 6a 00 push 0
0000e 6a 00 push 0
00010 ff 15 00 00 00
00 call DWORD PTR __imp__CoInitializeEx@8
; 33 : // TODO: perform and per-thread initialization here
; 34 : return TRUE;
00016 b8 01 00 00 00 mov eax, 1
; 35 : }
0001b 5f pop edi
0001c 5e pop esi
0001d 5b pop ebx
0001e 8b e5 mov esp, ebp
00020 5d pop ebp
00021 c3 ret 0
?InitInstance@CSPThread@@UAEHXZ ENDP ; CSPThread::InitInstance
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z
_TEXT SEGMENT
tv67 = -132 ; size = 4
tv224 = -128 ; size = 4
tv223 = -124 ; size = 4
tv222 = -120 ; size = 4
tv221 = -116 ; size = 4
tv220 = -112 ; size = 4
tv204 = -108 ; size = 4
tv198 = -108 ; size = 4
tv192 = -108 ; size = 4
tv187 = -108 ; size = 4
tv179 = -108 ; size = 4
$T2 = -104 ; size = 4
$T3 = -100 ; size = 4
$T4 = -96 ; size = 4
$T5 = -92 ; size = 4
$T6 = -88 ; size = 4
_b$ = -20 ; size = 4
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_pSmsDlg$ = 8 ; size = 4
?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z PROC ; CSPThread::SetParam, COMDAT
; _this$ = ecx
; 55 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 78 sub esp, 120 ; 00000078H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 56 : m_pSMSDlg = pSmsDlg;
0002b 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0002e 8b 4d 08 mov ecx, DWORD PTR _pSmsDlg$[ebp]
00031 89 88 10 01 00
00 mov DWORD PTR [eax+272], ecx
; 57 : BOOL b = m_adoConnection.ConnectSQLServer2(m_pSMSDlg->m_Setup.szDBName,DEFAULT_DBNAME,m_pSMSDlg->m_Setup.szDBUser,m_pSMSDlg->m_Setup.szDBPasswd, m_pSMSDlg->m_Setup.szProvider);
00037 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0003a 83 c0 48 add eax, 72 ; 00000048H
0003d 89 45 94 mov DWORD PTR tv179[ebp], eax
00040 6a ff push -1
00042 51 push ecx
00043 8b cc mov ecx, esp
00045 89 65 a8 mov DWORD PTR $T6[ebp], esp
00048 8b 55 f0 mov edx, DWORD PTR _this$[ebp]
0004b 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
00051 05 b4 09 00 00 add eax, 2484 ; 000009b4H
00056 50 push eax
00057 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0005c 89 45 90 mov DWORD PTR tv220[ebp], eax
0005f c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
00066 51 push ecx
00067 8b cc mov ecx, esp
00069 89 65 a4 mov DWORD PTR $T5[ebp], esp
0006c 8b 55 f0 mov edx, DWORD PTR _this$[ebp]
0006f 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
00075 05 0c 0a 00 00 add eax, 2572 ; 00000a0cH
0007a 50 push eax
0007b e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00080 89 45 8c mov DWORD PTR tv221[ebp], eax
00083 c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+8], 1
00087 51 push ecx
00088 8b cc mov ecx, esp
0008a 89 65 a0 mov DWORD PTR $T4[ebp], esp
0008d 8b 55 f0 mov edx, DWORD PTR _this$[ebp]
00090 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
00096 05 ec 09 00 00 add eax, 2540 ; 000009ecH
0009b 50 push eax
0009c e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
000a1 89 45 88 mov DWORD PTR tv222[ebp], eax
000a4 c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+8], 2
000a8 51 push ecx
000a9 8b cc mov ecx, esp
000ab 89 65 9c mov DWORD PTR $T3[ebp], esp
000ae 68 00 00 00 00 push OFFSET ??_C@_1BA@IIDKJHG@?$AAc?$AAo?$AAr?$AAp?$AAs?$AAm?$AAs@
000b3 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
000b8 89 45 84 mov DWORD PTR tv223[ebp], eax
000bb c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+8], 3
000bf 51 push ecx
000c0 8b cc mov ecx, esp
000c2 89 65 98 mov DWORD PTR $T2[ebp], esp
000c5 8b 55 f0 mov edx, DWORD PTR _this$[ebp]
000c8 8b 82 10 01 00
00 mov eax, DWORD PTR [edx+272]
000ce 05 ec 05 00 00 add eax, 1516 ; 000005ecH
000d3 50 push eax
000d4 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
000d9 89 45 80 mov DWORD PTR tv224[ebp], eax
000dc c6 45 fc 04 mov BYTE PTR __$EHRec$[ebp+8], 4
000e0 c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
000e7 8b 4d 94 mov ecx, DWORD PTR tv179[ebp]
000ea e8 00 00 00 00 call ?ConnectSQLServer2@CAdoConnection@@QAEHV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0000J@Z ; CAdoConnection::ConnectSQLServer2
000ef 89 85 7c ff ff
ff mov DWORD PTR tv67[ebp], eax
000f5 8b 8d 7c ff ff
ff mov ecx, DWORD PTR tv67[ebp]
000fb 89 4d ec mov DWORD PTR _b$[ebp], ecx
; 58 : if ( b )
000fe 83 7d ec 00 cmp DWORD PTR _b$[ebp], 0
00102 74 62 je SHORT $LN2@SetParam
; 59 : {
; 60 : m_adoConnection.SetCommandTimeout(7200); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD>ʱʱ<CAB1><CAB1>
00104 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
00107 83 c0 48 add eax, 72 ; 00000048H
0010a 89 45 94 mov DWORD PTR tv187[ebp], eax
0010d 68 20 1c 00 00 push 7200 ; 00001c20H
00112 8b 4d 94 mov ecx, DWORD PTR tv187[ebp]
00115 e8 00 00 00 00 call ?SetCommandTimeout@CAdoConnection@@QAEHJ@Z ; CAdoConnection::SetCommandTimeout
; 61 : #ifdef SMSCENTER_USECLIENT
; 62 : m_adoConnection.SetCursorLocation(adUseClient); //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>α<EFBFBD><CEB1><EFBFBD><EFBFBD><EFBFBD>
; 63 : #endif
; 64 : m_AdoRS.SetAdoConnection( &m_adoConnection ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>
0011a 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0011d 83 c0 68 add eax, 104 ; 00000068H
00120 89 45 94 mov DWORD PTR tv192[ebp], eax
00123 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00126 83 c1 48 add ecx, 72 ; 00000048H
00129 51 push ecx
0012a 8b 4d 94 mov ecx, DWORD PTR tv192[ebp]
0012d e8 00 00 00 00 call ?SetAdoConnection@CAdoRecordSet@@QAEXPAVCAdoConnection@@@Z ; CAdoRecordSet::SetAdoConnection
; 65 : m_AdoRS2.SetAdoConnection( &m_adoConnection ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>
00132 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
00135 05 a0 00 00 00 add eax, 160 ; 000000a0H
0013a 89 45 94 mov DWORD PTR tv198[ebp], eax
0013d 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00140 83 c1 48 add ecx, 72 ; 00000048H
00143 51 push ecx
00144 8b 4d 94 mov ecx, DWORD PTR tv198[ebp]
00147 e8 00 00 00 00 call ?SetAdoConnection@CAdoRecordSet@@QAEXPAVCAdoConnection@@@Z ; CAdoRecordSet::SetAdoConnection
; 66 : m_AdoRS3.SetAdoConnection( &m_adoConnection ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>
0014c 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0014f 05 d8 00 00 00 add eax, 216 ; 000000d8H
00154 89 45 94 mov DWORD PTR tv204[ebp], eax
00157 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0015a 83 c1 48 add ecx, 72 ; 00000048H
0015d 51 push ecx
0015e 8b 4d 94 mov ecx, DWORD PTR tv204[ebp]
00161 e8 00 00 00 00 call ?SetAdoConnection@CAdoRecordSet@@QAEXPAVCAdoConnection@@@Z ; CAdoRecordSet::SetAdoConnection
$LN2@SetParam:
; 67 : }
; 68 : return b;
00166 8b 45 ec mov eax, DWORD PTR _b$[ebp]
; 69 : }
00169 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0016c 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00173 59 pop ecx
00174 5f pop edi
00175 5e pop esi
00176 5b pop ebx
00177 8b e5 mov esp, ebp
00179 5d pop ebp
0017a c2 04 00 ret 4
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$0:
00000 8b 4d a8 mov ecx, DWORD PTR $T6[ebp]
00003 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$1:
00008 8b 4d a4 mov ecx, DWORD PTR $T5[ebp]
0000b e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$2:
00010 8b 4d a0 mov ecx, DWORD PTR $T4[ebp]
00013 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$3:
00018 8b 4d 9c mov ecx, DWORD PTR $T3[ebp]
0001b e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
__unwindfunclet$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z$4:
00020 8b 4d 98 mov ecx, DWORD PTR $T2[ebp]
00023 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00028 cc int 3
00029 cc int 3
0002a cc int 3
0002b cc int 3
0002c cc int 3
__ehhandler$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z:
0002d 90 npad 1
0002e 90 npad 1
0002f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00033 8d 42 0c lea eax, DWORD PTR [edx+12]
00036 8b 8a 78 ff ff
ff mov ecx, DWORD PTR [edx-136]
0003c 33 c8 xor ecx, eax
0003e e8 00 00 00 00 call @__security_check_cookie@4
00043 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z
00048 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?SetParam@CSPThread@@QAEHPAVCSmsCenterDlg@@@Z ENDP ; CSPThread::SetParam
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?GetBBMonDay@CSPThread@@SAHVCOleDateTime@ATL@@AAH1@Z
_TEXT SEGMENT
tv85 = -116 ; size = 4
_tBB$ = -48 ; size = 16
_tNow$ = -32 ; size = 16
_tNow2$ = -16 ; size = 12
__$ArrayPad$ = -4 ; size = 4
_tBirthday$ = 8 ; size = 12
_iMon$ = 20 ; size = 4
_iDay$ = 24 ; size = 4
?GetBBMonDay@CSPThread@@SAHVCOleDateTime@ATL@@AAH1@Z PROC ; CSPThread::GetBBMonDay, COMDAT
; 371 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 74 sub esp, 116 ; 00000074H
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
; 372 : COleDateTime tNow2 = ::COleDateTime::GetCurrentTime();
00013 8d 45 f0 lea eax, DWORD PTR _tNow2$[ebp]
00016 50 push eax
00017 e8 00 00 00 00 call ?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ ; ATL::COleDateTime::GetTickCount
; 373 :
; 374 : if ( tBirthday>tNow2 ) //<2F><><EFBFBD>󣬷<EFBFBD><F3A3ACB7><EFBFBD>
0001c 8d 45 f0 lea eax, DWORD PTR _tNow2$[ebp]
0001f 50 push eax
00020 8d 4d 08 lea ecx, DWORD PTR _tBirthday$[ebp]
00023 e8 00 00 00 00 call ??OCOleDateTime@ATL@@QBE_NABV01@@Z ; ATL::COleDateTime::operator>
00028 0f b6 c8 movzx ecx, al
0002b 85 c9 test ecx, ecx
0002d 74 19 je SHORT $LN4@GetBBMonDa
; 375 : {
; 376 : iMon = -1;
0002f 8b 45 14 mov eax, DWORD PTR _iMon$[ebp]
00032 c7 00 ff ff ff
ff mov DWORD PTR [eax], -1
; 377 : iDay = -1;
00038 8b 45 18 mov eax, DWORD PTR _iDay$[ebp]
0003b c7 00 ff ff ff
ff mov DWORD PTR [eax], -1
; 378 : return false;
00041 33 c0 xor eax, eax
00043 e9 4f 01 00 00 jmp $LN1@GetBBMonDa
$LN4@GetBBMonDa:
; 379 : }
; 380 : SYSTEMTIME tNow,tBB;
; 381 : tNow2.GetAsSystemTime(tNow);
00048 8d 45 e0 lea eax, DWORD PTR _tNow$[ebp]
0004b 50 push eax
0004c 8d 4d f0 lea ecx, DWORD PTR _tNow2$[ebp]
0004f e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 382 : tBirthday.GetAsSystemTime(tBB);
00054 8d 45 d0 lea eax, DWORD PTR _tBB$[ebp]
00057 50 push eax
00058 8d 4d 08 lea ecx, DWORD PTR _tBirthday$[ebp]
0005b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
; 383 : //<2F>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD>
; 384 : if ( tNow.wDay >=tBB.wDay )
00060 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
00064 0f b7 4d d6 movzx ecx, WORD PTR _tBB$[ebp+6]
00068 3b c1 cmp eax, ecx
0006a 7c 14 jl SHORT $LN5@GetBBMonDa
; 385 : {
; 386 : iDay = tNow.wDay-tBB.wDay;
0006c 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
00070 0f b7 4d d6 movzx ecx, WORD PTR _tBB$[ebp+6]
00074 2b c1 sub eax, ecx
00076 8b 55 18 mov edx, DWORD PTR _iDay$[ebp]
00079 89 02 mov DWORD PTR [edx], eax
; 387 : }
0007b e9 9e 00 00 00 jmp $LN6@GetBBMonDa
$LN5@GetBBMonDa:
; 388 : else
; 389 : {
; 390 : tNow.wMonth--;
00080 66 8b 45 e2 mov ax, WORD PTR _tNow$[ebp+2]
00084 66 83 e8 01 sub ax, 1
00088 66 89 45 e2 mov WORD PTR _tNow$[ebp+2], ax
; 391 : if ( tNow.wMonth<=0 )
0008c 0f b7 45 e2 movzx eax, WORD PTR _tNow$[ebp+2]
00090 85 c0 test eax, eax
00092 7f 15 jg SHORT $LN7@GetBBMonDa
; 392 : {
; 393 : tNow.wMonth=12;
00094 b8 0c 00 00 00 mov eax, 12 ; 0000000cH
00099 66 89 45 e2 mov WORD PTR _tNow$[ebp+2], ax
; 394 : tNow.wYear--;
0009d 66 8b 45 e0 mov ax, WORD PTR _tNow$[ebp]
000a1 66 83 e8 01 sub ax, 1
000a5 66 89 45 e0 mov WORD PTR _tNow$[ebp], ax
$LN7@GetBBMonDa:
; 395 : }
; 396 : switch(tNow.wMonth)
000a9 0f b7 45 e2 movzx eax, WORD PTR _tNow$[ebp+2]
000ad 89 45 8c mov DWORD PTR tv85[ebp], eax
000b0 8b 4d 8c mov ecx, DWORD PTR tv85[ebp]
000b3 83 e9 01 sub ecx, 1
000b6 89 4d 8c mov DWORD PTR tv85[ebp], ecx
000b9 83 7d 8c 0b cmp DWORD PTR tv85[ebp], 11 ; 0000000bH
000bd 77 45 ja SHORT $LN18@GetBBMonDa
000bf 8b 55 8c mov edx, DWORD PTR tv85[ebp]
000c2 ff 24 95 00 00
00 00 jmp DWORD PTR $LN22@GetBBMonDa[edx*4]
$LN14@GetBBMonDa:
; 397 : {
; 398 : case 1:
; 399 : case 3:
; 400 : case 5:
; 401 : case 7:
; 402 : case 8:
; 403 : case 10:
; 404 : case 12:
; 405 : tNow.wDay += 31;
000c9 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
000cd 83 c0 1f add eax, 31 ; 0000001fH
000d0 66 89 45 e6 mov WORD PTR _tNow$[ebp+6], ax
; 406 : break;
000d4 eb 39 jmp SHORT $LN2@GetBBMonDa
$LN15@GetBBMonDa:
; 407 : case 2:
; 408 : if (tNow.wYear%4==0 )
000d6 0f b7 45 e0 movzx eax, WORD PTR _tNow$[ebp]
000da 25 03 00 00 80 and eax, -2147483645 ; 80000003H
000df 79 05 jns SHORT $LN23@GetBBMonDa
000e1 48 dec eax
000e2 83 c8 fc or eax, -4 ; fffffffcH
000e5 40 inc eax
$LN23@GetBBMonDa:
000e6 85 c0 test eax, eax
000e8 75 0d jne SHORT $LN16@GetBBMonDa
; 409 : tNow.wDay += 30;
000ea 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
000ee 83 c0 1e add eax, 30 ; 0000001eH
000f1 66 89 45 e6 mov WORD PTR _tNow$[ebp+6], ax
000f5 eb 0b jmp SHORT $LN17@GetBBMonDa
$LN16@GetBBMonDa:
; 410 : else
; 411 : tNow.wDay += 28;
000f7 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
000fb 83 c0 1c add eax, 28 ; 0000001cH
000fe 66 89 45 e6 mov WORD PTR _tNow$[ebp+6], ax
$LN17@GetBBMonDa:
; 412 : break;
00102 eb 0b jmp SHORT $LN2@GetBBMonDa
$LN18@GetBBMonDa:
; 413 : default:
; 414 : tNow.wDay += 30;
00104 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
00108 83 c0 1e add eax, 30 ; 0000001eH
0010b 66 89 45 e6 mov WORD PTR _tNow$[ebp+6], ax
$LN2@GetBBMonDa:
; 415 : }
; 416 : iDay = tNow.wDay-tBB.wDay;
0010f 0f b7 45 e6 movzx eax, WORD PTR _tNow$[ebp+6]
00113 0f b7 4d d6 movzx ecx, WORD PTR _tBB$[ebp+6]
00117 2b c1 sub eax, ecx
00119 8b 55 18 mov edx, DWORD PTR _iDay$[ebp]
0011c 89 02 mov DWORD PTR [edx], eax
$LN6@GetBBMonDa:
; 417 : }
; 418 : //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
; 419 : if ( tNow.wMonth >=tBB.wMonth )
0011e 0f b7 45 e2 movzx eax, WORD PTR _tNow$[ebp+2]
00122 0f b7 4d d2 movzx ecx, WORD PTR _tBB$[ebp+2]
00126 3b c1 cmp eax, ecx
00128 7c 11 jl SHORT $LN19@GetBBMonDa
; 420 : {
; 421 : iMon = tNow.wMonth-tBB.wMonth;
0012a 0f b7 45 e2 movzx eax, WORD PTR _tNow$[ebp+2]
0012e 0f b7 4d d2 movzx ecx, WORD PTR _tBB$[ebp+2]
00132 2b c1 sub eax, ecx
00134 8b 55 14 mov edx, DWORD PTR _iMon$[ebp]
00137 89 02 mov DWORD PTR [edx], eax
; 422 : }
00139 eb 26 jmp SHORT $LN20@GetBBMonDa
$LN19@GetBBMonDa:
; 423 : else
; 424 : {
; 425 : tNow.wYear --;
0013b 66 8b 45 e0 mov ax, WORD PTR _tNow$[ebp]
0013f 66 83 e8 01 sub ax, 1
00143 66 89 45 e0 mov WORD PTR _tNow$[ebp], ax
; 426 : tNow.wMonth+= 12;
00147 0f b7 45 e2 movzx eax, WORD PTR _tNow$[ebp+2]
0014b 83 c0 0c add eax, 12 ; 0000000cH
0014e 66 89 45 e2 mov WORD PTR _tNow$[ebp+2], ax
; 427 : iMon = tNow.wMonth-tBB.wMonth;
00152 0f b7 45 e2 movzx eax, WORD PTR _tNow$[ebp+2]
00156 0f b7 4d d2 movzx ecx, WORD PTR _tBB$[ebp+2]
0015a 2b c1 sub eax, ecx
0015c 8b 55 14 mov edx, DWORD PTR _iMon$[ebp]
0015f 89 02 mov DWORD PTR [edx], eax
$LN20@GetBBMonDa:
; 428 : }
; 429 : iMon = iMon+(tNow.wYear-tBB.wYear)*12;
00161 0f b7 45 e0 movzx eax, WORD PTR _tNow$[ebp]
00165 0f b7 4d d0 movzx ecx, WORD PTR _tBB$[ebp]
00169 2b c1 sub eax, ecx
0016b 6b d0 0c imul edx, eax, 12
0016e 8b 45 14 mov eax, DWORD PTR _iMon$[ebp]
00171 03 10 add edx, DWORD PTR [eax]
00173 8b 4d 14 mov ecx, DWORD PTR _iMon$[ebp]
00176 89 11 mov DWORD PTR [ecx], edx
; 430 :
; 431 : iDay++;
00178 8b 45 18 mov eax, DWORD PTR _iDay$[ebp]
0017b 8b 08 mov ecx, DWORD PTR [eax]
0017d 83 c1 01 add ecx, 1
00180 8b 55 18 mov edx, DWORD PTR _iDay$[ebp]
00183 89 0a mov DWORD PTR [edx], ecx
; 432 : iMon++;
00185 8b 45 14 mov eax, DWORD PTR _iMon$[ebp]
00188 8b 08 mov ecx, DWORD PTR [eax]
0018a 83 c1 01 add ecx, 1
0018d 8b 55 14 mov edx, DWORD PTR _iMon$[ebp]
00190 89 0a mov DWORD PTR [edx], ecx
; 433 : return true;
00192 b8 01 00 00 00 mov eax, 1
$LN1@GetBBMonDa:
; 434 : }
00197 5f pop edi
00198 5e pop esi
00199 5b pop ebx
0019a 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
0019d 33 cd xor ecx, ebp
0019f e8 00 00 00 00 call @__security_check_cookie@4
001a4 8b e5 mov esp, ebp
001a6 5d pop ebp
001a7 c3 ret 0
$LN22@GetBBMonDa:
001a8 00 00 00 00 DD $LN14@GetBBMonDa
001ac 00 00 00 00 DD $LN15@GetBBMonDa
001b0 00 00 00 00 DD $LN14@GetBBMonDa
001b4 00 00 00 00 DD $LN18@GetBBMonDa
001b8 00 00 00 00 DD $LN14@GetBBMonDa
001bc 00 00 00 00 DD $LN18@GetBBMonDa
001c0 00 00 00 00 DD $LN14@GetBBMonDa
001c4 00 00 00 00 DD $LN14@GetBBMonDa
001c8 00 00 00 00 DD $LN18@GetBBMonDa
001cc 00 00 00 00 DD $LN14@GetBBMonDa
001d0 00 00 00 00 DD $LN18@GetBBMonDa
001d4 00 00 00 00 DD $LN14@GetBBMonDa
?GetBBMonDay@CSPThread@@SAHVCOleDateTime@ATL@@AAH1@Z ENDP ; CSPThread::GetBBMonDay
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ??1CSPThread@@UAE@XZ
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
??1CSPThread@@UAE@XZ PROC ; CSPThread::~CSPThread, COMDAT
; _this$ = ecx
; 27 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??1CSPThread@@UAE@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
0002b 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0002e c7 00 00 00 00
00 mov DWORD PTR [eax], OFFSET ??_7CSPThread@@6B@
00034 c7 45 fc 04 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 4
; 28 : }
0003b c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+8], 3
0003f 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00042 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
00048 e8 00 00 00 00 call ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
0004d c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+8], 2
00051 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00054 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
0005a e8 00 00 00 00 call ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
0005f c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+8], 1
00063 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00066 83 c1 68 add ecx, 104 ; 00000068H
00069 e8 00 00 00 00 call ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
0006e c6 45 fc 00 mov BYTE PTR __$EHRec$[ebp+8], 0
00072 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00075 83 c1 48 add ecx, 72 ; 00000048H
00078 e8 00 00 00 00 call ??1CAdoConnection@@UAE@XZ ; CAdoConnection::~CAdoConnection
0007d c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00084 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00087 e8 00 00 00 00 call ??1CWinThread@@UAE@XZ ; CWinThread::~CWinThread
0008c 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0008f 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00096 59 pop ecx
00097 5f pop edi
00098 5e pop esi
00099 5b pop ebx
0009a 8b e5 mov esp, ebp
0009c 5d pop ebp
0009d c3 ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??1CSPThread@@UAE@XZ$0:
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00003 e9 00 00 00 00 jmp ??1CWinThread@@UAE@XZ ; CWinThread::~CWinThread
__unwindfunclet$??1CSPThread@@UAE@XZ$1:
00008 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0000b 83 c1 48 add ecx, 72 ; 00000048H
0000e e9 00 00 00 00 jmp ??1CAdoConnection@@UAE@XZ ; CAdoConnection::~CAdoConnection
__unwindfunclet$??1CSPThread@@UAE@XZ$2:
00013 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00016 83 c1 68 add ecx, 104 ; 00000068H
00019 e9 00 00 00 00 jmp ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
__unwindfunclet$??1CSPThread@@UAE@XZ$3:
0001e 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00021 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00027 e9 00 00 00 00 jmp ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
__unwindfunclet$??1CSPThread@@UAE@XZ$4:
0002c 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0002f 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
00035 e9 00 00 00 00 jmp ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
0003a cc int 3
0003b cc int 3
0003c cc int 3
0003d cc int 3
0003e cc int 3
__ehhandler$??1CSPThread@@UAE@XZ:
0003f 90 npad 1
00040 90 npad 1
00041 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00045 8d 42 0c lea eax, DWORD PTR [edx+12]
00048 8b 4a ac mov ecx, DWORD PTR [edx-84]
0004b 33 c8 xor ecx, eax
0004d e8 00 00 00 00 call @__security_check_cookie@4
00052 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??1CSPThread@@UAE@XZ
00057 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??1CSPThread@@UAE@XZ ENDP ; CSPThread::~CSPThread
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ??0CSPThread@@QAE@XZ
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
??0CSPThread@@QAE@XZ PROC ; CSPThread::CSPThread, COMDAT
; _this$ = ecx
; 22 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??0CSPThread@@QAE@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
0002b 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0002e e8 00 00 00 00 call ??0CWinThread@@QAE@XZ ; CWinThread::CWinThread
00033 c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
0003a 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0003d c7 00 00 00 00
00 mov DWORD PTR [eax], OFFSET ??_7CSPThread@@6B@
00043 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00046 83 c1 48 add ecx, 72 ; 00000048H
00049 e8 00 00 00 00 call ??0CAdoConnection@@QAE@XZ ; CAdoConnection::CAdoConnection
0004e c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+8], 1
00052 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00055 83 c1 68 add ecx, 104 ; 00000068H
00058 e8 00 00 00 00 call ??0CAdoRecordSet@@QAE@XZ ; CAdoRecordSet::CAdoRecordSet
0005d c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+8], 2
00061 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00064 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
0006a e8 00 00 00 00 call ??0CAdoRecordSet@@QAE@XZ ; CAdoRecordSet::CAdoRecordSet
0006f c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+8], 3
00073 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00076 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
0007c e8 00 00 00 00 call ??0CAdoRecordSet@@QAE@XZ ; CAdoRecordSet::CAdoRecordSet
00081 c6 45 fc 04 mov BYTE PTR __$EHRec$[ebp+8], 4
; 23 : m_bStart = false;
00085 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
00088 c7 40 44 00 00
00 00 mov DWORD PTR [eax+68], 0
; 24 : }
0008f c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00096 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
00099 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0009c 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
000a3 59 pop ecx
000a4 5f pop edi
000a5 5e pop esi
000a6 5b pop ebx
000a7 8b e5 mov esp, ebp
000a9 5d pop ebp
000aa c3 ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??0CSPThread@@QAE@XZ$0:
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00003 e9 00 00 00 00 jmp ??1CWinThread@@UAE@XZ ; CWinThread::~CWinThread
__unwindfunclet$??0CSPThread@@QAE@XZ$1:
00008 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0000b 83 c1 48 add ecx, 72 ; 00000048H
0000e e9 00 00 00 00 jmp ??1CAdoConnection@@UAE@XZ ; CAdoConnection::~CAdoConnection
__unwindfunclet$??0CSPThread@@QAE@XZ$2:
00013 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00016 83 c1 68 add ecx, 104 ; 00000068H
00019 e9 00 00 00 00 jmp ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
__unwindfunclet$??0CSPThread@@QAE@XZ$3:
0001e 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00021 81 c1 a0 00 00
00 add ecx, 160 ; 000000a0H
00027 e9 00 00 00 00 jmp ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
__unwindfunclet$??0CSPThread@@QAE@XZ$4:
0002c 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0002f 81 c1 d8 00 00
00 add ecx, 216 ; 000000d8H
00035 e9 00 00 00 00 jmp ??1CAdoRecordSet@@UAE@XZ ; CAdoRecordSet::~CAdoRecordSet
0003a cc int 3
0003b cc int 3
0003c cc int 3
0003d cc int 3
0003e cc int 3
__ehhandler$??0CSPThread@@QAE@XZ:
0003f 90 npad 1
00040 90 npad 1
00041 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00045 8d 42 0c lea eax, DWORD PTR [edx+12]
00048 8b 4a ac mov ecx, DWORD PTR [edx-84]
0004b 33 c8 xor ecx, eax
0004d e8 00 00 00 00 call @__security_check_cookie@4
00052 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??0CSPThread@@QAE@XZ
00057 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??0CSPThread@@QAE@XZ ENDP ; CSPThread::CSPThread
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?CreateObject@CSPThread@@SGPAVCObject@@XZ
_TEXT SEGMENT
tv77 = -88 ; size = 4
$T2 = -84 ; size = 4
$T3 = -80 ; size = 4
__$EHRec$ = -12 ; size = 12
?CreateObject@CSPThread@@SGPAVCObject@@XZ PROC ; CSPThread::CreateObject, COMDAT
; 19 : IMPLEMENT_DYNCREATE(CSPThread, CWinThread)
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?CreateObject@CSPThread@@SGPAVCObject@@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 4c sub esp, 76 ; 0000004cH
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 68 18 01 00 00 push 280 ; 00000118H
0002d e8 00 00 00 00 call ??2CObject@@SGPAXI@Z ; CObject::operator new
00032 89 45 ac mov DWORD PTR $T2[ebp], eax
00035 c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
0003c 83 7d ac 00 cmp DWORD PTR $T2[ebp], 0
00040 74 0d je SHORT $LN3@CreateObje
00042 8b 4d ac mov ecx, DWORD PTR $T2[ebp]
00045 e8 00 00 00 00 call ??0CSPThread@@QAE@XZ ; CSPThread::CSPThread
0004a 89 45 a8 mov DWORD PTR tv77[ebp], eax
0004d eb 07 jmp SHORT $LN4@CreateObje
$LN3@CreateObje:
0004f c7 45 a8 00 00
00 00 mov DWORD PTR tv77[ebp], 0
$LN4@CreateObje:
00056 8b 45 a8 mov eax, DWORD PTR tv77[ebp]
00059 89 45 b0 mov DWORD PTR $T3[ebp], eax
0005c c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00063 8b 45 b0 mov eax, DWORD PTR $T3[ebp]
00066 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00069 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00070 59 pop ecx
00071 5f pop edi
00072 5e pop esi
00073 5b pop ebx
00074 8b e5 mov esp, ebp
00076 5d pop ebp
00077 c3 ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$?CreateObject@CSPThread@@SGPAVCObject@@XZ$0:
00000 8b 45 ac mov eax, DWORD PTR $T2[ebp]
00003 50 push eax
00004 e8 00 00 00 00 call ??3CObject@@SGXPAX@Z ; CObject::operator delete
00009 c3 ret 0
0000a cc int 3
0000b cc int 3
0000c cc int 3
0000d cc int 3
0000e cc int 3
__ehhandler$?CreateObject@CSPThread@@SGPAVCObject@@XZ:
0000f 90 npad 1
00010 90 npad 1
00011 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00015 8d 42 0c lea eax, DWORD PTR [edx+12]
00018 8b 4a a4 mov ecx, DWORD PTR [edx-92]
0001b 33 c8 xor ecx, eax
0001d e8 00 00 00 00 call @__security_check_cookie@4
00022 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?CreateObject@CSPThread@@SGPAVCObject@@XZ
00027 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?CreateObject@CSPThread@@SGPAVCObject@@XZ ENDP ; CSPThread::CreateObject
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?GetRuntimeClass@CSPThread@@UBEPAUCRuntimeClass@@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetRuntimeClass@CSPThread@@UBEPAUCRuntimeClass@@XZ PROC ; CSPThread::GetRuntimeClass, COMDAT
; _this$ = ecx
; 19 : IMPLEMENT_DYNCREATE(CSPThread, CWinThread)
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
0000c b8 00 00 00 00 mov eax, OFFSET ?classCSPThread@CSPThread@@2UCRuntimeClass@@B ; CSPThread::classCSPThread
00011 5f pop edi
00012 5e pop esi
00013 5b pop ebx
00014 8b e5 mov esp, ebp
00016 5d pop ebp
00017 c3 ret 0
?GetRuntimeClass@CSPThread@@UBEPAUCRuntimeClass@@XZ ENDP ; CSPThread::GetRuntimeClass
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\comutil.h
; COMDAT ??1_variant_t@@QAE@XZ
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
??1_variant_t@@QAE@XZ PROC ; _variant_t::~_variant_t, COMDAT
; _this$ = ecx
; 2334 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??1_variant_t@@QAE@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 2335 : ::VariantClear(this);
0002b 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0002e 50 push eax
0002f ff 15 00 00 00
00 call DWORD PTR __imp__VariantClear@4
; 2336 : }
00035 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00038 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
0003f 59 pop ecx
00040 5f pop edi
00041 5e pop esi
00042 5b pop ebx
00043 8b e5 mov esp, ebp
00045 5d pop ebp
00046 c3 ret 0
00047 cc int 3
00048 cc int 3
00049 cc int 3
0004a cc int 3
0004b cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$??1_variant_t@@QAE@XZ:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a ac mov ecx, DWORD PTR [edx-84]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??1_variant_t@@QAE@XZ
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??1_variant_t@@QAE@XZ ENDP ; _variant_t::~_variant_t
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\comutil.h
; COMDAT ??0_variant_t@@QAE@JG@Z
_TEXT SEGMENT
tv132 = -70 ; size = 2
_this$ = -4 ; size = 4
_lSrc$ = 8 ; size = 4
_vtSrc$ = 12 ; size = 2
??0_variant_t@@QAE@JG@Z PROC ; _variant_t::_variant_t, COMDAT
; _this$ = ecx
; 1202 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 1203 : if ((vtSrc != VT_I4) && (vtSrc != VT_ERROR) && (vtSrc != VT_BOOL)) {
0000c 0f b7 45 0c movzx eax, WORD PTR _vtSrc$[ebp]
00010 83 f8 03 cmp eax, 3
00013 74 1e je SHORT $LN2@variant_t
00015 0f b7 45 0c movzx eax, WORD PTR _vtSrc$[ebp]
00019 83 f8 0a cmp eax, 10 ; 0000000aH
0001c 74 15 je SHORT $LN2@variant_t
0001e 0f b7 45 0c movzx eax, WORD PTR _vtSrc$[ebp]
00022 83 f8 0b cmp eax, 11 ; 0000000bH
00025 74 0c je SHORT $LN2@variant_t
; 1204 : _com_issue_error(E_INVALIDARG);
00027 68 57 00 07 80 push -2147024809 ; 80070057H
0002c e8 00 00 00 00 call ?_com_issue_error@@YGXJ@Z ; _com_issue_error
; 1205 : return;
00031 eb 69 jmp SHORT $LN1@variant_t
$LN2@variant_t:
; 1206 : }
; 1207 :
; 1208 : if (vtSrc == VT_ERROR) {
00033 0f b7 45 0c movzx eax, WORD PTR _vtSrc$[ebp]
00037 83 f8 0a cmp eax, 10 ; 0000000aH
0003a 75 16 jne SHORT $LN3@variant_t
; 1209 : V_VT(this) = VT_ERROR;
0003c b8 0a 00 00 00 mov eax, 10 ; 0000000aH
00041 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00044 66 89 01 mov WORD PTR [ecx], ax
; 1210 : V_ERROR(this) = lSrc;
00047 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0004a 8b 4d 08 mov ecx, DWORD PTR _lSrc$[ebp]
0004d 89 48 08 mov DWORD PTR [eax+8], ecx
; 1211 : }
00050 eb 4a jmp SHORT $LN1@variant_t
$LN3@variant_t:
; 1212 : else if (vtSrc == VT_BOOL) {
00052 0f b7 45 0c movzx eax, WORD PTR _vtSrc$[ebp]
00056 83 f8 0b cmp eax, 11 ; 0000000bH
00059 75 2d jne SHORT $LN5@variant_t
; 1213 : V_VT(this) = VT_BOOL;
0005b b8 0b 00 00 00 mov eax, 11 ; 0000000bH
00060 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00063 66 89 01 mov WORD PTR [ecx], ax
; 1214 : V_BOOL(this) = (lSrc ? VARIANT_TRUE : VARIANT_FALSE);
00066 83 7d 08 00 cmp DWORD PTR _lSrc$[ebp], 0
0006a 74 09 je SHORT $LN8@variant_t
0006c 83 c8 ff or eax, -1
0006f 66 89 45 ba mov WORD PTR tv132[ebp], ax
00073 eb 06 jmp SHORT $LN9@variant_t
$LN8@variant_t:
00075 33 c9 xor ecx, ecx
00077 66 89 4d ba mov WORD PTR tv132[ebp], cx
$LN9@variant_t:
0007b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
0007e 66 8b 45 ba mov ax, WORD PTR tv132[ebp]
00082 66 89 42 08 mov WORD PTR [edx+8], ax
; 1215 : }
00086 eb 14 jmp SHORT $LN1@variant_t
$LN5@variant_t:
; 1216 : else {
; 1217 : V_VT(this) = VT_I4;
00088 b8 03 00 00 00 mov eax, 3
0008d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00090 66 89 01 mov WORD PTR [ecx], ax
; 1218 : V_I4(this) = lSrc;
00093 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00096 8b 4d 08 mov ecx, DWORD PTR _lSrc$[ebp]
00099 89 48 08 mov DWORD PTR [eax+8], ecx
$LN1@variant_t:
; 1219 : }
; 1220 : }
0009c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
$LN7@variant_t:
0009f 5f pop edi
000a0 5e pop esi
000a1 5b pop ebx
000a2 8b e5 mov esp, ebp
000a4 5d pop ebp
000a5 c2 08 00 ret 8
??0_variant_t@@QAE@JG@Z ENDP ; _variant_t::_variant_t
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?ConvertSystemTimeToVariantTime@COleDateTime@ATL@@IAEHABU_SYSTEMTIME@@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_systimeSrc$ = 8 ; size = 4
?ConvertSystemTimeToVariantTime@COleDateTime@ATL@@IAEHABU_SYSTEMTIME@@@Z PROC ; ATL::COleDateTime::ConvertSystemTimeToVariantTime, COMDAT
; _this$ = ecx
; 754 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 755 : return AtlConvertSystemTimeToVariantTime(systimeSrc,&m_dt);
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 50 push eax
00010 8b 4d 08 mov ecx, DWORD PTR _systimeSrc$[ebp]
00013 51 push ecx
00014 e8 00 00 00 00 call ?AtlConvertSystemTimeToVariantTime@ATL@@YAHABU_SYSTEMTIME@@PAN@Z ; ATL::AtlConvertSystemTimeToVariantTime
00019 83 c4 08 add esp, 8
; 756 : }
0001c 5f pop edi
0001d 5e pop esi
0001e 5b pop ebx
0001f 8b e5 mov esp, ebp
00021 5d pop ebp
00022 c2 04 00 ret 4
?ConvertSystemTimeToVariantTime@COleDateTime@ATL@@IAEHABU_SYSTEMTIME@@@Z ENDP ; ATL::COleDateTime::ConvertSystemTimeToVariantTime
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?DoubleFromDate@COleDateTime@ATL@@KGNN@Z
_TEXT SEGMENT
tv78 = -92 ; size = 8
_fTemp$ = -20 ; size = 8
__$EHRec$ = -12 ; size = 12
_date$ = 8 ; size = 8
?DoubleFromDate@COleDateTime@ATL@@KGNN@Z PROC ; ATL::COleDateTime::DoubleFromDate, COMDAT
; 900 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?DoubleFromDate@COleDateTime@ATL@@KGNN@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 50 sub esp, 80 ; 00000050H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 901 : // We treat it as positive from -OLE_DATETIME_HALFSECOND because of numeric errors
; 902 : // If value is positive it doesn't need conversion
; 903 : if(date > -COleDateTimeSpan::OLE_DATETIME_HALFSECOND)
00028 f2 0f 10 45 08 movsd xmm0, QWORD PTR _date$[ebp]
0002d 66 0f 2f 05 00
00 00 00 comisd xmm0, QWORD PTR __real@bed845c8a0ce5129
00035 76 05 jbe SHORT $LN2@DoubleFrom
; 904 : {
; 905 : return date;
00037 dd 45 08 fld QWORD PTR _date$[ebp]
0003a eb 33 jmp SHORT $LN1@DoubleFrom
$LN2@DoubleFrom:
; 906 : }
; 907 :
; 908 : // If negative, must convert since negative dates not continuous
; 909 : // (examples: -1.25 to -.75, -1.50 to -.50, -1.75 to -.25)
; 910 : double fTemp = ceil(date);
0003c 83 ec 08 sub esp, 8
0003f f2 0f 10 45 08 movsd xmm0, QWORD PTR _date$[ebp]
00044 f2 0f 11 04 24 movsd QWORD PTR [esp], xmm0
00049 e8 00 00 00 00 call _ceil
0004e 83 c4 08 add esp, 8
00051 dd 5d ec fstp QWORD PTR _fTemp$[ebp]
; 911 :
; 912 : return fTemp - (date - fTemp);
00054 f2 0f 10 45 08 movsd xmm0, QWORD PTR _date$[ebp]
00059 f2 0f 5c 45 ec subsd xmm0, QWORD PTR _fTemp$[ebp]
0005e f2 0f 10 4d ec movsd xmm1, QWORD PTR _fTemp$[ebp]
00063 f2 0f 5c c8 subsd xmm1, xmm0
00067 f2 0f 11 4d a4 movsd QWORD PTR tv78[ebp], xmm1
0006c dd 45 a4 fld QWORD PTR tv78[ebp]
$LN1@DoubleFrom:
; 913 : }
0006f 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00072 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00079 59 pop ecx
0007a 5f pop edi
0007b 5e pop esi
0007c 5b pop ebx
0007d 8b e5 mov esp, ebp
0007f 5d pop ebp
00080 c2 08 00 ret 8
00083 cc int 3
00084 cc int 3
00085 cc int 3
00086 cc int 3
00087 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?DoubleFromDate@COleDateTime@ATL@@KGNN@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a a0 mov ecx, DWORD PTR [edx-96]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?DoubleFromDate@COleDateTime@ATL@@KGNN@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?DoubleFromDate@COleDateTime@ATL@@KGNN@Z ENDP ; ATL::COleDateTime::DoubleFromDate
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z
_TEXT SEGMENT
tv72 = -104 ; size = 4
_st$ = -36 ; size = 16
_this$ = -20 ; size = 4
__$ArrayPad$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_nYear$ = 8 ; size = 4
_nMonth$ = 12 ; size = 4
_nDay$ = 16 ; size = 4
_nHour$ = 20 ; size = 4
_nMin$ = 24 ; size = 4
_nSec$ = 28 ; size = 4
?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z PROC ; ATL::COleDateTime::SetDateTime, COMDAT
; _this$ = ecx
; 873 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 5c sub esp, 92 ; 0000005cH
00014 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
00019 33 c5 xor eax, ebp
0001b 89 45 f0 mov DWORD PTR __$ArrayPad$[ebp], eax
0001e 53 push ebx
0001f 56 push esi
00020 57 push edi
00021 50 push eax
00022 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00025 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
0002b 89 4d ec mov DWORD PTR _this$[ebp], ecx
; 874 : SYSTEMTIME st;
; 875 : ::ZeroMemory(&st, sizeof(SYSTEMTIME));
0002e 6a 10 push 16 ; 00000010H
00030 6a 00 push 0
00032 8d 45 dc lea eax, DWORD PTR _st$[ebp]
00035 50 push eax
00036 e8 00 00 00 00 call _memset
0003b 83 c4 0c add esp, 12 ; 0000000cH
; 876 :
; 877 : st.wYear = WORD(nYear);
0003e 66 8b 45 08 mov ax, WORD PTR _nYear$[ebp]
00042 66 89 45 dc mov WORD PTR _st$[ebp], ax
; 878 : st.wMonth = WORD(nMonth);
00046 66 8b 45 0c mov ax, WORD PTR _nMonth$[ebp]
0004a 66 89 45 de mov WORD PTR _st$[ebp+2], ax
; 879 : st.wDay = WORD(nDay);
0004e 66 8b 45 10 mov ax, WORD PTR _nDay$[ebp]
00052 66 89 45 e2 mov WORD PTR _st$[ebp+6], ax
; 880 : st.wHour = WORD(nHour);
00056 66 8b 45 14 mov ax, WORD PTR _nHour$[ebp]
0005a 66 89 45 e4 mov WORD PTR _st$[ebp+8], ax
; 881 : st.wMinute = WORD(nMin);
0005e 66 8b 45 18 mov ax, WORD PTR _nMin$[ebp]
00062 66 89 45 e6 mov WORD PTR _st$[ebp+10], ax
; 882 : st.wSecond = WORD(nSec);
00066 66 8b 45 1c mov ax, WORD PTR _nSec$[ebp]
0006a 66 89 45 e8 mov WORD PTR _st$[ebp+12], ax
; 883 :
; 884 : m_status = ConvertSystemTimeToVariantTime(st) ? valid : invalid;
0006e 8d 45 dc lea eax, DWORD PTR _st$[ebp]
00071 50 push eax
00072 8b 4d ec mov ecx, DWORD PTR _this$[ebp]
00075 e8 00 00 00 00 call ?ConvertSystemTimeToVariantTime@COleDateTime@ATL@@IAEHABU_SYSTEMTIME@@@Z ; ATL::COleDateTime::ConvertSystemTimeToVariantTime
0007a 85 c0 test eax, eax
0007c 74 09 je SHORT $LN3@SetDateTim
0007e c7 45 98 00 00
00 00 mov DWORD PTR tv72[ebp], 0
00085 eb 07 jmp SHORT $LN4@SetDateTim
$LN3@SetDateTim:
00087 c7 45 98 01 00
00 00 mov DWORD PTR tv72[ebp], 1
$LN4@SetDateTim:
0008e 8b 4d ec mov ecx, DWORD PTR _this$[ebp]
00091 8b 55 98 mov edx, DWORD PTR tv72[ebp]
00094 89 51 08 mov DWORD PTR [ecx+8], edx
; 885 : return m_status;
00097 8b 45 ec mov eax, DWORD PTR _this$[ebp]
0009a 8b 40 08 mov eax, DWORD PTR [eax+8]
; 886 : }
0009d 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
000a0 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
000a7 59 pop ecx
000a8 5f pop edi
000a9 5e pop esi
000aa 5b pop ebx
000ab 8b 4d f0 mov ecx, DWORD PTR __$ArrayPad$[ebp]
000ae 33 cd xor ecx, ebp
000b0 e8 00 00 00 00 call @__security_check_cookie@4
000b5 8b e5 mov esp, ebp
000b7 5d pop ebp
000b8 c2 18 00 ret 24 ; 00000018H
000bb cc int 3
000bc cc int 3
000bd cc int 3
000be cc int 3
000bf cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a 94 mov ecx, DWORD PTR [edx-108]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 8b 4a fc mov ecx, DWORD PTR [edx-4]
00016 33 c8 xor ecx, eax
00018 e8 00 00 00 00 call @__security_check_cookie@4
0001d b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z
00022 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?SetDateTime@COleDateTime@ATL@@QAEHHHHHHH@Z ENDP ; ATL::COleDateTime::SetDateTime
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ??OCOleDateTime@ATL@@QBE_NABV01@@Z
_TEXT SEGMENT
tv79 = -96 ; size = 4
tv130 = -92 ; size = 8
tv135 = -84 ; size = 8
tv91 = -76 ; size = 8
_this$ = -4 ; size = 4
_date$ = 8 ; size = 4
??OCOleDateTime@ATL@@QBE_NABV01@@Z PROC ; ATL::COleDateTime::operator>, COMDAT
; _this$ = ecx
; 804 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 60 sub esp, 96 ; 00000060H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 805 : ATLASSERT(GetStatus() == valid);
; 806 : ATLASSERT(date.GetStatus() == valid);
; 807 : if( (GetStatus() == valid) && (GetStatus() == date.GetStatus()) )
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00014 85 c0 test eax, eax
00016 75 6f jne SHORT $LN2@operator
00018 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0001b e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00020 8b f0 mov esi, eax
00022 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
00025 e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
0002a 3b f0 cmp esi, eax
0002c 75 59 jne SHORT $LN2@operator
; 808 : return( DoubleFromDate( m_dt ) > DoubleFromDate( date.m_dt ) );
0002e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00031 83 ec 08 sub esp, 8
00034 f2 0f 10 00 movsd xmm0, QWORD PTR [eax]
00038 f2 0f 11 04 24 movsd QWORD PTR [esp], xmm0
0003d e8 00 00 00 00 call ?DoubleFromDate@COleDateTime@ATL@@KGNN@Z ; ATL::COleDateTime::DoubleFromDate
00042 dd 5d b4 fstp QWORD PTR tv91[ebp]
00045 f2 0f 10 45 b4 movsd xmm0, QWORD PTR tv91[ebp]
0004a 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
0004d 83 ec 08 sub esp, 8
00050 f2 0f 10 09 movsd xmm1, QWORD PTR [ecx]
00054 f2 0f 11 0c 24 movsd QWORD PTR [esp], xmm1
00059 f2 0f 11 45 ac movsd QWORD PTR tv135[ebp], xmm0
0005e e8 00 00 00 00 call ?DoubleFromDate@COleDateTime@ATL@@KGNN@Z ; ATL::COleDateTime::DoubleFromDate
00063 dd 5d a4 fstp QWORD PTR tv130[ebp]
00066 f2 0f 10 45 ac movsd xmm0, QWORD PTR tv135[ebp]
0006b 66 0f 2f 45 a4 comisd xmm0, QWORD PTR tv130[ebp]
00070 76 09 jbe SHORT $LN4@operator
00072 c7 45 a0 01 00
00 00 mov DWORD PTR tv79[ebp], 1
00079 eb 07 jmp SHORT $LN5@operator
$LN4@operator:
0007b c7 45 a0 00 00
00 00 mov DWORD PTR tv79[ebp], 0
$LN5@operator:
00082 8a 45 a0 mov al, BYTE PTR tv79[ebp]
00085 eb 02 jmp SHORT $LN1@operator
$LN2@operator:
; 809 :
; 810 : return false;
00087 32 c0 xor al, al
$LN1@operator:
; 811 : }
00089 5f pop edi
0008a 5e pop esi
0008b 5b pop ebx
0008c 8b e5 mov esp, ebp
0008e 5d pop ebp
0008f c2 04 00 ret 4
??OCOleDateTime@ATL@@QBE_NABV01@@Z ENDP ; ATL::COleDateTime::operator>
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ??MCOleDateTime@ATL@@QBE_NABV01@@Z
_TEXT SEGMENT
tv79 = -96 ; size = 4
tv130 = -92 ; size = 8
tv135 = -84 ; size = 8
tv91 = -76 ; size = 8
_this$ = -4 ; size = 4
_date$ = 8 ; size = 4
??MCOleDateTime@ATL@@QBE_NABV01@@Z PROC ; ATL::COleDateTime::operator<, COMDAT
; _this$ = ecx
; 794 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 60 sub esp, 96 ; 00000060H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 795 : ATLASSERT(GetStatus() == valid);
; 796 : ATLASSERT(date.GetStatus() == valid);
; 797 : if( (GetStatus() == valid) && (GetStatus() == date.GetStatus()) )
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00014 85 c0 test eax, eax
00016 75 73 jne SHORT $LN2@operator
00018 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0001b e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00020 8b f0 mov esi, eax
00022 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
00025 e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
0002a 3b f0 cmp esi, eax
0002c 75 5d jne SHORT $LN2@operator
; 798 : return( DoubleFromDate( m_dt ) < DoubleFromDate( date.m_dt ) );
0002e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00031 83 ec 08 sub esp, 8
00034 f2 0f 10 00 movsd xmm0, QWORD PTR [eax]
00038 f2 0f 11 04 24 movsd QWORD PTR [esp], xmm0
0003d e8 00 00 00 00 call ?DoubleFromDate@COleDateTime@ATL@@KGNN@Z ; ATL::COleDateTime::DoubleFromDate
00042 dd 5d b4 fstp QWORD PTR tv91[ebp]
00045 f2 0f 10 45 b4 movsd xmm0, QWORD PTR tv91[ebp]
0004a 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
0004d 83 ec 08 sub esp, 8
00050 f2 0f 10 09 movsd xmm1, QWORD PTR [ecx]
00054 f2 0f 11 0c 24 movsd QWORD PTR [esp], xmm1
00059 f2 0f 11 45 ac movsd QWORD PTR tv135[ebp], xmm0
0005e e8 00 00 00 00 call ?DoubleFromDate@COleDateTime@ATL@@KGNN@Z ; ATL::COleDateTime::DoubleFromDate
00063 dd 5d a4 fstp QWORD PTR tv130[ebp]
00066 f2 0f 10 45 a4 movsd xmm0, QWORD PTR tv130[ebp]
0006b f2 0f 10 4d ac movsd xmm1, QWORD PTR tv135[ebp]
00070 66 0f 2f c1 comisd xmm0, xmm1
00074 76 09 jbe SHORT $LN4@operator
00076 c7 45 a0 01 00
00 00 mov DWORD PTR tv79[ebp], 1
0007d eb 07 jmp SHORT $LN5@operator
$LN4@operator:
0007f c7 45 a0 00 00
00 00 mov DWORD PTR tv79[ebp], 0
$LN5@operator:
00086 8a 45 a0 mov al, BYTE PTR tv79[ebp]
00089 eb 02 jmp SHORT $LN1@operator
$LN2@operator:
; 799 :
; 800 : return false;
0008b 32 c0 xor al, al
$LN1@operator:
; 801 : }
0008d 5f pop edi
0008e 5e pop esi
0008f 5b pop ebx
00090 8b e5 mov esp, ebp
00092 5d pop ebp
00093 c2 04 00 ret 4
??MCOleDateTime@ATL@@QBE_NABV01@@Z ENDP ; ATL::COleDateTime::operator<
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ??8COleDateTime@ATL@@QBE_NABV01@@Z
_TEXT SEGMENT
tv83 = -72 ; size = 4
_this$ = -4 ; size = 4
_date$ = 8 ; size = 4
??8COleDateTime@ATL@@QBE_NABV01@@Z PROC ; ATL::COleDateTime::operator==, COMDAT
; _this$ = ecx
; 765 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 766 : if(GetStatus() == date.GetStatus())
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00014 8b f0 mov esi, eax
00016 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
00019 e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
0001e 3b f0 cmp esi, eax
00020 75 6c jne SHORT $LN2@operator
; 767 : {
; 768 : if(GetStatus() == valid)
00022 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00025 e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
0002a 85 c0 test eax, eax
0002c 75 3e jne SHORT $LN5@operator
; 769 : {
; 770 : // it has to be in precision range to say that it as equal
; 771 : if (m_dt + COleDateTimeSpan::OLE_DATETIME_HALFSECOND > date.m_dt &&
0002e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00031 f2 0f 10 00 movsd xmm0, QWORD PTR [eax]
00035 f2 0f 58 05 00
00 00 00 addsd xmm0, QWORD PTR __real@3ed845c8a0ce5129
0003d 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
00040 66 0f 2f 01 comisd xmm0, QWORD PTR [ecx]
00044 76 22 jbe SHORT $LN4@operator
00046 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00049 f2 0f 10 00 movsd xmm0, QWORD PTR [eax]
0004d f2 0f 5c 05 00
00 00 00 subsd xmm0, QWORD PTR __real@3ed845c8a0ce5129
00055 8b 4d 08 mov ecx, DWORD PTR _date$[ebp]
00058 f2 0f 10 09 movsd xmm1, QWORD PTR [ecx]
0005c 66 0f 2f c8 comisd xmm1, xmm0
00060 76 06 jbe SHORT $LN4@operator
; 772 : m_dt - COleDateTimeSpan::OLE_DATETIME_HALFSECOND < date.m_dt)
; 773 : {
; 774 : return true;
00062 b0 01 mov al, 1
00064 eb 2a jmp SHORT $LN1@operator
; 775 : }
00066 eb 04 jmp SHORT $LN5@operator
$LN4@operator:
; 776 : else
; 777 : {
; 778 : return false;
00068 32 c0 xor al, al
0006a eb 24 jmp SHORT $LN1@operator
$LN5@operator:
; 779 : }
; 780 : }
; 781 :
; 782 : return (GetStatus() == null);
0006c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0006f e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00074 83 f8 02 cmp eax, 2
00077 75 09 jne SHORT $LN7@operator
00079 c7 45 b8 01 00
00 00 mov DWORD PTR tv83[ebp], 1
00080 eb 07 jmp SHORT $LN8@operator
$LN7@operator:
00082 c7 45 b8 00 00
00 00 mov DWORD PTR tv83[ebp], 0
$LN8@operator:
00089 8a 45 b8 mov al, BYTE PTR tv83[ebp]
0008c eb 02 jmp SHORT $LN1@operator
$LN2@operator:
; 783 : }
; 784 : return false;
0008e 32 c0 xor al, al
$LN1@operator:
; 785 :
; 786 : }
00090 5f pop edi
00091 5e pop esi
00092 5b pop ebx
00093 8b e5 mov esp, ebp
00095 5d pop ebp
00096 c2 04 00 ret 4
??8COleDateTime@ATL@@QBE_NABV01@@Z ENDP ; ATL::COleDateTime::operator==
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ??4COleDateTime@ATL@@QAEAAV01@AB_J@Z
_TEXT SEGMENT
tv76 = -112 ; size = 4
_tmp$ = -44 ; size = 8
_st$ = -36 ; size = 16
_this$ = -20 ; size = 4
__$ArrayPad$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_timeSrc$ = 8 ; size = 4
??4COleDateTime@ATL@@QAEAAV01@AB_J@Z PROC ; ATL::COleDateTime::operator=, COMDAT
; _this$ = ecx
; 715 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??4COleDateTime@ATL@@QAEAAV01@AB_J@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 64 sub esp, 100 ; 00000064H
00014 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
00019 33 c5 xor eax, ebp
0001b 89 45 f0 mov DWORD PTR __$ArrayPad$[ebp], eax
0001e 53 push ebx
0001f 56 push esi
00020 57 push edi
00021 50 push eax
00022 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00025 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
0002b 89 4d ec mov DWORD PTR _this$[ebp], ecx
; 716 : #ifndef _ATL_USE_WINAPI_FAMILY_DESKTOP_APP
; 717 : SYSTEMTIME st;
; 718 :
; 719 : m_status = GetAsSystemTimeHelper(timeSrc, st) &&
; 720 : ConvertSystemTimeToVariantTime(st) ? valid : invalid;
; 721 :
; 722 : #else
; 723 : SYSTEMTIME st;
; 724 : CTime tmp(timeSrc);
0002e 8b 45 08 mov eax, DWORD PTR _timeSrc$[ebp]
00031 8b 48 04 mov ecx, DWORD PTR [eax+4]
00034 51 push ecx
00035 8b 10 mov edx, DWORD PTR [eax]
00037 52 push edx
00038 8d 4d d4 lea ecx, DWORD PTR _tmp$[ebp]
0003b e8 00 00 00 00 call ??0CTime@ATL@@QAE@_J@Z ; ATL::CTime::CTime
; 725 :
; 726 : m_status = tmp.GetAsSystemTime(st) &&
00040 8d 45 dc lea eax, DWORD PTR _st$[ebp]
00043 50 push eax
00044 8d 4d d4 lea ecx, DWORD PTR _tmp$[ebp]
00047 e8 00 00 00 00 call ?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::CTime::GetAsSystemTime
0004c 0f b6 c8 movzx ecx, al
0004f 85 c9 test ecx, ecx
00051 74 19 je SHORT $LN3@operator
00053 8d 55 dc lea edx, DWORD PTR _st$[ebp]
00056 52 push edx
00057 8b 4d ec mov ecx, DWORD PTR _this$[ebp]
0005a e8 00 00 00 00 call ?ConvertSystemTimeToVariantTime@COleDateTime@ATL@@IAEHABU_SYSTEMTIME@@@Z ; ATL::COleDateTime::ConvertSystemTimeToVariantTime
0005f 85 c0 test eax, eax
00061 74 09 je SHORT $LN3@operator
00063 c7 45 90 00 00
00 00 mov DWORD PTR tv76[ebp], 0
0006a eb 07 jmp SHORT $LN4@operator
$LN3@operator:
0006c c7 45 90 01 00
00 00 mov DWORD PTR tv76[ebp], 1
$LN4@operator:
00073 8b 45 ec mov eax, DWORD PTR _this$[ebp]
00076 8b 4d 90 mov ecx, DWORD PTR tv76[ebp]
00079 89 48 08 mov DWORD PTR [eax+8], ecx
; 727 : ConvertSystemTimeToVariantTime(st) ? valid : invalid;
; 728 : #endif // _ATL_USE_WINAPI_FAMILY_DESKTOP_APP
; 729 : return *this;
0007c 8b 45 ec mov eax, DWORD PTR _this$[ebp]
; 730 : }
0007f 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00082 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00089 59 pop ecx
0008a 5f pop edi
0008b 5e pop esi
0008c 5b pop ebx
0008d 8b 4d f0 mov ecx, DWORD PTR __$ArrayPad$[ebp]
00090 33 cd xor ecx, ebp
00092 e8 00 00 00 00 call @__security_check_cookie@4
00097 8b e5 mov esp, ebp
00099 5d pop ebp
0009a c2 04 00 ret 4
0009d cc int 3
0009e cc int 3
0009f cc int 3
000a0 cc int 3
000a1 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$??4COleDateTime@ATL@@QAEAAV01@AB_J@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a 8c mov ecx, DWORD PTR [edx-116]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 8b 4a fc mov ecx, DWORD PTR [edx-4]
00016 33 c8 xor ecx, eax
00018 e8 00 00 00 00 call @__security_check_cookie@4
0001d b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??4COleDateTime@ATL@@QAEAAV01@AB_J@Z
00022 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??4COleDateTime@ATL@@QAEAAV01@AB_J@Z ENDP ; ATL::COleDateTime::operator=
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetDayOfWeek@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv74 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetDayOfWeek@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetDayOfWeek, COMDAT
; _this$ = ecx
; 645 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 646 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 647 : return GetAsSystemTime(st) ? st.wDayOfWeek + 1 : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 0c je SHORT $LN3@GetDayOfWe
00037 0f b7 55 ec movzx edx, WORD PTR _st$[ebp+4]
0003b 83 c2 01 add edx, 1
0003e 89 55 a4 mov DWORD PTR tv74[ebp], edx
00041 eb 07 jmp SHORT $LN4@GetDayOfWe
$LN3@GetDayOfWe:
00043 c7 45 a4 ff ff
ff ff mov DWORD PTR tv74[ebp], -1
$LN4@GetDayOfWe:
0004a 8b 45 a4 mov eax, DWORD PTR tv74[ebp]
; 648 : }
0004d 5f pop edi
0004e 5e pop esi
0004f 5b pop ebx
00050 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00053 33 cd xor ecx, ebp
00055 e8 00 00 00 00 call @__security_check_cookie@4
0005a 8b e5 mov esp, ebp
0005c 5d pop ebp
0005d c3 ret 0
?GetDayOfWeek@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetDayOfWeek
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetSecond@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv73 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetSecond@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetSecond, COMDAT
; _this$ = ecx
; 639 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 640 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 641 : return GetAsSystemTime(st) ? st.wSecond : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 09 je SHORT $LN3@GetSecond
00037 0f b7 55 f4 movzx edx, WORD PTR _st$[ebp+12]
0003b 89 55 a4 mov DWORD PTR tv73[ebp], edx
0003e eb 07 jmp SHORT $LN4@GetSecond
$LN3@GetSecond:
00040 c7 45 a4 ff ff
ff ff mov DWORD PTR tv73[ebp], -1
$LN4@GetSecond:
00047 8b 45 a4 mov eax, DWORD PTR tv73[ebp]
; 642 : }
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00050 33 cd xor ecx, ebp
00052 e8 00 00 00 00 call @__security_check_cookie@4
00057 8b e5 mov esp, ebp
00059 5d pop ebp
0005a c3 ret 0
?GetSecond@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetSecond
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetMinute@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv73 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetMinute@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetMinute, COMDAT
; _this$ = ecx
; 633 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 634 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 635 : return GetAsSystemTime(st) ? st.wMinute : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 09 je SHORT $LN3@GetMinute
00037 0f b7 55 f2 movzx edx, WORD PTR _st$[ebp+10]
0003b 89 55 a4 mov DWORD PTR tv73[ebp], edx
0003e eb 07 jmp SHORT $LN4@GetMinute
$LN3@GetMinute:
00040 c7 45 a4 ff ff
ff ff mov DWORD PTR tv73[ebp], -1
$LN4@GetMinute:
00047 8b 45 a4 mov eax, DWORD PTR tv73[ebp]
; 636 : }
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00050 33 cd xor ecx, ebp
00052 e8 00 00 00 00 call @__security_check_cookie@4
00057 8b e5 mov esp, ebp
00059 5d pop ebp
0005a c3 ret 0
?GetMinute@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetMinute
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetHour@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv73 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetHour@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetHour, COMDAT
; _this$ = ecx
; 627 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 628 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 629 : return GetAsSystemTime(st) ? st.wHour : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 09 je SHORT $LN3@GetHour
00037 0f b7 55 f0 movzx edx, WORD PTR _st$[ebp+8]
0003b 89 55 a4 mov DWORD PTR tv73[ebp], edx
0003e eb 07 jmp SHORT $LN4@GetHour
$LN3@GetHour:
00040 c7 45 a4 ff ff
ff ff mov DWORD PTR tv73[ebp], -1
$LN4@GetHour:
00047 8b 45 a4 mov eax, DWORD PTR tv73[ebp]
; 630 : }
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00050 33 cd xor ecx, ebp
00052 e8 00 00 00 00 call @__security_check_cookie@4
00057 8b e5 mov esp, ebp
00059 5d pop ebp
0005a c3 ret 0
?GetHour@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetHour
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetDay@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv73 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetDay@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetDay, COMDAT
; _this$ = ecx
; 621 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 622 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 623 : return GetAsSystemTime(st) ? st.wDay : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 09 je SHORT $LN3@GetDay
00037 0f b7 55 ee movzx edx, WORD PTR _st$[ebp+6]
0003b 89 55 a4 mov DWORD PTR tv73[ebp], edx
0003e eb 07 jmp SHORT $LN4@GetDay
$LN3@GetDay:
00040 c7 45 a4 ff ff
ff ff mov DWORD PTR tv73[ebp], -1
$LN4@GetDay:
00047 8b 45 a4 mov eax, DWORD PTR tv73[ebp]
; 624 : }
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00050 33 cd xor ecx, ebp
00052 e8 00 00 00 00 call @__security_check_cookie@4
00057 8b e5 mov esp, ebp
00059 5d pop ebp
0005a c3 ret 0
?GetDay@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetDay
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetMonth@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv73 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetMonth@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetMonth, COMDAT
; _this$ = ecx
; 615 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 616 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 617 : return GetAsSystemTime(st) ? st.wMonth : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 09 je SHORT $LN3@GetMonth
00037 0f b7 55 ea movzx edx, WORD PTR _st$[ebp+2]
0003b 89 55 a4 mov DWORD PTR tv73[ebp], edx
0003e eb 07 jmp SHORT $LN4@GetMonth
$LN3@GetMonth:
00040 c7 45 a4 ff ff
ff ff mov DWORD PTR tv73[ebp], -1
$LN4@GetMonth:
00047 8b 45 a4 mov eax, DWORD PTR tv73[ebp]
; 618 : }
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00050 33 cd xor ecx, ebp
00052 e8 00 00 00 00 call @__security_check_cookie@4
00057 8b e5 mov esp, ebp
00059 5d pop ebp
0005a c3 ret 0
?GetMonth@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetMonth
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetYear@COleDateTime@ATL@@QBEHXZ
_TEXT SEGMENT
tv73 = -92 ; size = 4
_st$ = -24 ; size = 16
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
?GetYear@COleDateTime@ATL@@QBEHXZ PROC ; ATL::COleDateTime::GetYear, COMDAT
; _this$ = ecx
; 609 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
; 610 : SYSTEMTIME st = {0};
00016 33 c0 xor eax, eax
00018 89 45 e8 mov DWORD PTR _st$[ebp], eax
0001b 89 45 ec mov DWORD PTR _st$[ebp+4], eax
0001e 89 45 f0 mov DWORD PTR _st$[ebp+8], eax
00021 89 45 f4 mov DWORD PTR _st$[ebp+12], eax
; 611 : return GetAsSystemTime(st) ? st.wYear : error;
00024 8d 45 e8 lea eax, DWORD PTR _st$[ebp]
00027 50 push eax
00028 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
0002b e8 00 00 00 00 call ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ; ATL::COleDateTime::GetAsSystemTime
00030 0f b6 c8 movzx ecx, al
00033 85 c9 test ecx, ecx
00035 74 09 je SHORT $LN3@GetYear
00037 0f b7 55 e8 movzx edx, WORD PTR _st$[ebp]
0003b 89 55 a4 mov DWORD PTR tv73[ebp], edx
0003e eb 07 jmp SHORT $LN4@GetYear
$LN3@GetYear:
00040 c7 45 a4 ff ff
ff ff mov DWORD PTR tv73[ebp], -1
$LN4@GetYear:
00047 8b 45 a4 mov eax, DWORD PTR tv73[ebp]
; 612 : }
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00050 33 cd xor ecx, ebp
00052 e8 00 00 00 00 call @__security_check_cookie@4
00057 8b e5 mov esp, ebp
00059 5d pop ebp
0005a c3 ret 0
?GetYear@COleDateTime@ATL@@QBEHXZ ENDP ; ATL::COleDateTime::GetYear
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z
_TEXT SEGMENT
tv72 = -84 ; size = 4
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_sysTime$ = 8 ; size = 4
?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z PROC ; ATL::COleDateTime::GetAsSystemTime, COMDAT
; _this$ = ecx
; 598 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 48 sub esp, 72 ; 00000048H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 599 : return GetStatus() == valid && ::VariantTimeToSystemTime(m_dt, &sysTime) == TRUE;
0002b 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0002e e8 00 00 00 00 call ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ; ATL::COleDateTime::GetStatus
00033 85 c0 test eax, eax
00035 75 27 jne SHORT $LN3@GetAsSyste
00037 8b 45 08 mov eax, DWORD PTR _sysTime$[ebp]
0003a 50 push eax
0003b 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0003e 83 ec 08 sub esp, 8
00041 f2 0f 10 01 movsd xmm0, QWORD PTR [ecx]
00045 f2 0f 11 04 24 movsd QWORD PTR [esp], xmm0
0004a ff 15 00 00 00
00 call DWORD PTR __imp__VariantTimeToSystemTime@12
00050 83 f8 01 cmp eax, 1
00053 75 09 jne SHORT $LN3@GetAsSyste
00055 c7 45 ac 01 00
00 00 mov DWORD PTR tv72[ebp], 1
0005c eb 07 jmp SHORT $LN4@GetAsSyste
$LN3@GetAsSyste:
0005e c7 45 ac 00 00
00 00 mov DWORD PTR tv72[ebp], 0
$LN4@GetAsSyste:
00065 8a 45 ac mov al, BYTE PTR tv72[ebp]
; 600 : }
00068 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0006b 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00072 59 pop ecx
00073 5f pop edi
00074 5e pop esi
00075 5b pop ebx
00076 8b e5 mov esp, ebp
00078 5d pop ebp
00079 c2 04 00 ret 4
0007c cc int 3
0007d cc int 3
0007e cc int 3
0007f cc int 3
00080 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a a8 mov ecx, DWORD PTR [edx-88]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?GetAsSystemTime@COleDateTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ENDP ; ATL::COleDateTime::GetAsSystemTime
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ PROC ; ATL::COleDateTime::GetStatus, COMDAT
; _this$ = ecx
; 593 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 594 : return m_status;
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 8b 40 08 mov eax, DWORD PTR [eax+8]
; 595 : }
00012 5f pop edi
00013 5e pop esi
00014 5b pop ebx
00015 8b e5 mov esp, ebp
00017 5d pop ebp
00018 c3 ret 0
?GetStatus@COleDateTime@ATL@@QBE?AW4DateTimeStatus@12@XZ ENDP ; ATL::COleDateTime::GetStatus
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ??0COleDateTime@ATL@@QAE@_J@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_timeSrc$ = 8 ; size = 8
??0COleDateTime@ATL@@QAE@_J@Z PROC ; ATL::COleDateTime::COleDateTime, COMDAT
; _this$ = ecx
; 550 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 549 : m_dt( 0 ), m_status(valid)
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 0f 57 c0 xorps xmm0, xmm0
00012 f2 0f 11 00 movsd QWORD PTR [eax], xmm0
00016 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00019 c7 40 08 00 00
00 00 mov DWORD PTR [eax+8], 0
; 551 : *this = timeSrc;
00020 8d 45 08 lea eax, DWORD PTR _timeSrc$[ebp]
00023 50 push eax
00024 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00027 e8 00 00 00 00 call ??4COleDateTime@ATL@@QAEAAV01@AB_J@Z ; ATL::COleDateTime::operator=
; 552 : }
0002c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0002f 5f pop edi
00030 5e pop esi
00031 5b pop ebx
00032 8b e5 mov esp, ebp
00034 5d pop ebp
00035 c2 08 00 ret 8
??0COleDateTime@ATL@@QAE@_J@Z ENDP ; ATL::COleDateTime::COleDateTime
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ??0COleDateTime@ATL@@QAE@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
??0COleDateTime@ATL@@QAE@XZ PROC ; ATL::COleDateTime::COleDateTime, COMDAT
; _this$ = ecx
; 528 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 527 : m_dt( 0 ), m_status(valid)
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 0f 57 c0 xorps xmm0, xmm0
00012 f2 0f 11 00 movsd QWORD PTR [eax], xmm0
00016 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00019 c7 40 08 00 00
00 00 mov DWORD PTR [eax+8], 0
; 529 : }
00020 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00023 5f pop edi
00024 5e pop esi
00025 5b pop ebx
00026 8b e5 mov esp, ebp
00028 5d pop ebp
00029 c3 ret 0
??0COleDateTime@ATL@@QAE@XZ ENDP ; ATL::COleDateTime::COleDateTime
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\ATLComTime.h
; COMDAT ?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
___$ReturnUdt$ = 8 ; size = 4
?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ PROC ; ATL::COleDateTime::GetTickCount, COMDAT
; 522 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 40 sub esp, 64 ; 00000040H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 523 : return COleDateTime(::_time64(NULL));
00028 6a 00 push 0
0002a e8 00 00 00 00 call __time64
0002f 83 c4 04 add esp, 4
00032 52 push edx
00033 50 push eax
00034 8b 4d 08 mov ecx, DWORD PTR ___$ReturnUdt$[ebp]
00037 e8 00 00 00 00 call ??0COleDateTime@ATL@@QAE@_J@Z ; ATL::COleDateTime::COleDateTime
0003c 8b 45 08 mov eax, DWORD PTR ___$ReturnUdt$[ebp]
; 524 : }
0003f 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00042 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00049 59 pop ecx
0004a 5f pop edi
0004b 5e pop esi
0004c 5b pop ebx
0004d 8b e5 mov esp, ebp
0004f 5d pop ebp
00050 c2 04 00 ret 4
00053 cc int 3
00054 cc int 3
00055 cc int 3
00056 cc int 3
00057 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?GetTickCount@COleDateTime@ATL@@SG?AV12@XZ ENDP ; ATL::COleDateTime::GetTickCount
; Function compile flags: /Odtp /ZI
; 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@@@@SAPAUIAtlStringMgr@ATL@@XZ
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager, COMDAT
; 51 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 40 sub esp, 64 ; 00000040H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 52 : return( AfxGetStringManager() );
00028 e8 00 00 00 00 call ?AfxGetStringManager@@YGPAUIAtlStringMgr@ATL@@XZ ; AfxGetStringManager
; 53 : }
0002d 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00030 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00037 59 pop ecx
00038 5f pop edi
00039 5e pop esi
0003a 5b pop ebx
0003b 8b e5 mov esp, ebp
0003d 5d pop ebp
0003e c3 ret 0
0003f cc int 3
00040 cc int 3
00041 cc int 3
00042 cc int 3
00043 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
; Function compile flags: /Odtp /ZI
; 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@@@@SAPAUHINSTANCE__@@I@Z
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
_nID$ = 8 ; size = 4
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance, COMDAT
; 46 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 40 sub esp, 64 ; 00000040H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 47 : return( AfxFindStringResourceHandle( nID ) );
00028 8b 45 08 mov eax, DWORD PTR _nID$[ebp]
0002b 50 push eax
0002c e8 00 00 00 00 call ?AfxFindStringResourceHandle@@YGPAUHINSTANCE__@@I@Z ; AfxFindStringResourceHandle
; 48 : }
00031 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00034 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
0003b 59 pop ecx
0003c 5f pop edi
0003d 5e pop esi
0003e 5b pop ebx
0003f 8b e5 mov esp, ebp
00041 5d pop ebp
00042 c3 ret 0
00043 cc int 3
00044 cc int 3
00045 cc int 3
00046 cc int 3
00047 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atltime.h
; COMDAT ?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z
_TEXT SEGMENT
_ptm$ = -60 ; size = 4
_ttm$ = -56 ; size = 36
_this$ = -20 ; size = 4
__$ArrayPad$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_timeDest$ = 8 ; size = 4
?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z PROC ; ATL::CTime::GetAsSystemTime, COMDAT
; _this$ = ecx
; 629 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 70 sub esp, 112 ; 00000070H
00014 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
00019 33 c5 xor eax, ebp
0001b 89 45 f0 mov DWORD PTR __$ArrayPad$[ebp], eax
0001e 53 push ebx
0001f 56 push esi
00020 57 push edi
00021 50 push eax
00022 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00025 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
0002b 89 4d ec mov DWORD PTR _this$[ebp], ecx
; 630 : struct tm ttm;
; 631 : struct tm* ptm;
; 632 :
; 633 : ptm = GetLocalTm(&ttm);
0002e 8d 45 c8 lea eax, DWORD PTR _ttm$[ebp]
00031 50 push eax
00032 8b 4d ec mov ecx, DWORD PTR _this$[ebp]
00035 e8 00 00 00 00 call ?GetLocalTm@CTime@ATL@@QBEPAUtm@@PAU3@@Z ; ATL::CTime::GetLocalTm
0003a 89 45 c4 mov DWORD PTR _ptm$[ebp], eax
; 634 : if(!ptm)
0003d 83 7d c4 00 cmp DWORD PTR _ptm$[ebp], 0
00041 75 04 jne SHORT $LN2@GetAsSyste
; 635 : {
; 636 : return false;
00043 32 c0 xor al, al
00045 eb 72 jmp SHORT $LN1@GetAsSyste
$LN2@GetAsSyste:
; 637 : }
; 638 :
; 639 : timeDest.wYear = (WORD) (1900 + ptm->tm_year);
00047 8b 45 c4 mov eax, DWORD PTR _ptm$[ebp]
0004a 8b 48 14 mov ecx, DWORD PTR [eax+20]
0004d 81 c1 6c 07 00
00 add ecx, 1900 ; 0000076cH
00053 8b 55 08 mov edx, DWORD PTR _timeDest$[ebp]
00056 66 89 0a mov WORD PTR [edx], cx
; 640 : timeDest.wMonth = (WORD) (1 + ptm->tm_mon);
00059 8b 45 c4 mov eax, DWORD PTR _ptm$[ebp]
0005c 8b 48 10 mov ecx, DWORD PTR [eax+16]
0005f 83 c1 01 add ecx, 1
00062 8b 55 08 mov edx, DWORD PTR _timeDest$[ebp]
00065 66 89 4a 02 mov WORD PTR [edx+2], cx
; 641 : timeDest.wDayOfWeek = (WORD) ptm->tm_wday;
00069 8b 45 08 mov eax, DWORD PTR _timeDest$[ebp]
0006c 8b 4d c4 mov ecx, DWORD PTR _ptm$[ebp]
0006f 66 8b 51 18 mov dx, WORD PTR [ecx+24]
00073 66 89 50 04 mov WORD PTR [eax+4], dx
; 642 : timeDest.wDay = (WORD) ptm->tm_mday;
00077 8b 45 08 mov eax, DWORD PTR _timeDest$[ebp]
0007a 8b 4d c4 mov ecx, DWORD PTR _ptm$[ebp]
0007d 66 8b 51 0c mov dx, WORD PTR [ecx+12]
00081 66 89 50 06 mov WORD PTR [eax+6], dx
; 643 : timeDest.wHour = (WORD) ptm->tm_hour;
00085 8b 45 08 mov eax, DWORD PTR _timeDest$[ebp]
00088 8b 4d c4 mov ecx, DWORD PTR _ptm$[ebp]
0008b 66 8b 51 08 mov dx, WORD PTR [ecx+8]
0008f 66 89 50 08 mov WORD PTR [eax+8], dx
; 644 : timeDest.wMinute = (WORD) ptm->tm_min;
00093 8b 45 08 mov eax, DWORD PTR _timeDest$[ebp]
00096 8b 4d c4 mov ecx, DWORD PTR _ptm$[ebp]
00099 66 8b 51 04 mov dx, WORD PTR [ecx+4]
0009d 66 89 50 0a mov WORD PTR [eax+10], dx
; 645 : timeDest.wSecond = (WORD) ptm->tm_sec;
000a1 8b 45 08 mov eax, DWORD PTR _timeDest$[ebp]
000a4 8b 4d c4 mov ecx, DWORD PTR _ptm$[ebp]
000a7 66 8b 11 mov dx, WORD PTR [ecx]
000aa 66 89 50 0c mov WORD PTR [eax+12], dx
; 646 : timeDest.wMilliseconds = 0;
000ae 33 c0 xor eax, eax
000b0 8b 4d 08 mov ecx, DWORD PTR _timeDest$[ebp]
000b3 66 89 41 0e mov WORD PTR [ecx+14], ax
; 647 :
; 648 : return true;
000b7 b0 01 mov al, 1
$LN1@GetAsSyste:
; 649 : }
000b9 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
000bc 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
000c3 59 pop ecx
000c4 5f pop edi
000c5 5e pop esi
000c6 5b pop ebx
000c7 8b 4d f0 mov ecx, DWORD PTR __$ArrayPad$[ebp]
000ca 33 cd xor ecx, ebp
000cc e8 00 00 00 00 call @__security_check_cookie@4
000d1 8b e5 mov esp, ebp
000d3 5d pop ebp
000d4 c2 04 00 ret 4
000d7 cc int 3
000d8 cc int 3
000d9 cc int 3
000da cc int 3
000db cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a 80 mov ecx, DWORD PTR [edx-128]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 8b 4a fc mov ecx, DWORD PTR [edx-4]
00016 33 c8 xor ecx, eax
00018 e8 00 00 00 00 call @__security_check_cookie@4
0001d b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z
00022 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?GetAsSystemTime@CTime@ATL@@QBE_NAAU_SYSTEMTIME@@@Z ENDP ; ATL::CTime::GetAsSystemTime
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atltime.h
; COMDAT ?GetLocalTm@CTime@ATL@@QBEPAUtm@@PAU3@@Z
_TEXT SEGMENT
tv65 = -120 ; size = 4
_err$1 = -52 ; size = 4
_ptmTemp$2 = -48 ; size = 36
___atl_condVal$3 = -12 ; size = 4
_this$ = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
_ptm$ = 8 ; size = 4
?GetLocalTm@CTime@ATL@@QBEPAUtm@@PAU3@@Z PROC ; ATL::CTime::GetLocalTm, COMDAT
; _this$ = ecx
; 607 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 78 sub esp, 120 ; 00000078H
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
$LN4@GetLocalTm:
; 608 : // Ensure ptm is valid
; 609 : ATLENSURE( ptm != NULL );
00016 83 7d 08 00 cmp DWORD PTR _ptm$[ebp], 0
0001a 74 09 je SHORT $LN12@GetLocalTm
0001c c7 45 88 01 00
00 00 mov DWORD PTR tv65[ebp], 1
00023 eb 07 jmp SHORT $LN13@GetLocalTm
$LN12@GetLocalTm:
00025 c7 45 88 00 00
00 00 mov DWORD PTR tv65[ebp], 0
$LN13@GetLocalTm:
0002c 8b 45 88 mov eax, DWORD PTR tv65[ebp]
0002f 89 45 f4 mov DWORD PTR ___atl_condVal$3[ebp], eax
$LN5@GetLocalTm:
00032 33 c0 xor eax, eax
00034 75 fc jne SHORT $LN5@GetLocalTm
00036 83 7d f4 00 cmp DWORD PTR ___atl_condVal$3[ebp], 0
0003a 75 0a jne SHORT $LN2@GetLocalTm
0003c 68 05 40 00 80 push -2147467259 ; 80004005H
00041 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN2@GetLocalTm:
00046 33 c0 xor eax, eax
00048 75 cc jne SHORT $LN4@GetLocalTm
; 610 :
; 611 : if (ptm != NULL)
0004a 83 7d 08 00 cmp DWORD PTR _ptm$[ebp], 0
0004e 74 2f je SHORT $LN9@GetLocalTm
; 612 : {
; 613 : struct tm ptmTemp;
; 614 : errno_t err = _localtime64_s(&ptmTemp, &m_time);
00050 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
00053 50 push eax
00054 8d 4d d0 lea ecx, DWORD PTR _ptmTemp$2[ebp]
00057 51 push ecx
00058 e8 00 00 00 00 call __localtime64_s
0005d 83 c4 08 add esp, 8
00060 89 45 cc mov DWORD PTR _err$1[ebp], eax
; 615 :
; 616 : if (err != 0)
00063 83 7d cc 00 cmp DWORD PTR _err$1[ebp], 0
00067 74 04 je SHORT $LN10@GetLocalTm
; 617 : {
; 618 : return NULL; // indicates that m_time was not initialized!
00069 33 c0 xor eax, eax
0006b eb 14 jmp SHORT $LN11@GetLocalTm
$LN10@GetLocalTm:
; 619 : }
; 620 :
; 621 : *ptm = ptmTemp;
0006d b9 09 00 00 00 mov ecx, 9
00072 8d 75 d0 lea esi, DWORD PTR _ptmTemp$2[ebp]
00075 8b 7d 08 mov edi, DWORD PTR _ptm$[ebp]
00078 f3 a5 rep movsd
; 622 : return ptm;
0007a 8b 45 08 mov eax, DWORD PTR _ptm$[ebp]
0007d eb 02 jmp SHORT $LN11@GetLocalTm
$LN9@GetLocalTm:
; 623 : }
; 624 :
; 625 : return NULL;
0007f 33 c0 xor eax, eax
$LN11@GetLocalTm:
; 626 : }
00081 5f pop edi
00082 5e pop esi
00083 5b pop ebx
00084 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
00087 33 cd xor ecx, ebp
00089 e8 00 00 00 00 call @__security_check_cookie@4
0008e 8b e5 mov esp, ebp
00090 5d pop ebp
00091 c2 04 00 ret 4
?GetLocalTm@CTime@ATL@@QBEPAUtm@@PAU3@@Z ENDP ; ATL::CTime::GetLocalTm
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atltime.h
; COMDAT ??0CTime@ATL@@QAE@_J@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_time$ = 8 ; size = 8
??0CTime@ATL@@QAE@_J@Z PROC ; ATL::CTime::CTime, COMDAT
; _this$ = ecx
; 418 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 417 : m_time( time )
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 8b 4d 08 mov ecx, DWORD PTR _time$[ebp]
00012 8b 55 0c mov edx, DWORD PTR _time$[ebp+4]
00015 89 08 mov DWORD PTR [eax], ecx
00017 89 50 04 mov DWORD PTR [eax+4], edx
; 419 : }
0001a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0001d 5f pop edi
0001e 5e pop esi
0001f 5b pop ebx
00020 8b e5 mov esp, ebp
00022 5d pop ebp
00023 c2 08 00 ret 8
??0CTime@ATL@@QAE@_J@Z ENDP ; ATL::CTime::CTime
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@AAE_NPBX@Z
_TEXT SEGMENT
_nID$1 = -12 ; size = 4
_bRet$ = -5 ; size = 1
_this$ = -4 ; size = 4
_pv$ = 8 ; size = 4
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad, COMDAT
; _this$ = ecx
; 2705 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 4c sub esp, 76 ; 0000004cH
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 2706 : bool bRet = false;
0000c c6 45 fb 00 mov BYTE PTR _bRet$[ebp], 0
; 2707 :
; 2708 : if( (pv != NULL) && IS_INTRESOURCE( pv ) )
00010 83 7d 08 00 cmp DWORD PTR _pv$[ebp], 0
00014 74 28 je SHORT $LN2@CheckImpli
00016 8b 45 08 mov eax, DWORD PTR _pv$[ebp]
00019 c1 e8 10 shr eax, 16 ; 00000010H
0001c 85 c0 test eax, eax
0001e 75 1e jne SHORT $LN2@CheckImpli
; 2709 : {
; 2710 : UINT nID = LOWORD( reinterpret_cast< DWORD_PTR >( pv ) );
00020 8b 45 08 mov eax, DWORD PTR _pv$[ebp]
00023 25 ff ff 00 00 and eax, 65535 ; 0000ffffH
00028 0f b7 c8 movzx ecx, ax
0002b 89 4d f4 mov DWORD PTR _nID$1[ebp], ecx
; 2711 : (nID);
; 2712 : #ifdef _ATL_USE_WINAPI_FAMILY_DESKTOP_APP
; 2713 : if( !LoadString( nID ) )
0002e 8b 45 f4 mov eax, DWORD PTR _nID$1[ebp]
00031 50 push eax
00032 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00035 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@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;
0003a c6 45 fb 01 mov BYTE PTR _bRet$[ebp], 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 );
0003e 8a 45 fb mov al, BYTE PTR _bRet$[ebp]
; 2724 : }
00041 5f pop edi
00042 5e pop esi
00043 5b pop ebx
00044 8b e5 mov esp, ebp
00046 5d pop ebp
00047 c2 04 00 ret 4
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEHPAUHINSTANCE__@@I@Z
_TEXT SEGMENT
_pszBuffer$ = -16 ; size = 4
_nLength$ = -12 ; size = 4
_pImage$ = -8 ; size = 4
_this$ = -4 ; size = 4
_hInstance$ = 8 ; size = 4
_nID$ = 12 ; size = 4
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
; _this$ = ecx
; 2350 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 50 sub esp, 80 ; 00000050H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 2351 : const ATLSTRINGRESOURCEIMAGE* pImage = AtlGetStringResourceImage( hInstance, nID );
0000c 8b 45 0c mov eax, DWORD PTR _nID$[ebp]
0000f 50 push eax
00010 8b 4d 08 mov ecx, DWORD PTR _hInstance$[ebp]
00013 51 push ecx
00014 e8 00 00 00 00 call ?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
00019 83 c4 08 add esp, 8
0001c 89 45 f8 mov DWORD PTR _pImage$[ebp], eax
; 2352 : if( pImage == NULL )
0001f 83 7d f8 00 cmp DWORD PTR _pImage$[ebp], 0
00023 75 04 jne SHORT $LN2@LoadString
; 2353 : {
; 2354 : return( FALSE );
00025 33 c0 xor eax, eax
00027 eb 57 jmp SHORT $LN1@LoadString
$LN2@LoadString:
; 2355 : }
; 2356 :
; 2357 : int nLength = StringTraits::GetBaseTypeLength( pImage->achString, pImage->nLength );
00029 8b 45 f8 mov eax, DWORD PTR _pImage$[ebp]
0002c 0f b7 08 movzx ecx, WORD PTR [eax]
0002f 51 push ecx
00030 8b 55 f8 mov edx, DWORD PTR _pImage$[ebp]
00033 83 c2 02 add edx, 2
00036 52 push edx
00037 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
0003c 83 c4 08 add esp, 8
0003f 89 45 f4 mov DWORD PTR _nLength$[ebp], eax
; 2358 : PXSTR pszBuffer = this->GetBuffer( nLength );
00042 8b 45 f4 mov eax, DWORD PTR _nLength$[ebp]
00045 50 push eax
00046 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00049 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
0004e 89 45 f0 mov DWORD PTR _pszBuffer$[ebp], eax
; 2359 : StringTraits::ConvertToBaseType( pszBuffer, nLength, pImage->achString, pImage->nLength );
00051 8b 45 f8 mov eax, DWORD PTR _pImage$[ebp]
00054 0f b7 08 movzx ecx, WORD PTR [eax]
00057 51 push ecx
00058 8b 55 f8 mov edx, DWORD PTR _pImage$[ebp]
0005b 83 c2 02 add edx, 2
0005e 52 push edx
0005f 8b 45 f4 mov eax, DWORD PTR _nLength$[ebp]
00062 50 push eax
00063 8b 4d f0 mov ecx, DWORD PTR _pszBuffer$[ebp]
00066 51 push ecx
00067 e8 00 00 00 00 call ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
0006c 83 c4 10 add esp, 16 ; 00000010H
; 2360 : this->ReleaseBufferSetLength( nLength );
0006f 8b 45 f4 mov eax, DWORD PTR _nLength$[ebp]
00072 50 push eax
00073 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00076 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
; 2361 :
; 2362 : return( TRUE );
0007b b8 01 00 00 00 mov eax, 1
$LN1@LoadString:
; 2363 : }
00080 5f pop edi
00081 5e pop esi
00082 5b pop ebx
00083 8b e5 mov esp, ebp
00085 5d pop ebp
00086 c2 08 00 ret 8
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEHI@Z
_TEXT SEGMENT
_hInstance$ = -8 ; size = 4
_this$ = -4 ; size = 4
_nID$ = 8 ; size = 4
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
; _this$ = ecx
; 2336 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 2337 : HINSTANCE hInstance = StringTraits::FindStringResourceInstance( nID );
0000c 8b 45 08 mov eax, DWORD PTR _nID$[ebp]
0000f 50 push eax
00010 e8 00 00 00 00 call ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
00015 83 c4 04 add esp, 4
00018 89 45 f8 mov DWORD PTR _hInstance$[ebp], eax
; 2338 : if( hInstance == NULL )
0001b 83 7d f8 00 cmp DWORD PTR _hInstance$[ebp], 0
0001f 75 04 jne SHORT $LN2@LoadString
; 2339 : {
; 2340 : return( FALSE );
00021 33 c0 xor eax, eax
00023 eb 10 jmp SHORT $LN1@LoadString
$LN2@LoadString:
; 2341 : }
; 2342 :
; 2343 : return( LoadString( hInstance, nID ) );
00025 8b 45 08 mov eax, DWORD PTR _nID$[ebp]
00028 50 push eax
00029 8b 4d f8 mov ecx, DWORD PTR _hInstance$[ebp]
0002c 51 push ecx
0002d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00030 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
$LN1@LoadString:
; 2344 : }
00035 5f pop edi
00036 5e pop esi
00037 5b pop ebx
00038 8b e5 mov esp, ebp
0003a 5d pop ebp
0003b c2 04 00 ret 4
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z
_TEXT SEGMENT
_pszBuffer$ = -28 ; size = 4
_temp$ = -24 ; size = 4
_nLength$ = -20 ; size = 4
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_pszFormat$ = 8 ; size = 4
_args$ = 12 ; size = 4
?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::FormatV, COMDAT
; _this$ = ecx
; 2221 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 50 sub esp, 80 ; 00000050H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 2222 : ATLASSERT( AtlIsValidString( pszFormat ) );
; 2223 : if(pszFormat == NULL)
0002b 83 7d 08 00 cmp DWORD PTR _pszFormat$[ebp], 0
0002f 75 0a jne SHORT $LN2@FormatV
; 2224 : AtlThrow(E_INVALIDARG);
00031 68 57 00 07 80 push -2147024809 ; 80070057H
00036 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN2@FormatV:
; 2225 :
; 2226 : int nLength = StringTraits::GetFormattedLength( pszFormat, args );
0003b 8b 45 0c mov eax, DWORD PTR _args$[ebp]
0003e 50 push eax
0003f 8b 4d 08 mov ecx, DWORD PTR _pszFormat$[ebp]
00042 51 push ecx
00043 e8 00 00 00 00 call ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z ; ATL::ChTraitsCRT<wchar_t>::GetFormattedLength
00048 83 c4 08 add esp, 8
0004b 89 45 ec mov DWORD PTR _nLength$[ebp], eax
; 2227 :
; 2228 : if (nLength < 0)
0004e 83 7d ec 00 cmp DWORD PTR _nLength$[ebp], 0
00052 7d 0a jge SHORT $LN3@FormatV
; 2229 : AtlThrow(E_FAIL);
00054 68 05 40 00 80 push -2147467259 ; 80004005H
00059 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN3@FormatV:
; 2230 :
; 2231 : CStringT temp(pszFormat, this->GetManager());
0005e 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00061 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QBEPAUIAtlStringMgr@2@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::GetManager
00066 50 push eax
00067 8b 45 08 mov eax, DWORD PTR _pszFormat$[ebp]
0006a 50 push eax
0006b 8d 4d e8 lea ecx, DWORD PTR _temp$[ebp]
0006e e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00073 c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
; 2232 : PXSTR pszBuffer = this->GetBuffer( nLength );
0007a 8b 45 ec mov eax, DWORD PTR _nLength$[ebp]
0007d 50 push eax
0007e 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00081 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
00086 89 45 e4 mov DWORD PTR _pszBuffer$[ebp], eax
; 2233 : StringTraits::Format( pszBuffer, nLength+1, temp, args );
00089 8b 45 0c mov eax, DWORD PTR _args$[ebp]
0008c 50 push eax
0008d 8d 4d e8 lea ecx, DWORD PTR _temp$[ebp]
00090 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
00095 50 push eax
00096 8b 4d ec mov ecx, DWORD PTR _nLength$[ebp]
00099 83 c1 01 add ecx, 1
0009c 51 push ecx
0009d 8b 55 e4 mov edx, DWORD PTR _pszBuffer$[ebp]
000a0 52 push edx
000a1 e8 00 00 00 00 call ?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z ; ATL::ChTraitsCRT<wchar_t>::Format
000a6 83 c4 10 add esp, 16 ; 00000010H
; 2234 : this->ReleaseBufferSetLength( nLength );
000a9 8b 45 ec mov eax, DWORD PTR _nLength$[ebp]
000ac 50 push eax
000ad 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
000b0 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
; 2235 : }
000b5 c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
000bc 8d 4d e8 lea ecx, DWORD PTR _temp$[ebp]
000bf e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
$LN4@FormatV:
000c4 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
000c7 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
000ce 59 pop ecx
000cf 5f pop edi
000d0 5e pop esi
000d1 5b pop ebx
000d2 8b e5 mov esp, ebp
000d4 5d pop ebp
000d5 c2 08 00 ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z$0:
00000 8d 4d e8 lea ecx, DWORD PTR _temp$[ebp]
00003 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00008 cc int 3
00009 cc int 3
0000a cc int 3
0000b cc int 3
0000c cc int 3
__ehhandler$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z:
0000d 90 npad 1
0000e 90 npad 1
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
00016 8b 4a a0 mov ecx, DWORD PTR [edx-96]
00019 33 c8 xor ecx, eax
0001b e8 00 00 00 00 call @__security_check_cookie@4
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::FormatV
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ
_TEXT SEGMENT
_argList$ = -4 ; size = 4
_this$ = 8 ; size = 4
_pszFormat$ = 12 ; size = 4
?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format, COMDAT
; 2741 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 2742 : ATLASSERT( AtlIsValidString( pszFormat ) );
; 2743 :
; 2744 : va_list argList;
; 2745 : va_start( argList, pszFormat );
00009 8d 45 10 lea eax, DWORD PTR _pszFormat$[ebp+4]
0000c 89 45 fc mov DWORD PTR _argList$[ebp], eax
; 2746 : FormatV( pszFormat, argList );
0000f 8b 45 fc mov eax, DWORD PTR _argList$[ebp]
00012 50 push eax
00013 8b 4d 0c mov ecx, DWORD PTR _pszFormat$[ebp]
00016 51 push ecx
00017 8b 4d 08 mov ecx, DWORD PTR _this$[ebp]
0001a e8 00 00 00 00 call ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEXPB_WPAD@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::FormatV
; 2747 : va_end( argList );
0001f c7 45 fc 00 00
00 00 mov DWORD PTR _argList$[ebp], 0
; 2748 : }
00026 5f pop edi
00027 5e pop esi
00028 5b pop ebx
00029 8b e5 mov esp, ebp
0002b 5d pop ebp
0002c c3 ret 0
?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAAXPB_WZZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::Format
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QBEPAUIAtlStringMgr@2@XZ
_TEXT SEGMENT
_pStringMgr$ = -8 ; size = 4
_this$ = -4 ; size = 4
?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QBEPAUIAtlStringMgr@2@XZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::GetManager, COMDAT
; _this$ = ecx
; 1436 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 1437 : IAtlStringMgr* pStringMgr = CThisSimpleString::GetManager();
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QBEPAUIAtlStringMgr@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetManager
00014 89 45 f8 mov DWORD PTR _pStringMgr$[ebp], eax
; 1438 : if(pStringMgr) { return pStringMgr; }
00017 83 7d f8 00 cmp DWORD PTR _pStringMgr$[ebp], 0
0001b 74 05 je SHORT $LN2@GetManager
0001d 8b 45 f8 mov eax, DWORD PTR _pStringMgr$[ebp]
00020 eb 15 jmp SHORT $LN1@GetManager
$LN2@GetManager:
; 1439 :
; 1440 : pStringMgr = StringTraits::GetDefaultManager();
00022 e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
00027 89 45 f8 mov DWORD PTR _pStringMgr$[ebp], eax
; 1441 : return pStringMgr->Clone();
0002a 8b 45 f8 mov eax, DWORD PTR _pStringMgr$[ebp]
0002d 8b 10 mov edx, DWORD PTR [eax]
0002f 8b 4d f8 mov ecx, DWORD PTR _pStringMgr$[ebp]
00032 8b 42 10 mov eax, DWORD PTR [edx+16]
00035 ff d0 call eax
$LN1@GetManager:
; 1442 : }
00037 5f pop edi
00038 5e pop esi
00039 5b pop ebx
0003a 8b e5 mov esp, ebp
0003c 5d pop ebp
0003d c3 ret 0
?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QBEPAUIAtlStringMgr@2@XZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::GetManager
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEAAV01@PB_W@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_pszSrc$ = 8 ; size = 4
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=, COMDAT
; _this$ = ecx
; 1318 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 1319 : CThisSimpleString::operator=( pszSrc );
0000c 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
0000f 50 push eax
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00013 e8 00 00 00 00 call ??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
; 1320 :
; 1321 : return( *this );
00018 8b 45 fc mov eax, DWORD PTR _this$[ebp]
; 1322 : }
0001b 5f pop edi
0001c 5e pop esi
0001d 5b pop ebx
0001e 8b e5 mov esp, ebp
00020 5d pop ebp
00021 c2 04 00 ret 4
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAE@XZ
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; _this$ = ecx
; 1298 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
0002b c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
; 1299 : }
00032 c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00039 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0003c e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00041 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00044 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
0004b 59 pop ecx
0004c 5f pop edi
0004d 5e pop esi
0004e 5b pop ebx
0004f 8b e5 mov esp, ebp
00051 5d pop ebp
00052 c3 ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ$0:
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00003 e9 00 00 00 00 jmp ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00008 cc int 3
00009 cc int 3
0000a cc int 3
0000b cc int 3
0000c cc int 3
__ehhandler$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ:
0000d 90 npad 1
0000e 90 npad 1
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
00016 8b 4a ac mov ecx, DWORD PTR [edx-84]
00019 33 c8 xor ecx, eax
0001b e8 00 00 00 00 call @__security_check_cookie@4
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
; Function compile flags: /Odtp /ZI
; 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@@QAE@PB_WPAUIAtlStringMgr@1@@Z
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_pszSrc$ = 8 ; size = 4
_pStringMgr$ = 12 ; size = 4
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; _this$ = ecx
; 1060 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 1059 : CThisSimpleString( pStringMgr )
0002b 8b 45 0c mov eax, DWORD PTR _pStringMgr$[ebp]
0002e 50 push eax
0002f 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00032 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
00037 c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
; 1061 : if( !CheckImplicitLoad( pszSrc ) )
0003e 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
00041 50 push eax
00042 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00045 e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
0004a 0f b6 c8 movzx ecx, al
0004d 85 c9 test ecx, ecx
0004f 75 0c jne SHORT $LN1@CStringT
; 1062 : {
; 1063 : *this = pszSrc;
00051 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
00054 50 push eax
00055 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00058 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
$LN1@CStringT:
; 1064 : }
; 1065 : }
0005d c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00064 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
00067 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0006a 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00071 59 pop ecx
00072 5f pop edi
00073 5e pop esi
00074 5b pop ebx
00075 8b e5 mov esp, ebp
00077 5d pop ebp
00078 c2 08 00 ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z$0:
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00003 e9 00 00 00 00 jmp ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00008 cc int 3
00009 cc int 3
0000a cc int 3
0000b cc int 3
0000c cc int 3
__ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z:
0000d 90 npad 1
0000e 90 npad 1
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
00016 8b 4a ac mov ecx, DWORD PTR [edx-84]
00019 33 c8 xor ecx, eax
0001b e8 00 00 00 00 call @__security_check_cookie@4
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_WPAUIAtlStringMgr@1@@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
; Function compile flags: /Odtp /ZI
; 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@@QAE@PB_W@Z
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_pszSrc$ = 8 ; size = 4
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_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
; _this$ = ecx
; 1049 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 1048 : CThisSimpleString( StringTraits::GetDefaultManager() )
0002b e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
00030 50 push eax
00031 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00034 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
00039 c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
; 1050 : if( !CheckImplicitLoad( pszSrc ) )
00040 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
00043 50 push eax
00044 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00047 e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
0004c 0f b6 c8 movzx ecx, al
0004f 85 c9 test ecx, ecx
00051 75 0c jne SHORT $LN1@CStringT
; 1051 : {
; 1052 : *this = pszSrc;
00053 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
00056 50 push eax
00057 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0005a e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
$LN1@CStringT:
; 1053 : }
; 1054 : }
0005f c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00066 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
00069 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0006c 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00073 59 pop ecx
00074 5f pop edi
00075 5e pop esi
00076 5b pop ebx
00077 8b e5 mov esp, ebp
00079 5d pop ebp
0007a c2 04 00 ret 4
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z$0:
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00003 e9 00 00 00 00 jmp ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00008 cc int 3
00009 cc int 3
0000a cc int 3
0000b cc int 3
0000c cc int 3
__ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z:
0000d 90 npad 1
0000e 90 npad 1
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
00016 8b 4a ac mov ecx, DWORD PTR [edx-84]
00019 33 c8 xor ecx, eax
0001b e8 00 00 00 00 call @__security_check_cookie@4
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
; Function compile flags: /Odtp /ZI
; 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@@QAE@XZ
_TEXT SEGMENT
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; _this$ = ecx
; 1011 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 1010 : CThisSimpleString( StringTraits::GetDefaultManager() )
0002b e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
00030 50 push eax
00031 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00034 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
00039 c7 45 fc 00 00
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
; 1012 : }
00040 c7 45 fc ff ff
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
00047 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
0004a 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0004d 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00054 59 pop ecx
00055 5f pop edi
00056 5e pop esi
00057 5b pop ebx
00058 8b e5 mov esp, ebp
0005a 5d pop ebp
0005b c3 ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ$0:
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00003 e9 00 00 00 00 jmp ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00008 cc int 3
00009 cc int 3
0000a cc int 3
0000b cc int 3
0000c cc int 3
__ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ:
0000d 90 npad 1
0000e 90 npad 1
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
00016 8b 4a ac mov ecx, DWORD PTR [edx-84]
00019 33 c8 xor ecx, eax
0001b e8 00 00 00 00 call @__security_check_cookie@4
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
; Function compile flags: /Odtp /ZI
; 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@@AAEXH@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_nLength$ = 8 ; size = 4
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetLength, COMDAT
; _this$ = ecx
; 867 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 868 : ATLASSERT( nLength >= 0 );
; 869 : ATLASSERT( nLength <= GetData()->nAllocLength );
; 870 :
; 871 : if( nLength < 0 || nLength > GetData()->nAllocLength)
0000c 83 7d 08 00 cmp DWORD PTR _nLength$[ebp], 0
00010 7c 10 jl SHORT $LN3@SetLength
00012 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00015 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0001a 8b 4d 08 mov ecx, DWORD PTR _nLength$[ebp]
0001d 3b 48 08 cmp ecx, DWORD PTR [eax+8]
00020 7e 0a jle SHORT $LN2@SetLength
$LN3@SetLength:
; 872 : AtlThrow(E_INVALIDARG);
00022 68 57 00 07 80 push -2147024809 ; 80070057H
00027 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN2@SetLength:
; 873 :
; 874 : GetData()->nDataLength = nLength;
0002c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0002f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00034 8b 4d 08 mov ecx, DWORD PTR _nLength$[ebp]
00037 89 48 04 mov DWORD PTR [eax+4], ecx
; 875 : m_pszData[nLength] = 0;
0003a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0003d 8b 08 mov ecx, DWORD PTR [eax]
0003f 33 d2 xor edx, edx
00041 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
00044 66 89 14 41 mov WORD PTR [ecx+eax*2], dx
$LN4@SetLength:
; 876 : }
00048 5f pop edi
00049 5e pop esi
0004a 5b pop ebx
0004b 8b e5 mov esp, ebp
0004d 5d pop ebp
0004e c2 04 00 ret 4
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetLength
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@AAEXH@Z
_TEXT SEGMENT
tv78 = -84 ; size = 4
_pNewData$ = -16 ; size = 4
_pStringMgr$ = -12 ; size = 4
_pOldData$ = -8 ; size = 4
_this$ = -4 ; size = 4
_nLength$ = 8 ; size = 4
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Reallocate, COMDAT
; _this$ = ecx
; 849 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 54 sub esp, 84 ; 00000054H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 850 : CStringData* pOldData = GetData();
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
; 851 : ATLASSERT( pOldData->nAllocLength < nLength );
; 852 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
00017 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
0001a 8b 08 mov ecx, DWORD PTR [eax]
0001c 89 4d f4 mov DWORD PTR _pStringMgr$[ebp], ecx
; 853 : if ( pOldData->nAllocLength >= nLength || nLength <= 0)
0001f 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
00022 8b 48 08 mov ecx, DWORD PTR [eax+8]
00025 3b 4d 08 cmp ecx, DWORD PTR _nLength$[ebp]
00028 7d 06 jge SHORT $LN3@Reallocate
0002a 83 7d 08 00 cmp DWORD PTR _nLength$[ebp], 0
0002e 7f 07 jg SHORT $LN2@Reallocate
$LN3@Reallocate:
; 854 : {
; 855 : ThrowMemoryException();
00030 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
; 856 : return;
00035 eb 35 jmp SHORT $LN5@Reallocate
$LN2@Reallocate:
; 857 : }
; 858 : CStringData* pNewData = pStringMgr->Reallocate( pOldData, nLength, sizeof( XCHAR ) );
00037 8b 45 f4 mov eax, DWORD PTR _pStringMgr$[ebp]
0003a 8b 08 mov ecx, DWORD PTR [eax]
0003c 8b 51 08 mov edx, DWORD PTR [ecx+8]
0003f 89 55 ac mov DWORD PTR tv78[ebp], edx
00042 6a 02 push 2
00044 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
00047 50 push eax
00048 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
0004b 51 push ecx
0004c 8b 4d f4 mov ecx, DWORD PTR _pStringMgr$[ebp]
0004f ff 55 ac call DWORD PTR tv78[ebp]
00052 89 45 f0 mov DWORD PTR _pNewData$[ebp], eax
; 859 : if( pNewData == NULL )
00055 83 7d f0 00 cmp DWORD PTR _pNewData$[ebp], 0
00059 75 05 jne SHORT $LN4@Reallocate
; 860 : {
; 861 : ThrowMemoryException();
0005b e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
$LN4@Reallocate:
; 862 : }
; 863 : Attach( pNewData );
00060 8b 45 f0 mov eax, DWORD PTR _pNewData$[ebp]
00063 50 push eax
00064 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00067 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN5@Reallocate:
; 864 : }
0006c 5f pop edi
0006d 5e pop esi
0006e 5b pop ebx
0006f 8b e5 mov esp, ebp
00071 5d pop ebp
00072 c2 04 00 ret 4
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@AAEXH@Z
_TEXT SEGMENT
_nNewLength$1 = -12 ; size = 4
_pOldData$ = -8 ; size = 4
_this$ = -4 ; size = 4
_nLength$ = 8 ; size = 4
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2, COMDAT
; _this$ = ecx
; 818 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 4c sub esp, 76 ; 0000004cH
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 819 : CStringData* pOldData = GetData();
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
; 820 : if( pOldData->nDataLength > nLength )
00017 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
0001a 8b 48 04 mov ecx, DWORD PTR [eax+4]
0001d 3b 4d 08 cmp ecx, DWORD PTR _nLength$[ebp]
00020 7e 09 jle SHORT $LN2@PrepareWri
; 821 : {
; 822 : nLength = pOldData->nDataLength;
00022 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
00025 8b 48 04 mov ecx, DWORD PTR [eax+4]
00028 89 4d 08 mov DWORD PTR _nLength$[ebp], ecx
$LN2@PrepareWri:
; 823 : }
; 824 : if( pOldData->IsShared() )
0002b 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
0002e e8 00 00 00 00 call ?IsShared@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsShared
00033 0f b6 c0 movzx eax, al
00036 85 c0 test eax, eax
00038 74 0e je SHORT $LN3@PrepareWri
; 825 : {
; 826 : Fork( nLength );
0003a 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
0003d 50 push eax
0003e 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00041 e8 00 00 00 00 call ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
; 827 : }
00046 eb 52 jmp SHORT $LN1@PrepareWri
$LN3@PrepareWri:
; 828 : else if( pOldData->nAllocLength < nLength )
00048 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
0004b 8b 48 08 mov ecx, DWORD PTR [eax+8]
0004e 3b 4d 08 cmp ecx, DWORD PTR _nLength$[ebp]
00051 7d 47 jge SHORT $LN1@PrepareWri
; 829 : {
; 830 : // Grow exponentially, until we hit 1G, then by 1M thereafter.
; 831 : int nNewLength = pOldData->nAllocLength;
00053 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
00056 8b 48 08 mov ecx, DWORD PTR [eax+8]
00059 89 4d f4 mov DWORD PTR _nNewLength$1[ebp], ecx
; 832 : if( nNewLength > 1024 * 1024 * 1024 )
0005c 81 7d f4 00 00
00 40 cmp DWORD PTR _nNewLength$1[ebp], 1073741824 ; 40000000H
00063 7e 0d jle SHORT $LN6@PrepareWri
; 833 : {
; 834 : nNewLength += 1024 * 1024;
00065 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
00068 05 00 00 10 00 add eax, 1048576 ; 00100000H
0006d 89 45 f4 mov DWORD PTR _nNewLength$1[ebp], eax
; 835 : }
00070 eb 0e jmp SHORT $LN7@PrepareWri
$LN6@PrepareWri:
; 836 : else
; 837 : {
; 838 : // Exponential growth factor is 1.5.
; 839 : nNewLength = nNewLength + nNewLength / 2;
00072 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
00075 99 cdq
00076 2b c2 sub eax, edx
00078 d1 f8 sar eax, 1
0007a 03 45 f4 add eax, DWORD PTR _nNewLength$1[ebp]
0007d 89 45 f4 mov DWORD PTR _nNewLength$1[ebp], eax
$LN7@PrepareWri:
; 840 : }
; 841 : if( nNewLength < nLength )
00080 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
00083 3b 45 08 cmp eax, DWORD PTR _nLength$[ebp]
00086 7d 06 jge SHORT $LN8@PrepareWri
; 842 : {
; 843 : nNewLength = nLength;
00088 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
0008b 89 45 f4 mov DWORD PTR _nNewLength$1[ebp], eax
$LN8@PrepareWri:
; 844 : }
; 845 : Reallocate( nNewLength );
0008e 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
00091 50 push eax
00092 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00095 e8 00 00 00 00 call ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
$LN1@PrepareWri:
; 846 : }
; 847 : }
0009a 5f pop edi
0009b 5e pop esi
0009c 5b pop ebx
0009d 8b e5 mov esp, ebp
0009f 5d pop ebp
000a0 c2 04 00 ret 4
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@AAEPA_WH@Z
_TEXT SEGMENT
_nTooShort$ = -16 ; size = 4
_nShared$ = -12 ; size = 4
_pOldData$ = -8 ; size = 4
_this$ = -4 ; size = 4
_nLength$ = 8 ; size = 4
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite, COMDAT
; _this$ = ecx
; 803 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 50 sub esp, 80 ; 00000050H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 804 : if (nLength < 0)
0000c 83 7d 08 00 cmp DWORD PTR _nLength$[ebp], 0
00010 7d 0a jge SHORT $LN2@PrepareWri
; 805 : AtlThrow(E_INVALIDARG);
00012 68 57 00 07 80 push -2147024809 ; 80070057H
00017 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN2@PrepareWri:
; 806 :
; 807 : CStringData* pOldData = GetData();
0001c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0001f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00024 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
; 808 : int nShared = 1-pOldData->nRefs; // nShared < 0 means true, >= 0 means false
00027 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
0002a b9 01 00 00 00 mov ecx, 1
0002f 2b 48 0c sub ecx, DWORD PTR [eax+12]
00032 89 4d f4 mov DWORD PTR _nShared$[ebp], ecx
; 809 : int nTooShort = pOldData->nAllocLength-nLength; // nTooShort < 0 means true, >= 0 means false
00035 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
00038 8b 48 08 mov ecx, DWORD PTR [eax+8]
0003b 2b 4d 08 sub ecx, DWORD PTR _nLength$[ebp]
0003e 89 4d f0 mov DWORD PTR _nTooShort$[ebp], ecx
; 810 : if( (nShared|nTooShort) < 0 ) // If either sign bit is set (i.e. either is less than zero), we need to copy data
00041 8b 45 f4 mov eax, DWORD PTR _nShared$[ebp]
00044 0b 45 f0 or eax, DWORD PTR _nTooShort$[ebp]
00047 7d 0c jge SHORT $LN3@PrepareWri
; 811 : {
; 812 : PrepareWrite2( nLength );
00049 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
0004c 50 push eax
0004d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00050 e8 00 00 00 00 call ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
$LN3@PrepareWri:
; 813 : }
; 814 :
; 815 : return( m_pszData );
00055 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00058 8b 00 mov eax, DWORD PTR [eax]
$LN4@PrepareWri:
; 816 : }
0005a 5f pop edi
0005b 5e pop esi
0005c 5b pop ebx
0005d 8b e5 mov esp, ebp
0005f 5d pop ebp
00060 c2 04 00 ret 4
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@ABEPAUCStringData@2@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetData, COMDAT
; _this$ = ecx
; 799 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 800 : return( reinterpret_cast< CStringData* >( m_pszData )-1 );
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 8b 00 mov eax, DWORD PTR [eax]
00011 83 e8 10 sub eax, 16 ; 00000010H
; 801 : }
00014 5f pop edi
00015 5e pop esi
00016 5b pop ebx
00017 8b e5 mov esp, ebp
00019 5d pop ebp
0001a c3 ret 0
?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetData
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@AAEXH@Z
_TEXT SEGMENT
tv132 = -92 ; size = 4
tv83 = -92 ; size = 4
tv134 = -88 ; size = 4
tv86 = -88 ; size = 4
tv76 = -88 ; size = 4
_nCharsToCopy$ = -20 ; size = 4
_pNewData$ = -16 ; size = 4
_nOldLength$ = -12 ; size = 4
_pOldData$ = -8 ; size = 4
_this$ = -4 ; size = 4
_nLength$ = 8 ; size = 4
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Fork, COMDAT
; _this$ = ecx
; 783 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 5c sub esp, 92 ; 0000005cH
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 784 : CStringData* pOldData = GetData();
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
; 785 : int nOldLength = pOldData->nDataLength;
00017 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
0001a 8b 48 04 mov ecx, DWORD PTR [eax+4]
0001d 89 4d f4 mov DWORD PTR _nOldLength$[ebp], ecx
; 786 : CStringData* pNewData = pOldData->pStringMgr->Clone()->Allocate( nLength, sizeof( XCHAR ) );
00020 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
00023 8b 08 mov ecx, DWORD PTR [eax]
00025 8b 55 f8 mov edx, DWORD PTR _pOldData$[ebp]
00028 8b 01 mov eax, DWORD PTR [ecx]
0002a 8b 0a mov ecx, DWORD PTR [edx]
0002c 8b 50 10 mov edx, DWORD PTR [eax+16]
0002f ff d2 call edx
00031 89 45 a8 mov DWORD PTR tv76[ebp], eax
00034 8b 45 a8 mov eax, DWORD PTR tv76[ebp]
00037 8b 08 mov ecx, DWORD PTR [eax]
00039 8b 11 mov edx, DWORD PTR [ecx]
0003b 89 55 a4 mov DWORD PTR tv83[ebp], edx
0003e 6a 02 push 2
00040 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
00043 50 push eax
00044 8b 4d a8 mov ecx, DWORD PTR tv76[ebp]
00047 ff 55 a4 call DWORD PTR tv83[ebp]
0004a 89 45 f0 mov DWORD PTR _pNewData$[ebp], eax
; 787 : if( pNewData == NULL )
0004d 83 7d f0 00 cmp DWORD PTR _pNewData$[ebp], 0
00051 75 05 jne SHORT $LN2@Fork
; 788 : {
; 789 : ThrowMemoryException();
00053 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'
00058 8b 45 f4 mov eax, DWORD PTR _nOldLength$[ebp]
0005b 3b 45 08 cmp eax, DWORD PTR _nLength$[ebp]
0005e 7d 08 jge SHORT $LN4@Fork
00060 8b 4d f4 mov ecx, DWORD PTR _nOldLength$[ebp]
00063 89 4d a8 mov DWORD PTR tv86[ebp], ecx
00066 eb 06 jmp SHORT $LN5@Fork
$LN4@Fork:
00068 8b 55 08 mov edx, DWORD PTR _nLength$[ebp]
0006b 89 55 a8 mov DWORD PTR tv86[ebp], edx
$LN5@Fork:
0006e 8b 45 a8 mov eax, DWORD PTR tv86[ebp]
00071 83 c0 01 add eax, 1
00074 89 45 ec mov DWORD PTR _nCharsToCopy$[ebp], eax
; 792 : memcpy_s( PXSTR( pNewData->data() ), nCharsToCopy * sizeof( XCHAR ),
00077 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
0007a e8 00 00 00 00 call ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
0007f 89 45 a8 mov DWORD PTR tv134[ebp], eax
00082 8b 4d f0 mov ecx, DWORD PTR _pNewData$[ebp]
00085 e8 00 00 00 00 call ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
0008a 89 45 a4 mov DWORD PTR tv132[ebp], eax
0008d 8b 45 ec mov eax, DWORD PTR _nCharsToCopy$[ebp]
00090 d1 e0 shl eax, 1
00092 50 push eax
00093 8b 4d a8 mov ecx, DWORD PTR tv134[ebp]
00096 51 push ecx
00097 8b 55 ec mov edx, DWORD PTR _nCharsToCopy$[ebp]
0009a d1 e2 shl edx, 1
0009c 52 push edx
0009d 8b 45 a4 mov eax, DWORD PTR tv132[ebp]
000a0 50 push eax
000a1 e8 00 00 00 00 call _memcpy_s
000a6 83 c4 10 add esp, 16 ; 00000010H
; 793 : PCXSTR( pOldData->data() ), nCharsToCopy * sizeof( XCHAR ));
; 794 : pNewData->nDataLength = nOldLength;
000a9 8b 45 f0 mov eax, DWORD PTR _pNewData$[ebp]
000ac 8b 4d f4 mov ecx, DWORD PTR _nOldLength$[ebp]
000af 89 48 04 mov DWORD PTR [eax+4], ecx
; 795 : pOldData->Release();
000b2 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
000b5 e8 00 00 00 00 call ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
; 796 : Attach( pNewData );
000ba 8b 45 f0 mov eax, DWORD PTR _pNewData$[ebp]
000bd 50 push eax
000be 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
000c1 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN3@Fork:
; 797 : }
000c6 5f pop edi
000c7 5e pop esi
000c8 5b pop ebx
000c9 8b e5 mov esp, ebp
000cb 5d pop ebp
000cc c2 04 00 ret 4
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Fork
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@AAEXPAUCStringData@2@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_pData$ = 8 ; size = 4
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Attach, COMDAT
; _this$ = ecx
; 779 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 780 : m_pszData = static_cast< PXSTR >( pData->data() );
0000c 8b 4d 08 mov ecx, DWORD PTR _pData$[ebp]
0000f e8 00 00 00 00 call ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
00014 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00017 89 01 mov DWORD PTR [ecx], eax
; 781 : }
00019 5f pop edi
0001a 5e pop esi
0001b 5b pop ebx
0001c 8b e5 mov esp, ebp
0001e 5d pop ebp
0001f c2 04 00 ret 4
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Attach
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 773 : AtlThrow( E_OUTOFMEMORY );
00009 68 0e 00 07 80 push -2147024882 ; 8007000eH
0000e e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN2@ThrowMemor:
; 774 : }
00013 5f pop edi
00014 5e pop esi
00015 5b pop ebx
00016 8b e5 mov esp, ebp
00018 5d pop ebp
00019 c3 ret 0
?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@SAHPB_W@Z
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
_psz$ = 8 ; size = 4
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::StringLength, COMDAT
; 729 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 40 sub esp, 64 ; 00000040H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 730 : if( psz == NULL )
00028 83 7d 08 00 cmp DWORD PTR _psz$[ebp], 0
0002c 75 04 jne SHORT $LN2@StringLeng
; 731 : {
; 732 : return( 0 );
0002e 33 c0 xor eax, eax
00030 eb 0c jmp SHORT $LN1@StringLeng
$LN2@StringLeng:
; 733 : }
; 734 : return( int( wcslen( psz ) ) );
00032 8b 45 08 mov eax, DWORD PTR _psz$[ebp]
00035 50 push eax
00036 e8 00 00 00 00 call _wcslen
0003b 83 c4 04 add esp, 4
$LN1@StringLeng:
; 735 : }
0003e 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00041 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00048 59 pop ecx
00049 5f pop edi
0004a 5e pop esi
0004b 5b pop ebx
0004c 8b e5 mov esp, ebp
0004e 5d pop ebp
0004f c3 ret 0
00050 cc int 3
00051 cc int 3
00052 cc int 3
00053 cc int 3
00054 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::StringLength
; Function compile flags: /Odtp /ZI
; 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@@SAXPA_WIPB_WH@Z
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
_pchDest$ = 8 ; size = 4
_nDestLen$ = 12 ; size = 4
_pchSrc$ = 16 ; size = 4
_nChars$ = 20 ; size = 4
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped, COMDAT
; 716 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 40 sub esp, 64 ; 00000040H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 717 : memmove_s( pchDest, nDestLen*sizeof( XCHAR ),
00028 8b 45 14 mov eax, DWORD PTR _nChars$[ebp]
0002b d1 e0 shl eax, 1
0002d 50 push eax
0002e 8b 4d 10 mov ecx, DWORD PTR _pchSrc$[ebp]
00031 51 push ecx
00032 8b 55 0c mov edx, DWORD PTR _nDestLen$[ebp]
00035 d1 e2 shl edx, 1
00037 52 push edx
00038 8b 45 08 mov eax, DWORD PTR _pchDest$[ebp]
0003b 50 push eax
0003c e8 00 00 00 00 call _memmove_s
00041 83 c4 10 add esp, 16 ; 00000010H
; 718 : pchSrc, nChars*sizeof( XCHAR ) );
; 719 : }
00044 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00047 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
0004e 59 pop ecx
0004f 5f pop edi
00050 5e pop esi
00051 5b pop ebx
00052 8b e5 mov esp, ebp
00054 5d pop ebp
00055 c3 ret 0
00056 cc int 3
00057 cc int 3
00058 cc int 3
00059 cc int 3
0005a cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
; Function compile flags: /Odtp /ZI
; 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@@QAEXPB_WH@Z
_TEXT SEGMENT
_pszBuffer$1 = -16 ; size = 4
_nOffset$2 = -12 ; size = 4
_nOldLength$3 = -8 ; size = 4
_this$ = -4 ; size = 4
_pszSrc$ = 8 ; size = 4
_nLength$ = 12 ; size = 4
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
; _this$ = ecx
; 607 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 50 sub esp, 80 ; 00000050H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 608 : if( nLength == 0 )
0000c 83 7d 0c 00 cmp DWORD PTR _nLength$[ebp], 0
00010 75 0d jne SHORT $LN2@SetString
; 609 : {
; 610 : Empty();
00012 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00015 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
; 611 : }
0001a e9 96 00 00 00 jmp $LN7@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)
0001f 83 7d 08 00 cmp DWORD PTR _pszSrc$[ebp], 0
00023 75 0a jne SHORT $LN4@SetString
; 621 : AtlThrow(E_INVALIDARG);
00025 68 57 00 07 80 push -2147024809 ; 80070057H
0002a e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN4@SetString:
; 622 :
; 623 : UINT nOldLength = GetLength();
0002f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00032 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
00037 89 45 f8 mov DWORD PTR _nOldLength$3[ebp], eax
; 624 : UINT_PTR nOffset = pszSrc-GetString();
0003a 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0003d e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
00042 8b 4d 08 mov ecx, DWORD PTR _pszSrc$[ebp]
00045 2b c8 sub ecx, eax
00047 d1 f9 sar ecx, 1
00049 89 4d f4 mov DWORD PTR _nOffset$2[ebp], ecx
; 625 : // If 0 <= nOffset <= nOldLength, then pszSrc points into our
; 626 : // buffer
; 627 :
; 628 : PXSTR pszBuffer = GetBuffer( nLength );
0004c 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
0004f 50 push eax
00050 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00053 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
00058 89 45 f0 mov DWORD PTR _pszBuffer$1[ebp], eax
; 629 : if( nOffset <= nOldLength )
0005b 8b 45 f4 mov eax, DWORD PTR _nOffset$2[ebp]
0005e 3b 45 f8 cmp eax, DWORD PTR _nOldLength$3[ebp]
00061 77 25 ja SHORT $LN5@SetString
; 630 : {
; 631 : CopyCharsOverlapped( pszBuffer, GetAllocLength(),
00063 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
00066 50 push eax
00067 8b 4d f4 mov ecx, DWORD PTR _nOffset$2[ebp]
0006a 8b 55 f0 mov edx, DWORD PTR _pszBuffer$1[ebp]
0006d 8d 04 4a lea eax, DWORD PTR [edx+ecx*2]
00070 50 push eax
00071 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00074 e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
00079 50 push eax
0007a 8b 4d f0 mov ecx, DWORD PTR _pszBuffer$1[ebp]
0007d 51 push ecx
0007e e8 00 00 00 00 call ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
00083 83 c4 10 add esp, 16 ; 00000010H
; 632 : pszBuffer+nOffset, nLength );
; 633 : }
00086 eb 21 jmp SHORT $LN6@SetString
$LN5@SetString:
; 634 : else
; 635 : {
; 636 : memcpy_s( pszBuffer, GetAllocLength() * sizeof( XCHAR ), pszSrc, nLength * sizeof( XCHAR ));
00088 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
0008b d1 e0 shl eax, 1
0008d 50 push eax
0008e 8b 4d 08 mov ecx, DWORD PTR _pszSrc$[ebp]
00091 51 push ecx
00092 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00095 e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
0009a d1 e0 shl eax, 1
0009c 50 push eax
0009d 8b 55 f0 mov edx, DWORD PTR _pszBuffer$1[ebp]
000a0 52 push edx
000a1 e8 00 00 00 00 call _memcpy_s
000a6 83 c4 10 add esp, 16 ; 00000010H
$LN6@SetString:
; 637 : }
; 638 : ReleaseBufferSetLength( nLength );
000a9 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
000ac 50 push eax
000ad 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
000b0 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
$LN7@SetString:
; 639 : }
; 640 : }
000b5 5f pop edi
000b6 5e pop esi
000b7 5b pop ebx
000b8 8b e5 mov esp, ebp
000ba 5d pop ebp
000bb c2 08 00 ret 8
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetString
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEXPB_W@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_pszSrc$ = 8 ; size = 4
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
; _this$ = ecx
; 601 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 602 : SetString( pszSrc, StringLength( pszSrc ) );
0000c 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
0000f 50 push eax
00010 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
00015 83 c4 04 add esp, 4
00018 50 push eax
00019 8b 4d 08 mov ecx, DWORD PTR _pszSrc$[ebp]
0001c 51 push ecx
0001d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00020 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
; 603 : }
00025 5f pop edi
00026 5e pop esi
00027 5b pop ebx
00028 8b e5 mov esp, ebp
0002a 5d pop ebp
0002b c2 04 00 ret 4
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetString
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEXH@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_nNewLength$ = 8 ; size = 4
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength, COMDAT
; _this$ = ecx
; 566 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 567 : ATLASSERT( nNewLength >= 0 );
; 568 : SetLength( nNewLength );
0000c 8b 45 08 mov eax, DWORD PTR _nNewLength$[ebp]
0000f 50 push eax
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00013 e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
; 569 : }
00018 5f pop edi
00019 5e pop esi
0001a 5b pop ebx
0001b 8b e5 mov esp, ebp
0001d 5d pop ebp
0001e c2 04 00 ret 4
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QBEPB_WXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetString, COMDAT
; _this$ = ecx
; 528 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 529 : return( m_pszData );
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 8b 00 mov eax, DWORD PTR [eax]
; 530 : }
00011 5f pop edi
00012 5e pop esi
00013 5b pop ebx
00014 8b e5 mov esp, ebp
00016 5d pop ebp
00017 c3 ret 0
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetString
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QBEPAUIAtlStringMgr@2@XZ
_TEXT SEGMENT
tv72 = -76 ; size = 4
_pStringMgr$ = -8 ; size = 4
_this$ = -4 ; size = 4
?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QBEPAUIAtlStringMgr@2@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetManager, COMDAT
; _this$ = ecx
; 522 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 4c sub esp, 76 ; 0000004cH
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 523 : IAtlStringMgr* pStringMgr = GetData()->pStringMgr;
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 8b 00 mov eax, DWORD PTR [eax]
00016 89 45 f8 mov DWORD PTR _pStringMgr$[ebp], eax
; 524 : return pStringMgr ? pStringMgr->Clone() : NULL;
00019 83 7d f8 00 cmp DWORD PTR _pStringMgr$[ebp], 0
0001d 74 12 je SHORT $LN3@GetManager
0001f 8b 45 f8 mov eax, DWORD PTR _pStringMgr$[ebp]
00022 8b 10 mov edx, DWORD PTR [eax]
00024 8b 4d f8 mov ecx, DWORD PTR _pStringMgr$[ebp]
00027 8b 42 10 mov eax, DWORD PTR [edx+16]
0002a ff d0 call eax
0002c 89 45 b4 mov DWORD PTR tv72[ebp], eax
0002f eb 07 jmp SHORT $LN4@GetManager
$LN3@GetManager:
00031 c7 45 b4 00 00
00 00 mov DWORD PTR tv72[ebp], 0
$LN4@GetManager:
00038 8b 45 b4 mov eax, DWORD PTR tv72[ebp]
; 525 : }
0003b 5f pop edi
0003c 5e pop esi
0003d 5b pop ebx
0003e 8b e5 mov esp, ebp
00040 5d pop ebp
00041 c3 ret 0
?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QBEPAUIAtlStringMgr@2@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetManager
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QBEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetLength, COMDAT
; _this$ = ecx
; 518 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 519 : return( GetData()->nDataLength );
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 8b 40 04 mov eax, DWORD PTR [eax+4]
; 520 : }
00017 5f pop edi
00018 5e pop esi
00019 5b pop ebx
0001a 8b e5 mov esp, ebp
0001c 5d pop ebp
0001d c3 ret 0
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetLength
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEPA_WH@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_nMinBufferLength$ = 8 ; size = 4
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer, COMDAT
; _this$ = ecx
; 507 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 508 : return( PrepareWrite( nMinBufferLength ) );
0000c 8b 45 08 mov eax, DWORD PTR _nMinBufferLength$[ebp]
0000f 50 push eax
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00013 e8 00 00 00 00 call ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
; 509 : }
00018 5f pop edi
00019 5e pop esi
0001a 5b pop ebx
0001b 8b e5 mov esp, ebp
0001d 5d pop ebp
0001e c2 04 00 ret 4
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QBEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength, COMDAT
; _this$ = ecx
; 485 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 486 : return( GetData()->nAllocLength );
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 8b 40 08 mov eax, DWORD PTR [eax+8]
; 487 : }
00017 5f pop edi
00018 5e pop esi
00019 5b pop ebx
0001a 8b e5 mov esp, ebp
0001c 5d pop ebp
0001d c3 ret 0
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEXXZ
_TEXT SEGMENT
_pNewData$2 = -28 ; size = 4
_pStringMgr$ = -24 ; size = 4
_pOldData$ = -20 ; size = 4
_this$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::Empty, COMDAT
; _this$ = ecx
; 436 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 50 sub esp, 80 ; 00000050H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
; 437 : CStringData* pOldData = GetData();
0002b 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0002e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00033 89 45 ec mov DWORD PTR _pOldData$[ebp], eax
; 438 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
00036 8b 45 ec mov eax, DWORD PTR _pOldData$[ebp]
00039 8b 08 mov ecx, DWORD PTR [eax]
0003b 89 4d e8 mov DWORD PTR _pStringMgr$[ebp], ecx
; 439 : if( pOldData->nDataLength == 0 )
0003e 8b 45 ec mov eax, DWORD PTR _pOldData$[ebp]
00041 83 78 04 00 cmp DWORD PTR [eax+4], 0
00045 75 02 jne SHORT $LN2@Empty
; 440 : {
; 441 : return;
00047 eb 3f jmp SHORT $LN1@Empty
$LN2@Empty:
; 442 : }
; 443 :
; 444 : if( pOldData->IsLocked() )
00049 8b 4d ec mov ecx, DWORD PTR _pOldData$[ebp]
0004c e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsLocked
00051 0f b6 c0 movzx eax, al
00054 85 c0 test eax, eax
00056 74 0c je SHORT $LN3@Empty
; 445 : {
; 446 : // Don't reallocate a locked buffer that's shrinking
; 447 : SetLength( 0 );
00058 6a 00 push 0
0005a 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
0005d e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
; 448 : }
00062 eb 24 jmp SHORT $LN1@Empty
$LN3@Empty:
; 449 : else
; 450 : {
; 451 : pOldData->Release();
00064 8b 4d ec mov ecx, DWORD PTR _pOldData$[ebp]
00067 e8 00 00 00 00 call ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
; 452 : CStringData* pNewData = pStringMgr->GetNilString();
0006c 8b 45 e8 mov eax, DWORD PTR _pStringMgr$[ebp]
0006f 8b 10 mov edx, DWORD PTR [eax]
00071 8b 4d e8 mov ecx, DWORD PTR _pStringMgr$[ebp]
00074 8b 42 0c mov eax, DWORD PTR [edx+12]
00077 ff d0 call eax
00079 89 45 e4 mov DWORD PTR _pNewData$2[ebp], eax
; 453 : Attach( pNewData );
0007c 8b 45 e4 mov eax, DWORD PTR _pNewData$2[ebp]
0007f 50 push eax
00080 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
00083 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN1@Empty:
; 454 : }
; 455 : }
00088 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0008b 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00092 59 pop ecx
00093 5f pop edi
00094 5e pop esi
00095 5b pop ebx
00096 8b e5 mov esp, ebp
00098 5d pop ebp
00099 c3 ret 0
0009a cc int 3
0009b cc int 3
0009c cc int 3
0009d cc int 3
0009e cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a a0 mov ecx, DWORD PTR [edx-96]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::Empty
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *, COMDAT
; _this$ = ecx
; 376 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 377 : return( m_pszData );
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 8b 00 mov eax, DWORD PTR [eax]
; 378 : }
00011 5f pop edi
00012 5e pop esi
00013 5b pop ebx
00014 8b e5 mov esp, ebp
00016 5d pop ebp
00017 c3 ret 0
??B?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::operator wchar_t const *
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAEAAV01@PB_W@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_pszSrc$ = 8 ; size = 4
??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::operator=, COMDAT
; _this$ = ecx
; 313 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 314 : SetString( pszSrc );
0000c 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
0000f 50 push eax
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00013 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
; 315 :
; 316 : return( *this );
00018 8b 45 fc mov eax, DWORD PTR _this$[ebp]
; 317 : }
0001b 5f pop edi
0001c 5e pop esi
0001d 5b pop ebx
0001e 8b e5 mov esp, ebp
00020 5d pop ebp
00021 c2 04 00 ret 4
??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::operator=
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAE@XZ
_TEXT SEGMENT
_pData$ = -8 ; size = 4
_this$ = -4 ; size = 4
??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>, COMDAT
; _this$ = ecx
; 260 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 261 : CStringData* pData = GetData();
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00014 89 45 f8 mov DWORD PTR _pData$[ebp], eax
; 262 : pData->Release();
00017 8b 4d f8 mov ecx, DWORD PTR _pData$[ebp]
0001a e8 00 00 00 00 call ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
; 263 : }
0001f 5f pop edi
00020 5e pop esi
00021 5b pop ebx
00022 8b e5 mov esp, ebp
00024 5d pop ebp
00025 c3 ret 0
??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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@@QAE@PAUIAtlStringMgr@1@@Z
_TEXT SEGMENT
tv65 = -80 ; size = 4
_pData$ = -12 ; size = 4
___atl_condVal$1 = -8 ; size = 4
_this$ = -4 ; size = 4
_pStringMgr$ = 8 ; size = 4
??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>, COMDAT
; _this$ = ecx
; 203 : explicit CSimpleStringT(_Inout_ IAtlStringMgr* pStringMgr)
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 50 sub esp, 80 ; 00000050H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
$LN4@CSimpleStr:
; 204 : {
; 205 : ATLENSURE( pStringMgr != NULL );
0000c 83 7d 08 00 cmp DWORD PTR _pStringMgr$[ebp], 0
00010 74 09 je SHORT $LN10@CSimpleStr
00012 c7 45 b0 01 00
00 00 mov DWORD PTR tv65[ebp], 1
00019 eb 07 jmp SHORT $LN11@CSimpleStr
$LN10@CSimpleStr:
0001b c7 45 b0 00 00
00 00 mov DWORD PTR tv65[ebp], 0
$LN11@CSimpleStr:
00022 8b 45 b0 mov eax, DWORD PTR tv65[ebp]
00025 89 45 f8 mov DWORD PTR ___atl_condVal$1[ebp], eax
$LN5@CSimpleStr:
00028 33 c0 xor eax, eax
0002a 75 fc jne SHORT $LN5@CSimpleStr
0002c 83 7d f8 00 cmp DWORD PTR ___atl_condVal$1[ebp], 0
00030 75 0a jne SHORT $LN2@CSimpleStr
00032 68 05 40 00 80 push -2147467259 ; 80004005H
00037 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN2@CSimpleStr:
0003c 33 c0 xor eax, eax
0003e 75 cc jne SHORT $LN4@CSimpleStr
; 206 : CStringData* pData = pStringMgr->GetNilString();
00040 8b 45 08 mov eax, DWORD PTR _pStringMgr$[ebp]
00043 8b 10 mov edx, DWORD PTR [eax]
00045 8b 4d 08 mov ecx, DWORD PTR _pStringMgr$[ebp]
00048 8b 42 0c mov eax, DWORD PTR [edx+12]
0004b ff d0 call eax
0004d 89 45 f4 mov DWORD PTR _pData$[ebp], eax
; 207 : Attach( pData );
00050 8b 45 f4 mov eax, DWORD PTR _pData$[ebp]
00053 50 push eax
00054 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
00057 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
; 208 : }
0005c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
$LN9@CSimpleStr:
0005f 5f pop edi
00060 5e pop esi
00061 5b pop ebx
00062 8b e5 mov esp, ebp
00064 5d pop ebp
00065 c2 04 00 ret 4
??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z
_TEXT SEGMENT
_pszDest$ = 8 ; size = 4
_nDestLength$ = 12 ; size = 4
_pszSrc$ = 16 ; size = 4
_nSrcLength$ = 20 ; size = 4
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType, COMDAT
; 789 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 790 : if (nSrcLength == -1) { nSrcLength=1 + GetBaseTypeLength(pszSrc); }
00009 83 7d 14 ff cmp DWORD PTR _nSrcLength$[ebp], -1
0000d 75 12 jne SHORT $LN2@ConvertToB
0000f 8b 45 10 mov eax, DWORD PTR _pszSrc$[ebp]
00012 50 push eax
00013 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
00018 83 c4 04 add esp, 4
0001b 83 c0 01 add eax, 1
0001e 89 45 14 mov DWORD PTR _nSrcLength$[ebp], eax
$LN2@ConvertToB:
; 791 : // nLen is in wchar_ts
; 792 : Checked::wmemcpy_s(pszDest, nDestLength, pszSrc, nSrcLength);
00021 8b 45 14 mov eax, DWORD PTR _nSrcLength$[ebp]
00024 50 push eax
00025 8b 4d 10 mov ecx, DWORD PTR _pszSrc$[ebp]
00028 51 push ecx
00029 8b 55 0c mov edx, DWORD PTR _nDestLength$[ebp]
0002c 52 push edx
0002d 8b 45 08 mov eax, DWORD PTR _pszDest$[ebp]
00030 50 push eax
00031 e8 00 00 00 00 call ?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z ; ATL::Checked::wmemcpy_s
00036 83 c4 10 add esp, 16 ; 00000010H
; 793 : }
00039 5f pop edi
0003a 5e pop esi
0003b 5b pop ebx
0003c 8b e5 mov esp, ebp
0003e 5d pop ebp
0003f c3 ret 0
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z
_TEXT SEGMENT
_pszSrc$ = 8 ; size = 4
_nLength$ = 12 ; size = 4
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
; 768 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 769 : (void)pszSrc;
; 770 : // Returns required buffer size in wchar_ts
; 771 : return nLength;
00009 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
; 772 : }
0000c 5f pop edi
0000d 5e pop esi
0000e 5b pop ebx
0000f 8b e5 mov esp, ebp
00011 5d pop ebp
00012 c3 ret 0
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
_pszSrc$ = 8 ; size = 4
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
; 760 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 40 sub esp, 64 ; 00000040H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 761 : // Returns required buffer size in wchar_ts
; 762 : return AtlStrLen( pszSrc );
00028 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
0002b 50 push eax
0002c e8 00 00 00 00 call ?AtlStrLen@ATL@@YAHPB_W@Z ; ATL::AtlStrLen
00031 83 c4 04 add esp, 4
; 763 : }
00034 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
00037 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
0003e 59 pop ecx
0003f 5f pop edi
00040 5e pop esi
00041 5b pop ebx
00042 8b e5 mov esp, ebp
00044 5d pop ebp
00045 c3 ret 0
00046 cc int 3
00047 cc int 3
00048 cc int 3
00049 cc int 3
0004a cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z
_TEXT SEGMENT
tv74 = -84 ; size = 4
_result$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_pszBuffer$ = 8 ; size = 4
_nLength$ = 12 ; size = 4
_pszFormat$ = 16 ; size = 4
_args$ = 20 ; size = 4
?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z PROC ; ATL::ChTraitsCRT<wchar_t>::Format, COMDAT
; 728 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 48 sub esp, 72 ; 00000048H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 729 : #if _MSC_VER < 1900
; 730 : return vswprintf_s(pszBuffer, nLength, pszFormat, args);
; 731 : #else
; 732 : // Explicitly request the legacy wide format specifiers mode from the CRT,
; 733 : // for compatibility with previous versions. While the CRT supports two
; 734 : // modes, the ATL and MFC functions that accept format strings only support
; 735 : // legacy mode format strings.
; 736 : int const result = __stdio_common_vswprintf_s(
00028 8b 45 14 mov eax, DWORD PTR _args$[ebp]
0002b 50 push eax
0002c 6a 00 push 0
0002e 8b 4d 10 mov ecx, DWORD PTR _pszFormat$[ebp]
00031 51 push ecx
00032 8b 55 0c mov edx, DWORD PTR _nLength$[ebp]
00035 52 push edx
00036 8b 45 08 mov eax, DWORD PTR _pszBuffer$[ebp]
00039 50 push eax
0003a e8 00 00 00 00 call ___local_stdio_printf_options
0003f 8b 08 mov ecx, DWORD PTR [eax]
00041 83 c9 04 or ecx, 4
00044 8b 50 04 mov edx, DWORD PTR [eax+4]
00047 52 push edx
00048 51 push ecx
00049 e8 00 00 00 00 call ___stdio_common_vswprintf_s
0004e 83 c4 1c add esp, 28 ; 0000001cH
00051 89 45 f0 mov DWORD PTR _result$[ebp], eax
; 737 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS |
; 738 : _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS,
; 739 : pszBuffer, nLength, pszFormat, NULL, args);
; 740 :
; 741 : return result < 0 ? -1 : result;
00054 83 7d f0 00 cmp DWORD PTR _result$[ebp], 0
00058 7d 09 jge SHORT $LN3@Format
0005a c7 45 ac ff ff
ff ff mov DWORD PTR tv74[ebp], -1
00061 eb 06 jmp SHORT $LN4@Format
$LN3@Format:
00063 8b 45 f0 mov eax, DWORD PTR _result$[ebp]
00066 89 45 ac mov DWORD PTR tv74[ebp], eax
$LN4@Format:
00069 8b 45 ac mov eax, DWORD PTR tv74[ebp]
; 742 : #endif
; 743 : }
0006c 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0006f 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00076 59 pop ecx
00077 5f pop edi
00078 5e pop esi
00079 5b pop ebx
0007a 8b e5 mov esp, ebp
0007c 5d pop ebp
0007d c3 ret 0
0007e cc int 3
0007f cc int 3
00080 cc int 3
00081 cc int 3
00082 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a a8 mov ecx, DWORD PTR [edx-88]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?Format@?$ChTraitsCRT@_W@ATL@@SAHPA_WIPB_WPAD@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::Format
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
; COMDAT ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z
_TEXT SEGMENT
tv75 = -84 ; size = 4
_result$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_pszFormat$ = 8 ; size = 4
_args$ = 12 ; size = 4
?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetFormattedLength, COMDAT
; 682 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 48 sub esp, 72 ; 00000048H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 683 : #if _MSC_VER < 1900
; 684 : return _vscwprintf(pszFormat, args);
; 685 : #else
; 686 : // Explicitly request the legacy wide format specifiers mode from the CRT,
; 687 : // for compatibility with previous versions. While the CRT supports two
; 688 : // modes, the ATL and MFC functions that accept format strings only support
; 689 : // legacy mode format strings.
; 690 : int const result = __stdio_common_vswprintf(
00028 8b 45 0c mov eax, DWORD PTR _args$[ebp]
0002b 50 push eax
0002c 6a 00 push 0
0002e 8b 4d 08 mov ecx, DWORD PTR _pszFormat$[ebp]
00031 51 push ecx
00032 6a 00 push 0
00034 6a 00 push 0
00036 e8 00 00 00 00 call ___local_stdio_printf_options
0003b 8b 10 mov edx, DWORD PTR [eax]
0003d 83 ca 02 or edx, 2
00040 8b 40 04 mov eax, DWORD PTR [eax+4]
00043 83 ca 04 or edx, 4
00046 50 push eax
00047 52 push edx
00048 e8 00 00 00 00 call ___stdio_common_vswprintf
0004d 83 c4 1c add esp, 28 ; 0000001cH
00050 89 45 f0 mov DWORD PTR _result$[ebp], eax
; 691 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS |
; 692 : _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR |
; 693 : _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS,
; 694 : NULL, 0, pszFormat, NULL, args);
; 695 :
; 696 : return result < 0 ? -1 : result;
00053 83 7d f0 00 cmp DWORD PTR _result$[ebp], 0
00057 7d 09 jge SHORT $LN3@GetFormatt
00059 c7 45 ac ff ff
ff ff mov DWORD PTR tv75[ebp], -1
00060 eb 06 jmp SHORT $LN4@GetFormatt
$LN3@GetFormatt:
00062 8b 45 f0 mov eax, DWORD PTR _result$[ebp]
00065 89 45 ac mov DWORD PTR tv75[ebp], eax
$LN4@GetFormatt:
00068 8b 45 ac mov eax, DWORD PTR tv75[ebp]
; 697 : #endif
; 698 : }
0006b 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0006e 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00075 59 pop ecx
00076 5f pop edi
00077 5e pop esi
00078 5b pop ebx
00079 8b e5 mov esp, ebp
0007b 5d pop ebp
0007c c3 ret 0
0007d cc int 3
0007e cc int 3
0007f cc int 3
00080 cc int 3
00081 cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a a8 mov ecx, DWORD PTR [edx-88]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WPAD@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetFormattedLength
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?Release@CStringData@ATL@@QAEXXZ
_TEXT SEGMENT
tv79 = -76 ; size = 4
tv77 = -72 ; size = 4
_this$ = -4 ; size = 4
?Release@CStringData@ATL@@QAEXXZ PROC ; ATL::CStringData::Release, COMDAT
; _this$ = ecx
; 85 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 4c sub esp, 76 ; 0000004cH
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 86 : ATLASSERT( nRefs != 0 );
; 87 :
; 88 : if( _InterlockedDecrement( &nRefs ) <= 0 )
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 83 c0 0c add eax, 12 ; 0000000cH
00012 83 c9 ff or ecx, -1
00015 f0 0f c1 08 lock xadd DWORD PTR [eax], ecx
00019 49 dec ecx
0001a 85 c9 test ecx, ecx
0001c 7f 1f jg SHORT $LN1@Release
; 89 : {
; 90 : pStringMgr->Free( this );
0001e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00021 8b 08 mov ecx, DWORD PTR [eax]
00023 89 4d b8 mov DWORD PTR tv77[ebp], ecx
00026 8b 55 fc mov edx, DWORD PTR _this$[ebp]
00029 8b 02 mov eax, DWORD PTR [edx]
0002b 8b 08 mov ecx, DWORD PTR [eax]
0002d 8b 51 04 mov edx, DWORD PTR [ecx+4]
00030 89 55 b4 mov DWORD PTR tv79[ebp], edx
00033 8b 45 fc mov eax, DWORD PTR _this$[ebp]
00036 50 push eax
00037 8b 4d b8 mov ecx, DWORD PTR tv77[ebp]
0003a ff 55 b4 call DWORD PTR tv79[ebp]
$LN1@Release:
; 91 : }
; 92 : }
0003d 5f pop edi
0003e 5e pop esi
0003f 5b pop ebx
00040 8b e5 mov esp, ebp
00042 5d pop ebp
00043 c3 ret 0
?Release@CStringData@ATL@@QAEXXZ ENDP ; ATL::CStringData::Release
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?IsShared@CStringData@ATL@@QBE_NXZ
_TEXT SEGMENT
tv66 = -72 ; size = 4
_this$ = -4 ; size = 4
?IsShared@CStringData@ATL@@QBE_NXZ PROC ; ATL::CStringData::IsShared, COMDAT
; _this$ = ecx
; 72 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 73 : return( nRefs > 1 );
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 83 78 0c 01 cmp DWORD PTR [eax+12], 1
00013 7e 09 jle SHORT $LN3@IsShared
00015 c7 45 b8 01 00
00 00 mov DWORD PTR tv66[ebp], 1
0001c eb 07 jmp SHORT $LN4@IsShared
$LN3@IsShared:
0001e c7 45 b8 00 00
00 00 mov DWORD PTR tv66[ebp], 0
$LN4@IsShared:
00025 8a 45 b8 mov al, BYTE PTR tv66[ebp]
; 74 : }
00028 5f pop edi
00029 5e pop esi
0002a 5b pop ebx
0002b 8b e5 mov esp, ebp
0002d 5d pop ebp
0002e c3 ret 0
?IsShared@CStringData@ATL@@QBE_NXZ ENDP ; ATL::CStringData::IsShared
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?IsLocked@CStringData@ATL@@QBE_NXZ
_TEXT SEGMENT
tv66 = -72 ; size = 4
_this$ = -4 ; size = 4
?IsLocked@CStringData@ATL@@QBE_NXZ PROC ; ATL::CStringData::IsLocked, COMDAT
; _this$ = ecx
; 68 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 69 : return nRefs < 0;
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 83 78 0c 00 cmp DWORD PTR [eax+12], 0
00013 7d 09 jge SHORT $LN3@IsLocked
00015 c7 45 b8 01 00
00 00 mov DWORD PTR tv66[ebp], 1
0001c eb 07 jmp SHORT $LN4@IsLocked
$LN3@IsLocked:
0001e c7 45 b8 00 00
00 00 mov DWORD PTR tv66[ebp], 0
$LN4@IsLocked:
00025 8a 45 b8 mov al, BYTE PTR tv66[ebp]
; 70 : }
00028 5f pop edi
00029 5e pop esi
0002a 5b pop ebx
0002b 8b e5 mov esp, ebp
0002d 5d pop ebp
0002e c3 ret 0
?IsLocked@CStringData@ATL@@QBE_NXZ ENDP ; ATL::CStringData::IsLocked
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
; COMDAT ?data@CStringData@ATL@@QAEPAXXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?data@CStringData@ATL@@QAEPAXXZ PROC ; ATL::CStringData::data, COMDAT
; _this$ = ecx
; 58 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
; 59 : return (this+1);
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
0000f 83 c0 10 add eax, 16 ; 00000010H
; 60 : }
00012 5f pop edi
00013 5e pop esi
00014 5b pop ebx
00015 8b e5 mov esp, ebp
00017 5d pop ebp
00018 c3 ret 0
?data@CStringData@ATL@@QAEPAXXZ ENDP ; ATL::CStringData::data
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?AtlConvertSystemTimeToVariantTime@ATL@@YAHABU_SYSTEMTIME@@PAN@Z
_TEXT SEGMENT
tv139 = -96 ; size = 4
tv81 = -96 ; size = 4
tv65 = -96 ; size = 4
_sysTime$ = -28 ; size = 16
_ok$ = -12 ; size = 4
___atl_condVal$1 = -8 ; size = 4
__$ArrayPad$ = -4 ; size = 4
_systimeSrc$ = 8 ; size = 4
_pVarDtTm$ = 12 ; size = 4
?AtlConvertSystemTimeToVariantTime@ATL@@YAHABU_SYSTEMTIME@@PAN@Z PROC ; ATL::AtlConvertSystemTimeToVariantTime, COMDAT
; 627 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 60 sub esp, 96 ; 00000060H
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0000b 33 c5 xor eax, ebp
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
00010 53 push ebx
00011 56 push esi
00012 57 push edi
$LN4@AtlConvert:
; 628 : ATLENSURE(pVarDtTm!=NULL);
00013 83 7d 0c 00 cmp DWORD PTR _pVarDtTm$[ebp], 0
00017 74 09 je SHORT $LN10@AtlConvert
00019 c7 45 a0 01 00
00 00 mov DWORD PTR tv65[ebp], 1
00020 eb 07 jmp SHORT $LN11@AtlConvert
$LN10@AtlConvert:
00022 c7 45 a0 00 00
00 00 mov DWORD PTR tv65[ebp], 0
$LN11@AtlConvert:
00029 8b 45 a0 mov eax, DWORD PTR tv65[ebp]
0002c 89 45 f8 mov DWORD PTR ___atl_condVal$1[ebp], eax
$LN7@AtlConvert:
0002f 33 c0 xor eax, eax
00031 75 fc jne SHORT $LN7@AtlConvert
00033 83 7d f8 00 cmp DWORD PTR ___atl_condVal$1[ebp], 0
00037 75 0a jne SHORT $LN8@AtlConvert
00039 68 05 40 00 80 push -2147467259 ; 80004005H
0003e e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
$LN8@AtlConvert:
00043 33 c0 xor eax, eax
00045 75 cc jne SHORT $LN4@AtlConvert
; 629 : //Convert using ::SystemTimeToVariantTime and store the result in pVarDtTm then
; 630 : //convert variant time back to system time and compare to original system time.
; 631 : BOOL ok = ::SystemTimeToVariantTime(const_cast<SYSTEMTIME*>(&systimeSrc), pVarDtTm);
00047 8b 45 0c mov eax, DWORD PTR _pVarDtTm$[ebp]
0004a 50 push eax
0004b 8b 4d 08 mov ecx, DWORD PTR _systimeSrc$[ebp]
0004e 51 push ecx
0004f ff 15 00 00 00
00 call DWORD PTR __imp__SystemTimeToVariantTime@8
00055 89 45 f4 mov DWORD PTR _ok$[ebp], eax
; 632 : SYSTEMTIME sysTime;
; 633 : ::ZeroMemory(&sysTime, sizeof(SYSTEMTIME));
00058 6a 10 push 16 ; 00000010H
0005a 6a 00 push 0
0005c 8d 45 e4 lea eax, DWORD PTR _sysTime$[ebp]
0005f 50 push eax
00060 e8 00 00 00 00 call _memset
00065 83 c4 0c add esp, 12 ; 0000000cH
; 634 :
; 635 : ok = ok && ::VariantTimeToSystemTime(*pVarDtTm, &sysTime);
00068 83 7d f4 00 cmp DWORD PTR _ok$[ebp], 0
0006c 74 26 je SHORT $LN12@AtlConvert
0006e 8d 45 e4 lea eax, DWORD PTR _sysTime$[ebp]
00071 50 push eax
00072 8b 4d 0c mov ecx, DWORD PTR _pVarDtTm$[ebp]
00075 83 ec 08 sub esp, 8
00078 f2 0f 10 01 movsd xmm0, QWORD PTR [ecx]
0007c f2 0f 11 04 24 movsd QWORD PTR [esp], xmm0
00081 ff 15 00 00 00
00 call DWORD PTR __imp__VariantTimeToSystemTime@12
00087 85 c0 test eax, eax
00089 74 09 je SHORT $LN12@AtlConvert
0008b c7 45 a0 01 00
00 00 mov DWORD PTR tv81[ebp], 1
00092 eb 07 jmp SHORT $LN13@AtlConvert
$LN12@AtlConvert:
00094 c7 45 a0 00 00
00 00 mov DWORD PTR tv81[ebp], 0
$LN13@AtlConvert:
0009b 8b 55 a0 mov edx, DWORD PTR tv81[ebp]
0009e 89 55 f4 mov DWORD PTR _ok$[ebp], edx
; 636 : ok = ok && (systimeSrc.wYear == sysTime.wYear &&
000a1 83 7d f4 00 cmp DWORD PTR _ok$[ebp], 0
000a5 74 62 je SHORT $LN14@AtlConvert
000a7 8b 45 08 mov eax, DWORD PTR _systimeSrc$[ebp]
000aa 0f b7 08 movzx ecx, WORD PTR [eax]
000ad 0f b7 55 e4 movzx edx, WORD PTR _sysTime$[ebp]
000b1 3b ca cmp ecx, edx
000b3 75 54 jne SHORT $LN14@AtlConvert
000b5 8b 45 08 mov eax, DWORD PTR _systimeSrc$[ebp]
000b8 0f b7 48 02 movzx ecx, WORD PTR [eax+2]
000bc 0f b7 55 e6 movzx edx, WORD PTR _sysTime$[ebp+2]
000c0 3b ca cmp ecx, edx
000c2 75 45 jne SHORT $LN14@AtlConvert
000c4 8b 45 08 mov eax, DWORD PTR _systimeSrc$[ebp]
000c7 0f b7 48 06 movzx ecx, WORD PTR [eax+6]
000cb 0f b7 55 ea movzx edx, WORD PTR _sysTime$[ebp+6]
000cf 3b ca cmp ecx, edx
000d1 75 36 jne SHORT $LN14@AtlConvert
000d3 8b 45 08 mov eax, DWORD PTR _systimeSrc$[ebp]
000d6 0f b7 48 08 movzx ecx, WORD PTR [eax+8]
000da 0f b7 55 ec movzx edx, WORD PTR _sysTime$[ebp+8]
000de 3b ca cmp ecx, edx
000e0 75 27 jne SHORT $LN14@AtlConvert
000e2 8b 45 08 mov eax, DWORD PTR _systimeSrc$[ebp]
000e5 0f b7 48 0a movzx ecx, WORD PTR [eax+10]
000e9 0f b7 55 ee movzx edx, WORD PTR _sysTime$[ebp+10]
000ed 3b ca cmp ecx, edx
000ef 75 18 jne SHORT $LN14@AtlConvert
000f1 8b 45 08 mov eax, DWORD PTR _systimeSrc$[ebp]
000f4 0f b7 48 0c movzx ecx, WORD PTR [eax+12]
000f8 0f b7 55 f0 movzx edx, WORD PTR _sysTime$[ebp+12]
000fc 3b ca cmp ecx, edx
000fe 75 09 jne SHORT $LN14@AtlConvert
00100 c7 45 a0 01 00
00 00 mov DWORD PTR tv139[ebp], 1
00107 eb 07 jmp SHORT $LN15@AtlConvert
$LN14@AtlConvert:
00109 c7 45 a0 00 00
00 00 mov DWORD PTR tv139[ebp], 0
$LN15@AtlConvert:
00110 8b 45 a0 mov eax, DWORD PTR tv139[ebp]
00113 89 45 f4 mov DWORD PTR _ok$[ebp], eax
; 637 : systimeSrc.wMonth == sysTime.wMonth &&
; 638 : systimeSrc.wDay == sysTime.wDay &&
; 639 : systimeSrc.wHour == sysTime.wHour &&
; 640 : systimeSrc.wMinute == sysTime.wMinute &&
; 641 : systimeSrc.wSecond == sysTime.wSecond);
; 642 :
; 643 : return ok;
00116 8b 45 f4 mov eax, DWORD PTR _ok$[ebp]
$LN1@AtlConvert:
; 644 : }
00119 5f pop edi
0011a 5e pop esi
0011b 5b pop ebx
0011c 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
0011f 33 cd xor ecx, ebp
00121 e8 00 00 00 00 call @__security_check_cookie@4
00126 8b e5 mov esp, ebp
00128 5d pop ebp
00129 c3 ret 0
?AtlConvertSystemTimeToVariantTime@ATL@@YAHABU_SYSTEMTIME@@PAN@Z ENDP ; ATL::AtlConvertSystemTimeToVariantTime
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z
_TEXT SEGMENT
_hResource$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_hInstance$ = 8 ; size = 4
_id$ = 12 ; size = 4
?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z PROC ; ATL::AtlGetStringResourceImage, COMDAT
; 370 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 44 sub esp, 68 ; 00000044H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 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);
00028 6a 06 push 6
0002a 8b 45 0c mov eax, DWORD PTR _id$[ebp]
0002d c1 e8 04 shr eax, 4
00030 83 c0 01 add eax, 1
00033 25 ff ff 00 00 and eax, 65535 ; 0000ffffH
00038 0f b7 c8 movzx ecx, ax
0003b 51 push ecx
0003c 8b 55 08 mov edx, DWORD PTR _hInstance$[ebp]
0003f 52 push edx
00040 ff 15 00 00 00
00 call DWORD PTR __imp__FindResourceW@12
00046 89 45 f0 mov DWORD PTR _hResource$[ebp], eax
; 377 : if( hResource == NULL )
00049 83 7d f0 00 cmp DWORD PTR _hResource$[ebp], 0
0004d 75 04 jne SHORT $LN2@AtlGetStri
; 378 : {
; 379 : return( NULL );
0004f 33 c0 xor eax, eax
00051 eb 14 jmp SHORT $LN1@AtlGetStri
$LN2@AtlGetStri:
; 380 : }
; 381 :
; 382 : return _AtlGetStringResourceImage( hInstance, hResource, id );
00053 8b 45 0c mov eax, DWORD PTR _id$[ebp]
00056 50 push eax
00057 8b 4d f0 mov ecx, DWORD PTR _hResource$[ebp]
0005a 51 push ecx
0005b 8b 55 08 mov edx, DWORD PTR _hInstance$[ebp]
0005e 52 push edx
0005f e8 00 00 00 00 call ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
00064 83 c4 0c add esp, 12 ; 0000000cH
$LN1@AtlGetStri:
; 383 : }
00067 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
0006a 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
00071 59 pop ecx
00072 5f pop edi
00073 5e pop esi
00074 5b pop ebx
00075 8b e5 mov esp, ebp
00077 5d pop ebp
00078 c3 ret 0
00079 cc int 3
0007a cc int 3
0007b cc int 3
0007c cc int 3
0007d cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a ac mov ecx, DWORD PTR [edx-84]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z ENDP ; ATL::AtlGetStringResourceImage
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z
_TEXT SEGMENT
_iIndex$ = -32 ; size = 4
_hGlobal$ = -28 ; size = 4
_nResourceSize$ = -24 ; size = 4
_pImageEnd$ = -20 ; size = 4
_pImage$ = -16 ; size = 4
__$EHRec$ = -12 ; size = 12
_hInstance$ = 8 ; size = 4
_hResource$ = 12 ; size = 4
_id$ = 16 ; size = 4
?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z PROC ; ATL::_AtlGetStringResourceImage, COMDAT
; 327 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 6a ff push -1
00005 68 00 00 00 00 push __ehhandler$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z
0000a 64 a1 00 00 00
00 mov eax, DWORD PTR fs:0
00010 50 push eax
00011 83 ec 54 sub esp, 84 ; 00000054H
00014 53 push ebx
00015 56 push esi
00016 57 push edi
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
0001c 33 c5 xor eax, ebp
0001e 50 push eax
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
00022 64 a3 00 00 00
00 mov DWORD PTR fs:0, eax
; 328 : const ATLSTRINGRESOURCEIMAGE* pImage;
; 329 : const ATLSTRINGRESOURCEIMAGE* pImageEnd;
; 330 : ULONG nResourceSize;
; 331 : HGLOBAL hGlobal;
; 332 : UINT iIndex;
; 333 :
; 334 : hGlobal = ::LoadResource( hInstance, hResource );
00028 8b 45 0c mov eax, DWORD PTR _hResource$[ebp]
0002b 50 push eax
0002c 8b 4d 08 mov ecx, DWORD PTR _hInstance$[ebp]
0002f 51 push ecx
00030 ff 15 00 00 00
00 call DWORD PTR __imp__LoadResource@8
00036 89 45 e4 mov DWORD PTR _hGlobal$[ebp], eax
; 335 : if( hGlobal == NULL )
00039 83 7d e4 00 cmp DWORD PTR _hGlobal$[ebp], 0
0003d 75 07 jne SHORT $LN4@AtlGetStri
; 336 : {
; 337 : return( NULL );
0003f 33 c0 xor eax, eax
00041 e9 80 00 00 00 jmp $LN1@AtlGetStri
$LN4@AtlGetStri:
; 338 : }
; 339 :
; 340 : pImage = (const ATLSTRINGRESOURCEIMAGE*)::LockResource( hGlobal );
00046 8b 45 e4 mov eax, DWORD PTR _hGlobal$[ebp]
00049 50 push eax
0004a ff 15 00 00 00
00 call DWORD PTR __imp__LockResource@4
00050 89 45 f0 mov DWORD PTR _pImage$[ebp], eax
; 341 : if( pImage == NULL )
00053 83 7d f0 00 cmp DWORD PTR _pImage$[ebp], 0
00057 75 04 jne SHORT $LN5@AtlGetStri
; 342 : {
; 343 : return( NULL );
00059 33 c0 xor eax, eax
0005b eb 69 jmp SHORT $LN1@AtlGetStri
$LN5@AtlGetStri:
; 344 : }
; 345 :
; 346 : nResourceSize = ::SizeofResource( hInstance, hResource );
0005d 8b 45 0c mov eax, DWORD PTR _hResource$[ebp]
00060 50 push eax
00061 8b 4d 08 mov ecx, DWORD PTR _hInstance$[ebp]
00064 51 push ecx
00065 ff 15 00 00 00
00 call DWORD PTR __imp__SizeofResource@8
0006b 89 45 e8 mov DWORD PTR _nResourceSize$[ebp], eax
; 347 : pImageEnd = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+nResourceSize);
0006e 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
00071 03 45 e8 add eax, DWORD PTR _nResourceSize$[ebp]
00074 89 45 ec mov DWORD PTR _pImageEnd$[ebp], eax
; 348 : iIndex = id&0x000f;
00077 8b 45 10 mov eax, DWORD PTR _id$[ebp]
0007a 83 e0 0f and eax, 15 ; 0000000fH
0007d 89 45 e0 mov DWORD PTR _iIndex$[ebp], eax
$LN2@AtlGetStri:
; 349 :
; 350 : while( (iIndex > 0) && (pImage < pImageEnd) )
00080 83 7d e0 00 cmp DWORD PTR _iIndex$[ebp], 0
00084 76 23 jbe SHORT $LN3@AtlGetStri
00086 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
00089 3b 45 ec cmp eax, DWORD PTR _pImageEnd$[ebp]
0008c 73 1b jae SHORT $LN3@AtlGetStri
; 351 : {
; 352 : pImage = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+(sizeof( ATLSTRINGRESOURCEIMAGE )+(pImage->nLength*sizeof( WCHAR ))));
0008e 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
00091 0f b7 08 movzx ecx, WORD PTR [eax]
00094 8b 55 f0 mov edx, DWORD PTR _pImage$[ebp]
00097 8d 44 4a 02 lea eax, DWORD PTR [edx+ecx*2+2]
0009b 89 45 f0 mov DWORD PTR _pImage$[ebp], eax
; 353 : iIndex--;
0009e 8b 45 e0 mov eax, DWORD PTR _iIndex$[ebp]
000a1 83 e8 01 sub eax, 1
000a4 89 45 e0 mov DWORD PTR _iIndex$[ebp], eax
; 354 : }
000a7 eb d7 jmp SHORT $LN2@AtlGetStri
$LN3@AtlGetStri:
; 355 : if( pImage >= pImageEnd )
000a9 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
000ac 3b 45 ec cmp eax, DWORD PTR _pImageEnd$[ebp]
000af 72 04 jb SHORT $LN6@AtlGetStri
; 356 : {
; 357 : return( NULL );
000b1 33 c0 xor eax, eax
000b3 eb 11 jmp SHORT $LN1@AtlGetStri
$LN6@AtlGetStri:
; 358 : }
; 359 : if( pImage->nLength == 0 )
000b5 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
000b8 0f b7 08 movzx ecx, WORD PTR [eax]
000bb 85 c9 test ecx, ecx
000bd 75 04 jne SHORT $LN7@AtlGetStri
; 360 : {
; 361 : return( NULL );
000bf 33 c0 xor eax, eax
000c1 eb 03 jmp SHORT $LN1@AtlGetStri
$LN7@AtlGetStri:
; 362 : }
; 363 :
; 364 : return( pImage );
000c3 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
$LN1@AtlGetStri:
; 365 : }
000c6 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
000c9 64 89 0d 00 00
00 00 mov DWORD PTR fs:0, ecx
000d0 59 pop ecx
000d1 5f pop edi
000d2 5e pop esi
000d3 5b pop ebx
000d4 8b e5 mov esp, ebp
000d6 5d pop ebp
000d7 c3 ret 0
000d8 cc int 3
000d9 cc int 3
000da cc int 3
000db cc int 3
000dc cc int 3
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z:
00000 90 npad 1
00001 90 npad 1
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
00009 8b 4a 9c mov ecx, DWORD PTR [edx-100]
0000c 33 c8 xor ecx, eax
0000e e8 00 00 00 00 call @__security_check_cookie@4
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
text$x ENDS
?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ENDP ; ATL::_AtlGetStringResourceImage
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
; COMDAT ?AtlStrLen@ATL@@YAHPB_W@Z
_TEXT SEGMENT
_str$ = 8 ; size = 4
?AtlStrLen@ATL@@YAHPB_W@Z PROC ; ATL::AtlStrLen, COMDAT
; 60 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 61 : if (str == NULL)
00009 83 7d 08 00 cmp DWORD PTR _str$[ebp], 0
0000d 75 04 jne SHORT $LN2@AtlStrLen
; 62 : return 0;
0000f 33 c0 xor eax, eax
00011 eb 0c jmp SHORT $LN1@AtlStrLen
$LN2@AtlStrLen:
; 63 : return static_cast<int>(::wcslen(str));
00013 8b 45 08 mov eax, DWORD PTR _str$[ebp]
00016 50 push eax
00017 e8 00 00 00 00 call _wcslen
0001c 83 c4 04 add esp, 4
$LN1@AtlStrLen:
; 64 : }
0001f 5f pop edi
00020 5e pop esi
00021 5b pop ebx
00022 8b e5 mov esp, ebp
00024 5d pop ebp
00025 c3 ret 0
?AtlStrLen@ATL@@YAHPB_W@Z ENDP ; ATL::AtlStrLen
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlchecked.h
; COMDAT ?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z
_TEXT SEGMENT
__S1$ = 8 ; size = 4
__N1$ = 12 ; size = 4
__S2$ = 16 ; size = 4
__N$ = 20 ; size = 4
?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z PROC ; ATL::Checked::wmemcpy_s, COMDAT
; 77 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 78 : ATLMFC_CRT_ERRORCHECK(::wmemcpy_s(_S1, _N1, _S2, _N));
00009 8b 45 14 mov eax, DWORD PTR __N$[ebp]
0000c 50 push eax
0000d 8b 4d 10 mov ecx, DWORD PTR __S2$[ebp]
00010 51 push ecx
00011 8b 55 0c mov edx, DWORD PTR __N1$[ebp]
00014 52 push edx
00015 8b 45 08 mov eax, DWORD PTR __S1$[ebp]
00018 50 push eax
00019 e8 00 00 00 00 call _wmemcpy_s
0001e 83 c4 10 add esp, 16 ; 00000010H
00021 50 push eax
00022 e8 00 00 00 00 call ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
00027 83 c4 04 add esp, 4
; 79 : }
0002a 5f pop edi
0002b 5e pop esi
0002c 5b pop ebx
0002d 8b e5 mov esp, ebp
0002f 5d pop ebp
00030 c3 ret 0
?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z ENDP ; ATL::Checked::wmemcpy_s
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlexcept.h
; COMDAT ?AtlThrowImpl@ATL@@YGXJ@Z
_TEXT SEGMENT
_hr$ = 8 ; size = 4
?AtlThrowImpl@ATL@@YGXJ@Z PROC ; ATL::AtlThrowImpl, COMDAT
; 65 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 66 : ATLTRACE(atlTraceException, 0, _T("AtlThrow: hr = 0x%x\n"), hr );
; 67 : #ifdef _AFX
; 68 : if( hr == E_OUTOFMEMORY )
00009 81 7d 08 0e 00
07 80 cmp DWORD PTR _hr$[ebp], -2147024882 ; 8007000eH
00010 75 07 jne SHORT $LN2@AtlThrowIm
; 69 : {
; 70 : AfxThrowMemoryException();
00012 e8 00 00 00 00 call ?AfxThrowMemoryException@@YGXXZ ; AfxThrowMemoryException
; 71 : }
00017 eb 09 jmp SHORT $LN4@AtlThrowIm
$LN2@AtlThrowIm:
; 72 : else
; 73 : {
; 74 : AfxThrowOleException( hr );
00019 8b 45 08 mov eax, DWORD PTR _hr$[ebp]
0001c 50 push eax
0001d e8 00 00 00 00 call ?AfxThrowOleException@@YGXJ@Z ; AfxThrowOleException
$LN4@AtlThrowIm:
; 75 : }
; 76 : #else
; 77 : throw CAtlException( hr );
; 78 : #endif
; 79 : };
00022 5f pop edi
00023 5e pop esi
00024 5b pop ebx
00025 8b e5 mov esp, ebp
00027 5d pop ebp
00028 c2 04 00 ret 4
?AtlThrowImpl@ATL@@YGXJ@Z ENDP ; ATL::AtlThrowImpl
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.inl
; COMDAT ?Serialize@CObject@@UAEXAAVCArchive@@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___formal$ = 8 ; size = 4
?Serialize@CObject@@UAEXAAVCArchive@@@Z PROC ; CObject::Serialize, COMDAT
; _this$ = ecx
; 106 : { /* CObject does not serialize anything by default */ }
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
0000c 5f pop edi
0000d 5e pop esi
0000e 5b pop ebx
0000f 8b e5 mov esp, ebp
00011 5d pop ebp
00012 c2 04 00 ret 4
?Serialize@CObject@@UAEXAAVCArchive@@@Z ENDP ; CObject::Serialize
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.inl
; COMDAT ??3CObject@@SGXPAX@Z
_TEXT SEGMENT
_p$ = 8 ; size = 4
??3CObject@@SGXPAX@Z PROC ; CObject::operator delete, COMDAT
; 112 : { ::operator delete(p); }
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 8b 45 08 mov eax, DWORD PTR _p$[ebp]
0000c 50 push eax
0000d e8 00 00 00 00 call ??3@YAXPAX@Z ; operator delete
00012 83 c4 04 add esp, 4
00015 5f pop edi
00016 5e pop esi
00017 5b pop ebx
00018 8b e5 mov esp, ebp
0001a 5d pop ebp
0001b c2 04 00 ret 4
??3CObject@@SGXPAX@Z ENDP ; CObject::operator delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.inl
; COMDAT ??2CObject@@SGPAXI@Z
_TEXT SEGMENT
_nSize$ = 8 ; size = 4
??2CObject@@SGPAXI@Z PROC ; CObject::operator new, COMDAT
; 116 : { return ::operator new(nSize); }
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 8b 45 08 mov eax, DWORD PTR _nSize$[ebp]
0000c 50 push eax
0000d e8 00 00 00 00 call ??2@YAPAXI@Z ; operator new
00012 83 c4 04 add esp, 4
00015 5f pop edi
00016 5e pop esi
00017 5b pop ebx
00018 8b e5 mov esp, ebp
0001a 5d pop ebp
0001b c2 04 00 ret 4
??2CObject@@SGPAXI@Z ENDP ; CObject::operator new
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; 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 = -68 ; size = 4
_error$ = 8 ; size = 4
?AfxCrtErrorCheck@@YAHH@Z PROC ; AfxCrtErrorCheck, COMDAT
; 506 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 44 sub esp, 68 ; 00000044H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 507 : switch(error)
00009 8b 45 08 mov eax, DWORD PTR _error$[ebp]
0000c 89 45 bc mov DWORD PTR tv64[ebp], eax
0000f 83 7d bc 50 cmp DWORD PTR tv64[ebp], 80 ; 00000050H
00013 77 21 ja SHORT $LN9@AfxCrtErro
00015 8b 4d bc mov ecx, DWORD PTR tv64[ebp]
00018 0f b6 91 00 00
00 00 movzx edx, BYTE PTR $LN11@AfxCrtErro[ecx]
0001f ff 24 95 00 00
00 00 jmp DWORD PTR $LN12@AfxCrtErro[edx*4]
$LN4@AfxCrtErro:
; 508 : {
; 509 : case ENOMEM:
; 510 : AfxThrowMemoryException();
00026 e8 00 00 00 00 call ?AfxThrowMemoryException@@YGXXZ ; AfxThrowMemoryException
; 511 : break;
0002b eb 0e jmp SHORT $LN2@AfxCrtErro
$LN6@AfxCrtErro:
; 512 : case EINVAL:
; 513 : case ERANGE:
; 514 : AfxThrowInvalidArgException();
0002d e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YGXXZ ; AfxThrowInvalidArgException
; 515 : break;
00032 eb 07 jmp SHORT $LN2@AfxCrtErro
$LN8@AfxCrtErro:
; 516 : case STRUNCATE:
; 517 : case 0:
; 518 : break;
00034 eb 05 jmp SHORT $LN2@AfxCrtErro
$LN9@AfxCrtErro:
; 519 : default:
; 520 : AfxThrowInvalidArgException();
00036 e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YGXXZ ; AfxThrowInvalidArgException
$LN2@AfxCrtErro:
; 521 : break;
; 522 : }
; 523 : return error;
0003b 8b 45 08 mov eax, DWORD PTR _error$[ebp]
$LN10@AfxCrtErro:
; 524 : }
0003e 5f pop edi
0003f 5e pop esi
00040 5b pop ebx
00041 8b e5 mov esp, ebp
00043 5d pop ebp
00044 c3 ret 0
00045 0f 1f 00 npad 3
$LN12@AfxCrtErro:
00048 00 00 00 00 DD $LN8@AfxCrtErro
0004c 00 00 00 00 DD $LN4@AfxCrtErro
00050 00 00 00 00 DD $LN6@AfxCrtErro
00054 00 00 00 00 DD $LN9@AfxCrtErro
$LN11@AfxCrtErro:
00058 00 DB 0
00059 03 DB 3
0005a 03 DB 3
0005b 03 DB 3
0005c 03 DB 3
0005d 03 DB 3
0005e 03 DB 3
0005f 03 DB 3
00060 03 DB 3
00061 03 DB 3
00062 03 DB 3
00063 03 DB 3
00064 01 DB 1
00065 03 DB 3
00066 03 DB 3
00067 03 DB 3
00068 03 DB 3
00069 03 DB 3
0006a 03 DB 3
0006b 03 DB 3
0006c 03 DB 3
0006d 03 DB 3
0006e 02 DB 2
0006f 03 DB 3
00070 03 DB 3
00071 03 DB 3
00072 03 DB 3
00073 03 DB 3
00074 03 DB 3
00075 03 DB 3
00076 03 DB 3
00077 03 DB 3
00078 03 DB 3
00079 03 DB 3
0007a 02 DB 2
0007b 03 DB 3
0007c 03 DB 3
0007d 03 DB 3
0007e 03 DB 3
0007f 03 DB 3
00080 03 DB 3
00081 03 DB 3
00082 03 DB 3
00083 03 DB 3
00084 03 DB 3
00085 03 DB 3
00086 03 DB 3
00087 03 DB 3
00088 03 DB 3
00089 03 DB 3
0008a 03 DB 3
0008b 03 DB 3
0008c 03 DB 3
0008d 03 DB 3
0008e 03 DB 3
0008f 03 DB 3
00090 03 DB 3
00091 03 DB 3
00092 03 DB 3
00093 03 DB 3
00094 03 DB 3
00095 03 DB 3
00096 03 DB 3
00097 03 DB 3
00098 03 DB 3
00099 03 DB 3
0009a 03 DB 3
0009b 03 DB 3
0009c 03 DB 3
0009d 03 DB 3
0009e 03 DB 3
0009f 03 DB 3
000a0 03 DB 3
000a1 03 DB 3
000a2 03 DB 3
000a3 03 DB 3
000a4 03 DB 3
000a5 03 DB 3
000a6 03 DB 3
000a7 03 DB 3
000a8 00 DB 0
?AfxCrtErrorCheck@@YAHH@Z ENDP ; AfxCrtErrorCheck
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h
; COMDAT _memmove_s
_TEXT SEGMENT
tv74 = -80 ; size = 4
tv70 = -80 ; size = 4
tv66 = -80 ; size = 4
__Expr_val$1 = -12 ; size = 4
__Expr_val$2 = -8 ; size = 4
__Expr_val$3 = -4 ; size = 4
__Destination$ = 8 ; size = 4
__DestinationSize$ = 12 ; size = 4
__Source$ = 16 ; size = 4
__SourceSize$ = 20 ; size = 4
_memmove_s PROC ; COMDAT
; 73 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 50 sub esp, 80 ; 00000050H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 74 : if (_SourceSize == 0)
00009 83 7d 14 00 cmp DWORD PTR __SourceSize$[ebp], 0
0000d 75 07 jne SHORT $LN2@memmove_s
; 75 : {
; 76 : return 0;
0000f 33 c0 xor eax, eax
00011 e9 c6 00 00 00 jmp $LN1@memmove_s
$LN2@memmove_s:
; 77 : }
; 78 :
; 79 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
00016 83 7d 08 00 cmp DWORD PTR __Destination$[ebp], 0
0001a 74 09 je SHORT $LN7@memmove_s
0001c c7 45 b0 01 00
00 00 mov DWORD PTR tv66[ebp], 1
00023 eb 07 jmp SHORT $LN8@memmove_s
$LN7@memmove_s:
00025 c7 45 b0 00 00
00 00 mov DWORD PTR tv66[ebp], 0
$LN8@memmove_s:
0002c 8b 45 b0 mov eax, DWORD PTR tv66[ebp]
0002f 89 45 fc mov DWORD PTR __Expr_val$3[ebp], eax
00032 83 7d fc 00 cmp DWORD PTR __Expr_val$3[ebp], 0
00036 75 1a jne SHORT $LN3@memmove_s
00038 e8 00 00 00 00 call __errno
0003d c7 00 16 00 00
00 mov DWORD PTR [eax], 22 ; 00000016H
00043 e8 00 00 00 00 call __invalid_parameter_noinfo
00048 b8 16 00 00 00 mov eax, 22 ; 00000016H
0004d e9 8a 00 00 00 jmp $LN1@memmove_s
$LN3@memmove_s:
; 80 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
00052 83 7d 10 00 cmp DWORD PTR __Source$[ebp], 0
00056 74 09 je SHORT $LN9@memmove_s
00058 c7 45 b0 01 00
00 00 mov DWORD PTR tv70[ebp], 1
0005f eb 07 jmp SHORT $LN10@memmove_s
$LN9@memmove_s:
00061 c7 45 b0 00 00
00 00 mov DWORD PTR tv70[ebp], 0
$LN10@memmove_s:
00068 8b 45 b0 mov eax, DWORD PTR tv70[ebp]
0006b 89 45 f8 mov DWORD PTR __Expr_val$2[ebp], eax
0006e 83 7d f8 00 cmp DWORD PTR __Expr_val$2[ebp], 0
00072 75 17 jne SHORT $LN4@memmove_s
00074 e8 00 00 00 00 call __errno
00079 c7 00 16 00 00
00 mov DWORD PTR [eax], 22 ; 00000016H
0007f e8 00 00 00 00 call __invalid_parameter_noinfo
00084 b8 16 00 00 00 mov eax, 22 ; 00000016H
00089 eb 51 jmp SHORT $LN1@memmove_s
$LN4@memmove_s:
; 81 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
0008b 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
0008e 3b 45 14 cmp eax, DWORD PTR __SourceSize$[ebp]
00091 72 09 jb SHORT $LN11@memmove_s
00093 c7 45 b0 01 00
00 00 mov DWORD PTR tv74[ebp], 1
0009a eb 07 jmp SHORT $LN12@memmove_s
$LN11@memmove_s:
0009c c7 45 b0 00 00
00 00 mov DWORD PTR tv74[ebp], 0
$LN12@memmove_s:
000a3 8b 4d b0 mov ecx, DWORD PTR tv74[ebp]
000a6 89 4d f4 mov DWORD PTR __Expr_val$1[ebp], ecx
000a9 83 7d f4 00 cmp DWORD PTR __Expr_val$1[ebp], 0
000ad 75 17 jne SHORT $LN5@memmove_s
000af e8 00 00 00 00 call __errno
000b4 c7 00 22 00 00
00 mov DWORD PTR [eax], 34 ; 00000022H
000ba e8 00 00 00 00 call __invalid_parameter_noinfo
000bf b8 22 00 00 00 mov eax, 34 ; 00000022H
000c4 eb 16 jmp SHORT $LN1@memmove_s
$LN5@memmove_s:
; 82 :
; 83 : memmove(_Destination, _Source, _SourceSize);
000c6 8b 45 14 mov eax, DWORD PTR __SourceSize$[ebp]
000c9 50 push eax
000ca 8b 4d 10 mov ecx, DWORD PTR __Source$[ebp]
000cd 51 push ecx
000ce 8b 55 08 mov edx, DWORD PTR __Destination$[ebp]
000d1 52 push edx
000d2 e8 00 00 00 00 call _memmove
000d7 83 c4 0c add esp, 12 ; 0000000cH
; 84 : return 0;
000da 33 c0 xor eax, eax
$LN1@memmove_s:
; 85 : }
000dc 5f pop edi
000dd 5e pop esi
000de 5b pop ebx
000df 8b e5 mov esp, ebp
000e1 5d pop ebp
000e2 c3 ret 0
_memmove_s ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h
; COMDAT _memcpy_s
_TEXT SEGMENT
tv79 = -80 ; size = 4
tv75 = -80 ; size = 4
tv66 = -80 ; size = 4
__Expr_val$1 = -12 ; size = 4
__Expr_val$2 = -8 ; size = 4
__Expr_val$3 = -4 ; size = 4
__Destination$ = 8 ; size = 4
__DestinationSize$ = 12 ; size = 4
__Source$ = 16 ; size = 4
__SourceSize$ = 20 ; size = 4
_memcpy_s PROC ; COMDAT
; 45 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 50 sub esp, 80 ; 00000050H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 46 : if (_SourceSize == 0)
00009 83 7d 14 00 cmp DWORD PTR __SourceSize$[ebp], 0
0000d 75 07 jne SHORT $LN2@memcpy_s
; 47 : {
; 48 : return 0;
0000f 33 c0 xor eax, eax
00011 e9 f1 00 00 00 jmp $LN1@memcpy_s
$LN2@memcpy_s:
; 49 : }
; 50 :
; 51 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
00016 83 7d 08 00 cmp DWORD PTR __Destination$[ebp], 0
0001a 74 09 je SHORT $LN9@memcpy_s
0001c c7 45 b0 01 00
00 00 mov DWORD PTR tv66[ebp], 1
00023 eb 07 jmp SHORT $LN10@memcpy_s
$LN9@memcpy_s:
00025 c7 45 b0 00 00
00 00 mov DWORD PTR tv66[ebp], 0
$LN10@memcpy_s:
0002c 8b 45 b0 mov eax, DWORD PTR tv66[ebp]
0002f 89 45 fc mov DWORD PTR __Expr_val$3[ebp], eax
00032 83 7d fc 00 cmp DWORD PTR __Expr_val$3[ebp], 0
00036 75 1a jne SHORT $LN3@memcpy_s
00038 e8 00 00 00 00 call __errno
0003d c7 00 16 00 00
00 mov DWORD PTR [eax], 22 ; 00000016H
00043 e8 00 00 00 00 call __invalid_parameter_noinfo
00048 b8 16 00 00 00 mov eax, 22 ; 00000016H
0004d e9 b5 00 00 00 jmp $LN1@memcpy_s
$LN3@memcpy_s:
; 52 : if (_Source == NULL || _DestinationSize < _SourceSize)
00052 83 7d 10 00 cmp DWORD PTR __Source$[ebp], 0
00056 74 0c je SHORT $LN5@memcpy_s
00058 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
0005b 3b 45 14 cmp eax, DWORD PTR __SourceSize$[ebp]
0005e 0f 83 8d 00 00
00 jae $LN4@memcpy_s
$LN5@memcpy_s:
; 53 : {
; 54 : memset(_Destination, 0, _DestinationSize);
00064 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
00067 50 push eax
00068 6a 00 push 0
0006a 8b 4d 08 mov ecx, DWORD PTR __Destination$[ebp]
0006d 51 push ecx
0006e e8 00 00 00 00 call _memset
00073 83 c4 0c add esp, 12 ; 0000000cH
; 55 :
; 56 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
00076 83 7d 10 00 cmp DWORD PTR __Source$[ebp], 0
0007a 74 09 je SHORT $LN11@memcpy_s
0007c c7 45 b0 01 00
00 00 mov DWORD PTR tv75[ebp], 1
00083 eb 07 jmp SHORT $LN12@memcpy_s
$LN11@memcpy_s:
00085 c7 45 b0 00 00
00 00 mov DWORD PTR tv75[ebp], 0
$LN12@memcpy_s:
0008c 8b 45 b0 mov eax, DWORD PTR tv75[ebp]
0008f 89 45 f8 mov DWORD PTR __Expr_val$2[ebp], eax
00092 83 7d f8 00 cmp DWORD PTR __Expr_val$2[ebp], 0
00096 75 17 jne SHORT $LN6@memcpy_s
00098 e8 00 00 00 00 call __errno
0009d c7 00 16 00 00
00 mov DWORD PTR [eax], 22 ; 00000016H
000a3 e8 00 00 00 00 call __invalid_parameter_noinfo
000a8 b8 16 00 00 00 mov eax, 22 ; 00000016H
000ad eb 58 jmp SHORT $LN1@memcpy_s
$LN6@memcpy_s:
; 57 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
000af 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
000b2 3b 45 14 cmp eax, DWORD PTR __SourceSize$[ebp]
000b5 72 09 jb SHORT $LN13@memcpy_s
000b7 c7 45 b0 01 00
00 00 mov DWORD PTR tv79[ebp], 1
000be eb 07 jmp SHORT $LN14@memcpy_s
$LN13@memcpy_s:
000c0 c7 45 b0 00 00
00 00 mov DWORD PTR tv79[ebp], 0
$LN14@memcpy_s:
000c7 8b 4d b0 mov ecx, DWORD PTR tv79[ebp]
000ca 89 4d f4 mov DWORD PTR __Expr_val$1[ebp], ecx
000cd 83 7d f4 00 cmp DWORD PTR __Expr_val$1[ebp], 0
000d1 75 17 jne SHORT $LN7@memcpy_s
000d3 e8 00 00 00 00 call __errno
000d8 c7 00 22 00 00
00 mov DWORD PTR [eax], 34 ; 00000022H
000de e8 00 00 00 00 call __invalid_parameter_noinfo
000e3 b8 22 00 00 00 mov eax, 34 ; 00000022H
000e8 eb 1d jmp SHORT $LN1@memcpy_s
$LN7@memcpy_s:
; 58 :
; 59 : // Unreachable, but required to suppress /analyze warnings:
; 60 : return EINVAL;
000ea b8 16 00 00 00 mov eax, 22 ; 00000016H
000ef eb 16 jmp SHORT $LN1@memcpy_s
$LN4@memcpy_s:
; 61 : }
; 62 : memcpy(_Destination, _Source, _SourceSize);
000f1 8b 45 14 mov eax, DWORD PTR __SourceSize$[ebp]
000f4 50 push eax
000f5 8b 4d 10 mov ecx, DWORD PTR __Source$[ebp]
000f8 51 push ecx
000f9 8b 55 08 mov edx, DWORD PTR __Destination$[ebp]
000fc 52 push edx
000fd e8 00 00 00 00 call _memcpy
00102 83 c4 0c add esp, 12 ; 0000000cH
; 63 : return 0;
00105 33 c0 xor eax, eax
$LN1@memcpy_s:
; 64 : }
00107 5f pop edi
00108 5e pop esi
00109 5b pop ebx
0010a 8b e5 mov esp, ebp
0010c 5d pop ebp
0010d c3 ret 0
_memcpy_s ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_stdio_config.h
; COMDAT ___local_stdio_printf_options
_TEXT SEGMENT
___local_stdio_printf_options PROC ; COMDAT
; 90 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
; 91 : static unsigned __int64 _OptionsStorage;
; 92 : return &_OptionsStorage;
00009 b8 00 00 00 00 mov eax, OFFSET ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage
; 93 : }
0000e 5f pop edi
0000f 5e pop esi
00010 5b pop ebx
00011 8b e5 mov esp, ebp
00013 5d pop ebp
00014 c3 ret 0
___local_stdio_printf_options ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z
_TEXT SEGMENT
___formal$ = 8 ; size = 4
___formal$ = 12 ; size = 4
___formal$ = 16 ; size = 4
?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 5f pop edi
0000a 5e pop esi
0000b 5b pop ebx
0000c 8b e5 mov esp, ebp
0000e 5d pop ebp
0000f c3 ret 0
?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z
_TEXT SEGMENT
___formal$ = 8 ; size = 4
___formal$ = 12 ; size = 4
?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 5f pop edi
0000a 5e pop esi
0000b 5b pop ebx
0000c 8b e5 mov esp, ebp
0000e 5d pop ebp
0000f c3 ret 0
?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?__empty_global_delete@@YAXPAXI@Z
_TEXT SEGMENT
___formal$ = 8 ; size = 4
___formal$ = 12 ; size = 4
?__empty_global_delete@@YAXPAXI@Z PROC ; __empty_global_delete, COMDAT
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 5f pop edi
0000a 5e pop esi
0000b 5b pop ebx
0000c 8b e5 mov esp, ebp
0000e 5d pop ebp
0000f c3 ret 0
?__empty_global_delete@@YAXPAXI@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\SPThread.cpp
; COMDAT ?__empty_global_delete@@YAXPAX@Z
_TEXT SEGMENT
___formal$ = 8 ; size = 4
?__empty_global_delete@@YAXPAX@Z PROC ; __empty_global_delete, COMDAT
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 40 sub esp, 64 ; 00000040H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 5f pop edi
0000a 5e pop esi
0000b 5b pop ebx
0000c 8b e5 mov esp, ebp
0000e 5d pop ebp
0000f c3 ret 0
?__empty_global_delete@@YAXPAX@Z ENDP ; __empty_global_delete
_TEXT ENDS
END