SmsCenter/Release_Unicode/KeyList.cod

8148 lines
262 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
include listing.inc
INCLUDELIB LIBCMT
INCLUDELIB OLDNAMES
PUBLIC ?__empty_global_delete@@YAXPEAX@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPEAX_K@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ; __empty_global_delete
PUBLIC __local_stdio_printf_options
PUBLIC _vswprintf_c_l
PUBLIC _vswprintf_l
PUBLIC __vswprintf_l
PUBLIC _swprintf
PUBLIC ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
PUBLIC ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
PUBLIC ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ; ATL::Checked::wmemcpy_s
PUBLIC ?AtlStrLen@ATL@@YAHPEB_W@Z ; ATL::AtlStrLen
PUBLIC ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
PUBLIC ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
PUBLIC ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
PUBLIC ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked
PUBLIC ?IsShared@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsShared
PUBLIC ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
PUBLIC ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
PUBLIC ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
PUBLIC ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
PUBLIC ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
PUBLIC ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
PUBLIC ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
PUBLIC ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
PUBLIC ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
PUBLIC ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
PUBLIC ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
PUBLIC ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
PUBLIC ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
PUBLIC ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
PUBLIC ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
PUBLIC ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
PUBLIC ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
PUBLIC ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
PUBLIC ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
PUBLIC ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
PUBLIC ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
PUBLIC ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
PUBLIC ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
PUBLIC ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
PUBLIC ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
PUBLIC ?SetID@CAdoConnection@@QEAAXJ@Z ; CAdoConnection::SetID
PUBLIC ??0IOCP_SQL@@QEAA@XZ ; IOCP_SQL::IOCP_SQL
PUBLIC ??1IOCP_SQL@@QEAA@XZ ; IOCP_SQL::~IOCP_SQL
PUBLIC ??_EIOCP_SQL@@QEAAPEAXI@Z ; IOCP_SQL::`vector deleting destructor'
PUBLIC ?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ ; CKeyList::GetBlank_SQL
PUBLIC ?Close@CKeyList@@QEAAXXZ ; CKeyList::Close
PUBLIC ?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ ; CKeyList::GetBlank_Process
PUBLIC ?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z ; CKeyList::Init
PUBLIC ?Close_IO@CKeyList@@QEAAXXZ ; CKeyList::Close_IO
PUBLIC ?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z ; CKeyList::RemoveAt_IO
PUBLIC ?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z ; CKeyList::RemoveAt_Key
PUBLIC ?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ ; CKeyList::GetBlank_IO
PUBLIC ?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ ; CKeyList::GetBlank_Key
PUBLIC ??0CKeyList@@QEAA@XZ ; CKeyList::CKeyList
PUBLIC ??1CKeyList@@UEAA@XZ ; CKeyList::~CKeyList
PUBLIC ??_GCKeyList@@UEAAPEAXI@Z ; CKeyList::`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 ??_7CKeyList@@6B@ ; CKeyList::`vftable'
PUBLIC ?__LINE__Var@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4JA ; `CKeyList::RemoveAt_Key'::`1'::__LINE__Var
PUBLIC ??_C@_0N@LNMKMNFF@RemoveAt_Key@ ; `string'
PUBLIC ??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@ ; `string'
PUBLIC ?__LINE__Var@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4JA ; `CKeyList::RemoveAt_IO'::`1'::__LINE__Var
PUBLIC ??_C@_1BO@OIFMIIBA@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$PP?$KN?$PP?$LP?$AA?$AA?$PP?z?$AA?$CB@ ; `string'
PUBLIC ??_C@_1BO@IFJHDIMD@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$AAc?$AA8?$AA?$AA?$PP?z?$AA?$CB@ ; `string'
PUBLIC ??_C@_0M@DCAJJICO@RemoveAt_IO@ ; `string'
PUBLIC ?__LINE__Var@?0??Close_IO@CKeyList@@QEAAXXZ@4JA ; `CKeyList::Close_IO'::`1'::__LINE__Var
PUBLIC ??_C@_08EDPDCAEI@Close_IO@ ; `string'
PUBLIC ?__LINE__Var@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4JA ; `CKeyList::GetBlank_Process'::`1'::__LINE__Var
PUBLIC ??_C@_0BB@NCGHDNPI@GetBlank_Process@ ; `string'
PUBLIC ?__LINE__Var@?0??Close@CKeyList@@QEAAXXZ@4JA ; `CKeyList::Close'::`1'::__LINE__Var
PUBLIC ??_C@_05LGELBCGM@Close@ ; `string'
PUBLIC ??_R4CKeyList@@6B@ ; CKeyList::`RTTI Complete Object Locator'
PUBLIC ??_R0?AVCKeyList@@@8 ; CKeyList `RTTI Type Descriptor'
PUBLIC ??_R3CKeyList@@8 ; CKeyList::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2CKeyList@@8 ; CKeyList::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@CKeyList@@8 ; CKeyList::`RTTI Base Class Descriptor at (0,-1,0,64)'
EXTRN ??_L@YAXPEAX_K1P6AX0@Z2@Z:PROC ; `eh vector constructor iterator'
EXTRN ??_M@YAXPEAX_K1P6AX0@Z@Z:PROC ; `eh vector destructor iterator'
EXTRN ??3@YAXPEAX_K@Z:PROC ; operator delete
EXTRN ??_U@YAPEAX_K@Z:PROC ; operator new[]
EXTRN ??_V@YAXPEAX@Z:PROC ; operator delete[]
EXTRN ??_V@YAXPEAX_K@Z:PROC ; operator delete[]
EXTRN _invalid_parameter_noinfo:PROC
EXTRN __stdio_common_vswprintf:PROC
EXTRN _errno:PROC
EXTRN memcpy:PROC
EXTRN memmove:PROC
EXTRN memset:PROC
EXTRN wcslen:PROC
EXTRN wmemcpy_s:PROC
EXTRN rand:PROC
EXTRN __imp_Sleep:PROC
EXTRN __imp_GetTickCount:PROC
EXTRN __imp_LoadResource:PROC
EXTRN __imp_LockResource:PROC
EXTRN __imp_SizeofResource:PROC
EXTRN __imp_FindResourceW:PROC
EXTRN ?AfxThrowMemoryException@@YAXXZ:PROC ; AfxThrowMemoryException
EXTRN ?AfxThrowInvalidArgException@@YAXXZ:PROC ; AfxThrowInvalidArgException
EXTRN ?AfxThrowOleException@@YAXJ@Z:PROC ; AfxThrowOleException
EXTRN ?AfxFindStringResourceHandle@@YAPEAUHINSTANCE__@@I@Z:PROC ; AfxFindStringResourceHandle
EXTRN __imp_closesocket:PROC
EXTRN ?AfxGetStringManager@@YAPEAUIAtlStringMgr@ATL@@XZ:PROC ; AfxGetStringManager
EXTRN ?AfxIsValidAddress@@YAHPEBX_KH@Z:PROC ; AfxIsValidAddress
EXTRN ??0CSAStatusLog@@QEAA@XZ:PROC ; CSAStatusLog::CSAStatusLog
EXTRN ??1CSAStatusLog@@QEAA@XZ:PROC ; CSAStatusLog::~CSAStatusLog
EXTRN ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z:PROC ; CSAStatusLog::Init
EXTRN ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z:PROC ; CSAStatusLog::LogError
EXTRN ??0CAdoConnection@@QEAA@XZ:PROC ; CAdoConnection::CAdoConnection
EXTRN ??1CAdoConnection@@UEAA@XZ:PROC ; CAdoConnection::~CAdoConnection
EXTRN ?isOK@CAdoConnection@@QEAAHXZ:PROC ; CAdoConnection::isOK
EXTRN ??_ECKeyList@@UEAAPEAXI@Z:PROC ; CKeyList::`vector deleting destructor'
EXTRN ?RefreshLogin@CSmsCenterDlg@@QEAAXXZ:PROC ; CSmsCenterDlg::RefreshLogin
EXTRN ?AddLog@CSmsCenterDlg@@QEAAXPEB_WJ@Z:PROC ; CSmsCenterDlg::AddLog
EXTRN __CxxFrameHandler4:PROC
EXTRN __GSHandlerCheck_EH4:PROC
EXTRN __chkstk:PROC
EXTRN __security_check_cookie:PROC
EXTRN ??_7type_info@@6B@:BYTE ; type_info::`vftable'
EXTRN __security_cookie:QWORD
; COMDAT ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA
_BSS SEGMENT
?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA DQ 01H DUP (?) ; `__local_stdio_printf_options'::`2'::_OptionsStorage
_BSS ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?__empty_global_delete@@YAXPEAX@Z DD imagerel $LN3
DD imagerel $LN3+19
DD imagerel $unwind$?__empty_global_delete@@YAXPEAX@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?__empty_global_delete@@YAXPEAX_K@Z DD imagerel $LN3
DD imagerel $LN3+24
DD imagerel $unwind$?__empty_global_delete@@YAXPEAX_K@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z DD imagerel $LN3
DD imagerel $LN3+24
DD imagerel $unwind$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z DD imagerel $LN3
DD imagerel $LN3+29
DD imagerel $unwind$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$__local_stdio_printf_options DD imagerel $LN3
DD imagerel $LN3+22
DD imagerel $unwind$__local_stdio_printf_options
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_vswprintf_c_l DD imagerel $LN5
DD imagerel $LN5+112
DD imagerel $unwind$_vswprintf_c_l
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_vswprintf_l DD imagerel $LN3
DD imagerel $LN3+66
DD imagerel $unwind$_vswprintf_l
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$__vswprintf_l DD imagerel $LN3
DD imagerel $LN3+69
DD imagerel $unwind$__vswprintf_l
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_swprintf DD imagerel $LN3
DD imagerel $LN3+84
DD imagerel $unwind$_swprintf
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$memcpy_s DD imagerel memcpy_s
DD imagerel memcpy_s+292
DD imagerel $unwind$memcpy_s
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$memmove_s DD imagerel memmove_s
DD imagerel memmove_s+249
DD imagerel $unwind$memmove_s
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AfxCrtErrorCheck@@YAHH@Z DD imagerel $LN11
DD imagerel $LN11+82
DD imagerel $unwind$?AfxCrtErrorCheck@@YAHH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AtlThrowImpl@ATL@@YAXJ@Z DD imagerel $LN5
DD imagerel $LN5+44
DD imagerel $unwind$?AtlThrowImpl@ATL@@YAXJ@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z DD imagerel $LN3
DD imagerel $LN3+64
DD imagerel $unwind$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AtlStrLen@ATL@@YAHPEB_W@Z DD imagerel $LN4
DD imagerel $LN4+41
DD imagerel $unwind$?AtlStrLen@ATL@@YAHPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DD imagerel $LN9
DD imagerel $LN9+231
DD imagerel $unwind$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DD imagerel $LN4
DD imagerel $LN4+92
DD imagerel $unwind$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?data@CStringData@ATL@@QEAAPEAXXZ DD imagerel $LN3
DD imagerel $LN3+27
DD imagerel $unwind$?data@CStringData@ATL@@QEAAPEAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?IsLocked@CStringData@ATL@@QEBA_NXZ DD imagerel $LN5
DD imagerel $LN5+49
DD imagerel $unwind$?IsLocked@CStringData@ATL@@QEBA_NXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?IsShared@CStringData@ATL@@QEBA_NXZ DD imagerel $LN5
DD imagerel $LN5+49
DD imagerel $unwind$?IsShared@CStringData@ATL@@QEBA_NXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Release@CStringData@ATL@@QEAAXXZ DD imagerel $LN4
DD imagerel $LN4+86
DD imagerel $unwind$?Release@CStringData@ATL@@QEAAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DD imagerel $LN3
DD imagerel $LN3+31
DD imagerel $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z DD imagerel $LN3
DD imagerel $LN3+26
DD imagerel $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z DD imagerel $LN4
DD imagerel $LN4+82
DD imagerel $unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD imagerel $LN12
DD imagerel $LN12+121
DD imagerel $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ DD imagerel $LN3
DD imagerel $LN3+43
DD imagerel $unwind$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3
DD imagerel $LN3+43
DD imagerel $unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DD imagerel $LN6
DD imagerel $LN6+130
DD imagerel $unwind$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD imagerel $LN3
DD imagerel $LN3+33
DD imagerel $unwind$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z DD imagerel $LN3
DD imagerel $LN3+37
DD imagerel $unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD imagerel $LN3
DD imagerel $LN3+33
DD imagerel $unwind$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ DD imagerel $LN3
DD imagerel $LN3+26
DD imagerel $unwind$?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z DD imagerel $LN3
DD imagerel $LN3+37
DD imagerel $unwind$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD imagerel $LN3
DD imagerel $LN3+51
DD imagerel $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD imagerel $LN8
DD imagerel $LN8+261
DD imagerel $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DD imagerel $LN3
DD imagerel $LN3+70
DD imagerel $unwind$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DD imagerel $LN4
DD imagerel $LN4+42
DD imagerel $unwind$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ DD imagerel $LN3
DD imagerel $LN3+27
DD imagerel $unwind$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z DD imagerel $LN3
DD imagerel $LN3+42
DD imagerel $unwind$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN6
DD imagerel $LN6+257
DD imagerel $unwind$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ DD imagerel $LN3
DD imagerel $LN3+30
DD imagerel $unwind$?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z DD imagerel $LN5
DD imagerel $LN5+119
DD imagerel $unwind$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN10
DD imagerel $LN10+178
DD imagerel $unwind$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN6
DD imagerel $LN6+142
DD imagerel $unwind$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN5
DD imagerel $LN5+90
DD imagerel $unwind$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DD imagerel $LN5
DD imagerel $LN5+82
DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA
DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA+25
DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD imagerel $LN4
DD imagerel $LN4+31
DD imagerel $unwind$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA
DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA+25
DD imagerel $unwind$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3
DD imagerel $LN3+43
DD imagerel $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z DD imagerel $LN4
DD imagerel $LN4+65
DD imagerel $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z DD imagerel $LN4
DD imagerel $LN4+155
DD imagerel $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z DD imagerel $LN5
DD imagerel $LN5+86
DD imagerel $unwind$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DD imagerel $LN3
DD imagerel $LN3+29
DD imagerel $unwind$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DD imagerel $LN3
DD imagerel $LN3+23
DD imagerel $unwind$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?SetID@CAdoConnection@@QEAAXJ@Z DD imagerel $LN3
DD imagerel $LN3+33
DD imagerel $unwind$?SetID@CAdoConnection@@QEAAXJ@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??0IOCP_SQL@@QEAA@XZ DD imagerel $LN4
DD imagerel $LN4+42
DD imagerel $unwind$??0IOCP_SQL@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA
DD imagerel ?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA+29
DD imagerel $unwind$?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??1IOCP_SQL@@QEAA@XZ DD imagerel $LN4
DD imagerel $LN4+38
DD imagerel $unwind$??1IOCP_SQL@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA
DD imagerel ?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA+29
DD imagerel $unwind$?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??_EIOCP_SQL@@QEAAPEAXI@Z DD imagerel $LN6
DD imagerel $LN6+150
DD imagerel $unwind$??_EIOCP_SQL@@QEAAPEAXI@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ DD imagerel $LN10
DD imagerel $LN10+343
DD imagerel $unwind$?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Close@CKeyList@@QEAAXXZ DD imagerel $LN23
DD imagerel $LN23+519
DD imagerel $unwind$?Close@CKeyList@@QEAAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA DD imagerel ?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA
DD imagerel ?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA+251
DD imagerel $unwind$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA DD imagerel ?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA
DD imagerel ?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA+25
DD imagerel $unwind$?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA DD imagerel ?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA
DD imagerel ?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA+28
DD imagerel $unwind$?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA DD imagerel ?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA
DD imagerel ?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA+28
DD imagerel $unwind$?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DD imagerel $LN12
DD imagerel $LN12+69
DD imagerel $unwind$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD imagerel ?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DD imagerel ?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA+251
DD imagerel $unwind$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD imagerel ?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DD imagerel ?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA+25
DD imagerel $unwind$?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD imagerel ?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DD imagerel ?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA+28
DD imagerel $unwind$?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD imagerel ?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DD imagerel ?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA+28
DD imagerel $unwind$?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z DD imagerel $LN12
DD imagerel $LN12+577
DD imagerel $unwind$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA DD imagerel ?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA
DD imagerel ?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA+30
DD imagerel $unwind$?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?Close_IO@CKeyList@@QEAAXXZ DD imagerel $LN17
DD imagerel $LN17+251
DD imagerel $unwind$?Close_IO@CKeyList@@QEAAXXZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD imagerel ?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DD imagerel ?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA+251
DD imagerel $unwind$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD imagerel ?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DD imagerel ?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA+25
DD imagerel $unwind$?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD imagerel ?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DD imagerel ?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA+28
DD imagerel $unwind$?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD imagerel ?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DD imagerel ?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA+28
DD imagerel $unwind$?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DD imagerel $LN19
DD imagerel $LN19+485
DD imagerel $unwind$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD imagerel ?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DD imagerel ?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA+272
DD imagerel $unwind$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD imagerel ?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DD imagerel ?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA+28
DD imagerel $unwind$?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD imagerel ?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DD imagerel ?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA+28
DD imagerel $unwind$?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD imagerel ?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DD imagerel ?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA+28
DD imagerel $unwind$?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DD imagerel $LN15
DD imagerel $LN15+174
DD imagerel $unwind$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD imagerel ?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DD imagerel ?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA+260
DD imagerel $unwind$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD imagerel ?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DD imagerel ?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA+25
DD imagerel $unwind$?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD imagerel ?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DD imagerel ?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA+28
DD imagerel $unwind$?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD imagerel ?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DD imagerel ?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA+28
DD imagerel $unwind$?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ DD imagerel $LN15
DD imagerel $LN15+585
DD imagerel $unwind$?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ DD imagerel $LN15
DD imagerel $LN15+423
DD imagerel $unwind$?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??0CKeyList@@QEAA@XZ DD imagerel $LN3
DD imagerel $LN3+119
DD imagerel $unwind$??0CKeyList@@QEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??1CKeyList@@UEAA@XZ DD imagerel $LN3
DD imagerel $LN3+45
DD imagerel $unwind$??1CKeyList@@UEAA@XZ
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$??_GCKeyList@@UEAAPEAXI@Z DD imagerel $LN4
DD imagerel $LN4+62
DD imagerel $unwind$??_GCKeyList@@UEAAPEAXI@Z
pdata ENDS
; COMDAT ??_R1A@?0A@EA@CKeyList@@8
rdata$r SEGMENT
??_R1A@?0A@EA@CKeyList@@8 DD imagerel ??_R0?AVCKeyList@@@8 ; CKeyList::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 00H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD imagerel ??_R3CKeyList@@8
rdata$r ENDS
; COMDAT ??_R2CKeyList@@8
rdata$r SEGMENT
??_R2CKeyList@@8 DD imagerel ??_R1A@?0A@EA@CKeyList@@8 ; CKeyList::`RTTI Base Class Array'
ORG $+3
rdata$r ENDS
; COMDAT ??_R3CKeyList@@8
rdata$r SEGMENT
??_R3CKeyList@@8 DD 00H ; CKeyList::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 01H
DD imagerel ??_R2CKeyList@@8
rdata$r ENDS
; COMDAT ??_R0?AVCKeyList@@@8
data$rs SEGMENT
??_R0?AVCKeyList@@@8 DQ FLAT:??_7type_info@@6B@ ; CKeyList `RTTI Type Descriptor'
DQ 0000000000000000H
DB '.?AVCKeyList@@', 00H
data$rs ENDS
; COMDAT ??_R4CKeyList@@6B@
rdata$r SEGMENT
??_R4CKeyList@@6B@ DD 01H ; CKeyList::`RTTI Complete Object Locator'
DD 00H
DD 00H
DD imagerel ??_R0?AVCKeyList@@@8
DD imagerel ??_R3CKeyList@@8
DD imagerel ??_R4CKeyList@@6B@
rdata$r ENDS
; COMDAT ??_C@_05LGELBCGM@Close@
CONST SEGMENT
??_C@_05LGELBCGM@Close@ DB 'Close', 00H ; `string'
CONST ENDS
; COMDAT ?__LINE__Var@?0??Close@CKeyList@@QEAAXXZ@4JA
_DATA SEGMENT
?__LINE__Var@?0??Close@CKeyList@@QEAAXXZ@4JA DD 0133H ; `CKeyList::Close'::`1'::__LINE__Var
_DATA ENDS
; COMDAT ??_C@_0BB@NCGHDNPI@GetBlank_Process@
CONST SEGMENT
??_C@_0BB@NCGHDNPI@GetBlank_Process@ DB 'GetBlank_Process', 00H ; `string'
CONST ENDS
; COMDAT ?__LINE__Var@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4JA
_DATA SEGMENT
?__LINE__Var@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4JA DD 0f4H ; `CKeyList::GetBlank_Process'::`1'::__LINE__Var
_DATA ENDS
; COMDAT ??_C@_08EDPDCAEI@Close_IO@
CONST SEGMENT
??_C@_08EDPDCAEI@Close_IO@ DB 'Close_IO', 00H ; `string'
CONST ENDS
; COMDAT ?__LINE__Var@?0??Close_IO@CKeyList@@QEAAXXZ@4JA
_DATA SEGMENT
?__LINE__Var@?0??Close_IO@CKeyList@@QEAAXXZ@4JA DD 0a6H ; `CKeyList::Close_IO'::`1'::__LINE__Var
_DATA ENDS
; COMDAT ??_C@_0M@DCAJJICO@RemoveAt_IO@
CONST SEGMENT
??_C@_0M@DCAJJICO@RemoveAt_IO@ DB 'RemoveAt_IO', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BO@IFJHDIMD@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$AAc?$AA8?$AA?$AA?$PP?z?$AA?$CB@
CONST SEGMENT
??_C@_1BO@IFJHDIMD@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$AAc?$AA8?$AA?$AA?$PP?z?$AA?$CB@ DB '['
DB 00H, '%', 00H, 'd', 00H, ']', 00H, '%', 00H, 's', 00H, '-', 00H
DB '%', 00H, 's', 00H, 'ck8^', 00H, 090H, 0faH, 'Q!', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BO@OIFMIIBA@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$PP?$KN?$PP?$LP?$AA?$AA?$PP?z?$AA?$CB@
CONST SEGMENT
??_C@_1BO@OIFMIIBA@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$PP?$KN?$PP?$LP?$AA?$AA?$PP?z?$AA?$CB@ DB '['
DB 00H, '%', 00H, 'd', 00H, ']', 00H, '%', 00H, 's', 00H, '-', 00H
DB '%', 00H, 's', 00H, 0adH, 'e', 0bfH, '~', 00H, 090H, 0faH, 'Q!'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ?__LINE__Var@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4JA
_DATA SEGMENT
?__LINE__Var@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4JA DD 081H ; `CKeyList::RemoveAt_IO'::`1'::__LINE__Var
_DATA ENDS
; COMDAT ??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@
CONST SEGMENT
??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@ DB 'D:\Works\Corp'
DB 'sms_2010\SmsCenter\IOCP\KeyList.cpp', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0N@LNMKMNFF@RemoveAt_Key@
CONST SEGMENT
??_C@_0N@LNMKMNFF@RemoveAt_Key@ DB 'RemoveAt_Key', 00H ; `string'
CONST ENDS
; COMDAT ?__LINE__Var@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4JA
_DATA SEGMENT
?__LINE__Var@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4JA DD 06dH ; `CKeyList::RemoveAt_Key'::`1'::__LINE__Var
_DATA ENDS
; COMDAT ??_7CKeyList@@6B@
CONST SEGMENT
??_7CKeyList@@6B@ DQ FLAT:??_R4CKeyList@@6B@ ; CKeyList::`vftable'
DQ FLAT:??_ECKeyList@@UEAAPEAXI@Z
CONST 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 xdata
xdata SEGMENT
$unwind$??_GCKeyList@@UEAAPEAXI@Z DD 025031301H
DD 0b20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??1CKeyList@@UEAA@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??1CKeyList@@UEAA@XZ DB 040H
DD imagerel $ip2state$??1CKeyList@@UEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??1CKeyList@@UEAA@XZ DD 025030f19H
DD 0b20a230fH
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??1CKeyList@@UEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??0CKeyList@@QEAA@XZ DD 05030d01H
DD 0720a030dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ DD 025030f01H
DD 0d20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ DD 025030f01H
DD 0d20a230fH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 027H
DB 095H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DB 010H
DB 00H
DB 02H
DB 01cH
DB 02H
DB 014H
DB 04H
DB 'l'
DB 06H
DB 088H
DB 08H
DB 01cH
DB 04H
DB 086H
DB 02H
DB '&'
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DB 02eH
DD imagerel ?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DB 02eH
DD imagerel ?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DD imagerel $ip2state$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
DB 090H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA DD 020a19H
DD 05006520aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DB 08H
DB 00H
DB 00H
DB '\'
DB 02H
DB 0caH
DB 00H
DB 04H
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DB 02H
DB 00H
DD imagerel ?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DB 018H
DD imagerel $stateUnwindMap$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
DD imagerel $tryMap$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
DD imagerel $ip2state$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z DD 035042e19H
DD 0118331dH
DD 0500b034cH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
DD 01a5bH
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 028H
DW 01cbH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DB 010H
DB 00H
DB 02H
DB 01cH
DB 02H
DB 01aH
DB 04H
DB 'l'
DB 06H
DB 088H
DB 08H
DB 01cH
DB 04H
DB 092H
DB 02H
DB ','
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DB 02eH
DD imagerel ?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DB 02eH
DD imagerel ?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DD imagerel $ip2state$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
DB 090H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA DD 020a19H
DD 05006520aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DB 08H
DB 00H
DB 00H
DB '^'
DB 02H
DB 'i', 06H
DB 00H
DB 04H
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DB 02H
DB 00H
DD imagerel ?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DB 018H
DD imagerel $stateUnwindMap$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
DD imagerel $tryMap$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
DD imagerel $ip2state$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z DD 035052f19H
DD 0119331eH
DD 0700c038dH
DD 0500bH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
DD 01c5bH
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 022H
DB 0e2H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DB 010H
DB 00H
DB 02H
DB 01cH
DB 02H
DB 014H
DB 04H
DB 'l'
DB 06H
DB 088H
DB 08H
DB 01cH
DB 04H
DB 086H
DB 02H
DB 014H
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DB 02eH
DD imagerel ?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DB 02eH
DD imagerel ?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DD imagerel $ip2state$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
DB 090H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA DD 020a19H
DD 05006520aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Close_IO@CKeyList@@QEAAXXZ DB 08H
DB 00H
DB 00H
DB 'R'
DB 02H
DB 0ddH, 02H
DB 00H
DB 04H
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?Close_IO@CKeyList@@QEAAXXZ DB 02H
DB 00H
DD imagerel ?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?Close_IO@CKeyList@@QEAAXXZ DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?Close_IO@CKeyList@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?Close_IO@CKeyList@@QEAAXXZ DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Close_IO@CKeyList@@QEAAXXZ DB 018H
DD imagerel $stateUnwindMap$?Close_IO@CKeyList@@QEAAXXZ
DD imagerel $tryMap$?Close_IO@CKeyList@@QEAAXXZ
DD imagerel $ip2state$?Close_IO@CKeyList@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Close_IO@CKeyList@@QEAAXXZ DD 035042919H
DD 01133318H
DD 05006034eH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?Close_IO@CKeyList@@QEAAXXZ
DD 01a63H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z DB 06H
DB 00H
DB 00H
DB 089H, 03H
DB 02H
DB 0bcH
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z DB 02H
DB 0eH
DD imagerel ?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z DB 08H
DD imagerel $stateUnwindMap$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z
DD imagerel $ip2state$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z DD 035041711H
DD 01123317H
DD 0500b0014H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 022H
DB 02dH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DB 010H
DB 00H
DB 02H
DB 01cH
DB 02H
DB 014H
DB 04H
DB 'l'
DB 06H
DB 088H
DB 08H
DB 01cH
DB 04H
DB 086H
DB 02H
DB 014H
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DB 02eH
DD imagerel ?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DB 02eH
DD imagerel ?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DD imagerel $ip2state$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
DB 090H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA DD 020a19H
DD 05006520aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DB 02H
DB 00H
DD imagerel ?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DB 018H
DD imagerel $stateUnwindMap$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
DD imagerel $tryMap$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
DD imagerel $ip2state$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ DD 035042919H
DD 01133318H
DD 05006034cH
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
DD 01a53H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 00H
voltbl ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 022H
DW 01efH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA DB 010H
DB 00H
DB 02H
DB 01cH
DB 02H
DB 014H
DB 04H
DB 'l'
DB 06H
DB 088H
DB 08H
DB 01cH
DB 04H
DB 086H
DB 02H
DB 014H
DB 02H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA DB 08H
DB 08H
DB 0eH
DD imagerel ?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA
DB 02eH
DD imagerel ?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA
DB 02eH
DD imagerel ?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA DB 09H
DD imagerel $stateUnwindMap$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA
DD imagerel $ip2state$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA
DB 090H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA DD 020a19H
DD 05006520aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Close@CKeyList@@QEAAXXZ DB 06H
DB 00H
DB 00H
DB 'R'
DB 02H
DB 011H, 07H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$handlerMap$?Close@CKeyList@@QEAAXXZ DB 02H
DB 00H
DD imagerel ?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$tryMap$?Close@CKeyList@@QEAAXXZ DB 02H
DB 00H
DB 00H
DB 02H
DD imagerel $handlerMap$?Close@CKeyList@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$?Close@CKeyList@@QEAAXXZ DB 04H
DB 08H
DB 016H
DD imagerel ?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Close@CKeyList@@QEAAXXZ DB 018H
DD imagerel $stateUnwindMap$?Close@CKeyList@@QEAAXXZ
DD imagerel $tryMap$?Close@CKeyList@@QEAAXXZ
DD imagerel $ip2state$?Close@CKeyList@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Close@CKeyList@@QEAAXXZ DD 035042919H
DD 01133318H
DD 050060352H
DD imagerel __GSHandlerCheck_EH4
DD imagerel $cppxdata$?Close@CKeyList@@QEAAXXZ
DD 01a8bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ DD 025030f01H
DD 0d20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??_EIOCP_SQL@@QEAAPEAXI@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??_EIOCP_SQL@@QEAAPEAXI@Z DB 040H
DD imagerel $ip2state$??_EIOCP_SQL@@QEAAPEAXI@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??_EIOCP_SQL@@QEAAPEAXI@Z DD 025031319H
DD 0b20e2313H
DD 0500aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??_EIOCP_SQL@@QEAAPEAXI@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??1IOCP_SQL@@QEAA@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$??1IOCP_SQL@@QEAA@XZ DB 02H
DB 0eH
DD imagerel ?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??1IOCP_SQL@@QEAA@XZ DB 048H
DD imagerel $stateUnwindMap$??1IOCP_SQL@@QEAA@XZ
DD imagerel $ip2state$??1IOCP_SQL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??1IOCP_SQL@@QEAA@XZ DD 025030f11H
DD 0b20a230fH
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??1IOCP_SQL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??0IOCP_SQL@@QEAA@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$??0IOCP_SQL@@QEAA@XZ DB 02H
DB 0eH
DD imagerel ?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??0IOCP_SQL@@QEAA@XZ DB 08H
DD imagerel $stateUnwindMap$??0IOCP_SQL@@QEAA@XZ
DD imagerel $ip2state$??0IOCP_SQL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??0IOCP_SQL@@QEAA@XZ DD 025030f11H
DD 0b20a230fH
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??0IOCP_SQL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetID@CAdoConnection@@QEAAXJ@Z DD 05031101H
DD 0720e0311H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DB 040H
DD imagerel $ip2state$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DD 025030b19H
DD 0b206230bH
DD 05002H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DB 040H
DD imagerel $ip2state$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DD 025030e19H
DD 0b209230eH
DD 05005H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z DD 025031401H
DD 0d20f2314H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z DD 025031c01H
DD 0f217231cH
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z DD 025031301H
DD 0d20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD 025031401H
DD 0b20f2314H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H
DB 0eH
DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 048H
DD imagerel $stateUnwindMap$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
DD imagerel $ip2state$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD 025030f11H
DD 0b20a230fH
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA DD 020601H
DD 050023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DB 06H
DB 00H
DB 00H
DB 'L'
DB 02H
DB 'D'
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DB 02H
DB 0eH
DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DB 08H
DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z DD 025031411H
DD 0b20f2314H
DD 0500bH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 025031301H
DD 0b20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 025031601H
DD 0f2112316H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 025031301H
DD 0d20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z DD 025031301H
DD 0d20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ DD 05030d01H
DD 0720a030dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 025041601H
DD 01112316H
DD 0500a0012H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z DD 025031401H
DD 0b20f2314H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ DD 025030b01H
DD 0b206230bH
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DB 040H
DD imagerel $ip2state$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DD 025030f19H
DD 0b20a230fH
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DB 040H
DD imagerel $ip2state$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DD 025031e19H
DD 0b219231eH
DD 05015H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD 025031c01H
DD 0f217231cH
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD 025031401H
DD 0b20f2314H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z DD 025031301H
DD 0b20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ DD 05030d01H
DD 0720a030dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD 025030f01H
DD 0b20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z DD 025031301H
DD 0b20e2313H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD 025030f01H
DD 0b20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DB 040H
DD imagerel $ip2state$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DD 025031219H
DD 0f20d2312H
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD 025031401H
DD 0b20f2314H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ DD 025030f01H
DD 0d20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD 025031701H
DD 0f2122317H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z DD 025031d01H
DD 0b218231dH
DD 05014H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z DD 05031101H
DD 0720e0311H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DB 040H
DD imagerel $ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DD 025030f19H
DD 0b20a230fH
DD 05006H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 01cH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?Release@CStringData@ATL@@QEAAXXZ DD 025030f01H
DD 0d20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?IsShared@CStringData@ATL@@QEBA_NXZ DD 05030d01H
DD 0920a030dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?IsLocked@CStringData@ATL@@QEBA_NXZ DD 05030d01H
DD 0920a030dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?data@CStringData@ATL@@QEAAPEAXXZ DD 05030d01H
DD 0720a030dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DB 040H
DD imagerel $ip2state$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DD 025031319H
DD 0d20e2313H
DD 0500aH
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$ip2state$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DB 02H
DB 00H
DB 00H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$cppxdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DB 040H
DD imagerel $ip2state$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DD 025041c19H
DD 0117231cH
DD 050100012H
DD imagerel __CxxFrameHandler4
DD imagerel $cppxdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AtlStrLen@ATL@@YAHPEB_W@Z DD 025030f01H
DD 0b20a230fH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z DD 025031e01H
DD 0b219231eH
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AtlThrowImpl@ATL@@YAXJ@Z DD 025030e01H
DD 0b209230eH
DD 05005H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?AfxCrtErrorCheck@@YAHH@Z DD 025030e01H
DD 0d209230eH
DD 05005H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$memmove_s DD 025031e01H
DD 0d219231eH
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$memcpy_s DD 025031e01H
DD 0d219231eH
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_swprintf DD 025032101H
DD 0f21c2321H
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$__vswprintf_l DD 035031e01H
DD 0d219331eH
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_vswprintf_l DD 035031e01H
DD 0d219331eH
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_vswprintf_c_l DD 035032101H
DD 0f21c3321H
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$__local_stdio_printf_options DD 05030901H
DD 072060309H
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z DD 05031701H
DD 072140317H
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z DD 05031201H
DD 0720f0312H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAX_K@Z DD 05031201H
DD 0720f0312H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$?__empty_global_delete@@YAXPEAX@Z DD 05030d01H
DD 0720a030dH
DD 05006H
xdata ENDS
; Function compile flags: /Odtp /ZI
; COMDAT ??_GCKeyList@@UEAAPEAXI@Z
_TEXT SEGMENT
this$ = 80
__flags$ = 88
??_GCKeyList@@UEAAPEAXI@Z PROC ; CKeyList::`scalar deleting destructor', COMDAT
$LN4:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 60 sub rsp, 96 ; 00000060H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00017 e8 00 00 00 00 call ??1CKeyList@@UEAA@XZ ; CKeyList::~CKeyList
0001c 8b 45 58 mov eax, DWORD PTR __flags$[rbp]
0001f 83 e0 01 and eax, 1
00022 85 c0 test eax, eax
00024 74 0e je SHORT $LN2@scalar
00026 ba 40 00 00 00 mov edx, 64 ; 00000040H
0002b 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0002f e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete
$LN2@scalar:
00034 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00038 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0003c 5d pop rbp
0003d c3 ret 0
??_GCKeyList@@UEAAPEAXI@Z ENDP ; CKeyList::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ??1CKeyList@@UEAA@XZ
_TEXT SEGMENT
this$ = 80
??1CKeyList@@UEAA@XZ PROC ; CKeyList::~CKeyList, COMDAT
; 32 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_7CKeyList@@6B@
0001a 48 89 08 mov QWORD PTR [rax], rcx
; 33 : Close();
0001d 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00021 e8 00 00 00 00 call ?Close@CKeyList@@QEAAXXZ ; CKeyList::Close
00026 90 npad 1
; 34 : }
00027 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0002b 5d pop rbp
0002c c3 ret 0
??1CKeyList@@UEAA@XZ ENDP ; CKeyList::~CKeyList
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ??0CKeyList@@QEAA@XZ
_TEXT SEGMENT
this$ = 80
??0CKeyList@@QEAA@XZ PROC ; CKeyList::CKeyList, COMDAT
; 21 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ec mov rbp, rsp
0000d 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00011 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_7CKeyList@@6B@
00018 48 89 08 mov QWORD PTR [rax], rcx
; 22 : m_IO = NULL;
0001b 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
0001f 48 c7 40 18 00
00 00 00 mov QWORD PTR [rax+24], 0
; 23 : m_Key = NULL;
00027 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
0002b 48 c7 40 08 00
00 00 00 mov QWORD PTR [rax+8], 0
; 24 : m_Process = NULL;
00033 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00037 48 c7 40 30 00
00 00 00 mov QWORD PTR [rax+48], 0
; 25 : m_SQL = NULL;
0003f 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00043 48 c7 40 28 00
00 00 00 mov QWORD PTR [rax+40], 0
; 26 : m_IOIndex = 0;
0004b 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
0004f c7 40 20 00 00
00 00 mov DWORD PTR [rax+32], 0
; 27 : m_KeyIndex = 0;
00056 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
0005a c7 40 10 00 00
00 00 mov DWORD PTR [rax+16], 0
; 28 : m_Process = 0;
00061 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00065 48 c7 40 30 00
00 00 00 mov QWORD PTR [rax+48], 0
; 29 : }
0006d 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00071 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00075 5d pop rbp
00076 c3 ret 0
??0CKeyList@@QEAA@XZ ENDP ; CKeyList::CKeyList
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ
_TEXT SEGMENT
i$1 = 0
tv168 = 68
tv129 = 68
this$ = 96
?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ PROC ; CKeyList::GetBlank_Key, COMDAT
; 37 : {
$LN15:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 70 sub rsp, 112 ; 00000070H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 38 : //<2F><>β<EFBFBD><CEB2><EFBFBD>ҿ<EFBFBD><D2BF>е<EFBFBD>Key
; 39 : for ( int i=m_KeyIndex ; i<MAX_LOGINUSER ; i++ )
0000f 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00013 8b 40 10 mov eax, DWORD PTR [rax+16]
00016 89 45 00 mov DWORD PTR i$1[rbp], eax
00019 eb 08 jmp SHORT $LN4@GetBlank_K
$LN2@GetBlank_K:
0001b 8b 45 00 mov eax, DWORD PTR i$1[rbp]
0001e ff c0 inc eax
00020 89 45 00 mov DWORD PTR i$1[rbp], eax
$LN4@GetBlank_K:
00023 81 7d 00 e8 03
00 00 cmp DWORD PTR i$1[rbp], 1000 ; 000003e8H
0002a 0f 8d a2 00 00
00 jge $LN3@GetBlank_K
; 40 : {
; 41 : if ( (m_Key[i].socket == NULL || m_Key[i].socket==INVALID_SOCKET) &&
00030 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00034 48 6b c0 10 imul rax, rax, 16
00038 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0003c 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
00040 48 83 3c 01 00 cmp QWORD PTR [rcx+rax], 0
00045 74 17 je SHORT $LN9@GetBlank_K
00047 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0004b 48 6b c0 10 imul rax, rax, 16
0004f 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00053 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
00057 48 83 3c 01 ff cmp QWORD PTR [rcx+rax], -1
0005c 75 6f jne SHORT $LN8@GetBlank_K
$LN9@GetBlank_K:
0005e 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00062 48 6b c0 10 imul rax, rax, 16
00066 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0006a 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
0006e 83 7c 01 08 00 cmp DWORD PTR [rcx+rax+8], 0
00073 75 58 jne SHORT $LN8@GetBlank_K
; 42 : m_Key[i].lRandID==0)
; 43 : {
; 44 : m_KeyIndex = i+1;
00075 8b 45 00 mov eax, DWORD PTR i$1[rbp]
00078 ff c0 inc eax
0007a 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0007e 89 41 10 mov DWORD PTR [rcx+16], eax
; 45 : if ( m_KeyIndex>=MAX_LOGINUSER )
00081 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00085 81 78 10 e8 03
00 00 cmp DWORD PTR [rax+16], 1000 ; 000003e8H
0008c 7c 0b jl SHORT $LN10@GetBlank_K
; 46 : m_KeyIndex = 0;
0008e 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00092 c7 40 10 00 00
00 00 mov DWORD PTR [rax+16], 0
$LN10@GetBlank_K:
; 47 : m_Key[i].lRandID = rand();
00099 e8 00 00 00 00 call rand
0009e 89 45 44 mov DWORD PTR tv129[rbp], eax
000a1 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000a5 48 6b c0 10 imul rax, rax, 16
000a9 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000ad 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
000b1 8b 55 44 mov edx, DWORD PTR tv129[rbp]
000b4 89 54 01 08 mov DWORD PTR [rcx+rax+8], edx
; 48 : return &m_Key[i];
000b8 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000bc 48 6b c0 10 imul rax, rax, 16
000c0 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000c4 48 03 41 08 add rax, QWORD PTR [rcx+8]
000c8 e9 d4 00 00 00 jmp $LN1@GetBlank_K
$LN8@GetBlank_K:
; 49 : }
; 50 : }
000cd e9 49 ff ff ff jmp $LN2@GetBlank_K
$LN3@GetBlank_K:
; 51 :
; 52 : //<2F><>ͷ<EFBFBD><CDB7><EFBFBD>ҿ<EFBFBD><D2BF>е<EFBFBD>Key
; 53 : for ( i=0 ; i<m_KeyIndex && i<MAX_LOGINUSER ; i++ )
000d2 c7 45 00 00 00
00 00 mov DWORD PTR i$1[rbp], 0
000d9 eb 08 jmp SHORT $LN7@GetBlank_K
$LN5@GetBlank_K:
000db 8b 45 00 mov eax, DWORD PTR i$1[rbp]
000de ff c0 inc eax
000e0 89 45 00 mov DWORD PTR i$1[rbp], eax
$LN7@GetBlank_K:
000e3 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
000e7 8b 40 10 mov eax, DWORD PTR [rax+16]
000ea 39 45 00 cmp DWORD PTR i$1[rbp], eax
000ed 0f 8d ac 00 00
00 jge $LN6@GetBlank_K
000f3 81 7d 00 e8 03
00 00 cmp DWORD PTR i$1[rbp], 1000 ; 000003e8H
000fa 0f 8d 9f 00 00
00 jge $LN6@GetBlank_K
; 54 : {
; 55 : if ( (m_Key[i].socket == NULL || m_Key[i].socket==INVALID_SOCKET) &&
00100 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00104 48 6b c0 10 imul rax, rax, 16
00108 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0010c 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
00110 48 83 3c 01 00 cmp QWORD PTR [rcx+rax], 0
00115 74 17 je SHORT $LN12@GetBlank_K
00117 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0011b 48 6b c0 10 imul rax, rax, 16
0011f 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00123 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
00127 48 83 3c 01 ff cmp QWORD PTR [rcx+rax], -1
0012c 75 6c jne SHORT $LN11@GetBlank_K
$LN12@GetBlank_K:
0012e 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00132 48 6b c0 10 imul rax, rax, 16
00136 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0013a 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
0013e 83 7c 01 08 00 cmp DWORD PTR [rcx+rax+8], 0
00143 75 55 jne SHORT $LN11@GetBlank_K
; 56 : m_Key[i].lRandID==0)
; 57 : {
; 58 : m_KeyIndex = i+1;
00145 8b 45 00 mov eax, DWORD PTR i$1[rbp]
00148 ff c0 inc eax
0014a 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0014e 89 41 10 mov DWORD PTR [rcx+16], eax
; 59 : if ( m_KeyIndex>=MAX_LOGINUSER )
00151 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00155 81 78 10 e8 03
00 00 cmp DWORD PTR [rax+16], 1000 ; 000003e8H
0015c 7c 0b jl SHORT $LN13@GetBlank_K
; 60 : m_KeyIndex = 0;
0015e 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00162 c7 40 10 00 00
00 00 mov DWORD PTR [rax+16], 0
$LN13@GetBlank_K:
; 61 : m_Key[i].lRandID = rand();
00169 e8 00 00 00 00 call rand
0016e 89 45 44 mov DWORD PTR tv168[rbp], eax
00171 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00175 48 6b c0 10 imul rax, rax, 16
00179 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0017d 48 8b 49 08 mov rcx, QWORD PTR [rcx+8]
00181 8b 55 44 mov edx, DWORD PTR tv168[rbp]
00184 89 54 01 08 mov DWORD PTR [rcx+rax+8], edx
; 62 : return &m_Key[i];
00188 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0018c 48 6b c0 10 imul rax, rax, 16
00190 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00194 48 03 41 08 add rax, QWORD PTR [rcx+8]
00198 eb 07 jmp SHORT $LN1@GetBlank_K
$LN11@GetBlank_K:
; 63 : }
; 64 : }
0019a e9 3c ff ff ff jmp $LN5@GetBlank_K
$LN6@GetBlank_K:
; 65 : return NULL;
0019f 33 c0 xor eax, eax
$LN1@GetBlank_K:
; 66 : }
001a1 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
001a5 5d pop rbp
001a6 c3 ret 0
?GetBlank_Key@CKeyList@@QEAAPEAUIOCP_KEY@@XZ ENDP ; CKeyList::GetBlank_Key
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ
_TEXT SEGMENT
i$1 = 0
tv188 = 68
tv129 = 68
this$ = 96
?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ PROC ; CKeyList::GetBlank_IO, COMDAT
; 69 : {
$LN15:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 70 sub rsp, 112 ; 00000070H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 70 : //<2F><>β<EFBFBD><CEB2><EFBFBD>ҿ<EFBFBD><D2BF>е<EFBFBD>IO
; 71 : for ( int i=m_IOIndex ; i<MAX_LOGINUSER ; i++ )
0000f 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00013 8b 40 20 mov eax, DWORD PTR [rax+32]
00016 89 45 00 mov DWORD PTR i$1[rbp], eax
00019 eb 08 jmp SHORT $LN4@GetBlank_I
$LN2@GetBlank_I:
0001b 8b 45 00 mov eax, DWORD PTR i$1[rbp]
0001e ff c0 inc eax
00020 89 45 00 mov DWORD PTR i$1[rbp], eax
$LN4@GetBlank_I:
00023 81 7d 00 e8 03
00 00 cmp DWORD PTR i$1[rbp], 1000 ; 000003e8H
0002a 0f 8d 33 01 00
00 jge $LN3@GetBlank_I
; 72 : {
; 73 : if ( (m_IO[i].socket == NULL || m_IO[i].socket==INVALID_SOCKET) &&
00030 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00034 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
0003b 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0003f 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
00043 48 83 7c 01 20
00 cmp QWORD PTR [rcx+rax+32], 0
00049 74 1f je SHORT $LN9@GetBlank_I
0004b 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0004f 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00056 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0005a 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
0005e 48 83 7c 01 20
ff cmp QWORD PTR [rcx+rax+32], -1
00064 0f 85 f4 00 00
00 jne $LN8@GetBlank_I
$LN9@GetBlank_I:
0006a 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0006e 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00075 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00079 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
0007d 83 7c 01 30 00 cmp DWORD PTR [rcx+rax+48], 0
00082 0f 85 d6 00 00
00 jne $LN8@GetBlank_I
; 74 : m_IO[i].lRandID==0)
; 75 : {
; 76 : m_IOIndex = i+1;
00088 8b 45 00 mov eax, DWORD PTR i$1[rbp]
0008b ff c0 inc eax
0008d 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00091 89 41 20 mov DWORD PTR [rcx+32], eax
; 77 : if ( m_IOIndex>=MAX_LOGINUSER )
00094 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00098 81 78 20 e8 03
00 00 cmp DWORD PTR [rax+32], 1000 ; 000003e8H
0009f 7c 0b jl SHORT $LN10@GetBlank_I
; 78 : m_IOIndex = 0;
000a1 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
000a5 c7 40 20 00 00
00 00 mov DWORD PTR [rax+32], 0
$LN10@GetBlank_I:
; 79 : m_IO[i].lRandID = rand();
000ac e8 00 00 00 00 call rand
000b1 89 45 44 mov DWORD PTR tv129[rbp], eax
000b4 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000b8 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
000bf 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000c3 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
000c7 8b 55 44 mov edx, DWORD PTR tv129[rbp]
000ca 89 54 01 30 mov DWORD PTR [rcx+rax+48], edx
; 80 : // m_IO[i].IOS.lRandID=m_IO[i].lRandID;
; 81 :
; 82 : m_IO[i].m_bCheckup = true;
000ce 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000d2 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
000d9 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000dd 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
000e1 c7 84 01 d0 01
00 00 01 00 00
00 mov DWORD PTR [rcx+rax+464], 1
; 83 : m_IO[i].m_bCompress = SENDDATA_COMPRESS; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Ƿ<EFBFBD>ѹ<EFBFBD><D1B9>
000ec 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000f0 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
000f7 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000fb 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
000ff c7 84 01 d4 01
00 00 00 00 00
00 mov DWORD PTR [rcx+rax+468], 0
; 84 : m_IO[i].m_lAgentID =-100; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID <20><>Ĭ<EFBFBD><C4AC>Ϊ-100,δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
0010a 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0010e 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00115 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00119 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
0011d c7 84 01 b4 01
00 00 9c ff ff
ff mov DWORD PTR [rcx+rax+436], -100 ; ffffffffffffff9cH
; 85 : m_IO[i].m_lAgentType=-100; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>Ĭ<EFBFBD><C4AC>Ϊ-100,δ֪<CEB4><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
00128 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0012c 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00133 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00137 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
0013b c7 84 01 bc 01
00 00 9c ff ff
ff mov DWORD PTR [rcx+rax+444], -100 ; ffffffffffffff9cH
; 86 :
; 87 : return &m_IO[i];
00146 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0014a 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00151 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00155 48 03 41 18 add rax, QWORD PTR [rcx+24]
00159 e9 e5 00 00 00 jmp $LN1@GetBlank_I
$LN8@GetBlank_I:
; 88 : }
; 89 : }
0015e e9 b8 fe ff ff jmp $LN2@GetBlank_I
$LN3@GetBlank_I:
; 90 :
; 91 : //<2F><>ͷ<EFBFBD><CDB7><EFBFBD>ҿ<EFBFBD><D2BF>е<EFBFBD>IO
; 92 : for ( i=0 ; i<m_IOIndex && i<MAX_LOGINUSER ; i++ )
00163 c7 45 00 00 00
00 00 mov DWORD PTR i$1[rbp], 0
0016a eb 08 jmp SHORT $LN7@GetBlank_I
$LN5@GetBlank_I:
0016c 8b 45 00 mov eax, DWORD PTR i$1[rbp]
0016f ff c0 inc eax
00171 89 45 00 mov DWORD PTR i$1[rbp], eax
$LN7@GetBlank_I:
00174 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00178 8b 40 20 mov eax, DWORD PTR [rax+32]
0017b 39 45 00 cmp DWORD PTR i$1[rbp], eax
0017e 0f 8d bd 00 00
00 jge $LN6@GetBlank_I
00184 81 7d 00 e8 03
00 00 cmp DWORD PTR i$1[rbp], 1000 ; 000003e8H
0018b 0f 8d b0 00 00
00 jge $LN6@GetBlank_I
; 93 : {
; 94 : if ( (m_IO[i].socket == NULL || m_IO[i].socket==INVALID_SOCKET) &&
00191 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00195 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
0019c 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
001a0 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
001a4 48 83 7c 01 20
00 cmp QWORD PTR [rcx+rax+32], 0
001aa 74 1b je SHORT $LN12@GetBlank_I
001ac 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
001b0 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
001b7 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
001bb 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
001bf 48 83 7c 01 20
ff cmp QWORD PTR [rcx+rax+32], -1
001c5 75 75 jne SHORT $LN11@GetBlank_I
$LN12@GetBlank_I:
001c7 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
001cb 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
001d2 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
001d6 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
001da 83 7c 01 30 00 cmp DWORD PTR [rcx+rax+48], 0
001df 75 5b jne SHORT $LN11@GetBlank_I
; 95 : m_IO[i].lRandID==0 )
; 96 : {
; 97 : m_IOIndex = i+1;
001e1 8b 45 00 mov eax, DWORD PTR i$1[rbp]
001e4 ff c0 inc eax
001e6 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
001ea 89 41 20 mov DWORD PTR [rcx+32], eax
; 98 : if ( m_IOIndex>=MAX_LOGINUSER )
001ed 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
001f1 81 78 20 e8 03
00 00 cmp DWORD PTR [rax+32], 1000 ; 000003e8H
001f8 7c 0b jl SHORT $LN13@GetBlank_I
; 99 : m_IOIndex = 0;
001fa 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
001fe c7 40 20 00 00
00 00 mov DWORD PTR [rax+32], 0
$LN13@GetBlank_I:
; 100 : m_IO[i].lRandID = rand();
00205 e8 00 00 00 00 call rand
0020a 89 45 44 mov DWORD PTR tv188[rbp], eax
0020d 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00211 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00218 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0021c 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
00220 8b 55 44 mov edx, DWORD PTR tv188[rbp]
00223 89 54 01 30 mov DWORD PTR [rcx+rax+48], edx
; 101 : // m_IO[i].IOS.lRandID=m_IO[i].lRandID;
; 102 : return &m_IO[i];
00227 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0022b 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00232 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00236 48 03 41 18 add rax, QWORD PTR [rcx+24]
0023a eb 07 jmp SHORT $LN1@GetBlank_I
$LN11@GetBlank_I:
; 103 : }
; 104 : }
0023c e9 2b ff ff ff jmp $LN5@GetBlank_I
$LN6@GetBlank_I:
; 105 : return NULL;
00241 33 c0 xor eax, eax
$LN1@GetBlank_I:
; 106 : }
00243 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00247 5d pop rbp
00248 c3 ret 0
?GetBlank_IO@CKeyList@@QEAAPEAUIOCP_IO@@XZ ENDP ; CKeyList::GetBlank_IO
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z
_TEXT SEGMENT
NXlog$1 = 0
i$2 = 6096
$T3 = 6616
$T4 = 6624
$T5 = 6632
$T6 = 6640
tv76 = 6648
tv140 = 6656
tv84 = 6664
tv144 = 6672
tv142 = 6680
tv130 = 6688
__$ArrayPad$ = 6696
this$ = 6720
pKey$ = 6728
?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z PROC ; CKeyList::RemoveAt_Key, COMDAT
; 109 : {
$LN15:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b b8 60 1a 00 00 mov eax, 6752 ; 00001a60H
00010 e8 00 00 00 00 call __chkstk
00015 48 2b e0 sub rsp, rax
00018 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001d 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00024 48 33 c5 xor rax, rbp
00027 48 89 85 28 1a
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
; 110 : try
; 111 : {
; 112 : if ( pKey )
0002e 48 83 bd 48 1a
00 00 00 cmp QWORD PTR pKey$[rbp], 0
00036 74 5b je SHORT $LN3@RemoveAt_K
; 113 : {
; 114 : if ( pKey< &m_Key[0] || pKey>&m_Key[MAX_LOGINUSER] )
00038 b8 10 00 00 00 mov eax, 16
0003d 48 6b c0 00 imul rax, rax, 0
00041 48 8b 8d 40 1a
00 00 mov rcx, QWORD PTR this$[rbp]
00048 48 03 41 08 add rax, QWORD PTR [rcx+8]
0004c 48 39 85 48 1a
00 00 cmp QWORD PTR pKey$[rbp], rax
00053 72 20 jb SHORT $LN5@RemoveAt_K
00055 b8 10 00 00 00 mov eax, 16
0005a 48 69 c0 e8 03
00 00 imul rax, rax, 1000 ; 000003e8H
00061 48 8b 8d 40 1a
00 00 mov rcx, QWORD PTR this$[rbp]
00068 48 03 41 08 add rax, QWORD PTR [rcx+8]
0006c 48 39 85 48 1a
00 00 cmp QWORD PTR pKey$[rbp], rax
00073 76 02 jbe SHORT $LN4@RemoveAt_K
$LN5@RemoveAt_K:
; 115 : return ;
00075 eb 1e jmp SHORT $LN1@RemoveAt_K
$LN4@RemoveAt_K:
; 116 :
; 117 : //closesocket(pKey->socket);
; 118 : pKey->socket = 0;
00077 48 8b 85 48 1a
00 00 mov rax, QWORD PTR pKey$[rbp]
0007e 48 c7 00 00 00
00 00 mov QWORD PTR [rax], 0
; 119 : pKey->lRandID = 0;
00085 48 8b 85 48 1a
00 00 mov rax, QWORD PTR pKey$[rbp]
0008c c7 40 08 00 00
00 00 mov DWORD PTR [rax+8], 0
$LN3@RemoveAt_K:
00093 eb 00 jmp SHORT $LN1@RemoveAt_K
$LN13@RemoveAt_K:
$LN1@RemoveAt_K:
; 120 : }
; 121 : }catch(...)
; 122 : {
; 123 : LOG_APPERROR(_T("T"));
; 124 : int i=0;
; 125 : }
; 126 : }
00095 48 8b 8d 28 1a
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0009c 48 33 cd xor rcx, rbp
0009f e8 00 00 00 00 call __security_check_cookie
000a4 48 8d a5 30 1a
00 00 lea rsp, QWORD PTR [rbp+6704]
000ab 5d pop rbp
000ac c3 ret 0
000ad cc int 3
?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z ENDP ; CKeyList::RemoveAt_Key
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
i$2 = 6096
$T3 = 6616
$T4 = 6624
$T5 = 6632
$T6 = 6640
tv76 = 6648
tv140 = 6656
tv84 = 6664
tv144 = 6672
tv142 = 6680
tv130 = 6688
__$ArrayPad$ = 6696
this$ = 6720
pKey$ = 6728
?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA PROC ; `CKeyList::RemoveAt_Key'::`1'::catch$3
; 122 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 30 sub rsp, 48 ; 00000030H
0000a 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
__catch$?RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z$0:
; 123 : LOG_APPERROR(_T("T"));
0000e 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
00012 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
00017 90 npad 1
00018 48 8d 85 d8 19
00 00 lea rax, QWORD PTR $T3[rbp]
0001f 48 89 85 e0 19
00 00 mov QWORD PTR $T4[rbp], rax
00026 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
0002d 48 8b 8d e0 19
00 00 mov rcx, QWORD PTR $T4[rbp]
00034 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00039 48 89 85 f8 19
00 00 mov QWORD PTR tv76[rbp], rax
00040 48 8b 85 f8 19
00 00 mov rax, QWORD PTR tv76[rbp]
00047 48 89 85 00 1a
00 00 mov QWORD PTR tv140[rbp], rax
0004e 48 8b 85 00 1a
00 00 mov rax, QWORD PTR tv140[rbp]
00055 48 89 85 08 1a
00 00 mov QWORD PTR tv84[rbp], rax
0005c 48 8d 85 e8 19
00 00 lea rax, QWORD PTR $T5[rbp]
00063 48 89 85 f0 19
00 00 mov QWORD PTR $T6[rbp], rax
0006a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
00071 48 8b 8d f0 19
00 00 mov rcx, QWORD PTR $T6[rbp]
00078 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0007d 48 89 85 10 1a
00 00 mov QWORD PTR tv144[rbp], rax
00084 48 8b 85 10 1a
00 00 mov rax, QWORD PTR tv144[rbp]
0008b 48 89 85 18 1a
00 00 mov QWORD PTR tv142[rbp], rax
00092 48 8b 85 18 1a
00 00 mov rax, QWORD PTR tv142[rbp]
00099 48 89 85 20 1a
00 00 mov QWORD PTR tv130[rbp], rax
000a0 4c 8b 85 08 1a
00 00 mov r8, QWORD PTR tv84[rbp]
000a7 48 8b 95 20 1a
00 00 mov rdx, QWORD PTR tv130[rbp]
000ae 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
000b2 e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
000b7 8b 05 00 00 00
00 mov eax, DWORD PTR ?__LINE__Var@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4JA
000bd 83 c0 0e add eax, 14
000c0 89 44 24 20 mov DWORD PTR [rsp+32], eax
000c4 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??_C@_0N@LNMKMNFF@RemoveAt_Key@
000cb 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@
000d2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_13JKNELIBG@?$AAT@
000d9 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
000dd e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000e2 90 npad 1
000e3 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
000e7 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
; 124 : int i=0;
000ec c7 85 d0 17 00
00 00 00 00 00 mov DWORD PTR i$2[rbp], 0
; 125 : }
000f6 48 8d 05 00 00
00 00 lea rax, $LN13@catch$3
000fd 48 83 c4 30 add rsp, 48 ; 00000030H
00101 5d pop rbp
00102 c3 ret 0
00103 cc int 3
?catch$3@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA ENDP ; `CKeyList::RemoveAt_Key'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
i$2 = 6096
$T3 = 6616
$T4 = 6624
$T5 = 6632
$T6 = 6640
tv76 = 6648
tv140 = 6656
tv84 = 6664
tv144 = 6672
tv142 = 6680
tv130 = 6688
__$ArrayPad$ = 6696
this$ = 6720
pKey$ = 6728
?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA PROC ; `CKeyList::RemoveAt_Key'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
0000e e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00013 48 83 c4 20 add rsp, 32 ; 00000020H
00017 5d pop rbp
00018 c3 ret 0
?dtor$0@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA ENDP ; `CKeyList::RemoveAt_Key'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
i$2 = 6096
$T3 = 6616
$T4 = 6624
$T5 = 6632
$T6 = 6640
tv76 = 6648
tv140 = 6656
tv84 = 6664
tv144 = 6672
tv142 = 6680
tv130 = 6688
__$ArrayPad$ = 6696
this$ = 6720
pKey$ = 6728
?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA PROC ; `CKeyList::RemoveAt_Key'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d e0 19
00 00 mov rcx, QWORD PTR $T4[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$1@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA ENDP ; `CKeyList::RemoveAt_Key'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
i$2 = 6096
$T3 = 6616
$T4 = 6624
$T5 = 6632
$T6 = 6640
tv76 = 6648
tv140 = 6656
tv84 = 6664
tv144 = 6672
tv142 = 6680
tv130 = 6688
__$ArrayPad$ = 6696
this$ = 6720
pKey$ = 6728
?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA PROC ; `CKeyList::RemoveAt_Key'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d f0 19
00 00 mov rcx, QWORD PTR $T6[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$2@?0??RemoveAt_Key@CKeyList@@QEAAXPEAUIOCP_KEY@@@Z@4HA ENDP ; `CKeyList::RemoveAt_Key'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z
_TEXT SEGMENT
szMsg$1 = 0
NXlog$2 = 512
i$3 = 6608
$T4 = 7128
$T5 = 7136
$T6 = 7144
$T7 = 7152
tv150 = 7160
tv143 = 7160
tv182 = 7168
tv158 = 7176
tv186 = 7184
tv184 = 7192
tv172 = 7200
__$ArrayPad$ = 7208
this$ = 7248
pIO$ = 7256
?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z PROC ; CKeyList::RemoveAt_IO, COMDAT
; 129 : {
$LN19:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 57 push rdi
0000c b8 68 1c 00 00 mov eax, 7272 ; 00001c68H
00011 e8 00 00 00 00 call __chkstk
00016 48 2b e0 sub rsp, rax
00019 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001e 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00025 48 33 c5 xor rax, rbp
00028 48 89 85 28 1c
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
; 130 : try
; 131 : {
; 132 : if ( pIO )
0002f 48 83 bd 58 1c
00 00 00 cmp QWORD PTR pIO$[rbp], 0
00037 0f 84 8c 01 00
00 je $LN3@RemoveAt_I
; 133 : {
; 134 : if ( pIO< &m_IO[0] || pIO>&m_IO[MAX_LOGINUSER] )
0003d b8 d0 df 06 00 mov eax, 450512 ; 0006dfd0H
00042 48 6b c0 00 imul rax, rax, 0
00046 48 8b 8d 50 1c
00 00 mov rcx, QWORD PTR this$[rbp]
0004d 48 03 41 18 add rax, QWORD PTR [rcx+24]
00051 48 39 85 58 1c
00 00 cmp QWORD PTR pIO$[rbp], rax
00058 72 20 jb SHORT $LN5@RemoveAt_I
0005a b8 d0 df 06 00 mov eax, 450512 ; 0006dfd0H
0005f 48 69 c0 e8 03
00 00 imul rax, rax, 1000 ; 000003e8H
00066 48 8b 8d 50 1c
00 00 mov rcx, QWORD PTR this$[rbp]
0006d 48 03 41 18 add rax, QWORD PTR [rcx+24]
00071 48 39 85 58 1c
00 00 cmp QWORD PTR pIO$[rbp], rax
00078 76 05 jbe SHORT $LN4@RemoveAt_I
$LN5@RemoveAt_I:
; 135 : return ;
0007a e9 4c 01 00 00 jmp $LN1@RemoveAt_I
$LN4@RemoveAt_I:
; 136 :
; 137 : pIO->socket = 0;
0007f 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
00086 48 c7 40 20 00
00 00 00 mov QWORD PTR [rax+32], 0
; 138 : pIO->lRandID= 0;
0008e 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
00095 c7 40 30 00 00
00 00 mov DWORD PTR [rax+48], 0
; 139 : // pIO->IOS.lRandID = 0;
; 140 :
; 141 : if ( pIO->m_lUserID>0 )
0009c 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
000a3 83 b8 b0 01 00
00 00 cmp DWORD PTR [rax+432], 0
000aa 0f 8e 04 01 00
00 jle $LN6@RemoveAt_I
; 142 : {
; 143 : TCHAR szMsg[256]={0};
000b0 48 8d 45 00 lea rax, QWORD PTR szMsg$1[rbp]
000b4 48 8b f8 mov rdi, rax
000b7 33 c0 xor eax, eax
000b9 b9 00 02 00 00 mov ecx, 512 ; 00000200H
000be f3 aa rep stosb
; 144 : //<2F>˳<EFBFBD>
; 145 : if ( pIO->m_lID==199992 ) //<2F><><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>
000c0 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
000c7 81 b8 e4 01 00
00 38 0d 03 00 cmp DWORD PTR [rax+484], 199992 ; 00030d38H
000d1 75 43 jne SHORT $LN7@RemoveAt_I
; 146 : _stprintf( szMsg , _T("[%d]%s-%s<><73><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>!") , pIO->m_lLocalPort,pIO->m_szCorpName,pIO->m_szLoginName);
000d3 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
000da 48 05 64 01 00
00 add rax, 356 ; 00000164H
000e0 48 8b 8d 58 1c
00 00 mov rcx, QWORD PTR pIO$[rbp]
000e7 48 81 c1 a4 00
00 00 add rcx, 164 ; 000000a4H
000ee 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
000f3 4c 8b c9 mov r9, rcx
000f6 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
000fd 44 8b 80 90 00
00 00 mov r8d, DWORD PTR [rax+144]
00104 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BO@OIFMIIBA@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$PP?$KN?$PP?$LP?$AA?$AA?$PP?z?$AA?$CB@
0010b 48 8d 4d 00 lea rcx, QWORD PTR szMsg$1[rbp]
0010f e8 00 00 00 00 call _swprintf
00114 eb 41 jmp SHORT $LN8@RemoveAt_I
$LN7@RemoveAt_I:
; 147 : else
; 148 : _stprintf( szMsg , _T("[%d]%s-%s<><73><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>!") , pIO->m_lLocalPort,pIO->m_szCorpName,pIO->m_szLoginName);
00116 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
0011d 48 05 64 01 00
00 add rax, 356 ; 00000164H
00123 48 8b 8d 58 1c
00 00 mov rcx, QWORD PTR pIO$[rbp]
0012a 48 81 c1 a4 00
00 00 add rcx, 164 ; 000000a4H
00131 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
00136 4c 8b c9 mov r9, rcx
00139 48 8b 85 58 1c
00 00 mov rax, QWORD PTR pIO$[rbp]
00140 44 8b 80 90 00
00 00 mov r8d, DWORD PTR [rax+144]
00147 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BO@IFJHDIMD@?$AA?$FL?$AA?$CF?$AAd?$AA?$FN?$AA?$CF?$AAs?$AA?9?$AA?$CF?$AAs?$AAc?$AA8?$AA?$AA?$PP?z?$AA?$CB@
0014e 48 8d 4d 00 lea rcx, QWORD PTR szMsg$1[rbp]
00152 e8 00 00 00 00 call _swprintf
$LN8@RemoveAt_I:
; 149 : if ( AfxIsValidAddress(&m_pDlg->m_Setup,sizeof(m_pDlg->m_Setup),true) )
00157 48 8b 85 50 1c
00 00 mov rax, QWORD PTR this$[rbp]
0015e 48 8b 40 38 mov rax, QWORD PTR [rax+56]
00162 48 05 bc 05 00
00 add rax, 1468 ; 000005bcH
00168 41 b8 01 00 00
00 mov r8d, 1
0016e ba c0 0e 00 00 mov edx, 3776 ; 00000ec0H
00173 48 8b c8 mov rcx, rax
00176 e8 00 00 00 00 call ?AfxIsValidAddress@@YAHPEBX_KH@Z ; AfxIsValidAddress
0017b 85 c0 test eax, eax
0017d 74 35 je SHORT $LN6@RemoveAt_I
; 150 : {
; 151 : m_pDlg->AddLog( szMsg );
0017f 48 8b 85 50 1c
00 00 mov rax, QWORD PTR this$[rbp]
00186 48 8b 40 38 mov rax, QWORD PTR [rax+56]
0018a 48 89 85 f8 1b
00 00 mov QWORD PTR tv143[rbp], rax
00191 45 33 c0 xor r8d, r8d
00194 48 8d 55 00 lea rdx, QWORD PTR szMsg$1[rbp]
00198 48 8b 8d f8 1b
00 00 mov rcx, QWORD PTR tv143[rbp]
0019f e8 00 00 00 00 call ?AddLog@CSmsCenterDlg@@QEAAXPEB_WJ@Z ; CSmsCenterDlg::AddLog
; 152 : m_pDlg->RefreshLogin();
001a4 48 8b 85 50 1c
00 00 mov rax, QWORD PTR this$[rbp]
001ab 48 8b 48 38 mov rcx, QWORD PTR [rax+56]
001af e8 00 00 00 00 call ?RefreshLogin@CSmsCenterDlg@@QEAAXXZ ; CSmsCenterDlg::RefreshLogin
$LN6@RemoveAt_I:
; 153 : }
; 154 : }
; 155 : memset(pIO,0,sizeof(IOCP_IO));
001b4 41 b8 d0 df 06
00 mov r8d, 450512 ; 0006dfd0H
001ba 33 d2 xor edx, edx
001bc 48 8b 8d 58 1c
00 00 mov rcx, QWORD PTR pIO$[rbp]
001c3 e8 00 00 00 00 call memset
001c8 90 npad 1
$LN3@RemoveAt_I:
001c9 eb 00 jmp SHORT $LN1@RemoveAt_I
$LN17@RemoveAt_I:
$LN1@RemoveAt_I:
; 156 :
; 157 : }
; 158 : }catch(...)
; 159 : {
; 160 : LOG_APPERROR(_T("T"));
; 161 : int i=0;
; 162 : }
; 163 : }
001cb 48 8b 8d 28 1c
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
001d2 48 33 cd xor rcx, rbp
001d5 e8 00 00 00 00 call __security_check_cookie
001da 48 8d a5 38 1c
00 00 lea rsp, QWORD PTR [rbp+7224]
001e1 5f pop rdi
001e2 5d pop rbp
001e3 c3 ret 0
001e4 cc int 3
?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z ENDP ; CKeyList::RemoveAt_IO
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
szMsg$1 = 0
NXlog$2 = 512
i$3 = 6608
$T4 = 7128
$T5 = 7136
$T6 = 7144
$T7 = 7152
tv150 = 7160
tv143 = 7160
tv182 = 7168
tv158 = 7176
tv186 = 7184
tv184 = 7192
tv172 = 7200
__$ArrayPad$ = 7208
this$ = 7248
pIO$ = 7256
?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA PROC ; `CKeyList::RemoveAt_IO'::`1'::catch$3
; 159 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 30 sub rsp, 48 ; 00000030H
0000a 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
__catch$?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z$0:
; 160 : LOG_APPERROR(_T("T"));
0000e 48 8d 8d 00 02
00 00 lea rcx, QWORD PTR NXlog$2[rbp]
00015 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
0001a 90 npad 1
0001b 48 8d 85 d8 1b
00 00 lea rax, QWORD PTR $T4[rbp]
00022 48 89 85 e0 1b
00 00 mov QWORD PTR $T5[rbp], rax
00029 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
00030 48 8b 8d e0 1b
00 00 mov rcx, QWORD PTR $T5[rbp]
00037 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0003c 48 89 85 f8 1b
00 00 mov QWORD PTR tv150[rbp], rax
00043 48 8b 85 f8 1b
00 00 mov rax, QWORD PTR tv150[rbp]
0004a 48 89 85 00 1c
00 00 mov QWORD PTR tv182[rbp], rax
00051 48 8b 85 00 1c
00 00 mov rax, QWORD PTR tv182[rbp]
00058 48 89 85 08 1c
00 00 mov QWORD PTR tv158[rbp], rax
0005f 48 8d 85 e8 1b
00 00 lea rax, QWORD PTR $T6[rbp]
00066 48 89 85 f0 1b
00 00 mov QWORD PTR $T7[rbp], rax
0006d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
00074 48 8b 8d f0 1b
00 00 mov rcx, QWORD PTR $T7[rbp]
0007b e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00080 48 89 85 10 1c
00 00 mov QWORD PTR tv186[rbp], rax
00087 48 8b 85 10 1c
00 00 mov rax, QWORD PTR tv186[rbp]
0008e 48 89 85 18 1c
00 00 mov QWORD PTR tv184[rbp], rax
00095 48 8b 85 18 1c
00 00 mov rax, QWORD PTR tv184[rbp]
0009c 48 89 85 20 1c
00 00 mov QWORD PTR tv172[rbp], rax
000a3 4c 8b 85 08 1c
00 00 mov r8, QWORD PTR tv158[rbp]
000aa 48 8b 95 20 1c
00 00 mov rdx, QWORD PTR tv172[rbp]
000b1 48 8d 8d 00 02
00 00 lea rcx, QWORD PTR NXlog$2[rbp]
000b8 e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
000bd 8b 05 00 00 00
00 mov eax, DWORD PTR ?__LINE__Var@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4JA
000c3 83 c0 1f add eax, 31
000c6 89 44 24 20 mov DWORD PTR [rsp+32], eax
000ca 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??_C@_0M@DCAJJICO@RemoveAt_IO@
000d1 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@
000d8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_13JKNELIBG@?$AAT@
000df 48 8d 8d 00 02
00 00 lea rcx, QWORD PTR NXlog$2[rbp]
000e6 e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000eb 90 npad 1
000ec 48 8d 8d 00 02
00 00 lea rcx, QWORD PTR NXlog$2[rbp]
000f3 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
; 161 : int i=0;
000f8 c7 85 d0 19 00
00 00 00 00 00 mov DWORD PTR i$3[rbp], 0
; 162 : }
00102 48 8d 05 00 00
00 00 lea rax, $LN17@catch$3
00109 48 83 c4 30 add rsp, 48 ; 00000030H
0010d 5d pop rbp
0010e c3 ret 0
0010f cc int 3
?catch$3@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA ENDP ; `CKeyList::RemoveAt_IO'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
szMsg$1 = 0
NXlog$2 = 512
i$3 = 6608
$T4 = 7128
$T5 = 7136
$T6 = 7144
$T7 = 7152
tv150 = 7160
tv143 = 7160
tv182 = 7168
tv158 = 7176
tv186 = 7184
tv184 = 7192
tv172 = 7200
__$ArrayPad$ = 7208
this$ = 7248
pIO$ = 7256
?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA PROC ; `CKeyList::RemoveAt_IO'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8d 8d 00 02
00 00 lea rcx, QWORD PTR NXlog$2[rbp]
00011 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$0@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA ENDP ; `CKeyList::RemoveAt_IO'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
szMsg$1 = 0
NXlog$2 = 512
i$3 = 6608
$T4 = 7128
$T5 = 7136
$T6 = 7144
$T7 = 7152
tv150 = 7160
tv143 = 7160
tv182 = 7168
tv158 = 7176
tv186 = 7184
tv184 = 7192
tv172 = 7200
__$ArrayPad$ = 7208
this$ = 7248
pIO$ = 7256
?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA PROC ; `CKeyList::RemoveAt_IO'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d e0 1b
00 00 mov rcx, QWORD PTR $T5[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$1@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA ENDP ; `CKeyList::RemoveAt_IO'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
szMsg$1 = 0
NXlog$2 = 512
i$3 = 6608
$T4 = 7128
$T5 = 7136
$T6 = 7144
$T7 = 7152
tv150 = 7160
tv143 = 7160
tv182 = 7168
tv158 = 7176
tv186 = 7184
tv184 = 7192
tv172 = 7200
__$ArrayPad$ = 7208
this$ = 7248
pIO$ = 7256
?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA PROC ; `CKeyList::RemoveAt_IO'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d f0 1b
00 00 mov rcx, QWORD PTR $T7[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$2@?0??RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z@4HA ENDP ; `CKeyList::RemoveAt_IO'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?Close_IO@CKeyList@@QEAAXXZ
_TEXT SEGMENT
i$1 = 0
NXlog$2 = 16
$T3 = 6624
$T4 = 6632
$T5 = 6640
$T6 = 6648
tv93 = 6656
tv157 = 6664
tv133 = 6672
tv161 = 6680
tv159 = 6688
tv147 = 6696
__$ArrayPad$ = 6704
this$ = 6736
?Close_IO@CKeyList@@QEAAXXZ PROC ; CKeyList::Close_IO, COMDAT
; 166 : {
$LN17:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 b8 70 1a 00 00 mov eax, 6768 ; 00001a70H
0000b e8 00 00 00 00 call __chkstk
00010 48 2b e0 sub rsp, rax
00013 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00018 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0001f 48 33 c5 xor rax, rbp
00022 48 89 85 30 1a
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
; 167 : try
; 168 : {
; 169 : if ( !m_IO )
00029 48 8b 85 50 1a
00 00 mov rax, QWORD PTR this$[rbp]
00030 48 83 78 18 00 cmp QWORD PTR [rax+24], 0
00035 0f 84 a7 00 00
00 je $LN1@Close_IO
$LN6@Close_IO:
; 170 : return ;
; 171 : //<2F><>β<EFBFBD><CEB2><EFBFBD>ҿ<EFBFBD><D2BF>е<EFBFBD>IO
; 172 : for ( int i=0 ; i<MAX_LOGINUSER ; i++ )
0003b c7 45 00 00 00
00 00 mov DWORD PTR i$1[rbp], 0
00042 eb 08 jmp SHORT $LN4@Close_IO
$LN2@Close_IO:
00044 8b 45 00 mov eax, DWORD PTR i$1[rbp]
00047 ff c0 inc eax
00049 89 45 00 mov DWORD PTR i$1[rbp], eax
$LN4@Close_IO:
0004c 81 7d 00 e8 03
00 00 cmp DWORD PTR i$1[rbp], 1000 ; 000003e8H
00053 0f 8d 87 00 00
00 jge $LN3@Close_IO
; 173 : {
; 174 : if ( (m_IO[i].socket != NULL && m_IO[i].socket!=INVALID_SOCKET) )
00059 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0005d 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00064 48 8b 8d 50 1a
00 00 mov rcx, QWORD PTR this$[rbp]
0006b 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
0006f 48 83 7c 01 20
00 cmp QWORD PTR [rcx+rax+32], 0
00075 74 3f je SHORT $LN7@Close_IO
00077 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
0007b 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
00082 48 8b 8d 50 1a
00 00 mov rcx, QWORD PTR this$[rbp]
00089 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
0008d 48 83 7c 01 20
ff cmp QWORD PTR [rcx+rax+32], -1
00093 74 21 je SHORT $LN7@Close_IO
; 175 : {
; 176 : closesocket(m_IO[i].socket);
00095 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00099 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
000a0 48 8b 8d 50 1a
00 00 mov rcx, QWORD PTR this$[rbp]
000a7 48 8b 49 18 mov rcx, QWORD PTR [rcx+24]
000ab 48 8b 4c 01 20 mov rcx, QWORD PTR [rcx+rax+32]
000b0 ff 15 00 00 00
00 call QWORD PTR __imp_closesocket
$LN7@Close_IO:
; 177 : }
; 178 : RemoveAt_IO(&m_IO[i]);
000b6 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000ba 48 69 c0 d0 df
06 00 imul rax, rax, 450512 ; 0006dfd0H
000c1 48 8b 8d 50 1a
00 00 mov rcx, QWORD PTR this$[rbp]
000c8 48 03 41 18 add rax, QWORD PTR [rcx+24]
000cc 48 8b d0 mov rdx, rax
000cf 48 8b 8d 50 1a
00 00 mov rcx, QWORD PTR this$[rbp]
000d6 e8 00 00 00 00 call ?RemoveAt_IO@CKeyList@@QEAAXPEAUIOCP_IO@@@Z ; CKeyList::RemoveAt_IO
; 179 : }
000db e9 64 ff ff ff jmp $LN2@Close_IO
$LN3@Close_IO:
000e0 eb 00 jmp SHORT $LN1@Close_IO
$LN15@Close_IO:
$LN1@Close_IO:
; 180 : }
; 181 : catch(...)
; 182 : {
; 183 : LOG_APPERROR(_T("T"));
; 184 : }
; 185 : }
000e2 48 8b 8d 30 1a
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000e9 48 33 cd xor rcx, rbp
000ec e8 00 00 00 00 call __security_check_cookie
000f1 48 8d a5 40 1a
00 00 lea rsp, QWORD PTR [rbp+6720]
000f8 5d pop rbp
000f9 c3 ret 0
000fa cc int 3
?Close_IO@CKeyList@@QEAAXXZ ENDP ; CKeyList::Close_IO
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
NXlog$2 = 16
$T3 = 6624
$T4 = 6632
$T5 = 6640
$T6 = 6648
tv93 = 6656
tv157 = 6664
tv133 = 6672
tv161 = 6680
tv159 = 6688
tv147 = 6696
__$ArrayPad$ = 6704
this$ = 6736
?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close_IO'::`1'::catch$3
; 182 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 30 sub rsp, 48 ; 00000030H
0000a 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
__catch$?Close_IO@CKeyList@@QEAAXXZ$0:
; 183 : LOG_APPERROR(_T("T"));
0000e 48 8d 4d 10 lea rcx, QWORD PTR NXlog$2[rbp]
00012 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
00017 90 npad 1
00018 48 8d 85 e0 19
00 00 lea rax, QWORD PTR $T3[rbp]
0001f 48 89 85 e8 19
00 00 mov QWORD PTR $T4[rbp], rax
00026 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
0002d 48 8b 8d e8 19
00 00 mov rcx, QWORD PTR $T4[rbp]
00034 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00039 48 89 85 00 1a
00 00 mov QWORD PTR tv93[rbp], rax
00040 48 8b 85 00 1a
00 00 mov rax, QWORD PTR tv93[rbp]
00047 48 89 85 08 1a
00 00 mov QWORD PTR tv157[rbp], rax
0004e 48 8b 85 08 1a
00 00 mov rax, QWORD PTR tv157[rbp]
00055 48 89 85 10 1a
00 00 mov QWORD PTR tv133[rbp], rax
0005c 48 8d 85 f0 19
00 00 lea rax, QWORD PTR $T5[rbp]
00063 48 89 85 f8 19
00 00 mov QWORD PTR $T6[rbp], rax
0006a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
00071 48 8b 8d f8 19
00 00 mov rcx, QWORD PTR $T6[rbp]
00078 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0007d 48 89 85 18 1a
00 00 mov QWORD PTR tv161[rbp], rax
00084 48 8b 85 18 1a
00 00 mov rax, QWORD PTR tv161[rbp]
0008b 48 89 85 20 1a
00 00 mov QWORD PTR tv159[rbp], rax
00092 48 8b 85 20 1a
00 00 mov rax, QWORD PTR tv159[rbp]
00099 48 89 85 28 1a
00 00 mov QWORD PTR tv147[rbp], rax
000a0 4c 8b 85 10 1a
00 00 mov r8, QWORD PTR tv133[rbp]
000a7 48 8b 95 28 1a
00 00 mov rdx, QWORD PTR tv147[rbp]
000ae 48 8d 4d 10 lea rcx, QWORD PTR NXlog$2[rbp]
000b2 e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
000b7 8b 05 00 00 00
00 mov eax, DWORD PTR ?__LINE__Var@?0??Close_IO@CKeyList@@QEAAXXZ@4JA
000bd 83 c0 11 add eax, 17
000c0 89 44 24 20 mov DWORD PTR [rsp+32], eax
000c4 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??_C@_08EDPDCAEI@Close_IO@
000cb 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@
000d2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_13JKNELIBG@?$AAT@
000d9 48 8d 4d 10 lea rcx, QWORD PTR NXlog$2[rbp]
000dd e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000e2 90 npad 1
000e3 48 8d 4d 10 lea rcx, QWORD PTR NXlog$2[rbp]
000e7 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
000ec 90 npad 1
; 184 : }
000ed 48 8d 05 00 00
00 00 lea rax, $LN15@catch$3
000f4 48 83 c4 30 add rsp, 48 ; 00000030H
000f8 5d pop rbp
000f9 c3 ret 0
000fa cc int 3
?catch$3@?0??Close_IO@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close_IO'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
NXlog$2 = 16
$T3 = 6624
$T4 = 6632
$T5 = 6640
$T6 = 6648
tv93 = 6656
tv157 = 6664
tv133 = 6672
tv161 = 6680
tv159 = 6688
tv147 = 6696
__$ArrayPad$ = 6704
this$ = 6736
?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close_IO'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8d 4d 10 lea rcx, QWORD PTR NXlog$2[rbp]
0000e e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00013 48 83 c4 20 add rsp, 32 ; 00000020H
00017 5d pop rbp
00018 c3 ret 0
?dtor$0@?0??Close_IO@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close_IO'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
NXlog$2 = 16
$T3 = 6624
$T4 = 6632
$T5 = 6640
$T6 = 6648
tv93 = 6656
tv157 = 6664
tv133 = 6672
tv161 = 6680
tv159 = 6688
tv147 = 6696
__$ArrayPad$ = 6704
this$ = 6736
?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close_IO'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d e8 19
00 00 mov rcx, QWORD PTR $T4[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$1@?0??Close_IO@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close_IO'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
NXlog$2 = 16
$T3 = 6624
$T4 = 6632
$T5 = 6640
$T6 = 6648
tv93 = 6656
tv157 = 6664
tv133 = 6672
tv161 = 6680
tv159 = 6688
tv147 = 6696
__$ArrayPad$ = 6704
this$ = 6736
?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close_IO'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d f8 19
00 00 mov rcx, QWORD PTR $T6[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$2@?0??Close_IO@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close_IO'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z
_TEXT SEGMENT
lSize$1 = 0
i$2 = 4
$T3 = 72
$T4 = 80
$T5 = 88
$T6 = 96
tv181 = 104
tv141 = 104
this$ = 128
pDlg$ = 136
?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z PROC ; CKeyList::Init, COMDAT
; 188 : {
$LN12:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 81 ec a0 00
00 00 sub rsp, 160 ; 000000a0H
00012 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
; 189 : m_pDlg = pDlg;
00017 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
0001e 48 8b 8d 88 00
00 00 mov rcx, QWORD PTR pDlg$[rbp]
00025 48 89 48 38 mov QWORD PTR [rax+56], rcx
; 190 :
; 191 : Close(); //<2F>ȹر<C8B9><D8B1>ٳ<EFBFBD>ʼ<EFBFBD><CABC>
00029 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
00030 e8 00 00 00 00 call ?Close@CKeyList@@QEAAXXZ ; CKeyList::Close
; 192 :
; 193 : if ( !m_IO )
00035 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
0003c 48 83 78 18 00 cmp QWORD PTR [rax+24], 0
00041 75 3c jne SHORT $LN5@Init
; 194 : {
; 195 : long lSize = sizeof(IOCP_IO)*MAX_LOGINUSER;
00043 c7 45 00 80 44
da 1a mov DWORD PTR lSize$1[rbp], 450512000 ; 1ada4480H
; 196 : m_IO = new IOCP_IO[MAX_LOGINUSER];
0004a b9 80 44 da 1a mov ecx, 450512000 ; 1ada4480H
0004f e8 00 00 00 00 call ??_U@YAPEAX_K@Z ; operator new[]
00054 48 89 45 48 mov QWORD PTR $T3[rbp], rax
00058 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
0005f 48 8b 4d 48 mov rcx, QWORD PTR $T3[rbp]
00063 48 89 48 18 mov QWORD PTR [rax+24], rcx
; 197 : memset(m_IO,0,sizeof(IOCP_IO)*MAX_LOGINUSER);
00067 41 b8 80 44 da
1a mov r8d, 450512000 ; 1ada4480H
0006d 33 d2 xor edx, edx
0006f 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
00076 48 8b 48 18 mov rcx, QWORD PTR [rax+24]
0007a e8 00 00 00 00 call memset
$LN5@Init:
; 198 : }
; 199 : /*
; 200 : //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
; 201 : for ( int i=0 ; i<MAX_LOGINUSER ; i++ )
; 202 : {
; 203 : m_IO[i].buf = new char[BUFFER_SIZE];
; 204 : }
; 205 : */
; 206 :
; 207 : if ( !m_Key )
0007f 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
00086 48 83 78 08 00 cmp QWORD PTR [rax+8], 0
0008b 75 35 jne SHORT $LN6@Init
; 208 : {
; 209 : m_Key = new IOCP_KEY[MAX_LOGINUSER];
0008d b9 80 3e 00 00 mov ecx, 16000 ; 00003e80H
00092 e8 00 00 00 00 call ??_U@YAPEAX_K@Z ; operator new[]
00097 48 89 45 50 mov QWORD PTR $T4[rbp], rax
0009b 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
000a2 48 8b 4d 50 mov rcx, QWORD PTR $T4[rbp]
000a6 48 89 48 08 mov QWORD PTR [rax+8], rcx
; 210 : memset(m_Key,0,sizeof(IOCP_KEY)*MAX_LOGINUSER);
000aa 41 b8 80 3e 00
00 mov r8d, 16000 ; 00003e80H
000b0 33 d2 xor edx, edx
000b2 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
000b9 48 8b 48 08 mov rcx, QWORD PTR [rax+8]
000bd e8 00 00 00 00 call memset
$LN6@Init:
; 211 : }
; 212 :
; 213 : /* m_Process = new LPVOID[MAX_SQLCONNECT];
; 214 : memset(m_Process,0,sizeof(LPVOID)*MAX_SQLCONNECT);
; 215 :
; 216 : for ( int i=0 ; i<MAX_SQLCONNECT ; i++ )
; 217 : {
; 218 : CProcessSocket * pSocket = new CProcessSocket;
; 219 : m_Process[i] = (LPVOID)pSocket;
; 220 : pSocket->SetDlg(m_pDlg);
; 221 : pSocket->SetIndex(i);
; 222 : }
; 223 : */
; 224 : if ( !m_SQL )
000c2 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
000c9 48 83 78 28 00 cmp QWORD PTR [rax+40], 0
000ce 0f 85 67 01 00
00 jne $LN7@Init
; 225 : {
; 226 : m_SQL = new IOCP_SQL[MAX_SQLCONNECT];
000d4 b9 38 2a 00 00 mov ecx, 10808 ; 00002a38H
000d9 e8 00 00 00 00 call ??_U@YAPEAX_K@Z ; operator new[]
000de 48 89 45 60 mov QWORD PTR $T6[rbp], rax
000e2 48 83 7d 60 00 cmp QWORD PTR $T6[rbp], 0
000e7 74 47 je SHORT $LN9@Init
000e9 48 8b 45 60 mov rax, QWORD PTR $T6[rbp]
000ed 48 c7 00 96 00
00 00 mov QWORD PTR [rax], 150 ; 00000096H
000f4 48 8b 45 60 mov rax, QWORD PTR $T6[rbp]
000f8 48 83 c0 08 add rax, 8
000fc 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??1IOCP_SQL@@QEAA@XZ
00103 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx
00108 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??0IOCP_SQL@@QEAA@XZ
0010f 41 b8 96 00 00
00 mov r8d, 150 ; 00000096H
00115 ba 48 00 00 00 mov edx, 72 ; 00000048H
0011a 48 8b c8 mov rcx, rax
0011d e8 00 00 00 00 call ??_L@YAXPEAX_K1P6AX0@Z2@Z
00122 48 8b 45 60 mov rax, QWORD PTR $T6[rbp]
00126 48 83 c0 08 add rax, 8
0012a 48 89 45 68 mov QWORD PTR tv141[rbp], rax
0012e eb 08 jmp SHORT $LN10@Init
$LN9@Init:
00130 48 c7 45 68 00
00 00 00 mov QWORD PTR tv141[rbp], 0
$LN10@Init:
00138 48 8b 45 68 mov rax, QWORD PTR tv141[rbp]
0013c 48 89 45 58 mov QWORD PTR $T5[rbp], rax
00140 48 8b 85 80 00
00 00 mov rax, QWORD PTR this$[rbp]
00147 48 8b 4d 58 mov rcx, QWORD PTR $T5[rbp]
0014b 48 89 48 28 mov QWORD PTR [rax+40], rcx
; 227 : for ( int i=0 ; i<MAX_SQLCONNECT ; i++ )
0014f c7 45 04 00 00
00 00 mov DWORD PTR i$2[rbp], 0
00156 eb 08 jmp SHORT $LN4@Init
$LN2@Init:
00158 8b 45 04 mov eax, DWORD PTR i$2[rbp]
0015b ff c0 inc eax
0015d 89 45 04 mov DWORD PTR i$2[rbp], eax
$LN4@Init:
00160 81 7d 04 96 00
00 00 cmp DWORD PTR i$2[rbp], 150 ; 00000096H
00167 0f 8d ce 00 00
00 jge $LN7@Init
; 228 : {
; 229 : m_SQL[i].bUse = false;
0016d 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
00171 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00175 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
0017c 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00180 c7 04 01 00 00
00 00 mov DWORD PTR [rcx+rax], 0
; 230 : m_SQL[i].lRandID = 0;
00187 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
0018b 48 6b c0 48 imul rax, rax, 72 ; 00000048H
0018f 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
00196 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
0019a c7 44 01 04 00
00 00 00 mov DWORD PTR [rcx+rax+4], 0
; 231 : m_SQL[i].dwBeginUse = 0;
001a2 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
001a6 48 6b c0 48 imul rax, rax, 72 ; 00000048H
001aa 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
001b1 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
001b5 c7 44 01 38 00
00 00 00 mov DWORD PTR [rcx+rax+56], 0
; 232 : m_SQL[i].dwEndUse = 0;
001bd 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
001c1 48 6b c0 48 imul rax, rax, 72 ; 00000048H
001c5 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
001cc 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
001d0 c7 44 01 3c 00
00 00 00 mov DWORD PTR [rcx+rax+60], 0
; 233 : m_SQL[i].lFuncID = 0;
001d8 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
001dc 48 6b c0 48 imul rax, rax, 72 ; 00000048H
001e0 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
001e7 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
001eb c7 44 01 40 00
00 00 00 mov DWORD PTR [rcx+rax+64], 0
; 234 : m_SQL[i].lUserID = 0;
001f3 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
001f7 48 6b c0 48 imul rax, rax, 72 ; 00000048H
001fb 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
00202 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00206 c7 44 01 44 00
00 00 00 mov DWORD PTR [rcx+rax+68], 0
; 235 : m_SQL[i].adoConnection.SetID(i);
0020e 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
00212 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00216 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
0021d 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00221 48 8d 44 01 08 lea rax, QWORD PTR [rcx+rax+8]
00226 48 89 45 68 mov QWORD PTR tv181[rbp], rax
0022a 8b 55 04 mov edx, DWORD PTR i$2[rbp]
0022d 48 8b 4d 68 mov rcx, QWORD PTR tv181[rbp]
00231 e8 00 00 00 00 call ?SetID@CAdoConnection@@QEAAXJ@Z ; CAdoConnection::SetID
; 236 : #ifdef SMSCENTER_USECLIENT
; 237 : m_SQL[i].adoConnection.SetCursorLocation(adUseClient); //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>α<EFBFBD><CEB1><EFBFBD><EFBFBD><EFBFBD>
; 238 : #endif
; 239 : }
00236 e9 1d ff ff ff jmp $LN2@Init
$LN7@Init:
; 240 : }
; 241 : }
0023b 48 8d 65 70 lea rsp, QWORD PTR [rbp+112]
0023f 5d pop rbp
00240 c3 ret 0
?Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z ENDP ; CKeyList::Init
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
lSize$1 = 0
i$2 = 4
$T3 = 72
$T4 = 80
$T5 = 88
$T6 = 96
tv181 = 104
tv141 = 104
this$ = 128
pDlg$ = 136
?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA PROC ; `CKeyList::Init'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a ba 38 2a 00 00 mov edx, 10808 ; 00002a38H
0000f 48 8b 4d 60 mov rcx, QWORD PTR $T6[rbp]
00013 e8 00 00 00 00 call ??_V@YAXPEAX_K@Z ; operator delete[]
00018 48 83 c4 20 add rsp, 32 ; 00000020H
0001c 5d pop rbp
0001d c3 ret 0
?dtor$0@?0??Init@CKeyList@@QEAAXPEAVCSmsCenterDlg@@@Z@4HA ENDP ; `CKeyList::Init'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ
_TEXT SEGMENT
NXlog$1 = 0
$T2 = 6608
$T3 = 6616
$T4 = 6624
$T5 = 6632
tv65 = 6640
tv129 = 6648
tv73 = 6656
tv133 = 6664
tv131 = 6672
tv87 = 6680
__$ArrayPad$ = 6688
this$ = 6720
?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ PROC ; CKeyList::GetBlank_Process, COMDAT
; 244 : {
$LN12:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 b8 60 1a 00 00 mov eax, 6752 ; 00001a60H
0000b e8 00 00 00 00 call __chkstk
00010 48 2b e0 sub rsp, rax
00013 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00018 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0001f 48 33 c5 xor rax, rbp
00022 48 89 85 20 1a
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00029 eb 00 jmp SHORT $LN9@GetBlank_P
$LN10@GetBlank_P:
$LN9@GetBlank_P:
; 245 : try
; 246 : {
; 247 : /*
; 248 : for ( int k=0 ; k<3 ; k++ ) //<2F><><EFBFBD><EFBFBD>3<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7>ҵ<EFBFBD><D2B5><EFBFBD>
; 249 : {
; 250 : for ( int i=0 ; i<MAX_SQLCONNECT ; i++ )
; 251 : {
; 252 : CProcessSocket * pProcess = (CProcessSocket *)m_Process[i];
; 253 : if (pProcess && !pProcess->m_bUse && pProcess->m_lRandID==0 )
; 254 : {
; 255 : if ( pProcess->m_adoConnection.isOK() && pProcess->m_AdoRS.isOK() && pProcess->m_AdoRS2.isOK() )
; 256 : {
; 257 : pProcess->m_bUse = true;
; 258 : pProcess->m_lRandID = rand();
; 259 : pProcess->m_dwBeginUse = ::GetTickCount();
; 260 : return pProcess;
; 261 : }
; 262 : }
; 263 : }
; 264 : */
; 265 : /*
; 266 : //<2F>Ȳ<EFBFBD><C8B2><EFBFBD>ǰ<EFBFBD><C7B0>10<31><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>е<EFBFBD>
; 267 : for ( int j=0 ; j<3 ; j++ )
; 268 : {
; 269 : for ( int i=0 ; i<MIN_SQLCONNECT ; i++ )
; 270 : {
; 271 : CProcessSocket * pProcess = (CProcessSocket *)m_Process[i];
; 272 : if ( !pProcess->m_bUse && pProcess->m_lRandID==0 )
; 273 : {
; 274 : pProcess->m_bUse = true;
; 275 : pProcess->m_lRandID = rand();
; 276 : pProcess->m_dwBeginUse = ::GetTickCount();
; 277 : return pProcess;
; 278 : }
; 279 : }
; 280 : Sleep(100);
; 281 : }
; 282 : for ( int i=MIN_SQLCONNECT ; i<MAX_SQLCONNECT ; i++ )
; 283 : {
; 284 : CProcessSocket * pProcess = (CProcessSocket *)m_Process[i];
; 285 : if ( !pProcess->m_bUse && pProcess->m_lRandID==0 )
; 286 : {
; 287 : pProcess->m_bUse = true;
; 288 : pProcess->m_lRandID = rand();
; 289 : pProcess->m_dwBeginUse = ::GetTickCount();
; 290 : return pProcess;
; 291 : }
; 292 : }
; 293 : */
; 294 : /*
; 295 : Sleep(500);
; 296 : }
; 297 : */
; 298 : }
; 299 : catch(...)
; 300 : {
; 301 : LOG_APPERROR(_T("T"));
; 302 : }
; 303 : return NULL;
0002b 33 c0 xor eax, eax
; 304 : }
0002d 48 8b 8d 20 1a
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00034 48 33 cd xor rcx, rbp
00037 e8 00 00 00 00 call __security_check_cookie
0003c 48 8d a5 30 1a
00 00 lea rsp, QWORD PTR [rbp+6704]
00043 5d pop rbp
00044 c3 ret 0
?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ ENDP ; CKeyList::GetBlank_Process
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
$T2 = 6608
$T3 = 6616
$T4 = 6624
$T5 = 6632
tv65 = 6640
tv129 = 6648
tv73 = 6656
tv133 = 6664
tv131 = 6672
tv87 = 6680
__$ArrayPad$ = 6688
this$ = 6720
?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA PROC ; `CKeyList::GetBlank_Process'::`1'::catch$3
; 300 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 30 sub rsp, 48 ; 00000030H
0000a 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
__catch$?GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ$0:
; 301 : LOG_APPERROR(_T("T"));
0000e 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
00012 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
00017 90 npad 1
00018 48 8d 85 d0 19
00 00 lea rax, QWORD PTR $T2[rbp]
0001f 48 89 85 d8 19
00 00 mov QWORD PTR $T3[rbp], rax
00026 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
0002d 48 8b 8d d8 19
00 00 mov rcx, QWORD PTR $T3[rbp]
00034 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00039 48 89 85 f0 19
00 00 mov QWORD PTR tv65[rbp], rax
00040 48 8b 85 f0 19
00 00 mov rax, QWORD PTR tv65[rbp]
00047 48 89 85 f8 19
00 00 mov QWORD PTR tv129[rbp], rax
0004e 48 8b 85 f8 19
00 00 mov rax, QWORD PTR tv129[rbp]
00055 48 89 85 00 1a
00 00 mov QWORD PTR tv73[rbp], rax
0005c 48 8d 85 e0 19
00 00 lea rax, QWORD PTR $T4[rbp]
00063 48 89 85 e8 19
00 00 mov QWORD PTR $T5[rbp], rax
0006a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
00071 48 8b 8d e8 19
00 00 mov rcx, QWORD PTR $T5[rbp]
00078 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0007d 48 89 85 08 1a
00 00 mov QWORD PTR tv133[rbp], rax
00084 48 8b 85 08 1a
00 00 mov rax, QWORD PTR tv133[rbp]
0008b 48 89 85 10 1a
00 00 mov QWORD PTR tv131[rbp], rax
00092 48 8b 85 10 1a
00 00 mov rax, QWORD PTR tv131[rbp]
00099 48 89 85 18 1a
00 00 mov QWORD PTR tv87[rbp], rax
000a0 4c 8b 85 00 1a
00 00 mov r8, QWORD PTR tv73[rbp]
000a7 48 8b 95 18 1a
00 00 mov rdx, QWORD PTR tv87[rbp]
000ae 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
000b2 e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
000b7 8b 05 00 00 00
00 mov eax, DWORD PTR ?__LINE__Var@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4JA
000bd 83 c0 39 add eax, 57 ; 00000039H
000c0 89 44 24 20 mov DWORD PTR [rsp+32], eax
000c4 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??_C@_0BB@NCGHDNPI@GetBlank_Process@
000cb 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@
000d2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_13JKNELIBG@?$AAT@
000d9 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
000dd e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000e2 90 npad 1
000e3 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
000e7 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
000ec 90 npad 1
; 302 : }
000ed 48 8d 05 00 00
00 00 lea rax, $LN10@catch$3
000f4 48 83 c4 30 add rsp, 48 ; 00000030H
000f8 5d pop rbp
000f9 c3 ret 0
000fa cc int 3
?catch$3@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA ENDP ; `CKeyList::GetBlank_Process'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
$T2 = 6608
$T3 = 6616
$T4 = 6624
$T5 = 6632
tv65 = 6640
tv129 = 6648
tv73 = 6656
tv133 = 6664
tv131 = 6672
tv87 = 6680
__$ArrayPad$ = 6688
this$ = 6720
?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA PROC ; `CKeyList::GetBlank_Process'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8d 4d 00 lea rcx, QWORD PTR NXlog$1[rbp]
0000e e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00013 48 83 c4 20 add rsp, 32 ; 00000020H
00017 5d pop rbp
00018 c3 ret 0
?dtor$0@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA ENDP ; `CKeyList::GetBlank_Process'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
$T2 = 6608
$T3 = 6616
$T4 = 6624
$T5 = 6632
tv65 = 6640
tv129 = 6648
tv73 = 6656
tv133 = 6664
tv131 = 6672
tv87 = 6680
__$ArrayPad$ = 6688
this$ = 6720
?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA PROC ; `CKeyList::GetBlank_Process'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d d8 19
00 00 mov rcx, QWORD PTR $T3[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$1@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA ENDP ; `CKeyList::GetBlank_Process'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
NXlog$1 = 0
$T2 = 6608
$T3 = 6616
$T4 = 6624
$T5 = 6632
tv65 = 6640
tv129 = 6648
tv73 = 6656
tv133 = 6664
tv131 = 6672
tv87 = 6680
__$ArrayPad$ = 6688
this$ = 6720
?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA PROC ; `CKeyList::GetBlank_Process'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d e8 19
00 00 mov rcx, QWORD PTR $T5[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$2@?0??GetBlank_Process@CKeyList@@QEAAPEAVCProcessSocket@@XZ@4HA ENDP ; `CKeyList::GetBlank_Process'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?Close@CKeyList@@QEAAXXZ
_TEXT SEGMENT
i$1 = 0
pSocket$2 = 8
NXlog$3 = 16
$T4 = 6624
$T5 = 6632
$T6 = 6640
$T7 = 6648
$T8 = 6656
$T9 = 6664
$T10 = 6672
$T11 = 6680
$T12 = 6688
tv142 = 6696
tv139 = 6696
tv90 = 6696
tv174 = 6704
tv91 = 6704
tv150 = 6712
tv178 = 6720
tv176 = 6728
tv164 = 6736
__$ArrayPad$ = 6744
this$ = 6768
?Close@CKeyList@@QEAAXXZ PROC ; CKeyList::Close, COMDAT
; 307 : {
$LN23:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 b8 90 1a 00 00 mov eax, 6800 ; 00001a90H
0000b e8 00 00 00 00 call __chkstk
00010 48 2b e0 sub rsp, rax
00013 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00018 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0001f 48 33 c5 xor rax, rbp
00022 48 89 85 58 1a
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
; 308 : try
; 309 : {
; 310 : Close_IO();
00029 48 8b 8d 70 1a
00 00 mov rcx, QWORD PTR this$[rbp]
00030 e8 00 00 00 00 call ?Close_IO@CKeyList@@QEAAXXZ ; CKeyList::Close_IO
; 311 :
; 312 : if ( m_Key )
00035 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
0003c 48 83 78 08 00 cmp QWORD PTR [rax+8], 0
00041 74 2d je SHORT $LN6@Close
; 313 : {delete []m_Key;m_Key=NULL;}
00043 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
0004a 48 8b 40 08 mov rax, QWORD PTR [rax+8]
0004e 48 89 85 e0 19
00 00 mov QWORD PTR $T4[rbp], rax
00055 48 8b 8d e0 19
00 00 mov rcx, QWORD PTR $T4[rbp]
0005c e8 00 00 00 00 call ??_V@YAXPEAX@Z ; operator delete[]
00061 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
00068 48 c7 40 08 00
00 00 00 mov QWORD PTR [rax+8], 0
$LN6@Close:
; 314 : /*
; 315 : //ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
; 316 : for ( int i=0 ; i<MAX_LOGINUSER ; i++ )
; 317 : {
; 318 : if ( m_IO[i].buf )
; 319 : delete m_IO[i].buf;
; 320 : }
; 321 : */
; 322 : if ( m_IO )
00070 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
00077 48 83 78 18 00 cmp QWORD PTR [rax+24], 0
0007c 74 2d je SHORT $LN7@Close
; 323 : {delete []m_IO;m_IO=NULL;}
0007e 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
00085 48 8b 40 18 mov rax, QWORD PTR [rax+24]
00089 48 89 85 e8 19
00 00 mov QWORD PTR $T5[rbp], rax
00090 48 8b 8d e8 19
00 00 mov rcx, QWORD PTR $T5[rbp]
00097 e8 00 00 00 00 call ??_V@YAXPEAX@Z ; operator delete[]
0009c 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
000a3 48 c7 40 18 00
00 00 00 mov QWORD PTR [rax+24], 0
$LN7@Close:
; 324 :
; 325 : if ( m_Process )
000ab 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
000b2 48 83 78 30 00 cmp QWORD PTR [rax+48], 0
000b7 0f 84 d2 00 00
00 je $LN8@Close
; 326 : {
; 327 : for ( int i=0 ; i<MAX_SQLCONNECT; i++ )
000bd c7 45 00 00 00
00 00 mov DWORD PTR i$1[rbp], 0
000c4 eb 08 jmp SHORT $LN4@Close
$LN2@Close:
000c6 8b 45 00 mov eax, DWORD PTR i$1[rbp]
000c9 ff c0 inc eax
000cb 89 45 00 mov DWORD PTR i$1[rbp], eax
$LN4@Close:
000ce 81 7d 00 96 00
00 00 cmp DWORD PTR i$1[rbp], 150 ; 00000096H
000d5 0f 8d 82 00 00
00 jge $LN3@Close
; 328 : {
; 329 : CProcessSocket * pSocket = (CProcessSocket *)m_Process[i];
000db 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
000df 48 8b 8d 70 1a
00 00 mov rcx, QWORD PTR this$[rbp]
000e6 48 8b 49 30 mov rcx, QWORD PTR [rcx+48]
000ea 48 8b 04 c1 mov rax, QWORD PTR [rcx+rax*8]
000ee 48 89 45 08 mov QWORD PTR pSocket$2[rbp], rax
; 330 : delete pSocket;
000f2 48 8b 45 08 mov rax, QWORD PTR pSocket$2[rbp]
000f6 48 89 85 f0 19
00 00 mov QWORD PTR $T6[rbp], rax
000fd 48 83 bd f0 19
00 00 00 cmp QWORD PTR $T6[rbp], 0
00105 74 2f je SHORT $LN11@Close
00107 48 8b 85 f0 19
00 00 mov rax, QWORD PTR $T6[rbp]
0010e 48 8b 00 mov rax, QWORD PTR [rax]
00111 48 8b 00 mov rax, QWORD PTR [rax]
00114 48 89 85 28 1a
00 00 mov QWORD PTR tv90[rbp], rax
0011b ba 01 00 00 00 mov edx, 1
00120 48 8b 8d f0 19
00 00 mov rcx, QWORD PTR $T6[rbp]
00127 ff 95 28 1a 00
00 call QWORD PTR tv90[rbp]
0012d 48 89 85 30 1a
00 00 mov QWORD PTR tv91[rbp], rax
00134 eb 0b jmp SHORT $LN12@Close
$LN11@Close:
00136 48 c7 85 30 1a
00 00 00 00 00
00 mov QWORD PTR tv91[rbp], 0
$LN12@Close:
; 331 : m_Process[i] = NULL;
00141 48 63 45 00 movsxd rax, DWORD PTR i$1[rbp]
00145 48 8b 8d 70 1a
00 00 mov rcx, QWORD PTR this$[rbp]
0014c 48 8b 49 30 mov rcx, QWORD PTR [rcx+48]
00150 48 c7 04 c1 00
00 00 00 mov QWORD PTR [rcx+rax*8], 0
; 332 : }
00158 e9 69 ff ff ff jmp $LN2@Close
$LN3@Close:
; 333 : delete m_Process;
0015d 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
00164 48 8b 40 30 mov rax, QWORD PTR [rax+48]
00168 48 89 85 f8 19
00 00 mov QWORD PTR $T7[rbp], rax
0016f ba 08 00 00 00 mov edx, 8
00174 48 8b 8d f8 19
00 00 mov rcx, QWORD PTR $T7[rbp]
0017b e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete
; 334 : m_Process = NULL;
00180 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
00187 48 c7 40 30 00
00 00 00 mov QWORD PTR [rax+48], 0
$LN8@Close:
; 335 : }
; 336 : if ( m_SQL )
0018f 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
00196 48 83 78 28 00 cmp QWORD PTR [rax+40], 0
0019b 74 50 je SHORT $LN9@Close
; 337 : {delete []m_SQL;m_SQL=NULL;}
0019d 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
001a4 48 8b 40 28 mov rax, QWORD PTR [rax+40]
001a8 48 89 85 00 1a
00 00 mov QWORD PTR $T8[rbp], rax
001af 48 83 bd 00 1a
00 00 00 cmp QWORD PTR $T8[rbp], 0
001b7 74 1a je SHORT $LN13@Close
001b9 ba 03 00 00 00 mov edx, 3
001be 48 8b 8d 00 1a
00 00 mov rcx, QWORD PTR $T8[rbp]
001c5 e8 00 00 00 00 call ??_EIOCP_SQL@@QEAAPEAXI@Z
001ca 48 89 85 28 1a
00 00 mov QWORD PTR tv139[rbp], rax
001d1 eb 0b jmp SHORT $LN14@Close
$LN13@Close:
001d3 48 c7 85 28 1a
00 00 00 00 00
00 mov QWORD PTR tv139[rbp], 0
$LN14@Close:
001de 48 8b 85 70 1a
00 00 mov rax, QWORD PTR this$[rbp]
001e5 48 c7 40 28 00
00 00 00 mov QWORD PTR [rax+40], 0
$LN9@Close:
001ed eb 00 jmp SHORT $LN20@Close
$LN21@Close:
$LN20@Close:
; 338 : }
; 339 : catch(...)
; 340 : {
; 341 : LOG_APPERROR(_T("T"));
; 342 : }
; 343 : }
001ef 48 8b 8d 58 1a
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
001f6 48 33 cd xor rcx, rbp
001f9 e8 00 00 00 00 call __security_check_cookie
001fe 48 8d a5 60 1a
00 00 lea rsp, QWORD PTR [rbp+6752]
00205 5d pop rbp
00206 c3 ret 0
?Close@CKeyList@@QEAAXXZ ENDP ; CKeyList::Close
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
pSocket$2 = 8
NXlog$3 = 16
$T4 = 6624
$T5 = 6632
$T6 = 6640
$T7 = 6648
$T8 = 6656
$T9 = 6664
$T10 = 6672
$T11 = 6680
$T12 = 6688
tv142 = 6696
tv139 = 6696
tv90 = 6696
tv174 = 6704
tv91 = 6704
tv150 = 6712
tv178 = 6720
tv176 = 6728
tv164 = 6736
__$ArrayPad$ = 6744
this$ = 6768
?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close'::`1'::catch$3
; 340 : {
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 55 push rbp
00006 48 83 ec 30 sub rsp, 48 ; 00000030H
0000a 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
__catch$?Close@CKeyList@@QEAAXXZ$0:
; 341 : LOG_APPERROR(_T("T"));
0000e 48 8d 4d 10 lea rcx, QWORD PTR NXlog$3[rbp]
00012 e8 00 00 00 00 call ??0CSAStatusLog@@QEAA@XZ ; CSAStatusLog::CSAStatusLog
00017 90 npad 1
00018 48 8d 85 08 1a
00 00 lea rax, QWORD PTR $T9[rbp]
0001f 48 89 85 10 1a
00 00 mov QWORD PTR $T10[rbp], rax
00026 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
0002d 48 8b 8d 10 1a
00 00 mov rcx, QWORD PTR $T10[rbp]
00034 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00039 48 89 85 28 1a
00 00 mov QWORD PTR tv142[rbp], rax
00040 48 8b 85 28 1a
00 00 mov rax, QWORD PTR tv142[rbp]
00047 48 89 85 30 1a
00 00 mov QWORD PTR tv174[rbp], rax
0004e 48 8b 85 30 1a
00 00 mov rax, QWORD PTR tv174[rbp]
00055 48 89 85 38 1a
00 00 mov QWORD PTR tv150[rbp], rax
0005c 48 8d 85 18 1a
00 00 lea rax, QWORD PTR $T11[rbp]
00063 48 89 85 20 1a
00 00 mov QWORD PTR $T12[rbp], rax
0006a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
00071 48 8b 8d 20 1a
00 00 mov rcx, QWORD PTR $T12[rbp]
00078 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
0007d 48 89 85 40 1a
00 00 mov QWORD PTR tv178[rbp], rax
00084 48 8b 85 40 1a
00 00 mov rax, QWORD PTR tv178[rbp]
0008b 48 89 85 48 1a
00 00 mov QWORD PTR tv176[rbp], rax
00092 48 8b 85 48 1a
00 00 mov rax, QWORD PTR tv176[rbp]
00099 48 89 85 50 1a
00 00 mov QWORD PTR tv164[rbp], rax
000a0 4c 8b 85 38 1a
00 00 mov r8, QWORD PTR tv150[rbp]
000a7 48 8b 95 50 1a
00 00 mov rdx, QWORD PTR tv164[rbp]
000ae 48 8d 4d 10 lea rcx, QWORD PTR NXlog$3[rbp]
000b2 e8 00 00 00 00 call ?Init@CSAStatusLog@@QEAAXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
000b7 8b 05 00 00 00
00 mov eax, DWORD PTR ?__LINE__Var@?0??Close@CKeyList@@QEAAXXZ@4JA
000bd 83 c0 22 add eax, 34 ; 00000022H
000c0 89 44 24 20 mov DWORD PTR [rsp+32], eax
000c4 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??_C@_05LGELBCGM@Close@
000cb 4c 8d 05 00 00
00 00 lea r8, OFFSET FLAT:??_C@_0DB@EILGGBMO@D?3?2Works?2Corpsms_2010?2SmsCenter@
000d2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_13JKNELIBG@?$AAT@
000d9 48 8d 4d 10 lea rcx, QWORD PTR NXlog$3[rbp]
000dd e8 00 00 00 00 call ?LogError@CSAStatusLog@@QEAAHPEB_WPEBD1J@Z ; CSAStatusLog::LogError
000e2 90 npad 1
000e3 48 8d 4d 10 lea rcx, QWORD PTR NXlog$3[rbp]
000e7 e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
000ec 90 npad 1
; 342 : }
000ed 48 8d 05 00 00
00 00 lea rax, $LN21@catch$3
000f4 48 83 c4 30 add rsp, 48 ; 00000030H
000f8 5d pop rbp
000f9 c3 ret 0
000fa cc int 3
?catch$3@?0??Close@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close'::`1'::catch$3
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
pSocket$2 = 8
NXlog$3 = 16
$T4 = 6624
$T5 = 6632
$T6 = 6640
$T7 = 6648
$T8 = 6656
$T9 = 6664
$T10 = 6672
$T11 = 6680
$T12 = 6688
tv142 = 6696
tv139 = 6696
tv90 = 6696
tv174 = 6704
tv91 = 6704
tv150 = 6712
tv178 = 6720
tv176 = 6728
tv164 = 6736
__$ArrayPad$ = 6744
this$ = 6768
?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8d 4d 10 lea rcx, QWORD PTR NXlog$3[rbp]
0000e e8 00 00 00 00 call ??1CSAStatusLog@@QEAA@XZ ; CSAStatusLog::~CSAStatusLog
00013 48 83 c4 20 add rsp, 32 ; 00000020H
00017 5d pop rbp
00018 c3 ret 0
?dtor$0@?0??Close@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
pSocket$2 = 8
NXlog$3 = 16
$T4 = 6624
$T5 = 6632
$T6 = 6640
$T7 = 6648
$T8 = 6656
$T9 = 6664
$T10 = 6672
$T11 = 6680
$T12 = 6688
tv142 = 6696
tv139 = 6696
tv90 = 6696
tv174 = 6704
tv91 = 6704
tv150 = 6712
tv178 = 6720
tv176 = 6728
tv164 = 6736
__$ArrayPad$ = 6744
this$ = 6768
?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close'::`1'::dtor$1
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d 10 1a
00 00 mov rcx, QWORD PTR $T10[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$1@?0??Close@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close'::`1'::dtor$1
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
i$1 = 0
pSocket$2 = 8
NXlog$3 = 16
$T4 = 6624
$T5 = 6632
$T6 = 6640
$T7 = 6648
$T8 = 6656
$T9 = 6664
$T10 = 6672
$T11 = 6680
$T12 = 6688
tv142 = 6696
tv139 = 6696
tv90 = 6696
tv174 = 6704
tv91 = 6704
tv150 = 6712
tv178 = 6720
tv176 = 6728
tv164 = 6736
__$ArrayPad$ = 6744
this$ = 6768
?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA PROC ; `CKeyList::Close'::`1'::dtor$2
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 30 lea rbp, QWORD PTR [rdx+48]
0000a 48 8b 8d 20 1a
00 00 mov rcx, QWORD PTR $T12[rbp]
00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
00016 48 83 c4 20 add rsp, 32 ; 00000020H
0001a 5d pop rbp
0001b c3 ret 0
?dtor$2@?0??Close@CKeyList@@QEAAXXZ@4HA ENDP ; `CKeyList::Close'::`1'::dtor$2
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ
_TEXT SEGMENT
j$1 = 0
i$2 = 4
tv140 = 72
tv132 = 72
this$ = 96
?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ PROC ; CKeyList::GetBlank_SQL, COMDAT
; 346 : {
$LN10:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 70 sub rsp, 112 ; 00000070H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 347 : for ( int j=0 ; j<3 ; j++ )
0000f c7 45 00 00 00
00 00 mov DWORD PTR j$1[rbp], 0
00016 eb 08 jmp SHORT $LN4@GetBlank_S
$LN2@GetBlank_S:
00018 8b 45 00 mov eax, DWORD PTR j$1[rbp]
0001b ff c0 inc eax
0001d 89 45 00 mov DWORD PTR j$1[rbp], eax
$LN4@GetBlank_S:
00020 83 7d 00 03 cmp DWORD PTR j$1[rbp], 3
00024 0f 8d 25 01 00
00 jge $LN3@GetBlank_S
; 348 : {
; 349 : for ( int i=0 ; i<MAX_SQLCONNECT ; i++ )
0002a c7 45 04 00 00
00 00 mov DWORD PTR i$2[rbp], 0
00031 eb 08 jmp SHORT $LN7@GetBlank_S
$LN5@GetBlank_S:
00033 8b 45 04 mov eax, DWORD PTR i$2[rbp]
00036 ff c0 inc eax
00038 89 45 04 mov DWORD PTR i$2[rbp], eax
$LN7@GetBlank_S:
0003b 81 7d 04 96 00
00 00 cmp DWORD PTR i$2[rbp], 150 ; 00000096H
00042 0f 8d f7 00 00
00 jge $LN6@GetBlank_S
; 350 : {
; 351 : if ( !m_SQL[i].bUse && m_SQL[i].lRandID==0 &&
00048 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
0004c 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00050 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00054 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00058 83 3c 01 00 cmp DWORD PTR [rcx+rax], 0
0005c 0f 85 d8 00 00
00 jne $LN8@GetBlank_S
00062 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
00066 48 6b c0 48 imul rax, rax, 72 ; 00000048H
0006a 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0006e 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00072 83 7c 01 04 00 cmp DWORD PTR [rcx+rax+4], 0
00077 0f 85 bd 00 00
00 jne $LN8@GetBlank_S
0007d 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
00081 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00085 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00089 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
0008d 48 8d 44 01 08 lea rax, QWORD PTR [rcx+rax+8]
00092 48 8b c8 mov rcx, rax
00095 e8 00 00 00 00 call ?isOK@CAdoConnection@@QEAAHXZ ; CAdoConnection::isOK
0009a 85 c0 test eax, eax
0009c 0f 84 98 00 00
00 je $LN8@GetBlank_S
; 352 : m_SQL[i].adoConnection.isOK() )
; 353 : {
; 354 : m_SQL[i].bUse = true;
000a2 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
000a6 48 6b c0 48 imul rax, rax, 72 ; 00000048H
000aa 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000ae 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
000b2 c7 04 01 01 00
00 00 mov DWORD PTR [rcx+rax], 1
; 355 : m_SQL[i].lRandID = rand();
000b9 e8 00 00 00 00 call rand
000be 89 45 48 mov DWORD PTR tv132[rbp], eax
000c1 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
000c5 48 6b c0 48 imul rax, rax, 72 ; 00000048H
000c9 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000cd 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
000d1 8b 55 48 mov edx, DWORD PTR tv132[rbp]
000d4 89 54 01 04 mov DWORD PTR [rcx+rax+4], edx
; 356 : m_SQL[i].dwBeginUse = GetTickCount();
000d8 ff 15 00 00 00
00 call QWORD PTR __imp_GetTickCount
000de 89 45 48 mov DWORD PTR tv140[rbp], eax
000e1 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
000e5 48 6b c0 48 imul rax, rax, 72 ; 00000048H
000e9 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000ed 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
000f1 8b 55 48 mov edx, DWORD PTR tv140[rbp]
000f4 89 54 01 38 mov DWORD PTR [rcx+rax+56], edx
; 357 : m_SQL[i].lFuncID = 0;
000f8 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
000fc 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00100 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00104 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00108 c7 44 01 40 00
00 00 00 mov DWORD PTR [rcx+rax+64], 0
; 358 : m_SQL[i].lUserID = 0;
00110 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
00114 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00118 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0011c 48 8b 49 28 mov rcx, QWORD PTR [rcx+40]
00120 c7 44 01 44 00
00 00 00 mov DWORD PTR [rcx+rax+68], 0
; 359 : return &m_SQL[i];
00128 48 63 45 04 movsxd rax, DWORD PTR i$2[rbp]
0012c 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00130 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00134 48 03 41 28 add rax, QWORD PTR [rcx+40]
00138 eb 17 jmp SHORT $LN1@GetBlank_S
$LN8@GetBlank_S:
; 360 : }
; 361 : }
0013a e9 f4 fe ff ff jmp $LN5@GetBlank_S
$LN6@GetBlank_S:
; 362 : Sleep(500);
0013f b9 f4 01 00 00 mov ecx, 500 ; 000001f4H
00144 ff 15 00 00 00
00 call QWORD PTR __imp_Sleep
; 363 : }
0014a e9 c9 fe ff ff jmp $LN2@GetBlank_S
$LN3@GetBlank_S:
; 364 : return NULL;
0014f 33 c0 xor eax, eax
$LN1@GetBlank_S:
; 365 : }
00151 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00155 5d pop rbp
00156 c3 ret 0
?GetBlank_SQL@CKeyList@@QEAAPEAUIOCP_SQL@@XZ ENDP ; CKeyList::GetBlank_SQL
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT ??_EIOCP_SQL@@QEAAPEAXI@Z
_TEXT SEGMENT
this$ = 80
__flags$ = 88
??_EIOCP_SQL@@QEAAPEAXI@Z PROC ; IOCP_SQL::`vector deleting destructor', COMDAT
$LN6:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 60 sub rsp, 96 ; 00000060H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 8b 45 58 mov eax, DWORD PTR __flags$[rbp]
00016 83 e0 02 and eax, 2
00019 85 c0 test eax, eax
0001b 74 4e je SHORT $LN2@vector
0001d 4c 8d 0d 00 00
00 00 lea r9, OFFSET FLAT:??1IOCP_SQL@@QEAA@XZ
00024 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00028 4c 8b 40 f8 mov r8, QWORD PTR [rax-8]
0002c ba 48 00 00 00 mov edx, 72 ; 00000048H
00031 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00035 e8 00 00 00 00 call ??_M@YAXPEAX_K1P6AX0@Z@Z
0003a 8b 45 58 mov eax, DWORD PTR __flags$[rbp]
0003d 83 e0 01 and eax, 1
00040 85 c0 test eax, eax
00042 74 1d je SHORT $LN3@vector
00044 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00048 48 6b 40 f8 48 imul rax, QWORD PTR [rax-8], 72 ; 00000048H
0004d 48 83 c0 08 add rax, 8
00051 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00055 48 83 e9 08 sub rcx, 8
00059 48 8b d0 mov rdx, rax
0005c e8 00 00 00 00 call ??_V@YAXPEAX_K@Z ; operator delete[]
$LN3@vector:
00061 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00065 48 83 e8 08 sub rax, 8
00069 eb 25 jmp SHORT $LN1@vector
$LN2@vector:
0006b 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0006f e8 00 00 00 00 call ??1IOCP_SQL@@QEAA@XZ
00074 8b 45 58 mov eax, DWORD PTR __flags$[rbp]
00077 83 e0 01 and eax, 1
0007a 85 c0 test eax, eax
0007c 74 0e je SHORT $LN4@vector
0007e ba 48 00 00 00 mov edx, 72 ; 00000048H
00083 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00087 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete
$LN4@vector:
0008c 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
$LN1@vector:
00090 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00094 5d pop rbp
00095 c3 ret 0
??_EIOCP_SQL@@QEAAPEAXI@Z ENDP ; IOCP_SQL::`vector deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT ??1IOCP_SQL@@QEAA@XZ
_TEXT SEGMENT
this$ = 80
??1IOCP_SQL@@QEAA@XZ PROC ; IOCP_SQL::~IOCP_SQL, COMDAT
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00013 48 83 c0 08 add rax, 8
00017 48 8b c8 mov rcx, rax
0001a e8 00 00 00 00 call ??1CAdoConnection@@UEAA@XZ ; CAdoConnection::~CAdoConnection
0001f 90 npad 1
00020 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00024 5d pop rbp
00025 c3 ret 0
??1IOCP_SQL@@QEAA@XZ ENDP ; IOCP_SQL::~IOCP_SQL
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
this$ = 80
?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA PROC ; `IOCP_SQL::~IOCP_SQL'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32]
0000a 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0000e 48 83 c1 08 add rcx, 8
00012 e8 00 00 00 00 call ??1CAdoConnection@@UEAA@XZ ; CAdoConnection::~CAdoConnection
00017 48 83 c4 20 add rsp, 32 ; 00000020H
0001b 5d pop rbp
0001c c3 ret 0
?dtor$0@?0???1IOCP_SQL@@QEAA@XZ@4HA ENDP ; `IOCP_SQL::~IOCP_SQL'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; COMDAT ??0IOCP_SQL@@QEAA@XZ
_TEXT SEGMENT
this$ = 80
??0IOCP_SQL@@QEAA@XZ PROC ; IOCP_SQL::IOCP_SQL, COMDAT
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00013 48 83 c0 08 add rax, 8
00017 48 8b c8 mov rcx, rax
0001a e8 00 00 00 00 call ??0CAdoConnection@@QEAA@XZ ; CAdoConnection::CAdoConnection
0001f 90 npad 1
00020 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00024 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00028 5d pop rbp
00029 c3 ret 0
??0IOCP_SQL@@QEAA@XZ ENDP ; IOCP_SQL::IOCP_SQL
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
this$ = 80
?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA PROC ; `IOCP_SQL::IOCP_SQL'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32]
0000a 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0000e 48 83 c1 08 add rcx, 8
00012 e8 00 00 00 00 call ??1CAdoConnection@@UEAA@XZ ; CAdoConnection::~CAdoConnection
00017 48 83 c4 20 add rsp, 32 ; 00000020H
0001b 5d pop rbp
0001c c3 ret 0
?dtor$0@?0???0IOCP_SQL@@QEAA@XZ@4HA ENDP ; `IOCP_SQL::IOCP_SQL'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\public\ado\ado.h
; COMDAT ?SetID@CAdoConnection@@QEAAXJ@Z
_TEXT SEGMENT
this$ = 80
lID$ = 88
?SetID@CAdoConnection@@QEAAXJ@Z PROC ; CAdoConnection::SetID, COMDAT
; 174 : void SetID(long lID) {m_lID = lID;}
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 40 sub rsp, 64 ; 00000040H
0000e 48 8b ec mov rbp, rsp
00011 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00015 8b 4d 58 mov ecx, DWORD PTR lID$[rbp]
00018 89 48 0c mov DWORD PTR [rax+12], ecx
0001b 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001f 5d pop rbp
00020 c3 ret 0
?SetID@CAdoConnection@@QEAAXJ@Z ENDP ; CAdoConnection::SetID
_TEXT ENDS
; 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@@@@SAPEAUIAtlStringMgr@ATL@@XZ
_TEXT SEGMENT
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager, COMDAT
; 51 : {
$LN3:
00000 40 55 push rbp
00002 48 83 ec 60 sub rsp, 96 ; 00000060H
00006 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 52 : return( AfxGetStringManager() );
0000b e8 00 00 00 00 call ?AfxGetStringManager@@YAPEAUIAtlStringMgr@ATL@@XZ ; AfxGetStringManager
00010 90 npad 1
; 53 : }
00011 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00015 5d pop rbp
00016 c3 ret 0
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
_TEXT ENDS
; Function compile flags: /Odtp /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@@@@SAPEAUHINSTANCE__@@I@Z
_TEXT SEGMENT
nID$ = 80
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance, COMDAT
; 46 : {
$LN3:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 48 83 ec 60 sub rsp, 96 ; 00000060H
00009 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 47 : return( AfxFindStringResourceHandle( nID ) );
0000e 8b 4d 50 mov ecx, DWORD PTR nID$[rbp]
00011 e8 00 00 00 00 call ?AfxFindStringResourceHandle@@YAPEAUHINSTANCE__@@I@Z ; AfxFindStringResourceHandle
00016 90 npad 1
; 48 : }
00017 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001b 5d pop rbp
0001c c3 ret 0
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
_TEXT ENDS
; Function compile flags: /Odtp /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@@AEAA_NPEBX@Z
_TEXT SEGMENT
bRet$ = 0
nID$1 = 4
this$ = 96
pv$ = 104
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad, COMDAT
; 2705 : {
$LN5:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 70 sub rsp, 112 ; 00000070H
0000f 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 2706 : bool bRet = false;
00014 c6 45 00 00 mov BYTE PTR bRet$[rbp], 0
; 2707 :
; 2708 : if( (pv != NULL) && IS_INTRESOURCE( pv ) )
00018 48 83 7d 68 00 cmp QWORD PTR pv$[rbp], 0
0001d 74 2d je SHORT $LN2@CheckImpli
0001f 48 8b 45 68 mov rax, QWORD PTR pv$[rbp]
00023 48 c1 e8 10 shr rax, 16
00027 48 85 c0 test rax, rax
0002a 75 20 jne SHORT $LN2@CheckImpli
; 2709 : {
; 2710 : UINT nID = LOWORD( reinterpret_cast< DWORD_PTR >( pv ) );
0002c 48 8b 45 68 mov rax, QWORD PTR pv$[rbp]
00030 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00036 0f b7 c0 movzx eax, ax
00039 89 45 04 mov DWORD PTR nID$1[rbp], eax
; 2711 : (nID);
; 2712 : #ifdef _ATL_USE_WINAPI_FAMILY_DESKTOP_APP
; 2713 : if( !LoadString( nID ) )
0003c 8b 55 04 mov edx, DWORD PTR nID$1[rbp]
0003f 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00043 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
; 2714 : {
; 2715 : ATLTRACE( atlTraceString, 2, _T( "Warning: implicit LoadString(%u) failed\n" ), nID );
; 2716 : }
; 2717 : bRet = true;
00048 c6 45 00 01 mov BYTE PTR bRet$[rbp], 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 );
0004c 0f b6 45 00 movzx eax, BYTE PTR bRet$[rbp]
; 2724 : }
00050 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00054 5d pop rbp
00055 c3 ret 0
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAAHPEAUHINSTANCE__@@I@Z
_TEXT SEGMENT
pImage$ = 0
nLength$ = 8
pszBuffer$ = 16
this$ = 112
hInstance$ = 120
nID$ = 128
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
; 2350 : {
$LN4:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 2351 : const ATLSTRINGRESOURCEIMAGE* pImage = AtlGetStringResourceImage( hInstance, nID );
0001c 8b 95 80 00 00
00 mov edx, DWORD PTR nID$[rbp]
00022 48 8b 4d 78 mov rcx, QWORD PTR hInstance$[rbp]
00026 e8 00 00 00 00 call ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
0002b 48 89 45 00 mov QWORD PTR pImage$[rbp], rax
; 2352 : if( pImage == NULL )
0002f 48 83 7d 00 00 cmp QWORD PTR pImage$[rbp], 0
00034 75 04 jne SHORT $LN2@LoadString
; 2353 : {
; 2354 : return( FALSE );
00036 33 c0 xor eax, eax
00038 eb 5b jmp SHORT $LN1@LoadString
$LN2@LoadString:
; 2355 : }
; 2356 :
; 2357 : int nLength = StringTraits::GetBaseTypeLength( pImage->achString, pImage->nLength );
0003a 48 8b 45 00 mov rax, QWORD PTR pImage$[rbp]
0003e 0f b7 00 movzx eax, WORD PTR [rax]
00041 48 8b 4d 00 mov rcx, QWORD PTR pImage$[rbp]
00045 48 83 c1 02 add rcx, 2
00049 8b d0 mov edx, eax
0004b e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
00050 89 45 08 mov DWORD PTR nLength$[rbp], eax
; 2358 : PXSTR pszBuffer = this->GetBuffer( nLength );
00053 8b 55 08 mov edx, DWORD PTR nLength$[rbp]
00056 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
0005a e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
0005f 48 89 45 10 mov QWORD PTR pszBuffer$[rbp], rax
; 2359 : StringTraits::ConvertToBaseType( pszBuffer, nLength, pImage->achString, pImage->nLength );
00063 48 8b 45 00 mov rax, QWORD PTR pImage$[rbp]
00067 0f b7 00 movzx eax, WORD PTR [rax]
0006a 48 8b 4d 00 mov rcx, QWORD PTR pImage$[rbp]
0006e 48 83 c1 02 add rcx, 2
00072 44 8b c8 mov r9d, eax
00075 4c 8b c1 mov r8, rcx
00078 8b 55 08 mov edx, DWORD PTR nLength$[rbp]
0007b 48 8b 4d 10 mov rcx, QWORD PTR pszBuffer$[rbp]
0007f e8 00 00 00 00 call ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
; 2360 : this->ReleaseBufferSetLength( nLength );
00084 8b 55 08 mov edx, DWORD PTR nLength$[rbp]
00087 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
0008b e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
; 2361 :
; 2362 : return( TRUE );
00090 b8 01 00 00 00 mov eax, 1
$LN1@LoadString:
; 2363 : }
00095 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
00099 5d pop rbp
0009a c3 ret 0
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAAHI@Z
_TEXT SEGMENT
hInstance$ = 0
this$ = 96
nID$ = 104
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
; 2336 : {
$LN4:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 70 sub rsp, 112 ; 00000070H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 2337 : HINSTANCE hInstance = StringTraits::FindStringResourceInstance( nID );
00013 8b 4d 68 mov ecx, DWORD PTR nID$[rbp]
00016 e8 00 00 00 00 call ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
0001b 48 89 45 00 mov QWORD PTR hInstance$[rbp], rax
; 2338 : if( hInstance == NULL )
0001f 48 83 7d 00 00 cmp QWORD PTR hInstance$[rbp], 0
00024 75 04 jne SHORT $LN2@LoadString
; 2339 : {
; 2340 : return( FALSE );
00026 33 c0 xor eax, eax
00028 eb 11 jmp SHORT $LN1@LoadString
$LN2@LoadString:
; 2341 : }
; 2342 :
; 2343 : return( LoadString( hInstance, nID ) );
0002a 44 8b 45 68 mov r8d, DWORD PTR nID$[rbp]
0002e 48 8b 55 00 mov rdx, QWORD PTR hInstance$[rbp]
00032 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00036 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
$LN1@LoadString:
; 2344 : }
0003b 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
0003f 5d pop rbp
00040 c3 ret 0
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAAAEAV01@PEB_W@Z
_TEXT SEGMENT
this$ = 80
pszSrc$ = 88
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=, COMDAT
; 1318 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 60 sub rsp, 96 ; 00000060H
0000f 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 1319 : CThisSimpleString::operator=( pszSrc );
00014 48 8b 55 58 mov rdx, QWORD PTR pszSrc$[rbp]
00018 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0001c e8 00 00 00 00 call ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
; 1320 :
; 1321 : return( *this );
00021 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
; 1322 : }
00025 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00029 5d pop rbp
0002a c3 ret 0
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAA@XZ
_TEXT SEGMENT
this$ = 80
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; 1298 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 1299 : }
0000f 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00013 e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00018 90 npad 1
00019 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001d 5d pop rbp
0001e c3 ret 0
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
this$ = 80
?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA PROC ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32]
0000a 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0000e e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00013 48 83 c4 20 add rsp, 32 ; 00000020H
00017 5d pop rbp
00018 c3 ret 0
?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA ENDP ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /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@@QEAA@PEB_W@Z
_TEXT SEGMENT
this$ = 80
pszSrc$ = 88
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
; 1049 : {
$LN5:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 60 sub rsp, 96 ; 00000060H
0000f 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 1048 : CThisSimpleString( StringTraits::GetDefaultManager() )
00014 e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
00019 48 8b d0 mov rdx, rax
0001c 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00020 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
00025 90 npad 1
; 1050 : if( !CheckImplicitLoad( pszSrc ) )
00026 48 8b 55 58 mov rdx, QWORD PTR pszSrc$[rbp]
0002a 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0002e e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
00033 0f b6 c0 movzx eax, al
00036 85 c0 test eax, eax
00038 75 0e jne SHORT $LN2@CStringT
; 1051 : {
; 1052 : *this = pszSrc;
0003a 48 8b 55 58 mov rdx, QWORD PTR pszSrc$[rbp]
0003e 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00042 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
00047 90 npad 1
$LN2@CStringT:
; 1053 : }
; 1054 : }
00048 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
0004c 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00050 5d pop rbp
00051 c3 ret 0
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; COMDAT text$x
text$x SEGMENT
this$ = 80
pszSrc$ = 88
?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA PROC ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
00000 40 55 push rbp
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
00006 48 8d 6a 20 lea rbp, QWORD PTR [rdx+32]
0000a 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0000e e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
00013 48 83 c4 20 add rsp, 32 ; 00000020H
00017 5d pop rbp
00018 c3 ret 0
?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_W@Z@4HA ENDP ; `ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >'::`1'::dtor$0
text$x ENDS
; Function compile flags: /Odtp /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@@AEAAXH@Z
_TEXT SEGMENT
this$ = 80
nLength$ = 88
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetLength, COMDAT
; 867 : {
$LN5:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 60 sub rsp, 96 ; 00000060H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 868 : ATLASSERT( nLength >= 0 );
; 869 : ATLASSERT( nLength <= GetData()->nAllocLength );
; 870 :
; 871 : if( nLength < 0 || nLength > GetData()->nAllocLength)
00013 83 7d 58 00 cmp DWORD PTR nLength$[rbp], 0
00017 7c 11 jl SHORT $LN3@SetLength
00019 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0001d e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00022 8b 40 0c mov eax, DWORD PTR [rax+12]
00025 39 45 58 cmp DWORD PTR nLength$[rbp], eax
00028 7e 0a jle SHORT $LN2@SetLength
$LN3@SetLength:
; 872 : AtlThrow(E_INVALIDARG);
0002a b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H
0002f e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN2@SetLength:
; 873 :
; 874 : GetData()->nDataLength = nLength;
00034 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00038 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0003d 8b 4d 58 mov ecx, DWORD PTR nLength$[rbp]
00040 89 48 08 mov DWORD PTR [rax+8], ecx
; 875 : m_pszData[nLength] = 0;
00043 48 63 45 58 movsxd rax, DWORD PTR nLength$[rbp]
00047 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0004b 48 8b 09 mov rcx, QWORD PTR [rcx]
0004e 33 d2 xor edx, edx
00050 66 89 14 41 mov WORD PTR [rcx+rax*2], dx
$LN4@SetLength:
; 876 : }
00054 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00058 5d pop rbp
00059 c3 ret 0
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@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@@AEAAXH@Z
_TEXT SEGMENT
pOldData$ = 0
pStringMgr$ = 8
pNewData$ = 16
tv78 = 88
this$ = 112
nLength$ = 120
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Reallocate, COMDAT
; 849 : {
$LN6:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
00011 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 850 : CStringData* pOldData = GetData();
00016 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
0001a e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0001f 48 89 45 00 mov QWORD PTR pOldData$[rbp], rax
; 851 : ATLASSERT( pOldData->nAllocLength < nLength );
; 852 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
00023 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00027 48 8b 00 mov rax, QWORD PTR [rax]
0002a 48 89 45 08 mov QWORD PTR pStringMgr$[rbp], rax
; 853 : if ( pOldData->nAllocLength >= nLength || nLength <= 0)
0002e 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00032 8b 4d 78 mov ecx, DWORD PTR nLength$[rbp]
00035 39 48 0c cmp DWORD PTR [rax+12], ecx
00038 7d 06 jge SHORT $LN3@Reallocate
0003a 83 7d 78 00 cmp DWORD PTR nLength$[rbp], 0
0003e 7f 07 jg SHORT $LN2@Reallocate
$LN3@Reallocate:
; 854 : {
; 855 : ThrowMemoryException();
00040 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
; 856 : return;
00045 eb 41 jmp SHORT $LN1@Reallocate
$LN2@Reallocate:
; 857 : }
; 858 : CStringData* pNewData = pStringMgr->Reallocate( pOldData, nLength, sizeof( XCHAR ) );
00047 48 8b 45 08 mov rax, QWORD PTR pStringMgr$[rbp]
0004b 48 8b 00 mov rax, QWORD PTR [rax]
0004e 48 8b 40 10 mov rax, QWORD PTR [rax+16]
00052 48 89 45 58 mov QWORD PTR tv78[rbp], rax
00056 41 b9 02 00 00
00 mov r9d, 2
0005c 44 8b 45 78 mov r8d, DWORD PTR nLength$[rbp]
00060 48 8b 55 00 mov rdx, QWORD PTR pOldData$[rbp]
00064 48 8b 4d 08 mov rcx, QWORD PTR pStringMgr$[rbp]
00068 ff 55 58 call QWORD PTR tv78[rbp]
0006b 48 89 45 10 mov QWORD PTR pNewData$[rbp], rax
; 859 : if( pNewData == NULL )
0006f 48 83 7d 10 00 cmp QWORD PTR pNewData$[rbp], 0
00074 75 05 jne SHORT $LN4@Reallocate
; 860 : {
; 861 : ThrowMemoryException();
00076 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
$LN4@Reallocate:
; 862 : }
; 863 : Attach( pNewData );
0007b 48 8b 55 10 mov rdx, QWORD PTR pNewData$[rbp]
0007f 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00083 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN1@Reallocate:
$LN5@Reallocate:
; 864 : }
00088 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
0008c 5d pop rbp
0008d c3 ret 0
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@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@@AEAAXH@Z
_TEXT SEGMENT
pOldData$ = 0
nNewLength$1 = 8
this$ = 96
nLength$ = 104
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2, COMDAT
; 818 : {
$LN10:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 70 sub rsp, 112 ; 00000070H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 819 : CStringData* pOldData = GetData();
00013 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00017 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0001c 48 89 45 00 mov QWORD PTR pOldData$[rbp], rax
; 820 : if( pOldData->nDataLength > nLength )
00020 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00024 8b 4d 68 mov ecx, DWORD PTR nLength$[rbp]
00027 39 48 08 cmp DWORD PTR [rax+8], ecx
0002a 7e 0a jle SHORT $LN2@PrepareWri
; 821 : {
; 822 : nLength = pOldData->nDataLength;
0002c 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00030 8b 40 08 mov eax, DWORD PTR [rax+8]
00033 89 45 68 mov DWORD PTR nLength$[rbp], eax
$LN2@PrepareWri:
; 823 : }
; 824 : if( pOldData->IsShared() )
00036 48 8b 4d 00 mov rcx, QWORD PTR pOldData$[rbp]
0003a e8 00 00 00 00 call ?IsShared@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsShared
0003f 0f b6 c0 movzx eax, al
00042 85 c0 test eax, eax
00044 74 0e je SHORT $LN3@PrepareWri
; 825 : {
; 826 : Fork( nLength );
00046 8b 55 68 mov edx, DWORD PTR nLength$[rbp]
00049 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
0004d e8 00 00 00 00 call ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
; 827 : }
00052 eb 58 jmp SHORT $LN4@PrepareWri
$LN3@PrepareWri:
; 828 : else if( pOldData->nAllocLength < nLength )
00054 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00058 8b 4d 68 mov ecx, DWORD PTR nLength$[rbp]
0005b 39 48 0c cmp DWORD PTR [rax+12], ecx
0005e 7d 4c jge SHORT $LN5@PrepareWri
; 829 : {
; 830 : // Grow exponentially, until we hit 1G, then by 1M thereafter.
; 831 : int nNewLength = pOldData->nAllocLength;
00060 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00064 8b 40 0c mov eax, DWORD PTR [rax+12]
00067 89 45 08 mov DWORD PTR nNewLength$1[rbp], eax
; 832 : if( nNewLength > 1024 * 1024 * 1024 )
0006a 81 7d 08 00 00
00 40 cmp DWORD PTR nNewLength$1[rbp], 1073741824 ; 40000000H
00071 7e 0d jle SHORT $LN6@PrepareWri
; 833 : {
; 834 : nNewLength += 1024 * 1024;
00073 8b 45 08 mov eax, DWORD PTR nNewLength$1[rbp]
00076 05 00 00 10 00 add eax, 1048576 ; 00100000H
0007b 89 45 08 mov DWORD PTR nNewLength$1[rbp], eax
; 835 : }
0007e eb 12 jmp SHORT $LN7@PrepareWri
$LN6@PrepareWri:
; 836 : else
; 837 : {
; 838 : // Exponential growth factor is 1.5.
; 839 : nNewLength = nNewLength + nNewLength / 2;
00080 8b 45 08 mov eax, DWORD PTR nNewLength$1[rbp]
00083 99 cdq
00084 2b c2 sub eax, edx
00086 d1 f8 sar eax, 1
00088 8b 4d 08 mov ecx, DWORD PTR nNewLength$1[rbp]
0008b 03 c8 add ecx, eax
0008d 8b c1 mov eax, ecx
0008f 89 45 08 mov DWORD PTR nNewLength$1[rbp], eax
$LN7@PrepareWri:
; 840 : }
; 841 : if( nNewLength < nLength )
00092 8b 45 68 mov eax, DWORD PTR nLength$[rbp]
00095 39 45 08 cmp DWORD PTR nNewLength$1[rbp], eax
00098 7d 06 jge SHORT $LN8@PrepareWri
; 842 : {
; 843 : nNewLength = nLength;
0009a 8b 45 68 mov eax, DWORD PTR nLength$[rbp]
0009d 89 45 08 mov DWORD PTR nNewLength$1[rbp], eax
$LN8@PrepareWri:
; 844 : }
; 845 : Reallocate( nNewLength );
000a0 8b 55 08 mov edx, DWORD PTR nNewLength$1[rbp]
000a3 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
000a7 e8 00 00 00 00 call ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
$LN5@PrepareWri:
$LN4@PrepareWri:
; 846 : }
; 847 : }
000ac 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
000b0 5d pop rbp
000b1 c3 ret 0
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@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@@AEAAPEA_WH@Z
_TEXT SEGMENT
pOldData$ = 0
nShared$ = 8
nTooShort$ = 12
this$ = 96
nLength$ = 104
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite, COMDAT
; 803 : {
$LN5:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 70 sub rsp, 112 ; 00000070H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 804 : if (nLength < 0)
00013 83 7d 68 00 cmp DWORD PTR nLength$[rbp], 0
00017 7d 0a jge SHORT $LN2@PrepareWri
; 805 : AtlThrow(E_INVALIDARG);
00019 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H
0001e e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN2@PrepareWri:
; 806 :
; 807 : CStringData* pOldData = GetData();
00023 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00027 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0002c 48 89 45 00 mov QWORD PTR pOldData$[rbp], rax
; 808 : int nShared = 1-pOldData->nRefs; // nShared < 0 means true, >= 0 means false
00030 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00034 b9 01 00 00 00 mov ecx, 1
00039 2b 48 10 sub ecx, DWORD PTR [rax+16]
0003c 8b c1 mov eax, ecx
0003e 89 45 08 mov DWORD PTR nShared$[rbp], eax
; 809 : int nTooShort = pOldData->nAllocLength-nLength; // nTooShort < 0 means true, >= 0 means false
00041 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00045 8b 4d 68 mov ecx, DWORD PTR nLength$[rbp]
00048 8b 40 0c mov eax, DWORD PTR [rax+12]
0004b 2b c1 sub eax, ecx
0004d 89 45 0c mov DWORD PTR nTooShort$[rbp], eax
; 810 : if( (nShared|nTooShort) < 0 ) // If either sign bit is set (i.e. either is less than zero), we need to copy data
00050 8b 45 0c mov eax, DWORD PTR nTooShort$[rbp]
00053 8b 4d 08 mov ecx, DWORD PTR nShared$[rbp]
00056 0b c8 or ecx, eax
00058 8b c1 mov eax, ecx
0005a 85 c0 test eax, eax
0005c 7d 0c jge SHORT $LN3@PrepareWri
; 811 : {
; 812 : PrepareWrite2( nLength );
0005e 8b 55 68 mov edx, DWORD PTR nLength$[rbp]
00061 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00065 e8 00 00 00 00 call ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
$LN3@PrepareWri:
; 813 : }
; 814 :
; 815 : return( m_pszData );
0006a 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
0006e 48 8b 00 mov rax, QWORD PTR [rax]
$LN4@PrepareWri:
; 816 : }
00071 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00075 5d pop rbp
00076 c3 ret 0
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_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@@AEBAPEAUCStringData@2@XZ
_TEXT SEGMENT
this$ = 80
?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetData, COMDAT
; 799 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ec mov rbp, rsp
; 800 : return( reinterpret_cast< CStringData* >( m_pszData )-1 );
0000d 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00011 48 8b 00 mov rax, QWORD PTR [rax]
00014 48 83 e8 18 sub rax, 24
; 801 : }
00018 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001c 5d pop rbp
0001d c3 ret 0
?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@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@@AEAAXH@Z
_TEXT SEGMENT
pOldData$ = 0
nOldLength$ = 8
pNewData$ = 16
nCharsToCopy$ = 24
tv86 = 92
tv136 = 96
tv76 = 96
tv134 = 104
tv83 = 104
this$ = 128
nLength$ = 136
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Fork, COMDAT
; 783 : {
$LN6:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 81 ec 90 00
00 00 sub rsp, 144 ; 00000090H
00011 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 784 : CStringData* pOldData = GetData();
00016 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
0001d e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00022 48 89 45 00 mov QWORD PTR pOldData$[rbp], rax
; 785 : int nOldLength = pOldData->nDataLength;
00026 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
0002a 8b 40 08 mov eax, DWORD PTR [rax+8]
0002d 89 45 08 mov DWORD PTR nOldLength$[rbp], eax
; 786 : CStringData* pNewData = pOldData->pStringMgr->Clone()->Allocate( nLength, sizeof( XCHAR ) );
00030 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00034 48 8b 00 mov rax, QWORD PTR [rax]
00037 48 8b 4d 00 mov rcx, QWORD PTR pOldData$[rbp]
0003b 48 8b 09 mov rcx, QWORD PTR [rcx]
0003e 48 8b 00 mov rax, QWORD PTR [rax]
00041 ff 50 20 call QWORD PTR [rax+32]
00044 48 89 45 60 mov QWORD PTR tv76[rbp], rax
00048 48 8b 45 60 mov rax, QWORD PTR tv76[rbp]
0004c 48 8b 00 mov rax, QWORD PTR [rax]
0004f 48 8b 00 mov rax, QWORD PTR [rax]
00052 48 89 45 68 mov QWORD PTR tv83[rbp], rax
00056 41 b8 02 00 00
00 mov r8d, 2
0005c 8b 95 88 00 00
00 mov edx, DWORD PTR nLength$[rbp]
00062 48 8b 4d 60 mov rcx, QWORD PTR tv76[rbp]
00066 ff 55 68 call QWORD PTR tv83[rbp]
00069 48 89 45 10 mov QWORD PTR pNewData$[rbp], rax
; 787 : if( pNewData == NULL )
0006d 48 83 7d 10 00 cmp QWORD PTR pNewData$[rbp], 0
00072 75 05 jne SHORT $LN2@Fork
; 788 : {
; 789 : ThrowMemoryException();
00074 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'
00079 8b 85 88 00 00
00 mov eax, DWORD PTR nLength$[rbp]
0007f 39 45 08 cmp DWORD PTR nOldLength$[rbp], eax
00082 7d 08 jge SHORT $LN4@Fork
00084 8b 45 08 mov eax, DWORD PTR nOldLength$[rbp]
00087 89 45 5c mov DWORD PTR tv86[rbp], eax
0008a eb 09 jmp SHORT $LN5@Fork
$LN4@Fork:
0008c 8b 85 88 00 00
00 mov eax, DWORD PTR nLength$[rbp]
00092 89 45 5c mov DWORD PTR tv86[rbp], eax
$LN5@Fork:
00095 8b 45 5c mov eax, DWORD PTR tv86[rbp]
00098 ff c0 inc eax
0009a 89 45 18 mov DWORD PTR nCharsToCopy$[rbp], eax
; 792 : memcpy_s( PXSTR( pNewData->data() ), nCharsToCopy * sizeof( XCHAR ),
0009d 48 8b 4d 00 mov rcx, QWORD PTR pOldData$[rbp]
000a1 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
000a6 48 89 45 60 mov QWORD PTR tv136[rbp], rax
000aa 48 8b 4d 10 mov rcx, QWORD PTR pNewData$[rbp]
000ae e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
000b3 48 89 45 68 mov QWORD PTR tv134[rbp], rax
000b7 48 63 45 18 movsxd rax, DWORD PTR nCharsToCopy$[rbp]
000bb 48 d1 e0 shl rax, 1
000be 48 63 4d 18 movsxd rcx, DWORD PTR nCharsToCopy$[rbp]
000c2 48 d1 e1 shl rcx, 1
000c5 4c 8b c8 mov r9, rax
000c8 4c 8b 45 60 mov r8, QWORD PTR tv136[rbp]
000cc 48 8b d1 mov rdx, rcx
000cf 48 8b 4d 68 mov rcx, QWORD PTR tv134[rbp]
000d3 e8 00 00 00 00 call memcpy_s
; 793 : PCXSTR( pOldData->data() ), nCharsToCopy * sizeof( XCHAR ));
; 794 : pNewData->nDataLength = nOldLength;
000d8 48 8b 45 10 mov rax, QWORD PTR pNewData$[rbp]
000dc 8b 4d 08 mov ecx, DWORD PTR nOldLength$[rbp]
000df 89 48 08 mov DWORD PTR [rax+8], ecx
; 795 : pOldData->Release();
000e2 48 8b 4d 00 mov rcx, QWORD PTR pOldData$[rbp]
000e6 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
; 796 : Attach( pNewData );
000eb 48 8b 55 10 mov rdx, QWORD PTR pNewData$[rbp]
000ef 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR this$[rbp]
000f6 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
$LN3@Fork:
; 797 : }
000fb 48 8d 65 70 lea rsp, QWORD PTR [rbp+112]
000ff 5d pop rbp
00100 c3 ret 0
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@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@@AEAAXPEAUCStringData@2@@Z
_TEXT SEGMENT
this$ = 80
pData$ = 88
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Attach, COMDAT
; 779 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 60 sub rsp, 96 ; 00000060H
0000f 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 780 : m_pszData = static_cast< PXSTR >( pData->data() );
00014 48 8b 4d 58 mov rcx, QWORD PTR pData$[rbp]
00018 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data
0001d 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00021 48 89 01 mov QWORD PTR [rcx], rax
; 781 : }
00024 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00028 5d pop rbp
00029 c3 ret 0
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@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 : {
$LN3:
00000 40 55 push rbp
00002 48 83 ec 60 sub rsp, 96 ; 00000060H
00006 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 773 : AtlThrow( E_OUTOFMEMORY );
0000b b9 0e 00 07 80 mov ecx, -2147024882 ; ffffffff8007000eH
00010 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN2@ThrowMemor:
; 774 : }
00015 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00019 5d pop rbp
0001a 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@@SAHPEB_W@Z
_TEXT SEGMENT
psz$ = 80
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::StringLength, COMDAT
; 729 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 730 : if( psz == NULL )
0000f 48 83 7d 50 00 cmp QWORD PTR psz$[rbp], 0
00014 75 04 jne SHORT $LN2@StringLeng
; 731 : {
; 732 : return( 0 );
00016 33 c0 xor eax, eax
00018 eb 0a jmp SHORT $LN1@StringLeng
$LN2@StringLeng:
; 733 : }
; 734 : return( int( wcslen( psz ) ) );
0001a 48 8b 4d 50 mov rcx, QWORD PTR psz$[rbp]
0001e e8 00 00 00 00 call wcslen
00023 90 npad 1
$LN1@StringLeng:
; 735 : }
00024 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00028 5d pop rbp
00029 c3 ret 0
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::StringLength
_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 ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z
_TEXT SEGMENT
pchDest$ = 80
nDestLen$ = 88
pchSrc$ = 96
nChars$ = 104
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped, COMDAT
; 716 : {
$LN3:
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 83 ec 60 sub rsp, 96 ; 00000060H
00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 717 : memmove_s( pchDest, nDestLen*sizeof( XCHAR ),
0001e 48 63 45 68 movsxd rax, DWORD PTR nChars$[rbp]
00022 48 d1 e0 shl rax, 1
00025 48 8b 4d 58 mov rcx, QWORD PTR nDestLen$[rbp]
00029 48 d1 e1 shl rcx, 1
0002c 4c 8b c8 mov r9, rax
0002f 4c 8b 45 60 mov r8, QWORD PTR pchSrc$[rbp]
00033 48 8b d1 mov rdx, rcx
00036 48 8b 4d 50 mov rcx, QWORD PTR pchDest$[rbp]
0003a e8 00 00 00 00 call memmove_s
0003f 90 npad 1
; 718 : pchSrc, nChars*sizeof( XCHAR ) );
; 719 : }
00040 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00044 5d pop rbp
00045 c3 ret 0
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAAXPEB_WH@Z
_TEXT SEGMENT
nOldLength$1 = 0
nOffset$2 = 8
pszBuffer$3 = 16
tv90 = 88
tv81 = 88
this$ = 112
pszSrc$ = 120
nLength$ = 128
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
; 607 : {
$LN8:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 608 : if( nLength == 0 )
0001c 83 bd 80 00 00
00 00 cmp DWORD PTR nLength$[rbp], 0
00023 75 0e jne SHORT $LN2@SetString
; 609 : {
; 610 : Empty();
00025 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00029 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
; 611 : }
0002e e9 cc 00 00 00 jmp $LN3@SetString
$LN2@SetString:
; 612 : else
; 613 : {
; 614 : // It is possible that pszSrc points to a location inside of our
; 615 : // buffer. GetBuffer() might change m_pszData if (1) the buffer
; 616 : // is shared or (2) the buffer is too small to hold the new
; 617 : // string. We detect this aliasing, and modify pszSrc to point
; 618 : // into the newly allocated buffer instead.
; 619 :
; 620 : if(pszSrc == NULL)
00033 48 83 7d 78 00 cmp QWORD PTR pszSrc$[rbp], 0
00038 75 0a jne SHORT $LN4@SetString
; 621 : AtlThrow(E_INVALIDARG);
0003a b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H
0003f e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN4@SetString:
; 622 :
; 623 : UINT nOldLength = GetLength();
00044 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00048 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
0004d 89 45 00 mov DWORD PTR nOldLength$1[rbp], eax
; 624 : UINT_PTR nOffset = pszSrc-GetString();
00050 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00054 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
00059 48 8b 4d 78 mov rcx, QWORD PTR pszSrc$[rbp]
0005d 48 2b c8 sub rcx, rax
00060 48 8b c1 mov rax, rcx
00063 48 d1 f8 sar rax, 1
00066 48 89 45 08 mov QWORD PTR nOffset$2[rbp], rax
; 625 : // If 0 <= nOffset <= nOldLength, then pszSrc points into our
; 626 : // buffer
; 627 :
; 628 : PXSTR pszBuffer = GetBuffer( nLength );
0006a 8b 95 80 00 00
00 mov edx, DWORD PTR nLength$[rbp]
00070 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00074 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
00079 48 89 45 10 mov QWORD PTR pszBuffer$3[rbp], rax
; 629 : if( nOffset <= nOldLength )
0007d 8b 45 00 mov eax, DWORD PTR nOldLength$1[rbp]
00080 48 39 45 08 cmp QWORD PTR nOffset$2[rbp], rax
00084 77 37 ja SHORT $LN5@SetString
; 630 : {
; 631 : CopyCharsOverlapped( pszBuffer, GetAllocLength(),
00086 48 8b 45 10 mov rax, QWORD PTR pszBuffer$3[rbp]
0008a 48 8b 4d 08 mov rcx, QWORD PTR nOffset$2[rbp]
0008e 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2]
00092 48 89 45 58 mov QWORD PTR tv81[rbp], rax
00096 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
0009a e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
0009f 48 98 cdqe
000a1 44 8b 8d 80 00
00 00 mov r9d, DWORD PTR nLength$[rbp]
000a8 48 8b 4d 58 mov rcx, QWORD PTR tv81[rbp]
000ac 4c 8b c1 mov r8, rcx
000af 48 8b d0 mov rdx, rax
000b2 48 8b 4d 10 mov rcx, QWORD PTR pszBuffer$3[rbp]
000b6 e8 00 00 00 00 call ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
; 632 : pszBuffer+nOffset, nLength );
; 633 : }
000bb eb 33 jmp SHORT $LN6@SetString
$LN5@SetString:
; 634 : else
; 635 : {
; 636 : memcpy_s( pszBuffer, GetAllocLength() * sizeof( XCHAR ), pszSrc, nLength * sizeof( XCHAR ));
000bd 48 63 85 80 00
00 00 movsxd rax, DWORD PTR nLength$[rbp]
000c4 48 d1 e0 shl rax, 1
000c7 48 89 45 58 mov QWORD PTR tv90[rbp], rax
000cb 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
000cf e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
000d4 48 98 cdqe
000d6 48 d1 e0 shl rax, 1
000d9 48 8b 4d 58 mov rcx, QWORD PTR tv90[rbp]
000dd 4c 8b c9 mov r9, rcx
000e0 4c 8b 45 78 mov r8, QWORD PTR pszSrc$[rbp]
000e4 48 8b d0 mov rdx, rax
000e7 48 8b 4d 10 mov rcx, QWORD PTR pszBuffer$3[rbp]
000eb e8 00 00 00 00 call memcpy_s
$LN6@SetString:
; 637 : }
; 638 : ReleaseBufferSetLength( nLength );
000f0 8b 95 80 00 00
00 mov edx, DWORD PTR nLength$[rbp]
000f6 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
000fa e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
$LN3@SetString:
$LN7@SetString:
; 639 : }
; 640 : }
000ff 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
00103 5d pop rbp
00104 c3 ret 0
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_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@@QEAAXPEB_W@Z
_TEXT SEGMENT
this$ = 80
pszSrc$ = 88
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
; 601 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 60 sub rsp, 96 ; 00000060H
0000f 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 602 : SetString( pszSrc, StringLength( pszSrc ) );
00014 48 8b 4d 58 mov rcx, QWORD PTR pszSrc$[rbp]
00018 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
0001d 44 8b c0 mov r8d, eax
00020 48 8b 55 58 mov rdx, QWORD PTR pszSrc$[rbp]
00024 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00028 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
; 603 : }
0002d 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00031 5d pop rbp
00032 c3 ret 0
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_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@@QEAAXH@Z
_TEXT SEGMENT
this$ = 80
nNewLength$ = 88
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength, COMDAT
; 566 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 60 sub rsp, 96 ; 00000060H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 567 : ATLASSERT( nNewLength >= 0 );
; 568 : SetLength( nNewLength );
00013 8b 55 58 mov edx, DWORD PTR nNewLength$[rbp]
00016 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0001a e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
; 569 : }
0001f 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00023 5d pop rbp
00024 c3 ret 0
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@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@@QEBAPEB_WXZ
_TEXT SEGMENT
this$ = 80
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetString, COMDAT
; 528 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ec mov rbp, rsp
; 529 : return( m_pszData );
0000d 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00011 48 8b 00 mov rax, QWORD PTR [rax]
; 530 : }
00014 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00018 5d pop rbp
00019 c3 ret 0
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_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 ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ
_TEXT SEGMENT
this$ = 80
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetLength, COMDAT
; 518 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 519 : return( GetData()->nDataLength );
0000f 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00013 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00018 8b 40 08 mov eax, DWORD PTR [rax+8]
; 520 : }
0001b 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001f 5d pop rbp
00020 c3 ret 0
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ 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@@QEAAPEA_WH@Z
_TEXT SEGMENT
this$ = 80
nMinBufferLength$ = 88
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer, COMDAT
; 507 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 60 sub rsp, 96 ; 00000060H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 508 : return( PrepareWrite( nMinBufferLength ) );
00013 8b 55 58 mov edx, DWORD PTR nMinBufferLength$[rbp]
00016 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0001a e8 00 00 00 00 call ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
; 509 : }
0001f 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00023 5d pop rbp
00024 c3 ret 0
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_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@@QEBAHXZ
_TEXT SEGMENT
this$ = 80
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength, COMDAT
; 485 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 486 : return( GetData()->nAllocLength );
0000f 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
00013 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00018 8b 40 0c mov eax, DWORD PTR [rax+12]
; 487 : }
0001b 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001f 5d pop rbp
00020 c3 ret 0
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ 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@@QEAAXXZ
_TEXT SEGMENT
pOldData$ = 0
pStringMgr$ = 8
pNewData$1 = 16
this$ = 112
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::Empty, COMDAT
; 436 : {
$LN6:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 437 : CStringData* pOldData = GetData();
00012 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00016 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
0001b 48 89 45 00 mov QWORD PTR pOldData$[rbp], rax
; 438 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
0001f 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
00023 48 8b 00 mov rax, QWORD PTR [rax]
00026 48 89 45 08 mov QWORD PTR pStringMgr$[rbp], rax
; 439 : if( pOldData->nDataLength == 0 )
0002a 48 8b 45 00 mov rax, QWORD PTR pOldData$[rbp]
0002e 83 78 08 00 cmp DWORD PTR [rax+8], 0
00032 75 02 jne SHORT $LN2@Empty
; 440 : {
; 441 : return;
00034 eb 46 jmp SHORT $LN1@Empty
$LN2@Empty:
; 442 : }
; 443 :
; 444 : if( pOldData->IsLocked() )
00036 48 8b 4d 00 mov rcx, QWORD PTR pOldData$[rbp]
0003a e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked
0003f 0f b6 c0 movzx eax, al
00042 85 c0 test eax, eax
00044 74 0d je SHORT $LN3@Empty
; 445 : {
; 446 : // Don't reallocate a locked buffer that's shrinking
; 447 : SetLength( 0 );
00046 33 d2 xor edx, edx
00048 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
0004c e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
; 448 : }
00051 eb 29 jmp SHORT $LN1@Empty
$LN3@Empty:
; 449 : else
; 450 : {
; 451 : pOldData->Release();
00053 48 8b 4d 00 mov rcx, QWORD PTR pOldData$[rbp]
00057 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
; 452 : CStringData* pNewData = pStringMgr->GetNilString();
0005c 48 8b 45 08 mov rax, QWORD PTR pStringMgr$[rbp]
00060 48 8b 00 mov rax, QWORD PTR [rax]
00063 48 8b 4d 08 mov rcx, QWORD PTR pStringMgr$[rbp]
00067 ff 50 18 call QWORD PTR [rax+24]
0006a 48 89 45 10 mov QWORD PTR pNewData$1[rbp], rax
; 453 : Attach( pNewData );
0006e 48 8b 55 10 mov rdx, QWORD PTR pNewData$1[rbp]
00072 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
00076 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
0007b 90 npad 1
$LN1@Empty:
; 454 : }
; 455 : }
0007c 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
00080 5d pop rbp
00081 c3 ret 0
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::Empty
_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@@QEAAAEAV01@PEB_W@Z
_TEXT SEGMENT
this$ = 80
pszSrc$ = 88
??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::operator=, COMDAT
; 313 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 60 sub rsp, 96 ; 00000060H
0000f 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 314 : SetString( pszSrc );
00014 48 8b 55 58 mov rdx, QWORD PTR pszSrc$[rbp]
00018 48 8b 4d 50 mov rcx, QWORD PTR this$[rbp]
0001c e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
; 315 :
; 316 : return( *this );
00021 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
; 317 : }
00025 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00029 5d pop rbp
0002a c3 ret 0
??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::operator=
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAA@XZ
_TEXT SEGMENT
pData$ = 0
this$ = 96
??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>, COMDAT
; 260 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 70 sub rsp, 112 ; 00000070H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 261 : CStringData* pData = GetData();
0000f 48 8b 4d 60 mov rcx, QWORD PTR this$[rbp]
00013 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
00018 48 89 45 00 mov QWORD PTR pData$[rbp], rax
; 262 : pData->Release();
0001c 48 8b 4d 00 mov rcx, QWORD PTR pData$[rbp]
00020 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release
; 263 : }
00025 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00029 5d pop rbp
0002a c3 ret 0
??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
_TEXT ENDS
; Function compile flags: /Odtp /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@@QEAA@PEAUIAtlStringMgr@1@@Z
_TEXT SEGMENT
__atl_condVal$1 = 0
pData$ = 8
tv65 = 80
this$ = 112
pStringMgr$ = 120
??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>, COMDAT
; 203 : explicit CSimpleStringT(_Inout_ IAtlStringMgr* pStringMgr)
$LN12:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
$LN4@CSimpleStr:
; 204 : {
; 205 : ATLENSURE( pStringMgr != NULL );
00017 48 83 7d 78 00 cmp QWORD PTR pStringMgr$[rbp], 0
0001c 74 09 je SHORT $LN10@CSimpleStr
0001e c7 45 50 01 00
00 00 mov DWORD PTR tv65[rbp], 1
00025 eb 07 jmp SHORT $LN11@CSimpleStr
$LN10@CSimpleStr:
00027 c7 45 50 00 00
00 00 mov DWORD PTR tv65[rbp], 0
$LN11@CSimpleStr:
0002e 8b 45 50 mov eax, DWORD PTR tv65[rbp]
00031 89 45 00 mov DWORD PTR __atl_condVal$1[rbp], eax
$LN7@CSimpleStr:
00034 33 c0 xor eax, eax
00036 85 c0 test eax, eax
00038 75 fa jne SHORT $LN7@CSimpleStr
0003a 83 7d 00 00 cmp DWORD PTR __atl_condVal$1[rbp], 0
0003e 75 0a jne SHORT $LN8@CSimpleStr
00040 b9 05 40 00 80 mov ecx, -2147467259 ; ffffffff80004005H
00045 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl
$LN8@CSimpleStr:
0004a 33 c0 xor eax, eax
0004c 85 c0 test eax, eax
0004e 75 c7 jne SHORT $LN4@CSimpleStr
; 206 : CStringData* pData = pStringMgr->GetNilString();
00050 48 8b 45 78 mov rax, QWORD PTR pStringMgr$[rbp]
00054 48 8b 00 mov rax, QWORD PTR [rax]
00057 48 8b 4d 78 mov rcx, QWORD PTR pStringMgr$[rbp]
0005b ff 50 18 call QWORD PTR [rax+24]
0005e 48 89 45 08 mov QWORD PTR pData$[rbp], rax
; 207 : Attach( pData );
00062 48 8b 55 08 mov rdx, QWORD PTR pData$[rbp]
00066 48 8b 4d 70 mov rcx, QWORD PTR this$[rbp]
0006a e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
; 208 : }
0006f 48 8b 45 70 mov rax, QWORD PTR this$[rbp]
$LN9@CSimpleStr:
00073 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
00077 5d pop rbp
00078 c3 ret 0
??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
_TEXT ENDS
; Function compile flags: /Odtp /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@@SAXPEA_WHPEB_WH@Z
_TEXT SEGMENT
pszDest$ = 80
nDestLength$ = 88
pszSrc$ = 96
nSrcLength$ = 104
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType, COMDAT
; 789 : {
$LN4:
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx
0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00013 55 push rbp
00014 48 83 ec 60 sub rsp, 96 ; 00000060H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 790 : if (nSrcLength == -1) { nSrcLength=1 + GetBaseTypeLength(pszSrc); }
0001d 83 7d 68 ff cmp DWORD PTR nSrcLength$[rbp], -1
00021 75 0e jne SHORT $LN2@ConvertToB
00023 48 8b 4d 60 mov rcx, QWORD PTR pszSrc$[rbp]
00027 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
0002c ff c0 inc eax
0002e 89 45 68 mov DWORD PTR nSrcLength$[rbp], eax
$LN2@ConvertToB:
; 791 : // nLen is in wchar_ts
; 792 : Checked::wmemcpy_s(pszDest, nDestLength, pszSrc, nSrcLength);
00031 48 63 45 68 movsxd rax, DWORD PTR nSrcLength$[rbp]
00035 48 63 4d 58 movsxd rcx, DWORD PTR nDestLength$[rbp]
00039 4c 8b c8 mov r9, rax
0003c 4c 8b 45 60 mov r8, QWORD PTR pszSrc$[rbp]
00040 48 8b d1 mov rdx, rcx
00043 48 8b 4d 50 mov rcx, QWORD PTR pszDest$[rbp]
00047 e8 00 00 00 00 call ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ; ATL::Checked::wmemcpy_s
; 793 : }
0004c 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00050 5d pop rbp
00051 c3 ret 0
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_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@@SAHPEB_WH@Z
_TEXT SEGMENT
pszSrc$ = 80
nLength$ = 88
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
; 768 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 40 sub rsp, 64 ; 00000040H
0000e 48 8b ec mov rbp, rsp
; 769 : (void)pszSrc;
; 770 : // Returns required buffer size in wchar_ts
; 771 : return nLength;
00011 8b 45 58 mov eax, DWORD PTR nLength$[rbp]
; 772 : }
00014 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00018 5d pop rbp
00019 c3 ret 0
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_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@@SAHPEB_W@Z
_TEXT SEGMENT
pszSrc$ = 80
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
; 760 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 761 : // Returns required buffer size in wchar_ts
; 762 : return AtlStrLen( pszSrc );
0000f 48 8b 4d 50 mov rcx, QWORD PTR pszSrc$[rbp]
00013 e8 00 00 00 00 call ?AtlStrLen@ATL@@YAHPEB_W@Z ; ATL::AtlStrLen
00018 90 npad 1
; 763 : }
00019 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001d 5d pop rbp
0001e c3 ret 0
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@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\atlsimpstr.h
; COMDAT ?Release@CStringData@ATL@@QEAAXXZ
_TEXT SEGMENT
tv77 = 64
tv79 = 72
this$ = 96
?Release@CStringData@ATL@@QEAAXXZ PROC ; ATL::CStringData::Release, COMDAT
; 85 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 70 sub rsp, 112 ; 00000070H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 86 : ATLASSERT( nRefs != 0 );
; 87 :
; 88 : if( _InterlockedDecrement( &nRefs ) <= 0 )
0000f 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00013 48 83 c0 10 add rax, 16
00017 b9 ff ff ff ff mov ecx, -1
0001c f0 0f c1 08 lock xadd DWORD PTR [rax], ecx
00020 ff c9 dec ecx
00022 8b c1 mov eax, ecx
00024 85 c0 test eax, eax
00026 7f 28 jg SHORT $LN2@Release
; 89 : {
; 90 : pStringMgr->Free( this );
00028 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
0002c 48 8b 00 mov rax, QWORD PTR [rax]
0002f 48 89 45 40 mov QWORD PTR tv77[rbp], rax
00033 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00037 48 8b 00 mov rax, QWORD PTR [rax]
0003a 48 8b 00 mov rax, QWORD PTR [rax]
0003d 48 8b 40 08 mov rax, QWORD PTR [rax+8]
00041 48 89 45 48 mov QWORD PTR tv79[rbp], rax
00045 48 8b 55 60 mov rdx, QWORD PTR this$[rbp]
00049 48 8b 4d 40 mov rcx, QWORD PTR tv77[rbp]
0004d ff 55 48 call QWORD PTR tv79[rbp]
$LN2@Release:
; 91 : }
; 92 : }
00050 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00054 5d pop rbp
00055 c3 ret 0
?Release@CStringData@ATL@@QEAAXXZ 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@@QEBA_NXZ
_TEXT SEGMENT
tv66 = 64
this$ = 96
?IsShared@CStringData@ATL@@QEBA_NXZ PROC ; ATL::CStringData::IsShared, COMDAT
; 72 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 50 sub rsp, 80 ; 00000050H
0000a 48 8b ec mov rbp, rsp
; 73 : return( nRefs > 1 );
0000d 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00011 83 78 10 01 cmp DWORD PTR [rax+16], 1
00015 7e 09 jle SHORT $LN3@IsShared
00017 c7 45 40 01 00
00 00 mov DWORD PTR tv66[rbp], 1
0001e eb 07 jmp SHORT $LN4@IsShared
$LN3@IsShared:
00020 c7 45 40 00 00
00 00 mov DWORD PTR tv66[rbp], 0
$LN4@IsShared:
00027 0f b6 45 40 movzx eax, BYTE PTR tv66[rbp]
; 74 : }
0002b 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
0002f 5d pop rbp
00030 c3 ret 0
?IsShared@CStringData@ATL@@QEBA_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@@QEBA_NXZ
_TEXT SEGMENT
tv66 = 64
this$ = 96
?IsLocked@CStringData@ATL@@QEBA_NXZ PROC ; ATL::CStringData::IsLocked, COMDAT
; 68 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 50 sub rsp, 80 ; 00000050H
0000a 48 8b ec mov rbp, rsp
; 69 : return nRefs < 0;
0000d 48 8b 45 60 mov rax, QWORD PTR this$[rbp]
00011 83 78 10 00 cmp DWORD PTR [rax+16], 0
00015 7d 09 jge SHORT $LN3@IsLocked
00017 c7 45 40 01 00
00 00 mov DWORD PTR tv66[rbp], 1
0001e eb 07 jmp SHORT $LN4@IsLocked
$LN3@IsLocked:
00020 c7 45 40 00 00
00 00 mov DWORD PTR tv66[rbp], 0
$LN4@IsLocked:
00027 0f b6 45 40 movzx eax, BYTE PTR tv66[rbp]
; 70 : }
0002b 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
0002f 5d pop rbp
00030 c3 ret 0
?IsLocked@CStringData@ATL@@QEBA_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@@QEAAPEAXXZ
_TEXT SEGMENT
this$ = 80
?data@CStringData@ATL@@QEAAPEAXXZ PROC ; ATL::CStringData::data, COMDAT
; 58 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ec mov rbp, rsp
; 59 : return (this+1);
0000d 48 8b 45 50 mov rax, QWORD PTR this$[rbp]
00011 48 83 c0 18 add rax, 24
; 60 : }
00015 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00019 5d pop rbp
0001a c3 ret 0
?data@CStringData@ATL@@QEAAPEAXXZ 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 ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z
_TEXT SEGMENT
hResource$ = 0
hInstance$ = 96
id$ = 104
?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z PROC ; ATL::AtlGetStringResourceImage, COMDAT
; 370 : {
$LN4:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 48 83 ec 70 sub rsp, 112 ; 00000070H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 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);
00013 8b 45 68 mov eax, DWORD PTR id$[rbp]
00016 c1 e8 04 shr eax, 4
00019 ff c0 inc eax
0001b 25 ff ff 00 00 and eax, 65535 ; 0000ffffH
00020 0f b7 c0 movzx eax, ax
00023 41 b8 06 00 00
00 mov r8d, 6
00029 8b d0 mov edx, eax
0002b 48 8b 4d 60 mov rcx, QWORD PTR hInstance$[rbp]
0002f ff 15 00 00 00
00 call QWORD PTR __imp_FindResourceW
00035 48 89 45 00 mov QWORD PTR hResource$[rbp], rax
; 377 : if( hResource == NULL )
00039 48 83 7d 00 00 cmp QWORD PTR hResource$[rbp], 0
0003e 75 04 jne SHORT $LN2@AtlGetStri
; 378 : {
; 379 : return( NULL );
00040 33 c0 xor eax, eax
00042 eb 12 jmp SHORT $LN1@AtlGetStri
$LN2@AtlGetStri:
; 380 : }
; 381 :
; 382 : return _AtlGetStringResourceImage( hInstance, hResource, id );
00044 44 8b 45 68 mov r8d, DWORD PTR id$[rbp]
00048 48 8b 55 00 mov rdx, QWORD PTR hResource$[rbp]
0004c 48 8b 4d 60 mov rcx, QWORD PTR hInstance$[rbp]
00050 e8 00 00 00 00 call ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
00055 90 npad 1
$LN1@AtlGetStri:
; 383 : }
00056 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
0005a 5d pop rbp
0005b c3 ret 0
?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ENDP ; ATL::AtlGetStringResourceImage
_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@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z
_TEXT SEGMENT
pImage$ = 0
pImageEnd$ = 8
nResourceSize$ = 16
hGlobal$ = 24
iIndex$ = 32
hInstance$ = 128
hResource$ = 136
id$ = 144
?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z PROC ; ATL::_AtlGetStringResourceImage, COMDAT
; 327 : {
$LN9:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 48 81 ec 90 00
00 00 sub rsp, 144 ; 00000090H
00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 328 : const ATLSTRINGRESOURCEIMAGE* pImage;
; 329 : const ATLSTRINGRESOURCEIMAGE* pImageEnd;
; 330 : ULONG nResourceSize;
; 331 : HGLOBAL hGlobal;
; 332 : UINT iIndex;
; 333 :
; 334 : hGlobal = ::LoadResource( hInstance, hResource );
0001c 48 8b 95 88 00
00 00 mov rdx, QWORD PTR hResource$[rbp]
00023 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR hInstance$[rbp]
0002a ff 15 00 00 00
00 call QWORD PTR __imp_LoadResource
00030 48 89 45 18 mov QWORD PTR hGlobal$[rbp], rax
; 335 : if( hGlobal == NULL )
00034 48 83 7d 18 00 cmp QWORD PTR hGlobal$[rbp], 0
00039 75 07 jne SHORT $LN4@AtlGetStri
; 336 : {
; 337 : return( NULL );
0003b 33 c0 xor eax, eax
0003d e9 9f 00 00 00 jmp $LN1@AtlGetStri
$LN4@AtlGetStri:
; 338 : }
; 339 :
; 340 : pImage = (const ATLSTRINGRESOURCEIMAGE*)::LockResource( hGlobal );
00042 48 8b 4d 18 mov rcx, QWORD PTR hGlobal$[rbp]
00046 ff 15 00 00 00
00 call QWORD PTR __imp_LockResource
0004c 48 89 45 00 mov QWORD PTR pImage$[rbp], rax
; 341 : if( pImage == NULL )
00050 48 83 7d 00 00 cmp QWORD PTR pImage$[rbp], 0
00055 75 07 jne SHORT $LN5@AtlGetStri
; 342 : {
; 343 : return( NULL );
00057 33 c0 xor eax, eax
00059 e9 83 00 00 00 jmp $LN1@AtlGetStri
$LN5@AtlGetStri:
; 344 : }
; 345 :
; 346 : nResourceSize = ::SizeofResource( hInstance, hResource );
0005e 48 8b 95 88 00
00 00 mov rdx, QWORD PTR hResource$[rbp]
00065 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR hInstance$[rbp]
0006c ff 15 00 00 00
00 call QWORD PTR __imp_SizeofResource
00072 89 45 10 mov DWORD PTR nResourceSize$[rbp], eax
; 347 : pImageEnd = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+nResourceSize);
00075 8b 45 10 mov eax, DWORD PTR nResourceSize$[rbp]
00078 48 8b 4d 00 mov rcx, QWORD PTR pImage$[rbp]
0007c 48 03 c8 add rcx, rax
0007f 48 8b c1 mov rax, rcx
00082 48 89 45 08 mov QWORD PTR pImageEnd$[rbp], rax
; 348 : iIndex = id&0x000f;
00086 8b 85 90 00 00
00 mov eax, DWORD PTR id$[rbp]
0008c 83 e0 0f and eax, 15
0008f 89 45 20 mov DWORD PTR iIndex$[rbp], eax
$LN2@AtlGetStri:
; 349 :
; 350 : while( (iIndex > 0) && (pImage < pImageEnd) )
00092 83 7d 20 00 cmp DWORD PTR iIndex$[rbp], 0
00096 76 28 jbe SHORT $LN3@AtlGetStri
00098 48 8b 45 08 mov rax, QWORD PTR pImageEnd$[rbp]
0009c 48 39 45 00 cmp QWORD PTR pImage$[rbp], rax
000a0 73 1e jae SHORT $LN3@AtlGetStri
; 351 : {
; 352 : pImage = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+(sizeof( ATLSTRINGRESOURCEIMAGE )+(pImage->nLength*sizeof( WCHAR ))));
000a2 48 8b 45 00 mov rax, QWORD PTR pImage$[rbp]
000a6 0f b7 00 movzx eax, WORD PTR [rax]
000a9 48 8b 4d 00 mov rcx, QWORD PTR pImage$[rbp]
000ad 48 8d 44 41 02 lea rax, QWORD PTR [rcx+rax*2+2]
000b2 48 89 45 00 mov QWORD PTR pImage$[rbp], rax
; 353 : iIndex--;
000b6 8b 45 20 mov eax, DWORD PTR iIndex$[rbp]
000b9 ff c8 dec eax
000bb 89 45 20 mov DWORD PTR iIndex$[rbp], eax
; 354 : }
000be eb d2 jmp SHORT $LN2@AtlGetStri
$LN3@AtlGetStri:
; 355 : if( pImage >= pImageEnd )
000c0 48 8b 45 08 mov rax, QWORD PTR pImageEnd$[rbp]
000c4 48 39 45 00 cmp QWORD PTR pImage$[rbp], rax
000c8 72 04 jb SHORT $LN6@AtlGetStri
; 356 : {
; 357 : return( NULL );
000ca 33 c0 xor eax, eax
000cc eb 13 jmp SHORT $LN1@AtlGetStri
$LN6@AtlGetStri:
; 358 : }
; 359 : if( pImage->nLength == 0 )
000ce 48 8b 45 00 mov rax, QWORD PTR pImage$[rbp]
000d2 0f b7 00 movzx eax, WORD PTR [rax]
000d5 85 c0 test eax, eax
000d7 75 04 jne SHORT $LN7@AtlGetStri
; 360 : {
; 361 : return( NULL );
000d9 33 c0 xor eax, eax
000db eb 04 jmp SHORT $LN1@AtlGetStri
$LN7@AtlGetStri:
; 362 : }
; 363 :
; 364 : return( pImage );
000dd 48 8b 45 00 mov rax, QWORD PTR pImage$[rbp]
$LN1@AtlGetStri:
; 365 : }
000e1 48 8d 65 70 lea rsp, QWORD PTR [rbp+112]
000e5 5d pop rbp
000e6 c3 ret 0
?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ENDP ; ATL::_AtlGetStringResourceImage
_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 ?AtlStrLen@ATL@@YAHPEB_W@Z
_TEXT SEGMENT
str$ = 80
?AtlStrLen@ATL@@YAHPEB_W@Z PROC ; ATL::AtlStrLen, COMDAT
; 60 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 60 sub rsp, 96 ; 00000060H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 61 : if (str == NULL)
0000f 48 83 7d 50 00 cmp QWORD PTR str$[rbp], 0
00014 75 04 jne SHORT $LN2@AtlStrLen
; 62 : return 0;
00016 33 c0 xor eax, eax
00018 eb 09 jmp SHORT $LN1@AtlStrLen
$LN2@AtlStrLen:
; 63 : return static_cast<int>(::wcslen(str));
0001a 48 8b 4d 50 mov rcx, QWORD PTR str$[rbp]
0001e e8 00 00 00 00 call wcslen
$LN1@AtlStrLen:
; 64 : }
00023 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00027 5d pop rbp
00028 c3 ret 0
?AtlStrLen@ATL@@YAHPEB_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@@YAXPEA_W_KPEB_W1@Z
_TEXT SEGMENT
_S1$ = 80
_N1$ = 88
_S2$ = 96
_N$ = 104
?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z PROC ; ATL::Checked::wmemcpy_s, COMDAT
; 77 : {
$LN3:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 83 ec 60 sub rsp, 96 ; 00000060H
00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 78 : ATLMFC_CRT_ERRORCHECK(::wmemcpy_s(_S1, _N1, _S2, _N));
0001e 4c 8b 4d 68 mov r9, QWORD PTR _N$[rbp]
00022 4c 8b 45 60 mov r8, QWORD PTR _S2$[rbp]
00026 48 8b 55 58 mov rdx, QWORD PTR _N1$[rbp]
0002a 48 8b 4d 50 mov rcx, QWORD PTR _S1$[rbp]
0002e e8 00 00 00 00 call wmemcpy_s
00033 8b c8 mov ecx, eax
00035 e8 00 00 00 00 call ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
; 79 : }
0003a 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0003e 5d pop rbp
0003f c3 ret 0
?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@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@@YAXJ@Z
_TEXT SEGMENT
hr$ = 80
?AtlThrowImpl@ATL@@YAXJ@Z PROC ; ATL::AtlThrowImpl, COMDAT
; 65 : {
$LN5:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 48 83 ec 60 sub rsp, 96 ; 00000060H
00009 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 66 : ATLTRACE(atlTraceException, 0, _T("AtlThrow: hr = 0x%x\n"), hr );
; 67 : #ifdef _AFX
; 68 : if( hr == E_OUTOFMEMORY )
0000e 81 7d 50 0e 00
07 80 cmp DWORD PTR hr$[rbp], -2147024882 ; ffffffff8007000eH
00015 75 07 jne SHORT $LN2@AtlThrowIm
; 69 : {
; 70 : AfxThrowMemoryException();
00017 e8 00 00 00 00 call ?AfxThrowMemoryException@@YAXXZ ; AfxThrowMemoryException
; 71 : }
0001c eb 08 jmp SHORT $LN3@AtlThrowIm
$LN2@AtlThrowIm:
; 72 : else
; 73 : {
; 74 : AfxThrowOleException( hr );
0001e 8b 4d 50 mov ecx, DWORD PTR hr$[rbp]
00021 e8 00 00 00 00 call ?AfxThrowOleException@@YAXJ@Z ; AfxThrowOleException
$LN3@AtlThrowIm:
$LN4@AtlThrowIm:
; 75 : }
; 76 : #else
; 77 : throw CAtlException( hr );
; 78 : #endif
; 79 : };
00026 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0002a 5d pop rbp
0002b c3 ret 0
?AtlThrowImpl@ATL@@YAXJ@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.h
; COMDAT ?AfxCrtErrorCheck@@YAHH@Z
_TEXT SEGMENT
tv64 = 64
error$ = 96
?AfxCrtErrorCheck@@YAHH@Z PROC ; AfxCrtErrorCheck, COMDAT
; 506 : {
$LN11:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 48 83 ec 70 sub rsp, 112 ; 00000070H
00009 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 507 : switch(error)
0000e 8b 45 60 mov eax, DWORD PTR error$[rbp]
00011 89 45 40 mov DWORD PTR tv64[rbp], eax
00014 83 7d 40 00 cmp DWORD PTR tv64[rbp], 0
00018 74 28 je SHORT $LN8@AfxCrtErro
0001a 83 7d 40 0c cmp DWORD PTR tv64[rbp], 12
0001e 74 14 je SHORT $LN4@AfxCrtErro
00020 83 7d 40 16 cmp DWORD PTR tv64[rbp], 22
00024 74 15 je SHORT $LN5@AfxCrtErro
00026 83 7d 40 22 cmp DWORD PTR tv64[rbp], 34 ; 00000022H
0002a 74 0f je SHORT $LN6@AfxCrtErro
0002c 83 7d 40 50 cmp DWORD PTR tv64[rbp], 80 ; 00000050H
00030 74 10 je SHORT $LN7@AfxCrtErro
00032 eb 10 jmp SHORT $LN9@AfxCrtErro
$LN4@AfxCrtErro:
; 508 : {
; 509 : case ENOMEM:
; 510 : AfxThrowMemoryException();
00034 e8 00 00 00 00 call ?AfxThrowMemoryException@@YAXXZ ; AfxThrowMemoryException
; 511 : break;
00039 eb 0e jmp SHORT $LN2@AfxCrtErro
$LN5@AfxCrtErro:
$LN6@AfxCrtErro:
; 512 : case EINVAL:
; 513 : case ERANGE:
; 514 : AfxThrowInvalidArgException();
0003b e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException
; 515 : break;
00040 eb 07 jmp SHORT $LN2@AfxCrtErro
$LN7@AfxCrtErro:
$LN8@AfxCrtErro:
; 516 : case STRUNCATE:
; 517 : case 0:
; 518 : break;
00042 eb 05 jmp SHORT $LN2@AfxCrtErro
$LN9@AfxCrtErro:
; 519 : default:
; 520 : AfxThrowInvalidArgException();
00044 e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException
$LN2@AfxCrtErro:
; 521 : break;
; 522 : }
; 523 : return error;
00049 8b 45 60 mov eax, DWORD PTR error$[rbp]
$LN10@AfxCrtErro:
; 524 : }
0004c 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00050 5d pop rbp
00051 c3 ret 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
_Expr_val$1 = 0
_Expr_val$2 = 4
_Expr_val$3 = 8
tv74 = 76
tv70 = 76
tv66 = 76
_Destination$ = 96
_DestinationSize$ = 104
_Source$ = 112
_SourceSize$ = 120
memmove_s PROC ; COMDAT
; 73 : {
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 83 ec 70 sub rsp, 112 ; 00000070H
00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 74 : if (_SourceSize == 0)
0001e 48 83 7d 78 00 cmp QWORD PTR _SourceSize$[rbp], 0
00023 75 07 jne SHORT $LN2@memmove_s
; 75 : {
; 76 : return 0;
00025 33 c0 xor eax, eax
00027 e9 c7 00 00 00 jmp $LN1@memmove_s
$LN2@memmove_s:
; 77 : }
; 78 :
; 79 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
0002c 48 83 7d 60 00 cmp QWORD PTR _Destination$[rbp], 0
00031 74 09 je SHORT $LN7@memmove_s
00033 c7 45 4c 01 00
00 00 mov DWORD PTR tv66[rbp], 1
0003a eb 07 jmp SHORT $LN8@memmove_s
$LN7@memmove_s:
0003c c7 45 4c 00 00
00 00 mov DWORD PTR tv66[rbp], 0
$LN8@memmove_s:
00043 8b 45 4c mov eax, DWORD PTR tv66[rbp]
00046 89 45 00 mov DWORD PTR _Expr_val$1[rbp], eax
00049 83 7d 00 00 cmp DWORD PTR _Expr_val$1[rbp], 0
0004d 75 1a jne SHORT $LN3@memmove_s
0004f e8 00 00 00 00 call _errno
00054 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
0005a e8 00 00 00 00 call _invalid_parameter_noinfo
0005f b8 16 00 00 00 mov eax, 22
00064 e9 8a 00 00 00 jmp $LN1@memmove_s
$LN3@memmove_s:
; 80 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
00069 48 83 7d 70 00 cmp QWORD PTR _Source$[rbp], 0
0006e 74 09 je SHORT $LN9@memmove_s
00070 c7 45 4c 01 00
00 00 mov DWORD PTR tv70[rbp], 1
00077 eb 07 jmp SHORT $LN10@memmove_s
$LN9@memmove_s:
00079 c7 45 4c 00 00
00 00 mov DWORD PTR tv70[rbp], 0
$LN10@memmove_s:
00080 8b 45 4c mov eax, DWORD PTR tv70[rbp]
00083 89 45 04 mov DWORD PTR _Expr_val$2[rbp], eax
00086 83 7d 04 00 cmp DWORD PTR _Expr_val$2[rbp], 0
0008a 75 17 jne SHORT $LN4@memmove_s
0008c e8 00 00 00 00 call _errno
00091 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
00097 e8 00 00 00 00 call _invalid_parameter_noinfo
0009c b8 16 00 00 00 mov eax, 22
000a1 eb 50 jmp SHORT $LN1@memmove_s
$LN4@memmove_s:
; 81 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
000a3 48 8b 45 78 mov rax, QWORD PTR _SourceSize$[rbp]
000a7 48 39 45 68 cmp QWORD PTR _DestinationSize$[rbp], rax
000ab 72 09 jb SHORT $LN11@memmove_s
000ad c7 45 4c 01 00
00 00 mov DWORD PTR tv74[rbp], 1
000b4 eb 07 jmp SHORT $LN12@memmove_s
$LN11@memmove_s:
000b6 c7 45 4c 00 00
00 00 mov DWORD PTR tv74[rbp], 0
$LN12@memmove_s:
000bd 8b 45 4c mov eax, DWORD PTR tv74[rbp]
000c0 89 45 08 mov DWORD PTR _Expr_val$3[rbp], eax
000c3 83 7d 08 00 cmp DWORD PTR _Expr_val$3[rbp], 0
000c7 75 17 jne SHORT $LN5@memmove_s
000c9 e8 00 00 00 00 call _errno
000ce c7 00 22 00 00
00 mov DWORD PTR [rax], 34 ; 00000022H
000d4 e8 00 00 00 00 call _invalid_parameter_noinfo
000d9 b8 22 00 00 00 mov eax, 34 ; 00000022H
000de eb 13 jmp SHORT $LN1@memmove_s
$LN5@memmove_s:
; 82 :
; 83 : memmove(_Destination, _Source, _SourceSize);
000e0 4c 8b 45 78 mov r8, QWORD PTR _SourceSize$[rbp]
000e4 48 8b 55 70 mov rdx, QWORD PTR _Source$[rbp]
000e8 48 8b 4d 60 mov rcx, QWORD PTR _Destination$[rbp]
000ec e8 00 00 00 00 call memmove
; 84 : return 0;
000f1 33 c0 xor eax, eax
$LN1@memmove_s:
; 85 : }
000f3 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
000f7 5d pop rbp
000f8 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
_Expr_val$1 = 0
_Expr_val$2 = 4
_Expr_val$3 = 8
tv79 = 76
tv75 = 76
tv66 = 76
_Destination$ = 96
_DestinationSize$ = 104
_Source$ = 112
_SourceSize$ = 120
memcpy_s PROC ; COMDAT
; 45 : {
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 83 ec 70 sub rsp, 112 ; 00000070H
00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 46 : if (_SourceSize == 0)
0001e 48 83 7d 78 00 cmp QWORD PTR _SourceSize$[rbp], 0
00023 75 07 jne SHORT $LN2@memcpy_s
; 47 : {
; 48 : return 0;
00025 33 c0 xor eax, eax
00027 e9 f2 00 00 00 jmp $LN1@memcpy_s
$LN2@memcpy_s:
; 49 : }
; 50 :
; 51 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
0002c 48 83 7d 60 00 cmp QWORD PTR _Destination$[rbp], 0
00031 74 09 je SHORT $LN9@memcpy_s
00033 c7 45 4c 01 00
00 00 mov DWORD PTR tv66[rbp], 1
0003a eb 07 jmp SHORT $LN10@memcpy_s
$LN9@memcpy_s:
0003c c7 45 4c 00 00
00 00 mov DWORD PTR tv66[rbp], 0
$LN10@memcpy_s:
00043 8b 45 4c mov eax, DWORD PTR tv66[rbp]
00046 89 45 00 mov DWORD PTR _Expr_val$1[rbp], eax
00049 83 7d 00 00 cmp DWORD PTR _Expr_val$1[rbp], 0
0004d 75 1a jne SHORT $LN3@memcpy_s
0004f e8 00 00 00 00 call _errno
00054 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
0005a e8 00 00 00 00 call _invalid_parameter_noinfo
0005f b8 16 00 00 00 mov eax, 22
00064 e9 b5 00 00 00 jmp $LN1@memcpy_s
$LN3@memcpy_s:
; 52 : if (_Source == NULL || _DestinationSize < _SourceSize)
00069 48 83 7d 70 00 cmp QWORD PTR _Source$[rbp], 0
0006e 74 0e je SHORT $LN5@memcpy_s
00070 48 8b 45 78 mov rax, QWORD PTR _SourceSize$[rbp]
00074 48 39 45 68 cmp QWORD PTR _DestinationSize$[rbp], rax
00078 0f 83 8d 00 00
00 jae $LN4@memcpy_s
$LN5@memcpy_s:
; 53 : {
; 54 : memset(_Destination, 0, _DestinationSize);
0007e 4c 8b 45 68 mov r8, QWORD PTR _DestinationSize$[rbp]
00082 33 d2 xor edx, edx
00084 48 8b 4d 60 mov rcx, QWORD PTR _Destination$[rbp]
00088 e8 00 00 00 00 call memset
; 55 :
; 56 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
0008d 48 83 7d 70 00 cmp QWORD PTR _Source$[rbp], 0
00092 74 09 je SHORT $LN11@memcpy_s
00094 c7 45 4c 01 00
00 00 mov DWORD PTR tv75[rbp], 1
0009b eb 07 jmp SHORT $LN12@memcpy_s
$LN11@memcpy_s:
0009d c7 45 4c 00 00
00 00 mov DWORD PTR tv75[rbp], 0
$LN12@memcpy_s:
000a4 8b 45 4c mov eax, DWORD PTR tv75[rbp]
000a7 89 45 04 mov DWORD PTR _Expr_val$2[rbp], eax
000aa 83 7d 04 00 cmp DWORD PTR _Expr_val$2[rbp], 0
000ae 75 17 jne SHORT $LN6@memcpy_s
000b0 e8 00 00 00 00 call _errno
000b5 c7 00 16 00 00
00 mov DWORD PTR [rax], 22
000bb e8 00 00 00 00 call _invalid_parameter_noinfo
000c0 b8 16 00 00 00 mov eax, 22
000c5 eb 57 jmp SHORT $LN1@memcpy_s
$LN6@memcpy_s:
; 57 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
000c7 48 8b 45 78 mov rax, QWORD PTR _SourceSize$[rbp]
000cb 48 39 45 68 cmp QWORD PTR _DestinationSize$[rbp], rax
000cf 72 09 jb SHORT $LN13@memcpy_s
000d1 c7 45 4c 01 00
00 00 mov DWORD PTR tv79[rbp], 1
000d8 eb 07 jmp SHORT $LN14@memcpy_s
$LN13@memcpy_s:
000da c7 45 4c 00 00
00 00 mov DWORD PTR tv79[rbp], 0
$LN14@memcpy_s:
000e1 8b 45 4c mov eax, DWORD PTR tv79[rbp]
000e4 89 45 08 mov DWORD PTR _Expr_val$3[rbp], eax
000e7 83 7d 08 00 cmp DWORD PTR _Expr_val$3[rbp], 0
000eb 75 17 jne SHORT $LN7@memcpy_s
000ed e8 00 00 00 00 call _errno
000f2 c7 00 22 00 00
00 mov DWORD PTR [rax], 34 ; 00000022H
000f8 e8 00 00 00 00 call _invalid_parameter_noinfo
000fd b8 22 00 00 00 mov eax, 34 ; 00000022H
00102 eb 1a jmp SHORT $LN1@memcpy_s
$LN7@memcpy_s:
; 58 :
; 59 : // Unreachable, but required to suppress /analyze warnings:
; 60 : return EINVAL;
00104 b8 16 00 00 00 mov eax, 22
00109 eb 13 jmp SHORT $LN1@memcpy_s
$LN4@memcpy_s:
; 61 : }
; 62 : memcpy(_Destination, _Source, _SourceSize);
0010b 4c 8b 45 78 mov r8, QWORD PTR _SourceSize$[rbp]
0010f 48 8b 55 70 mov rdx, QWORD PTR _Source$[rbp]
00113 48 8b 4d 60 mov rcx, QWORD PTR _Destination$[rbp]
00117 e8 00 00 00 00 call memcpy
; 63 : return 0;
0011c 33 c0 xor eax, eax
$LN1@memcpy_s:
; 64 : }
0011e 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
00122 5d pop rbp
00123 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_wstdio.h
; COMDAT _swprintf
_TEXT SEGMENT
_Result$ = 0
_ArgList$ = 8
_Buffer$ = 112
_Format$ = 120
_swprintf PROC ; COMDAT
; 1445 : {
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000f 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00014 55 push rbp
00015 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
0001c 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
; 1446 : int _Result;
; 1447 : va_list _ArgList;
; 1448 : __crt_va_start(_ArgList, _Format);
00021 48 8d 85 80 00
00 00 lea rax, QWORD PTR _Format$[rbp+8]
00028 48 89 45 08 mov QWORD PTR _ArgList$[rbp], rax
; 1449 : _Result = __vswprintf_l(_Buffer, _Format, NULL, _ArgList);
0002c 4c 8b 4d 08 mov r9, QWORD PTR _ArgList$[rbp]
00030 45 33 c0 xor r8d, r8d
00033 48 8b 55 78 mov rdx, QWORD PTR _Format$[rbp]
00037 48 8b 4d 70 mov rcx, QWORD PTR _Buffer$[rbp]
0003b e8 00 00 00 00 call __vswprintf_l
00040 89 45 00 mov DWORD PTR _Result$[rbp], eax
; 1450 : __crt_va_end(_ArgList);
00043 48 c7 45 08 00
00 00 00 mov QWORD PTR _ArgList$[rbp], 0
; 1451 : return _Result;
0004b 8b 45 00 mov eax, DWORD PTR _Result$[rbp]
; 1452 : }
0004e 48 8d 65 60 lea rsp, QWORD PTR [rbp+96]
00052 5d pop rbp
00053 c3 ret 0
_swprintf ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_wstdio.h
; COMDAT __vswprintf_l
_TEXT SEGMENT
_Buffer$ = 80
_Format$ = 88
_Locale$ = 96
_ArgList$ = 104
__vswprintf_l PROC ; COMDAT
; 1208 : {
$LN3:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 83 ec 70 sub rsp, 112 ; 00000070H
00019 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
; 1209 : return _vswprintf_l(_Buffer, (size_t)-1, _Format, _Locale, _ArgList);
0001e 48 8b 45 68 mov rax, QWORD PTR _ArgList$[rbp]
00022 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
00027 4c 8b 4d 60 mov r9, QWORD PTR _Locale$[rbp]
0002b 4c 8b 45 58 mov r8, QWORD PTR _Format$[rbp]
0002f 48 c7 c2 ff ff
ff ff mov rdx, -1
00036 48 8b 4d 50 mov rcx, QWORD PTR _Buffer$[rbp]
0003a e8 00 00 00 00 call _vswprintf_l
; 1210 : }
0003f 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00043 5d pop rbp
00044 c3 ret 0
__vswprintf_l ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_wstdio.h
; COMDAT _vswprintf_l
_TEXT SEGMENT
_Buffer$ = 80
_BufferCount$ = 88
_Format$ = 96
_Locale$ = 104
_ArgList$ = 112
_vswprintf_l PROC ; COMDAT
; 1192 : {
$LN3:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 83 ec 70 sub rsp, 112 ; 00000070H
00019 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
; 1193 : return _vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);
0001e 48 8b 45 70 mov rax, QWORD PTR _ArgList$[rbp]
00022 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
00027 4c 8b 4d 68 mov r9, QWORD PTR _Locale$[rbp]
0002b 4c 8b 45 60 mov r8, QWORD PTR _Format$[rbp]
0002f 48 8b 55 58 mov rdx, QWORD PTR _BufferCount$[rbp]
00033 48 8b 4d 50 mov rcx, QWORD PTR _Buffer$[rbp]
00037 e8 00 00 00 00 call _vswprintf_c_l
; 1194 : }
0003c 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00040 5d pop rbp
00041 c3 ret 0
_vswprintf_l ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_wstdio.h
; COMDAT _vswprintf_c_l
_TEXT SEGMENT
_Result$ = 0
tv73 = 68
_Buffer$ = 96
_BufferCount$ = 104
_Format$ = 112
_Locale$ = 120
_ArgList$ = 128
_vswprintf_c_l PROC ; COMDAT
; 1155 : {
$LN5:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 48 81 ec 80 00
00 00 sub rsp, 128 ; 00000080H
0001c 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
; 1156 : int const _Result = __stdio_common_vswprintf(
00021 e8 00 00 00 00 call __local_stdio_printf_options
00026 48 8b 8d 80 00
00 00 mov rcx, QWORD PTR _ArgList$[rbp]
0002d 48 89 4c 24 28 mov QWORD PTR [rsp+40], rcx
00032 48 8b 4d 78 mov rcx, QWORD PTR _Locale$[rbp]
00036 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx
0003b 4c 8b 4d 70 mov r9, QWORD PTR _Format$[rbp]
0003f 4c 8b 45 68 mov r8, QWORD PTR _BufferCount$[rbp]
00043 48 8b 55 60 mov rdx, QWORD PTR _Buffer$[rbp]
00047 48 8b 08 mov rcx, QWORD PTR [rax]
0004a e8 00 00 00 00 call __stdio_common_vswprintf
0004f 89 45 00 mov DWORD PTR _Result$[rbp], eax
; 1157 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS,
; 1158 : _Buffer, _BufferCount, _Format, _Locale, _ArgList);
; 1159 :
; 1160 : return _Result < 0 ? -1 : _Result;
00052 83 7d 00 00 cmp DWORD PTR _Result$[rbp], 0
00056 7d 09 jge SHORT $LN3@vswprintf_
00058 c7 45 44 ff ff
ff ff mov DWORD PTR tv73[rbp], -1
0005f eb 06 jmp SHORT $LN4@vswprintf_
$LN3@vswprintf_:
00061 8b 45 00 mov eax, DWORD PTR _Result$[rbp]
00064 89 45 44 mov DWORD PTR tv73[rbp], eax
$LN4@vswprintf_:
00067 8b 45 44 mov eax, DWORD PTR tv73[rbp]
; 1161 : }
0006a 48 8d 65 50 lea rsp, QWORD PTR [rbp+80]
0006e 5d pop rbp
0006f c3 ret 0
_vswprintf_c_l 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 : {
$LN3:
00000 40 55 push rbp
00002 48 83 ec 40 sub rsp, 64 ; 00000040H
00006 48 8b ec mov rbp, rsp
; 91 : static unsigned __int64 _OptionsStorage;
; 92 : return &_OptionsStorage;
00009 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage
; 93 : }
00010 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00014 5d pop rbp
00015 c3 ret 0
__local_stdio_printf_options ENDP
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z
_TEXT SEGMENT
__formal$ = 80
__formal$ = 88
__formal$ = 96
?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
$LN3:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 48 83 ec 40 sub rsp, 64 ; 00000040H
00014 48 8b ec mov rbp, rsp
00017 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
0001b 5d pop rbp
0001c c3 ret 0
?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z
_TEXT SEGMENT
__formal$ = 80
__formal$ = 88
?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 40 sub rsp, 64 ; 00000040H
0000f 48 8b ec mov rbp, rsp
00012 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00016 5d pop rbp
00017 c3 ret 0
?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?__empty_global_delete@@YAXPEAX_K@Z
_TEXT SEGMENT
__formal$ = 80
__formal$ = 88
?__empty_global_delete@@YAXPEAX_K@Z PROC ; __empty_global_delete, COMDAT
$LN3:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 48 83 ec 40 sub rsp, 64 ; 00000040H
0000f 48 8b ec mov rbp, rsp
00012 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00016 5d pop rbp
00017 c3 ret 0
?__empty_global_delete@@YAXPEAX_K@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /ZI
; File D:\Works\Corpsms_2010\SmsCenter\IOCP\KeyList.cpp
; COMDAT ?__empty_global_delete@@YAXPEAX@Z
_TEXT SEGMENT
__formal$ = 80
?__empty_global_delete@@YAXPEAX@Z PROC ; __empty_global_delete, COMDAT
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 48 83 ec 40 sub rsp, 64 ; 00000040H
0000a 48 8b ec mov rbp, rsp
0000d 48 8d 65 40 lea rsp, QWORD PTR [rbp+64]
00011 5d pop rbp
00012 c3 ret 0
?__empty_global_delete@@YAXPEAX@Z ENDP ; __empty_global_delete
_TEXT ENDS
END