; Listing generated by Microsoft (R) Optimizing Compiler Version 19.34.31933.0 include listing.inc INCLUDELIB LIBCMT INCLUDELIB OLDNAMES CONST SEGMENT $SG331147 DB '.xls', 00H $SG331481 DB 00H ORG $+2 $SG331148 DB ' ,;.?', 00H ORG $+2 $SG331152 DB 'D', 00H, 'R', 00H, 'I', 00H, 'V', 00H, 'E', 00H, 'R', 00H DB '=', 00H, '{', 00H, 'M', 00H, 'i', 00H, 'c', 00H, 'r', 00H, 'o' DB 00H, 's', 00H, 'o', 00H, 'f', 00H, 't', 00H, ' ', 00H, 'E', 00H DB 'x', 00H, 'c', 00H, 'e', 00H, 'l', 00H, ' ', 00H, 'D', 00H, 'r' DB 00H, 'i', 00H, 'v', 00H, 'e', 00H, 'r', 00H, ' ', 00H, '(', 00H DB '*', 00H, '.', 00H, 'x', 00H, 'l', 00H, 's', 00H, ')', 00H, '}' DB 00H, ';', 00H, 'D', 00H, 'S', 00H, 'N', 00H, '=', 00H, '''', 00H DB '''', 00H, ';', 00H, 'F', 00H, 'I', 00H, 'R', 00H, 'S', 00H, 'T' DB 00H, 'R', 00H, 'O', 00H, 'W', 00H, 'H', 00H, 'A', 00H, 'S', 00H DB 'N', 00H, 'A', 00H, 'M', 00H, 'E', 00H, 'S', 00H, '=', 00H, '1' DB 00H, ';', 00H, 'R', 00H, 'E', 00H, 'A', 00H, 'D', 00H, 'O', 00H DB 'N', 00H, 'L', 00H, 'Y', 00H, '=', 00H, 'F', 00H, 'A', 00H, 'L' DB 00H, 'S', 00H, 'E', 00H, ';', 00H, 'C', 00H, 'R', 00H, 'E', 00H DB 'A', 00H, 'T', 00H, 'E', 00H, '_', 00H, 'D', 00H, 'B', 00H, '=' DB 00H, '"', 00H, '%', 00H, 's', 00H, '"', 00H, ';', 00H, 'D', 00H DB 'B', 00H, 'Q', 00H, '=', 00H, '%', 00H, 's', 00H, 00H, 00H ORG $+2 $SG331156 DB 0b1H, 0b8H, 0b7H, 0ddH, 00H ORG $+3 $SG331160 DB '%', 00H, 's', 00H, '.', 00H, 'b', 00H, 'a', 00H, 'k', 00H DB 00H, 00H ORG $+2 $SG331193 DB 096H, 099H, 'L', 088H, 017H, 'R4YW[', 0b5H, 'k', 0cdH, 091H DB 0dH, 'Y:', 00H, '%', 00H, 's', 00H, 0aH, 00H, 00H, 00H ORG $+2 $SG331219 DB '[', 00H, 00H, 00H $SG331195 DB 0ccH, 0edH, 0bcH, 0d3H, 0c1H, 0d0H, 0cdH, 0b7H, 0caH, 0b1H DB 0b2H, 0faH, 0c9H, 0faH, 0b4H, 0edH, 0ceH, 0f3H, 0aH, 00H $SG331291 DB '" "', 00H $SG331207 DB 0c9H, 0beH, 0b3H, 0fdH, 0b1H, 0edH, 0b8H, 0f1H, 0caH, 0b1H DB 0b2H, 0faH, 0c9H, 0faH, 0b4H, 0edH, 0ceH, 0f3H, 0aH, 00H $SG331292 DB '""', 00H ORG $+1 $SG331218 DB '$', 00H, 'A', 00H, '1', 00H, ':', 00H, 'I', 00H, 'V', 00H DB '6', 00H, '5', 00H, '5', 00H, '3', 00H, '6', 00H, ']', 00H, 00H DB 00H ORG $+2 $SG331370 DB '" "', 00H $SG331220 DB 'D', 00H, 'R', 00H, 'O', 00H, 'P', 00H, ' ', 00H, 'T', 00H DB 'A', 00H, 'B', 00H, 'L', 00H, 'E', 00H, ' ', 00H, '%', 00H, 's' DB 00H, 00H, 00H $SG331371 DB '""', 00H ORG $+1 $SG331261 DB 096H, 099H, 'L', 088H, 017H, 'R4YW[', 0b5H, 'k', 0cdH, 091H DB 0dH, 'Y:', 00H, '%', 00H, 's', 00H, 0aH, 00H, 00H, 00H ORG $+2 $SG331416 DB ')', 00H, 00H, 00H $SG331263 DB 0d0H, 0c2H, 0c1H, 0d0H, 0cdH, 0b7H, 0caH, 0fdH, 0b2H, 0bbH DB 0c4H, 0dcH, 0d0H, 0a1H, 0d3H, 0daH, 0d4H, 0adH, 0c1H, 0d0H, 0cdH DB 0b7H, 0caH, 0fdH, 00H ORG $+3 $SG331386 DB '"', 00H, '"', 00H, 00H, 00H ORG $+2 $SG331570 DB '[', 00H, 00H, 00H $SG331266 DB 0c3H, 0bbH, 0d3H, 0d0H, 0c1H, 0d0H, 0cdH, 0b7H, 0a3H, 0acH DB 0caH, 0d7H, 0cfH, 0c8H, 0d2H, 0aaH, 0bcH, 0d3H, 0c8H, 0ebH, 0c1H DB 0d0H, 0cdH, 0b7H, 0aH, 00H ORG $+2 $SG331576 DB ']', 00H, 00H, 00H $SG331270 DB 0c1H, 0d0H, 0caH, 0fdH, 0b4H, 0f3H, 0d3H, 0daH, 0b1H, 0edH DB 0b8H, 0f1H, 0d6H, 0d0H, 0d7H, 0dcH, 0c1H, 0d0H, 0caH, 0fdH, 0aH DB 00H ORG $+2 $SG331274 DB '"', 00H, '%', 00H, 's', 00H, '"', 00H, '%', 00H, 's', 00H DB 00H, 00H ORG $+2 $SG331275 DB '"', 00H, '%', 00H, 's', 00H, '"', 00H, 00H, 00H ORG $+2 $SG331577 DB '[', 00H, 00H, 00H $SG331287 DB '"', 00H, ' ', 00H, '"', 00H, '%', 00H, 's', 00H, 00H, 00H $SG331578 DB ')', 00H, 00H, 00H $SG331288 DB '"', 00H, '"', 00H, '%', 00H, 's', 00H, 00H, 00H ORG $+2 $SG331581 DB ']', 00H, 00H, 00H $SG331341 DB 0c1H, 0d0H, 0caH, 0fdH, 0b2H, 0bbH, 0c4H, 0dcH, 0ceH, 0aaH DB '0', 0aH, 00H ORG $+3 $SG331346 DB 0d6H, 0b8H, 0b6H, 0a8H, 0c1H, 0d0H, 0baH, 0c5H, 0b4H, 0f3H DB 0d3H, 0daH, 0b1H, 0edH, 0b8H, 0f1H, 0d6H, 0d0H, 0b4H, 0e6H, 0d4H DB 0daH, 0b5H, 0c4H, 0d7H, 0dcH, 0c1H, 0d0H, 0caH, 0fdH, 0aH, 00H $SG331356 DB 096H, 099H, 'L', 088H, 'W[', 0b5H, 'k', 0cdH, 091H, 0dH, 'Y' DB '(', 00H, 017H, 'R4Y)', 00H, ':', 00H, '%', 00H, 's', 00H, 0aH DB 00H, 00H, 00H ORG $+2 $SG331366 DB '"', 00H, ' ', 00H, '"', 00H, '%', 00H, 's', 00H, 00H, 00H $SG331582 DB '[', 00H, 00H, 00H $SG331367 DB '"', 00H, '"', 00H, '%', 00H, 's', 00H, 00H, 00H ORG $+2 $SG331583 DB ')', 00H, 00H, 00H $SG331378 DB '"', 00H, ' ', 00H, '"', 00H, '%', 00H, 's', 00H, 00H, 00H $SG331591 DB ')', 00H, 00H, 00H $SG331379 DB '"', 00H, '"', 00H, '%', 00H, 's', 00H, 00H, 00H ORG $+2 $SG331735 DB '"', 00H, 00H, 00H $SG331380 DB '"', 00H, '%', 00H, 's', 00H, '"', 00H, '%', 00H, 's', 00H DB 00H, 00H ORG $+2 $SG331385 DB '"', 00H, ' ', 00H, '"', 00H, 00H, 00H $SG331387 DB '"', 00H, '%', 00H, 's', 00H, '"', 00H, 00H, 00H ORG $+2 $SG331736 DB '"', 00H, 00H, 00H $SG331412 DB 'U', 00H, 'P', 00H, 'D', 00H, 'A', 00H, 'T', 00H, 'E', 00H DB ' ', 00H, '[', 00H, '%', 00H, 's', 00H, ']', 00H, ' ', 00H, 'S' DB 00H, 'E', 00H, 'T', 00H, ' ', 00H, 00H, 00H ORG $+2 $SG331737 DB '"', 00H, 00H, 00H $SG331413 DB '[', 00H, '%', 00H, 's', 00H, ']', 00H, '=', 00H, '''', 00H DB '%', 00H, 's', 00H, '''', 00H, ',', 00H, ' ', 00H, 00H, 00H $SG331414 DB ' ', 00H, 'W', 00H, 'H', 00H, 'E', 00H, 'R', 00H, 'E', 00H DB ' ', 00H, '(', 00H, 00H, 00H ORG $+2 $SG331738 DB '"', 00H, 00H, 00H $SG331415 DB '[', 00H, '%', 00H, 's', 00H, ']', 00H, '=', 00H, '''', 00H DB '%', 00H, 's', 00H, '''', 00H, ' ', 00H, 'A', 00H, 'N', 00H, 'D' DB 00H, ' ', 00H, 00H, 00H ORG $+2 $SG331419 DB 0d9H, 08fH, '*N', 0b5H, 'mpe', 0f9H, '[', 06H, 'R', 094H, 096H DB '&{', 087H, 'e,g', 087H, 'e', 0f6H, 'N', 0e0H, 'eHe', 0aH, 00H DB 00H, 00H $SG331444 DB '"', 00H, '%', 00H, 's', 00H, '"', 00H, 00H, 00H ORG $+2 $SG331742 DB '"', 00H, 00H, 00H $SG331450 DB 07H, 'c', 09aH, '[L', 088H, '''Y', 08eH, 'Nh', 088H, ' PUBLIC ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data PUBLIC ?AddRef@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::AddRef 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 ?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z ; ATL::ChTraitsCRT::StringCompare PUBLIC ?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z ; ATL::ChTraitsCRT::StringFindString PUBLIC ?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z ; ATL::ChTraitsCRT::StringFindChar PUBLIC ?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z ; ATL::ChTraitsCRT::StringFindCharRev PUBLIC ?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z ; ATL::ChTraitsCRT::StringUppercase PUBLIC ?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z ; ATL::ChTraitsCRT::StringLowercase PUBLIC ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z ; ATL::ChTraitsCRT::GetFormattedLength PUBLIC ?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z ; ATL::ChTraitsCRT::Format PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z ; ATL::ChTraitsCRT::GetBaseTypeLength PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ; ATL::ChTraitsCRT::GetBaseTypeLength PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ; ATL::ChTraitsCRT::GetBaseTypeLength PUBLIC ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z ; ATL::ChTraitsCRT::ConvertToBaseType PUBLIC ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ; ATL::ChTraitsCRT::ConvertToBaseType PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z ; ATL::CSimpleStringT::CSimpleStringT PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT PUBLIC ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT PUBLIC ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CSimpleStringT::operator= PUBLIC ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT::operator= PUBLIC ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CSimpleStringT::operator+= PUBLIC ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT::operator+= PUBLIC ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * PUBLIC ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT::Append PUBLIC ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT::Append PUBLIC ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z ; ATL::CSimpleStringT::Append PUBLIC ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty PUBLIC ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetAllocLength PUBLIC ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z ; ATL::CSimpleStringT::GetAt PUBLIC ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ ; ATL::CSimpleStringT::GetBuffer PUBLIC ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer PUBLIC ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength PUBLIC ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CSimpleStringT::GetManager PUBLIC ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString PUBLIC ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT::SetString PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT::SetString PUBLIC ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ; ATL::CSimpleStringT::CopyCharsOverlapped PUBLIC ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT::StringLength PUBLIC ?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z ; ATL::CSimpleStringT::StringLengthN PUBLIC ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z ; ATL::CSimpleStringT::Concatenate PUBLIC ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT::ThrowMemoryException PUBLIC ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach PUBLIC ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::Fork PUBLIC ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData PUBLIC ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ; ATL::CSimpleStringT::PrepareWrite PUBLIC ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::PrepareWrite2 PUBLIC ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::Reallocate PUBLIC ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::SetLength PUBLIC ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z ; ATL::CSimpleStringT::CloneData PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z ; ATL::CStringT > >::CStringT > > PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > PUBLIC ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > PUBLIC ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= PUBLIC ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= PUBLIC ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= PUBLIC ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= PUBLIC ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= PUBLIC ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator+= PUBLIC ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager PUBLIC ?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z ; ATL::CStringT > >::Compare PUBLIC ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete PUBLIC ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z ; ATL::CStringT > >::Find PUBLIC ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z ; ATL::CStringT > >::Find PUBLIC ?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z ; ATL::CStringT > >::ReverseFind PUBLIC ?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ ; ATL::CStringT > >::MakeUpper PUBLIC ?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ ; ATL::CStringT > >::MakeLower PUBLIC ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z ; ATL::CStringT > >::Mid PUBLIC ?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z ; ATL::CStringT > >::Right PUBLIC ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format PUBLIC ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z ; ATL::CStringT > >::FormatV PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ; ATL::CStringT > >::LoadStringW PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ; ATL::CStringT > >::LoadStringW PUBLIC ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ PUBLIC ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ PUBLIC ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z ; ATL::operator+ PUBLIC ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ; ATL::operator== PUBLIC ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z ; ATL::operator== PUBLIC ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT > >::CheckImplicitLoad PUBLIC ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ; StrTraitMFC >::FindStringResourceInstance PUBLIC ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC >::GetDefaultManager PUBLIC ??_GCArchive@@QEAAPEAXI@Z ; CArchive::`scalar deleting destructor' PUBLIC ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize PUBLIC ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll PUBLIC ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt PUBLIC ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::SetAt PUBLIC ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add PUBLIC ?IsEOF@CRecordset@@QEBAHXZ ; CRecordset::IsEOF PUBLIC ?MoveNext@CRecordset@@QEAAXXZ ; CRecordset::MoveNext PUBLIC ??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z ; CSpreadSheet::CSpreadSheet PUBLIC ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet PUBLIC ?Close@CSpreadSheet@@QEAAXXZ ; CSpreadSheet::Close PUBLIC ?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z ; CSpreadSheet::AddHeaders PUBLIC ?DeleteSheet@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::DeleteSheet PUBLIC ?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CSpreadSheet::DeleteSheet PUBLIC ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow PUBLIC ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z ; CSpreadSheet::AddCell PUBLIC ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z ; CSpreadSheet::AddCell PUBLIC ?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z ; CSpreadSheet::ReplaceRows PUBLIC ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow PUBLIC ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ; CSpreadSheet::ReadColumn PUBLIC ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z ; CSpreadSheet::ReadColumn PUBLIC ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z ; CSpreadSheet::ReadCell PUBLIC ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z ; CSpreadSheet::ReadCell PUBLIC ?BeginTransaction@CSpreadSheet@@QEAAXXZ ; CSpreadSheet::BeginTransaction PUBLIC ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit PUBLIC ?RollBack@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::RollBack PUBLIC ?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CSpreadSheet::Convert PUBLIC ?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z ; CSpreadSheet::GetFieldNames PUBLIC ?GetTotalColumns@CSpreadSheet@@QEAAFXZ ; CSpreadSheet::GetTotalColumns PUBLIC ?Open@CSpreadSheet@@AEAA_NXZ ; CSpreadSheet::Open PUBLIC ?GetExcelDriver@CSpreadSheet@@AEAAXXZ ; CSpreadSheet::GetExcelDriver PUBLIC ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ; CSpreadSheet::CalculateColumnNumber PUBLIC ??$AtlAddThrow@H@ATL@@YAHHH@Z ; ATL::AtlAddThrow PUBLIC ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage PUBLIC ??_R0PEAVCDBException@@@8 ; CDBException * `RTTI Type Descriptor' EXTRN ??2@YAPEAX_K@Z:PROC ; operator new EXTRN ??3@YAXPEAX@Z:PROC ; operator delete EXTRN ??3@YAXPEAX_K@Z:PROC ; operator delete EXTRN _invalid_parameter_noinfo:PROC EXTRN __stdio_common_vswprintf:PROC EXTRN __stdio_common_vswprintf_s:PROC EXTRN _errno:PROC EXTRN memcpy:PROC EXTRN memmove:PROC EXTRN memset:PROC EXTRN wcschr:PROC EXTRN wcsrchr:PROC EXTRN wcsstr:PROC EXTRN wcscmp:PROC EXTRN wcslen:PROC EXTRN wcsnlen:PROC EXTRN _wcslwr_s:PROC EXTRN _wcsupr_s:PROC EXTRN wmemcpy_s:PROC EXTRN __imp_LoadResource:PROC EXTRN __imp_LockResource:PROC EXTRN __imp_SizeofResource:PROC EXTRN __imp_FindResourceW:PROC EXTRN __imp_MultiByteToWideChar:PROC EXTRN ?AfxThrowMemoryException@@YAXXZ:PROC ; AfxThrowMemoryException EXTRN ?AfxThrowInvalidArgException@@YAXXZ:PROC ; AfxThrowInvalidArgException EXTRN ?AfxThrowOleException@@YAXJ@Z:PROC ; AfxThrowOleException EXTRN ?Delete@CException@@QEAAXXZ:PROC ; CException::Delete EXTRN ?AfxFindStringResourceHandle@@YAPEAUHINSTANCE__@@I@Z:PROC ; AfxFindStringResourceHandle EXTRN ?AfxGetStringManager@@YAPEAUIAtlStringMgr@ATL@@XZ:PROC ; AfxGetStringManager EXTRN ??0CFile@@QEAA@PEB_WI@Z:PROC ; CFile::CFile EXTRN ??0CArchive@@QEAA@PEAVCFile@@IHPEAX@Z:PROC ; CArchive::CArchive EXTRN ??1CArchive@@QEAA@XZ:PROC ; CArchive::~CArchive EXTRN ?WriteString@CArchive@@QEAAXPEB_W@Z:PROC ; CArchive::WriteString EXTRN ?ReadString@CArchive@@QEAAHAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z:PROC ; CArchive::ReadString EXTRN ??0CStringArray@@QEAA@XZ:PROC ; CStringArray::CStringArray EXTRN ?SetSize@CStringArray@@QEAAX_J0@Z:PROC ; CStringArray::SetSize EXTRN ?SetAtGrow@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z:PROC ; CStringArray::SetAtGrow EXTRN ?Append@CStringArray@@QEAA_JAEBV1@@Z:PROC ; CStringArray::Append EXTRN ?Copy@CStringArray@@QEAAXAEBV1@@Z:PROC ; CStringArray::Copy EXTRN ?InsertAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z:PROC ; CStringArray::InsertAt EXTRN ??1CStringArray@@UEAA@XZ:PROC ; CStringArray::~CStringArray EXTRN ??0CDatabase@@QEAA@XZ:PROC ; CDatabase::CDatabase EXTRN ?ExecuteSQL@CDatabase@@QEAAXPEB_W@Z:PROC ; CDatabase::ExecuteSQL EXTRN ??0CRecordset@@QEAA@PEAVCDatabase@@@Z:PROC ; CRecordset::CRecordset EXTRN ?GetFieldValue@CRecordset@@QEAAXFAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z:PROC ; CRecordset::GetFieldValue EXTRN __CxxFrameHandler4:PROC EXTRN ??_7type_info@@6B@:BYTE ; type_info::`vftable' ; 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$memcpy_s DD imagerel memcpy_s DD imagerel memcpy_s+313 DD imagerel $unwind$memcpy_s pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$memmove_s DD imagerel memmove_s DD imagerel memmove_s+265 DD imagerel $unwind$memmove_s pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$HRESULT_FROM_WIN32 DD imagerel $LN5 DD imagerel $LN5+53 DD imagerel $unwind$HRESULT_FROM_WIN32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AfxCrtErrorCheck@@YAHH@Z DD imagerel $LN11 DD imagerel $LN11+83 DD imagerel $unwind$?AfxCrtErrorCheck@@YAHH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??2CObject@@SAPEAX_K@Z DD imagerel $LN3 DD imagerel $LN3+24 DD imagerel $unwind$??2CObject@@SAPEAX_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??3CObject@@SAXPEAX@Z DD imagerel $LN3 DD imagerel $LN3+24 DD imagerel $unwind$??3CObject@@SAXPEAX@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AtlThrowImpl@ATL@@YAXJ@Z DD imagerel $LN5 DD imagerel $LN5+39 DD imagerel $unwind$?AtlThrowImpl@ATL@@YAXJ@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z DD imagerel $LN3 DD imagerel $LN3+61 DD imagerel $unwind$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z DD imagerel $LN3 DD imagerel $LN3+61 DD imagerel $unwind$?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AtlStrLen@ATL@@YAHPEB_W@Z DD imagerel $LN4 DD imagerel $LN4+36 DD imagerel $unwind$?AtlStrLen@ATL@@YAHPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AtlIsValidString@ATL@@YAHPEB_W_K@Z DD imagerel $LN5 DD imagerel $LN5+46 DD imagerel $unwind$?AtlIsValidString@ATL@@YAHPEB_W_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DD imagerel $LN9 DD imagerel $LN9+233 DD imagerel $unwind$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DD imagerel $LN4 DD imagerel $LN4+92 DD imagerel $unwind$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$AtlAdd@H@ATL@@YAJPEAHHH@Z DD imagerel $LN4 DD imagerel $LN4+71 DD imagerel $unwind$??$AtlAdd@H@ATL@@YAJPEAHHH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?IsLocked@CStringData@ATL@@QEBA_NXZ DD imagerel $LN5 DD imagerel $LN5+45 DD imagerel $unwind$?IsLocked@CStringData@ATL@@QEBA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?IsShared@CStringData@ATL@@QEBA_NXZ DD imagerel $LN5 DD imagerel $LN5+45 DD imagerel $unwind$?IsShared@CStringData@ATL@@QEBA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Release@CStringData@ATL@@QEAAXXZ DD imagerel $LN4 DD imagerel $LN4+87 DD imagerel $unwind$?Release@CStringData@ATL@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z DD imagerel $LN3 DD imagerel $LN3+35 DD imagerel $unwind$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z DD imagerel $LN3 DD imagerel $LN3+35 DD imagerel $unwind$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DD imagerel $LN3 DD imagerel $LN3+35 DD imagerel $unwind$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DD imagerel $LN3 DD imagerel $LN3+35 DD imagerel $unwind$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DD imagerel $LN5 DD imagerel $LN5+71 DD imagerel $unwind$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DD imagerel $LN5 DD imagerel $LN5+71 DD imagerel $unwind$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z DD imagerel $LN5 DD imagerel $LN5+105 DD imagerel $unwind$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z DD imagerel $LN5 DD imagerel $LN5+116 DD imagerel $unwind$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z DD imagerel $LN3 DD imagerel $LN3+59 DD imagerel $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DD imagerel $LN3 DD imagerel $LN3+25 DD imagerel $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z DD imagerel $LN3 DD imagerel $LN3+72 DD imagerel $unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z DD imagerel $LN4 DD imagerel $LN4+82 DD imagerel $unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD imagerel $LN12 DD imagerel $LN12+123 DD imagerel $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+69 DD imagerel $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DD imagerel $LN14 DD imagerel $LN14+244 DD imagerel $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z DD imagerel $LN7 DD imagerel $LN7+192 DD imagerel $unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD imagerel $LN3 DD imagerel $LN3+47 DD imagerel $unwind$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD imagerel $LN23 DD imagerel $LN23+373 DD imagerel $unwind$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z DD imagerel $LN3 DD imagerel $LN3+68 DD imagerel $unwind$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DD imagerel $LN6 DD imagerel $LN6+133 DD imagerel $unwind$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD imagerel $LN3 DD imagerel $LN3+27 DD imagerel $unwind$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z DD imagerel $LN5 DD imagerel $LN5+68 DD imagerel $unwind$?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ DD imagerel $LN4 DD imagerel $LN4+72 DD imagerel $unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z DD imagerel $LN3 DD imagerel $LN3+32 DD imagerel $unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD imagerel $LN3 DD imagerel $LN3+27 DD imagerel $unwind$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ DD imagerel $LN5 DD imagerel $LN5+77 DD imagerel $unwind$?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z DD imagerel $LN3 DD imagerel $LN3+32 DD imagerel $unwind$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD imagerel $LN3 DD imagerel $LN3+47 DD imagerel $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD imagerel $LN8 DD imagerel $LN8+264 DD imagerel $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DD imagerel $LN3 DD imagerel $LN3+67 DD imagerel $unwind$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DD imagerel $LN4 DD imagerel $LN4+37 DD imagerel $unwind$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z DD imagerel $LN4 DD imagerel $LN4+47 DD imagerel $unwind$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z DD imagerel $LN3 DD imagerel $LN3+174 DD imagerel $unwind$?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ DD imagerel $LN3 DD imagerel $LN3+19 DD imagerel $unwind$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z DD imagerel $LN3 DD imagerel $LN3+37 DD imagerel $unwind$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN6 DD imagerel $LN6+267 DD imagerel $unwind$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z DD imagerel $LN5 DD imagerel $LN5+125 DD imagerel $unwind$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN10 DD imagerel $LN10+196 DD imagerel $unwind$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN6 DD imagerel $LN6+149 DD imagerel $unwind$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD imagerel $LN5 DD imagerel $LN5+90 DD imagerel $unwind$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z DD imagerel $LN6 DD imagerel $LN6+280 DD imagerel $unwind$?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD imagerel $LN4 DD imagerel $LN4+38 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD imagerel $LN4 DD imagerel $LN4+40 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z DD imagerel $LN4 DD imagerel $LN4+40 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z DD imagerel $LN5 DD imagerel $LN5+83 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z DD imagerel $LN5 DD imagerel $LN5+81 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z DD imagerel $LN5 DD imagerel $LN5+83 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DD imagerel $LN4 DD imagerel $LN4+60 DD imagerel $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD imagerel $LN4 DD imagerel $LN4+25 DD imagerel $unwind$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA+24 DD imagerel $unwind$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DD imagerel $LN7 DD imagerel $LN7+141 DD imagerel $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD imagerel $LN3 DD imagerel $LN3+39 DD imagerel $unwind$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DD imagerel $LN4 DD imagerel $LN4+83 DD imagerel $unwind$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA DD imagerel ?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA DD imagerel ?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ DD imagerel $LN4 DD imagerel $LN4+70 DD imagerel $unwind$?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z DD imagerel $LN12 DD imagerel $LN12+116 DD imagerel $unwind$?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z DD imagerel $LN7 DD imagerel $LN7+271 DD imagerel $unwind$?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z DD imagerel $LN7 DD imagerel $LN7+149 DD imagerel $unwind$?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z DD imagerel $LN8 DD imagerel $LN8+164 DD imagerel $unwind$?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z DD imagerel $LN5 DD imagerel $LN5+97 DD imagerel $unwind$?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ DD imagerel $LN3 DD imagerel $LN3+87 DD imagerel $unwind$?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ DD imagerel $LN3 DD imagerel $LN3+87 DD imagerel $unwind$?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z DD imagerel $LN10 DD imagerel $LN10+301 DD imagerel $unwind$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA DD imagerel ?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA DD imagerel ?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA+38 DD imagerel $unwind$?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z DD imagerel $LN7 DD imagerel $LN7+198 DD imagerel $unwind$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA DD imagerel ?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA DD imagerel ?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA+38 DD imagerel $unwind$?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ DD imagerel $LN3 DD imagerel $LN3+68 DD imagerel $unwind$?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z DD imagerel $LN7 DD imagerel $LN7+191 DD imagerel $unwind$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA DD imagerel ?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA DD imagerel ?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z DD imagerel $LN4 DD imagerel $LN4+64 DD imagerel $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z DD imagerel $LN4 DD imagerel $LN4+158 DD imagerel $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z DD imagerel $LN6 DD imagerel $LN6+195 DD imagerel $unwind$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA+38 DD imagerel $unwind$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z DD imagerel $LN6 DD imagerel $LN6+174 DD imagerel $unwind$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA+38 DD imagerel $unwind$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z DD imagerel $LN6 DD imagerel $LN6+174 DD imagerel $unwind$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA+38 DD imagerel $unwind$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z DD imagerel $LN5 DD imagerel $LN5+69 DD imagerel $unwind$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z DD imagerel $LN4 DD imagerel $LN4+82 DD imagerel $unwind$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA DD imagerel ?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA DD imagerel ?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z DD imagerel $LN5 DD imagerel $LN5+88 DD imagerel $unwind$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DD imagerel $LN3 DD imagerel $LN3+23 DD imagerel $unwind$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DD imagerel $LN3 DD imagerel $LN3+15 DD imagerel $unwind$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??_GCArchive@@QEAAPEAXI@Z DD imagerel $LN4 DD imagerel $LN4+59 DD imagerel $unwind$??_GCArchive@@QEAAPEAXI@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?RemoveAll@CStringArray@@QEAAXXZ DD imagerel $LN3 DD imagerel $LN3+33 DD imagerel $unwind$?RemoveAll@CStringArray@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z DD imagerel $LN5 DD imagerel $LN5+66 DD imagerel $unwind$?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $LN5 DD imagerel $LN5+84 DD imagerel $unwind$?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $LN3 DD imagerel $LN3+58 DD imagerel $unwind$?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?MoveNext@CRecordset@@QEAAXXZ DD imagerel $LN3 DD imagerel $LN3+50 DD imagerel $unwind$?MoveNext@CRecordset@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z DD imagerel $LN35 DD imagerel $LN35+1458 DD imagerel $unwind$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+27 DD imagerel $unwind$?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+31 DD imagerel $unwind$?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+34 DD imagerel $unwind$?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+34 DD imagerel $unwind$?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+24 DD imagerel $unwind$?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+24 DD imagerel $unwind$?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+24 DD imagerel $unwind$?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+24 DD imagerel $unwind$?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD imagerel ?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA+27 DD imagerel $unwind$?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??1CSpreadSheet@@QEAA@XZ DD imagerel $LN15 DD imagerel $LN15+245 DD imagerel $unwind$??1CSpreadSheet@@QEAA@XZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA+28 DD imagerel $unwind$?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA+31 DD imagerel $unwind$?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA DD imagerel ?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA+31 DD imagerel $unwind$?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Close@CSpreadSheet@@QEAAXXZ DD imagerel $LN9 DD imagerel $LN9+280 DD imagerel $unwind$?Close@CSpreadSheet@@QEAAXXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z DD imagerel $LN21 DD imagerel $LN21+654 DD imagerel $unwind$?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?DeleteSheet@CSpreadSheet@@QEAA_NXZ DD imagerel $LN9 DD imagerel $LN9+226 DD imagerel $unwind$?DeleteSheet@CSpreadSheet@@QEAA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA+24 DD imagerel $unwind$?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $LN14 DD imagerel $LN14+591 DD imagerel $unwind$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+24 DD imagerel $unwind$?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+24 DD imagerel $unwind$?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+116 DD imagerel $unwind$?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z DD imagerel $LN49 DD imagerel $LN49+1996 DD imagerel $unwind$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA DD imagerel ?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA DD imagerel ?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z DD imagerel $LN9 DD imagerel $LN9+313 DD imagerel $unwind$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA+27 DD imagerel $unwind$?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA+24 DD imagerel $unwind$?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD imagerel ?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA+24 DD imagerel $unwind$?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DD imagerel $LN54 DD imagerel $LN54+2212 DD imagerel $unwind$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DD imagerel ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DD imagerel ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DD imagerel ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DD imagerel ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA+24 DD imagerel $unwind$?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DD imagerel $LN20 DD imagerel $LN20+1216 DD imagerel $unwind$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA+27 DD imagerel $unwind$?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA+27 DD imagerel $unwind$?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD imagerel ?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA+116 DD imagerel $unwind$?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z DD imagerel $LN20 DD imagerel $LN20+1814 DD imagerel $unwind$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA+27 DD imagerel $unwind$?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA+27 DD imagerel $unwind$?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD imagerel ?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA+27 DD imagerel $unwind$?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DD imagerel $LN7 DD imagerel $LN7+196 DD imagerel $unwind$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD imagerel ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD imagerel ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD imagerel ?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD imagerel ?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA+24 DD imagerel $unwind$?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z DD imagerel $LN12 DD imagerel $LN12+389 DD imagerel $unwind$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA DD imagerel ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA DD imagerel ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z DD imagerel $LN7 DD imagerel $LN7+204 DD imagerel $unwind$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DD imagerel ?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DD imagerel ?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DD imagerel ?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DD imagerel ?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA+24 DD imagerel $unwind$?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DD imagerel $LN8 DD imagerel $LN8+309 DD imagerel $unwind$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Commit@CSpreadSheet@@QEAA_NXZ DD imagerel $LN76 DD imagerel $LN76+3487 DD imagerel $unwind$?Commit@CSpreadSheet@@QEAA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+116 DD imagerel $unwind$?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+116 DD imagerel $unwind$?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+116 DD imagerel $unwind$?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+24 DD imagerel $unwind$?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+32 DD imagerel $unwind$?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD imagerel ?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA+27 DD imagerel $unwind$?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?RollBack@CSpreadSheet@@QEAA_NXZ DD imagerel $LN4 DD imagerel $LN4+70 DD imagerel $unwind$?RollBack@CSpreadSheet@@QEAA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $LN44 DD imagerel $LN44+2268 DD imagerel $unwind$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+27 DD imagerel $unwind$?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+24 DD imagerel $unwind$?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+24 DD imagerel $unwind$?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+27 DD imagerel $unwind$?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+27 DD imagerel $unwind$?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+27 DD imagerel $unwind$?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD imagerel ?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA+27 DD imagerel $unwind$?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z DD imagerel $LN3 DD imagerel $LN3+53 DD imagerel $unwind$?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?Open@CSpreadSheet@@AEAA_NXZ DD imagerel $LN80 DD imagerel $LN80+3425 DD imagerel $unwind$?Open@CSpreadSheet@@AEAA_NXZ pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+24 DD imagerel $unwind$?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+170 DD imagerel $unwind$?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+196 DD imagerel $unwind$?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+32 DD imagerel $unwind$?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD imagerel ?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA+27 DD imagerel $unwind$?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DD imagerel $LN12 DD imagerel $LN12+416 DD imagerel $unwind$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD imagerel ?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD imagerel ?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA+24 DD imagerel $unwind$?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$??$AtlAddThrow@H@ATL@@YAHHH@Z DD imagerel $LN4 DD imagerel $LN4+60 DD imagerel $unwind$??$AtlAddThrow@H@ATL@@YAHHH@Z pdata ENDS ; COMDAT ??_R0PEAVCDBException@@@8 data$r SEGMENT ??_R0PEAVCDBException@@@8 DQ FLAT:??_7type_info@@6B@ ; CDBException * `RTTI Type Descriptor' DQ 0000000000000000H DB '.PEAVCDBException@@', 00H data$r ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$AtlAddThrow@H@ATL@@YAHHH@Z DD 010c01H DD 0620cH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DB 012H DB 00H DB 00H DB '&' DB 02H DB 08aH DB 00H DB ',' DB 02H DB 09eH DB 00H DB '(' DB 02H DB 019H, 02H DB 00H DB '"' DB 02H DB 'H' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DB 08H DD imagerel $stateUnwindMap$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DD imagerel $ip2state$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DD 011311H DD 0a213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Open@CSpreadSheet@@AEAA_NXZ DB 'T' DB 00H DB 00H DB 'u', 02H DB 02H DB 08eH DB 00H DB 098H DB 04H DB 0e8H DB 00H DB 'M', 06H DB 08H DB 'p' DB 0aH DB 'h' DB 0cH DB 'p' DB 0eH DB ':' DB 0cH DB 01cH DB 0aH DB 01cH DB 08H DB 01cH DB 00H DB 0c2H DB 010H DB 'p' DB 012H DB 'h' DB 014H DB ':' DB 012H DB 01cH DB 010H DB 01cH DB 00H DB 0f0H DB 016H DB 0d9H, 03H DB 018H DB 'p' DB 01aH DB 'h' DB 01cH DB 'p' DB 01eH DB ':' DB 01cH DB 01cH DB 01aH DB 01cH DB 018H DB 01cH DB 016H DB 0c2H DB ' ' DB 'p' DB '"' DB 'h' DB '$' DB ':' DB '"' DB 01cH DB ' ' DB 01cH DB 016H DB 0b2H DB 00H DB 'y', 03H DB '(' DB '6' DB '*' DB 0d0H DB '(' DB 'h' DB ',' DB 0b0H DB '(' DB 0b1H, 09H DB 00H DB '>' DB '(' xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$1$?Open@CSpreadSheet@@AEAA_NXZ DB 02H DB 00H DD imagerel ?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$0$?Open@CSpreadSheet@@AEAA_NXZ DB 02H DB 00H DD imagerel ?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$?Open@CSpreadSheet@@AEAA_NXZ DB 02H DB 00H DD imagerel ?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $tryMap$?Open@CSpreadSheet@@AEAA_NXZ DB 06H DB 02H DB 02H DB 04H DD imagerel $handlerMap$?Open@CSpreadSheet@@AEAA_NXZ DB 014H DB '"' DB '$' DD imagerel $handlerMap$0$?Open@CSpreadSheet@@AEAA_NXZ DB '&' DB '*' DB ',' DD imagerel $handlerMap$1$?Open@CSpreadSheet@@AEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?Open@CSpreadSheet@@AEAA_NXZ DB 02eH DB 0eH DD imagerel ?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 030H DB 038H DB 046H DD imagerel ?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 0e6H DD imagerel ?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 0b1H DB 02H DB 016H DD imagerel ?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 0b6H DD imagerel ?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 01H DB 05H DB 021H DB 05H DB 016H DD imagerel ?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 03eH DD imagerel ?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA DB 0e1H DB 05H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Open@CSpreadSheet@@AEAA_NXZ DB 018H DD imagerel $stateUnwindMap$?Open@CSpreadSheet@@AEAA_NXZ DD imagerel $tryMap$?Open@CSpreadSheet@@AEAA_NXZ DD imagerel $ip2state$?Open@CSpreadSheet@@AEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Open@CSpreadSheet@@AEAA_NXZ DD 020c19H DD 063010cH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Open@CSpreadSheet@@AEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 'f' DB 00H DB 00H DB '"' DB 02H DB 0ddH, 02H DB 04H DB 084H DB 06H DB 01aH DB 02H DB 'B' DB 08H DB '.' DB 02H DB 01cH DB 00H DB '.' DB 08H DB 0c6H DB 02H DB 01cH DB 00H DB '.' DB 08H DB '`' DB 02H DB 01cH DB 00H DB '.' DB 08H DB '<' DB 02H DB 01cH DB 00H DB '.' DB 08H DB 0aH DB 02H DB 01cH DB 00H DB '8' DB 02H DB 0b0H DB 0aH DB 0a8H DB 0cH DB ' ' DB 02H DB 'B' DB 0eH DB '.' DB 02H DB 01cH DB 00H DB '.' DB 0eH DB 09dH, 09H DB 02H DB 01cH DB 00H DB '.' DB 0eH DB 0acH DB 02H DB 01cH DB 00H DB '.' DB 0eH DB 'h' DB 02H DB 01cH DB 00H DB '.' DB 0eH DB 014H DB 02H DB 01cH DB 00H DB '8' DB 0eH DB 'V' DB 02H DB 01cH DB 00H DB '.' DB 0eH DB 0acH DB 02H DB 01cH DB 00H DB '.' DB 0eH DB '`' DB 02H DB 01cH DB 00H DB '(' DB 0eH DB 014H DB 02H DB 01cH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 0eH DB 0eH DD imagerel ?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 02eH DD imagerel ?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 02eH DD imagerel ?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 07eH DD imagerel ?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 0a6H DD imagerel ?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 02eH DD imagerel ?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 0f6H DD imagerel ?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 08H DD imagerel $stateUnwindMap$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $ip2state$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD 021111H DD 0610111H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?RollBack@CSpreadSheet@@QEAA_NXZ DD 010901H DD 04209H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020a01H DD 05006520aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Commit@CSpreadSheet@@QEAA_NXZ DB 'L' DB 00H DB 00H DB 'q', 03H DB 02H DB 'h' DB 04H DB ':' DB 02H DB 01cH DB 00H DB 084H DB 06H DB 092H DB 00H DB 0d1H, 03H DB 0aH DB 08aH DB 0cH DB 'h' DB 0eH DB 'h' DB 010H DB ':' DB 0eH DB 01cH DB 0cH DB 01cH DB 0aH DB 01cH DB 00H DB 'i', 05H DB 012H DB 08aH DB 014H DB 'h' DB 016H DB 'h' DB 018H DB ':' DB 016H DB 01cH DB 014H DB 01cH DB 012H DB 01cH DB 00H DB 0dcH DB 01aH DB 011H, 02H DB 00H DB 0bdH, 05H DB 01eH DB ':' DB 00H DB 01dH, 05H DB ' ' DB ':' DB 00H DB 0dcH DB '"' DB 092H DB 00H DB 09aH DB '&' DB '0' DB '(' DB 0b2H DB '&' DB 'h' DB '*' DB 0aaH DB '&' DB 'm', 06H DB 00H DB '>' DB '&' xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$2$?Commit@CSpreadSheet@@QEAA_NXZ DB 02H DB 00H DD imagerel ?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$1$?Commit@CSpreadSheet@@QEAA_NXZ DB 02H DB 06H DD imagerel ??_R0PEAVCDBException@@@8 DB 01H, 0bH DD imagerel ?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$0$?Commit@CSpreadSheet@@QEAA_NXZ DB 02H DB 06H DD imagerel ??_R0PEAVCDBException@@@8 DB 0c1H, 08H DD imagerel ?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$?Commit@CSpreadSheet@@QEAA_NXZ DB 02H DB 06H DD imagerel ??_R0PEAVCDBException@@@8 DB 0e1H, 03H DD imagerel ?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $tryMap$?Commit@CSpreadSheet@@QEAA_NXZ DB 08H DB 04H DB 04H DB 06H DD imagerel $handlerMap$?Commit@CSpreadSheet@@QEAA_NXZ DB 018H DB 018H DB 01aH DD imagerel $handlerMap$0$?Commit@CSpreadSheet@@QEAA_NXZ DB ' ' DB ' ' DB '"' DD imagerel $handlerMap$1$?Commit@CSpreadSheet@@QEAA_NXZ DB '$' DB '(' DB '*' DD imagerel $handlerMap$2$?Commit@CSpreadSheet@@QEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?Commit@CSpreadSheet@@QEAA_NXZ DB 02cH DB 0eH DD imagerel ?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 058H DB 060H DB 06eH DD imagerel ?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 01dH DB 02H DD imagerel ?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 036H DD imagerel ?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 02eH DD imagerel ?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 061H DB 03H DB 081H DB 03H DB 0adH DB 03H DD imagerel ?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 0dH DB 04H DD imagerel ?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 061H DB 04H DB 081H DB 04H DB 0a1H DB 04H DB 016H DD imagerel ?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 03eH DD imagerel ?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA DB 061H DB 05H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Commit@CSpreadSheet@@QEAA_NXZ DB 018H DD imagerel $stateUnwindMap$?Commit@CSpreadSheet@@QEAA_NXZ DD imagerel $tryMap$?Commit@CSpreadSheet@@QEAA_NXZ DD imagerel $ip2state$?Commit@CSpreadSheet@@QEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Commit@CSpreadSheet@@QEAA_NXZ DD 020c19H DD 065010cH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Commit@CSpreadSheet@@QEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DD 011901H DD 08219H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z DB 0eH DB 00H DB 00H DB '0' DB 02H DB 0a6H DB 00H DB '"' DB 02H DB 'L' DB 00H DB '"' DB 02H DB 0aH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z DB 04H DB 0eH DD imagerel ?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA DB 02eH DD imagerel ?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z DB 08H DD imagerel $stateUnwindMap$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z DD imagerel $ip2state$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z DD 011811H DD 0a218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z DB 06H DB 00H DB 00H DB 0a5H, 04H DB 02H DB ' ' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z DB 08H DD imagerel $stateUnwindMap$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z DD imagerel $ip2state$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z DD 011411H DD 0a214H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DB 0eH DB 00H DB 00H DB '0' DB 02H DB 0a0H DB 00H DB '"' DB 02H DB 'B' DB 00H DB '"' DB 02H DB 0aH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DB 04H DB 0eH DD imagerel ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA DB 02eH DD imagerel ?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DB 08H DD imagerel $stateUnwindMap$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DD imagerel $ip2state$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z DD 011811H DD 0a218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z DB 012H DB 00H DB 00H DB 'i', 07H DB 02H DB '&' DB 00H DB 'i', 03H DB 04H DB ',' DB 00H DB 0d5H, 07H DB 06H DB ',' DB 00H DB 'i', 03H DB 08H DB ',' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z DB 08H DB 0eH DD imagerel ?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DB 036H DD imagerel ?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DB 05eH DD imagerel ?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA DB 086H DD imagerel ?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z DB 08H DD imagerel $stateUnwindMap$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z DD imagerel $ip2state$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z DD 021611H DD 0290116H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD 020a01H DD 05006320aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DB 014H DB 00H DB 00H DB 081H, 06H DB 02H DB ':' DB 00H DB '5', 02H DB 04H DB ':' DB 00H DB 081H, 04H DB 06H DB ':' DB 00H DB 0dcH DB 08H DB 0feH DB 00H DB 'L' DB 08H xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DB 02H DB 06H DD imagerel ??_R0PEAVCDBException@@@8 DB '!', 04H DD imagerel ?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $tryMap$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DB 02H DB 06H DB 06H DB 08H DD imagerel $handlerMap$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DB 0aH DB 0eH DD imagerel ?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DB 036H DD imagerel ?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DB 05eH DD imagerel ?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA DB 080H DB 088H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DB 018H DD imagerel $stateUnwindMap$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DD imagerel $tryMap$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DD imagerel $ip2state$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z DD 021619H DD 0230116H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DB 01eH DB 00H DB 00H DB '8' DB 02H DB 'X' DB 00H DB '.' DB 02H DB 0beH DB 00H DB '.' DB 02H DB '}', 08H DB 00H DB '.' DB 02H DB 015H, 02H DB 00H DB '.' DB 02H DB 'D' DB 00H DB '8' DB 02H DB 'j' DB 04H DB 099H, 05H DB 02H DB ')', 0cH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DB 04H DB 0eH DD imagerel ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA DB 02eH DD imagerel ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DB 08H DD imagerel $stateUnwindMap$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DD imagerel $ip2state$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z DD 021c11H DD 01d011cH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z DB 014H DB 00H DB 00H DB '0' DB 04H DB 0b2H DB 02H DB 01cH DB 00H DB '.' DB 04H DB 0aeH DB 02H DB 01cH DB 00H DB '(' DB 04H DB 0aH DB 02H DB 01cH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z DB 08H DB 0eH DD imagerel ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DB 02eH DD imagerel ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DB 02eH DD imagerel ?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA DB 056H DD imagerel ?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z DB 08H DD imagerel $stateUnwindMap$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z DD imagerel $ip2state$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z DD 011811H DD 0e218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z DB 06H DB 00H DB 00H DB 0b5H, 015H DB 02H DB 099H, 05H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z DB 08H DD imagerel $stateUnwindMap$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z DD imagerel $ip2state$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z DD 021b11H DD 01b011bH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 00H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020a01H DD 05006320aH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 01aH DB 00H DB 00H DB '"' DB 02H DB 'a', 02H DB 04H DB 'J' DB 06H DB ':' DB 04H DB 016H DB 02H DB 'p' DB 08H DB 0d5H, 02H DB 02H DB 04H DB 00H DB '(' DB 02H DB 0aH DB 00H DB ',' DB 02H DB '"' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $handlerMap$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 02H DB 06H DD imagerel ??_R0PEAVCDBException@@@8 DB 'A', 02H DD imagerel ?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $tryMap$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 02H DB 06H DB 06H DB 08H DD imagerel $handlerMap$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 0aH DB 0eH DD imagerel ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 02eH DD imagerel ?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 02eH DD imagerel ?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA DB 078H DB 080H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DB 018H DD imagerel $stateUnwindMap$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $tryMap$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD imagerel $ip2state$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD 021119H DD 0150111H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?DeleteSheet@CSpreadSheet@@QEAA_NXZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?DeleteSheet@CSpreadSheet@@QEAA_NXZ DB 02H DB 0eH DD imagerel ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?DeleteSheet@CSpreadSheet@@QEAA_NXZ DB 08H DD imagerel $stateUnwindMap$?DeleteSheet@CSpreadSheet@@QEAA_NXZ DD imagerel $ip2state$?DeleteSheet@CSpreadSheet@@QEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?DeleteSheet@CSpreadSheet@@QEAA_NXZ DD 010911H DD 08209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?DeleteSheet@CSpreadSheet@@QEAA_NXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z DD 011301H DD 0c213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Close@CSpreadSheet@@QEAAXXZ DD 010901H DD 0a209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??1CSpreadSheet@@QEAA@XZ DB 01cH DB 00H DB 00H DB 012H DB 018H DB 016H DB 016H DB '(' DB 014H DB '(' DB 012H DB '$' DB 010H DB '$' DB 0eH DB '$' DB 0cH DB '$' DB 0aH DB '$' DB 08H DB '$' DB 06H DB '$' DB 04H DB '$' DB 02H DB '$' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??1CSpreadSheet@@QEAA@XZ DB 018H DB 0eH DD imagerel ?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA DB 02eH DD imagerel ?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??1CSpreadSheet@@QEAA@XZ DB 048H DD imagerel $stateUnwindMap$??1CSpreadSheet@@QEAA@XZ DD imagerel $ip2state$??1CSpreadSheet@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1CSpreadSheet@@QEAA@XZ DD 010919H DD 04209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??1CSpreadSheet@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z DB '4' DB 00H DB 00H DB '6' DB 04H DB 0d6H DB 06H DB '*' DB 08H DB '*' DB 0aH DB '*' DB 0cH DB '*' DB 0eH DB '*' DB 010H DB 'H' DB 012H DB '*' DB 014H DB '*' DB 016H DB '*' DB 018H DB '.' DB 01aH DB '.' DB 01cH DB 0b6H DB 01eH DB '4' DB 01cH DB 'A', 03H DB ' ' DB 'X' DB 01cH DB 0edH, 02H DB '"' DB '$' DB '$' DB 'f' DB '&' DB ':' DB '$' DB 01cH DB '"' DB 0d0H DB 01cH DB 0dH, 04H DB 02H DB 01cH DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z DB 026H DB 0eH DD imagerel ?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 056H DD imagerel ?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 07eH DD imagerel ?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA DB 02eH DD imagerel ?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z DB 08H DD imagerel $stateUnwindMap$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z DD imagerel $ip2state$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z DD 021b11H DD 015011bH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?MoveNext@CRecordset@@QEAAXXZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z DD 011301H DD 04213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?RemoveAll@CStringArray@@QEAAXXZ DD 010901H DD 04209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??_GCArchive@@QEAAPEAXI@Z DD 010d01H DD 0420dH xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DB 040H DD imagerel $ip2state$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ DD 010419H DD 04204H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DB 040H DD imagerel $ip2state$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z DD 010819H DD 04208H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z DB 06H DB 00H DB 00H DB 'V' DB 02H DB '&' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z DB 08H DD imagerel $stateUnwindMap$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z DD imagerel $ip2state$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z DD 010e11H DD 0620eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z DB 040H DD imagerel $ip2state$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z DD 010e19H DD 0620eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z DB 06H DB 00H DB 00H DB 'f' DB 04H DB 0ccH DB 02H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z DB 04H DB 0eH DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA DB 02eH DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z DB 08H DD imagerel $stateUnwindMap$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z DD imagerel $ip2state$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z DD 011311H DD 0a213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z DB 06H DB 00H DB 00H DB 'f' DB 04H DB 0ccH DB 02H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z DB 04H DB 0eH DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA DB 02eH DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z DB 08H DD imagerel $stateUnwindMap$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z DD imagerel $ip2state$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z DD 011311H DD 0a213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z DB 06H DB 00H DB 00H DB 'f' DB 04H DB 0f6H DB 02H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z DB 04H DB 0eH DD imagerel ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA DB 02eH DD imagerel ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z DB 08H DD imagerel $stateUnwindMap$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z DD imagerel $ip2state$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z DD 011311H DD 0c213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z DD 011301H DD 08213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z DD 010d01H DD 0620dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z DB 06H DB 00H DB 00H DB 0ccH DB 02H DB 094H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z DB 08H DD imagerel $stateUnwindMap$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z DD imagerel $ip2state$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z DD 011311H DD 08213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ DD 011801H DD 06218H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z DB 08H DB 00H DB 00H DB 0a4H DB 02H DB '$' DB 00H DB 098H DB 02H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z DB 08H DD imagerel $stateUnwindMap$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z DD imagerel $ip2state$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z DD 011311H DD 08213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z DB 08H DB 00H DB 00H DB 011H, 03H DB 02H DB '$' DB 00H DB 082H DB 02H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z DB 08H DD imagerel $stateUnwindMap$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z DD imagerel $ip2state$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z DD 011811H DD 08218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z DD 011301H DD 06213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z DD 011301H DD 06213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z DD 011201H DD 08212H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DB 06H DB 00H DB 00H DB 'V' DB 02H DB '(' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DB 08H DD imagerel $stateUnwindMap$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DD imagerel $ip2state$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DD 010e11H DD 0620eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H DB 0eH DD imagerel ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 048H DD imagerel $stateUnwindMap$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD imagerel $ip2state$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD 010911H DD 04209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DB 08H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DD 011811H DD 04218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z DB 06H DB 00H DB 00H DB 'F' DB 02H DB 'L' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z DB 08H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z DD 011311H DD 04213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z DB 06H DB 00H DB 00H DB 'B' DB 02H DB 'L' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z DB 08H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z DD 010e11H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z DB 06H DB 00H DB 00H DB 'F' DB 02H DB 'L' DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z DB 08H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z DD 011311H DD 04213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z DB 08H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z DD 010e11H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DB 048H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD 010e19H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA DD 020601H DD 050023206H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 02H DB 0eH DD imagerel ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DB 048H DD imagerel $stateUnwindMap$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD imagerel $ip2state$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ DD 010919H DD 04209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z DD 010901H DD 0c209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H DD 0420dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H DD 0820dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H DD 0620dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z DD 010d01H DD 0620dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z DD 010d01H DD 0c20dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ DD 010401H DD 04204H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z DD 011801H DD 08218H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z DB 040H DD imagerel $ip2state$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z DD 010e19H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DB 040H DD imagerel $ip2state$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z DD 010919H DD 04209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DB 040H DD imagerel $ip2state$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z DD 011819H DD 04218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD 011301H DD 0a213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z DD 010d01H DD 0420dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD 010901H DD 04209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z DD 010d01H DD 0420dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z DD 010d01H DD 0420dH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ DD 010901H DD 04209H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DB 040H DD imagerel $ip2state$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ DD 010919H DD 08209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z DD 011301H DD 0a213H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z DD 010e01H DD 0420eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z DD 010e01H DD 0a20eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z DD 011801H DD 08218H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z DD 010e01H DD 0620eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z DD 011701H DD 04217H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z DB 040H DD imagerel $ip2state$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z DD 011719H DD 06217H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DB 040H DD imagerel $ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z DD 010919H DD 04209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z DB 040H DD imagerel $ip2state$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z DD 010919H DD 06209H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z DB 040H DD imagerel $ip2state$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z DD 011819H DD 08218H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z DB 040H DD imagerel $ip2state$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z DD 010e19H DD 0820eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DB 040H DD imagerel $ip2state$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DD 010e19H DD 0620eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DB 040H DD imagerel $ip2state$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z DD 010e19H DD 0620eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DB 040H DD imagerel $ip2state$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DD 010e19H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DB 040H DD imagerel $ip2state$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z DD 010e19H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z DB 040H DD imagerel $ip2state$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z DD 010e19H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z DB 040H DD imagerel $ip2state$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z DD 010e19H DD 0420eH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 017H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$?Release@CStringData@ATL@@QEAAXXZ DD 010901H DD 06209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?IsShared@CStringData@ATL@@QEBA_NXZ DD 010901H DD 02209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?IsLocked@CStringData@ATL@@QEBA_NXZ DD 010901H DD 02209H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 0eH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$??$AtlAdd@H@ATL@@YAJPEAHHH@Z DD 011201H DD 04212H xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DB 040H DD imagerel $ip2state$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z DD 010d19H DD 0620dH DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $ip2state$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DB 02H DB 00H DB 00H xdata ENDS ; COMDAT xdata xdata SEGMENT $cppxdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DB 040H DD imagerel $ip2state$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z DD 011319H DD 08213H DD imagerel __CxxFrameHandler4 DD imagerel $cppxdata$?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AtlIsValidString@ATL@@YAHPEB_W_K@Z DD 010e01H DD 0220eH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AtlStrLen@ATL@@YAHPEB_W@Z DD 010901H DD 04209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z DD 011801H DD 04218H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z DD 011801H DD 04218H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AtlThrowImpl@ATL@@YAXJ@Z DD 010801H DD 04208H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??3CObject@@SAXPEAX@Z DD 010901H DD 04209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$??2CObject@@SAPEAX_K@Z DD 010901H DD 04209H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$?AfxCrtErrorCheck@@YAHH@Z DD 010801H DD 06208H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$HRESULT_FROM_WIN32 DD 010801H DD 02208H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$memmove_s DD 011801H DD 08218H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$memcpy_s DD 011801H DD 08218H xdata ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlalloc.h ; COMDAT ??$AtlAddThrow@H@ATL@@YAHHH@Z _TEXT SEGMENT hr$ = 32 tResult$ = 36 tLeft$ = 64 tRight$ = 72 ??$AtlAddThrow@H@ATL@@YAHHH@Z PROC ; ATL::AtlAddThrow, COMDAT ; 194 : { $LN4: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00008 48 83 ec 38 sub rsp, 56 ; 00000038H ; 195 : T tResult; ; 196 : HRESULT hr=AtlAdd(&tResult, tLeft, tRight); 0000c 44 8b 44 24 48 mov r8d, DWORD PTR tRight$[rsp] 00011 8b 54 24 40 mov edx, DWORD PTR tLeft$[rsp] 00015 48 8d 4c 24 24 lea rcx, QWORD PTR tResult$[rsp] 0001a e8 00 00 00 00 call ??$AtlAdd@H@ATL@@YAJPEAHHH@Z ; ATL::AtlAdd 0001f 89 44 24 20 mov DWORD PTR hr$[rsp], eax ; 197 : if(FAILED(hr)) 00023 83 7c 24 20 00 cmp DWORD PTR hr$[rsp], 0 00028 7d 09 jge SHORT $LN2@AtlAddThro ; 198 : { ; 199 : AtlThrow(hr); 0002a 8b 4c 24 20 mov ecx, DWORD PTR hr$[rsp] 0002e e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN2@AtlAddThro: ; 200 : } ; 201 : return tResult; 00033 8b 44 24 24 mov eax, DWORD PTR tResult$[rsp] $LN3@AtlAddThro: ; 202 : } 00037 48 83 c4 38 add rsp, 56 ; 00000038H 0003b c3 ret 0 ??$AtlAddThrow@H@ATL@@YAHHH@Z ENDP ; ATL::AtlAddThrow _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z _TEXT SEGMENT i$1 = 32 $T2 = 36 $T3 = 38 $T4 = 40 $T5 = 42 firstLetter$6 = 44 secondLetter$7 = 48 tv149 = 56 tv165 = 64 tv171 = 72 this$ = 96 column$ = 104 Auto$ = 112 ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z PROC ; CSpreadSheet::CalculateColumnNumber, COMDAT ; 1260 : { $LN12: 00000 44 88 44 24 18 mov BYTE PTR [rsp+24], r8b 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 58 sub rsp, 88 ; 00000058H ; 1261 : if (Auto) 00013 0f b6 44 24 70 movzx eax, BYTE PTR Auto$[rsp] 00018 85 c0 test eax, eax 0001a 0f 84 b1 00 00 00 je $LN5@CalculateC ; 1262 : { ; 1263 : column.MakeUpper(); 00020 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 00025 e8 00 00 00 00 call ?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ ; ATL::CStringT > >::MakeUpper ; 1264 : ; 1265 : int firstLetter, secondLetter; ; 1266 : if (1 == column.GetLength()) 0002a 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 0002f e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00034 83 f8 01 cmp eax, 1 00037 75 35 jne SHORT $LN6@CalculateC ; 1267 : { ; 1268 : firstLetter = column.GetAt(0); 00039 33 d2 xor edx, edx 0003b 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 00040 e8 00 00 00 00 call ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z ; ATL::CSimpleStringT::GetAt 00045 0f b7 c0 movzx eax, ax 00048 89 44 24 2c mov DWORD PTR firstLetter$6[rsp], eax ; 1269 : return (firstLetter - 65 + 1); // ASCIIÂëÖдóд×ÖĸAΪ65 0004c 8b 44 24 2c mov eax, DWORD PTR firstLetter$6[rsp] 00050 83 e8 40 sub eax, 64 ; 00000040H 00053 66 89 44 24 24 mov WORD PTR $T2[rsp], ax 00058 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 0005d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00062 0f b7 44 24 24 movzx eax, WORD PTR $T2[rsp] 00067 e9 2f 01 00 00 jmp $LN1@CalculateC ; 1270 : } 0006c eb 63 jmp SHORT $LN5@CalculateC $LN6@CalculateC: ; 1271 : else if (2 == column.GetLength()) 0006e 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 00073 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00078 83 f8 02 cmp eax, 2 0007b 75 54 jne SHORT $LN5@CalculateC ; 1272 : { ; 1273 : firstLetter = column.GetAt(0); 0007d 33 d2 xor edx, edx 0007f 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 00084 e8 00 00 00 00 call ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z ; ATL::CSimpleStringT::GetAt 00089 0f b7 c0 movzx eax, ax 0008c 89 44 24 2c mov DWORD PTR firstLetter$6[rsp], eax ; 1274 : secondLetter = column.GetAt(1); 00090 ba 01 00 00 00 mov edx, 1 00095 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 0009a e8 00 00 00 00 call ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z ; ATL::CSimpleStringT::GetAt 0009f 0f b7 c0 movzx eax, ax 000a2 89 44 24 30 mov DWORD PTR secondLetter$7[rsp], eax ; 1275 : return ((firstLetter - 65 + 1)*26 + (secondLetter - 65 + 1)); // ASCIIÂëÖдóд×ÖĸAΪ65 000a6 8b 44 24 2c mov eax, DWORD PTR firstLetter$6[rsp] 000aa 83 e8 40 sub eax, 64 ; 00000040H 000ad 6b c0 1a imul eax, eax, 26 000b0 8b 4c 24 30 mov ecx, DWORD PTR secondLetter$7[rsp] 000b4 8d 44 08 c0 lea eax, DWORD PTR [rax+rcx-64] 000b8 66 89 44 24 26 mov WORD PTR $T3[rsp], ax 000bd 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 000c2 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000c7 0f b7 44 24 26 movzx eax, WORD PTR $T3[rsp] 000cc e9 ca 00 00 00 jmp $LN1@CalculateC $LN5@CalculateC: ; 1276 : } ; 1277 : } ; 1278 : ; 1279 : // ¼ì²éÊÇ·ñÊÇÓÐЧµÄ×Ö¶ÎÃû£¬ÓÐЧֱ½Ó·µ»Ø ; 1280 : for (int i = 0; i < m_aFieldNames.GetSize(); i++) 000d1 c7 44 24 20 00 00 00 00 mov DWORD PTR i$1[rsp], 0 000d9 eb 0a jmp SHORT $LN4@CalculateC $LN2@CalculateC: 000db 8b 44 24 20 mov eax, DWORD PTR i$1[rsp] 000df ff c0 inc eax 000e1 89 44 24 20 mov DWORD PTR i$1[rsp], eax $LN4@CalculateC: 000e5 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 000ea 48 89 44 24 38 mov QWORD PTR tv149[rsp], rax 000ef 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000f4 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 000fb e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00100 48 8b 4c 24 38 mov rcx, QWORD PTR tv149[rsp] 00105 48 3b c8 cmp rcx, rax 00108 7d 63 jge SHORT $LN3@CalculateC ; 1281 : { ; 1282 : if (!column.Compare(m_aFieldNames.GetAt(i))) 0010a 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 0010f 48 05 80 00 00 00 add rax, 128 ; 00000080H 00115 48 89 44 24 40 mov QWORD PTR tv165[rsp], rax 0011a 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 0011f 48 8b d0 mov rdx, rax 00122 48 8b 4c 24 40 mov rcx, QWORD PTR tv165[rsp] 00127 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 0012c 48 8b c8 mov rcx, rax 0012f e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00134 48 89 44 24 48 mov QWORD PTR tv171[rsp], rax 00139 48 8b 54 24 48 mov rdx, QWORD PTR tv171[rsp] 0013e 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 00143 e8 00 00 00 00 call ?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z ; ATL::CStringT > >::Compare 00148 85 c0 test eax, eax 0014a 75 1c jne SHORT $LN9@CalculateC ; 1283 : { ; 1284 : return (i + 1); 0014c 8b 44 24 20 mov eax, DWORD PTR i$1[rsp] 00150 ff c0 inc eax 00152 66 89 44 24 28 mov WORD PTR $T4[rsp], ax 00157 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 0015c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00161 0f b7 44 24 28 movzx eax, WORD PTR $T4[rsp] 00166 eb 33 jmp SHORT $LN1@CalculateC $LN9@CalculateC: ; 1285 : } ; 1286 : } 00168 e9 6e ff ff ff jmp $LN2@CalculateC $LN3@CalculateC: ; 1287 : ; 1288 : m_sLastError = _T("ÎÞЧ×Ö¶ÎÃû»ò×ÖĸÁкÅ\n"); 0016d 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00172 48 83 c0 50 add rax, 80 ; 00000050H 00176 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331775 0017d 48 8b c8 mov rcx, rax 00180 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 1289 : ; 1290 : return 0; 00185 33 c0 xor eax, eax 00187 66 89 44 24 2a mov WORD PTR $T5[rsp], ax 0018c 48 8b 4c 24 68 mov rcx, QWORD PTR column$[rsp] 00191 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00196 0f b7 44 24 2a movzx eax, WORD PTR $T5[rsp] $LN1@CalculateC: ; 1291 : } 0019b 48 83 c4 58 add rsp, 88 ; 00000058H 0019f c3 ret 0 ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ENDP ; CSpreadSheet::CalculateColumnNumber _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT i$1 = 32 $T2 = 36 $T3 = 38 $T4 = 40 $T5 = 42 firstLetter$6 = 44 secondLetter$7 = 48 tv149 = 56 tv165 = 64 tv171 = 72 this$ = 96 column$ = 104 Auto$ = 112 ?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA PROC ; `CSpreadSheet::CalculateColumnNumber'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 68 mov rcx, QWORD PTR column$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA ENDP ; `CSpreadSheet::CalculateColumnNumber'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?GetExcelDriver@CSpreadSheet@@AEAAXXZ _TEXT SEGMENT this$ = 8 ?GetExcelDriver@CSpreadSheet@@AEAAXXZ PROC ; CSpreadSheet::GetExcelDriver, COMDAT ; 1295 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 1296 : /* ; 1297 : char szBuf[2001]; ; 1298 : WORD cbBufMax = 2000; ; 1299 : WORD cbBufOut; ; 1300 : char *pszBuf = szBuf; ; 1301 : ; 1302 : // »ñÈ¡ÒѰ²×°Çý¶¯³ÌÐòµÄÃû×Ö (ÐèÒª°üº¬Í·Îļþ"odbcinst.h") ; 1303 : if(!SQLGetInstalledDrivers(szBuf,cbBufMax,& cbBufOut)) ; 1304 : { ; 1305 : m_sExcelDriver = _T(""); ; 1306 : } ; 1307 : ; 1308 : // ѰÕÒExcelÇý¶¯³ÌÐò... ; 1309 : do ; 1310 : { ; 1311 : if( NULL != strstr( pszBuf, "Excel" ) ) ; 1312 : { ; 1313 : // ÕÒµ½! ; 1314 : m_sExcelDriver = CString( pszBuf ); ; 1315 : break; ; 1316 : } ; 1317 : pszBuf = strchr( pszBuf, '\0' ) + 1; ; 1318 : } ; 1319 : while( '\0' != pszBuf[1] ); ; 1320 : */ ; 1321 : } 00005 c3 ret 0 ?GetExcelDriver@CSpreadSheet@@AEAAXXZ ENDP ; CSpreadSheet::GetExcelDriver _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?Open@CSpreadSheet@@AEAA_NXZ _TEXT SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?Open@CSpreadSheet@@AEAA_NXZ PROC ; CSpreadSheet::Open, COMDAT ; 1103 : { $LN80: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 81 ec 18 03 00 00 sub rsp, 792 ; 00000318H ; 1104 : if (m_bExcel) // µ±ÎļþÊÇExcelµç×Ó±í¸ñÎļþʱ 0000c 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00014 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00018 85 c0 test eax, eax 0001a 0f 84 9e 09 00 00 je $LN15@Open ; 1105 : { ; 1106 : // ´ò¿ª»ò´´½¨ExcelÎļþ ; 1107 : m_Database->OpenEx(m_sDsn, CDatabase::noOdbcDialog); 00020 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00028 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0002f 48 89 84 24 b8 00 00 00 mov QWORD PTR tv87[rsp], rax 00037 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0003f 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00046 48 8b 00 mov rax, QWORD PTR [rax] 00049 48 8b 40 20 mov rax, QWORD PTR [rax+32] 0004d 48 89 84 24 c0 00 00 00 mov QWORD PTR tv89[rsp], rax 00055 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0005d 48 83 c0 18 add rax, 24 00061 48 8b c8 mov rcx, rax 00064 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00069 48 89 84 24 b0 00 00 00 mov QWORD PTR tv85[rsp], rax 00071 41 b8 08 00 00 00 mov r8d, 8 00077 48 8b 94 24 b0 00 00 00 mov rdx, QWORD PTR tv85[rsp] 0007f 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR tv87[rsp] 00087 ff 94 24 c0 00 00 00 call QWORD PTR tv89[rsp] ; 1108 : ; 1109 : // ´´½¨¼Ç¼¼¯²¢²éѯ±í ; 1110 : m_rSheet = new CRecordset( m_Database ); 0008e b9 b8 01 00 00 mov ecx, 440 ; 000001b8H 00093 e8 00 00 00 00 call ??2CObject@@SAPEAX_K@Z ; CObject::operator new 00098 48 89 44 24 78 mov QWORD PTR $T13[rsp], rax 0009d 48 83 7c 24 78 00 cmp QWORD PTR $T13[rsp], 0 000a3 74 23 je SHORT $LN30@Open 000a5 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 000ad 48 8b 90 d0 00 00 00 mov rdx, QWORD PTR [rax+208] 000b4 48 8b 4c 24 78 mov rcx, QWORD PTR $T13[rsp] 000b9 e8 00 00 00 00 call ??0CRecordset@@QEAA@PEAVCDatabase@@@Z ; CRecordset::CRecordset 000be 48 89 84 24 80 00 00 00 mov QWORD PTR tv134[rsp], rax 000c6 eb 0c jmp SHORT $LN31@Open $LN30@Open: 000c8 48 c7 84 24 80 00 00 00 00 00 00 00 mov QWORD PTR tv134[rsp], 0 $LN31@Open: 000d4 48 8b 84 24 80 00 00 00 mov rax, QWORD PTR tv134[rsp] 000dc 48 89 84 24 c8 00 00 00 mov QWORD PTR $T17[rsp], rax 000e4 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 000ec 48 8b 8c 24 c8 00 00 00 mov rcx, QWORD PTR $T17[rsp] 000f4 48 89 88 d8 00 00 00 mov QWORD PTR [rax+216], rcx ; 1111 : m_sSql.Format(_T("SELECT * FROM [%s$A1:IV65536]"), m_sSheetName); 000fb 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00103 48 83 c0 10 add rax, 16 00107 48 89 84 24 d0 00 00 00 mov QWORD PTR tv140[rsp], rax 0010f 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00117 4c 8b 40 30 mov r8, QWORD PTR [rax+48] 0011b 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331729 00122 48 8b 8c 24 d0 00 00 00 mov rcx, QWORD PTR tv140[rsp] 0012a e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format 0012f 90 npad 1 ; 1112 : try ; 1113 : { ; 1114 : // ²éѯ±í ; 1115 : m_rSheet->Open(CRecordset::forwardOnly, m_sSql, CRecordset::readOnly); 00130 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00138 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 0013f 48 89 84 24 e0 00 00 00 mov QWORD PTR tv162[rsp], rax 00147 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0014f 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00156 48 8b 00 mov rax, QWORD PTR [rax] 00159 48 8b 40 18 mov rax, QWORD PTR [rax+24] 0015d 48 89 84 24 e8 00 00 00 mov QWORD PTR tv164[rsp], rax 00165 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0016d 48 83 c0 10 add rax, 16 00171 48 8b c8 mov rcx, rax 00174 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00179 48 89 84 24 d8 00 00 00 mov QWORD PTR tv160[rsp], rax 00181 41 b9 04 00 00 00 mov r9d, 4 00187 4c 8b 84 24 d8 00 00 00 mov r8, QWORD PTR tv160[rsp] 0018f ba 02 00 00 00 mov edx, 2 00194 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR tv162[rsp] 0019c ff 94 24 e8 00 00 00 call QWORD PTR tv164[rsp] 001a3 90 npad 1 __tryend$?Open@CSpreadSheet@@AEAA_NXZ$1: 001a4 eb 0a jmp SHORT $LN71@Open $LN72@Open: ; 1116 : } ; 1117 : catch(...) ; 1118 : { ; 1119 : // ±í²»´æÔÚ ; 1120 : delete m_rSheet; ; 1121 : m_rSheet = NULL; ; 1122 : m_Database->Close(); ; 1123 : return false; 001a6 0f b6 44 24 34 movzx eax, BYTE PTR $T2[rsp] 001ab e9 a8 0b 00 00 jmp $LN1@Open $LN71@Open: ; 1124 : } ; 1125 : ; 1126 : // µÃµ½ÁÐÊý ; 1127 : m_dTotalColumns = m_rSheet->m_nResultCols; 001b0 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 001b8 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 001bf 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 001c7 0f b7 40 44 movzx eax, WORD PTR [rax+68] 001cb 66 89 41 0c mov WORD PTR [rcx+12], ax ; 1128 : ; 1129 : if (m_dTotalColumns != 0) 001cf 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 001d7 0f bf 40 0c movsx eax, WORD PTR [rax+12] 001db 85 c0 test eax, eax 001dd 0f 84 0e 07 00 00 je $LN18@Open ; 1130 : { ; 1131 : m_aRows.RemoveAll(); 001e3 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 001eb 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 001f1 48 8b c8 mov rcx, rax 001f4 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 1132 : m_stempString.Empty(); 001f9 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00201 48 83 c0 28 add rax, 40 ; 00000028H 00205 48 8b c8 mov rcx, rax 00208 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 1133 : m_bAppend = true; 0020d 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00215 c6 00 01 mov BYTE PTR [rax], 1 ; 1134 : m_dTotalRows++; // ×ÜÐÐÊý 00218 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00220 8b 40 08 mov eax, DWORD PTR [rax+8] 00223 ff c0 inc eax 00225 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 0022d 89 41 08 mov DWORD PTR [rcx+8], eax ; 1135 : ; 1136 : // »ñÈ¡Ê×ÐÐ(ÁÐÍ·)×Ö¶ÎÃû ; 1137 : for (int i = 0; i < m_dTotalColumns; i++) 00230 c7 44 24 38 00 00 00 00 mov DWORD PTR i$4[rsp], 0 00238 eb 0a jmp SHORT $LN4@Open $LN2@Open: 0023a 8b 44 24 38 mov eax, DWORD PTR i$4[rsp] 0023e ff c0 inc eax 00240 89 44 24 38 mov DWORD PTR i$4[rsp], eax $LN4@Open: 00244 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0024c 0f bf 40 0c movsx eax, WORD PTR [rax+12] 00250 39 44 24 38 cmp DWORD PTR i$4[rsp], eax 00254 0f 8d e0 02 00 00 jge $LN3@Open ; 1138 : { ; 1139 : m_stempSql = m_rSheet->m_rgODBCFieldInfos[i].m_strName; 0025a 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00262 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00269 48 63 4c 24 38 movsxd rcx, DWORD PTR i$4[rsp] 0026e 48 6b c9 20 imul rcx, rcx, 32 ; 00000020H 00272 48 8b 40 50 mov rax, QWORD PTR [rax+80] 00276 48 03 c1 add rax, rcx 00279 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00281 48 83 c1 20 add rcx, 32 ; 00000020H 00285 48 8b d0 mov rdx, rax 00288 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 1140 : m_aFieldNames.Add(m_stempSql); 0028d 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00295 48 05 80 00 00 00 add rax, 128 ; 00000080H 0029b 48 89 84 24 00 01 00 00 mov QWORD PTR tv224[rsp], rax 002a3 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 002ab 48 83 c0 20 add rax, 32 ; 00000020H 002af 48 8b d0 mov rdx, rax 002b2 48 8b 8c 24 00 01 00 00 mov rcx, QWORD PTR tv224[rsp] 002ba e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 1141 : ; 1142 : // ½«ËùÓÐÁкϲ¢µ½Ò»¸ö×Ö·û´®ÖÐ ; 1143 : if (i != m_dTotalColumns-1) // ²»ÊÇ×îºóÒ»ÁÐ 002bf 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 002c7 0f bf 40 0c movsx eax, WORD PTR [rax+12] 002cb ff c8 dec eax 002cd 39 44 24 38 cmp DWORD PTR i$4[rsp], eax 002d1 0f 84 5d 01 00 00 je $LN19@Open ; 1144 : { ; 1145 : m_stempString = m_stempString + _T("\"") + m_stempSql + _T("\"") + m_sSeparator; 002d7 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 002df 48 83 c0 48 add rax, 72 ; 00000048H 002e3 48 89 84 24 38 01 00 00 mov QWORD PTR tv232[rsp], rax 002eb 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 002f3 48 83 c1 20 add rcx, 32 ; 00000020H 002f7 48 89 8c 24 10 01 00 00 mov QWORD PTR tv237[rsp], rcx 002ff 48 8b 94 24 20 03 00 00 mov rdx, QWORD PTR this$[rsp] 00307 48 83 c2 28 add rdx, 40 ; 00000028H 0030b 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331736 00312 48 8d 8c 24 70 01 00 00 lea rcx, QWORD PTR $T21[rsp] 0031a e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0031f 48 89 84 24 08 01 00 00 mov QWORD PTR tv620[rsp], rax 00327 48 8b 84 24 08 01 00 00 mov rax, QWORD PTR tv620[rsp] 0032f 48 89 84 24 18 01 00 00 mov QWORD PTR tv588[rsp], rax 00337 48 8b 84 24 10 01 00 00 mov rax, QWORD PTR tv237[rsp] 0033f 4c 8b c0 mov r8, rax 00342 48 8b 94 24 18 01 00 00 mov rdx, QWORD PTR tv588[rsp] 0034a 48 8d 8c 24 68 01 00 00 lea rcx, QWORD PTR $T20[rsp] 00352 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 00357 48 89 84 24 20 01 00 00 mov QWORD PTR tv621[rsp], rax 0035f 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR tv621[rsp] 00367 48 89 84 24 28 01 00 00 mov QWORD PTR tv590[rsp], rax 0036f 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331735 00376 48 8b 94 24 28 01 00 00 mov rdx, QWORD PTR tv590[rsp] 0037e 48 8d 8c 24 60 01 00 00 lea rcx, QWORD PTR $T19[rsp] 00386 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0038b 48 89 84 24 30 01 00 00 mov QWORD PTR tv622[rsp], rax 00393 48 8b 84 24 30 01 00 00 mov rax, QWORD PTR tv622[rsp] 0039b 48 89 84 24 40 01 00 00 mov QWORD PTR tv592[rsp], rax 003a3 48 8b 84 24 38 01 00 00 mov rax, QWORD PTR tv232[rsp] 003ab 4c 8b c0 mov r8, rax 003ae 48 8b 94 24 40 01 00 00 mov rdx, QWORD PTR tv592[rsp] 003b6 48 8d 8c 24 58 01 00 00 lea rcx, QWORD PTR $T18[rsp] 003be e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 003c3 48 89 84 24 48 01 00 00 mov QWORD PTR tv623[rsp], rax 003cb 48 8b 84 24 48 01 00 00 mov rax, QWORD PTR tv623[rsp] 003d3 48 89 84 24 50 01 00 00 mov QWORD PTR tv594[rsp], rax 003db 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 003e3 48 83 c0 28 add rax, 40 ; 00000028H 003e7 48 8b 94 24 50 01 00 00 mov rdx, QWORD PTR tv594[rsp] 003ef 48 8b c8 mov rcx, rax 003f2 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 003f7 90 npad 1 003f8 48 8d 8c 24 58 01 00 00 lea rcx, QWORD PTR $T18[rsp] 00400 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00405 90 npad 1 00406 48 8d 8c 24 60 01 00 00 lea rcx, QWORD PTR $T19[rsp] 0040e e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00413 90 npad 1 00414 48 8d 8c 24 68 01 00 00 lea rcx, QWORD PTR $T20[rsp] 0041c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00421 90 npad 1 00422 48 8d 8c 24 70 01 00 00 lea rcx, QWORD PTR $T21[rsp] 0042a e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 1146 : } 0042f e9 01 01 00 00 jmp $LN20@Open $LN19@Open: ; 1147 : else // ×îºóÒ»ÁÐ ; 1148 : { ; 1149 : m_stempString = m_stempString + _T("\"") + m_stempSql + _T("\""); 00434 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0043c 48 83 c0 20 add rax, 32 ; 00000020H 00440 48 89 84 24 80 01 00 00 mov QWORD PTR tv264[rsp], rax 00448 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00450 48 83 c1 28 add rcx, 40 ; 00000028H 00454 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331738 0045b 48 8b d1 mov rdx, rcx 0045e 48 8d 8c 24 c0 01 00 00 lea rcx, QWORD PTR $T24[rsp] 00466 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0046b 48 89 84 24 78 01 00 00 mov QWORD PTR tv624[rsp], rax 00473 48 8b 84 24 78 01 00 00 mov rax, QWORD PTR tv624[rsp] 0047b 48 89 84 24 88 01 00 00 mov QWORD PTR tv596[rsp], rax 00483 48 8b 84 24 80 01 00 00 mov rax, QWORD PTR tv264[rsp] 0048b 4c 8b c0 mov r8, rax 0048e 48 8b 94 24 88 01 00 00 mov rdx, QWORD PTR tv596[rsp] 00496 48 8d 8c 24 b8 01 00 00 lea rcx, QWORD PTR $T23[rsp] 0049e e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 004a3 48 89 84 24 90 01 00 00 mov QWORD PTR tv625[rsp], rax 004ab 48 8b 84 24 90 01 00 00 mov rax, QWORD PTR tv625[rsp] 004b3 48 89 84 24 98 01 00 00 mov QWORD PTR tv598[rsp], rax 004bb 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331737 004c2 48 8b 94 24 98 01 00 00 mov rdx, QWORD PTR tv598[rsp] 004ca 48 8d 8c 24 b0 01 00 00 lea rcx, QWORD PTR $T22[rsp] 004d2 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 004d7 48 89 84 24 a0 01 00 00 mov QWORD PTR tv626[rsp], rax 004df 48 8b 84 24 a0 01 00 00 mov rax, QWORD PTR tv626[rsp] 004e7 48 89 84 24 a8 01 00 00 mov QWORD PTR tv600[rsp], rax 004ef 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 004f7 48 83 c0 28 add rax, 40 ; 00000028H 004fb 48 8b 94 24 a8 01 00 00 mov rdx, QWORD PTR tv600[rsp] 00503 48 8b c8 mov rcx, rax 00506 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 0050b 90 npad 1 0050c 48 8d 8c 24 b0 01 00 00 lea rcx, QWORD PTR $T22[rsp] 00514 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00519 90 npad 1 0051a 48 8d 8c 24 b8 01 00 00 lea rcx, QWORD PTR $T23[rsp] 00522 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00527 90 npad 1 00528 48 8d 8c 24 c0 01 00 00 lea rcx, QWORD PTR $T24[rsp] 00530 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN20@Open: ; 1150 : } ; 1151 : } 00535 e9 00 fd ff ff jmp $LN2@Open $LN3@Open: ; 1152 : ; 1153 : // ´æ´¢ÄÚ´æÖÐÊ×ÐÐ(ÁÐÍ·) ; 1154 : m_aRows.Add(m_stempString); 0053a 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00542 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 00548 48 89 84 24 c8 01 00 00 mov QWORD PTR tv287[rsp], rax 00550 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00558 48 83 c0 28 add rax, 40 ; 00000028H 0055c 48 8b d0 mov rdx, rax 0055f 48 8b 8c 24 c8 01 00 00 mov rcx, QWORD PTR tv287[rsp] 00567 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add $LN5@Open: ; 1155 : ; 1156 : // ¶ÁÈ¡²¢´æ´¢ÄÚ´æÖÐÆäËüÐÐ ; 1157 : while (!m_rSheet->IsEOF()) 0056c 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00574 48 8b 88 d8 00 00 00 mov rcx, QWORD PTR [rax+216] 0057b e8 00 00 00 00 call ?IsEOF@CRecordset@@QEBAHXZ ; CRecordset::IsEOF 00580 85 c0 test eax, eax 00582 0f 85 69 03 00 00 jne $LN18@Open ; 1158 : { ; 1159 : m_dTotalRows++; // ×ÜÐÐÊý 00588 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00590 8b 40 08 mov eax, DWORD PTR [rax+8] 00593 ff c0 inc eax 00595 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 0059d 89 41 08 mov DWORD PTR [rcx+8], eax ; 1160 : ; 1161 : try ; 1162 : { ; 1163 : // »ñȡһÐÐÖÐËùÓÐÁÐ ; 1164 : m_stempString.Empty(); 005a0 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 005a8 48 83 c0 28 add rax, 40 ; 00000028H 005ac 48 8b c8 mov rcx, rax 005af e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 1165 : for (short column = 0; column < m_dTotalColumns; column++) 005b4 33 c0 xor eax, eax 005b6 66 89 44 24 30 mov WORD PTR column$1[rsp], ax 005bb eb 0d jmp SHORT $LN9@Open $LN7@Open: 005bd 0f b7 44 24 30 movzx eax, WORD PTR column$1[rsp] 005c2 66 ff c0 inc ax 005c5 66 89 44 24 30 mov WORD PTR column$1[rsp], ax $LN9@Open: 005ca 0f bf 44 24 30 movsx eax, WORD PTR column$1[rsp] 005cf 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 005d7 0f bf 49 0c movsx ecx, WORD PTR [rcx+12] 005db 3b c1 cmp eax, ecx 005dd 0f 8d b6 02 00 00 jge $LN8@Open ; 1166 : { ; 1167 : m_rSheet->GetFieldValue(column, m_stempSql); 005e3 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 005eb 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 005f2 48 89 84 24 d0 01 00 00 mov QWORD PTR tv312[rsp], rax 005fa 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00602 48 83 c0 20 add rax, 32 ; 00000020H 00606 4c 8b c0 mov r8, rax 00609 0f b7 54 24 30 movzx edx, WORD PTR column$1[rsp] 0060e 48 8b 8c 24 d0 01 00 00 mov rcx, QWORD PTR tv312[rsp] 00616 e8 00 00 00 00 call ?GetFieldValue@CRecordset@@QEAAXFAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CRecordset::GetFieldValue ; 1168 : ; 1169 : // ½«ËùÓÐÁкϲ¢µ½Ò»¸ö×Ö·û´®ÖÐ ; 1170 : if (column != m_dTotalColumns-1) // ²»ÊÇ×îºóÁÐʱ 0061b 0f bf 44 24 30 movsx eax, WORD PTR column$1[rsp] 00620 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00628 0f bf 49 0c movsx ecx, WORD PTR [rcx+12] 0062c ff c9 dec ecx 0062e 3b c1 cmp eax, ecx 00630 0f 84 5d 01 00 00 je $LN22@Open ; 1171 : { ; 1172 : m_stempString = m_stempString + _T("\"") + m_stempSql + _T("\"") + m_sSeparator; 00636 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0063e 48 83 c0 48 add rax, 72 ; 00000048H 00642 48 89 84 24 08 02 00 00 mov QWORD PTR tv322[rsp], rax 0064a 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00652 48 83 c1 20 add rcx, 32 ; 00000020H 00656 48 89 8c 24 e0 01 00 00 mov QWORD PTR tv327[rsp], rcx 0065e 48 8b 94 24 20 03 00 00 mov rdx, QWORD PTR this$[rsp] 00666 48 83 c2 28 add rdx, 40 ; 00000028H 0066a 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331743 00671 48 8d 8c 24 40 02 00 00 lea rcx, QWORD PTR $T28[rsp] 00679 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0067e 48 89 84 24 d8 01 00 00 mov QWORD PTR tv627[rsp], rax 00686 48 8b 84 24 d8 01 00 00 mov rax, QWORD PTR tv627[rsp] 0068e 48 89 84 24 e8 01 00 00 mov QWORD PTR tv602[rsp], rax 00696 48 8b 84 24 e0 01 00 00 mov rax, QWORD PTR tv327[rsp] 0069e 4c 8b c0 mov r8, rax 006a1 48 8b 94 24 e8 01 00 00 mov rdx, QWORD PTR tv602[rsp] 006a9 48 8d 8c 24 38 02 00 00 lea rcx, QWORD PTR $T27[rsp] 006b1 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 006b6 48 89 84 24 f0 01 00 00 mov QWORD PTR tv628[rsp], rax 006be 48 8b 84 24 f0 01 00 00 mov rax, QWORD PTR tv628[rsp] 006c6 48 89 84 24 f8 01 00 00 mov QWORD PTR tv604[rsp], rax 006ce 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331742 006d5 48 8b 94 24 f8 01 00 00 mov rdx, QWORD PTR tv604[rsp] 006dd 48 8d 8c 24 30 02 00 00 lea rcx, QWORD PTR $T26[rsp] 006e5 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 006ea 48 89 84 24 00 02 00 00 mov QWORD PTR tv629[rsp], rax 006f2 48 8b 84 24 00 02 00 00 mov rax, QWORD PTR tv629[rsp] 006fa 48 89 84 24 10 02 00 00 mov QWORD PTR tv606[rsp], rax 00702 48 8b 84 24 08 02 00 00 mov rax, QWORD PTR tv322[rsp] 0070a 4c 8b c0 mov r8, rax 0070d 48 8b 94 24 10 02 00 00 mov rdx, QWORD PTR tv606[rsp] 00715 48 8d 8c 24 28 02 00 00 lea rcx, QWORD PTR $T25[rsp] 0071d e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 00722 48 89 84 24 18 02 00 00 mov QWORD PTR tv630[rsp], rax 0072a 48 8b 84 24 18 02 00 00 mov rax, QWORD PTR tv630[rsp] 00732 48 89 84 24 20 02 00 00 mov QWORD PTR tv608[rsp], rax 0073a 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00742 48 83 c0 28 add rax, 40 ; 00000028H 00746 48 8b 94 24 20 02 00 00 mov rdx, QWORD PTR tv608[rsp] 0074e 48 8b c8 mov rcx, rax 00751 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 00756 90 npad 1 00757 48 8d 8c 24 28 02 00 00 lea rcx, QWORD PTR $T25[rsp] 0075f e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00764 90 npad 1 00765 48 8d 8c 24 30 02 00 00 lea rcx, QWORD PTR $T26[rsp] 0076d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00772 90 npad 1 00773 48 8d 8c 24 38 02 00 00 lea rcx, QWORD PTR $T27[rsp] 0077b e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00780 90 npad 1 00781 48 8d 8c 24 40 02 00 00 lea rcx, QWORD PTR $T28[rsp] 00789 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 1173 : } 0078e e9 01 01 00 00 jmp $LN23@Open $LN22@Open: ; 1174 : else // ×îºóÒ»ÁÐʱ ; 1175 : { ; 1176 : m_stempString = m_stempString + _T("\"") + m_stempSql + _T("\""); 00793 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0079b 48 83 c0 20 add rax, 32 ; 00000020H 0079f 48 89 84 24 50 02 00 00 mov QWORD PTR tv354[rsp], rax 007a7 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 007af 48 83 c1 28 add rcx, 40 ; 00000028H 007b3 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331745 007ba 48 8b d1 mov rdx, rcx 007bd 48 8d 8c 24 90 02 00 00 lea rcx, QWORD PTR $T31[rsp] 007c5 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 007ca 48 89 84 24 48 02 00 00 mov QWORD PTR tv631[rsp], rax 007d2 48 8b 84 24 48 02 00 00 mov rax, QWORD PTR tv631[rsp] 007da 48 89 84 24 58 02 00 00 mov QWORD PTR tv610[rsp], rax 007e2 48 8b 84 24 50 02 00 00 mov rax, QWORD PTR tv354[rsp] 007ea 4c 8b c0 mov r8, rax 007ed 48 8b 94 24 58 02 00 00 mov rdx, QWORD PTR tv610[rsp] 007f5 48 8d 8c 24 88 02 00 00 lea rcx, QWORD PTR $T30[rsp] 007fd e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 00802 48 89 84 24 60 02 00 00 mov QWORD PTR tv632[rsp], rax 0080a 48 8b 84 24 60 02 00 00 mov rax, QWORD PTR tv632[rsp] 00812 48 89 84 24 68 02 00 00 mov QWORD PTR tv612[rsp], rax 0081a 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331744 00821 48 8b 94 24 68 02 00 00 mov rdx, QWORD PTR tv612[rsp] 00829 48 8d 8c 24 80 02 00 00 lea rcx, QWORD PTR $T29[rsp] 00831 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 00836 48 89 84 24 70 02 00 00 mov QWORD PTR tv633[rsp], rax 0083e 48 8b 84 24 70 02 00 00 mov rax, QWORD PTR tv633[rsp] 00846 48 89 84 24 78 02 00 00 mov QWORD PTR tv614[rsp], rax 0084e 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00856 48 83 c0 28 add rax, 40 ; 00000028H 0085a 48 8b 94 24 78 02 00 00 mov rdx, QWORD PTR tv614[rsp] 00862 48 8b c8 mov rcx, rax 00865 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 0086a 90 npad 1 0086b 48 8d 8c 24 80 02 00 00 lea rcx, QWORD PTR $T29[rsp] 00873 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00878 90 npad 1 00879 48 8d 8c 24 88 02 00 00 lea rcx, QWORD PTR $T30[rsp] 00881 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00886 90 npad 1 00887 48 8d 8c 24 90 02 00 00 lea rcx, QWORD PTR $T31[rsp] 0088f e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN23@Open: ; 1177 : } ; 1178 : } 00894 e9 24 fd ff ff jmp $LN7@Open $LN8@Open: ; 1179 : ; 1180 : // ´æ´¢ÄÚ´æÖÐÒѰüº¬µÄÐÐ ; 1181 : m_aRows.Add(m_stempString); 00899 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 008a1 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 008a7 48 89 84 24 98 02 00 00 mov QWORD PTR tv377[rsp], rax 008af 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 008b7 48 83 c0 28 add rax, 40 ; 00000028H 008bb 48 8b d0 mov rdx, rax 008be 48 8b 8c 24 98 02 00 00 mov rcx, QWORD PTR tv377[rsp] 008c6 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 1182 : m_rSheet->MoveNext(); 008cb 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 008d3 48 8b 88 d8 00 00 00 mov rcx, QWORD PTR [rax+216] 008da e8 00 00 00 00 call ?MoveNext@CRecordset@@QEAAXXZ ; CRecordset::MoveNext 008df 90 npad 1 __tryend$?Open@CSpreadSheet@@AEAA_NXZ$3: 008e0 eb 0a jmp SHORT $LN73@Open $LN74@Open: ; 1183 : } ; 1184 : catch (...) ; 1185 : { ; 1186 : m_sLastError = _T("¶ÁÈ¡ÐÐʱ²úÉú´íÎó\n"); ; 1187 : delete m_rSheet; ; 1188 : m_rSheet = NULL; ; 1189 : m_Database->Close(); ; 1190 : ; 1191 : return false; 008e2 0f b6 44 24 35 movzx eax, BYTE PTR $T3[rsp] 008e7 e9 6c 04 00 00 jmp $LN1@Open $LN73@Open: ; 1192 : } ; 1193 : } 008ec e9 7b fc ff ff jmp $LN5@Open $LN18@Open: ; 1194 : } ; 1195 : ; 1196 : m_rSheet->Close(); 008f1 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 008f9 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00900 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00908 48 8b 89 d8 00 00 00 mov rcx, QWORD PTR [rcx+216] 0090f 48 8b 00 mov rax, QWORD PTR [rax] 00912 ff 50 20 call QWORD PTR [rax+32] ; 1197 : delete m_rSheet; 00915 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 0091d 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00924 48 89 44 24 60 mov QWORD PTR $T10[rsp], rax 00929 48 83 7c 24 60 00 cmp QWORD PTR $T10[rsp], 0 0092f 74 2f je SHORT $LN36@Open 00931 48 8b 44 24 60 mov rax, QWORD PTR $T10[rsp] 00936 48 8b 00 mov rax, QWORD PTR [rax] 00939 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0093d 48 89 84 24 b0 02 00 00 mov QWORD PTR tv423[rsp], rax 00945 ba 01 00 00 00 mov edx, 1 0094a 48 8b 4c 24 60 mov rcx, QWORD PTR $T10[rsp] 0094f ff 94 24 b0 02 00 00 call QWORD PTR tv423[rsp] 00956 48 89 84 24 b8 02 00 00 mov QWORD PTR tv424[rsp], rax 0095e eb 0c jmp SHORT $LN37@Open $LN36@Open: 00960 48 c7 84 24 b8 02 00 00 00 00 00 00 mov QWORD PTR tv424[rsp], 0 $LN37@Open: ; 1198 : m_rSheet = NULL; 0096c 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00974 48 c7 80 d8 00 00 00 00 00 00 00 mov QWORD PTR [rax+216], 0 ; 1199 : m_Database->Close(); 0097f 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00987 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0098e 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00996 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 0099d 48 8b 00 mov rax, QWORD PTR [rax] 009a0 ff 50 28 call QWORD PTR [rax+40] ; 1200 : m_dCurrentRow = 1; 009a3 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 009ab c7 40 04 01 00 00 00 mov DWORD PTR [rax+4], 1 ; 1201 : ; 1202 : return true; 009b2 b0 01 mov al, 1 009b4 e9 9f 03 00 00 jmp $LN1@Open ; 1203 : } 009b9 e9 9a 03 00 00 jmp $LN1@Open $LN15@Open: ; 1204 : else // µ±ÎļþÊÇÖ¸¶¨·Ö¸ô·û·Ö¸ôµÄÎı¾Îļþʱ ; 1205 : { ; 1206 : try ; 1207 : { ; 1208 : CFile *File = NULL; 009be 48 c7 44 24 40 00 00 00 00 mov QWORD PTR File$6[rsp], 0 ; 1209 : File = new CFile(m_sFile, CFile::modeRead | CFile::shareDenyNone); 009c7 b9 28 00 00 00 mov ecx, 40 ; 00000028H 009cc e8 00 00 00 00 call ??2CObject@@SAPEAX_K@Z ; CObject::operator new 009d1 48 89 84 24 88 00 00 00 mov QWORD PTR $T14[rsp], rax 009d9 48 83 bc 24 88 00 00 00 00 cmp QWORD PTR $T14[rsp], 0 009e2 74 41 je SHORT $LN38@Open 009e4 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 009ec 48 83 c0 40 add rax, 64 ; 00000040H 009f0 48 8b c8 mov rcx, rax 009f3 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 009f8 48 89 84 24 c0 02 00 00 mov QWORD PTR tv454[rsp], rax 00a00 41 b8 40 00 00 00 mov r8d, 64 ; 00000040H 00a06 48 8b 94 24 c0 02 00 00 mov rdx, QWORD PTR tv454[rsp] 00a0e 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR $T14[rsp] 00a16 e8 00 00 00 00 call ??0CFile@@QEAA@PEB_WI@Z ; CFile::CFile 00a1b 48 89 84 24 90 00 00 00 mov QWORD PTR tv455[rsp], rax 00a23 eb 0c jmp SHORT $LN39@Open $LN38@Open: 00a25 48 c7 84 24 90 00 00 00 00 00 00 00 mov QWORD PTR tv455[rsp], 0 $LN39@Open: 00a31 48 8b 84 24 90 00 00 00 mov rax, QWORD PTR tv455[rsp] 00a39 48 89 84 24 c8 02 00 00 mov QWORD PTR $T32[rsp], rax 00a41 48 8b 84 24 c8 02 00 00 mov rax, QWORD PTR $T32[rsp] 00a49 48 89 44 24 40 mov QWORD PTR File$6[rsp], rax ; 1210 : if (File != NULL) 00a4e 48 83 7c 24 40 00 cmp QWORD PTR File$6[rsp], 0 00a54 0f 84 df 02 00 00 je $LN25@Open ; 1211 : { ; 1212 : CArchive *Archive = NULL; 00a5a 48 c7 44 24 48 00 00 00 00 mov QWORD PTR Archive$7[rsp], 0 ; 1213 : Archive = new CArchive(File, CArchive::load); 00a63 b9 70 00 00 00 mov ecx, 112 ; 00000070H 00a68 e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 00a6d 48 89 84 24 98 00 00 00 mov QWORD PTR $T15[rsp], rax 00a75 48 83 bc 24 98 00 00 00 00 cmp QWORD PTR $T15[rsp], 0 00a7e 74 31 je SHORT $LN40@Open 00a80 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00a89 41 b9 00 10 00 00 mov r9d, 4096 ; 00001000H 00a8f 41 b8 01 00 00 00 mov r8d, 1 00a95 48 8b 54 24 40 mov rdx, QWORD PTR File$6[rsp] 00a9a 48 8b 8c 24 98 00 00 00 mov rcx, QWORD PTR $T15[rsp] 00aa2 e8 00 00 00 00 call ??0CArchive@@QEAA@PEAVCFile@@IHPEAX@Z ; CArchive::CArchive 00aa7 48 89 84 24 a0 00 00 00 mov QWORD PTR tv471[rsp], rax 00aaf eb 0c jmp SHORT $LN41@Open $LN40@Open: 00ab1 48 c7 84 24 a0 00 00 00 00 00 00 00 mov QWORD PTR tv471[rsp], 0 $LN41@Open: 00abd 48 8b 84 24 a0 00 00 00 mov rax, QWORD PTR tv471[rsp] 00ac5 48 89 84 24 d0 02 00 00 mov QWORD PTR $T33[rsp], rax 00acd 48 8b 84 24 d0 02 00 00 mov rax, QWORD PTR $T33[rsp] 00ad5 48 89 44 24 48 mov QWORD PTR Archive$7[rsp], rax ; 1214 : if (Archive != NULL) 00ada 48 83 7c 24 48 00 cmp QWORD PTR Archive$7[rsp], 0 00ae0 0f 84 06 02 00 00 je $LN26@Open ; 1215 : { ; 1216 : m_aRows.RemoveAll(); 00ae6 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00aee 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 00af4 48 8b c8 mov rcx, rax 00af7 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll $LN10@Open: ; 1217 : // ¶ÁÈ¡²¢´æ´¢ÄÚ´æÖÐËùÓÐÐÐ ; 1218 : while(Archive->ReadString(m_stempString)) 00afc 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00b04 48 83 c0 28 add rax, 40 ; 00000028H 00b08 48 8b d0 mov rdx, rax 00b0b 48 8b 4c 24 48 mov rcx, QWORD PTR Archive$7[rsp] 00b10 e8 00 00 00 00 call ?ReadString@CArchive@@QEAAHAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CArchive::ReadString 00b15 85 c0 test eax, eax 00b17 74 34 je SHORT $LN11@Open ; 1219 : { ; 1220 : m_aRows.Add(m_stempString); 00b19 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00b21 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 00b27 48 89 84 24 d8 02 00 00 mov QWORD PTR tv485[rsp], rax 00b2f 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00b37 48 83 c0 28 add rax, 40 ; 00000028H 00b3b 48 8b d0 mov rdx, rax 00b3e 48 8b 8c 24 d8 02 00 00 mov rcx, QWORD PTR tv485[rsp] 00b46 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 1221 : } 00b4b eb af jmp SHORT $LN10@Open $LN11@Open: ; 1222 : ReadRow(m_aFieldNames, 1); // µÃµ½Ê×ÐеÄ×Ö¶ÎÃû(ÁÐÍ·) 00b4d 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00b55 48 05 80 00 00 00 add rax, 128 ; 00000080H 00b5b 41 b8 01 00 00 00 mov r8d, 1 00b61 48 8b d0 mov rdx, rax 00b64 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00b6c e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow ; 1223 : delete Archive; 00b71 48 8b 44 24 48 mov rax, QWORD PTR Archive$7[rsp] 00b76 48 89 84 24 a8 00 00 00 mov QWORD PTR $T16[rsp], rax 00b7e 48 83 bc 24 a8 00 00 00 00 cmp QWORD PTR $T16[rsp], 0 00b87 74 1c je SHORT $LN42@Open 00b89 ba 01 00 00 00 mov edx, 1 00b8e 48 8b 8c 24 a8 00 00 00 mov rcx, QWORD PTR $T16[rsp] 00b96 e8 00 00 00 00 call ??_GCArchive@@QEAAPEAXI@Z 00b9b 48 89 84 24 e0 02 00 00 mov QWORD PTR tv493[rsp], rax 00ba3 eb 0c jmp SHORT $LN43@Open $LN42@Open: 00ba5 48 c7 84 24 e0 02 00 00 00 00 00 00 mov QWORD PTR tv493[rsp], 0 $LN43@Open: ; 1224 : delete File; 00bb1 48 8b 44 24 40 mov rax, QWORD PTR File$6[rsp] 00bb6 48 89 44 24 68 mov QWORD PTR $T11[rsp], rax 00bbb 48 83 7c 24 68 00 cmp QWORD PTR $T11[rsp], 0 00bc1 74 2f je SHORT $LN44@Open 00bc3 48 8b 44 24 68 mov rax, QWORD PTR $T11[rsp] 00bc8 48 8b 00 mov rax, QWORD PTR [rax] 00bcb 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00bcf 48 89 84 24 e8 02 00 00 mov QWORD PTR tv505[rsp], rax 00bd7 ba 01 00 00 00 mov edx, 1 00bdc 48 8b 4c 24 68 mov rcx, QWORD PTR $T11[rsp] 00be1 ff 94 24 e8 02 00 00 call QWORD PTR tv505[rsp] 00be8 48 89 84 24 f0 02 00 00 mov QWORD PTR tv506[rsp], rax 00bf0 eb 0c jmp SHORT $LN45@Open $LN44@Open: 00bf2 48 c7 84 24 f0 02 00 00 00 00 00 00 mov QWORD PTR tv506[rsp], 0 $LN45@Open: ; 1225 : ; 1226 : // µÃµ½×ÜÐÐÊý ; 1227 : m_dTotalRows = m_aRows.GetSize(); 00bfe 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00c06 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 00c0c 48 8b c8 mov rcx, rax 00c0f e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00c14 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00c1c 89 41 08 mov DWORD PTR [rcx+8], eax ; 1228 : ; 1229 : // »ñÈ¡×î´ó×ÜÁÐÊý ; 1230 : for (int i = 0; i < m_aRows.GetSize(); i++) 00c1f c7 44 24 3c 00 00 00 00 mov DWORD PTR i$5[rsp], 0 00c27 eb 0a jmp SHORT $LN14@Open $LN12@Open: 00c29 8b 44 24 3c mov eax, DWORD PTR i$5[rsp] 00c2d ff c0 inc eax 00c2f 89 44 24 3c mov DWORD PTR i$5[rsp], eax $LN14@Open: 00c33 48 63 44 24 3c movsxd rax, DWORD PTR i$5[rsp] 00c38 48 89 84 24 f8 02 00 00 mov QWORD PTR tv545[rsp], rax 00c40 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00c48 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00c4f e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00c54 48 8b 8c 24 f8 02 00 00 mov rcx, QWORD PTR tv545[rsp] 00c5c 48 3b c8 cmp rcx, rax 00c5f 7d 6c jge SHORT $LN13@Open ; 1231 : { ; 1232 : ReadRow(m_atempArray, i); 00c61 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00c69 48 83 c0 58 add rax, 88 ; 00000058H 00c6d 44 8b 44 24 3c mov r8d, DWORD PTR i$5[rsp] 00c72 48 8b d0 mov rdx, rax 00c75 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00c7d e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow ; 1233 : if (m_atempArray.GetSize() > m_dTotalColumns) 00c82 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00c8a 48 83 c0 58 add rax, 88 ; 00000058H 00c8e 48 8b c8 mov rcx, rax 00c91 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00c96 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00c9e 48 0f bf 49 0c movsx rcx, WORD PTR [rcx+12] 00ca3 48 3b c1 cmp rax, rcx 00ca6 7e 20 jle SHORT $LN27@Open ; 1234 : { ; 1235 : m_dTotalColumns = m_atempArray.GetSize(); 00ca8 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00cb0 48 83 c0 58 add rax, 88 ; 00000058H 00cb4 48 8b c8 mov rcx, rax 00cb7 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00cbc 48 8b 8c 24 20 03 00 00 mov rcx, QWORD PTR this$[rsp] 00cc4 66 89 41 0c mov WORD PTR [rcx+12], ax $LN27@Open: ; 1236 : } ; 1237 : } 00cc8 e9 5c ff ff ff jmp $LN12@Open $LN13@Open: ; 1238 : ; 1239 : if (m_dTotalColumns != 0) 00ccd 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00cd5 0f bf 40 0c movsx eax, WORD PTR [rax+12] 00cd9 85 c0 test eax, eax 00cdb 74 0b je SHORT $LN28@Open ; 1240 : { ; 1241 : m_bAppend = true; 00cdd 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00ce5 c6 00 01 mov BYTE PTR [rax], 1 $LN28@Open: ; 1242 : } ; 1243 : return true; 00ce8 b0 01 mov al, 1 00cea eb 6c jmp SHORT $LN1@Open $LN26@Open: ; 1244 : } ; 1245 : delete File; 00cec 48 8b 44 24 40 mov rax, QWORD PTR File$6[rsp] 00cf1 48 89 44 24 70 mov QWORD PTR $T12[rsp], rax 00cf6 48 83 7c 24 70 00 cmp QWORD PTR $T12[rsp], 0 00cfc 74 2f je SHORT $LN46@Open 00cfe 48 8b 44 24 70 mov rax, QWORD PTR $T12[rsp] 00d03 48 8b 00 mov rax, QWORD PTR [rax] 00d06 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00d0a 48 89 84 24 00 03 00 00 mov QWORD PTR tv580[rsp], rax 00d12 ba 01 00 00 00 mov edx, 1 00d17 48 8b 4c 24 70 mov rcx, QWORD PTR $T12[rsp] 00d1c ff 94 24 00 03 00 00 call QWORD PTR tv580[rsp] 00d23 48 89 84 24 08 03 00 00 mov QWORD PTR tv581[rsp], rax 00d2b eb 0c jmp SHORT $LN25@Open $LN46@Open: 00d2d 48 c7 84 24 08 03 00 00 00 00 00 00 mov QWORD PTR tv581[rsp], 0 $LN25@Open: 00d39 eb 00 jmp SHORT $LN75@Open $LN76@Open: $LN75@Open: ; 1246 : } ; 1247 : } ; 1248 : catch(...) ; 1249 : { ; 1250 : } ; 1251 : ; 1252 : m_sLastError = _T("´ò¿ªÎļþʱ²úÉú´íÎó\n"); 00d3b 48 8b 84 24 20 03 00 00 mov rax, QWORD PTR this$[rsp] 00d43 48 83 c0 50 add rax, 80 ; 00000050H 00d47 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331755 00d4e 48 8b c8 mov rcx, rax 00d51 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 1253 : ; 1254 : return false; 00d56 32 c0 xor al, al $LN1@Open: ; 1255 : } ; 1256 : } 00d58 48 81 c4 18 03 00 00 add rsp, 792 ; 00000318H 00d5f c3 ret 0 00d60 cc int 3 ?Open@CSpreadSheet@@AEAA_NXZ ENDP ; CSpreadSheet::Open _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 78 mov rcx, QWORD PTR $T13[rbp] 0000d e8 00 00 00 00 call ??3CObject@@SAXPEAX@Z ; CObject::operator delete 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::catch$17 ; 1118 : { 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 8b ea mov rbp, rdx __catch$?Open@CSpreadSheet@@AEAA_NXZ$0: ; 1119 : // ±í²»´æÔÚ ; 1120 : delete m_rSheet; 0000d 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 00014 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 0001b 48 89 45 50 mov QWORD PTR $T8[rbp], rax 0001f 48 83 7d 50 00 cmp QWORD PTR $T8[rbp], 0 00024 74 2a je SHORT $LN32@catch$17 00026 48 8b 45 50 mov rax, QWORD PTR $T8[rbp] 0002a 48 8b 00 mov rax, QWORD PTR [rax] 0002d 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00031 48 89 85 f0 00 00 00 mov QWORD PTR tv176[rbp], rax 00038 ba 01 00 00 00 mov edx, 1 0003d 48 8b 4d 50 mov rcx, QWORD PTR $T8[rbp] 00041 ff 95 f0 00 00 00 call QWORD PTR tv176[rbp] 00047 48 89 85 f8 00 00 00 mov QWORD PTR tv177[rbp], rax 0004e eb 0b jmp SHORT $LN33@catch$17 $LN32@catch$17: 00050 48 c7 85 f8 00 00 00 00 00 00 00 mov QWORD PTR tv177[rbp], 0 $LN33@catch$17: ; 1121 : m_rSheet = NULL; 0005b 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 00062 48 c7 80 d8 00 00 00 00 00 00 00 mov QWORD PTR [rax+216], 0 ; 1122 : m_Database->Close(); 0006d 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 00074 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0007b 48 8b 8d 20 03 00 00 mov rcx, QWORD PTR this$[rbp] 00082 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00089 48 8b 00 mov rax, QWORD PTR [rax] 0008c ff 50 28 call QWORD PTR [rax+40] ; 1123 : return false; 0008f c6 45 34 00 mov BYTE PTR $T2[rbp], 0 00093 48 8d 05 00 00 00 00 lea rax, $LN72@catch$17 0009a eb 07 jmp SHORT $LN77@catch$17 ; 1124 : } 0009c 48 8d 05 00 00 00 00 lea rax, __tryend$?Open@CSpreadSheet@@AEAA_NXZ$1 $LN77@catch$17: 000a3 48 83 c4 30 add rsp, 48 ; 00000030H 000a7 5d pop rbp 000a8 c3 ret 0 000a9 cc int 3 ?catch$17@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::catch$17 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 70 01 00 00 lea rcx, QWORD PTR $T21[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$1@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 68 01 00 00 lea rcx, QWORD PTR $T20[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$2@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 60 01 00 00 lea rcx, QWORD PTR $T19[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$3@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$4 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 58 01 00 00 lea rcx, QWORD PTR $T18[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$4@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$4 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$5 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d c0 01 00 00 lea rcx, QWORD PTR $T24[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$5@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$5 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$6 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d b8 01 00 00 lea rcx, QWORD PTR $T23[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$6@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$6 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$7 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d b0 01 00 00 lea rcx, QWORD PTR $T22[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$7@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$7 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$8 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 40 02 00 00 lea rcx, QWORD PTR $T28[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$8@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$8 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$9 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 38 02 00 00 lea rcx, QWORD PTR $T27[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$9@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$9 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$10 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 30 02 00 00 lea rcx, QWORD PTR $T26[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$10@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$10 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$11 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 28 02 00 00 lea rcx, QWORD PTR $T25[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$11@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$11 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$12 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 90 02 00 00 lea rcx, QWORD PTR $T31[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$12@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$12 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$13 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 88 02 00 00 lea rcx, QWORD PTR $T30[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$13@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$13 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$14 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 80 02 00 00 lea rcx, QWORD PTR $T29[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$14@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$14 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::catch$18 ; 1185 : { 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 8b ea mov rbp, rdx __catch$?Open@CSpreadSheet@@AEAA_NXZ$2: ; 1186 : m_sLastError = _T("¶ÁÈ¡ÐÐʱ²úÉú´íÎó\n"); 0000d 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 00014 48 83 c0 50 add rax, 80 ; 00000050H 00018 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331746 0001f 48 8b c8 mov rcx, rax 00022 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 1187 : delete m_rSheet; 00027 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 0002e 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00035 48 89 45 58 mov QWORD PTR $T9[rbp], rax 00039 48 83 7d 58 00 cmp QWORD PTR $T9[rbp], 0 0003e 74 2a je SHORT $LN34@catch$18 00040 48 8b 45 58 mov rax, QWORD PTR $T9[rbp] 00044 48 8b 00 mov rax, QWORD PTR [rax] 00047 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0004b 48 89 85 a0 02 00 00 mov QWORD PTR tv394[rbp], rax 00052 ba 01 00 00 00 mov edx, 1 00057 48 8b 4d 58 mov rcx, QWORD PTR $T9[rbp] 0005b ff 95 a0 02 00 00 call QWORD PTR tv394[rbp] 00061 48 89 85 a8 02 00 00 mov QWORD PTR tv395[rbp], rax 00068 eb 0b jmp SHORT $LN35@catch$18 $LN34@catch$18: 0006a 48 c7 85 a8 02 00 00 00 00 00 00 mov QWORD PTR tv395[rbp], 0 $LN35@catch$18: ; 1188 : m_rSheet = NULL; 00075 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 0007c 48 c7 80 d8 00 00 00 00 00 00 00 mov QWORD PTR [rax+216], 0 ; 1189 : m_Database->Close(); 00087 48 8b 85 20 03 00 00 mov rax, QWORD PTR this$[rbp] 0008e 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00095 48 8b 8d 20 03 00 00 mov rcx, QWORD PTR this$[rbp] 0009c 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 000a3 48 8b 00 mov rax, QWORD PTR [rax] 000a6 ff 50 28 call QWORD PTR [rax+40] ; 1190 : ; 1191 : return false; 000a9 c6 45 35 00 mov BYTE PTR $T3[rbp], 0 000ad 48 8d 05 00 00 00 00 lea rax, $LN74@catch$18 000b4 eb 07 jmp SHORT $LN78@catch$18 ; 1192 : } 000b6 48 8d 05 00 00 00 00 lea rax, __tryend$?Open@CSpreadSheet@@AEAA_NXZ$3 $LN78@catch$18: 000bd 48 83 c4 30 add rsp, 48 ; 00000030H 000c1 5d pop rbp 000c2 c3 ret 0 000c3 cc int 3 ?catch$18@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::catch$18 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$15 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR $T14[rbp] 00010 e8 00 00 00 00 call ??3CObject@@SAXPEAX@Z ; CObject::operator delete 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$15@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$15 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::dtor$16 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 ba 70 00 00 00 mov edx, 112 ; 00000070H 0000e 48 8b 8d 98 00 00 00 mov rcx, QWORD PTR $T15[rbp] 00015 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 0001a 48 83 c4 20 add rsp, 32 ; 00000020H 0001e 5d pop rbp 0001f c3 ret 0 ?dtor$16@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::dtor$16 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT column$1 = 48 $T2 = 52 $T3 = 53 i$4 = 56 i$5 = 60 File$6 = 64 Archive$7 = 72 $T8 = 80 $T9 = 88 $T10 = 96 $T11 = 104 $T12 = 112 $T13 = 120 tv134 = 128 $T14 = 136 tv455 = 144 $T15 = 152 tv471 = 160 $T16 = 168 tv85 = 176 tv87 = 184 tv89 = 192 $T17 = 200 tv140 = 208 tv160 = 216 tv162 = 224 tv164 = 232 tv176 = 240 tv177 = 248 tv224 = 256 tv620 = 264 tv237 = 272 tv588 = 280 tv621 = 288 tv590 = 296 tv622 = 304 tv232 = 312 tv592 = 320 tv623 = 328 tv594 = 336 $T18 = 344 $T19 = 352 $T20 = 360 $T21 = 368 tv624 = 376 tv264 = 384 tv596 = 392 tv625 = 400 tv598 = 408 tv626 = 416 tv600 = 424 $T22 = 432 $T23 = 440 $T24 = 448 tv287 = 456 tv312 = 464 tv627 = 472 tv327 = 480 tv602 = 488 tv628 = 496 tv604 = 504 tv629 = 512 tv322 = 520 tv606 = 528 tv630 = 536 tv608 = 544 $T25 = 552 $T26 = 560 $T27 = 568 $T28 = 576 tv631 = 584 tv354 = 592 tv610 = 600 tv632 = 608 tv612 = 616 tv633 = 624 tv614 = 632 $T29 = 640 $T30 = 648 $T31 = 656 tv377 = 664 tv394 = 672 tv395 = 680 tv423 = 688 tv424 = 696 tv454 = 704 $T32 = 712 $T33 = 720 tv485 = 728 tv493 = 736 tv505 = 744 tv506 = 752 tv545 = 760 tv580 = 768 tv581 = 776 this$ = 800 ?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA PROC ; `CSpreadSheet::Open'::`1'::catch$19 ; 1249 : { 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 8b ea mov rbp, rdx __catch$?Open@CSpreadSheet@@AEAA_NXZ$4: ; 1250 : } 0000d 48 8d 05 00 00 00 00 lea rax, $LN76@catch$19 00014 48 83 c4 30 add rsp, 48 ; 00000030H 00018 5d pop rbp 00019 c3 ret 0 0001a cc int 3 ?catch$19@?0??Open@CSpreadSheet@@AEAA_NXZ@4HA ENDP ; `CSpreadSheet::Open'::`1'::catch$19 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.h ; COMDAT ?GetTotalColumns@CSpreadSheet@@QEAAFXZ _TEXT SEGMENT this$ = 8 ?GetTotalColumns@CSpreadSheet@@QEAAFXZ PROC ; CSpreadSheet::GetTotalColumns, COMDAT ; 41 : inline short GetTotalColumns() {return m_dTotalColumns;} // »ñÈ¡×ÜÁÐÊý 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 0f b7 40 0c movzx eax, WORD PTR [rax+12] 0000e c3 ret 0 ?GetTotalColumns@CSpreadSheet@@QEAAFXZ ENDP ; CSpreadSheet::GetTotalColumns _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.h ; COMDAT ?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z _TEXT SEGMENT this$ = 48 FieldNames$ = 56 ?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z PROC ; CSpreadSheet::GetFieldNames, COMDAT ; 39 : inline void GetFieldNames (CStringArray &FieldNames) {FieldNames.RemoveAll(); FieldNames.Copy(m_aFieldNames);} $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H 0000e 48 8b 4c 24 38 mov rcx, QWORD PTR FieldNames$[rsp] 00013 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll 00018 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0001d 48 05 80 00 00 00 add rax, 128 ; 00000080H 00023 48 8b d0 mov rdx, rax 00026 48 8b 4c 24 38 mov rcx, QWORD PTR FieldNames$[rsp] 0002b e8 00 00 00 00 call ?Copy@CStringArray@@QEAAXAEBV1@@Z ; CStringArray::Copy 00030 48 83 c4 28 add rsp, 40 ; 00000028H 00034 c3 ret 0 ?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z ENDP ; CSpreadSheet::GetFieldNames _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z _TEXT SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z PROC ; CSpreadSheet::Convert, COMDAT ; 990 : { $LN44: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 81 ec 08 03 00 00 sub rsp, 776 ; 00000308H ; 991 : // ÎļþÃû ; 992 : m_stempString = m_sFile; 00011 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00019 48 83 c0 40 add rax, 64 ; 00000040H 0001d 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 00025 48 83 c1 28 add rcx, 40 ; 00000028H 00029 48 8b d0 mov rdx, rax 0002c e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 993 : m_stempString.Delete(m_stempString.GetLength()-4, 4); 00031 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00039 48 83 c0 28 add rax, 40 ; 00000028H 0003d 48 89 44 24 48 mov QWORD PTR tv83[rsp], rax 00042 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 0004a 48 83 c0 28 add rax, 40 ; 00000028H 0004e 48 8b c8 mov rcx, rax 00051 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00056 83 e8 04 sub eax, 4 00059 41 b8 04 00 00 00 mov r8d, 4 0005f 8b d0 mov edx, eax 00061 48 8b 4c 24 48 mov rcx, QWORD PTR tv83[rsp] 00066 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 994 : if (m_bExcel) // µ±ÎļþÊÇExcelÎļþʱ 0006b 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00073 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00077 85 c0 test eax, eax 00079 0f 84 44 02 00 00 je $LN20@Convert ; 995 : { ; 996 : m_stempString += _T(".csv"); 0007f 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00087 48 83 c0 28 add rax, 40 ; 00000028H 0008b 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331647 00092 48 8b c8 mov rcx, rax 00095 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= ; 997 : CSpreadSheet tempSheet(m_stempString, SheetOrSeparator, false); 0009a 48 8d 84 24 20 01 00 00 lea rax, QWORD PTR $T26[rsp] 000a2 48 89 44 24 50 mov QWORD PTR $T22[rsp], rax 000a7 48 8b 94 24 18 03 00 00 mov rdx, QWORD PTR SheetOrSeparator$[rsp] 000af 48 8b 4c 24 50 mov rcx, QWORD PTR $T22[rsp] 000b4 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 000b9 48 89 44 24 58 mov QWORD PTR tv401[rsp], rax 000be 48 8b 44 24 58 mov rax, QWORD PTR tv401[rsp] 000c3 48 89 44 24 60 mov QWORD PTR tv332[rsp], rax 000c8 48 8b 44 24 60 mov rax, QWORD PTR tv332[rsp] 000cd 48 89 84 24 80 00 00 00 mov QWORD PTR tv129[rsp], rax 000d5 48 8d 84 24 28 01 00 00 lea rax, QWORD PTR $T27[rsp] 000dd 48 89 44 24 68 mov QWORD PTR $T23[rsp], rax 000e2 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 000ea 48 83 c0 28 add rax, 40 ; 00000028H 000ee 48 8b d0 mov rdx, rax 000f1 48 8b 4c 24 68 mov rcx, QWORD PTR $T23[rsp] 000f6 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 000fb 48 89 44 24 70 mov QWORD PTR tv402[rsp], rax 00100 48 8b 44 24 70 mov rax, QWORD PTR tv402[rsp] 00105 48 89 44 24 78 mov QWORD PTR tv334[rsp], rax 0010a 48 8b 44 24 78 mov rax, QWORD PTR tv334[rsp] 0010f 48 89 84 24 88 00 00 00 mov QWORD PTR tv144[rsp], rax 00117 45 33 c9 xor r9d, r9d 0011a 4c 8b 84 24 80 00 00 00 mov r8, QWORD PTR tv129[rsp] 00122 48 8b 94 24 88 00 00 00 mov rdx, QWORD PTR tv144[rsp] 0012a 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 00132 e8 00 00 00 00 call ??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z ; CSpreadSheet::CSpreadSheet 00137 90 npad 1 ; 998 : ; 999 : // Èç¹ûÖ¸¶¨Îı¾ÎļþÒÑ´æÔÚ£¬´æ²»×ª»»Ö±½Ó·µ»Ø ; 1000 : if (0 != tempSheet.GetTotalColumns()) 00138 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 00140 e8 00 00 00 00 call ?GetTotalColumns@CSpreadSheet@@QEAAFXZ ; CSpreadSheet::GetTotalColumns 00145 98 cwde 00146 85 c0 test eax, eax 00148 74 2a je SHORT $LN22@Convert ; 1001 : { ; 1002 : return false; 0014a c6 44 24 21 00 mov BYTE PTR $T2[rsp], 0 0014f 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 00157 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 0015c 90 npad 1 0015d 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 00165 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0016a 0f b6 44 24 21 movzx eax, BYTE PTR $T2[rsp] 0016f e9 60 07 00 00 jmp $LN1@Convert $LN22@Convert: ; 1003 : } ; 1004 : ; 1005 : tempSheet.BeginTransaction(); 00174 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 0017c e8 00 00 00 00 call ?BeginTransaction@CSpreadSheet@@QEAAXXZ ; CSpreadSheet::BeginTransaction ; 1006 : ; 1007 : for (int i = 1; i <= m_dTotalRows; i++) 00181 c7 44 24 34 01 00 00 00 mov DWORD PTR i$17[rsp], 1 00189 eb 0a jmp SHORT $LN4@Convert $LN2@Convert: 0018b 8b 44 24 34 mov eax, DWORD PTR i$17[rsp] 0018f ff c0 inc eax 00191 89 44 24 34 mov DWORD PTR i$17[rsp], eax $LN4@Convert: 00195 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 0019d 8b 40 08 mov eax, DWORD PTR [rax+8] 001a0 39 44 24 34 cmp DWORD PTR i$17[rsp], eax 001a4 0f 8f ac 00 00 00 jg $LN3@Convert ; 1008 : { ; 1009 : if (!ReadRow(m_atempArray, i)) 001aa 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 001b2 48 83 c0 58 add rax, 88 ; 00000058H 001b6 44 8b 44 24 34 mov r8d, DWORD PTR i$17[rsp] 001bb 48 8b d0 mov rdx, rax 001be 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 001c6 e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow 001cb 0f b6 c0 movzx eax, al 001ce 85 c0 test eax, eax 001d0 75 2a jne SHORT $LN23@Convert ; 1010 : { ; 1011 : return false; 001d2 c6 44 24 22 00 mov BYTE PTR $T3[rsp], 0 001d7 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 001df e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 001e4 90 npad 1 001e5 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 001ed e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 001f2 0f b6 44 24 22 movzx eax, BYTE PTR $T3[rsp] 001f7 e9 d8 06 00 00 jmp $LN1@Convert $LN23@Convert: ; 1012 : } ; 1013 : if (!tempSheet.AddRow(m_atempArray, i)) 001fc 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00204 48 83 c0 58 add rax, 88 ; 00000058H 00208 45 33 c9 xor r9d, r9d 0020b 44 8b 44 24 34 mov r8d, DWORD PTR i$17[rsp] 00210 48 8b d0 mov rdx, rax 00213 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 0021b e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 00220 0f b6 c0 movzx eax, al 00223 85 c0 test eax, eax 00225 75 2a jne SHORT $LN24@Convert ; 1014 : { ; 1015 : return false; 00227 c6 44 24 23 00 mov BYTE PTR $T4[rsp], 0 0022c 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 00234 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00239 90 npad 1 0023a 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 00242 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00247 0f b6 44 24 23 movzx eax, BYTE PTR $T4[rsp] 0024c e9 83 06 00 00 jmp $LN1@Convert $LN24@Convert: ; 1016 : } ; 1017 : } 00251 e9 35 ff ff ff jmp $LN2@Convert $LN3@Convert: ; 1018 : if (!tempSheet.Commit()) 00256 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 0025e e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit 00263 0f b6 c0 movzx eax, al 00266 85 c0 test eax, eax 00268 75 2a jne SHORT $LN25@Convert ; 1019 : { ; 1020 : return false; 0026a c6 44 24 24 00 mov BYTE PTR $T5[rsp], 0 0026f 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 00277 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 0027c 90 npad 1 0027d 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 00285 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0028a 0f b6 44 24 24 movzx eax, BYTE PTR $T5[rsp] 0028f e9 40 06 00 00 jmp $LN1@Convert $LN25@Convert: ; 1021 : } ; 1022 : return true; 00294 c6 44 24 25 01 mov BYTE PTR $T6[rsp], 1 00299 48 8d 8c 24 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rsp] 002a1 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 002a6 90 npad 1 002a7 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 002af e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 002b4 0f b6 44 24 25 movzx eax, BYTE PTR $T6[rsp] 002b9 e9 16 06 00 00 jmp $LN1@Convert ; 1023 : } 002be e9 03 06 00 00 jmp $LN21@Convert $LN20@Convert: ; 1024 : else // µ±ÎļþÊÇ·Ö¸ô·û·Ö¸ôµÄÎı¾Îļþʱ ; 1025 : { ; 1026 : m_stempString += _T(".xls"); 002c3 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 002cb 48 83 c0 28 add rax, 40 ; 00000028H 002cf 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331657 002d6 48 8b c8 mov rcx, rax 002d9 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= ; 1027 : CSpreadSheet tempSheet(m_stempString, SheetOrSeparator, false); 002de 48 8d 84 24 30 01 00 00 lea rax, QWORD PTR $T28[rsp] 002e6 48 89 84 24 90 00 00 00 mov QWORD PTR $T24[rsp], rax 002ee 48 8b 94 24 18 03 00 00 mov rdx, QWORD PTR SheetOrSeparator$[rsp] 002f6 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR $T24[rsp] 002fe e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00303 48 89 84 24 98 00 00 00 mov QWORD PTR tv90[rsp], rax 0030b 48 8b 84 24 98 00 00 00 mov rax, QWORD PTR tv90[rsp] 00313 48 89 84 24 a0 00 00 00 mov QWORD PTR tv347[rsp], rax 0031b 48 8b 84 24 a0 00 00 00 mov rax, QWORD PTR tv347[rsp] 00323 48 89 84 24 c0 00 00 00 mov QWORD PTR tv185[rsp], rax 0032b 48 8d 84 24 38 01 00 00 lea rax, QWORD PTR $T29[rsp] 00333 48 89 84 24 a8 00 00 00 mov QWORD PTR $T25[rsp], rax 0033b 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00343 48 83 c0 28 add rax, 40 ; 00000028H 00347 48 8b d0 mov rdx, rax 0034a 48 8b 8c 24 a8 00 00 00 mov rcx, QWORD PTR $T25[rsp] 00352 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00357 48 89 84 24 b0 00 00 00 mov QWORD PTR tv403[rsp], rax 0035f 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR tv403[rsp] 00367 48 89 84 24 b8 00 00 00 mov QWORD PTR tv349[rsp], rax 0036f 48 8b 84 24 b8 00 00 00 mov rax, QWORD PTR tv349[rsp] 00377 48 89 84 24 c8 00 00 00 mov QWORD PTR tv200[rsp], rax 0037f 45 33 c9 xor r9d, r9d 00382 4c 8b 84 24 c0 00 00 00 mov r8, QWORD PTR tv185[rsp] 0038a 48 8b 94 24 c8 00 00 00 mov rdx, QWORD PTR tv200[rsp] 00392 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0039a e8 00 00 00 00 call ??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z ; CSpreadSheet::CSpreadSheet 0039f 90 npad 1 ; 1028 : ; 1029 : // Èç¹ûÖ¸¶¨ExcelÎļþÒÑ´æÔÚ£¬ÔòÖ±½Ó·µ»Ø ; 1030 : if (0 != tempSheet.GetTotalColumns()) 003a0 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 003a8 e8 00 00 00 00 call ?GetTotalColumns@CSpreadSheet@@QEAAFXZ ; CSpreadSheet::GetTotalColumns 003ad 98 cwde 003ae 85 c0 test eax, eax 003b0 74 2a je SHORT $LN26@Convert ; 1031 : { ; 1032 : return false; 003b2 c6 44 24 26 00 mov BYTE PTR $T7[rsp], 0 003b7 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 003bf e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 003c4 90 npad 1 003c5 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 003cd e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 003d2 0f b6 44 24 26 movzx eax, BYTE PTR $T7[rsp] 003d7 e9 f8 04 00 00 jmp $LN1@Convert $LN26@Convert: ; 1033 : } ; 1034 : ; 1035 : GetFieldNames(m_atempArray); 003dc 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 003e4 48 83 c0 58 add rax, 88 ; 00000058H 003e8 48 8b d0 mov rdx, rax 003eb 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 003f3 e8 00 00 00 00 call ?GetFieldNames@CSpreadSheet@@QEAAXAEAVCStringArray@@@Z ; CSpreadSheet::GetFieldNames ; 1036 : ; 1037 : // ¼ì²éÊ×ÐÐ(ÁÐÍ·)×Ö¶ÎÊÇ·ñÖØ¸´ ; 1038 : bool duplicate = false; 003f8 c6 44 24 20 00 mov BYTE PTR duplicate$1[rsp], 0 ; 1039 : for (int i = 0; i < m_atempArray.GetSize(); i++) 003fd c7 44 24 30 00 00 00 00 mov DWORD PTR i$16[rsp], 0 00405 eb 0a jmp SHORT $LN7@Convert $LN5@Convert: 00407 8b 44 24 30 mov eax, DWORD PTR i$16[rsp] 0040b ff c0 inc eax 0040d 89 44 24 30 mov DWORD PTR i$16[rsp], eax $LN7@Convert: 00411 48 63 44 24 30 movsxd rax, DWORD PTR i$16[rsp] 00416 48 89 84 24 d0 00 00 00 mov QWORD PTR tv211[rsp], rax 0041e 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 00426 48 83 c1 58 add rcx, 88 ; 00000058H 0042a e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0042f 48 8b 8c 24 d0 00 00 00 mov rcx, QWORD PTR tv211[rsp] 00437 48 3b c8 cmp rcx, rax 0043a 0f 8d 32 01 00 00 jge $LN6@Convert ; 1040 : { ; 1041 : for (int j = 0; j < m_atempArray.GetSize(); j++) 00440 c7 44 24 38 00 00 00 00 mov DWORD PTR j$18[rsp], 0 00448 eb 0a jmp SHORT $LN10@Convert $LN8@Convert: 0044a 8b 44 24 38 mov eax, DWORD PTR j$18[rsp] 0044e ff c0 inc eax 00450 89 44 24 38 mov DWORD PTR j$18[rsp], eax $LN10@Convert: 00454 48 63 44 24 38 movsxd rax, DWORD PTR j$18[rsp] 00459 48 89 84 24 d8 00 00 00 mov QWORD PTR tv217[rsp], rax 00461 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 00469 48 83 c1 58 add rcx, 88 ; 00000058H 0046d e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00472 48 8b 8c 24 d8 00 00 00 mov rcx, QWORD PTR tv217[rsp] 0047a 48 3b c8 cmp rcx, rax 0047d 0f 8d ea 00 00 00 jge $LN9@Convert ; 1042 : { ; 1043 : if ((i != j) && (m_atempArray.GetAt(i) == m_atempArray.GetAt(j))) 00483 8b 44 24 38 mov eax, DWORD PTR j$18[rsp] 00487 39 44 24 30 cmp DWORD PTR i$16[rsp], eax 0048b 0f 84 d7 00 00 00 je $LN27@Convert 00491 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00499 48 83 c0 58 add rax, 88 ; 00000058H 0049d 48 89 84 24 e0 00 00 00 mov QWORD PTR tv230[rsp], rax 004a5 48 63 44 24 38 movsxd rax, DWORD PTR j$18[rsp] 004aa 48 8b d0 mov rdx, rax 004ad 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR tv230[rsp] 004b5 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 004ba 48 89 84 24 f0 00 00 00 mov QWORD PTR tv243[rsp], rax 004c2 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 004ca 48 83 c0 58 add rax, 88 ; 00000058H 004ce 48 89 84 24 e8 00 00 00 mov QWORD PTR tv238[rsp], rax 004d6 48 63 44 24 30 movsxd rax, DWORD PTR i$16[rsp] 004db 48 8b d0 mov rdx, rax 004de 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR tv238[rsp] 004e6 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 004eb 48 89 84 24 f8 00 00 00 mov QWORD PTR tv241[rsp], rax 004f3 48 8b 94 24 f0 00 00 00 mov rdx, QWORD PTR tv243[rsp] 004fb 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR tv241[rsp] 00503 e8 00 00 00 00 call ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ; ATL::operator== 00508 0f b6 c0 movzx eax, al 0050b 85 c0 test eax, eax 0050d 74 59 je SHORT $LN27@Convert ; 1044 : { ; 1045 : m_sLastError.Format(_T("Ê×ÐÐ(ÁÐÍ·)×Ö¶ÎÖØ¸´:%s\n"), m_atempArray.GetAt(i)); 0050f 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00517 48 83 c0 50 add rax, 80 ; 00000050H 0051b 48 89 84 24 08 01 00 00 mov QWORD PTR tv258[rsp], rax 00523 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 0052b 48 83 c0 58 add rax, 88 ; 00000058H 0052f 48 89 84 24 00 01 00 00 mov QWORD PTR tv254[rsp], rax 00537 48 63 44 24 30 movsxd rax, DWORD PTR i$16[rsp] 0053c 48 8b d0 mov rdx, rax 0053f 48 8b 8c 24 00 01 00 00 mov rcx, QWORD PTR tv254[rsp] 00547 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 0054c 4c 8b 00 mov r8, QWORD PTR [rax] 0054f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331661 00556 48 8b 8c 24 08 01 00 00 mov rcx, QWORD PTR tv258[rsp] 0055e e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 1046 : duplicate = true; 00563 c6 44 24 20 01 mov BYTE PTR duplicate$1[rsp], 1 $LN27@Convert: ; 1047 : } ; 1048 : } 00568 e9 dd fe ff ff jmp $LN8@Convert $LN9@Convert: ; 1049 : } 0056d e9 95 fe ff ff jmp $LN5@Convert $LN6@Convert: ; 1050 : ; 1051 : if (duplicate) // ÖØ¸´Ê±´´½¨ÑÆÔªÊ×ÐÐ(ÁÐÍ·) 00572 0f b6 44 24 20 movzx eax, BYTE PTR duplicate$1[rsp] 00577 85 c0 test eax, eax 00579 0f 84 f1 01 00 00 je $LN28@Convert ; 1052 : { ; 1053 : m_atempArray.RemoveAll(); 0057f 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00587 48 83 c0 58 add rax, 88 ; 00000058H 0058b 48 8b c8 mov rcx, rax 0058e e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 1054 : for (int k = 1; k <= m_dTotalColumns; k++) 00593 c7 44 24 44 01 00 00 00 mov DWORD PTR k$21[rsp], 1 0059b eb 0a jmp SHORT $LN13@Convert $LN11@Convert: 0059d 8b 44 24 44 mov eax, DWORD PTR k$21[rsp] 005a1 ff c0 inc eax 005a3 89 44 24 44 mov DWORD PTR k$21[rsp], eax $LN13@Convert: 005a7 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 005af 0f bf 40 0c movsx eax, WORD PTR [rax+12] 005b3 39 44 24 44 cmp DWORD PTR k$21[rsp], eax 005b7 7f 5f jg SHORT $LN12@Convert ; 1055 : { ; 1056 : m_stempString.Format(_T("%d"), k); 005b9 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 005c1 48 83 c0 28 add rax, 40 ; 00000028H 005c5 48 89 84 24 10 01 00 00 mov QWORD PTR tv272[rsp], rax 005cd 44 8b 44 24 44 mov r8d, DWORD PTR k$21[rsp] 005d2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331664 005d9 48 8b 8c 24 10 01 00 00 mov rcx, QWORD PTR tv272[rsp] 005e1 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 1057 : m_atempArray.Add(m_stempString); 005e6 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 005ee 48 83 c0 58 add rax, 88 ; 00000058H 005f2 48 89 84 24 18 01 00 00 mov QWORD PTR tv279[rsp], rax 005fa 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00602 48 83 c0 28 add rax, 40 ; 00000028H 00606 48 8b d0 mov rdx, rax 00609 48 8b 8c 24 18 01 00 00 mov rcx, QWORD PTR tv279[rsp] 00611 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 1058 : } 00616 eb 85 jmp SHORT $LN11@Convert $LN12@Convert: ; 1059 : ; 1060 : if (!tempSheet.AddHeaders(m_atempArray)) 00618 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00620 48 83 c0 58 add rax, 88 ; 00000058H 00624 45 33 c0 xor r8d, r8d 00627 48 8b d0 mov rdx, rax 0062a 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 00632 e8 00 00 00 00 call ?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z ; CSpreadSheet::AddHeaders 00637 0f b6 c0 movzx eax, al 0063a 85 c0 test eax, eax 0063c 75 2a jne SHORT $LN30@Convert ; 1061 : { ; 1062 : return false; 0063e c6 44 24 27 00 mov BYTE PTR $T8[rsp], 0 00643 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0064b e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00650 90 npad 1 00651 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 00659 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0065e 0f b6 44 24 27 movzx eax, BYTE PTR $T8[rsp] 00663 e9 6c 02 00 00 jmp $LN1@Convert $LN30@Convert: ; 1063 : } ; 1064 : ; 1065 : for (int l = 1; l <= m_dTotalRows; l++) 00668 c7 44 24 3c 01 00 00 00 mov DWORD PTR l$19[rsp], 1 00670 eb 0a jmp SHORT $LN16@Convert $LN14@Convert: 00672 8b 44 24 3c mov eax, DWORD PTR l$19[rsp] 00676 ff c0 inc eax 00678 89 44 24 3c mov DWORD PTR l$19[rsp], eax $LN16@Convert: 0067c 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00684 8b 40 08 mov eax, DWORD PTR [rax+8] 00687 39 44 24 3c cmp DWORD PTR l$19[rsp], eax 0068b 0f 8f b0 00 00 00 jg $LN15@Convert ; 1066 : { ; 1067 : if (!ReadRow(m_atempArray, l)) 00691 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00699 48 83 c0 58 add rax, 88 ; 00000058H 0069d 44 8b 44 24 3c mov r8d, DWORD PTR l$19[rsp] 006a2 48 8b d0 mov rdx, rax 006a5 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 006ad e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow 006b2 0f b6 c0 movzx eax, al 006b5 85 c0 test eax, eax 006b7 75 2a jne SHORT $LN31@Convert ; 1068 : { ; 1069 : return false; 006b9 c6 44 24 28 00 mov BYTE PTR $T9[rsp], 0 006be 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 006c6 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 006cb 90 npad 1 006cc 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 006d4 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 006d9 0f b6 44 24 28 movzx eax, BYTE PTR $T9[rsp] 006de e9 f1 01 00 00 jmp $LN1@Convert $LN31@Convert: ; 1070 : } ; 1071 : if (!tempSheet.AddRow(m_atempArray, l+1)) 006e3 8b 44 24 3c mov eax, DWORD PTR l$19[rsp] 006e7 ff c0 inc eax 006e9 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 006f1 48 83 c1 58 add rcx, 88 ; 00000058H 006f5 45 33 c9 xor r9d, r9d 006f8 44 8b c0 mov r8d, eax 006fb 48 8b d1 mov rdx, rcx 006fe 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 00706 e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 0070b 0f b6 c0 movzx eax, al 0070e 85 c0 test eax, eax 00710 75 2a jne SHORT $LN32@Convert ; 1072 : { ; 1073 : return false; 00712 c6 44 24 29 00 mov BYTE PTR $T10[rsp], 0 00717 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0071f e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00724 90 npad 1 00725 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 0072d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00732 0f b6 44 24 29 movzx eax, BYTE PTR $T10[rsp] 00737 e9 98 01 00 00 jmp $LN1@Convert $LN32@Convert: ; 1074 : } ; 1075 : } 0073c e9 31 ff ff ff jmp $LN14@Convert $LN15@Convert: ; 1076 : return true; 00741 c6 44 24 2a 01 mov BYTE PTR $T11[rsp], 1 00746 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0074e e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00753 90 npad 1 00754 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 0075c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00761 0f b6 44 24 2a movzx eax, BYTE PTR $T11[rsp] 00766 e9 69 01 00 00 jmp $LN1@Convert ; 1077 : } 0076b e9 49 01 00 00 jmp $LN29@Convert $LN28@Convert: ; 1078 : else ; 1079 : { ; 1080 : if (!tempSheet.AddHeaders(m_atempArray)) 00770 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00778 48 83 c0 58 add rax, 88 ; 00000058H 0077c 45 33 c0 xor r8d, r8d 0077f 48 8b d0 mov rdx, rax 00782 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0078a e8 00 00 00 00 call ?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z ; CSpreadSheet::AddHeaders 0078f 0f b6 c0 movzx eax, al 00792 85 c0 test eax, eax 00794 75 2a jne SHORT $LN33@Convert ; 1081 : { ; 1082 : return false; 00796 c6 44 24 2b 00 mov BYTE PTR $T12[rsp], 0 0079b 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 007a3 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 007a8 90 npad 1 007a9 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 007b1 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 007b6 0f b6 44 24 2b movzx eax, BYTE PTR $T12[rsp] 007bb e9 14 01 00 00 jmp $LN1@Convert $LN33@Convert: ; 1083 : } ; 1084 : ; 1085 : for (int l = 2; l <= m_dTotalRows; l++) 007c0 c7 44 24 40 02 00 00 00 mov DWORD PTR l$20[rsp], 2 007c8 eb 0a jmp SHORT $LN19@Convert $LN17@Convert: 007ca 8b 44 24 40 mov eax, DWORD PTR l$20[rsp] 007ce ff c0 inc eax 007d0 89 44 24 40 mov DWORD PTR l$20[rsp], eax $LN19@Convert: 007d4 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 007dc 8b 40 08 mov eax, DWORD PTR [rax+8] 007df 39 44 24 40 cmp DWORD PTR l$20[rsp], eax 007e3 0f 8f a9 00 00 00 jg $LN18@Convert ; 1086 : { ; 1087 : if (!ReadRow(m_atempArray, l)) 007e9 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 007f1 48 83 c0 58 add rax, 88 ; 00000058H 007f5 44 8b 44 24 40 mov r8d, DWORD PTR l$20[rsp] 007fa 48 8b d0 mov rdx, rax 007fd 48 8b 8c 24 10 03 00 00 mov rcx, QWORD PTR this$[rsp] 00805 e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow 0080a 0f b6 c0 movzx eax, al 0080d 85 c0 test eax, eax 0080f 75 2a jne SHORT $LN34@Convert ; 1088 : { ; 1089 : return false; 00811 c6 44 24 2c 00 mov BYTE PTR $T13[rsp], 0 00816 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0081e e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00823 90 npad 1 00824 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 0082c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00831 0f b6 44 24 2c movzx eax, BYTE PTR $T13[rsp] 00836 e9 99 00 00 00 jmp $LN1@Convert $LN34@Convert: ; 1090 : } ; 1091 : if (!tempSheet.AddRow(m_atempArray, l)) 0083b 48 8b 84 24 10 03 00 00 mov rax, QWORD PTR this$[rsp] 00843 48 83 c0 58 add rax, 88 ; 00000058H 00847 45 33 c9 xor r9d, r9d 0084a 44 8b 44 24 40 mov r8d, DWORD PTR l$20[rsp] 0084f 48 8b d0 mov rdx, rax 00852 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0085a e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 0085f 0f b6 c0 movzx eax, al 00862 85 c0 test eax, eax 00864 75 27 jne SHORT $LN35@Convert ; 1092 : { ; 1093 : return false; 00866 c6 44 24 2d 00 mov BYTE PTR $T14[rsp], 0 0086b 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 00873 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00878 90 npad 1 00879 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 00881 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00886 0f b6 44 24 2d movzx eax, BYTE PTR $T14[rsp] 0088b eb 47 jmp SHORT $LN1@Convert $LN35@Convert: ; 1094 : } ; 1095 : } 0088d e9 38 ff ff ff jmp $LN17@Convert $LN18@Convert: ; 1096 : return true; 00892 c6 44 24 2e 01 mov BYTE PTR $T15[rsp], 1 00897 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 0089f e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 008a4 90 npad 1 008a5 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 008ad e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 008b2 0f b6 44 24 2e movzx eax, BYTE PTR $T15[rsp] 008b7 eb 1b jmp SHORT $LN1@Convert $LN29@Convert: ; 1097 : } ; 1098 : } 008b9 48 8d 8c 24 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rsp] 008c1 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet $LN21@Convert: ; 1099 : } 008c6 48 8b 8c 24 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 008ce e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 008d3 90 npad 1 $LN1@Convert: 008d4 48 81 c4 08 03 00 00 add rsp, 776 ; 00000308H 008db c3 ret 0 ?Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ENDP ; CSpreadSheet::Convert _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d 18 03 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 50 mov rcx, QWORD PTR $T22[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$1@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 68 mov rcx, QWORD PTR $T23[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$2@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 20 02 00 00 lea rcx, QWORD PTR tempSheet$31[rbp] 00010 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$3@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$4 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d 90 00 00 00 mov rcx, QWORD PTR $T24[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$4@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$4 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$5 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d a8 00 00 00 mov rcx, QWORD PTR $T25[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$5@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$5 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT duplicate$1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 $T7 = 38 $T8 = 39 $T9 = 40 $T10 = 41 $T11 = 42 $T12 = 43 $T13 = 44 $T14 = 45 $T15 = 46 i$16 = 48 i$17 = 52 j$18 = 56 l$19 = 60 l$20 = 64 k$21 = 68 tv83 = 72 $T22 = 80 tv401 = 88 tv332 = 96 $T23 = 104 tv402 = 112 tv334 = 120 tv129 = 128 tv144 = 136 $T24 = 144 tv90 = 152 tv347 = 160 $T25 = 168 tv403 = 176 tv349 = 184 tv185 = 192 tv200 = 200 tv211 = 208 tv217 = 216 tv230 = 224 tv238 = 232 tv243 = 240 tv241 = 248 tv254 = 256 tv258 = 264 tv272 = 272 tv279 = 280 $T26 = 288 $T27 = 296 $T28 = 304 $T29 = 312 tempSheet$30 = 320 tempSheet$31 = 544 this$ = 784 SheetOrSeparator$ = 792 ?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::Convert'::`1'::dtor$6 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 40 01 00 00 lea rcx, QWORD PTR tempSheet$30[rbp] 00010 e8 00 00 00 00 call ??1CSpreadSheet@@QEAA@XZ ; CSpreadSheet::~CSpreadSheet 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$6@?0??Convert@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::Convert'::`1'::dtor$6 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?RollBack@CSpreadSheet@@QEAA_NXZ _TEXT SEGMENT this$ = 48 ?RollBack@CSpreadSheet@@QEAA_NXZ PROC ; CSpreadSheet::RollBack, COMDAT ; 976 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 977 : if (Open()) 00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?Open@CSpreadSheet@@AEAA_NXZ ; CSpreadSheet::Open 00013 0f b6 c0 movzx eax, al 00016 85 c0 test eax, eax 00018 74 0d je SHORT $LN2@RollBack ; 978 : { ; 979 : m_bTransaction = false; 0001a 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0001f c6 40 03 00 mov BYTE PTR [rax+3], 0 ; 980 : return true; 00023 b0 01 mov al, 1 00025 eb 1a jmp SHORT $LN1@RollBack $LN2@RollBack: ; 981 : } ; 982 : ; 983 : m_sLastError = _T("ÔڻعöÏÈǰ״̬ʱ²úÉú´íÎó\n"); 00027 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0002c 48 83 c0 50 add rax, 80 ; 00000050H 00030 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331609 00037 48 8b c8 mov rcx, rax 0003a e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 984 : ; 985 : return false; 0003f 32 c0 xor al, al $LN1@RollBack: ; 986 : } 00041 48 83 c4 28 add rsp, 40 ; 00000028H 00045 c3 ret 0 ?RollBack@CSpreadSheet@@QEAA_NXZ ENDP ; CSpreadSheet::RollBack _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?Commit@CSpreadSheet@@QEAA_NXZ _TEXT SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?Commit@CSpreadSheet@@QEAA_NXZ PROC ; CSpreadSheet::Commit, COMDAT ; 840 : { $LN76: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 81 ec 28 03 00 00 sub rsp, 808 ; 00000328H ; 841 : if (m_bExcel) // µ±ÊÇExcel±í¸ñÎļþʱ 0000c 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00014 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00018 85 c0 test eax, eax 0001a 0f 84 c2 0a 00 00 je $LN20@Commit ; 842 : { ; 843 : // ´ò¿ª»ò´´½¨ExcelÎļþ ; 844 : m_Database->OpenEx(m_sDsn, CDatabase::noOdbcDialog); 00020 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00028 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0002f 48 89 84 24 a0 00 00 00 mov QWORD PTR tv87[rsp], rax 00037 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 0003f 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00046 48 8b 00 mov rax, QWORD PTR [rax] 00049 48 8b 40 20 mov rax, QWORD PTR [rax+32] 0004d 48 89 84 24 a8 00 00 00 mov QWORD PTR tv89[rsp], rax 00055 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 0005d 48 83 c0 18 add rax, 24 00061 48 8b c8 mov rcx, rax 00064 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00069 48 89 84 24 98 00 00 00 mov QWORD PTR tv85[rsp], rax 00071 41 b8 08 00 00 00 mov r8d, 8 00077 48 8b 94 24 98 00 00 00 mov rdx, QWORD PTR tv85[rsp] 0007f 48 8b 8c 24 a0 00 00 00 mov rcx, QWORD PTR tv87[rsp] 00087 ff 94 24 a8 00 00 00 call QWORD PTR tv89[rsp] ; 845 : ; 846 : if (m_bAppend) 0008e 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00096 0f b6 00 movzx eax, BYTE PTR [rax] 00099 85 c0 test eax, eax 0009b 0f 84 7f 03 00 00 je $LN22@Commit ; 847 : { ; 848 : // Èç¹ûÒѾ­´æÔÚ±í¸ñ£¬Ôòɾ³ýËü ; 849 : m_stempString= _T("[") + m_sSheetName + _T("$A1:IV65536]"); 000a1 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 000a9 48 83 c0 30 add rax, 48 ; 00000030H 000ad 4c 8b c0 mov r8, rax 000b0 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331570 000b7 48 8d 8c 24 d8 00 00 00 lea rcx, QWORD PTR $T18[rsp] 000bf e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z ; ATL::operator+ 000c4 48 89 84 24 b0 00 00 00 mov QWORD PTR tv661[rsp], rax 000cc 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR tv661[rsp] 000d4 48 89 84 24 b8 00 00 00 mov QWORD PTR tv631[rsp], rax 000dc 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331569 000e3 48 8b 94 24 b8 00 00 00 mov rdx, QWORD PTR tv631[rsp] 000eb 48 8d 8c 24 d0 00 00 00 lea rcx, QWORD PTR $T17[rsp] 000f3 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 000f8 48 89 84 24 c0 00 00 00 mov QWORD PTR tv662[rsp], rax 00100 48 8b 84 24 c0 00 00 00 mov rax, QWORD PTR tv662[rsp] 00108 48 89 84 24 c8 00 00 00 mov QWORD PTR tv633[rsp], rax 00110 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00118 48 83 c0 28 add rax, 40 ; 00000028H 0011c 48 8b 94 24 c8 00 00 00 mov rdx, QWORD PTR tv633[rsp] 00124 48 8b c8 mov rcx, rax 00127 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 0012c 90 npad 1 0012d 48 8d 8c 24 d0 00 00 00 lea rcx, QWORD PTR $T17[rsp] 00135 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0013a 90 npad 1 0013b 48 8d 8c 24 d8 00 00 00 lea rcx, QWORD PTR $T18[rsp] 00143 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 850 : m_stempSql.Format (_T("DROP TABLE %s"), m_stempString); 00148 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00150 48 83 c0 20 add rax, 32 ; 00000020H 00154 48 89 84 24 e0 00 00 00 mov QWORD PTR tv146[rsp], rax 0015c 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00164 4c 8b 40 28 mov r8, QWORD PTR [rax+40] 00168 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331571 0016f 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR tv146[rsp] 00177 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format 0017c 90 npad 1 ; 851 : try ; 852 : { ; 853 : m_Database->ExecuteSQL(m_stempSql); 0017d 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00185 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0018c 48 89 84 24 f0 00 00 00 mov QWORD PTR tv160[rsp], rax 00194 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 0019c 48 83 c0 20 add rax, 32 ; 00000020H 001a0 48 8b c8 mov rcx, rax 001a3 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 001a8 48 89 84 24 e8 00 00 00 mov QWORD PTR tv158[rsp], rax 001b0 48 8b 94 24 e8 00 00 00 mov rdx, QWORD PTR tv158[rsp] 001b8 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR tv160[rsp] 001c0 e8 00 00 00 00 call ?ExecuteSQL@CDatabase@@QEAAXPEB_W@Z ; CDatabase::ExecuteSQL 001c5 90 npad 1 __tryend$?Commit@CSpreadSheet@@QEAA_NXZ$1: 001c6 eb 0a jmp SHORT $LN64@Commit $LN65@Commit: ; 854 : } ; 855 : catch(CDBException *pEx) ; 856 : { ; 857 : m_sLastError = pEx->m_strError; ; 858 : m_Database->Close(); ; 859 : pEx->Delete(); ; 860 : return false; 001c8 0f b6 44 24 30 movzx eax, BYTE PTR $T1[rsp] 001cd e9 c4 0b 00 00 jmp $LN1@Commit $LN64@Commit: ; 861 : } ; 862 : ; 863 : // ´´½¨Ò»¸öеıí¸ñ ; 864 : m_stempSql.Format(_T("CREATE TABLE [%s$A1:IV65536] ("), m_sSheetName); 001d2 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 001da 48 83 c0 20 add rax, 32 ; 00000020H 001de 48 89 84 24 00 01 00 00 mov QWORD PTR tv183[rsp], rax 001e6 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 001ee 4c 8b 40 30 mov r8, QWORD PTR [rax+48] 001f2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331574 001f9 48 8b 8c 24 00 01 00 00 mov rcx, QWORD PTR tv183[rsp] 00201 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 865 : for (int j = 0; j < m_aFieldNames.GetSize(); j++) 00206 c7 44 24 38 00 00 00 00 mov DWORD PTR j$5[rsp], 0 0020e eb 0a jmp SHORT $LN4@Commit $LN2@Commit: 00210 8b 44 24 38 mov eax, DWORD PTR j$5[rsp] 00214 ff c0 inc eax 00216 89 44 24 38 mov DWORD PTR j$5[rsp], eax $LN4@Commit: 0021a 48 63 44 24 38 movsxd rax, DWORD PTR j$5[rsp] 0021f 48 89 84 24 08 01 00 00 mov QWORD PTR tv185[rsp], rax 00227 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 0022f 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 00236 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0023b 48 8b 8c 24 08 01 00 00 mov rcx, QWORD PTR tv185[rsp] 00243 48 3b c8 cmp rcx, rax 00246 0f 8d 74 01 00 00 jge $LN3@Commit ; 866 : { ; 867 : m_stempSql = m_stempSql + _T("[") + m_aFieldNames.GetAt(j) +_T("]") + _T(" char(255), "); 0024c 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00254 48 05 80 00 00 00 add rax, 128 ; 00000080H 0025a 48 89 84 24 10 01 00 00 mov QWORD PTR tv204[rsp], rax 00262 48 63 44 24 38 movsxd rax, DWORD PTR j$5[rsp] 00267 48 8b d0 mov rdx, rax 0026a 48 8b 8c 24 10 01 00 00 mov rcx, QWORD PTR tv204[rsp] 00272 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00277 48 89 84 24 28 01 00 00 mov QWORD PTR tv218[rsp], rax 0027f 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00287 48 83 c0 20 add rax, 32 ; 00000020H 0028b 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331577 00292 48 8b d0 mov rdx, rax 00295 48 8d 8c 24 80 01 00 00 lea rcx, QWORD PTR $T23[rsp] 0029d e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 002a2 48 89 84 24 18 01 00 00 mov QWORD PTR tv663[rsp], rax 002aa 48 8b 84 24 18 01 00 00 mov rax, QWORD PTR tv663[rsp] 002b2 48 89 84 24 20 01 00 00 mov QWORD PTR tv636[rsp], rax 002ba 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR tv636[rsp] 002c2 48 89 84 24 30 01 00 00 mov QWORD PTR tv216[rsp], rax 002ca 4c 8b 84 24 28 01 00 00 mov r8, QWORD PTR tv218[rsp] 002d2 48 8b 94 24 30 01 00 00 mov rdx, QWORD PTR tv216[rsp] 002da 48 8d 8c 24 78 01 00 00 lea rcx, QWORD PTR $T22[rsp] 002e2 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 002e7 48 89 84 24 38 01 00 00 mov QWORD PTR tv664[rsp], rax 002ef 48 8b 84 24 38 01 00 00 mov rax, QWORD PTR tv664[rsp] 002f7 48 89 84 24 40 01 00 00 mov QWORD PTR tv638[rsp], rax 002ff 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331576 00306 48 8b 94 24 40 01 00 00 mov rdx, QWORD PTR tv638[rsp] 0030e 48 8d 8c 24 70 01 00 00 lea rcx, QWORD PTR $T21[rsp] 00316 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0031b 48 89 84 24 48 01 00 00 mov QWORD PTR tv665[rsp], rax 00323 48 8b 84 24 48 01 00 00 mov rax, QWORD PTR tv665[rsp] 0032b 48 89 84 24 50 01 00 00 mov QWORD PTR tv640[rsp], rax 00333 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331575 0033a 48 8b 94 24 50 01 00 00 mov rdx, QWORD PTR tv640[rsp] 00342 48 8d 8c 24 68 01 00 00 lea rcx, QWORD PTR $T20[rsp] 0034a e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0034f 48 89 84 24 58 01 00 00 mov QWORD PTR tv666[rsp], rax 00357 48 8b 84 24 58 01 00 00 mov rax, QWORD PTR tv666[rsp] 0035f 48 89 84 24 60 01 00 00 mov QWORD PTR tv642[rsp], rax 00367 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 0036f 48 83 c0 20 add rax, 32 ; 00000020H 00373 48 8b 94 24 60 01 00 00 mov rdx, QWORD PTR tv642[rsp] 0037b 48 8b c8 mov rcx, rax 0037e e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 00383 90 npad 1 00384 48 8d 8c 24 68 01 00 00 lea rcx, QWORD PTR $T20[rsp] 0038c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00391 90 npad 1 00392 48 8d 8c 24 70 01 00 00 lea rcx, QWORD PTR $T21[rsp] 0039a e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0039f 90 npad 1 003a0 48 8d 8c 24 78 01 00 00 lea rcx, QWORD PTR $T22[rsp] 003a8 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 003ad 90 npad 1 003ae 48 8d 8c 24 80 01 00 00 lea rcx, QWORD PTR $T23[rsp] 003b6 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 868 : } 003bb e9 50 fe ff ff jmp $LN2@Commit $LN3@Commit: ; 869 : m_stempSql.Delete(m_stempSql.GetLength()-2, 2); 003c0 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 003c8 48 83 c0 20 add rax, 32 ; 00000020H 003cc 48 89 84 24 88 01 00 00 mov QWORD PTR tv243[rsp], rax 003d4 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 003dc 48 83 c0 20 add rax, 32 ; 00000020H 003e0 48 8b c8 mov rcx, rax 003e3 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 003e8 83 e8 02 sub eax, 2 003eb 41 b8 02 00 00 00 mov r8d, 2 003f1 8b d0 mov edx, eax 003f3 48 8b 8c 24 88 01 00 00 mov rcx, QWORD PTR tv243[rsp] 003fb e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 870 : m_stempSql += _T(")"); 00400 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00408 48 83 c0 20 add rax, 32 ; 00000020H 0040c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331578 00413 48 8b c8 mov rcx, rax 00416 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= ; 871 : } 0041b e9 4a 02 00 00 jmp $LN23@Commit $LN22@Commit: ; 872 : else ; 873 : { ; 874 : // ´´½¨Ò»¸öеıí¸ñ ; 875 : m_stempSql.Format(_T("CREATE TABLE [%s] ("), m_sSheetName); 00420 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00428 48 83 c0 20 add rax, 32 ; 00000020H 0042c 48 89 84 24 90 01 00 00 mov QWORD PTR tv252[rsp], rax 00434 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 0043c 4c 8b 40 30 mov r8, QWORD PTR [rax+48] 00440 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331579 00447 48 8b 8c 24 90 01 00 00 mov rcx, QWORD PTR tv252[rsp] 0044f e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 876 : for (int i = 0; i < m_aFieldNames.GetSize(); i++) 00454 c7 44 24 3c 00 00 00 00 mov DWORD PTR i$6[rsp], 0 0045c eb 0a jmp SHORT $LN7@Commit $LN5@Commit: 0045e 8b 44 24 3c mov eax, DWORD PTR i$6[rsp] 00462 ff c0 inc eax 00464 89 44 24 3c mov DWORD PTR i$6[rsp], eax $LN7@Commit: 00468 48 63 44 24 3c movsxd rax, DWORD PTR i$6[rsp] 0046d 48 89 84 24 98 01 00 00 mov QWORD PTR tv254[rsp], rax 00475 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 0047d 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 00484 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00489 48 8b 8c 24 98 01 00 00 mov rcx, QWORD PTR tv254[rsp] 00491 48 3b c8 cmp rcx, rax 00494 0f 8d 74 01 00 00 jge $LN6@Commit ; 877 : { ; 878 : m_stempSql = m_stempSql + _T("[") + m_aFieldNames.GetAt(i) +_T("]") + _T(" char(255), "); 0049a 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 004a2 48 05 80 00 00 00 add rax, 128 ; 00000080H 004a8 48 89 84 24 a0 01 00 00 mov QWORD PTR tv273[rsp], rax 004b0 48 63 44 24 3c movsxd rax, DWORD PTR i$6[rsp] 004b5 48 8b d0 mov rdx, rax 004b8 48 8b 8c 24 a0 01 00 00 mov rcx, QWORD PTR tv273[rsp] 004c0 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 004c5 48 89 84 24 b8 01 00 00 mov QWORD PTR tv287[rsp], rax 004cd 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 004d5 48 83 c0 20 add rax, 32 ; 00000020H 004d9 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331582 004e0 48 8b d0 mov rdx, rax 004e3 48 8d 8c 24 10 02 00 00 lea rcx, QWORD PTR $T27[rsp] 004eb e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 004f0 48 89 84 24 a8 01 00 00 mov QWORD PTR tv667[rsp], rax 004f8 48 8b 84 24 a8 01 00 00 mov rax, QWORD PTR tv667[rsp] 00500 48 89 84 24 b0 01 00 00 mov QWORD PTR tv644[rsp], rax 00508 48 8b 84 24 b0 01 00 00 mov rax, QWORD PTR tv644[rsp] 00510 48 89 84 24 c0 01 00 00 mov QWORD PTR tv285[rsp], rax 00518 4c 8b 84 24 b8 01 00 00 mov r8, QWORD PTR tv287[rsp] 00520 48 8b 94 24 c0 01 00 00 mov rdx, QWORD PTR tv285[rsp] 00528 48 8d 8c 24 08 02 00 00 lea rcx, QWORD PTR $T26[rsp] 00530 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 00535 48 89 84 24 c8 01 00 00 mov QWORD PTR tv668[rsp], rax 0053d 48 8b 84 24 c8 01 00 00 mov rax, QWORD PTR tv668[rsp] 00545 48 89 84 24 d0 01 00 00 mov QWORD PTR tv646[rsp], rax 0054d 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331581 00554 48 8b 94 24 d0 01 00 00 mov rdx, QWORD PTR tv646[rsp] 0055c 48 8d 8c 24 00 02 00 00 lea rcx, QWORD PTR $T25[rsp] 00564 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 00569 48 89 84 24 d8 01 00 00 mov QWORD PTR tv669[rsp], rax 00571 48 8b 84 24 d8 01 00 00 mov rax, QWORD PTR tv669[rsp] 00579 48 89 84 24 e0 01 00 00 mov QWORD PTR tv648[rsp], rax 00581 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331580 00588 48 8b 94 24 e0 01 00 00 mov rdx, QWORD PTR tv648[rsp] 00590 48 8d 8c 24 f8 01 00 00 lea rcx, QWORD PTR $T24[rsp] 00598 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 0059d 48 89 84 24 e8 01 00 00 mov QWORD PTR tv670[rsp], rax 005a5 48 8b 84 24 e8 01 00 00 mov rax, QWORD PTR tv670[rsp] 005ad 48 89 84 24 f0 01 00 00 mov QWORD PTR tv650[rsp], rax 005b5 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 005bd 48 83 c0 20 add rax, 32 ; 00000020H 005c1 48 8b 94 24 f0 01 00 00 mov rdx, QWORD PTR tv650[rsp] 005c9 48 8b c8 mov rcx, rax 005cc e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 005d1 90 npad 1 005d2 48 8d 8c 24 f8 01 00 00 lea rcx, QWORD PTR $T24[rsp] 005da e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 005df 90 npad 1 005e0 48 8d 8c 24 00 02 00 00 lea rcx, QWORD PTR $T25[rsp] 005e8 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 005ed 90 npad 1 005ee 48 8d 8c 24 08 02 00 00 lea rcx, QWORD PTR $T26[rsp] 005f6 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 005fb 90 npad 1 005fc 48 8d 8c 24 10 02 00 00 lea rcx, QWORD PTR $T27[rsp] 00604 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 879 : } 00609 e9 50 fe ff ff jmp $LN5@Commit $LN6@Commit: ; 880 : m_stempSql.Delete(m_stempSql.GetLength()-2, 2); 0060e 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00616 48 83 c0 20 add rax, 32 ; 00000020H 0061a 48 89 84 24 18 02 00 00 mov QWORD PTR tv312[rsp], rax 00622 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 0062a 48 83 c0 20 add rax, 32 ; 00000020H 0062e 48 8b c8 mov rcx, rax 00631 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00636 83 e8 02 sub eax, 2 00639 41 b8 02 00 00 00 mov r8d, 2 0063f 8b d0 mov edx, eax 00641 48 8b 8c 24 18 02 00 00 mov rcx, QWORD PTR tv312[rsp] 00649 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 881 : m_stempSql += _T(")"); 0064e 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00656 48 83 c0 20 add rax, 32 ; 00000020H 0065a 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331583 00661 48 8b c8 mov rcx, rax 00664 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= 00669 90 npad 1 $LN23@Commit: ; 882 : } ; 883 : ; 884 : try ; 885 : { ; 886 : m_Database->ExecuteSQL(m_stempSql); 0066a 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00672 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00679 48 89 84 24 28 02 00 00 mov QWORD PTR tv328[rsp], rax 00681 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00689 48 83 c0 20 add rax, 32 ; 00000020H 0068d 48 8b c8 mov rcx, rax 00690 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00695 48 89 84 24 20 02 00 00 mov QWORD PTR tv326[rsp], rax 0069d 48 8b 94 24 20 02 00 00 mov rdx, QWORD PTR tv326[rsp] 006a5 48 8b 8c 24 28 02 00 00 mov rcx, QWORD PTR tv328[rsp] 006ad e8 00 00 00 00 call ?ExecuteSQL@CDatabase@@QEAAXPEB_W@Z ; CDatabase::ExecuteSQL ; 887 : if (!m_bAppend) 006b2 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 006ba 0f b6 00 movzx eax, BYTE PTR [rax] 006bd 85 c0 test eax, eax 006bf 75 2d jne SHORT $LN26@Commit ; 888 : { ; 889 : m_dTotalColumns = m_aFieldNames.GetSize(); 006c1 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 006c9 48 05 80 00 00 00 add rax, 128 ; 00000080H 006cf 48 8b c8 mov rcx, rax 006d2 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 006d7 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 006df 66 89 41 0c mov WORD PTR [rcx+12], ax ; 890 : m_bAppend = true; 006e3 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 006eb c6 00 01 mov BYTE PTR [rax], 1 $LN26@Commit: __tryend$?Commit@CSpreadSheet@@QEAA_NXZ$3: 006ee eb 0a jmp SHORT $LN66@Commit $LN67@Commit: ; 891 : } ; 892 : } ; 893 : catch(CDBException *pEx) ; 894 : { ; 895 : m_sLastError = pEx->m_strError; ; 896 : m_Database->Close(); ; 897 : pEx->Delete(); ; 898 : ; 899 : return false; 006f0 0f b6 44 24 31 movzx eax, BYTE PTR $T2[rsp] 006f5 e9 9c 06 00 00 jmp $LN1@Commit $LN66@Commit: ; 900 : } ; 901 : ; 902 : // ±£´æÒѸıäµÄÊý¾Ý ; 903 : for (int k = 1; k < m_dTotalRows; k++) 006fa c7 44 24 34 01 00 00 00 mov DWORD PTR k$4[rsp], 1 00702 eb 0a jmp SHORT $LN10@Commit $LN8@Commit: 00704 8b 44 24 34 mov eax, DWORD PTR k$4[rsp] 00708 ff c0 inc eax 0070a 89 44 24 34 mov DWORD PTR k$4[rsp], eax $LN10@Commit: 0070e 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00716 8b 40 08 mov eax, DWORD PTR [rax+8] 00719 39 44 24 34 cmp DWORD PTR k$4[rsp], eax 0071d 0f 8d 83 03 00 00 jge $LN9@Commit ; 904 : { ; 905 : ReadRow(m_atempArray, k+1); 00723 8b 44 24 34 mov eax, DWORD PTR k$4[rsp] 00727 ff c0 inc eax 00729 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 00731 48 83 c1 58 add rcx, 88 ; 00000058H 00735 44 8b c0 mov r8d, eax 00738 48 8b d1 mov rdx, rcx 0073b 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 00743 e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow ; 906 : ; 907 : // ´´½¨²åÈëÐÐSQLÓï¾ä ; 908 : m_stempSql.Format(_T("INSERT INTO [%s$A1:IV%d] ("), m_sSheetName, k); 00748 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00750 48 83 c0 20 add rax, 32 ; 00000020H 00754 48 89 84 24 38 02 00 00 mov QWORD PTR tv369[rsp], rax 0075c 44 8b 4c 24 34 mov r9d, DWORD PTR k$4[rsp] 00761 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00769 4c 8b 40 30 mov r8, QWORD PTR [rax+48] 0076d 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331587 00774 48 8b 8c 24 38 02 00 00 mov rcx, QWORD PTR tv369[rsp] 0077c e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 909 : for (int i = 0; i < m_atempArray.GetSize(); i++) 00781 c7 44 24 40 00 00 00 00 mov DWORD PTR i$7[rsp], 0 00789 eb 0a jmp SHORT $LN13@Commit $LN11@Commit: 0078b 8b 44 24 40 mov eax, DWORD PTR i$7[rsp] 0078f ff c0 inc eax 00791 89 44 24 40 mov DWORD PTR i$7[rsp], eax $LN13@Commit: 00795 48 63 44 24 40 movsxd rax, DWORD PTR i$7[rsp] 0079a 48 89 84 24 40 02 00 00 mov QWORD PTR tv371[rsp], rax 007a2 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 007aa 48 83 c1 58 add rcx, 88 ; 00000058H 007ae e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 007b3 48 8b 8c 24 40 02 00 00 mov rcx, QWORD PTR tv371[rsp] 007bb 48 3b c8 cmp rcx, rax 007be 0f 8d c8 00 00 00 jge $LN12@Commit ; 910 : { ; 911 : m_stempString.Format(_T("[%s], "), m_aFieldNames.GetAt(i)); 007c4 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 007cc 48 83 c0 28 add rax, 40 ; 00000028H 007d0 48 89 84 24 50 02 00 00 mov QWORD PTR tv388[rsp], rax 007d8 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 007e0 48 05 80 00 00 00 add rax, 128 ; 00000080H 007e6 48 89 84 24 48 02 00 00 mov QWORD PTR tv384[rsp], rax 007ee 48 63 44 24 40 movsxd rax, DWORD PTR i$7[rsp] 007f3 48 8b d0 mov rdx, rax 007f6 48 8b 8c 24 48 02 00 00 mov rcx, QWORD PTR tv384[rsp] 007fe e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00803 4c 8b 00 mov r8, QWORD PTR [rax] 00806 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331588 0080d 48 8b 8c 24 50 02 00 00 mov rcx, QWORD PTR tv388[rsp] 00815 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 912 : m_stempSql = m_stempSql + m_stempString; 0081a 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00822 48 83 c0 28 add rax, 40 ; 00000028H 00826 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 0082e 48 83 c1 20 add rcx, 32 ; 00000020H 00832 4c 8b c0 mov r8, rax 00835 48 8b d1 mov rdx, rcx 00838 48 8d 8c 24 68 02 00 00 lea rcx, QWORD PTR $T29[rsp] 00840 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 00845 48 89 84 24 58 02 00 00 mov QWORD PTR tv671[rsp], rax 0084d 48 8b 84 24 58 02 00 00 mov rax, QWORD PTR tv671[rsp] 00855 48 89 84 24 60 02 00 00 mov QWORD PTR tv653[rsp], rax 0085d 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00865 48 83 c0 20 add rax, 32 ; 00000020H 00869 48 8b 94 24 60 02 00 00 mov rdx, QWORD PTR tv653[rsp] 00871 48 8b c8 mov rcx, rax 00874 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 00879 90 npad 1 0087a 48 8d 8c 24 68 02 00 00 lea rcx, QWORD PTR $T29[rsp] 00882 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 913 : } 00887 e9 ff fe ff ff jmp $LN11@Commit $LN12@Commit: ; 914 : m_stempSql.Delete(m_stempSql.GetLength()-2, 2); 0088c 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00894 48 83 c0 20 add rax, 32 ; 00000020H 00898 48 89 84 24 70 02 00 00 mov QWORD PTR tv414[rsp], rax 008a0 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 008a8 48 83 c0 20 add rax, 32 ; 00000020H 008ac 48 8b c8 mov rcx, rax 008af e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 008b4 83 e8 02 sub eax, 2 008b7 41 b8 02 00 00 00 mov r8d, 2 008bd 8b d0 mov edx, eax 008bf 48 8b 8c 24 70 02 00 00 mov rcx, QWORD PTR tv414[rsp] 008c7 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 915 : m_stempSql += _T(") VALUES ("); 008cc 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 008d4 48 83 c0 20 add rax, 32 ; 00000020H 008d8 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331589 008df 48 8b c8 mov rcx, rax 008e2 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= ; 916 : for (int j = 0; j < m_atempArray.GetSize(); j++) 008e7 c7 44 24 44 00 00 00 00 mov DWORD PTR j$8[rsp], 0 008ef eb 0a jmp SHORT $LN16@Commit $LN14@Commit: 008f1 8b 44 24 44 mov eax, DWORD PTR j$8[rsp] 008f5 ff c0 inc eax 008f7 89 44 24 44 mov DWORD PTR j$8[rsp], eax $LN16@Commit: 008fb 48 63 44 24 44 movsxd rax, DWORD PTR j$8[rsp] 00900 48 89 84 24 78 02 00 00 mov QWORD PTR tv418[rsp], rax 00908 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 00910 48 83 c1 58 add rcx, 88 ; 00000058H 00914 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00919 48 8b 8c 24 78 02 00 00 mov rcx, QWORD PTR tv418[rsp] 00921 48 3b c8 cmp rcx, rax 00924 0f 8d c6 00 00 00 jge $LN15@Commit ; 917 : { ; 918 : m_stempString.Format(_T("'%s', "), m_atempArray.GetAt(j)); 0092a 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00932 48 83 c0 28 add rax, 40 ; 00000028H 00936 48 89 84 24 88 02 00 00 mov QWORD PTR tv435[rsp], rax 0093e 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00946 48 83 c0 58 add rax, 88 ; 00000058H 0094a 48 89 84 24 80 02 00 00 mov QWORD PTR tv431[rsp], rax 00952 48 63 44 24 44 movsxd rax, DWORD PTR j$8[rsp] 00957 48 8b d0 mov rdx, rax 0095a 48 8b 8c 24 80 02 00 00 mov rcx, QWORD PTR tv431[rsp] 00962 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00967 4c 8b 00 mov r8, QWORD PTR [rax] 0096a 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331590 00971 48 8b 8c 24 88 02 00 00 mov rcx, QWORD PTR tv435[rsp] 00979 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 919 : m_stempSql = m_stempSql + m_stempString; 0097e 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00986 48 83 c0 28 add rax, 40 ; 00000028H 0098a 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 00992 48 83 c1 20 add rcx, 32 ; 00000020H 00996 4c 8b c0 mov r8, rax 00999 48 8b d1 mov rdx, rcx 0099c 48 8d 8c 24 a0 02 00 00 lea rcx, QWORD PTR $T30[rsp] 009a4 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 009a9 48 89 84 24 90 02 00 00 mov QWORD PTR tv672[rsp], rax 009b1 48 8b 84 24 90 02 00 00 mov rax, QWORD PTR tv672[rsp] 009b9 48 89 84 24 98 02 00 00 mov QWORD PTR tv655[rsp], rax 009c1 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 009c9 48 83 c0 20 add rax, 32 ; 00000020H 009cd 48 8b 94 24 98 02 00 00 mov rdx, QWORD PTR tv655[rsp] 009d5 48 8b c8 mov rcx, rax 009d8 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 009dd 90 npad 1 009de 48 8d 8c 24 a0 02 00 00 lea rcx, QWORD PTR $T30[rsp] 009e6 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 920 : } 009eb e9 01 ff ff ff jmp $LN14@Commit $LN15@Commit: ; 921 : m_stempSql.Delete(m_stempSql.GetLength()-2, 2); 009f0 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 009f8 48 83 c0 20 add rax, 32 ; 00000020H 009fc 48 89 84 24 a8 02 00 00 mov QWORD PTR tv461[rsp], rax 00a04 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00a0c 48 83 c0 20 add rax, 32 ; 00000020H 00a10 48 8b c8 mov rcx, rax 00a13 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00a18 83 e8 02 sub eax, 2 00a1b 41 b8 02 00 00 00 mov r8d, 2 00a21 8b d0 mov edx, eax 00a23 48 8b 8c 24 a8 02 00 00 mov rcx, QWORD PTR tv461[rsp] 00a2b e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 922 : m_stempSql +=_T(")"); 00a30 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00a38 48 83 c0 20 add rax, 32 ; 00000020H 00a3c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331591 00a43 48 8b c8 mov rcx, rax 00a46 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= 00a4b 90 npad 1 ; 923 : ; 924 : // ²åÈëÐÐ ; 925 : try ; 926 : { ; 927 : m_Database->ExecuteSQL(m_stempSql); 00a4c 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00a54 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00a5b 48 89 84 24 b8 02 00 00 mov QWORD PTR tv477[rsp], rax 00a63 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00a6b 48 83 c0 20 add rax, 32 ; 00000020H 00a6f 48 8b c8 mov rcx, rax 00a72 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00a77 48 89 84 24 b0 02 00 00 mov QWORD PTR tv475[rsp], rax 00a7f 48 8b 94 24 b0 02 00 00 mov rdx, QWORD PTR tv475[rsp] 00a87 48 8b 8c 24 b8 02 00 00 mov rcx, QWORD PTR tv477[rsp] 00a8f e8 00 00 00 00 call ?ExecuteSQL@CDatabase@@QEAAXPEB_W@Z ; CDatabase::ExecuteSQL 00a94 90 npad 1 __tryend$?Commit@CSpreadSheet@@QEAA_NXZ$5: 00a95 eb 0a jmp SHORT $LN68@Commit $LN69@Commit: ; 928 : } ; 929 : catch(CDBException *pEx) ; 930 : { ; 931 : m_sLastError = pEx->m_strError; ; 932 : m_Database->Close(); ; 933 : pEx->Delete(); ; 934 : return false; 00a97 0f b6 44 24 32 movzx eax, BYTE PTR $T3[rsp] 00a9c e9 f5 02 00 00 jmp $LN1@Commit $LN68@Commit: ; 935 : } ; 936 : } 00aa1 e9 5e fc ff ff jmp $LN8@Commit $LN9@Commit: ; 937 : m_Database->Close(); 00aa6 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00aae 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00ab5 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 00abd 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00ac4 48 8b 00 mov rax, QWORD PTR [rax] 00ac7 ff 50 28 call QWORD PTR [rax+40] ; 938 : m_bTransaction = false; 00aca 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00ad2 c6 40 03 00 mov BYTE PTR [rax+3], 0 ; 939 : return true; 00ad6 b0 01 mov al, 1 00ad8 e9 b9 02 00 00 jmp $LN1@Commit ; 940 : } 00add e9 b4 02 00 00 jmp $LN1@Commit $LN20@Commit: ; 941 : else // µ±ÎļþÊÇ·Ö¸ô·û·Ö¸ôµÄÎı¾Îļþʱ ; 942 : { ; 943 : try ; 944 : { ; 945 : CFile *File = NULL; 00ae2 48 c7 44 24 58 00 00 00 00 mov QWORD PTR File$11[rsp], 0 ; 946 : File = new CFile(m_sFile, CFile::modeCreate | CFile::modeWrite | CFile::shareDenyNone); 00aeb b9 28 00 00 00 mov ecx, 40 ; 00000028H 00af0 e8 00 00 00 00 call ??2CObject@@SAPEAX_K@Z ; CObject::operator new 00af5 48 89 44 24 70 mov QWORD PTR $T14[rsp], rax 00afa 48 83 7c 24 70 00 cmp QWORD PTR $T14[rsp], 0 00b00 74 3b je SHORT $LN32@Commit 00b02 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00b0a 48 83 c0 40 add rax, 64 ; 00000040H 00b0e 48 8b c8 mov rcx, rax 00b11 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00b16 48 89 84 24 c8 02 00 00 mov QWORD PTR tv522[rsp], rax 00b1e 41 b8 41 10 00 00 mov r8d, 4161 ; 00001041H 00b24 48 8b 94 24 c8 02 00 00 mov rdx, QWORD PTR tv522[rsp] 00b2c 48 8b 4c 24 70 mov rcx, QWORD PTR $T14[rsp] 00b31 e8 00 00 00 00 call ??0CFile@@QEAA@PEB_WI@Z ; CFile::CFile 00b36 48 89 44 24 78 mov QWORD PTR tv523[rsp], rax 00b3b eb 09 jmp SHORT $LN33@Commit $LN32@Commit: 00b3d 48 c7 44 24 78 00 00 00 00 mov QWORD PTR tv523[rsp], 0 $LN33@Commit: 00b46 48 8b 44 24 78 mov rax, QWORD PTR tv523[rsp] 00b4b 48 89 84 24 d0 02 00 00 mov QWORD PTR $T32[rsp], rax 00b53 48 8b 84 24 d0 02 00 00 mov rax, QWORD PTR $T32[rsp] 00b5b 48 89 44 24 58 mov QWORD PTR File$11[rsp], rax ; 947 : if (File != NULL) 00b60 48 83 7c 24 58 00 cmp QWORD PTR File$11[rsp], 0 00b66 0f 84 0b 02 00 00 je $LN29@Commit ; 948 : { ; 949 : CArchive *Archive = NULL; 00b6c 48 c7 44 24 50 00 00 00 00 mov QWORD PTR Archive$10[rsp], 0 ; 950 : Archive = new CArchive(File, CArchive::store); 00b75 b9 70 00 00 00 mov ecx, 112 ; 00000070H 00b7a e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 00b7f 48 89 84 24 80 00 00 00 mov QWORD PTR $T15[rsp], rax 00b87 48 83 bc 24 80 00 00 00 00 cmp QWORD PTR $T15[rsp], 0 00b90 74 2e je SHORT $LN34@Commit 00b92 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00b9b 41 b9 00 10 00 00 mov r9d, 4096 ; 00001000H 00ba1 45 33 c0 xor r8d, r8d 00ba4 48 8b 54 24 58 mov rdx, QWORD PTR File$11[rsp] 00ba9 48 8b 8c 24 80 00 00 00 mov rcx, QWORD PTR $T15[rsp] 00bb1 e8 00 00 00 00 call ??0CArchive@@QEAA@PEAVCFile@@IHPEAX@Z ; CArchive::CArchive 00bb6 48 89 84 24 88 00 00 00 mov QWORD PTR tv539[rsp], rax 00bbe eb 0c jmp SHORT $LN35@Commit $LN34@Commit: 00bc0 48 c7 84 24 88 00 00 00 00 00 00 00 mov QWORD PTR tv539[rsp], 0 $LN35@Commit: 00bcc 48 8b 84 24 88 00 00 00 mov rax, QWORD PTR tv539[rsp] 00bd4 48 89 84 24 d8 02 00 00 mov QWORD PTR $T33[rsp], rax 00bdc 48 8b 84 24 d8 02 00 00 mov rax, QWORD PTR $T33[rsp] 00be4 48 89 44 24 50 mov QWORD PTR Archive$10[rsp], rax ; 951 : if (Archive != NULL) 00be9 48 83 7c 24 50 00 cmp QWORD PTR Archive$10[rsp], 0 00bef 0f 84 35 01 00 00 je $LN30@Commit ; 952 : { ; 953 : for (int i = 0; i < m_aRows.GetSize(); i++) 00bf5 c7 44 24 48 00 00 00 00 mov DWORD PTR i$9[rsp], 0 00bfd eb 0a jmp SHORT $LN19@Commit $LN17@Commit: 00bff 8b 44 24 48 mov eax, DWORD PTR i$9[rsp] 00c03 ff c0 inc eax 00c05 89 44 24 48 mov DWORD PTR i$9[rsp], eax $LN19@Commit: 00c09 48 63 44 24 48 movsxd rax, DWORD PTR i$9[rsp] 00c0e 48 89 84 24 e0 02 00 00 mov QWORD PTR tv541[rsp], rax 00c16 48 8b 8c 24 30 03 00 00 mov rcx, QWORD PTR this$[rsp] 00c1e 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00c25 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00c2a 48 8b 8c 24 e0 02 00 00 mov rcx, QWORD PTR tv541[rsp] 00c32 48 3b c8 cmp rcx, rax 00c35 7d 56 jge SHORT $LN18@Commit ; 954 : { ; 955 : Archive->WriteString(m_aRows.GetAt(i)); 00c37 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00c3f 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 00c45 48 89 84 24 e8 02 00 00 mov QWORD PTR tv556[rsp], rax 00c4d 48 63 44 24 48 movsxd rax, DWORD PTR i$9[rsp] 00c52 48 8b d0 mov rdx, rax 00c55 48 8b 8c 24 e8 02 00 00 mov rcx, QWORD PTR tv556[rsp] 00c5d e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00c62 48 8b c8 mov rcx, rax 00c65 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00c6a 48 8b d0 mov rdx, rax 00c6d 48 8b 4c 24 50 mov rcx, QWORD PTR Archive$10[rsp] 00c72 e8 00 00 00 00 call ?WriteString@CArchive@@QEAAXPEB_W@Z ; CArchive::WriteString ; 956 : Archive->WriteString(_T("\r\n")); 00c77 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331599 00c7e 48 8b 4c 24 50 mov rcx, QWORD PTR Archive$10[rsp] 00c83 e8 00 00 00 00 call ?WriteString@CArchive@@QEAAXPEB_W@Z ; CArchive::WriteString ; 957 : } 00c88 e9 72 ff ff ff jmp $LN17@Commit $LN18@Commit: ; 958 : delete Archive; 00c8d 48 8b 44 24 50 mov rax, QWORD PTR Archive$10[rsp] 00c92 48 89 84 24 90 00 00 00 mov QWORD PTR $T16[rsp], rax 00c9a 48 83 bc 24 90 00 00 00 00 cmp QWORD PTR $T16[rsp], 0 00ca3 74 1c je SHORT $LN36@Commit 00ca5 ba 01 00 00 00 mov edx, 1 00caa 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR $T16[rsp] 00cb2 e8 00 00 00 00 call ??_GCArchive@@QEAAPEAXI@Z 00cb7 48 89 84 24 f0 02 00 00 mov QWORD PTR tv567[rsp], rax 00cbf eb 0c jmp SHORT $LN37@Commit $LN36@Commit: 00cc1 48 c7 84 24 f0 02 00 00 00 00 00 00 mov QWORD PTR tv567[rsp], 0 $LN37@Commit: ; 959 : delete File; 00ccd 48 8b 44 24 58 mov rax, QWORD PTR File$11[rsp] 00cd2 48 89 44 24 60 mov QWORD PTR $T12[rsp], rax 00cd7 48 83 7c 24 60 00 cmp QWORD PTR $T12[rsp], 0 00cdd 74 2f je SHORT $LN38@Commit 00cdf 48 8b 44 24 60 mov rax, QWORD PTR $T12[rsp] 00ce4 48 8b 00 mov rax, QWORD PTR [rax] 00ce7 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00ceb 48 89 84 24 f8 02 00 00 mov QWORD PTR tv611[rsp], rax 00cf3 ba 01 00 00 00 mov edx, 1 00cf8 48 8b 4c 24 60 mov rcx, QWORD PTR $T12[rsp] 00cfd ff 94 24 f8 02 00 00 call QWORD PTR tv611[rsp] 00d04 48 89 84 24 00 03 00 00 mov QWORD PTR tv612[rsp], rax 00d0c eb 0c jmp SHORT $LN39@Commit $LN38@Commit: 00d0e 48 c7 84 24 00 03 00 00 00 00 00 00 mov QWORD PTR tv612[rsp], 0 $LN39@Commit: ; 960 : m_bTransaction = false; 00d1a 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00d22 c6 40 03 00 mov BYTE PTR [rax+3], 0 ; 961 : return true; 00d26 b0 01 mov al, 1 00d28 eb 6c jmp SHORT $LN1@Commit $LN30@Commit: ; 962 : } ; 963 : delete File; 00d2a 48 8b 44 24 58 mov rax, QWORD PTR File$11[rsp] 00d2f 48 89 44 24 68 mov QWORD PTR $T13[rsp], rax 00d34 48 83 7c 24 68 00 cmp QWORD PTR $T13[rsp], 0 00d3a 74 2f je SHORT $LN40@Commit 00d3c 48 8b 44 24 68 mov rax, QWORD PTR $T13[rsp] 00d41 48 8b 00 mov rax, QWORD PTR [rax] 00d44 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00d48 48 89 84 24 08 03 00 00 mov QWORD PTR tv625[rsp], rax 00d50 ba 01 00 00 00 mov edx, 1 00d55 48 8b 4c 24 68 mov rcx, QWORD PTR $T13[rsp] 00d5a ff 94 24 08 03 00 00 call QWORD PTR tv625[rsp] 00d61 48 89 84 24 10 03 00 00 mov QWORD PTR tv626[rsp], rax 00d69 eb 0c jmp SHORT $LN29@Commit $LN40@Commit: 00d6b 48 c7 84 24 10 03 00 00 00 00 00 00 mov QWORD PTR tv626[rsp], 0 $LN29@Commit: 00d77 eb 00 jmp SHORT $LN70@Commit $LN71@Commit: $LN70@Commit: ; 964 : } ; 965 : } ; 966 : catch(...) ; 967 : { ; 968 : } ; 969 : m_sLastError = _T("дÎļþʱ²úÉú´íÎó\n"); 00d79 48 8b 84 24 30 03 00 00 mov rax, QWORD PTR this$[rsp] 00d81 48 83 c0 50 add rax, 80 ; 00000050H 00d85 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331600 00d8c 48 8b c8 mov rcx, rax 00d8f e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 970 : return false; 00d94 32 c0 xor al, al $LN1@Commit: ; 971 : } ; 972 : } 00d96 48 81 c4 28 03 00 00 add rsp, 808 ; 00000328H 00d9d c3 ret 0 00d9e cc int 3 ?Commit@CSpreadSheet@@QEAA_NXZ ENDP ; CSpreadSheet::Commit _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d d8 00 00 00 lea rcx, QWORD PTR $T18[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d d0 00 00 00 lea rcx, QWORD PTR $T17[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$1@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::catch$14 ; 856 : { 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 8b ea mov rbp, rdx __catch$?Commit@CSpreadSheet@@QEAA_NXZ$0: ; 857 : m_sLastError = pEx->m_strError; 0000d 48 8b 85 f8 00 00 00 mov rax, QWORD PTR pEx$19[rbp] 00014 48 83 c0 18 add rax, 24 00018 48 8b 8d 30 03 00 00 mov rcx, QWORD PTR this$[rbp] 0001f 48 83 c1 50 add rcx, 80 ; 00000050H 00023 48 8b d0 mov rdx, rax 00026 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 858 : m_Database->Close(); 0002b 48 8b 85 30 03 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00039 48 8b 8d 30 03 00 00 mov rcx, QWORD PTR this$[rbp] 00040 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00047 48 8b 00 mov rax, QWORD PTR [rax] 0004a ff 50 28 call QWORD PTR [rax+40] ; 859 : pEx->Delete(); 0004d 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR pEx$19[rbp] 00054 e8 00 00 00 00 call ?Delete@CException@@QEAAXXZ ; CException::Delete ; 860 : return false; 00059 c6 45 30 00 mov BYTE PTR $T1[rbp], 0 0005d 48 8d 05 00 00 00 00 lea rax, $LN65@catch$14 00064 eb 07 jmp SHORT $LN72@catch$14 ; 861 : } 00066 48 8d 05 00 00 00 00 lea rax, __tryend$?Commit@CSpreadSheet@@QEAA_NXZ$1 $LN72@catch$14: 0006d 48 83 c4 30 add rsp, 48 ; 00000030H 00071 5d pop rbp 00072 c3 ret 0 00073 cc int 3 ?catch$14@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::catch$14 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 80 01 00 00 lea rcx, QWORD PTR $T23[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$2@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 78 01 00 00 lea rcx, QWORD PTR $T22[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$3@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$4 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 70 01 00 00 lea rcx, QWORD PTR $T21[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$4@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$4 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$5 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 68 01 00 00 lea rcx, QWORD PTR $T20[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$5@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$5 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$6 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 10 02 00 00 lea rcx, QWORD PTR $T27[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$6@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$6 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$7 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 08 02 00 00 lea rcx, QWORD PTR $T26[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$7@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$7 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$8 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 00 02 00 00 lea rcx, QWORD PTR $T25[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$8@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$8 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$9 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d f8 01 00 00 lea rcx, QWORD PTR $T24[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$9@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$9 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::catch$15 ; 894 : { 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 8b ea mov rbp, rdx __catch$?Commit@CSpreadSheet@@QEAA_NXZ$2: ; 895 : m_sLastError = pEx->m_strError; 0000d 48 8b 85 30 02 00 00 mov rax, QWORD PTR pEx$28[rbp] 00014 48 83 c0 18 add rax, 24 00018 48 8b 8d 30 03 00 00 mov rcx, QWORD PTR this$[rbp] 0001f 48 83 c1 50 add rcx, 80 ; 00000050H 00023 48 8b d0 mov rdx, rax 00026 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 896 : m_Database->Close(); 0002b 48 8b 85 30 03 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00039 48 8b 8d 30 03 00 00 mov rcx, QWORD PTR this$[rbp] 00040 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00047 48 8b 00 mov rax, QWORD PTR [rax] 0004a ff 50 28 call QWORD PTR [rax+40] ; 897 : pEx->Delete(); 0004d 48 8b 8d 30 02 00 00 mov rcx, QWORD PTR pEx$28[rbp] 00054 e8 00 00 00 00 call ?Delete@CException@@QEAAXXZ ; CException::Delete ; 898 : ; 899 : return false; 00059 c6 45 31 00 mov BYTE PTR $T2[rbp], 0 0005d 48 8d 05 00 00 00 00 lea rax, $LN67@catch$15 00064 eb 07 jmp SHORT $LN73@catch$15 ; 900 : } 00066 48 8d 05 00 00 00 00 lea rax, __tryend$?Commit@CSpreadSheet@@QEAA_NXZ$3 $LN73@catch$15: 0006d 48 83 c4 30 add rsp, 48 ; 00000030H 00071 5d pop rbp 00072 c3 ret 0 00073 cc int 3 ?catch$15@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::catch$15 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$10 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 68 02 00 00 lea rcx, QWORD PTR $T29[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$10@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$10 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$11 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d a0 02 00 00 lea rcx, QWORD PTR $T30[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$11@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$11 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::catch$16 ; 930 : { 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 8b ea mov rbp, rdx __catch$?Commit@CSpreadSheet@@QEAA_NXZ$4: ; 931 : m_sLastError = pEx->m_strError; 0000d 48 8b 85 c0 02 00 00 mov rax, QWORD PTR pEx$31[rbp] 00014 48 83 c0 18 add rax, 24 00018 48 8b 8d 30 03 00 00 mov rcx, QWORD PTR this$[rbp] 0001f 48 83 c1 50 add rcx, 80 ; 00000050H 00023 48 8b d0 mov rdx, rax 00026 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 932 : m_Database->Close(); 0002b 48 8b 85 30 03 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00039 48 8b 8d 30 03 00 00 mov rcx, QWORD PTR this$[rbp] 00040 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00047 48 8b 00 mov rax, QWORD PTR [rax] 0004a ff 50 28 call QWORD PTR [rax+40] ; 933 : pEx->Delete(); 0004d 48 8b 8d c0 02 00 00 mov rcx, QWORD PTR pEx$31[rbp] 00054 e8 00 00 00 00 call ?Delete@CException@@QEAAXXZ ; CException::Delete ; 934 : return false; 00059 c6 45 32 00 mov BYTE PTR $T3[rbp], 0 0005d 48 8d 05 00 00 00 00 lea rax, $LN69@catch$16 00064 eb 07 jmp SHORT $LN74@catch$16 ; 935 : } 00066 48 8d 05 00 00 00 00 lea rax, __tryend$?Commit@CSpreadSheet@@QEAA_NXZ$5 $LN74@catch$16: 0006d 48 83 c4 30 add rsp, 48 ; 00000030H 00071 5d pop rbp 00072 c3 ret 0 00073 cc int 3 ?catch$16@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::catch$16 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$12 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 70 mov rcx, QWORD PTR $T14[rbp] 0000d e8 00 00 00 00 call ??3CObject@@SAXPEAX@Z ; CObject::operator delete 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$12@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$12 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::dtor$13 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 ba 70 00 00 00 mov edx, 112 ; 00000070H 0000e 48 8b 8d 80 00 00 00 mov rcx, QWORD PTR $T15[rbp] 00015 e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete 0001a 48 83 c4 20 add rsp, 32 ; 00000020H 0001e 5d pop rbp 0001f c3 ret 0 ?dtor$13@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::dtor$13 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 $T2 = 49 $T3 = 50 k$4 = 52 j$5 = 56 i$6 = 60 i$7 = 64 j$8 = 68 i$9 = 72 Archive$10 = 80 File$11 = 88 $T12 = 96 $T13 = 104 $T14 = 112 tv523 = 120 $T15 = 128 tv539 = 136 $T16 = 144 tv85 = 152 tv87 = 160 tv89 = 168 tv661 = 176 tv631 = 184 tv662 = 192 tv633 = 200 $T17 = 208 $T18 = 216 tv146 = 224 tv158 = 232 tv160 = 240 pEx$19 = 248 tv183 = 256 tv185 = 264 tv204 = 272 tv663 = 280 tv636 = 288 tv218 = 296 tv216 = 304 tv664 = 312 tv638 = 320 tv665 = 328 tv640 = 336 tv666 = 344 tv642 = 352 $T20 = 360 $T21 = 368 $T22 = 376 $T23 = 384 tv243 = 392 tv252 = 400 tv254 = 408 tv273 = 416 tv667 = 424 tv644 = 432 tv287 = 440 tv285 = 448 tv668 = 456 tv646 = 464 tv669 = 472 tv648 = 480 tv670 = 488 tv650 = 496 $T24 = 504 $T25 = 512 $T26 = 520 $T27 = 528 tv312 = 536 tv326 = 544 tv328 = 552 pEx$28 = 560 tv369 = 568 tv371 = 576 tv384 = 584 tv388 = 592 tv671 = 600 tv653 = 608 $T29 = 616 tv414 = 624 tv418 = 632 tv431 = 640 tv435 = 648 tv672 = 656 tv655 = 664 $T30 = 672 tv461 = 680 tv475 = 688 tv477 = 696 pEx$31 = 704 tv522 = 712 $T32 = 720 $T33 = 728 tv541 = 736 tv556 = 744 tv567 = 752 tv611 = 760 tv612 = 768 tv625 = 776 tv626 = 784 this$ = 816 ?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::Commit'::`1'::catch$17 ; 967 : { 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 8b ea mov rbp, rdx __catch$?Commit@CSpreadSheet@@QEAA_NXZ$6: ; 968 : } 0000d 48 8d 05 00 00 00 00 lea rax, $LN71@catch$17 00014 48 83 c4 30 add rsp, 48 ; 00000030H 00018 5d pop rbp 00019 c3 ret 0 0001a cc int 3 ?catch$17@?0??Commit@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::Commit'::`1'::catch$17 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?BeginTransaction@CSpreadSheet@@QEAAXXZ _TEXT SEGMENT this$ = 8 ?BeginTransaction@CSpreadSheet@@QEAAXXZ PROC ; CSpreadSheet::BeginTransaction, COMDAT ; 834 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 835 : m_bTransaction = true; 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a c6 40 03 01 mov BYTE PTR [rax+3], 1 ; 836 : } 0000e c3 ret 0 ?BeginTransaction@CSpreadSheet@@QEAAXXZ ENDP ; CSpreadSheet::BeginTransaction _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z _TEXT SEGMENT tempRow$ = 32 tv80 = 40 tv95 = 48 this$ = 80 CellValue$ = 88 column$ = 96 row$ = 104 ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z PROC ; CSpreadSheet::ReadCell, COMDAT ; 798 : { $LN8: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 66 44 89 44 24 18 mov WORD PTR [rsp+24], r8w 0000b 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00010 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00015 48 83 ec 48 sub rsp, 72 ; 00000048H ; 799 : if (0 == column) 00019 0f bf 44 24 60 movsx eax, WORD PTR column$[rsp] 0001e 85 c0 test eax, eax 00020 75 1f jne SHORT $LN2@ReadCell ; 800 : { ; 801 : m_sLastError = _T("Áв»ÄÜΪ0\n"); 00022 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00027 48 83 c0 50 add rax, 80 ; 00000050H 0002b 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331505 00032 48 8b c8 mov rcx, rax 00035 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 802 : return false; 0003a 32 c0 xor al, al 0003c e9 ef 00 00 00 jmp $LN1@ReadCell $LN2@ReadCell: ; 803 : } ; 804 : ; 805 : int tempRow = m_dCurrentRow; 00041 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00046 8b 40 04 mov eax, DWORD PTR [rax+4] 00049 89 44 24 20 mov DWORD PTR tempRow$[rsp], eax ; 806 : if (row) 0004d 83 7c 24 68 00 cmp DWORD PTR row$[rsp], 0 00052 74 0c je SHORT $LN3@ReadCell ; 807 : { ; 808 : m_dCurrentRow = row; 00054 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00059 8b 4c 24 68 mov ecx, DWORD PTR row$[rsp] 0005d 89 48 04 mov DWORD PTR [rax+4], ecx $LN3@ReadCell: ; 809 : } ; 810 : if (ReadRow(m_atempArray, m_dCurrentRow)) 00060 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00065 48 83 c0 58 add rax, 88 ; 00000058H 00069 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0006e 44 8b 41 04 mov r8d, DWORD PTR [rcx+4] 00072 48 8b d0 mov rdx, rax 00075 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0007a e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow 0007f 0f b6 c0 movzx eax, al 00082 85 c0 test eax, eax 00084 0f 84 80 00 00 00 je $LN4@ReadCell ; 811 : { ; 812 : // »ñȡָ¶¨ÁÐÖе¥Ôª¸ñÊý¾Ý ; 813 : if (column <= m_atempArray.GetSize()) 0008a 48 0f bf 44 24 60 movsx rax, WORD PTR column$[rsp] 00090 48 89 44 24 28 mov QWORD PTR tv80[rsp], rax 00095 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0009a 48 83 c1 58 add rcx, 88 ; 00000058H 0009e e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 000a3 48 8b 4c 24 28 mov rcx, QWORD PTR tv80[rsp] 000a8 48 3b c8 cmp rcx, rax 000ab 7f 33 jg SHORT $LN5@ReadCell ; 814 : { ; 815 : CellValue = m_atempArray.GetAt(column-1); 000ad 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000b2 48 83 c0 58 add rax, 88 ; 00000058H 000b6 48 89 44 24 30 mov QWORD PTR tv95[rsp], rax 000bb 0f bf 44 24 60 movsx eax, WORD PTR column$[rsp] 000c0 ff c8 dec eax 000c2 48 98 cdqe 000c4 48 8b d0 mov rdx, rax 000c7 48 8b 4c 24 30 mov rcx, QWORD PTR tv95[rsp] 000cc e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 000d1 48 8b d0 mov rdx, rax 000d4 48 8b 4c 24 58 mov rcx, QWORD PTR CellValue$[rsp] 000d9 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 816 : } 000de eb 1a jmp SHORT $LN6@ReadCell $LN5@ReadCell: ; 817 : else ; 818 : { ; 819 : CellValue.Empty(); 000e0 48 8b 4c 24 58 mov rcx, QWORD PTR CellValue$[rsp] 000e5 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 820 : m_dCurrentRow = tempRow; 000ea 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000ef 8b 4c 24 20 mov ecx, DWORD PTR tempRow$[rsp] 000f3 89 48 04 mov DWORD PTR [rax+4], ecx ; 821 : return false; 000f6 32 c0 xor al, al 000f8 eb 36 jmp SHORT $LN1@ReadCell $LN6@ReadCell: ; 822 : } ; 823 : m_dCurrentRow = tempRow; 000fa 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000ff 8b 4c 24 20 mov ecx, DWORD PTR tempRow$[rsp] 00103 89 48 04 mov DWORD PTR [rax+4], ecx ; 824 : return true; 00106 b0 01 mov al, 1 00108 eb 26 jmp SHORT $LN1@ReadCell $LN4@ReadCell: ; 825 : } ; 826 : m_dCurrentRow = tempRow; 0010a 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 0010f 8b 4c 24 20 mov ecx, DWORD PTR tempRow$[rsp] 00113 89 48 04 mov DWORD PTR [rax+4], ecx ; 827 : m_sLastError = _T("¶ÁÈ¡ÐÐʱ²úÉú´íÎó\n"); 00116 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 0011b 48 83 c0 50 add rax, 80 ; 00000050H 0011f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331510 00126 48 8b c8 mov rcx, rax 00129 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 828 : ; 829 : return false; 0012e 32 c0 xor al, al $LN1@ReadCell: ; 830 : } 00130 48 83 c4 48 add rsp, 72 ; 00000048H 00134 c3 ret 0 ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z ENDP ; CSpreadSheet::ReadCell _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z _TEXT SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv92 = 48 tv88 = 56 $T5 = 64 this$ = 96 CellValue$ = 104 column$ = 112 row$ = 120 Auto$ = 128 ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z PROC ; CSpreadSheet::ReadCell, COMDAT ; 782 : { $LN7: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 58 sub rsp, 88 ; 00000058H ; 783 : short columnIndex = CalculateColumnNumber(column, Auto); 00018 48 8d 44 24 40 lea rax, QWORD PTR $T5[rsp] 0001d 48 89 44 24 28 mov QWORD PTR $T4[rsp], rax 00022 48 8b 54 24 70 mov rdx, QWORD PTR column$[rsp] 00027 48 8b 4c 24 28 mov rcx, QWORD PTR $T4[rsp] 0002c e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00031 48 89 44 24 30 mov QWORD PTR tv92[rsp], rax 00036 48 8b 44 24 30 mov rax, QWORD PTR tv92[rsp] 0003b 48 89 44 24 38 mov QWORD PTR tv88[rsp], rax 00040 44 0f b6 84 24 80 00 00 00 movzx r8d, BYTE PTR Auto$[rsp] 00049 48 8b 54 24 38 mov rdx, QWORD PTR tv88[rsp] 0004e 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00053 e8 00 00 00 00 call ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ; CSpreadSheet::CalculateColumnNumber 00058 66 89 44 24 24 mov WORD PTR columnIndex$[rsp], ax ; 784 : if (0 == columnIndex) 0005d 0f bf 44 24 24 movsx eax, WORD PTR columnIndex$[rsp] 00062 85 c0 test eax, eax 00064 75 16 jne SHORT $LN2@ReadCell ; 785 : { ; 786 : return false; 00066 c6 44 24 20 00 mov BYTE PTR $T1[rsp], 0 0006b 48 8b 4c 24 70 mov rcx, QWORD PTR column$[rsp] 00070 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00075 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] 0007a eb 4b jmp SHORT $LN1@ReadCell $LN2@ReadCell: ; 787 : } ; 788 : ; 789 : if (ReadCell(CellValue, columnIndex, row)) 0007c 44 8b 4c 24 78 mov r9d, DWORD PTR row$[rsp] 00081 44 0f b7 44 24 24 movzx r8d, WORD PTR columnIndex$[rsp] 00087 48 8b 54 24 68 mov rdx, QWORD PTR CellValue$[rsp] 0008c 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00091 e8 00 00 00 00 call ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z ; CSpreadSheet::ReadCell 00096 0f b6 c0 movzx eax, al 00099 85 c0 test eax, eax 0009b 74 16 je SHORT $LN3@ReadCell ; 790 : { ; 791 : return true; 0009d c6 44 24 21 01 mov BYTE PTR $T2[rsp], 1 000a2 48 8b 4c 24 70 mov rcx, QWORD PTR column$[rsp] 000a7 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000ac 0f b6 44 24 21 movzx eax, BYTE PTR $T2[rsp] 000b1 eb 14 jmp SHORT $LN1@ReadCell $LN3@ReadCell: ; 792 : } ; 793 : return false; 000b3 c6 44 24 22 00 mov BYTE PTR $T3[rsp], 0 000b8 48 8b 4c 24 70 mov rcx, QWORD PTR column$[rsp] 000bd e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000c2 0f b6 44 24 22 movzx eax, BYTE PTR $T3[rsp] $LN1@ReadCell: ; 794 : } 000c7 48 83 c4 58 add rsp, 88 ; 00000058H 000cb c3 ret 0 ?ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z ENDP ; CSpreadSheet::ReadCell _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv92 = 48 tv88 = 56 $T5 = 64 this$ = 96 CellValue$ = 104 column$ = 112 row$ = 120 Auto$ = 128 ?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA PROC ; `CSpreadSheet::ReadCell'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 70 mov rcx, QWORD PTR column$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA ENDP ; `CSpreadSheet::ReadCell'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv92 = 48 tv88 = 56 $T5 = 64 this$ = 96 CellValue$ = 104 column$ = 112 row$ = 120 Auto$ = 128 ?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA PROC ; `CSpreadSheet::ReadCell'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 28 mov rcx, QWORD PTR $T4[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$1@?0??ReadCell@CSpreadSheet@@QEAA_NAEAV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@V23@J_N@Z@4HA ENDP ; `CSpreadSheet::ReadCell'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z _TEXT SEGMENT i$1 = 32 tempRow$ = 36 $T2 = 40 tv73 = 48 tv85 = 56 tv132 = 64 this$ = 96 ColumnValues$ = 104 column$ = 112 ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z PROC ; CSpreadSheet::ReadColumn, COMDAT ; 743 : { $LN12: 00000 66 44 89 44 24 18 mov WORD PTR [rsp+24], r8w 00006 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000b 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00010 48 83 ec 58 sub rsp, 88 ; 00000058H ; 744 : if (0 == column) 00014 0f bf 44 24 70 movsx eax, WORD PTR column$[rsp] 00019 85 c0 test eax, eax 0001b 75 1f jne SHORT $LN5@ReadColumn ; 745 : { ; 746 : m_sLastError = _T("ÁÐÊý²»ÄÜΪ0\n"); 0001d 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00022 48 83 c0 50 add rax, 80 ; 00000050H 00026 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331476 0002d 48 8b c8 mov rcx, rax 00030 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 747 : return false; 00035 32 c0 xor al, al 00037 e9 44 01 00 00 jmp $LN1@ReadColumn $LN5@ReadColumn: ; 748 : } ; 749 : ; 750 : int tempRow = m_dCurrentRow; 0003c 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00041 8b 40 04 mov eax, DWORD PTR [rax+4] 00044 89 44 24 24 mov DWORD PTR tempRow$[rsp], eax ; 751 : m_dCurrentRow = 1; 00048 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 0004d c7 40 04 01 00 00 00 mov DWORD PTR [rax+4], 1 ; 752 : ColumnValues.RemoveAll(); 00054 48 8b 4c 24 68 mov rcx, QWORD PTR ColumnValues$[rsp] 00059 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 753 : for (int i = 1; i <= m_aRows.GetSize(); i++) 0005e c7 44 24 20 01 00 00 00 mov DWORD PTR i$1[rsp], 1 00066 eb 0a jmp SHORT $LN4@ReadColumn $LN2@ReadColumn: 00068 8b 44 24 20 mov eax, DWORD PTR i$1[rsp] 0006c ff c0 inc eax 0006e 89 44 24 20 mov DWORD PTR i$1[rsp], eax $LN4@ReadColumn: 00072 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 00077 48 89 44 24 30 mov QWORD PTR tv73[rsp], rax 0007c 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00081 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00088 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0008d 48 8b 4c 24 30 mov rcx, QWORD PTR tv73[rsp] 00092 48 3b c8 cmp rcx, rax 00095 0f 8f d7 00 00 00 jg $LN3@ReadColumn ; 754 : { ; 755 : // ¶ÁȡÿһÐÐ ; 756 : if (ReadRow(m_atempArray, i)) 0009b 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 000a0 48 83 c0 58 add rax, 88 ; 00000058H 000a4 44 8b 44 24 20 mov r8d, DWORD PTR i$1[rsp] 000a9 48 8b d0 mov rdx, rax 000ac 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000b1 e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow 000b6 0f b6 c0 movzx eax, al 000b9 85 c0 test eax, eax 000bb 0f 84 84 00 00 00 je $LN6@ReadColumn ; 757 : { ; 758 : // ÔÚÖ¸¶¨ÁÐÖлñÈ¡µ¥Ôª¸ñÄÚÈÝ ; 759 : if (column <= m_atempArray.GetSize()) 000c1 48 0f bf 44 24 70 movsx rax, WORD PTR column$[rsp] 000c7 48 89 44 24 38 mov QWORD PTR tv85[rsp], rax 000cc 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000d1 48 83 c1 58 add rcx, 88 ; 00000058H 000d5 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 000da 48 8b 4c 24 38 mov rcx, QWORD PTR tv85[rsp] 000df 48 3b c8 cmp rcx, rax 000e2 7f 33 jg SHORT $LN8@ReadColumn ; 760 : { ; 761 : ColumnValues.Add(m_atempArray.GetAt(column-1)); 000e4 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 000e9 48 83 c0 58 add rax, 88 ; 00000058H 000ed 48 89 44 24 40 mov QWORD PTR tv132[rsp], rax 000f2 0f bf 44 24 70 movsx eax, WORD PTR column$[rsp] 000f7 ff c8 dec eax 000f9 48 98 cdqe 000fb 48 8b d0 mov rdx, rax 000fe 48 8b 4c 24 40 mov rcx, QWORD PTR tv132[rsp] 00103 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00108 48 8b d0 mov rdx, rax 0010b 48 8b 4c 24 68 mov rcx, QWORD PTR ColumnValues$[rsp] 00110 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 762 : } 00115 eb 2c jmp SHORT $LN9@ReadColumn $LN8@ReadColumn: ; 763 : else ; 764 : { ; 765 : ColumnValues.Add(""); 00117 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331481 0011e 48 8d 4c 24 28 lea rcx, QWORD PTR $T2[rsp] 00123 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z ; ATL::CStringT > >::CStringT > > 00128 90 npad 1 00129 48 8d 54 24 28 lea rdx, QWORD PTR $T2[rsp] 0012e 48 8b 4c 24 68 mov rcx, QWORD PTR ColumnValues$[rsp] 00133 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add 00138 90 npad 1 00139 48 8d 4c 24 28 lea rcx, QWORD PTR $T2[rsp] 0013e e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN9@ReadColumn: ; 766 : } ; 767 : } 00143 eb 28 jmp SHORT $LN7@ReadColumn $LN6@ReadColumn: ; 768 : else ; 769 : { ; 770 : m_dCurrentRow = tempRow; 00145 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 0014a 8b 4c 24 24 mov ecx, DWORD PTR tempRow$[rsp] 0014e 89 48 04 mov DWORD PTR [rax+4], ecx ; 771 : m_sLastError = _T("¶ÁÈ¡ÐÐʱ²úÉú´íÎó\n"); 00151 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00156 48 83 c0 50 add rax, 80 ; 00000050H 0015a 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331482 00161 48 8b c8 mov rcx, rax 00164 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 772 : return false; 00169 32 c0 xor al, al 0016b eb 13 jmp SHORT $LN1@ReadColumn $LN7@ReadColumn: ; 773 : } ; 774 : } 0016d e9 f6 fe ff ff jmp $LN2@ReadColumn $LN3@ReadColumn: ; 775 : m_dCurrentRow = tempRow; 00172 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00177 8b 4c 24 24 mov ecx, DWORD PTR tempRow$[rsp] 0017b 89 48 04 mov DWORD PTR [rax+4], ecx ; 776 : return true; 0017e b0 01 mov al, 1 $LN1@ReadColumn: ; 777 : } 00180 48 83 c4 58 add rsp, 88 ; 00000058H 00184 c3 ret 0 ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z ENDP ; CSpreadSheet::ReadColumn _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT i$1 = 32 tempRow$ = 36 $T2 = 40 tv73 = 48 tv85 = 56 tv132 = 64 this$ = 96 ColumnValues$ = 104 column$ = 112 ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA PROC ; `CSpreadSheet::ReadColumn'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 28 lea rcx, QWORD PTR $T2[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z@4HA ENDP ; `CSpreadSheet::ReadColumn'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z _TEXT SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv91 = 48 tv87 = 56 $T5 = 64 this$ = 96 ColumnValues$ = 104 column$ = 112 Auto$ = 120 ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z PROC ; CSpreadSheet::ReadColumn, COMDAT ; 727 : { $LN7: 00000 44 88 4c 24 20 mov BYTE PTR [rsp+32], r9b 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 58 sub rsp, 88 ; 00000058H ; 728 : short columnIndex = CalculateColumnNumber(column, Auto); 00018 48 8d 44 24 40 lea rax, QWORD PTR $T5[rsp] 0001d 48 89 44 24 28 mov QWORD PTR $T4[rsp], rax 00022 48 8b 54 24 70 mov rdx, QWORD PTR column$[rsp] 00027 48 8b 4c 24 28 mov rcx, QWORD PTR $T4[rsp] 0002c e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00031 48 89 44 24 30 mov QWORD PTR tv91[rsp], rax 00036 48 8b 44 24 30 mov rax, QWORD PTR tv91[rsp] 0003b 48 89 44 24 38 mov QWORD PTR tv87[rsp], rax 00040 44 0f b6 44 24 78 movzx r8d, BYTE PTR Auto$[rsp] 00046 48 8b 54 24 38 mov rdx, QWORD PTR tv87[rsp] 0004b 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00050 e8 00 00 00 00 call ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ; CSpreadSheet::CalculateColumnNumber 00055 66 89 44 24 24 mov WORD PTR columnIndex$[rsp], ax ; 729 : if (0 == columnIndex) 0005a 0f bf 44 24 24 movsx eax, WORD PTR columnIndex$[rsp] 0005f 85 c0 test eax, eax 00061 75 16 jne SHORT $LN2@ReadColumn ; 730 : { ; 731 : return false; 00063 c6 44 24 20 00 mov BYTE PTR $T1[rsp], 0 00068 48 8b 4c 24 70 mov rcx, QWORD PTR column$[rsp] 0006d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00072 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] 00077 eb 46 jmp SHORT $LN1@ReadColumn $LN2@ReadColumn: ; 732 : } ; 733 : ; 734 : if (ReadColumn(ColumnValues, columnIndex)) 00079 44 0f b7 44 24 24 movzx r8d, WORD PTR columnIndex$[rsp] 0007f 48 8b 54 24 68 mov rdx, QWORD PTR ColumnValues$[rsp] 00084 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00089 e8 00 00 00 00 call ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@F@Z ; CSpreadSheet::ReadColumn 0008e 0f b6 c0 movzx eax, al 00091 85 c0 test eax, eax 00093 74 16 je SHORT $LN3@ReadColumn ; 735 : { ; 736 : return true; 00095 c6 44 24 21 01 mov BYTE PTR $T2[rsp], 1 0009a 48 8b 4c 24 70 mov rcx, QWORD PTR column$[rsp] 0009f e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000a4 0f b6 44 24 21 movzx eax, BYTE PTR $T2[rsp] 000a9 eb 14 jmp SHORT $LN1@ReadColumn $LN3@ReadColumn: ; 737 : } ; 738 : return false; 000ab c6 44 24 22 00 mov BYTE PTR $T3[rsp], 0 000b0 48 8b 4c 24 70 mov rcx, QWORD PTR column$[rsp] 000b5 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000ba 0f b6 44 24 22 movzx eax, BYTE PTR $T3[rsp] $LN1@ReadColumn: ; 739 : } 000bf 48 83 c4 58 add rsp, 88 ; 00000058H 000c3 c3 ret 0 ?ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ENDP ; CSpreadSheet::ReadColumn _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv91 = 48 tv87 = 56 $T5 = 64 this$ = 96 ColumnValues$ = 104 column$ = 112 Auto$ = 120 ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA PROC ; `CSpreadSheet::ReadColumn'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 70 mov rcx, QWORD PTR column$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA ENDP ; `CSpreadSheet::ReadColumn'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv91 = 48 tv87 = 56 $T5 = 64 this$ = 96 ColumnValues$ = 104 column$ = 112 Auto$ = 120 ?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA PROC ; `CSpreadSheet::ReadColumn'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 28 mov rcx, QWORD PTR $T4[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$1@?0??ReadColumn@CSpreadSheet@@QEAA_NAEAVCStringArray@@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z@4HA ENDP ; `CSpreadSheet::ReadColumn'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z _TEXT SEGMENT separatorPosition$1 = 32 stringStartingPosition$2 = 36 stringStartingPosition$3 = 40 nCount$4 = 44 nCount$5 = 48 quoteBegPos$6 = 52 quoteEndPos$7 = 56 tv64 = 64 tv72 = 72 tv89 = 80 tv132 = 88 tv146 = 96 tv159 = 104 tv378 = 112 tv371 = 120 $T8 = 128 tv183 = 136 tv201 = 144 tv379 = 152 tv373 = 160 $T9 = 168 tv216 = 176 tv243 = 184 tv244 = 192 tv263 = 200 tv276 = 208 tv380 = 216 tv375 = 224 $T10 = 232 tv300 = 240 tv318 = 248 tv381 = 256 tv377 = 264 $T11 = 272 tv327 = 280 tv333 = 288 tv350 = 296 tv364 = 304 this$ = 336 RowValues$ = 344 row$ = 352 ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z PROC ; CSpreadSheet::ReadRow, COMDAT ; 636 : { $LN20: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 81 ec 48 01 00 00 sub rsp, 328 ; 00000148H ; 637 : // ¼ì²éÖ¸¶¨ÐкÅÊÇ·ñ´óÓÚ±í¸ñÖÐ×ÜÐÐÊý ; 638 : if (row <= m_aRows.GetSize()) 00016 48 63 84 24 60 01 00 00 movsxd rax, DWORD PTR row$[rsp] 0001e 48 89 44 24 40 mov QWORD PTR tv64[rsp], rax 00023 48 8b 8c 24 50 01 00 00 mov rcx, QWORD PTR this$[rsp] 0002b 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00032 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00037 48 8b 4c 24 40 mov rcx, QWORD PTR tv64[rsp] 0003c 48 3b c8 cmp rcx, rax 0003f 0f 8f ac 06 00 00 jg $LN6@ReadRow ; 639 : { ; 640 : if (0 != row) 00045 83 bc 24 60 01 00 00 00 cmp DWORD PTR row$[rsp], 0 0004d 74 14 je SHORT $LN7@ReadRow ; 641 : { ; 642 : m_dCurrentRow = row; 0004f 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00057 8b 8c 24 60 01 00 00 mov ecx, DWORD PTR row$[rsp] 0005e 89 48 04 mov DWORD PTR [rax+4], ecx ; 643 : } 00061 eb 36 jmp SHORT $LN8@ReadRow $LN7@ReadRow: ; 644 : else if (m_dCurrentRow > m_aRows.GetSize()) 00063 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0006b 48 63 40 04 movsxd rax, DWORD PTR [rax+4] 0006f 48 89 44 24 48 mov QWORD PTR tv72[rsp], rax 00074 48 8b 8c 24 50 01 00 00 mov rcx, QWORD PTR this$[rsp] 0007c 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00083 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00088 48 8b 4c 24 48 mov rcx, QWORD PTR tv72[rsp] 0008d 48 3b c8 cmp rcx, rax 00090 7e 07 jle SHORT $LN8@ReadRow ; 645 : { ; 646 : return false; 00092 32 c0 xor al, al 00094 e9 75 06 00 00 jmp $LN1@ReadRow $LN8@ReadRow: ; 647 : } ; 648 : ; 649 : // ¶Áȡָ¶¨ÐÐ ; 650 : RowValues.RemoveAll(); 00099 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 000a1 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 651 : m_stempString = m_aRows.GetAt(m_dCurrentRow-1); 000a6 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 000ae 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 000b4 48 89 44 24 50 mov QWORD PTR tv89[rsp], rax 000b9 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 000c1 8b 40 04 mov eax, DWORD PTR [rax+4] 000c4 ff c8 dec eax 000c6 48 98 cdqe 000c8 48 8b d0 mov rdx, rax 000cb 48 8b 4c 24 50 mov rcx, QWORD PTR tv89[rsp] 000d0 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 000d5 48 8b 8c 24 50 01 00 00 mov rcx, QWORD PTR this$[rsp] 000dd 48 83 c1 28 add rcx, 40 ; 00000028H 000e1 48 8b d0 mov rdx, rax 000e4 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 652 : m_dCurrentRow++; 000e9 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 000f1 8b 40 04 mov eax, DWORD PTR [rax+4] 000f4 ff c0 inc eax 000f6 48 8b 8c 24 50 01 00 00 mov rcx, QWORD PTR this$[rsp] 000fe 89 41 04 mov DWORD PTR [rcx+4], eax ; 653 : ; 654 : // ¼ìË÷·Ö¸ôÐеķָô·û ; 655 : int separatorPosition; ; 656 : m_stempSql.Format(_T("\"%s\""), m_sSeparator); 00101 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00109 48 83 c0 20 add rax, 32 ; 00000020H 0010d 48 89 44 24 58 mov QWORD PTR tv132[rsp], rax 00112 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0011a 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 0011e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331444 00125 48 8b 4c 24 58 mov rcx, QWORD PTR tv132[rsp] 0012a e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 657 : separatorPosition = m_stempString.Find(m_stempSql); // Èç¹û·Ö¸ô·ûÊÇ×Ö·û"?" 0012f 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00137 48 83 c0 28 add rax, 40 ; 00000028H 0013b 48 89 44 24 60 mov QWORD PTR tv146[rsp], rax 00140 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00148 48 83 c0 20 add rax, 32 ; 00000020H 0014c 48 8b c8 mov rcx, rax 0014f e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00154 45 33 c0 xor r8d, r8d 00157 48 8b d0 mov rdx, rax 0015a 48 8b 4c 24 60 mov rcx, QWORD PTR tv146[rsp] 0015f e8 00 00 00 00 call ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z ; ATL::CStringT > >::Find 00164 89 44 24 20 mov DWORD PTR separatorPosition$1[rsp], eax ; 658 : if (separatorPosition != -1) 00168 83 7c 24 20 ff cmp DWORD PTR separatorPosition$1[rsp], -1 0016d 0f 84 9f 02 00 00 je $LN10@ReadRow ; 659 : { ; 660 : // ±£´æÁÐ ; 661 : int nCount = 0; 00173 c7 44 24 2c 00 00 00 00 mov DWORD PTR nCount$4[rsp], 0 ; 662 : int stringStartingPosition = 0; 0017b c7 44 24 24 00 00 00 00 mov DWORD PTR stringStartingPosition$2[rsp], 0 $LN2@ReadRow: ; 663 : while (separatorPosition != -1) 00183 83 7c 24 20 ff cmp DWORD PTR separatorPosition$1[rsp], -1 00188 0f 84 d2 00 00 00 je $LN3@ReadRow ; 664 : { ; 665 : nCount = separatorPosition - stringStartingPosition; 0018e 8b 44 24 24 mov eax, DWORD PTR stringStartingPosition$2[rsp] 00192 8b 4c 24 20 mov ecx, DWORD PTR separatorPosition$1[rsp] 00196 2b c8 sub ecx, eax 00198 8b c1 mov eax, ecx 0019a 89 44 24 2c mov DWORD PTR nCount$4[rsp], eax ; 666 : RowValues.Add(m_stempString.Mid(stringStartingPosition, nCount)); 0019e 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 001a6 48 83 c0 28 add rax, 40 ; 00000028H 001aa 48 89 44 24 68 mov QWORD PTR tv159[rsp], rax 001af 44 8b 4c 24 2c mov r9d, DWORD PTR nCount$4[rsp] 001b4 44 8b 44 24 24 mov r8d, DWORD PTR stringStartingPosition$2[rsp] 001b9 48 8d 94 24 80 00 00 00 lea rdx, QWORD PTR $T8[rsp] 001c1 48 8b 4c 24 68 mov rcx, QWORD PTR tv159[rsp] 001c6 e8 00 00 00 00 call ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z ; ATL::CStringT > >::Mid 001cb 48 89 44 24 70 mov QWORD PTR tv378[rsp], rax 001d0 48 8b 44 24 70 mov rax, QWORD PTR tv378[rsp] 001d5 48 89 44 24 78 mov QWORD PTR tv371[rsp], rax 001da 48 8b 54 24 78 mov rdx, QWORD PTR tv371[rsp] 001df 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 001e7 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add 001ec 90 npad 1 001ed 48 8d 8c 24 80 00 00 00 lea rcx, QWORD PTR $T8[rsp] 001f5 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 667 : stringStartingPosition = separatorPosition + m_stempSql.GetLength(); 001fa 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00202 48 83 c0 20 add rax, 32 ; 00000020H 00206 48 8b c8 mov rcx, rax 00209 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0020e 8b 4c 24 20 mov ecx, DWORD PTR separatorPosition$1[rsp] 00212 03 c8 add ecx, eax 00214 8b c1 mov eax, ecx 00216 89 44 24 24 mov DWORD PTR stringStartingPosition$2[rsp], eax ; 668 : separatorPosition = m_stempString.Find(m_stempSql, stringStartingPosition); 0021a 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00222 48 83 c0 28 add rax, 40 ; 00000028H 00226 48 89 84 24 88 00 00 00 mov QWORD PTR tv183[rsp], rax 0022e 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00236 48 83 c0 20 add rax, 32 ; 00000020H 0023a 48 8b c8 mov rcx, rax 0023d e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00242 44 8b 44 24 24 mov r8d, DWORD PTR stringStartingPosition$2[rsp] 00247 48 8b d0 mov rdx, rax 0024a 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR tv183[rsp] 00252 e8 00 00 00 00 call ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z ; ATL::CStringT > >::Find 00257 89 44 24 20 mov DWORD PTR separatorPosition$1[rsp], eax ; 669 : } 0025b e9 23 ff ff ff jmp $LN2@ReadRow $LN3@ReadRow: ; 670 : nCount = m_stempString.GetLength() - stringStartingPosition; 00260 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00268 48 83 c0 28 add rax, 40 ; 00000028H 0026c 48 8b c8 mov rcx, rax 0026f e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00274 2b 44 24 24 sub eax, DWORD PTR stringStartingPosition$2[rsp] 00278 89 44 24 2c mov DWORD PTR nCount$4[rsp], eax ; 671 : RowValues.Add(m_stempString.Mid(stringStartingPosition, nCount)); 0027c 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00284 48 83 c0 28 add rax, 40 ; 00000028H 00288 48 89 84 24 90 00 00 00 mov QWORD PTR tv201[rsp], rax 00290 44 8b 4c 24 2c mov r9d, DWORD PTR nCount$4[rsp] 00295 44 8b 44 24 24 mov r8d, DWORD PTR stringStartingPosition$2[rsp] 0029a 48 8d 94 24 a8 00 00 00 lea rdx, QWORD PTR $T9[rsp] 002a2 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR tv201[rsp] 002aa e8 00 00 00 00 call ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z ; ATL::CStringT > >::Mid 002af 48 89 84 24 98 00 00 00 mov QWORD PTR tv379[rsp], rax 002b7 48 8b 84 24 98 00 00 00 mov rax, QWORD PTR tv379[rsp] 002bf 48 89 84 24 a0 00 00 00 mov QWORD PTR tv373[rsp], rax 002c7 48 8b 94 24 a0 00 00 00 mov rdx, QWORD PTR tv373[rsp] 002cf 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 002d7 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add 002dc 90 npad 1 002dd 48 8d 8c 24 a8 00 00 00 lea rcx, QWORD PTR $T9[rsp] 002e5 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 672 : ; 673 : // ɾ³ýµÚÒ»ÁÐÒýÓ÷ûºÅ ; 674 : m_stempString = RowValues.GetAt(0); 002ea 33 d2 xor edx, edx 002ec 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 002f4 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 002f9 48 8b 8c 24 50 01 00 00 mov rcx, QWORD PTR this$[rsp] 00301 48 83 c1 28 add rcx, 40 ; 00000028H 00305 48 8b d0 mov rdx, rax 00308 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 675 : m_stempString.Delete(0, 1); 0030d 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00315 48 83 c0 28 add rax, 40 ; 00000028H 00319 48 89 84 24 b0 00 00 00 mov QWORD PTR tv216[rsp], rax 00321 41 b8 01 00 00 00 mov r8d, 1 00327 33 d2 xor edx, edx 00329 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR tv216[rsp] 00331 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 676 : RowValues.SetAt(0, m_stempString); 00336 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0033e 48 83 c0 28 add rax, 40 ; 00000028H 00342 4c 8b c0 mov r8, rax 00345 33 d2 xor edx, edx 00347 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0034f e8 00 00 00 00 call ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::SetAt ; 677 : ; 678 : // ɾ³ý×îºóÁÐÒýÓ÷ûºÅ ; 679 : m_stempString = RowValues.GetAt(RowValues.GetSize()-1); 00354 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0035c e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00361 48 ff c8 dec rax 00364 48 8b d0 mov rdx, rax 00367 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0036f e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00374 48 8b 8c 24 50 01 00 00 mov rcx, QWORD PTR this$[rsp] 0037c 48 83 c1 28 add rcx, 40 ; 00000028H 00380 48 8b d0 mov rdx, rax 00383 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 680 : m_stempString.Delete(m_stempString.GetLength()-1, 1); 00388 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00390 48 83 c0 28 add rax, 40 ; 00000028H 00394 48 89 84 24 b8 00 00 00 mov QWORD PTR tv243[rsp], rax 0039c 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 003a4 48 83 c0 28 add rax, 40 ; 00000028H 003a8 48 8b c8 mov rcx, rax 003ab e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 003b0 ff c8 dec eax 003b2 41 b8 01 00 00 00 mov r8d, 1 003b8 8b d0 mov edx, eax 003ba 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR tv243[rsp] 003c2 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 681 : RowValues.SetAt(RowValues.GetSize()-1, m_stempString); 003c7 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 003cf 48 83 c0 28 add rax, 40 ; 00000028H 003d3 48 89 84 24 c0 00 00 00 mov QWORD PTR tv244[rsp], rax 003db 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 003e3 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 003e8 48 ff c8 dec rax 003eb 48 8b 8c 24 c0 00 00 00 mov rcx, QWORD PTR tv244[rsp] 003f3 4c 8b c1 mov r8, rcx 003f6 48 8b d0 mov rdx, rax 003f9 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00401 e8 00 00 00 00 call ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::SetAt ; 682 : ; 683 : return true; 00406 b0 01 mov al, 1 00408 e9 01 03 00 00 jmp $LN1@ReadRow ; 684 : } 0040d e9 df 02 00 00 jmp $LN6@ReadRow $LN10@ReadRow: ; 685 : else ; 686 : { ; 687 : // ±£´æÁÐ ; 688 : separatorPosition = m_stempString.Find(m_sSeparator); // µ±·Ö¸ô·ûÊÇ×Ö·û"?" 00412 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0041a 48 83 c0 28 add rax, 40 ; 00000028H 0041e 48 89 84 24 c8 00 00 00 mov QWORD PTR tv263[rsp], rax 00426 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0042e 48 83 c0 48 add rax, 72 ; 00000048H 00432 48 8b c8 mov rcx, rax 00435 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 0043a 45 33 c0 xor r8d, r8d 0043d 48 8b d0 mov rdx, rax 00440 48 8b 8c 24 c8 00 00 00 mov rcx, QWORD PTR tv263[rsp] 00448 e8 00 00 00 00 call ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z ; ATL::CStringT > >::Find 0044d 89 44 24 20 mov DWORD PTR separatorPosition$1[rsp], eax ; 689 : if (separatorPosition != -1) 00451 83 7c 24 20 ff cmp DWORD PTR separatorPosition$1[rsp], -1 00456 0f 84 95 01 00 00 je $LN12@ReadRow ; 690 : { ; 691 : int nCount = 0; 0045c c7 44 24 30 00 00 00 00 mov DWORD PTR nCount$5[rsp], 0 ; 692 : int stringStartingPosition = 0; 00464 c7 44 24 28 00 00 00 00 mov DWORD PTR stringStartingPosition$3[rsp], 0 $LN4@ReadRow: ; 693 : while (separatorPosition != -1) 0046c 83 7c 24 20 ff cmp DWORD PTR separatorPosition$1[rsp], -1 00471 0f 84 e4 00 00 00 je $LN5@ReadRow ; 694 : { ; 695 : nCount = separatorPosition - stringStartingPosition; 00477 8b 44 24 28 mov eax, DWORD PTR stringStartingPosition$3[rsp] 0047b 8b 4c 24 20 mov ecx, DWORD PTR separatorPosition$1[rsp] 0047f 2b c8 sub ecx, eax 00481 8b c1 mov eax, ecx 00483 89 44 24 30 mov DWORD PTR nCount$5[rsp], eax ; 696 : RowValues.Add(m_stempString.Mid(stringStartingPosition, nCount)); 00487 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0048f 48 83 c0 28 add rax, 40 ; 00000028H 00493 48 89 84 24 d0 00 00 00 mov QWORD PTR tv276[rsp], rax 0049b 44 8b 4c 24 30 mov r9d, DWORD PTR nCount$5[rsp] 004a0 44 8b 44 24 28 mov r8d, DWORD PTR stringStartingPosition$3[rsp] 004a5 48 8d 94 24 e8 00 00 00 lea rdx, QWORD PTR $T10[rsp] 004ad 48 8b 8c 24 d0 00 00 00 mov rcx, QWORD PTR tv276[rsp] 004b5 e8 00 00 00 00 call ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z ; ATL::CStringT > >::Mid 004ba 48 89 84 24 d8 00 00 00 mov QWORD PTR tv380[rsp], rax 004c2 48 8b 84 24 d8 00 00 00 mov rax, QWORD PTR tv380[rsp] 004ca 48 89 84 24 e0 00 00 00 mov QWORD PTR tv375[rsp], rax 004d2 48 8b 94 24 e0 00 00 00 mov rdx, QWORD PTR tv375[rsp] 004da 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 004e2 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add 004e7 90 npad 1 004e8 48 8d 8c 24 e8 00 00 00 lea rcx, QWORD PTR $T10[rsp] 004f0 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 697 : stringStartingPosition = separatorPosition + m_sSeparator.GetLength(); 004f5 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 004fd 48 83 c0 48 add rax, 72 ; 00000048H 00501 48 8b c8 mov rcx, rax 00504 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00509 8b 4c 24 20 mov ecx, DWORD PTR separatorPosition$1[rsp] 0050d 03 c8 add ecx, eax 0050f 8b c1 mov eax, ecx 00511 89 44 24 28 mov DWORD PTR stringStartingPosition$3[rsp], eax ; 698 : separatorPosition = m_stempString.Find(m_sSeparator, stringStartingPosition); 00515 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0051d 48 83 c0 28 add rax, 40 ; 00000028H 00521 48 89 84 24 f0 00 00 00 mov QWORD PTR tv300[rsp], rax 00529 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00531 48 83 c0 48 add rax, 72 ; 00000048H 00535 48 8b c8 mov rcx, rax 00538 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 0053d 44 8b 44 24 28 mov r8d, DWORD PTR stringStartingPosition$3[rsp] 00542 48 8b d0 mov rdx, rax 00545 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR tv300[rsp] 0054d e8 00 00 00 00 call ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z ; ATL::CStringT > >::Find 00552 89 44 24 20 mov DWORD PTR separatorPosition$1[rsp], eax ; 699 : } 00556 e9 11 ff ff ff jmp $LN4@ReadRow $LN5@ReadRow: ; 700 : nCount = m_stempString.GetLength() - stringStartingPosition; 0055b 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00563 48 83 c0 28 add rax, 40 ; 00000028H 00567 48 8b c8 mov rcx, rax 0056a e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0056f 2b 44 24 28 sub eax, DWORD PTR stringStartingPosition$3[rsp] 00573 89 44 24 30 mov DWORD PTR nCount$5[rsp], eax ; 701 : RowValues.Add(m_stempString.Mid(stringStartingPosition, nCount)); 00577 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0057f 48 83 c0 28 add rax, 40 ; 00000028H 00583 48 89 84 24 f8 00 00 00 mov QWORD PTR tv318[rsp], rax 0058b 44 8b 4c 24 30 mov r9d, DWORD PTR nCount$5[rsp] 00590 44 8b 44 24 28 mov r8d, DWORD PTR stringStartingPosition$3[rsp] 00595 48 8d 94 24 10 01 00 00 lea rdx, QWORD PTR $T11[rsp] 0059d 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR tv318[rsp] 005a5 e8 00 00 00 00 call ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z ; ATL::CStringT > >::Mid 005aa 48 89 84 24 00 01 00 00 mov QWORD PTR tv381[rsp], rax 005b2 48 8b 84 24 00 01 00 00 mov rax, QWORD PTR tv381[rsp] 005ba 48 89 84 24 08 01 00 00 mov QWORD PTR tv377[rsp], rax 005c2 48 8b 94 24 08 01 00 00 mov rdx, QWORD PTR tv377[rsp] 005ca 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 005d2 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add 005d7 90 npad 1 005d8 48 8d 8c 24 10 01 00 00 lea rcx, QWORD PTR $T11[rsp] 005e0 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 702 : return true; 005e5 b0 01 mov al, 1 005e7 e9 22 01 00 00 jmp $LN1@ReadRow ; 703 : } 005ec e9 00 01 00 00 jmp $LN6@ReadRow $LN12@ReadRow: ; 704 : else // ±í¸ñÖ»ÓÐÒ»ÁÐʱ ; 705 : { ; 706 : // Èç¹û´æÔÚÔÚ£¬É¾³ý¿ªÊ¼ºÍ½áÊøÊ±µÄÒýÓ÷ûºÅ ; 707 : int quoteBegPos = m_stempString.Find('\"'); 005f1 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 005f9 48 83 c0 28 add rax, 40 ; 00000028H 005fd 48 89 84 24 18 01 00 00 mov QWORD PTR tv327[rsp], rax 00605 45 33 c0 xor r8d, r8d 00608 66 ba 22 00 mov dx, 34 ; 00000022H 0060c 48 8b 8c 24 18 01 00 00 mov rcx, QWORD PTR tv327[rsp] 00614 e8 00 00 00 00 call ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z ; ATL::CStringT > >::Find 00619 89 44 24 34 mov DWORD PTR quoteBegPos$6[rsp], eax ; 708 : int quoteEndPos = m_stempString.ReverseFind('\"'); 0061d 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00625 48 83 c0 28 add rax, 40 ; 00000028H 00629 48 89 84 24 20 01 00 00 mov QWORD PTR tv333[rsp], rax 00631 66 ba 22 00 mov dx, 34 ; 00000022H 00635 48 8b 8c 24 20 01 00 00 mov rcx, QWORD PTR tv333[rsp] 0063d e8 00 00 00 00 call ?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z ; ATL::CStringT > >::ReverseFind 00642 89 44 24 38 mov DWORD PTR quoteEndPos$7[rsp], eax ; 709 : if ((quoteBegPos == 0) && (quoteEndPos == m_stempString.GetLength()-1)) 00646 83 7c 24 34 00 cmp DWORD PTR quoteBegPos$6[rsp], 0 0064b 0f 85 84 00 00 00 jne $LN14@ReadRow 00651 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00659 48 83 c0 28 add rax, 40 ; 00000028H 0065d 48 8b c8 mov rcx, rax 00660 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00665 ff c8 dec eax 00667 39 44 24 38 cmp DWORD PTR quoteEndPos$7[rsp], eax 0066b 75 68 jne SHORT $LN14@ReadRow ; 710 : { ; 711 : m_stempString.Delete(0, 1); 0066d 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 00675 48 83 c0 28 add rax, 40 ; 00000028H 00679 48 89 84 24 28 01 00 00 mov QWORD PTR tv350[rsp], rax 00681 41 b8 01 00 00 00 mov r8d, 1 00687 33 d2 xor edx, edx 00689 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR tv350[rsp] 00691 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 712 : m_stempString.Delete(m_stempString.GetLength()-1, 1); 00696 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 0069e 48 83 c0 28 add rax, 40 ; 00000028H 006a2 48 89 84 24 30 01 00 00 mov QWORD PTR tv364[rsp], rax 006aa 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 006b2 48 83 c0 28 add rax, 40 ; 00000028H 006b6 48 8b c8 mov rcx, rax 006b9 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 006be ff c8 dec eax 006c0 41 b8 01 00 00 00 mov r8d, 1 006c6 8b d0 mov edx, eax 006c8 48 8b 8c 24 30 01 00 00 mov rcx, QWORD PTR tv364[rsp] 006d0 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete $LN14@ReadRow: ; 713 : } ; 714 : ; 715 : RowValues.Add(m_stempString); 006d5 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 006dd 48 83 c0 28 add rax, 40 ; 00000028H 006e1 48 8b d0 mov rdx, rax 006e4 48 8b 8c 24 58 01 00 00 mov rcx, QWORD PTR RowValues$[rsp] 006ec e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add $LN6@ReadRow: ; 716 : } ; 717 : } ; 718 : } ; 719 : ; 720 : m_sLastError = _T("Ö¸¶¨ÐдóÓÚ±í¸ñÖÐ×ÜÐÐÊý\n"); 006f1 48 8b 84 24 50 01 00 00 mov rax, QWORD PTR this$[rsp] 006f9 48 83 c0 50 add rax, 80 ; 00000050H 006fd 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331450 00704 48 8b c8 mov rcx, rax 00707 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 721 : ; 722 : return false; 0070c 32 c0 xor al, al $LN1@ReadRow: ; 723 : } 0070e 48 81 c4 48 01 00 00 add rsp, 328 ; 00000148H 00715 c3 ret 0 ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ENDP ; CSpreadSheet::ReadRow _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT separatorPosition$1 = 32 stringStartingPosition$2 = 36 stringStartingPosition$3 = 40 nCount$4 = 44 nCount$5 = 48 quoteBegPos$6 = 52 quoteEndPos$7 = 56 tv64 = 64 tv72 = 72 tv89 = 80 tv132 = 88 tv146 = 96 tv159 = 104 tv378 = 112 tv371 = 120 $T8 = 128 tv183 = 136 tv201 = 144 tv379 = 152 tv373 = 160 $T9 = 168 tv216 = 176 tv243 = 184 tv244 = 192 tv263 = 200 tv276 = 208 tv380 = 216 tv375 = 224 $T10 = 232 tv300 = 240 tv318 = 248 tv381 = 256 tv377 = 264 $T11 = 272 tv327 = 280 tv333 = 288 tv350 = 296 tv364 = 304 this$ = 336 RowValues$ = 344 row$ = 352 ?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA PROC ; `CSpreadSheet::ReadRow'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 80 00 00 00 lea rcx, QWORD PTR $T8[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA ENDP ; `CSpreadSheet::ReadRow'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT separatorPosition$1 = 32 stringStartingPosition$2 = 36 stringStartingPosition$3 = 40 nCount$4 = 44 nCount$5 = 48 quoteBegPos$6 = 52 quoteEndPos$7 = 56 tv64 = 64 tv72 = 72 tv89 = 80 tv132 = 88 tv146 = 96 tv159 = 104 tv378 = 112 tv371 = 120 $T8 = 128 tv183 = 136 tv201 = 144 tv379 = 152 tv373 = 160 $T9 = 168 tv216 = 176 tv243 = 184 tv244 = 192 tv263 = 200 tv276 = 208 tv380 = 216 tv375 = 224 $T10 = 232 tv300 = 240 tv318 = 248 tv381 = 256 tv377 = 264 $T11 = 272 tv327 = 280 tv333 = 288 tv350 = 296 tv364 = 304 this$ = 336 RowValues$ = 344 row$ = 352 ?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA PROC ; `CSpreadSheet::ReadRow'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d a8 00 00 00 lea rcx, QWORD PTR $T9[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$1@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA ENDP ; `CSpreadSheet::ReadRow'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT separatorPosition$1 = 32 stringStartingPosition$2 = 36 stringStartingPosition$3 = 40 nCount$4 = 44 nCount$5 = 48 quoteBegPos$6 = 52 quoteEndPos$7 = 56 tv64 = 64 tv72 = 72 tv89 = 80 tv132 = 88 tv146 = 96 tv159 = 104 tv378 = 112 tv371 = 120 $T8 = 128 tv183 = 136 tv201 = 144 tv379 = 152 tv373 = 160 $T9 = 168 tv216 = 176 tv243 = 184 tv244 = 192 tv263 = 200 tv276 = 208 tv380 = 216 tv375 = 224 $T10 = 232 tv300 = 240 tv318 = 248 tv381 = 256 tv377 = 264 $T11 = 272 tv327 = 280 tv333 = 288 tv350 = 296 tv364 = 304 this$ = 336 RowValues$ = 344 row$ = 352 ?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA PROC ; `CSpreadSheet::ReadRow'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d e8 00 00 00 lea rcx, QWORD PTR $T10[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$2@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA ENDP ; `CSpreadSheet::ReadRow'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT separatorPosition$1 = 32 stringStartingPosition$2 = 36 stringStartingPosition$3 = 40 nCount$4 = 44 nCount$5 = 48 quoteBegPos$6 = 52 quoteEndPos$7 = 56 tv64 = 64 tv72 = 72 tv89 = 80 tv132 = 88 tv146 = 96 tv159 = 104 tv378 = 112 tv371 = 120 $T8 = 128 tv183 = 136 tv201 = 144 tv379 = 152 tv373 = 160 $T9 = 168 tv216 = 176 tv243 = 184 tv244 = 192 tv263 = 200 tv276 = 208 tv380 = 216 tv375 = 224 $T10 = 232 tv300 = 240 tv318 = 248 tv381 = 256 tv377 = 264 $T11 = 272 tv327 = 280 tv333 = 288 tv350 = 296 tv364 = 304 this$ = 336 RowValues$ = 344 row$ = 352 ?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA PROC ; `CSpreadSheet::ReadRow'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 10 01 00 00 lea rcx, QWORD PTR $T11[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$3@?0??ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z@4HA ENDP ; `CSpreadSheet::ReadRow'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z _TEXT SEGMENT $T1 = 32 i$2 = 36 j$3 = 40 tv85 = 48 tv87 = 56 tv89 = 64 tv95 = 72 tv129 = 80 tv146 = 88 $T4 = 96 $T5 = 104 tv152 = 112 tv290 = 120 tv284 = 128 $T6 = 136 tv178 = 144 tv291 = 152 tv286 = 160 $T7 = 168 tv189 = 176 tv207 = 184 $T8 = 192 $T9 = 200 tv213 = 208 tv292 = 216 tv288 = 224 $T10 = 232 tv239 = 240 tv253 = 248 tv255 = 256 pEx$11 = 264 this$ = 288 NewRowValues$ = 296 OldRowValues$ = 304 ?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z PROC ; CSpreadSheet::ReplaceRows, COMDAT ; 591 : { $LN20: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 81 ec 18 01 00 00 sub rsp, 280 ; 00000118H ; 592 : if (m_bExcel) // µ±ÊÇExcel±í¸ñÎļþʱ 00016 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0001e 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00022 85 c0 test eax, eax 00024 0f 84 70 04 00 00 je $LN8@ReplaceRow ; 593 : { ; 594 : // ´ò¿ª»ò´´½¨ExcelÎļþ ; 595 : m_Database->OpenEx(m_sDsn, CDatabase::noOdbcDialog); 0002a 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00032 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00039 48 89 44 24 38 mov QWORD PTR tv87[rsp], rax 0003e 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00046 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0004d 48 8b 00 mov rax, QWORD PTR [rax] 00050 48 8b 40 20 mov rax, QWORD PTR [rax+32] 00054 48 89 44 24 40 mov QWORD PTR tv89[rsp], rax 00059 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00061 48 83 c0 18 add rax, 24 00065 48 8b c8 mov rcx, rax 00068 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 0006d 48 89 44 24 30 mov QWORD PTR tv85[rsp], rax 00072 41 b8 08 00 00 00 mov r8d, 8 00078 48 8b 54 24 30 mov rdx, QWORD PTR tv85[rsp] 0007d 48 8b 4c 24 38 mov rcx, QWORD PTR tv87[rsp] 00082 ff 54 24 40 call QWORD PTR tv89[rsp] ; 596 : m_stempSql.Format(_T("UPDATE [%s] SET "), m_sSheetName); 00086 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0008e 48 83 c0 20 add rax, 32 ; 00000020H 00092 48 89 44 24 48 mov QWORD PTR tv95[rsp], rax 00097 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0009f 4c 8b 40 30 mov r8, QWORD PTR [rax+48] 000a3 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331412 000aa 48 8b 4c 24 48 mov rcx, QWORD PTR tv95[rsp] 000af e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 597 : for (int i = 0; i < NewRowValues.GetSize(); i++) 000b4 c7 44 24 24 00 00 00 00 mov DWORD PTR i$2[rsp], 0 000bc eb 0a jmp SHORT $LN4@ReplaceRow $LN2@ReplaceRow: 000be 8b 44 24 24 mov eax, DWORD PTR i$2[rsp] 000c2 ff c0 inc eax 000c4 89 44 24 24 mov DWORD PTR i$2[rsp], eax $LN4@ReplaceRow: 000c8 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 000cd 48 89 44 24 50 mov QWORD PTR tv129[rsp], rax 000d2 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR NewRowValues$[rsp] 000da e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 000df 48 8b 4c 24 50 mov rcx, QWORD PTR tv129[rsp] 000e4 48 3b c8 cmp rcx, rax 000e7 0f 8d e2 00 00 00 jge $LN3@ReplaceRow ; 598 : { ; 599 : m_stempString.Format(_T("[%s]='%s', "), m_aFieldNames.GetAt(i), NewRowValues.GetAt(i)); 000ed 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 000f5 48 83 c0 28 add rax, 40 ; 00000028H 000f9 48 89 44 24 70 mov QWORD PTR tv152[rsp], rax 000fe 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 00103 48 8b d0 mov rdx, rax 00106 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR NewRowValues$[rsp] 0010e e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00113 48 8b 00 mov rax, QWORD PTR [rax] 00116 48 89 44 24 60 mov QWORD PTR $T4[rsp], rax 0011b 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00123 48 05 80 00 00 00 add rax, 128 ; 00000080H 00129 48 89 44 24 58 mov QWORD PTR tv146[rsp], rax 0012e 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 00133 48 8b d0 mov rdx, rax 00136 48 8b 4c 24 58 mov rcx, QWORD PTR tv146[rsp] 0013b e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00140 48 8b 00 mov rax, QWORD PTR [rax] 00143 48 89 44 24 68 mov QWORD PTR $T5[rsp], rax 00148 4c 8b 4c 24 60 mov r9, QWORD PTR $T4[rsp] 0014d 4c 8b 44 24 68 mov r8, QWORD PTR $T5[rsp] 00152 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331413 00159 48 8b 4c 24 70 mov rcx, QWORD PTR tv152[rsp] 0015e e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 600 : m_stempSql = m_stempSql + m_stempString; 00163 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0016b 48 83 c0 28 add rax, 40 ; 00000028H 0016f 48 8b 8c 24 20 01 00 00 mov rcx, QWORD PTR this$[rsp] 00177 48 83 c1 20 add rcx, 32 ; 00000020H 0017b 4c 8b c0 mov r8, rax 0017e 48 8b d1 mov rdx, rcx 00181 48 8d 8c 24 88 00 00 00 lea rcx, QWORD PTR $T6[rsp] 00189 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 0018e 48 89 44 24 78 mov QWORD PTR tv290[rsp], rax 00193 48 8b 44 24 78 mov rax, QWORD PTR tv290[rsp] 00198 48 89 84 24 80 00 00 00 mov QWORD PTR tv284[rsp], rax 001a0 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 001a8 48 83 c0 20 add rax, 32 ; 00000020H 001ac 48 8b 94 24 80 00 00 00 mov rdx, QWORD PTR tv284[rsp] 001b4 48 8b c8 mov rcx, rax 001b7 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 001bc 90 npad 1 001bd 48 8d 8c 24 88 00 00 00 lea rcx, QWORD PTR $T6[rsp] 001c5 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 601 : } 001ca e9 ef fe ff ff jmp $LN2@ReplaceRow $LN3@ReplaceRow: ; 602 : m_stempSql.Delete(m_stempSql.GetLength()-2, 2); 001cf 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 001d7 48 83 c0 20 add rax, 32 ; 00000020H 001db 48 89 84 24 90 00 00 00 mov QWORD PTR tv178[rsp], rax 001e3 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 001eb 48 83 c0 20 add rax, 32 ; 00000020H 001ef 48 8b c8 mov rcx, rax 001f2 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 001f7 83 e8 02 sub eax, 2 001fa 41 b8 02 00 00 00 mov r8d, 2 00200 8b d0 mov edx, eax 00202 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR tv178[rsp] 0020a e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 603 : m_stempSql = m_stempSql + _T(" WHERE ("); 0020f 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00217 48 83 c0 20 add rax, 32 ; 00000020H 0021b 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331414 00222 48 8b d0 mov rdx, rax 00225 48 8d 8c 24 a8 00 00 00 lea rcx, QWORD PTR $T7[rsp] 0022d e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 00232 48 89 84 24 98 00 00 00 mov QWORD PTR tv291[rsp], rax 0023a 48 8b 84 24 98 00 00 00 mov rax, QWORD PTR tv291[rsp] 00242 48 89 84 24 a0 00 00 00 mov QWORD PTR tv286[rsp], rax 0024a 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00252 48 83 c0 20 add rax, 32 ; 00000020H 00256 48 8b 94 24 a0 00 00 00 mov rdx, QWORD PTR tv286[rsp] 0025e 48 8b c8 mov rcx, rax 00261 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 00266 90 npad 1 00267 48 8d 8c 24 a8 00 00 00 lea rcx, QWORD PTR $T7[rsp] 0026f e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 604 : for (int j = 0; j < OldRowValues.GetSize()-1; j++) 00274 c7 44 24 28 00 00 00 00 mov DWORD PTR j$3[rsp], 0 0027c eb 0a jmp SHORT $LN7@ReplaceRow $LN5@ReplaceRow: 0027e 8b 44 24 28 mov eax, DWORD PTR j$3[rsp] 00282 ff c0 inc eax 00284 89 44 24 28 mov DWORD PTR j$3[rsp], eax $LN7@ReplaceRow: 00288 48 63 44 24 28 movsxd rax, DWORD PTR j$3[rsp] 0028d 48 89 84 24 b0 00 00 00 mov QWORD PTR tv189[rsp], rax 00295 48 8b 8c 24 30 01 00 00 mov rcx, QWORD PTR OldRowValues$[rsp] 0029d e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 002a2 48 ff c8 dec rax 002a5 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR tv189[rsp] 002ad 48 3b c8 cmp rcx, rax 002b0 0f 8d 00 01 00 00 jge $LN6@ReplaceRow ; 605 : { ; 606 : m_stempString.Format(_T("[%s]='%s' AND "), m_aFieldNames.GetAt(j), OldRowValues.GetAt(j)); 002b6 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 002be 48 83 c0 28 add rax, 40 ; 00000028H 002c2 48 89 84 24 d0 00 00 00 mov QWORD PTR tv213[rsp], rax 002ca 48 63 44 24 28 movsxd rax, DWORD PTR j$3[rsp] 002cf 48 8b d0 mov rdx, rax 002d2 48 8b 8c 24 30 01 00 00 mov rcx, QWORD PTR OldRowValues$[rsp] 002da e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 002df 48 8b 00 mov rax, QWORD PTR [rax] 002e2 48 89 84 24 c0 00 00 00 mov QWORD PTR $T8[rsp], rax 002ea 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 002f2 48 05 80 00 00 00 add rax, 128 ; 00000080H 002f8 48 89 84 24 b8 00 00 00 mov QWORD PTR tv207[rsp], rax 00300 48 63 44 24 28 movsxd rax, DWORD PTR j$3[rsp] 00305 48 8b d0 mov rdx, rax 00308 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR tv207[rsp] 00310 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00315 48 8b 00 mov rax, QWORD PTR [rax] 00318 48 89 84 24 c8 00 00 00 mov QWORD PTR $T9[rsp], rax 00320 4c 8b 8c 24 c0 00 00 00 mov r9, QWORD PTR $T8[rsp] 00328 4c 8b 84 24 c8 00 00 00 mov r8, QWORD PTR $T9[rsp] 00330 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331415 00337 48 8b 8c 24 d0 00 00 00 mov rcx, QWORD PTR tv213[rsp] 0033f e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 607 : m_stempSql = m_stempSql + m_stempString; 00344 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0034c 48 83 c0 28 add rax, 40 ; 00000028H 00350 48 8b 8c 24 20 01 00 00 mov rcx, QWORD PTR this$[rsp] 00358 48 83 c1 20 add rcx, 32 ; 00000020H 0035c 4c 8b c0 mov r8, rax 0035f 48 8b d1 mov rdx, rcx 00362 48 8d 8c 24 e8 00 00 00 lea rcx, QWORD PTR $T10[rsp] 0036a e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 0036f 48 89 84 24 d8 00 00 00 mov QWORD PTR tv292[rsp], rax 00377 48 8b 84 24 d8 00 00 00 mov rax, QWORD PTR tv292[rsp] 0037f 48 89 84 24 e0 00 00 00 mov QWORD PTR tv288[rsp], rax 00387 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0038f 48 83 c0 20 add rax, 32 ; 00000020H 00393 48 8b 94 24 e0 00 00 00 mov rdx, QWORD PTR tv288[rsp] 0039b 48 8b c8 mov rcx, rax 0039e e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 003a3 90 npad 1 003a4 48 8d 8c 24 e8 00 00 00 lea rcx, QWORD PTR $T10[rsp] 003ac e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 608 : } 003b1 e9 c8 fe ff ff jmp $LN5@ReplaceRow $LN6@ReplaceRow: ; 609 : m_stempSql.Delete(m_stempSql.GetLength()-4, 5); 003b6 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 003be 48 83 c0 20 add rax, 32 ; 00000020H 003c2 48 89 84 24 f0 00 00 00 mov QWORD PTR tv239[rsp], rax 003ca 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 003d2 48 83 c0 20 add rax, 32 ; 00000020H 003d6 48 8b c8 mov rcx, rax 003d9 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 003de 83 e8 04 sub eax, 4 003e1 41 b8 05 00 00 00 mov r8d, 5 003e7 8b d0 mov edx, eax 003e9 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR tv239[rsp] 003f1 e8 00 00 00 00 call ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ; ATL::CStringT > >::Delete ; 610 : m_stempSql += _T(")"); 003f6 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 003fe 48 83 c0 20 add rax, 32 ; 00000020H 00402 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331416 00409 48 8b c8 mov rcx, rax 0040c e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= 00411 90 npad 1 ; 611 : ; 612 : try ; 613 : { ; 614 : m_Database->ExecuteSQL(m_stempSql); 00412 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 0041a 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00421 48 89 84 24 00 01 00 00 mov QWORD PTR tv255[rsp], rax 00429 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00431 48 83 c0 20 add rax, 32 ; 00000020H 00435 48 8b c8 mov rcx, rax 00438 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 0043d 48 89 84 24 f8 00 00 00 mov QWORD PTR tv253[rsp], rax 00445 48 8b 94 24 f8 00 00 00 mov rdx, QWORD PTR tv253[rsp] 0044d 48 8b 8c 24 00 01 00 00 mov rcx, QWORD PTR tv255[rsp] 00455 e8 00 00 00 00 call ?ExecuteSQL@CDatabase@@QEAAXPEB_W@Z ; CDatabase::ExecuteSQL ; 615 : m_Database->Close(); 0045a 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 00462 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00469 48 8b 8c 24 20 01 00 00 mov rcx, QWORD PTR this$[rsp] 00471 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00478 48 8b 00 mov rax, QWORD PTR [rax] 0047b ff 50 28 call QWORD PTR [rax+40] ; 616 : Open(); 0047e 48 8b 8c 24 20 01 00 00 mov rcx, QWORD PTR this$[rsp] 00486 e8 00 00 00 00 call ?Open@CSpreadSheet@@AEAA_NXZ ; CSpreadSheet::Open ; 617 : return true; 0048b b0 01 mov al, 1 0048d eb 28 jmp SHORT $LN1@ReplaceRow __tryend$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z$1: 0048f eb 07 jmp SHORT $LN17@ReplaceRow $LN18@ReplaceRow: ; 618 : } ; 619 : catch(CDBException *pEx) ; 620 : { ; 621 : m_sLastError = pEx->m_strError; ; 622 : m_Database->Close(); ; 623 : pEx->Delete(); ; 624 : return false; 00491 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] 00496 eb 1f jmp SHORT $LN1@ReplaceRow $LN17@ReplaceRow: ; 625 : } ; 626 : } 00498 eb 1d jmp SHORT $LN1@ReplaceRow $LN8@ReplaceRow: ; 627 : else // µ±ÊÇ·Ö¸ô·ûµÄÎı¾Îļþʱ ; 628 : { ; 629 : m_sLastError = _T("Õâ¸öº­Êý¶Ô·Ö¸ô·ûÎı¾ÎļþÎÞЧ\n"); 0049a 48 8b 84 24 20 01 00 00 mov rax, QWORD PTR this$[rsp] 004a2 48 83 c0 50 add rax, 80 ; 00000050H 004a6 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331419 004ad 48 8b c8 mov rcx, rax 004b0 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= ; 630 : return false; 004b5 32 c0 xor al, al $LN1@ReplaceRow: ; 631 : } ; 632 : } 004b7 48 81 c4 18 01 00 00 add rsp, 280 ; 00000118H 004be c3 ret 0 004bf cc int 3 ?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z ENDP ; CSpreadSheet::ReplaceRows _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 i$2 = 36 j$3 = 40 tv85 = 48 tv87 = 56 tv89 = 64 tv95 = 72 tv129 = 80 tv146 = 88 $T4 = 96 $T5 = 104 tv152 = 112 tv290 = 120 tv284 = 128 $T6 = 136 tv178 = 144 tv291 = 152 tv286 = 160 $T7 = 168 tv189 = 176 tv207 = 184 $T8 = 192 $T9 = 200 tv213 = 208 tv292 = 216 tv288 = 224 $T10 = 232 tv239 = 240 tv253 = 248 tv255 = 256 pEx$11 = 264 this$ = 288 NewRowValues$ = 296 OldRowValues$ = 304 ?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA PROC ; `CSpreadSheet::ReplaceRows'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 88 00 00 00 lea rcx, QWORD PTR $T6[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA ENDP ; `CSpreadSheet::ReplaceRows'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 i$2 = 36 j$3 = 40 tv85 = 48 tv87 = 56 tv89 = 64 tv95 = 72 tv129 = 80 tv146 = 88 $T4 = 96 $T5 = 104 tv152 = 112 tv290 = 120 tv284 = 128 $T6 = 136 tv178 = 144 tv291 = 152 tv286 = 160 $T7 = 168 tv189 = 176 tv207 = 184 $T8 = 192 $T9 = 200 tv213 = 208 tv292 = 216 tv288 = 224 $T10 = 232 tv239 = 240 tv253 = 248 tv255 = 256 pEx$11 = 264 this$ = 288 NewRowValues$ = 296 OldRowValues$ = 304 ?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA PROC ; `CSpreadSheet::ReplaceRows'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d a8 00 00 00 lea rcx, QWORD PTR $T7[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$1@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA ENDP ; `CSpreadSheet::ReplaceRows'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 i$2 = 36 j$3 = 40 tv85 = 48 tv87 = 56 tv89 = 64 tv95 = 72 tv129 = 80 tv146 = 88 $T4 = 96 $T5 = 104 tv152 = 112 tv290 = 120 tv284 = 128 $T6 = 136 tv178 = 144 tv291 = 152 tv286 = 160 $T7 = 168 tv189 = 176 tv207 = 184 $T8 = 192 $T9 = 200 tv213 = 208 tv292 = 216 tv288 = 224 $T10 = 232 tv239 = 240 tv253 = 248 tv255 = 256 pEx$11 = 264 this$ = 288 NewRowValues$ = 296 OldRowValues$ = 304 ?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA PROC ; `CSpreadSheet::ReplaceRows'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d e8 00 00 00 lea rcx, QWORD PTR $T10[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$2@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA ENDP ; `CSpreadSheet::ReplaceRows'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 i$2 = 36 j$3 = 40 tv85 = 48 tv87 = 56 tv89 = 64 tv95 = 72 tv129 = 80 tv146 = 88 $T4 = 96 $T5 = 104 tv152 = 112 tv290 = 120 tv284 = 128 $T6 = 136 tv178 = 144 tv291 = 152 tv286 = 160 $T7 = 168 tv189 = 176 tv207 = 184 $T8 = 192 $T9 = 200 tv213 = 208 tv292 = 216 tv288 = 224 $T10 = 232 tv239 = 240 tv253 = 248 tv255 = 256 pEx$11 = 264 this$ = 288 NewRowValues$ = 296 OldRowValues$ = 304 ?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA PROC ; `CSpreadSheet::ReplaceRows'::`1'::catch$3 ; 620 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 55 push rbp 00006 48 83 ec 20 sub rsp, 32 ; 00000020H 0000a 48 8b ea mov rbp, rdx __catch$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z$0: ; 621 : m_sLastError = pEx->m_strError; 0000d 48 8b 85 08 01 00 00 mov rax, QWORD PTR pEx$11[rbp] 00014 48 83 c0 18 add rax, 24 00018 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 0001f 48 83 c1 50 add rcx, 80 ; 00000050H 00023 48 8b d0 mov rdx, rax 00026 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 622 : m_Database->Close(); 0002b 48 8b 85 20 01 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00039 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR this$[rbp] 00040 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00047 48 8b 00 mov rax, QWORD PTR [rax] 0004a ff 50 28 call QWORD PTR [rax+40] ; 623 : pEx->Delete(); 0004d 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR pEx$11[rbp] 00054 e8 00 00 00 00 call ?Delete@CException@@QEAAXXZ ; CException::Delete ; 624 : return false; 00059 c6 45 20 00 mov BYTE PTR $T1[rbp], 0 0005d 48 8d 05 00 00 00 00 lea rax, $LN18@catch$3 00064 eb 07 jmp SHORT $LN19@catch$3 ; 625 : } 00066 48 8d 05 00 00 00 00 lea rax, __tryend$?ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z$1 $LN19@catch$3: 0006d 48 83 c4 20 add rsp, 32 ; 00000020H 00071 5d pop rbp 00072 c3 ret 0 00073 cc int 3 ?catch$3@?0??ReplaceRows@CSpreadSheet@@QEAA_NAEAVCStringArray@@0@Z@4HA ENDP ; `CSpreadSheet::ReplaceRows'::`1'::catch$3 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z _TEXT SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 i$7 = 40 j$8 = 44 j$9 = 48 i$10 = 52 j$11 = 56 nullString$12 = 64 tempRow$ = 72 tv73 = 80 tv134 = 88 tv140 = 96 tv146 = 104 tv159 = 112 tv167 = 120 tv172 = 128 tv170 = 136 tv183 = 144 tv187 = 152 tv195 = 160 tv267 = 168 tv298 = 176 tv305 = 184 tv321 = 192 tv346 = 200 tv361 = 208 this$ = 240 CellValue$ = 248 column$ = 256 row$ = 264 ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z PROC ; CSpreadSheet::AddCell, COMDAT ; 412 : { $LN54: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 66 44 89 44 24 18 mov WORD PTR [rsp+24], r8w 0000b 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00010 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00015 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H ; 413 : if (0 == column) 0001c 0f bf 84 24 00 01 00 00 movsx eax, WORD PTR column$[rsp] 00024 85 c0 test eax, eax 00026 75 37 jne SHORT $LN17@AddCell ; 414 : { ; 415 : m_sLastError = "ÁÐÊý²»ÄÜΪ0\n"; 00028 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00030 48 83 c0 50 add rax, 80 ; 00000050H 00034 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331341 0003b 48 8b c8 mov rcx, rax 0003e e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 416 : return false; 00043 c6 44 24 20 00 mov BYTE PTR $T1[rsp], 0 00048 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 00050 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00055 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] 0005a e9 3d 08 00 00 jmp $LN1@AddCell $LN17@AddCell: ; 417 : } ; 418 : ; 419 : long tempRow; ; 420 : ; 421 : if (m_bExcel) // µ±ÊÇExcel±í¸ñÎļþʱ 0005f 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00067 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 0006b 85 c0 test eax, eax 0006d 74 68 je SHORT $LN18@AddCell ; 422 : { ; 423 : if (column > m_aFieldNames.GetSize() + 1) 0006f 48 0f bf 84 24 00 01 00 00 movsx rax, WORD PTR column$[rsp] 00078 48 89 44 24 50 mov QWORD PTR tv73[rsp], rax 0007d 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00085 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 0008c e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00091 48 ff c0 inc rax 00094 48 8b 4c 24 50 mov rcx, QWORD PTR tv73[rsp] 00099 48 3b c8 cmp rcx, rax 0009c 7e 37 jle SHORT $LN20@AddCell ; 424 : { ; 425 : m_sLastError = "Ö¸¶¨ÁкŴóÓÚ±í¸ñÖдæÔÚµÄ×ÜÁÐÊý\n"; 0009e 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 000a6 48 83 c0 50 add rax, 80 ; 00000050H 000aa 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331346 000b1 48 8b c8 mov rcx, rax 000b4 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 426 : return false; 000b9 c6 44 24 21 00 mov BYTE PTR $T2[rsp], 0 000be 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 000c6 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000cb 0f b6 44 24 21 movzx eax, BYTE PTR $T2[rsp] 000d0 e9 c7 07 00 00 jmp $LN1@AddCell $LN20@AddCell: ; 427 : } ; 428 : } 000d5 eb 2c jmp SHORT $LN19@AddCell $LN18@AddCell: ; 429 : else // µ±ÊÇ·Ö¸ô·ûÎı¾Îļþʱ ; 430 : { ; 431 : // ¸üÐÂ×î´óÁÐÊý ; 432 : if (column > m_dTotalColumns) 000d7 0f bf 84 24 00 01 00 00 movsx eax, WORD PTR column$[rsp] 000df 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 000e7 0f bf 49 0c movsx ecx, WORD PTR [rcx+12] 000eb 3b c1 cmp eax, ecx 000ed 7e 14 jle SHORT $LN19@AddCell ; 433 : { ; 434 : m_dTotalColumns = column; 000ef 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 000f7 0f b7 8c 24 00 01 00 00 movzx ecx, WORD PTR column$[rsp] 000ff 66 89 48 0c mov WORD PTR [rax+12], cx $LN19@AddCell: ; 435 : } ; 436 : } ; 437 : ; 438 : if (row) 00103 83 bc 24 08 01 00 00 00 cmp DWORD PTR row$[rsp], 0 0010b 0f 84 7b 04 00 00 je $LN22@AddCell ; 439 : { ; 440 : if (row <= m_dTotalRows) 00111 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00119 8b 40 08 mov eax, DWORD PTR [rax+8] 0011c 39 84 24 08 01 00 00 cmp DWORD PTR row$[rsp], eax 00123 0f 8f bc 02 00 00 jg $LN24@AddCell ; 441 : { ; 442 : ReadRow(m_atempArray, row); 00129 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00131 48 83 c0 58 add rax, 88 ; 00000058H 00135 44 8b 84 24 08 01 00 00 mov r8d, DWORD PTR row$[rsp] 0013d 48 8b d0 mov rdx, rax 00140 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00148 e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow ; 443 : ; 444 : // ¸Ä±äÖ¸¶¨ÐÐ ; 445 : m_atempArray.SetAtGrow(column-1, CellValue); 0014d 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00155 48 83 c0 58 add rax, 88 ; 00000058H 00159 48 89 44 24 58 mov QWORD PTR tv134[rsp], rax 0015e 0f bf 84 24 00 01 00 00 movsx eax, WORD PTR column$[rsp] 00166 ff c8 dec eax 00168 48 98 cdqe 0016a 4c 8b 84 24 f8 00 00 00 mov r8, QWORD PTR CellValue$[rsp] 00172 48 8b d0 mov rdx, rax 00175 48 8b 4c 24 58 mov rcx, QWORD PTR tv134[rsp] 0017a e8 00 00 00 00 call ?SetAtGrow@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::SetAtGrow ; 446 : ; 447 : if (row == 1) 0017f 83 bc 24 08 01 00 00 01 cmp DWORD PTR row$[rsp], 1 00187 0f 85 d0 01 00 00 jne $LN26@AddCell ; 448 : { ; 449 : if (m_bExcel) // ¼ì²éÁÐÍ·×Ö¶ÎÊÇ·ñÖØ¸´ 0018d 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00195 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00199 85 c0 test eax, eax 0019b 0f 84 74 01 00 00 je $LN27@AddCell ; 450 : { ; 451 : for (int i = 0; i < m_atempArray.GetSize(); i++) 001a1 c7 44 24 28 00 00 00 00 mov DWORD PTR i$7[rsp], 0 001a9 eb 0a jmp SHORT $LN4@AddCell $LN2@AddCell: 001ab 8b 44 24 28 mov eax, DWORD PTR i$7[rsp] 001af ff c0 inc eax 001b1 89 44 24 28 mov DWORD PTR i$7[rsp], eax $LN4@AddCell: 001b5 48 63 44 24 28 movsxd rax, DWORD PTR i$7[rsp] 001ba 48 89 44 24 60 mov QWORD PTR tv140[rsp], rax 001bf 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 001c7 48 83 c1 58 add rcx, 88 ; 00000058H 001cb e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 001d0 48 8b 4c 24 60 mov rcx, QWORD PTR tv140[rsp] 001d5 48 3b c8 cmp rcx, rax 001d8 0f 8d 37 01 00 00 jge $LN27@AddCell ; 452 : { ; 453 : for (int j = 0; j < m_atempArray.GetSize(); j++) 001de c7 44 24 30 00 00 00 00 mov DWORD PTR j$9[rsp], 0 001e6 eb 0a jmp SHORT $LN7@AddCell $LN5@AddCell: 001e8 8b 44 24 30 mov eax, DWORD PTR j$9[rsp] 001ec ff c0 inc eax 001ee 89 44 24 30 mov DWORD PTR j$9[rsp], eax $LN7@AddCell: 001f2 48 63 44 24 30 movsxd rax, DWORD PTR j$9[rsp] 001f7 48 89 44 24 68 mov QWORD PTR tv146[rsp], rax 001fc 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00204 48 83 c1 58 add rcx, 88 ; 00000058H 00208 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0020d 48 8b 4c 24 68 mov rcx, QWORD PTR tv146[rsp] 00212 48 3b c8 cmp rcx, rax 00215 0f 8d f5 00 00 00 jge $LN6@AddCell ; 454 : { ; 455 : if ((i != j) && (m_atempArray.GetAt(i) == m_atempArray.GetAt(j))) 0021b 8b 44 24 30 mov eax, DWORD PTR j$9[rsp] 0021f 39 44 24 28 cmp DWORD PTR i$7[rsp], eax 00223 0f 84 e2 00 00 00 je $LN28@AddCell 00229 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00231 48 83 c0 58 add rax, 88 ; 00000058H 00235 48 89 44 24 70 mov QWORD PTR tv159[rsp], rax 0023a 48 63 44 24 30 movsxd rax, DWORD PTR j$9[rsp] 0023f 48 8b d0 mov rdx, rax 00242 48 8b 4c 24 70 mov rcx, QWORD PTR tv159[rsp] 00247 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 0024c 48 89 84 24 80 00 00 00 mov QWORD PTR tv172[rsp], rax 00254 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0025c 48 83 c0 58 add rax, 88 ; 00000058H 00260 48 89 44 24 78 mov QWORD PTR tv167[rsp], rax 00265 48 63 44 24 28 movsxd rax, DWORD PTR i$7[rsp] 0026a 48 8b d0 mov rdx, rax 0026d 48 8b 4c 24 78 mov rcx, QWORD PTR tv167[rsp] 00272 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00277 48 89 84 24 88 00 00 00 mov QWORD PTR tv170[rsp], rax 0027f 48 8b 94 24 80 00 00 00 mov rdx, QWORD PTR tv172[rsp] 00287 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR tv170[rsp] 0028f e8 00 00 00 00 call ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ; ATL::operator== 00294 0f b6 c0 movzx eax, al 00297 85 c0 test eax, eax 00299 74 70 je SHORT $LN28@AddCell ; 456 : { ; 457 : m_sLastError.Format(_T("Ê×ÐÐ×Ö¶ÎÖØ¸´(ÁÐÍ·):%s\n"), m_atempArray.GetAt(i)); 0029b 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 002a3 48 83 c0 50 add rax, 80 ; 00000050H 002a7 48 89 84 24 98 00 00 00 mov QWORD PTR tv187[rsp], rax 002af 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 002b7 48 83 c0 58 add rax, 88 ; 00000058H 002bb 48 89 84 24 90 00 00 00 mov QWORD PTR tv183[rsp], rax 002c3 48 63 44 24 28 movsxd rax, DWORD PTR i$7[rsp] 002c8 48 8b d0 mov rdx, rax 002cb 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR tv183[rsp] 002d3 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 002d8 4c 8b 00 mov r8, QWORD PTR [rax] 002db 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331356 002e2 48 8b 8c 24 98 00 00 00 mov rcx, QWORD PTR tv187[rsp] 002ea e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 458 : return false; 002ef c6 44 24 22 00 mov BYTE PTR $T3[rsp], 0 002f4 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 002fc e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00301 0f b6 44 24 22 movzx eax, BYTE PTR $T3[rsp] 00306 e9 91 05 00 00 jmp $LN1@AddCell $LN28@AddCell: ; 459 : } ; 460 : } 0030b e9 d8 fe ff ff jmp $LN5@AddCell $LN6@AddCell: ; 461 : } 00310 e9 96 fe ff ff jmp $LN2@AddCell $LN27@AddCell: ; 462 : } ; 463 : ; 464 : // ¸üÐÂÊ×ÐÐ(ÁÐÍ·) ; 465 : m_aFieldNames.RemoveAll(); 00315 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0031d 48 05 80 00 00 00 add rax, 128 ; 00000080H 00323 48 8b c8 mov rcx, rax 00326 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 466 : m_aFieldNames.Copy(m_atempArray); 0032b 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00333 48 05 80 00 00 00 add rax, 128 ; 00000080H 00339 48 89 84 24 a0 00 00 00 mov QWORD PTR tv195[rsp], rax 00341 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00349 48 83 c0 58 add rax, 88 ; 00000058H 0034d 48 8b d0 mov rdx, rax 00350 48 8b 8c 24 a0 00 00 00 mov rcx, QWORD PTR tv195[rsp] 00358 e8 00 00 00 00 call ?Copy@CStringArray@@QEAAXAEBV1@@Z ; CStringArray::Copy $LN26@AddCell: ; 467 : } ; 468 : ; 469 : if (!AddRow(m_atempArray, row, true)) 0035d 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00365 48 83 c0 58 add rax, 88 ; 00000058H 00369 41 b1 01 mov r9b, 1 0036c 44 8b 84 24 08 01 00 00 mov r8d, DWORD PTR row$[rsp] 00374 48 8b d0 mov rdx, rax 00377 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0037f e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 00384 0f b6 c0 movzx eax, al 00387 85 c0 test eax, eax 00389 75 1c jne SHORT $LN29@AddCell ; 470 : { ; 471 : return false; 0038b c6 44 24 23 00 mov BYTE PTR $T4[rsp], 0 00390 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 00398 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0039d 0f b6 44 24 23 movzx eax, BYTE PTR $T4[rsp] 003a2 e9 f5 04 00 00 jmp $LN1@AddCell $LN29@AddCell: ; 472 : } ; 473 : ; 474 : if (!m_bTransaction) 003a7 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 003af 0f b6 40 03 movzx eax, BYTE PTR [rax+3] 003b3 85 c0 test eax, eax 003b5 75 0d jne SHORT $LN30@AddCell ; 475 : { ; 476 : Commit(); 003b7 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 003bf e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit $LN30@AddCell: ; 477 : } ; 478 : return true; 003c4 c6 44 24 24 01 mov BYTE PTR $T5[rsp], 1 003c9 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 003d1 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 003d6 0f b6 44 24 24 movzx eax, BYTE PTR $T5[rsp] 003db e9 bc 04 00 00 jmp $LN1@AddCell ; 479 : } 003e0 e9 a5 01 00 00 jmp $LN25@AddCell $LN24@AddCell: ; 480 : else ; 481 : { ; 482 : // ²åÈë¿ÕÐÐÖ±µ½Ö¸¶¨ÐкŠ; 483 : m_dCurrentRow = m_dTotalRows; 003e5 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 003ed 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 003f5 8b 49 08 mov ecx, DWORD PTR [rcx+8] 003f8 89 48 04 mov DWORD PTR [rax+4], ecx ; 484 : m_stempSql.Empty(); 003fb 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00403 48 83 c0 20 add rax, 32 ; 00000020H 00407 48 8b c8 mov rcx, rax 0040a e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 485 : CString nullString; 0040f 48 8d 4c 24 40 lea rcx, QWORD PTR nullString$12[rsp] 00414 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 00419 90 npad 1 ; 486 : for (int i = 1; i <= m_dTotalColumns; i++) 0041a c7 44 24 34 01 00 00 00 mov DWORD PTR i$10[rsp], 1 00422 eb 0a jmp SHORT $LN10@AddCell $LN8@AddCell: 00424 8b 44 24 34 mov eax, DWORD PTR i$10[rsp] 00428 ff c0 inc eax 0042a 89 44 24 34 mov DWORD PTR i$10[rsp], eax $LN10@AddCell: 0042e 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00436 0f bf 40 0c movsx eax, WORD PTR [rax+12] 0043a 39 44 24 34 cmp DWORD PTR i$10[rsp], eax 0043e 0f 8f c6 00 00 00 jg $LN9@AddCell ; 487 : { ; 488 : if (i != m_dTotalColumns) 00444 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0044c 0f bf 40 0c movsx eax, WORD PTR [rax+12] 00450 39 44 24 34 cmp DWORD PTR i$10[rsp], eax 00454 74 67 je SHORT $LN31@AddCell ; 489 : { ; 490 : if (m_bExcel) 00456 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0045e 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00462 85 c0 test eax, eax 00464 74 1f je SHORT $LN33@AddCell ; 491 : { ; 492 : nullString.Format(_T("\" \"%s"), m_sSeparator); 00466 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0046e 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 00472 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331366 00479 48 8d 4c 24 40 lea rcx, QWORD PTR nullString$12[rsp] 0047e e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 493 : } 00483 eb 1d jmp SHORT $LN34@AddCell $LN33@AddCell: ; 494 : else ; 495 : { ; 496 : nullString.Format(_T("\"\"%s"), m_sSeparator); 00485 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0048d 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 00491 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331367 00498 48 8d 4c 24 40 lea rcx, QWORD PTR nullString$12[rsp] 0049d e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format $LN34@AddCell: ; 497 : } ; 498 : m_stempSql += nullString; 004a2 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 004aa 48 83 c0 20 add rax, 32 ; 00000020H 004ae 48 8d 54 24 40 lea rdx, QWORD PTR nullString$12[rsp] 004b3 48 8b c8 mov rcx, rax 004b6 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= ; 499 : } 004bb eb 48 jmp SHORT $LN32@AddCell $LN31@AddCell: ; 500 : else ; 501 : { ; 502 : if (m_bExcel) 004bd 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 004c5 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 004c9 85 c0 test eax, eax 004cb 74 1d je SHORT $LN35@AddCell ; 503 : { ; 504 : m_stempSql += "\" \""; 004cd 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 004d5 48 83 c0 20 add rax, 32 ; 00000020H 004d9 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331370 004e0 48 8b c8 mov rcx, rax 004e3 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator+= ; 505 : } 004e8 eb 1b jmp SHORT $LN32@AddCell $LN35@AddCell: ; 506 : else ; 507 : { ; 508 : m_stempSql += "\"\""; 004ea 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 004f2 48 83 c0 20 add rax, 32 ; 00000020H 004f6 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331371 004fd 48 8b c8 mov rcx, rax 00500 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator+= $LN32@AddCell: ; 509 : } ; 510 : } ; 511 : } 00505 e9 1a ff ff ff jmp $LN8@AddCell $LN9@AddCell: ; 512 : for (int j = m_dTotalRows + 1; j < row; j++) 0050a 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00512 8b 40 08 mov eax, DWORD PTR [rax+8] 00515 ff c0 inc eax 00517 89 44 24 38 mov DWORD PTR j$11[rsp], eax 0051b eb 0a jmp SHORT $LN13@AddCell $LN11@AddCell: 0051d 8b 44 24 38 mov eax, DWORD PTR j$11[rsp] 00521 ff c0 inc eax 00523 89 44 24 38 mov DWORD PTR j$11[rsp], eax $LN13@AddCell: 00527 8b 84 24 08 01 00 00 mov eax, DWORD PTR row$[rsp] 0052e 39 44 24 38 cmp DWORD PTR j$11[rsp], eax 00532 7d 4c jge SHORT $LN12@AddCell ; 513 : { ; 514 : m_dCurrentRow++; 00534 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0053c 8b 40 04 mov eax, DWORD PTR [rax+4] 0053f ff c0 inc eax 00541 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00549 89 41 04 mov DWORD PTR [rcx+4], eax ; 515 : m_aRows.Add(m_stempSql); 0054c 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00554 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 0055a 48 89 84 24 a8 00 00 00 mov QWORD PTR tv267[rsp], rax 00562 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0056a 48 83 c0 20 add rax, 32 ; 00000020H 0056e 48 8b d0 mov rdx, rax 00571 48 8b 8c 24 a8 00 00 00 mov rcx, QWORD PTR tv267[rsp] 00579 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 516 : } 0057e eb 9d jmp SHORT $LN11@AddCell $LN12@AddCell: ; 517 : } 00580 48 8d 4c 24 40 lea rcx, QWORD PTR nullString$12[rsp] 00585 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN25@AddCell: ; 518 : } 0058a eb 25 jmp SHORT $LN23@AddCell $LN22@AddCell: ; 519 : else ; 520 : { ; 521 : tempRow = m_dCurrentRow; 0058c 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00594 8b 40 04 mov eax, DWORD PTR [rax+4] 00597 89 44 24 48 mov DWORD PTR tempRow$[rsp], eax ; 522 : m_dCurrentRow = m_dTotalRows; 0059b 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 005a3 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 005ab 8b 49 08 mov ecx, DWORD PTR [rcx+8] 005ae 89 48 04 mov DWORD PTR [rax+4], ecx $LN23@AddCell: ; 523 : } ; 524 : ; 525 : // ²åÈëµ¥Ôª¸ñ ; 526 : m_dCurrentRow++; 005b1 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 005b9 8b 40 04 mov eax, DWORD PTR [rax+4] 005bc ff c0 inc eax 005be 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 005c6 89 41 04 mov DWORD PTR [rcx+4], eax ; 527 : m_stempString.Empty(); 005c9 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 005d1 48 83 c0 28 add rax, 40 ; 00000028H 005d5 48 8b c8 mov rcx, rax 005d8 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 528 : for (int j = 1; j <= m_dTotalColumns; j++) 005dd c7 44 24 2c 01 00 00 00 mov DWORD PTR j$8[rsp], 1 005e5 eb 0a jmp SHORT $LN16@AddCell $LN14@AddCell: 005e7 8b 44 24 2c mov eax, DWORD PTR j$8[rsp] 005eb ff c0 inc eax 005ed 89 44 24 2c mov DWORD PTR j$8[rsp], eax $LN16@AddCell: 005f1 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 005f9 0f bf 40 0c movsx eax, WORD PTR [rax+12] 005fd 39 44 24 2c cmp DWORD PTR j$8[rsp], eax 00601 0f 8f d8 01 00 00 jg $LN15@AddCell ; 529 : { ; 530 : if (j != m_dTotalColumns) // ûÓÐ×îºóÒ»ÁÐ 00607 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0060f 0f bf 40 0c movsx eax, WORD PTR [rax+12] 00613 39 44 24 2c cmp DWORD PTR j$8[rsp], eax 00617 0f 84 12 01 00 00 je $LN37@AddCell ; 531 : { ; 532 : if (j != column) 0061d 0f bf 84 24 00 01 00 00 movsx eax, WORD PTR column$[rsp] 00625 39 44 24 2c cmp DWORD PTR j$8[rsp], eax 00629 0f 84 9c 00 00 00 je $LN39@AddCell ; 533 : { ; 534 : if (m_bExcel) 0062f 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00637 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 0063b 85 c0 test eax, eax 0063d 74 36 je SHORT $LN41@AddCell ; 535 : { ; 536 : m_stempSql.Format(_T("\" \"%s"), m_sSeparator); 0063f 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00647 48 83 c0 20 add rax, 32 ; 00000020H 0064b 48 89 84 24 b0 00 00 00 mov QWORD PTR tv298[rsp], rax 00653 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0065b 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 0065f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331378 00666 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR tv298[rsp] 0066e e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 537 : } 00673 eb 34 jmp SHORT $LN42@AddCell $LN41@AddCell: ; 538 : else ; 539 : { ; 540 : m_stempSql.Format(_T("\"\"%s"), m_sSeparator); 00675 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0067d 48 83 c0 20 add rax, 32 ; 00000020H 00681 48 89 84 24 b8 00 00 00 mov QWORD PTR tv305[rsp], rax 00689 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00691 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 00695 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331379 0069c 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR tv305[rsp] 006a4 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format $LN42@AddCell: ; 541 : } ; 542 : m_stempString += m_stempSql; 006a9 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 006b1 48 83 c0 20 add rax, 32 ; 00000020H 006b5 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 006bd 48 83 c1 28 add rcx, 40 ; 00000028H 006c1 48 8b d0 mov rdx, rax 006c4 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= ; 543 : } 006c9 eb 5f jmp SHORT $LN40@AddCell $LN39@AddCell: ; 544 : else ; 545 : { ; 546 : m_stempSql.Format(_T("\"%s\"%s"), CellValue, m_sSeparator); 006cb 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 006d3 48 83 c0 20 add rax, 32 ; 00000020H 006d7 48 89 84 24 c0 00 00 00 mov QWORD PTR tv321[rsp], rax 006df 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 006e7 4c 8b 48 48 mov r9, QWORD PTR [rax+72] 006eb 48 8b 84 24 f8 00 00 00 mov rax, QWORD PTR CellValue$[rsp] 006f3 4c 8b 00 mov r8, QWORD PTR [rax] 006f6 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331380 006fd 48 8b 8c 24 c0 00 00 00 mov rcx, QWORD PTR tv321[rsp] 00705 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 547 : m_stempString += m_stempSql; 0070a 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00712 48 83 c0 20 add rax, 32 ; 00000020H 00716 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0071e 48 83 c1 28 add rcx, 40 ; 00000028H 00722 48 8b d0 mov rdx, rax 00725 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= $LN40@AddCell: ; 548 : } ; 549 : } 0072a e9 ab 00 00 00 jmp $LN38@AddCell $LN37@AddCell: ; 550 : else // ×îºóÒ»ÁÐ ; 551 : { ; 552 : if (j != column) 0072f 0f bf 84 24 00 01 00 00 movsx eax, WORD PTR column$[rsp] 00737 39 44 24 2c cmp DWORD PTR j$8[rsp], eax 0073b 74 4a je SHORT $LN43@AddCell ; 553 : { ; 554 : if (m_bExcel) 0073d 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00745 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00749 85 c0 test eax, eax 0074b 74 1d je SHORT $LN45@AddCell ; 555 : { ; 556 : m_stempString += _T("\" \""); 0074d 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00755 48 83 c0 28 add rax, 40 ; 00000028H 00759 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331385 00760 48 8b c8 mov rcx, rax 00763 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= ; 557 : } 00768 eb 1b jmp SHORT $LN46@AddCell $LN45@AddCell: ; 558 : else ; 559 : { ; 560 : m_stempString += _T("\"\""); 0076a 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00772 48 83 c0 28 add rax, 40 ; 00000028H 00776 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331386 0077d 48 8b c8 mov rcx, rax 00780 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator+= $LN46@AddCell: ; 561 : } ; 562 : } 00785 eb 53 jmp SHORT $LN38@AddCell $LN43@AddCell: ; 563 : else ; 564 : { ; 565 : m_stempSql.Format(_T("\"%s\""), CellValue); 00787 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0078f 48 83 c0 20 add rax, 32 ; 00000020H 00793 48 89 84 24 c8 00 00 00 mov QWORD PTR tv346[rsp], rax 0079b 48 8b 84 24 f8 00 00 00 mov rax, QWORD PTR CellValue$[rsp] 007a3 4c 8b 00 mov r8, QWORD PTR [rax] 007a6 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331387 007ad 48 8b 8c 24 c8 00 00 00 mov rcx, QWORD PTR tv346[rsp] 007b5 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 566 : m_stempString += m_stempSql; 007ba 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 007c2 48 83 c0 20 add rax, 32 ; 00000020H 007c6 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 007ce 48 83 c1 28 add rcx, 40 ; 00000028H 007d2 48 8b d0 mov rdx, rax 007d5 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= $LN38@AddCell: ; 567 : } ; 568 : } ; 569 : } 007da e9 08 fe ff ff jmp $LN14@AddCell $LN15@AddCell: ; 570 : ; 571 : m_aRows.Add(m_stempString); 007df 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 007e7 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 007ed 48 89 84 24 d0 00 00 00 mov QWORD PTR tv361[rsp], rax 007f5 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 007fd 48 83 c0 28 add rax, 40 ; 00000028H 00801 48 8b d0 mov rdx, rax 00804 48 8b 8c 24 d0 00 00 00 mov rcx, QWORD PTR tv361[rsp] 0080c e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 572 : ; 573 : if (row > m_dTotalRows) 00811 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00819 8b 40 08 mov eax, DWORD PTR [rax+8] 0081c 39 84 24 08 01 00 00 cmp DWORD PTR row$[rsp], eax 00823 7e 14 jle SHORT $LN47@AddCell ; 574 : { ; 575 : m_dTotalRows = row; 00825 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0082d 8b 8c 24 08 01 00 00 mov ecx, DWORD PTR row$[rsp] 00834 89 48 08 mov DWORD PTR [rax+8], ecx ; 576 : } 00837 eb 2f jmp SHORT $LN48@AddCell $LN47@AddCell: ; 577 : else if (!row) 00839 83 bc 24 08 01 00 00 00 cmp DWORD PTR row$[rsp], 0 00841 75 25 jne SHORT $LN48@AddCell ; 578 : { ; 579 : m_dTotalRows = m_dCurrentRow; 00843 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 0084b 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00853 8b 49 04 mov ecx, DWORD PTR [rcx+4] 00856 89 48 08 mov DWORD PTR [rax+8], ecx ; 580 : m_dCurrentRow = tempRow; 00859 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00861 8b 4c 24 48 mov ecx, DWORD PTR tempRow$[rsp] 00865 89 48 04 mov DWORD PTR [rax+4], ecx $LN48@AddCell: ; 581 : } ; 582 : if (!m_bTransaction) 00868 48 8b 84 24 f0 00 00 00 mov rax, QWORD PTR this$[rsp] 00870 0f b6 40 03 movzx eax, BYTE PTR [rax+3] 00874 85 c0 test eax, eax 00876 75 0d jne SHORT $LN50@AddCell ; 583 : { ; 584 : Commit(); 00878 48 8b 8c 24 f0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00880 e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit $LN50@AddCell: ; 585 : } ; 586 : return true; 00885 c6 44 24 25 01 mov BYTE PTR $T6[rsp], 1 0088a 48 8b 8c 24 f8 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 00892 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00897 0f b6 44 24 25 movzx eax, BYTE PTR $T6[rsp] $LN1@AddCell: ; 587 : } 0089c 48 81 c4 e8 00 00 00 add rsp, 232 ; 000000e8H 008a3 c3 ret 0 ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z ENDP ; CSpreadSheet::AddCell _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 i$7 = 40 j$8 = 44 j$9 = 48 i$10 = 52 j$11 = 56 nullString$12 = 64 tempRow$ = 72 tv73 = 80 tv134 = 88 tv140 = 96 tv146 = 104 tv159 = 112 tv167 = 120 tv172 = 128 tv170 = 136 tv183 = 144 tv187 = 152 tv195 = 160 tv267 = 168 tv298 = 176 tv305 = 184 tv321 = 192 tv346 = 200 tv361 = 208 this$ = 240 CellValue$ = 248 column$ = 256 row$ = 264 ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA PROC ; `CSpreadSheet::AddCell'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d f8 00 00 00 mov rcx, QWORD PTR CellValue$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA ENDP ; `CSpreadSheet::AddCell'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 $T4 = 35 $T5 = 36 $T6 = 37 i$7 = 40 j$8 = 44 j$9 = 48 i$10 = 52 j$11 = 56 nullString$12 = 64 tempRow$ = 72 tv73 = 80 tv134 = 88 tv140 = 96 tv146 = 104 tv159 = 112 tv167 = 120 tv172 = 128 tv170 = 136 tv183 = 144 tv187 = 152 tv195 = 160 tv267 = 168 tv298 = 176 tv305 = 184 tv321 = 192 tv346 = 200 tv361 = 208 this$ = 240 CellValue$ = 248 column$ = 256 row$ = 264 ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA PROC ; `CSpreadSheet::AddCell'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 40 lea rcx, QWORD PTR nullString$12[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z@4HA ENDP ; `CSpreadSheet::AddCell'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z _TEXT SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv139 = 48 tv130 = 56 $T5 = 64 tv140 = 72 tv134 = 80 $T6 = 88 $T7 = 96 this$ = 128 CellValue$ = 136 column$ = 144 row$ = 152 Auto$ = 160 ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z PROC ; CSpreadSheet::AddCell, COMDAT ; 395 : { $LN9: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 78 sub rsp, 120 ; 00000078H ; 396 : short columnIndex = CalculateColumnNumber(column, Auto); 00018 48 8d 44 24 58 lea rax, QWORD PTR $T6[rsp] 0001d 48 89 44 24 28 mov QWORD PTR $T4[rsp], rax 00022 48 8b 94 24 90 00 00 00 mov rdx, QWORD PTR column$[rsp] 0002a 48 8b 4c 24 28 mov rcx, QWORD PTR $T4[rsp] 0002f e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00034 48 89 44 24 30 mov QWORD PTR tv139[rsp], rax 00039 48 8b 44 24 30 mov rax, QWORD PTR tv139[rsp] 0003e 48 89 44 24 38 mov QWORD PTR tv130[rsp], rax 00043 44 0f b6 84 24 a0 00 00 00 movzx r8d, BYTE PTR Auto$[rsp] 0004c 48 8b 54 24 38 mov rdx, QWORD PTR tv130[rsp] 00051 48 8b 8c 24 80 00 00 00 mov rcx, QWORD PTR this$[rsp] 00059 e8 00 00 00 00 call ?CalculateColumnNumber@CSpreadSheet@@AEAAFV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_N@Z ; CSpreadSheet::CalculateColumnNumber 0005e 66 89 44 24 24 mov WORD PTR columnIndex$[rsp], ax ; 397 : if (0 == columnIndex) 00063 0f bf 44 24 24 movsx eax, WORD PTR columnIndex$[rsp] 00068 85 c0 test eax, eax 0006a 75 2a jne SHORT $LN2@AddCell ; 398 : { ; 399 : return false; 0006c c6 44 24 20 00 mov BYTE PTR $T1[rsp], 0 00071 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 00079 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0007e 90 npad 1 0007f 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR column$[rsp] 00087 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0008c 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] 00091 e9 9e 00 00 00 jmp $LN1@AddCell $LN2@AddCell: ; 400 : } ; 401 : ; 402 : if (AddCell(CellValue, columnIndex, row)) 00096 48 8d 44 24 60 lea rax, QWORD PTR $T7[rsp] 0009b 48 89 44 24 40 mov QWORD PTR $T5[rsp], rax 000a0 48 8b 94 24 88 00 00 00 mov rdx, QWORD PTR CellValue$[rsp] 000a8 48 8b 4c 24 40 mov rcx, QWORD PTR $T5[rsp] 000ad e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 000b2 48 89 44 24 48 mov QWORD PTR tv140[rsp], rax 000b7 48 8b 44 24 48 mov rax, QWORD PTR tv140[rsp] 000bc 48 89 44 24 50 mov QWORD PTR tv134[rsp], rax 000c1 44 8b 8c 24 98 00 00 00 mov r9d, DWORD PTR row$[rsp] 000c9 44 0f b7 44 24 24 movzx r8d, WORD PTR columnIndex$[rsp] 000cf 48 8b 54 24 50 mov rdx, QWORD PTR tv134[rsp] 000d4 48 8b 8c 24 80 00 00 00 mov rcx, QWORD PTR this$[rsp] 000dc e8 00 00 00 00 call ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@FJ@Z ; CSpreadSheet::AddCell 000e1 0f b6 c0 movzx eax, al 000e4 85 c0 test eax, eax 000e6 74 27 je SHORT $LN3@AddCell ; 403 : { ; 404 : return true; 000e8 c6 44 24 21 01 mov BYTE PTR $T2[rsp], 1 000ed 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 000f5 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000fa 90 npad 1 000fb 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR column$[rsp] 00103 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00108 0f b6 44 24 21 movzx eax, BYTE PTR $T2[rsp] 0010d eb 25 jmp SHORT $LN1@AddCell $LN3@AddCell: ; 405 : } ; 406 : ; 407 : return false; 0010f c6 44 24 22 00 mov BYTE PTR $T3[rsp], 0 00114 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR CellValue$[rsp] 0011c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00121 90 npad 1 00122 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR column$[rsp] 0012a e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0012f 0f b6 44 24 22 movzx eax, BYTE PTR $T3[rsp] $LN1@AddCell: ; 408 : } 00134 48 83 c4 78 add rsp, 120 ; 00000078H 00138 c3 ret 0 ?AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z ENDP ; CSpreadSheet::AddCell _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv139 = 48 tv130 = 56 $T5 = 64 tv140 = 72 tv134 = 80 $T6 = 88 $T7 = 96 this$ = 128 CellValue$ = 136 column$ = 144 row$ = 152 Auto$ = 160 ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA PROC ; `CSpreadSheet::AddCell'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d 90 00 00 00 mov rcx, QWORD PTR column$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA ENDP ; `CSpreadSheet::AddCell'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv139 = 48 tv130 = 56 $T5 = 64 tv140 = 72 tv134 = 80 $T6 = 88 $T7 = 96 this$ = 128 CellValue$ = 136 column$ = 144 row$ = 152 Auto$ = 160 ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA PROC ; `CSpreadSheet::AddCell'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d 88 00 00 00 mov rcx, QWORD PTR CellValue$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$1@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA ENDP ; `CSpreadSheet::AddCell'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv139 = 48 tv130 = 56 $T5 = 64 tv140 = 72 tv134 = 80 $T6 = 88 $T7 = 96 this$ = 128 CellValue$ = 136 column$ = 144 row$ = 152 Auto$ = 160 ?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA PROC ; `CSpreadSheet::AddCell'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 28 mov rcx, QWORD PTR $T4[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$2@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA ENDP ; `CSpreadSheet::AddCell'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 columnIndex$ = 36 $T4 = 40 tv139 = 48 tv130 = 56 $T5 = 64 tv140 = 72 tv134 = 80 $T6 = 88 $T7 = 96 this$ = 128 CellValue$ = 136 column$ = 144 row$ = 152 Auto$ = 160 ?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA PROC ; `CSpreadSheet::AddCell'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 40 mov rcx, QWORD PTR $T5[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$3@?0??AddCell@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0J_N@Z@4HA ENDP ; `CSpreadSheet::AddCell'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z _TEXT SEGMENT i$1 = 32 i$2 = 36 j$3 = 40 i$4 = 44 j$5 = 48 nullString$6 = 56 tempRow$ = 64 tv69 = 72 tv74 = 80 tv93 = 88 tv91 = 96 tv137 = 104 tv156 = 112 tv170 = 120 tv194 = 128 tv198 = 136 $T7 = 144 $T8 = 152 tv216 = 160 tv234 = 168 tv256 = 176 tv266 = 184 tv334 = 192 tv347 = 200 this$ = 224 RowValues$ = 232 row$ = 240 replace$ = 248 ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z PROC ; CSpreadSheet::AddRow, COMDAT ; 228 : { $LN49: 00000 44 88 4c 24 20 mov BYTE PTR [rsp+32], r9b 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 81 ec d8 00 00 00 sub rsp, 216 ; 000000d8H ; 229 : long tempRow; ; 230 : ; 231 : if (row == 1) 0001b 83 bc 24 f0 00 00 00 01 cmp DWORD PTR row$[rsp], 1 00023 0f 85 c0 01 00 00 jne $LN17@AddRow ; 232 : { ; 233 : if (m_bExcel) 00029 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00031 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00035 85 c0 test eax, eax 00037 0f 84 6f 01 00 00 je $LN19@AddRow ; 234 : { ; 235 : // ¼ì²éExcel±í¸ñÊ×ÐÐÁÐÍ·×Ö¶ÎÊÇ·ñÖØ¸´ ; 236 : for (int i = 0; i < RowValues.GetSize(); i++) 0003d c7 44 24 20 00 00 00 00 mov DWORD PTR i$1[rsp], 0 00045 eb 0a jmp SHORT $LN4@AddRow $LN2@AddRow: 00047 8b 44 24 20 mov eax, DWORD PTR i$1[rsp] 0004b ff c0 inc eax 0004d 89 44 24 20 mov DWORD PTR i$1[rsp], eax $LN4@AddRow: 00051 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 00056 48 89 44 24 48 mov QWORD PTR tv69[rsp], rax 0005b 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00063 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00068 48 8b 4c 24 48 mov rcx, QWORD PTR tv69[rsp] 0006d 48 3b c8 cmp rcx, rax 00070 0f 8d dc 00 00 00 jge $LN3@AddRow ; 237 : { ; 238 : for (int j = 0; j < RowValues.GetSize(); j++) 00076 c7 44 24 28 00 00 00 00 mov DWORD PTR j$3[rsp], 0 0007e eb 0a jmp SHORT $LN7@AddRow $LN5@AddRow: 00080 8b 44 24 28 mov eax, DWORD PTR j$3[rsp] 00084 ff c0 inc eax 00086 89 44 24 28 mov DWORD PTR j$3[rsp], eax $LN7@AddRow: 0008a 48 63 44 24 28 movsxd rax, DWORD PTR j$3[rsp] 0008f 48 89 44 24 50 mov QWORD PTR tv74[rsp], rax 00094 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0009c e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 000a1 48 8b 4c 24 50 mov rcx, QWORD PTR tv74[rsp] 000a6 48 3b c8 cmp rcx, rax 000a9 0f 8d 9e 00 00 00 jge $LN6@AddRow ; 239 : { ; 240 : if ((i != j) && (RowValues.GetAt(i) == RowValues.GetAt(j))) 000af 8b 44 24 28 mov eax, DWORD PTR j$3[rsp] 000b3 39 44 24 20 cmp DWORD PTR i$1[rsp], eax 000b7 0f 84 8b 00 00 00 je $LN20@AddRow 000bd 48 63 44 24 28 movsxd rax, DWORD PTR j$3[rsp] 000c2 48 8b d0 mov rdx, rax 000c5 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 000cd e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 000d2 48 89 44 24 58 mov QWORD PTR tv93[rsp], rax 000d7 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 000dc 48 8b d0 mov rdx, rax 000df 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 000e7 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 000ec 48 89 44 24 60 mov QWORD PTR tv91[rsp], rax 000f1 48 8b 54 24 58 mov rdx, QWORD PTR tv93[rsp] 000f6 48 8b 4c 24 60 mov rcx, QWORD PTR tv91[rsp] 000fb e8 00 00 00 00 call ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ; ATL::operator== 00100 0f b6 c0 movzx eax, al 00103 85 c0 test eax, eax 00105 74 41 je SHORT $LN20@AddRow ; 241 : { ; 242 : m_sLastError.Format(_T("Ê×ÐÐÁÐÍ·×Ö¶ÎÖØ¸´:%s\n"), RowValues.GetAt(i)); 00107 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0010f 48 83 c0 50 add rax, 80 ; 00000050H 00113 48 89 44 24 68 mov QWORD PTR tv137[rsp], rax 00118 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 0011d 48 8b d0 mov rdx, rax 00120 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00128 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 0012d 4c 8b 00 mov r8, QWORD PTR [rax] 00130 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331261 00137 48 8b 4c 24 68 mov rcx, QWORD PTR tv137[rsp] 0013c e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 243 : return false; 00141 32 c0 xor al, al 00143 e9 7c 06 00 00 jmp $LN1@AddRow $LN20@AddRow: ; 244 : } ; 245 : } 00148 e9 33 ff ff ff jmp $LN5@AddRow $LN6@AddRow: ; 246 : } 0014d e9 f5 fe ff ff jmp $LN2@AddRow $LN3@AddRow: ; 247 : ; 248 : // ¼ì²éÊ×ÐÐÁÐÍ·ÊýÊÇ·ñ¼õС ; 249 : if (RowValues.GetSize() < m_dTotalColumns) 00152 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0015a e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0015f 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00167 48 0f bf 49 0c movsx rcx, WORD PTR [rcx+12] 0016c 48 3b c1 cmp rax, rcx 0016f 7d 22 jge SHORT $LN21@AddRow ; 250 : { ; 251 : m_sLastError = "ÐÂÁÐÍ·Êý²»ÄÜСÓÚÔ­ÁÐÍ·Êý"; 00171 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00179 48 83 c0 50 add rax, 80 ; 00000050H 0017d 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331263 00184 48 8b c8 mov rcx, rax 00187 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 252 : return false; 0018c 32 c0 xor al, al 0018e e9 31 06 00 00 jmp $LN1@AddRow $LN21@AddRow: ; 253 : } ; 254 : m_dTotalColumns = RowValues.GetSize(); 00193 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0019b e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 001a0 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 001a8 66 89 41 0c mov WORD PTR [rcx+12], ax $LN19@AddRow: ; 255 : } ; 256 : ; 257 : // ¸üÐÂÊ×ÐÐ(ÁÐÍ·) ; 258 : m_aFieldNames.RemoveAll(); 001ac 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 001b4 48 05 80 00 00 00 add rax, 128 ; 00000080H 001ba 48 8b c8 mov rcx, rax 001bd e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 259 : m_aFieldNames.Copy(RowValues); 001c2 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 001ca 48 05 80 00 00 00 add rax, 128 ; 00000080H 001d0 48 89 44 24 70 mov QWORD PTR tv156[rsp], rax 001d5 48 8b 94 24 e8 00 00 00 mov rdx, QWORD PTR RowValues$[rsp] 001dd 48 8b 4c 24 70 mov rcx, QWORD PTR tv156[rsp] 001e2 e8 00 00 00 00 call ?Copy@CStringArray@@QEAAXAEBV1@@Z ; CStringArray::Copy ; 260 : } 001e7 eb 42 jmp SHORT $LN18@AddRow $LN17@AddRow: ; 261 : else ; 262 : { ; 263 : if (m_bExcel) 001e9 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 001f1 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 001f5 85 c0 test eax, eax 001f7 74 32 je SHORT $LN18@AddRow ; 264 : { ; 265 : if (m_dTotalColumns == 0) 001f9 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00201 0f bf 40 0c movsx eax, WORD PTR [rax+12] 00205 85 c0 test eax, eax 00207 75 22 jne SHORT $LN18@AddRow ; 266 : { ; 267 : m_sLastError = "ûÓÐÁÐÍ·£¬Ê×ÏÈÒª¼ÓÈëÁÐÍ·\n"; 00209 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00211 48 83 c0 50 add rax, 80 ; 00000050H 00215 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331266 0021c 48 8b c8 mov rcx, rax 0021f e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 268 : return false; 00224 32 c0 xor al, al 00226 e9 99 05 00 00 jmp $LN1@AddRow $LN18@AddRow: ; 269 : } ; 270 : } ; 271 : } ; 272 : ; 273 : if (m_bExcel) // Excel±í¸ñÎļþʱ 0022b 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00233 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00237 85 c0 test eax, eax 00239 74 54 je SHORT $LN24@AddRow ; 274 : { ; 275 : if (RowValues.GetSize() > m_aFieldNames.GetSize()) 0023b 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00243 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00248 48 89 44 24 78 mov QWORD PTR tv170[rsp], rax 0024d 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00255 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 0025c e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00261 48 8b 4c 24 78 mov rcx, QWORD PTR tv170[rsp] 00266 48 3b c8 cmp rcx, rax 00269 7e 22 jle SHORT $LN26@AddRow ; 276 : { ; 277 : m_sLastError = "ÁÐÊý´óÓÚ±í¸ñÖÐ×ÜÁÐÊý\n"; 0026b 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00273 48 83 c0 50 add rax, 80 ; 00000050H 00277 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331270 0027e 48 8b c8 mov rcx, rax 00281 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 278 : return false; 00286 32 c0 xor al, al 00288 e9 37 05 00 00 jmp $LN1@AddRow $LN26@AddRow: ; 279 : } ; 280 : } 0028d eb 38 jmp SHORT $LN25@AddRow $LN24@AddRow: ; 281 : else // ·Ö¸ô·ûÎı¾Îļþʱ ; 282 : { ; 283 : // ¸üÐÂ×î´óÁÐÊý ; 284 : if (RowValues.GetSize() > m_dTotalColumns) 0028f 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00297 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0029c 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 002a4 48 0f bf 49 0c movsx rcx, WORD PTR [rcx+12] 002a9 48 3b c1 cmp rax, rcx 002ac 7e 19 jle SHORT $LN25@AddRow ; 285 : { ; 286 : m_dTotalColumns = RowValues.GetSize(); 002ae 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 002b6 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 002bb 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 002c3 66 89 41 0c mov WORD PTR [rcx+12], ax $LN25@AddRow: ; 287 : } ; 288 : } ; 289 : ; 290 : // ת»»ÐÐÖµ ; 291 : m_stempString.Empty(); 002c7 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 002cf 48 83 c0 28 add rax, 40 ; 00000028H 002d3 48 8b c8 mov rcx, rax 002d6 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 292 : for (int i = 0; i < RowValues.GetSize(); i++) 002db c7 44 24 24 00 00 00 00 mov DWORD PTR i$2[rsp], 0 002e3 eb 0a jmp SHORT $LN10@AddRow $LN8@AddRow: 002e5 8b 44 24 24 mov eax, DWORD PTR i$2[rsp] 002e9 ff c0 inc eax 002eb 89 44 24 24 mov DWORD PTR i$2[rsp], eax $LN10@AddRow: 002ef 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 002f4 48 89 84 24 80 00 00 00 mov QWORD PTR tv194[rsp], rax 002fc 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00304 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00309 48 8b 8c 24 80 00 00 00 mov rcx, QWORD PTR tv194[rsp] 00311 48 3b c8 cmp rcx, rax 00314 0f 8d 21 01 00 00 jge $LN9@AddRow ; 293 : { ; 294 : if (i != RowValues.GetSize()-1) // ²»ÊÇ×îºóÒ»ÁÐ 0031a 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 0031f 48 89 84 24 88 00 00 00 mov QWORD PTR tv198[rsp], rax 00327 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 0032f e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00334 48 ff c8 dec rax 00337 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR tv198[rsp] 0033f 48 3b c8 cmp rcx, rax 00342 0f 84 8e 00 00 00 je $LN28@AddRow ; 295 : { ; 296 : m_stempSql.Format(_T("\"%s\"%s"), RowValues.GetAt(i), m_sSeparator); 00348 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00350 48 83 c0 20 add rax, 32 ; 00000020H 00354 48 89 84 24 a0 00 00 00 mov QWORD PTR tv216[rsp], rax 0035c 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00364 48 8b 40 48 mov rax, QWORD PTR [rax+72] 00368 48 89 84 24 90 00 00 00 mov QWORD PTR $T7[rsp], rax 00370 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 00375 48 8b d0 mov rdx, rax 00378 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 00380 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00385 48 8b 00 mov rax, QWORD PTR [rax] 00388 48 89 84 24 98 00 00 00 mov QWORD PTR $T8[rsp], rax 00390 4c 8b 8c 24 90 00 00 00 mov r9, QWORD PTR $T7[rsp] 00398 4c 8b 84 24 98 00 00 00 mov r8, QWORD PTR $T8[rsp] 003a0 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331274 003a7 48 8b 8c 24 a0 00 00 00 mov rcx, QWORD PTR tv216[rsp] 003af e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 297 : m_stempString += m_stempSql; 003b4 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 003bc 48 83 c0 20 add rax, 32 ; 00000020H 003c0 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 003c8 48 83 c1 28 add rcx, 40 ; 00000028H 003cc 48 8b d0 mov rdx, rax 003cf e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= ; 298 : } 003d4 eb 60 jmp SHORT $LN29@AddRow $LN28@AddRow: ; 299 : else // ×îºóÒ»ÁÐ ; 300 : { ; 301 : m_stempSql.Format(_T("\"%s\""), RowValues.GetAt(i)); 003d6 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 003de 48 83 c0 20 add rax, 32 ; 00000020H 003e2 48 89 84 24 a8 00 00 00 mov QWORD PTR tv234[rsp], rax 003ea 48 63 44 24 24 movsxd rax, DWORD PTR i$2[rsp] 003ef 48 8b d0 mov rdx, rax 003f2 48 8b 8c 24 e8 00 00 00 mov rcx, QWORD PTR RowValues$[rsp] 003fa e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 003ff 4c 8b 00 mov r8, QWORD PTR [rax] 00402 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331275 00409 48 8b 8c 24 a8 00 00 00 mov rcx, QWORD PTR tv234[rsp] 00411 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 302 : m_stempString += m_stempSql; 00416 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0041e 48 83 c0 20 add rax, 32 ; 00000020H 00422 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0042a 48 83 c1 28 add rcx, 40 ; 00000028H 0042e 48 8b d0 mov rdx, rax 00431 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= $LN29@AddRow: ; 303 : } ; 304 : } 00436 e9 aa fe ff ff jmp $LN8@AddRow $LN9@AddRow: ; 305 : ; 306 : if (row) 0043b 83 bc 24 f0 00 00 00 00 cmp DWORD PTR row$[rsp], 0 00443 0f 84 96 02 00 00 je $LN30@AddRow ; 307 : { ; 308 : if (row <= m_dTotalRows) // ²»ÓÃÌí¼ÓÐÂÐÐ 00449 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00451 8b 40 08 mov eax, DWORD PTR [rax+8] 00454 39 84 24 f0 00 00 00 cmp DWORD PTR row$[rsp], eax 0045b 0f 8f d7 00 00 00 jg $LN32@AddRow ; 309 : { ; 310 : if (replace) // Ìæ»»ÐÐ 00461 0f b6 84 24 f8 00 00 00 movzx eax, BYTE PTR replace$[rsp] 00469 85 c0 test eax, eax 0046b 74 43 je SHORT $LN34@AddRow ; 311 : { ; 312 : m_aRows.SetAt(row-1, m_stempString); 0046d 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00475 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 0047b 48 89 84 24 b0 00 00 00 mov QWORD PTR tv256[rsp], rax 00483 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0048b 48 83 c0 28 add rax, 40 ; 00000028H 0048f 8b 8c 24 f0 00 00 00 mov ecx, DWORD PTR row$[rsp] 00496 ff c9 dec ecx 00498 48 63 c9 movsxd rcx, ecx 0049b 4c 8b c0 mov r8, rax 0049e 48 8b d1 mov rdx, rcx 004a1 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR tv256[rsp] 004a9 e8 00 00 00 00 call ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::SetAt ; 313 : } 004ae eb 5f jmp SHORT $LN35@AddRow $LN34@AddRow: ; 314 : else // ²åÈëÐÐ ; 315 : { ; 316 : m_aRows.InsertAt(row-1, m_stempString); 004b0 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 004b8 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 004be 48 89 84 24 b8 00 00 00 mov QWORD PTR tv266[rsp], rax 004c6 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 004ce 48 83 c0 28 add rax, 40 ; 00000028H 004d2 8b 8c 24 f0 00 00 00 mov ecx, DWORD PTR row$[rsp] 004d9 ff c9 dec ecx 004db 48 63 c9 movsxd rcx, ecx 004de 41 b9 01 00 00 00 mov r9d, 1 004e4 4c 8b c0 mov r8, rax 004e7 48 8b d1 mov rdx, rcx 004ea 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR tv266[rsp] 004f2 e8 00 00 00 00 call ?InsertAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CStringArray::InsertAt ; 317 : m_dTotalRows++; 004f7 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 004ff 8b 40 08 mov eax, DWORD PTR [rax+8] 00502 ff c0 inc eax 00504 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0050c 89 41 08 mov DWORD PTR [rcx+8], eax $LN35@AddRow: ; 318 : } ; 319 : ; 320 : if (!m_bTransaction) 0050f 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00517 0f b6 40 03 movzx eax, BYTE PTR [rax+3] 0051b 85 c0 test eax, eax 0051d 75 0d jne SHORT $LN36@AddRow ; 321 : { ; 322 : Commit(); 0051f 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00527 e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit $LN36@AddRow: ; 323 : } ; 324 : return true; 0052c b0 01 mov al, 1 0052e e9 91 02 00 00 jmp $LN1@AddRow ; 325 : } 00533 e9 a5 01 00 00 jmp $LN33@AddRow $LN32@AddRow: ; 326 : else // Ìí¼ÓÐÂÐÐ ; 327 : { ; 328 : // ²åÈë¿ÕÐÐÖ±µ½Ö¸¶¨ÐкŠ; 329 : m_dCurrentRow = m_dTotalRows; 00538 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00540 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00548 8b 49 08 mov ecx, DWORD PTR [rcx+8] 0054b 89 48 04 mov DWORD PTR [rax+4], ecx ; 330 : m_stempSql.Empty(); 0054e 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00556 48 83 c0 20 add rax, 32 ; 00000020H 0055a 48 8b c8 mov rcx, rax 0055d e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 331 : CString nullString; 00562 48 8d 4c 24 38 lea rcx, QWORD PTR nullString$6[rsp] 00567 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 0056c 90 npad 1 ; 332 : for (int i = 1; i <= m_dTotalColumns; i++) 0056d c7 44 24 2c 01 00 00 00 mov DWORD PTR i$4[rsp], 1 00575 eb 0a jmp SHORT $LN13@AddRow $LN11@AddRow: 00577 8b 44 24 2c mov eax, DWORD PTR i$4[rsp] 0057b ff c0 inc eax 0057d 89 44 24 2c mov DWORD PTR i$4[rsp], eax $LN13@AddRow: 00581 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00589 0f bf 40 0c movsx eax, WORD PTR [rax+12] 0058d 39 44 24 2c cmp DWORD PTR i$4[rsp], eax 00591 0f 8f c6 00 00 00 jg $LN12@AddRow ; 333 : { ; 334 : if (i != m_dTotalColumns) 00597 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0059f 0f bf 40 0c movsx eax, WORD PTR [rax+12] 005a3 39 44 24 2c cmp DWORD PTR i$4[rsp], eax 005a7 74 67 je SHORT $LN37@AddRow ; 335 : { ; 336 : if (m_bExcel) 005a9 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 005b1 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 005b5 85 c0 test eax, eax 005b7 74 1f je SHORT $LN39@AddRow ; 337 : { ; 338 : nullString.Format(_T("\" \"%s"), m_sSeparator); 005b9 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 005c1 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 005c5 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331287 005cc 48 8d 4c 24 38 lea rcx, QWORD PTR nullString$6[rsp] 005d1 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 339 : } 005d6 eb 1d jmp SHORT $LN40@AddRow $LN39@AddRow: ; 340 : else ; 341 : { ; 342 : nullString.Format(_T("\"\"%s"), m_sSeparator); 005d8 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 005e0 4c 8b 40 48 mov r8, QWORD PTR [rax+72] 005e4 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331288 005eb 48 8d 4c 24 38 lea rcx, QWORD PTR nullString$6[rsp] 005f0 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format $LN40@AddRow: ; 343 : } ; 344 : m_stempSql += nullString; 005f5 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 005fd 48 83 c0 20 add rax, 32 ; 00000020H 00601 48 8d 54 24 38 lea rdx, QWORD PTR nullString$6[rsp] 00606 48 8b c8 mov rcx, rax 00609 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= ; 345 : } 0060e eb 48 jmp SHORT $LN38@AddRow $LN37@AddRow: ; 346 : else ; 347 : { ; 348 : if (m_bExcel) 00610 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00618 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 0061c 85 c0 test eax, eax 0061e 74 1d je SHORT $LN41@AddRow ; 349 : { ; 350 : m_stempSql += "\" \""; 00620 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00628 48 83 c0 20 add rax, 32 ; 00000020H 0062c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331291 00633 48 8b c8 mov rcx, rax 00636 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator+= ; 351 : } 0063b eb 1b jmp SHORT $LN38@AddRow $LN41@AddRow: ; 352 : else ; 353 : { ; 354 : m_stempSql += "\"\""; 0063d 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00645 48 83 c0 20 add rax, 32 ; 00000020H 00649 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331292 00650 48 8b c8 mov rcx, rax 00653 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator+= $LN38@AddRow: ; 355 : } ; 356 : } ; 357 : } 00658 e9 1a ff ff ff jmp $LN11@AddRow $LN12@AddRow: ; 358 : for (int j = m_dTotalRows + 1; j < row; j++) 0065d 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00665 8b 40 08 mov eax, DWORD PTR [rax+8] 00668 ff c0 inc eax 0066a 89 44 24 30 mov DWORD PTR j$5[rsp], eax 0066e eb 0a jmp SHORT $LN16@AddRow $LN14@AddRow: 00670 8b 44 24 30 mov eax, DWORD PTR j$5[rsp] 00674 ff c0 inc eax 00676 89 44 24 30 mov DWORD PTR j$5[rsp], eax $LN16@AddRow: 0067a 8b 84 24 f0 00 00 00 mov eax, DWORD PTR row$[rsp] 00681 39 44 24 30 cmp DWORD PTR j$5[rsp], eax 00685 7d 4c jge SHORT $LN15@AddRow ; 359 : { ; 360 : m_dCurrentRow++; 00687 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0068f 8b 40 04 mov eax, DWORD PTR [rax+4] 00692 ff c0 inc eax 00694 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0069c 89 41 04 mov DWORD PTR [rcx+4], eax ; 361 : m_aRows.Add(m_stempSql); 0069f 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 006a7 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 006ad 48 89 84 24 c0 00 00 00 mov QWORD PTR tv334[rsp], rax 006b5 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 006bd 48 83 c0 20 add rax, 32 ; 00000020H 006c1 48 8b d0 mov rdx, rax 006c4 48 8b 8c 24 c0 00 00 00 mov rcx, QWORD PTR tv334[rsp] 006cc e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 362 : } 006d1 eb 9d jmp SHORT $LN14@AddRow $LN15@AddRow: ; 363 : } 006d3 48 8d 4c 24 38 lea rcx, QWORD PTR nullString$6[rsp] 006d8 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN33@AddRow: ; 364 : } 006dd eb 25 jmp SHORT $LN31@AddRow $LN30@AddRow: ; 365 : else ; 366 : { ; 367 : tempRow = m_dCurrentRow; 006df 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 006e7 8b 40 04 mov eax, DWORD PTR [rax+4] 006ea 89 44 24 40 mov DWORD PTR tempRow$[rsp], eax ; 368 : m_dCurrentRow = m_dTotalRows; 006ee 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 006f6 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 006fe 8b 49 08 mov ecx, DWORD PTR [rcx+8] 00701 89 48 04 mov DWORD PTR [rax+4], ecx $LN31@AddRow: ; 369 : } ; 370 : ; 371 : // ²åÈëÒ»ÐÂÐÐ ; 372 : m_dCurrentRow++; 00704 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0070c 8b 40 04 mov eax, DWORD PTR [rax+4] 0070f ff c0 inc eax 00711 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00719 89 41 04 mov DWORD PTR [rcx+4], eax ; 373 : m_aRows.Add(m_stempString); 0071c 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00724 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 0072a 48 89 84 24 c8 00 00 00 mov QWORD PTR tv347[rsp], rax 00732 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0073a 48 83 c0 28 add rax, 40 ; 00000028H 0073e 48 8b d0 mov rdx, rax 00741 48 8b 8c 24 c8 00 00 00 mov rcx, QWORD PTR tv347[rsp] 00749 e8 00 00 00 00 call ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::Add ; 374 : ; 375 : if (row > m_dTotalRows) 0074e 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00756 8b 40 08 mov eax, DWORD PTR [rax+8] 00759 39 84 24 f0 00 00 00 cmp DWORD PTR row$[rsp], eax 00760 7e 14 jle SHORT $LN43@AddRow ; 376 : { ; 377 : m_dTotalRows = row; 00762 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0076a 8b 8c 24 f0 00 00 00 mov ecx, DWORD PTR row$[rsp] 00771 89 48 08 mov DWORD PTR [rax+8], ecx ; 378 : } 00774 eb 2f jmp SHORT $LN44@AddRow $LN43@AddRow: ; 379 : else if (!row) 00776 83 bc 24 f0 00 00 00 00 cmp DWORD PTR row$[rsp], 0 0077e 75 25 jne SHORT $LN44@AddRow ; 380 : { ; 381 : m_dTotalRows = m_dCurrentRow; 00780 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 00788 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00790 8b 49 04 mov ecx, DWORD PTR [rcx+4] 00793 89 48 08 mov DWORD PTR [rax+8], ecx ; 382 : m_dCurrentRow = tempRow; 00796 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 0079e 8b 4c 24 40 mov ecx, DWORD PTR tempRow$[rsp] 007a2 89 48 04 mov DWORD PTR [rax+4], ecx $LN44@AddRow: ; 383 : } ; 384 : if (!m_bTransaction) 007a5 48 8b 84 24 e0 00 00 00 mov rax, QWORD PTR this$[rsp] 007ad 0f b6 40 03 movzx eax, BYTE PTR [rax+3] 007b1 85 c0 test eax, eax 007b3 75 0d jne SHORT $LN46@AddRow ; 385 : { ; 386 : Commit(); 007b5 48 8b 8c 24 e0 00 00 00 mov rcx, QWORD PTR this$[rsp] 007bd e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit $LN46@AddRow: ; 387 : } ; 388 : ; 389 : return true; 007c2 b0 01 mov al, 1 $LN1@AddRow: ; 390 : } 007c4 48 81 c4 d8 00 00 00 add rsp, 216 ; 000000d8H 007cb c3 ret 0 ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ENDP ; CSpreadSheet::AddRow _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT i$1 = 32 i$2 = 36 j$3 = 40 i$4 = 44 j$5 = 48 nullString$6 = 56 tempRow$ = 64 tv69 = 72 tv74 = 80 tv93 = 88 tv91 = 96 tv137 = 104 tv156 = 112 tv170 = 120 tv194 = 128 tv198 = 136 $T7 = 144 $T8 = 152 tv216 = 160 tv234 = 168 tv256 = 176 tv266 = 184 tv334 = 192 tv347 = 200 this$ = 224 RowValues$ = 232 row$ = 240 replace$ = 248 ?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA PROC ; `CSpreadSheet::AddRow'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 38 lea rcx, QWORD PTR nullString$6[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z@4HA ENDP ; `CSpreadSheet::AddRow'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z _TEXT SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 tv86 = 40 tv88 = 48 tv90 = 56 tv198 = 64 tv191 = 72 tv199 = 80 tv193 = 88 tv138 = 96 $T4 = 104 $T5 = 112 tv143 = 120 tv155 = 128 tv157 = 136 pEx$6 = 144 this$ = 176 SheetName$ = 184 ?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z PROC ; CSpreadSheet::DeleteSheet, COMDAT ; 194 : { $LN14: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 81 ec a8 00 00 00 sub rsp, 168 ; 000000a8H ; 195 : if (m_bExcel) // µ±ÊÇExcel±í¸ñʱ 00011 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00019 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 0001d 85 c0 test eax, eax 0001f 0f 84 ef 01 00 00 je $LN2@DeleteShee ; 196 : { ; 197 : // ɾ³ý±í¸ñ ; 198 : m_Database->OpenEx(m_sDsn, CDatabase::noOdbcDialog); 00025 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0002d 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00034 48 89 44 24 30 mov QWORD PTR tv88[rsp], rax 00039 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00041 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00048 48 8b 00 mov rax, QWORD PTR [rax] 0004b 48 8b 40 20 mov rax, QWORD PTR [rax+32] 0004f 48 89 44 24 38 mov QWORD PTR tv90[rsp], rax 00054 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0005c 48 83 c0 18 add rax, 24 00060 48 8b c8 mov rcx, rax 00063 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00068 48 89 44 24 28 mov QWORD PTR tv86[rsp], rax 0006d 41 b8 08 00 00 00 mov r8d, 8 00073 48 8b 54 24 28 mov rdx, QWORD PTR tv86[rsp] 00078 48 8b 4c 24 30 mov rcx, QWORD PTR tv88[rsp] 0007d ff 54 24 38 call QWORD PTR tv90[rsp] ; 199 : SheetName = _T("[") + SheetName + _T("$A1:IV65536]"); 00081 4c 8b 84 24 b8 00 00 00 mov r8, QWORD PTR SheetName$[rsp] 00089 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331219 00090 48 8d 4c 24 70 lea rcx, QWORD PTR $T5[rsp] 00095 e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z ; ATL::operator+ 0009a 48 89 44 24 40 mov QWORD PTR tv198[rsp], rax 0009f 48 8b 44 24 40 mov rax, QWORD PTR tv198[rsp] 000a4 48 89 44 24 48 mov QWORD PTR tv191[rsp], rax 000a9 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:$SG331218 000b0 48 8b 54 24 48 mov rdx, QWORD PTR tv191[rsp] 000b5 48 8d 4c 24 68 lea rcx, QWORD PTR $T4[rsp] 000ba e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ; ATL::operator+ 000bf 48 89 44 24 50 mov QWORD PTR tv199[rsp], rax 000c4 48 8b 44 24 50 mov rax, QWORD PTR tv199[rsp] 000c9 48 89 44 24 58 mov QWORD PTR tv193[rsp], rax 000ce 48 8b 44 24 58 mov rax, QWORD PTR tv193[rsp] 000d3 48 89 44 24 60 mov QWORD PTR tv138[rsp], rax 000d8 48 8b 54 24 60 mov rdx, QWORD PTR tv138[rsp] 000dd 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR SheetName$[rsp] 000e5 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 000ea 90 npad 1 000eb 48 8d 4c 24 68 lea rcx, QWORD PTR $T4[rsp] 000f0 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000f5 90 npad 1 000f6 48 8d 4c 24 70 lea rcx, QWORD PTR $T5[rsp] 000fb e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 200 : m_stempSql.Format (_T("DROP TABLE %s"), SheetName); 00100 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00108 48 83 c0 20 add rax, 32 ; 00000020H 0010c 48 89 44 24 78 mov QWORD PTR tv143[rsp], rax 00111 48 8b 84 24 b8 00 00 00 mov rax, QWORD PTR SheetName$[rsp] 00119 4c 8b 00 mov r8, QWORD PTR [rax] 0011c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331220 00123 48 8b 4c 24 78 mov rcx, QWORD PTR tv143[rsp] 00128 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format 0012d 90 npad 1 ; 201 : try ; 202 : { ; 203 : m_Database->ExecuteSQL(m_stempSql); 0012e 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00136 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 0013d 48 89 84 24 88 00 00 00 mov QWORD PTR tv157[rsp], rax 00145 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0014d 48 83 c0 20 add rax, 32 ; 00000020H 00151 48 8b c8 mov rcx, rax 00154 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00159 48 89 84 24 80 00 00 00 mov QWORD PTR tv155[rsp], rax 00161 48 8b 94 24 80 00 00 00 mov rdx, QWORD PTR tv155[rsp] 00169 48 8b 8c 24 88 00 00 00 mov rcx, QWORD PTR tv157[rsp] 00171 e8 00 00 00 00 call ?ExecuteSQL@CDatabase@@QEAAXPEB_W@Z ; CDatabase::ExecuteSQL ; 204 : m_Database->Close(); 00176 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0017e 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00185 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0018d 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00194 48 8b 00 mov rax, QWORD PTR [rax] 00197 ff 50 28 call QWORD PTR [rax+40] ; 205 : m_aRows.RemoveAll(); 0019a 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 001a2 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 001a8 48 8b c8 mov rcx, rax 001ab e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 206 : m_aFieldNames.RemoveAll(); 001b0 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 001b8 48 05 80 00 00 00 add rax, 128 ; 00000080H 001be 48 8b c8 mov rcx, rax 001c1 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 207 : m_dTotalColumns = 0; 001c6 33 c0 xor eax, eax 001c8 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 001d0 66 89 41 0c mov WORD PTR [rcx+12], ax ; 208 : m_dTotalRows = 0; 001d4 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 001dc c7 40 08 00 00 00 00 mov DWORD PTR [rax+8], 0 __tryend$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z$1: 001e3 eb 14 jmp SHORT $LN11@DeleteShee $LN12@DeleteShee: ; 209 : } ; 210 : catch(CDBException *pEx) ; 211 : { ; 212 : m_sLastError = pEx->m_strError; ; 213 : m_Database->Close(); ; 214 : pEx->Delete(); ; 215 : ; 216 : return false; 001e5 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR SheetName$[rsp] 001ed e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 001f2 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] 001f7 eb 4e jmp SHORT $LN1@DeleteShee $LN11@DeleteShee: ; 217 : } ; 218 : return true; 001f9 c6 44 24 21 01 mov BYTE PTR $T2[rsp], 1 001fe 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR SheetName$[rsp] 00206 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0020b 0f b6 44 24 21 movzx eax, BYTE PTR $T2[rsp] 00210 eb 35 jmp SHORT $LN1@DeleteShee ; 219 : } 00212 eb 25 jmp SHORT $LN3@DeleteShee $LN2@DeleteShee: ; 220 : else // µ±ÊÇ·Ö¸ô·ûÎı¾Îļþʱ ; 221 : { ; 222 : return DeleteSheet(); 00214 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0021c e8 00 00 00 00 call ?DeleteSheet@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::DeleteSheet 00221 88 44 24 22 mov BYTE PTR $T3[rsp], al 00225 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR SheetName$[rsp] 0022d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00232 0f b6 44 24 22 movzx eax, BYTE PTR $T3[rsp] 00237 eb 0e jmp SHORT $LN1@DeleteShee $LN3@DeleteShee: ; 223 : } ; 224 : } 00239 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR SheetName$[rsp] 00241 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00246 90 npad 1 $LN1@DeleteShee: 00247 48 81 c4 a8 00 00 00 add rsp, 168 ; 000000a8H 0024e c3 ret 0 ?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ENDP ; CSpreadSheet::DeleteSheet _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 tv86 = 40 tv88 = 48 tv90 = 56 tv198 = 64 tv191 = 72 tv199 = 80 tv193 = 88 tv138 = 96 $T4 = 104 $T5 = 112 tv143 = 120 tv155 = 128 tv157 = 136 pEx$6 = 144 this$ = 176 SheetName$ = 184 ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::DeleteSheet'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b8 00 00 00 mov rcx, QWORD PTR SheetName$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::DeleteSheet'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 tv86 = 40 tv88 = 48 tv90 = 56 tv198 = 64 tv191 = 72 tv199 = 80 tv193 = 88 tv138 = 96 $T4 = 104 $T5 = 112 tv143 = 120 tv155 = 128 tv157 = 136 pEx$6 = 144 this$ = 176 SheetName$ = 184 ?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::DeleteSheet'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 70 lea rcx, QWORD PTR $T5[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$1@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::DeleteSheet'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 tv86 = 40 tv88 = 48 tv90 = 56 tv198 = 64 tv191 = 72 tv199 = 80 tv193 = 88 tv138 = 96 $T4 = 104 $T5 = 112 tv143 = 120 tv155 = 128 tv157 = 136 pEx$6 = 144 this$ = 176 SheetName$ = 184 ?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::DeleteSheet'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 68 lea rcx, QWORD PTR $T4[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$2@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::DeleteSheet'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 $T2 = 33 $T3 = 34 tv86 = 40 tv88 = 48 tv90 = 56 tv198 = 64 tv191 = 72 tv199 = 80 tv193 = 88 tv138 = 96 $T4 = 104 $T5 = 112 tv143 = 120 tv155 = 128 tv157 = 136 pEx$6 = 144 this$ = 176 SheetName$ = 184 ?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA PROC ; `CSpreadSheet::DeleteSheet'::`1'::catch$3 ; 211 : { 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 55 push rbp 00006 48 83 ec 20 sub rsp, 32 ; 00000020H 0000a 48 8b ea mov rbp, rdx __catch$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z$0: ; 212 : m_sLastError = pEx->m_strError; 0000d 48 8b 85 90 00 00 00 mov rax, QWORD PTR pEx$6[rbp] 00014 48 83 c0 18 add rax, 24 00018 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 0001f 48 83 c1 50 add rcx, 80 ; 00000050H 00023 48 8b d0 mov rdx, rax 00026 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 213 : m_Database->Close(); 0002b 48 8b 85 b0 00 00 00 mov rax, QWORD PTR this$[rbp] 00032 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 00039 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00040 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 00047 48 8b 00 mov rax, QWORD PTR [rax] 0004a ff 50 28 call QWORD PTR [rax+40] ; 214 : pEx->Delete(); 0004d 48 8b 8d 90 00 00 00 mov rcx, QWORD PTR pEx$6[rbp] 00054 e8 00 00 00 00 call ?Delete@CException@@QEAAXXZ ; CException::Delete ; 215 : ; 216 : return false; 00059 c6 45 20 00 mov BYTE PTR $T1[rbp], 0 0005d 48 8d 05 00 00 00 00 lea rax, $LN12@catch$3 00064 eb 07 jmp SHORT $LN13@catch$3 ; 217 : } 00066 48 8d 05 00 00 00 00 lea rax, __tryend$?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z$1 $LN13@catch$3: 0006d 48 83 c4 20 add rsp, 32 ; 00000020H 00071 5d pop rbp 00072 c3 ret 0 00073 cc int 3 ?catch$3@?0??DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z@4HA ENDP ; `CSpreadSheet::DeleteSheet'::`1'::catch$3 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?DeleteSheet@CSpreadSheet@@QEAA_NXZ _TEXT SEGMENT $T1 = 32 tv129 = 40 tv128 = 48 $T2 = 56 this$ = 80 ?DeleteSheet@CSpreadSheet@@QEAA_NXZ PROC ; CSpreadSheet::DeleteSheet, COMDAT ; 163 : { $LN9: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 48 sub rsp, 72 ; 00000048H ; 164 : if (m_bExcel) 00009 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 0000e 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 00012 85 c0 test eax, eax 00014 74 69 je SHORT $LN2@DeleteShee ; 165 : { ; 166 : if (DeleteSheet(m_sSheetName)) 00016 48 8d 44 24 38 lea rax, QWORD PTR $T2[rsp] 0001b 48 89 44 24 20 mov QWORD PTR $T1[rsp], rax 00020 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00025 48 83 c0 30 add rax, 48 ; 00000030H 00029 48 8b d0 mov rdx, rax 0002c 48 8b 4c 24 20 mov rcx, QWORD PTR $T1[rsp] 00031 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00036 48 89 44 24 28 mov QWORD PTR tv129[rsp], rax 0003b 48 8b 44 24 28 mov rax, QWORD PTR tv129[rsp] 00040 48 89 44 24 30 mov QWORD PTR tv128[rsp], rax 00045 48 8b 54 24 30 mov rdx, QWORD PTR tv128[rsp] 0004a 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0004f e8 00 00 00 00 call ?DeleteSheet@CSpreadSheet@@QEAA_NV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CSpreadSheet::DeleteSheet 00054 0f b6 c0 movzx eax, al 00057 85 c0 test eax, eax 00059 74 06 je SHORT $LN4@DeleteShee ; 167 : { ; 168 : return true; 0005b b0 01 mov al, 1 0005d eb 7e jmp SHORT $LN1@DeleteShee ; 169 : } 0005f eb 1c jmp SHORT $LN5@DeleteShee $LN4@DeleteShee: ; 170 : else ; 171 : { ; 172 : m_sLastError = "ɾ³ý±í¸ñʱ²úÉú´íÎó\n"; 00061 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00066 48 83 c0 50 add rax, 80 ; 00000050H 0006a 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331207 00071 48 8b c8 mov rcx, rax 00074 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 173 : return false; 00079 32 c0 xor al, al 0007b eb 60 jmp SHORT $LN1@DeleteShee $LN5@DeleteShee: ; 174 : } ; 175 : } 0007d eb 5e jmp SHORT $LN1@DeleteShee $LN2@DeleteShee: ; 176 : else ; 177 : { ; 178 : m_aRows.RemoveAll(); 0007f 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00084 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 0008a 48 8b c8 mov rcx, rax 0008d e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 179 : m_aFieldNames.RemoveAll(); 00092 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 00097 48 05 80 00 00 00 add rax, 128 ; 00000080H 0009d 48 8b c8 mov rcx, rax 000a0 e8 00 00 00 00 call ?RemoveAll@CStringArray@@QEAAXXZ ; CStringArray::RemoveAll ; 180 : m_dTotalColumns = 0; 000a5 33 c0 xor eax, eax 000a7 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000ac 66 89 41 0c mov WORD PTR [rcx+12], ax ; 181 : m_dTotalRows = 0; 000b0 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000b5 c7 40 08 00 00 00 00 mov DWORD PTR [rax+8], 0 ; 182 : if (!m_bTransaction) 000bc 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000c1 0f b6 40 03 movzx eax, BYTE PTR [rax+3] 000c5 85 c0 test eax, eax 000c7 75 0a jne SHORT $LN6@DeleteShee ; 183 : { ; 184 : Commit(); 000c9 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000ce e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit $LN6@DeleteShee: ; 185 : } ; 186 : m_bAppend = false; // ÉèÖÃбí¸ñ±êÖ¾ 000d3 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000d8 c6 00 00 mov BYTE PTR [rax], 0 ; 187 : ; 188 : return true; 000db b0 01 mov al, 1 $LN1@DeleteShee: ; 189 : } ; 190 : } 000dd 48 83 c4 48 add rsp, 72 ; 00000048H 000e1 c3 ret 0 ?DeleteSheet@CSpreadSheet@@QEAA_NXZ ENDP ; CSpreadSheet::DeleteSheet _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv129 = 40 tv128 = 48 $T2 = 56 this$ = 80 ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA PROC ; `CSpreadSheet::DeleteSheet'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 20 mov rcx, QWORD PTR $T1[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??DeleteSheet@CSpreadSheet@@QEAA_NXZ@4HA ENDP ; `CSpreadSheet::DeleteSheet'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z _TEXT SEGMENT i$1 = 32 j$2 = 36 tv87 = 40 tv92 = 48 tv136 = 56 tv146 = 64 tv144 = 72 tv158 = 80 tv164 = 88 this$ = 112 FieldNames$ = 120 replace$ = 128 ?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z PROC ; CSpreadSheet::AddHeaders, COMDAT ; 97 : { $LN21: 00000 44 88 44 24 18 mov BYTE PTR [rsp+24], r8b 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 68 sub rsp, 104 ; 00000068H ; 98 : if (m_bAppend) // Ô­±í¸ñºó×·¼Ó 00013 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 00018 0f b6 00 movzx eax, BYTE PTR [rax] 0001b 85 c0 test eax, eax 0001d 0f 84 20 02 00 00 je $LN8@AddHeaders ; 99 : { ; 100 : if (replace) // Ìæ»»Ê×Ðжø²»ÊÇÌí¼ÓÐÂÁÐ 00023 0f b6 84 24 80 00 00 00 movzx eax, BYTE PTR replace$[rsp] 0002b 85 c0 test eax, eax 0002d 74 2f je SHORT $LN10@AddHeaders ; 101 : { ; 102 : if (!AddRow(FieldNames, 1, true)) 0002f 41 b1 01 mov r9b, 1 00032 41 b8 01 00 00 00 mov r8d, 1 00038 48 8b 54 24 78 mov rdx, QWORD PTR FieldNames$[rsp] 0003d 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00042 e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 00047 0f b6 c0 movzx eax, al 0004a 85 c0 test eax, eax 0004c 75 09 jne SHORT $LN11@AddHeaders ; 103 : { ; 104 : return false; 0004e 32 c0 xor al, al 00050 e9 34 02 00 00 jmp $LN1@AddHeaders ; 105 : } 00055 eb 07 jmp SHORT $LN12@AddHeaders $LN11@AddHeaders: ; 106 : else ; 107 : { ; 108 : return true; 00057 b0 01 mov al, 1 00059 e9 2b 02 00 00 jmp $LN1@AddHeaders $LN12@AddHeaders: $LN10@AddHeaders: ; 109 : } ; 110 : } ; 111 : ; 112 : if (ReadRow(m_atempArray, 1)) // Ìí¼ÓÐÂÁÐ 0005e 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 00063 48 83 c0 58 add rax, 88 ; 00000058H 00067 41 b8 01 00 00 00 mov r8d, 1 0006d 48 8b d0 mov rdx, rax 00070 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00075 e8 00 00 00 00 call ?ReadRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J@Z ; CSpreadSheet::ReadRow 0007a 0f b6 c0 movzx eax, al 0007d 85 c0 test eax, eax 0007f 0f 84 b8 01 00 00 je $LN13@AddHeaders ; 113 : { ; 114 : if (m_bExcel) 00085 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 0008a 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 0008e 85 c0 test eax, eax 00090 0f 84 07 01 00 00 je $LN14@AddHeaders ; 115 : { ; 116 : // ¼ì²éÊ×ÐÐÁÐÍ·×Ö¶ÎÊÇ·ñÖØ¸´ ; 117 : for (int i = 0; i < FieldNames.GetSize(); i++) 00096 c7 44 24 20 00 00 00 00 mov DWORD PTR i$1[rsp], 0 0009e eb 0a jmp SHORT $LN4@AddHeaders $LN2@AddHeaders: 000a0 8b 44 24 20 mov eax, DWORD PTR i$1[rsp] 000a4 ff c0 inc eax 000a6 89 44 24 20 mov DWORD PTR i$1[rsp], eax $LN4@AddHeaders: 000aa 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 000af 48 89 44 24 28 mov QWORD PTR tv87[rsp], rax 000b4 48 8b 4c 24 78 mov rcx, QWORD PTR FieldNames$[rsp] 000b9 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 000be 48 8b 4c 24 28 mov rcx, QWORD PTR tv87[rsp] 000c3 48 3b c8 cmp rcx, rax 000c6 0f 8d d1 00 00 00 jge $LN3@AddHeaders ; 118 : { ; 119 : for (int j = 0; j < m_atempArray.GetSize(); j++) 000cc c7 44 24 24 00 00 00 00 mov DWORD PTR j$2[rsp], 0 000d4 eb 0a jmp SHORT $LN7@AddHeaders $LN5@AddHeaders: 000d6 8b 44 24 24 mov eax, DWORD PTR j$2[rsp] 000da ff c0 inc eax 000dc 89 44 24 24 mov DWORD PTR j$2[rsp], eax $LN7@AddHeaders: 000e0 48 63 44 24 24 movsxd rax, DWORD PTR j$2[rsp] 000e5 48 89 44 24 30 mov QWORD PTR tv92[rsp], rax 000ea 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 000ef 48 83 c1 58 add rcx, 88 ; 00000058H 000f3 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 000f8 48 8b 4c 24 30 mov rcx, QWORD PTR tv92[rsp] 000fd 48 3b c8 cmp rcx, rax 00100 0f 8d 92 00 00 00 jge $LN6@AddHeaders ; 120 : { ; 121 : if (FieldNames.GetAt(i) == m_atempArray.GetAt(j)) 00106 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 0010b 48 83 c0 58 add rax, 88 ; 00000058H 0010f 48 89 44 24 38 mov QWORD PTR tv136[rsp], rax 00114 48 63 44 24 24 movsxd rax, DWORD PTR j$2[rsp] 00119 48 8b d0 mov rdx, rax 0011c 48 8b 4c 24 38 mov rcx, QWORD PTR tv136[rsp] 00121 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00126 48 89 44 24 40 mov QWORD PTR tv146[rsp], rax 0012b 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 00130 48 8b d0 mov rdx, rax 00133 48 8b 4c 24 78 mov rcx, QWORD PTR FieldNames$[rsp] 00138 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 0013d 48 89 44 24 48 mov QWORD PTR tv144[rsp], rax 00142 48 8b 54 24 40 mov rdx, QWORD PTR tv146[rsp] 00147 48 8b 4c 24 48 mov rcx, QWORD PTR tv144[rsp] 0014c e8 00 00 00 00 call ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ; ATL::operator== 00151 0f b6 c0 movzx eax, al 00154 85 c0 test eax, eax 00156 74 3b je SHORT $LN15@AddHeaders ; 122 : { ; 123 : m_sLastError.Format(_T("Ê×ÐÐÁÐÍ·×Ö¶ÎÖØ¸´:%s\n"), FieldNames.GetAt(i)); 00158 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 0015d 48 83 c0 50 add rax, 80 ; 00000050H 00161 48 89 44 24 50 mov QWORD PTR tv158[rsp], rax 00166 48 63 44 24 20 movsxd rax, DWORD PTR i$1[rsp] 0016b 48 8b d0 mov rdx, rax 0016e 48 8b 4c 24 78 mov rcx, QWORD PTR FieldNames$[rsp] 00173 e8 00 00 00 00 call ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ; CStringArray::GetAt 00178 4c 8b 00 mov r8, QWORD PTR [rax] 0017b 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331193 00182 48 8b 4c 24 50 mov rcx, QWORD PTR tv158[rsp] 00187 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 124 : return false; 0018c 32 c0 xor al, al 0018e e9 f6 00 00 00 jmp $LN1@AddHeaders $LN15@AddHeaders: ; 125 : } ; 126 : } 00193 e9 3e ff ff ff jmp $LN5@AddHeaders $LN6@AddHeaders: ; 127 : } 00198 e9 03 ff ff ff jmp $LN2@AddHeaders $LN3@AddHeaders: $LN14@AddHeaders: ; 128 : } ; 129 : ; 130 : m_atempArray.Append(FieldNames); 0019d 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 001a2 48 83 c0 58 add rax, 88 ; 00000058H 001a6 48 89 44 24 58 mov QWORD PTR tv164[rsp], rax 001ab 48 8b 54 24 78 mov rdx, QWORD PTR FieldNames$[rsp] 001b0 48 8b 4c 24 58 mov rcx, QWORD PTR tv164[rsp] 001b5 e8 00 00 00 00 call ?Append@CStringArray@@QEAA_JAEBV1@@Z ; CStringArray::Append ; 131 : if (!AddRow(m_atempArray, 1, true)) 001ba 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 001bf 48 83 c0 58 add rax, 88 ; 00000058H 001c3 41 b1 01 mov r9b, 1 001c6 41 b8 01 00 00 00 mov r8d, 1 001cc 48 8b d0 mov rdx, rax 001cf 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 001d4 e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 001d9 0f b6 c0 movzx eax, al 001dc 85 c0 test eax, eax 001de 75 1f jne SHORT $LN16@AddHeaders ; 132 : { ; 133 : m_sLastError = "Ìí¼ÓÁÐͷʱ²úÉú´íÎó\n"; 001e0 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 001e5 48 83 c0 50 add rax, 80 ; 00000050H 001e9 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331195 001f0 48 8b c8 mov rcx, rax 001f3 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 134 : return false; 001f8 32 c0 xor al, al 001fa e9 8a 00 00 00 jmp $LN1@AddHeaders $LN16@AddHeaders: ; 135 : } ; 136 : ; 137 : // ¸üÐÂ×ÜÁÐÊý ; 138 : if (m_atempArray.GetSize() > m_dTotalColumns) 001ff 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 00204 48 83 c0 58 add rax, 88 ; 00000058H 00208 48 8b c8 mov rcx, rax 0020b e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00210 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00215 48 0f bf 49 0c movsx rcx, WORD PTR [rcx+12] 0021a 48 3b c1 cmp rax, rcx 0021d 7e 1a jle SHORT $LN17@AddHeaders ; 139 : { ; 140 : m_dTotalColumns = m_atempArray.GetSize(); 0021f 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 00224 48 83 c0 58 add rax, 88 ; 00000058H 00228 48 8b c8 mov rcx, rax 0022b e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 00230 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00235 66 89 41 0c mov WORD PTR [rcx+12], ax $LN17@AddHeaders: ; 141 : } ; 142 : return true; 00239 b0 01 mov al, 1 0023b eb 4c jmp SHORT $LN1@AddHeaders $LN13@AddHeaders: ; 143 : } ; 144 : return false; 0023d 32 c0 xor al, al 0023f eb 48 jmp SHORT $LN1@AddHeaders ; 145 : } 00241 eb 46 jmp SHORT $LN9@AddHeaders $LN8@AddHeaders: ; 146 : else // бí¸ñ ; 147 : { ; 148 : m_dTotalColumns = FieldNames.GetSize(); 00243 48 8b 4c 24 78 mov rcx, QWORD PTR FieldNames$[rsp] 00248 e8 00 00 00 00 call ?GetSize@CStringArray@@QEBA_JXZ ; CStringArray::GetSize 0024d 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00252 66 89 41 0c mov WORD PTR [rcx+12], ax ; 149 : if (!AddRow(FieldNames, 1, true)) 00256 41 b1 01 mov r9b, 1 00259 41 b8 01 00 00 00 mov r8d, 1 0025f 48 8b 54 24 78 mov rdx, QWORD PTR FieldNames$[rsp] 00264 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00269 e8 00 00 00 00 call ?AddRow@CSpreadSheet@@QEAA_NAEAVCStringArray@@J_N@Z ; CSpreadSheet::AddRow 0026e 0f b6 c0 movzx eax, al 00271 85 c0 test eax, eax 00273 75 06 jne SHORT $LN18@AddHeaders ; 150 : { ; 151 : return false; 00275 32 c0 xor al, al 00277 eb 10 jmp SHORT $LN1@AddHeaders ; 152 : } 00279 eb 0e jmp SHORT $LN19@AddHeaders $LN18@AddHeaders: ; 153 : else ; 154 : { ; 155 : m_dTotalRows = 1; 0027b 48 8b 44 24 70 mov rax, QWORD PTR this$[rsp] 00280 c7 40 08 01 00 00 00 mov DWORD PTR [rax+8], 1 ; 156 : return true; 00287 b0 01 mov al, 1 $LN19@AddHeaders: $LN9@AddHeaders: $LN1@AddHeaders: ; 157 : } ; 158 : } ; 159 : } 00289 48 83 c4 68 add rsp, 104 ; 00000068H 0028d c3 ret 0 ?AddHeaders@CSpreadSheet@@QEAA_NAEAVCStringArray@@_N@Z ENDP ; CSpreadSheet::AddHeaders _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?Close@CSpreadSheet@@QEAAXXZ _TEXT SEGMENT $T1 = 32 $T2 = 40 tv85 = 48 tv86 = 56 tv141 = 64 tv142 = 72 this$ = 96 ?Close@CSpreadSheet@@QEAAXXZ PROC ; CSpreadSheet::Close, COMDAT ; 81 : { $LN9: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 58 sub rsp, 88 ; 00000058H ; 82 : if ( NULL != m_rSheet ) 00009 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 0000e 48 83 b8 d8 00 00 00 00 cmp QWORD PTR [rax+216], 0 00016 74 76 je SHORT $LN2@Close ; 83 : { ; 84 : m_rSheet->Close(); 00018 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 0001d 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00024 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00029 48 8b 89 d8 00 00 00 mov rcx, QWORD PTR [rcx+216] 00030 48 8b 00 mov rax, QWORD PTR [rax] 00033 ff 50 20 call QWORD PTR [rax+32] ; 85 : delete m_rSheet; 00036 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 0003b 48 8b 80 d8 00 00 00 mov rax, QWORD PTR [rax+216] 00042 48 89 44 24 20 mov QWORD PTR $T1[rsp], rax 00047 48 83 7c 24 20 00 cmp QWORD PTR $T1[rsp], 0 0004d 74 26 je SHORT $LN5@Close 0004f 48 8b 44 24 20 mov rax, QWORD PTR $T1[rsp] 00054 48 8b 00 mov rax, QWORD PTR [rax] 00057 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0005b 48 89 44 24 30 mov QWORD PTR tv85[rsp], rax 00060 ba 01 00 00 00 mov edx, 1 00065 48 8b 4c 24 20 mov rcx, QWORD PTR $T1[rsp] 0006a ff 54 24 30 call QWORD PTR tv85[rsp] 0006e 48 89 44 24 38 mov QWORD PTR tv86[rsp], rax 00073 eb 09 jmp SHORT $LN6@Close $LN5@Close: 00075 48 c7 44 24 38 00 00 00 00 mov QWORD PTR tv86[rsp], 0 $LN6@Close: ; 86 : m_rSheet = NULL; 0007e 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00083 48 c7 80 d8 00 00 00 00 00 00 00 mov QWORD PTR [rax+216], 0 $LN2@Close: ; 87 : } ; 88 : if (NULL != m_Database) 0008e 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00093 48 83 b8 d0 00 00 00 00 cmp QWORD PTR [rax+208], 0 0009b 74 76 je SHORT $LN3@Close ; 89 : { ; 90 : m_Database->Close(); 0009d 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 000a2 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 000a9 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000ae 48 8b 89 d0 00 00 00 mov rcx, QWORD PTR [rcx+208] 000b5 48 8b 00 mov rax, QWORD PTR [rax] 000b8 ff 50 28 call QWORD PTR [rax+40] ; 91 : delete m_Database; 000bb 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 000c0 48 8b 80 d0 00 00 00 mov rax, QWORD PTR [rax+208] 000c7 48 89 44 24 28 mov QWORD PTR $T2[rsp], rax 000cc 48 83 7c 24 28 00 cmp QWORD PTR $T2[rsp], 0 000d2 74 26 je SHORT $LN7@Close 000d4 48 8b 44 24 28 mov rax, QWORD PTR $T2[rsp] 000d9 48 8b 00 mov rax, QWORD PTR [rax] 000dc 48 8b 40 08 mov rax, QWORD PTR [rax+8] 000e0 48 89 44 24 40 mov QWORD PTR tv141[rsp], rax 000e5 ba 01 00 00 00 mov edx, 1 000ea 48 8b 4c 24 28 mov rcx, QWORD PTR $T2[rsp] 000ef ff 54 24 40 call QWORD PTR tv141[rsp] 000f3 48 89 44 24 48 mov QWORD PTR tv142[rsp], rax 000f8 eb 09 jmp SHORT $LN8@Close $LN7@Close: 000fa 48 c7 44 24 48 00 00 00 00 mov QWORD PTR tv142[rsp], 0 $LN8@Close: ; 92 : m_Database=NULL; 00103 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] 00108 48 c7 80 d0 00 00 00 00 00 00 00 mov QWORD PTR [rax+208], 0 $LN3@Close: ; 93 : } ; 94 : } 00113 48 83 c4 58 add rsp, 88 ; 00000058H 00117 c3 ret 0 ?Close@CSpreadSheet@@QEAAXXZ ENDP ; CSpreadSheet::Close _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ??1CSpreadSheet@@QEAA@XZ _TEXT SEGMENT this$ = 48 ??1CSpreadSheet@@QEAA@XZ PROC ; CSpreadSheet::~CSpreadSheet, COMDAT ; 76 : { $LN15: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 77 : Close(); 00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?Close@CSpreadSheet@@QEAAXXZ ; CSpreadSheet::Close 00013 90 npad 1 ; 78 : } 00014 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00019 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 0001f 48 8b c8 mov rcx, rax 00022 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 00027 90 npad 1 00028 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0002d 48 05 80 00 00 00 add rax, 128 ; 00000080H 00033 48 8b c8 mov rcx, rax 00036 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 0003b 90 npad 1 0003c 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00041 48 83 c0 58 add rax, 88 ; 00000058H 00045 48 8b c8 mov rcx, rax 00048 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 0004d 90 npad 1 0004e 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00053 48 83 c0 50 add rax, 80 ; 00000050H 00057 48 8b c8 mov rcx, rax 0005a e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0005f 90 npad 1 00060 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00065 48 83 c0 48 add rax, 72 ; 00000048H 00069 48 8b c8 mov rcx, rax 0006c e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00071 90 npad 1 00072 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00077 48 83 c0 40 add rax, 64 ; 00000040H 0007b 48 8b c8 mov rcx, rax 0007e e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00083 90 npad 1 00084 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00089 48 83 c0 38 add rax, 56 ; 00000038H 0008d 48 8b c8 mov rcx, rax 00090 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00095 90 npad 1 00096 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0009b 48 83 c0 30 add rax, 48 ; 00000030H 0009f 48 8b c8 mov rcx, rax 000a2 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000a7 90 npad 1 000a8 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 000ad 48 83 c0 28 add rax, 40 ; 00000028H 000b1 48 8b c8 mov rcx, rax 000b4 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000b9 90 npad 1 000ba 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 000bf 48 83 c0 20 add rax, 32 ; 00000020H 000c3 48 8b c8 mov rcx, rax 000c6 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000cb 90 npad 1 000cc 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 000d1 48 83 c0 18 add rax, 24 000d5 48 8b c8 mov rcx, rax 000d8 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000dd 90 npad 1 000de 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 000e3 48 83 c0 10 add rax, 16 000e7 48 8b c8 mov rcx, rax 000ea e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000ef 90 npad 1 000f0 48 83 c4 28 add rsp, 40 ; 00000028H 000f4 c3 ret 0 ??1CSpreadSheet@@QEAA@XZ ENDP ; CSpreadSheet::~CSpreadSheet _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 10 add rcx, 16 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$0@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 18 add rcx, 24 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$1@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 20 add rcx, 32 ; 00000020H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$2@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 28 add rcx, 40 ; 00000028H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$3@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$4 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 30 add rcx, 48 ; 00000030H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$4@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$4 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$5 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 38 add rcx, 56 ; 00000038H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$5@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$5 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$6 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 40 add rcx, 64 ; 00000040H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$6@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$6 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$7 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 48 add rcx, 72 ; 00000048H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$7@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$7 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$8 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 50 add rcx, 80 ; 00000050H 00011 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$8@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$8 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$9 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 83 c1 58 add rcx, 88 ; 00000058H 00011 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 00016 48 83 c4 20 add rsp, 32 ; 00000020H 0001a 5d pop rbp 0001b c3 ret 0 ?dtor$9@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$9 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$10 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 00014 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$10@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$10 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA PROC ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$11 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00014 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$11@?0???1CSpreadSheet@@QEAA@XZ@4HA ENDP ; `CSpreadSheet::~CSpreadSheet'::`1'::dtor$11 text$x ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z _TEXT SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z PROC ; CSpreadSheet::CSpreadSheet, COMDAT ; 10 : { $LN35: 00000 44 88 4c 24 20 mov BYTE PTR [rsp+32], r9b 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 81 ec a8 00 00 00 sub rsp, 168 ; 000000a8H ; 9 : m_bAppend(false), m_bBackup(Backup), m_bTransaction(false) 0001b 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00023 c6 00 00 mov BYTE PTR [rax], 0 00026 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0002e 0f b6 8c 24 c8 00 00 00 movzx ecx, BYTE PTR Backup$[rsp] 00036 88 48 01 mov BYTE PTR [rax+1], cl 00039 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00041 c6 40 03 00 mov BYTE PTR [rax+3], 0 ; 8 : m_dTotalRows(0), m_dTotalColumns(0), m_dCurrentRow(1), 00045 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0004d c7 40 04 01 00 00 00 mov DWORD PTR [rax+4], 1 00054 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0005c c7 40 08 00 00 00 00 mov DWORD PTR [rax+8], 0 00063 33 c0 xor eax, eax 00065 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0006d 66 89 41 0c mov WORD PTR [rcx+12], ax ; 10 : { 00071 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00079 48 83 c0 10 add rax, 16 0007d 48 8b c8 mov rcx, rax 00080 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 00085 90 npad 1 00086 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0008e 48 83 c0 18 add rax, 24 00092 48 8b c8 mov rcx, rax 00095 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 0009a 90 npad 1 0009b 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 000a3 48 83 c0 20 add rax, 32 ; 00000020H 000a7 48 8b c8 mov rcx, rax 000aa e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 000af 90 npad 1 000b0 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 000b8 48 83 c0 28 add rax, 40 ; 00000028H 000bc 48 8b c8 mov rcx, rax 000bf e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 000c4 90 npad 1 000c5 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 000cd 48 83 c0 30 add rax, 48 ; 00000030H 000d1 48 8b c8 mov rcx, rax 000d4 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 000d9 90 npad 1 000da 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 000e2 48 83 c0 38 add rax, 56 ; 00000038H 000e6 48 8b c8 mov rcx, rax 000e9 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 000ee 90 npad 1 ; 7 : m_Database(NULL), m_rSheet(NULL), m_sFile(File), 000ef 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 000f7 48 83 c0 40 add rax, 64 ; 00000040H 000fb 48 89 44 24 40 mov QWORD PTR tv139[rsp], rax 00100 48 8b 94 24 b8 00 00 00 mov rdx, QWORD PTR File$[rsp] 00108 48 8b 4c 24 40 mov rcx, QWORD PTR tv139[rsp] 0010d e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00112 90 npad 1 ; 10 : { 00113 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0011b 48 83 c0 48 add rax, 72 ; 00000048H 0011f 48 8b c8 mov rcx, rax 00122 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 00127 90 npad 1 00128 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00130 48 83 c0 50 add rax, 80 ; 00000050H 00134 48 8b c8 mov rcx, rax 00137 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::CStringT > > 0013c 90 npad 1 0013d 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00145 48 83 c0 58 add rax, 88 ; 00000058H 00149 48 8b c8 mov rcx, rax 0014c e8 00 00 00 00 call ??0CStringArray@@QEAA@XZ ; CStringArray::CStringArray 00151 90 npad 1 00152 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0015a 48 05 80 00 00 00 add rax, 128 ; 00000080H 00160 48 8b c8 mov rcx, rax 00163 e8 00 00 00 00 call ??0CStringArray@@QEAA@XZ ; CStringArray::CStringArray 00168 90 npad 1 00169 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00171 48 05 a8 00 00 00 add rax, 168 ; 000000a8H 00177 48 8b c8 mov rcx, rax 0017a e8 00 00 00 00 call ??0CStringArray@@QEAA@XZ ; CStringArray::CStringArray 0017f 90 npad 1 ; 7 : m_Database(NULL), m_rSheet(NULL), m_sFile(File), 00180 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00188 48 c7 80 d0 00 00 00 00 00 00 00 mov QWORD PTR [rax+208], 0 00193 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0019b 48 c7 80 d8 00 00 00 00 00 00 00 mov QWORD PTR [rax+216], 0 ; 11 : // ¼ì²âÎļþÊÇExcel±í¸ñ»¹ÊÇ·Ö¸ô·ûÎı¾Îļþ ; 12 : m_stempString = m_sFile.Right(4); 001a6 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 001ae 48 83 c0 40 add rax, 64 ; 00000040H 001b2 48 89 44 24 48 mov QWORD PTR tv178[rsp], rax 001b7 41 b8 04 00 00 00 mov r8d, 4 001bd 48 8d 54 24 60 lea rdx, QWORD PTR $T4[rsp] 001c2 48 8b 4c 24 48 mov rcx, QWORD PTR tv178[rsp] 001c7 e8 00 00 00 00 call ?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z ; ATL::CStringT > >::Right 001cc 48 89 44 24 50 mov QWORD PTR tv164[rsp], rax 001d1 48 8b 44 24 50 mov rax, QWORD PTR tv164[rsp] 001d6 48 89 44 24 58 mov QWORD PTR tv327[rsp], rax 001db 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 001e3 48 83 c0 28 add rax, 40 ; 00000028H 001e7 48 8b 54 24 58 mov rdx, QWORD PTR tv327[rsp] 001ec 48 8b c8 mov rcx, rax 001ef e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 001f4 90 npad 1 001f5 48 8d 4c 24 60 lea rcx, QWORD PTR $T4[rsp] 001fa e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 13 : m_stempString.MakeLower(); 001ff 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00207 48 83 c0 28 add rax, 40 ; 00000028H 0020b 48 8b c8 mov rcx, rax 0020e e8 00 00 00 00 call ?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ ; ATL::CStringT > >::MakeLower ; 14 : if (m_stempString == ".xls") // µ±ÊÇExcel±í¸ñÎļþʱ 00213 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0021b 48 83 c0 28 add rax, 40 ; 00000028H 0021f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331147 00226 48 8b c8 mov rcx, rax 00229 e8 00 00 00 00 call ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z ; ATL::operator== 0022e 0f b6 c0 movzx eax, al 00231 85 c0 test eax, eax 00233 74 45 je SHORT $LN2@CSpreadShe ; 15 : { ; 16 : m_bExcel = true; 00235 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0023d c6 40 02 01 mov BYTE PTR [rax+2], 1 ; 17 : m_sSheetName = SheetOrSeparator; 00241 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00249 48 83 c0 30 add rax, 48 ; 00000030H 0024d 48 8b 94 24 c0 00 00 00 mov rdx, QWORD PTR SheetOrSeparator$[rsp] 00255 48 8b c8 mov rcx, rax 00258 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 18 : m_sSeparator = " ,;.?"; 0025d 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00265 48 83 c0 48 add rax, 72 ; 00000048H 00269 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331148 00270 48 8b c8 mov rcx, rax 00273 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= ; 19 : } 00278 eb 28 jmp SHORT $LN3@CSpreadShe $LN2@CSpreadShe: ; 20 : else // µ±ÊÇ·Ö¸ô·ûÎı¾Îļþʱ ; 21 : { ; 22 : m_bExcel = false; 0027a 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00282 c6 40 02 00 mov BYTE PTR [rax+2], 0 ; 23 : m_sSeparator = SheetOrSeparator; 00286 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0028e 48 83 c0 48 add rax, 72 ; 00000048H 00292 48 8b 94 24 c0 00 00 00 mov rdx, QWORD PTR SheetOrSeparator$[rsp] 0029a 48 8b c8 mov rcx, rax 0029d e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= $LN3@CSpreadShe: ; 24 : } ; 25 : ; 26 : // µ±ÎļþÊÇExcelÎļþʱ ; 27 : if (m_bExcel) 002a2 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 002aa 0f b6 40 02 movzx eax, BYTE PTR [rax+2] 002ae 85 c0 test eax, eax 002b0 0f 84 dd 01 00 00 je $LN4@CSpreadShe ; 28 : { ; 29 : m_Database = new CDatabase; 002b6 b9 a0 00 00 00 mov ecx, 160 ; 000000a0H 002bb e8 00 00 00 00 call ??2CObject@@SAPEAX_K@Z ; CObject::operator new 002c0 48 89 44 24 20 mov QWORD PTR $T1[rsp], rax 002c5 48 83 7c 24 20 00 cmp QWORD PTR $T1[rsp], 0 002cb 74 11 je SHORT $LN14@CSpreadShe 002cd 48 8b 4c 24 20 mov rcx, QWORD PTR $T1[rsp] 002d2 e8 00 00 00 00 call ??0CDatabase@@QEAA@XZ ; CDatabase::CDatabase 002d7 48 89 44 24 28 mov QWORD PTR tv214[rsp], rax 002dc eb 09 jmp SHORT $LN15@CSpreadShe $LN14@CSpreadShe: 002de 48 c7 44 24 28 00 00 00 00 mov QWORD PTR tv214[rsp], 0 $LN15@CSpreadShe: 002e7 48 8b 44 24 28 mov rax, QWORD PTR tv214[rsp] 002ec 48 89 44 24 68 mov QWORD PTR $T5[rsp], rax 002f1 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 002f9 48 8b 4c 24 68 mov rcx, QWORD PTR $T5[rsp] 002fe 48 89 88 d0 00 00 00 mov QWORD PTR [rax+208], rcx ; 30 : //GetExcelDriver(); ; 31 : //m_sDsn.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s", m_sExcelDriver, m_sFile, m_sFile); ; 32 : m_sDsn.Format(_T("DRIVER={Microsoft Excel Driver (*.xls)};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s"), m_sFile, m_sFile); 00305 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0030d 48 83 c0 18 add rax, 24 00311 48 89 44 24 70 mov QWORD PTR tv222[rsp], rax 00316 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0031e 4c 8b 48 40 mov r9, QWORD PTR [rax+64] 00322 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0032a 4c 8b 40 40 mov r8, QWORD PTR [rax+64] 0032e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331152 00335 48 8b 4c 24 70 mov rcx, QWORD PTR tv222[rsp] 0033a e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 33 : if (Open()) // ÊÇ·ñÒÑ´æÔÚExcelÎļþ¼°±í¿ÉÒÔ´ò¿ª 0033f 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00347 e8 00 00 00 00 call ?Open@CSpreadSheet@@AEAA_NXZ ; CSpreadSheet::Open 0034c 0f b6 c0 movzx eax, al 0034f 85 c0 test eax, eax 00351 0f 84 37 01 00 00 je $LN6@CSpreadShe ; 34 : { ; 35 : if (m_bBackup) // ExcelÖÐ±í´æÔÚ²¢¿ÉÒÔ´ò¿ªµÄ»°£¬ÊÇ·ñ×öԭʼ±¸·Ý±í 00357 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0035f 0f b6 40 01 movzx eax, BYTE PTR [rax+1] 00363 85 c0 test eax, eax 00365 0f 84 23 01 00 00 je $LN6@CSpreadShe ; 36 : { ; 37 : if ((m_bBackup) && (m_bAppend)) 0036b 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00373 0f b6 40 01 movzx eax, BYTE PTR [rax+1] 00377 85 c0 test eax, eax 00379 0f 84 0f 01 00 00 je $LN6@CSpreadShe 0037f 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00387 0f b6 00 movzx eax, BYTE PTR [rax] 0038a 85 c0 test eax, eax 0038c 0f 84 fc 00 00 00 je $LN6@CSpreadShe ; 38 : { ; 39 : CString tempSheetName = m_sSheetName; 00392 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0039a 48 83 c0 30 add rax, 48 ; 00000030H 0039e 48 8b d0 mov rdx, rax 003a1 48 8d 4c 24 38 lea rcx, QWORD PTR tempSheetName$3[rsp] 003a6 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 003ab 90 npad 1 ; 40 : m_sSheetName = m_sSheetName + "±¸·Ý"; 003ac 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331156 003b3 48 8d 4c 24 30 lea rcx, QWORD PTR $T2[rsp] 003b8 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z ; ATL::CStringT > >::CStringT > > 003bd 90 npad 1 003be 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 003c6 48 83 c0 30 add rax, 48 ; 00000030H 003ca 4c 8d 44 24 30 lea r8, QWORD PTR $T2[rsp] 003cf 48 8b d0 mov rdx, rax 003d2 48 8d 8c 24 88 00 00 00 lea rcx, QWORD PTR $T6[rsp] 003da e8 00 00 00 00 call ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ; ATL::operator+ 003df 48 89 44 24 78 mov QWORD PTR tv246[rsp], rax 003e4 48 8b 44 24 78 mov rax, QWORD PTR tv246[rsp] 003e9 48 89 84 24 80 00 00 00 mov QWORD PTR tv332[rsp], rax 003f1 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 003f9 48 83 c0 30 add rax, 48 ; 00000030H 003fd 48 8b 94 24 80 00 00 00 mov rdx, QWORD PTR tv332[rsp] 00405 48 8b c8 mov rcx, rax 00408 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 0040d 90 npad 1 0040e 48 8d 8c 24 88 00 00 00 lea rcx, QWORD PTR $T6[rsp] 00416 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 0041b 90 npad 1 0041c 48 8d 4c 24 30 lea rcx, QWORD PTR $T2[rsp] 00421 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > ; 41 : m_bAppend = false; 00426 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0042e c6 00 00 mov BYTE PTR [rax], 0 ; 42 : ; 43 : // ÔÚ´Ë´´½¨±¸·Ý±í ; 44 : if (!Commit()) 00431 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 00439 e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit 0043e 0f b6 c0 movzx eax, al 00441 85 c0 test eax, eax 00443 75 0c jne SHORT $LN9@CSpreadShe ; 45 : { ; 46 : m_bBackup = false; 00445 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0044d c6 40 01 00 mov BYTE PTR [rax+1], 0 $LN9@CSpreadShe: ; 47 : } ; 48 : m_bAppend = true; 00451 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00459 c6 00 01 mov BYTE PTR [rax], 1 ; 49 : m_sSheetName = tempSheetName; 0045c 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00464 48 83 c0 30 add rax, 48 ; 00000030H 00468 48 8d 54 24 38 lea rdx, QWORD PTR tempSheetName$3[rsp] 0046d 48 8b c8 mov rcx, rax 00470 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 50 : m_dCurrentRow = 1; 00475 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0047d c7 40 04 01 00 00 00 mov DWORD PTR [rax+4], 1 ; 51 : } 00484 48 8d 4c 24 38 lea rcx, QWORD PTR tempSheetName$3[rsp] 00489 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN6@CSpreadShe: ; 52 : } ; 53 : } ; 54 : } 0048e e9 f4 00 00 00 jmp $LN5@CSpreadShe $LN4@CSpreadShe: ; 55 : else // µ±ÎļþÊÇÖ¸¶¨·Ö¸ô·û·Ö¸ôµÄÎı¾Îļþʱ ; 56 : { ; 57 : if (Open()) 00493 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0049b e8 00 00 00 00 call ?Open@CSpreadSheet@@AEAA_NXZ ; CSpreadSheet::Open 004a0 0f b6 c0 movzx eax, al 004a3 85 c0 test eax, eax 004a5 0f 84 dc 00 00 00 je $LN5@CSpreadShe ; 58 : { ; 59 : if ((m_bBackup) && (m_bAppend)) 004ab 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 004b3 0f b6 40 01 movzx eax, BYTE PTR [rax+1] 004b7 85 c0 test eax, eax 004b9 0f 84 c8 00 00 00 je $LN5@CSpreadShe 004bf 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 004c7 0f b6 00 movzx eax, BYTE PTR [rax] 004ca 85 c0 test eax, eax 004cc 0f 84 b5 00 00 00 je $LN5@CSpreadShe ; 60 : { ; 61 : m_stempString = m_sFile; 004d2 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 004da 48 83 c0 40 add rax, 64 ; 00000040H 004de 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 004e6 48 83 c1 28 add rcx, 40 ; 00000028H 004ea 48 8b d0 mov rdx, rax 004ed e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 62 : m_stempSql.Format(_T("%s.bak"), m_sFile); 004f2 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 004fa 48 83 c0 20 add rax, 32 ; 00000020H 004fe 48 89 84 24 90 00 00 00 mov QWORD PTR tv286[rsp], rax 00506 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0050e 4c 8b 40 40 mov r8, QWORD PTR [rax+64] 00512 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:$SG331160 00519 48 8b 8c 24 90 00 00 00 mov rcx, QWORD PTR tv286[rsp] 00521 e8 00 00 00 00 call ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ; ATL::CStringT > >::Format ; 63 : m_sFile = m_stempSql; 00526 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0052e 48 83 c0 20 add rax, 32 ; 00000020H 00532 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0053a 48 83 c1 40 add rcx, 64 ; 00000040H 0053e 48 8b d0 mov rdx, rax 00541 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= ; 64 : if (!Commit()) 00546 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0054e e8 00 00 00 00 call ?Commit@CSpreadSheet@@QEAA_NXZ ; CSpreadSheet::Commit 00553 0f b6 c0 movzx eax, al 00556 85 c0 test eax, eax 00558 75 0c jne SHORT $LN12@CSpreadShe ; 65 : { ; 66 : m_bBackup = false; 0055a 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 00562 c6 40 01 00 mov BYTE PTR [rax+1], 0 $LN12@CSpreadShe: ; 67 : } ; 68 : m_sFile = m_stempString; 00566 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 0056e 48 83 c0 28 add rax, 40 ; 00000028H 00572 48 8b 8c 24 b0 00 00 00 mov rcx, QWORD PTR this$[rsp] 0057a 48 83 c1 40 add rcx, 64 ; 00000040H 0057e 48 8b d0 mov rdx, rax 00581 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= 00586 90 npad 1 $LN5@CSpreadShe: ; 69 : } ; 70 : } ; 71 : } ; 72 : } 00587 48 8b 8c 24 b8 00 00 00 mov rcx, QWORD PTR File$[rsp] 0058f e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00594 90 npad 1 00595 48 8b 8c 24 c0 00 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rsp] 0059d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 005a2 48 8b 84 24 b0 00 00 00 mov rax, QWORD PTR this$[rsp] 005aa 48 81 c4 a8 00 00 00 add rsp, 168 ; 000000a8H 005b1 c3 ret 0 ??0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z ENDP ; CSpreadSheet::CSpreadSheet _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d c0 00 00 00 mov rcx, QWORD PTR SheetOrSeparator$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$0@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b8 00 00 00 mov rcx, QWORD PTR File$[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$1@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$2 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 10 add rcx, 16 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$2@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$2 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$3 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 18 add rcx, 24 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$3@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$3 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$4 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 20 add rcx, 32 ; 00000020H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$4@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$4 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$5 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 28 add rcx, 40 ; 00000028H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$5@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$5 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$6 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 30 add rcx, 48 ; 00000030H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$6@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$6 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$7 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 38 add rcx, 56 ; 00000038H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$7@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$7 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$8 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 40 add rcx, 64 ; 00000040H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$8@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$8 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$9 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 48 add rcx, 72 ; 00000048H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$9@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$9 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$10 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 50 add rcx, 80 ; 00000050H 00014 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$10@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$10 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$11 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 83 c1 58 add rcx, 88 ; 00000058H 00014 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 00019 48 83 c4 20 add rsp, 32 ; 00000020H 0001d 5d pop rbp 0001e c3 ret 0 ?dtor$11@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$11 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$12 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 81 c1 80 00 00 00 add rcx, 128 ; 00000080H 00017 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 0001c 48 83 c4 20 add rsp, 32 ; 00000020H 00020 5d pop rbp 00021 c3 ret 0 ?dtor$12@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$12 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$13 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 8d b0 00 00 00 mov rcx, QWORD PTR this$[rbp] 00010 48 81 c1 a8 00 00 00 add rcx, 168 ; 000000a8H 00017 e8 00 00 00 00 call ??1CStringArray@@UEAA@XZ ; CStringArray::~CStringArray 0001c 48 83 c4 20 add rsp, 32 ; 00000020H 00020 5d pop rbp 00021 c3 ret 0 ?dtor$13@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$13 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$14 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 60 lea rcx, QWORD PTR $T4[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$14@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$14 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$15 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 20 mov rcx, QWORD PTR $T1[rbp] 0000d e8 00 00 00 00 call ??3CObject@@SAXPEAX@Z ; CObject::operator delete 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$15@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$15 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$16 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 38 lea rcx, QWORD PTR tempSheetName$3[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$16@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$16 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$17 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 30 lea rcx, QWORD PTR $T2[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$17@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$17 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv214 = 40 $T2 = 48 tempSheetName$3 = 56 tv139 = 64 tv178 = 72 tv164 = 80 tv327 = 88 $T4 = 96 $T5 = 104 tv222 = 112 tv246 = 120 tv332 = 128 $T6 = 136 tv286 = 144 this$ = 176 File$ = 184 SheetOrSeparator$ = 192 Backup$ = 200 ?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA PROC ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$18 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 8d 88 00 00 00 lea rcx, QWORD PTR $T6[rbp] 00010 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00015 48 83 c4 20 add rsp, 32 ; 00000020H 00019 5d pop rbp 0001a c3 ret 0 ?dtor$18@?0???0CSpreadSheet@@QEAA@V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0_N@Z@4HA ENDP ; `CSpreadSheet::CSpreadSheet'::`1'::dtor$18 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxdb.inl ; COMDAT ?MoveNext@CRecordset@@QEAAXXZ _TEXT SEGMENT tv70 = 32 this$ = 64 ?MoveNext@CRecordset@@QEAAXXZ PROC ; CRecordset::MoveNext, COMDAT ; 90 : { ASSERT(IsOpen()); Move(1, SQL_FETCH_NEXT); } $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H 00009 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 0000e 48 8b 00 mov rax, QWORD PTR [rax] 00011 48 8b 40 28 mov rax, QWORD PTR [rax+40] 00015 48 89 44 24 20 mov QWORD PTR tv70[rsp], rax 0001a 66 41 b8 01 00 mov r8w, 1 0001f ba 01 00 00 00 mov edx, 1 00024 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00029 ff 54 24 20 call QWORD PTR tv70[rsp] 0002d 48 83 c4 38 add rsp, 56 ; 00000038H 00031 c3 ret 0 ?MoveNext@CRecordset@@QEAAXXZ ENDP ; CRecordset::MoveNext _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxdb.inl ; COMDAT ?IsEOF@CRecordset@@QEBAHXZ _TEXT SEGMENT this$ = 8 ?IsEOF@CRecordset@@QEBAHXZ PROC ; CRecordset::IsEOF, COMDAT ; 52 : { ASSERT(IsOpen()); return m_bEOF; } 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 8b 80 40 01 00 00 mov eax, DWORD PTR [rax+320] 00010 c3 ret 0 ?IsEOF@CRecordset@@QEBAHXZ ENDP ; CRecordset::IsEOF _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxcoll.inl ; COMDAT ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z _TEXT SEGMENT nIndex$ = 32 this$ = 64 newElement$ = 72 ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z PROC ; CStringArray::Add, COMDAT ; 320 : { INT_PTR nIndex = m_nSize; $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H 0000e 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 00013 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00017 48 89 44 24 20 mov QWORD PTR nIndex$[rsp], rax ; 321 : SetAtGrow(nIndex, newElement); 0001c 4c 8b 44 24 48 mov r8, QWORD PTR newElement$[rsp] 00021 48 8b 54 24 20 mov rdx, QWORD PTR nIndex$[rsp] 00026 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0002b e8 00 00 00 00 call ?SetAtGrow@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ; CStringArray::SetAtGrow ; 322 : return nIndex; } 00030 48 8b 44 24 20 mov rax, QWORD PTR nIndex$[rsp] 00035 48 83 c4 38 add rsp, 56 ; 00000038H 00039 c3 ret 0 ?Add@CStringArray@@QEAA_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ENDP ; CStringArray::Add _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxcoll.inl ; COMDAT ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z _TEXT SEGMENT this$ = 48 nIndex$ = 56 newElement$ = 64 ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z PROC ; CStringArray::SetAt, COMDAT ; 299 : { ASSERT(nIndex >= 0 && nIndex < m_nSize); $LN5: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 28 sub rsp, 40 ; 00000028H ; 300 : if( nIndex < 0 || nIndex >= m_nSize ) 00013 48 83 7c 24 38 00 cmp QWORD PTR nIndex$[rsp], 0 00019 7c 10 jl SHORT $LN3@SetAt 0001b 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00020 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00024 48 39 44 24 38 cmp QWORD PTR nIndex$[rsp], rax 00029 7c 05 jl SHORT $LN2@SetAt $LN3@SetAt: ; 301 : AfxThrowInvalidArgException(); 0002b e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException $LN2@SetAt: ; 302 : m_pData[nIndex] = newElement; } 00030 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00035 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00039 48 8b 4c 24 38 mov rcx, QWORD PTR nIndex$[rsp] 0003e 48 8d 04 c8 lea rax, QWORD PTR [rax+rcx*8] 00042 48 8b 54 24 40 mov rdx, QWORD PTR newElement$[rsp] 00047 48 8b c8 mov rcx, rax 0004a e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CStringT > >::operator= $LN4@SetAt: 0004f 48 83 c4 28 add rsp, 40 ; 00000028H 00053 c3 ret 0 ?SetAt@CStringArray@@QEAAX_JAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z ENDP ; CStringArray::SetAt _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxcoll.inl ; COMDAT ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z _TEXT SEGMENT this$ = 48 nIndex$ = 56 ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z PROC ; CStringArray::GetAt, COMDAT ; 288 : { ASSERT(nIndex >= 0 && nIndex < m_nSize); $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 289 : if( nIndex < 0 || nIndex >= m_nSize ) 0000e 48 83 7c 24 38 00 cmp QWORD PTR nIndex$[rsp], 0 00014 7c 10 jl SHORT $LN3@GetAt 00016 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0001b 48 8b 40 10 mov rax, QWORD PTR [rax+16] 0001f 48 39 44 24 38 cmp QWORD PTR nIndex$[rsp], rax 00024 7c 05 jl SHORT $LN2@GetAt $LN3@GetAt: ; 290 : AfxThrowInvalidArgException(); 00026 e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException $LN2@GetAt: ; 291 : return m_pData[nIndex]; } 0002b 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00030 48 8b 40 08 mov rax, QWORD PTR [rax+8] 00034 48 8b 4c 24 38 mov rcx, QWORD PTR nIndex$[rsp] 00039 48 8d 04 c8 lea rax, QWORD PTR [rax+rcx*8] $LN4@GetAt: 0003d 48 83 c4 28 add rsp, 40 ; 00000028H 00041 c3 ret 0 ?GetAt@CStringArray@@QEBAAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@_J@Z ENDP ; CStringArray::GetAt _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxcoll.inl ; COMDAT ?RemoveAll@CStringArray@@QEAAXXZ _TEXT SEGMENT this$ = 48 ?RemoveAll@CStringArray@@QEAAXXZ PROC ; CStringArray::RemoveAll, COMDAT ; 286 : { SetSize(0); } $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H 00009 49 c7 c0 ff ff ff ff mov r8, -1 00010 33 d2 xor edx, edx 00012 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00017 e8 00 00 00 00 call ?SetSize@CStringArray@@QEAAX_J0@Z ; CStringArray::SetSize 0001c 48 83 c4 28 add rsp, 40 ; 00000028H 00020 c3 ret 0 ?RemoveAll@CStringArray@@QEAAXXZ ENDP ; CStringArray::RemoveAll _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxcoll.inl ; COMDAT ?GetSize@CStringArray@@QEBA_JXZ _TEXT SEGMENT this$ = 8 ?GetSize@CStringArray@@QEBA_JXZ PROC ; CStringArray::GetSize, COMDAT ; 278 : { return m_nSize; } 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 48 8b 40 10 mov rax, QWORD PTR [rax+16] 0000e c3 ret 0 ?GetSize@CStringArray@@QEBA_JXZ ENDP ; CStringArray::GetSize _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT ??_GCArchive@@QEAAPEAXI@Z _TEXT SEGMENT this$ = 48 __flags$ = 56 ??_GCArchive@@QEAAPEAXI@Z PROC ; CArchive::`scalar deleting destructor', COMDAT $LN4: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 28 sub rsp, 40 ; 00000028H 0000d 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00012 e8 00 00 00 00 call ??1CArchive@@QEAA@XZ ; CArchive::~CArchive 00017 8b 44 24 38 mov eax, DWORD PTR __flags$[rsp] 0001b 83 e0 01 and eax, 1 0001e 85 c0 test eax, eax 00020 74 0f je SHORT $LN2@scalar 00022 ba 70 00 00 00 mov edx, 112 ; 00000070H 00027 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0002c e8 00 00 00 00 call ??3@YAXPEAX_K@Z ; operator delete $LN2@scalar: 00031 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00036 48 83 c4 28 add rsp, 40 ; 00000028H 0003a c3 ret 0 ??_GCArchive@@QEAAPEAXI@Z ENDP ; CArchive::`scalar deleting destructor' _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxstr.h ; COMDAT ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ _TEXT SEGMENT ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ PROC ; StrTraitMFC >::GetDefaultManager, COMDAT ; 51 : { $LN3: 00000 48 83 ec 28 sub rsp, 40 ; 00000028H ; 52 : return( AfxGetStringManager() ); 00004 e8 00 00 00 00 call ?AfxGetStringManager@@YAPEAUIAtlStringMgr@ATL@@XZ ; AfxGetStringManager 00009 90 npad 1 ; 53 : } 0000a 48 83 c4 28 add rsp, 40 ; 00000028H 0000e c3 ret 0 ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ENDP ; StrTraitMFC >::GetDefaultManager _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxstr.h ; COMDAT ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z _TEXT SEGMENT nID$ = 48 ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z PROC ; StrTraitMFC >::FindStringResourceInstance, COMDAT ; 46 : { $LN3: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 48 83 ec 28 sub rsp, 40 ; 00000028H ; 47 : return( AfxFindStringResourceHandle( nID ) ); 00008 8b 4c 24 30 mov ecx, DWORD PTR nID$[rsp] 0000c e8 00 00 00 00 call ?AfxFindStringResourceHandle@@YAPEAUHINSTANCE__@@I@Z ; AfxFindStringResourceHandle 00011 90 npad 1 ; 48 : } 00012 48 83 c4 28 add rsp, 40 ; 00000028H 00016 c3 ret 0 ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ENDP ; StrTraitMFC >::FindStringResourceInstance _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z _TEXT SEGMENT bRet$ = 32 nID$1 = 36 this$ = 64 pv$ = 72 ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z PROC ; ATL::CStringT > >::CheckImplicitLoad, COMDAT ; 2705 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 2706 : bool bRet = false; 0000e c6 44 24 20 00 mov BYTE PTR bRet$[rsp], 0 ; 2707 : ; 2708 : if( (pv != NULL) && IS_INTRESOURCE( pv ) ) 00013 48 83 7c 24 48 00 cmp QWORD PTR pv$[rsp], 0 00019 74 33 je SHORT $LN2@CheckImpli 0001b 48 8b 44 24 48 mov rax, QWORD PTR pv$[rsp] 00020 48 c1 e8 10 shr rax, 16 00024 48 85 c0 test rax, rax 00027 75 25 jne SHORT $LN2@CheckImpli ; 2709 : { ; 2710 : UINT nID = LOWORD( reinterpret_cast< DWORD_PTR >( pv ) ); 00029 48 8b 44 24 48 mov rax, QWORD PTR pv$[rsp] 0002e 48 25 ff ff 00 00 and rax, 65535 ; 0000ffffH 00034 0f b7 c0 movzx eax, ax 00037 89 44 24 24 mov DWORD PTR nID$1[rsp], eax ; 2711 : (nID); ; 2712 : #ifdef _ATL_USE_WINAPI_FAMILY_DESKTOP_APP ; 2713 : if( !LoadString( nID ) ) 0003b 8b 54 24 24 mov edx, DWORD PTR nID$1[rsp] 0003f 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00044 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ; ATL::CStringT > >::LoadStringW ; 2714 : { ; 2715 : ATLTRACE( atlTraceString, 2, _T( "Warning: implicit LoadString(%u) failed\n" ), nID ); ; 2716 : } ; 2717 : bRet = true; 00049 c6 44 24 20 01 mov BYTE PTR bRet$[rsp], 1 $LN2@CheckImpli: ; 2718 : #else ; 2719 : ATLTRACE( atlTraceString, 2, _T( "Warning: LoadString(%u) not supported under the current WINAPI_FAMILY.\n" ), nID ); ; 2720 : #endif ; 2721 : } ; 2722 : ; 2723 : return( bRet ); 0004e 0f b6 44 24 20 movzx eax, BYTE PTR bRet$[rsp] ; 2724 : } 00053 48 83 c4 38 add rsp, 56 ; 00000038H 00057 c3 ret 0 ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ENDP ; ATL::CStringT > >::CheckImplicitLoad _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z _TEXT SEGMENT $T1 = 32 str2$ = 40 str1$ = 64 psz2$ = 72 ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z PROC ; ATL::operator==, COMDAT ; 2500 : { $LN4: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 2501 : CStringT str2(psz2, str1.GetManager()); 0000e 48 8b 4c 24 40 mov rcx, QWORD PTR str1$[rsp] 00013 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 00018 4c 8b c0 mov r8, rax 0001b 48 8b 54 24 48 mov rdx, QWORD PTR psz2$[rsp] 00020 48 8d 4c 24 28 lea rcx, QWORD PTR str2$[rsp] 00025 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 0002a 90 npad 1 ; 2502 : return(str1 == str2); 0002b 48 8d 54 24 28 lea rdx, QWORD PTR str2$[rsp] 00030 48 8b 4c 24 40 mov rcx, QWORD PTR str1$[rsp] 00035 e8 00 00 00 00 call ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ; ATL::operator== 0003a 88 44 24 20 mov BYTE PTR $T1[rsp], al 0003e 48 8d 4c 24 28 lea rcx, QWORD PTR str2$[rsp] 00043 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00048 0f b6 44 24 20 movzx eax, BYTE PTR $T1[rsp] ; 2503 : } 0004d 48 83 c4 38 add rsp, 56 ; 00000038H 00051 c3 ret 0 ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z ENDP ; ATL::operator== _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 str2$ = 40 str1$ = 64 psz2$ = 72 ?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA PROC ; `ATL::operator=='::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 28 lea rcx, QWORD PTR str2$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEBD@Z@4HA ENDP ; `ATL::operator=='::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z _TEXT SEGMENT tv74 = 32 str1$ = 64 str2$ = 72 ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z PROC ; ATL::operator==, COMDAT ; 2478 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 2479 : return(str1.Compare(str2) == 0); 0000e 48 8b 4c 24 48 mov rcx, QWORD PTR str2$[rsp] 00013 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00018 48 8b d0 mov rdx, rax 0001b 48 8b 4c 24 40 mov rcx, QWORD PTR str1$[rsp] 00020 e8 00 00 00 00 call ?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z ; ATL::CStringT > >::Compare 00025 85 c0 test eax, eax 00027 75 0a jne SHORT $LN3@operator 00029 c7 44 24 20 01 00 00 00 mov DWORD PTR tv74[rsp], 1 00031 eb 08 jmp SHORT $LN4@operator $LN3@operator: 00033 c7 44 24 20 00 00 00 00 mov DWORD PTR tv74[rsp], 0 $LN4@operator: 0003b 0f b6 44 24 20 movzx eax, BYTE PTR tv74[rsp] ; 2480 : } 00040 48 83 c4 38 add rsp, 56 ; 00000038H 00044 c3 ret 0 ??8ATL@@YA_NAEBV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@0@Z ENDP ; ATL::operator== _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z _TEXT SEGMENT $T1 = 48 tv130 = 52 tv94 = 56 strResult$ = 64 tv128 = 72 __$ReturnUdt$ = 96 psz1$ = 104 str2$ = 112 ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z PROC ; ATL::operator+, COMDAT ; 2411 : { $LN6: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 58 sub rsp, 88 ; 00000058H 00013 c7 44 24 30 00 00 00 00 mov DWORD PTR $T1[rsp], 0 ; 2412 : CStringT strResult( str2.GetManager() ); 0001b 48 8b 4c 24 70 mov rcx, QWORD PTR str2$[rsp] 00020 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 00025 48 8b d0 mov rdx, rax 00028 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0002d e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 00032 90 npad 1 ; 2413 : ; 2414 : CThisSimpleString::Concatenate( strResult, psz1, CThisSimpleString::StringLength( psz1 ), str2, str2.GetLength() ); 00033 48 8b 4c 24 70 mov rcx, QWORD PTR str2$[rsp] 00038 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0003d 89 44 24 34 mov DWORD PTR tv130[rsp], eax 00041 48 8b 4c 24 70 mov rcx, QWORD PTR str2$[rsp] 00046 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 0004b 48 89 44 24 48 mov QWORD PTR tv128[rsp], rax 00050 48 8b 4c 24 68 mov rcx, QWORD PTR psz1$[rsp] 00055 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT::StringLength 0005a 89 44 24 38 mov DWORD PTR tv94[rsp], eax 0005e 8b 44 24 34 mov eax, DWORD PTR tv130[rsp] 00062 89 44 24 20 mov DWORD PTR [rsp+32], eax 00066 4c 8b 4c 24 48 mov r9, QWORD PTR tv128[rsp] 0006b 44 8b 44 24 38 mov r8d, DWORD PTR tv94[rsp] 00070 48 8b 54 24 68 mov rdx, QWORD PTR psz1$[rsp] 00075 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0007a e8 00 00 00 00 call ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z ; ATL::CSimpleStringT::Concatenate ; 2415 : ; 2416 : return( strResult ); 0007f 48 8d 54 24 40 lea rdx, QWORD PTR strResult$[rsp] 00084 48 8b 4c 24 60 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 00089 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 0008e 8b 44 24 30 mov eax, DWORD PTR $T1[rsp] 00092 83 c8 01 or eax, 1 00095 89 44 24 30 mov DWORD PTR $T1[rsp], eax 00099 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0009e e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000a3 48 8b 44 24 60 mov rax, QWORD PTR __$ReturnUdt$[rsp] ; 2417 : } 000a8 48 83 c4 58 add rsp, 88 ; 00000058H 000ac c3 ret 0 000ad cc int 3 ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z ENDP ; ATL::operator+ _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 tv130 = 52 tv94 = 56 strResult$ = 64 tv128 = 72 __$ReturnUdt$ = 96 psz1$ = 104 str2$ = 112 ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA PROC ; `ATL::operator+'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 40 lea rcx, QWORD PTR strResult$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA ENDP ; `ATL::operator+'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 tv130 = 52 tv94 = 56 strResult$ = 64 tv128 = 72 __$ReturnUdt$ = 96 psz1$ = 104 str2$ = 112 ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA PROC ; `ATL::operator+'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 8b 45 30 mov eax, DWORD PTR $T1[rbp] 0000c 83 e0 01 and eax, 1 0000f 85 c0 test eax, eax 00011 74 0d je SHORT $LN5@dtor$1 00013 83 65 30 fe and DWORD PTR $T1[rbp], -2 00017 48 8b 4d 60 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 0001b e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN5@dtor$1: 00020 48 83 c4 20 add rsp, 32 ; 00000020H 00024 5d pop rbp 00025 c3 ret 0 ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@PEB_WAEBV10@@Z@4HA ENDP ; `ATL::operator+'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z _TEXT SEGMENT $T1 = 48 tv130 = 52 tv128 = 56 strResult$ = 64 tv94 = 72 __$ReturnUdt$ = 96 str1$ = 104 psz2$ = 112 ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z PROC ; ATL::operator+, COMDAT ; 2400 : { $LN6: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 58 sub rsp, 88 ; 00000058H 00013 c7 44 24 30 00 00 00 00 mov DWORD PTR $T1[rsp], 0 ; 2401 : CStringT strResult( str1.GetManager() ); 0001b 48 8b 4c 24 68 mov rcx, QWORD PTR str1$[rsp] 00020 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 00025 48 8b d0 mov rdx, rax 00028 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0002d e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 00032 90 npad 1 ; 2402 : ; 2403 : CThisSimpleString::Concatenate( strResult, str1, str1.GetLength(), psz2, CThisSimpleString::StringLength( psz2 ) ); 00033 48 8b 4c 24 70 mov rcx, QWORD PTR psz2$[rsp] 00038 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT::StringLength 0003d 89 44 24 34 mov DWORD PTR tv130[rsp], eax 00041 48 8b 4c 24 68 mov rcx, QWORD PTR str1$[rsp] 00046 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0004b 89 44 24 38 mov DWORD PTR tv128[rsp], eax 0004f 48 8b 4c 24 68 mov rcx, QWORD PTR str1$[rsp] 00054 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00059 48 89 44 24 48 mov QWORD PTR tv94[rsp], rax 0005e 8b 44 24 34 mov eax, DWORD PTR tv130[rsp] 00062 89 44 24 20 mov DWORD PTR [rsp+32], eax 00066 4c 8b 4c 24 70 mov r9, QWORD PTR psz2$[rsp] 0006b 44 8b 44 24 38 mov r8d, DWORD PTR tv128[rsp] 00070 48 8b 54 24 48 mov rdx, QWORD PTR tv94[rsp] 00075 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0007a e8 00 00 00 00 call ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z ; ATL::CSimpleStringT::Concatenate ; 2404 : ; 2405 : return( strResult ); 0007f 48 8d 54 24 40 lea rdx, QWORD PTR strResult$[rsp] 00084 48 8b 4c 24 60 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 00089 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 0008e 8b 44 24 30 mov eax, DWORD PTR $T1[rsp] 00092 83 c8 01 or eax, 1 00095 89 44 24 30 mov DWORD PTR $T1[rsp], eax 00099 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0009e e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000a3 48 8b 44 24 60 mov rax, QWORD PTR __$ReturnUdt$[rsp] ; 2406 : } 000a8 48 83 c4 58 add rsp, 88 ; 00000058H 000ac c3 ret 0 000ad cc int 3 ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z ENDP ; ATL::operator+ _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 tv130 = 52 tv128 = 56 strResult$ = 64 tv94 = 72 __$ReturnUdt$ = 96 str1$ = 104 psz2$ = 112 ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA PROC ; `ATL::operator+'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 40 lea rcx, QWORD PTR strResult$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA ENDP ; `ATL::operator+'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 tv130 = 52 tv128 = 56 strResult$ = 64 tv94 = 72 __$ReturnUdt$ = 96 str1$ = 104 psz2$ = 112 ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA PROC ; `ATL::operator+'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 8b 45 30 mov eax, DWORD PTR $T1[rbp] 0000c 83 e0 01 and eax, 1 0000f 85 c0 test eax, eax 00011 74 0d je SHORT $LN5@dtor$1 00013 83 65 30 fe and DWORD PTR $T1[rbp], -2 00017 48 8b 4d 60 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 0001b e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN5@dtor$1: 00020 48 83 c4 20 add rsp, 32 ; 00000020H 00024 5d pop rbp 00025 c3 ret 0 ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@PEB_W@Z@4HA ENDP ; `ATL::operator+'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z _TEXT SEGMENT $T1 = 48 tv142 = 52 tv138 = 56 strResult$ = 64 tv140 = 72 tv136 = 80 __$ReturnUdt$ = 112 str1$ = 120 str2$ = 128 ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z PROC ; ATL::operator+, COMDAT ; 2389 : { $LN6: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 68 sub rsp, 104 ; 00000068H 00013 c7 44 24 30 00 00 00 00 mov DWORD PTR $T1[rsp], 0 ; 2390 : CStringT strResult( str1.GetManager() ); 0001b 48 8b 4c 24 78 mov rcx, QWORD PTR str1$[rsp] 00020 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 00025 48 8b d0 mov rdx, rax 00028 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0002d e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 00032 90 npad 1 ; 2391 : ; 2392 : CThisSimpleString::Concatenate( strResult, str1, str1.GetLength(), str2, str2.GetLength() ); 00033 48 8b 8c 24 80 00 00 00 mov rcx, QWORD PTR str2$[rsp] 0003b e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00040 89 44 24 34 mov DWORD PTR tv142[rsp], eax 00044 48 8b 8c 24 80 00 00 00 mov rcx, QWORD PTR str2$[rsp] 0004c e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00051 48 89 44 24 48 mov QWORD PTR tv140[rsp], rax 00056 48 8b 4c 24 78 mov rcx, QWORD PTR str1$[rsp] 0005b e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00060 89 44 24 38 mov DWORD PTR tv138[rsp], eax 00064 48 8b 4c 24 78 mov rcx, QWORD PTR str1$[rsp] 00069 e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 0006e 48 89 44 24 50 mov QWORD PTR tv136[rsp], rax 00073 8b 44 24 34 mov eax, DWORD PTR tv142[rsp] 00077 89 44 24 20 mov DWORD PTR [rsp+32], eax 0007b 4c 8b 4c 24 48 mov r9, QWORD PTR tv140[rsp] 00080 44 8b 44 24 38 mov r8d, DWORD PTR tv138[rsp] 00085 48 8b 54 24 50 mov rdx, QWORD PTR tv136[rsp] 0008a 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 0008f e8 00 00 00 00 call ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z ; ATL::CSimpleStringT::Concatenate ; 2393 : ; 2394 : return( strResult ); 00094 48 8d 54 24 40 lea rdx, QWORD PTR strResult$[rsp] 00099 48 8b 4c 24 70 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 0009e e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 000a3 8b 44 24 30 mov eax, DWORD PTR $T1[rsp] 000a7 83 c8 01 or eax, 1 000aa 89 44 24 30 mov DWORD PTR $T1[rsp], eax 000ae 48 8d 4c 24 40 lea rcx, QWORD PTR strResult$[rsp] 000b3 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000b8 48 8b 44 24 70 mov rax, QWORD PTR __$ReturnUdt$[rsp] ; 2395 : } 000bd 48 83 c4 68 add rsp, 104 ; 00000068H 000c1 c3 ret 0 000c2 cc int 3 ??HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z ENDP ; ATL::operator+ _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 tv142 = 52 tv138 = 56 strResult$ = 64 tv140 = 72 tv136 = 80 __$ReturnUdt$ = 112 str1$ = 120 str2$ = 128 ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA PROC ; `ATL::operator+'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 40 lea rcx, QWORD PTR strResult$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA ENDP ; `ATL::operator+'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 48 tv142 = 52 tv138 = 56 strResult$ = 64 tv140 = 72 tv136 = 80 __$ReturnUdt$ = 112 str1$ = 120 str2$ = 128 ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA PROC ; `ATL::operator+'::`1'::dtor$1 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 8b 45 30 mov eax, DWORD PTR $T1[rbp] 0000c 83 e0 01 and eax, 1 0000f 85 c0 test eax, eax 00011 74 0d je SHORT $LN5@dtor$1 00013 83 65 30 fe and DWORD PTR $T1[rbp], -2 00017 48 8b 4d 70 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 0001b e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN5@dtor$1: 00020 48 83 c4 20 add rsp, 32 ; 00000020H 00024 5d pop rbp 00025 c3 ret 0 ?dtor$1@?0???HATL@@YA?AV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@0@AEBV10@0@Z@4HA ENDP ; `ATL::operator+'::`1'::dtor$1 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z _TEXT SEGMENT nLength$ = 32 pImage$ = 40 pszBuffer$ = 48 this$ = 80 hInstance$ = 88 nID$ = 96 ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z PROC ; ATL::CStringT > >::LoadStringW, COMDAT ; 2350 : { $LN4: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 48 sub rsp, 72 ; 00000048H ; 2351 : const ATLSTRINGRESOURCEIMAGE* pImage = AtlGetStringResourceImage( hInstance, nID ); 00013 8b 54 24 60 mov edx, DWORD PTR nID$[rsp] 00017 48 8b 4c 24 58 mov rcx, QWORD PTR hInstance$[rsp] 0001c e8 00 00 00 00 call ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage 00021 48 89 44 24 28 mov QWORD PTR pImage$[rsp], rax ; 2352 : if( pImage == NULL ) 00026 48 83 7c 24 28 00 cmp QWORD PTR pImage$[rsp], 0 0002c 75 04 jne SHORT $LN2@LoadString ; 2353 : { ; 2354 : return( FALSE ); 0002e 33 c0 xor eax, eax 00030 eb 67 jmp SHORT $LN1@LoadString $LN2@LoadString: ; 2355 : } ; 2356 : ; 2357 : int nLength = StringTraits::GetBaseTypeLength( pImage->achString, pImage->nLength ); 00032 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp] 00037 0f b7 00 movzx eax, WORD PTR [rax] 0003a 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp] 0003f 48 83 c1 02 add rcx, 2 00043 8b d0 mov edx, eax 00045 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ; ATL::ChTraitsCRT::GetBaseTypeLength 0004a 89 44 24 20 mov DWORD PTR nLength$[rsp], eax ; 2358 : PXSTR pszBuffer = this->GetBuffer( nLength ); 0004e 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 00052 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00057 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 0005c 48 89 44 24 30 mov QWORD PTR pszBuffer$[rsp], rax ; 2359 : StringTraits::ConvertToBaseType( pszBuffer, nLength, pImage->achString, pImage->nLength ); 00061 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp] 00066 0f b7 00 movzx eax, WORD PTR [rax] 00069 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp] 0006e 48 83 c1 02 add rcx, 2 00072 44 8b c8 mov r9d, eax 00075 4c 8b c1 mov r8, rcx 00078 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 0007c 48 8b 4c 24 30 mov rcx, QWORD PTR pszBuffer$[rsp] 00081 e8 00 00 00 00 call ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ; ATL::ChTraitsCRT::ConvertToBaseType ; 2360 : this->ReleaseBufferSetLength( nLength ); 00086 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 0008a 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0008f e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength ; 2361 : ; 2362 : return( TRUE ); 00094 b8 01 00 00 00 mov eax, 1 $LN1@LoadString: ; 2363 : } 00099 48 83 c4 48 add rsp, 72 ; 00000048H 0009d c3 ret 0 ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ENDP ; ATL::CStringT > >::LoadStringW _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z _TEXT SEGMENT hInstance$ = 32 this$ = 64 nID$ = 72 ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z PROC ; ATL::CStringT > >::LoadStringW, COMDAT ; 2336 : { $LN4: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 38 sub rsp, 56 ; 00000038H ; 2337 : HINSTANCE hInstance = StringTraits::FindStringResourceInstance( nID ); 0000d 8b 4c 24 48 mov ecx, DWORD PTR nID$[rsp] 00011 e8 00 00 00 00 call ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUHINSTANCE__@@I@Z ; StrTraitMFC >::FindStringResourceInstance 00016 48 89 44 24 20 mov QWORD PTR hInstance$[rsp], rax ; 2338 : if( hInstance == NULL ) 0001b 48 83 7c 24 20 00 cmp QWORD PTR hInstance$[rsp], 0 00021 75 04 jne SHORT $LN2@LoadString ; 2339 : { ; 2340 : return( FALSE ); 00023 33 c0 xor eax, eax 00025 eb 14 jmp SHORT $LN1@LoadString $LN2@LoadString: ; 2341 : } ; 2342 : ; 2343 : return( LoadString( hInstance, nID ) ); 00027 44 8b 44 24 48 mov r8d, DWORD PTR nID$[rsp] 0002c 48 8b 54 24 20 mov rdx, QWORD PTR hInstance$[rsp] 00031 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00036 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHPEAUHINSTANCE__@@I@Z ; ATL::CStringT > >::LoadStringW $LN1@LoadString: ; 2344 : } 0003b 48 83 c4 38 add rsp, 56 ; 00000038H 0003f c3 ret 0 ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHI@Z ENDP ; ATL::CStringT > >::LoadStringW _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z _TEXT SEGMENT nLength$ = 32 temp$ = 40 pszBuffer$ = 48 this$ = 80 pszFormat$ = 88 args$ = 96 ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z PROC ; ATL::CStringT > >::FormatV, COMDAT ; 2221 : { $LN7: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 48 sub rsp, 72 ; 00000048H ; 2222 : ATLASSERT( AtlIsValidString( pszFormat ) ); ; 2223 : if(pszFormat == NULL) 00013 48 83 7c 24 58 00 cmp QWORD PTR pszFormat$[rsp], 0 00019 75 0a jne SHORT $LN2@FormatV ; 2224 : AtlThrow(E_INVALIDARG); 0001b b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 00020 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN2@FormatV: ; 2225 : ; 2226 : int nLength = StringTraits::GetFormattedLength( pszFormat, args ); 00025 48 8b 54 24 60 mov rdx, QWORD PTR args$[rsp] 0002a 48 8b 4c 24 58 mov rcx, QWORD PTR pszFormat$[rsp] 0002f e8 00 00 00 00 call ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z ; ATL::ChTraitsCRT::GetFormattedLength 00034 89 44 24 20 mov DWORD PTR nLength$[rsp], eax ; 2227 : ; 2228 : if (nLength < 0) 00038 83 7c 24 20 00 cmp DWORD PTR nLength$[rsp], 0 0003d 7d 0a jge SHORT $LN3@FormatV ; 2229 : AtlThrow(E_FAIL); 0003f b9 05 40 00 80 mov ecx, -2147467259 ; ffffffff80004005H 00044 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN3@FormatV: ; 2230 : ; 2231 : CStringT temp(pszFormat, this->GetManager()); 00049 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0004e e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 00053 4c 8b c0 mov r8, rax 00056 48 8b 54 24 58 mov rdx, QWORD PTR pszFormat$[rsp] 0005b 48 8d 4c 24 28 lea rcx, QWORD PTR temp$[rsp] 00060 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 00065 90 npad 1 ; 2232 : PXSTR pszBuffer = this->GetBuffer( nLength ); 00066 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 0006a 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0006f e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 00074 48 89 44 24 30 mov QWORD PTR pszBuffer$[rsp], rax ; 2233 : StringTraits::Format( pszBuffer, nLength+1, temp, args ); 00079 48 8d 4c 24 28 lea rcx, QWORD PTR temp$[rsp] 0007e e8 00 00 00 00 call ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::operator wchar_t const * 00083 8b 4c 24 20 mov ecx, DWORD PTR nLength$[rsp] 00087 ff c1 inc ecx 00089 48 63 c9 movsxd rcx, ecx 0008c 4c 8b 4c 24 60 mov r9, QWORD PTR args$[rsp] 00091 4c 8b c0 mov r8, rax 00094 48 8b d1 mov rdx, rcx 00097 48 8b 4c 24 30 mov rcx, QWORD PTR pszBuffer$[rsp] 0009c e8 00 00 00 00 call ?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z ; ATL::ChTraitsCRT::Format ; 2234 : this->ReleaseBufferSetLength( nLength ); 000a1 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 000a5 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000aa e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength 000af 90 npad 1 ; 2235 : } 000b0 48 8d 4c 24 28 lea rcx, QWORD PTR temp$[rsp] 000b5 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 000ba 48 83 c4 48 add rsp, 72 ; 00000048H 000be c3 ret 0 $LN6@FormatV: ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z ENDP ; ATL::CStringT > >::FormatV _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT nLength$ = 32 temp$ = 40 pszBuffer$ = 48 this$ = 80 pszFormat$ = 88 args$ = 96 ?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA PROC ; `ATL::CStringT > >::FormatV'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 28 lea rcx, QWORD PTR temp$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0??FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z@4HA ENDP ; `ATL::CStringT > >::FormatV'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ _TEXT SEGMENT argList$ = 32 this$ = 64 pszFormat$ = 72 ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ PROC ; ATL::CStringT > >::Format, COMDAT ; 2741 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000f 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00014 48 83 ec 38 sub rsp, 56 ; 00000038H ; 2742 : ATLASSERT( AtlIsValidString( pszFormat ) ); ; 2743 : ; 2744 : va_list argList; ; 2745 : va_start( argList, pszFormat ); 00018 48 8d 44 24 50 lea rax, QWORD PTR pszFormat$[rsp+8] 0001d 48 89 44 24 20 mov QWORD PTR argList$[rsp], rax ; 2746 : FormatV( pszFormat, argList ); 00022 4c 8b 44 24 20 mov r8, QWORD PTR argList$[rsp] 00027 48 8b 54 24 48 mov rdx, QWORD PTR pszFormat$[rsp] 0002c 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00031 e8 00 00 00 00 call ?FormatV@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WPEAD@Z ; ATL::CStringT > >::FormatV ; 2747 : va_end( argList ); 00036 48 c7 44 24 20 00 00 00 00 mov QWORD PTR argList$[rsp], 0 ; 2748 : } 0003f 48 83 c4 38 add rsp, 56 ; 00000038H 00043 c3 ret 0 ?Format@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAXPEB_WZZ ENDP ; ATL::CStringT > >::Format _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z _TEXT SEGMENT $T1 = 32 nLength$ = 36 tv130 = 40 tv128 = 48 this$ = 80 __$ReturnUdt$ = 88 nCount$ = 96 ?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z PROC ; ATL::CStringT > >::Right, COMDAT ; 2135 : { $LN7: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 48 sub rsp, 72 ; 00000048H 00013 c7 44 24 20 00 00 00 00 mov DWORD PTR $T1[rsp], 0 ; 2136 : // nCount is in XCHARs ; 2137 : if (nCount < 0) 0001b 83 7c 24 60 00 cmp DWORD PTR nCount$[rsp], 0 00020 7d 08 jge SHORT $LN2@Right ; 2138 : nCount = 0; 00022 c7 44 24 60 00 00 00 00 mov DWORD PTR nCount$[rsp], 0 $LN2@Right: ; 2139 : ; 2140 : int nLength = this->GetLength(); 0002a 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0002f e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00034 89 44 24 24 mov DWORD PTR nLength$[rsp], eax ; 2141 : if( nCount >= nLength ) 00038 8b 44 24 24 mov eax, DWORD PTR nLength$[rsp] 0003c 39 44 24 60 cmp DWORD PTR nCount$[rsp], eax 00040 7c 22 jl SHORT $LN3@Right ; 2142 : { ; 2143 : return( *this ); 00042 48 8b 54 24 50 mov rdx, QWORD PTR this$[rsp] 00047 48 8b 4c 24 58 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 0004c e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 00051 90 npad 1 00052 8b 44 24 20 mov eax, DWORD PTR $T1[rsp] 00056 83 c8 01 or eax, 1 00059 89 44 24 20 mov DWORD PTR $T1[rsp], eax 0005d 48 8b 44 24 58 mov rax, QWORD PTR __$ReturnUdt$[rsp] 00062 eb 5c jmp SHORT $LN1@Right $LN3@Right: ; 2144 : } ; 2145 : ; 2146 : return( CStringT( this->GetString()+nLength-nCount, nCount, GetManager() ) ); 00064 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00069 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 0006e 48 89 44 24 28 mov QWORD PTR tv130[rsp], rax 00073 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00078 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 0007d 48 63 4c 24 24 movsxd rcx, DWORD PTR nLength$[rsp] 00082 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2] 00086 48 63 4c 24 60 movsxd rcx, DWORD PTR nCount$[rsp] 0008b 48 d1 e1 shl rcx, 1 0008e 48 2b c1 sub rax, rcx 00091 48 89 44 24 30 mov QWORD PTR tv128[rsp], rax 00096 4c 8b 4c 24 28 mov r9, QWORD PTR tv130[rsp] 0009b 44 8b 44 24 60 mov r8d, DWORD PTR nCount$[rsp] 000a0 48 8b 54 24 30 mov rdx, QWORD PTR tv128[rsp] 000a5 48 8b 4c 24 58 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 000aa e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 000af 90 npad 1 000b0 8b 44 24 20 mov eax, DWORD PTR $T1[rsp] 000b4 83 c8 01 or eax, 1 000b7 89 44 24 20 mov DWORD PTR $T1[rsp], eax 000bb 48 8b 44 24 58 mov rax, QWORD PTR __$ReturnUdt$[rsp] $LN1@Right: ; 2147 : } 000c0 48 83 c4 48 add rsp, 72 ; 00000048H 000c4 c3 ret 0 000c5 cc int 3 ?Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z ENDP ; ATL::CStringT > >::Right _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 nLength$ = 36 tv130 = 40 tv128 = 48 this$ = 80 __$ReturnUdt$ = 88 nCount$ = 96 ?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA PROC ; `ATL::CStringT > >::Right'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 8b 45 20 mov eax, DWORD PTR $T1[rbp] 0000c 83 e0 01 and eax, 1 0000f 85 c0 test eax, eax 00011 74 0d je SHORT $LN6@dtor$0 00013 83 65 20 fe and DWORD PTR $T1[rbp], -2 00017 48 8b 4d 58 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 0001b e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN6@dtor$0: 00020 48 83 c4 20 add rsp, 32 ; 00000020H 00024 5d pop rbp 00025 c3 ret 0 ?dtor$0@?0??Right@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@H@Z@4HA ENDP ; `ATL::CStringT > >::Right'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z _TEXT SEGMENT $T1 = 32 tv66 = 36 tv91 = 40 tv154 = 48 tv152 = 56 this$ = 80 __$ReturnUdt$ = 88 iFirst$ = 96 nCount$ = 104 ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z PROC ; ATL::CStringT > >::Mid, COMDAT ; 2104 : { $LN10: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 48 sub rsp, 72 ; 00000048H 00018 c7 44 24 20 00 00 00 00 mov DWORD PTR $T1[rsp], 0 ; 2105 : // nCount is in XCHARs ; 2106 : ; 2107 : // out-of-bounds requests return sensible things ; 2108 : if (iFirst < 0) 00020 83 7c 24 60 00 cmp DWORD PTR iFirst$[rsp], 0 00025 7d 08 jge SHORT $LN2@Mid ; 2109 : iFirst = 0; 00027 c7 44 24 60 00 00 00 00 mov DWORD PTR iFirst$[rsp], 0 $LN2@Mid: ; 2110 : if (nCount < 0) 0002f 83 7c 24 68 00 cmp DWORD PTR nCount$[rsp], 0 00034 7d 08 jge SHORT $LN3@Mid ; 2111 : nCount = 0; 00036 c7 44 24 68 00 00 00 00 mov DWORD PTR nCount$[rsp], 0 $LN3@Mid: ; 2112 : ; 2113 : if( (::ATL::AtlAddThrow(iFirst,nCount)) > this->GetLength() ) 0003e 8b 54 24 68 mov edx, DWORD PTR nCount$[rsp] 00042 8b 4c 24 60 mov ecx, DWORD PTR iFirst$[rsp] 00046 e8 00 00 00 00 call ??$AtlAddThrow@H@ATL@@YAHHH@Z ; ATL::AtlAddThrow 0004b 89 44 24 24 mov DWORD PTR tv66[rsp], eax 0004f 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00054 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00059 8b 4c 24 24 mov ecx, DWORD PTR tv66[rsp] 0005d 3b c8 cmp ecx, eax 0005f 7e 12 jle SHORT $LN4@Mid ; 2114 : { ; 2115 : nCount = this->GetLength()-iFirst; 00061 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00066 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0006b 2b 44 24 60 sub eax, DWORD PTR iFirst$[rsp] 0006f 89 44 24 68 mov DWORD PTR nCount$[rsp], eax $LN4@Mid: ; 2116 : } ; 2117 : if( iFirst > this->GetLength() ) 00073 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00078 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0007d 39 44 24 60 cmp DWORD PTR iFirst$[rsp], eax 00081 7e 08 jle SHORT $LN5@Mid ; 2118 : { ; 2119 : nCount = 0; 00083 c7 44 24 68 00 00 00 00 mov DWORD PTR nCount$[rsp], 0 $LN5@Mid: ; 2120 : } ; 2121 : ; 2122 : ATLASSERT( (nCount == 0) || ((iFirst+nCount) <= this->GetLength()) ); ; 2123 : ; 2124 : // optimize case of returning entire string ; 2125 : if( (iFirst == 0) && ((iFirst+nCount) == this->GetLength()) ) 0008b 83 7c 24 60 00 cmp DWORD PTR iFirst$[rsp], 0 00090 75 44 jne SHORT $LN6@Mid 00092 8b 44 24 68 mov eax, DWORD PTR nCount$[rsp] 00096 8b 4c 24 60 mov ecx, DWORD PTR iFirst$[rsp] 0009a 03 c8 add ecx, eax 0009c 8b c1 mov eax, ecx 0009e 89 44 24 28 mov DWORD PTR tv91[rsp], eax 000a2 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000a7 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 000ac 8b 4c 24 28 mov ecx, DWORD PTR tv91[rsp] 000b0 3b c8 cmp ecx, eax 000b2 75 22 jne SHORT $LN6@Mid ; 2126 : { ; 2127 : return( *this ); 000b4 48 8b 54 24 50 mov rdx, QWORD PTR this$[rsp] 000b9 48 8b 4c 24 58 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 000be e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ; ATL::CStringT > >::CStringT > > 000c3 90 npad 1 000c4 8b 44 24 20 mov eax, DWORD PTR $T1[rsp] 000c8 83 c8 01 or eax, 1 000cb 89 44 24 20 mov DWORD PTR $T1[rsp], eax 000cf 48 8b 44 24 58 mov rax, QWORD PTR __$ReturnUdt$[rsp] 000d4 eb 51 jmp SHORT $LN1@Mid $LN6@Mid: ; 2128 : } ; 2129 : ; 2130 : return( CStringT( this->GetString()+iFirst, nCount, GetManager() ) ); 000d6 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000db e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 000e0 48 89 44 24 30 mov QWORD PTR tv154[rsp], rax 000e5 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000ea e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 000ef 48 63 4c 24 60 movsxd rcx, DWORD PTR iFirst$[rsp] 000f4 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2] 000f8 48 89 44 24 38 mov QWORD PTR tv152[rsp], rax 000fd 4c 8b 4c 24 30 mov r9, QWORD PTR tv154[rsp] 00102 44 8b 44 24 68 mov r8d, DWORD PTR nCount$[rsp] 00107 48 8b 54 24 38 mov rdx, QWORD PTR tv152[rsp] 0010c 48 8b 4c 24 58 mov rcx, QWORD PTR __$ReturnUdt$[rsp] 00111 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 00116 90 npad 1 00117 8b 44 24 20 mov eax, DWORD PTR $T1[rsp] 0011b 83 c8 01 or eax, 1 0011e 89 44 24 20 mov DWORD PTR $T1[rsp], eax 00122 48 8b 44 24 58 mov rax, QWORD PTR __$ReturnUdt$[rsp] $LN1@Mid: ; 2131 : } 00127 48 83 c4 48 add rsp, 72 ; 00000048H 0012b c3 ret 0 0012c cc int 3 ?Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z ENDP ; ATL::CStringT > >::Mid _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT $T1 = 32 tv66 = 36 tv91 = 40 tv154 = 48 tv152 = 56 this$ = 80 __$ReturnUdt$ = 88 iFirst$ = 96 nCount$ = 104 ?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA PROC ; `ATL::CStringT > >::Mid'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 8b 45 20 mov eax, DWORD PTR $T1[rbp] 0000c 83 e0 01 and eax, 1 0000f 85 c0 test eax, eax 00011 74 0d je SHORT $LN9@dtor$0 00013 83 65 20 fe and DWORD PTR $T1[rbp], -2 00017 48 8b 4d 58 mov rcx, QWORD PTR __$ReturnUdt$[rbp] 0001b e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > $LN9@dtor$0: 00020 48 83 c4 20 add rsp, 32 ; 00000020H 00024 5d pop rbp 00025 c3 ret 0 ?dtor$0@?0??Mid@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBA?AV12@HH@Z@4HA ENDP ; `ATL::CStringT > >::Mid'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ _TEXT SEGMENT nLength$ = 32 pszBuffer$ = 40 this$ = 64 ?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ PROC ; ATL::CStringT > >::MakeLower, COMDAT ; 1836 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1837 : int nLength = this->GetLength(); 00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00013 89 44 24 20 mov DWORD PTR nLength$[rsp], eax ; 1838 : PXSTR pszBuffer = this->GetBuffer( nLength ); 00017 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 0001b 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00020 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 00025 48 89 44 24 28 mov QWORD PTR pszBuffer$[rsp], rax ; 1839 : StringTraits::StringLowercase( pszBuffer, nLength+1 ); 0002a 8b 44 24 20 mov eax, DWORD PTR nLength$[rsp] 0002e ff c0 inc eax 00030 48 98 cdqe 00032 48 8b d0 mov rdx, rax 00035 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$[rsp] 0003a e8 00 00 00 00 call ?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z ; ATL::ChTraitsCRT::StringLowercase ; 1840 : this->ReleaseBufferSetLength( nLength ); 0003f 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 00043 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00048 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength ; 1841 : ; 1842 : return( *this ); 0004d 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] ; 1843 : } 00052 48 83 c4 38 add rsp, 56 ; 00000038H 00056 c3 ret 0 ?MakeLower@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ ENDP ; ATL::CStringT > >::MakeLower _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ _TEXT SEGMENT nLength$ = 32 pszBuffer$ = 40 this$ = 64 ?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ PROC ; ATL::CStringT > >::MakeUpper, COMDAT ; 1825 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1826 : int nLength = this->GetLength(); 00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00013 89 44 24 20 mov DWORD PTR nLength$[rsp], eax ; 1827 : PXSTR pszBuffer = this->GetBuffer( nLength ); 00017 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 0001b 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00020 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 00025 48 89 44 24 28 mov QWORD PTR pszBuffer$[rsp], rax ; 1828 : StringTraits::StringUppercase( pszBuffer, nLength+1 ); 0002a 8b 44 24 20 mov eax, DWORD PTR nLength$[rsp] 0002e ff c0 inc eax 00030 48 98 cdqe 00032 48 8b d0 mov rdx, rax 00035 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$[rsp] 0003a e8 00 00 00 00 call ?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z ; ATL::ChTraitsCRT::StringUppercase ; 1829 : this->ReleaseBufferSetLength( nLength ); 0003f 8b 54 24 20 mov edx, DWORD PTR nLength$[rsp] 00043 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00048 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength ; 1830 : ; 1831 : return( *this ); 0004d 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] ; 1832 : } 00052 48 83 c4 38 add rsp, 56 ; 00000038H 00056 c3 ret 0 ?MakeUpper@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV12@XZ ENDP ; ATL::CStringT > >::MakeUpper _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z _TEXT SEGMENT tv83 = 32 psz$ = 40 this$ = 64 ch$ = 72 ?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z PROC ; ATL::CStringT > >::ReverseFind, COMDAT ; 1813 : { $LN5: 00000 66 89 54 24 10 mov WORD PTR [rsp+16], dx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1814 : // find last single character ; 1815 : PCXSTR psz = StringTraits::StringFindCharRev( this->GetString(), ch ); 0000e 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00013 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00018 0f b7 54 24 48 movzx edx, WORD PTR ch$[rsp] 0001d 48 8b c8 mov rcx, rax 00020 e8 00 00 00 00 call ?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z ; ATL::ChTraitsCRT::StringFindCharRev 00025 48 89 44 24 28 mov QWORD PTR psz$[rsp], rax ; 1816 : ; 1817 : // return -1 if not found, distance from beginning otherwise ; 1818 : return( (psz == NULL) ? -1 : int( psz - this->GetString() ) ); 0002a 48 83 7c 24 28 00 cmp QWORD PTR psz$[rsp], 0 00030 75 0a jne SHORT $LN3@ReverseFin 00032 c7 44 24 20 ff ff ff ff mov DWORD PTR tv83[rsp], -1 0003a eb 1c jmp SHORT $LN4@ReverseFin $LN3@ReverseFin: 0003c 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00041 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00046 48 8b 4c 24 28 mov rcx, QWORD PTR psz$[rsp] 0004b 48 2b c8 sub rcx, rax 0004e 48 8b c1 mov rax, rcx 00051 48 d1 f8 sar rax, 1 00054 89 44 24 20 mov DWORD PTR tv83[rsp], eax $LN4@ReverseFin: 00058 8b 44 24 20 mov eax, DWORD PTR tv83[rsp] ; 1819 : } 0005c 48 83 c4 38 add rsp, 56 ; 00000038H 00060 c3 ret 0 ?ReverseFind@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_W@Z ENDP ; ATL::CStringT > >::ReverseFind _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z _TEXT SEGMENT tv95 = 32 nLength$ = 36 psz$ = 40 this$ = 64 pszSub$ = 72 iStart$ = 80 ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z PROC ; ATL::CStringT > >::Find, COMDAT ; 1780 : { $LN8: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1781 : // iStart is in XCHARs ; 1782 : ATLASSERT( iStart >= 0 ); ; 1783 : ATLASSERT( AtlIsValidString( pszSub ) ); ; 1784 : ; 1785 : if(pszSub == NULL) 00013 48 83 7c 24 48 00 cmp QWORD PTR pszSub$[rsp], 0 00019 75 07 jne SHORT $LN2@Find ; 1786 : { ; 1787 : return( -1 ); 0001b b8 ff ff ff ff mov eax, -1 00020 eb 7d jmp SHORT $LN1@Find $LN2@Find: ; 1788 : } ; 1789 : // nLength is in XCHARs ; 1790 : int nLength = this->GetLength(); 00022 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00027 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0002c 89 44 24 24 mov DWORD PTR nLength$[rsp], eax ; 1791 : if( iStart < 0 || iStart > nLength ) 00030 83 7c 24 50 00 cmp DWORD PTR iStart$[rsp], 0 00035 7c 0a jl SHORT $LN4@Find 00037 8b 44 24 24 mov eax, DWORD PTR nLength$[rsp] 0003b 39 44 24 50 cmp DWORD PTR iStart$[rsp], eax 0003f 7e 07 jle SHORT $LN3@Find $LN4@Find: ; 1792 : { ; 1793 : return( -1 ); 00041 b8 ff ff ff ff mov eax, -1 00046 eb 57 jmp SHORT $LN1@Find $LN3@Find: ; 1794 : } ; 1795 : ; 1796 : // find first matching substring ; 1797 : PCXSTR psz = StringTraits::StringFindString( this->GetString()+iStart, pszSub ); 00048 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0004d e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00052 48 63 4c 24 50 movsxd rcx, DWORD PTR iStart$[rsp] 00057 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2] 0005b 48 8b 54 24 48 mov rdx, QWORD PTR pszSub$[rsp] 00060 48 8b c8 mov rcx, rax 00063 e8 00 00 00 00 call ?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z ; ATL::ChTraitsCRT::StringFindString 00068 48 89 44 24 28 mov QWORD PTR psz$[rsp], rax ; 1798 : ; 1799 : // return -1 for not found, distance from beginning otherwise ; 1800 : return( (psz == NULL) ? -1 : int( psz - this->GetString() ) ); 0006d 48 83 7c 24 28 00 cmp QWORD PTR psz$[rsp], 0 00073 75 0a jne SHORT $LN6@Find 00075 c7 44 24 20 ff ff ff ff mov DWORD PTR tv95[rsp], -1 0007d eb 1c jmp SHORT $LN7@Find $LN6@Find: 0007f 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00084 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00089 48 8b 4c 24 28 mov rcx, QWORD PTR psz$[rsp] 0008e 48 2b c8 sub rcx, rax 00091 48 8b c1 mov rax, rcx 00094 48 d1 f8 sar rax, 1 00097 89 44 24 20 mov DWORD PTR tv95[rsp], eax $LN7@Find: 0009b 8b 44 24 20 mov eax, DWORD PTR tv95[rsp] $LN1@Find: ; 1801 : } 0009f 48 83 c4 38 add rsp, 56 ; 00000038H 000a3 c3 ret 0 ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_WH@Z ENDP ; ATL::CStringT > >::Find _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z _TEXT SEGMENT tv94 = 32 nLength$ = 36 psz$ = 40 this$ = 64 ch$ = 72 iStart$ = 80 ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z PROC ; ATL::CStringT > >::Find, COMDAT ; 1756 : { $LN7: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 66 89 54 24 10 mov WORD PTR [rsp+16], dx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1757 : // iStart is in XCHARs ; 1758 : ATLASSERT( iStart >= 0 ); ; 1759 : ; 1760 : // nLength is in XCHARs ; 1761 : int nLength = this->GetLength(); 00013 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0001d 89 44 24 24 mov DWORD PTR nLength$[rsp], eax ; 1762 : if( iStart < 0 || iStart >= nLength) 00021 83 7c 24 50 00 cmp DWORD PTR iStart$[rsp], 0 00026 7c 0a jl SHORT $LN3@Find 00028 8b 44 24 24 mov eax, DWORD PTR nLength$[rsp] 0002c 39 44 24 50 cmp DWORD PTR iStart$[rsp], eax 00030 7c 07 jl SHORT $LN2@Find $LN3@Find: ; 1763 : { ; 1764 : return( -1 ); 00032 b8 ff ff ff ff mov eax, -1 00037 eb 57 jmp SHORT $LN1@Find $LN2@Find: ; 1765 : } ; 1766 : ; 1767 : // find first single character ; 1768 : PCXSTR psz = StringTraits::StringFindChar( this->GetString()+iStart, ch ); 00039 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0003e e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00043 48 63 4c 24 50 movsxd rcx, DWORD PTR iStart$[rsp] 00048 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2] 0004c 0f b7 54 24 48 movzx edx, WORD PTR ch$[rsp] 00051 48 8b c8 mov rcx, rax 00054 e8 00 00 00 00 call ?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z ; ATL::ChTraitsCRT::StringFindChar 00059 48 89 44 24 28 mov QWORD PTR psz$[rsp], rax ; 1769 : ; 1770 : // return -1 if not found and index otherwise ; 1771 : return( (psz == NULL) ? -1 : int( psz - this->GetString() ) ); 0005e 48 83 7c 24 28 00 cmp QWORD PTR psz$[rsp], 0 00064 75 0a jne SHORT $LN5@Find 00066 c7 44 24 20 ff ff ff ff mov DWORD PTR tv94[rsp], -1 0006e eb 1c jmp SHORT $LN6@Find $LN5@Find: 00070 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00075 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 0007a 48 8b 4c 24 28 mov rcx, QWORD PTR psz$[rsp] 0007f 48 2b c8 sub rcx, rax 00082 48 8b c1 mov rax, rcx 00085 48 d1 f8 sar rax, 1 00088 89 44 24 20 mov DWORD PTR tv94[rsp], eax $LN6@Find: 0008c 8b 44 24 20 mov eax, DWORD PTR tv94[rsp] $LN1@Find: ; 1772 : } 00090 48 83 c4 38 add rsp, 56 ; 00000038H 00094 c3 ret 0 ?Find@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAH_WH@Z ENDP ; ATL::CStringT > >::Find _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z _TEXT SEGMENT nLength$ = 32 nXCHARsToCopy$1 = 36 nNewLength$2 = 40 pszBuffer$3 = 48 tv135 = 56 this$ = 80 iIndex$ = 88 nCount$ = 96 ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z PROC ; ATL::CStringT > >::Delete, COMDAT ; 1478 : { $LN7: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx 00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000e 48 83 ec 48 sub rsp, 72 ; 00000048H ; 1479 : if( iIndex < 0 ) 00012 83 7c 24 58 00 cmp DWORD PTR iIndex$[rsp], 0 00017 7d 08 jge SHORT $LN2@Delete ; 1480 : iIndex = 0; 00019 c7 44 24 58 00 00 00 00 mov DWORD PTR iIndex$[rsp], 0 $LN2@Delete: ; 1481 : ; 1482 : if( nCount < 0 ) 00021 83 7c 24 60 00 cmp DWORD PTR nCount$[rsp], 0 00026 7d 08 jge SHORT $LN3@Delete ; 1483 : nCount = 0; 00028 c7 44 24 60 00 00 00 00 mov DWORD PTR nCount$[rsp], 0 $LN3@Delete: ; 1484 : ; 1485 : int nLength = this->GetLength(); 00030 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00035 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0003a 89 44 24 20 mov DWORD PTR nLength$[rsp], eax ; 1486 : if( (::ATL::AtlAddThrow(nCount, iIndex)) > nLength ) 0003e 8b 54 24 58 mov edx, DWORD PTR iIndex$[rsp] 00042 8b 4c 24 60 mov ecx, DWORD PTR nCount$[rsp] 00046 e8 00 00 00 00 call ??$AtlAddThrow@H@ATL@@YAHHH@Z ; ATL::AtlAddThrow 0004b 3b 44 24 20 cmp eax, DWORD PTR nLength$[rsp] 0004f 7e 10 jle SHORT $LN4@Delete ; 1487 : { ; 1488 : nCount = nLength-iIndex; 00051 8b 44 24 58 mov eax, DWORD PTR iIndex$[rsp] 00055 8b 4c 24 20 mov ecx, DWORD PTR nLength$[rsp] 00059 2b c8 sub ecx, eax 0005b 8b c1 mov eax, ecx 0005d 89 44 24 60 mov DWORD PTR nCount$[rsp], eax $LN4@Delete: ; 1489 : } ; 1490 : if( nCount > 0 ) 00061 83 7c 24 60 00 cmp DWORD PTR nCount$[rsp], 0 00066 0f 8e 94 00 00 00 jle $LN5@Delete ; 1491 : { ; 1492 : int nNewLength = nLength-nCount; 0006c 8b 44 24 60 mov eax, DWORD PTR nCount$[rsp] 00070 8b 4c 24 20 mov ecx, DWORD PTR nLength$[rsp] 00074 2b c8 sub ecx, eax 00076 8b c1 mov eax, ecx 00078 89 44 24 28 mov DWORD PTR nNewLength$2[rsp], eax ; 1493 : int nXCHARsToCopy = nLength-(iIndex+nCount)+1; 0007c 8b 44 24 60 mov eax, DWORD PTR nCount$[rsp] 00080 8b 4c 24 58 mov ecx, DWORD PTR iIndex$[rsp] 00084 03 c8 add ecx, eax 00086 8b c1 mov eax, ecx 00088 8b 4c 24 20 mov ecx, DWORD PTR nLength$[rsp] 0008c 2b c8 sub ecx, eax 0008e 8b c1 mov eax, ecx 00090 ff c0 inc eax 00092 89 44 24 24 mov DWORD PTR nXCHARsToCopy$1[rsp], eax ; 1494 : PXSTR pszBuffer = this->GetBuffer(); 00096 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0009b e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ ; ATL::CSimpleStringT::GetBuffer 000a0 48 89 44 24 30 mov QWORD PTR pszBuffer$3[rsp], rax ; 1495 : Checked::memmove_s( pszBuffer+iIndex, nXCHARsToCopy*sizeof( XCHAR ), 000a5 48 63 44 24 24 movsxd rax, DWORD PTR nXCHARsToCopy$1[rsp] 000aa 48 d1 e0 shl rax, 1 000ad 48 63 4c 24 58 movsxd rcx, DWORD PTR iIndex$[rsp] 000b2 48 8b 54 24 30 mov rdx, QWORD PTR pszBuffer$3[rsp] 000b7 48 8d 0c 4a lea rcx, QWORD PTR [rdx+rcx*2] 000bb 48 63 54 24 60 movsxd rdx, DWORD PTR nCount$[rsp] 000c0 48 8d 0c 51 lea rcx, QWORD PTR [rcx+rdx*2] 000c4 48 63 54 24 24 movsxd rdx, DWORD PTR nXCHARsToCopy$1[rsp] 000c9 48 d1 e2 shl rdx, 1 000cc 4c 63 44 24 58 movsxd r8, DWORD PTR iIndex$[rsp] 000d1 4c 8b 4c 24 30 mov r9, QWORD PTR pszBuffer$3[rsp] 000d6 4f 8d 04 41 lea r8, QWORD PTR [r9+r8*2] 000da 4c 89 44 24 38 mov QWORD PTR tv135[rsp], r8 000df 4c 8b c8 mov r9, rax 000e2 4c 8b c1 mov r8, rcx 000e5 48 8b 44 24 38 mov rax, QWORD PTR tv135[rsp] 000ea 48 8b c8 mov rcx, rax 000ed e8 00 00 00 00 call ?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z ; ATL::Checked::memmove_s ; 1496 : pszBuffer+iIndex+nCount, nXCHARsToCopy*sizeof( XCHAR ) ); ; 1497 : this->ReleaseBufferSetLength( nNewLength ); 000f2 8b 54 24 28 mov edx, DWORD PTR nNewLength$2[rsp] 000f6 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000fb e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength $LN5@Delete: ; 1498 : } ; 1499 : ; 1500 : return( this->GetLength() ); 00100 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00105 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength ; 1501 : } 0010a 48 83 c4 48 add rsp, 72 ; 00000048H 0010e c3 ret 0 ?Delete@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAHHH@Z ENDP ; ATL::CStringT > >::Delete _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z _TEXT SEGMENT tv68 = 32 __atl_condVal$1 = 36 this$ = 64 psz$ = 72 ?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z PROC ; ATL::CStringT > >::Compare, COMDAT ; 1447 : { $LN12: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H $LN4@Compare: ; 1448 : ATLENSURE( AtlIsValidString( psz ) ); 0000e ba ff ff ff 7f mov edx, 2147483647 ; 7fffffffH 00013 48 8b 4c 24 48 mov rcx, QWORD PTR psz$[rsp] 00018 e8 00 00 00 00 call ?AtlIsValidString@ATL@@YAHPEB_W_K@Z ; ATL::AtlIsValidString 0001d 85 c0 test eax, eax 0001f 74 0a je SHORT $LN10@Compare 00021 c7 44 24 20 01 00 00 00 mov DWORD PTR tv68[rsp], 1 00029 eb 08 jmp SHORT $LN11@Compare $LN10@Compare: 0002b c7 44 24 20 00 00 00 00 mov DWORD PTR tv68[rsp], 0 $LN11@Compare: 00033 8b 44 24 20 mov eax, DWORD PTR tv68[rsp] 00037 89 44 24 24 mov DWORD PTR __atl_condVal$1[rsp], eax $LN7@Compare: 0003b 33 c0 xor eax, eax 0003d 85 c0 test eax, eax 0003f 75 fa jne SHORT $LN7@Compare 00041 83 7c 24 24 00 cmp DWORD PTR __atl_condVal$1[rsp], 0 00046 75 0a jne SHORT $LN8@Compare 00048 b9 05 40 00 80 mov ecx, -2147467259 ; ffffffff80004005H 0004d e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN8@Compare: 00052 33 c0 xor eax, eax 00054 85 c0 test eax, eax 00056 75 b6 jne SHORT $LN4@Compare ; 1449 : _Analysis_assume_(psz); // AtlIsValidString guarantees that psz != NULL ; 1450 : return( StringTraits::StringCompare( this->GetString(), psz ) ); 00058 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0005d e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00062 48 8b 54 24 48 mov rdx, QWORD PTR psz$[rsp] 00067 48 8b c8 mov rcx, rax 0006a e8 00 00 00 00 call ?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z ; ATL::ChTraitsCRT::StringCompare $LN9@Compare: ; 1451 : } 0006f 48 83 c4 38 add rsp, 56 ; 00000038H 00073 c3 ret 0 ?Compare@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAHPEB_W@Z ENDP ; ATL::CStringT > >::Compare _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ _TEXT SEGMENT pStringMgr$ = 32 this$ = 64 ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ PROC ; ATL::CStringT > >::GetManager, COMDAT ; 1436 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1437 : IAtlStringMgr* pStringMgr = CThisSimpleString::GetManager(); 00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CSimpleStringT::GetManager 00013 48 89 44 24 20 mov QWORD PTR pStringMgr$[rsp], rax ; 1438 : if(pStringMgr) { return pStringMgr; } 00018 48 83 7c 24 20 00 cmp QWORD PTR pStringMgr$[rsp], 0 0001e 74 07 je SHORT $LN2@GetManager 00020 48 8b 44 24 20 mov rax, QWORD PTR pStringMgr$[rsp] 00025 eb 1a jmp SHORT $LN1@GetManager $LN2@GetManager: ; 1439 : ; 1440 : pStringMgr = StringTraits::GetDefaultManager(); 00027 e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC >::GetDefaultManager 0002c 48 89 44 24 20 mov QWORD PTR pStringMgr$[rsp], rax ; 1441 : return pStringMgr->Clone(); 00031 48 8b 44 24 20 mov rax, QWORD PTR pStringMgr$[rsp] 00036 48 8b 00 mov rax, QWORD PTR [rax] 00039 48 8b 4c 24 20 mov rcx, QWORD PTR pStringMgr$[rsp] 0003e ff 50 20 call QWORD PTR [rax+32] $LN1@GetManager: ; 1442 : } 00041 48 83 c4 38 add rsp, 56 ; 00000038H 00045 c3 ret 0 ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ENDP ; ATL::CStringT > >::GetManager _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z _TEXT SEGMENT str$ = 32 $T1 = 40 this$ = 64 pszSrc$ = 72 ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z PROC ; ATL::CStringT > >::operator+=, COMDAT ; 1398 : { $LN4: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1399 : CStringT str( pszSrc, GetManager() ); 0000e 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00013 e8 00 00 00 00 call ?GetManager@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ; ATL::CStringT > >::GetManager 00018 4c 8b c0 mov r8, rax 0001b 48 8b 54 24 48 mov rdx, QWORD PTR pszSrc$[rsp] 00020 48 8d 4c 24 20 lea rcx, QWORD PTR str$[rsp] 00025 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z ; ATL::CStringT > >::CStringT > > 0002a 90 npad 1 ; 1400 : ; 1401 : return( operator+=( str ) ); 0002b 48 8d 54 24 20 lea rdx, QWORD PTR str$[rsp] 00030 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00035 e8 00 00 00 00 call ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ; ATL::CStringT > >::operator+= 0003a 48 89 44 24 28 mov QWORD PTR $T1[rsp], rax 0003f 48 8d 4c 24 20 lea rcx, QWORD PTR str$[rsp] 00044 e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00049 48 8b 44 24 28 mov rax, QWORD PTR $T1[rsp] ; 1402 : } 0004e 48 83 c4 38 add rsp, 56 ; 00000038H 00052 c3 ret 0 ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ENDP ; ATL::CStringT > >::operator+= _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT str$ = 32 $T1 = 40 this$ = 64 pszSrc$ = 72 ?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA PROC ; `ATL::CStringT > >::operator+='::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8d 4d 20 lea rcx, QWORD PTR str$[rbp] 0000d e8 00 00 00 00 call ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ; ATL::CStringT > >::~CStringT > > 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z@4HA ENDP ; `ATL::CStringT > >::operator+='::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CStringT > >::operator+=, COMDAT ; 1383 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1384 : CThisSimpleString::operator+=( pszSrc ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT::operator+= ; 1385 : ; 1386 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 1387 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CStringT > >::operator+= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z _TEXT SEGMENT this$ = 48 str$ = 56 ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z PROC ; ATL::CStringT > >::operator+=, COMDAT ; 1369 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1370 : CThisSimpleString::operator+=( str ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR str$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CSimpleStringT::operator+= ; 1371 : ; 1372 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 1373 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??Y?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV?$CSimpleStringT@_W$0A@@1@@Z ENDP ; ATL::CStringT > >::operator+= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z _TEXT SEGMENT nDestLength$ = 32 tv67 = 36 pszBuffer$1 = 40 this$ = 64 pszSrc$ = 72 ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z PROC ; ATL::CStringT > >::operator=, COMDAT ; 1326 : { $LN7: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 1327 : // nDestLength is in XCHARs ; 1328 : int nDestLength = (pszSrc != NULL) ? StringTraits::GetBaseTypeLength( pszSrc ) : 0; 0000e 48 83 7c 24 48 00 cmp QWORD PTR pszSrc$[rsp], 0 00014 74 10 je SHORT $LN5@operator 00016 48 8b 4c 24 48 mov rcx, QWORD PTR pszSrc$[rsp] 0001b e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z ; ATL::ChTraitsCRT::GetBaseTypeLength 00020 89 44 24 24 mov DWORD PTR tv67[rsp], eax 00024 eb 08 jmp SHORT $LN6@operator $LN5@operator: 00026 c7 44 24 24 00 00 00 00 mov DWORD PTR tv67[rsp], 0 $LN6@operator: 0002e 8b 44 24 24 mov eax, DWORD PTR tv67[rsp] 00032 89 44 24 20 mov DWORD PTR nDestLength$[rsp], eax ; 1329 : if( nDestLength > 0 ) 00036 83 7c 24 20 00 cmp DWORD PTR nDestLength$[rsp], 0 0003b 7e 3c jle SHORT $LN2@operator ; 1330 : { ; 1331 : PXSTR pszBuffer = this->GetBuffer( nDestLength ); 0003d 8b 54 24 20 mov edx, DWORD PTR nDestLength$[rsp] 00041 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00046 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 0004b 48 89 44 24 28 mov QWORD PTR pszBuffer$1[rsp], rax ; 1332 : StringTraits::ConvertToBaseType( pszBuffer, nDestLength, pszSrc); 00050 41 b9 ff ff ff ff mov r9d, -1 00056 4c 8b 44 24 48 mov r8, QWORD PTR pszSrc$[rsp] 0005b 8b 54 24 20 mov edx, DWORD PTR nDestLength$[rsp] 0005f 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$1[rsp] 00064 e8 00 00 00 00 call ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z ; ATL::ChTraitsCRT::ConvertToBaseType ; 1333 : this->ReleaseBufferSetLength( nDestLength ); 00069 8b 54 24 20 mov edx, DWORD PTR nDestLength$[rsp] 0006d 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00072 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength ; 1334 : } 00077 eb 0a jmp SHORT $LN3@operator $LN2@operator: ; 1335 : else ; 1336 : { ; 1337 : this->Empty(); 00079 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0007e e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty $LN3@operator: ; 1338 : } ; 1339 : ; 1340 : return( *this ); 00083 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] ; 1341 : } 00088 48 83 c4 38 add rsp, 56 ; 00000038H 0008c c3 ret 0 ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ENDP ; ATL::CStringT > >::operator= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CStringT > >::operator=, COMDAT ; 1318 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1319 : CThisSimpleString::operator=( pszSrc ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CSimpleStringT::operator= ; 1320 : ; 1321 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 1322 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CStringT > >::operator= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z _TEXT SEGMENT this$ = 48 strSrc$ = 56 ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z PROC ; ATL::CStringT > >::operator=, COMDAT ; 1303 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1304 : CThisSimpleString::operator=( strSrc ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR strSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ; ATL::CSimpleStringT::operator= ; 1305 : ; 1306 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 1307 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@AEBV01@@Z ENDP ; ATL::CStringT > >::operator= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ _TEXT SEGMENT this$ = 48 ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ PROC ; ATL::CStringT > >::~CStringT > >, COMDAT ; 1298 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1299 : } 00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00013 90 npad 1 00014 48 83 c4 28 add rsp, 40 ; 00000028H 00018 c3 ret 0 ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ENDP ; ATL::CStringT > >::~CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA PROC ; `ATL::CStringT > >::~CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA ENDP ; `ATL::CStringT > >::~CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z _TEXT SEGMENT this$ = 48 pch$ = 56 nLength$ = 64 pStringMgr$ = 72 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1252 : { $LN4: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1251 : CThisSimpleString( pch, nLength, pStringMgr ) 00018 4c 8b 4c 24 48 mov r9, QWORD PTR pStringMgr$[rsp] 0001d 44 8b 44 24 40 mov r8d, DWORD PTR nLength$[rsp] 00022 48 8b 54 24 38 mov rdx, QWORD PTR pch$[rsp] 00027 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0002c e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT 00031 90 npad 1 ; 1253 : } 00032 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00037 48 83 c4 28 add rsp, 40 ; 00000028H 0003b c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 pch$ = 56 nLength$ = 64 pStringMgr$ = 72 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 pStringMgr$ = 64 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1081 : { $LN5: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1080 : CThisSimpleString( pStringMgr ) 00013 48 8b 54 24 40 mov rdx, QWORD PTR pStringMgr$[rsp] 00018 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0001d e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT 00022 90 npad 1 ; 1082 : if( !CheckImplicitLoad( pszSrc ) ) 00023 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00028 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0002d e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT > >::CheckImplicitLoad 00032 0f b6 c0 movzx eax, al 00035 85 c0 test eax, eax 00037 75 10 jne SHORT $LN2@CStringT ; 1083 : { ; 1084 : *this = pszSrc; 00039 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 0003e 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00043 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= 00048 90 npad 1 $LN2@CStringT: ; 1085 : } ; 1086 : } 00049 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0004e 48 83 c4 28 add rsp, 40 ; 00000028H 00052 c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 pszSrc$ = 56 pStringMgr$ = 64 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBDPEAUIAtlStringMgr@1@@Z@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1070 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1069 : CThisSimpleString( StringTraits::GetDefaultManager() ) 0000e e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC >::GetDefaultManager 00013 48 8b d0 mov rdx, rax 00016 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0001b e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT 00020 90 npad 1 ; 1071 : if( !CheckImplicitLoad( pszSrc ) ) 00021 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00026 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0002b e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT > >::CheckImplicitLoad 00030 0f b6 c0 movzx eax, al 00033 85 c0 test eax, eax 00035 75 10 jne SHORT $LN2@CStringT ; 1072 : { ; 1073 : *this = pszSrc; 00037 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 0003c 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00041 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEBD@Z ; ATL::CStringT > >::operator= 00046 90 npad 1 $LN2@CStringT: ; 1074 : } ; 1075 : } 00047 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0004c 48 83 c4 28 add rsp, 40 ; 00000028H 00050 c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 pszSrc$ = 56 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEBD@Z@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 pStringMgr$ = 64 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1060 : { $LN5: 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1059 : CThisSimpleString( pStringMgr ) 00013 48 8b 54 24 40 mov rdx, QWORD PTR pStringMgr$[rsp] 00018 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0001d e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT 00022 90 npad 1 ; 1061 : if( !CheckImplicitLoad( pszSrc ) ) 00023 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00028 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0002d e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AEAA_NPEBX@Z ; ATL::CStringT > >::CheckImplicitLoad 00032 0f b6 c0 movzx eax, al 00035 85 c0 test eax, eax 00037 75 10 jne SHORT $LN2@CStringT ; 1062 : { ; 1063 : *this = pszSrc; 00039 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 0003e 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00043 e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAAAEAV01@PEB_W@Z ; ATL::CStringT > >::operator= 00048 90 npad 1 $LN2@CStringT: ; 1064 : } ; 1065 : } 00049 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 0004e 48 83 c4 28 add rsp, 40 ; 00000028H 00052 c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 pszSrc$ = 56 pStringMgr$ = 64 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEB_WPEAUIAtlStringMgr@1@@Z@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z _TEXT SEGMENT this$ = 48 strSrc$ = 56 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1032 : { $LN4: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1031 : CThisSimpleString( strSrc ) 0000e 48 8b 54 24 38 mov rdx, QWORD PTR strSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z ; ATL::CSimpleStringT::CSimpleStringT 0001d 90 npad 1 ; 1033 : } 0001e 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00023 48 83 c4 28 add rsp, 40 ; 00000028H 00027 c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 strSrc$ = 56 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@AEBV01@@Z@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z _TEXT SEGMENT this$ = 48 pStringMgr$ = 56 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1016 : { $LN4: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1015 : CThisSimpleString( pStringMgr ) 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pStringMgr$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT 0001d 90 npad 1 ; 1017 : } 0001e 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00023 48 83 c4 28 add rsp, 40 ; 00000028H 00027 c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 pStringMgr$ = 56 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ _TEXT SEGMENT this$ = 48 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ PROC ; ATL::CStringT > >::CStringT > >, COMDAT ; 1011 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 1010 : CThisSimpleString( StringTraits::GetDefaultManager() ) 00009 e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPEAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC >::GetDefaultManager 0000e 48 8b d0 mov rdx, rax 00011 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00016 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT::CSimpleStringT 0001b 90 npad 1 ; 1012 : } 0001c 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] 00021 48 83 c4 28 add rsp, 40 ; 00000028H 00025 c3 ret 0 ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ ENDP ; ATL::CStringT > >::CStringT > > _TEXT ENDS ; Function compile flags: /Odtp ; COMDAT text$x text$x SEGMENT this$ = 48 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA PROC ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 00000 40 55 push rbp 00002 48 83 ec 20 sub rsp, 32 ; 00000020H 00006 48 8b ea mov rbp, rdx 00009 48 8b 4d 30 mov rcx, QWORD PTR this$[rbp] 0000d e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ; ATL::CSimpleStringT::~CSimpleStringT 00012 48 83 c4 20 add rsp, 32 ; 00000020H 00016 5d pop rbp 00017 c3 ret 0 ?dtor$0@?0???0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QEAA@XZ@4HA ENDP ; `ATL::CStringT > >::CStringT > >'::`1'::dtor$0 text$x ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z _TEXT SEGMENT pNewData$ = 32 pNewStringMgr$ = 40 tv87 = 48 tv147 = 56 tv145 = 64 tv143 = 72 tv141 = 80 pData$ = 112 ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z PROC ; ATL::CSimpleStringT::CloneData, COMDAT ; 879 : { $LN6: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 68 sub rsp, 104 ; 00000068H ; 880 : CStringData* pNewData = NULL; 00009 48 c7 44 24 20 00 00 00 00 mov QWORD PTR pNewData$[rsp], 0 ; 881 : ; 882 : IAtlStringMgr* pNewStringMgr = pData->pStringMgr->Clone(); 00012 48 8b 44 24 70 mov rax, QWORD PTR pData$[rsp] 00017 48 8b 00 mov rax, QWORD PTR [rax] 0001a 48 8b 4c 24 70 mov rcx, QWORD PTR pData$[rsp] 0001f 48 8b 09 mov rcx, QWORD PTR [rcx] 00022 48 8b 00 mov rax, QWORD PTR [rax] 00025 ff 50 20 call QWORD PTR [rax+32] 00028 48 89 44 24 28 mov QWORD PTR pNewStringMgr$[rsp], rax ; 883 : if( !pData->IsLocked() && (pNewStringMgr == pData->pStringMgr) ) 0002d 48 8b 4c 24 70 mov rcx, QWORD PTR pData$[rsp] 00032 e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked 00037 0f b6 c0 movzx eax, al 0003a 85 c0 test eax, eax 0003c 75 28 jne SHORT $LN2@CloneData 0003e 48 8b 44 24 70 mov rax, QWORD PTR pData$[rsp] 00043 48 8b 00 mov rax, QWORD PTR [rax] 00046 48 39 44 24 28 cmp QWORD PTR pNewStringMgr$[rsp], rax 0004b 75 19 jne SHORT $LN2@CloneData ; 884 : { ; 885 : pNewData = pData; 0004d 48 8b 44 24 70 mov rax, QWORD PTR pData$[rsp] 00052 48 89 44 24 20 mov QWORD PTR pNewData$[rsp], rax ; 886 : pNewData->AddRef(); 00057 48 8b 4c 24 20 mov rcx, QWORD PTR pNewData$[rsp] 0005c e8 00 00 00 00 call ?AddRef@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::AddRef ; 887 : } 00061 e9 a8 00 00 00 jmp $LN3@CloneData $LN2@CloneData: ; 888 : else ; 889 : { ; 890 : pNewData = pNewStringMgr->Allocate( pData->nDataLength, sizeof( XCHAR ) ); 00066 48 8b 44 24 28 mov rax, QWORD PTR pNewStringMgr$[rsp] 0006b 48 8b 00 mov rax, QWORD PTR [rax] 0006e 48 8b 00 mov rax, QWORD PTR [rax] 00071 48 89 44 24 30 mov QWORD PTR tv87[rsp], rax 00076 41 b8 02 00 00 00 mov r8d, 2 0007c 48 8b 44 24 70 mov rax, QWORD PTR pData$[rsp] 00081 8b 50 08 mov edx, DWORD PTR [rax+8] 00084 48 8b 4c 24 28 mov rcx, QWORD PTR pNewStringMgr$[rsp] 00089 ff 54 24 30 call QWORD PTR tv87[rsp] 0008d 48 89 44 24 20 mov QWORD PTR pNewData$[rsp], rax ; 891 : if( pNewData == NULL ) 00092 48 83 7c 24 20 00 cmp QWORD PTR pNewData$[rsp], 0 00098 75 05 jne SHORT $LN4@CloneData ; 892 : { ; 893 : ThrowMemoryException(); 0009a e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT::ThrowMemoryException $LN4@CloneData: ; 894 : } ; 895 : pNewData->nDataLength = pData->nDataLength; 0009f 48 8b 44 24 20 mov rax, QWORD PTR pNewData$[rsp] 000a4 48 8b 4c 24 70 mov rcx, QWORD PTR pData$[rsp] 000a9 8b 49 08 mov ecx, DWORD PTR [rcx+8] 000ac 89 48 08 mov DWORD PTR [rax+8], ecx ; 896 : memcpy_s( PXSTR( pNewData->data() ), (pNewData->nDataLength+1) * sizeof( XCHAR ), 000af 48 8b 44 24 70 mov rax, QWORD PTR pData$[rsp] 000b4 8b 40 08 mov eax, DWORD PTR [rax+8] 000b7 ff c0 inc eax 000b9 48 98 cdqe 000bb 48 d1 e0 shl rax, 1 000be 48 89 44 24 38 mov QWORD PTR tv147[rsp], rax 000c3 48 8b 4c 24 70 mov rcx, QWORD PTR pData$[rsp] 000c8 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data 000cd 48 89 44 24 40 mov QWORD PTR tv145[rsp], rax 000d2 48 8b 44 24 20 mov rax, QWORD PTR pNewData$[rsp] 000d7 8b 40 08 mov eax, DWORD PTR [rax+8] 000da ff c0 inc eax 000dc 48 98 cdqe 000de 48 d1 e0 shl rax, 1 000e1 48 89 44 24 48 mov QWORD PTR tv143[rsp], rax 000e6 48 8b 4c 24 20 mov rcx, QWORD PTR pNewData$[rsp] 000eb e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data 000f0 48 89 44 24 50 mov QWORD PTR tv141[rsp], rax 000f5 4c 8b 4c 24 38 mov r9, QWORD PTR tv147[rsp] 000fa 4c 8b 44 24 40 mov r8, QWORD PTR tv145[rsp] 000ff 48 8b 54 24 48 mov rdx, QWORD PTR tv143[rsp] 00104 48 8b 4c 24 50 mov rcx, QWORD PTR tv141[rsp] 00109 e8 00 00 00 00 call memcpy_s $LN3@CloneData: ; 897 : PCXSTR( pData->data() ), (pData->nDataLength+1) * sizeof( XCHAR )); // Copy '\0' ; 898 : } ; 899 : ; 900 : return( pNewData ); 0010e 48 8b 44 24 20 mov rax, QWORD PTR pNewData$[rsp] $LN5@CloneData: ; 901 : } 00113 48 83 c4 68 add rsp, 104 ; 00000068H 00117 c3 ret 0 ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z ENDP ; ATL::CSimpleStringT::CloneData _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z _TEXT SEGMENT this$ = 48 nLength$ = 56 ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT::SetLength, COMDAT ; 867 : { $LN5: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 28 sub rsp, 40 ; 00000028H ; 868 : ATLASSERT( nLength >= 0 ); ; 869 : ATLASSERT( nLength <= GetData()->nAllocLength ); ; 870 : ; 871 : if( nLength < 0 || nLength > GetData()->nAllocLength) 0000d 83 7c 24 38 00 cmp DWORD PTR nLength$[rsp], 0 00012 7c 13 jl SHORT $LN3@SetLength 00014 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00019 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 0001e 8b 40 0c mov eax, DWORD PTR [rax+12] 00021 39 44 24 38 cmp DWORD PTR nLength$[rsp], eax 00025 7e 0a jle SHORT $LN2@SetLength $LN3@SetLength: ; 872 : AtlThrow(E_INVALIDARG); 00027 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 0002c e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN2@SetLength: ; 873 : ; 874 : GetData()->nDataLength = nLength; 00031 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00036 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 0003b 8b 4c 24 38 mov ecx, DWORD PTR nLength$[rsp] 0003f 89 48 08 mov DWORD PTR [rax+8], ecx ; 875 : m_pszData[nLength] = 0; 00042 48 63 44 24 38 movsxd rax, DWORD PTR nLength$[rsp] 00047 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0004c 48 8b 09 mov rcx, QWORD PTR [rcx] 0004f 33 d2 xor edx, edx 00051 66 89 14 41 mov WORD PTR [rcx+rax*2], dx $LN4@SetLength: ; 876 : } 00055 48 83 c4 28 add rsp, 40 ; 00000028H 00059 c3 ret 0 ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT::SetLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z _TEXT SEGMENT pOldData$ = 32 pStringMgr$ = 40 pNewData$ = 48 tv78 = 56 this$ = 80 nLength$ = 88 ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT::Reallocate, COMDAT ; 849 : { $LN6: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 48 sub rsp, 72 ; 00000048H ; 850 : CStringData* pOldData = GetData(); 0000d 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 00012 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00017 48 89 44 24 20 mov QWORD PTR pOldData$[rsp], rax ; 851 : ATLASSERT( pOldData->nAllocLength < nLength ); ; 852 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr; 0001c 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp] 00021 48 8b 00 mov rax, QWORD PTR [rax] 00024 48 89 44 24 28 mov QWORD PTR pStringMgr$[rsp], rax ; 853 : if ( pOldData->nAllocLength >= nLength || nLength <= 0) 00029 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp] 0002e 8b 4c 24 58 mov ecx, DWORD PTR nLength$[rsp] 00032 39 48 0c cmp DWORD PTR [rax+12], ecx 00035 7d 07 jge SHORT $LN3@Reallocate 00037 83 7c 24 58 00 cmp DWORD PTR nLength$[rsp], 0 0003c 7f 07 jg SHORT $LN2@Reallocate $LN3@Reallocate: ; 854 : { ; 855 : ThrowMemoryException(); 0003e e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT::ThrowMemoryException ; 856 : return; 00043 eb 4b jmp SHORT $LN1@Reallocate $LN2@Reallocate: ; 857 : } ; 858 : CStringData* pNewData = pStringMgr->Reallocate( pOldData, nLength, sizeof( XCHAR ) ); 00045 48 8b 44 24 28 mov rax, QWORD PTR pStringMgr$[rsp] 0004a 48 8b 00 mov rax, QWORD PTR [rax] 0004d 48 8b 40 10 mov rax, QWORD PTR [rax+16] 00051 48 89 44 24 38 mov QWORD PTR tv78[rsp], rax 00056 41 b9 02 00 00 00 mov r9d, 2 0005c 44 8b 44 24 58 mov r8d, DWORD PTR nLength$[rsp] 00061 48 8b 54 24 20 mov rdx, QWORD PTR pOldData$[rsp] 00066 48 8b 4c 24 28 mov rcx, QWORD PTR pStringMgr$[rsp] 0006b ff 54 24 38 call QWORD PTR tv78[rsp] 0006f 48 89 44 24 30 mov QWORD PTR pNewData$[rsp], rax ; 859 : if( pNewData == NULL ) 00074 48 83 7c 24 30 00 cmp QWORD PTR pNewData$[rsp], 0 0007a 75 05 jne SHORT $LN4@Reallocate ; 860 : { ; 861 : ThrowMemoryException(); 0007c e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT::ThrowMemoryException $LN4@Reallocate: ; 862 : } ; 863 : Attach( pNewData ); 00081 48 8b 54 24 30 mov rdx, QWORD PTR pNewData$[rsp] 00086 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0008b e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach $LN1@Reallocate: $LN5@Reallocate: ; 864 : } 00090 48 83 c4 48 add rsp, 72 ; 00000048H 00094 c3 ret 0 ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT::Reallocate _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z _TEXT SEGMENT nNewLength$1 = 32 pOldData$ = 40 this$ = 64 nLength$ = 72 ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT::PrepareWrite2, COMDAT ; 818 : { $LN10: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 38 sub rsp, 56 ; 00000038H ; 819 : CStringData* pOldData = GetData(); 0000d 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00012 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00017 48 89 44 24 28 mov QWORD PTR pOldData$[rsp], rax ; 820 : if( pOldData->nDataLength > nLength ) 0001c 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 00021 8b 4c 24 48 mov ecx, DWORD PTR nLength$[rsp] 00025 39 48 08 cmp DWORD PTR [rax+8], ecx 00028 7e 0c jle SHORT $LN2@PrepareWri ; 821 : { ; 822 : nLength = pOldData->nDataLength; 0002a 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 0002f 8b 40 08 mov eax, DWORD PTR [rax+8] 00032 89 44 24 48 mov DWORD PTR nLength$[rsp], eax $LN2@PrepareWri: ; 823 : } ; 824 : if( pOldData->IsShared() ) 00036 48 8b 4c 24 28 mov rcx, QWORD PTR pOldData$[rsp] 0003b e8 00 00 00 00 call ?IsShared@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsShared 00040 0f b6 c0 movzx eax, al 00043 85 c0 test eax, eax 00045 74 10 je SHORT $LN3@PrepareWri ; 825 : { ; 826 : Fork( nLength ); 00047 8b 54 24 48 mov edx, DWORD PTR nLength$[rsp] 0004b 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00050 e8 00 00 00 00 call ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::Fork ; 827 : } 00055 eb 68 jmp SHORT $LN4@PrepareWri $LN3@PrepareWri: ; 828 : else if( pOldData->nAllocLength < nLength ) 00057 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 0005c 8b 4c 24 48 mov ecx, DWORD PTR nLength$[rsp] 00060 39 48 0c cmp DWORD PTR [rax+12], ecx 00063 7d 5a jge SHORT $LN5@PrepareWri ; 829 : { ; 830 : // Grow exponentially, until we hit 1G, then by 1M thereafter. ; 831 : int nNewLength = pOldData->nAllocLength; 00065 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 0006a 8b 40 0c mov eax, DWORD PTR [rax+12] 0006d 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax ; 832 : if( nNewLength > 1024 * 1024 * 1024 ) 00071 81 7c 24 20 00 00 00 40 cmp DWORD PTR nNewLength$1[rsp], 1073741824 ; 40000000H 00079 7e 0f jle SHORT $LN6@PrepareWri ; 833 : { ; 834 : nNewLength += 1024 * 1024; 0007b 8b 44 24 20 mov eax, DWORD PTR nNewLength$1[rsp] 0007f 05 00 00 10 00 add eax, 1048576 ; 00100000H 00084 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax ; 835 : } 00088 eb 15 jmp SHORT $LN7@PrepareWri $LN6@PrepareWri: ; 836 : else ; 837 : { ; 838 : // Exponential growth factor is 1.5. ; 839 : nNewLength = nNewLength + nNewLength / 2; 0008a 8b 44 24 20 mov eax, DWORD PTR nNewLength$1[rsp] 0008e 99 cdq 0008f 2b c2 sub eax, edx 00091 d1 f8 sar eax, 1 00093 8b 4c 24 20 mov ecx, DWORD PTR nNewLength$1[rsp] 00097 03 c8 add ecx, eax 00099 8b c1 mov eax, ecx 0009b 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax $LN7@PrepareWri: ; 840 : } ; 841 : if( nNewLength < nLength ) 0009f 8b 44 24 48 mov eax, DWORD PTR nLength$[rsp] 000a3 39 44 24 20 cmp DWORD PTR nNewLength$1[rsp], eax 000a7 7d 08 jge SHORT $LN8@PrepareWri ; 842 : { ; 843 : nNewLength = nLength; 000a9 8b 44 24 48 mov eax, DWORD PTR nLength$[rsp] 000ad 89 44 24 20 mov DWORD PTR nNewLength$1[rsp], eax $LN8@PrepareWri: ; 844 : } ; 845 : Reallocate( nNewLength ); 000b1 8b 54 24 20 mov edx, DWORD PTR nNewLength$1[rsp] 000b5 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 000ba e8 00 00 00 00 call ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::Reallocate $LN5@PrepareWri: $LN4@PrepareWri: ; 846 : } ; 847 : } 000bf 48 83 c4 38 add rsp, 56 ; 00000038H 000c3 c3 ret 0 ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT::PrepareWrite2 _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z _TEXT SEGMENT nTooShort$ = 32 nShared$ = 36 pOldData$ = 40 this$ = 64 nLength$ = 72 ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z PROC ; ATL::CSimpleStringT::PrepareWrite, COMDAT ; 803 : { $LN5: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 38 sub rsp, 56 ; 00000038H ; 804 : if (nLength < 0) 0000d 83 7c 24 48 00 cmp DWORD PTR nLength$[rsp], 0 00012 7d 0a jge SHORT $LN2@PrepareWri ; 805 : AtlThrow(E_INVALIDARG); 00014 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 00019 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN2@PrepareWri: ; 806 : ; 807 : CStringData* pOldData = GetData(); 0001e 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00023 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00028 48 89 44 24 28 mov QWORD PTR pOldData$[rsp], rax ; 808 : int nShared = 1-pOldData->nRefs; // nShared < 0 means true, >= 0 means false 0002d 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 00032 b9 01 00 00 00 mov ecx, 1 00037 2b 48 10 sub ecx, DWORD PTR [rax+16] 0003a 8b c1 mov eax, ecx 0003c 89 44 24 24 mov DWORD PTR nShared$[rsp], eax ; 809 : int nTooShort = pOldData->nAllocLength-nLength; // nTooShort < 0 means true, >= 0 means false 00040 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 00045 8b 4c 24 48 mov ecx, DWORD PTR nLength$[rsp] 00049 8b 40 0c mov eax, DWORD PTR [rax+12] 0004c 2b c1 sub eax, ecx 0004e 89 44 24 20 mov DWORD PTR nTooShort$[rsp], eax ; 810 : if( (nShared|nTooShort) < 0 ) // If either sign bit is set (i.e. either is less than zero), we need to copy data 00052 8b 44 24 20 mov eax, DWORD PTR nTooShort$[rsp] 00056 8b 4c 24 24 mov ecx, DWORD PTR nShared$[rsp] 0005a 0b c8 or ecx, eax 0005c 8b c1 mov eax, ecx 0005e 85 c0 test eax, eax 00060 7d 0e jge SHORT $LN3@PrepareWri ; 811 : { ; 812 : PrepareWrite2( nLength ); 00062 8b 54 24 48 mov edx, DWORD PTR nLength$[rsp] 00066 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0006b e8 00 00 00 00 call ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::PrepareWrite2 $LN3@PrepareWri: ; 813 : } ; 814 : ; 815 : return( m_pszData ); 00070 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 00075 48 8b 00 mov rax, QWORD PTR [rax] $LN4@PrepareWri: ; 816 : } 00078 48 83 c4 38 add rsp, 56 ; 00000038H 0007c c3 ret 0 ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ENDP ; ATL::CSimpleStringT::PrepareWrite _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ _TEXT SEGMENT this$ = 8 ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ PROC ; ATL::CSimpleStringT::GetData, COMDAT ; 799 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 800 : return( reinterpret_cast< CStringData* >( m_pszData )-1 ); 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 48 8b 00 mov rax, QWORD PTR [rax] 0000d 48 83 e8 18 sub rax, 24 ; 801 : } 00011 c3 ret 0 ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ENDP ; ATL::CSimpleStringT::GetData _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z _TEXT SEGMENT nOldLength$ = 32 tv86 = 36 nCharsToCopy$ = 40 pOldData$ = 48 pNewData$ = 56 tv76 = 64 tv83 = 72 tv136 = 80 tv134 = 88 this$ = 112 nLength$ = 120 ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z PROC ; ATL::CSimpleStringT::Fork, COMDAT ; 783 : { $LN6: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 68 sub rsp, 104 ; 00000068H ; 784 : CStringData* pOldData = GetData(); 0000d 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00012 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00017 48 89 44 24 30 mov QWORD PTR pOldData$[rsp], rax ; 785 : int nOldLength = pOldData->nDataLength; 0001c 48 8b 44 24 30 mov rax, QWORD PTR pOldData$[rsp] 00021 8b 40 08 mov eax, DWORD PTR [rax+8] 00024 89 44 24 20 mov DWORD PTR nOldLength$[rsp], eax ; 786 : CStringData* pNewData = pOldData->pStringMgr->Clone()->Allocate( nLength, sizeof( XCHAR ) ); 00028 48 8b 44 24 30 mov rax, QWORD PTR pOldData$[rsp] 0002d 48 8b 00 mov rax, QWORD PTR [rax] 00030 48 8b 4c 24 30 mov rcx, QWORD PTR pOldData$[rsp] 00035 48 8b 09 mov rcx, QWORD PTR [rcx] 00038 48 8b 00 mov rax, QWORD PTR [rax] 0003b ff 50 20 call QWORD PTR [rax+32] 0003e 48 89 44 24 40 mov QWORD PTR tv76[rsp], rax 00043 48 8b 44 24 40 mov rax, QWORD PTR tv76[rsp] 00048 48 8b 00 mov rax, QWORD PTR [rax] 0004b 48 8b 00 mov rax, QWORD PTR [rax] 0004e 48 89 44 24 48 mov QWORD PTR tv83[rsp], rax 00053 41 b8 02 00 00 00 mov r8d, 2 00059 8b 54 24 78 mov edx, DWORD PTR nLength$[rsp] 0005d 48 8b 4c 24 40 mov rcx, QWORD PTR tv76[rsp] 00062 ff 54 24 48 call QWORD PTR tv83[rsp] 00066 48 89 44 24 38 mov QWORD PTR pNewData$[rsp], rax ; 787 : if( pNewData == NULL ) 0006b 48 83 7c 24 38 00 cmp QWORD PTR pNewData$[rsp], 0 00071 75 05 jne SHORT $LN2@Fork ; 788 : { ; 789 : ThrowMemoryException(); 00073 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT::ThrowMemoryException $LN2@Fork: ; 790 : } ; 791 : int nCharsToCopy = ((nOldLength < nLength) ? nOldLength : nLength)+1; // Copy '\0' 00078 8b 44 24 78 mov eax, DWORD PTR nLength$[rsp] 0007c 39 44 24 20 cmp DWORD PTR nOldLength$[rsp], eax 00080 7d 0a jge SHORT $LN4@Fork 00082 8b 44 24 20 mov eax, DWORD PTR nOldLength$[rsp] 00086 89 44 24 24 mov DWORD PTR tv86[rsp], eax 0008a eb 08 jmp SHORT $LN5@Fork $LN4@Fork: 0008c 8b 44 24 78 mov eax, DWORD PTR nLength$[rsp] 00090 89 44 24 24 mov DWORD PTR tv86[rsp], eax $LN5@Fork: 00094 8b 44 24 24 mov eax, DWORD PTR tv86[rsp] 00098 ff c0 inc eax 0009a 89 44 24 28 mov DWORD PTR nCharsToCopy$[rsp], eax ; 792 : memcpy_s( PXSTR( pNewData->data() ), nCharsToCopy * sizeof( XCHAR ), 0009e 48 8b 4c 24 30 mov rcx, QWORD PTR pOldData$[rsp] 000a3 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data 000a8 48 89 44 24 50 mov QWORD PTR tv136[rsp], rax 000ad 48 8b 4c 24 38 mov rcx, QWORD PTR pNewData$[rsp] 000b2 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data 000b7 48 89 44 24 58 mov QWORD PTR tv134[rsp], rax 000bc 48 63 44 24 28 movsxd rax, DWORD PTR nCharsToCopy$[rsp] 000c1 48 d1 e0 shl rax, 1 000c4 48 63 4c 24 28 movsxd rcx, DWORD PTR nCharsToCopy$[rsp] 000c9 48 d1 e1 shl rcx, 1 000cc 4c 8b c8 mov r9, rax 000cf 4c 8b 44 24 50 mov r8, QWORD PTR tv136[rsp] 000d4 48 8b d1 mov rdx, rcx 000d7 48 8b 4c 24 58 mov rcx, QWORD PTR tv134[rsp] 000dc e8 00 00 00 00 call memcpy_s ; 793 : PCXSTR( pOldData->data() ), nCharsToCopy * sizeof( XCHAR )); ; 794 : pNewData->nDataLength = nOldLength; 000e1 48 8b 44 24 38 mov rax, QWORD PTR pNewData$[rsp] 000e6 8b 4c 24 20 mov ecx, DWORD PTR nOldLength$[rsp] 000ea 89 48 08 mov DWORD PTR [rax+8], ecx ; 795 : pOldData->Release(); 000ed 48 8b 4c 24 30 mov rcx, QWORD PTR pOldData$[rsp] 000f2 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release ; 796 : Attach( pNewData ); 000f7 48 8b 54 24 38 mov rdx, QWORD PTR pNewData$[rsp] 000fc 48 8b 4c 24 70 mov rcx, QWORD PTR this$[rsp] 00101 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach $LN3@Fork: ; 797 : } 00106 48 83 c4 68 add rsp, 104 ; 00000068H 0010a c3 ret 0 ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ENDP ; ATL::CSimpleStringT::Fork _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z _TEXT SEGMENT this$ = 48 pData$ = 56 ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z PROC ; ATL::CSimpleStringT::Attach, COMDAT ; 779 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 780 : m_pszData = static_cast< PXSTR >( pData->data() ); 0000e 48 8b 4c 24 38 mov rcx, QWORD PTR pData$[rsp] 00013 e8 00 00 00 00 call ?data@CStringData@ATL@@QEAAPEAXXZ ; ATL::CStringData::data 00018 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0001d 48 89 01 mov QWORD PTR [rcx], rax ; 781 : } 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 c3 ret 0 ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ENDP ; ATL::CSimpleStringT::Attach _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ _TEXT SEGMENT ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ PROC ; ATL::CSimpleStringT::ThrowMemoryException, COMDAT ; 772 : { $LN3: 00000 48 83 ec 28 sub rsp, 40 ; 00000028H ; 773 : AtlThrow( E_OUTOFMEMORY ); 00004 b9 0e 00 07 80 mov ecx, -2147024882 ; ffffffff8007000eH 00009 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN2@ThrowMemor: ; 774 : } 0000e 48 83 c4 28 add rsp, 40 ; 00000028H 00012 c3 ret 0 ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ENDP ; ATL::CSimpleStringT::ThrowMemoryException _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z _TEXT SEGMENT nNewLength$ = 32 pszBuffer$ = 40 tv86 = 48 strResult$ = 80 psz1$ = 88 nLength1$ = 96 psz2$ = 104 nLength2$ = 112 ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z PROC ; ATL::CSimpleStringT::Concatenate, COMDAT ; 764 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 48 sub rsp, 72 ; 00000048H ; 765 : int nNewLength = nLength1+nLength2; 00018 8b 44 24 70 mov eax, DWORD PTR nLength2$[rsp] 0001c 8b 4c 24 60 mov ecx, DWORD PTR nLength1$[rsp] 00020 03 c8 add ecx, eax 00022 8b c1 mov eax, ecx 00024 89 44 24 20 mov DWORD PTR nNewLength$[rsp], eax ; 766 : PXSTR pszBuffer = strResult.GetBuffer( nNewLength ); 00028 8b 54 24 20 mov edx, DWORD PTR nNewLength$[rsp] 0002c 48 8b 4c 24 50 mov rcx, QWORD PTR strResult$[rsp] 00031 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 00036 48 89 44 24 28 mov QWORD PTR pszBuffer$[rsp], rax ; 767 : memcpy_s( pszBuffer, nLength1 * sizeof( XCHAR ), psz1, nLength1 * sizeof( XCHAR )); 0003b 48 63 44 24 60 movsxd rax, DWORD PTR nLength1$[rsp] 00040 48 d1 e0 shl rax, 1 00043 48 63 4c 24 60 movsxd rcx, DWORD PTR nLength1$[rsp] 00048 48 d1 e1 shl rcx, 1 0004b 4c 8b c8 mov r9, rax 0004e 4c 8b 44 24 58 mov r8, QWORD PTR psz1$[rsp] 00053 48 8b d1 mov rdx, rcx 00056 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$[rsp] 0005b e8 00 00 00 00 call memcpy_s ; 768 : memcpy_s( pszBuffer+nLength1, nLength2 * sizeof( XCHAR ), psz2, nLength2 * sizeof( XCHAR )); 00060 48 63 44 24 70 movsxd rax, DWORD PTR nLength2$[rsp] 00065 48 d1 e0 shl rax, 1 00068 48 63 4c 24 70 movsxd rcx, DWORD PTR nLength2$[rsp] 0006d 48 d1 e1 shl rcx, 1 00070 48 63 54 24 60 movsxd rdx, DWORD PTR nLength1$[rsp] 00075 4c 8b 44 24 28 mov r8, QWORD PTR pszBuffer$[rsp] 0007a 49 8d 14 50 lea rdx, QWORD PTR [r8+rdx*2] 0007e 48 89 54 24 30 mov QWORD PTR tv86[rsp], rdx 00083 4c 8b c8 mov r9, rax 00086 4c 8b 44 24 68 mov r8, QWORD PTR psz2$[rsp] 0008b 48 8b d1 mov rdx, rcx 0008e 48 8b 44 24 30 mov rax, QWORD PTR tv86[rsp] 00093 48 8b c8 mov rcx, rax 00096 e8 00 00 00 00 call memcpy_s ; 769 : strResult.ReleaseBufferSetLength( nNewLength ); 0009b 8b 54 24 20 mov edx, DWORD PTR nNewLength$[rsp] 0009f 48 8b 4c 24 50 mov rcx, QWORD PTR strResult$[rsp] 000a4 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength ; 770 : } 000a9 48 83 c4 48 add rsp, 72 ; 00000048H 000ad c3 ret 0 ?Concatenate@?$CSimpleStringT@_W$0A@@ATL@@KAXAEAV12@PEB_WH1H@Z ENDP ; ATL::CSimpleStringT::Concatenate _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z _TEXT SEGMENT psz$ = 48 sizeInXChar$ = 56 ?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z PROC ; ATL::CSimpleStringT::StringLengthN, COMDAT ; 749 : { $LN4: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 750 : if( psz == NULL ) 0000e 48 83 7c 24 30 00 cmp QWORD PTR psz$[rsp], 0 00014 75 04 jne SHORT $LN2@StringLeng ; 751 : { ; 752 : return( 0 ); 00016 33 c0 xor eax, eax 00018 eb 10 jmp SHORT $LN1@StringLeng $LN2@StringLeng: ; 753 : } ; 754 : return( int( wcsnlen( psz, sizeInXChar ) ) ); 0001a 48 8b 54 24 38 mov rdx, QWORD PTR sizeInXChar$[rsp] 0001f 48 8b 4c 24 30 mov rcx, QWORD PTR psz$[rsp] 00024 e8 00 00 00 00 call wcsnlen 00029 90 npad 1 $LN1@StringLeng: ; 755 : } 0002a 48 83 c4 28 add rsp, 40 ; 00000028H 0002e c3 ret 0 ?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z ENDP ; ATL::CSimpleStringT::StringLengthN _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z _TEXT SEGMENT psz$ = 48 ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z PROC ; ATL::CSimpleStringT::StringLength, COMDAT ; 729 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 730 : if( psz == NULL ) 00009 48 83 7c 24 30 00 cmp QWORD PTR psz$[rsp], 0 0000f 75 04 jne SHORT $LN2@StringLeng ; 731 : { ; 732 : return( 0 ); 00011 33 c0 xor eax, eax 00013 eb 0b jmp SHORT $LN1@StringLeng $LN2@StringLeng: ; 733 : } ; 734 : return( int( wcslen( psz ) ) ); 00015 48 8b 4c 24 30 mov rcx, QWORD PTR psz$[rsp] 0001a e8 00 00 00 00 call wcslen 0001f 90 npad 1 $LN1@StringLeng: ; 735 : } 00020 48 83 c4 28 add rsp, 40 ; 00000028H 00024 c3 ret 0 ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ENDP ; ATL::CSimpleStringT::StringLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z _TEXT SEGMENT pchDest$ = 48 nDestLen$ = 56 pchSrc$ = 64 nChars$ = 72 ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z PROC ; ATL::CSimpleStringT::CopyCharsOverlapped, COMDAT ; 716 : { $LN3: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 28 sub rsp, 40 ; 00000028H ; 717 : memmove_s( pchDest, nDestLen*sizeof( XCHAR ), 00018 48 63 44 24 48 movsxd rax, DWORD PTR nChars$[rsp] 0001d 48 d1 e0 shl rax, 1 00020 48 8b 4c 24 38 mov rcx, QWORD PTR nDestLen$[rsp] 00025 48 d1 e1 shl rcx, 1 00028 4c 8b c8 mov r9, rax 0002b 4c 8b 44 24 40 mov r8, QWORD PTR pchSrc$[rsp] 00030 48 8b d1 mov rdx, rcx 00033 48 8b 4c 24 30 mov rcx, QWORD PTR pchDest$[rsp] 00038 e8 00 00 00 00 call memmove_s 0003d 90 npad 1 ; 718 : pchSrc, nChars*sizeof( XCHAR ) ); ; 719 : } 0003e 48 83 c4 28 add rsp, 40 ; 00000028H 00042 c3 ret 0 ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ENDP ; ATL::CSimpleStringT::CopyCharsOverlapped _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z _TEXT SEGMENT nOldLength$1 = 32 pszBuffer$2 = 40 nOffset$3 = 48 tv81 = 56 tv90 = 64 this$ = 96 pszSrc$ = 104 nLength$ = 112 ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z PROC ; ATL::CSimpleStringT::SetString, COMDAT ; 607 : { $LN8: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 58 sub rsp, 88 ; 00000058H ; 608 : if( nLength == 0 ) 00013 83 7c 24 70 00 cmp DWORD PTR nLength$[rsp], 0 00018 75 0f jne SHORT $LN2@SetString ; 609 : { ; 610 : Empty(); 0001a 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 0001f e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ; ATL::CSimpleStringT::Empty ; 611 : } 00024 e9 da 00 00 00 jmp $LN3@SetString $LN2@SetString: ; 612 : else ; 613 : { ; 614 : // It is possible that pszSrc points to a location inside of our ; 615 : // buffer. GetBuffer() might change m_pszData if (1) the buffer ; 616 : // is shared or (2) the buffer is too small to hold the new ; 617 : // string. We detect this aliasing, and modify pszSrc to point ; 618 : // into the newly allocated buffer instead. ; 619 : ; 620 : if(pszSrc == NULL) 00029 48 83 7c 24 68 00 cmp QWORD PTR pszSrc$[rsp], 0 0002f 75 0a jne SHORT $LN4@SetString ; 621 : AtlThrow(E_INVALIDARG); 00031 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 00036 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN4@SetString: ; 622 : ; 623 : UINT nOldLength = GetLength(); 0003b 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00040 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00045 89 44 24 20 mov DWORD PTR nOldLength$1[rsp], eax ; 624 : UINT_PTR nOffset = pszSrc-GetString(); 00049 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 0004e e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00053 48 8b 4c 24 68 mov rcx, QWORD PTR pszSrc$[rsp] 00058 48 2b c8 sub rcx, rax 0005b 48 8b c1 mov rax, rcx 0005e 48 d1 f8 sar rax, 1 00061 48 89 44 24 30 mov QWORD PTR nOffset$3[rsp], rax ; 625 : // If 0 <= nOffset <= nOldLength, then pszSrc points into our ; 626 : // buffer ; 627 : ; 628 : PXSTR pszBuffer = GetBuffer( nLength ); 00066 8b 54 24 70 mov edx, DWORD PTR nLength$[rsp] 0006a 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 0006f e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 00074 48 89 44 24 28 mov QWORD PTR pszBuffer$2[rsp], rax ; 629 : if( nOffset <= nOldLength ) 00079 8b 44 24 20 mov eax, DWORD PTR nOldLength$1[rsp] 0007d 48 39 44 24 30 cmp QWORD PTR nOffset$3[rsp], rax 00082 77 3b ja SHORT $LN5@SetString ; 630 : { ; 631 : CopyCharsOverlapped( pszBuffer, GetAllocLength(), 00084 48 8b 44 24 28 mov rax, QWORD PTR pszBuffer$2[rsp] 00089 48 8b 4c 24 30 mov rcx, QWORD PTR nOffset$3[rsp] 0008e 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2] 00092 48 89 44 24 38 mov QWORD PTR tv81[rsp], rax 00097 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 0009c e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetAllocLength 000a1 48 98 cdqe 000a3 44 8b 4c 24 70 mov r9d, DWORD PTR nLength$[rsp] 000a8 48 8b 4c 24 38 mov rcx, QWORD PTR tv81[rsp] 000ad 4c 8b c1 mov r8, rcx 000b0 48 8b d0 mov rdx, rax 000b3 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$2[rsp] 000b8 e8 00 00 00 00 call ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPEA_W_KPEB_WH@Z ; ATL::CSimpleStringT::CopyCharsOverlapped ; 632 : pszBuffer+nOffset, nLength ); ; 633 : } 000bd eb 36 jmp SHORT $LN6@SetString $LN5@SetString: ; 634 : else ; 635 : { ; 636 : memcpy_s( pszBuffer, GetAllocLength() * sizeof( XCHAR ), pszSrc, nLength * sizeof( XCHAR )); 000bf 48 63 44 24 70 movsxd rax, DWORD PTR nLength$[rsp] 000c4 48 d1 e0 shl rax, 1 000c7 48 89 44 24 40 mov QWORD PTR tv90[rsp], rax 000cc 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000d1 e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetAllocLength 000d6 48 98 cdqe 000d8 48 d1 e0 shl rax, 1 000db 48 8b 4c 24 40 mov rcx, QWORD PTR tv90[rsp] 000e0 4c 8b c9 mov r9, rcx 000e3 4c 8b 44 24 68 mov r8, QWORD PTR pszSrc$[rsp] 000e8 48 8b d0 mov rdx, rax 000eb 48 8b 4c 24 28 mov rcx, QWORD PTR pszBuffer$2[rsp] 000f0 e8 00 00 00 00 call memcpy_s $LN6@SetString: ; 637 : } ; 638 : ReleaseBufferSetLength( nLength ); 000f5 8b 54 24 70 mov edx, DWORD PTR nLength$[rsp] 000f9 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000fe e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength $LN3@SetString: $LN7@SetString: ; 639 : } ; 640 : } 00103 48 83 c4 58 add rsp, 88 ; 00000058H 00107 c3 ret 0 ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ENDP ; ATL::CSimpleStringT::SetString _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z PROC ; ATL::CSimpleStringT::SetString, COMDAT ; 601 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 602 : SetString( pszSrc, StringLength( pszSrc ) ); 0000e 48 8b 4c 24 38 mov rcx, QWORD PTR pszSrc$[rsp] 00013 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT::StringLength 00018 44 8b c0 mov r8d, eax 0001b 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00020 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00025 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT::SetString ; 603 : } 0002a 48 83 c4 28 add rsp, 40 ; 00000028H 0002e c3 ret 0 ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ENDP ; ATL::CSimpleStringT::SetString _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z _TEXT SEGMENT this$ = 48 nNewLength$ = 56 ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z PROC ; ATL::CSimpleStringT::ReleaseBufferSetLength, COMDAT ; 566 : { $LN3: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 28 sub rsp, 40 ; 00000028H ; 567 : ATLASSERT( nNewLength >= 0 ); ; 568 : SetLength( nNewLength ); 0000d 8b 54 24 38 mov edx, DWORD PTR nNewLength$[rsp] 00011 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00016 e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::SetLength ; 569 : } 0001b 48 83 c4 28 add rsp, 40 ; 00000028H 0001f c3 ret 0 ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ENDP ; ATL::CSimpleStringT::ReleaseBufferSetLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ _TEXT SEGMENT this$ = 8 ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ PROC ; ATL::CSimpleStringT::GetString, COMDAT ; 528 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 529 : return( m_pszData ); 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 48 8b 00 mov rax, QWORD PTR [rax] ; 530 : } 0000d c3 ret 0 ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ENDP ; ATL::CSimpleStringT::GetString _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ _TEXT SEGMENT pStringMgr$ = 32 tv72 = 40 this$ = 64 ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ PROC ; ATL::CSimpleStringT::GetManager, COMDAT ; 522 : { $LN5: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 523 : IAtlStringMgr* pStringMgr = GetData()->pStringMgr; 00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00013 48 8b 00 mov rax, QWORD PTR [rax] 00016 48 89 44 24 20 mov QWORD PTR pStringMgr$[rsp], rax ; 524 : return pStringMgr ? pStringMgr->Clone() : NULL; 0001b 48 83 7c 24 20 00 cmp QWORD PTR pStringMgr$[rsp], 0 00021 74 17 je SHORT $LN3@GetManager 00023 48 8b 44 24 20 mov rax, QWORD PTR pStringMgr$[rsp] 00028 48 8b 00 mov rax, QWORD PTR [rax] 0002b 48 8b 4c 24 20 mov rcx, QWORD PTR pStringMgr$[rsp] 00030 ff 50 20 call QWORD PTR [rax+32] 00033 48 89 44 24 28 mov QWORD PTR tv72[rsp], rax 00038 eb 09 jmp SHORT $LN4@GetManager $LN3@GetManager: 0003a 48 c7 44 24 28 00 00 00 00 mov QWORD PTR tv72[rsp], 0 $LN4@GetManager: 00043 48 8b 44 24 28 mov rax, QWORD PTR tv72[rsp] ; 525 : } 00048 48 83 c4 38 add rsp, 56 ; 00000038H 0004c c3 ret 0 ?GetManager@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEAUIAtlStringMgr@2@XZ ENDP ; ATL::CSimpleStringT::GetManager _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ _TEXT SEGMENT this$ = 48 ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ PROC ; ATL::CSimpleStringT::GetLength, COMDAT ; 518 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 519 : return( GetData()->nDataLength ); 00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00013 8b 40 08 mov eax, DWORD PTR [rax+8] ; 520 : } 00016 48 83 c4 28 add rsp, 40 ; 00000028H 0001a c3 ret 0 ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ENDP ; ATL::CSimpleStringT::GetLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z _TEXT SEGMENT this$ = 48 nMinBufferLength$ = 56 ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z PROC ; ATL::CSimpleStringT::GetBuffer, COMDAT ; 507 : { $LN3: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 28 sub rsp, 40 ; 00000028H ; 508 : return( PrepareWrite( nMinBufferLength ) ); 0000d 8b 54 24 38 mov edx, DWORD PTR nMinBufferLength$[rsp] 00011 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00016 e8 00 00 00 00 call ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AEAAPEA_WH@Z ; ATL::CSimpleStringT::PrepareWrite ; 509 : } 0001b 48 83 c4 28 add rsp, 40 ; 00000028H 0001f c3 ret 0 ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ENDP ; ATL::CSimpleStringT::GetBuffer _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ _TEXT SEGMENT pData$ = 32 this$ = 64 ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ PROC ; ATL::CSimpleStringT::GetBuffer, COMDAT ; 497 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 498 : CStringData* pData = GetData(); 00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00013 48 89 44 24 20 mov QWORD PTR pData$[rsp], rax ; 499 : if( pData->IsShared() ) 00018 48 8b 4c 24 20 mov rcx, QWORD PTR pData$[rsp] 0001d e8 00 00 00 00 call ?IsShared@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsShared 00022 0f b6 c0 movzx eax, al 00025 85 c0 test eax, eax 00027 74 12 je SHORT $LN2@GetBuffer ; 500 : { ; 501 : Fork( pData->nDataLength ); 00029 48 8b 44 24 20 mov rax, QWORD PTR pData$[rsp] 0002e 8b 50 08 mov edx, DWORD PTR [rax+8] 00031 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00036 e8 00 00 00 00 call ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::Fork $LN2@GetBuffer: ; 502 : } ; 503 : ; 504 : return( m_pszData ); 0003b 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 00040 48 8b 00 mov rax, QWORD PTR [rax] ; 505 : } 00043 48 83 c4 38 add rsp, 56 ; 00000038H 00047 c3 ret 0 ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WXZ ENDP ; ATL::CSimpleStringT::GetBuffer _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z _TEXT SEGMENT this$ = 48 iChar$ = 56 ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z PROC ; ATL::CSimpleStringT::GetAt, COMDAT ; 489 : { $LN5: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 28 sub rsp, 40 ; 00000028H ; 490 : ATLASSERT( (iChar >= 0) && (iChar <= GetLength()) ); // Indexing the '\0' is OK ; 491 : if( (iChar < 0) || (iChar > GetLength()) ) 0000d 83 7c 24 38 00 cmp DWORD PTR iChar$[rsp], 0 00012 7c 10 jl SHORT $LN3@GetAt 00014 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00019 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0001e 39 44 24 38 cmp DWORD PTR iChar$[rsp], eax 00022 7e 0a jle SHORT $LN2@GetAt $LN3@GetAt: ; 492 : AtlThrow(E_INVALIDARG); 00024 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 00029 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN2@GetAt: ; 493 : ; 494 : return( m_pszData[iChar] ); 0002e 48 63 44 24 38 movsxd rax, DWORD PTR iChar$[rsp] 00033 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00038 48 8b 09 mov rcx, QWORD PTR [rcx] 0003b 0f b7 04 41 movzx eax, WORD PTR [rcx+rax*2] $LN4@GetAt: ; 495 : } 0003f 48 83 c4 28 add rsp, 40 ; 00000028H 00043 c3 ret 0 ?GetAt@?$CSimpleStringT@_W$0A@@ATL@@QEBA_WH@Z ENDP ; ATL::CSimpleStringT::GetAt _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ _TEXT SEGMENT this$ = 48 ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ PROC ; ATL::CSimpleStringT::GetAllocLength, COMDAT ; 485 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 486 : return( GetData()->nAllocLength ); 00009 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00013 8b 40 0c mov eax, DWORD PTR [rax+12] ; 487 : } 00016 48 83 c4 28 add rsp, 40 ; 00000028H 0001a c3 ret 0 ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ENDP ; ATL::CSimpleStringT::GetAllocLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ _TEXT SEGMENT pOldData$ = 32 pStringMgr$ = 40 pNewData$1 = 48 this$ = 80 ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ PROC ; ATL::CSimpleStringT::Empty, COMDAT ; 436 : { $LN6: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 48 sub rsp, 72 ; 00000048H ; 437 : CStringData* pOldData = GetData(); 00009 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00013 48 89 44 24 20 mov QWORD PTR pOldData$[rsp], rax ; 438 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr; 00018 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp] 0001d 48 8b 00 mov rax, QWORD PTR [rax] 00020 48 89 44 24 28 mov QWORD PTR pStringMgr$[rsp], rax ; 439 : if( pOldData->nDataLength == 0 ) 00025 48 8b 44 24 20 mov rax, QWORD PTR pOldData$[rsp] 0002a 83 78 08 00 cmp DWORD PTR [rax+8], 0 0002e 75 02 jne SHORT $LN2@Empty ; 440 : { ; 441 : return; 00030 eb 4e jmp SHORT $LN1@Empty $LN2@Empty: ; 442 : } ; 443 : ; 444 : if( pOldData->IsLocked() ) 00032 48 8b 4c 24 20 mov rcx, QWORD PTR pOldData$[rsp] 00037 e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked 0003c 0f b6 c0 movzx eax, al 0003f 85 c0 test eax, eax 00041 74 0e je SHORT $LN3@Empty ; 445 : { ; 446 : // Don't reallocate a locked buffer that's shrinking ; 447 : SetLength( 0 ); 00043 33 d2 xor edx, edx 00045 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0004a e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::SetLength ; 448 : } 0004f eb 2f jmp SHORT $LN1@Empty $LN3@Empty: ; 449 : else ; 450 : { ; 451 : pOldData->Release(); 00051 48 8b 4c 24 20 mov rcx, QWORD PTR pOldData$[rsp] 00056 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release ; 452 : CStringData* pNewData = pStringMgr->GetNilString(); 0005b 48 8b 44 24 28 mov rax, QWORD PTR pStringMgr$[rsp] 00060 48 8b 00 mov rax, QWORD PTR [rax] 00063 48 8b 4c 24 28 mov rcx, QWORD PTR pStringMgr$[rsp] 00068 ff 50 18 call QWORD PTR [rax+24] 0006b 48 89 44 24 30 mov QWORD PTR pNewData$1[rsp], rax ; 453 : Attach( pNewData ); 00070 48 8b 54 24 30 mov rdx, QWORD PTR pNewData$1[rsp] 00075 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 0007a e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach 0007f 90 npad 1 $LN1@Empty: ; 454 : } ; 455 : } 00080 48 83 c4 48 add rsp, 72 ; 00000048H 00084 c3 ret 0 ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QEAAXXZ ENDP ; ATL::CSimpleStringT::Empty _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z _TEXT SEGMENT tv74 = 32 tv72 = 40 this$ = 64 strSrc$ = 72 ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z PROC ; ATL::CSimpleStringT::Append, COMDAT ; 427 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 428 : Append( strSrc.GetString(), strSrc.GetLength() ); 0000e 48 8b 4c 24 48 mov rcx, QWORD PTR strSrc$[rsp] 00013 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00018 89 44 24 20 mov DWORD PTR tv74[rsp], eax 0001c 48 8b 4c 24 48 mov rcx, QWORD PTR strSrc$[rsp] 00021 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00026 48 89 44 24 28 mov QWORD PTR tv72[rsp], rax 0002b 44 8b 44 24 20 mov r8d, DWORD PTR tv74[rsp] 00030 48 8b 54 24 28 mov rdx, QWORD PTR tv72[rsp] 00035 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0003a e8 00 00 00 00 call ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT::Append ; 429 : } 0003f 48 83 c4 38 add rsp, 56 ; 00000038H 00043 c3 ret 0 ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z ENDP ; ATL::CSimpleStringT::Append _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z _TEXT SEGMENT nOldLength$ = 32 tv72 = 36 tv83 = 40 nNewLength$ = 44 __atl_condVal$1 = 48 __atl_condVal$2 = 52 nOffset$ = 56 pszBuffer$ = 64 tv138 = 72 this$ = 96 pszSrc$ = 104 nLength$ = 112 ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z PROC ; ATL::CSimpleStringT::Append, COMDAT ; 387 : { $LN23: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 58 sub rsp, 88 ; 00000058H ; 388 : // See comment in SetString() about why we do this ; 389 : UINT_PTR nOffset = pszSrc-GetString(); 00013 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 0001d 48 8b 4c 24 68 mov rcx, QWORD PTR pszSrc$[rsp] 00022 48 2b c8 sub rcx, rax 00025 48 8b c1 mov rax, rcx 00028 48 d1 f8 sar rax, 1 0002b 48 89 44 24 38 mov QWORD PTR nOffset$[rsp], rax ; 390 : ; 391 : UINT nOldLength = GetLength(); 00030 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00035 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 0003a 89 44 24 20 mov DWORD PTR nOldLength$[rsp], eax ; 392 : if (nOldLength < 0) 0003e 83 7c 24 20 00 cmp DWORD PTR nOldLength$[rsp], 0 00043 73 08 jae SHORT $LN14@Append ; 393 : { ; 394 : // protects from underflow ; 395 : nOldLength = 0; 00045 c7 44 24 20 00 00 00 00 mov DWORD PTR nOldLength$[rsp], 0 $LN14@Append: $LN4@Append: ; 396 : } ; 397 : ; 398 : //Make sure the nLength is greater than zero ; 399 : ATLENSURE_THROW(nLength >=0, E_INVALIDARG); 0004d 83 7c 24 70 00 cmp DWORD PTR nLength$[rsp], 0 00052 7c 0a jl SHORT $LN19@Append 00054 c7 44 24 24 01 00 00 00 mov DWORD PTR tv72[rsp], 1 0005c eb 08 jmp SHORT $LN20@Append $LN19@Append: 0005e c7 44 24 24 00 00 00 00 mov DWORD PTR tv72[rsp], 0 $LN20@Append: 00066 8b 44 24 24 mov eax, DWORD PTR tv72[rsp] 0006a 89 44 24 30 mov DWORD PTR __atl_condVal$1[rsp], eax $LN7@Append: 0006e 33 c0 xor eax, eax 00070 85 c0 test eax, eax 00072 75 fa jne SHORT $LN7@Append 00074 83 7c 24 30 00 cmp DWORD PTR __atl_condVal$1[rsp], 0 00079 75 0a jne SHORT $LN15@Append 0007b b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 00080 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN15@Append: 00085 33 c0 xor eax, eax 00087 85 c0 test eax, eax 00089 75 c2 jne SHORT $LN4@Append ; 400 : ; 401 : //Make sure we don't read pass end of the terminating NULL ; 402 : nLength = StringLengthN(pszSrc, nLength); 0008b 48 63 44 24 70 movsxd rax, DWORD PTR nLength$[rsp] 00090 48 8b d0 mov rdx, rax 00093 48 8b 4c 24 68 mov rcx, QWORD PTR pszSrc$[rsp] 00098 e8 00 00 00 00 call ?StringLengthN@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W_K@Z ; ATL::CSimpleStringT::StringLengthN 0009d 89 44 24 70 mov DWORD PTR nLength$[rsp], eax $LN10@Append: ; 403 : ; 404 : //Make sure after the string doesn't exceed INT_MAX after appending ; 405 : ATLENSURE_THROW(INT_MAX - nLength >= static_cast(nOldLength), E_INVALIDARG); 000a1 b8 ff ff ff 7f mov eax, 2147483647 ; 7fffffffH 000a6 2b 44 24 70 sub eax, DWORD PTR nLength$[rsp] 000aa 3b 44 24 20 cmp eax, DWORD PTR nOldLength$[rsp] 000ae 7c 0a jl SHORT $LN21@Append 000b0 c7 44 24 28 01 00 00 00 mov DWORD PTR tv83[rsp], 1 000b8 eb 08 jmp SHORT $LN22@Append $LN21@Append: 000ba c7 44 24 28 00 00 00 00 mov DWORD PTR tv83[rsp], 0 $LN22@Append: 000c2 8b 44 24 28 mov eax, DWORD PTR tv83[rsp] 000c6 89 44 24 34 mov DWORD PTR __atl_condVal$2[rsp], eax $LN13@Append: 000ca 33 c0 xor eax, eax 000cc 85 c0 test eax, eax 000ce 75 fa jne SHORT $LN13@Append 000d0 83 7c 24 34 00 cmp DWORD PTR __atl_condVal$2[rsp], 0 000d5 75 0a jne SHORT $LN16@Append 000d7 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 000dc e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN16@Append: 000e1 33 c0 xor eax, eax 000e3 85 c0 test eax, eax 000e5 75 ba jne SHORT $LN10@Append ; 406 : ; 407 : int nNewLength = nOldLength+nLength; 000e7 8b 44 24 70 mov eax, DWORD PTR nLength$[rsp] 000eb 8b 4c 24 20 mov ecx, DWORD PTR nOldLength$[rsp] 000ef 03 c8 add ecx, eax 000f1 8b c1 mov eax, ecx 000f3 89 44 24 2c mov DWORD PTR nNewLength$[rsp], eax ; 408 : PXSTR pszBuffer = GetBuffer( nNewLength ); 000f7 8b 54 24 2c mov edx, DWORD PTR nNewLength$[rsp] 000fb 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00100 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QEAAPEA_WH@Z ; ATL::CSimpleStringT::GetBuffer 00105 48 89 44 24 40 mov QWORD PTR pszBuffer$[rsp], rax ; 409 : if( nOffset <= nOldLength ) 0010a 8b 44 24 20 mov eax, DWORD PTR nOldLength$[rsp] 0010e 48 39 44 24 38 cmp QWORD PTR nOffset$[rsp], rax 00113 77 13 ja SHORT $LN17@Append ; 410 : { ; 411 : pszSrc = pszBuffer+nOffset; 00115 48 8b 44 24 40 mov rax, QWORD PTR pszBuffer$[rsp] 0011a 48 8b 4c 24 38 mov rcx, QWORD PTR nOffset$[rsp] 0011f 48 8d 04 48 lea rax, QWORD PTR [rax+rcx*2] 00123 48 89 44 24 68 mov QWORD PTR pszSrc$[rsp], rax $LN17@Append: ; 412 : // No need to call CopyCharsOverlapped, since the destination is ; 413 : // beyond the end of the original buffer ; 414 : } ; 415 : memcpy_s( pszBuffer+nOldLength, nLength * sizeof( XCHAR ), pszSrc, nLength * sizeof( XCHAR )); 00128 48 63 44 24 70 movsxd rax, DWORD PTR nLength$[rsp] 0012d 48 d1 e0 shl rax, 1 00130 48 63 4c 24 70 movsxd rcx, DWORD PTR nLength$[rsp] 00135 48 d1 e1 shl rcx, 1 00138 8b 54 24 20 mov edx, DWORD PTR nOldLength$[rsp] 0013c 4c 8b 44 24 40 mov r8, QWORD PTR pszBuffer$[rsp] 00141 49 8d 14 50 lea rdx, QWORD PTR [r8+rdx*2] 00145 48 89 54 24 48 mov QWORD PTR tv138[rsp], rdx 0014a 4c 8b c8 mov r9, rax 0014d 4c 8b 44 24 68 mov r8, QWORD PTR pszSrc$[rsp] 00152 48 8b d1 mov rdx, rcx 00155 48 8b 44 24 48 mov rax, QWORD PTR tv138[rsp] 0015a 48 8b c8 mov rcx, rax 0015d e8 00 00 00 00 call memcpy_s ; 416 : ReleaseBufferSetLength( nNewLength ); 00162 8b 54 24 2c mov edx, DWORD PTR nNewLength$[rsp] 00166 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 0016b e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QEAAXH@Z ; ATL::CSimpleStringT::ReleaseBufferSetLength $LN18@Append: ; 417 : } 00170 48 83 c4 58 add rsp, 88 ; 00000058H 00174 c3 ret 0 ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ENDP ; ATL::CSimpleStringT::Append _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z PROC ; ATL::CSimpleStringT::Append, COMDAT ; 381 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 382 : Append( pszSrc, StringLength( pszSrc ) ); 0000e 48 8b 4c 24 38 mov rcx, QWORD PTR pszSrc$[rsp] 00013 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPEB_W@Z ; ATL::CSimpleStringT::StringLength 00018 44 8b c0 mov r8d, eax 0001b 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00020 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00025 e8 00 00 00 00 call ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT::Append ; 383 : } 0002a 48 83 c4 28 add rsp, 40 ; 00000028H 0002e c3 ret 0 ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ENDP ; ATL::CSimpleStringT::Append _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ _TEXT SEGMENT this$ = 8 ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ PROC ; ATL::CSimpleStringT::operator wchar_t const *, COMDAT ; 376 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 377 : return( m_pszData ); 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 48 8b 00 mov rax, QWORD PTR [rax] ; 378 : } 0000d c3 ret 0 ??B?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ENDP ; ATL::CSimpleStringT::operator wchar_t const * _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CSimpleStringT::operator+=, COMDAT ; 334 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 335 : Append( pszSrc ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT::Append ; 336 : ; 337 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 338 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CSimpleStringT::operator+= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z _TEXT SEGMENT this$ = 48 strSrc$ = 56 ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z PROC ; ATL::CSimpleStringT::operator+=, COMDAT ; 320 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 321 : Append( strSrc ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR strSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ?Append@?$CSimpleStringT@_W$0A@@ATL@@QEAAXAEBV12@@Z ; ATL::CSimpleStringT::Append ; 322 : ; 323 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 324 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??Y?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ENDP ; ATL::CSimpleStringT::operator+= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z _TEXT SEGMENT this$ = 48 pszSrc$ = 56 ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z PROC ; ATL::CSimpleStringT::operator=, COMDAT ; 313 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 314 : SetString( pszSrc ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszSrc$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR this$[rsp] 00018 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_W@Z ; ATL::CSimpleStringT::SetString ; 315 : ; 316 : return( *this ); 0001d 48 8b 44 24 30 mov rax, QWORD PTR this$[rsp] ; 317 : } 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@PEB_W@Z ENDP ; ATL::CSimpleStringT::operator= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z _TEXT SEGMENT tv86 = 32 pOldData$ = 40 pSrcData$ = 48 tv84 = 56 pNewData$1 = 64 this$ = 96 strSrc$ = 104 ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z PROC ; ATL::CSimpleStringT::operator=, COMDAT ; 271 : { $LN7: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 58 sub rsp, 88 ; 00000058H ; 272 : CStringData* pSrcData = strSrc.GetData(); 0000e 48 8b 4c 24 68 mov rcx, QWORD PTR strSrc$[rsp] 00013 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00018 48 89 44 24 30 mov QWORD PTR pSrcData$[rsp], rax ; 273 : CStringData* pOldData = GetData(); 0001d 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00022 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00027 48 89 44 24 28 mov QWORD PTR pOldData$[rsp], rax ; 274 : if( pSrcData != pOldData) 0002c 48 8b 44 24 28 mov rax, QWORD PTR pOldData$[rsp] 00031 48 39 44 24 30 cmp QWORD PTR pSrcData$[rsp], rax 00036 74 7e je SHORT $LN2@operator ; 275 : { ; 276 : if( pOldData->IsLocked() || pSrcData->pStringMgr != pOldData->pStringMgr ) 00038 48 8b 4c 24 28 mov rcx, QWORD PTR pOldData$[rsp] 0003d e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QEBA_NXZ ; ATL::CStringData::IsLocked 00042 0f b6 c0 movzx eax, al 00045 85 c0 test eax, eax 00047 75 12 jne SHORT $LN5@operator 00049 48 8b 44 24 30 mov rax, QWORD PTR pSrcData$[rsp] 0004e 48 8b 4c 24 28 mov rcx, QWORD PTR pOldData$[rsp] 00053 48 8b 09 mov rcx, QWORD PTR [rcx] 00056 48 39 08 cmp QWORD PTR [rax], rcx 00059 74 33 je SHORT $LN3@operator $LN5@operator: ; 277 : { ; 278 : SetString( strSrc.GetString(), strSrc.GetLength() ); 0005b 48 8b 4c 24 68 mov rcx, QWORD PTR strSrc$[rsp] 00060 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QEBAHXZ ; ATL::CSimpleStringT::GetLength 00065 89 44 24 20 mov DWORD PTR tv86[rsp], eax 00069 48 8b 4c 24 68 mov rcx, QWORD PTR strSrc$[rsp] 0006e e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QEBAPEB_WXZ ; ATL::CSimpleStringT::GetString 00073 48 89 44 24 38 mov QWORD PTR tv84[rsp], rax 00078 44 8b 44 24 20 mov r8d, DWORD PTR tv86[rsp] 0007d 48 8b 54 24 38 mov rdx, QWORD PTR tv84[rsp] 00082 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 00087 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QEAAXPEB_WH@Z ; ATL::CSimpleStringT::SetString ; 279 : } 0008c eb 28 jmp SHORT $LN4@operator $LN3@operator: ; 280 : else ; 281 : { ; 282 : CStringData* pNewData = CloneData( pSrcData ); 0008e 48 8b 4c 24 30 mov rcx, QWORD PTR pSrcData$[rsp] 00093 e8 00 00 00 00 call ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z ; ATL::CSimpleStringT::CloneData 00098 48 89 44 24 40 mov QWORD PTR pNewData$1[rsp], rax ; 283 : pOldData->Release(); 0009d 48 8b 4c 24 28 mov rcx, QWORD PTR pOldData$[rsp] 000a2 e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release ; 284 : Attach( pNewData ); 000a7 48 8b 54 24 40 mov rdx, QWORD PTR pNewData$1[rsp] 000ac 48 8b 4c 24 60 mov rcx, QWORD PTR this$[rsp] 000b1 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach $LN4@operator: $LN2@operator: ; 285 : } ; 286 : } ; 287 : ; 288 : return( *this ); 000b6 48 8b 44 24 60 mov rax, QWORD PTR this$[rsp] ; 289 : } 000bb 48 83 c4 58 add rsp, 88 ; 00000058H 000bf c3 ret 0 ??4?$CSimpleStringT@_W$0A@@ATL@@QEAAAEAV01@AEBV01@@Z ENDP ; ATL::CSimpleStringT::operator= _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ _TEXT SEGMENT pData$ = 32 this$ = 64 ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ PROC ; ATL::CSimpleStringT::~CSimpleStringT, COMDAT ; 260 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 261 : CStringData* pData = GetData(); 00009 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0000e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00013 48 89 44 24 20 mov QWORD PTR pData$[rsp], rax ; 262 : pData->Release(); 00018 48 8b 4c 24 20 mov rcx, QWORD PTR pData$[rsp] 0001d e8 00 00 00 00 call ?Release@CStringData@ATL@@QEAAXXZ ; ATL::CStringData::Release ; 263 : } 00022 48 83 c4 38 add rsp, 56 ; 00000038H 00026 c3 ret 0 ??1?$CSimpleStringT@_W$0A@@ATL@@QEAA@XZ ENDP ; ATL::CSimpleStringT::~CSimpleStringT _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z _TEXT SEGMENT tv65 = 32 __atl_condVal$1 = 36 pData$ = 40 tv80 = 48 this$ = 80 pchSrc$ = 88 nLength$ = 96 pStringMgr$ = 104 ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z PROC ; ATL::CSimpleStringT::CSimpleStringT, COMDAT ; 240 : CSimpleStringT( $LN14: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 48 sub rsp, 72 ; 00000048H $LN4@CSimpleStr: ; 241 : _In_reads_(nLength) const XCHAR* pchSrc, ; 242 : _In_ int nLength, ; 243 : _Inout_ IAtlStringMgr* pStringMgr) ; 244 : { ; 245 : ATLENSURE( pStringMgr != NULL ); 00018 48 83 7c 24 68 00 cmp QWORD PTR pStringMgr$[rsp], 0 0001e 74 0a je SHORT $LN12@CSimpleStr 00020 c7 44 24 20 01 00 00 00 mov DWORD PTR tv65[rsp], 1 00028 eb 08 jmp SHORT $LN13@CSimpleStr $LN12@CSimpleStr: 0002a c7 44 24 20 00 00 00 00 mov DWORD PTR tv65[rsp], 0 $LN13@CSimpleStr: 00032 8b 44 24 20 mov eax, DWORD PTR tv65[rsp] 00036 89 44 24 24 mov DWORD PTR __atl_condVal$1[rsp], eax $LN7@CSimpleStr: 0003a 33 c0 xor eax, eax 0003c 85 c0 test eax, eax 0003e 75 fa jne SHORT $LN7@CSimpleStr 00040 83 7c 24 24 00 cmp DWORD PTR __atl_condVal$1[rsp], 0 00045 75 0a jne SHORT $LN8@CSimpleStr 00047 b9 05 40 00 80 mov ecx, -2147467259 ; ffffffff80004005H 0004c e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN8@CSimpleStr: 00051 33 c0 xor eax, eax 00053 85 c0 test eax, eax 00055 75 c1 jne SHORT $LN4@CSimpleStr ; 246 : ; 247 : if(pchSrc == NULL && nLength != 0) 00057 48 83 7c 24 58 00 cmp QWORD PTR pchSrc$[rsp], 0 0005d 75 11 jne SHORT $LN9@CSimpleStr 0005f 83 7c 24 60 00 cmp DWORD PTR nLength$[rsp], 0 00064 74 0a je SHORT $LN9@CSimpleStr ; 248 : AtlThrow(E_INVALIDARG); 00066 b9 57 00 07 80 mov ecx, -2147024809 ; ffffffff80070057H 0006b e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN9@CSimpleStr: ; 249 : ; 250 : CStringData* pData = pStringMgr->Allocate( nLength, sizeof( XCHAR ) ); 00070 48 8b 44 24 68 mov rax, QWORD PTR pStringMgr$[rsp] 00075 48 8b 00 mov rax, QWORD PTR [rax] 00078 48 8b 00 mov rax, QWORD PTR [rax] 0007b 48 89 44 24 30 mov QWORD PTR tv80[rsp], rax 00080 41 b8 02 00 00 00 mov r8d, 2 00086 8b 54 24 60 mov edx, DWORD PTR nLength$[rsp] 0008a 48 8b 4c 24 68 mov rcx, QWORD PTR pStringMgr$[rsp] 0008f ff 54 24 30 call QWORD PTR tv80[rsp] 00093 48 89 44 24 28 mov QWORD PTR pData$[rsp], rax ; 251 : if( pData == NULL ) 00098 48 83 7c 24 28 00 cmp QWORD PTR pData$[rsp], 0 0009e 75 05 jne SHORT $LN10@CSimpleStr ; 252 : { ; 253 : ThrowMemoryException(); 000a0 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT::ThrowMemoryException $LN10@CSimpleStr: ; 254 : } ; 255 : Attach( pData ); 000a5 48 8b 54 24 28 mov rdx, QWORD PTR pData$[rsp] 000aa 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000af e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach ; 256 : SetLength( nLength ); 000b4 8b 54 24 60 mov edx, DWORD PTR nLength$[rsp] 000b8 48 8b 4c 24 50 mov rcx, QWORD PTR this$[rsp] 000bd e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AEAAXH@Z ; ATL::CSimpleStringT::SetLength ; 257 : memcpy_s( m_pszData, nLength * sizeof( XCHAR ), pchSrc, nLength * sizeof( XCHAR )); 000c2 48 63 44 24 60 movsxd rax, DWORD PTR nLength$[rsp] 000c7 48 d1 e0 shl rax, 1 000ca 48 63 4c 24 60 movsxd rcx, DWORD PTR nLength$[rsp] 000cf 48 d1 e1 shl rcx, 1 000d2 4c 8b c8 mov r9, rax 000d5 4c 8b 44 24 58 mov r8, QWORD PTR pchSrc$[rsp] 000da 48 8b d1 mov rdx, rcx 000dd 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] 000e2 48 8b 08 mov rcx, QWORD PTR [rax] 000e5 e8 00 00 00 00 call memcpy_s ; 258 : } 000ea 48 8b 44 24 50 mov rax, QWORD PTR this$[rsp] $LN11@CSimpleStr: 000ef 48 83 c4 48 add rsp, 72 ; 00000048H 000f3 c3 ret 0 ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEB_WHPEAUIAtlStringMgr@1@@Z ENDP ; ATL::CSimpleStringT::CSimpleStringT _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z _TEXT SEGMENT pSrcData$ = 32 pNewData$ = 40 this$ = 64 strSrc$ = 72 ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z PROC ; ATL::CSimpleStringT::CSimpleStringT, COMDAT ; 210 : CSimpleStringT(_In_ const CSimpleStringT& strSrc) $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 211 : { ; 212 : CStringData* pSrcData = strSrc.GetData(); 0000e 48 8b 4c 24 48 mov rcx, QWORD PTR strSrc$[rsp] 00013 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@AEBAPEAUCStringData@2@XZ ; ATL::CSimpleStringT::GetData 00018 48 89 44 24 20 mov QWORD PTR pSrcData$[rsp], rax ; 213 : CStringData* pNewData = CloneData( pSrcData ); 0001d 48 8b 4c 24 20 mov rcx, QWORD PTR pSrcData$[rsp] 00022 e8 00 00 00 00 call ?CloneData@?$CSimpleStringT@_W$0A@@ATL@@CAPEAUCStringData@2@PEAU32@@Z ; ATL::CSimpleStringT::CloneData 00027 48 89 44 24 28 mov QWORD PTR pNewData$[rsp], rax ; 214 : Attach( pNewData ); 0002c 48 8b 54 24 28 mov rdx, QWORD PTR pNewData$[rsp] 00031 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 00036 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach ; 215 : } 0003b 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 00040 48 83 c4 38 add rsp, 56 ; 00000038H 00044 c3 ret 0 ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@AEBV01@@Z ENDP ; ATL::CSimpleStringT::CSimpleStringT _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z _TEXT SEGMENT tv65 = 32 __atl_condVal$1 = 36 pData$ = 40 this$ = 64 pStringMgr$ = 72 ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z PROC ; ATL::CSimpleStringT::CSimpleStringT, COMDAT ; 203 : explicit CSimpleStringT(_Inout_ IAtlStringMgr* pStringMgr) $LN12: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H $LN4@CSimpleStr: ; 204 : { ; 205 : ATLENSURE( pStringMgr != NULL ); 0000e 48 83 7c 24 48 00 cmp QWORD PTR pStringMgr$[rsp], 0 00014 74 0a je SHORT $LN10@CSimpleStr 00016 c7 44 24 20 01 00 00 00 mov DWORD PTR tv65[rsp], 1 0001e eb 08 jmp SHORT $LN11@CSimpleStr $LN10@CSimpleStr: 00020 c7 44 24 20 00 00 00 00 mov DWORD PTR tv65[rsp], 0 $LN11@CSimpleStr: 00028 8b 44 24 20 mov eax, DWORD PTR tv65[rsp] 0002c 89 44 24 24 mov DWORD PTR __atl_condVal$1[rsp], eax $LN7@CSimpleStr: 00030 33 c0 xor eax, eax 00032 85 c0 test eax, eax 00034 75 fa jne SHORT $LN7@CSimpleStr 00036 83 7c 24 24 00 cmp DWORD PTR __atl_condVal$1[rsp], 0 0003b 75 0a jne SHORT $LN8@CSimpleStr 0003d b9 05 40 00 80 mov ecx, -2147467259 ; ffffffff80004005H 00042 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YAXJ@Z ; ATL::AtlThrowImpl $LN8@CSimpleStr: 00047 33 c0 xor eax, eax 00049 85 c0 test eax, eax 0004b 75 c1 jne SHORT $LN4@CSimpleStr ; 206 : CStringData* pData = pStringMgr->GetNilString(); 0004d 48 8b 44 24 48 mov rax, QWORD PTR pStringMgr$[rsp] 00052 48 8b 00 mov rax, QWORD PTR [rax] 00055 48 8b 4c 24 48 mov rcx, QWORD PTR pStringMgr$[rsp] 0005a ff 50 18 call QWORD PTR [rax+24] 0005d 48 89 44 24 28 mov QWORD PTR pData$[rsp], rax ; 207 : Attach( pData ); 00062 48 8b 54 24 28 mov rdx, QWORD PTR pData$[rsp] 00067 48 8b 4c 24 40 mov rcx, QWORD PTR this$[rsp] 0006c e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AEAAXPEAUCStringData@2@@Z ; ATL::CSimpleStringT::Attach ; 208 : } 00071 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] $LN9@CSimpleStr: 00076 48 83 c4 38 add rsp, 56 ; 00000038H 0007a c3 ret 0 ??0?$CSimpleStringT@_W$0A@@ATL@@QEAA@PEAUIAtlStringMgr@1@@Z ENDP ; ATL::CSimpleStringT::CSimpleStringT _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z _TEXT SEGMENT pszDest$ = 48 nDestLength$ = 56 pszSrc$ = 64 nSrcLength$ = 72 ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z PROC ; ATL::ChTraitsCRT::ConvertToBaseType, COMDAT ; 789 : { $LN4: 00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx 0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00013 48 83 ec 28 sub rsp, 40 ; 00000028H ; 790 : if (nSrcLength == -1) { nSrcLength=1 + GetBaseTypeLength(pszSrc); } 00017 83 7c 24 48 ff cmp DWORD PTR nSrcLength$[rsp], -1 0001c 75 10 jne SHORT $LN2@ConvertToB 0001e 48 8b 4c 24 40 mov rcx, QWORD PTR pszSrc$[rsp] 00023 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ; ATL::ChTraitsCRT::GetBaseTypeLength 00028 ff c0 inc eax 0002a 89 44 24 48 mov DWORD PTR nSrcLength$[rsp], eax $LN2@ConvertToB: ; 791 : // nLen is in wchar_ts ; 792 : Checked::wmemcpy_s(pszDest, nDestLength, pszSrc, nSrcLength); 0002e 48 63 44 24 48 movsxd rax, DWORD PTR nSrcLength$[rsp] 00033 48 63 4c 24 38 movsxd rcx, DWORD PTR nDestLength$[rsp] 00038 4c 8b c8 mov r9, rax 0003b 4c 8b 44 24 40 mov r8, QWORD PTR pszSrc$[rsp] 00040 48 8b d1 mov rdx, rcx 00043 48 8b 4c 24 30 mov rcx, QWORD PTR pszDest$[rsp] 00048 e8 00 00 00 00 call ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ; ATL::Checked::wmemcpy_s ; 793 : } 0004d 48 83 c4 28 add rsp, 40 ; 00000028H 00051 c3 ret 0 ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEB_WH@Z ENDP ; ATL::ChTraitsCRT::ConvertToBaseType _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z _TEXT SEGMENT pszDest$ = 64 nDestLength$ = 72 pszSrc$ = 80 nSrcLength$ = 88 ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z PROC ; ATL::ChTraitsCRT::ConvertToBaseType, COMDAT ; 779 : { $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 89 54 24 10 mov DWORD PTR [rsp+16], edx 0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00013 48 83 ec 38 sub rsp, 56 ; 00000038H ; 780 : // nLen is in wchar_ts ; 781 : ::MultiByteToWideChar( _AtlGetConversionACP(), 0, pszSrc, nSrcLength, pszDest, nDestLength ); 00017 e8 00 00 00 00 call ?_AtlGetConversionACP@ATL@@YAIXZ ; ATL::_AtlGetConversionACP 0001c 8b 4c 24 48 mov ecx, DWORD PTR nDestLength$[rsp] 00020 89 4c 24 28 mov DWORD PTR [rsp+40], ecx 00024 48 8b 4c 24 40 mov rcx, QWORD PTR pszDest$[rsp] 00029 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx 0002e 44 8b 4c 24 58 mov r9d, DWORD PTR nSrcLength$[rsp] 00033 4c 8b 44 24 50 mov r8, QWORD PTR pszSrc$[rsp] 00038 33 d2 xor edx, edx 0003a 8b c8 mov ecx, eax 0003c ff 15 00 00 00 00 call QWORD PTR __imp_MultiByteToWideChar 00042 90 npad 1 ; 782 : } 00043 48 83 c4 38 add rsp, 56 ; 00000038H 00047 c3 ret 0 ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPEA_WHPEBDH@Z ENDP ; ATL::ChTraitsCRT::ConvertToBaseType _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z _TEXT SEGMENT pszSrc$ = 8 nLength$ = 16 ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z PROC ; ATL::ChTraitsCRT::GetBaseTypeLength, COMDAT ; 768 : { 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 769 : (void)pszSrc; ; 770 : // Returns required buffer size in wchar_ts ; 771 : return nLength; 00009 8b 44 24 10 mov eax, DWORD PTR nLength$[rsp] ; 772 : } 0000d c3 ret 0 ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WH@Z ENDP ; ATL::ChTraitsCRT::GetBaseTypeLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z _TEXT SEGMENT pszSrc$ = 48 ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z PROC ; ATL::ChTraitsCRT::GetBaseTypeLength, COMDAT ; 760 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 761 : // Returns required buffer size in wchar_ts ; 762 : return AtlStrLen( pszSrc ); 00009 48 8b 4c 24 30 mov rcx, QWORD PTR pszSrc$[rsp] 0000e e8 00 00 00 00 call ?AtlStrLen@ATL@@YAHPEB_W@Z ; ATL::AtlStrLen 00013 90 npad 1 ; 763 : } 00014 48 83 c4 28 add rsp, 40 ; 00000028H 00018 c3 ret 0 ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_W@Z ENDP ; ATL::ChTraitsCRT::GetBaseTypeLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z _TEXT SEGMENT pszSrc$ = 64 ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z PROC ; ATL::ChTraitsCRT::GetBaseTypeLength, COMDAT ; 746 : { $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 747 : // Returns required buffer size in wchar_ts ; 748 : return ::MultiByteToWideChar( _AtlGetConversionACP(), 0, pszSrc, -1, NULL, 0 )-1; 00009 e8 00 00 00 00 call ?_AtlGetConversionACP@ATL@@YAIXZ ; ATL::_AtlGetConversionACP 0000e c7 44 24 28 00 00 00 00 mov DWORD PTR [rsp+40], 0 00016 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 0001f 41 b9 ff ff ff ff mov r9d, -1 00025 4c 8b 44 24 40 mov r8, QWORD PTR pszSrc$[rsp] 0002a 33 d2 xor edx, edx 0002c 8b c8 mov ecx, eax 0002e ff 15 00 00 00 00 call QWORD PTR __imp_MultiByteToWideChar 00034 ff c8 dec eax ; 749 : } 00036 48 83 c4 38 add rsp, 56 ; 00000038H 0003a c3 ret 0 ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPEBD@Z ENDP ; ATL::ChTraitsCRT::GetBaseTypeLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z _TEXT SEGMENT result$ = 48 tv74 = 52 pszBuffer$ = 80 nLength$ = 88 pszFormat$ = 96 args$ = 104 ?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z PROC ; ATL::ChTraitsCRT::Format, COMDAT ; 728 : { $LN5: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 48 sub rsp, 72 ; 00000048H ; 729 : #if _MSC_VER < 1900 ; 730 : return vswprintf_s(pszBuffer, nLength, pszFormat, args); ; 731 : #else ; 732 : // Explicitly request the legacy wide format specifiers mode from the CRT, ; 733 : // for compatibility with previous versions. While the CRT supports two ; 734 : // modes, the ATL and MFC functions that accept format strings only support ; 735 : // legacy mode format strings. ; 736 : int const result = __stdio_common_vswprintf_s( 00018 e8 00 00 00 00 call __local_stdio_printf_options 0001d 48 8b 00 mov rax, QWORD PTR [rax] 00020 48 83 c8 04 or rax, 4 00024 48 8b 4c 24 68 mov rcx, QWORD PTR args$[rsp] 00029 48 89 4c 24 28 mov QWORD PTR [rsp+40], rcx 0002e 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00037 4c 8b 4c 24 60 mov r9, QWORD PTR pszFormat$[rsp] 0003c 4c 8b 44 24 58 mov r8, QWORD PTR nLength$[rsp] 00041 48 8b 54 24 50 mov rdx, QWORD PTR pszBuffer$[rsp] 00046 48 8b c8 mov rcx, rax 00049 e8 00 00 00 00 call __stdio_common_vswprintf_s 0004e 89 44 24 30 mov DWORD PTR result$[rsp], eax ; 737 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | ; 738 : _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS, ; 739 : pszBuffer, nLength, pszFormat, NULL, args); ; 740 : ; 741 : return result < 0 ? -1 : result; 00052 83 7c 24 30 00 cmp DWORD PTR result$[rsp], 0 00057 7d 0a jge SHORT $LN3@Format 00059 c7 44 24 34 ff ff ff ff mov DWORD PTR tv74[rsp], -1 00061 eb 08 jmp SHORT $LN4@Format $LN3@Format: 00063 8b 44 24 30 mov eax, DWORD PTR result$[rsp] 00067 89 44 24 34 mov DWORD PTR tv74[rsp], eax $LN4@Format: 0006b 8b 44 24 34 mov eax, DWORD PTR tv74[rsp] ; 742 : #endif ; 743 : } 0006f 48 83 c4 48 add rsp, 72 ; 00000048H 00073 c3 ret 0 ?Format@?$ChTraitsCRT@_W@ATL@@SAHPEA_W_KPEB_WPEAD@Z ENDP ; ATL::ChTraitsCRT::Format _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z _TEXT SEGMENT result$ = 48 tv75 = 52 pszFormat$ = 80 args$ = 88 ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z PROC ; ATL::ChTraitsCRT::GetFormattedLength, COMDAT ; 682 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 48 sub rsp, 72 ; 00000048H ; 683 : #if _MSC_VER < 1900 ; 684 : return _vscwprintf(pszFormat, args); ; 685 : #else ; 686 : // Explicitly request the legacy wide format specifiers mode from the CRT, ; 687 : // for compatibility with previous versions. While the CRT supports two ; 688 : // modes, the ATL and MFC functions that accept format strings only support ; 689 : // legacy mode format strings. ; 690 : int const result = __stdio_common_vswprintf( 0000e e8 00 00 00 00 call __local_stdio_printf_options 00013 48 8b 00 mov rax, QWORD PTR [rax] 00016 48 83 c8 02 or rax, 2 0001a 48 83 c8 04 or rax, 4 0001e 48 8b 4c 24 58 mov rcx, QWORD PTR args$[rsp] 00023 48 89 4c 24 28 mov QWORD PTR [rsp+40], rcx 00028 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00031 4c 8b 4c 24 50 mov r9, QWORD PTR pszFormat$[rsp] 00036 45 33 c0 xor r8d, r8d 00039 33 d2 xor edx, edx 0003b 48 8b c8 mov rcx, rax 0003e e8 00 00 00 00 call __stdio_common_vswprintf 00043 89 44 24 30 mov DWORD PTR result$[rsp], eax ; 691 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | ; 692 : _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR | ; 693 : _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS, ; 694 : NULL, 0, pszFormat, NULL, args); ; 695 : ; 696 : return result < 0 ? -1 : result; 00047 83 7c 24 30 00 cmp DWORD PTR result$[rsp], 0 0004c 7d 0a jge SHORT $LN3@GetFormatt 0004e c7 44 24 34 ff ff ff ff mov DWORD PTR tv75[rsp], -1 00056 eb 08 jmp SHORT $LN4@GetFormatt $LN3@GetFormatt: 00058 8b 44 24 30 mov eax, DWORD PTR result$[rsp] 0005c 89 44 24 34 mov DWORD PTR tv75[rsp], eax $LN4@GetFormatt: 00060 8b 44 24 34 mov eax, DWORD PTR tv75[rsp] ; 697 : #endif ; 698 : } 00064 48 83 c4 48 add rsp, 72 ; 00000048H 00068 c3 ret 0 ?GetFormattedLength@?$ChTraitsCRT@_W@ATL@@SAHPEB_WPEAD@Z ENDP ; ATL::ChTraitsCRT::GetFormattedLength _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z _TEXT SEGMENT err$ = 32 tv68 = 40 psz$ = 64 size$ = 72 ?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z PROC ; ATL::ChTraitsCRT::StringLowercase, COMDAT ; 670 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 671 : errno_t err = _wcslwr_s( psz, size ); 0000e 48 8b 54 24 48 mov rdx, QWORD PTR size$[rsp] 00013 48 8b 4c 24 40 mov rcx, QWORD PTR psz$[rsp] 00018 e8 00 00 00 00 call _wcslwr_s 0001d 89 44 24 20 mov DWORD PTR err$[rsp], eax ; 672 : return (err == 0) ? psz : NULL; 00021 83 7c 24 20 00 cmp DWORD PTR err$[rsp], 0 00026 75 0c jne SHORT $LN3@StringLowe 00028 48 8b 44 24 40 mov rax, QWORD PTR psz$[rsp] 0002d 48 89 44 24 28 mov QWORD PTR tv68[rsp], rax 00032 eb 09 jmp SHORT $LN4@StringLowe $LN3@StringLowe: 00034 48 c7 44 24 28 00 00 00 00 mov QWORD PTR tv68[rsp], 0 $LN4@StringLowe: 0003d 48 8b 44 24 28 mov rax, QWORD PTR tv68[rsp] ; 673 : } 00042 48 83 c4 38 add rsp, 56 ; 00000038H 00046 c3 ret 0 ?StringLowercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z ENDP ; ATL::ChTraitsCRT::StringLowercase _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z _TEXT SEGMENT err$ = 32 tv68 = 40 psz$ = 64 size$ = 72 ?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z PROC ; ATL::ChTraitsCRT::StringUppercase, COMDAT ; 662 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 38 sub rsp, 56 ; 00000038H ; 663 : errno_t err = _wcsupr_s( psz, size ); 0000e 48 8b 54 24 48 mov rdx, QWORD PTR size$[rsp] 00013 48 8b 4c 24 40 mov rcx, QWORD PTR psz$[rsp] 00018 e8 00 00 00 00 call _wcsupr_s 0001d 89 44 24 20 mov DWORD PTR err$[rsp], eax ; 664 : return (err == 0) ? psz : NULL; 00021 83 7c 24 20 00 cmp DWORD PTR err$[rsp], 0 00026 75 0c jne SHORT $LN3@StringUppe 00028 48 8b 44 24 40 mov rax, QWORD PTR psz$[rsp] 0002d 48 89 44 24 28 mov QWORD PTR tv68[rsp], rax 00032 eb 09 jmp SHORT $LN4@StringUppe $LN3@StringUppe: 00034 48 c7 44 24 28 00 00 00 00 mov QWORD PTR tv68[rsp], 0 $LN4@StringUppe: 0003d 48 8b 44 24 28 mov rax, QWORD PTR tv68[rsp] ; 665 : } 00042 48 83 c4 38 add rsp, 56 ; 00000038H 00046 c3 ret 0 ?StringUppercase@?$ChTraitsCRT@_W@ATL@@SAPEA_WPEA_W_K@Z ENDP ; ATL::ChTraitsCRT::StringUppercase _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z _TEXT SEGMENT psz$ = 48 ch$ = 56 ?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z PROC ; ATL::ChTraitsCRT::StringFindCharRev, COMDAT ; 616 : { $LN3: 00000 66 89 54 24 10 mov WORD PTR [rsp+16], dx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 617 : return wcsrchr( psz, ch ); 0000e 0f b7 54 24 38 movzx edx, WORD PTR ch$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR psz$[rsp] 00018 e8 00 00 00 00 call wcsrchr 0001d 90 npad 1 ; 618 : } 0001e 48 83 c4 28 add rsp, 40 ; 00000028H 00022 c3 ret 0 ?StringFindCharRev@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z ENDP ; ATL::ChTraitsCRT::StringFindCharRev _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z _TEXT SEGMENT pszBlock$ = 48 chMatch$ = 56 ?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z PROC ; ATL::ChTraitsCRT::StringFindChar, COMDAT ; 609 : { $LN3: 00000 66 89 54 24 10 mov WORD PTR [rsp+16], dx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 610 : return wcschr( pszBlock, chMatch ); 0000e 0f b7 54 24 38 movzx edx, WORD PTR chMatch$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR pszBlock$[rsp] 00018 e8 00 00 00 00 call wcschr 0001d 90 npad 1 ; 611 : } 0001e 48 83 c4 28 add rsp, 40 ; 00000028H 00022 c3 ret 0 ?StringFindChar@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W_W@Z ENDP ; ATL::ChTraitsCRT::StringFindChar _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z _TEXT SEGMENT pszBlock$ = 48 pszMatch$ = 56 ?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z PROC ; ATL::ChTraitsCRT::StringFindString, COMDAT ; 595 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 596 : return wcsstr( pszBlock, pszMatch ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszMatch$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR pszBlock$[rsp] 00018 e8 00 00 00 00 call wcsstr 0001d 90 npad 1 ; 597 : } 0001e 48 83 c4 28 add rsp, 40 ; 00000028H 00022 c3 ret 0 ?StringFindString@?$ChTraitsCRT@_W@ATL@@SAPEB_WPEB_W0@Z ENDP ; ATL::ChTraitsCRT::StringFindString _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h ; COMDAT ?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z _TEXT SEGMENT pszA$ = 48 pszB$ = 56 ?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z PROC ; ATL::ChTraitsCRT::StringCompare, COMDAT ; 567 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 28 sub rsp, 40 ; 00000028H ; 568 : return wcscmp( pszA, pszB ); 0000e 48 8b 54 24 38 mov rdx, QWORD PTR pszB$[rsp] 00013 48 8b 4c 24 30 mov rcx, QWORD PTR pszA$[rsp] 00018 e8 00 00 00 00 call wcscmp 0001d 90 npad 1 ; 569 : } 0001e 48 83 c4 28 add rsp, 40 ; 00000028H 00022 c3 ret 0 ?StringCompare@?$ChTraitsCRT@_W@ATL@@SAHPEB_W0@Z ENDP ; ATL::ChTraitsCRT::StringCompare _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?Release@CStringData@ATL@@QEAAXXZ _TEXT SEGMENT tv77 = 32 tv79 = 40 this$ = 64 ?Release@CStringData@ATL@@QEAAXXZ PROC ; ATL::CStringData::Release, COMDAT ; 85 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 38 sub rsp, 56 ; 00000038H ; 86 : ATLASSERT( nRefs != 0 ); ; 87 : ; 88 : if( _InterlockedDecrement( &nRefs ) <= 0 ) 00009 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 0000e 48 83 c0 10 add rax, 16 00012 b9 ff ff ff ff mov ecx, -1 00017 f0 0f c1 08 lock xadd DWORD PTR [rax], ecx 0001b ff c9 dec ecx 0001d 8b c1 mov eax, ecx 0001f 85 c0 test eax, eax 00021 7f 2f jg SHORT $LN2@Release ; 89 : { ; 90 : pStringMgr->Free( this ); 00023 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 00028 48 8b 00 mov rax, QWORD PTR [rax] 0002b 48 89 44 24 20 mov QWORD PTR tv77[rsp], rax 00030 48 8b 44 24 40 mov rax, QWORD PTR this$[rsp] 00035 48 8b 00 mov rax, QWORD PTR [rax] 00038 48 8b 00 mov rax, QWORD PTR [rax] 0003b 48 8b 40 08 mov rax, QWORD PTR [rax+8] 0003f 48 89 44 24 28 mov QWORD PTR tv79[rsp], rax 00044 48 8b 54 24 40 mov rdx, QWORD PTR this$[rsp] 00049 48 8b 4c 24 20 mov rcx, QWORD PTR tv77[rsp] 0004e ff 54 24 28 call QWORD PTR tv79[rsp] $LN2@Release: ; 91 : } ; 92 : } 00052 48 83 c4 38 add rsp, 56 ; 00000038H 00056 c3 ret 0 ?Release@CStringData@ATL@@QEAAXXZ ENDP ; ATL::CStringData::Release _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?IsShared@CStringData@ATL@@QEBA_NXZ _TEXT SEGMENT tv66 = 0 this$ = 32 ?IsShared@CStringData@ATL@@QEBA_NXZ PROC ; ATL::CStringData::IsShared, COMDAT ; 72 : { $LN5: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 18 sub rsp, 24 ; 73 : return( nRefs > 1 ); 00009 48 8b 44 24 20 mov rax, QWORD PTR this$[rsp] 0000e 83 78 10 01 cmp DWORD PTR [rax+16], 1 00012 7e 09 jle SHORT $LN3@IsShared 00014 c7 04 24 01 00 00 00 mov DWORD PTR tv66[rsp], 1 0001b eb 07 jmp SHORT $LN4@IsShared $LN3@IsShared: 0001d c7 04 24 00 00 00 00 mov DWORD PTR tv66[rsp], 0 $LN4@IsShared: 00024 0f b6 04 24 movzx eax, BYTE PTR tv66[rsp] ; 74 : } 00028 48 83 c4 18 add rsp, 24 0002c c3 ret 0 ?IsShared@CStringData@ATL@@QEBA_NXZ ENDP ; ATL::CStringData::IsShared _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?IsLocked@CStringData@ATL@@QEBA_NXZ _TEXT SEGMENT tv66 = 0 this$ = 32 ?IsLocked@CStringData@ATL@@QEBA_NXZ PROC ; ATL::CStringData::IsLocked, COMDAT ; 68 : { $LN5: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 18 sub rsp, 24 ; 69 : return nRefs < 0; 00009 48 8b 44 24 20 mov rax, QWORD PTR this$[rsp] 0000e 83 78 10 00 cmp DWORD PTR [rax+16], 0 00012 7d 09 jge SHORT $LN3@IsLocked 00014 c7 04 24 01 00 00 00 mov DWORD PTR tv66[rsp], 1 0001b eb 07 jmp SHORT $LN4@IsLocked $LN3@IsLocked: 0001d c7 04 24 00 00 00 00 mov DWORD PTR tv66[rsp], 0 $LN4@IsLocked: 00024 0f b6 04 24 movzx eax, BYTE PTR tv66[rsp] ; 70 : } 00028 48 83 c4 18 add rsp, 24 0002c c3 ret 0 ?IsLocked@CStringData@ATL@@QEBA_NXZ ENDP ; ATL::CStringData::IsLocked _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?AddRef@CStringData@ATL@@QEAAXXZ _TEXT SEGMENT this$ = 8 ?AddRef@CStringData@ATL@@QEAAXXZ PROC ; ATL::CStringData::AddRef, COMDAT ; 63 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 64 : ATLASSERT(nRefs > 0); ; 65 : _InterlockedIncrement(&nRefs); 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 48 83 c0 10 add rax, 16 0000e f0 ff 00 lock inc DWORD PTR [rax] ; 66 : } 00011 c3 ret 0 ?AddRef@CStringData@ATL@@QEAAXXZ ENDP ; ATL::CStringData::AddRef _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h ; COMDAT ?data@CStringData@ATL@@QEAAPEAXXZ _TEXT SEGMENT this$ = 8 ?data@CStringData@ATL@@QEAAPEAXXZ PROC ; ATL::CStringData::data, COMDAT ; 58 : { 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx ; 59 : return (this+1); 00005 48 8b 44 24 08 mov rax, QWORD PTR this$[rsp] 0000a 48 83 c0 18 add rax, 24 ; 60 : } 0000e c3 ret 0 ?data@CStringData@ATL@@QEAAPEAXXZ ENDP ; ATL::CStringData::data _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlalloc.h ; COMDAT ??$AtlAdd@H@ATL@@YAJPEAHHH@Z _TEXT SEGMENT ptResult$ = 48 tLeft$ = 56 tRight$ = 64 ??$AtlAdd@H@ATL@@YAJPEAHHH@Z PROC ; ATL::AtlAdd, COMDAT ; 84 : { $LN4: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 89 54 24 10 mov DWORD PTR [rsp+16], edx 00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000e 48 83 ec 28 sub rsp, 40 ; 00000028H ; 85 : if(::ATL::AtlLimits::_Max-tLeft < tRight) 00012 b8 ff ff ff 7f mov eax, 2147483647 ; 7fffffffH 00017 2b 44 24 38 sub eax, DWORD PTR tLeft$[rsp] 0001b 3b 44 24 40 cmp eax, DWORD PTR tRight$[rsp] 0001f 7d 0c jge SHORT $LN2@AtlAdd ; 86 : { ; 87 : return HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW); 00021 b9 16 02 00 00 mov ecx, 534 ; 00000216H 00026 e8 00 00 00 00 call HRESULT_FROM_WIN32 0002b eb 15 jmp SHORT $LN1@AtlAdd $LN2@AtlAdd: ; 88 : } ; 89 : *ptResult= tLeft + tRight; 0002d 8b 44 24 40 mov eax, DWORD PTR tRight$[rsp] 00031 8b 4c 24 38 mov ecx, DWORD PTR tLeft$[rsp] 00035 03 c8 add ecx, eax 00037 8b c1 mov eax, ecx 00039 48 8b 4c 24 30 mov rcx, QWORD PTR ptResult$[rsp] 0003e 89 01 mov DWORD PTR [rcx], eax ; 90 : return S_OK; 00040 33 c0 xor eax, eax $LN1@AtlAdd: ; 91 : } 00042 48 83 c4 28 add rsp, 40 ; 00000028H 00046 c3 ret 0 ??$AtlAdd@H@ATL@@YAJPEAHHH@Z ENDP ; ATL::AtlAdd _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h ; COMDAT ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z _TEXT SEGMENT hResource$ = 32 hInstance$ = 64 id$ = 72 ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z PROC ; ATL::AtlGetStringResourceImage, COMDAT ; 370 : { $LN4: 00000 89 54 24 10 mov DWORD PTR [rsp+16], edx 00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00009 48 83 ec 38 sub rsp, 56 ; 00000038H ; 371 : HRSRC hResource; ; 372 : /* ; 373 : The and operation (& static_cast(~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(~0)) ), (LPWSTR) RT_STRING); 0000d 8b 44 24 48 mov eax, DWORD PTR id$[rsp] 00011 c1 e8 04 shr eax, 4 00014 ff c0 inc eax 00016 25 ff ff 00 00 and eax, 65535 ; 0000ffffH 0001b 0f b7 c0 movzx eax, ax 0001e 41 b8 06 00 00 00 mov r8d, 6 00024 8b d0 mov edx, eax 00026 48 8b 4c 24 40 mov rcx, QWORD PTR hInstance$[rsp] 0002b ff 15 00 00 00 00 call QWORD PTR __imp_FindResourceW 00031 48 89 44 24 20 mov QWORD PTR hResource$[rsp], rax ; 377 : if( hResource == NULL ) 00036 48 83 7c 24 20 00 cmp QWORD PTR hResource$[rsp], 0 0003c 75 04 jne SHORT $LN2@AtlGetStri ; 378 : { ; 379 : return( NULL ); 0003e 33 c0 xor eax, eax 00040 eb 15 jmp SHORT $LN1@AtlGetStri $LN2@AtlGetStri: ; 380 : } ; 381 : ; 382 : return _AtlGetStringResourceImage( hInstance, hResource, id ); 00042 44 8b 44 24 48 mov r8d, DWORD PTR id$[rsp] 00047 48 8b 54 24 20 mov rdx, QWORD PTR hResource$[rsp] 0004c 48 8b 4c 24 40 mov rcx, QWORD PTR hInstance$[rsp] 00051 e8 00 00 00 00 call ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage 00056 90 npad 1 $LN1@AtlGetStri: ; 383 : } 00057 48 83 c4 38 add rsp, 56 ; 00000038H 0005b c3 ret 0 ?AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@I@Z ENDP ; ATL::AtlGetStringResourceImage _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h ; COMDAT ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z _TEXT SEGMENT iIndex$ = 32 nResourceSize$ = 36 pImage$ = 40 hGlobal$ = 48 pImageEnd$ = 56 hInstance$ = 80 hResource$ = 88 id$ = 96 ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z PROC ; ATL::_AtlGetStringResourceImage, COMDAT ; 327 : { $LN9: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 48 83 ec 48 sub rsp, 72 ; 00000048H ; 328 : const ATLSTRINGRESOURCEIMAGE* pImage; ; 329 : const ATLSTRINGRESOURCEIMAGE* pImageEnd; ; 330 : ULONG nResourceSize; ; 331 : HGLOBAL hGlobal; ; 332 : UINT iIndex; ; 333 : ; 334 : hGlobal = ::LoadResource( hInstance, hResource ); 00013 48 8b 54 24 58 mov rdx, QWORD PTR hResource$[rsp] 00018 48 8b 4c 24 50 mov rcx, QWORD PTR hInstance$[rsp] 0001d ff 15 00 00 00 00 call QWORD PTR __imp_LoadResource 00023 48 89 44 24 30 mov QWORD PTR hGlobal$[rsp], rax ; 335 : if( hGlobal == NULL ) 00028 48 83 7c 24 30 00 cmp QWORD PTR hGlobal$[rsp], 0 0002e 75 07 jne SHORT $LN4@AtlGetStri ; 336 : { ; 337 : return( NULL ); 00030 33 c0 xor eax, eax 00032 e9 ad 00 00 00 jmp $LN1@AtlGetStri $LN4@AtlGetStri: ; 338 : } ; 339 : ; 340 : pImage = (const ATLSTRINGRESOURCEIMAGE*)::LockResource( hGlobal ); 00037 48 8b 4c 24 30 mov rcx, QWORD PTR hGlobal$[rsp] 0003c ff 15 00 00 00 00 call QWORD PTR __imp_LockResource 00042 48 89 44 24 28 mov QWORD PTR pImage$[rsp], rax ; 341 : if( pImage == NULL ) 00047 48 83 7c 24 28 00 cmp QWORD PTR pImage$[rsp], 0 0004d 75 07 jne SHORT $LN5@AtlGetStri ; 342 : { ; 343 : return( NULL ); 0004f 33 c0 xor eax, eax 00051 e9 8e 00 00 00 jmp $LN1@AtlGetStri $LN5@AtlGetStri: ; 344 : } ; 345 : ; 346 : nResourceSize = ::SizeofResource( hInstance, hResource ); 00056 48 8b 54 24 58 mov rdx, QWORD PTR hResource$[rsp] 0005b 48 8b 4c 24 50 mov rcx, QWORD PTR hInstance$[rsp] 00060 ff 15 00 00 00 00 call QWORD PTR __imp_SizeofResource 00066 89 44 24 24 mov DWORD PTR nResourceSize$[rsp], eax ; 347 : pImageEnd = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+nResourceSize); 0006a 8b 44 24 24 mov eax, DWORD PTR nResourceSize$[rsp] 0006e 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp] 00073 48 03 c8 add rcx, rax 00076 48 8b c1 mov rax, rcx 00079 48 89 44 24 38 mov QWORD PTR pImageEnd$[rsp], rax ; 348 : iIndex = id&0x000f; 0007e 8b 44 24 60 mov eax, DWORD PTR id$[rsp] 00082 83 e0 0f and eax, 15 00085 89 44 24 20 mov DWORD PTR iIndex$[rsp], eax $LN2@AtlGetStri: ; 349 : ; 350 : while( (iIndex > 0) && (pImage < pImageEnd) ) 00089 83 7c 24 20 00 cmp DWORD PTR iIndex$[rsp], 0 0008e 76 2f jbe SHORT $LN3@AtlGetStri 00090 48 8b 44 24 38 mov rax, QWORD PTR pImageEnd$[rsp] 00095 48 39 44 24 28 cmp QWORD PTR pImage$[rsp], rax 0009a 73 23 jae SHORT $LN3@AtlGetStri ; 351 : { ; 352 : pImage = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+(sizeof( ATLSTRINGRESOURCEIMAGE )+(pImage->nLength*sizeof( WCHAR )))); 0009c 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp] 000a1 0f b7 00 movzx eax, WORD PTR [rax] 000a4 48 8b 4c 24 28 mov rcx, QWORD PTR pImage$[rsp] 000a9 48 8d 44 41 02 lea rax, QWORD PTR [rcx+rax*2+2] 000ae 48 89 44 24 28 mov QWORD PTR pImage$[rsp], rax ; 353 : iIndex--; 000b3 8b 44 24 20 mov eax, DWORD PTR iIndex$[rsp] 000b7 ff c8 dec eax 000b9 89 44 24 20 mov DWORD PTR iIndex$[rsp], eax ; 354 : } 000bd eb ca jmp SHORT $LN2@AtlGetStri $LN3@AtlGetStri: ; 355 : if( pImage >= pImageEnd ) 000bf 48 8b 44 24 38 mov rax, QWORD PTR pImageEnd$[rsp] 000c4 48 39 44 24 28 cmp QWORD PTR pImage$[rsp], rax 000c9 72 04 jb SHORT $LN6@AtlGetStri ; 356 : { ; 357 : return( NULL ); 000cb 33 c0 xor eax, eax 000cd eb 15 jmp SHORT $LN1@AtlGetStri $LN6@AtlGetStri: ; 358 : } ; 359 : if( pImage->nLength == 0 ) 000cf 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp] 000d4 0f b7 00 movzx eax, WORD PTR [rax] 000d7 85 c0 test eax, eax 000d9 75 04 jne SHORT $LN7@AtlGetStri ; 360 : { ; 361 : return( NULL ); 000db 33 c0 xor eax, eax 000dd eb 05 jmp SHORT $LN1@AtlGetStri $LN7@AtlGetStri: ; 362 : } ; 363 : ; 364 : return( pImage ); 000df 48 8b 44 24 28 mov rax, QWORD PTR pImage$[rsp] $LN1@AtlGetStri: ; 365 : } 000e4 48 83 c4 48 add rsp, 72 ; 00000048H 000e8 c3 ret 0 ?_AtlGetStringResourceImage@ATL@@YAPEBUATLSTRINGRESOURCEIMAGE@1@PEAUHINSTANCE__@@PEAUHRSRC__@@I@Z ENDP ; ATL::_AtlGetStringResourceImage _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h ; COMDAT ?AtlIsValidString@ATL@@YAHPEB_W_K@Z _TEXT SEGMENT tv65 = 0 psz$ = 32 nMaxLength$ = 40 ?AtlIsValidString@ATL@@YAHPEB_W_K@Z PROC ; ATL::AtlIsValidString, COMDAT ; 79 : { $LN5: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 48 83 ec 18 sub rsp, 24 ; 80 : (nMaxLength); ; 81 : return (psz != NULL); 0000e 48 83 7c 24 20 00 cmp QWORD PTR psz$[rsp], 0 00014 74 09 je SHORT $LN3@AtlIsValid 00016 c7 04 24 01 00 00 00 mov DWORD PTR tv65[rsp], 1 0001d eb 07 jmp SHORT $LN4@AtlIsValid $LN3@AtlIsValid: 0001f c7 04 24 00 00 00 00 mov DWORD PTR tv65[rsp], 0 $LN4@AtlIsValid: 00026 8b 04 24 mov eax, DWORD PTR tv65[rsp] ; 82 : } 00029 48 83 c4 18 add rsp, 24 0002d c3 ret 0 ?AtlIsValidString@ATL@@YAHPEB_W_K@Z ENDP ; ATL::AtlIsValidString _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h ; COMDAT ?AtlStrLen@ATL@@YAHPEB_W@Z _TEXT SEGMENT str$ = 48 ?AtlStrLen@ATL@@YAHPEB_W@Z PROC ; ATL::AtlStrLen, COMDAT ; 60 : { $LN4: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H ; 61 : if (str == NULL) 00009 48 83 7c 24 30 00 cmp QWORD PTR str$[rsp], 0 0000f 75 04 jne SHORT $LN2@AtlStrLen ; 62 : return 0; 00011 33 c0 xor eax, eax 00013 eb 0a jmp SHORT $LN1@AtlStrLen $LN2@AtlStrLen: ; 63 : return static_cast(::wcslen(str)); 00015 48 8b 4c 24 30 mov rcx, QWORD PTR str$[rsp] 0001a e8 00 00 00 00 call wcslen $LN1@AtlStrLen: ; 64 : } 0001f 48 83 c4 28 add rsp, 40 ; 00000028H 00023 c3 ret 0 ?AtlStrLen@ATL@@YAHPEB_W@Z ENDP ; ATL::AtlStrLen _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlchecked.h ; COMDAT ?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z _TEXT SEGMENT _S1$ = 48 _S1max$ = 56 _S2$ = 64 _N$ = 72 ?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z PROC ; ATL::Checked::memmove_s, COMDAT ; 86 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 28 sub rsp, 40 ; 00000028H ; 87 : ATLMFC_CRT_ERRORCHECK(::memmove_s(_S1, _S1max, _S2, _N)); 00018 4c 8b 4c 24 48 mov r9, QWORD PTR _N$[rsp] 0001d 4c 8b 44 24 40 mov r8, QWORD PTR _S2$[rsp] 00022 48 8b 54 24 38 mov rdx, QWORD PTR _S1max$[rsp] 00027 48 8b 4c 24 30 mov rcx, QWORD PTR _S1$[rsp] 0002c e8 00 00 00 00 call memmove_s 00031 8b c8 mov ecx, eax 00033 e8 00 00 00 00 call ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck ; 88 : } 00038 48 83 c4 28 add rsp, 40 ; 00000028H 0003c c3 ret 0 ?memmove_s@Checked@ATL@@YAXPEAX_KPEBX1@Z ENDP ; ATL::Checked::memmove_s _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlchecked.h ; COMDAT ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z _TEXT SEGMENT _S1$ = 48 _N1$ = 56 _S2$ = 64 _N$ = 72 ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z PROC ; ATL::Checked::wmemcpy_s, COMDAT ; 77 : { $LN3: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 28 sub rsp, 40 ; 00000028H ; 78 : ATLMFC_CRT_ERRORCHECK(::wmemcpy_s(_S1, _N1, _S2, _N)); 00018 4c 8b 4c 24 48 mov r9, QWORD PTR _N$[rsp] 0001d 4c 8b 44 24 40 mov r8, QWORD PTR _S2$[rsp] 00022 48 8b 54 24 38 mov rdx, QWORD PTR _N1$[rsp] 00027 48 8b 4c 24 30 mov rcx, QWORD PTR _S1$[rsp] 0002c e8 00 00 00 00 call wmemcpy_s 00031 8b c8 mov ecx, eax 00033 e8 00 00 00 00 call ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck ; 79 : } 00038 48 83 c4 28 add rsp, 40 ; 00000028H 0003c c3 ret 0 ?wmemcpy_s@Checked@ATL@@YAXPEA_W_KPEB_W1@Z ENDP ; ATL::Checked::wmemcpy_s _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlconv.h ; COMDAT ?_AtlGetConversionACP@ATL@@YAIXZ _TEXT SEGMENT ?_AtlGetConversionACP@ATL@@YAIXZ PROC ; ATL::_AtlGetConversionACP, COMDAT ; 99 : #ifdef _CONVERSION_DONT_USE_THREAD_LOCALE ; 100 : return CP_ACP; ; 101 : #else ; 102 : return CP_THREAD_ACP; 00000 b8 03 00 00 00 mov eax, 3 ; 103 : #endif ; 104 : } 00005 c3 ret 0 ?_AtlGetConversionACP@ATL@@YAIXZ ENDP ; ATL::_AtlGetConversionACP _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlexcept.h ; COMDAT ?AtlThrowImpl@ATL@@YAXJ@Z _TEXT SEGMENT hr$ = 48 ?AtlThrowImpl@ATL@@YAXJ@Z PROC ; ATL::AtlThrowImpl, COMDAT ; 65 : { $LN5: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 48 83 ec 28 sub rsp, 40 ; 00000028H ; 66 : ATLTRACE(atlTraceException, 0, _T("AtlThrow: hr = 0x%x\n"), hr ); ; 67 : #ifdef _AFX ; 68 : if( hr == E_OUTOFMEMORY ) 00008 81 7c 24 30 0e 00 07 80 cmp DWORD PTR hr$[rsp], -2147024882 ; ffffffff8007000eH 00010 75 07 jne SHORT $LN2@AtlThrowIm ; 69 : { ; 70 : AfxThrowMemoryException(); 00012 e8 00 00 00 00 call ?AfxThrowMemoryException@@YAXXZ ; AfxThrowMemoryException ; 71 : } 00017 eb 09 jmp SHORT $LN3@AtlThrowIm $LN2@AtlThrowIm: ; 72 : else ; 73 : { ; 74 : AfxThrowOleException( hr ); 00019 8b 4c 24 30 mov ecx, DWORD PTR hr$[rsp] 0001d e8 00 00 00 00 call ?AfxThrowOleException@@YAXJ@Z ; AfxThrowOleException $LN3@AtlThrowIm: $LN4@AtlThrowIm: ; 75 : } ; 76 : #else ; 77 : throw CAtlException( hr ); ; 78 : #endif ; 79 : }; 00022 48 83 c4 28 add rsp, 40 ; 00000028H 00026 c3 ret 0 ?AtlThrowImpl@ATL@@YAXJ@Z ENDP ; ATL::AtlThrowImpl _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.inl ; COMDAT ??3CObject@@SAXPEAX@Z _TEXT SEGMENT p$ = 48 ??3CObject@@SAXPEAX@Z PROC ; CObject::operator delete, COMDAT ; 112 : { ::operator delete(p); } $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H 00009 48 8b 4c 24 30 mov rcx, QWORD PTR p$[rsp] 0000e e8 00 00 00 00 call ??3@YAXPEAX@Z ; operator delete 00013 48 83 c4 28 add rsp, 40 ; 00000028H 00017 c3 ret 0 ??3CObject@@SAXPEAX@Z ENDP ; CObject::operator delete _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.inl ; COMDAT ??2CObject@@SAPEAX_K@Z _TEXT SEGMENT nSize$ = 48 ??2CObject@@SAPEAX_K@Z PROC ; CObject::operator new, COMDAT ; 116 : { return ::operator new(nSize); } $LN3: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 48 83 ec 28 sub rsp, 40 ; 00000028H 00009 48 8b 4c 24 30 mov rcx, QWORD PTR nSize$[rsp] 0000e e8 00 00 00 00 call ??2@YAPEAX_K@Z ; operator new 00013 48 83 c4 28 add rsp, 40 ; 00000028H 00017 c3 ret 0 ??2CObject@@SAPEAX_K@Z ENDP ; CObject::operator new _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.h ; COMDAT ?AfxCrtErrorCheck@@YAHH@Z _TEXT SEGMENT tv64 = 32 error$ = 64 ?AfxCrtErrorCheck@@YAHH@Z PROC ; AfxCrtErrorCheck, COMDAT ; 506 : { $LN11: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 48 83 ec 38 sub rsp, 56 ; 00000038H ; 507 : switch(error) 00008 8b 44 24 40 mov eax, DWORD PTR error$[rsp] 0000c 89 44 24 20 mov DWORD PTR tv64[rsp], eax 00010 83 7c 24 20 00 cmp DWORD PTR tv64[rsp], 0 00015 74 2c je SHORT $LN8@AfxCrtErro 00017 83 7c 24 20 0c cmp DWORD PTR tv64[rsp], 12 0001c 74 17 je SHORT $LN4@AfxCrtErro 0001e 83 7c 24 20 16 cmp DWORD PTR tv64[rsp], 22 00023 74 17 je SHORT $LN5@AfxCrtErro 00025 83 7c 24 20 22 cmp DWORD PTR tv64[rsp], 34 ; 00000022H 0002a 74 10 je SHORT $LN6@AfxCrtErro 0002c 83 7c 24 20 50 cmp DWORD PTR tv64[rsp], 80 ; 00000050H 00031 74 10 je SHORT $LN7@AfxCrtErro 00033 eb 10 jmp SHORT $LN9@AfxCrtErro $LN4@AfxCrtErro: ; 508 : { ; 509 : case ENOMEM: ; 510 : AfxThrowMemoryException(); 00035 e8 00 00 00 00 call ?AfxThrowMemoryException@@YAXXZ ; AfxThrowMemoryException ; 511 : break; 0003a eb 0e jmp SHORT $LN2@AfxCrtErro $LN5@AfxCrtErro: $LN6@AfxCrtErro: ; 512 : case EINVAL: ; 513 : case ERANGE: ; 514 : AfxThrowInvalidArgException(); 0003c e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException ; 515 : break; 00041 eb 07 jmp SHORT $LN2@AfxCrtErro $LN7@AfxCrtErro: $LN8@AfxCrtErro: ; 516 : case STRUNCATE: ; 517 : case 0: ; 518 : break; 00043 eb 05 jmp SHORT $LN2@AfxCrtErro $LN9@AfxCrtErro: ; 519 : default: ; 520 : AfxThrowInvalidArgException(); 00045 e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YAXXZ ; AfxThrowInvalidArgException $LN2@AfxCrtErro: ; 521 : break; ; 522 : } ; 523 : return error; 0004a 8b 44 24 40 mov eax, DWORD PTR error$[rsp] $LN10@AfxCrtErro: ; 524 : } 0004e 48 83 c4 38 add rsp, 56 ; 00000038H 00052 c3 ret 0 ?AfxCrtErrorCheck@@YAHH@Z ENDP ; AfxCrtErrorCheck _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared\winerror.h ; COMDAT HRESULT_FROM_WIN32 _TEXT SEGMENT tv68 = 0 x$ = 32 HRESULT_FROM_WIN32 PROC ; COMDAT ; 29097: FORCEINLINE _Translates_Win32_to_HRESULT_(x) HRESULT HRESULT_FROM_WIN32(unsigned long x) { return (HRESULT)(x) <= 0 ? (HRESULT)(x) : (HRESULT) (((x) & 0x0000FFFF) | (FACILITY_WIN32 << 16) | 0x80000000);} $LN5: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 48 83 ec 18 sub rsp, 24 00008 83 7c 24 20 00 cmp DWORD PTR x$[rsp], 0 0000d 7f 09 jg SHORT $LN3@HRESULT_FR 0000f 8b 44 24 20 mov eax, DWORD PTR x$[rsp] 00013 89 04 24 mov DWORD PTR tv68[rsp], eax 00016 eb 15 jmp SHORT $LN4@HRESULT_FR $LN3@HRESULT_FR: 00018 8b 44 24 20 mov eax, DWORD PTR x$[rsp] 0001c 25 ff ff 00 00 and eax, 65535 ; 0000ffffH 00021 0d 00 00 07 00 or eax, 458752 ; 00070000H 00026 0f ba e8 1f bts eax, 31 0002a 89 04 24 mov DWORD PTR tv68[rsp], eax $LN4@HRESULT_FR: 0002d 8b 04 24 mov eax, DWORD PTR tv68[rsp] 00030 48 83 c4 18 add rsp, 24 00034 c3 ret 0 HRESULT_FROM_WIN32 ENDP _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h ; COMDAT memmove_s _TEXT SEGMENT tv66 = 32 tv70 = 36 tv74 = 40 _Expr_val$1 = 44 _Expr_val$2 = 48 _Expr_val$3 = 52 _Destination$ = 80 _DestinationSize$ = 88 _Source$ = 96 _SourceSize$ = 104 memmove_s PROC ; COMDAT ; 73 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 48 sub rsp, 72 ; 00000048H ; 74 : if (_SourceSize == 0) 00018 48 83 7c 24 68 00 cmp QWORD PTR _SourceSize$[rsp], 0 0001e 75 07 jne SHORT $LN2@memmove_s ; 75 : { ; 76 : return 0; 00020 33 c0 xor eax, eax 00022 e9 dd 00 00 00 jmp $LN1@memmove_s $LN2@memmove_s: ; 77 : } ; 78 : ; 79 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL); 00027 48 83 7c 24 50 00 cmp QWORD PTR _Destination$[rsp], 0 0002d 74 0a je SHORT $LN7@memmove_s 0002f c7 44 24 20 01 00 00 00 mov DWORD PTR tv66[rsp], 1 00037 eb 08 jmp SHORT $LN8@memmove_s $LN7@memmove_s: 00039 c7 44 24 20 00 00 00 00 mov DWORD PTR tv66[rsp], 0 $LN8@memmove_s: 00041 8b 44 24 20 mov eax, DWORD PTR tv66[rsp] 00045 89 44 24 2c mov DWORD PTR _Expr_val$1[rsp], eax 00049 83 7c 24 2c 00 cmp DWORD PTR _Expr_val$1[rsp], 0 0004e 75 1a jne SHORT $LN3@memmove_s 00050 e8 00 00 00 00 call _errno 00055 c7 00 16 00 00 00 mov DWORD PTR [rax], 22 0005b e8 00 00 00 00 call _invalid_parameter_noinfo 00060 b8 16 00 00 00 mov eax, 22 00065 e9 9a 00 00 00 jmp $LN1@memmove_s $LN3@memmove_s: ; 80 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL); 0006a 48 83 7c 24 60 00 cmp QWORD PTR _Source$[rsp], 0 00070 74 0a je SHORT $LN9@memmove_s 00072 c7 44 24 24 01 00 00 00 mov DWORD PTR tv70[rsp], 1 0007a eb 08 jmp SHORT $LN10@memmove_s $LN9@memmove_s: 0007c c7 44 24 24 00 00 00 00 mov DWORD PTR tv70[rsp], 0 $LN10@memmove_s: 00084 8b 44 24 24 mov eax, DWORD PTR tv70[rsp] 00088 89 44 24 30 mov DWORD PTR _Expr_val$2[rsp], eax 0008c 83 7c 24 30 00 cmp DWORD PTR _Expr_val$2[rsp], 0 00091 75 17 jne SHORT $LN4@memmove_s 00093 e8 00 00 00 00 call _errno 00098 c7 00 16 00 00 00 mov DWORD PTR [rax], 22 0009e e8 00 00 00 00 call _invalid_parameter_noinfo 000a3 b8 16 00 00 00 mov eax, 22 000a8 eb 5a jmp SHORT $LN1@memmove_s $LN4@memmove_s: ; 81 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE); 000aa 48 8b 44 24 68 mov rax, QWORD PTR _SourceSize$[rsp] 000af 48 39 44 24 58 cmp QWORD PTR _DestinationSize$[rsp], rax 000b4 72 0a jb SHORT $LN11@memmove_s 000b6 c7 44 24 28 01 00 00 00 mov DWORD PTR tv74[rsp], 1 000be eb 08 jmp SHORT $LN12@memmove_s $LN11@memmove_s: 000c0 c7 44 24 28 00 00 00 00 mov DWORD PTR tv74[rsp], 0 $LN12@memmove_s: 000c8 8b 44 24 28 mov eax, DWORD PTR tv74[rsp] 000cc 89 44 24 34 mov DWORD PTR _Expr_val$3[rsp], eax 000d0 83 7c 24 34 00 cmp DWORD PTR _Expr_val$3[rsp], 0 000d5 75 17 jne SHORT $LN5@memmove_s 000d7 e8 00 00 00 00 call _errno 000dc c7 00 22 00 00 00 mov DWORD PTR [rax], 34 ; 00000022H 000e2 e8 00 00 00 00 call _invalid_parameter_noinfo 000e7 b8 22 00 00 00 mov eax, 34 ; 00000022H 000ec eb 16 jmp SHORT $LN1@memmove_s $LN5@memmove_s: ; 82 : ; 83 : memmove(_Destination, _Source, _SourceSize); 000ee 4c 8b 44 24 68 mov r8, QWORD PTR _SourceSize$[rsp] 000f3 48 8b 54 24 60 mov rdx, QWORD PTR _Source$[rsp] 000f8 48 8b 4c 24 50 mov rcx, QWORD PTR _Destination$[rsp] 000fd e8 00 00 00 00 call memmove ; 84 : return 0; 00102 33 c0 xor eax, eax $LN1@memmove_s: ; 85 : } 00104 48 83 c4 48 add rsp, 72 ; 00000048H 00108 c3 ret 0 memmove_s ENDP _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h ; COMDAT memcpy_s _TEXT SEGMENT tv66 = 32 tv75 = 36 tv79 = 40 _Expr_val$1 = 44 _Expr_val$2 = 48 _Expr_val$3 = 52 _Destination$ = 80 _DestinationSize$ = 88 _Source$ = 96 _SourceSize$ = 104 memcpy_s PROC ; COMDAT ; 45 : { 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 48 83 ec 48 sub rsp, 72 ; 00000048H ; 46 : if (_SourceSize == 0) 00018 48 83 7c 24 68 00 cmp QWORD PTR _SourceSize$[rsp], 0 0001e 75 07 jne SHORT $LN2@memcpy_s ; 47 : { ; 48 : return 0; 00020 33 c0 xor eax, eax 00022 e9 0d 01 00 00 jmp $LN1@memcpy_s $LN2@memcpy_s: ; 49 : } ; 50 : ; 51 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL); 00027 48 83 7c 24 50 00 cmp QWORD PTR _Destination$[rsp], 0 0002d 74 0a je SHORT $LN9@memcpy_s 0002f c7 44 24 20 01 00 00 00 mov DWORD PTR tv66[rsp], 1 00037 eb 08 jmp SHORT $LN10@memcpy_s $LN9@memcpy_s: 00039 c7 44 24 20 00 00 00 00 mov DWORD PTR tv66[rsp], 0 $LN10@memcpy_s: 00041 8b 44 24 20 mov eax, DWORD PTR tv66[rsp] 00045 89 44 24 2c mov DWORD PTR _Expr_val$1[rsp], eax 00049 83 7c 24 2c 00 cmp DWORD PTR _Expr_val$1[rsp], 0 0004e 75 1a jne SHORT $LN3@memcpy_s 00050 e8 00 00 00 00 call _errno 00055 c7 00 16 00 00 00 mov DWORD PTR [rax], 22 0005b e8 00 00 00 00 call _invalid_parameter_noinfo 00060 b8 16 00 00 00 mov eax, 22 00065 e9 ca 00 00 00 jmp $LN1@memcpy_s $LN3@memcpy_s: ; 52 : if (_Source == NULL || _DestinationSize < _SourceSize) 0006a 48 83 7c 24 60 00 cmp QWORD PTR _Source$[rsp], 0 00070 74 10 je SHORT $LN5@memcpy_s 00072 48 8b 44 24 68 mov rax, QWORD PTR _SourceSize$[rsp] 00077 48 39 44 24 58 cmp QWORD PTR _DestinationSize$[rsp], rax 0007c 0f 83 9c 00 00 00 jae $LN4@memcpy_s $LN5@memcpy_s: ; 53 : { ; 54 : memset(_Destination, 0, _DestinationSize); 00082 4c 8b 44 24 58 mov r8, QWORD PTR _DestinationSize$[rsp] 00087 33 d2 xor edx, edx 00089 48 8b 4c 24 50 mov rcx, QWORD PTR _Destination$[rsp] 0008e e8 00 00 00 00 call memset ; 55 : ; 56 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL); 00093 48 83 7c 24 60 00 cmp QWORD PTR _Source$[rsp], 0 00099 74 0a je SHORT $LN11@memcpy_s 0009b c7 44 24 24 01 00 00 00 mov DWORD PTR tv75[rsp], 1 000a3 eb 08 jmp SHORT $LN12@memcpy_s $LN11@memcpy_s: 000a5 c7 44 24 24 00 00 00 00 mov DWORD PTR tv75[rsp], 0 $LN12@memcpy_s: 000ad 8b 44 24 24 mov eax, DWORD PTR tv75[rsp] 000b1 89 44 24 30 mov DWORD PTR _Expr_val$2[rsp], eax 000b5 83 7c 24 30 00 cmp DWORD PTR _Expr_val$2[rsp], 0 000ba 75 17 jne SHORT $LN6@memcpy_s 000bc e8 00 00 00 00 call _errno 000c1 c7 00 16 00 00 00 mov DWORD PTR [rax], 22 000c7 e8 00 00 00 00 call _invalid_parameter_noinfo 000cc b8 16 00 00 00 mov eax, 22 000d1 eb 61 jmp SHORT $LN1@memcpy_s $LN6@memcpy_s: ; 57 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE); 000d3 48 8b 44 24 68 mov rax, QWORD PTR _SourceSize$[rsp] 000d8 48 39 44 24 58 cmp QWORD PTR _DestinationSize$[rsp], rax 000dd 72 0a jb SHORT $LN13@memcpy_s 000df c7 44 24 28 01 00 00 00 mov DWORD PTR tv79[rsp], 1 000e7 eb 08 jmp SHORT $LN14@memcpy_s $LN13@memcpy_s: 000e9 c7 44 24 28 00 00 00 00 mov DWORD PTR tv79[rsp], 0 $LN14@memcpy_s: 000f1 8b 44 24 28 mov eax, DWORD PTR tv79[rsp] 000f5 89 44 24 34 mov DWORD PTR _Expr_val$3[rsp], eax 000f9 83 7c 24 34 00 cmp DWORD PTR _Expr_val$3[rsp], 0 000fe 75 17 jne SHORT $LN7@memcpy_s 00100 e8 00 00 00 00 call _errno 00105 c7 00 22 00 00 00 mov DWORD PTR [rax], 34 ; 00000022H 0010b e8 00 00 00 00 call _invalid_parameter_noinfo 00110 b8 22 00 00 00 mov eax, 34 ; 00000022H 00115 eb 1d jmp SHORT $LN1@memcpy_s $LN7@memcpy_s: ; 58 : ; 59 : // Unreachable, but required to suppress /analyze warnings: ; 60 : return EINVAL; 00117 b8 16 00 00 00 mov eax, 22 0011c eb 16 jmp SHORT $LN1@memcpy_s $LN4@memcpy_s: ; 61 : } ; 62 : memcpy(_Destination, _Source, _SourceSize); 0011e 4c 8b 44 24 68 mov r8, QWORD PTR _SourceSize$[rsp] 00123 48 8b 54 24 60 mov rdx, QWORD PTR _Source$[rsp] 00128 48 8b 4c 24 50 mov rcx, QWORD PTR _Destination$[rsp] 0012d e8 00 00 00 00 call memcpy ; 63 : return 0; 00132 33 c0 xor eax, eax $LN1@memcpy_s: ; 64 : } 00134 48 83 c4 48 add rsp, 72 ; 00000048H 00138 c3 ret 0 memcpy_s ENDP _TEXT ENDS ; Function compile flags: /Odtp ; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_stdio_config.h ; COMDAT __local_stdio_printf_options _TEXT SEGMENT __local_stdio_printf_options PROC ; COMDAT ; 91 : static unsigned __int64 _OptionsStorage; ; 92 : return &_OptionsStorage; 00000 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage ; 93 : } 00007 c3 ret 0 __local_stdio_printf_options ENDP _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z _TEXT SEGMENT __formal$ = 8 __formal$ = 16 __formal$ = 24 ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT 00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f c3 ret 0 ?__empty_global_delete@@YAXPEAX_KW4align_val_t@std@@@Z ENDP ; __empty_global_delete _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z _TEXT SEGMENT __formal$ = 8 __formal$ = 16 ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a c3 ret 0 ?__empty_global_delete@@YAXPEAXW4align_val_t@std@@@Z ENDP ; __empty_global_delete _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?__empty_global_delete@@YAXPEAX_K@Z _TEXT SEGMENT __formal$ = 8 __formal$ = 16 ?__empty_global_delete@@YAXPEAX_K@Z PROC ; __empty_global_delete, COMDAT 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a c3 ret 0 ?__empty_global_delete@@YAXPEAX_K@Z ENDP ; __empty_global_delete _TEXT ENDS ; Function compile flags: /Odtp ; File D:\Works\Corpsms_2010\public\CSpreadSheet\SpreadSheet.cpp ; COMDAT ?__empty_global_delete@@YAXPEAX@Z _TEXT SEGMENT __formal$ = 8 ?__empty_global_delete@@YAXPEAX@Z PROC ; __empty_global_delete, COMDAT 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 c3 ret 0 ?__empty_global_delete@@YAXPEAX@Z ENDP ; __empty_global_delete _TEXT ENDS END