Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int main()
- {
- 012F1002 in al,dx
- 012F1003 push 0FFFFFFFFh
- 012F1005 push 12F2178h
- 012F100A mov eax,dword ptr fs:[00000000h]
- 012F1010 push eax
- 012F1011 sub esp,38h
- 012F1014 push ebx
- 012F1015 push esi
- 012F1016 push edi
- 012F1017 mov eax,dword ptr [__security_cookie (012F4004h)]
- 012F101C xor eax,ebp
- 012F101E push eax
- 012F101F lea eax,[ebp-0Ch]
- 012F1022 mov dword ptr fs:[00000000h],eax
- 012F1028 xorps xmm0,xmm0
- std::vector<int> v;
- 012F102B mov dword ptr [v],0
- 012F1032 movlpd qword ptr [ebp-30h],xmm0
- 012F1037 movlpd qword ptr [ebp-1Ch],xmm0
- 012F103C mov dword ptr [ebp-40h],0
- 012F1043 mov dword ptr [ebp-3Ch],0
- v.resize(100500, 123);
- 012F104A lea eax,[ebp-20h]
- 012F104D mov dword ptr [ebp-4],0
- 012F1054 push eax
- 012F1055 push ecx
- 012F1056 lea ecx,[v]
- 012F1059 mov dword ptr [ebp-20h],7Bh
- 012F1060 call std::vector<int,std::allocator<int> >::resize (012F1180h)
- auto size = v.size();
- 012F1065 mov eax,dword ptr [ebp-40h]
- 012F1068 xorps xmm0,xmm0
- 012F106B mov ecx,dword ptr [v]
- for (int i = 0; i < size; ++i)
- 012F106E xor esi,esi
- auto size = v.size();
- 012F1070 sub eax,ecx
- long long res = 0;
- 012F1072 movlpd qword ptr [ebp-38h],xmm0
- auto size = v.size();
- 012F1077 mov dword ptr [ebp-28h],eax
- 012F107A sar eax,2
- 012F107D mov dword ptr [ebp-24h],eax
- for (int i = 0; i < size; ++i)
- 012F1080 cmp eax,2
- for (int i = 0; i < size; ++i)
- 012F1083 jb main+0C3h (012F10C3h)
- 012F1085 mov edx,dword ptr [ebp-18h]
- 012F1088 dec eax
- 012F1089 mov ebx,dword ptr [ebp-2Ch]
- 012F108C mov edi,dword ptr [ebp-30h]
- 012F108F mov dword ptr [ebp-20h],eax
- 012F1092 mov eax,dword ptr [ebp-1Ch]
- 012F1095 mov dword ptr [ebp-14h],edx
- 012F1098 mov dword ptr [ebp-10h],eax
- 012F109B nop dword ptr [eax+eax]
- {
- res += v[i];
- 012F10A0 mov eax,dword ptr [ecx+esi*4]
- 012F10A3 cdq
- 012F10A4 add edi,eax
- 012F10A6 mov eax,dword ptr [ecx+esi*4+4]
- 012F10AA adc ebx,edx
- 012F10AC cdq
- 012F10AD add dword ptr [ebp-10h],eax
- 012F10B0 adc dword ptr [ebp-14h],edx
- 012F10B3 add esi,2
- 012F10B6 cmp esi,dword ptr [ebp-20h]
- 012F10B9 jb main+0A0h (012F10A0h)
- 012F10BB mov dword ptr [ebp-18h],edi
- 012F10BE mov dword ptr [ebp-20h],ebx
- 012F10C1 jmp main+0DBh (012F10DBh)
- 012F10C3 mov eax,dword ptr [ebp-18h]
- 012F10C6 mov dword ptr [ebp-14h],eax
- 012F10C9 mov eax,dword ptr [ebp-1Ch]
- 012F10CC mov dword ptr [ebp-10h],eax
- 012F10CF mov eax,dword ptr [ebp-2Ch]
- {
- res += v[i];
- 012F10D2 mov dword ptr [ebp-20h],eax
- 012F10D5 mov eax,dword ptr [ebp-30h]
- 012F10D8 mov dword ptr [ebp-18h],eax
- for (int i = 0; i < size; ++i)
- 012F10DB cmp esi,dword ptr [size]
- 012F10DE jae main+0EAh (012F10EAh)
- {
- res += v[i];
- 012F10E0 mov eax,dword ptr [ecx+esi*4]
- 012F10E3 cdq
- 012F10E4 mov edi,eax
- 012F10E6 mov ebx,edx
- 012F10E8 jmp main+0F0h (012F10F0h)
- 012F10EA mov ebx,dword ptr [ebp-34h]
- 012F10ED mov edi,dword ptr [res]
- }
- std::cout << res;
- 012F10F0 mov ecx,dword ptr [ebp-18h]
- 012F10F3 add ecx,dword ptr [ebp-10h]
- 012F10F6 mov eax,dword ptr [ebp-20h]
- 012F10F9 adc eax,dword ptr [ebp-14h]
- 012F10FC add edi,ecx
- 012F10FE mov ecx,dword ptr [_imp_?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A (012F3034h)]
- 012F1104 adc ebx,eax
- 012F1106 push ebx
- 012F1107 push edi
- 012F1108 call dword ptr [__imp_std::basic_ostream<char,std::char_traits<char> >::operator<< (012F303Ch)]
- 012F110E mov eax,dword ptr [ebp-28h]
- 012F1111 xor edx,edx
- 012F1113 mov ecx,dword ptr [v]
- 012F1116 add eax,3
- 012F1119 shr eax,2
- 012F111C xor esi,esi
- 012F111E cmp ecx,dword ptr [ebp-40h]
- 012F1121 cmova eax,edx
- 012F1124 mov dword ptr [ebp-28h],eax
- for (auto& i : v)
- 012F1127 test eax,eax
- 012F1129 je main+140h (012F1140h)
- 012F112B nop dword ptr [eax+eax]
- {
- res += i;
- 012F1130 mov eax,dword ptr [ecx]
- 012F1132 lea ecx,[ecx+4]
- 012F1135 cdq
- 012F1136 add edi,eax
- 012F1138 adc ebx,edx
- for (auto& i : v)
- 012F113A inc esi
- 012F113B cmp esi,dword ptr [ebp-28h]
- 012F113E jne main+130h (012F1130h)
- }
- std::cout << res;
- 012F1140 mov ecx,dword ptr [_imp_?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A (012F3034h)]
- 012F1146 push ebx
- 012F1147 push edi
- 012F1148 call dword ptr [__imp_std::basic_ostream<char,std::char_traits<char> >::operator<< (012F303Ch)]
- return 0;
- 012F114E mov ecx,dword ptr [v]
- 012F1151 test ecx,ecx
- 012F1153 je main+164h (012F1164h)
- 012F1155 mov eax,dword ptr [ebp-3Ch]
- 012F1158 sub eax,ecx
- 012F115A sar eax,2
- 012F115D push eax
- 012F115E push ecx
- 012F115F call std::_Wrap_alloc<std::allocator<int> >::deallocate (012F12C0h)
- 012F1164 xor eax,eax
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement