
L1: 55 ?? push ebp
 8b ec ?? mov ebp, esp
 83 ec 10 ?? sub esp, 0x10<16>
 56 ?? push esi
 b8 cc cc cc cc ?? mov eax, 0xcccccccc
 89 45 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], eax
 89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
 89 45 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], eax
 89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
 83 c8 ff ?? or eax, 0xff<255,-1>
 33 d2 ?? xor edx, edx
 f7 75 10 ?? div dword ss:[ebp + 0x10<16>]
 39 45 0c ?? cmp dword ss:[ebp + 12], eax
 76 5f ?? jbe basic block L10

L2: b8 40 63 40 00 ?? mov eax, 0x00406340<"_Count <= (size_t)(-1) / _Sz">
 85 c0 ?? test eax, eax
 74 04 ?? je basic block L4

L3: 33 c9 ?? xor ecx, ecx
 75 2d ?? jne basic block L8

L4: 8b f4 ?? mov esi, esp
 68 60 63 40 00 ?? push 0x00406360<"\"_Count <= (size_t)(-1) /"+10 more>
 68 2c 62 40 00 ?? push 0x0040622c<"%ls">
 6a 00 ?? push 0
 6a 5e ?? push 0x5e<94>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 6a 02 ?? push 2
 ff 15 e8 60 40 00 ?? call dword ds:[0x004060e8]

L5: 83 c4 18 ?? add esp, 0x18<24>
 3b f4 ?? cmp esi, esp
 e8 77 36 00 00 ?? call function 0x00404a80

L6: 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L8

L7: cc ?? int3

L8: 8b f4 ?? mov esi, esp
 6a 00 ?? push 0
 6a 5e ?? push 0x5e<94>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 68 a8 63 40 00 ?? push 0x004063a8<"std::_Deallocate">
 68 e8 62 40 00 ?? push 0x004062e8<"\"invalid argument\"">
 ff 15 ec 60 40 00 ?? call dword ds:[0x004060ec<"xz@">]

L9: 83 c4 14 ?? add esp, 0x14<20>
 3b f4 ?? cmp esi, esp
 e8 4c 36 00 00 ?? call function 0x00404a80

L10: 8b 45 0c ?? mov eax, dword ss:[ebp + 12]
 0f af 45 10 ?? imul eax, dword ss:[ebp + 0x10<16>]
 89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
 81 7d fc 00 10 00 00 ?? cmp dword ss:[ebp + 0xfc<252,-4>], 0x00001000<4096>
 0f 82 32 02 00 00 ?? jb basic block L57

L11: 8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
 89 4d f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], ecx
 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
 83 e2 1f ?? and edx, 0x1f<31>
 74 5f ?? je basic block L20

L12: b8 cc 63 40 00 ?? mov eax, 0x004063cc<"(_Ptr_user & (_BIG_ALLOCA"+25 more>
 85 c0 ?? test eax, eax
 74 04 ?? je basic block L14

L13: 33 c9 ?? xor ecx, ecx
 75 2d ?? jne basic block L18

L14: 8b f4 ?? mov esi, esp
 68 00 64 40 00 ?? push 0x00406400<"\"(_Ptr_user & (_BIG_ALLOC"+32 more>
 68 2c 62 40 00 ?? push 0x0040622c<"%ls">
 6a 00 ?? push 0
 6a 64 ?? push 0x64<100>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 6a 02 ?? push 2
 ff 15 e8 60 40 00 ?? call dword ds:[0x004060e8]

L15: 83 c4 18 ?? add esp, 0x18<24>
 3b f4 ?? cmp esi, esp
 e8 f3 35 00 00 ?? call function 0x00404a80

L16: 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L18

L17: cc ?? int3

L18: 8b f4 ?? mov esi, esp
 6a 00 ?? push 0
 6a 64 ?? push 0x64<100>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 68 a8 63 40 00 ?? push 0x004063a8<"std::_Deallocate">
 68 e8 62 40 00 ?? push 0x004062e8<"\"invalid argument\"">
 ff 15 ec 60 40 00 ?? call dword ds:[0x004060ec<"xz@">]

L19: 83 c4 14 ?? add esp, 0x14<20>
 3b f4 ?? cmp esi, esp
 e8 c8 35 00 00 ?? call function 0x00404a80

L20: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
 83 e8 04 ?? sub eax, 4
 89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
 8b 4d f4 ?? mov ecx, dword ss:[ebp + 0xf4<244,-12>]
 8b 11 ?? mov edx, dword ds:[ecx]
 89 55 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], edx
 b8 04 00 00 00 ?? mov eax, 4
 6b c8 ff ?? imul ecx, eax, 0xff<255,-1>
 8b 55 f4 ?? mov edx, dword ss:[ebp + 0xf4<244,-12>]
 81 3c 0a fa fa fa fa ?? cmp dword ds:[edx + ecx], 0xfafafafa
 74 5f ?? je basic block L29

L21: b8 78 64 40 00 ?? mov eax, 0x00406478<"reinterpret_cast<uintptr_"+46 more>
 85 c0 ?? test eax, eax
 74 04 ?? je basic block L23

L22: 33 c9 ?? xor ecx, ecx
 75 2d ?? jne basic block L27

L23: 8b f4 ?? mov esi, esp
 68 c0 64 40 00 ?? push 0x004064c0<"\"reinterpret_cast<uintptr"+53 more>
 68 2c 62 40 00 ?? push 0x0040622c<"%ls">
 6a 00 ?? push 0
 6a 6e ?? push 0x6e<110>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 6a 02 ?? push 2
 ff 15 e8 60 40 00 ?? call dword ds:[0x004060e8]

L24: 83 c4 18 ?? add esp, 0x18<24>
 3b f4 ?? cmp esi, esp
 e8 6f 35 00 00 ?? call function 0x00404a80

L25: 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L27

L26: cc ?? int3

L27: 8b f4 ?? mov esi, esp
 6a 00 ?? push 0
 6a 6e ?? push 0x6e<110>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 68 a8 63 40 00 ?? push 0x004063a8<"std::_Deallocate">
 68 e8 62 40 00 ?? push 0x004062e8<"\"invalid argument\"">
 ff 15 ec 60 40 00 ?? call dword ds:[0x004060ec<"xz@">]

L28: 83 c4 14 ?? add esp, 0x14<20>
 3b f4 ?? cmp esi, esp
 e8 44 35 00 00 ?? call function 0x00404a80

L29: 8b 45 f0 ?? mov eax, dword ss:[ebp + 0xf0<240,-16>]
 3b 45 f8 ?? cmp eax, dword ss:[ebp + 0xf8<248,-8>]
 72 5f ?? jb basic block L38

L30: b9 60 65 40 00 ?? mov ecx, 0x00406560<"_Ptr_container < _Ptr_user">
 85 c9 ?? test ecx, ecx
 74 04 ?? je basic block L32

L31: 33 d2 ?? xor edx, edx
 75 2d ?? jne basic block L36

L32: 8b f4 ?? mov esi, esp
 68 80 65 40 00 ?? push 0x00406580<"\"_Ptr_container < _Ptr_us"+8 more>
 68 2c 62 40 00 ?? push 0x0040622c<"%ls">
 6a 00 ?? push 0
 6a 72 ?? push 0x72<114>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 6a 02 ?? push 2
 ff 15 e8 60 40 00 ?? call dword ds:[0x004060e8]

L33: 83 c4 18 ?? add esp, 0x18<24>
 3b f4 ?? cmp esi, esp
 e8 08 35 00 00 ?? call function 0x00404a80

L34: 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L36

L35: cc ?? int3

L36: 8b f4 ?? mov esi, esp
 6a 00 ?? push 0
 6a 72 ?? push 0x72<114>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 68 a8 63 40 00 ?? push 0x004063a8<"std::_Deallocate">
 68 e8 62 40 00 ?? push 0x004062e8<"\"invalid argument\"">
 ff 15 ec 60 40 00 ?? call dword ds:[0x004060ec<"xz@">]

L37: 83 c4 14 ?? add esp, 0x14<20>
 3b f4 ?? cmp esi, esp
 e8 dd 34 00 00 ?? call function 0x00404a80

L38: 8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
 2b 4d f0 ?? sub ecx, dword ss:[ebp + 0xf0<240,-16>]
 83 f9 08 ?? cmp ecx, 8
 73 5f ?? jae basic block L47

L39: ba c4 65 40 00 ?? mov edx, 0x004065c4<"2 * sizeof(void *) <= _Pt"+23 more>
 85 d2 ?? test edx, edx
 74 04 ?? je basic block L41

L40: 33 c0 ?? xor eax, eax
 75 2d ?? jne basic block L45

L41: 8b f4 ?? mov esi, esp
 68 f8 65 40 00 ?? push 0x004065f8<"\"2 * sizeof(void *) <= _P"+30 more>
 68 2c 62 40 00 ?? push 0x0040622c<"%ls">
 6a 00 ?? push 0
 6a 76 ?? push 0x76<118>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 6a 02 ?? push 2
 ff 15 e8 60 40 00 ?? call dword ds:[0x004060e8]

L42: 83 c4 18 ?? add esp, 0x18<24>
 3b f4 ?? cmp esi, esp
 e8 9e 34 00 00 ?? call function 0x00404a80

L43: 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L45

L44: cc ?? int3

L45: 8b f4 ?? mov esi, esp
 6a 00 ?? push 0
 6a 76 ?? push 0x76<118>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 68 a8 63 40 00 ?? push 0x004063a8<"std::_Deallocate">
 68 e8 62 40 00 ?? push 0x004062e8<"\"invalid argument\"">
 ff 15 ec 60 40 00 ?? call dword ds:[0x004060ec<"xz@">]

L46: 83 c4 14 ?? add esp, 0x14<20>
 3b f4 ?? cmp esi, esp
 e8 73 34 00 00 ?? call function 0x00404a80

L47: 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
 2b 55 f0 ?? sub edx, dword ss:[ebp + 0xf0<240,-16>]
 83 fa 27 ?? cmp edx, 0x27<39>
 76 5f ?? jbe basic block L56

L48: b8 68 66 40 00 ?? mov eax, 0x00406668<"_Ptr_user - _Ptr_containe"+19 more>
 85 c0 ?? test eax, eax
 74 04 ?? je basic block L50

L49: 33 c9 ?? xor ecx, ecx
 75 2d ?? jne basic block L54

L50: 8b f4 ?? mov esi, esp
 68 98 66 40 00 ?? push 0x00406698<"\"_Ptr_user - _Ptr_contain"+26 more>
 68 2c 62 40 00 ?? push 0x0040622c<"%ls">
 6a 00 ?? push 0
 6a 7e ?? push 0x7e<126>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 6a 02 ?? push 2
 ff 15 e8 60 40 00 ?? call dword ds:[0x004060e8]

L51: 83 c4 18 ?? add esp, 0x18<24>
 3b f4 ?? cmp esi, esp
 e8 34 34 00 00 ?? call function 0x00404a80

L52: 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L54

L53: cc ?? int3

L54: 8b f4 ?? mov esi, esp
 6a 00 ?? push 0
 6a 7e ?? push 0x7e<126>
 68 38 62 40 00 ?? push 0x00406238<"C:\\Program Files (x86)\\Mi"+46 more>
 68 a8 63 40 00 ?? push 0x004063a8<"std::_Deallocate">
 68 e8 62 40 00 ?? push 0x004062e8<"\"invalid argument\"">
 ff 15 ec 60 40 00 ?? call dword ds:[0x004060ec<"xz@">]

L55: 83 c4 14 ?? add esp, 0x14<20>
 3b f4 ?? cmp esi, esp
 e8 09 34 00 00 ?? call function 0x00404a80

L56: 8b 45 f0 ?? mov eax, dword ss:[ebp + 0xf0<240,-16>]
 89 45 08 ?? mov dword ss:[ebp + 8], eax

L57: 8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
 51 ?? push ecx
 e8 da 10 00 00 ?? call function 0x00402760

L58: 83 c4 04 ?? add esp, 4
 5e ?? pop esi
 83 c4 10 ?? add esp, 0x10<16>
 3b ec ?? cmp ebp, esp
 e8 ec 33 00 00 ?? call function 0x00404a80

L59: 8b e5 ?? mov esp, ebp
 5d ?? pop ebp
 c3 ?? ret

