Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- li.sort();
- 011C9785 lea ecx,[li]
- 011C9788 call std::list<int,std::allocator<int> >::sort (01192A14h)
- std::list<int,std::allocator<int> >::sort:
- 01192A14 jmp std::list<int,std::allocator<int> >::sort (011CD460h)
- void sort()
- { // order sequence, using operator<
- 011CD460 push ebp
- 011CD461 mov ebp,esp
- 011CD463 sub esp,0D8h
- 011CD469 push ebx
- 011CD46A push esi
- 011CD46B push edi
- 011CD46C push ecx
- 011CD46D lea edi,[ebp-0D8h]
- 011CD473 mov ecx,36h
- 011CD478 mov eax,0CCCCCCCCh
- 011CD47D rep stos dword ptr es:[edi] <-- примерно 0.3мс выполняется, раз 50 [54], потом идёт дальше. Я так понимаю, это и есть вставка элемента в список (ну, грубо говоря, запись значений куда-то в память и т.д.)?
- 011CD47F pop ecx
- 011CD480 mov dword ptr [this],ecx
- sort(less<>());
- 011CD483 movzx eax,byte ptr [ebp-0D1h]
- 011CD48A push eax
- 011CD48B mov ecx,dword ptr [this]
- 011CD48E call std::list<int,std::allocator<int> >::sort<std::less<void> > (01193C11h)
- std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Mysize:
- 01192B8B jmp std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Mysize (011BF870h)
- size_type& _Mysize() _NOEXCEPT
- { // return reference to _Mysize
- 011BF870 push ebp
- 011BF871 mov ebp,esp
- 011BF873 sub esp,0CCh
- 011BF879 push ebx
- 011BF87A push esi
- 011BF87B push edi
- 011BF87C push ecx
- 011BF87D lea edi,[ebp-0CCh]
- 011BF883 mov ecx,33h
- 011BF888 mov eax,0CCCCCCCCh
- 011BF88D rep stos dword ptr es:[edi]
- 011BF88F pop ecx
- 011BF890 mov dword ptr [this],ecx
- return (_Get_data()._Mysize);
- 011BF893 mov ecx,dword ptr [this]
- 011BF896 call std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data (01192096h)
- std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data:
- 01192096 jmp std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data (011BBF10h)
- _List_val<_Val_types>& _Get_data() _NOEXCEPT
- { // return reference to _List_val
- 011BBF10 push ebp
- 011BBF11 mov ebp,esp
- 011BBF13 sub esp,0CCh
- 011BBF19 push ebx
- 011BBF1A push esi
- 011BBF1B push edi
- 011BBF1C push ecx
- 011BBF1D lea edi,[ebp-0CCh]
- 011BBF23 mov ecx,33h
- 011BBF28 mov eax,0CCCCCCCCh
- 011BBF2D rep stos dword ptr es:[edi]
- 011BBF2F pop ecx
- 011BBF30 mov dword ptr [this],ecx <-- ещё 0x33 раза (к этому моменту я почитал немного и уже смотрел на значение регистра ecx)
- 011BBF33 mov ecx,dword ptr [this]
- 011BBF36 call std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second (01193A13h)
- std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second:
- 01193A13 jmp std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second (011BC7F0h)
- _Ty2& _Get_second() _NOEXCEPT
- { // return reference to second
- 011BC7F0 push ebp
- 011BC7F1 mov ebp,esp
- 011BC7F3 sub esp,0CCh
- 011BC7F9 push ebx
- 011BC7FA push esi
- 011BC7FB push edi
- 011BC7FC push ecx
- 011BC7FD lea edi,[ebp-0CCh]
- 011BC803 mov ecx,33h
- 011BC808 mov eax,0CCCCCCCCh
- 011BC80D rep stos dword ptr es:[edi] <-- и опять 51 раз.
- 011BC80F pop ecx
- 011BC810 mov dword ptr [this],ecx
- return (_Myval2);
- 011BC813 mov eax,dword ptr [this]
- 011BC816 pop edi
- 011BC817 pop esi
- 011BC818 pop ebx
- 011BC819 mov esp,ebp
- 011BC81B pop ebp
- 011BC81C ret
- 011BBF3B pop edi
- 011BBF3C pop esi
- 011BBF3D pop ebx
- 011BBF3E add esp,0CCh
- 011BBF44 cmp ebp,esp
- 011BBF46 call __RTC_CheckEsp (01192CBCh)
- __RTC_CheckEsp:
- 01192CBC jmp _RTC_CheckEsp (011CF110h)
- 011CF110 bnd jne esperror (011CF115h)
- 011CF113 bnd ret
- 011BBF4B mov esp,ebp
- 011BBF4D pop ebp
- 011BBF4E ret
- 011BF89B add eax,8
- 011BF89E pop edi
- 011BF89F pop esi
- 011BF8A0 pop ebx
- 011BF8A1 add esp,0CCh
- 011BF8A7 cmp ebp,esp
- 011BF8A9 call __RTC_CheckEsp (01192CBCh)
- __RTC_CheckEsp:
- 01192CBC jmp _RTC_CheckEsp (011CF110h)
- 011CF110 bnd jne esperror (011CF115h)
- 011CF113 bnd ret
- 011BF8AE mov esp,ebp
- 011BF8B0 pop ebp
- 011BF8B1 ret
- 011ABDCB mov eax,dword ptr [eax]
- 011ABDCD push eax
- 011ABDCE movzx ecx,byte ptr [_Pred]
- 011ABDD2 push ecx
- 011ABDD3 sub esp,0Ch
- 011ABDD6 mov edx,esp
- 011ABDD8 mov dword ptr [ebp-0D4h],esp
- 011ABDDE push edx
- 011ABDDF mov ecx,dword ptr [this]
- 011ABDE2 call std::list<int,std::allocator<int> >::end (01192BB3h)
- 01192BB3 jmp std::list<int,std::allocator<int> >::end (011C5E90h)
- iterator end() _NOEXCEPT
- { // return iterator for end of mutable sequence
- 011C5E90 push ebp
- 011C5E91 mov ebp,esp
- 011C5E93 push 0FFFFFFFFh
- 011C5E95 push 11D73E0h
- 011C5E9A mov eax,dword ptr fs:[00000000h]
- 011C5EA0 push eax
- 011C5EA1 sub esp,0CCh
- 011C5EA7 push ebx
- 011C5EA8 push esi
- 011C5EA9 push edi
- 011C5EAA push ecx
- 011C5EAB lea edi,[ebp-0D8h]
- 011C5EB1 mov ecx,33h
- 011C5EB6 mov eax,0CCCCCCCCh
- 011C5EBB rep stos dword ptr es:[edi]
- 011C5EBD pop ecx
- 011C5EBE mov eax,dword ptr [__security_cookie (011E4014h)]
- 011C5EC3 xor eax,ebp
- 011C5EC5 push eax
- 011C5EC6 lea eax,[ebp-0Ch]
- 011C5EC9 mov dword ptr fs:[00000000h],eax
- 011C5ECF mov dword ptr [this],ecx
- return (iterator(this->_Myhead(), &this->_Get_data()));
- 011C5ED2 mov ecx,dword ptr [this]
- return (iterator(this->_Myhead(), &this->_Get_data()));
- 011C5ED5 call std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data (01192096h)
- 01192096 jmp std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data (011BBF10h)
- _List_val<_Val_types>& _Get_data() _NOEXCEPT
- { // return reference to _List_val
- 011BBF10 push ebp
- 011BBF11 mov ebp,esp
- 011BBF13 sub esp,0CCh
- 011BBF19 push ebx
- 011BBF1A push esi
- 011BBF1B push edi
- 011BBF1C push ecx
- 011BBF1D lea edi,[ebp-0CCh]
- 011BBF23 mov ecx,33h
- 011BBF28 mov eax,0CCCCCCCCh
- 011BBF2D rep stos dword ptr es:[edi]
- 011BBF2F pop ecx
- 011BBF30 mov dword ptr [this],ecx
- 011BBF33 mov ecx,dword ptr [this]
- 011BBF36 call std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second (01193A13h)
- 01193A13 jmp std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second (011BC7F0h)
- _Ty2& _Get_second() _NOEXCEPT
- { // return reference to second
- 011BC7F0 push ebp
- 011BC7F1 mov ebp,esp
- 011BC7F3 sub esp,0CCh
- 011BC7F9 push ebx
- 011BC7FA push esi
- 011BC7FB push edi
- 011BC7FC push ecx
- 011BC7FD lea edi,[ebp-0CCh]
- 011BC803 mov ecx,33h
- 011BC808 mov eax,0CCCCCCCCh
- 011BC80D rep stos dword ptr es:[edi]
- 011BC80F pop ecx
- 011BC810 mov dword ptr [this],ecx
- return (_Myval2);
- 011BC813 mov eax,dword ptr [this]
- }
- 011BC816 pop edi
- 011BC817 pop esi
- 011BC818 pop ebx
- 011BC819 mov esp,ebp
- 011BC81B pop ebp
- 011BC81C ret
- 011BBF3B pop edi
- 011BBF3C pop esi
- 011BBF3D pop ebx
- 011BBF3E add esp,0CCh
- 011BBF44 cmp ebp,esp
- 011BBF46 call __RTC_CheckEsp (01192CBCh)
- 01192CBC jmp _RTC_CheckEsp (011CF110h)
- 011CF110 bnd jne esperror (011CF115h)
- 011CF113 bnd ret
- 011BBF4B mov esp,ebp
- 011BBF4D pop ebp
- 011BBF4E ret
- 011C5EDA push eax
- 011C5EDB mov ecx,dword ptr [this]
- 011C5EDE call std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Myhead (01192FE1h)
- 01192FE1 jmp std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Myhead (011BEE60h)
- _Nodeptr& _Myhead() _NOEXCEPT
- { // return reference to _Myhead
- 011BEE60 push ebp
- 011BEE61 mov ebp,esp
- 011BEE63 sub esp,0CCh
- 011BEE69 push ebx
- 011BEE6A push esi
- 011BEE6B push edi
- 011BEE6C push ecx
- 011BEE6D lea edi,[ebp-0CCh]
- 011BEE73 mov ecx,33h
- 011BEE78 mov eax,0CCCCCCCCh
- 011BEE7D rep stos dword ptr es:[edi]
- 011BEE7F pop ecx
- 011BEE80 mov dword ptr [this],ecx
- return (_Get_data()._Myhead);
- 011BEE83 mov ecx,dword ptr [this]
- 011BEE86 call std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data (01192096h)
- 01192096 jmp std::_List_alloc<std::_List_base_types<int,std::allocator<int> > >::_Get_data (011BBF10h)
- _List_val<_Val_types>& _Get_data() _NOEXCEPT
- { // return reference to _List_val
- 011BBF10 push ebp
- 011BBF11 mov ebp,esp
- 011BBF13 sub esp,0CCh
- 011BBF19 push ebx
- 011BBF1A push esi
- 011BBF1B push edi
- 011BBF1C push ecx
- 011BBF1D lea edi,[ebp-0CCh]
- 011BBF23 mov ecx,33h
- 011BBF28 mov eax,0CCCCCCCCh
- 011BBF2D rep stos dword ptr es:[edi]
- 011BBF2F pop ecx
- 011BBF30 mov dword ptr [this],ecx
- return (_Mypair._Get_second());
- 011BBF33 mov ecx,dword ptr [this]
- 011BBF36 call std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second (01193A13h)
- 01193A13 jmp std::_Compressed_pair<std::_Wrap_alloc<std::allocator<std::_List_node<int,void *> > >,std::_List_val<std::_List_simple_types<int> >,1>::_Get_second (011BC7F0h)
- _Ty2& _Get_second() _NOEXCEPT
- { // return reference to second
- 011BC7F0 push ebp
- 011BC7F1 mov ebp,esp
- 011BC7F3 sub esp,0CCh
- 011BC7F9 push ebx
- 011BC7FA push esi
- 011BC7FB push edi
- 011BC7FC push ecx
- 011BC7FD lea edi,[ebp-0CCh]
- 011BC803 mov ecx,33h
- 011BC808 mov eax,0CCCCCCCCh
- 011BC80D rep stos dword ptr es:[edi]
- 011BC80F pop ecx
- 011BC810 mov dword ptr [this],ecx
- return (_Myval2);
- 011BC813 mov eax,dword ptr [this]
- }
- 011BC816 pop edi
- 011BC817 pop esi
- 011BC818 pop ebx
- 011BC819 mov esp,ebp
- 011BC81B pop ebp
- 011BC81C ret
- 011BBF3B pop edi
- 011BBF3C pop esi
- 011BBF3D pop ebx
- 011BBF3E add esp,0CCh
- 011BBF44 cmp ebp,esp
- 011BBF46 call __RTC_CheckEsp (01192CBCh)
- 01192CBC jmp _RTC_CheckEsp (011CF110h)
- 011CF110 bnd jne esperror (011CF115h)
- 011CF113 bnd ret
- 011BBF4B mov esp,ebp
- 011BBF4D pop ebp
- 011BBF4E ret
- 011BEE8B add eax,4
- 011BEE8E pop edi
- 011BEE8F pop esi
- 011BEE90 pop ebx
- 011BEE91 add esp,0CCh
- 011BEE97 cmp ebp,esp
- 011BEE99 call __RTC_CheckEsp (01192CBCh)
- 01192CBC jmp _RTC_CheckEsp (011CF110h)
- 011CF110 bnd jne esperror (011CF115h)
- 011CF113 bnd ret
- 011BEE9E mov esp,ebp
- 011BEEA0 pop ebp
- 011BEEA1 ret
- 011C5EE3 mov eax,dword ptr [eax]
- 011C5EE5 push eax
- 011C5EE6 mov ecx,dword ptr [ebp+8]
- 011C5EE9 call std::_List_iterator<std::_List_val<std::_List_simple_types<int> > >::_List_iterator<std::_List_val<std::_List_simple_types<int> > > (01192A64h)
- 01192A64 jmp std::_List_iterator<std::_List_val<std::_List_simple_types<int> > >::_List_iterator<std::_List_val<std::_List_simple_types<int> > > (011AE200h)
- { // construct with node pointer _Pnode
- 011AE200 push ebp
- 011AE201 mov ebp,esp
- 011AE203 sub esp,0CCh
- 011AE209 push ebx
- 011AE20A push esi
- 011AE20B push edi
- 011AE20C push ecx
- 011AE20D lea edi,[ebp-0CCh]
- 011AE213 mov ecx,33h
- 011AE218 mov eax,0CCCCCCCCh
- 011AE21D rep stos dword ptr es:[edi]
- 011AE21F pop ecx
- 011AE220 mov dword ptr [this],ecx
- _List_iterator(_Nodeptr _Pnode, const _Mylist *_Plist)
- : _Mybase(_Pnode, _Plist)
- 011AE223 mov eax,dword ptr [_Plist]
- 011AE226 push eax
- 011AE227 mov ecx,dword ptr [_Pnode]
- 011AE22A push ecx
- 011AE22B mov ecx,dword ptr [this]
- 011AE22E call std::_List_const_iterator<std::_List_val<std::_List_simple_types<int> > >::_List_const_iterator<std::_List_val<std::_List_simple_types<int> > > (01193BE4h)
- 01193BE4 jmp std::_List_const_iterator<std::_List_val<std::_List_simple_types<int> > >::_List_const_iterator<std::_List_val<std::_List_simple_types<int> > > (011AE0E0h)
- { // construct with node pointer _Pnode
- 011AE0E0 push ebp
- 011AE0E1 mov ebp,esp
- 011AE0E3 sub esp,0CCh
- 011AE0E9 push ebx
- 011AE0EA push esi
- 011AE0EB push edi
- 011AE0EC push ecx
- 011AE0ED lea edi,[ebp-0CCh]
- 011AE0F3 mov ecx,33h
- 011AE0F8 mov eax,0CCCCCCCCh
- 011AE0FD rep stos dword ptr es:[edi]
- 011AE0FF pop ecx
- 011AE100 mov dword ptr [this],ecx
- _List_const_iterator(_Nodeptr _Pnode, const _Mylist *_Plist)
- : _Mybase(_Pnode, _Plist)
- 011AE103 mov eax,dword ptr [_Plist]
- 011AE106 push eax
- 011AE107 mov ecx,dword ptr [_Pnode]
- 011AE10A push ecx
- 011AE10B mov ecx,dword ptr [this]
- 011AE10E call std::_List_unchecked_const_iterator<std::_List_val<std::_List_simple_types<int> >,std::_Iterator_base12>::_List_unchecked_const_iterator<std::_List_val<std::_List_simple_types<int> >,std::_Iterator_base12> (01192D43h)
- 01192D43 jmp std::_List_unchecked_const_iterator<std::_List_val<std::_List_simple_types<int> >,std::_Iterator_base12>::_List_unchecked_const_iterator<std::_List_val<std::_List_simple_types<int> >,std::_Iterator_base12> (011AE3B0h)
- { // construct with node pointer _Pnode
- 011AE3B0 push ebp
- 011AE3B1 mov ebp,esp
- 011AE3B3 push 0FFFFFFFFh
- 011AE3B5 push 11D5E88h
- 011AE3BA mov eax,dword ptr fs:[00000000h]
- 011AE3C0 push eax
- 011AE3C1 sub esp,0CCh
- 011AE3C7 push ebx
- 011AE3C8 push esi
- 011AE3C9 push edi
- 011AE3CA push ecx
- 011AE3CB lea edi,[ebp-0D8h]
- 011AE3D1 mov ecx,33h
- 011AE3D6 mov eax,0CCCCCCCCh
- 011AE3DB rep stos dword ptr es:[edi]
- 011AE3DD pop ecx
- 011AE3DE mov eax,dword ptr [__security_cookie (011E4014h)]
- 011AE3E3 xor eax,ebp
- 011AE3E5 push eax
- 011AE3E6 lea eax,[ebp-0Ch]
- 011AE3E9 mov dword ptr fs:[00000000h],eax
- 011AE3EF mov dword ptr [this],ecx
- 011AE3F2 mov ecx,dword ptr [this]
- 011AE3F5 call std::_Iterator012<std::bidirectional_iterator_tag,int,int,int const *,int const &,std::_Iterator_base12>::_Iterator012<std::bidirectional_iterator_tag,int,int,int const *,int const &,std::_Iterator_base12> (01193D92h)
- 01193D92 jmp std::_Iterator012<std::bidirectional_iterator_tag,int,int,int const *,int const &,std::_Iterator_base12>::_Iterator012<std::bidirectional_iterator_tag,int,int,int const *,int const &,std::_Iterator_base12> (011AD970h)
- 011AD970 push ebp
- 011AD971 mov ebp,esp
- 011AD973 sub esp,0CCh
- 011AD979 push ebx
- 011AD97A push esi
- 011AD97B push edi
- 011AD97C push ecx
- 011AD97D lea edi,[ebp-0CCh]
- 011AD983 mov ecx,33h
- 011AD988 mov eax,0CCCCCCCCh
- 011AD98D rep stos dword ptr es:[edi]
- 011AD98F pop ecx
- 011AD990 mov dword ptr [this],ecx
- 011AD993 mov ecx,dword ptr [this]
- 011AD996 call std::_Iterator_base12::_Iterator_base12 (01193C7Ah)
- Ну и так далее, короче, туда-сюда между
Add Comment
Please, Sign In to add comment