8878 lines
302 KiB
Plaintext
8878 lines
302 KiB
Plaintext
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.34.31933.0
|
||
|
||
TITLE D:\Works\Corpsms_2010\SmsCenter\Release_Unicode\Des.obj
|
||
.686P
|
||
.XMM
|
||
include listing.inc
|
||
.model flat
|
||
|
||
INCLUDELIB LIBCMT
|
||
INCLUDELIB OLDNAMES
|
||
|
||
PUBLIC ?__empty_global_delete@@YAXPAX@Z ; __empty_global_delete
|
||
PUBLIC ?__empty_global_delete@@YAXPAXI@Z ; __empty_global_delete
|
||
PUBLIC ?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z ; __empty_global_delete
|
||
PUBLIC ?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z ; __empty_global_delete
|
||
PUBLIC ___local_stdio_printf_options
|
||
PUBLIC __vsnprintf_l
|
||
PUBLIC __vsprintf_l
|
||
PUBLIC _sprintf
|
||
PUBLIC ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
|
||
PUBLIC ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
|
||
PUBLIC ?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z ; ATL::Checked::wmemcpy_s
|
||
PUBLIC ?AtlStrLen@ATL@@YAHPB_W@Z ; ATL::AtlStrLen
|
||
PUBLIC ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
|
||
PUBLIC ?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
|
||
PUBLIC ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
|
||
PUBLIC ?IsLocked@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsLocked
|
||
PUBLIC ?IsShared@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsShared
|
||
PUBLIC ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
|
||
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
|
||
PUBLIC ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
|
||
PUBLIC ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
|
||
PUBLIC ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
|
||
PUBLIC ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
|
||
PUBLIC ??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
|
||
PUBLIC ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
|
||
PUBLIC ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
|
||
PUBLIC ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
|
||
PUBLIC ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
|
||
PUBLIC ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
|
||
PUBLIC ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
|
||
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
|
||
PUBLIC ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
|
||
PUBLIC ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
|
||
PUBLIC ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
|
||
PUBLIC ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
|
||
PUBLIC ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
|
||
PUBLIC ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
|
||
PUBLIC ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
PUBLIC ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
|
||
PUBLIC ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
|
||
PUBLIC ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
|
||
PUBLIC ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
|
||
PUBLIC ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
PUBLIC ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
PUBLIC ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
|
||
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
|
||
PUBLIC ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
|
||
PUBLIC ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
|
||
PUBLIC ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
|
||
PUBLIC ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
|
||
PUBLIC ?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z ; CDes::Encrypt
|
||
PUBLIC ?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z ; CDes::Decrypt
|
||
PUBLIC ??0CDes@@QAE@XZ ; CDes::CDes
|
||
PUBLIC ??1CDes@@UAE@XZ ; CDes::~CDes
|
||
PUBLIC ?AsciiToHex@CDes@@IAEXPAD0J@Z ; CDes::AsciiToHex
|
||
PUBLIC ?CharHex@CDes@@IAEJD@Z ; CDes::CharHex
|
||
PUBLIC ?HexToAscii@CDes@@IAEXPAD0@Z ; CDes::HexToAscii
|
||
PUBLIC ?Des_Go@CDes@@IAE_NPAD0JPBDH_N@Z ; CDes::Des_Go
|
||
PUBLIC ?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z ; CDes::DES
|
||
PUBLIC ?SetKey@CDes@@IAEXPBDH@Z ; CDes::SetKey
|
||
PUBLIC ?SetSubKey@CDes@@IAEXPAY1BA@DA@_NQBD@Z ; CDes::SetSubKey
|
||
PUBLIC ?F_func@CDes@@IAEXQA_NQB_N@Z ; CDes::F_func
|
||
PUBLIC ?S_func@CDes@@IAEXQA_NQB_N@Z ; CDes::S_func
|
||
PUBLIC ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
PUBLIC ?Xor@CDes@@IAEXPA_NPB_NH@Z ; CDes::Xor
|
||
PUBLIC ?RotateL@CDes@@IAEXPA_NHH@Z ; CDes::RotateL
|
||
PUBLIC ?ByteToBit@CDes@@IAEXPA_NPBDH@Z ; CDes::ByteToBit
|
||
PUBLIC ?BitToByte@CDes@@IAEXPADPB_NH@Z ; CDes::BitToByte
|
||
PUBLIC ??_GCDes@@UAEPAXI@Z ; CDes::`scalar deleting destructor'
|
||
PUBLIC ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
||
PUBLIC ??_7CDes@@6B@ ; CDes::`vftable'
|
||
PUBLIC ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@ ; `string'
|
||
PUBLIC ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@ ; `string'
|
||
PUBLIC ??_C@_13JKNELIBG@?$AAT@ ; `string'
|
||
PUBLIC ?__LINE__Var@?0??Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA ; `CDes::Encrypt'::`1'::__LINE__Var
|
||
PUBLIC ??_C@_07CEMOCOEI@Encrypt@ ; `string'
|
||
PUBLIC ??_C@_0CJ@CDDOEPDI@D?3?2Works?2Corpsms_2010?2public?2de@ ; `string'
|
||
PUBLIC ?__LINE__Var@?0??Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA ; `CDes::Decrypt'::`1'::__LINE__Var
|
||
PUBLIC ??_C@_07OKGDHKCM@Decrypt@ ; `string'
|
||
PUBLIC ??_C@_04JFFKLGJF@?$CF02X@ ; `string'
|
||
PUBLIC ??_R4CDes@@6B@ ; CDes::`RTTI Complete Object Locator'
|
||
PUBLIC ??_R0?AVCDes@@@8 ; CDes `RTTI Type Descriptor'
|
||
PUBLIC ??_R3CDes@@8 ; CDes::`RTTI Class Hierarchy Descriptor'
|
||
PUBLIC ??_R2CDes@@8 ; CDes::`RTTI Base Class Array'
|
||
PUBLIC ??_R1A@?0A@EA@CDes@@8 ; CDes::`RTTI Base Class Descriptor at (0,-1,0,64)'
|
||
EXTRN ??3@YAXPAXI@Z:PROC ; operator delete
|
||
EXTRN ___report_rangecheckfailure:PROC
|
||
EXTRN __invalid_parameter_noinfo:PROC
|
||
EXTRN __errno:PROC
|
||
EXTRN ___stdio_common_vsprintf:PROC
|
||
EXTRN _memcpy:PROC
|
||
EXTRN _memmove:PROC
|
||
EXTRN _memset:PROC
|
||
EXTRN _wcslen:PROC
|
||
EXTRN _strlen:PROC
|
||
EXTRN _wmemcpy_s:PROC
|
||
EXTRN __imp__LoadResource@8:PROC
|
||
EXTRN __imp__LockResource@4:PROC
|
||
EXTRN __imp__SizeofResource@8:PROC
|
||
EXTRN __imp__FindResourceW@12:PROC
|
||
EXTRN ?AfxThrowMemoryException@@YGXXZ:PROC ; AfxThrowMemoryException
|
||
EXTRN ?AfxThrowInvalidArgException@@YGXXZ:PROC ; AfxThrowInvalidArgException
|
||
EXTRN ?AfxThrowOleException@@YGXJ@Z:PROC ; AfxThrowOleException
|
||
EXTRN ?AfxFindStringResourceHandle@@YGPAUHINSTANCE__@@I@Z:PROC ; AfxFindStringResourceHandle
|
||
EXTRN ?AfxGetStringManager@@YGPAUIAtlStringMgr@ATL@@XZ:PROC ; AfxGetStringManager
|
||
EXTRN ??0CSAStatusLog@@QAE@XZ:PROC ; CSAStatusLog::CSAStatusLog
|
||
EXTRN ??1CSAStatusLog@@QAE@XZ:PROC ; CSAStatusLog::~CSAStatusLog
|
||
EXTRN ?Init@CSAStatusLog@@QAEXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z:PROC ; CSAStatusLog::Init
|
||
EXTRN ?LogError@CSAStatusLog@@QAEHPB_WPBD1J@Z:PROC ; CSAStatusLog::LogError
|
||
EXTRN ??_ECDes@@UAEPAXI@Z:PROC ; CDes::`vector deleting destructor'
|
||
EXTRN @__security_check_cookie@4:PROC
|
||
EXTRN ___CxxFrameHandler3:PROC
|
||
EXTRN __chkstk:PROC
|
||
EXTRN _memset:PROC
|
||
EXTRN ??_7type_info@@6B@:QWORD ; type_info::`vftable'
|
||
EXTRN ___security_cookie:DWORD
|
||
; COMDAT ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA
|
||
_BSS SEGMENT
|
||
?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA DQ 01H DUP (?) ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
||
_BSS ENDS
|
||
; COMDAT ??_R1A@?0A@EA@CDes@@8
|
||
rdata$r SEGMENT
|
||
??_R1A@?0A@EA@CDes@@8 DD FLAT:??_R0?AVCDes@@@8 ; CDes::`RTTI Base Class Descriptor at (0,-1,0,64)'
|
||
DD 00H
|
||
DD 00H
|
||
DD 0ffffffffH
|
||
DD 00H
|
||
DD 040H
|
||
DD FLAT:??_R3CDes@@8
|
||
rdata$r ENDS
|
||
; COMDAT ??_R2CDes@@8
|
||
rdata$r SEGMENT
|
||
??_R2CDes@@8 DD FLAT:??_R1A@?0A@EA@CDes@@8 ; CDes::`RTTI Base Class Array'
|
||
rdata$r ENDS
|
||
; COMDAT ??_R3CDes@@8
|
||
rdata$r SEGMENT
|
||
??_R3CDes@@8 DD 00H ; CDes::`RTTI Class Hierarchy Descriptor'
|
||
DD 00H
|
||
DD 01H
|
||
DD FLAT:??_R2CDes@@8
|
||
rdata$r ENDS
|
||
; COMDAT ??_R0?AVCDes@@@8
|
||
data$rs SEGMENT
|
||
??_R0?AVCDes@@@8 DD FLAT:??_7type_info@@6B@ ; CDes `RTTI Type Descriptor'
|
||
DD 00H
|
||
DB '.?AVCDes@@', 00H
|
||
data$rs ENDS
|
||
; COMDAT ??_R4CDes@@6B@
|
||
rdata$r SEGMENT
|
||
??_R4CDes@@6B@ DD 00H ; CDes::`RTTI Complete Object Locator'
|
||
DD 00H
|
||
DD 00H
|
||
DD FLAT:??_R0?AVCDes@@@8
|
||
DD FLAT:??_R3CDes@@8
|
||
rdata$r ENDS
|
||
; COMDAT ??_C@_04JFFKLGJF@?$CF02X@
|
||
CONST SEGMENT
|
||
??_C@_04JFFKLGJF@?$CF02X@ DB '%02X', 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ??_C@_07OKGDHKCM@Decrypt@
|
||
CONST SEGMENT
|
||
??_C@_07OKGDHKCM@Decrypt@ DB 'Decrypt', 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ?__LINE__Var@?0??Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA
|
||
_DATA SEGMENT
|
||
?__LINE__Var@?0??Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA DD 0acH ; `CDes::Decrypt'::`1'::__LINE__Var
|
||
_DATA ENDS
|
||
; COMDAT ??_C@_0CJ@CDDOEPDI@D?3?2Works?2Corpsms_2010?2public?2de@
|
||
CONST SEGMENT
|
||
??_C@_0CJ@CDDOEPDI@D?3?2Works?2Corpsms_2010?2public?2de@ DB 'D:\Works\Cor'
|
||
DB 'psms_2010\public\des\Des.cpp', 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ??_C@_07CEMOCOEI@Encrypt@
|
||
CONST SEGMENT
|
||
??_C@_07CEMOCOEI@Encrypt@ DB 'Encrypt', 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ?__LINE__Var@?0??Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA
|
||
_DATA SEGMENT
|
||
?__LINE__Var@?0??Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA DD 08cH ; `CDes::Encrypt'::`1'::__LINE__Var
|
||
_DATA ENDS
|
||
; COMDAT ??_C@_13JKNELIBG@?$AAT@
|
||
CONST SEGMENT
|
||
??_C@_13JKNELIBG@?$AAT@ DB 'T', 00H, 00H, 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
|
||
CONST SEGMENT
|
||
??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@ DB 'L', 00H, 'o', 00H, 'g', 00H, 00H, 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
|
||
CONST SEGMENT
|
||
??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@ DB 'A', 00H, 'p'
|
||
DB 00H, 'p', 00H, 'E', 00H, 'r', 00H, 'r', 00H, 'o', 00H, 'r', 00H
|
||
DB 00H, 00H ; `string'
|
||
CONST ENDS
|
||
; COMDAT ??_7CDes@@6B@
|
||
CONST SEGMENT
|
||
??_7CDes@@6B@ DD FLAT:??_R4CDes@@6B@ ; CDes::`vftable'
|
||
DD FLAT:??_ECDes@@UAEPAXI@Z
|
||
CONST ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 0dH
|
||
DB 071H
|
||
voltbl ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 010H
|
||
DB 0d8H
|
||
voltbl ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DW 010H
|
||
DW 0162H
|
||
voltbl ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 02fH
|
||
DB 03cH
|
||
voltbl ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DW 023H
|
||
DW 019eH
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__catchsym$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$5 DD 00H
|
||
DD 00H
|
||
DD 00H
|
||
DD FLAT:__catch$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$0
|
||
__tryblocktable$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z DD 00H
|
||
DD 00H
|
||
DD 04H
|
||
DD 01H
|
||
DD FLAT:__catchsym$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$5
|
||
__ehfuncinfo$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z DD 019930522H
|
||
DD 05H
|
||
DD FLAT:__unwindtable$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
DD 01H
|
||
DD FLAT:__tryblocktable$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 00H
|
||
__unwindtable$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z DD 0ffffffffH
|
||
DD 00H
|
||
DD 0ffffffffH
|
||
DD 00H
|
||
DD 01H
|
||
DD FLAT:__unwindfunclet$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$2
|
||
DD 02H
|
||
DD FLAT:__unwindfunclet$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$3
|
||
DD 03H
|
||
DD FLAT:__unwindfunclet$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$4
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 02fH
|
||
DB 03cH
|
||
voltbl ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DW 023H
|
||
DW 01feH
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__catchsym$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$5 DD 00H
|
||
DD 00H
|
||
DD 00H
|
||
DD FLAT:__catch$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$0
|
||
__tryblocktable$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z DD 00H
|
||
DD 00H
|
||
DD 04H
|
||
DD 01H
|
||
DD FLAT:__catchsym$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$5
|
||
__ehfuncinfo$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z DD 019930522H
|
||
DD 05H
|
||
DD FLAT:__unwindtable$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
DD 01H
|
||
DD FLAT:__tryblocktable$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 00H
|
||
__unwindtable$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z DD 0ffffffffH
|
||
DD 00H
|
||
DD 0ffffffffH
|
||
DD 00H
|
||
DD 01H
|
||
DD FLAT:__unwindfunclet$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$2
|
||
DD 02H
|
||
DD FLAT:__unwindfunclet$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$3
|
||
DD 03H
|
||
DD FLAT:__unwindfunclet$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$4
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 016H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__unwindtable$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ DD 0ffffffffH
|
||
DD FLAT:__unwindfunclet$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ$0
|
||
__ehfuncinfo$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ DD 019930522H
|
||
DD 01H
|
||
DD FLAT:__unwindtable$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 016H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z DD 0ffffffffH
|
||
DD FLAT:__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z$0
|
||
__ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z DD 019930522H
|
||
DD 01H
|
||
DD FLAT:__unwindtable$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 00H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; COMDAT voltbl
|
||
voltbl SEGMENT
|
||
_volmd DB 09H
|
||
voltbl ENDS
|
||
; COMDAT xdata$x
|
||
xdata$x SEGMENT
|
||
__ehfuncinfo$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z DD 019930522H
|
||
DD 00H
|
||
DD 00H
|
||
DD 2 DUP(00H)
|
||
DD 2 DUP(00H)
|
||
DD 00H
|
||
DD 04H
|
||
xdata$x ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; COMDAT ??_GCDes@@UAEPAXI@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
___flags$ = 8 ; size = 4
|
||
??_GCDes@@UAEPAXI@Z PROC ; CDes::`scalar deleting destructor', COMDAT
|
||
; _this$ = ecx
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ??1CDes@@UAE@XZ ; CDes::~CDes
|
||
00014 8b 45 08 mov eax, DWORD PTR ___flags$[ebp]
|
||
00017 83 e0 01 and eax, 1
|
||
0001a 74 11 je SHORT $LN2@scalar
|
||
0001c 68 60 0a 00 00 push 2656 ; 00000a60H
|
||
00021 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00024 50 push eax
|
||
00025 e8 00 00 00 00 call ??3@YAXPAXI@Z ; operator delete
|
||
0002a 83 c4 08 add esp, 8
|
||
$LN2@scalar:
|
||
0002d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00030 5f pop edi
|
||
00031 5e pop esi
|
||
00032 5b pop ebx
|
||
00033 8b e5 mov esp, ebp
|
||
00035 5d pop ebp
|
||
00036 c2 04 00 ret 4
|
||
??_GCDes@@UAEPAXI@Z ENDP ; CDes::`scalar deleting destructor'
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?BitToByte@CDes@@IAEXPADPB_NH@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_Out$ = 8 ; size = 4
|
||
_In$ = 12 ; size = 4
|
||
_bits$ = 16 ; size = 4
|
||
?BitToByte@CDes@@IAEXPADPB_NH@Z PROC ; CDes::BitToByte, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 133 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 134 : memset(Out, 0, bits>>3);
|
||
|
||
0000c 8b 45 10 mov eax, DWORD PTR _bits$[ebp]
|
||
0000f c1 f8 03 sar eax, 3
|
||
00012 50 push eax
|
||
00013 6a 00 push 0
|
||
00015 8b 4d 08 mov ecx, DWORD PTR _Out$[ebp]
|
||
00018 51 push ecx
|
||
00019 e8 00 00 00 00 call _memset
|
||
0001e 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 135 : for(int i=0; i<bits; ++i)
|
||
|
||
00021 c7 45 f8 00 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 0
|
||
00028 eb 09 jmp SHORT $LN4@BitToByte
|
||
$LN2@BitToByte:
|
||
0002a 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
0002d 83 c0 01 add eax, 1
|
||
00030 89 45 f8 mov DWORD PTR _i$1[ebp], eax
|
||
$LN4@BitToByte:
|
||
00033 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00036 3b 45 10 cmp eax, DWORD PTR _bits$[ebp]
|
||
00039 7d 2e jge SHORT $LN1@BitToByte
|
||
|
||
; 136 : Out[i>>3] |= In[i]<<(i&7);
|
||
|
||
0003b 8b 45 0c mov eax, DWORD PTR _In$[ebp]
|
||
0003e 03 45 f8 add eax, DWORD PTR _i$1[ebp]
|
||
00041 0f b6 10 movzx edx, BYTE PTR [eax]
|
||
00044 8b 4d f8 mov ecx, DWORD PTR _i$1[ebp]
|
||
00047 83 e1 07 and ecx, 7
|
||
0004a d3 e2 shl edx, cl
|
||
0004c 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
0004f c1 f8 03 sar eax, 3
|
||
00052 8b 4d 08 mov ecx, DWORD PTR _Out$[ebp]
|
||
00055 0f be 04 01 movsx eax, BYTE PTR [ecx+eax]
|
||
00059 0b c2 or eax, edx
|
||
0005b 8b 4d f8 mov ecx, DWORD PTR _i$1[ebp]
|
||
0005e c1 f9 03 sar ecx, 3
|
||
00061 8b 55 08 mov edx, DWORD PTR _Out$[ebp]
|
||
00064 88 04 0a mov BYTE PTR [edx+ecx], al
|
||
00067 eb c1 jmp SHORT $LN2@BitToByte
|
||
$LN1@BitToByte:
|
||
|
||
; 137 : }
|
||
|
||
00069 5f pop edi
|
||
0006a 5e pop esi
|
||
0006b 5b pop ebx
|
||
0006c 8b e5 mov esp, ebp
|
||
0006e 5d pop ebp
|
||
0006f c2 0c 00 ret 12 ; 0000000cH
|
||
?BitToByte@CDes@@IAEXPADPB_NH@Z ENDP ; CDes::BitToByte
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?ByteToBit@CDes@@IAEXPA_NPBDH@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_Out$ = 8 ; size = 4
|
||
_In$ = 12 ; size = 4
|
||
_bits$ = 16 ; size = 4
|
||
?ByteToBit@CDes@@IAEXPA_NPBDH@Z PROC ; CDes::ByteToBit, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 128 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 129 : for(int i=0; i<bits; ++i)
|
||
|
||
0000c c7 45 f8 00 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 0
|
||
00013 eb 09 jmp SHORT $LN4@ByteToBit
|
||
$LN2@ByteToBit:
|
||
00015 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00018 83 c0 01 add eax, 1
|
||
0001b 89 45 f8 mov DWORD PTR _i$1[ebp], eax
|
||
$LN4@ByteToBit:
|
||
0001e 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00021 3b 45 10 cmp eax, DWORD PTR _bits$[ebp]
|
||
00024 7d 22 jge SHORT $LN1@ByteToBit
|
||
|
||
; 130 : Out[i] = (In[i>>3]>>(i&7)) & 1;
|
||
|
||
00026 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00029 c1 f8 03 sar eax, 3
|
||
0002c 8b 4d 0c mov ecx, DWORD PTR _In$[ebp]
|
||
0002f 0f be 14 01 movsx edx, BYTE PTR [ecx+eax]
|
||
00033 8b 4d f8 mov ecx, DWORD PTR _i$1[ebp]
|
||
00036 83 e1 07 and ecx, 7
|
||
00039 d3 fa sar edx, cl
|
||
0003b 83 e2 01 and edx, 1
|
||
0003e 8b 45 08 mov eax, DWORD PTR _Out$[ebp]
|
||
00041 03 45 f8 add eax, DWORD PTR _i$1[ebp]
|
||
00044 88 10 mov BYTE PTR [eax], dl
|
||
00046 eb cd jmp SHORT $LN2@ByteToBit
|
||
$LN1@ByteToBit:
|
||
|
||
; 131 : }
|
||
|
||
00048 5f pop edi
|
||
00049 5e pop esi
|
||
0004a 5b pop ebx
|
||
0004b 8b e5 mov esp, ebp
|
||
0004d 5d pop ebp
|
||
0004e c2 0c 00 ret 12 ; 0000000cH
|
||
?ByteToBit@CDes@@IAEXPA_NPBDH@Z ENDP ; CDes::ByteToBit
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?RotateL@CDes@@IAEXPA_NHH@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_In$ = 8 ; size = 4
|
||
_len$ = 12 ; size = 4
|
||
_loop$ = 16 ; size = 4
|
||
?RotateL@CDes@@IAEXPA_NHH@Z PROC ; CDes::RotateL, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 122 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 123 : memcpy(Tmp, In, loop);
|
||
|
||
0000c 8b 45 10 mov eax, DWORD PTR _loop$[ebp]
|
||
0000f 50 push eax
|
||
00010 8b 4d 08 mov ecx, DWORD PTR _In$[ebp]
|
||
00013 51 push ecx
|
||
00014 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00017 81 c2 4d 09 00
|
||
00 add edx, 2381 ; 0000094dH
|
||
0001d 52 push edx
|
||
0001e e8 00 00 00 00 call _memcpy
|
||
00023 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 124 : memcpy(In, In+loop, len-loop);
|
||
|
||
00026 8b 45 0c mov eax, DWORD PTR _len$[ebp]
|
||
00029 2b 45 10 sub eax, DWORD PTR _loop$[ebp]
|
||
0002c 50 push eax
|
||
0002d 8b 4d 08 mov ecx, DWORD PTR _In$[ebp]
|
||
00030 03 4d 10 add ecx, DWORD PTR _loop$[ebp]
|
||
00033 51 push ecx
|
||
00034 8b 55 08 mov edx, DWORD PTR _In$[ebp]
|
||
00037 52 push edx
|
||
00038 e8 00 00 00 00 call _memcpy
|
||
0003d 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 125 : memcpy(In+len-loop, Tmp, loop);
|
||
|
||
00040 8b 45 10 mov eax, DWORD PTR _loop$[ebp]
|
||
00043 50 push eax
|
||
00044 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00047 81 c1 4d 09 00
|
||
00 add ecx, 2381 ; 0000094dH
|
||
0004d 51 push ecx
|
||
0004e 8b 55 08 mov edx, DWORD PTR _In$[ebp]
|
||
00051 03 55 0c add edx, DWORD PTR _len$[ebp]
|
||
00054 2b 55 10 sub edx, DWORD PTR _loop$[ebp]
|
||
00057 52 push edx
|
||
00058 e8 00 00 00 00 call _memcpy
|
||
0005d 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 126 : }
|
||
|
||
00060 5f pop edi
|
||
00061 5e pop esi
|
||
00062 5b pop ebx
|
||
00063 8b e5 mov esp, ebp
|
||
00065 5d pop ebp
|
||
00066 c2 0c 00 ret 12 ; 0000000cH
|
||
?RotateL@CDes@@IAEXPA_NHH@Z ENDP ; CDes::RotateL
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?Xor@CDes@@IAEXPA_NPB_NH@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_InA$ = 8 ; size = 4
|
||
_InB$ = 12 ; size = 4
|
||
_len$ = 16 ; size = 4
|
||
?Xor@CDes@@IAEXPA_NPB_NH@Z PROC ; CDes::Xor, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 117 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 118 : for(int i=0; i<len; ++i)
|
||
|
||
0000c c7 45 f8 00 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 0
|
||
00013 eb 09 jmp SHORT $LN4@Xor
|
||
$LN2@Xor:
|
||
00015 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00018 83 c0 01 add eax, 1
|
||
0001b 89 45 f8 mov DWORD PTR _i$1[ebp], eax
|
||
$LN4@Xor:
|
||
0001e 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00021 3b 45 10 cmp eax, DWORD PTR _len$[ebp]
|
||
00024 7d 1e jge SHORT $LN1@Xor
|
||
|
||
; 119 : InA[i] ^= InB[i];
|
||
|
||
00026 8b 45 08 mov eax, DWORD PTR _InA$[ebp]
|
||
00029 03 45 f8 add eax, DWORD PTR _i$1[ebp]
|
||
0002c 0f b6 08 movzx ecx, BYTE PTR [eax]
|
||
0002f 8b 55 0c mov edx, DWORD PTR _InB$[ebp]
|
||
00032 03 55 f8 add edx, DWORD PTR _i$1[ebp]
|
||
00035 0f b6 02 movzx eax, BYTE PTR [edx]
|
||
00038 33 c8 xor ecx, eax
|
||
0003a 8b 55 08 mov edx, DWORD PTR _InA$[ebp]
|
||
0003d 03 55 f8 add edx, DWORD PTR _i$1[ebp]
|
||
00040 88 0a mov BYTE PTR [edx], cl
|
||
00042 eb d1 jmp SHORT $LN2@Xor
|
||
$LN1@Xor:
|
||
|
||
; 120 : }
|
||
|
||
00044 5f pop edi
|
||
00045 5e pop esi
|
||
00046 5b pop ebx
|
||
00047 8b e5 mov esp, ebp
|
||
00049 5d pop ebp
|
||
0004a c2 0c 00 ret 12 ; 0000000cH
|
||
?Xor@CDes@@IAEXPA_NPB_NH@Z ENDP ; CDes::Xor
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?Transform@CDes@@IAEXPA_N0PBDH@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_Out$ = 8 ; size = 4
|
||
_In$ = 12 ; size = 4
|
||
_Table$ = 16 ; size = 4
|
||
_len$ = 20 ; size = 4
|
||
?Transform@CDes@@IAEXPA_N0PBDH@Z PROC ; CDes::Transform, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 111 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 112 : for(int i=0; i<len; ++i)
|
||
|
||
0000c c7 45 f8 00 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 0
|
||
00013 eb 09 jmp SHORT $LN4@Transform
|
||
$LN2@Transform:
|
||
00015 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00018 83 c0 01 add eax, 1
|
||
0001b 89 45 f8 mov DWORD PTR _i$1[ebp], eax
|
||
$LN4@Transform:
|
||
0001e 8b 45 f8 mov eax, DWORD PTR _i$1[ebp]
|
||
00021 3b 45 14 cmp eax, DWORD PTR _len$[ebp]
|
||
00024 7d 1e jge SHORT $LN3@Transform
|
||
|
||
; 113 : Tmp[i] = In[ Table[i]-1 ];
|
||
|
||
00026 8b 45 10 mov eax, DWORD PTR _Table$[ebp]
|
||
00029 03 45 f8 add eax, DWORD PTR _i$1[ebp]
|
||
0002c 0f be 08 movsx ecx, BYTE PTR [eax]
|
||
0002f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00032 03 55 f8 add edx, DWORD PTR _i$1[ebp]
|
||
00035 8b 45 0c mov eax, DWORD PTR _In$[ebp]
|
||
00038 8a 4c 08 ff mov cl, BYTE PTR [eax+ecx-1]
|
||
0003c 88 8a 4d 09 00
|
||
00 mov BYTE PTR [edx+2381], cl
|
||
00042 eb d1 jmp SHORT $LN2@Transform
|
||
$LN3@Transform:
|
||
|
||
; 114 : memcpy(Out, Tmp, len);
|
||
|
||
00044 8b 45 14 mov eax, DWORD PTR _len$[ebp]
|
||
00047 50 push eax
|
||
00048 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0004b 81 c1 4d 09 00
|
||
00 add ecx, 2381 ; 0000094dH
|
||
00051 51 push ecx
|
||
00052 8b 55 08 mov edx, DWORD PTR _Out$[ebp]
|
||
00055 52 push edx
|
||
00056 e8 00 00 00 00 call _memcpy
|
||
0005b 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 115 : }
|
||
|
||
0005e 5f pop edi
|
||
0005f 5e pop esi
|
||
00060 5b pop ebx
|
||
00061 8b e5 mov esp, ebp
|
||
00063 5d pop ebp
|
||
00064 c2 10 00 ret 16 ; 00000010H
|
||
?Transform@CDes@@IAEXPA_N0PBDH@Z ENDP ; CDes::Transform
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?S_func@CDes@@IAEXQA_NQB_N@Z
|
||
_TEXT SEGMENT
|
||
_k$1 = -7 ; size = 1
|
||
_j$2 = -6 ; size = 1
|
||
_i$3 = -5 ; size = 1
|
||
_this$ = -4 ; size = 4
|
||
_Out$ = 8 ; size = 4
|
||
_In$ = 12 ; size = 4
|
||
?S_func@CDes@@IAEXQA_NQB_N@Z PROC ; CDes::S_func, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 103 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 104 : for(char i=0,j,k; i<8; ++i,In+=6,Out+=4) {
|
||
|
||
0000c c6 45 fb 00 mov BYTE PTR _i$3[ebp], 0
|
||
00010 eb 1a jmp SHORT $LN4@S_func
|
||
$LN2@S_func:
|
||
00012 8a 45 fb mov al, BYTE PTR _i$3[ebp]
|
||
00015 04 01 add al, 1
|
||
00017 88 45 fb mov BYTE PTR _i$3[ebp], al
|
||
0001a 8b 4d 0c mov ecx, DWORD PTR _In$[ebp]
|
||
0001d 83 c1 06 add ecx, 6
|
||
00020 89 4d 0c mov DWORD PTR _In$[ebp], ecx
|
||
00023 8b 55 08 mov edx, DWORD PTR _Out$[ebp]
|
||
00026 83 c2 04 add edx, 4
|
||
00029 89 55 08 mov DWORD PTR _Out$[ebp], edx
|
||
$LN4@S_func:
|
||
0002c 0f be 45 fb movsx eax, BYTE PTR _i$3[ebp]
|
||
00030 83 f8 08 cmp eax, 8
|
||
00033 0f 8d a1 00 00
|
||
00 jge $LN1@S_func
|
||
|
||
; 105 : j = (In[0]<<1) + In[5];
|
||
|
||
00039 b8 01 00 00 00 mov eax, 1
|
||
0003e 6b c8 00 imul ecx, eax, 0
|
||
00041 8b 55 0c mov edx, DWORD PTR _In$[ebp]
|
||
00044 0f b6 04 0a movzx eax, BYTE PTR [edx+ecx]
|
||
00048 b9 01 00 00 00 mov ecx, 1
|
||
0004d 6b d1 05 imul edx, ecx, 5
|
||
00050 8b 4d 0c mov ecx, DWORD PTR _In$[ebp]
|
||
00053 0f b6 14 11 movzx edx, BYTE PTR [ecx+edx]
|
||
00057 8d 04 42 lea eax, DWORD PTR [edx+eax*2]
|
||
0005a 88 45 fa mov BYTE PTR _j$2[ebp], al
|
||
|
||
; 106 : k = (In[1]<<3) + (In[2]<<2) + (In[3]<<1) + In[4];
|
||
|
||
0005d b8 01 00 00 00 mov eax, 1
|
||
00062 c1 e0 00 shl eax, 0
|
||
00065 8b 4d 0c mov ecx, DWORD PTR _In$[ebp]
|
||
00068 0f b6 14 01 movzx edx, BYTE PTR [ecx+eax]
|
||
0006c b8 01 00 00 00 mov eax, 1
|
||
00071 d1 e0 shl eax, 1
|
||
00073 8b 4d 0c mov ecx, DWORD PTR _In$[ebp]
|
||
00076 0f b6 04 01 movzx eax, BYTE PTR [ecx+eax]
|
||
0007a c1 e0 02 shl eax, 2
|
||
0007d 8d 0c d0 lea ecx, DWORD PTR [eax+edx*8]
|
||
00080 ba 01 00 00 00 mov edx, 1
|
||
00085 6b c2 03 imul eax, edx, 3
|
||
00088 8b 55 0c mov edx, DWORD PTR _In$[ebp]
|
||
0008b 0f b6 04 02 movzx eax, BYTE PTR [edx+eax]
|
||
0008f 8d 0c 41 lea ecx, DWORD PTR [ecx+eax*2]
|
||
00092 ba 01 00 00 00 mov edx, 1
|
||
00097 c1 e2 02 shl edx, 2
|
||
0009a 8b 45 0c mov eax, DWORD PTR _In$[ebp]
|
||
0009d 0f b6 14 10 movzx edx, BYTE PTR [eax+edx]
|
||
000a1 03 ca add ecx, edx
|
||
000a3 88 4d f9 mov BYTE PTR _k$1[ebp], cl
|
||
|
||
; 107 : ByteToBit(Out, &S_Box[i][j][k], 4);
|
||
|
||
000a6 6a 04 push 4
|
||
000a8 0f be 45 fb movsx eax, BYTE PTR _i$3[ebp]
|
||
000ac c1 e0 06 shl eax, 6
|
||
000af 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000b2 8d 94 01 4c 01
|
||
00 00 lea edx, DWORD PTR [ecx+eax+332]
|
||
000b9 0f be 45 fa movsx eax, BYTE PTR _j$2[ebp]
|
||
000bd c1 e0 04 shl eax, 4
|
||
000c0 03 d0 add edx, eax
|
||
000c2 0f be 4d f9 movsx ecx, BYTE PTR _k$1[ebp]
|
||
000c6 03 d1 add edx, ecx
|
||
000c8 52 push edx
|
||
000c9 8b 55 08 mov edx, DWORD PTR _Out$[ebp]
|
||
000cc 52 push edx
|
||
000cd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000d0 e8 00 00 00 00 call ?ByteToBit@CDes@@IAEXPA_NPBDH@Z ; CDes::ByteToBit
|
||
|
||
; 108 : }
|
||
|
||
000d5 e9 38 ff ff ff jmp $LN2@S_func
|
||
$LN1@S_func:
|
||
|
||
; 109 : }
|
||
|
||
000da 5f pop edi
|
||
000db 5e pop esi
|
||
000dc 5b pop ebx
|
||
000dd 8b e5 mov esp, ebp
|
||
000df 5d pop ebp
|
||
000e0 c2 08 00 ret 8
|
||
?S_func@CDes@@IAEXQA_NQB_N@Z ENDP ; CDes::S_func
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?F_func@CDes@@IAEXQA_NQB_N@Z
|
||
_TEXT SEGMENT
|
||
_MR$ = -56 ; size = 48
|
||
_this$ = -8 ; size = 4
|
||
__$ArrayPad$ = -4 ; size = 4
|
||
_In$ = 8 ; size = 4
|
||
_Ki$ = 12 ; size = 4
|
||
?F_func@CDes@@IAEXQA_NQB_N@Z PROC ; CDes::F_func, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 95 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 78 sub esp, 120 ; 00000078H
|
||
00006 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0000b 33 c5 xor eax, ebp
|
||
0000d 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
|
||
00010 53 push ebx
|
||
00011 56 push esi
|
||
00012 57 push edi
|
||
00013 89 4d f8 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 96 : bool MR[48];
|
||
; 97 : Transform(MR, In, E_Table, 48);
|
||
|
||
00016 6a 30 push 48 ; 00000030H
|
||
00018 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
0001b 05 84 00 00 00 add eax, 132 ; 00000084H
|
||
00020 50 push eax
|
||
00021 8b 4d 08 mov ecx, DWORD PTR _In$[ebp]
|
||
00024 51 push ecx
|
||
00025 8d 55 c8 lea edx, DWORD PTR _MR$[ebp]
|
||
00028 52 push edx
|
||
00029 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0002c e8 00 00 00 00 call ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
|
||
; 98 : Xor(MR, Ki, 48);
|
||
|
||
00031 6a 30 push 48 ; 00000030H
|
||
00033 8b 45 0c mov eax, DWORD PTR _Ki$[ebp]
|
||
00036 50 push eax
|
||
00037 8d 4d c8 lea ecx, DWORD PTR _MR$[ebp]
|
||
0003a 51 push ecx
|
||
0003b 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0003e e8 00 00 00 00 call ?Xor@CDes@@IAEXPA_NPB_NH@Z ; CDes::Xor
|
||
|
||
; 99 : S_func(In, MR);
|
||
|
||
00043 8d 45 c8 lea eax, DWORD PTR _MR$[ebp]
|
||
00046 50 push eax
|
||
00047 8b 4d 08 mov ecx, DWORD PTR _In$[ebp]
|
||
0004a 51 push ecx
|
||
0004b 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0004e e8 00 00 00 00 call ?S_func@CDes@@IAEXQA_NQB_N@Z ; CDes::S_func
|
||
|
||
; 100 : Transform(In, In, P_Table, 32);
|
||
|
||
00053 6a 20 push 32 ; 00000020H
|
||
00055 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
00058 05 b4 00 00 00 add eax, 180 ; 000000b4H
|
||
0005d 50 push eax
|
||
0005e 8b 4d 08 mov ecx, DWORD PTR _In$[ebp]
|
||
00061 51 push ecx
|
||
00062 8b 55 08 mov edx, DWORD PTR _In$[ebp]
|
||
00065 52 push edx
|
||
00066 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
00069 e8 00 00 00 00 call ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
|
||
; 101 : }
|
||
|
||
0006e 5f pop edi
|
||
0006f 5e pop esi
|
||
00070 5b pop ebx
|
||
00071 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
|
||
00074 33 cd xor ecx, ebp
|
||
00076 e8 00 00 00 00 call @__security_check_cookie@4
|
||
0007b 8b e5 mov esp, ebp
|
||
0007d 5d pop ebp
|
||
0007e c2 08 00 ret 8
|
||
?F_func@CDes@@IAEXQA_NQB_N@Z ENDP ; CDes::F_func
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?SetSubKey@CDes@@IAEXPAY1BA@DA@_NQBD@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -84 ; size = 4
|
||
_KR$ = -80 ; size = 4
|
||
_KL$ = -76 ; size = 4
|
||
_K$ = -72 ; size = 64
|
||
_this$ = -8 ; size = 4
|
||
__$ArrayPad$ = -4 ; size = 4
|
||
_pSubKey$ = 8 ; size = 4
|
||
_Key$ = 12 ; size = 4
|
||
?SetSubKey@CDes@@IAEXPAY1BA@DA@_NQBD@Z PROC ; CDes::SetSubKey, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 84 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 81 ec 94 00 00
|
||
00 sub esp, 148 ; 00000094H
|
||
00009 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0000e 33 c5 xor eax, ebp
|
||
00010 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
|
||
00013 53 push ebx
|
||
00014 56 push esi
|
||
00015 57 push edi
|
||
00016 89 4d f8 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 85 : bool K[64], *KL=&K[0], *KR=&K[28];
|
||
|
||
00019 b8 01 00 00 00 mov eax, 1
|
||
0001e 6b c8 00 imul ecx, eax, 0
|
||
00021 8d 54 0d b8 lea edx, DWORD PTR _K$[ebp+ecx]
|
||
00025 89 55 b4 mov DWORD PTR _KL$[ebp], edx
|
||
00028 b8 01 00 00 00 mov eax, 1
|
||
0002d 6b c8 1c imul ecx, eax, 28
|
||
00030 8d 54 0d b8 lea edx, DWORD PTR _K$[ebp+ecx]
|
||
00034 89 55 b0 mov DWORD PTR _KR$[ebp], edx
|
||
|
||
; 86 : ByteToBit(K, Key, 64);
|
||
|
||
00037 6a 40 push 64 ; 00000040H
|
||
00039 8b 45 0c mov eax, DWORD PTR _Key$[ebp]
|
||
0003c 50 push eax
|
||
0003d 8d 4d b8 lea ecx, DWORD PTR _K$[ebp]
|
||
00040 51 push ecx
|
||
00041 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
00044 e8 00 00 00 00 call ?ByteToBit@CDes@@IAEXPA_NPBDH@Z ; CDes::ByteToBit
|
||
|
||
; 87 : Transform(K, K, PC1_Table, 56);
|
||
|
||
00049 6a 38 push 56 ; 00000038H
|
||
0004b 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
0004e 05 d4 00 00 00 add eax, 212 ; 000000d4H
|
||
00053 50 push eax
|
||
00054 8d 4d b8 lea ecx, DWORD PTR _K$[ebp]
|
||
00057 51 push ecx
|
||
00058 8d 55 b8 lea edx, DWORD PTR _K$[ebp]
|
||
0005b 52 push edx
|
||
0005c 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0005f e8 00 00 00 00 call ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
|
||
; 88 : for(int i=0; i<16; ++i) {
|
||
|
||
00064 c7 45 ac 00 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 0
|
||
0006b eb 09 jmp SHORT $LN4@SetSubKey
|
||
$LN2@SetSubKey:
|
||
0006d 8b 45 ac mov eax, DWORD PTR _i$1[ebp]
|
||
00070 83 c0 01 add eax, 1
|
||
00073 89 45 ac mov DWORD PTR _i$1[ebp], eax
|
||
$LN4@SetSubKey:
|
||
00076 83 7d ac 10 cmp DWORD PTR _i$1[ebp], 16 ; 00000010H
|
||
0007a 7d 59 jge SHORT $LN1@SetSubKey
|
||
|
||
; 89 : RotateL(KL, 28, LOOP_Table[i]);
|
||
|
||
0007c 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
0007f 03 45 ac add eax, DWORD PTR _i$1[ebp]
|
||
00082 0f be 88 3c 01
|
||
00 00 movsx ecx, BYTE PTR [eax+316]
|
||
00089 51 push ecx
|
||
0008a 6a 1c push 28 ; 0000001cH
|
||
0008c 8b 55 b4 mov edx, DWORD PTR _KL$[ebp]
|
||
0008f 52 push edx
|
||
00090 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
00093 e8 00 00 00 00 call ?RotateL@CDes@@IAEXPA_NHH@Z ; CDes::RotateL
|
||
|
||
; 90 : RotateL(KR, 28, LOOP_Table[i]);
|
||
|
||
00098 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
0009b 03 45 ac add eax, DWORD PTR _i$1[ebp]
|
||
0009e 0f be 88 3c 01
|
||
00 00 movsx ecx, BYTE PTR [eax+316]
|
||
000a5 51 push ecx
|
||
000a6 6a 1c push 28 ; 0000001cH
|
||
000a8 8b 55 b0 mov edx, DWORD PTR _KR$[ebp]
|
||
000ab 52 push edx
|
||
000ac 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
000af e8 00 00 00 00 call ?RotateL@CDes@@IAEXPA_NHH@Z ; CDes::RotateL
|
||
|
||
; 91 : Transform((*pSubKey)[i], K, PC2_Table, 48);
|
||
|
||
000b4 6a 30 push 48 ; 00000030H
|
||
000b6 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
000b9 05 0c 01 00 00 add eax, 268 ; 0000010cH
|
||
000be 50 push eax
|
||
000bf 8d 4d b8 lea ecx, DWORD PTR _K$[ebp]
|
||
000c2 51 push ecx
|
||
000c3 6b 55 ac 30 imul edx, DWORD PTR _i$1[ebp], 48
|
||
000c7 03 55 08 add edx, DWORD PTR _pSubKey$[ebp]
|
||
000ca 52 push edx
|
||
000cb 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
000ce e8 00 00 00 00 call ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
|
||
; 92 : }
|
||
|
||
000d3 eb 98 jmp SHORT $LN2@SetSubKey
|
||
$LN1@SetSubKey:
|
||
|
||
; 93 : }
|
||
|
||
000d5 5f pop edi
|
||
000d6 5e pop esi
|
||
000d7 5b pop ebx
|
||
000d8 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
|
||
000db 33 cd xor ecx, ebp
|
||
000dd e8 00 00 00 00 call @__security_check_cookie@4
|
||
000e2 8b e5 mov esp, ebp
|
||
000e4 5d pop ebp
|
||
000e5 c2 08 00 ret 8
|
||
?SetSubKey@CDes@@IAEXPAY1BA@DA@_NQBD@Z ENDP ; CDes::SetSubKey
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?SetKey@CDes@@IAEXPBDH@Z
|
||
_TEXT SEGMENT
|
||
tv70 = -72 ; size = 4
|
||
tv94 = -69 ; size = 1
|
||
_this$ = -4 ; size = 4
|
||
_Key$ = 8 ; size = 4
|
||
_len$ = 12 ; size = 4
|
||
?SetKey@CDes@@IAEXPBDH@Z PROC ; CDes::SetKey, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 54 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 55 : memset(deskey, 0, 16);
|
||
|
||
0000c 6a 10 push 16 ; 00000010H
|
||
0000e 6a 00 push 0
|
||
00010 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00013 05 4d 0a 00 00 add eax, 2637 ; 00000a4dH
|
||
00018 50 push eax
|
||
00019 e8 00 00 00 00 call _memset
|
||
0001e 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 56 : memcpy(deskey, Key, len>16?16:len);
|
||
|
||
00021 83 7d 0c 10 cmp DWORD PTR _len$[ebp], 16 ; 00000010H
|
||
00025 7e 09 jle SHORT $LN3@SetKey
|
||
00027 c7 45 b8 10 00
|
||
00 00 mov DWORD PTR tv70[ebp], 16 ; 00000010H
|
||
0002e eb 06 jmp SHORT $LN4@SetKey
|
||
$LN3@SetKey:
|
||
00030 8b 45 0c mov eax, DWORD PTR _len$[ebp]
|
||
00033 89 45 b8 mov DWORD PTR tv70[ebp], eax
|
||
$LN4@SetKey:
|
||
00036 8b 4d b8 mov ecx, DWORD PTR tv70[ebp]
|
||
00039 51 push ecx
|
||
0003a 8b 55 08 mov edx, DWORD PTR _Key$[ebp]
|
||
0003d 52 push edx
|
||
0003e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00041 05 4d 0a 00 00 add eax, 2637 ; 00000a4dH
|
||
00046 50 push eax
|
||
00047 e8 00 00 00 00 call _memcpy
|
||
0004c 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 57 : SetSubKey(&SubKey[0], &deskey[0]);
|
||
|
||
0004f b8 01 00 00 00 mov eax, 1
|
||
00054 6b c8 00 imul ecx, eax, 0
|
||
00057 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0005a 8d 84 0a 4d 0a
|
||
00 00 lea eax, DWORD PTR [edx+ecx+2637]
|
||
00061 50 push eax
|
||
00062 b9 00 03 00 00 mov ecx, 768 ; 00000300H
|
||
00067 6b d1 00 imul edx, ecx, 0
|
||
0006a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0006d 8d 8c 10 4c 03
|
||
00 00 lea ecx, DWORD PTR [eax+edx+844]
|
||
00074 51 push ecx
|
||
00075 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00078 e8 00 00 00 00 call ?SetSubKey@CDes@@IAEXPAY1BA@DA@_NQBD@Z ; CDes::SetSubKey
|
||
|
||
; 58 : Is3DES = len>8 ? (SetSubKey(&SubKey[1], &deskey[8]), true) : false;
|
||
|
||
0007d 83 7d 0c 08 cmp DWORD PTR _len$[ebp], 8
|
||
00081 7e 34 jle SHORT $LN5@SetKey
|
||
00083 b8 01 00 00 00 mov eax, 1
|
||
00088 c1 e0 03 shl eax, 3
|
||
0008b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0008e 8d 94 01 4d 0a
|
||
00 00 lea edx, DWORD PTR [ecx+eax+2637]
|
||
00095 52 push edx
|
||
00096 b8 00 03 00 00 mov eax, 768 ; 00000300H
|
||
0009b c1 e0 00 shl eax, 0
|
||
0009e 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000a1 8d 94 01 4c 03
|
||
00 00 lea edx, DWORD PTR [ecx+eax+844]
|
||
000a8 52 push edx
|
||
000a9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000ac e8 00 00 00 00 call ?SetSubKey@CDes@@IAEXPAY1BA@DA@_NQBD@Z ; CDes::SetSubKey
|
||
000b1 c6 45 bb 01 mov BYTE PTR tv94[ebp], 1
|
||
000b5 eb 04 jmp SHORT $LN6@SetKey
|
||
$LN5@SetKey:
|
||
000b7 c6 45 bb 00 mov BYTE PTR tv94[ebp], 0
|
||
$LN6@SetKey:
|
||
000bb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000be 8a 4d bb mov cl, BYTE PTR tv94[ebp]
|
||
000c1 88 88 4c 09 00
|
||
00 mov BYTE PTR [eax+2380], cl
|
||
|
||
; 59 : }
|
||
|
||
000c7 5f pop edi
|
||
000c8 5e pop esi
|
||
000c9 5b pop ebx
|
||
000ca 8b e5 mov esp, ebp
|
||
000cc 5d pop ebp
|
||
000cd c2 08 00 ret 8
|
||
?SetKey@CDes@@IAEXPBDH@Z ENDP ; CDes::SetKey
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -120 ; size = 4
|
||
_i$2 = -116 ; size = 4
|
||
_Ri$ = -112 ; size = 4
|
||
_Li$ = -108 ; size = 4
|
||
_tmp$ = -104 ; size = 32
|
||
_M$ = -72 ; size = 64
|
||
_this$ = -8 ; size = 4
|
||
__$ArrayPad$ = -4 ; size = 4
|
||
_Out$ = 8 ; size = 4
|
||
_In$ = 12 ; size = 4
|
||
_pSubKey$ = 16 ; size = 4
|
||
_Type$ = 20 ; size = 1
|
||
?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z PROC ; CDes::DES, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 61 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 81 ec b8 00 00
|
||
00 sub esp, 184 ; 000000b8H
|
||
00009 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0000e 33 c5 xor eax, ebp
|
||
00010 89 45 fc mov DWORD PTR __$ArrayPad$[ebp], eax
|
||
00013 53 push ebx
|
||
00014 56 push esi
|
||
00015 57 push edi
|
||
00016 89 4d f8 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 62 : bool M[64], tmp[32], *Li=&M[0], *Ri=&M[32];
|
||
|
||
00019 b8 01 00 00 00 mov eax, 1
|
||
0001e 6b c8 00 imul ecx, eax, 0
|
||
00021 8d 54 0d b8 lea edx, DWORD PTR _M$[ebp+ecx]
|
||
00025 89 55 94 mov DWORD PTR _Li$[ebp], edx
|
||
00028 b8 01 00 00 00 mov eax, 1
|
||
0002d c1 e0 05 shl eax, 5
|
||
00030 8d 4c 05 b8 lea ecx, DWORD PTR _M$[ebp+eax]
|
||
00034 89 4d 90 mov DWORD PTR _Ri$[ebp], ecx
|
||
|
||
; 63 : ByteToBit(M, In, 64);
|
||
|
||
00037 6a 40 push 64 ; 00000040H
|
||
00039 8b 45 0c mov eax, DWORD PTR _In$[ebp]
|
||
0003c 50 push eax
|
||
0003d 8d 4d b8 lea ecx, DWORD PTR _M$[ebp]
|
||
00040 51 push ecx
|
||
00041 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
00044 e8 00 00 00 00 call ?ByteToBit@CDes@@IAEXPA_NPBDH@Z ; CDes::ByteToBit
|
||
|
||
; 64 : Transform(M, M, IP_Table, 64);
|
||
|
||
00049 6a 40 push 64 ; 00000040H
|
||
0004b 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
0004e 83 c0 04 add eax, 4
|
||
00051 50 push eax
|
||
00052 8d 4d b8 lea ecx, DWORD PTR _M$[ebp]
|
||
00055 51 push ecx
|
||
00056 8d 55 b8 lea edx, DWORD PTR _M$[ebp]
|
||
00059 52 push edx
|
||
0005a 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0005d e8 00 00 00 00 call ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
|
||
; 65 : if( Type == ENCRYPT_DES ){
|
||
|
||
00062 0f b6 45 14 movzx eax, BYTE PTR _Type$[ebp]
|
||
00066 85 c0 test eax, eax
|
||
00068 75 66 jne SHORT $LN8@DES
|
||
|
||
; 66 : for(int i=0; i<16; ++i) {
|
||
|
||
0006a c7 45 8c 00 00
|
||
00 00 mov DWORD PTR _i$2[ebp], 0
|
||
00071 eb 09 jmp SHORT $LN4@DES
|
||
$LN2@DES:
|
||
00073 8b 45 8c mov eax, DWORD PTR _i$2[ebp]
|
||
00076 83 c0 01 add eax, 1
|
||
00079 89 45 8c mov DWORD PTR _i$2[ebp], eax
|
||
$LN4@DES:
|
||
0007c 83 7d 8c 10 cmp DWORD PTR _i$2[ebp], 16 ; 00000010H
|
||
00080 7d 4c jge SHORT $LN3@DES
|
||
|
||
; 67 : memcpy(tmp, Ri, 32);
|
||
|
||
00082 6a 20 push 32 ; 00000020H
|
||
00084 8b 45 90 mov eax, DWORD PTR _Ri$[ebp]
|
||
00087 50 push eax
|
||
00088 8d 4d 98 lea ecx, DWORD PTR _tmp$[ebp]
|
||
0008b 51 push ecx
|
||
0008c e8 00 00 00 00 call _memcpy
|
||
00091 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 68 : F_func(Ri, (*pSubKey)[i]);
|
||
|
||
00094 6b 45 8c 30 imul eax, DWORD PTR _i$2[ebp], 48
|
||
00098 03 45 10 add eax, DWORD PTR _pSubKey$[ebp]
|
||
0009b 50 push eax
|
||
0009c 8b 4d 90 mov ecx, DWORD PTR _Ri$[ebp]
|
||
0009f 51 push ecx
|
||
000a0 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
000a3 e8 00 00 00 00 call ?F_func@CDes@@IAEXQA_NQB_N@Z ; CDes::F_func
|
||
|
||
; 69 : Xor(Ri, Li, 32);
|
||
|
||
000a8 6a 20 push 32 ; 00000020H
|
||
000aa 8b 45 94 mov eax, DWORD PTR _Li$[ebp]
|
||
000ad 50 push eax
|
||
000ae 8b 4d 90 mov ecx, DWORD PTR _Ri$[ebp]
|
||
000b1 51 push ecx
|
||
000b2 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
000b5 e8 00 00 00 00 call ?Xor@CDes@@IAEXPA_NPB_NH@Z ; CDes::Xor
|
||
|
||
; 70 : memcpy(Li, tmp, 32);
|
||
|
||
000ba 6a 20 push 32 ; 00000020H
|
||
000bc 8d 45 98 lea eax, DWORD PTR _tmp$[ebp]
|
||
000bf 50 push eax
|
||
000c0 8b 4d 94 mov ecx, DWORD PTR _Li$[ebp]
|
||
000c3 51 push ecx
|
||
000c4 e8 00 00 00 00 call _memcpy
|
||
000c9 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 71 : }
|
||
|
||
000cc eb a5 jmp SHORT $LN2@DES
|
||
$LN3@DES:
|
||
|
||
; 72 : }else{
|
||
|
||
000ce eb 64 jmp SHORT $LN9@DES
|
||
$LN8@DES:
|
||
|
||
; 73 : for(int i=15; i>=0; --i) {
|
||
|
||
000d0 c7 45 88 0f 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 15 ; 0000000fH
|
||
000d7 eb 09 jmp SHORT $LN7@DES
|
||
$LN5@DES:
|
||
000d9 8b 45 88 mov eax, DWORD PTR _i$1[ebp]
|
||
000dc 83 e8 01 sub eax, 1
|
||
000df 89 45 88 mov DWORD PTR _i$1[ebp], eax
|
||
$LN7@DES:
|
||
000e2 83 7d 88 00 cmp DWORD PTR _i$1[ebp], 0
|
||
000e6 7c 4c jl SHORT $LN9@DES
|
||
|
||
; 74 : memcpy(tmp, Li, 32);
|
||
|
||
000e8 6a 20 push 32 ; 00000020H
|
||
000ea 8b 45 94 mov eax, DWORD PTR _Li$[ebp]
|
||
000ed 50 push eax
|
||
000ee 8d 4d 98 lea ecx, DWORD PTR _tmp$[ebp]
|
||
000f1 51 push ecx
|
||
000f2 e8 00 00 00 00 call _memcpy
|
||
000f7 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 75 : F_func(Li, (*pSubKey)[i]);
|
||
|
||
000fa 6b 45 88 30 imul eax, DWORD PTR _i$1[ebp], 48
|
||
000fe 03 45 10 add eax, DWORD PTR _pSubKey$[ebp]
|
||
00101 50 push eax
|
||
00102 8b 4d 94 mov ecx, DWORD PTR _Li$[ebp]
|
||
00105 51 push ecx
|
||
00106 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
00109 e8 00 00 00 00 call ?F_func@CDes@@IAEXQA_NQB_N@Z ; CDes::F_func
|
||
|
||
; 76 : Xor(Li, Ri, 32);
|
||
|
||
0010e 6a 20 push 32 ; 00000020H
|
||
00110 8b 45 90 mov eax, DWORD PTR _Ri$[ebp]
|
||
00113 50 push eax
|
||
00114 8b 4d 94 mov ecx, DWORD PTR _Li$[ebp]
|
||
00117 51 push ecx
|
||
00118 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0011b e8 00 00 00 00 call ?Xor@CDes@@IAEXPA_NPB_NH@Z ; CDes::Xor
|
||
|
||
; 77 : memcpy(Ri, tmp, 32);
|
||
|
||
00120 6a 20 push 32 ; 00000020H
|
||
00122 8d 45 98 lea eax, DWORD PTR _tmp$[ebp]
|
||
00125 50 push eax
|
||
00126 8b 4d 90 mov ecx, DWORD PTR _Ri$[ebp]
|
||
00129 51 push ecx
|
||
0012a e8 00 00 00 00 call _memcpy
|
||
0012f 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 78 : }
|
||
|
||
00132 eb a5 jmp SHORT $LN5@DES
|
||
$LN9@DES:
|
||
|
||
; 79 : }
|
||
; 80 : Transform(M, M, IPR_Table, 64);
|
||
|
||
00134 6a 40 push 64 ; 00000040H
|
||
00136 8b 45 f8 mov eax, DWORD PTR _this$[ebp]
|
||
00139 83 c0 44 add eax, 68 ; 00000044H
|
||
0013c 50 push eax
|
||
0013d 8d 4d b8 lea ecx, DWORD PTR _M$[ebp]
|
||
00140 51 push ecx
|
||
00141 8d 55 b8 lea edx, DWORD PTR _M$[ebp]
|
||
00144 52 push edx
|
||
00145 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
00148 e8 00 00 00 00 call ?Transform@CDes@@IAEXPA_N0PBDH@Z ; CDes::Transform
|
||
|
||
; 81 : BitToByte(Out, M, 64);
|
||
|
||
0014d 6a 40 push 64 ; 00000040H
|
||
0014f 8d 45 b8 lea eax, DWORD PTR _M$[ebp]
|
||
00152 50 push eax
|
||
00153 8b 4d 08 mov ecx, DWORD PTR _Out$[ebp]
|
||
00156 51 push ecx
|
||
00157 8b 4d f8 mov ecx, DWORD PTR _this$[ebp]
|
||
0015a e8 00 00 00 00 call ?BitToByte@CDes@@IAEXPADPB_NH@Z ; CDes::BitToByte
|
||
|
||
; 82 : }
|
||
|
||
0015f 5f pop edi
|
||
00160 5e pop esi
|
||
00161 5b pop ebx
|
||
00162 8b 4d fc mov ecx, DWORD PTR __$ArrayPad$[ebp]
|
||
00165 33 cd xor ecx, ebp
|
||
00167 e8 00 00 00 00 call @__security_check_cookie@4
|
||
0016c 8b e5 mov esp, ebp
|
||
0016e 5d pop ebp
|
||
0016f c2 10 00 ret 16 ; 00000010H
|
||
?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z ENDP ; CDes::DES
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?Des_Go@CDes@@IAE_NPAD0JPBDH_N@Z
|
||
_TEXT SEGMENT
|
||
tv137 = -85 ; size = 1
|
||
_j$1 = -20 ; size = 4
|
||
_i$2 = -16 ; size = 4
|
||
_j$3 = -12 ; size = 4
|
||
_i$4 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_Out$ = 8 ; size = 4
|
||
_In$ = 12 ; size = 4
|
||
_datalen$ = 16 ; size = 4
|
||
_Key$ = 20 ; size = 4
|
||
_keylen$ = 24 ; size = 4
|
||
_Type$ = 28 ; size = 1
|
||
?Des_Go@CDes@@IAE_NPAD0JPBDH_N@Z PROC ; CDes::Des_Go, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 37 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 58 sub esp, 88 ; 00000058H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 38 : if( !( Out && In && Key && (datalen=(datalen+7)&0xfffffff8) ) )
|
||
|
||
0000c 83 7d 08 00 cmp DWORD PTR _Out$[ebp], 0
|
||
00010 74 1a je SHORT $LN9@Des_Go
|
||
00012 83 7d 0c 00 cmp DWORD PTR _In$[ebp], 0
|
||
00016 74 14 je SHORT $LN9@Des_Go
|
||
00018 83 7d 14 00 cmp DWORD PTR _Key$[ebp], 0
|
||
0001c 74 0e je SHORT $LN9@Des_Go
|
||
0001e 8b 45 10 mov eax, DWORD PTR _datalen$[ebp]
|
||
00021 83 c0 07 add eax, 7
|
||
00024 83 e0 f8 and eax, -8 ; fffffff8H
|
||
00027 89 45 10 mov DWORD PTR _datalen$[ebp], eax
|
||
0002a 75 07 jne SHORT $LN8@Des_Go
|
||
$LN9@Des_Go:
|
||
|
||
; 39 : return false;
|
||
|
||
0002c 32 c0 xor al, al
|
||
0002e e9 4c 01 00 00 jmp $LN1@Des_Go
|
||
$LN8@Des_Go:
|
||
|
||
; 40 : SetKey(Key, keylen);
|
||
|
||
00033 8b 45 18 mov eax, DWORD PTR _keylen$[ebp]
|
||
00036 50 push eax
|
||
00037 8b 4d 14 mov ecx, DWORD PTR _Key$[ebp]
|
||
0003a 51 push ecx
|
||
0003b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0003e e8 00 00 00 00 call ?SetKey@CDes@@IAEXPBDH@Z ; CDes::SetKey
|
||
|
||
; 41 : if( !Is3DES ) { // 1<><31>DES
|
||
|
||
00043 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00046 0f b6 88 4c 09
|
||
00 00 movzx ecx, BYTE PTR [eax+2380]
|
||
0004d 85 c9 test ecx, ecx
|
||
0004f 75 64 jne SHORT $LN10@Des_Go
|
||
|
||
; 42 : for(long i=0,j=datalen>>3; i<j; ++i,Out+=8,In+=8)
|
||
|
||
00051 c7 45 f8 00 00
|
||
00 00 mov DWORD PTR _i$4[ebp], 0
|
||
00058 8b 45 10 mov eax, DWORD PTR _datalen$[ebp]
|
||
0005b c1 f8 03 sar eax, 3
|
||
0005e 89 45 f4 mov DWORD PTR _j$3[ebp], eax
|
||
00061 eb 1b jmp SHORT $LN4@Des_Go
|
||
$LN2@Des_Go:
|
||
00063 8b 45 f8 mov eax, DWORD PTR _i$4[ebp]
|
||
00066 83 c0 01 add eax, 1
|
||
00069 89 45 f8 mov DWORD PTR _i$4[ebp], eax
|
||
0006c 8b 4d 08 mov ecx, DWORD PTR _Out$[ebp]
|
||
0006f 83 c1 08 add ecx, 8
|
||
00072 89 4d 08 mov DWORD PTR _Out$[ebp], ecx
|
||
00075 8b 55 0c mov edx, DWORD PTR _In$[ebp]
|
||
00078 83 c2 08 add edx, 8
|
||
0007b 89 55 0c mov DWORD PTR _In$[ebp], edx
|
||
$LN4@Des_Go:
|
||
0007e 8b 45 f8 mov eax, DWORD PTR _i$4[ebp]
|
||
00081 3b 45 f4 cmp eax, DWORD PTR _j$3[ebp]
|
||
00084 7d 2a jge SHORT $LN3@Des_Go
|
||
|
||
; 43 : DES(Out, In, &SubKey[0], Type);
|
||
|
||
00086 0f b6 45 1c movzx eax, BYTE PTR _Type$[ebp]
|
||
0008a 50 push eax
|
||
0008b b9 00 03 00 00 mov ecx, 768 ; 00000300H
|
||
00090 6b d1 00 imul edx, ecx, 0
|
||
00093 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00096 8d 8c 10 4c 03
|
||
00 00 lea ecx, DWORD PTR [eax+edx+844]
|
||
0009d 51 push ecx
|
||
0009e 8b 55 0c mov edx, DWORD PTR _In$[ebp]
|
||
000a1 52 push edx
|
||
000a2 8b 45 08 mov eax, DWORD PTR _Out$[ebp]
|
||
000a5 50 push eax
|
||
000a6 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000a9 e8 00 00 00 00 call ?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z ; CDes::DES
|
||
000ae eb b3 jmp SHORT $LN2@Des_Go
|
||
$LN3@Des_Go:
|
||
|
||
; 44 : } else{ // 3<><33>DES <20><><EFBFBD><EFBFBD>:<3A><>(key0)-<2D><>(key1)-<2D><>(key0) <20><><EFBFBD><EFBFBD>::<3A><>(key0)-<2D><>(key1)-<2D><>(key0)
|
||
|
||
000b0 e9 c8 00 00 00 jmp $LN11@Des_Go
|
||
$LN10@Des_Go:
|
||
|
||
; 45 : for(long i=0,j=datalen>>3; i<j; ++i,Out+=8,In+=8) {
|
||
|
||
000b5 c7 45 f0 00 00
|
||
00 00 mov DWORD PTR _i$2[ebp], 0
|
||
000bc 8b 45 10 mov eax, DWORD PTR _datalen$[ebp]
|
||
000bf c1 f8 03 sar eax, 3
|
||
000c2 89 45 ec mov DWORD PTR _j$1[ebp], eax
|
||
000c5 eb 1b jmp SHORT $LN7@Des_Go
|
||
$LN5@Des_Go:
|
||
000c7 8b 45 f0 mov eax, DWORD PTR _i$2[ebp]
|
||
000ca 83 c0 01 add eax, 1
|
||
000cd 89 45 f0 mov DWORD PTR _i$2[ebp], eax
|
||
000d0 8b 4d 08 mov ecx, DWORD PTR _Out$[ebp]
|
||
000d3 83 c1 08 add ecx, 8
|
||
000d6 89 4d 08 mov DWORD PTR _Out$[ebp], ecx
|
||
000d9 8b 55 0c mov edx, DWORD PTR _In$[ebp]
|
||
000dc 83 c2 08 add edx, 8
|
||
000df 89 55 0c mov DWORD PTR _In$[ebp], edx
|
||
$LN7@Des_Go:
|
||
000e2 8b 45 f0 mov eax, DWORD PTR _i$2[ebp]
|
||
000e5 3b 45 ec cmp eax, DWORD PTR _j$1[ebp]
|
||
000e8 0f 8d 8f 00 00
|
||
00 jge $LN11@Des_Go
|
||
|
||
; 46 : DES(Out, In, &SubKey[0], Type);
|
||
|
||
000ee 0f b6 45 1c movzx eax, BYTE PTR _Type$[ebp]
|
||
000f2 50 push eax
|
||
000f3 b9 00 03 00 00 mov ecx, 768 ; 00000300H
|
||
000f8 6b d1 00 imul edx, ecx, 0
|
||
000fb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000fe 8d 8c 10 4c 03
|
||
00 00 lea ecx, DWORD PTR [eax+edx+844]
|
||
00105 51 push ecx
|
||
00106 8b 55 0c mov edx, DWORD PTR _In$[ebp]
|
||
00109 52 push edx
|
||
0010a 8b 45 08 mov eax, DWORD PTR _Out$[ebp]
|
||
0010d 50 push eax
|
||
0010e 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00111 e8 00 00 00 00 call ?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z ; CDes::DES
|
||
|
||
; 47 : DES(Out, Out, &SubKey[1], !Type);
|
||
|
||
00116 0f b6 45 1c movzx eax, BYTE PTR _Type$[ebp]
|
||
0011a 85 c0 test eax, eax
|
||
0011c 75 06 jne SHORT $LN13@Des_Go
|
||
0011e c6 45 ab 01 mov BYTE PTR tv137[ebp], 1
|
||
00122 eb 04 jmp SHORT $LN14@Des_Go
|
||
$LN13@Des_Go:
|
||
00124 c6 45 ab 00 mov BYTE PTR tv137[ebp], 0
|
||
$LN14@Des_Go:
|
||
00128 0f b6 4d ab movzx ecx, BYTE PTR tv137[ebp]
|
||
0012c 51 push ecx
|
||
0012d ba 00 03 00 00 mov edx, 768 ; 00000300H
|
||
00132 c1 e2 00 shl edx, 0
|
||
00135 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00138 8d 8c 10 4c 03
|
||
00 00 lea ecx, DWORD PTR [eax+edx+844]
|
||
0013f 51 push ecx
|
||
00140 8b 55 08 mov edx, DWORD PTR _Out$[ebp]
|
||
00143 52 push edx
|
||
00144 8b 45 08 mov eax, DWORD PTR _Out$[ebp]
|
||
00147 50 push eax
|
||
00148 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0014b e8 00 00 00 00 call ?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z ; CDes::DES
|
||
|
||
; 48 : DES(Out, Out, &SubKey[0], Type);
|
||
|
||
00150 0f b6 45 1c movzx eax, BYTE PTR _Type$[ebp]
|
||
00154 50 push eax
|
||
00155 b9 00 03 00 00 mov ecx, 768 ; 00000300H
|
||
0015a 6b d1 00 imul edx, ecx, 0
|
||
0015d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00160 8d 8c 10 4c 03
|
||
00 00 lea ecx, DWORD PTR [eax+edx+844]
|
||
00167 51 push ecx
|
||
00168 8b 55 08 mov edx, DWORD PTR _Out$[ebp]
|
||
0016b 52 push edx
|
||
0016c 8b 45 08 mov eax, DWORD PTR _Out$[ebp]
|
||
0016f 50 push eax
|
||
00170 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00173 e8 00 00 00 00 call ?DES@CDes@@IAEXQAD0QAY1BA@DA@_N_N@Z ; CDes::DES
|
||
|
||
; 49 : }
|
||
|
||
00178 e9 4a ff ff ff jmp $LN5@Des_Go
|
||
$LN11@Des_Go:
|
||
|
||
; 50 : }
|
||
; 51 : return true;
|
||
|
||
0017d b0 01 mov al, 1
|
||
$LN1@Des_Go:
|
||
|
||
; 52 : }
|
||
|
||
0017f 5f pop edi
|
||
00180 5e pop esi
|
||
00181 5b pop ebx
|
||
00182 8b e5 mov esp, ebp
|
||
00184 5d pop ebp
|
||
00185 c2 18 00 ret 24 ; 00000018H
|
||
?Des_Go@CDes@@IAE_NPAD0JPBDH_N@Z ENDP ; CDes::Des_Go
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?HexToAscii@CDes@@IAEXPAD0@Z
|
||
_TEXT SEGMENT
|
||
$T1 = -96 ; size = 4
|
||
_i$2 = -28 ; size = 4
|
||
_lTemp$ = -24 ; size = 4
|
||
_lLen$ = -20 ; size = 4
|
||
_pOrg$ = -16 ; size = 4
|
||
_pDes$ = -12 ; size = 4
|
||
_Buf$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_pszOrgRandom$ = 8 ; size = 4
|
||
_pszDesRandom$ = 12 ; size = 4
|
||
?HexToAscii@CDes@@IAEXPAD0@Z PROC ; CDes::HexToAscii, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 222 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 60 sub esp, 96 ; 00000060H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 223 : char Buf[4];
|
||
; 224 : char *pDes = (char *)pszDesRandom;
|
||
|
||
0000c 8b 45 0c mov eax, DWORD PTR _pszDesRandom$[ebp]
|
||
0000f 89 45 f4 mov DWORD PTR _pDes$[ebp], eax
|
||
|
||
; 225 : char *pOrg = (char *)pszOrgRandom;
|
||
|
||
00012 8b 45 08 mov eax, DWORD PTR _pszOrgRandom$[ebp]
|
||
00015 89 45 f0 mov DWORD PTR _pOrg$[ebp], eax
|
||
|
||
; 226 : long lLen = (long)strlen( pOrg);
|
||
|
||
00018 8b 45 f0 mov eax, DWORD PTR _pOrg$[ebp]
|
||
0001b 50 push eax
|
||
0001c e8 00 00 00 00 call _strlen
|
||
00021 83 c4 04 add esp, 4
|
||
00024 89 45 ec mov DWORD PTR _lLen$[ebp], eax
|
||
|
||
; 227 : long lTemp;
|
||
; 228 : for( int i = 0; i < lLen/2; ++i )
|
||
|
||
00027 c7 45 e4 00 00
|
||
00 00 mov DWORD PTR _i$2[ebp], 0
|
||
0002e eb 09 jmp SHORT $LN4@HexToAscii
|
||
$LN2@HexToAscii:
|
||
00030 8b 45 e4 mov eax, DWORD PTR _i$2[ebp]
|
||
00033 83 c0 01 add eax, 1
|
||
00036 89 45 e4 mov DWORD PTR _i$2[ebp], eax
|
||
$LN4@HexToAscii:
|
||
00039 8b 45 ec mov eax, DWORD PTR _lLen$[ebp]
|
||
0003c 99 cdq
|
||
0003d 2b c2 sub eax, edx
|
||
0003f d1 f8 sar eax, 1
|
||
00041 39 45 e4 cmp DWORD PTR _i$2[ebp], eax
|
||
00044 7d 7d jge SHORT $LN3@HexToAscii
|
||
|
||
; 229 : {
|
||
; 230 : memcpy( Buf , pOrg+i*2 , 2 );
|
||
|
||
00046 6a 02 push 2
|
||
00048 8b 45 e4 mov eax, DWORD PTR _i$2[ebp]
|
||
0004b 8b 4d f0 mov ecx, DWORD PTR _pOrg$[ebp]
|
||
0004e 8d 14 41 lea edx, DWORD PTR [ecx+eax*2]
|
||
00051 52 push edx
|
||
00052 8d 45 f8 lea eax, DWORD PTR _Buf$[ebp]
|
||
00055 50 push eax
|
||
00056 e8 00 00 00 00 call _memcpy
|
||
0005b 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 231 : Buf[2] = 0;
|
||
|
||
0005e b8 01 00 00 00 mov eax, 1
|
||
00063 d1 e0 shl eax, 1
|
||
00065 89 45 a0 mov DWORD PTR $T1[ebp], eax
|
||
00068 83 7d a0 04 cmp DWORD PTR $T1[ebp], 4
|
||
0006c 73 02 jae SHORT $LN6@HexToAscii
|
||
0006e eb 05 jmp SHORT $LN7@HexToAscii
|
||
$LN6@HexToAscii:
|
||
00070 e8 00 00 00 00 call ___report_rangecheckfailure
|
||
$LN7@HexToAscii:
|
||
00075 8b 4d a0 mov ecx, DWORD PTR $T1[ebp]
|
||
00078 c6 44 0d f8 00 mov BYTE PTR _Buf$[ebp+ecx], 0
|
||
|
||
; 232 : lTemp = CharHex(Buf[0])*16 + CharHex(Buf[1]);
|
||
|
||
0007d b8 01 00 00 00 mov eax, 1
|
||
00082 6b c8 00 imul ecx, eax, 0
|
||
00085 0f b6 54 0d f8 movzx edx, BYTE PTR _Buf$[ebp+ecx]
|
||
0008a 52 push edx
|
||
0008b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0008e e8 00 00 00 00 call ?CharHex@CDes@@IAEJD@Z ; CDes::CharHex
|
||
00093 8b f0 mov esi, eax
|
||
00095 c1 e6 04 shl esi, 4
|
||
00098 b8 01 00 00 00 mov eax, 1
|
||
0009d c1 e0 00 shl eax, 0
|
||
000a0 0f b6 4c 05 f8 movzx ecx, BYTE PTR _Buf$[ebp+eax]
|
||
000a5 51 push ecx
|
||
000a6 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000a9 e8 00 00 00 00 call ?CharHex@CDes@@IAEJD@Z ; CDes::CharHex
|
||
000ae 03 f0 add esi, eax
|
||
000b0 89 75 e8 mov DWORD PTR _lTemp$[ebp], esi
|
||
|
||
; 233 : pDes[i] = (char)lTemp;
|
||
|
||
000b3 8b 45 f4 mov eax, DWORD PTR _pDes$[ebp]
|
||
000b6 03 45 e4 add eax, DWORD PTR _i$2[ebp]
|
||
000b9 8a 4d e8 mov cl, BYTE PTR _lTemp$[ebp]
|
||
000bc 88 08 mov BYTE PTR [eax], cl
|
||
|
||
; 234 : }
|
||
|
||
000be e9 6d ff ff ff jmp $LN2@HexToAscii
|
||
$LN3@HexToAscii:
|
||
|
||
; 235 : pDes[i] = 0;
|
||
|
||
000c3 8b 45 f4 mov eax, DWORD PTR _pDes$[ebp]
|
||
000c6 03 45 e4 add eax, DWORD PTR _i$2[ebp]
|
||
000c9 c6 00 00 mov BYTE PTR [eax], 0
|
||
$LN5@HexToAscii:
|
||
|
||
; 236 : }
|
||
|
||
000cc 5f pop edi
|
||
000cd 5e pop esi
|
||
000ce 5b pop ebx
|
||
000cf 8b e5 mov esp, ebp
|
||
000d1 5d pop ebp
|
||
000d2 c2 08 00 ret 8
|
||
?HexToAscii@CDes@@IAEXPAD0@Z ENDP ; CDes::HexToAscii
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?CharHex@CDes@@IAEJD@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_ch$ = 8 ; size = 1
|
||
?CharHex@CDes@@IAEJD@Z PROC ; CDes::CharHex, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 239 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 240 : if( ch == '0') return( 0 );
|
||
|
||
0000c 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00010 83 f8 30 cmp eax, 48 ; 00000030H
|
||
00013 75 07 jne SHORT $LN2@CharHex
|
||
00015 33 c0 xor eax, eax
|
||
00017 e9 43 01 00 00 jmp $LN1@CharHex
|
||
$LN2@CharHex:
|
||
|
||
; 241 : if( ch == '1') return( 1 );
|
||
|
||
0001c 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00020 83 f8 31 cmp eax, 49 ; 00000031H
|
||
00023 75 0a jne SHORT $LN3@CharHex
|
||
00025 b8 01 00 00 00 mov eax, 1
|
||
0002a e9 30 01 00 00 jmp $LN1@CharHex
|
||
$LN3@CharHex:
|
||
|
||
; 242 : if( ch == '2') return( 2 );
|
||
|
||
0002f 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00033 83 f8 32 cmp eax, 50 ; 00000032H
|
||
00036 75 0a jne SHORT $LN4@CharHex
|
||
00038 b8 02 00 00 00 mov eax, 2
|
||
0003d e9 1d 01 00 00 jmp $LN1@CharHex
|
||
$LN4@CharHex:
|
||
|
||
; 243 : if( ch == '3') return( 3 );
|
||
|
||
00042 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00046 83 f8 33 cmp eax, 51 ; 00000033H
|
||
00049 75 0a jne SHORT $LN5@CharHex
|
||
0004b b8 03 00 00 00 mov eax, 3
|
||
00050 e9 0a 01 00 00 jmp $LN1@CharHex
|
||
$LN5@CharHex:
|
||
|
||
; 244 : if( ch == '4') return( 4 );
|
||
|
||
00055 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00059 83 f8 34 cmp eax, 52 ; 00000034H
|
||
0005c 75 0a jne SHORT $LN6@CharHex
|
||
0005e b8 04 00 00 00 mov eax, 4
|
||
00063 e9 f7 00 00 00 jmp $LN1@CharHex
|
||
$LN6@CharHex:
|
||
|
||
; 245 : if( ch == '5') return( 5 );
|
||
|
||
00068 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
0006c 83 f8 35 cmp eax, 53 ; 00000035H
|
||
0006f 75 0a jne SHORT $LN7@CharHex
|
||
00071 b8 05 00 00 00 mov eax, 5
|
||
00076 e9 e4 00 00 00 jmp $LN1@CharHex
|
||
$LN7@CharHex:
|
||
|
||
; 246 : if( ch == '6') return( 6 );
|
||
|
||
0007b 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
0007f 83 f8 36 cmp eax, 54 ; 00000036H
|
||
00082 75 0a jne SHORT $LN8@CharHex
|
||
00084 b8 06 00 00 00 mov eax, 6
|
||
00089 e9 d1 00 00 00 jmp $LN1@CharHex
|
||
$LN8@CharHex:
|
||
|
||
; 247 : if( ch == '7') return( 7 );
|
||
|
||
0008e 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00092 83 f8 37 cmp eax, 55 ; 00000037H
|
||
00095 75 0a jne SHORT $LN9@CharHex
|
||
00097 b8 07 00 00 00 mov eax, 7
|
||
0009c e9 be 00 00 00 jmp $LN1@CharHex
|
||
$LN9@CharHex:
|
||
|
||
; 248 : if( ch == '8') return( 8 );
|
||
|
||
000a1 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000a5 83 f8 38 cmp eax, 56 ; 00000038H
|
||
000a8 75 0a jne SHORT $LN10@CharHex
|
||
000aa b8 08 00 00 00 mov eax, 8
|
||
000af e9 ab 00 00 00 jmp $LN1@CharHex
|
||
$LN10@CharHex:
|
||
|
||
; 249 : if( ch == '9') return( 9 );
|
||
|
||
000b4 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000b8 83 f8 39 cmp eax, 57 ; 00000039H
|
||
000bb 75 0a jne SHORT $LN11@CharHex
|
||
000bd b8 09 00 00 00 mov eax, 9
|
||
000c2 e9 98 00 00 00 jmp $LN1@CharHex
|
||
$LN11@CharHex:
|
||
|
||
; 250 : if( ch == 'a' || ch == 'A' ) return( 10 );
|
||
|
||
000c7 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000cb 83 f8 61 cmp eax, 97 ; 00000061H
|
||
000ce 74 09 je SHORT $LN13@CharHex
|
||
000d0 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000d4 83 f8 41 cmp eax, 65 ; 00000041H
|
||
000d7 75 07 jne SHORT $LN12@CharHex
|
||
$LN13@CharHex:
|
||
000d9 b8 0a 00 00 00 mov eax, 10 ; 0000000aH
|
||
000de eb 7f jmp SHORT $LN1@CharHex
|
||
$LN12@CharHex:
|
||
|
||
; 251 : if( ch == 'b' || ch == 'B' ) return( 11 );
|
||
|
||
000e0 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000e4 83 f8 62 cmp eax, 98 ; 00000062H
|
||
000e7 74 09 je SHORT $LN15@CharHex
|
||
000e9 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000ed 83 f8 42 cmp eax, 66 ; 00000042H
|
||
000f0 75 07 jne SHORT $LN14@CharHex
|
||
$LN15@CharHex:
|
||
000f2 b8 0b 00 00 00 mov eax, 11 ; 0000000bH
|
||
000f7 eb 66 jmp SHORT $LN1@CharHex
|
||
$LN14@CharHex:
|
||
|
||
; 252 : if( ch == 'c' || ch == 'C' ) return( 12 );
|
||
|
||
000f9 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
000fd 83 f8 63 cmp eax, 99 ; 00000063H
|
||
00100 74 09 je SHORT $LN17@CharHex
|
||
00102 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00106 83 f8 43 cmp eax, 67 ; 00000043H
|
||
00109 75 07 jne SHORT $LN16@CharHex
|
||
$LN17@CharHex:
|
||
0010b b8 0c 00 00 00 mov eax, 12 ; 0000000cH
|
||
00110 eb 4d jmp SHORT $LN1@CharHex
|
||
$LN16@CharHex:
|
||
|
||
; 253 : if( ch == 'd' || ch == 'D' ) return( 13 );
|
||
|
||
00112 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00116 83 f8 64 cmp eax, 100 ; 00000064H
|
||
00119 74 09 je SHORT $LN19@CharHex
|
||
0011b 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
0011f 83 f8 44 cmp eax, 68 ; 00000044H
|
||
00122 75 07 jne SHORT $LN18@CharHex
|
||
$LN19@CharHex:
|
||
00124 b8 0d 00 00 00 mov eax, 13 ; 0000000dH
|
||
00129 eb 34 jmp SHORT $LN1@CharHex
|
||
$LN18@CharHex:
|
||
|
||
; 254 : if( ch == 'e' || ch == 'E' ) return( 14 );
|
||
|
||
0012b 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
0012f 83 f8 65 cmp eax, 101 ; 00000065H
|
||
00132 74 09 je SHORT $LN21@CharHex
|
||
00134 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00138 83 f8 45 cmp eax, 69 ; 00000045H
|
||
0013b 75 07 jne SHORT $LN20@CharHex
|
||
$LN21@CharHex:
|
||
0013d b8 0e 00 00 00 mov eax, 14 ; 0000000eH
|
||
00142 eb 1b jmp SHORT $LN1@CharHex
|
||
$LN20@CharHex:
|
||
|
||
; 255 : if( ch == 'f' || ch == 'F' ) return( 15 );
|
||
|
||
00144 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00148 83 f8 66 cmp eax, 102 ; 00000066H
|
||
0014b 74 09 je SHORT $LN23@CharHex
|
||
0014d 0f be 45 08 movsx eax, BYTE PTR _ch$[ebp]
|
||
00151 83 f8 46 cmp eax, 70 ; 00000046H
|
||
00154 75 07 jne SHORT $LN22@CharHex
|
||
$LN23@CharHex:
|
||
00156 b8 0f 00 00 00 mov eax, 15 ; 0000000fH
|
||
0015b eb 02 jmp SHORT $LN1@CharHex
|
||
$LN22@CharHex:
|
||
|
||
; 256 : return( 0 );
|
||
|
||
0015d 33 c0 xor eax, eax
|
||
$LN1@CharHex:
|
||
|
||
; 257 : }
|
||
|
||
0015f 5f pop edi
|
||
00160 5e pop esi
|
||
00161 5b pop ebx
|
||
00162 8b e5 mov esp, ebp
|
||
00164 5d pop ebp
|
||
00165 c2 04 00 ret 4
|
||
?CharHex@CDes@@IAEJD@Z ENDP ; CDes::CharHex
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?AsciiToHex@CDes@@IAEXPAD0J@Z
|
||
_TEXT SEGMENT
|
||
_i$1 = -12 ; size = 4
|
||
_p$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_pszOrgRandom$ = 8 ; size = 4
|
||
_pszDesRandom$ = 12 ; size = 4
|
||
_lLen$ = 16 ; size = 4
|
||
?AsciiToHex@CDes@@IAEXPAD0J@Z PROC ; CDes::AsciiToHex, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 210 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 4c sub esp, 76 ; 0000004cH
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 211 : char *p = (char *)pszDesRandom;
|
||
|
||
0000c 8b 45 0c mov eax, DWORD PTR _pszDesRandom$[ebp]
|
||
0000f 89 45 f8 mov DWORD PTR _p$[ebp], eax
|
||
|
||
; 212 : //long lLen = lstrlen( (char*)pszOrgRandom);
|
||
; 213 : for( long i = 0; i < lLen; ++i )
|
||
|
||
00012 c7 45 f4 00 00
|
||
00 00 mov DWORD PTR _i$1[ebp], 0
|
||
00019 eb 09 jmp SHORT $LN4@AsciiToHex
|
||
$LN2@AsciiToHex:
|
||
0001b 8b 45 f4 mov eax, DWORD PTR _i$1[ebp]
|
||
0001e 83 c0 01 add eax, 1
|
||
00021 89 45 f4 mov DWORD PTR _i$1[ebp], eax
|
||
$LN4@AsciiToHex:
|
||
00024 8b 45 f4 mov eax, DWORD PTR _i$1[ebp]
|
||
00027 3b 45 10 cmp eax, DWORD PTR _lLen$[ebp]
|
||
0002a 7d 26 jge SHORT $LN3@AsciiToHex
|
||
|
||
; 214 : {
|
||
; 215 : sprintf(p, "%02X", (BYTE)pszOrgRandom[i] );
|
||
|
||
0002c 8b 45 08 mov eax, DWORD PTR _pszOrgRandom$[ebp]
|
||
0002f 03 45 f4 add eax, DWORD PTR _i$1[ebp]
|
||
00032 0f b6 08 movzx ecx, BYTE PTR [eax]
|
||
00035 51 push ecx
|
||
00036 68 00 00 00 00 push OFFSET ??_C@_04JFFKLGJF@?$CF02X@
|
||
0003b 8b 55 f8 mov edx, DWORD PTR _p$[ebp]
|
||
0003e 52 push edx
|
||
0003f e8 00 00 00 00 call _sprintf
|
||
00044 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 216 : p += 2;
|
||
|
||
00047 8b 45 f8 mov eax, DWORD PTR _p$[ebp]
|
||
0004a 83 c0 02 add eax, 2
|
||
0004d 89 45 f8 mov DWORD PTR _p$[ebp], eax
|
||
|
||
; 217 : }
|
||
|
||
00050 eb c9 jmp SHORT $LN2@AsciiToHex
|
||
$LN3@AsciiToHex:
|
||
|
||
; 218 : *p=0;
|
||
|
||
00052 8b 45 f8 mov eax, DWORD PTR _p$[ebp]
|
||
00055 c6 00 00 mov BYTE PTR [eax], 0
|
||
|
||
; 219 : }
|
||
|
||
00058 5f pop edi
|
||
00059 5e pop esi
|
||
0005a 5b pop ebx
|
||
0005b 8b e5 mov esp, ebp
|
||
0005d 5d pop ebp
|
||
0005e c2 0c 00 ret 12 ; 0000000cH
|
||
?AsciiToHex@CDes@@IAEXPAD0J@Z ENDP ; CDes::AsciiToHex
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ??1CDes@@UAE@XZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
??1CDes@@UAE@XZ PROC ; CDes::~CDes, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 27 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f c7 00 00 00 00
|
||
00 mov DWORD PTR [eax], OFFSET ??_7CDes@@6B@
|
||
|
||
; 28 :
|
||
; 29 : }
|
||
|
||
00015 5f pop edi
|
||
00016 5e pop esi
|
||
00017 5b pop ebx
|
||
00018 8b e5 mov esp, ebp
|
||
0001a 5d pop ebp
|
||
0001b c3 ret 0
|
||
??1CDes@@UAE@XZ ENDP ; CDes::~CDes
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; File D:\Works\Corpsms_2010\public\des\des.h
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ??0CDes@@QAE@XZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
??0CDes@@QAE@XZ PROC ; CDes::CDes, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 22 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f c7 00 00 00 00
|
||
00 mov DWORD PTR [eax], OFFSET ??_7CDes@@6B@
|
||
; File D:\Works\Corpsms_2010\public\des\des.h
|
||
|
||
; 40 : const char IP_Table[64] = {
|
||
|
||
00015 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00018 c6 40 04 3a mov BYTE PTR [eax+4], 58 ; 0000003aH
|
||
0001c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0001f c6 41 05 32 mov BYTE PTR [ecx+5], 50 ; 00000032H
|
||
00023 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00026 c6 42 06 2a mov BYTE PTR [edx+6], 42 ; 0000002aH
|
||
0002a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0002d c6 40 07 22 mov BYTE PTR [eax+7], 34 ; 00000022H
|
||
00031 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00034 c6 41 08 1a mov BYTE PTR [ecx+8], 26 ; 0000001aH
|
||
00038 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0003b c6 42 09 12 mov BYTE PTR [edx+9], 18 ; 00000012H
|
||
0003f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00042 c6 40 0a 0a mov BYTE PTR [eax+10], 10 ; 0000000aH
|
||
00046 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00049 c6 41 0b 02 mov BYTE PTR [ecx+11], 2
|
||
0004d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00050 c6 42 0c 3c mov BYTE PTR [edx+12], 60 ; 0000003cH
|
||
00054 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00057 c6 40 0d 34 mov BYTE PTR [eax+13], 52 ; 00000034H
|
||
0005b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0005e c6 41 0e 2c mov BYTE PTR [ecx+14], 44 ; 0000002cH
|
||
00062 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00065 c6 42 0f 24 mov BYTE PTR [edx+15], 36 ; 00000024H
|
||
00069 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0006c c6 40 10 1c mov BYTE PTR [eax+16], 28 ; 0000001cH
|
||
00070 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00073 c6 41 11 14 mov BYTE PTR [ecx+17], 20 ; 00000014H
|
||
00077 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0007a c6 42 12 0c mov BYTE PTR [edx+18], 12 ; 0000000cH
|
||
0007e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00081 c6 40 13 04 mov BYTE PTR [eax+19], 4
|
||
00085 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00088 c6 41 14 3e mov BYTE PTR [ecx+20], 62 ; 0000003eH
|
||
0008c 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0008f c6 42 15 36 mov BYTE PTR [edx+21], 54 ; 00000036H
|
||
00093 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00096 c6 40 16 2e mov BYTE PTR [eax+22], 46 ; 0000002eH
|
||
0009a 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0009d c6 41 17 26 mov BYTE PTR [ecx+23], 38 ; 00000026H
|
||
000a1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
000a4 c6 42 18 1e mov BYTE PTR [edx+24], 30 ; 0000001eH
|
||
000a8 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000ab c6 40 19 16 mov BYTE PTR [eax+25], 22 ; 00000016H
|
||
000af 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000b2 c6 41 1a 0e mov BYTE PTR [ecx+26], 14 ; 0000000eH
|
||
000b6 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
000b9 c6 42 1b 06 mov BYTE PTR [edx+27], 6
|
||
000bd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000c0 c6 40 1c 40 mov BYTE PTR [eax+28], 64 ; 00000040H
|
||
000c4 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000c7 c6 41 1d 38 mov BYTE PTR [ecx+29], 56 ; 00000038H
|
||
000cb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
000ce c6 42 1e 30 mov BYTE PTR [edx+30], 48 ; 00000030H
|
||
000d2 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000d5 c6 40 1f 28 mov BYTE PTR [eax+31], 40 ; 00000028H
|
||
000d9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000dc c6 41 20 20 mov BYTE PTR [ecx+32], 32 ; 00000020H
|
||
000e0 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
000e3 c6 42 21 18 mov BYTE PTR [edx+33], 24 ; 00000018H
|
||
000e7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000ea c6 40 22 10 mov BYTE PTR [eax+34], 16 ; 00000010H
|
||
000ee 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000f1 c6 41 23 08 mov BYTE PTR [ecx+35], 8
|
||
000f5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
000f8 c6 42 24 39 mov BYTE PTR [edx+36], 57 ; 00000039H
|
||
000fc 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
000ff c6 40 25 31 mov BYTE PTR [eax+37], 49 ; 00000031H
|
||
00103 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00106 c6 41 26 29 mov BYTE PTR [ecx+38], 41 ; 00000029H
|
||
0010a 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0010d c6 42 27 21 mov BYTE PTR [edx+39], 33 ; 00000021H
|
||
00111 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00114 c6 40 28 19 mov BYTE PTR [eax+40], 25 ; 00000019H
|
||
00118 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0011b c6 41 29 11 mov BYTE PTR [ecx+41], 17 ; 00000011H
|
||
0011f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00122 c6 42 2a 09 mov BYTE PTR [edx+42], 9
|
||
00126 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00129 c6 40 2b 01 mov BYTE PTR [eax+43], 1
|
||
0012d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00130 c6 41 2c 3b mov BYTE PTR [ecx+44], 59 ; 0000003bH
|
||
00134 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00137 c6 42 2d 33 mov BYTE PTR [edx+45], 51 ; 00000033H
|
||
0013b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0013e c6 40 2e 2b mov BYTE PTR [eax+46], 43 ; 0000002bH
|
||
00142 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00145 c6 41 2f 23 mov BYTE PTR [ecx+47], 35 ; 00000023H
|
||
00149 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0014c c6 42 30 1b mov BYTE PTR [edx+48], 27 ; 0000001bH
|
||
00150 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00153 c6 40 31 13 mov BYTE PTR [eax+49], 19 ; 00000013H
|
||
00157 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0015a c6 41 32 0b mov BYTE PTR [ecx+50], 11 ; 0000000bH
|
||
0015e 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00161 c6 42 33 03 mov BYTE PTR [edx+51], 3
|
||
00165 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00168 c6 40 34 3d mov BYTE PTR [eax+52], 61 ; 0000003dH
|
||
0016c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0016f c6 41 35 35 mov BYTE PTR [ecx+53], 53 ; 00000035H
|
||
00173 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00176 c6 42 36 2d mov BYTE PTR [edx+54], 45 ; 0000002dH
|
||
0017a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0017d c6 40 37 25 mov BYTE PTR [eax+55], 37 ; 00000025H
|
||
00181 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00184 c6 41 38 1d mov BYTE PTR [ecx+56], 29 ; 0000001dH
|
||
00188 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0018b c6 42 39 15 mov BYTE PTR [edx+57], 21 ; 00000015H
|
||
0018f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00192 c6 40 3a 0d mov BYTE PTR [eax+58], 13 ; 0000000dH
|
||
00196 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00199 c6 41 3b 05 mov BYTE PTR [ecx+59], 5
|
||
0019d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
001a0 c6 42 3c 3f mov BYTE PTR [edx+60], 63 ; 0000003fH
|
||
001a4 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
001a7 c6 40 3d 37 mov BYTE PTR [eax+61], 55 ; 00000037H
|
||
001ab 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
001ae c6 41 3e 2f mov BYTE PTR [ecx+62], 47 ; 0000002fH
|
||
001b2 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
001b5 c6 42 3f 27 mov BYTE PTR [edx+63], 39 ; 00000027H
|
||
001b9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
001bc c6 40 40 1f mov BYTE PTR [eax+64], 31 ; 0000001fH
|
||
001c0 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
001c3 c6 41 41 17 mov BYTE PTR [ecx+65], 23 ; 00000017H
|
||
001c7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
001ca c6 42 42 0f mov BYTE PTR [edx+66], 15 ; 0000000fH
|
||
001ce 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
001d1 c6 40 43 07 mov BYTE PTR [eax+67], 7
|
||
|
||
; 41 : 58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4,
|
||
; 42 : 62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48, 40, 32, 24, 16, 8,
|
||
; 43 : 57, 49, 41, 33, 25, 17, 9, 1, 59, 51, 43, 35, 27, 19, 11, 3,
|
||
; 44 : 61, 53, 45, 37, 29, 21, 13, 5, 63, 55, 47, 39, 31, 23, 15, 7
|
||
; 45 : };
|
||
; 46 : // final permutation IP^-1
|
||
; 47 : const char IPR_Table[64] = {
|
||
|
||
001d5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
001d8 c6 40 44 28 mov BYTE PTR [eax+68], 40 ; 00000028H
|
||
001dc 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
001df c6 41 45 08 mov BYTE PTR [ecx+69], 8
|
||
001e3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
001e6 c6 42 46 30 mov BYTE PTR [edx+70], 48 ; 00000030H
|
||
001ea 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
001ed c6 40 47 10 mov BYTE PTR [eax+71], 16 ; 00000010H
|
||
001f1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
001f4 c6 41 48 38 mov BYTE PTR [ecx+72], 56 ; 00000038H
|
||
001f8 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
001fb c6 42 49 18 mov BYTE PTR [edx+73], 24 ; 00000018H
|
||
001ff 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00202 c6 40 4a 40 mov BYTE PTR [eax+74], 64 ; 00000040H
|
||
00206 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00209 c6 41 4b 20 mov BYTE PTR [ecx+75], 32 ; 00000020H
|
||
0020d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00210 c6 42 4c 27 mov BYTE PTR [edx+76], 39 ; 00000027H
|
||
00214 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00217 c6 40 4d 07 mov BYTE PTR [eax+77], 7
|
||
0021b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0021e c6 41 4e 2f mov BYTE PTR [ecx+78], 47 ; 0000002fH
|
||
00222 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00225 c6 42 4f 0f mov BYTE PTR [edx+79], 15 ; 0000000fH
|
||
00229 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0022c c6 40 50 37 mov BYTE PTR [eax+80], 55 ; 00000037H
|
||
00230 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00233 c6 41 51 17 mov BYTE PTR [ecx+81], 23 ; 00000017H
|
||
00237 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0023a c6 42 52 3f mov BYTE PTR [edx+82], 63 ; 0000003fH
|
||
0023e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00241 c6 40 53 1f mov BYTE PTR [eax+83], 31 ; 0000001fH
|
||
00245 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00248 c6 41 54 26 mov BYTE PTR [ecx+84], 38 ; 00000026H
|
||
0024c 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0024f c6 42 55 06 mov BYTE PTR [edx+85], 6
|
||
00253 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00256 c6 40 56 2e mov BYTE PTR [eax+86], 46 ; 0000002eH
|
||
0025a 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0025d c6 41 57 0e mov BYTE PTR [ecx+87], 14 ; 0000000eH
|
||
00261 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00264 c6 42 58 36 mov BYTE PTR [edx+88], 54 ; 00000036H
|
||
00268 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0026b c6 40 59 16 mov BYTE PTR [eax+89], 22 ; 00000016H
|
||
0026f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00272 c6 41 5a 3e mov BYTE PTR [ecx+90], 62 ; 0000003eH
|
||
00276 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00279 c6 42 5b 1e mov BYTE PTR [edx+91], 30 ; 0000001eH
|
||
0027d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00280 c6 40 5c 25 mov BYTE PTR [eax+92], 37 ; 00000025H
|
||
00284 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00287 c6 41 5d 05 mov BYTE PTR [ecx+93], 5
|
||
0028b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0028e c6 42 5e 2d mov BYTE PTR [edx+94], 45 ; 0000002dH
|
||
00292 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00295 c6 40 5f 0d mov BYTE PTR [eax+95], 13 ; 0000000dH
|
||
00299 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0029c c6 41 60 35 mov BYTE PTR [ecx+96], 53 ; 00000035H
|
||
002a0 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
002a3 c6 42 61 15 mov BYTE PTR [edx+97], 21 ; 00000015H
|
||
002a7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
002aa c6 40 62 3d mov BYTE PTR [eax+98], 61 ; 0000003dH
|
||
002ae 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
002b1 c6 41 63 1d mov BYTE PTR [ecx+99], 29 ; 0000001dH
|
||
002b5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
002b8 c6 42 64 24 mov BYTE PTR [edx+100], 36 ; 00000024H
|
||
002bc 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
002bf c6 40 65 04 mov BYTE PTR [eax+101], 4
|
||
002c3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
002c6 c6 41 66 2c mov BYTE PTR [ecx+102], 44 ; 0000002cH
|
||
002ca 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
002cd c6 42 67 0c mov BYTE PTR [edx+103], 12 ; 0000000cH
|
||
002d1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
002d4 c6 40 68 34 mov BYTE PTR [eax+104], 52 ; 00000034H
|
||
002d8 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
002db c6 41 69 14 mov BYTE PTR [ecx+105], 20 ; 00000014H
|
||
002df 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
002e2 c6 42 6a 3c mov BYTE PTR [edx+106], 60 ; 0000003cH
|
||
002e6 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
002e9 c6 40 6b 1c mov BYTE PTR [eax+107], 28 ; 0000001cH
|
||
002ed 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
002f0 c6 41 6c 23 mov BYTE PTR [ecx+108], 35 ; 00000023H
|
||
002f4 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
002f7 c6 42 6d 03 mov BYTE PTR [edx+109], 3
|
||
002fb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
002fe c6 40 6e 2b mov BYTE PTR [eax+110], 43 ; 0000002bH
|
||
00302 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00305 c6 41 6f 0b mov BYTE PTR [ecx+111], 11 ; 0000000bH
|
||
00309 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0030c c6 42 70 33 mov BYTE PTR [edx+112], 51 ; 00000033H
|
||
00310 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00313 c6 40 71 13 mov BYTE PTR [eax+113], 19 ; 00000013H
|
||
00317 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0031a c6 41 72 3b mov BYTE PTR [ecx+114], 59 ; 0000003bH
|
||
0031e 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00321 c6 42 73 1b mov BYTE PTR [edx+115], 27 ; 0000001bH
|
||
00325 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00328 c6 40 74 22 mov BYTE PTR [eax+116], 34 ; 00000022H
|
||
0032c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0032f c6 41 75 02 mov BYTE PTR [ecx+117], 2
|
||
00333 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00336 c6 42 76 2a mov BYTE PTR [edx+118], 42 ; 0000002aH
|
||
0033a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0033d c6 40 77 0a mov BYTE PTR [eax+119], 10 ; 0000000aH
|
||
00341 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00344 c6 41 78 32 mov BYTE PTR [ecx+120], 50 ; 00000032H
|
||
00348 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0034b c6 42 79 12 mov BYTE PTR [edx+121], 18 ; 00000012H
|
||
0034f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00352 c6 40 7a 3a mov BYTE PTR [eax+122], 58 ; 0000003aH
|
||
00356 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00359 c6 41 7b 1a mov BYTE PTR [ecx+123], 26 ; 0000001aH
|
||
0035d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00360 c6 42 7c 21 mov BYTE PTR [edx+124], 33 ; 00000021H
|
||
00364 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00367 c6 40 7d 01 mov BYTE PTR [eax+125], 1
|
||
0036b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0036e c6 41 7e 29 mov BYTE PTR [ecx+126], 41 ; 00000029H
|
||
00372 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00375 c6 42 7f 09 mov BYTE PTR [edx+127], 9
|
||
00379 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0037c c6 80 80 00 00
|
||
00 31 mov BYTE PTR [eax+128], 49 ; 00000031H
|
||
00383 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00386 c6 81 81 00 00
|
||
00 11 mov BYTE PTR [ecx+129], 17 ; 00000011H
|
||
0038d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00390 c6 82 82 00 00
|
||
00 39 mov BYTE PTR [edx+130], 57 ; 00000039H
|
||
00397 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0039a c6 80 83 00 00
|
||
00 19 mov BYTE PTR [eax+131], 25 ; 00000019H
|
||
|
||
; 48 : 40, 8, 48, 16, 56, 24, 64, 32, 39, 7, 47, 15, 55, 23, 63, 31,
|
||
; 49 : 38, 6, 46, 14, 54, 22, 62, 30, 37, 5, 45, 13, 53, 21, 61, 29,
|
||
; 50 : 36, 4, 44, 12, 52, 20, 60, 28, 35, 3, 43, 11, 51, 19, 59, 27,
|
||
; 51 : 34, 2, 42, 10, 50, 18, 58, 26, 33, 1, 41, 9, 49, 17, 57, 25
|
||
; 52 : };
|
||
; 53 : // expansion operation matrix
|
||
; 54 : const char E_Table[48] = {
|
||
|
||
003a1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
003a4 c6 80 84 00 00
|
||
00 20 mov BYTE PTR [eax+132], 32 ; 00000020H
|
||
003ab 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
003ae c6 81 85 00 00
|
||
00 01 mov BYTE PTR [ecx+133], 1
|
||
003b5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
003b8 c6 82 86 00 00
|
||
00 02 mov BYTE PTR [edx+134], 2
|
||
003bf 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
003c2 c6 80 87 00 00
|
||
00 03 mov BYTE PTR [eax+135], 3
|
||
003c9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
003cc c6 81 88 00 00
|
||
00 04 mov BYTE PTR [ecx+136], 4
|
||
003d3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
003d6 c6 82 89 00 00
|
||
00 05 mov BYTE PTR [edx+137], 5
|
||
003dd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
003e0 c6 80 8a 00 00
|
||
00 04 mov BYTE PTR [eax+138], 4
|
||
003e7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
003ea c6 81 8b 00 00
|
||
00 05 mov BYTE PTR [ecx+139], 5
|
||
003f1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
003f4 c6 82 8c 00 00
|
||
00 06 mov BYTE PTR [edx+140], 6
|
||
003fb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
003fe c6 80 8d 00 00
|
||
00 07 mov BYTE PTR [eax+141], 7
|
||
00405 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00408 c6 81 8e 00 00
|
||
00 08 mov BYTE PTR [ecx+142], 8
|
||
0040f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00412 c6 82 8f 00 00
|
||
00 09 mov BYTE PTR [edx+143], 9
|
||
00419 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0041c c6 80 90 00 00
|
||
00 08 mov BYTE PTR [eax+144], 8
|
||
00423 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00426 c6 81 91 00 00
|
||
00 09 mov BYTE PTR [ecx+145], 9
|
||
0042d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00430 c6 82 92 00 00
|
||
00 0a mov BYTE PTR [edx+146], 10 ; 0000000aH
|
||
00437 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0043a c6 80 93 00 00
|
||
00 0b mov BYTE PTR [eax+147], 11 ; 0000000bH
|
||
00441 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00444 c6 81 94 00 00
|
||
00 0c mov BYTE PTR [ecx+148], 12 ; 0000000cH
|
||
0044b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0044e c6 82 95 00 00
|
||
00 0d mov BYTE PTR [edx+149], 13 ; 0000000dH
|
||
00455 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00458 c6 80 96 00 00
|
||
00 0c mov BYTE PTR [eax+150], 12 ; 0000000cH
|
||
0045f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00462 c6 81 97 00 00
|
||
00 0d mov BYTE PTR [ecx+151], 13 ; 0000000dH
|
||
00469 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0046c c6 82 98 00 00
|
||
00 0e mov BYTE PTR [edx+152], 14 ; 0000000eH
|
||
00473 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00476 c6 80 99 00 00
|
||
00 0f mov BYTE PTR [eax+153], 15 ; 0000000fH
|
||
0047d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00480 c6 81 9a 00 00
|
||
00 10 mov BYTE PTR [ecx+154], 16 ; 00000010H
|
||
00487 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0048a c6 82 9b 00 00
|
||
00 11 mov BYTE PTR [edx+155], 17 ; 00000011H
|
||
00491 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00494 c6 80 9c 00 00
|
||
00 10 mov BYTE PTR [eax+156], 16 ; 00000010H
|
||
0049b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0049e c6 81 9d 00 00
|
||
00 11 mov BYTE PTR [ecx+157], 17 ; 00000011H
|
||
004a5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
004a8 c6 82 9e 00 00
|
||
00 12 mov BYTE PTR [edx+158], 18 ; 00000012H
|
||
004af 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
004b2 c6 80 9f 00 00
|
||
00 13 mov BYTE PTR [eax+159], 19 ; 00000013H
|
||
004b9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
004bc c6 81 a0 00 00
|
||
00 14 mov BYTE PTR [ecx+160], 20 ; 00000014H
|
||
004c3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
004c6 c6 82 a1 00 00
|
||
00 15 mov BYTE PTR [edx+161], 21 ; 00000015H
|
||
004cd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
004d0 c6 80 a2 00 00
|
||
00 14 mov BYTE PTR [eax+162], 20 ; 00000014H
|
||
004d7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
004da c6 81 a3 00 00
|
||
00 15 mov BYTE PTR [ecx+163], 21 ; 00000015H
|
||
004e1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
004e4 c6 82 a4 00 00
|
||
00 16 mov BYTE PTR [edx+164], 22 ; 00000016H
|
||
004eb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
004ee c6 80 a5 00 00
|
||
00 17 mov BYTE PTR [eax+165], 23 ; 00000017H
|
||
004f5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
004f8 c6 81 a6 00 00
|
||
00 18 mov BYTE PTR [ecx+166], 24 ; 00000018H
|
||
004ff 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00502 c6 82 a7 00 00
|
||
00 19 mov BYTE PTR [edx+167], 25 ; 00000019H
|
||
00509 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0050c c6 80 a8 00 00
|
||
00 18 mov BYTE PTR [eax+168], 24 ; 00000018H
|
||
00513 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00516 c6 81 a9 00 00
|
||
00 19 mov BYTE PTR [ecx+169], 25 ; 00000019H
|
||
0051d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00520 c6 82 aa 00 00
|
||
00 1a mov BYTE PTR [edx+170], 26 ; 0000001aH
|
||
00527 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0052a c6 80 ab 00 00
|
||
00 1b mov BYTE PTR [eax+171], 27 ; 0000001bH
|
||
00531 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00534 c6 81 ac 00 00
|
||
00 1c mov BYTE PTR [ecx+172], 28 ; 0000001cH
|
||
0053b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0053e c6 82 ad 00 00
|
||
00 1d mov BYTE PTR [edx+173], 29 ; 0000001dH
|
||
00545 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00548 c6 80 ae 00 00
|
||
00 1c mov BYTE PTR [eax+174], 28 ; 0000001cH
|
||
0054f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00552 c6 81 af 00 00
|
||
00 1d mov BYTE PTR [ecx+175], 29 ; 0000001dH
|
||
00559 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0055c c6 82 b0 00 00
|
||
00 1e mov BYTE PTR [edx+176], 30 ; 0000001eH
|
||
00563 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00566 c6 80 b1 00 00
|
||
00 1f mov BYTE PTR [eax+177], 31 ; 0000001fH
|
||
0056d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00570 c6 81 b2 00 00
|
||
00 20 mov BYTE PTR [ecx+178], 32 ; 00000020H
|
||
00577 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0057a c6 82 b3 00 00
|
||
00 01 mov BYTE PTR [edx+179], 1
|
||
|
||
; 55 : 32, 1, 2, 3, 4, 5, 4, 5, 6, 7, 8, 9,
|
||
; 56 : 8, 9, 10, 11, 12, 13, 12, 13, 14, 15, 16, 17,
|
||
; 57 : 16, 17, 18, 19, 20, 21, 20, 21, 22, 23, 24, 25,
|
||
; 58 : 24, 25, 26, 27, 28, 29, 28, 29, 30, 31, 32, 1
|
||
; 59 : };
|
||
; 60 : // 32-bit permutation function P used on the output of the S-boxes
|
||
; 61 : const char P_Table[32] = {
|
||
|
||
00581 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00584 c6 80 b4 00 00
|
||
00 10 mov BYTE PTR [eax+180], 16 ; 00000010H
|
||
0058b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0058e c6 81 b5 00 00
|
||
00 07 mov BYTE PTR [ecx+181], 7
|
||
00595 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00598 c6 82 b6 00 00
|
||
00 14 mov BYTE PTR [edx+182], 20 ; 00000014H
|
||
0059f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
005a2 c6 80 b7 00 00
|
||
00 15 mov BYTE PTR [eax+183], 21 ; 00000015H
|
||
005a9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
005ac c6 81 b8 00 00
|
||
00 1d mov BYTE PTR [ecx+184], 29 ; 0000001dH
|
||
005b3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
005b6 c6 82 b9 00 00
|
||
00 0c mov BYTE PTR [edx+185], 12 ; 0000000cH
|
||
005bd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
005c0 c6 80 ba 00 00
|
||
00 1c mov BYTE PTR [eax+186], 28 ; 0000001cH
|
||
005c7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
005ca c6 81 bb 00 00
|
||
00 11 mov BYTE PTR [ecx+187], 17 ; 00000011H
|
||
005d1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
005d4 c6 82 bc 00 00
|
||
00 01 mov BYTE PTR [edx+188], 1
|
||
005db 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
005de c6 80 bd 00 00
|
||
00 0f mov BYTE PTR [eax+189], 15 ; 0000000fH
|
||
005e5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
005e8 c6 81 be 00 00
|
||
00 17 mov BYTE PTR [ecx+190], 23 ; 00000017H
|
||
005ef 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
005f2 c6 82 bf 00 00
|
||
00 1a mov BYTE PTR [edx+191], 26 ; 0000001aH
|
||
005f9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
005fc c6 80 c0 00 00
|
||
00 05 mov BYTE PTR [eax+192], 5
|
||
00603 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00606 c6 81 c1 00 00
|
||
00 12 mov BYTE PTR [ecx+193], 18 ; 00000012H
|
||
0060d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00610 c6 82 c2 00 00
|
||
00 1f mov BYTE PTR [edx+194], 31 ; 0000001fH
|
||
00617 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0061a c6 80 c3 00 00
|
||
00 0a mov BYTE PTR [eax+195], 10 ; 0000000aH
|
||
00621 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00624 c6 81 c4 00 00
|
||
00 02 mov BYTE PTR [ecx+196], 2
|
||
0062b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0062e c6 82 c5 00 00
|
||
00 08 mov BYTE PTR [edx+197], 8
|
||
00635 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00638 c6 80 c6 00 00
|
||
00 18 mov BYTE PTR [eax+198], 24 ; 00000018H
|
||
0063f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00642 c6 81 c7 00 00
|
||
00 0e mov BYTE PTR [ecx+199], 14 ; 0000000eH
|
||
00649 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0064c c6 82 c8 00 00
|
||
00 20 mov BYTE PTR [edx+200], 32 ; 00000020H
|
||
00653 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00656 c6 80 c9 00 00
|
||
00 1b mov BYTE PTR [eax+201], 27 ; 0000001bH
|
||
0065d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00660 c6 81 ca 00 00
|
||
00 03 mov BYTE PTR [ecx+202], 3
|
||
00667 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0066a c6 82 cb 00 00
|
||
00 09 mov BYTE PTR [edx+203], 9
|
||
00671 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00674 c6 80 cc 00 00
|
||
00 13 mov BYTE PTR [eax+204], 19 ; 00000013H
|
||
0067b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0067e c6 81 cd 00 00
|
||
00 0d mov BYTE PTR [ecx+205], 13 ; 0000000dH
|
||
00685 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00688 c6 82 ce 00 00
|
||
00 1e mov BYTE PTR [edx+206], 30 ; 0000001eH
|
||
0068f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00692 c6 80 cf 00 00
|
||
00 06 mov BYTE PTR [eax+207], 6
|
||
00699 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0069c c6 81 d0 00 00
|
||
00 16 mov BYTE PTR [ecx+208], 22 ; 00000016H
|
||
006a3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
006a6 c6 82 d1 00 00
|
||
00 0b mov BYTE PTR [edx+209], 11 ; 0000000bH
|
||
006ad 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
006b0 c6 80 d2 00 00
|
||
00 04 mov BYTE PTR [eax+210], 4
|
||
006b7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
006ba c6 81 d3 00 00
|
||
00 19 mov BYTE PTR [ecx+211], 25 ; 00000019H
|
||
|
||
; 62 : 16, 7, 20, 21, 29, 12, 28, 17, 1, 15, 23, 26, 5, 18, 31, 10,
|
||
; 63 : 2, 8, 24, 14, 32, 27, 3, 9, 19, 13, 30, 6, 22, 11, 4, 25
|
||
; 64 : };
|
||
; 65 : // permuted choice table (key)
|
||
; 66 : const char PC1_Table[56] = {
|
||
|
||
006c1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
006c4 c6 80 d4 00 00
|
||
00 39 mov BYTE PTR [eax+212], 57 ; 00000039H
|
||
006cb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
006ce c6 81 d5 00 00
|
||
00 31 mov BYTE PTR [ecx+213], 49 ; 00000031H
|
||
006d5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
006d8 c6 82 d6 00 00
|
||
00 29 mov BYTE PTR [edx+214], 41 ; 00000029H
|
||
006df 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
006e2 c6 80 d7 00 00
|
||
00 21 mov BYTE PTR [eax+215], 33 ; 00000021H
|
||
006e9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
006ec c6 81 d8 00 00
|
||
00 19 mov BYTE PTR [ecx+216], 25 ; 00000019H
|
||
006f3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
006f6 c6 82 d9 00 00
|
||
00 11 mov BYTE PTR [edx+217], 17 ; 00000011H
|
||
006fd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00700 c6 80 da 00 00
|
||
00 09 mov BYTE PTR [eax+218], 9
|
||
00707 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0070a c6 81 db 00 00
|
||
00 01 mov BYTE PTR [ecx+219], 1
|
||
00711 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00714 c6 82 dc 00 00
|
||
00 3a mov BYTE PTR [edx+220], 58 ; 0000003aH
|
||
0071b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0071e c6 80 dd 00 00
|
||
00 32 mov BYTE PTR [eax+221], 50 ; 00000032H
|
||
00725 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00728 c6 81 de 00 00
|
||
00 2a mov BYTE PTR [ecx+222], 42 ; 0000002aH
|
||
0072f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00732 c6 82 df 00 00
|
||
00 22 mov BYTE PTR [edx+223], 34 ; 00000022H
|
||
00739 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0073c c6 80 e0 00 00
|
||
00 1a mov BYTE PTR [eax+224], 26 ; 0000001aH
|
||
00743 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00746 c6 81 e1 00 00
|
||
00 12 mov BYTE PTR [ecx+225], 18 ; 00000012H
|
||
0074d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00750 c6 82 e2 00 00
|
||
00 0a mov BYTE PTR [edx+226], 10 ; 0000000aH
|
||
00757 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0075a c6 80 e3 00 00
|
||
00 02 mov BYTE PTR [eax+227], 2
|
||
00761 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00764 c6 81 e4 00 00
|
||
00 3b mov BYTE PTR [ecx+228], 59 ; 0000003bH
|
||
0076b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0076e c6 82 e5 00 00
|
||
00 33 mov BYTE PTR [edx+229], 51 ; 00000033H
|
||
00775 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00778 c6 80 e6 00 00
|
||
00 2b mov BYTE PTR [eax+230], 43 ; 0000002bH
|
||
0077f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00782 c6 81 e7 00 00
|
||
00 23 mov BYTE PTR [ecx+231], 35 ; 00000023H
|
||
00789 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0078c c6 82 e8 00 00
|
||
00 1b mov BYTE PTR [edx+232], 27 ; 0000001bH
|
||
00793 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00796 c6 80 e9 00 00
|
||
00 13 mov BYTE PTR [eax+233], 19 ; 00000013H
|
||
0079d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
007a0 c6 81 ea 00 00
|
||
00 0b mov BYTE PTR [ecx+234], 11 ; 0000000bH
|
||
007a7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
007aa c6 82 eb 00 00
|
||
00 03 mov BYTE PTR [edx+235], 3
|
||
007b1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
007b4 c6 80 ec 00 00
|
||
00 3c mov BYTE PTR [eax+236], 60 ; 0000003cH
|
||
007bb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
007be c6 81 ed 00 00
|
||
00 34 mov BYTE PTR [ecx+237], 52 ; 00000034H
|
||
007c5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
007c8 c6 82 ee 00 00
|
||
00 2c mov BYTE PTR [edx+238], 44 ; 0000002cH
|
||
007cf 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
007d2 c6 80 ef 00 00
|
||
00 24 mov BYTE PTR [eax+239], 36 ; 00000024H
|
||
007d9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
007dc c6 81 f0 00 00
|
||
00 3f mov BYTE PTR [ecx+240], 63 ; 0000003fH
|
||
007e3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
007e6 c6 82 f1 00 00
|
||
00 37 mov BYTE PTR [edx+241], 55 ; 00000037H
|
||
007ed 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
007f0 c6 80 f2 00 00
|
||
00 2f mov BYTE PTR [eax+242], 47 ; 0000002fH
|
||
007f7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
007fa c6 81 f3 00 00
|
||
00 27 mov BYTE PTR [ecx+243], 39 ; 00000027H
|
||
00801 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00804 c6 82 f4 00 00
|
||
00 1f mov BYTE PTR [edx+244], 31 ; 0000001fH
|
||
0080b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0080e c6 80 f5 00 00
|
||
00 17 mov BYTE PTR [eax+245], 23 ; 00000017H
|
||
00815 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00818 c6 81 f6 00 00
|
||
00 0f mov BYTE PTR [ecx+246], 15 ; 0000000fH
|
||
0081f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00822 c6 82 f7 00 00
|
||
00 07 mov BYTE PTR [edx+247], 7
|
||
00829 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0082c c6 80 f8 00 00
|
||
00 3e mov BYTE PTR [eax+248], 62 ; 0000003eH
|
||
00833 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00836 c6 81 f9 00 00
|
||
00 36 mov BYTE PTR [ecx+249], 54 ; 00000036H
|
||
0083d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00840 c6 82 fa 00 00
|
||
00 2e mov BYTE PTR [edx+250], 46 ; 0000002eH
|
||
00847 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0084a c6 80 fb 00 00
|
||
00 26 mov BYTE PTR [eax+251], 38 ; 00000026H
|
||
00851 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00854 c6 81 fc 00 00
|
||
00 1e mov BYTE PTR [ecx+252], 30 ; 0000001eH
|
||
0085b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0085e c6 82 fd 00 00
|
||
00 16 mov BYTE PTR [edx+253], 22 ; 00000016H
|
||
00865 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00868 c6 80 fe 00 00
|
||
00 0e mov BYTE PTR [eax+254], 14 ; 0000000eH
|
||
0086f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00872 c6 81 ff 00 00
|
||
00 06 mov BYTE PTR [ecx+255], 6
|
||
00879 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0087c c6 82 00 01 00
|
||
00 3d mov BYTE PTR [edx+256], 61 ; 0000003dH
|
||
00883 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00886 c6 80 01 01 00
|
||
00 35 mov BYTE PTR [eax+257], 53 ; 00000035H
|
||
0088d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00890 c6 81 02 01 00
|
||
00 2d mov BYTE PTR [ecx+258], 45 ; 0000002dH
|
||
00897 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0089a c6 82 03 01 00
|
||
00 25 mov BYTE PTR [edx+259], 37 ; 00000025H
|
||
008a1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
008a4 c6 80 04 01 00
|
||
00 1d mov BYTE PTR [eax+260], 29 ; 0000001dH
|
||
008ab 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
008ae c6 81 05 01 00
|
||
00 15 mov BYTE PTR [ecx+261], 21 ; 00000015H
|
||
008b5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
008b8 c6 82 06 01 00
|
||
00 0d mov BYTE PTR [edx+262], 13 ; 0000000dH
|
||
008bf 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
008c2 c6 80 07 01 00
|
||
00 05 mov BYTE PTR [eax+263], 5
|
||
008c9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
008cc c6 81 08 01 00
|
||
00 1c mov BYTE PTR [ecx+264], 28 ; 0000001cH
|
||
008d3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
008d6 c6 82 09 01 00
|
||
00 14 mov BYTE PTR [edx+265], 20 ; 00000014H
|
||
008dd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
008e0 c6 80 0a 01 00
|
||
00 0c mov BYTE PTR [eax+266], 12 ; 0000000cH
|
||
008e7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
008ea c6 81 0b 01 00
|
||
00 04 mov BYTE PTR [ecx+267], 4
|
||
|
||
; 67 : 57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18,
|
||
; 68 : 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36,
|
||
; 69 : 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22,
|
||
; 70 : 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4
|
||
; 71 : };
|
||
; 72 : // permuted choice key (table)
|
||
; 73 : const char PC2_Table[48] = {
|
||
|
||
008f1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
008f4 c6 80 0c 01 00
|
||
00 0e mov BYTE PTR [eax+268], 14 ; 0000000eH
|
||
008fb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
008fe c6 81 0d 01 00
|
||
00 11 mov BYTE PTR [ecx+269], 17 ; 00000011H
|
||
00905 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00908 c6 82 0e 01 00
|
||
00 0b mov BYTE PTR [edx+270], 11 ; 0000000bH
|
||
0090f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00912 c6 80 0f 01 00
|
||
00 18 mov BYTE PTR [eax+271], 24 ; 00000018H
|
||
00919 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0091c c6 81 10 01 00
|
||
00 01 mov BYTE PTR [ecx+272], 1
|
||
00923 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00926 c6 82 11 01 00
|
||
00 05 mov BYTE PTR [edx+273], 5
|
||
0092d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00930 c6 80 12 01 00
|
||
00 03 mov BYTE PTR [eax+274], 3
|
||
00937 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0093a c6 81 13 01 00
|
||
00 1c mov BYTE PTR [ecx+275], 28 ; 0000001cH
|
||
00941 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00944 c6 82 14 01 00
|
||
00 0f mov BYTE PTR [edx+276], 15 ; 0000000fH
|
||
0094b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0094e c6 80 15 01 00
|
||
00 06 mov BYTE PTR [eax+277], 6
|
||
00955 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00958 c6 81 16 01 00
|
||
00 15 mov BYTE PTR [ecx+278], 21 ; 00000015H
|
||
0095f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00962 c6 82 17 01 00
|
||
00 0a mov BYTE PTR [edx+279], 10 ; 0000000aH
|
||
00969 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0096c c6 80 18 01 00
|
||
00 17 mov BYTE PTR [eax+280], 23 ; 00000017H
|
||
00973 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00976 c6 81 19 01 00
|
||
00 13 mov BYTE PTR [ecx+281], 19 ; 00000013H
|
||
0097d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00980 c6 82 1a 01 00
|
||
00 0c mov BYTE PTR [edx+282], 12 ; 0000000cH
|
||
00987 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0098a c6 80 1b 01 00
|
||
00 04 mov BYTE PTR [eax+283], 4
|
||
00991 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00994 c6 81 1c 01 00
|
||
00 1a mov BYTE PTR [ecx+284], 26 ; 0000001aH
|
||
0099b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0099e c6 82 1d 01 00
|
||
00 08 mov BYTE PTR [edx+285], 8
|
||
009a5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
009a8 c6 80 1e 01 00
|
||
00 10 mov BYTE PTR [eax+286], 16 ; 00000010H
|
||
009af 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
009b2 c6 81 1f 01 00
|
||
00 07 mov BYTE PTR [ecx+287], 7
|
||
009b9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
009bc c6 82 20 01 00
|
||
00 1b mov BYTE PTR [edx+288], 27 ; 0000001bH
|
||
009c3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
009c6 c6 80 21 01 00
|
||
00 14 mov BYTE PTR [eax+289], 20 ; 00000014H
|
||
009cd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
009d0 c6 81 22 01 00
|
||
00 0d mov BYTE PTR [ecx+290], 13 ; 0000000dH
|
||
009d7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
009da c6 82 23 01 00
|
||
00 02 mov BYTE PTR [edx+291], 2
|
||
009e1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
009e4 c6 80 24 01 00
|
||
00 29 mov BYTE PTR [eax+292], 41 ; 00000029H
|
||
009eb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
009ee c6 81 25 01 00
|
||
00 34 mov BYTE PTR [ecx+293], 52 ; 00000034H
|
||
009f5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
009f8 c6 82 26 01 00
|
||
00 1f mov BYTE PTR [edx+294], 31 ; 0000001fH
|
||
009ff 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00a02 c6 80 27 01 00
|
||
00 25 mov BYTE PTR [eax+295], 37 ; 00000025H
|
||
00a09 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00a0c c6 81 28 01 00
|
||
00 2f mov BYTE PTR [ecx+296], 47 ; 0000002fH
|
||
00a13 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00a16 c6 82 29 01 00
|
||
00 37 mov BYTE PTR [edx+297], 55 ; 00000037H
|
||
00a1d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00a20 c6 80 2a 01 00
|
||
00 1e mov BYTE PTR [eax+298], 30 ; 0000001eH
|
||
00a27 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00a2a c6 81 2b 01 00
|
||
00 28 mov BYTE PTR [ecx+299], 40 ; 00000028H
|
||
00a31 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00a34 c6 82 2c 01 00
|
||
00 33 mov BYTE PTR [edx+300], 51 ; 00000033H
|
||
00a3b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00a3e c6 80 2d 01 00
|
||
00 2d mov BYTE PTR [eax+301], 45 ; 0000002dH
|
||
00a45 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00a48 c6 81 2e 01 00
|
||
00 21 mov BYTE PTR [ecx+302], 33 ; 00000021H
|
||
00a4f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00a52 c6 82 2f 01 00
|
||
00 30 mov BYTE PTR [edx+303], 48 ; 00000030H
|
||
00a59 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00a5c c6 80 30 01 00
|
||
00 2c mov BYTE PTR [eax+304], 44 ; 0000002cH
|
||
00a63 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00a66 c6 81 31 01 00
|
||
00 31 mov BYTE PTR [ecx+305], 49 ; 00000031H
|
||
00a6d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00a70 c6 82 32 01 00
|
||
00 27 mov BYTE PTR [edx+306], 39 ; 00000027H
|
||
00a77 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00a7a c6 80 33 01 00
|
||
00 38 mov BYTE PTR [eax+307], 56 ; 00000038H
|
||
00a81 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00a84 c6 81 34 01 00
|
||
00 22 mov BYTE PTR [ecx+308], 34 ; 00000022H
|
||
00a8b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00a8e c6 82 35 01 00
|
||
00 35 mov BYTE PTR [edx+309], 53 ; 00000035H
|
||
00a95 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00a98 c6 80 36 01 00
|
||
00 2e mov BYTE PTR [eax+310], 46 ; 0000002eH
|
||
00a9f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00aa2 c6 81 37 01 00
|
||
00 2a mov BYTE PTR [ecx+311], 42 ; 0000002aH
|
||
00aa9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00aac c6 82 38 01 00
|
||
00 32 mov BYTE PTR [edx+312], 50 ; 00000032H
|
||
00ab3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00ab6 c6 80 39 01 00
|
||
00 24 mov BYTE PTR [eax+313], 36 ; 00000024H
|
||
00abd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ac0 c6 81 3a 01 00
|
||
00 1d mov BYTE PTR [ecx+314], 29 ; 0000001dH
|
||
00ac7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00aca c6 82 3b 01 00
|
||
00 20 mov BYTE PTR [edx+315], 32 ; 00000020H
|
||
|
||
; 74 : 14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10,
|
||
; 75 : 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2,
|
||
; 76 : 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48,
|
||
; 77 : 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32
|
||
; 78 : };
|
||
; 79 : // number left rotations of pc1
|
||
; 80 : const char LOOP_Table[16] = {
|
||
|
||
00ad1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00ad4 c6 80 3c 01 00
|
||
00 01 mov BYTE PTR [eax+316], 1
|
||
00adb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ade c6 81 3d 01 00
|
||
00 01 mov BYTE PTR [ecx+317], 1
|
||
00ae5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00ae8 c6 82 3e 01 00
|
||
00 02 mov BYTE PTR [edx+318], 2
|
||
00aef 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00af2 c6 80 3f 01 00
|
||
00 02 mov BYTE PTR [eax+319], 2
|
||
00af9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00afc c6 81 40 01 00
|
||
00 02 mov BYTE PTR [ecx+320], 2
|
||
00b03 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00b06 c6 82 41 01 00
|
||
00 02 mov BYTE PTR [edx+321], 2
|
||
00b0d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00b10 c6 80 42 01 00
|
||
00 02 mov BYTE PTR [eax+322], 2
|
||
00b17 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00b1a c6 81 43 01 00
|
||
00 02 mov BYTE PTR [ecx+323], 2
|
||
00b21 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00b24 c6 82 44 01 00
|
||
00 01 mov BYTE PTR [edx+324], 1
|
||
00b2b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00b2e c6 80 45 01 00
|
||
00 02 mov BYTE PTR [eax+325], 2
|
||
00b35 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00b38 c6 81 46 01 00
|
||
00 02 mov BYTE PTR [ecx+326], 2
|
||
00b3f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00b42 c6 82 47 01 00
|
||
00 02 mov BYTE PTR [edx+327], 2
|
||
00b49 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00b4c c6 80 48 01 00
|
||
00 02 mov BYTE PTR [eax+328], 2
|
||
00b53 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00b56 c6 81 49 01 00
|
||
00 02 mov BYTE PTR [ecx+329], 2
|
||
00b5d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00b60 c6 82 4a 01 00
|
||
00 02 mov BYTE PTR [edx+330], 2
|
||
00b67 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00b6a c6 80 4b 01 00
|
||
00 01 mov BYTE PTR [eax+331], 1
|
||
|
||
; 81 : 1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1
|
||
; 82 : };
|
||
; 83 : // The (in)famous S-boxes
|
||
; 84 : const char S_Box[8][4][16] = {
|
||
|
||
00b71 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00b74 c6 80 4c 01 00
|
||
00 0e mov BYTE PTR [eax+332], 14 ; 0000000eH
|
||
00b7b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00b7e c6 81 4d 01 00
|
||
00 04 mov BYTE PTR [ecx+333], 4
|
||
00b85 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00b88 c6 82 4e 01 00
|
||
00 0d mov BYTE PTR [edx+334], 13 ; 0000000dH
|
||
00b8f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00b92 c6 80 4f 01 00
|
||
00 01 mov BYTE PTR [eax+335], 1
|
||
00b99 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00b9c c6 81 50 01 00
|
||
00 02 mov BYTE PTR [ecx+336], 2
|
||
00ba3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00ba6 c6 82 51 01 00
|
||
00 0f mov BYTE PTR [edx+337], 15 ; 0000000fH
|
||
00bad 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00bb0 c6 80 52 01 00
|
||
00 0b mov BYTE PTR [eax+338], 11 ; 0000000bH
|
||
00bb7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00bba c6 81 53 01 00
|
||
00 08 mov BYTE PTR [ecx+339], 8
|
||
00bc1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00bc4 c6 82 54 01 00
|
||
00 03 mov BYTE PTR [edx+340], 3
|
||
00bcb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00bce c6 80 55 01 00
|
||
00 0a mov BYTE PTR [eax+341], 10 ; 0000000aH
|
||
00bd5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00bd8 c6 81 56 01 00
|
||
00 06 mov BYTE PTR [ecx+342], 6
|
||
00bdf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00be2 c6 82 57 01 00
|
||
00 0c mov BYTE PTR [edx+343], 12 ; 0000000cH
|
||
00be9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00bec c6 80 58 01 00
|
||
00 05 mov BYTE PTR [eax+344], 5
|
||
00bf3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00bf6 c6 81 59 01 00
|
||
00 09 mov BYTE PTR [ecx+345], 9
|
||
00bfd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00c00 c6 82 5a 01 00
|
||
00 00 mov BYTE PTR [edx+346], 0
|
||
00c07 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00c0a c6 80 5b 01 00
|
||
00 07 mov BYTE PTR [eax+347], 7
|
||
00c11 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00c14 c6 81 5c 01 00
|
||
00 00 mov BYTE PTR [ecx+348], 0
|
||
00c1b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00c1e c6 82 5d 01 00
|
||
00 0f mov BYTE PTR [edx+349], 15 ; 0000000fH
|
||
00c25 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00c28 c6 80 5e 01 00
|
||
00 07 mov BYTE PTR [eax+350], 7
|
||
00c2f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00c32 c6 81 5f 01 00
|
||
00 04 mov BYTE PTR [ecx+351], 4
|
||
00c39 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00c3c c6 82 60 01 00
|
||
00 0e mov BYTE PTR [edx+352], 14 ; 0000000eH
|
||
00c43 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00c46 c6 80 61 01 00
|
||
00 02 mov BYTE PTR [eax+353], 2
|
||
00c4d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00c50 c6 81 62 01 00
|
||
00 0d mov BYTE PTR [ecx+354], 13 ; 0000000dH
|
||
00c57 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00c5a c6 82 63 01 00
|
||
00 01 mov BYTE PTR [edx+355], 1
|
||
00c61 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00c64 c6 80 64 01 00
|
||
00 0a mov BYTE PTR [eax+356], 10 ; 0000000aH
|
||
00c6b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00c6e c6 81 65 01 00
|
||
00 06 mov BYTE PTR [ecx+357], 6
|
||
00c75 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00c78 c6 82 66 01 00
|
||
00 0c mov BYTE PTR [edx+358], 12 ; 0000000cH
|
||
00c7f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00c82 c6 80 67 01 00
|
||
00 0b mov BYTE PTR [eax+359], 11 ; 0000000bH
|
||
00c89 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00c8c c6 81 68 01 00
|
||
00 09 mov BYTE PTR [ecx+360], 9
|
||
00c93 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00c96 c6 82 69 01 00
|
||
00 05 mov BYTE PTR [edx+361], 5
|
||
00c9d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00ca0 c6 80 6a 01 00
|
||
00 03 mov BYTE PTR [eax+362], 3
|
||
00ca7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00caa c6 81 6b 01 00
|
||
00 08 mov BYTE PTR [ecx+363], 8
|
||
00cb1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00cb4 c6 82 6c 01 00
|
||
00 04 mov BYTE PTR [edx+364], 4
|
||
00cbb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00cbe c6 80 6d 01 00
|
||
00 01 mov BYTE PTR [eax+365], 1
|
||
00cc5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00cc8 c6 81 6e 01 00
|
||
00 0e mov BYTE PTR [ecx+366], 14 ; 0000000eH
|
||
00ccf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00cd2 c6 82 6f 01 00
|
||
00 08 mov BYTE PTR [edx+367], 8
|
||
00cd9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00cdc c6 80 70 01 00
|
||
00 0d mov BYTE PTR [eax+368], 13 ; 0000000dH
|
||
00ce3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ce6 c6 81 71 01 00
|
||
00 06 mov BYTE PTR [ecx+369], 6
|
||
00ced 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00cf0 c6 82 72 01 00
|
||
00 02 mov BYTE PTR [edx+370], 2
|
||
00cf7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00cfa c6 80 73 01 00
|
||
00 0b mov BYTE PTR [eax+371], 11 ; 0000000bH
|
||
00d01 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00d04 c6 81 74 01 00
|
||
00 0f mov BYTE PTR [ecx+372], 15 ; 0000000fH
|
||
00d0b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00d0e c6 82 75 01 00
|
||
00 0c mov BYTE PTR [edx+373], 12 ; 0000000cH
|
||
00d15 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00d18 c6 80 76 01 00
|
||
00 09 mov BYTE PTR [eax+374], 9
|
||
00d1f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00d22 c6 81 77 01 00
|
||
00 07 mov BYTE PTR [ecx+375], 7
|
||
00d29 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00d2c c6 82 78 01 00
|
||
00 03 mov BYTE PTR [edx+376], 3
|
||
00d33 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00d36 c6 80 79 01 00
|
||
00 0a mov BYTE PTR [eax+377], 10 ; 0000000aH
|
||
00d3d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00d40 c6 81 7a 01 00
|
||
00 05 mov BYTE PTR [ecx+378], 5
|
||
00d47 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00d4a c6 82 7b 01 00
|
||
00 00 mov BYTE PTR [edx+379], 0
|
||
00d51 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00d54 c6 80 7c 01 00
|
||
00 0f mov BYTE PTR [eax+380], 15 ; 0000000fH
|
||
00d5b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00d5e c6 81 7d 01 00
|
||
00 0c mov BYTE PTR [ecx+381], 12 ; 0000000cH
|
||
00d65 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00d68 c6 82 7e 01 00
|
||
00 08 mov BYTE PTR [edx+382], 8
|
||
00d6f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00d72 c6 80 7f 01 00
|
||
00 02 mov BYTE PTR [eax+383], 2
|
||
00d79 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00d7c c6 81 80 01 00
|
||
00 04 mov BYTE PTR [ecx+384], 4
|
||
00d83 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00d86 c6 82 81 01 00
|
||
00 09 mov BYTE PTR [edx+385], 9
|
||
00d8d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00d90 c6 80 82 01 00
|
||
00 01 mov BYTE PTR [eax+386], 1
|
||
00d97 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00d9a c6 81 83 01 00
|
||
00 07 mov BYTE PTR [ecx+387], 7
|
||
00da1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00da4 c6 82 84 01 00
|
||
00 05 mov BYTE PTR [edx+388], 5
|
||
00dab 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00dae c6 80 85 01 00
|
||
00 0b mov BYTE PTR [eax+389], 11 ; 0000000bH
|
||
00db5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00db8 c6 81 86 01 00
|
||
00 03 mov BYTE PTR [ecx+390], 3
|
||
00dbf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00dc2 c6 82 87 01 00
|
||
00 0e mov BYTE PTR [edx+391], 14 ; 0000000eH
|
||
00dc9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00dcc c6 80 88 01 00
|
||
00 0a mov BYTE PTR [eax+392], 10 ; 0000000aH
|
||
00dd3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00dd6 c6 81 89 01 00
|
||
00 00 mov BYTE PTR [ecx+393], 0
|
||
00ddd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00de0 c6 82 8a 01 00
|
||
00 06 mov BYTE PTR [edx+394], 6
|
||
00de7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00dea c6 80 8b 01 00
|
||
00 0d mov BYTE PTR [eax+395], 13 ; 0000000dH
|
||
00df1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00df4 c6 81 8c 01 00
|
||
00 0f mov BYTE PTR [ecx+396], 15 ; 0000000fH
|
||
00dfb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00dfe c6 82 8d 01 00
|
||
00 01 mov BYTE PTR [edx+397], 1
|
||
00e05 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00e08 c6 80 8e 01 00
|
||
00 08 mov BYTE PTR [eax+398], 8
|
||
00e0f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00e12 c6 81 8f 01 00
|
||
00 0e mov BYTE PTR [ecx+399], 14 ; 0000000eH
|
||
00e19 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00e1c c6 82 90 01 00
|
||
00 06 mov BYTE PTR [edx+400], 6
|
||
00e23 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00e26 c6 80 91 01 00
|
||
00 0b mov BYTE PTR [eax+401], 11 ; 0000000bH
|
||
00e2d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00e30 c6 81 92 01 00
|
||
00 03 mov BYTE PTR [ecx+402], 3
|
||
00e37 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00e3a c6 82 93 01 00
|
||
00 04 mov BYTE PTR [edx+403], 4
|
||
00e41 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00e44 c6 80 94 01 00
|
||
00 09 mov BYTE PTR [eax+404], 9
|
||
00e4b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00e4e c6 81 95 01 00
|
||
00 07 mov BYTE PTR [ecx+405], 7
|
||
00e55 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00e58 c6 82 96 01 00
|
||
00 02 mov BYTE PTR [edx+406], 2
|
||
00e5f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00e62 c6 80 97 01 00
|
||
00 0d mov BYTE PTR [eax+407], 13 ; 0000000dH
|
||
00e69 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00e6c c6 81 98 01 00
|
||
00 0c mov BYTE PTR [ecx+408], 12 ; 0000000cH
|
||
00e73 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00e76 c6 82 99 01 00
|
||
00 00 mov BYTE PTR [edx+409], 0
|
||
00e7d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00e80 c6 80 9a 01 00
|
||
00 05 mov BYTE PTR [eax+410], 5
|
||
00e87 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00e8a c6 81 9b 01 00
|
||
00 0a mov BYTE PTR [ecx+411], 10 ; 0000000aH
|
||
00e91 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00e94 c6 82 9c 01 00
|
||
00 03 mov BYTE PTR [edx+412], 3
|
||
00e9b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00e9e c6 80 9d 01 00
|
||
00 0d mov BYTE PTR [eax+413], 13 ; 0000000dH
|
||
00ea5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ea8 c6 81 9e 01 00
|
||
00 04 mov BYTE PTR [ecx+414], 4
|
||
00eaf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00eb2 c6 82 9f 01 00
|
||
00 07 mov BYTE PTR [edx+415], 7
|
||
00eb9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00ebc c6 80 a0 01 00
|
||
00 0f mov BYTE PTR [eax+416], 15 ; 0000000fH
|
||
00ec3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ec6 c6 81 a1 01 00
|
||
00 02 mov BYTE PTR [ecx+417], 2
|
||
00ecd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00ed0 c6 82 a2 01 00
|
||
00 08 mov BYTE PTR [edx+418], 8
|
||
00ed7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00eda c6 80 a3 01 00
|
||
00 0e mov BYTE PTR [eax+419], 14 ; 0000000eH
|
||
00ee1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ee4 c6 81 a4 01 00
|
||
00 0c mov BYTE PTR [ecx+420], 12 ; 0000000cH
|
||
00eeb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00eee c6 82 a5 01 00
|
||
00 00 mov BYTE PTR [edx+421], 0
|
||
00ef5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00ef8 c6 80 a6 01 00
|
||
00 01 mov BYTE PTR [eax+422], 1
|
||
00eff 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00f02 c6 81 a7 01 00
|
||
00 0a mov BYTE PTR [ecx+423], 10 ; 0000000aH
|
||
00f09 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00f0c c6 82 a8 01 00
|
||
00 06 mov BYTE PTR [edx+424], 6
|
||
00f13 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00f16 c6 80 a9 01 00
|
||
00 09 mov BYTE PTR [eax+425], 9
|
||
00f1d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00f20 c6 81 aa 01 00
|
||
00 0b mov BYTE PTR [ecx+426], 11 ; 0000000bH
|
||
00f27 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00f2a c6 82 ab 01 00
|
||
00 05 mov BYTE PTR [edx+427], 5
|
||
00f31 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00f34 c6 80 ac 01 00
|
||
00 00 mov BYTE PTR [eax+428], 0
|
||
00f3b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00f3e c6 81 ad 01 00
|
||
00 0e mov BYTE PTR [ecx+429], 14 ; 0000000eH
|
||
00f45 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00f48 c6 82 ae 01 00
|
||
00 07 mov BYTE PTR [edx+430], 7
|
||
00f4f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00f52 c6 80 af 01 00
|
||
00 0b mov BYTE PTR [eax+431], 11 ; 0000000bH
|
||
00f59 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00f5c c6 81 b0 01 00
|
||
00 0a mov BYTE PTR [ecx+432], 10 ; 0000000aH
|
||
00f63 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00f66 c6 82 b1 01 00
|
||
00 04 mov BYTE PTR [edx+433], 4
|
||
00f6d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00f70 c6 80 b2 01 00
|
||
00 0d mov BYTE PTR [eax+434], 13 ; 0000000dH
|
||
00f77 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00f7a c6 81 b3 01 00
|
||
00 01 mov BYTE PTR [ecx+435], 1
|
||
00f81 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00f84 c6 82 b4 01 00
|
||
00 05 mov BYTE PTR [edx+436], 5
|
||
00f8b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00f8e c6 80 b5 01 00
|
||
00 08 mov BYTE PTR [eax+437], 8
|
||
00f95 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00f98 c6 81 b6 01 00
|
||
00 0c mov BYTE PTR [ecx+438], 12 ; 0000000cH
|
||
00f9f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00fa2 c6 82 b7 01 00
|
||
00 06 mov BYTE PTR [edx+439], 6
|
||
00fa9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00fac c6 80 b8 01 00
|
||
00 09 mov BYTE PTR [eax+440], 9
|
||
00fb3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00fb6 c6 81 b9 01 00
|
||
00 03 mov BYTE PTR [ecx+441], 3
|
||
00fbd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00fc0 c6 82 ba 01 00
|
||
00 02 mov BYTE PTR [edx+442], 2
|
||
00fc7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00fca c6 80 bb 01 00
|
||
00 0f mov BYTE PTR [eax+443], 15 ; 0000000fH
|
||
00fd1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00fd4 c6 81 bc 01 00
|
||
00 0d mov BYTE PTR [ecx+444], 13 ; 0000000dH
|
||
00fdb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00fde c6 82 bd 01 00
|
||
00 08 mov BYTE PTR [edx+445], 8
|
||
00fe5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00fe8 c6 80 be 01 00
|
||
00 0a mov BYTE PTR [eax+446], 10 ; 0000000aH
|
||
00fef 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00ff2 c6 81 bf 01 00
|
||
00 01 mov BYTE PTR [ecx+447], 1
|
||
00ff9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00ffc c6 82 c0 01 00
|
||
00 03 mov BYTE PTR [edx+448], 3
|
||
01003 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01006 c6 80 c1 01 00
|
||
00 0f mov BYTE PTR [eax+449], 15 ; 0000000fH
|
||
0100d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01010 c6 81 c2 01 00
|
||
00 04 mov BYTE PTR [ecx+450], 4
|
||
01017 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0101a c6 82 c3 01 00
|
||
00 02 mov BYTE PTR [edx+451], 2
|
||
01021 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01024 c6 80 c4 01 00
|
||
00 0b mov BYTE PTR [eax+452], 11 ; 0000000bH
|
||
0102b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0102e c6 81 c5 01 00
|
||
00 06 mov BYTE PTR [ecx+453], 6
|
||
01035 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01038 c6 82 c6 01 00
|
||
00 07 mov BYTE PTR [edx+454], 7
|
||
0103f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01042 c6 80 c7 01 00
|
||
00 0c mov BYTE PTR [eax+455], 12 ; 0000000cH
|
||
01049 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0104c c6 81 c8 01 00
|
||
00 00 mov BYTE PTR [ecx+456], 0
|
||
01053 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01056 c6 82 c9 01 00
|
||
00 05 mov BYTE PTR [edx+457], 5
|
||
0105d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01060 c6 80 ca 01 00
|
||
00 0e mov BYTE PTR [eax+458], 14 ; 0000000eH
|
||
01067 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0106a c6 81 cb 01 00
|
||
00 09 mov BYTE PTR [ecx+459], 9
|
||
01071 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01074 c6 82 cc 01 00
|
||
00 0a mov BYTE PTR [edx+460], 10 ; 0000000aH
|
||
0107b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0107e c6 80 cd 01 00
|
||
00 00 mov BYTE PTR [eax+461], 0
|
||
01085 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01088 c6 81 ce 01 00
|
||
00 09 mov BYTE PTR [ecx+462], 9
|
||
0108f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01092 c6 82 cf 01 00
|
||
00 0e mov BYTE PTR [edx+463], 14 ; 0000000eH
|
||
01099 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0109c c6 80 d0 01 00
|
||
00 06 mov BYTE PTR [eax+464], 6
|
||
010a3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
010a6 c6 81 d1 01 00
|
||
00 03 mov BYTE PTR [ecx+465], 3
|
||
010ad 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
010b0 c6 82 d2 01 00
|
||
00 0f mov BYTE PTR [edx+466], 15 ; 0000000fH
|
||
010b7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
010ba c6 80 d3 01 00
|
||
00 05 mov BYTE PTR [eax+467], 5
|
||
010c1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
010c4 c6 81 d4 01 00
|
||
00 01 mov BYTE PTR [ecx+468], 1
|
||
010cb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
010ce c6 82 d5 01 00
|
||
00 0d mov BYTE PTR [edx+469], 13 ; 0000000dH
|
||
010d5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
010d8 c6 80 d6 01 00
|
||
00 0c mov BYTE PTR [eax+470], 12 ; 0000000cH
|
||
010df 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
010e2 c6 81 d7 01 00
|
||
00 07 mov BYTE PTR [ecx+471], 7
|
||
010e9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
010ec c6 82 d8 01 00
|
||
00 0b mov BYTE PTR [edx+472], 11 ; 0000000bH
|
||
010f3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
010f6 c6 80 d9 01 00
|
||
00 04 mov BYTE PTR [eax+473], 4
|
||
010fd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01100 c6 81 da 01 00
|
||
00 02 mov BYTE PTR [ecx+474], 2
|
||
01107 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0110a c6 82 db 01 00
|
||
00 08 mov BYTE PTR [edx+475], 8
|
||
01111 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01114 c6 80 dc 01 00
|
||
00 0d mov BYTE PTR [eax+476], 13 ; 0000000dH
|
||
0111b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0111e c6 81 dd 01 00
|
||
00 07 mov BYTE PTR [ecx+477], 7
|
||
01125 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01128 c6 82 de 01 00
|
||
00 00 mov BYTE PTR [edx+478], 0
|
||
0112f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01132 c6 80 df 01 00
|
||
00 09 mov BYTE PTR [eax+479], 9
|
||
01139 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0113c c6 81 e0 01 00
|
||
00 03 mov BYTE PTR [ecx+480], 3
|
||
01143 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01146 c6 82 e1 01 00
|
||
00 04 mov BYTE PTR [edx+481], 4
|
||
0114d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01150 c6 80 e2 01 00
|
||
00 06 mov BYTE PTR [eax+482], 6
|
||
01157 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0115a c6 81 e3 01 00
|
||
00 0a mov BYTE PTR [ecx+483], 10 ; 0000000aH
|
||
01161 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01164 c6 82 e4 01 00
|
||
00 02 mov BYTE PTR [edx+484], 2
|
||
0116b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0116e c6 80 e5 01 00
|
||
00 08 mov BYTE PTR [eax+485], 8
|
||
01175 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01178 c6 81 e6 01 00
|
||
00 05 mov BYTE PTR [ecx+486], 5
|
||
0117f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01182 c6 82 e7 01 00
|
||
00 0e mov BYTE PTR [edx+487], 14 ; 0000000eH
|
||
01189 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0118c c6 80 e8 01 00
|
||
00 0c mov BYTE PTR [eax+488], 12 ; 0000000cH
|
||
01193 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01196 c6 81 e9 01 00
|
||
00 0b mov BYTE PTR [ecx+489], 11 ; 0000000bH
|
||
0119d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
011a0 c6 82 ea 01 00
|
||
00 0f mov BYTE PTR [edx+490], 15 ; 0000000fH
|
||
011a7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
011aa c6 80 eb 01 00
|
||
00 01 mov BYTE PTR [eax+491], 1
|
||
011b1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
011b4 c6 81 ec 01 00
|
||
00 0d mov BYTE PTR [ecx+492], 13 ; 0000000dH
|
||
011bb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
011be c6 82 ed 01 00
|
||
00 06 mov BYTE PTR [edx+493], 6
|
||
011c5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
011c8 c6 80 ee 01 00
|
||
00 04 mov BYTE PTR [eax+494], 4
|
||
011cf 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
011d2 c6 81 ef 01 00
|
||
00 09 mov BYTE PTR [ecx+495], 9
|
||
011d9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
011dc c6 82 f0 01 00
|
||
00 08 mov BYTE PTR [edx+496], 8
|
||
011e3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
011e6 c6 80 f1 01 00
|
||
00 0f mov BYTE PTR [eax+497], 15 ; 0000000fH
|
||
011ed 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
011f0 c6 81 f2 01 00
|
||
00 03 mov BYTE PTR [ecx+498], 3
|
||
011f7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
011fa c6 82 f3 01 00
|
||
00 00 mov BYTE PTR [edx+499], 0
|
||
01201 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01204 c6 80 f4 01 00
|
||
00 0b mov BYTE PTR [eax+500], 11 ; 0000000bH
|
||
0120b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0120e c6 81 f5 01 00
|
||
00 01 mov BYTE PTR [ecx+501], 1
|
||
01215 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01218 c6 82 f6 01 00
|
||
00 02 mov BYTE PTR [edx+502], 2
|
||
0121f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01222 c6 80 f7 01 00
|
||
00 0c mov BYTE PTR [eax+503], 12 ; 0000000cH
|
||
01229 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0122c c6 81 f8 01 00
|
||
00 05 mov BYTE PTR [ecx+504], 5
|
||
01233 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01236 c6 82 f9 01 00
|
||
00 0a mov BYTE PTR [edx+505], 10 ; 0000000aH
|
||
0123d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01240 c6 80 fa 01 00
|
||
00 0e mov BYTE PTR [eax+506], 14 ; 0000000eH
|
||
01247 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0124a c6 81 fb 01 00
|
||
00 07 mov BYTE PTR [ecx+507], 7
|
||
01251 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01254 c6 82 fc 01 00
|
||
00 01 mov BYTE PTR [edx+508], 1
|
||
0125b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0125e c6 80 fd 01 00
|
||
00 0a mov BYTE PTR [eax+509], 10 ; 0000000aH
|
||
01265 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01268 c6 81 fe 01 00
|
||
00 0d mov BYTE PTR [ecx+510], 13 ; 0000000dH
|
||
0126f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01272 c6 82 ff 01 00
|
||
00 00 mov BYTE PTR [edx+511], 0
|
||
01279 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0127c c6 80 00 02 00
|
||
00 06 mov BYTE PTR [eax+512], 6
|
||
01283 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01286 c6 81 01 02 00
|
||
00 09 mov BYTE PTR [ecx+513], 9
|
||
0128d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01290 c6 82 02 02 00
|
||
00 08 mov BYTE PTR [edx+514], 8
|
||
01297 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0129a c6 80 03 02 00
|
||
00 07 mov BYTE PTR [eax+515], 7
|
||
012a1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
012a4 c6 81 04 02 00
|
||
00 04 mov BYTE PTR [ecx+516], 4
|
||
012ab 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
012ae c6 82 05 02 00
|
||
00 0f mov BYTE PTR [edx+517], 15 ; 0000000fH
|
||
012b5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
012b8 c6 80 06 02 00
|
||
00 0e mov BYTE PTR [eax+518], 14 ; 0000000eH
|
||
012bf 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
012c2 c6 81 07 02 00
|
||
00 03 mov BYTE PTR [ecx+519], 3
|
||
012c9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
012cc c6 82 08 02 00
|
||
00 0b mov BYTE PTR [edx+520], 11 ; 0000000bH
|
||
012d3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
012d6 c6 80 09 02 00
|
||
00 05 mov BYTE PTR [eax+521], 5
|
||
012dd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
012e0 c6 81 0a 02 00
|
||
00 02 mov BYTE PTR [ecx+522], 2
|
||
012e7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
012ea c6 82 0b 02 00
|
||
00 0c mov BYTE PTR [edx+523], 12 ; 0000000cH
|
||
012f1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
012f4 c6 80 0c 02 00
|
||
00 07 mov BYTE PTR [eax+524], 7
|
||
012fb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
012fe c6 81 0d 02 00
|
||
00 0d mov BYTE PTR [ecx+525], 13 ; 0000000dH
|
||
01305 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01308 c6 82 0e 02 00
|
||
00 0e mov BYTE PTR [edx+526], 14 ; 0000000eH
|
||
0130f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01312 c6 80 0f 02 00
|
||
00 03 mov BYTE PTR [eax+527], 3
|
||
01319 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0131c c6 81 10 02 00
|
||
00 00 mov BYTE PTR [ecx+528], 0
|
||
01323 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01326 c6 82 11 02 00
|
||
00 06 mov BYTE PTR [edx+529], 6
|
||
0132d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01330 c6 80 12 02 00
|
||
00 09 mov BYTE PTR [eax+530], 9
|
||
01337 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0133a c6 81 13 02 00
|
||
00 0a mov BYTE PTR [ecx+531], 10 ; 0000000aH
|
||
01341 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01344 c6 82 14 02 00
|
||
00 01 mov BYTE PTR [edx+532], 1
|
||
0134b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0134e c6 80 15 02 00
|
||
00 02 mov BYTE PTR [eax+533], 2
|
||
01355 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01358 c6 81 16 02 00
|
||
00 08 mov BYTE PTR [ecx+534], 8
|
||
0135f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01362 c6 82 17 02 00
|
||
00 05 mov BYTE PTR [edx+535], 5
|
||
01369 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0136c c6 80 18 02 00
|
||
00 0b mov BYTE PTR [eax+536], 11 ; 0000000bH
|
||
01373 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01376 c6 81 19 02 00
|
||
00 0c mov BYTE PTR [ecx+537], 12 ; 0000000cH
|
||
0137d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01380 c6 82 1a 02 00
|
||
00 04 mov BYTE PTR [edx+538], 4
|
||
01387 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0138a c6 80 1b 02 00
|
||
00 0f mov BYTE PTR [eax+539], 15 ; 0000000fH
|
||
01391 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01394 c6 81 1c 02 00
|
||
00 0d mov BYTE PTR [ecx+540], 13 ; 0000000dH
|
||
0139b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0139e c6 82 1d 02 00
|
||
00 08 mov BYTE PTR [edx+541], 8
|
||
013a5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
013a8 c6 80 1e 02 00
|
||
00 0b mov BYTE PTR [eax+542], 11 ; 0000000bH
|
||
013af 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
013b2 c6 81 1f 02 00
|
||
00 05 mov BYTE PTR [ecx+543], 5
|
||
013b9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
013bc c6 82 20 02 00
|
||
00 06 mov BYTE PTR [edx+544], 6
|
||
013c3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
013c6 c6 80 21 02 00
|
||
00 0f mov BYTE PTR [eax+545], 15 ; 0000000fH
|
||
013cd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
013d0 c6 81 22 02 00
|
||
00 00 mov BYTE PTR [ecx+546], 0
|
||
013d7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
013da c6 82 23 02 00
|
||
00 03 mov BYTE PTR [edx+547], 3
|
||
013e1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
013e4 c6 80 24 02 00
|
||
00 04 mov BYTE PTR [eax+548], 4
|
||
013eb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
013ee c6 81 25 02 00
|
||
00 07 mov BYTE PTR [ecx+549], 7
|
||
013f5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
013f8 c6 82 26 02 00
|
||
00 02 mov BYTE PTR [edx+550], 2
|
||
013ff 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01402 c6 80 27 02 00
|
||
00 0c mov BYTE PTR [eax+551], 12 ; 0000000cH
|
||
01409 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0140c c6 81 28 02 00
|
||
00 01 mov BYTE PTR [ecx+552], 1
|
||
01413 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01416 c6 82 29 02 00
|
||
00 0a mov BYTE PTR [edx+553], 10 ; 0000000aH
|
||
0141d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01420 c6 80 2a 02 00
|
||
00 0e mov BYTE PTR [eax+554], 14 ; 0000000eH
|
||
01427 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0142a c6 81 2b 02 00
|
||
00 09 mov BYTE PTR [ecx+555], 9
|
||
01431 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01434 c6 82 2c 02 00
|
||
00 0a mov BYTE PTR [edx+556], 10 ; 0000000aH
|
||
0143b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0143e c6 80 2d 02 00
|
||
00 06 mov BYTE PTR [eax+557], 6
|
||
01445 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01448 c6 81 2e 02 00
|
||
00 09 mov BYTE PTR [ecx+558], 9
|
||
0144f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01452 c6 82 2f 02 00
|
||
00 00 mov BYTE PTR [edx+559], 0
|
||
01459 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0145c c6 80 30 02 00
|
||
00 0c mov BYTE PTR [eax+560], 12 ; 0000000cH
|
||
01463 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01466 c6 81 31 02 00
|
||
00 0b mov BYTE PTR [ecx+561], 11 ; 0000000bH
|
||
0146d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01470 c6 82 32 02 00
|
||
00 07 mov BYTE PTR [edx+562], 7
|
||
01477 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0147a c6 80 33 02 00
|
||
00 0d mov BYTE PTR [eax+563], 13 ; 0000000dH
|
||
01481 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01484 c6 81 34 02 00
|
||
00 0f mov BYTE PTR [ecx+564], 15 ; 0000000fH
|
||
0148b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0148e c6 82 35 02 00
|
||
00 01 mov BYTE PTR [edx+565], 1
|
||
01495 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01498 c6 80 36 02 00
|
||
00 03 mov BYTE PTR [eax+566], 3
|
||
0149f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
014a2 c6 81 37 02 00
|
||
00 0e mov BYTE PTR [ecx+567], 14 ; 0000000eH
|
||
014a9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
014ac c6 82 38 02 00
|
||
00 05 mov BYTE PTR [edx+568], 5
|
||
014b3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
014b6 c6 80 39 02 00
|
||
00 02 mov BYTE PTR [eax+569], 2
|
||
014bd 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
014c0 c6 81 3a 02 00
|
||
00 08 mov BYTE PTR [ecx+570], 8
|
||
014c7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
014ca c6 82 3b 02 00
|
||
00 04 mov BYTE PTR [edx+571], 4
|
||
014d1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
014d4 c6 80 3c 02 00
|
||
00 03 mov BYTE PTR [eax+572], 3
|
||
014db 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
014de c6 81 3d 02 00
|
||
00 0f mov BYTE PTR [ecx+573], 15 ; 0000000fH
|
||
014e5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
014e8 c6 82 3e 02 00
|
||
00 00 mov BYTE PTR [edx+574], 0
|
||
014ef 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
014f2 c6 80 3f 02 00
|
||
00 06 mov BYTE PTR [eax+575], 6
|
||
014f9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
014fc c6 81 40 02 00
|
||
00 0a mov BYTE PTR [ecx+576], 10 ; 0000000aH
|
||
01503 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01506 c6 82 41 02 00
|
||
00 01 mov BYTE PTR [edx+577], 1
|
||
0150d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01510 c6 80 42 02 00
|
||
00 0d mov BYTE PTR [eax+578], 13 ; 0000000dH
|
||
01517 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0151a c6 81 43 02 00
|
||
00 08 mov BYTE PTR [ecx+579], 8
|
||
01521 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01524 c6 82 44 02 00
|
||
00 09 mov BYTE PTR [edx+580], 9
|
||
0152b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0152e c6 80 45 02 00
|
||
00 04 mov BYTE PTR [eax+581], 4
|
||
01535 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01538 c6 81 46 02 00
|
||
00 05 mov BYTE PTR [ecx+582], 5
|
||
0153f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01542 c6 82 47 02 00
|
||
00 0b mov BYTE PTR [edx+583], 11 ; 0000000bH
|
||
01549 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0154c c6 80 48 02 00
|
||
00 0c mov BYTE PTR [eax+584], 12 ; 0000000cH
|
||
01553 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01556 c6 81 49 02 00
|
||
00 07 mov BYTE PTR [ecx+585], 7
|
||
0155d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01560 c6 82 4a 02 00
|
||
00 02 mov BYTE PTR [edx+586], 2
|
||
01567 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0156a c6 80 4b 02 00
|
||
00 0e mov BYTE PTR [eax+587], 14 ; 0000000eH
|
||
01571 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01574 c6 81 4c 02 00
|
||
00 02 mov BYTE PTR [ecx+588], 2
|
||
0157b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0157e c6 82 4d 02 00
|
||
00 0c mov BYTE PTR [edx+589], 12 ; 0000000cH
|
||
01585 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01588 c6 80 4e 02 00
|
||
00 04 mov BYTE PTR [eax+590], 4
|
||
0158f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01592 c6 81 4f 02 00
|
||
00 01 mov BYTE PTR [ecx+591], 1
|
||
01599 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0159c c6 82 50 02 00
|
||
00 07 mov BYTE PTR [edx+592], 7
|
||
015a3 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
015a6 c6 80 51 02 00
|
||
00 0a mov BYTE PTR [eax+593], 10 ; 0000000aH
|
||
015ad 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
015b0 c6 81 52 02 00
|
||
00 0b mov BYTE PTR [ecx+594], 11 ; 0000000bH
|
||
015b7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
015ba c6 82 53 02 00
|
||
00 06 mov BYTE PTR [edx+595], 6
|
||
015c1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
015c4 c6 80 54 02 00
|
||
00 08 mov BYTE PTR [eax+596], 8
|
||
015cb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
015ce c6 81 55 02 00
|
||
00 05 mov BYTE PTR [ecx+597], 5
|
||
015d5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
015d8 c6 82 56 02 00
|
||
00 03 mov BYTE PTR [edx+598], 3
|
||
015df 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
015e2 c6 80 57 02 00
|
||
00 0f mov BYTE PTR [eax+599], 15 ; 0000000fH
|
||
015e9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
015ec c6 81 58 02 00
|
||
00 0d mov BYTE PTR [ecx+600], 13 ; 0000000dH
|
||
015f3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
015f6 c6 82 59 02 00
|
||
00 00 mov BYTE PTR [edx+601], 0
|
||
015fd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01600 c6 80 5a 02 00
|
||
00 0e mov BYTE PTR [eax+602], 14 ; 0000000eH
|
||
01607 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0160a c6 81 5b 02 00
|
||
00 09 mov BYTE PTR [ecx+603], 9
|
||
01611 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01614 c6 82 5c 02 00
|
||
00 0e mov BYTE PTR [edx+604], 14 ; 0000000eH
|
||
0161b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0161e c6 80 5d 02 00
|
||
00 0b mov BYTE PTR [eax+605], 11 ; 0000000bH
|
||
01625 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01628 c6 81 5e 02 00
|
||
00 02 mov BYTE PTR [ecx+606], 2
|
||
0162f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01632 c6 82 5f 02 00
|
||
00 0c mov BYTE PTR [edx+607], 12 ; 0000000cH
|
||
01639 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0163c c6 80 60 02 00
|
||
00 04 mov BYTE PTR [eax+608], 4
|
||
01643 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01646 c6 81 61 02 00
|
||
00 07 mov BYTE PTR [ecx+609], 7
|
||
0164d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01650 c6 82 62 02 00
|
||
00 0d mov BYTE PTR [edx+610], 13 ; 0000000dH
|
||
01657 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0165a c6 80 63 02 00
|
||
00 01 mov BYTE PTR [eax+611], 1
|
||
01661 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01664 c6 81 64 02 00
|
||
00 05 mov BYTE PTR [ecx+612], 5
|
||
0166b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0166e c6 82 65 02 00
|
||
00 00 mov BYTE PTR [edx+613], 0
|
||
01675 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01678 c6 80 66 02 00
|
||
00 0f mov BYTE PTR [eax+614], 15 ; 0000000fH
|
||
0167f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01682 c6 81 67 02 00
|
||
00 0a mov BYTE PTR [ecx+615], 10 ; 0000000aH
|
||
01689 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0168c c6 82 68 02 00
|
||
00 03 mov BYTE PTR [edx+616], 3
|
||
01693 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01696 c6 80 69 02 00
|
||
00 09 mov BYTE PTR [eax+617], 9
|
||
0169d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
016a0 c6 81 6a 02 00
|
||
00 08 mov BYTE PTR [ecx+618], 8
|
||
016a7 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
016aa c6 82 6b 02 00
|
||
00 06 mov BYTE PTR [edx+619], 6
|
||
016b1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
016b4 c6 80 6c 02 00
|
||
00 04 mov BYTE PTR [eax+620], 4
|
||
016bb 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
016be c6 81 6d 02 00
|
||
00 02 mov BYTE PTR [ecx+621], 2
|
||
016c5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
016c8 c6 82 6e 02 00
|
||
00 01 mov BYTE PTR [edx+622], 1
|
||
016cf 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
016d2 c6 80 6f 02 00
|
||
00 0b mov BYTE PTR [eax+623], 11 ; 0000000bH
|
||
016d9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
016dc c6 81 70 02 00
|
||
00 0a mov BYTE PTR [ecx+624], 10 ; 0000000aH
|
||
016e3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
016e6 c6 82 71 02 00
|
||
00 0d mov BYTE PTR [edx+625], 13 ; 0000000dH
|
||
016ed 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
016f0 c6 80 72 02 00
|
||
00 07 mov BYTE PTR [eax+626], 7
|
||
016f7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
016fa c6 81 73 02 00
|
||
00 08 mov BYTE PTR [ecx+627], 8
|
||
01701 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01704 c6 82 74 02 00
|
||
00 0f mov BYTE PTR [edx+628], 15 ; 0000000fH
|
||
0170b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0170e c6 80 75 02 00
|
||
00 09 mov BYTE PTR [eax+629], 9
|
||
01715 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01718 c6 81 76 02 00
|
||
00 0c mov BYTE PTR [ecx+630], 12 ; 0000000cH
|
||
0171f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01722 c6 82 77 02 00
|
||
00 05 mov BYTE PTR [edx+631], 5
|
||
01729 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0172c c6 80 78 02 00
|
||
00 06 mov BYTE PTR [eax+632], 6
|
||
01733 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01736 c6 81 79 02 00
|
||
00 03 mov BYTE PTR [ecx+633], 3
|
||
0173d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01740 c6 82 7a 02 00
|
||
00 00 mov BYTE PTR [edx+634], 0
|
||
01747 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0174a c6 80 7b 02 00
|
||
00 0e mov BYTE PTR [eax+635], 14 ; 0000000eH
|
||
01751 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01754 c6 81 7c 02 00
|
||
00 0b mov BYTE PTR [ecx+636], 11 ; 0000000bH
|
||
0175b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0175e c6 82 7d 02 00
|
||
00 08 mov BYTE PTR [edx+637], 8
|
||
01765 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01768 c6 80 7e 02 00
|
||
00 0c mov BYTE PTR [eax+638], 12 ; 0000000cH
|
||
0176f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01772 c6 81 7f 02 00
|
||
00 07 mov BYTE PTR [ecx+639], 7
|
||
01779 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0177c c6 82 80 02 00
|
||
00 01 mov BYTE PTR [edx+640], 1
|
||
01783 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01786 c6 80 81 02 00
|
||
00 0e mov BYTE PTR [eax+641], 14 ; 0000000eH
|
||
0178d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01790 c6 81 82 02 00
|
||
00 02 mov BYTE PTR [ecx+642], 2
|
||
01797 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0179a c6 82 83 02 00
|
||
00 0d mov BYTE PTR [edx+643], 13 ; 0000000dH
|
||
017a1 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
017a4 c6 80 84 02 00
|
||
00 06 mov BYTE PTR [eax+644], 6
|
||
017ab 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
017ae c6 81 85 02 00
|
||
00 0f mov BYTE PTR [ecx+645], 15 ; 0000000fH
|
||
017b5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
017b8 c6 82 86 02 00
|
||
00 00 mov BYTE PTR [edx+646], 0
|
||
017bf 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
017c2 c6 80 87 02 00
|
||
00 09 mov BYTE PTR [eax+647], 9
|
||
017c9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
017cc c6 81 88 02 00
|
||
00 0a mov BYTE PTR [ecx+648], 10 ; 0000000aH
|
||
017d3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
017d6 c6 82 89 02 00
|
||
00 04 mov BYTE PTR [edx+649], 4
|
||
017dd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
017e0 c6 80 8a 02 00
|
||
00 05 mov BYTE PTR [eax+650], 5
|
||
017e7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
017ea c6 81 8b 02 00
|
||
00 03 mov BYTE PTR [ecx+651], 3
|
||
017f1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
017f4 c6 82 8c 02 00
|
||
00 0c mov BYTE PTR [edx+652], 12 ; 0000000cH
|
||
017fb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
017fe c6 80 8d 02 00
|
||
00 01 mov BYTE PTR [eax+653], 1
|
||
01805 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01808 c6 81 8e 02 00
|
||
00 0a mov BYTE PTR [ecx+654], 10 ; 0000000aH
|
||
0180f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01812 c6 82 8f 02 00
|
||
00 0f mov BYTE PTR [edx+655], 15 ; 0000000fH
|
||
01819 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0181c c6 80 90 02 00
|
||
00 09 mov BYTE PTR [eax+656], 9
|
||
01823 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01826 c6 81 91 02 00
|
||
00 02 mov BYTE PTR [ecx+657], 2
|
||
0182d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01830 c6 82 92 02 00
|
||
00 06 mov BYTE PTR [edx+658], 6
|
||
01837 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0183a c6 80 93 02 00
|
||
00 08 mov BYTE PTR [eax+659], 8
|
||
01841 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01844 c6 81 94 02 00
|
||
00 00 mov BYTE PTR [ecx+660], 0
|
||
0184b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0184e c6 82 95 02 00
|
||
00 0d mov BYTE PTR [edx+661], 13 ; 0000000dH
|
||
01855 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01858 c6 80 96 02 00
|
||
00 03 mov BYTE PTR [eax+662], 3
|
||
0185f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01862 c6 81 97 02 00
|
||
00 04 mov BYTE PTR [ecx+663], 4
|
||
01869 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0186c c6 82 98 02 00
|
||
00 0e mov BYTE PTR [edx+664], 14 ; 0000000eH
|
||
01873 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01876 c6 80 99 02 00
|
||
00 07 mov BYTE PTR [eax+665], 7
|
||
0187d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01880 c6 81 9a 02 00
|
||
00 05 mov BYTE PTR [ecx+666], 5
|
||
01887 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0188a c6 82 9b 02 00
|
||
00 0b mov BYTE PTR [edx+667], 11 ; 0000000bH
|
||
01891 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01894 c6 80 9c 02 00
|
||
00 0a mov BYTE PTR [eax+668], 10 ; 0000000aH
|
||
0189b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0189e c6 81 9d 02 00
|
||
00 0f mov BYTE PTR [ecx+669], 15 ; 0000000fH
|
||
018a5 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
018a8 c6 82 9e 02 00
|
||
00 04 mov BYTE PTR [edx+670], 4
|
||
018af 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
018b2 c6 80 9f 02 00
|
||
00 02 mov BYTE PTR [eax+671], 2
|
||
018b9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
018bc c6 81 a0 02 00
|
||
00 07 mov BYTE PTR [ecx+672], 7
|
||
018c3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
018c6 c6 82 a1 02 00
|
||
00 0c mov BYTE PTR [edx+673], 12 ; 0000000cH
|
||
018cd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
018d0 c6 80 a2 02 00
|
||
00 09 mov BYTE PTR [eax+674], 9
|
||
018d7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
018da c6 81 a3 02 00
|
||
00 05 mov BYTE PTR [ecx+675], 5
|
||
018e1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
018e4 c6 82 a4 02 00
|
||
00 06 mov BYTE PTR [edx+676], 6
|
||
018eb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
018ee c6 80 a5 02 00
|
||
00 01 mov BYTE PTR [eax+677], 1
|
||
018f5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
018f8 c6 81 a6 02 00
|
||
00 0d mov BYTE PTR [ecx+678], 13 ; 0000000dH
|
||
018ff 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01902 c6 82 a7 02 00
|
||
00 0e mov BYTE PTR [edx+679], 14 ; 0000000eH
|
||
01909 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0190c c6 80 a8 02 00
|
||
00 00 mov BYTE PTR [eax+680], 0
|
||
01913 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01916 c6 81 a9 02 00
|
||
00 0b mov BYTE PTR [ecx+681], 11 ; 0000000bH
|
||
0191d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01920 c6 82 aa 02 00
|
||
00 03 mov BYTE PTR [edx+682], 3
|
||
01927 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0192a c6 80 ab 02 00
|
||
00 08 mov BYTE PTR [eax+683], 8
|
||
01931 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01934 c6 81 ac 02 00
|
||
00 09 mov BYTE PTR [ecx+684], 9
|
||
0193b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0193e c6 82 ad 02 00
|
||
00 0e mov BYTE PTR [edx+685], 14 ; 0000000eH
|
||
01945 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01948 c6 80 ae 02 00
|
||
00 0f mov BYTE PTR [eax+686], 15 ; 0000000fH
|
||
0194f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01952 c6 81 af 02 00
|
||
00 05 mov BYTE PTR [ecx+687], 5
|
||
01959 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0195c c6 82 b0 02 00
|
||
00 02 mov BYTE PTR [edx+688], 2
|
||
01963 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01966 c6 80 b1 02 00
|
||
00 08 mov BYTE PTR [eax+689], 8
|
||
0196d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01970 c6 81 b2 02 00
|
||
00 0c mov BYTE PTR [ecx+690], 12 ; 0000000cH
|
||
01977 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
0197a c6 82 b3 02 00
|
||
00 03 mov BYTE PTR [edx+691], 3
|
||
01981 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01984 c6 80 b4 02 00
|
||
00 07 mov BYTE PTR [eax+692], 7
|
||
0198b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0198e c6 81 b5 02 00
|
||
00 00 mov BYTE PTR [ecx+693], 0
|
||
01995 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01998 c6 82 b6 02 00
|
||
00 04 mov BYTE PTR [edx+694], 4
|
||
0199f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
019a2 c6 80 b7 02 00
|
||
00 0a mov BYTE PTR [eax+695], 10 ; 0000000aH
|
||
019a9 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
019ac c6 81 b8 02 00
|
||
00 01 mov BYTE PTR [ecx+696], 1
|
||
019b3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
019b6 c6 82 b9 02 00
|
||
00 0d mov BYTE PTR [edx+697], 13 ; 0000000dH
|
||
019bd 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
019c0 c6 80 ba 02 00
|
||
00 0b mov BYTE PTR [eax+698], 11 ; 0000000bH
|
||
019c7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
019ca c6 81 bb 02 00
|
||
00 06 mov BYTE PTR [ecx+699], 6
|
||
019d1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
019d4 c6 82 bc 02 00
|
||
00 04 mov BYTE PTR [edx+700], 4
|
||
019db 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
019de c6 80 bd 02 00
|
||
00 03 mov BYTE PTR [eax+701], 3
|
||
019e5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
019e8 c6 81 be 02 00
|
||
00 02 mov BYTE PTR [ecx+702], 2
|
||
019ef 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
019f2 c6 82 bf 02 00
|
||
00 0c mov BYTE PTR [edx+703], 12 ; 0000000cH
|
||
019f9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
019fc c6 80 c0 02 00
|
||
00 09 mov BYTE PTR [eax+704], 9
|
||
01a03 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01a06 c6 81 c1 02 00
|
||
00 05 mov BYTE PTR [ecx+705], 5
|
||
01a0d 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01a10 c6 82 c2 02 00
|
||
00 0f mov BYTE PTR [edx+706], 15 ; 0000000fH
|
||
01a17 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01a1a c6 80 c3 02 00
|
||
00 0a mov BYTE PTR [eax+707], 10 ; 0000000aH
|
||
01a21 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01a24 c6 81 c4 02 00
|
||
00 0b mov BYTE PTR [ecx+708], 11 ; 0000000bH
|
||
01a2b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01a2e c6 82 c5 02 00
|
||
00 0e mov BYTE PTR [edx+709], 14 ; 0000000eH
|
||
01a35 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01a38 c6 80 c6 02 00
|
||
00 01 mov BYTE PTR [eax+710], 1
|
||
01a3f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01a42 c6 81 c7 02 00
|
||
00 07 mov BYTE PTR [ecx+711], 7
|
||
01a49 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01a4c c6 82 c8 02 00
|
||
00 06 mov BYTE PTR [edx+712], 6
|
||
01a53 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01a56 c6 80 c9 02 00
|
||
00 00 mov BYTE PTR [eax+713], 0
|
||
01a5d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01a60 c6 81 ca 02 00
|
||
00 08 mov BYTE PTR [ecx+714], 8
|
||
01a67 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01a6a c6 82 cb 02 00
|
||
00 0d mov BYTE PTR [edx+715], 13 ; 0000000dH
|
||
01a71 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01a74 c6 80 cc 02 00
|
||
00 04 mov BYTE PTR [eax+716], 4
|
||
01a7b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01a7e c6 81 cd 02 00
|
||
00 0b mov BYTE PTR [ecx+717], 11 ; 0000000bH
|
||
01a85 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01a88 c6 82 ce 02 00
|
||
00 02 mov BYTE PTR [edx+718], 2
|
||
01a8f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01a92 c6 80 cf 02 00
|
||
00 0e mov BYTE PTR [eax+719], 14 ; 0000000eH
|
||
01a99 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01a9c c6 81 d0 02 00
|
||
00 0f mov BYTE PTR [ecx+720], 15 ; 0000000fH
|
||
01aa3 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01aa6 c6 82 d1 02 00
|
||
00 00 mov BYTE PTR [edx+721], 0
|
||
01aad 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01ab0 c6 80 d2 02 00
|
||
00 08 mov BYTE PTR [eax+722], 8
|
||
01ab7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01aba c6 81 d3 02 00
|
||
00 0d mov BYTE PTR [ecx+723], 13 ; 0000000dH
|
||
01ac1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ac4 c6 82 d4 02 00
|
||
00 03 mov BYTE PTR [edx+724], 3
|
||
01acb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01ace c6 80 d5 02 00
|
||
00 0c mov BYTE PTR [eax+725], 12 ; 0000000cH
|
||
01ad5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01ad8 c6 81 d6 02 00
|
||
00 09 mov BYTE PTR [ecx+726], 9
|
||
01adf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ae2 c6 82 d7 02 00
|
||
00 07 mov BYTE PTR [edx+727], 7
|
||
01ae9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01aec c6 80 d8 02 00
|
||
00 05 mov BYTE PTR [eax+728], 5
|
||
01af3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01af6 c6 81 d9 02 00
|
||
00 0a mov BYTE PTR [ecx+729], 10 ; 0000000aH
|
||
01afd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01b00 c6 82 da 02 00
|
||
00 06 mov BYTE PTR [edx+730], 6
|
||
01b07 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01b0a c6 80 db 02 00
|
||
00 01 mov BYTE PTR [eax+731], 1
|
||
01b11 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01b14 c6 81 dc 02 00
|
||
00 0d mov BYTE PTR [ecx+732], 13 ; 0000000dH
|
||
01b1b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01b1e c6 82 dd 02 00
|
||
00 00 mov BYTE PTR [edx+733], 0
|
||
01b25 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01b28 c6 80 de 02 00
|
||
00 0b mov BYTE PTR [eax+734], 11 ; 0000000bH
|
||
01b2f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01b32 c6 81 df 02 00
|
||
00 07 mov BYTE PTR [ecx+735], 7
|
||
01b39 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01b3c c6 82 e0 02 00
|
||
00 04 mov BYTE PTR [edx+736], 4
|
||
01b43 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01b46 c6 80 e1 02 00
|
||
00 09 mov BYTE PTR [eax+737], 9
|
||
01b4d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01b50 c6 81 e2 02 00
|
||
00 01 mov BYTE PTR [ecx+738], 1
|
||
01b57 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01b5a c6 82 e3 02 00
|
||
00 0a mov BYTE PTR [edx+739], 10 ; 0000000aH
|
||
01b61 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01b64 c6 80 e4 02 00
|
||
00 0e mov BYTE PTR [eax+740], 14 ; 0000000eH
|
||
01b6b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01b6e c6 81 e5 02 00
|
||
00 03 mov BYTE PTR [ecx+741], 3
|
||
01b75 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01b78 c6 82 e6 02 00
|
||
00 05 mov BYTE PTR [edx+742], 5
|
||
01b7f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01b82 c6 80 e7 02 00
|
||
00 0c mov BYTE PTR [eax+743], 12 ; 0000000cH
|
||
01b89 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01b8c c6 81 e8 02 00
|
||
00 02 mov BYTE PTR [ecx+744], 2
|
||
01b93 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01b96 c6 82 e9 02 00
|
||
00 0f mov BYTE PTR [edx+745], 15 ; 0000000fH
|
||
01b9d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01ba0 c6 80 ea 02 00
|
||
00 08 mov BYTE PTR [eax+746], 8
|
||
01ba7 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01baa c6 81 eb 02 00
|
||
00 06 mov BYTE PTR [ecx+747], 6
|
||
01bb1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01bb4 c6 82 ec 02 00
|
||
00 01 mov BYTE PTR [edx+748], 1
|
||
01bbb 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01bbe c6 80 ed 02 00
|
||
00 04 mov BYTE PTR [eax+749], 4
|
||
01bc5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01bc8 c6 81 ee 02 00
|
||
00 0b mov BYTE PTR [ecx+750], 11 ; 0000000bH
|
||
01bcf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01bd2 c6 82 ef 02 00
|
||
00 0d mov BYTE PTR [edx+751], 13 ; 0000000dH
|
||
01bd9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01bdc c6 80 f0 02 00
|
||
00 0c mov BYTE PTR [eax+752], 12 ; 0000000cH
|
||
01be3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01be6 c6 81 f1 02 00
|
||
00 03 mov BYTE PTR [ecx+753], 3
|
||
01bed 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01bf0 c6 82 f2 02 00
|
||
00 07 mov BYTE PTR [edx+754], 7
|
||
01bf7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01bfa c6 80 f3 02 00
|
||
00 0e mov BYTE PTR [eax+755], 14 ; 0000000eH
|
||
01c01 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01c04 c6 81 f4 02 00
|
||
00 0a mov BYTE PTR [ecx+756], 10 ; 0000000aH
|
||
01c0b 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01c0e c6 82 f5 02 00
|
||
00 0f mov BYTE PTR [edx+757], 15 ; 0000000fH
|
||
01c15 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01c18 c6 80 f6 02 00
|
||
00 06 mov BYTE PTR [eax+758], 6
|
||
01c1f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01c22 c6 81 f7 02 00
|
||
00 08 mov BYTE PTR [ecx+759], 8
|
||
01c29 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01c2c c6 82 f8 02 00
|
||
00 00 mov BYTE PTR [edx+760], 0
|
||
01c33 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01c36 c6 80 f9 02 00
|
||
00 05 mov BYTE PTR [eax+761], 5
|
||
01c3d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01c40 c6 81 fa 02 00
|
||
00 09 mov BYTE PTR [ecx+762], 9
|
||
01c47 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01c4a c6 82 fb 02 00
|
||
00 02 mov BYTE PTR [edx+763], 2
|
||
01c51 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01c54 c6 80 fc 02 00
|
||
00 06 mov BYTE PTR [eax+764], 6
|
||
01c5b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01c5e c6 81 fd 02 00
|
||
00 0b mov BYTE PTR [ecx+765], 11 ; 0000000bH
|
||
01c65 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01c68 c6 82 fe 02 00
|
||
00 0d mov BYTE PTR [edx+766], 13 ; 0000000dH
|
||
01c6f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01c72 c6 80 ff 02 00
|
||
00 08 mov BYTE PTR [eax+767], 8
|
||
01c79 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01c7c c6 81 00 03 00
|
||
00 01 mov BYTE PTR [ecx+768], 1
|
||
01c83 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01c86 c6 82 01 03 00
|
||
00 04 mov BYTE PTR [edx+769], 4
|
||
01c8d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01c90 c6 80 02 03 00
|
||
00 0a mov BYTE PTR [eax+770], 10 ; 0000000aH
|
||
01c97 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01c9a c6 81 03 03 00
|
||
00 07 mov BYTE PTR [ecx+771], 7
|
||
01ca1 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ca4 c6 82 04 03 00
|
||
00 09 mov BYTE PTR [edx+772], 9
|
||
01cab 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01cae c6 80 05 03 00
|
||
00 05 mov BYTE PTR [eax+773], 5
|
||
01cb5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01cb8 c6 81 06 03 00
|
||
00 00 mov BYTE PTR [ecx+774], 0
|
||
01cbf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01cc2 c6 82 07 03 00
|
||
00 0f mov BYTE PTR [edx+775], 15 ; 0000000fH
|
||
01cc9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01ccc c6 80 08 03 00
|
||
00 0e mov BYTE PTR [eax+776], 14 ; 0000000eH
|
||
01cd3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01cd6 c6 81 09 03 00
|
||
00 02 mov BYTE PTR [ecx+777], 2
|
||
01cdd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ce0 c6 82 0a 03 00
|
||
00 03 mov BYTE PTR [edx+778], 3
|
||
01ce7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01cea c6 80 0b 03 00
|
||
00 0c mov BYTE PTR [eax+779], 12 ; 0000000cH
|
||
01cf1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01cf4 c6 81 0c 03 00
|
||
00 0d mov BYTE PTR [ecx+780], 13 ; 0000000dH
|
||
01cfb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01cfe c6 82 0d 03 00
|
||
00 02 mov BYTE PTR [edx+781], 2
|
||
01d05 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01d08 c6 80 0e 03 00
|
||
00 08 mov BYTE PTR [eax+782], 8
|
||
01d0f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01d12 c6 81 0f 03 00
|
||
00 04 mov BYTE PTR [ecx+783], 4
|
||
01d19 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01d1c c6 82 10 03 00
|
||
00 06 mov BYTE PTR [edx+784], 6
|
||
01d23 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01d26 c6 80 11 03 00
|
||
00 0f mov BYTE PTR [eax+785], 15 ; 0000000fH
|
||
01d2d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01d30 c6 81 12 03 00
|
||
00 0b mov BYTE PTR [ecx+786], 11 ; 0000000bH
|
||
01d37 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01d3a c6 82 13 03 00
|
||
00 01 mov BYTE PTR [edx+787], 1
|
||
01d41 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01d44 c6 80 14 03 00
|
||
00 0a mov BYTE PTR [eax+788], 10 ; 0000000aH
|
||
01d4b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01d4e c6 81 15 03 00
|
||
00 09 mov BYTE PTR [ecx+789], 9
|
||
01d55 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01d58 c6 82 16 03 00
|
||
00 03 mov BYTE PTR [edx+790], 3
|
||
01d5f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01d62 c6 80 17 03 00
|
||
00 0e mov BYTE PTR [eax+791], 14 ; 0000000eH
|
||
01d69 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01d6c c6 81 18 03 00
|
||
00 05 mov BYTE PTR [ecx+792], 5
|
||
01d73 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01d76 c6 82 19 03 00
|
||
00 00 mov BYTE PTR [edx+793], 0
|
||
01d7d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01d80 c6 80 1a 03 00
|
||
00 0c mov BYTE PTR [eax+794], 12 ; 0000000cH
|
||
01d87 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01d8a c6 81 1b 03 00
|
||
00 07 mov BYTE PTR [ecx+795], 7
|
||
01d91 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01d94 c6 82 1c 03 00
|
||
00 01 mov BYTE PTR [edx+796], 1
|
||
01d9b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01d9e c6 80 1d 03 00
|
||
00 0f mov BYTE PTR [eax+797], 15 ; 0000000fH
|
||
01da5 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01da8 c6 81 1e 03 00
|
||
00 0d mov BYTE PTR [ecx+798], 13 ; 0000000dH
|
||
01daf 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01db2 c6 82 1f 03 00
|
||
00 08 mov BYTE PTR [edx+799], 8
|
||
01db9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01dbc c6 80 20 03 00
|
||
00 0a mov BYTE PTR [eax+800], 10 ; 0000000aH
|
||
01dc3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01dc6 c6 81 21 03 00
|
||
00 03 mov BYTE PTR [ecx+801], 3
|
||
01dcd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01dd0 c6 82 22 03 00
|
||
00 07 mov BYTE PTR [edx+802], 7
|
||
01dd7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01dda c6 80 23 03 00
|
||
00 04 mov BYTE PTR [eax+803], 4
|
||
01de1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01de4 c6 81 24 03 00
|
||
00 0c mov BYTE PTR [ecx+804], 12 ; 0000000cH
|
||
01deb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01dee c6 82 25 03 00
|
||
00 05 mov BYTE PTR [edx+805], 5
|
||
01df5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01df8 c6 80 26 03 00
|
||
00 06 mov BYTE PTR [eax+806], 6
|
||
01dff 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01e02 c6 81 27 03 00
|
||
00 0b mov BYTE PTR [ecx+807], 11 ; 0000000bH
|
||
01e09 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01e0c c6 82 28 03 00
|
||
00 00 mov BYTE PTR [edx+808], 0
|
||
01e13 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01e16 c6 80 29 03 00
|
||
00 0e mov BYTE PTR [eax+809], 14 ; 0000000eH
|
||
01e1d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01e20 c6 81 2a 03 00
|
||
00 09 mov BYTE PTR [ecx+810], 9
|
||
01e27 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01e2a c6 82 2b 03 00
|
||
00 02 mov BYTE PTR [edx+811], 2
|
||
01e31 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01e34 c6 80 2c 03 00
|
||
00 07 mov BYTE PTR [eax+812], 7
|
||
01e3b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01e3e c6 81 2d 03 00
|
||
00 0b mov BYTE PTR [ecx+813], 11 ; 0000000bH
|
||
01e45 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01e48 c6 82 2e 03 00
|
||
00 04 mov BYTE PTR [edx+814], 4
|
||
01e4f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01e52 c6 80 2f 03 00
|
||
00 01 mov BYTE PTR [eax+815], 1
|
||
01e59 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01e5c c6 81 30 03 00
|
||
00 09 mov BYTE PTR [ecx+816], 9
|
||
01e63 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01e66 c6 82 31 03 00
|
||
00 0c mov BYTE PTR [edx+817], 12 ; 0000000cH
|
||
01e6d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01e70 c6 80 32 03 00
|
||
00 0e mov BYTE PTR [eax+818], 14 ; 0000000eH
|
||
01e77 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01e7a c6 81 33 03 00
|
||
00 02 mov BYTE PTR [ecx+819], 2
|
||
01e81 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01e84 c6 82 34 03 00
|
||
00 00 mov BYTE PTR [edx+820], 0
|
||
01e8b 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01e8e c6 80 35 03 00
|
||
00 06 mov BYTE PTR [eax+821], 6
|
||
01e95 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01e98 c6 81 36 03 00
|
||
00 0a mov BYTE PTR [ecx+822], 10 ; 0000000aH
|
||
01e9f 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ea2 c6 82 37 03 00
|
||
00 0d mov BYTE PTR [edx+823], 13 ; 0000000dH
|
||
01ea9 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01eac c6 80 38 03 00
|
||
00 0f mov BYTE PTR [eax+824], 15 ; 0000000fH
|
||
01eb3 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01eb6 c6 81 39 03 00
|
||
00 03 mov BYTE PTR [ecx+825], 3
|
||
01ebd 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ec0 c6 82 3a 03 00
|
||
00 05 mov BYTE PTR [edx+826], 5
|
||
01ec7 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01eca c6 80 3b 03 00
|
||
00 08 mov BYTE PTR [eax+827], 8
|
||
01ed1 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01ed4 c6 81 3c 03 00
|
||
00 02 mov BYTE PTR [ecx+828], 2
|
||
01edb 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01ede c6 82 3d 03 00
|
||
00 01 mov BYTE PTR [edx+829], 1
|
||
01ee5 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01ee8 c6 80 3e 03 00
|
||
00 0e mov BYTE PTR [eax+830], 14 ; 0000000eH
|
||
01eef 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01ef2 c6 81 3f 03 00
|
||
00 07 mov BYTE PTR [ecx+831], 7
|
||
01ef9 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01efc c6 82 40 03 00
|
||
00 04 mov BYTE PTR [edx+832], 4
|
||
01f03 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01f06 c6 80 41 03 00
|
||
00 0a mov BYTE PTR [eax+833], 10 ; 0000000aH
|
||
01f0d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01f10 c6 81 42 03 00
|
||
00 08 mov BYTE PTR [ecx+834], 8
|
||
01f17 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01f1a c6 82 43 03 00
|
||
00 0d mov BYTE PTR [edx+835], 13 ; 0000000dH
|
||
01f21 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01f24 c6 80 44 03 00
|
||
00 0f mov BYTE PTR [eax+836], 15 ; 0000000fH
|
||
01f2b 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01f2e c6 81 45 03 00
|
||
00 0c mov BYTE PTR [ecx+837], 12 ; 0000000cH
|
||
01f35 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01f38 c6 82 46 03 00
|
||
00 09 mov BYTE PTR [edx+838], 9
|
||
01f3f 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01f42 c6 80 47 03 00
|
||
00 00 mov BYTE PTR [eax+839], 0
|
||
01f49 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01f4c c6 81 48 03 00
|
||
00 03 mov BYTE PTR [ecx+840], 3
|
||
01f53 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
01f56 c6 82 49 03 00
|
||
00 05 mov BYTE PTR [edx+841], 5
|
||
01f5d 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01f60 c6 80 4a 03 00
|
||
00 06 mov BYTE PTR [eax+842], 6
|
||
01f67 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
01f6a c6 81 4b 03 00
|
||
00 0b mov BYTE PTR [ecx+843], 11 ; 0000000bH
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
|
||
; 24 : }
|
||
|
||
01f71 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
01f74 5f pop edi
|
||
01f75 5e pop esi
|
||
01f76 5b pop ebx
|
||
01f77 8b e5 mov esp, ebp
|
||
01f79 5d pop ebp
|
||
01f7a c3 ret 0
|
||
??0CDes@@QAE@XZ ENDP ; CDes::CDes
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
_TEXT SEGMENT
|
||
tv163 = -7636 ; size = 4
|
||
tv84 = -7632 ; size = 4
|
||
$T2 = -7628 ; size = 4
|
||
$T3 = -7624 ; size = 4
|
||
_NXlog$4 = -7108 ; size = 6056
|
||
_b$ = -1052 ; size = 4
|
||
_szBuf$ = -1048 ; size = 1024
|
||
_this$ = -24 ; size = 4
|
||
__$ArrayPad$ = -20 ; size = 4
|
||
__$EHRec$ = -16 ; size = 16
|
||
_pIn$ = 8 ; size = 4
|
||
_inLen$ = 12 ; size = 4
|
||
_pOut$ = 16 ; size = 4
|
||
_outLen$ = 20 ; size = 4
|
||
_pKey$ = 24 ; size = 4
|
||
_keyLen$ = 28 ; size = 4
|
||
?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z PROC ; CDes::Decrypt, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 172 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 51 push ecx
|
||
00012 b8 c4 1d 00 00 mov eax, 7620 ; 00001dc4H
|
||
00017 e8 00 00 00 00 call __chkstk
|
||
0001c a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
00021 33 c5 xor eax, ebp
|
||
00023 89 45 ec mov DWORD PTR __$ArrayPad$[ebp], eax
|
||
00026 53 push ebx
|
||
00027 56 push esi
|
||
00028 57 push edi
|
||
00029 50 push eax
|
||
0002a 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp+4]
|
||
0002d 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
00033 89 65 f0 mov DWORD PTR __$EHRec$[ebp], esp
|
||
00036 89 4d e8 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 173 : char szBuf[1024]={0};
|
||
|
||
00039 68 00 04 00 00 push 1024 ; 00000400H
|
||
0003e 6a 00 push 0
|
||
00040 8d 85 e8 fb ff
|
||
ff lea eax, DWORD PTR _szBuf$[ebp]
|
||
00046 50 push eax
|
||
00047 e8 00 00 00 00 call _memset
|
||
0004c 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 174 : memset( pOut , 0 , outLen );
|
||
|
||
0004f 8b 45 14 mov eax, DWORD PTR _outLen$[ebp]
|
||
00052 8b 08 mov ecx, DWORD PTR [eax]
|
||
00054 51 push ecx
|
||
00055 6a 00 push 0
|
||
00057 8b 55 10 mov edx, DWORD PTR _pOut$[ebp]
|
||
0005a 52 push edx
|
||
0005b e8 00 00 00 00 call _memset
|
||
00060 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 175 : HexToAscii( pIn , szBuf );
|
||
|
||
00063 8d 85 e8 fb ff
|
||
ff lea eax, DWORD PTR _szBuf$[ebp]
|
||
00069 50 push eax
|
||
0006a 8b 4d 08 mov ecx, DWORD PTR _pIn$[ebp]
|
||
0006d 51 push ecx
|
||
0006e 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
|
||
00071 e8 00 00 00 00 call ?HexToAscii@CDes@@IAEXPAD0@Z ; CDes::HexToAscii
|
||
|
||
; 176 : inLen = inLen/2;
|
||
|
||
00076 8b 45 0c mov eax, DWORD PTR _inLen$[ebp]
|
||
00079 99 cdq
|
||
0007a 2b c2 sub eax, edx
|
||
0007c d1 f8 sar eax, 1
|
||
0007e 89 45 0c mov DWORD PTR _inLen$[ebp], eax
|
||
|
||
; 177 : BOOL b = false;
|
||
|
||
00081 c7 85 e4 fb ff
|
||
ff 00 00 00 00 mov DWORD PTR _b$[ebp], 0
|
||
|
||
; 178 : try
|
||
|
||
0008b c7 45 fc 00 00
|
||
00 00 mov DWORD PTR __$EHRec$[ebp+12], 0
|
||
|
||
; 179 : {
|
||
; 180 : b = Des_Go( pOut , szBuf , inLen , pKey , keyLen , DECRYPT_DES );
|
||
|
||
00092 6a 01 push 1
|
||
00094 8b 45 1c mov eax, DWORD PTR _keyLen$[ebp]
|
||
00097 50 push eax
|
||
00098 8b 4d 18 mov ecx, DWORD PTR _pKey$[ebp]
|
||
0009b 51 push ecx
|
||
0009c 8b 55 0c mov edx, DWORD PTR _inLen$[ebp]
|
||
0009f 52 push edx
|
||
000a0 8d 85 e8 fb ff
|
||
ff lea eax, DWORD PTR _szBuf$[ebp]
|
||
000a6 50 push eax
|
||
000a7 8b 4d 10 mov ecx, DWORD PTR _pOut$[ebp]
|
||
000aa 51 push ecx
|
||
000ab 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
|
||
000ae e8 00 00 00 00 call ?Des_Go@CDes@@IAE_NPAD0JPBDH_N@Z ; CDes::Des_Go
|
||
000b3 0f b6 d0 movzx edx, al
|
||
000b6 89 95 e4 fb ff
|
||
ff mov DWORD PTR _b$[ebp], edx
|
||
|
||
; 181 : }
|
||
|
||
000bc e9 9a 00 00 00 jmp $LN6@Decrypt
|
||
__catch$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$0:
|
||
|
||
; 182 : catch (...)
|
||
; 183 : {
|
||
; 184 : #ifndef MOBSETSMS_SDK
|
||
; 185 : LOG_APPERROR(_T("T"));
|
||
|
||
000c1 8d 8d 3c e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
000c7 e8 00 00 00 00 call ??0CSAStatusLog@@QAE@XZ ; CSAStatusLog::CSAStatusLog
|
||
000cc c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+12], 2
|
||
000d0 51 push ecx
|
||
000d1 8b cc mov ecx, esp
|
||
000d3 89 a5 38 e2 ff
|
||
ff mov DWORD PTR $T3[ebp], esp
|
||
000d9 68 00 00 00 00 push OFFSET ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
|
||
000de e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
000e3 89 85 30 e2 ff
|
||
ff mov DWORD PTR tv84[ebp], eax
|
||
000e9 c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+12], 3
|
||
000ed 51 push ecx
|
||
000ee 8b cc mov ecx, esp
|
||
000f0 89 a5 34 e2 ff
|
||
ff mov DWORD PTR $T2[ebp], esp
|
||
000f6 68 00 00 00 00 push OFFSET ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
|
||
000fb e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
00100 89 85 2c e2 ff
|
||
ff mov DWORD PTR tv163[ebp], eax
|
||
00106 c6 45 fc 04 mov BYTE PTR __$EHRec$[ebp+12], 4
|
||
0010a c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+12], 2
|
||
0010e 8d 8d 3c e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
00114 e8 00 00 00 00 call ?Init@CSAStatusLog@@QAEXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
|
||
00119 a1 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA
|
||
0011e 83 c0 0d add eax, 13 ; 0000000dH
|
||
00121 50 push eax
|
||
00122 68 00 00 00 00 push OFFSET ??_C@_07OKGDHKCM@Decrypt@
|
||
00127 68 00 00 00 00 push OFFSET ??_C@_0CJ@CDDOEPDI@D?3?2Works?2Corpsms_2010?2public?2de@
|
||
0012c 68 00 00 00 00 push OFFSET ??_C@_13JKNELIBG@?$AAT@
|
||
00131 8d 8d 3c e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
00137 e8 00 00 00 00 call ?LogError@CSAStatusLog@@QAEHPB_WPBD1J@Z ; CSAStatusLog::LogError
|
||
0013c c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+12], 1
|
||
00140 8d 8d 3c e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
00146 e8 00 00 00 00 call ??1CSAStatusLog@@QAE@XZ ; CSAStatusLog::~CSAStatusLog
|
||
|
||
; 186 : #endif
|
||
; 187 : b = false;
|
||
|
||
0014b c7 85 e4 fb ff
|
||
ff 00 00 00 00 mov DWORD PTR _b$[ebp], 0
|
||
|
||
; 188 : }
|
||
|
||
00155 b8 00 00 00 00 mov eax, $LN12@Decrypt
|
||
0015a c3 ret 0
|
||
$LN6@Decrypt:
|
||
0015b c7 45 fc ff ff
|
||
ff ff mov DWORD PTR __$EHRec$[ebp+12], -1
|
||
00162 eb 07 jmp SHORT __tryend$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$1
|
||
$LN12@Decrypt:
|
||
00164 c7 45 fc ff ff
|
||
ff ff mov DWORD PTR __$EHRec$[ebp+12], -1
|
||
__tryend$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$1:
|
||
|
||
; 189 : if ( b )
|
||
|
||
0016b 83 bd e4 fb ff
|
||
ff 00 cmp DWORD PTR _b$[ebp], 0
|
||
00172 74 06 je SHORT $LN3@Decrypt
|
||
|
||
; 190 : {
|
||
; 191 : /*
|
||
; 192 : long outLen2 = outLen;
|
||
; 193 : outLen = (long)strlen( pOut );
|
||
; 194 : memset( pOut+outLen,0,outLen2-outLen); //<2F><><EFBFBD><EFBFBD><F3B2BFB7><EFBFBD>0
|
||
; 195 : */
|
||
; 196 : return true;
|
||
|
||
00174 b0 01 mov al, 1
|
||
00176 eb 18 jmp SHORT $LN1@Decrypt
|
||
|
||
; 197 : }
|
||
|
||
00178 eb 14 jmp SHORT $LN4@Decrypt
|
||
$LN3@Decrypt:
|
||
|
||
; 198 : else
|
||
; 199 : {
|
||
; 200 : memset( pOut , 0 , outLen );
|
||
|
||
0017a 8b 45 14 mov eax, DWORD PTR _outLen$[ebp]
|
||
0017d 8b 08 mov ecx, DWORD PTR [eax]
|
||
0017f 51 push ecx
|
||
00180 6a 00 push 0
|
||
00182 8b 55 10 mov edx, DWORD PTR _pOut$[ebp]
|
||
00185 52 push edx
|
||
00186 e8 00 00 00 00 call _memset
|
||
0018b 83 c4 0c add esp, 12 ; 0000000cH
|
||
$LN4@Decrypt:
|
||
|
||
; 201 : }
|
||
; 202 : return false;
|
||
|
||
0018e 32 c0 xor al, al
|
||
$LN1@Decrypt:
|
||
|
||
; 203 : }
|
||
|
||
00190 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp+4]
|
||
00193 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
0019a 59 pop ecx
|
||
0019b 5f pop edi
|
||
0019c 5e pop esi
|
||
0019d 5b pop ebx
|
||
0019e 8b 4d ec mov ecx, DWORD PTR __$ArrayPad$[ebp]
|
||
001a1 33 cd xor ecx, ebp
|
||
001a3 e8 00 00 00 00 call @__security_check_cookie@4
|
||
001a8 8b e5 mov esp, ebp
|
||
001aa 5d pop ebp
|
||
001ab c2 18 00 ret 24 ; 00000018H
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__unwindfunclet$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$2:
|
||
00000 8d 8d 3c e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
00006 e9 00 00 00 00 jmp ??1CSAStatusLog@@QAE@XZ ; CSAStatusLog::~CSAStatusLog
|
||
__unwindfunclet$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$3:
|
||
0000b 8b 8d 38 e2 ff
|
||
ff mov ecx, DWORD PTR $T3[ebp]
|
||
00011 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
__unwindfunclet$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$4:
|
||
00016 8b 8d 34 e2 ff
|
||
ff mov ecx, DWORD PTR $T2[ebp]
|
||
0001c e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
00021 cc int 3
|
||
00022 cc int 3
|
||
00023 cc int 3
|
||
00024 cc int 3
|
||
00025 cc int 3
|
||
__ehhandler$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z:
|
||
00026 90 npad 1
|
||
00027 90 npad 1
|
||
00028 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
0002c 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
0002f 8b 8a 28 e2 ff
|
||
ff mov ecx, DWORD PTR [edx-7640]
|
||
00035 33 c8 xor ecx, eax
|
||
00037 e8 00 00 00 00 call @__security_check_cookie@4
|
||
0003c 8b 4a f8 mov ecx, DWORD PTR [edx-8]
|
||
0003f 33 c8 xor ecx, eax
|
||
00041 e8 00 00 00 00 call @__security_check_cookie@4
|
||
00046 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
0004b e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?Decrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z ENDP ; CDes::Decrypt
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
_TEXT SEGMENT
|
||
tv176 = -7640 ; size = 4
|
||
tv91 = -7636 ; size = 4
|
||
$T2 = -7632 ; size = 4
|
||
$T3 = -7628 ; size = 4
|
||
_NXlog$4 = -7112 ; size = 6056
|
||
_b$ = -1056 ; size = 4
|
||
_lTemp$ = -1052 ; size = 4
|
||
_szBuf$ = -1048 ; size = 1024
|
||
_this$ = -24 ; size = 4
|
||
__$ArrayPad$ = -20 ; size = 4
|
||
__$EHRec$ = -16 ; size = 16
|
||
_pIn$ = 8 ; size = 4
|
||
_inLen$ = 12 ; size = 4
|
||
_pOut$ = 16 ; size = 4
|
||
_outLen$ = 20 ; size = 4
|
||
_pKey$ = 24 ; size = 4
|
||
_keyLen$ = 28 ; size = 4
|
||
?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z PROC ; CDes::Encrypt, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 140 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 51 push ecx
|
||
00012 b8 c8 1d 00 00 mov eax, 7624 ; 00001dc8H
|
||
00017 e8 00 00 00 00 call __chkstk
|
||
0001c a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
00021 33 c5 xor eax, ebp
|
||
00023 89 45 ec mov DWORD PTR __$ArrayPad$[ebp], eax
|
||
00026 53 push ebx
|
||
00027 56 push esi
|
||
00028 57 push edi
|
||
00029 50 push eax
|
||
0002a 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp+4]
|
||
0002d 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
00033 89 65 f0 mov DWORD PTR __$EHRec$[ebp], esp
|
||
00036 89 4d e8 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 141 : char szBuf[1024]={0};
|
||
|
||
00039 68 00 04 00 00 push 1024 ; 00000400H
|
||
0003e 6a 00 push 0
|
||
00040 8d 85 e8 fb ff
|
||
ff lea eax, DWORD PTR _szBuf$[ebp]
|
||
00046 50 push eax
|
||
00047 e8 00 00 00 00 call _memset
|
||
0004c 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 142 : //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7>ص<EFBFBD><D8B5>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD>
|
||
; 143 : long lTemp = (inLen/8)*8;
|
||
|
||
0004f 8b 45 0c mov eax, DWORD PTR _inLen$[ebp]
|
||
00052 99 cdq
|
||
00053 83 e2 07 and edx, 7
|
||
00056 03 c2 add eax, edx
|
||
00058 c1 f8 03 sar eax, 3
|
||
0005b c1 e0 03 shl eax, 3
|
||
0005e 89 85 e4 fb ff
|
||
ff mov DWORD PTR _lTemp$[ebp], eax
|
||
|
||
; 144 : if ( (inLen/8)*8 != inLen )
|
||
|
||
00064 8b 45 0c mov eax, DWORD PTR _inLen$[ebp]
|
||
00067 99 cdq
|
||
00068 83 e2 07 and edx, 7
|
||
0006b 03 c2 add eax, edx
|
||
0006d c1 f8 03 sar eax, 3
|
||
00070 c1 e0 03 shl eax, 3
|
||
00073 3b 45 0c cmp eax, DWORD PTR _inLen$[ebp]
|
||
00076 74 0f je SHORT $LN2@Encrypt
|
||
|
||
; 145 : lTemp += 8;
|
||
|
||
00078 8b 85 e4 fb ff
|
||
ff mov eax, DWORD PTR _lTemp$[ebp]
|
||
0007e 83 c0 08 add eax, 8
|
||
00081 89 85 e4 fb ff
|
||
ff mov DWORD PTR _lTemp$[ebp], eax
|
||
$LN2@Encrypt:
|
||
|
||
; 146 : memset( pIn+inLen,0,lTemp-inLen);
|
||
|
||
00087 8b 85 e4 fb ff
|
||
ff mov eax, DWORD PTR _lTemp$[ebp]
|
||
0008d 2b 45 0c sub eax, DWORD PTR _inLen$[ebp]
|
||
00090 50 push eax
|
||
00091 6a 00 push 0
|
||
00093 8b 4d 08 mov ecx, DWORD PTR _pIn$[ebp]
|
||
00096 03 4d 0c add ecx, DWORD PTR _inLen$[ebp]
|
||
00099 51 push ecx
|
||
0009a e8 00 00 00 00 call _memset
|
||
0009f 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 147 : memset( pOut , 0 , outLen );
|
||
|
||
000a2 8b 45 14 mov eax, DWORD PTR _outLen$[ebp]
|
||
000a5 8b 08 mov ecx, DWORD PTR [eax]
|
||
000a7 51 push ecx
|
||
000a8 6a 00 push 0
|
||
000aa 8b 55 10 mov edx, DWORD PTR _pOut$[ebp]
|
||
000ad 52 push edx
|
||
000ae e8 00 00 00 00 call _memset
|
||
000b3 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 148 : BOOL b = false;
|
||
|
||
000b6 c7 85 e0 fb ff
|
||
ff 00 00 00 00 mov DWORD PTR _b$[ebp], 0
|
||
|
||
; 149 : try
|
||
|
||
000c0 c7 45 fc 00 00
|
||
00 00 mov DWORD PTR __$EHRec$[ebp+12], 0
|
||
|
||
; 150 : {
|
||
; 151 : b = Des_Go( szBuf , pIn , inLen , pKey , keyLen , ENCRYPT_DES );
|
||
|
||
000c7 6a 00 push 0
|
||
000c9 8b 45 1c mov eax, DWORD PTR _keyLen$[ebp]
|
||
000cc 50 push eax
|
||
000cd 8b 4d 18 mov ecx, DWORD PTR _pKey$[ebp]
|
||
000d0 51 push ecx
|
||
000d1 8b 55 0c mov edx, DWORD PTR _inLen$[ebp]
|
||
000d4 52 push edx
|
||
000d5 8b 45 08 mov eax, DWORD PTR _pIn$[ebp]
|
||
000d8 50 push eax
|
||
000d9 8d 8d e8 fb ff
|
||
ff lea ecx, DWORD PTR _szBuf$[ebp]
|
||
000df 51 push ecx
|
||
000e0 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
|
||
000e3 e8 00 00 00 00 call ?Des_Go@CDes@@IAE_NPAD0JPBDH_N@Z ; CDes::Des_Go
|
||
000e8 0f b6 d0 movzx edx, al
|
||
000eb 89 95 e0 fb ff
|
||
ff mov DWORD PTR _b$[ebp], edx
|
||
|
||
; 152 : }catch( ... )
|
||
|
||
000f1 e9 9a 00 00 00 jmp $LN7@Encrypt
|
||
__catch$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$0:
|
||
|
||
; 153 : {
|
||
; 154 : #ifndef MOBSETSMS_SDK
|
||
; 155 : LOG_APPERROR(_T("T"));
|
||
|
||
000f6 8d 8d 38 e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
000fc e8 00 00 00 00 call ??0CSAStatusLog@@QAE@XZ ; CSAStatusLog::CSAStatusLog
|
||
00101 c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+12], 2
|
||
00105 51 push ecx
|
||
00106 8b cc mov ecx, esp
|
||
00108 89 a5 34 e2 ff
|
||
ff mov DWORD PTR $T3[ebp], esp
|
||
0010e 68 00 00 00 00 push OFFSET ??_C@_1BC@HEKPCAFP@?$AAA?$AAp?$AAp?$AAE?$AAr?$AAr?$AAo?$AAr@
|
||
00113 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
00118 89 85 2c e2 ff
|
||
ff mov DWORD PTR tv91[ebp], eax
|
||
0011e c6 45 fc 03 mov BYTE PTR __$EHRec$[ebp+12], 3
|
||
00122 51 push ecx
|
||
00123 8b cc mov ecx, esp
|
||
00125 89 a5 30 e2 ff
|
||
ff mov DWORD PTR $T2[ebp], esp
|
||
0012b 68 00 00 00 00 push OFFSET ??_C@_17LLLMIFAB@?$AAL?$AAo?$AAg@
|
||
00130 e8 00 00 00 00 call ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
00135 89 85 28 e2 ff
|
||
ff mov DWORD PTR tv176[ebp], eax
|
||
0013b c6 45 fc 04 mov BYTE PTR __$EHRec$[ebp+12], 4
|
||
0013f c6 45 fc 02 mov BYTE PTR __$EHRec$[ebp+12], 2
|
||
00143 8d 8d 38 e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
00149 e8 00 00 00 00 call ?Init@CSAStatusLog@@QAEXV?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@0@Z ; CSAStatusLog::Init
|
||
0014e a1 00 00 00 00 mov eax, DWORD PTR ?__LINE__Var@?0??Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z@4JA
|
||
00153 83 c0 0f add eax, 15 ; 0000000fH
|
||
00156 50 push eax
|
||
00157 68 00 00 00 00 push OFFSET ??_C@_07CEMOCOEI@Encrypt@
|
||
0015c 68 00 00 00 00 push OFFSET ??_C@_0CJ@CDDOEPDI@D?3?2Works?2Corpsms_2010?2public?2de@
|
||
00161 68 00 00 00 00 push OFFSET ??_C@_13JKNELIBG@?$AAT@
|
||
00166 8d 8d 38 e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
0016c e8 00 00 00 00 call ?LogError@CSAStatusLog@@QAEHPB_WPBD1J@Z ; CSAStatusLog::LogError
|
||
00171 c6 45 fc 01 mov BYTE PTR __$EHRec$[ebp+12], 1
|
||
00175 8d 8d 38 e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
0017b e8 00 00 00 00 call ??1CSAStatusLog@@QAE@XZ ; CSAStatusLog::~CSAStatusLog
|
||
|
||
; 156 : #endif
|
||
; 157 : b = false;
|
||
|
||
00180 c7 85 e0 fb ff
|
||
ff 00 00 00 00 mov DWORD PTR _b$[ebp], 0
|
||
|
||
; 158 : }
|
||
|
||
0018a b8 00 00 00 00 mov eax, $LN13@Encrypt
|
||
0018f c3 ret 0
|
||
$LN7@Encrypt:
|
||
00190 c7 45 fc ff ff
|
||
ff ff mov DWORD PTR __$EHRec$[ebp+12], -1
|
||
00197 eb 07 jmp SHORT __tryend$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$1
|
||
$LN13@Encrypt:
|
||
00199 c7 45 fc ff ff
|
||
ff ff mov DWORD PTR __$EHRec$[ebp+12], -1
|
||
__tryend$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$1:
|
||
|
||
; 159 : if ( b )
|
||
|
||
001a0 83 bd e0 fb ff
|
||
ff 00 cmp DWORD PTR _b$[ebp], 0
|
||
001a7 74 31 je SHORT $LN4@Encrypt
|
||
|
||
; 160 : {
|
||
; 161 : AsciiToHex( szBuf , pOut , lTemp );
|
||
|
||
001a9 8b 85 e4 fb ff
|
||
ff mov eax, DWORD PTR _lTemp$[ebp]
|
||
001af 50 push eax
|
||
001b0 8b 4d 10 mov ecx, DWORD PTR _pOut$[ebp]
|
||
001b3 51 push ecx
|
||
001b4 8d 95 e8 fb ff
|
||
ff lea edx, DWORD PTR _szBuf$[ebp]
|
||
001ba 52 push edx
|
||
001bb 8b 4d e8 mov ecx, DWORD PTR _this$[ebp]
|
||
001be e8 00 00 00 00 call ?AsciiToHex@CDes@@IAEXPAD0J@Z ; CDes::AsciiToHex
|
||
|
||
; 162 : outLen = (long)strlen( pOut );
|
||
|
||
001c3 8b 45 10 mov eax, DWORD PTR _pOut$[ebp]
|
||
001c6 50 push eax
|
||
001c7 e8 00 00 00 00 call _strlen
|
||
001cc 83 c4 04 add esp, 4
|
||
001cf 8b 4d 14 mov ecx, DWORD PTR _outLen$[ebp]
|
||
001d2 89 01 mov DWORD PTR [ecx], eax
|
||
|
||
; 163 : return true;
|
||
|
||
001d4 b0 01 mov al, 1
|
||
001d6 eb 18 jmp SHORT $LN1@Encrypt
|
||
|
||
; 164 : }
|
||
|
||
001d8 eb 14 jmp SHORT $LN5@Encrypt
|
||
$LN4@Encrypt:
|
||
|
||
; 165 : else
|
||
; 166 : {
|
||
; 167 : memset( pOut , 0 , outLen );
|
||
|
||
001da 8b 45 14 mov eax, DWORD PTR _outLen$[ebp]
|
||
001dd 8b 08 mov ecx, DWORD PTR [eax]
|
||
001df 51 push ecx
|
||
001e0 6a 00 push 0
|
||
001e2 8b 55 10 mov edx, DWORD PTR _pOut$[ebp]
|
||
001e5 52 push edx
|
||
001e6 e8 00 00 00 00 call _memset
|
||
001eb 83 c4 0c add esp, 12 ; 0000000cH
|
||
$LN5@Encrypt:
|
||
|
||
; 168 : }
|
||
; 169 : return false;
|
||
|
||
001ee 32 c0 xor al, al
|
||
$LN1@Encrypt:
|
||
|
||
; 170 : }
|
||
|
||
001f0 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp+4]
|
||
001f3 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
001fa 59 pop ecx
|
||
001fb 5f pop edi
|
||
001fc 5e pop esi
|
||
001fd 5b pop ebx
|
||
001fe 8b 4d ec mov ecx, DWORD PTR __$ArrayPad$[ebp]
|
||
00201 33 cd xor ecx, ebp
|
||
00203 e8 00 00 00 00 call @__security_check_cookie@4
|
||
00208 8b e5 mov esp, ebp
|
||
0020a 5d pop ebp
|
||
0020b c2 18 00 ret 24 ; 00000018H
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__unwindfunclet$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$2:
|
||
00000 8d 8d 38 e4 ff
|
||
ff lea ecx, DWORD PTR _NXlog$4[ebp]
|
||
00006 e9 00 00 00 00 jmp ??1CSAStatusLog@@QAE@XZ ; CSAStatusLog::~CSAStatusLog
|
||
__unwindfunclet$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$3:
|
||
0000b 8b 8d 34 e2 ff
|
||
ff mov ecx, DWORD PTR $T3[ebp]
|
||
00011 e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
__unwindfunclet$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z$4:
|
||
00016 8b 8d 30 e2 ff
|
||
ff mov ecx, DWORD PTR $T2[ebp]
|
||
0001c e9 00 00 00 00 jmp ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
00021 cc int 3
|
||
00022 cc int 3
|
||
00023 cc int 3
|
||
00024 cc int 3
|
||
00025 cc int 3
|
||
__ehhandler$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z:
|
||
00026 90 npad 1
|
||
00027 90 npad 1
|
||
00028 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
0002c 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
0002f 8b 8a 24 e2 ff
|
||
ff mov ecx, DWORD PTR [edx-7644]
|
||
00035 33 c8 xor ecx, eax
|
||
00037 e8 00 00 00 00 call @__security_check_cookie@4
|
||
0003c 8b 4a f8 mov ecx, DWORD PTR [edx-8]
|
||
0003f 33 c8 xor ecx, eax
|
||
00041 e8 00 00 00 00 call @__security_check_cookie@4
|
||
00046 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z
|
||
0004b e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?Encrypt@CDes@@QAE_NPADJ0AAJPBDJ@Z ENDP ; CDes::Encrypt
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxstr.h
|
||
; COMDAT ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ
|
||
_TEXT SEGMENT
|
||
__$EHRec$ = -12 ; size = 12
|
||
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager, COMDAT
|
||
|
||
; 51 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 40 sub esp, 64 ; 00000040H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 52 : return( AfxGetStringManager() );
|
||
|
||
00028 e8 00 00 00 00 call ?AfxGetStringManager@@YGPAUIAtlStringMgr@ATL@@XZ ; AfxGetStringManager
|
||
|
||
; 53 : }
|
||
|
||
0002d 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
00030 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
00037 59 pop ecx
|
||
00038 5f pop edi
|
||
00039 5e pop esi
|
||
0003a 5b pop ebx
|
||
0003b 8b e5 mov esp, ebp
|
||
0003d 5d pop ebp
|
||
0003e c3 ret 0
|
||
0003f cc int 3
|
||
00040 cc int 3
|
||
00041 cc int 3
|
||
00042 cc int 3
|
||
00043 cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afxstr.h
|
||
; COMDAT ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z
|
||
_TEXT SEGMENT
|
||
__$EHRec$ = -12 ; size = 12
|
||
_nID$ = 8 ; size = 4
|
||
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z PROC ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance, COMDAT
|
||
|
||
; 46 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 40 sub esp, 64 ; 00000040H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 47 : return( AfxFindStringResourceHandle( nID ) );
|
||
|
||
00028 8b 45 08 mov eax, DWORD PTR _nID$[ebp]
|
||
0002b 50 push eax
|
||
0002c e8 00 00 00 00 call ?AfxFindStringResourceHandle@@YGPAUHINSTANCE__@@I@Z ; AfxFindStringResourceHandle
|
||
|
||
; 48 : }
|
||
|
||
00031 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
00034 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
0003b 59 pop ecx
|
||
0003c 5f pop edi
|
||
0003d 5e pop esi
|
||
0003e 5b pop ebx
|
||
0003f 8b e5 mov esp, ebp
|
||
00041 5d pop ebp
|
||
00042 c3 ret 0
|
||
00043 cc int 3
|
||
00044 cc int 3
|
||
00045 cc int 3
|
||
00046 cc int 3
|
||
00047 cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z ENDP ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z
|
||
_TEXT SEGMENT
|
||
_nID$1 = -12 ; size = 4
|
||
_bRet$ = -5 ; size = 1
|
||
_this$ = -4 ; size = 4
|
||
_pv$ = 8 ; size = 4
|
||
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 2705 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 4c sub esp, 76 ; 0000004cH
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 2706 : bool bRet = false;
|
||
|
||
0000c c6 45 fb 00 mov BYTE PTR _bRet$[ebp], 0
|
||
|
||
; 2707 :
|
||
; 2708 : if( (pv != NULL) && IS_INTRESOURCE( pv ) )
|
||
|
||
00010 83 7d 08 00 cmp DWORD PTR _pv$[ebp], 0
|
||
00014 74 28 je SHORT $LN2@CheckImpli
|
||
00016 8b 45 08 mov eax, DWORD PTR _pv$[ebp]
|
||
00019 c1 e8 10 shr eax, 16 ; 00000010H
|
||
0001c 85 c0 test eax, eax
|
||
0001e 75 1e jne SHORT $LN2@CheckImpli
|
||
|
||
; 2709 : {
|
||
; 2710 : UINT nID = LOWORD( reinterpret_cast< DWORD_PTR >( pv ) );
|
||
|
||
00020 8b 45 08 mov eax, DWORD PTR _pv$[ebp]
|
||
00023 25 ff ff 00 00 and eax, 65535 ; 0000ffffH
|
||
00028 0f b7 c8 movzx ecx, ax
|
||
0002b 89 4d f4 mov DWORD PTR _nID$1[ebp], ecx
|
||
|
||
; 2711 : (nID);
|
||
; 2712 : #ifdef _ATL_USE_WINAPI_FAMILY_DESKTOP_APP
|
||
; 2713 : if( !LoadString( nID ) )
|
||
|
||
0002e 8b 45 f4 mov eax, DWORD PTR _nID$1[ebp]
|
||
00031 50 push eax
|
||
00032 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00035 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
|
||
|
||
; 2714 : {
|
||
; 2715 : ATLTRACE( atlTraceString, 2, _T( "Warning: implicit LoadString(%u) failed\n" ), nID );
|
||
; 2716 : }
|
||
; 2717 : bRet = true;
|
||
|
||
0003a c6 45 fb 01 mov BYTE PTR _bRet$[ebp], 1
|
||
$LN2@CheckImpli:
|
||
|
||
; 2718 : #else
|
||
; 2719 : ATLTRACE( atlTraceString, 2, _T( "Warning: LoadString(%u) not supported under the current WINAPI_FAMILY.\n" ), nID );
|
||
; 2720 : #endif
|
||
; 2721 : }
|
||
; 2722 :
|
||
; 2723 : return( bRet );
|
||
|
||
0003e 8a 45 fb mov al, BYTE PTR _bRet$[ebp]
|
||
|
||
; 2724 : }
|
||
|
||
00041 5f pop edi
|
||
00042 5e pop esi
|
||
00043 5b pop ebx
|
||
00044 8b e5 mov esp, ebp
|
||
00046 5d pop ebp
|
||
00047 c2 04 00 ret 4
|
||
?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z
|
||
_TEXT SEGMENT
|
||
_pszBuffer$ = -16 ; size = 4
|
||
_nLength$ = -12 ; size = 4
|
||
_pImage$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_hInstance$ = 8 ; size = 4
|
||
_nID$ = 12 ; size = 4
|
||
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 2350 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 50 sub esp, 80 ; 00000050H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 2351 : const ATLSTRINGRESOURCEIMAGE* pImage = AtlGetStringResourceImage( hInstance, nID );
|
||
|
||
0000c 8b 45 0c mov eax, DWORD PTR _nID$[ebp]
|
||
0000f 50 push eax
|
||
00010 8b 4d 08 mov ecx, DWORD PTR _hInstance$[ebp]
|
||
00013 51 push ecx
|
||
00014 e8 00 00 00 00 call ?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z ; ATL::AtlGetStringResourceImage
|
||
00019 83 c4 08 add esp, 8
|
||
0001c 89 45 f8 mov DWORD PTR _pImage$[ebp], eax
|
||
|
||
; 2352 : if( pImage == NULL )
|
||
|
||
0001f 83 7d f8 00 cmp DWORD PTR _pImage$[ebp], 0
|
||
00023 75 04 jne SHORT $LN2@LoadString
|
||
|
||
; 2353 : {
|
||
; 2354 : return( FALSE );
|
||
|
||
00025 33 c0 xor eax, eax
|
||
00027 eb 57 jmp SHORT $LN1@LoadString
|
||
$LN2@LoadString:
|
||
|
||
; 2355 : }
|
||
; 2356 :
|
||
; 2357 : int nLength = StringTraits::GetBaseTypeLength( pImage->achString, pImage->nLength );
|
||
|
||
00029 8b 45 f8 mov eax, DWORD PTR _pImage$[ebp]
|
||
0002c 0f b7 08 movzx ecx, WORD PTR [eax]
|
||
0002f 51 push ecx
|
||
00030 8b 55 f8 mov edx, DWORD PTR _pImage$[ebp]
|
||
00033 83 c2 02 add edx, 2
|
||
00036 52 push edx
|
||
00037 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
|
||
0003c 83 c4 08 add esp, 8
|
||
0003f 89 45 f4 mov DWORD PTR _nLength$[ebp], eax
|
||
|
||
; 2358 : PXSTR pszBuffer = this->GetBuffer( nLength );
|
||
|
||
00042 8b 45 f4 mov eax, DWORD PTR _nLength$[ebp]
|
||
00045 50 push eax
|
||
00046 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00049 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
|
||
0004e 89 45 f0 mov DWORD PTR _pszBuffer$[ebp], eax
|
||
|
||
; 2359 : StringTraits::ConvertToBaseType( pszBuffer, nLength, pImage->achString, pImage->nLength );
|
||
|
||
00051 8b 45 f8 mov eax, DWORD PTR _pImage$[ebp]
|
||
00054 0f b7 08 movzx ecx, WORD PTR [eax]
|
||
00057 51 push ecx
|
||
00058 8b 55 f8 mov edx, DWORD PTR _pImage$[ebp]
|
||
0005b 83 c2 02 add edx, 2
|
||
0005e 52 push edx
|
||
0005f 8b 45 f4 mov eax, DWORD PTR _nLength$[ebp]
|
||
00062 50 push eax
|
||
00063 8b 4d f0 mov ecx, DWORD PTR _pszBuffer$[ebp]
|
||
00066 51 push ecx
|
||
00067 e8 00 00 00 00 call ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
|
||
0006c 83 c4 10 add esp, 16 ; 00000010H
|
||
|
||
; 2360 : this->ReleaseBufferSetLength( nLength );
|
||
|
||
0006f 8b 45 f4 mov eax, DWORD PTR _nLength$[ebp]
|
||
00072 50 push eax
|
||
00073 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00076 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
|
||
|
||
; 2361 :
|
||
; 2362 : return( TRUE );
|
||
|
||
0007b b8 01 00 00 00 mov eax, 1
|
||
$LN1@LoadString:
|
||
|
||
; 2363 : }
|
||
|
||
00080 5f pop edi
|
||
00081 5e pop esi
|
||
00082 5b pop ebx
|
||
00083 8b e5 mov esp, ebp
|
||
00085 5d pop ebp
|
||
00086 c2 08 00 ret 8
|
||
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z
|
||
_TEXT SEGMENT
|
||
_hInstance$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_nID$ = 8 ; size = 4
|
||
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 2336 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 2337 : HINSTANCE hInstance = StringTraits::FindStringResourceInstance( nID );
|
||
|
||
0000c 8b 45 08 mov eax, DWORD PTR _nID$[ebp]
|
||
0000f 50 push eax
|
||
00010 e8 00 00 00 00 call ?FindStringResourceInstance@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUHINSTANCE__@@I@Z ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::FindStringResourceInstance
|
||
00015 83 c4 04 add esp, 4
|
||
00018 89 45 f8 mov DWORD PTR _hInstance$[ebp], eax
|
||
|
||
; 2338 : if( hInstance == NULL )
|
||
|
||
0001b 83 7d f8 00 cmp DWORD PTR _hInstance$[ebp], 0
|
||
0001f 75 04 jne SHORT $LN2@LoadString
|
||
|
||
; 2339 : {
|
||
; 2340 : return( FALSE );
|
||
|
||
00021 33 c0 xor eax, eax
|
||
00023 eb 10 jmp SHORT $LN1@LoadString
|
||
$LN2@LoadString:
|
||
|
||
; 2341 : }
|
||
; 2342 :
|
||
; 2343 : return( LoadString( hInstance, nID ) );
|
||
|
||
00025 8b 45 08 mov eax, DWORD PTR _nID$[ebp]
|
||
00028 50 push eax
|
||
00029 8b 4d f8 mov ecx, DWORD PTR _hInstance$[ebp]
|
||
0002c 51 push ecx
|
||
0002d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00030 e8 00 00 00 00 call ?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHPAUHINSTANCE__@@I@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
|
||
$LN1@LoadString:
|
||
|
||
; 2344 : }
|
||
|
||
00035 5f pop edi
|
||
00036 5e pop esi
|
||
00037 5b pop ebx
|
||
00038 8b e5 mov esp, ebp
|
||
0003a 5d pop ebp
|
||
0003b c2 04 00 ret 4
|
||
?LoadStringW@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEHI@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::LoadStringW
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_pszSrc$ = 8 ; size = 4
|
||
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 1318 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 1319 : CThisSimpleString::operator=( pszSrc );
|
||
|
||
0000c 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
0000f 50 push eax
|
||
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00013 e8 00 00 00 00 call ??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::operator=
|
||
|
||
; 1320 :
|
||
; 1321 : return( *this );
|
||
|
||
00018 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
|
||
; 1322 : }
|
||
|
||
0001b 5f pop edi
|
||
0001c 5e pop esi
|
||
0001d 5b pop ebx
|
||
0001e 8b e5 mov esp, ebp
|
||
00020 5d pop ebp
|
||
00021 c2 04 00 ret 4
|
||
??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
|
||
_TEXT SEGMENT
|
||
_this$ = -16 ; size = 4
|
||
__$EHRec$ = -12 ; size = 12
|
||
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 1298 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 44 sub esp, 68 ; 00000044H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
|
||
0002b c7 45 fc 00 00
|
||
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
|
||
|
||
; 1299 : }
|
||
|
||
00032 c7 45 fc ff ff
|
||
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
|
||
00039 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
0003c e8 00 00 00 00 call ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
|
||
00041 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
00044 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
0004b 59 pop ecx
|
||
0004c 5f pop edi
|
||
0004d 5e pop esi
|
||
0004e 5b pop ebx
|
||
0004f 8b e5 mov esp, ebp
|
||
00051 5d pop ebp
|
||
00052 c3 ret 0
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__unwindfunclet$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ$0:
|
||
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
00003 e9 00 00 00 00 jmp ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
|
||
00008 cc int 3
|
||
00009 cc int 3
|
||
0000a cc int 3
|
||
0000b cc int 3
|
||
0000c cc int 3
|
||
__ehhandler$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ:
|
||
0000d 90 npad 1
|
||
0000e 90 npad 1
|
||
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00016 8b 4a ac mov ecx, DWORD PTR [edx-84]
|
||
00019 33 c8 xor ecx, eax
|
||
0001b e8 00 00 00 00 call @__security_check_cookie@4
|
||
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ
|
||
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
??1?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@XZ ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::~CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -16 ; size = 4
|
||
__$EHRec$ = -12 ; size = 12
|
||
_pszSrc$ = 8 ; size = 4
|
||
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z PROC ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 1049 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 44 sub esp, 68 ; 00000044H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 1048 : CThisSimpleString( StringTraits::GetDefaultManager() )
|
||
|
||
0002b e8 00 00 00 00 call ?GetDefaultManager@?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@SAPAUIAtlStringMgr@ATL@@XZ ; StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> >::GetDefaultManager
|
||
00030 50 push eax
|
||
00031 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
00034 e8 00 00 00 00 call ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
|
||
00039 c7 45 fc 00 00
|
||
00 00 mov DWORD PTR __$EHRec$[ebp+8], 0
|
||
|
||
; 1050 : if( !CheckImplicitLoad( pszSrc ) )
|
||
|
||
00040 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
00043 50 push eax
|
||
00044 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
00047 e8 00 00 00 00 call ?CheckImplicitLoad@?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@AAE_NPBX@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CheckImplicitLoad
|
||
0004c 0f b6 c8 movzx ecx, al
|
||
0004f 85 c9 test ecx, ecx
|
||
00051 75 0c jne SHORT $LN1@CStringT
|
||
|
||
; 1051 : {
|
||
; 1052 : *this = pszSrc;
|
||
|
||
00053 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
00056 50 push eax
|
||
00057 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
0005a e8 00 00 00 00 call ??4?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAEAAV01@PB_W@Z ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::operator=
|
||
$LN1@CStringT:
|
||
|
||
; 1053 : }
|
||
; 1054 : }
|
||
|
||
0005f c7 45 fc ff ff
|
||
ff ff mov DWORD PTR __$EHRec$[ebp+8], -1
|
||
00066 8b 45 f0 mov eax, DWORD PTR _this$[ebp]
|
||
00069 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
0006c 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
00073 59 pop ecx
|
||
00074 5f pop edi
|
||
00075 5e pop esi
|
||
00076 5b pop ebx
|
||
00077 8b e5 mov esp, ebp
|
||
00079 5d pop ebp
|
||
0007a c2 04 00 ret 4
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__unwindfunclet$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z$0:
|
||
00000 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
00003 e9 00 00 00 00 jmp ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
|
||
00008 cc int 3
|
||
00009 cc int 3
|
||
0000a cc int 3
|
||
0000b cc int 3
|
||
0000c cc int 3
|
||
__ehhandler$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z:
|
||
0000d 90 npad 1
|
||
0000e 90 npad 1
|
||
0000f 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00013 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00016 8b 4a ac mov ecx, DWORD PTR [edx-84]
|
||
00019 33 c8 xor ecx, eax
|
||
0001b e8 00 00 00 00 call @__security_check_cookie@4
|
||
00020 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z
|
||
00025 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
??0?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@QAE@PB_W@Z ENDP ; ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_nLength$ = 8 ; size = 4
|
||
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetLength, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 867 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 868 : ATLASSERT( nLength >= 0 );
|
||
; 869 : ATLASSERT( nLength <= GetData()->nAllocLength );
|
||
; 870 :
|
||
; 871 : if( nLength < 0 || nLength > GetData()->nAllocLength)
|
||
|
||
0000c 83 7d 08 00 cmp DWORD PTR _nLength$[ebp], 0
|
||
00010 7c 10 jl SHORT $LN3@SetLength
|
||
00012 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00015 e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
0001a 8b 4d 08 mov ecx, DWORD PTR _nLength$[ebp]
|
||
0001d 3b 48 08 cmp ecx, DWORD PTR [eax+8]
|
||
00020 7e 0a jle SHORT $LN2@SetLength
|
||
$LN3@SetLength:
|
||
|
||
; 872 : AtlThrow(E_INVALIDARG);
|
||
|
||
00022 68 57 00 07 80 push -2147024809 ; 80070057H
|
||
00027 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
|
||
$LN2@SetLength:
|
||
|
||
; 873 :
|
||
; 874 : GetData()->nDataLength = nLength;
|
||
|
||
0002c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0002f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00034 8b 4d 08 mov ecx, DWORD PTR _nLength$[ebp]
|
||
00037 89 48 04 mov DWORD PTR [eax+4], ecx
|
||
|
||
; 875 : m_pszData[nLength] = 0;
|
||
|
||
0003a 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0003d 8b 08 mov ecx, DWORD PTR [eax]
|
||
0003f 33 d2 xor edx, edx
|
||
00041 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
|
||
00044 66 89 14 41 mov WORD PTR [ecx+eax*2], dx
|
||
$LN4@SetLength:
|
||
|
||
; 876 : }
|
||
|
||
00048 5f pop edi
|
||
00049 5e pop esi
|
||
0004a 5b pop ebx
|
||
0004b 8b e5 mov esp, ebp
|
||
0004d 5d pop ebp
|
||
0004e c2 04 00 ret 4
|
||
?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetLength
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z
|
||
_TEXT SEGMENT
|
||
tv78 = -84 ; size = 4
|
||
_pNewData$ = -16 ; size = 4
|
||
_pStringMgr$ = -12 ; size = 4
|
||
_pOldData$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_nLength$ = 8 ; size = 4
|
||
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Reallocate, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 849 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 54 sub esp, 84 ; 00000054H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 850 : CStringData* pOldData = GetData();
|
||
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00014 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
|
||
|
||
; 851 : ATLASSERT( pOldData->nAllocLength < nLength );
|
||
; 852 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
|
||
|
||
00017 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
0001a 8b 08 mov ecx, DWORD PTR [eax]
|
||
0001c 89 4d f4 mov DWORD PTR _pStringMgr$[ebp], ecx
|
||
|
||
; 853 : if ( pOldData->nAllocLength >= nLength || nLength <= 0)
|
||
|
||
0001f 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
00022 8b 48 08 mov ecx, DWORD PTR [eax+8]
|
||
00025 3b 4d 08 cmp ecx, DWORD PTR _nLength$[ebp]
|
||
00028 7d 06 jge SHORT $LN3@Reallocate
|
||
0002a 83 7d 08 00 cmp DWORD PTR _nLength$[ebp], 0
|
||
0002e 7f 07 jg SHORT $LN2@Reallocate
|
||
$LN3@Reallocate:
|
||
|
||
; 854 : {
|
||
; 855 : ThrowMemoryException();
|
||
|
||
00030 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
|
||
|
||
; 856 : return;
|
||
|
||
00035 eb 35 jmp SHORT $LN5@Reallocate
|
||
$LN2@Reallocate:
|
||
|
||
; 857 : }
|
||
; 858 : CStringData* pNewData = pStringMgr->Reallocate( pOldData, nLength, sizeof( XCHAR ) );
|
||
|
||
00037 8b 45 f4 mov eax, DWORD PTR _pStringMgr$[ebp]
|
||
0003a 8b 08 mov ecx, DWORD PTR [eax]
|
||
0003c 8b 51 08 mov edx, DWORD PTR [ecx+8]
|
||
0003f 89 55 ac mov DWORD PTR tv78[ebp], edx
|
||
00042 6a 02 push 2
|
||
00044 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
|
||
00047 50 push eax
|
||
00048 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
|
||
0004b 51 push ecx
|
||
0004c 8b 4d f4 mov ecx, DWORD PTR _pStringMgr$[ebp]
|
||
0004f ff 55 ac call DWORD PTR tv78[ebp]
|
||
00052 89 45 f0 mov DWORD PTR _pNewData$[ebp], eax
|
||
|
||
; 859 : if( pNewData == NULL )
|
||
|
||
00055 83 7d f0 00 cmp DWORD PTR _pNewData$[ebp], 0
|
||
00059 75 05 jne SHORT $LN4@Reallocate
|
||
|
||
; 860 : {
|
||
; 861 : ThrowMemoryException();
|
||
|
||
0005b e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
|
||
$LN4@Reallocate:
|
||
|
||
; 862 : }
|
||
; 863 : Attach( pNewData );
|
||
|
||
00060 8b 45 f0 mov eax, DWORD PTR _pNewData$[ebp]
|
||
00063 50 push eax
|
||
00064 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00067 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
|
||
$LN5@Reallocate:
|
||
|
||
; 864 : }
|
||
|
||
0006c 5f pop edi
|
||
0006d 5e pop esi
|
||
0006e 5b pop ebx
|
||
0006f 8b e5 mov esp, ebp
|
||
00071 5d pop ebp
|
||
00072 c2 04 00 ret 4
|
||
?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z
|
||
_TEXT SEGMENT
|
||
_nNewLength$1 = -12 ; size = 4
|
||
_pOldData$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_nLength$ = 8 ; size = 4
|
||
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 818 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 4c sub esp, 76 ; 0000004cH
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 819 : CStringData* pOldData = GetData();
|
||
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00014 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
|
||
|
||
; 820 : if( pOldData->nDataLength > nLength )
|
||
|
||
00017 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
0001a 8b 48 04 mov ecx, DWORD PTR [eax+4]
|
||
0001d 3b 4d 08 cmp ecx, DWORD PTR _nLength$[ebp]
|
||
00020 7e 09 jle SHORT $LN2@PrepareWri
|
||
|
||
; 821 : {
|
||
; 822 : nLength = pOldData->nDataLength;
|
||
|
||
00022 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
00025 8b 48 04 mov ecx, DWORD PTR [eax+4]
|
||
00028 89 4d 08 mov DWORD PTR _nLength$[ebp], ecx
|
||
$LN2@PrepareWri:
|
||
|
||
; 823 : }
|
||
; 824 : if( pOldData->IsShared() )
|
||
|
||
0002b 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
|
||
0002e e8 00 00 00 00 call ?IsShared@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsShared
|
||
00033 0f b6 c0 movzx eax, al
|
||
00036 85 c0 test eax, eax
|
||
00038 74 0e je SHORT $LN3@PrepareWri
|
||
|
||
; 825 : {
|
||
; 826 : Fork( nLength );
|
||
|
||
0003a 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
|
||
0003d 50 push eax
|
||
0003e 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00041 e8 00 00 00 00 call ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Fork
|
||
|
||
; 827 : }
|
||
|
||
00046 eb 52 jmp SHORT $LN1@PrepareWri
|
||
$LN3@PrepareWri:
|
||
|
||
; 828 : else if( pOldData->nAllocLength < nLength )
|
||
|
||
00048 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
0004b 8b 48 08 mov ecx, DWORD PTR [eax+8]
|
||
0004e 3b 4d 08 cmp ecx, DWORD PTR _nLength$[ebp]
|
||
00051 7d 47 jge SHORT $LN1@PrepareWri
|
||
|
||
; 829 : {
|
||
; 830 : // Grow exponentially, until we hit 1G, then by 1M thereafter.
|
||
; 831 : int nNewLength = pOldData->nAllocLength;
|
||
|
||
00053 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
00056 8b 48 08 mov ecx, DWORD PTR [eax+8]
|
||
00059 89 4d f4 mov DWORD PTR _nNewLength$1[ebp], ecx
|
||
|
||
; 832 : if( nNewLength > 1024 * 1024 * 1024 )
|
||
|
||
0005c 81 7d f4 00 00
|
||
00 40 cmp DWORD PTR _nNewLength$1[ebp], 1073741824 ; 40000000H
|
||
00063 7e 0d jle SHORT $LN6@PrepareWri
|
||
|
||
; 833 : {
|
||
; 834 : nNewLength += 1024 * 1024;
|
||
|
||
00065 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
|
||
00068 05 00 00 10 00 add eax, 1048576 ; 00100000H
|
||
0006d 89 45 f4 mov DWORD PTR _nNewLength$1[ebp], eax
|
||
|
||
; 835 : }
|
||
|
||
00070 eb 0e jmp SHORT $LN7@PrepareWri
|
||
$LN6@PrepareWri:
|
||
|
||
; 836 : else
|
||
; 837 : {
|
||
; 838 : // Exponential growth factor is 1.5.
|
||
; 839 : nNewLength = nNewLength + nNewLength / 2;
|
||
|
||
00072 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
|
||
00075 99 cdq
|
||
00076 2b c2 sub eax, edx
|
||
00078 d1 f8 sar eax, 1
|
||
0007a 03 45 f4 add eax, DWORD PTR _nNewLength$1[ebp]
|
||
0007d 89 45 f4 mov DWORD PTR _nNewLength$1[ebp], eax
|
||
$LN7@PrepareWri:
|
||
|
||
; 840 : }
|
||
; 841 : if( nNewLength < nLength )
|
||
|
||
00080 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
|
||
00083 3b 45 08 cmp eax, DWORD PTR _nLength$[ebp]
|
||
00086 7d 06 jge SHORT $LN8@PrepareWri
|
||
|
||
; 842 : {
|
||
; 843 : nNewLength = nLength;
|
||
|
||
00088 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
|
||
0008b 89 45 f4 mov DWORD PTR _nNewLength$1[ebp], eax
|
||
$LN8@PrepareWri:
|
||
|
||
; 844 : }
|
||
; 845 : Reallocate( nNewLength );
|
||
|
||
0008e 8b 45 f4 mov eax, DWORD PTR _nNewLength$1[ebp]
|
||
00091 50 push eax
|
||
00092 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00095 e8 00 00 00 00 call ?Reallocate@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::Reallocate
|
||
$LN1@PrepareWri:
|
||
|
||
; 846 : }
|
||
; 847 : }
|
||
|
||
0009a 5f pop edi
|
||
0009b 5e pop esi
|
||
0009c 5b pop ebx
|
||
0009d 8b e5 mov esp, ebp
|
||
0009f 5d pop ebp
|
||
000a0 c2 04 00 ret 4
|
||
?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z
|
||
_TEXT SEGMENT
|
||
_nTooShort$ = -16 ; size = 4
|
||
_nShared$ = -12 ; size = 4
|
||
_pOldData$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_nLength$ = 8 ; size = 4
|
||
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 803 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 50 sub esp, 80 ; 00000050H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 804 : if (nLength < 0)
|
||
|
||
0000c 83 7d 08 00 cmp DWORD PTR _nLength$[ebp], 0
|
||
00010 7d 0a jge SHORT $LN2@PrepareWri
|
||
|
||
; 805 : AtlThrow(E_INVALIDARG);
|
||
|
||
00012 68 57 00 07 80 push -2147024809 ; 80070057H
|
||
00017 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
|
||
$LN2@PrepareWri:
|
||
|
||
; 806 :
|
||
; 807 : CStringData* pOldData = GetData();
|
||
|
||
0001c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0001f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00024 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
|
||
|
||
; 808 : int nShared = 1-pOldData->nRefs; // nShared < 0 means true, >= 0 means false
|
||
|
||
00027 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
0002a b9 01 00 00 00 mov ecx, 1
|
||
0002f 2b 48 0c sub ecx, DWORD PTR [eax+12]
|
||
00032 89 4d f4 mov DWORD PTR _nShared$[ebp], ecx
|
||
|
||
; 809 : int nTooShort = pOldData->nAllocLength-nLength; // nTooShort < 0 means true, >= 0 means false
|
||
|
||
00035 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
00038 8b 48 08 mov ecx, DWORD PTR [eax+8]
|
||
0003b 2b 4d 08 sub ecx, DWORD PTR _nLength$[ebp]
|
||
0003e 89 4d f0 mov DWORD PTR _nTooShort$[ebp], ecx
|
||
|
||
; 810 : if( (nShared|nTooShort) < 0 ) // If either sign bit is set (i.e. either is less than zero), we need to copy data
|
||
|
||
00041 8b 45 f4 mov eax, DWORD PTR _nShared$[ebp]
|
||
00044 0b 45 f0 or eax, DWORD PTR _nTooShort$[ebp]
|
||
00047 7d 0c jge SHORT $LN3@PrepareWri
|
||
|
||
; 811 : {
|
||
; 812 : PrepareWrite2( nLength );
|
||
|
||
00049 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
|
||
0004c 50 push eax
|
||
0004d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00050 e8 00 00 00 00 call ?PrepareWrite2@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite2
|
||
$LN3@PrepareWri:
|
||
|
||
; 813 : }
|
||
; 814 :
|
||
; 815 : return( m_pszData );
|
||
|
||
00055 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00058 8b 00 mov eax, DWORD PTR [eax]
|
||
$LN4@PrepareWri:
|
||
|
||
; 816 : }
|
||
|
||
0005a 5f pop edi
|
||
0005b 5e pop esi
|
||
0005c 5b pop ebx
|
||
0005d 8b e5 mov esp, ebp
|
||
0005f 5d pop ebp
|
||
00060 c2 04 00 ret 4
|
||
?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetData, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 799 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 800 : return( reinterpret_cast< CStringData* >( m_pszData )-1 );
|
||
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f 8b 00 mov eax, DWORD PTR [eax]
|
||
00011 83 e8 10 sub eax, 16 ; 00000010H
|
||
|
||
; 801 : }
|
||
|
||
00014 5f pop edi
|
||
00015 5e pop esi
|
||
00016 5b pop ebx
|
||
00017 8b e5 mov esp, ebp
|
||
00019 5d pop ebp
|
||
0001a c3 ret 0
|
||
?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z
|
||
_TEXT SEGMENT
|
||
tv132 = -92 ; size = 4
|
||
tv83 = -92 ; size = 4
|
||
tv134 = -88 ; size = 4
|
||
tv86 = -88 ; size = 4
|
||
tv76 = -88 ; size = 4
|
||
_nCharsToCopy$ = -20 ; size = 4
|
||
_pNewData$ = -16 ; size = 4
|
||
_nOldLength$ = -12 ; size = 4
|
||
_pOldData$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_nLength$ = 8 ; size = 4
|
||
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Fork, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 783 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 5c sub esp, 92 ; 0000005cH
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 784 : CStringData* pOldData = GetData();
|
||
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00014 89 45 f8 mov DWORD PTR _pOldData$[ebp], eax
|
||
|
||
; 785 : int nOldLength = pOldData->nDataLength;
|
||
|
||
00017 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
0001a 8b 48 04 mov ecx, DWORD PTR [eax+4]
|
||
0001d 89 4d f4 mov DWORD PTR _nOldLength$[ebp], ecx
|
||
|
||
; 786 : CStringData* pNewData = pOldData->pStringMgr->Clone()->Allocate( nLength, sizeof( XCHAR ) );
|
||
|
||
00020 8b 45 f8 mov eax, DWORD PTR _pOldData$[ebp]
|
||
00023 8b 08 mov ecx, DWORD PTR [eax]
|
||
00025 8b 55 f8 mov edx, DWORD PTR _pOldData$[ebp]
|
||
00028 8b 01 mov eax, DWORD PTR [ecx]
|
||
0002a 8b 0a mov ecx, DWORD PTR [edx]
|
||
0002c 8b 50 10 mov edx, DWORD PTR [eax+16]
|
||
0002f ff d2 call edx
|
||
00031 89 45 a8 mov DWORD PTR tv76[ebp], eax
|
||
00034 8b 45 a8 mov eax, DWORD PTR tv76[ebp]
|
||
00037 8b 08 mov ecx, DWORD PTR [eax]
|
||
00039 8b 11 mov edx, DWORD PTR [ecx]
|
||
0003b 89 55 a4 mov DWORD PTR tv83[ebp], edx
|
||
0003e 6a 02 push 2
|
||
00040 8b 45 08 mov eax, DWORD PTR _nLength$[ebp]
|
||
00043 50 push eax
|
||
00044 8b 4d a8 mov ecx, DWORD PTR tv76[ebp]
|
||
00047 ff 55 a4 call DWORD PTR tv83[ebp]
|
||
0004a 89 45 f0 mov DWORD PTR _pNewData$[ebp], eax
|
||
|
||
; 787 : if( pNewData == NULL )
|
||
|
||
0004d 83 7d f0 00 cmp DWORD PTR _pNewData$[ebp], 0
|
||
00051 75 05 jne SHORT $LN2@Fork
|
||
|
||
; 788 : {
|
||
; 789 : ThrowMemoryException();
|
||
|
||
00053 e8 00 00 00 00 call ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
|
||
$LN2@Fork:
|
||
|
||
; 790 : }
|
||
; 791 : int nCharsToCopy = ((nOldLength < nLength) ? nOldLength : nLength)+1; // Copy '\0'
|
||
|
||
00058 8b 45 f4 mov eax, DWORD PTR _nOldLength$[ebp]
|
||
0005b 3b 45 08 cmp eax, DWORD PTR _nLength$[ebp]
|
||
0005e 7d 08 jge SHORT $LN4@Fork
|
||
00060 8b 4d f4 mov ecx, DWORD PTR _nOldLength$[ebp]
|
||
00063 89 4d a8 mov DWORD PTR tv86[ebp], ecx
|
||
00066 eb 06 jmp SHORT $LN5@Fork
|
||
$LN4@Fork:
|
||
00068 8b 55 08 mov edx, DWORD PTR _nLength$[ebp]
|
||
0006b 89 55 a8 mov DWORD PTR tv86[ebp], edx
|
||
$LN5@Fork:
|
||
0006e 8b 45 a8 mov eax, DWORD PTR tv86[ebp]
|
||
00071 83 c0 01 add eax, 1
|
||
00074 89 45 ec mov DWORD PTR _nCharsToCopy$[ebp], eax
|
||
|
||
; 792 : memcpy_s( PXSTR( pNewData->data() ), nCharsToCopy * sizeof( XCHAR ),
|
||
|
||
00077 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
|
||
0007a e8 00 00 00 00 call ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
|
||
0007f 89 45 a8 mov DWORD PTR tv134[ebp], eax
|
||
00082 8b 4d f0 mov ecx, DWORD PTR _pNewData$[ebp]
|
||
00085 e8 00 00 00 00 call ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
|
||
0008a 89 45 a4 mov DWORD PTR tv132[ebp], eax
|
||
0008d 8b 45 ec mov eax, DWORD PTR _nCharsToCopy$[ebp]
|
||
00090 d1 e0 shl eax, 1
|
||
00092 50 push eax
|
||
00093 8b 4d a8 mov ecx, DWORD PTR tv134[ebp]
|
||
00096 51 push ecx
|
||
00097 8b 55 ec mov edx, DWORD PTR _nCharsToCopy$[ebp]
|
||
0009a d1 e2 shl edx, 1
|
||
0009c 52 push edx
|
||
0009d 8b 45 a4 mov eax, DWORD PTR tv132[ebp]
|
||
000a0 50 push eax
|
||
000a1 e8 00 00 00 00 call _memcpy_s
|
||
000a6 83 c4 10 add esp, 16 ; 00000010H
|
||
|
||
; 793 : PCXSTR( pOldData->data() ), nCharsToCopy * sizeof( XCHAR ));
|
||
; 794 : pNewData->nDataLength = nOldLength;
|
||
|
||
000a9 8b 45 f0 mov eax, DWORD PTR _pNewData$[ebp]
|
||
000ac 8b 4d f4 mov ecx, DWORD PTR _nOldLength$[ebp]
|
||
000af 89 48 04 mov DWORD PTR [eax+4], ecx
|
||
|
||
; 795 : pOldData->Release();
|
||
|
||
000b2 8b 4d f8 mov ecx, DWORD PTR _pOldData$[ebp]
|
||
000b5 e8 00 00 00 00 call ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
|
||
|
||
; 796 : Attach( pNewData );
|
||
|
||
000ba 8b 45 f0 mov eax, DWORD PTR _pNewData$[ebp]
|
||
000bd 50 push eax
|
||
000be 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000c1 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
|
||
$LN3@Fork:
|
||
|
||
; 797 : }
|
||
|
||
000c6 5f pop edi
|
||
000c7 5e pop esi
|
||
000c8 5b pop ebx
|
||
000c9 8b e5 mov esp, ebp
|
||
000cb 5d pop ebp
|
||
000cc c2 04 00 ret 4
|
||
?Fork@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Fork
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_pData$ = 8 ; size = 4
|
||
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::Attach, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 779 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 780 : m_pszData = static_cast< PXSTR >( pData->data() );
|
||
|
||
0000c 8b 4d 08 mov ecx, DWORD PTR _pData$[ebp]
|
||
0000f e8 00 00 00 00 call ?data@CStringData@ATL@@QAEPAXXZ ; ATL::CStringData::data
|
||
00014 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00017 89 01 mov DWORD PTR [ecx], eax
|
||
|
||
; 781 : }
|
||
|
||
00019 5f pop edi
|
||
0001a 5e pop esi
|
||
0001b 5b pop ebx
|
||
0001c 8b e5 mov esp, ebp
|
||
0001e 5d pop ebp
|
||
0001f c2 04 00 ret 4
|
||
?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::Attach
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ
|
||
_TEXT SEGMENT
|
||
?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException, COMDAT
|
||
|
||
; 772 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 773 : AtlThrow( E_OUTOFMEMORY );
|
||
|
||
00009 68 0e 00 07 80 push -2147024882 ; 8007000eH
|
||
0000e e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
|
||
$LN2@ThrowMemor:
|
||
|
||
; 774 : }
|
||
|
||
00013 5f pop edi
|
||
00014 5e pop esi
|
||
00015 5b pop ebx
|
||
00016 8b e5 mov esp, ebp
|
||
00018 5d pop ebp
|
||
00019 c3 ret 0
|
||
?ThrowMemoryException@?$CSimpleStringT@_W$0A@@ATL@@KAXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::ThrowMemoryException
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z
|
||
_TEXT SEGMENT
|
||
__$EHRec$ = -12 ; size = 12
|
||
_psz$ = 8 ; size = 4
|
||
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::StringLength, COMDAT
|
||
|
||
; 729 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 40 sub esp, 64 ; 00000040H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 730 : if( psz == NULL )
|
||
|
||
00028 83 7d 08 00 cmp DWORD PTR _psz$[ebp], 0
|
||
0002c 75 04 jne SHORT $LN2@StringLeng
|
||
|
||
; 731 : {
|
||
; 732 : return( 0 );
|
||
|
||
0002e 33 c0 xor eax, eax
|
||
00030 eb 0c jmp SHORT $LN1@StringLeng
|
||
$LN2@StringLeng:
|
||
|
||
; 733 : }
|
||
; 734 : return( int( wcslen( psz ) ) );
|
||
|
||
00032 8b 45 08 mov eax, DWORD PTR _psz$[ebp]
|
||
00035 50 push eax
|
||
00036 e8 00 00 00 00 call _wcslen
|
||
0003b 83 c4 04 add esp, 4
|
||
$LN1@StringLeng:
|
||
|
||
; 735 : }
|
||
|
||
0003e 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
00041 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
00048 59 pop ecx
|
||
00049 5f pop edi
|
||
0004a 5e pop esi
|
||
0004b 5b pop ebx
|
||
0004c 8b e5 mov esp, ebp
|
||
0004e 5d pop ebp
|
||
0004f c3 ret 0
|
||
00050 cc int 3
|
||
00051 cc int 3
|
||
00052 cc int 3
|
||
00053 cc int 3
|
||
00054 cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::StringLength
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z
|
||
_TEXT SEGMENT
|
||
__$EHRec$ = -12 ; size = 12
|
||
_pchDest$ = 8 ; size = 4
|
||
_nDestLen$ = 12 ; size = 4
|
||
_pchSrc$ = 16 ; size = 4
|
||
_nChars$ = 20 ; size = 4
|
||
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped, COMDAT
|
||
|
||
; 716 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 40 sub esp, 64 ; 00000040H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 717 : memmove_s( pchDest, nDestLen*sizeof( XCHAR ),
|
||
|
||
00028 8b 45 14 mov eax, DWORD PTR _nChars$[ebp]
|
||
0002b d1 e0 shl eax, 1
|
||
0002d 50 push eax
|
||
0002e 8b 4d 10 mov ecx, DWORD PTR _pchSrc$[ebp]
|
||
00031 51 push ecx
|
||
00032 8b 55 0c mov edx, DWORD PTR _nDestLen$[ebp]
|
||
00035 d1 e2 shl edx, 1
|
||
00037 52 push edx
|
||
00038 8b 45 08 mov eax, DWORD PTR _pchDest$[ebp]
|
||
0003b 50 push eax
|
||
0003c e8 00 00 00 00 call _memmove_s
|
||
00041 83 c4 10 add esp, 16 ; 00000010H
|
||
|
||
; 718 : pchSrc, nChars*sizeof( XCHAR ) );
|
||
; 719 : }
|
||
|
||
00044 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
00047 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
0004e 59 pop ecx
|
||
0004f 5f pop edi
|
||
00050 5e pop esi
|
||
00051 5b pop ebx
|
||
00052 8b e5 mov esp, ebp
|
||
00054 5d pop ebp
|
||
00055 c3 ret 0
|
||
00056 cc int 3
|
||
00057 cc int 3
|
||
00058 cc int 3
|
||
00059 cc int 3
|
||
0005a cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z
|
||
_TEXT SEGMENT
|
||
_pszBuffer$1 = -16 ; size = 4
|
||
_nOffset$2 = -12 ; size = 4
|
||
_nOldLength$3 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_pszSrc$ = 8 ; size = 4
|
||
_nLength$ = 12 ; size = 4
|
||
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 607 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 50 sub esp, 80 ; 00000050H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 608 : if( nLength == 0 )
|
||
|
||
0000c 83 7d 0c 00 cmp DWORD PTR _nLength$[ebp], 0
|
||
00010 75 0d jne SHORT $LN2@SetString
|
||
|
||
; 609 : {
|
||
; 610 : Empty();
|
||
|
||
00012 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00015 e8 00 00 00 00 call ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ ; ATL::CSimpleStringT<wchar_t,0>::Empty
|
||
|
||
; 611 : }
|
||
|
||
0001a e9 96 00 00 00 jmp $LN7@SetString
|
||
$LN2@SetString:
|
||
|
||
; 612 : else
|
||
; 613 : {
|
||
; 614 : // It is possible that pszSrc points to a location inside of our
|
||
; 615 : // buffer. GetBuffer() might change m_pszData if (1) the buffer
|
||
; 616 : // is shared or (2) the buffer is too small to hold the new
|
||
; 617 : // string. We detect this aliasing, and modify pszSrc to point
|
||
; 618 : // into the newly allocated buffer instead.
|
||
; 619 :
|
||
; 620 : if(pszSrc == NULL)
|
||
|
||
0001f 83 7d 08 00 cmp DWORD PTR _pszSrc$[ebp], 0
|
||
00023 75 0a jne SHORT $LN4@SetString
|
||
|
||
; 621 : AtlThrow(E_INVALIDARG);
|
||
|
||
00025 68 57 00 07 80 push -2147024809 ; 80070057H
|
||
0002a e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
|
||
$LN4@SetString:
|
||
|
||
; 622 :
|
||
; 623 : UINT nOldLength = GetLength();
|
||
|
||
0002f 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00032 e8 00 00 00 00 call ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetLength
|
||
00037 89 45 f8 mov DWORD PTR _nOldLength$3[ebp], eax
|
||
|
||
; 624 : UINT_PTR nOffset = pszSrc-GetString();
|
||
|
||
0003a 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0003d e8 00 00 00 00 call ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ; ATL::CSimpleStringT<wchar_t,0>::GetString
|
||
00042 8b 4d 08 mov ecx, DWORD PTR _pszSrc$[ebp]
|
||
00045 2b c8 sub ecx, eax
|
||
00047 d1 f9 sar ecx, 1
|
||
00049 89 4d f4 mov DWORD PTR _nOffset$2[ebp], ecx
|
||
|
||
; 625 : // If 0 <= nOffset <= nOldLength, then pszSrc points into our
|
||
; 626 : // buffer
|
||
; 627 :
|
||
; 628 : PXSTR pszBuffer = GetBuffer( nLength );
|
||
|
||
0004c 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
|
||
0004f 50 push eax
|
||
00050 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00053 e8 00 00 00 00 call ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
|
||
00058 89 45 f0 mov DWORD PTR _pszBuffer$1[ebp], eax
|
||
|
||
; 629 : if( nOffset <= nOldLength )
|
||
|
||
0005b 8b 45 f4 mov eax, DWORD PTR _nOffset$2[ebp]
|
||
0005e 3b 45 f8 cmp eax, DWORD PTR _nOldLength$3[ebp]
|
||
00061 77 25 ja SHORT $LN5@SetString
|
||
|
||
; 630 : {
|
||
; 631 : CopyCharsOverlapped( pszBuffer, GetAllocLength(),
|
||
|
||
00063 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
|
||
00066 50 push eax
|
||
00067 8b 4d f4 mov ecx, DWORD PTR _nOffset$2[ebp]
|
||
0006a 8b 55 f0 mov edx, DWORD PTR _pszBuffer$1[ebp]
|
||
0006d 8d 04 4a lea eax, DWORD PTR [edx+ecx*2]
|
||
00070 50 push eax
|
||
00071 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00074 e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
|
||
00079 50 push eax
|
||
0007a 8b 4d f0 mov ecx, DWORD PTR _pszBuffer$1[ebp]
|
||
0007d 51 push ecx
|
||
0007e e8 00 00 00 00 call ?CopyCharsOverlapped@?$CSimpleStringT@_W$0A@@ATL@@SAXPA_WIPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::CopyCharsOverlapped
|
||
00083 83 c4 10 add esp, 16 ; 00000010H
|
||
|
||
; 632 : pszBuffer+nOffset, nLength );
|
||
; 633 : }
|
||
|
||
00086 eb 21 jmp SHORT $LN6@SetString
|
||
$LN5@SetString:
|
||
|
||
; 634 : else
|
||
; 635 : {
|
||
; 636 : memcpy_s( pszBuffer, GetAllocLength() * sizeof( XCHAR ), pszSrc, nLength * sizeof( XCHAR ));
|
||
|
||
00088 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
|
||
0008b d1 e0 shl eax, 1
|
||
0008d 50 push eax
|
||
0008e 8b 4d 08 mov ecx, DWORD PTR _pszSrc$[ebp]
|
||
00091 51 push ecx
|
||
00092 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00095 e8 00 00 00 00 call ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
|
||
0009a d1 e0 shl eax, 1
|
||
0009c 50 push eax
|
||
0009d 8b 55 f0 mov edx, DWORD PTR _pszBuffer$1[ebp]
|
||
000a0 52 push edx
|
||
000a1 e8 00 00 00 00 call _memcpy_s
|
||
000a6 83 c4 10 add esp, 16 ; 00000010H
|
||
$LN6@SetString:
|
||
|
||
; 637 : }
|
||
; 638 : ReleaseBufferSetLength( nLength );
|
||
|
||
000a9 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
|
||
000ac 50 push eax
|
||
000ad 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
000b0 e8 00 00 00 00 call ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
|
||
$LN7@SetString:
|
||
|
||
; 639 : }
|
||
; 640 : }
|
||
|
||
000b5 5f pop edi
|
||
000b6 5e pop esi
|
||
000b7 5b pop ebx
|
||
000b8 8b e5 mov esp, ebp
|
||
000ba 5d pop ebp
|
||
000bb c2 08 00 ret 8
|
||
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetString
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_pszSrc$ = 8 ; size = 4
|
||
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::SetString, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 601 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 602 : SetString( pszSrc, StringLength( pszSrc ) );
|
||
|
||
0000c 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
0000f 50 push eax
|
||
00010 e8 00 00 00 00 call ?StringLength@?$CSimpleStringT@_W$0A@@ATL@@SAHPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::StringLength
|
||
00015 83 c4 04 add esp, 4
|
||
00018 50 push eax
|
||
00019 8b 4d 08 mov ecx, DWORD PTR _pszSrc$[ebp]
|
||
0001c 51 push ecx
|
||
0001d 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00020 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
|
||
|
||
; 603 : }
|
||
|
||
00025 5f pop edi
|
||
00026 5e pop esi
|
||
00027 5b pop ebx
|
||
00028 8b e5 mov esp, ebp
|
||
0002a 5d pop ebp
|
||
0002b c2 04 00 ret 4
|
||
?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::SetString
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_nNewLength$ = 8 ; size = 4
|
||
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 566 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 567 : ATLASSERT( nNewLength >= 0 );
|
||
; 568 : SetLength( nNewLength );
|
||
|
||
0000c 8b 45 08 mov eax, DWORD PTR _nNewLength$[ebp]
|
||
0000f 50 push eax
|
||
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00013 e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
|
||
|
||
; 569 : }
|
||
|
||
00018 5f pop edi
|
||
00019 5e pop esi
|
||
0001a 5b pop ebx
|
||
0001b 8b e5 mov esp, ebp
|
||
0001d 5d pop ebp
|
||
0001e c2 04 00 ret 4
|
||
?ReleaseBufferSetLength@?$CSimpleStringT@_W$0A@@ATL@@QAEXH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::ReleaseBufferSetLength
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetString, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 528 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 529 : return( m_pszData );
|
||
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f 8b 00 mov eax, DWORD PTR [eax]
|
||
|
||
; 530 : }
|
||
|
||
00011 5f pop edi
|
||
00012 5e pop esi
|
||
00013 5b pop ebx
|
||
00014 8b e5 mov esp, ebp
|
||
00016 5d pop ebp
|
||
00017 c3 ret 0
|
||
?GetString@?$CSimpleStringT@_W$0A@@ATL@@QBEPB_WXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetString
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetLength, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 518 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 519 : return( GetData()->nDataLength );
|
||
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00014 8b 40 04 mov eax, DWORD PTR [eax+4]
|
||
|
||
; 520 : }
|
||
|
||
00017 5f pop edi
|
||
00018 5e pop esi
|
||
00019 5b pop ebx
|
||
0001a 8b e5 mov esp, ebp
|
||
0001c 5d pop ebp
|
||
0001d c3 ret 0
|
||
?GetLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetLength
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_nMinBufferLength$ = 8 ; size = 4
|
||
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 507 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 508 : return( PrepareWrite( nMinBufferLength ) );
|
||
|
||
0000c 8b 45 08 mov eax, DWORD PTR _nMinBufferLength$[ebp]
|
||
0000f 50 push eax
|
||
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00013 e8 00 00 00 00 call ?PrepareWrite@?$CSimpleStringT@_W$0A@@ATL@@AAEPA_WH@Z ; ATL::CSimpleStringT<wchar_t,0>::PrepareWrite
|
||
|
||
; 509 : }
|
||
|
||
00018 5f pop edi
|
||
00019 5e pop esi
|
||
0001a 5b pop ebx
|
||
0001b 8b e5 mov esp, ebp
|
||
0001d 5d pop ebp
|
||
0001e c2 04 00 ret 4
|
||
?GetBuffer@?$CSimpleStringT@_W$0A@@ATL@@QAEPA_WH@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetBuffer
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 485 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 486 : return( GetData()->nAllocLength );
|
||
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00014 8b 40 08 mov eax, DWORD PTR [eax+8]
|
||
|
||
; 487 : }
|
||
|
||
00017 5f pop edi
|
||
00018 5e pop esi
|
||
00019 5b pop ebx
|
||
0001a 8b e5 mov esp, ebp
|
||
0001c 5d pop ebp
|
||
0001d c3 ret 0
|
||
?GetAllocLength@?$CSimpleStringT@_W$0A@@ATL@@QBEHXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::GetAllocLength
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ
|
||
_TEXT SEGMENT
|
||
_pNewData$2 = -28 ; size = 4
|
||
_pStringMgr$ = -24 ; size = 4
|
||
_pOldData$ = -20 ; size = 4
|
||
_this$ = -16 ; size = 4
|
||
__$EHRec$ = -12 ; size = 12
|
||
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ PROC ; ATL::CSimpleStringT<wchar_t,0>::Empty, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 436 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 50 sub esp, 80 ; 00000050H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
00028 89 4d f0 mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 437 : CStringData* pOldData = GetData();
|
||
|
||
0002b 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
0002e e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00033 89 45 ec mov DWORD PTR _pOldData$[ebp], eax
|
||
|
||
; 438 : IAtlStringMgr* pStringMgr = pOldData->pStringMgr;
|
||
|
||
00036 8b 45 ec mov eax, DWORD PTR _pOldData$[ebp]
|
||
00039 8b 08 mov ecx, DWORD PTR [eax]
|
||
0003b 89 4d e8 mov DWORD PTR _pStringMgr$[ebp], ecx
|
||
|
||
; 439 : if( pOldData->nDataLength == 0 )
|
||
|
||
0003e 8b 45 ec mov eax, DWORD PTR _pOldData$[ebp]
|
||
00041 83 78 04 00 cmp DWORD PTR [eax+4], 0
|
||
00045 75 02 jne SHORT $LN2@Empty
|
||
|
||
; 440 : {
|
||
; 441 : return;
|
||
|
||
00047 eb 3f jmp SHORT $LN1@Empty
|
||
$LN2@Empty:
|
||
|
||
; 442 : }
|
||
; 443 :
|
||
; 444 : if( pOldData->IsLocked() )
|
||
|
||
00049 8b 4d ec mov ecx, DWORD PTR _pOldData$[ebp]
|
||
0004c e8 00 00 00 00 call ?IsLocked@CStringData@ATL@@QBE_NXZ ; ATL::CStringData::IsLocked
|
||
00051 0f b6 c0 movzx eax, al
|
||
00054 85 c0 test eax, eax
|
||
00056 74 0c je SHORT $LN3@Empty
|
||
|
||
; 445 : {
|
||
; 446 : // Don't reallocate a locked buffer that's shrinking
|
||
; 447 : SetLength( 0 );
|
||
|
||
00058 6a 00 push 0
|
||
0005a 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
0005d e8 00 00 00 00 call ?SetLength@?$CSimpleStringT@_W$0A@@ATL@@AAEXH@Z ; ATL::CSimpleStringT<wchar_t,0>::SetLength
|
||
|
||
; 448 : }
|
||
|
||
00062 eb 24 jmp SHORT $LN1@Empty
|
||
$LN3@Empty:
|
||
|
||
; 449 : else
|
||
; 450 : {
|
||
; 451 : pOldData->Release();
|
||
|
||
00064 8b 4d ec mov ecx, DWORD PTR _pOldData$[ebp]
|
||
00067 e8 00 00 00 00 call ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
|
||
|
||
; 452 : CStringData* pNewData = pStringMgr->GetNilString();
|
||
|
||
0006c 8b 45 e8 mov eax, DWORD PTR _pStringMgr$[ebp]
|
||
0006f 8b 10 mov edx, DWORD PTR [eax]
|
||
00071 8b 4d e8 mov ecx, DWORD PTR _pStringMgr$[ebp]
|
||
00074 8b 42 0c mov eax, DWORD PTR [edx+12]
|
||
00077 ff d0 call eax
|
||
00079 89 45 e4 mov DWORD PTR _pNewData$2[ebp], eax
|
||
|
||
; 453 : Attach( pNewData );
|
||
|
||
0007c 8b 45 e4 mov eax, DWORD PTR _pNewData$2[ebp]
|
||
0007f 50 push eax
|
||
00080 8b 4d f0 mov ecx, DWORD PTR _this$[ebp]
|
||
00083 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
|
||
$LN1@Empty:
|
||
|
||
; 454 : }
|
||
; 455 : }
|
||
|
||
00088 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
0008b 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
00092 59 pop ecx
|
||
00093 5f pop edi
|
||
00094 5e pop esi
|
||
00095 5b pop ebx
|
||
00096 8b e5 mov esp, ebp
|
||
00098 5d pop ebp
|
||
00099 c3 ret 0
|
||
0009a cc int 3
|
||
0009b cc int 3
|
||
0009c cc int 3
|
||
0009d cc int 3
|
||
0009e cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a a0 mov ecx, DWORD PTR [edx-96]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?Empty@?$CSimpleStringT@_W$0A@@ATL@@QAEXXZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::Empty
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
_pszSrc$ = 8 ; size = 4
|
||
??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::operator=, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 313 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 314 : SetString( pszSrc );
|
||
|
||
0000c 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
0000f 50 push eax
|
||
00010 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00013 e8 00 00 00 00 call ?SetString@?$CSimpleStringT@_W$0A@@ATL@@QAEXPB_W@Z ; ATL::CSimpleStringT<wchar_t,0>::SetString
|
||
|
||
; 315 :
|
||
; 316 : return( *this );
|
||
|
||
00018 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
|
||
; 317 : }
|
||
|
||
0001b 5f pop edi
|
||
0001c 5e pop esi
|
||
0001d 5b pop ebx
|
||
0001e 8b e5 mov esp, ebp
|
||
00020 5d pop ebp
|
||
00021 c2 04 00 ret 4
|
||
??4?$CSimpleStringT@_W$0A@@ATL@@QAEAAV01@PB_W@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::operator=
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ
|
||
_TEXT SEGMENT
|
||
_pData$ = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ PROC ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 260 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 261 : CStringData* pData = GetData();
|
||
|
||
0000c 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
0000f e8 00 00 00 00 call ?GetData@?$CSimpleStringT@_W$0A@@ATL@@ABEPAUCStringData@2@XZ ; ATL::CSimpleStringT<wchar_t,0>::GetData
|
||
00014 89 45 f8 mov DWORD PTR _pData$[ebp], eax
|
||
|
||
; 262 : pData->Release();
|
||
|
||
00017 8b 4d f8 mov ecx, DWORD PTR _pData$[ebp]
|
||
0001a e8 00 00 00 00 call ?Release@CStringData@ATL@@QAEXXZ ; ATL::CStringData::Release
|
||
|
||
; 263 : }
|
||
|
||
0001f 5f pop edi
|
||
00020 5e pop esi
|
||
00021 5b pop ebx
|
||
00022 8b e5 mov esp, ebp
|
||
00024 5d pop ebp
|
||
00025 c3 ret 0
|
||
??1?$CSimpleStringT@_W$0A@@ATL@@QAE@XZ ENDP ; ATL::CSimpleStringT<wchar_t,0>::~CSimpleStringT<wchar_t,0>
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z
|
||
_TEXT SEGMENT
|
||
tv65 = -80 ; size = 4
|
||
_pData$ = -12 ; size = 4
|
||
___atl_condVal$1 = -8 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
_pStringMgr$ = 8 ; size = 4
|
||
??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z PROC ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 203 : explicit CSimpleStringT(_Inout_ IAtlStringMgr* pStringMgr)
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 50 sub esp, 80 ; 00000050H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
$LN4@CSimpleStr:
|
||
|
||
; 204 : {
|
||
; 205 : ATLENSURE( pStringMgr != NULL );
|
||
|
||
0000c 83 7d 08 00 cmp DWORD PTR _pStringMgr$[ebp], 0
|
||
00010 74 09 je SHORT $LN10@CSimpleStr
|
||
00012 c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv65[ebp], 1
|
||
00019 eb 07 jmp SHORT $LN11@CSimpleStr
|
||
$LN10@CSimpleStr:
|
||
0001b c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv65[ebp], 0
|
||
$LN11@CSimpleStr:
|
||
00022 8b 45 b0 mov eax, DWORD PTR tv65[ebp]
|
||
00025 89 45 f8 mov DWORD PTR ___atl_condVal$1[ebp], eax
|
||
$LN5@CSimpleStr:
|
||
00028 33 c0 xor eax, eax
|
||
0002a 75 fc jne SHORT $LN5@CSimpleStr
|
||
0002c 83 7d f8 00 cmp DWORD PTR ___atl_condVal$1[ebp], 0
|
||
00030 75 0a jne SHORT $LN2@CSimpleStr
|
||
00032 68 05 40 00 80 push -2147467259 ; 80004005H
|
||
00037 e8 00 00 00 00 call ?AtlThrowImpl@ATL@@YGXJ@Z ; ATL::AtlThrowImpl
|
||
$LN2@CSimpleStr:
|
||
0003c 33 c0 xor eax, eax
|
||
0003e 75 cc jne SHORT $LN4@CSimpleStr
|
||
|
||
; 206 : CStringData* pData = pStringMgr->GetNilString();
|
||
|
||
00040 8b 45 08 mov eax, DWORD PTR _pStringMgr$[ebp]
|
||
00043 8b 10 mov edx, DWORD PTR [eax]
|
||
00045 8b 4d 08 mov ecx, DWORD PTR _pStringMgr$[ebp]
|
||
00048 8b 42 0c mov eax, DWORD PTR [edx+12]
|
||
0004b ff d0 call eax
|
||
0004d 89 45 f4 mov DWORD PTR _pData$[ebp], eax
|
||
|
||
; 207 : Attach( pData );
|
||
|
||
00050 8b 45 f4 mov eax, DWORD PTR _pData$[ebp]
|
||
00053 50 push eax
|
||
00054 8b 4d fc mov ecx, DWORD PTR _this$[ebp]
|
||
00057 e8 00 00 00 00 call ?Attach@?$CSimpleStringT@_W$0A@@ATL@@AAEXPAUCStringData@2@@Z ; ATL::CSimpleStringT<wchar_t,0>::Attach
|
||
|
||
; 208 : }
|
||
|
||
0005c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
$LN9@CSimpleStr:
|
||
0005f 5f pop edi
|
||
00060 5e pop esi
|
||
00061 5b pop ebx
|
||
00062 8b e5 mov esp, ebp
|
||
00064 5d pop ebp
|
||
00065 c2 04 00 ret 4
|
||
??0?$CSimpleStringT@_W$0A@@ATL@@QAE@PAUIAtlStringMgr@1@@Z ENDP ; ATL::CSimpleStringT<wchar_t,0>::CSimpleStringT<wchar_t,0>
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z
|
||
_TEXT SEGMENT
|
||
_pszDest$ = 8 ; size = 4
|
||
_nDestLength$ = 12 ; size = 4
|
||
_pszSrc$ = 16 ; size = 4
|
||
_nSrcLength$ = 20 ; size = 4
|
||
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType, COMDAT
|
||
|
||
; 789 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 790 : if (nSrcLength == -1) { nSrcLength=1 + GetBaseTypeLength(pszSrc); }
|
||
|
||
00009 83 7d 14 ff cmp DWORD PTR _nSrcLength$[ebp], -1
|
||
0000d 75 12 jne SHORT $LN2@ConvertToB
|
||
0000f 8b 45 10 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
00012 50 push eax
|
||
00013 e8 00 00 00 00 call ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
|
||
00018 83 c4 04 add esp, 4
|
||
0001b 83 c0 01 add eax, 1
|
||
0001e 89 45 14 mov DWORD PTR _nSrcLength$[ebp], eax
|
||
$LN2@ConvertToB:
|
||
|
||
; 791 : // nLen is in wchar_ts
|
||
; 792 : Checked::wmemcpy_s(pszDest, nDestLength, pszSrc, nSrcLength);
|
||
|
||
00021 8b 45 14 mov eax, DWORD PTR _nSrcLength$[ebp]
|
||
00024 50 push eax
|
||
00025 8b 4d 10 mov ecx, DWORD PTR _pszSrc$[ebp]
|
||
00028 51 push ecx
|
||
00029 8b 55 0c mov edx, DWORD PTR _nDestLength$[ebp]
|
||
0002c 52 push edx
|
||
0002d 8b 45 08 mov eax, DWORD PTR _pszDest$[ebp]
|
||
00030 50 push eax
|
||
00031 e8 00 00 00 00 call ?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z ; ATL::Checked::wmemcpy_s
|
||
00036 83 c4 10 add esp, 16 ; 00000010H
|
||
|
||
; 793 : }
|
||
|
||
00039 5f pop edi
|
||
0003a 5e pop esi
|
||
0003b 5b pop ebx
|
||
0003c 8b e5 mov esp, ebp
|
||
0003e 5d pop ebp
|
||
0003f c3 ret 0
|
||
?ConvertToBaseType@?$ChTraitsCRT@_W@ATL@@SAXPA_WHPB_WH@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::ConvertToBaseType
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z
|
||
_TEXT SEGMENT
|
||
_pszSrc$ = 8 ; size = 4
|
||
_nLength$ = 12 ; size = 4
|
||
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
|
||
|
||
; 768 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 769 : (void)pszSrc;
|
||
; 770 : // Returns required buffer size in wchar_ts
|
||
; 771 : return nLength;
|
||
|
||
00009 8b 45 0c mov eax, DWORD PTR _nLength$[ebp]
|
||
|
||
; 772 : }
|
||
|
||
0000c 5f pop edi
|
||
0000d 5e pop esi
|
||
0000e 5b pop ebx
|
||
0000f 8b e5 mov esp, ebp
|
||
00011 5d pop ebp
|
||
00012 c3 ret 0
|
||
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_WH@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\cstringt.h
|
||
; COMDAT ?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z
|
||
_TEXT SEGMENT
|
||
__$EHRec$ = -12 ; size = 12
|
||
_pszSrc$ = 8 ; size = 4
|
||
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z PROC ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength, COMDAT
|
||
|
||
; 760 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 40 sub esp, 64 ; 00000040H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 761 : // Returns required buffer size in wchar_ts
|
||
; 762 : return AtlStrLen( pszSrc );
|
||
|
||
00028 8b 45 08 mov eax, DWORD PTR _pszSrc$[ebp]
|
||
0002b 50 push eax
|
||
0002c e8 00 00 00 00 call ?AtlStrLen@ATL@@YAHPB_W@Z ; ATL::AtlStrLen
|
||
00031 83 c4 04 add esp, 4
|
||
|
||
; 763 : }
|
||
|
||
00034 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
00037 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
0003e 59 pop ecx
|
||
0003f 5f pop edi
|
||
00040 5e pop esi
|
||
00041 5b pop ebx
|
||
00042 8b e5 mov esp, ebp
|
||
00044 5d pop ebp
|
||
00045 c3 ret 0
|
||
00046 cc int 3
|
||
00047 cc int 3
|
||
00048 cc int 3
|
||
00049 cc int 3
|
||
0004a cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a b0 mov ecx, DWORD PTR [edx-80]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?GetBaseTypeLength@?$ChTraitsCRT@_W@ATL@@SAHPB_W@Z ENDP ; ATL::ChTraitsCRT<wchar_t>::GetBaseTypeLength
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?Release@CStringData@ATL@@QAEXXZ
|
||
_TEXT SEGMENT
|
||
tv79 = -76 ; size = 4
|
||
tv77 = -72 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
?Release@CStringData@ATL@@QAEXXZ PROC ; ATL::CStringData::Release, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 85 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 4c sub esp, 76 ; 0000004cH
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 86 : ATLASSERT( nRefs != 0 );
|
||
; 87 :
|
||
; 88 : if( _InterlockedDecrement( &nRefs ) <= 0 )
|
||
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f 83 c0 0c add eax, 12 ; 0000000cH
|
||
00012 83 c9 ff or ecx, -1
|
||
00015 f0 0f c1 08 lock xadd DWORD PTR [eax], ecx
|
||
00019 49 dec ecx
|
||
0001a 85 c9 test ecx, ecx
|
||
0001c 7f 1f jg SHORT $LN1@Release
|
||
|
||
; 89 : {
|
||
; 90 : pStringMgr->Free( this );
|
||
|
||
0001e 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00021 8b 08 mov ecx, DWORD PTR [eax]
|
||
00023 89 4d b8 mov DWORD PTR tv77[ebp], ecx
|
||
00026 8b 55 fc mov edx, DWORD PTR _this$[ebp]
|
||
00029 8b 02 mov eax, DWORD PTR [edx]
|
||
0002b 8b 08 mov ecx, DWORD PTR [eax]
|
||
0002d 8b 51 04 mov edx, DWORD PTR [ecx+4]
|
||
00030 89 55 b4 mov DWORD PTR tv79[ebp], edx
|
||
00033 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
00036 50 push eax
|
||
00037 8b 4d b8 mov ecx, DWORD PTR tv77[ebp]
|
||
0003a ff 55 b4 call DWORD PTR tv79[ebp]
|
||
$LN1@Release:
|
||
|
||
; 91 : }
|
||
; 92 : }
|
||
|
||
0003d 5f pop edi
|
||
0003e 5e pop esi
|
||
0003f 5b pop ebx
|
||
00040 8b e5 mov esp, ebp
|
||
00042 5d pop ebp
|
||
00043 c3 ret 0
|
||
?Release@CStringData@ATL@@QAEXXZ ENDP ; ATL::CStringData::Release
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?IsShared@CStringData@ATL@@QBE_NXZ
|
||
_TEXT SEGMENT
|
||
tv66 = -72 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
?IsShared@CStringData@ATL@@QBE_NXZ PROC ; ATL::CStringData::IsShared, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 72 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 73 : return( nRefs > 1 );
|
||
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f 83 78 0c 01 cmp DWORD PTR [eax+12], 1
|
||
00013 7e 09 jle SHORT $LN3@IsShared
|
||
00015 c7 45 b8 01 00
|
||
00 00 mov DWORD PTR tv66[ebp], 1
|
||
0001c eb 07 jmp SHORT $LN4@IsShared
|
||
$LN3@IsShared:
|
||
0001e c7 45 b8 00 00
|
||
00 00 mov DWORD PTR tv66[ebp], 0
|
||
$LN4@IsShared:
|
||
00025 8a 45 b8 mov al, BYTE PTR tv66[ebp]
|
||
|
||
; 74 : }
|
||
|
||
00028 5f pop edi
|
||
00029 5e pop esi
|
||
0002a 5b pop ebx
|
||
0002b 8b e5 mov esp, ebp
|
||
0002d 5d pop ebp
|
||
0002e c3 ret 0
|
||
?IsShared@CStringData@ATL@@QBE_NXZ ENDP ; ATL::CStringData::IsShared
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?IsLocked@CStringData@ATL@@QBE_NXZ
|
||
_TEXT SEGMENT
|
||
tv66 = -72 ; size = 4
|
||
_this$ = -4 ; size = 4
|
||
?IsLocked@CStringData@ATL@@QBE_NXZ PROC ; ATL::CStringData::IsLocked, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 68 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 69 : return nRefs < 0;
|
||
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f 83 78 0c 00 cmp DWORD PTR [eax+12], 0
|
||
00013 7d 09 jge SHORT $LN3@IsLocked
|
||
00015 c7 45 b8 01 00
|
||
00 00 mov DWORD PTR tv66[ebp], 1
|
||
0001c eb 07 jmp SHORT $LN4@IsLocked
|
||
$LN3@IsLocked:
|
||
0001e c7 45 b8 00 00
|
||
00 00 mov DWORD PTR tv66[ebp], 0
|
||
$LN4@IsLocked:
|
||
00025 8a 45 b8 mov al, BYTE PTR tv66[ebp]
|
||
|
||
; 70 : }
|
||
|
||
00028 5f pop edi
|
||
00029 5e pop esi
|
||
0002a 5b pop ebx
|
||
0002b 8b e5 mov esp, ebp
|
||
0002d 5d pop ebp
|
||
0002e c3 ret 0
|
||
?IsLocked@CStringData@ATL@@QBE_NXZ ENDP ; ATL::CStringData::IsLocked
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlsimpstr.h
|
||
; COMDAT ?data@CStringData@ATL@@QAEPAXXZ
|
||
_TEXT SEGMENT
|
||
_this$ = -4 ; size = 4
|
||
?data@CStringData@ATL@@QAEPAXXZ PROC ; ATL::CStringData::data, COMDAT
|
||
; _this$ = ecx
|
||
|
||
; 58 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 89 4d fc mov DWORD PTR _this$[ebp], ecx
|
||
|
||
; 59 : return (this+1);
|
||
|
||
0000c 8b 45 fc mov eax, DWORD PTR _this$[ebp]
|
||
0000f 83 c0 10 add eax, 16 ; 00000010H
|
||
|
||
; 60 : }
|
||
|
||
00012 5f pop edi
|
||
00013 5e pop esi
|
||
00014 5b pop ebx
|
||
00015 8b e5 mov esp, ebp
|
||
00017 5d pop ebp
|
||
00018 c3 ret 0
|
||
?data@CStringData@ATL@@QAEPAXXZ ENDP ; ATL::CStringData::data
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
|
||
; COMDAT ?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z
|
||
_TEXT SEGMENT
|
||
_hResource$ = -16 ; size = 4
|
||
__$EHRec$ = -12 ; size = 12
|
||
_hInstance$ = 8 ; size = 4
|
||
_id$ = 12 ; size = 4
|
||
?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z PROC ; ATL::AtlGetStringResourceImage, COMDAT
|
||
|
||
; 370 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 44 sub esp, 68 ; 00000044H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 371 : HRSRC hResource;
|
||
; 372 : /*
|
||
; 373 : The and operation (& static_cast<WORD>(~0)) protects the expression from being greater
|
||
; 374 : than WORD - this would cause a runtime error when the application is compiled with /RTCc flag.
|
||
; 375 : */
|
||
; 376 : hResource = ::FindResourceW(hInstance, MAKEINTRESOURCEW( (((id>>4)+1) & static_cast<WORD>(~0)) ), (LPWSTR) RT_STRING);
|
||
|
||
00028 6a 06 push 6
|
||
0002a 8b 45 0c mov eax, DWORD PTR _id$[ebp]
|
||
0002d c1 e8 04 shr eax, 4
|
||
00030 83 c0 01 add eax, 1
|
||
00033 25 ff ff 00 00 and eax, 65535 ; 0000ffffH
|
||
00038 0f b7 c8 movzx ecx, ax
|
||
0003b 51 push ecx
|
||
0003c 8b 55 08 mov edx, DWORD PTR _hInstance$[ebp]
|
||
0003f 52 push edx
|
||
00040 ff 15 00 00 00
|
||
00 call DWORD PTR __imp__FindResourceW@12
|
||
00046 89 45 f0 mov DWORD PTR _hResource$[ebp], eax
|
||
|
||
; 377 : if( hResource == NULL )
|
||
|
||
00049 83 7d f0 00 cmp DWORD PTR _hResource$[ebp], 0
|
||
0004d 75 04 jne SHORT $LN2@AtlGetStri
|
||
|
||
; 378 : {
|
||
; 379 : return( NULL );
|
||
|
||
0004f 33 c0 xor eax, eax
|
||
00051 eb 14 jmp SHORT $LN1@AtlGetStri
|
||
$LN2@AtlGetStri:
|
||
|
||
; 380 : }
|
||
; 381 :
|
||
; 382 : return _AtlGetStringResourceImage( hInstance, hResource, id );
|
||
|
||
00053 8b 45 0c mov eax, DWORD PTR _id$[ebp]
|
||
00056 50 push eax
|
||
00057 8b 4d f0 mov ecx, DWORD PTR _hResource$[ebp]
|
||
0005a 51 push ecx
|
||
0005b 8b 55 08 mov edx, DWORD PTR _hInstance$[ebp]
|
||
0005e 52 push edx
|
||
0005f e8 00 00 00 00 call ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ; ATL::_AtlGetStringResourceImage
|
||
00064 83 c4 0c add esp, 12 ; 0000000cH
|
||
$LN1@AtlGetStri:
|
||
|
||
; 383 : }
|
||
|
||
00067 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
0006a 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
00071 59 pop ecx
|
||
00072 5f pop edi
|
||
00073 5e pop esi
|
||
00074 5b pop ebx
|
||
00075 8b e5 mov esp, ebp
|
||
00077 5d pop ebp
|
||
00078 c3 ret 0
|
||
00079 cc int 3
|
||
0007a cc int 3
|
||
0007b cc int 3
|
||
0007c cc int 3
|
||
0007d cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a ac mov ecx, DWORD PTR [edx-84]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@I@Z ENDP ; ATL::AtlGetStringResourceImage
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
|
||
; COMDAT ?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z
|
||
_TEXT SEGMENT
|
||
_iIndex$ = -32 ; size = 4
|
||
_hGlobal$ = -28 ; size = 4
|
||
_nResourceSize$ = -24 ; size = 4
|
||
_pImageEnd$ = -20 ; size = 4
|
||
_pImage$ = -16 ; size = 4
|
||
__$EHRec$ = -12 ; size = 12
|
||
_hInstance$ = 8 ; size = 4
|
||
_hResource$ = 12 ; size = 4
|
||
_id$ = 16 ; size = 4
|
||
?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z PROC ; ATL::_AtlGetStringResourceImage, COMDAT
|
||
|
||
; 327 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 6a ff push -1
|
||
00005 68 00 00 00 00 push __ehhandler$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z
|
||
0000a 64 a1 00 00 00
|
||
00 mov eax, DWORD PTR fs:0
|
||
00010 50 push eax
|
||
00011 83 ec 54 sub esp, 84 ; 00000054H
|
||
00014 53 push ebx
|
||
00015 56 push esi
|
||
00016 57 push edi
|
||
00017 a1 00 00 00 00 mov eax, DWORD PTR ___security_cookie
|
||
0001c 33 c5 xor eax, ebp
|
||
0001e 50 push eax
|
||
0001f 8d 45 f4 lea eax, DWORD PTR __$EHRec$[ebp]
|
||
00022 64 a3 00 00 00
|
||
00 mov DWORD PTR fs:0, eax
|
||
|
||
; 328 : const ATLSTRINGRESOURCEIMAGE* pImage;
|
||
; 329 : const ATLSTRINGRESOURCEIMAGE* pImageEnd;
|
||
; 330 : ULONG nResourceSize;
|
||
; 331 : HGLOBAL hGlobal;
|
||
; 332 : UINT iIndex;
|
||
; 333 :
|
||
; 334 : hGlobal = ::LoadResource( hInstance, hResource );
|
||
|
||
00028 8b 45 0c mov eax, DWORD PTR _hResource$[ebp]
|
||
0002b 50 push eax
|
||
0002c 8b 4d 08 mov ecx, DWORD PTR _hInstance$[ebp]
|
||
0002f 51 push ecx
|
||
00030 ff 15 00 00 00
|
||
00 call DWORD PTR __imp__LoadResource@8
|
||
00036 89 45 e4 mov DWORD PTR _hGlobal$[ebp], eax
|
||
|
||
; 335 : if( hGlobal == NULL )
|
||
|
||
00039 83 7d e4 00 cmp DWORD PTR _hGlobal$[ebp], 0
|
||
0003d 75 07 jne SHORT $LN4@AtlGetStri
|
||
|
||
; 336 : {
|
||
; 337 : return( NULL );
|
||
|
||
0003f 33 c0 xor eax, eax
|
||
00041 e9 80 00 00 00 jmp $LN1@AtlGetStri
|
||
$LN4@AtlGetStri:
|
||
|
||
; 338 : }
|
||
; 339 :
|
||
; 340 : pImage = (const ATLSTRINGRESOURCEIMAGE*)::LockResource( hGlobal );
|
||
|
||
00046 8b 45 e4 mov eax, DWORD PTR _hGlobal$[ebp]
|
||
00049 50 push eax
|
||
0004a ff 15 00 00 00
|
||
00 call DWORD PTR __imp__LockResource@4
|
||
00050 89 45 f0 mov DWORD PTR _pImage$[ebp], eax
|
||
|
||
; 341 : if( pImage == NULL )
|
||
|
||
00053 83 7d f0 00 cmp DWORD PTR _pImage$[ebp], 0
|
||
00057 75 04 jne SHORT $LN5@AtlGetStri
|
||
|
||
; 342 : {
|
||
; 343 : return( NULL );
|
||
|
||
00059 33 c0 xor eax, eax
|
||
0005b eb 69 jmp SHORT $LN1@AtlGetStri
|
||
$LN5@AtlGetStri:
|
||
|
||
; 344 : }
|
||
; 345 :
|
||
; 346 : nResourceSize = ::SizeofResource( hInstance, hResource );
|
||
|
||
0005d 8b 45 0c mov eax, DWORD PTR _hResource$[ebp]
|
||
00060 50 push eax
|
||
00061 8b 4d 08 mov ecx, DWORD PTR _hInstance$[ebp]
|
||
00064 51 push ecx
|
||
00065 ff 15 00 00 00
|
||
00 call DWORD PTR __imp__SizeofResource@8
|
||
0006b 89 45 e8 mov DWORD PTR _nResourceSize$[ebp], eax
|
||
|
||
; 347 : pImageEnd = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+nResourceSize);
|
||
|
||
0006e 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
|
||
00071 03 45 e8 add eax, DWORD PTR _nResourceSize$[ebp]
|
||
00074 89 45 ec mov DWORD PTR _pImageEnd$[ebp], eax
|
||
|
||
; 348 : iIndex = id&0x000f;
|
||
|
||
00077 8b 45 10 mov eax, DWORD PTR _id$[ebp]
|
||
0007a 83 e0 0f and eax, 15 ; 0000000fH
|
||
0007d 89 45 e0 mov DWORD PTR _iIndex$[ebp], eax
|
||
$LN2@AtlGetStri:
|
||
|
||
; 349 :
|
||
; 350 : while( (iIndex > 0) && (pImage < pImageEnd) )
|
||
|
||
00080 83 7d e0 00 cmp DWORD PTR _iIndex$[ebp], 0
|
||
00084 76 23 jbe SHORT $LN3@AtlGetStri
|
||
00086 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
|
||
00089 3b 45 ec cmp eax, DWORD PTR _pImageEnd$[ebp]
|
||
0008c 73 1b jae SHORT $LN3@AtlGetStri
|
||
|
||
; 351 : {
|
||
; 352 : pImage = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE( pImage )+(sizeof( ATLSTRINGRESOURCEIMAGE )+(pImage->nLength*sizeof( WCHAR ))));
|
||
|
||
0008e 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
|
||
00091 0f b7 08 movzx ecx, WORD PTR [eax]
|
||
00094 8b 55 f0 mov edx, DWORD PTR _pImage$[ebp]
|
||
00097 8d 44 4a 02 lea eax, DWORD PTR [edx+ecx*2+2]
|
||
0009b 89 45 f0 mov DWORD PTR _pImage$[ebp], eax
|
||
|
||
; 353 : iIndex--;
|
||
|
||
0009e 8b 45 e0 mov eax, DWORD PTR _iIndex$[ebp]
|
||
000a1 83 e8 01 sub eax, 1
|
||
000a4 89 45 e0 mov DWORD PTR _iIndex$[ebp], eax
|
||
|
||
; 354 : }
|
||
|
||
000a7 eb d7 jmp SHORT $LN2@AtlGetStri
|
||
$LN3@AtlGetStri:
|
||
|
||
; 355 : if( pImage >= pImageEnd )
|
||
|
||
000a9 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
|
||
000ac 3b 45 ec cmp eax, DWORD PTR _pImageEnd$[ebp]
|
||
000af 72 04 jb SHORT $LN6@AtlGetStri
|
||
|
||
; 356 : {
|
||
; 357 : return( NULL );
|
||
|
||
000b1 33 c0 xor eax, eax
|
||
000b3 eb 11 jmp SHORT $LN1@AtlGetStri
|
||
$LN6@AtlGetStri:
|
||
|
||
; 358 : }
|
||
; 359 : if( pImage->nLength == 0 )
|
||
|
||
000b5 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
|
||
000b8 0f b7 08 movzx ecx, WORD PTR [eax]
|
||
000bb 85 c9 test ecx, ecx
|
||
000bd 75 04 jne SHORT $LN7@AtlGetStri
|
||
|
||
; 360 : {
|
||
; 361 : return( NULL );
|
||
|
||
000bf 33 c0 xor eax, eax
|
||
000c1 eb 03 jmp SHORT $LN1@AtlGetStri
|
||
$LN7@AtlGetStri:
|
||
|
||
; 362 : }
|
||
; 363 :
|
||
; 364 : return( pImage );
|
||
|
||
000c3 8b 45 f0 mov eax, DWORD PTR _pImage$[ebp]
|
||
$LN1@AtlGetStri:
|
||
|
||
; 365 : }
|
||
|
||
000c6 8b 4d f4 mov ecx, DWORD PTR __$EHRec$[ebp]
|
||
000c9 64 89 0d 00 00
|
||
00 00 mov DWORD PTR fs:0, ecx
|
||
000d0 59 pop ecx
|
||
000d1 5f pop edi
|
||
000d2 5e pop esi
|
||
000d3 5b pop ebx
|
||
000d4 8b e5 mov esp, ebp
|
||
000d6 5d pop ebp
|
||
000d7 c3 ret 0
|
||
000d8 cc int 3
|
||
000d9 cc int 3
|
||
000da cc int 3
|
||
000db cc int 3
|
||
000dc cc int 3
|
||
_TEXT ENDS
|
||
; COMDAT text$x
|
||
text$x SEGMENT
|
||
__ehhandler$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z:
|
||
00000 90 npad 1
|
||
00001 90 npad 1
|
||
00002 8b 54 24 08 mov edx, DWORD PTR [esp+8]
|
||
00006 8d 42 0c lea eax, DWORD PTR [edx+12]
|
||
00009 8b 4a 9c mov ecx, DWORD PTR [edx-100]
|
||
0000c 33 c8 xor ecx, eax
|
||
0000e e8 00 00 00 00 call @__security_check_cookie@4
|
||
00013 b8 00 00 00 00 mov eax, OFFSET __ehfuncinfo$?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z
|
||
00018 e9 00 00 00 00 jmp ___CxxFrameHandler3
|
||
text$x ENDS
|
||
?_AtlGetStringResourceImage@ATL@@YAPBUATLSTRINGRESOURCEIMAGE@1@PAUHINSTANCE__@@PAUHRSRC__@@I@Z ENDP ; ATL::_AtlGetStringResourceImage
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlcore.h
|
||
; COMDAT ?AtlStrLen@ATL@@YAHPB_W@Z
|
||
_TEXT SEGMENT
|
||
_str$ = 8 ; size = 4
|
||
?AtlStrLen@ATL@@YAHPB_W@Z PROC ; ATL::AtlStrLen, COMDAT
|
||
|
||
; 60 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 61 : if (str == NULL)
|
||
|
||
00009 83 7d 08 00 cmp DWORD PTR _str$[ebp], 0
|
||
0000d 75 04 jne SHORT $LN2@AtlStrLen
|
||
|
||
; 62 : return 0;
|
||
|
||
0000f 33 c0 xor eax, eax
|
||
00011 eb 0c jmp SHORT $LN1@AtlStrLen
|
||
$LN2@AtlStrLen:
|
||
|
||
; 63 : return static_cast<int>(::wcslen(str));
|
||
|
||
00013 8b 45 08 mov eax, DWORD PTR _str$[ebp]
|
||
00016 50 push eax
|
||
00017 e8 00 00 00 00 call _wcslen
|
||
0001c 83 c4 04 add esp, 4
|
||
$LN1@AtlStrLen:
|
||
|
||
; 64 : }
|
||
|
||
0001f 5f pop edi
|
||
00020 5e pop esi
|
||
00021 5b pop ebx
|
||
00022 8b e5 mov esp, ebp
|
||
00024 5d pop ebp
|
||
00025 c3 ret 0
|
||
?AtlStrLen@ATL@@YAHPB_W@Z ENDP ; ATL::AtlStrLen
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlchecked.h
|
||
; COMDAT ?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z
|
||
_TEXT SEGMENT
|
||
__S1$ = 8 ; size = 4
|
||
__N1$ = 12 ; size = 4
|
||
__S2$ = 16 ; size = 4
|
||
__N$ = 20 ; size = 4
|
||
?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z PROC ; ATL::Checked::wmemcpy_s, COMDAT
|
||
|
||
; 77 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 78 : ATLMFC_CRT_ERRORCHECK(::wmemcpy_s(_S1, _N1, _S2, _N));
|
||
|
||
00009 8b 45 14 mov eax, DWORD PTR __N$[ebp]
|
||
0000c 50 push eax
|
||
0000d 8b 4d 10 mov ecx, DWORD PTR __S2$[ebp]
|
||
00010 51 push ecx
|
||
00011 8b 55 0c mov edx, DWORD PTR __N1$[ebp]
|
||
00014 52 push edx
|
||
00015 8b 45 08 mov eax, DWORD PTR __S1$[ebp]
|
||
00018 50 push eax
|
||
00019 e8 00 00 00 00 call _wmemcpy_s
|
||
0001e 83 c4 10 add esp, 16 ; 00000010H
|
||
00021 50 push eax
|
||
00022 e8 00 00 00 00 call ?AfxCrtErrorCheck@@YAHH@Z ; AfxCrtErrorCheck
|
||
00027 83 c4 04 add esp, 4
|
||
|
||
; 79 : }
|
||
|
||
0002a 5f pop edi
|
||
0002b 5e pop esi
|
||
0002c 5b pop ebx
|
||
0002d 8b e5 mov esp, ebp
|
||
0002f 5d pop ebp
|
||
00030 c3 ret 0
|
||
?wmemcpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z ENDP ; ATL::Checked::wmemcpy_s
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\atlexcept.h
|
||
; COMDAT ?AtlThrowImpl@ATL@@YGXJ@Z
|
||
_TEXT SEGMENT
|
||
_hr$ = 8 ; size = 4
|
||
?AtlThrowImpl@ATL@@YGXJ@Z PROC ; ATL::AtlThrowImpl, COMDAT
|
||
|
||
; 65 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 66 : ATLTRACE(atlTraceException, 0, _T("AtlThrow: hr = 0x%x\n"), hr );
|
||
; 67 : #ifdef _AFX
|
||
; 68 : if( hr == E_OUTOFMEMORY )
|
||
|
||
00009 81 7d 08 0e 00
|
||
07 80 cmp DWORD PTR _hr$[ebp], -2147024882 ; 8007000eH
|
||
00010 75 07 jne SHORT $LN2@AtlThrowIm
|
||
|
||
; 69 : {
|
||
; 70 : AfxThrowMemoryException();
|
||
|
||
00012 e8 00 00 00 00 call ?AfxThrowMemoryException@@YGXXZ ; AfxThrowMemoryException
|
||
|
||
; 71 : }
|
||
|
||
00017 eb 09 jmp SHORT $LN4@AtlThrowIm
|
||
$LN2@AtlThrowIm:
|
||
|
||
; 72 : else
|
||
; 73 : {
|
||
; 74 : AfxThrowOleException( hr );
|
||
|
||
00019 8b 45 08 mov eax, DWORD PTR _hr$[ebp]
|
||
0001c 50 push eax
|
||
0001d e8 00 00 00 00 call ?AfxThrowOleException@@YGXJ@Z ; AfxThrowOleException
|
||
$LN4@AtlThrowIm:
|
||
|
||
; 75 : }
|
||
; 76 : #else
|
||
; 77 : throw CAtlException( hr );
|
||
; 78 : #endif
|
||
; 79 : };
|
||
|
||
00022 5f pop edi
|
||
00023 5e pop esi
|
||
00024 5b pop ebx
|
||
00025 8b e5 mov esp, ebp
|
||
00027 5d pop ebp
|
||
00028 c2 04 00 ret 4
|
||
?AtlThrowImpl@ATL@@YGXJ@Z ENDP ; ATL::AtlThrowImpl
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\afx.h
|
||
; COMDAT ?AfxCrtErrorCheck@@YAHH@Z
|
||
_TEXT SEGMENT
|
||
tv64 = -68 ; size = 4
|
||
_error$ = 8 ; size = 4
|
||
?AfxCrtErrorCheck@@YAHH@Z PROC ; AfxCrtErrorCheck, COMDAT
|
||
|
||
; 506 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 44 sub esp, 68 ; 00000044H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 507 : switch(error)
|
||
|
||
00009 8b 45 08 mov eax, DWORD PTR _error$[ebp]
|
||
0000c 89 45 bc mov DWORD PTR tv64[ebp], eax
|
||
0000f 83 7d bc 50 cmp DWORD PTR tv64[ebp], 80 ; 00000050H
|
||
00013 77 21 ja SHORT $LN9@AfxCrtErro
|
||
00015 8b 4d bc mov ecx, DWORD PTR tv64[ebp]
|
||
00018 0f b6 91 00 00
|
||
00 00 movzx edx, BYTE PTR $LN11@AfxCrtErro[ecx]
|
||
0001f ff 24 95 00 00
|
||
00 00 jmp DWORD PTR $LN12@AfxCrtErro[edx*4]
|
||
$LN4@AfxCrtErro:
|
||
|
||
; 508 : {
|
||
; 509 : case ENOMEM:
|
||
; 510 : AfxThrowMemoryException();
|
||
|
||
00026 e8 00 00 00 00 call ?AfxThrowMemoryException@@YGXXZ ; AfxThrowMemoryException
|
||
|
||
; 511 : break;
|
||
|
||
0002b eb 0e jmp SHORT $LN2@AfxCrtErro
|
||
$LN6@AfxCrtErro:
|
||
|
||
; 512 : case EINVAL:
|
||
; 513 : case ERANGE:
|
||
; 514 : AfxThrowInvalidArgException();
|
||
|
||
0002d e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YGXXZ ; AfxThrowInvalidArgException
|
||
|
||
; 515 : break;
|
||
|
||
00032 eb 07 jmp SHORT $LN2@AfxCrtErro
|
||
$LN8@AfxCrtErro:
|
||
|
||
; 516 : case STRUNCATE:
|
||
; 517 : case 0:
|
||
; 518 : break;
|
||
|
||
00034 eb 05 jmp SHORT $LN2@AfxCrtErro
|
||
$LN9@AfxCrtErro:
|
||
|
||
; 519 : default:
|
||
; 520 : AfxThrowInvalidArgException();
|
||
|
||
00036 e8 00 00 00 00 call ?AfxThrowInvalidArgException@@YGXXZ ; AfxThrowInvalidArgException
|
||
$LN2@AfxCrtErro:
|
||
|
||
; 521 : break;
|
||
; 522 : }
|
||
; 523 : return error;
|
||
|
||
0003b 8b 45 08 mov eax, DWORD PTR _error$[ebp]
|
||
$LN10@AfxCrtErro:
|
||
|
||
; 524 : }
|
||
|
||
0003e 5f pop edi
|
||
0003f 5e pop esi
|
||
00040 5b pop ebx
|
||
00041 8b e5 mov esp, ebp
|
||
00043 5d pop ebp
|
||
00044 c3 ret 0
|
||
00045 0f 1f 00 npad 3
|
||
$LN12@AfxCrtErro:
|
||
00048 00 00 00 00 DD $LN8@AfxCrtErro
|
||
0004c 00 00 00 00 DD $LN4@AfxCrtErro
|
||
00050 00 00 00 00 DD $LN6@AfxCrtErro
|
||
00054 00 00 00 00 DD $LN9@AfxCrtErro
|
||
$LN11@AfxCrtErro:
|
||
00058 00 DB 0
|
||
00059 03 DB 3
|
||
0005a 03 DB 3
|
||
0005b 03 DB 3
|
||
0005c 03 DB 3
|
||
0005d 03 DB 3
|
||
0005e 03 DB 3
|
||
0005f 03 DB 3
|
||
00060 03 DB 3
|
||
00061 03 DB 3
|
||
00062 03 DB 3
|
||
00063 03 DB 3
|
||
00064 01 DB 1
|
||
00065 03 DB 3
|
||
00066 03 DB 3
|
||
00067 03 DB 3
|
||
00068 03 DB 3
|
||
00069 03 DB 3
|
||
0006a 03 DB 3
|
||
0006b 03 DB 3
|
||
0006c 03 DB 3
|
||
0006d 03 DB 3
|
||
0006e 02 DB 2
|
||
0006f 03 DB 3
|
||
00070 03 DB 3
|
||
00071 03 DB 3
|
||
00072 03 DB 3
|
||
00073 03 DB 3
|
||
00074 03 DB 3
|
||
00075 03 DB 3
|
||
00076 03 DB 3
|
||
00077 03 DB 3
|
||
00078 03 DB 3
|
||
00079 03 DB 3
|
||
0007a 02 DB 2
|
||
0007b 03 DB 3
|
||
0007c 03 DB 3
|
||
0007d 03 DB 3
|
||
0007e 03 DB 3
|
||
0007f 03 DB 3
|
||
00080 03 DB 3
|
||
00081 03 DB 3
|
||
00082 03 DB 3
|
||
00083 03 DB 3
|
||
00084 03 DB 3
|
||
00085 03 DB 3
|
||
00086 03 DB 3
|
||
00087 03 DB 3
|
||
00088 03 DB 3
|
||
00089 03 DB 3
|
||
0008a 03 DB 3
|
||
0008b 03 DB 3
|
||
0008c 03 DB 3
|
||
0008d 03 DB 3
|
||
0008e 03 DB 3
|
||
0008f 03 DB 3
|
||
00090 03 DB 3
|
||
00091 03 DB 3
|
||
00092 03 DB 3
|
||
00093 03 DB 3
|
||
00094 03 DB 3
|
||
00095 03 DB 3
|
||
00096 03 DB 3
|
||
00097 03 DB 3
|
||
00098 03 DB 3
|
||
00099 03 DB 3
|
||
0009a 03 DB 3
|
||
0009b 03 DB 3
|
||
0009c 03 DB 3
|
||
0009d 03 DB 3
|
||
0009e 03 DB 3
|
||
0009f 03 DB 3
|
||
000a0 03 DB 3
|
||
000a1 03 DB 3
|
||
000a2 03 DB 3
|
||
000a3 03 DB 3
|
||
000a4 03 DB 3
|
||
000a5 03 DB 3
|
||
000a6 03 DB 3
|
||
000a7 03 DB 3
|
||
000a8 00 DB 0
|
||
?AfxCrtErrorCheck@@YAHH@Z ENDP ; AfxCrtErrorCheck
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h
|
||
; COMDAT _memmove_s
|
||
_TEXT SEGMENT
|
||
tv74 = -80 ; size = 4
|
||
tv70 = -80 ; size = 4
|
||
tv66 = -80 ; size = 4
|
||
__Expr_val$1 = -12 ; size = 4
|
||
__Expr_val$2 = -8 ; size = 4
|
||
__Expr_val$3 = -4 ; size = 4
|
||
__Destination$ = 8 ; size = 4
|
||
__DestinationSize$ = 12 ; size = 4
|
||
__Source$ = 16 ; size = 4
|
||
__SourceSize$ = 20 ; size = 4
|
||
_memmove_s PROC ; COMDAT
|
||
|
||
; 73 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 50 sub esp, 80 ; 00000050H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 74 : if (_SourceSize == 0)
|
||
|
||
00009 83 7d 14 00 cmp DWORD PTR __SourceSize$[ebp], 0
|
||
0000d 75 07 jne SHORT $LN2@memmove_s
|
||
|
||
; 75 : {
|
||
; 76 : return 0;
|
||
|
||
0000f 33 c0 xor eax, eax
|
||
00011 e9 c6 00 00 00 jmp $LN1@memmove_s
|
||
$LN2@memmove_s:
|
||
|
||
; 77 : }
|
||
; 78 :
|
||
; 79 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
|
||
|
||
00016 83 7d 08 00 cmp DWORD PTR __Destination$[ebp], 0
|
||
0001a 74 09 je SHORT $LN7@memmove_s
|
||
0001c c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv66[ebp], 1
|
||
00023 eb 07 jmp SHORT $LN8@memmove_s
|
||
$LN7@memmove_s:
|
||
00025 c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv66[ebp], 0
|
||
$LN8@memmove_s:
|
||
0002c 8b 45 b0 mov eax, DWORD PTR tv66[ebp]
|
||
0002f 89 45 fc mov DWORD PTR __Expr_val$3[ebp], eax
|
||
00032 83 7d fc 00 cmp DWORD PTR __Expr_val$3[ebp], 0
|
||
00036 75 1a jne SHORT $LN3@memmove_s
|
||
00038 e8 00 00 00 00 call __errno
|
||
0003d c7 00 16 00 00
|
||
00 mov DWORD PTR [eax], 22 ; 00000016H
|
||
00043 e8 00 00 00 00 call __invalid_parameter_noinfo
|
||
00048 b8 16 00 00 00 mov eax, 22 ; 00000016H
|
||
0004d e9 8a 00 00 00 jmp $LN1@memmove_s
|
||
$LN3@memmove_s:
|
||
|
||
; 80 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
|
||
|
||
00052 83 7d 10 00 cmp DWORD PTR __Source$[ebp], 0
|
||
00056 74 09 je SHORT $LN9@memmove_s
|
||
00058 c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv70[ebp], 1
|
||
0005f eb 07 jmp SHORT $LN10@memmove_s
|
||
$LN9@memmove_s:
|
||
00061 c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv70[ebp], 0
|
||
$LN10@memmove_s:
|
||
00068 8b 45 b0 mov eax, DWORD PTR tv70[ebp]
|
||
0006b 89 45 f8 mov DWORD PTR __Expr_val$2[ebp], eax
|
||
0006e 83 7d f8 00 cmp DWORD PTR __Expr_val$2[ebp], 0
|
||
00072 75 17 jne SHORT $LN4@memmove_s
|
||
00074 e8 00 00 00 00 call __errno
|
||
00079 c7 00 16 00 00
|
||
00 mov DWORD PTR [eax], 22 ; 00000016H
|
||
0007f e8 00 00 00 00 call __invalid_parameter_noinfo
|
||
00084 b8 16 00 00 00 mov eax, 22 ; 00000016H
|
||
00089 eb 51 jmp SHORT $LN1@memmove_s
|
||
$LN4@memmove_s:
|
||
|
||
; 81 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
|
||
|
||
0008b 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
|
||
0008e 3b 45 14 cmp eax, DWORD PTR __SourceSize$[ebp]
|
||
00091 72 09 jb SHORT $LN11@memmove_s
|
||
00093 c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv74[ebp], 1
|
||
0009a eb 07 jmp SHORT $LN12@memmove_s
|
||
$LN11@memmove_s:
|
||
0009c c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv74[ebp], 0
|
||
$LN12@memmove_s:
|
||
000a3 8b 4d b0 mov ecx, DWORD PTR tv74[ebp]
|
||
000a6 89 4d f4 mov DWORD PTR __Expr_val$1[ebp], ecx
|
||
000a9 83 7d f4 00 cmp DWORD PTR __Expr_val$1[ebp], 0
|
||
000ad 75 17 jne SHORT $LN5@memmove_s
|
||
000af e8 00 00 00 00 call __errno
|
||
000b4 c7 00 22 00 00
|
||
00 mov DWORD PTR [eax], 34 ; 00000022H
|
||
000ba e8 00 00 00 00 call __invalid_parameter_noinfo
|
||
000bf b8 22 00 00 00 mov eax, 34 ; 00000022H
|
||
000c4 eb 16 jmp SHORT $LN1@memmove_s
|
||
$LN5@memmove_s:
|
||
|
||
; 82 :
|
||
; 83 : memmove(_Destination, _Source, _SourceSize);
|
||
|
||
000c6 8b 45 14 mov eax, DWORD PTR __SourceSize$[ebp]
|
||
000c9 50 push eax
|
||
000ca 8b 4d 10 mov ecx, DWORD PTR __Source$[ebp]
|
||
000cd 51 push ecx
|
||
000ce 8b 55 08 mov edx, DWORD PTR __Destination$[ebp]
|
||
000d1 52 push edx
|
||
000d2 e8 00 00 00 00 call _memmove
|
||
000d7 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 84 : return 0;
|
||
|
||
000da 33 c0 xor eax, eax
|
||
$LN1@memmove_s:
|
||
|
||
; 85 : }
|
||
|
||
000dc 5f pop edi
|
||
000dd 5e pop esi
|
||
000de 5b pop ebx
|
||
000df 8b e5 mov esp, ebp
|
||
000e1 5d pop ebp
|
||
000e2 c3 ret 0
|
||
_memmove_s ENDP
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_memcpy_s.h
|
||
; COMDAT _memcpy_s
|
||
_TEXT SEGMENT
|
||
tv79 = -80 ; size = 4
|
||
tv75 = -80 ; size = 4
|
||
tv66 = -80 ; size = 4
|
||
__Expr_val$1 = -12 ; size = 4
|
||
__Expr_val$2 = -8 ; size = 4
|
||
__Expr_val$3 = -4 ; size = 4
|
||
__Destination$ = 8 ; size = 4
|
||
__DestinationSize$ = 12 ; size = 4
|
||
__Source$ = 16 ; size = 4
|
||
__SourceSize$ = 20 ; size = 4
|
||
_memcpy_s PROC ; COMDAT
|
||
|
||
; 45 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 50 sub esp, 80 ; 00000050H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 46 : if (_SourceSize == 0)
|
||
|
||
00009 83 7d 14 00 cmp DWORD PTR __SourceSize$[ebp], 0
|
||
0000d 75 07 jne SHORT $LN2@memcpy_s
|
||
|
||
; 47 : {
|
||
; 48 : return 0;
|
||
|
||
0000f 33 c0 xor eax, eax
|
||
00011 e9 f1 00 00 00 jmp $LN1@memcpy_s
|
||
$LN2@memcpy_s:
|
||
|
||
; 49 : }
|
||
; 50 :
|
||
; 51 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Destination != NULL, EINVAL);
|
||
|
||
00016 83 7d 08 00 cmp DWORD PTR __Destination$[ebp], 0
|
||
0001a 74 09 je SHORT $LN9@memcpy_s
|
||
0001c c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv66[ebp], 1
|
||
00023 eb 07 jmp SHORT $LN10@memcpy_s
|
||
$LN9@memcpy_s:
|
||
00025 c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv66[ebp], 0
|
||
$LN10@memcpy_s:
|
||
0002c 8b 45 b0 mov eax, DWORD PTR tv66[ebp]
|
||
0002f 89 45 fc mov DWORD PTR __Expr_val$3[ebp], eax
|
||
00032 83 7d fc 00 cmp DWORD PTR __Expr_val$3[ebp], 0
|
||
00036 75 1a jne SHORT $LN3@memcpy_s
|
||
00038 e8 00 00 00 00 call __errno
|
||
0003d c7 00 16 00 00
|
||
00 mov DWORD PTR [eax], 22 ; 00000016H
|
||
00043 e8 00 00 00 00 call __invalid_parameter_noinfo
|
||
00048 b8 16 00 00 00 mov eax, 22 ; 00000016H
|
||
0004d e9 b5 00 00 00 jmp $LN1@memcpy_s
|
||
$LN3@memcpy_s:
|
||
|
||
; 52 : if (_Source == NULL || _DestinationSize < _SourceSize)
|
||
|
||
00052 83 7d 10 00 cmp DWORD PTR __Source$[ebp], 0
|
||
00056 74 0c je SHORT $LN5@memcpy_s
|
||
00058 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
|
||
0005b 3b 45 14 cmp eax, DWORD PTR __SourceSize$[ebp]
|
||
0005e 0f 83 8d 00 00
|
||
00 jae $LN4@memcpy_s
|
||
$LN5@memcpy_s:
|
||
|
||
; 53 : {
|
||
; 54 : memset(_Destination, 0, _DestinationSize);
|
||
|
||
00064 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
|
||
00067 50 push eax
|
||
00068 6a 00 push 0
|
||
0006a 8b 4d 08 mov ecx, DWORD PTR __Destination$[ebp]
|
||
0006d 51 push ecx
|
||
0006e e8 00 00 00 00 call _memset
|
||
00073 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 55 :
|
||
; 56 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_Source != NULL, EINVAL);
|
||
|
||
00076 83 7d 10 00 cmp DWORD PTR __Source$[ebp], 0
|
||
0007a 74 09 je SHORT $LN11@memcpy_s
|
||
0007c c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv75[ebp], 1
|
||
00083 eb 07 jmp SHORT $LN12@memcpy_s
|
||
$LN11@memcpy_s:
|
||
00085 c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv75[ebp], 0
|
||
$LN12@memcpy_s:
|
||
0008c 8b 45 b0 mov eax, DWORD PTR tv75[ebp]
|
||
0008f 89 45 f8 mov DWORD PTR __Expr_val$2[ebp], eax
|
||
00092 83 7d f8 00 cmp DWORD PTR __Expr_val$2[ebp], 0
|
||
00096 75 17 jne SHORT $LN6@memcpy_s
|
||
00098 e8 00 00 00 00 call __errno
|
||
0009d c7 00 16 00 00
|
||
00 mov DWORD PTR [eax], 22 ; 00000016H
|
||
000a3 e8 00 00 00 00 call __invalid_parameter_noinfo
|
||
000a8 b8 16 00 00 00 mov eax, 22 ; 00000016H
|
||
000ad eb 58 jmp SHORT $LN1@memcpy_s
|
||
$LN6@memcpy_s:
|
||
|
||
; 57 : _CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE(_DestinationSize >= _SourceSize, ERANGE);
|
||
|
||
000af 8b 45 0c mov eax, DWORD PTR __DestinationSize$[ebp]
|
||
000b2 3b 45 14 cmp eax, DWORD PTR __SourceSize$[ebp]
|
||
000b5 72 09 jb SHORT $LN13@memcpy_s
|
||
000b7 c7 45 b0 01 00
|
||
00 00 mov DWORD PTR tv79[ebp], 1
|
||
000be eb 07 jmp SHORT $LN14@memcpy_s
|
||
$LN13@memcpy_s:
|
||
000c0 c7 45 b0 00 00
|
||
00 00 mov DWORD PTR tv79[ebp], 0
|
||
$LN14@memcpy_s:
|
||
000c7 8b 4d b0 mov ecx, DWORD PTR tv79[ebp]
|
||
000ca 89 4d f4 mov DWORD PTR __Expr_val$1[ebp], ecx
|
||
000cd 83 7d f4 00 cmp DWORD PTR __Expr_val$1[ebp], 0
|
||
000d1 75 17 jne SHORT $LN7@memcpy_s
|
||
000d3 e8 00 00 00 00 call __errno
|
||
000d8 c7 00 22 00 00
|
||
00 mov DWORD PTR [eax], 34 ; 00000022H
|
||
000de e8 00 00 00 00 call __invalid_parameter_noinfo
|
||
000e3 b8 22 00 00 00 mov eax, 34 ; 00000022H
|
||
000e8 eb 1d jmp SHORT $LN1@memcpy_s
|
||
$LN7@memcpy_s:
|
||
|
||
; 58 :
|
||
; 59 : // Unreachable, but required to suppress /analyze warnings:
|
||
; 60 : return EINVAL;
|
||
|
||
000ea b8 16 00 00 00 mov eax, 22 ; 00000016H
|
||
000ef eb 16 jmp SHORT $LN1@memcpy_s
|
||
$LN4@memcpy_s:
|
||
|
||
; 61 : }
|
||
; 62 : memcpy(_Destination, _Source, _SourceSize);
|
||
|
||
000f1 8b 45 14 mov eax, DWORD PTR __SourceSize$[ebp]
|
||
000f4 50 push eax
|
||
000f5 8b 4d 10 mov ecx, DWORD PTR __Source$[ebp]
|
||
000f8 51 push ecx
|
||
000f9 8b 55 08 mov edx, DWORD PTR __Destination$[ebp]
|
||
000fc 52 push edx
|
||
000fd e8 00 00 00 00 call _memcpy
|
||
00102 83 c4 0c add esp, 12 ; 0000000cH
|
||
|
||
; 63 : return 0;
|
||
|
||
00105 33 c0 xor eax, eax
|
||
$LN1@memcpy_s:
|
||
|
||
; 64 : }
|
||
|
||
00107 5f pop edi
|
||
00108 5e pop esi
|
||
00109 5b pop ebx
|
||
0010a 8b e5 mov esp, ebp
|
||
0010c 5d pop ebp
|
||
0010d c3 ret 0
|
||
_memcpy_s ENDP
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h
|
||
; COMDAT _sprintf
|
||
_TEXT SEGMENT
|
||
__ArgList$ = -8 ; size = 4
|
||
__Result$ = -4 ; size = 4
|
||
__Buffer$ = 8 ; size = 4
|
||
__Format$ = 12 ; size = 4
|
||
_sprintf PROC ; COMDAT
|
||
|
||
; 1771 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 4c sub esp, 76 ; 0000004cH
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 1772 : int _Result;
|
||
; 1773 : va_list _ArgList;
|
||
; 1774 : __crt_va_start(_ArgList, _Format);
|
||
|
||
00009 8d 45 10 lea eax, DWORD PTR __Format$[ebp+4]
|
||
0000c 89 45 f8 mov DWORD PTR __ArgList$[ebp], eax
|
||
|
||
; 1775 :
|
||
; 1776 : _Result = _vsprintf_l(_Buffer, _Format, NULL, _ArgList);
|
||
|
||
0000f 8b 45 f8 mov eax, DWORD PTR __ArgList$[ebp]
|
||
00012 50 push eax
|
||
00013 6a 00 push 0
|
||
00015 8b 4d 0c mov ecx, DWORD PTR __Format$[ebp]
|
||
00018 51 push ecx
|
||
00019 8b 55 08 mov edx, DWORD PTR __Buffer$[ebp]
|
||
0001c 52 push edx
|
||
0001d e8 00 00 00 00 call __vsprintf_l
|
||
00022 83 c4 10 add esp, 16 ; 00000010H
|
||
00025 89 45 fc mov DWORD PTR __Result$[ebp], eax
|
||
|
||
; 1777 :
|
||
; 1778 : __crt_va_end(_ArgList);
|
||
|
||
00028 c7 45 f8 00 00
|
||
00 00 mov DWORD PTR __ArgList$[ebp], 0
|
||
|
||
; 1779 : return _Result;
|
||
|
||
0002f 8b 45 fc mov eax, DWORD PTR __Result$[ebp]
|
||
|
||
; 1780 : }
|
||
|
||
00032 5f pop edi
|
||
00033 5e pop esi
|
||
00034 5b pop ebx
|
||
00035 8b e5 mov esp, ebp
|
||
00037 5d pop ebp
|
||
00038 c3 ret 0
|
||
_sprintf ENDP
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h
|
||
; COMDAT __vsprintf_l
|
||
_TEXT SEGMENT
|
||
__Buffer$ = 8 ; size = 4
|
||
__Format$ = 12 ; size = 4
|
||
__Locale$ = 16 ; size = 4
|
||
__ArgList$ = 20 ; size = 4
|
||
__vsprintf_l PROC ; COMDAT
|
||
|
||
; 1458 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 1459 : return _vsnprintf_l(_Buffer, (size_t)-1, _Format, _Locale, _ArgList);
|
||
|
||
00009 8b 45 14 mov eax, DWORD PTR __ArgList$[ebp]
|
||
0000c 50 push eax
|
||
0000d 8b 4d 10 mov ecx, DWORD PTR __Locale$[ebp]
|
||
00010 51 push ecx
|
||
00011 8b 55 0c mov edx, DWORD PTR __Format$[ebp]
|
||
00014 52 push edx
|
||
00015 6a ff push -1
|
||
00017 8b 45 08 mov eax, DWORD PTR __Buffer$[ebp]
|
||
0001a 50 push eax
|
||
0001b e8 00 00 00 00 call __vsnprintf_l
|
||
00020 83 c4 14 add esp, 20 ; 00000014H
|
||
|
||
; 1460 : }
|
||
|
||
00023 5f pop edi
|
||
00024 5e pop esi
|
||
00025 5b pop ebx
|
||
00026 8b e5 mov esp, ebp
|
||
00028 5d pop ebp
|
||
00029 c3 ret 0
|
||
__vsprintf_l ENDP
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\stdio.h
|
||
; COMDAT __vsnprintf_l
|
||
_TEXT SEGMENT
|
||
tv74 = -72 ; size = 4
|
||
__Result$ = -4 ; size = 4
|
||
__Buffer$ = 8 ; size = 4
|
||
__BufferCount$ = 12 ; size = 4
|
||
__Format$ = 16 ; size = 4
|
||
__Locale$ = 20 ; size = 4
|
||
__ArgList$ = 24 ; size = 4
|
||
__vsnprintf_l PROC ; COMDAT
|
||
|
||
; 1391 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 48 sub esp, 72 ; 00000048H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 1392 : int const _Result = __stdio_common_vsprintf(
|
||
|
||
00009 8b 45 18 mov eax, DWORD PTR __ArgList$[ebp]
|
||
0000c 50 push eax
|
||
0000d 8b 4d 14 mov ecx, DWORD PTR __Locale$[ebp]
|
||
00010 51 push ecx
|
||
00011 8b 55 10 mov edx, DWORD PTR __Format$[ebp]
|
||
00014 52 push edx
|
||
00015 8b 45 0c mov eax, DWORD PTR __BufferCount$[ebp]
|
||
00018 50 push eax
|
||
00019 8b 4d 08 mov ecx, DWORD PTR __Buffer$[ebp]
|
||
0001c 51 push ecx
|
||
0001d e8 00 00 00 00 call ___local_stdio_printf_options
|
||
00022 8b 10 mov edx, DWORD PTR [eax]
|
||
00024 83 ca 01 or edx, 1
|
||
00027 8b 40 04 mov eax, DWORD PTR [eax+4]
|
||
0002a 50 push eax
|
||
0002b 52 push edx
|
||
0002c e8 00 00 00 00 call ___stdio_common_vsprintf
|
||
00031 83 c4 1c add esp, 28 ; 0000001cH
|
||
00034 89 45 fc mov DWORD PTR __Result$[ebp], eax
|
||
|
||
; 1393 : _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION,
|
||
; 1394 : _Buffer, _BufferCount, _Format, _Locale, _ArgList);
|
||
; 1395 :
|
||
; 1396 : return _Result < 0 ? -1 : _Result;
|
||
|
||
00037 83 7d fc 00 cmp DWORD PTR __Result$[ebp], 0
|
||
0003b 7d 09 jge SHORT $LN3@vsnprintf_
|
||
0003d c7 45 b8 ff ff
|
||
ff ff mov DWORD PTR tv74[ebp], -1
|
||
00044 eb 06 jmp SHORT $LN4@vsnprintf_
|
||
$LN3@vsnprintf_:
|
||
00046 8b 45 fc mov eax, DWORD PTR __Result$[ebp]
|
||
00049 89 45 b8 mov DWORD PTR tv74[ebp], eax
|
||
$LN4@vsnprintf_:
|
||
0004c 8b 45 b8 mov eax, DWORD PTR tv74[ebp]
|
||
|
||
; 1397 : }
|
||
|
||
0004f 5f pop edi
|
||
00050 5e pop esi
|
||
00051 5b pop ebx
|
||
00052 8b e5 mov esp, ebp
|
||
00054 5d pop ebp
|
||
00055 c3 ret 0
|
||
__vsnprintf_l ENDP
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\corecrt_stdio_config.h
|
||
; COMDAT ___local_stdio_printf_options
|
||
_TEXT SEGMENT
|
||
___local_stdio_printf_options PROC ; COMDAT
|
||
|
||
; 90 : {
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
|
||
; 91 : static unsigned __int64 _OptionsStorage;
|
||
; 92 : return &_OptionsStorage;
|
||
|
||
00009 b8 00 00 00 00 mov eax, OFFSET ?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
||
|
||
; 93 : }
|
||
|
||
0000e 5f pop edi
|
||
0000f 5e pop esi
|
||
00010 5b pop ebx
|
||
00011 8b e5 mov esp, ebp
|
||
00013 5d pop ebp
|
||
00014 c3 ret 0
|
||
___local_stdio_printf_options ENDP
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z
|
||
_TEXT SEGMENT
|
||
___formal$ = 8 ; size = 4
|
||
___formal$ = 12 ; size = 4
|
||
___formal$ = 16 ; size = 4
|
||
?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 5f pop edi
|
||
0000a 5e pop esi
|
||
0000b 5b pop ebx
|
||
0000c 8b e5 mov esp, ebp
|
||
0000e 5d pop ebp
|
||
0000f c3 ret 0
|
||
?__empty_global_delete@@YAXPAXIW4align_val_t@std@@@Z ENDP ; __empty_global_delete
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z
|
||
_TEXT SEGMENT
|
||
___formal$ = 8 ; size = 4
|
||
___formal$ = 12 ; size = 4
|
||
?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z PROC ; __empty_global_delete, COMDAT
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 5f pop edi
|
||
0000a 5e pop esi
|
||
0000b 5b pop ebx
|
||
0000c 8b e5 mov esp, ebp
|
||
0000e 5d pop ebp
|
||
0000f c3 ret 0
|
||
?__empty_global_delete@@YAXPAXW4align_val_t@std@@@Z ENDP ; __empty_global_delete
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?__empty_global_delete@@YAXPAXI@Z
|
||
_TEXT SEGMENT
|
||
___formal$ = 8 ; size = 4
|
||
___formal$ = 12 ; size = 4
|
||
?__empty_global_delete@@YAXPAXI@Z PROC ; __empty_global_delete, COMDAT
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 5f pop edi
|
||
0000a 5e pop esi
|
||
0000b 5b pop ebx
|
||
0000c 8b e5 mov esp, ebp
|
||
0000e 5d pop ebp
|
||
0000f c3 ret 0
|
||
?__empty_global_delete@@YAXPAXI@Z ENDP ; __empty_global_delete
|
||
_TEXT ENDS
|
||
; Function compile flags: /Odtp /ZI
|
||
; File D:\Works\Corpsms_2010\public\des\Des.cpp
|
||
; COMDAT ?__empty_global_delete@@YAXPAX@Z
|
||
_TEXT SEGMENT
|
||
___formal$ = 8 ; size = 4
|
||
?__empty_global_delete@@YAXPAX@Z PROC ; __empty_global_delete, COMDAT
|
||
|
||
00000 55 push ebp
|
||
00001 8b ec mov ebp, esp
|
||
00003 83 ec 40 sub esp, 64 ; 00000040H
|
||
00006 53 push ebx
|
||
00007 56 push esi
|
||
00008 57 push edi
|
||
00009 5f pop edi
|
||
0000a 5e pop esi
|
||
0000b 5b pop ebx
|
||
0000c 8b e5 mov esp, ebp
|
||
0000e 5d pop ebp
|
||
0000f c3 ret 0
|
||
?__empty_global_delete@@YAXPAX@Z ENDP ; __empty_global_delete
|
||
_TEXT ENDS
|
||
END
|