Function at 0x1001f550
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Get kernel32 base address

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10050410
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
mov eax, dword [0x10067068]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
mov esi, ecx
mov dword [ebp - 0x34], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x20], ebx
mov dword [ebp - 0x40], esi
mov dword [esi + 0x24], ebx
mov dword [ebp - 4], ebx
lea eax, [esi + 0x30]
push eax
mov dword [esi], vtable.CTrustedAdsProtocolSink.1.0
mov dword [esi + 4], vtable.CTrustedAdsProtocolSink.2.0
mov dword [esi + 8], vtable.CTrustedAdsProtocolSink.3.0
mov dword [esi + 0xc], vtable.CTrustedAdsProtocolSink.4.0
mov dword [esi + 0x2c], vtable.CTrustedAdsProtocolSink.0
call fcn.10015170
mov dword [esi + 0xe8], ebx
mov dword [esi + 0xf0], ebx
mov dword [esi + 0xf4], ebx
mov dword [esi + 0xf8], ebx
mov dword [esi + 0xfc], ebx
mov dword [esi + 0x100], ebx
mov dword [esi + 0x104], ebx
lea edi, [esi + 0x110]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov dword [esi + 0x120], ebx
mov dword [esi + 0x124], ebx
mov dword [esi + 0x128], ebx
lea ecx, [ebp - 0x74]
push ecx
mov byte [ebp - 4], 7
call fcn.10025eb0
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
lea edx, [ebx + 2]
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 0xa
call fcn.10026130
cmp eax, ebx
je 0x1001f6b4
push ebx
push 0x100694d0
push 0x100694b4
push ebx
push eax
call sub.MSVCR100.dll___RTDynamicCast
add esp, 0x14
cmp eax, ebx
je 0x1001f6b4
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x20]
mov dword [ebp - 0x3c], edx
mov edx, dword [eax]
mov edx, dword [edx]
lea ecx, [ebp - 0x3c]
push ecx
mov ecx, eax
mov dword [ebp - 0x38], 0x10
call edx
lea eax, [ebp - 0x20]
lea ecx, [ebp - 0x60]
call fcn.1001cb50
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x20]
cmp eax, ebx
je 0x1001f6b4
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x1c]
push ecx
push edx
push eax
call fcn.10018720
mov eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 0x10
mov edx, 6
lea eax, [ebp - 0x74]
call fcn.10026130
cmp eax, ebx
je 0x1001f740
push ebx
push 0x100694d0
push 0x100694b4
push ebx
push eax
call sub.MSVCR100.dll___RTDynamicCast
add esp, 0x14
cmp eax, ebx
je 0x1001f740
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 0xc
mov edx, dword [eax]
mov edx, dword [edx]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0x3c]
push ecx
mov ecx, eax
mov dword [ebp - 0x38], 0x10
call edx
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x50]
call fcn.10022e90
mov byte [ebp - 4], 0xa
mov esi, dword [ebp - 0x20]
cmp esi, ebx
je 0x1001f740
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
cmp esi, eax
je 0x1001f736
push esi
call fcn.10023540
add esi, 0x3c
cmp esi, dword [ebp - 0x30]
jne 0x1001f725
mov esi, dword [ebp - 0x20]
push esi
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
push 0x40
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0xd
cmp eax, ebx
je 0x1001f7d4
xor ecx, ecx
push 0x10
mov eax, 0x10059284
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], cx
call fcn.1000cf60
mov dword [ebp - 0x34], 1
mov dword [ebp - 4], 0xf
mov esi, dword [ebp - 0x30]
lea ecx, [esi + 4]
mov dword [esi], vtable.CSinkPreloadJS.0
push ebx
lea eax, [ebp - 0x2c]
xor edx, edx
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], ebx
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
mov byte [ebp - 4], 0x10
lea ecx, [esi + 0x24]
mov byte [esi + 0x20], 0
push ebx
lea eax, [ebp - 0x2c]
xor edx, edx
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], ebx
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
jmp 0x1001f7d6
xor esi, esi
mov dword [ebp - 4], 0x11
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
cmp ecx, eax
jae 0x1001f818
mov ecx, dword [edi]
lea edx, [ebp - 0x30]
cmp ecx, edx
ja 0x1001f818
mov esi, edx
sub esi, ecx
sar esi, 2
cmp eax, dword [edi + 8]
jne 0x1001f806
mov eax, edi
call fcn.10023030
mov eax, dword [edi]
lea ecx, [eax + esi*4]
mov eax, dword [edi + 4]
cmp eax, ebx
je 0x1001f82d
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x1001f82d
cmp eax, dword [edi + 8]
jne 0x1001f824
mov eax, edi
call fcn.10023030
mov eax, dword [edi + 4]
cmp eax, ebx
je 0x1001f82d
mov dword [eax], esi
add dword [edi + 4], 4
mov dword [ebp - 4], 0xa
test byte [ebp - 0x34], 1
je 0x1001f855
and dword [ebp - 0x34], 0xfffffffe
cmp dword [ebp - 0x18], 8
jb 0x1001f855
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
push 0x40
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov ebx, eax
add esp, 4
mov dword [ebp - 0x38], ebx
mov byte [ebp - 4], 0x12
test ebx, ebx
je 0x1001f8f5
xor eax, eax
mov word [ebp - 0x2c], ax
push 0x12
mov eax, str.priv.dog.extension
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
call fcn.1000cf60
or dword [ebp - 0x34], 2
mov dword [ebp - 4], 0x14
xor esi, esi
lea ecx, [ebx + 4]
mov dword [ebx], vtable.CSinkPreloadJS.0
push esi
lea eax, [ebp - 0x2c]
xor edx, edx
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], esi
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
mov byte [ebp - 4], 0x15
lea ecx, [ebx + 0x24]
mov byte [ebx + 0x20], 0
push esi
lea eax, [ebp - 0x2c]
xor edx, edx
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], esi
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
mov dword [ebx], vtable.CSinkAjax.0
jmp 0x1001f8f7
xor ebx, ebx
mov dword [ebp - 4], 0x16
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
cmp ecx, eax
jae 0x1001f939
mov ecx, dword [edi]
lea edx, [ebp - 0x30]
cmp ecx, edx
ja 0x1001f939
mov esi, edx
sub esi, ecx
sar esi, 2
cmp eax, dword [edi + 8]
jne 0x1001f927
mov eax, edi
call fcn.10023030
mov eax, dword [edi]
lea ecx, [eax + esi*4]
mov eax, dword [edi + 4]
test eax, eax
je 0x1001f94e
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x1001f94e
cmp eax, dword [edi + 8]
jne 0x1001f945
mov eax, edi
call fcn.10023030
mov eax, dword [edi + 4]
test eax, eax
je 0x1001f94e
mov dword [eax], ebx
add dword [edi + 4], 4
mov dword [ebp - 4], 0xa
test byte [ebp - 0x34], 2
je 0x1001f976
and dword [ebp - 0x34], 0xfffffffd
cmp dword [ebp - 0x18], 8
jb 0x1001f976
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
push 0x40
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov ebx, eax
add esp, 4
mov dword [ebp - 0x38], ebx
mov byte [ebp - 4], 0x17
test ebx, ebx
je 0x1001fa1b
xor eax, eax
mov word [ebp - 0x2c], ax
push 0x11
mov eax, str.priv.dog.settings
lea esi, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
call fcn.1000cf60
or dword [ebp - 0x34], 4
xor edx, edx
mov dword [ebp - 4], 0x19
lea ecx, [ebx + 4]
mov dword [ebx], vtable.CSinkPreloadJS.0
push edx
lea eax, [ebp - 0x2c]
mov esi, 7
push eax
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], 0
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
xor edx, edx
mov byte [ebp - 4], 0x1a
lea ecx, [ebx + 0x24]
mov byte [ebx + 0x20], 0
push edx
lea eax, [ebp - 0x2c]
push eax
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], 0
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
mov dword [ebx], vtable.CSinkSettings.0
mov esi, ebx
jmp 0x1001fa1d
xor esi, esi
mov dword [ebp - 4], 0x1b
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
cmp ecx, eax
jae 0x1001fa5f
mov ecx, dword [edi]
lea edx, [ebp - 0x30]
cmp ecx, edx
ja 0x1001fa5f
mov esi, edx
sub esi, ecx
sar esi, 2
cmp eax, dword [edi + 8]
jne 0x1001fa4d
mov eax, edi
call fcn.10023030
mov eax, dword [edi]
lea esi, [eax + esi*4]
mov eax, dword [edi + 4]
test eax, eax
je 0x1001fa74
mov ecx, dword [esi]
mov dword [eax], ecx
jmp 0x1001fa74
cmp eax, dword [edi + 8]
jne 0x1001fa6b
mov eax, edi
call fcn.10023030
mov eax, dword [edi + 4]
test eax, eax
je 0x1001fa74
mov dword [eax], esi
add dword [edi + 4], 4
mov dword [ebp - 4], 0xa
test byte [ebp - 0x34], 4
je 0x1001fa98
cmp dword [ebp - 0x18], 8
jb 0x1001fa98
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x4c]
je 0x1001fbe9
push 0x40
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov esi, eax
add esp, 4
mov dword [ebp - 0x38], esi
test esi, esi
je 0x1001fb0e
mov byte [ebp - 4], 0x1d
mov ebx, dword [ebp - 0x34]
lea eax, [esi + 4]
lea ecx, [ebx + 0x1c]
push eax
mov dword [esi], vtable.CSinkRegexp.0
call fcn.10016b20
lea ecx, [esi + 0x14]
push ecx
lea ecx, [ebx + 0x2c]
mov byte [ebp - 4], 0x1e
call fcn.10016b20
xor edx, edx
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 0x1f
push edx
mov eax, ebx
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
or eax, 0xffffffff
mov word [ecx], dx
call fcn.1000c030
mov ebx, esi
jmp 0x1001fb10
xor ebx, ebx
mov byte [ebp - 4], 0xa
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
cmp ecx, eax
jae 0x1001fb84
mov edx, dword [edi]
cmp edx, ecx
ja 0x1001fb84
mov ebx, ecx
mov ecx, dword [edi + 8]
sub ebx, edx
sar ebx, 2
cmp eax, ecx
jne 0x1001fb72
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1001fc4a
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fb72
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fb62
xor ecx, ecx
jmp 0x1001fb64
add ecx, edx
cmp ecx, eax
jae 0x1001fb6a
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
mov edx, dword [edi]
lea ecx, [edx + ebx*4]
test eax, eax
je 0x1001fbd3
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x1001fbd3
mov ecx, dword [edi + 8]
cmp eax, ecx
jne 0x1001fbca
mov edx, dword [edi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1001fc4a
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fbca
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fbba
xor ecx, ecx
jmp 0x1001fbbc
add ecx, edx
cmp ecx, eax
jae 0x1001fbc2
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
test eax, eax
je 0x1001fbd3
mov dword [eax], ebx
mov eax, dword [ebp - 0x34]
add dword [edi + 4], 4
add eax, 0x3c
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x4c]
jne 0x1001faa7
push 0x24
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
xor ebx, ebx
cmp eax, ebx
je 0x1001fc19
mov dword [eax], vtable.CSinkGetReplacement.0
mov dword [eax + 4], 0xffffffff
mov dword [eax + 0x18], ebx
xor edx, edx
mov dword [eax + 0x1c], 7
mov word [eax + 8], dx
mov ebx, eax
mov byte [ebp - 4], 0xa
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
cmp ecx, eax
jae 0x1001fc94
mov edx, dword [edi]
cmp edx, ecx
ja 0x1001fc94
mov ebx, ecx
mov ecx, dword [edi + 8]
sub ebx, edx
sar ebx, 2
cmp eax, ecx
jne 0x1001fc82
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x1001fc55
push str.vector_T__too_long
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xlength_error_char_const__]
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fc82
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fc72
xor ecx, ecx
jmp 0x1001fc74
add ecx, edx
cmp ecx, eax
jae 0x1001fc7a
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
mov edx, dword [edi]
lea ebx, [edx + ebx*4]
test eax, eax
je 0x1001fcea
mov ecx, dword [ebx]
mov dword [eax], ecx
jmp 0x1001fcea
mov ecx, dword [edi + 8]
cmp eax, ecx
jne 0x1001fce1
mov edx, dword [edi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x1001fcb4
push str.vector_T__too_long
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xlength_error_char_const__]
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fce1
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fcd1
xor ecx, ecx
jmp 0x1001fcd3
add ecx, edx
cmp ecx, eax
jae 0x1001fcd9
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
test eax, eax
je 0x1001fcea
mov dword [eax], ebx
mov eax, dword [ebp - 0x60]
add dword [edi + 4], 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x5c]
je 0x1001fe0e
lea ecx, [ecx]
push 0xc
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x1001fd34
mov esi, dword [ebp - 0x34]
mov ecx, dword [esi]
cmp ecx, 1
sete dl
cmp dword [esi + 4], 0
mov dword [eax], vtable.CSinkCategory.0
setg bl
mov byte [eax + 8], bl
mov dword [eax + 4], ecx
mov byte [eax + 9], dl
mov ebx, eax
jmp 0x1001fd36
xor ebx, ebx
mov eax, dword [edi + 4]
lea edx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
cmp edx, eax
jae 0x1001fda9
mov edx, dword [edi]
lea ecx, [ebp - 0x30]
cmp edx, ecx
ja 0x1001fda9
mov ebx, ecx
mov ecx, dword [edi + 8]
sub ebx, edx
sar ebx, 2
cmp eax, ecx
jne 0x1001fd97
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1001fc4a
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fd97
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fd87
xor ecx, ecx
jmp 0x1001fd89
add ecx, edx
cmp ecx, eax
jae 0x1001fd8f
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
mov edx, dword [edi]
lea ebx, [edx + ebx*4]
test eax, eax
je 0x1001fdf8
mov ecx, dword [ebx]
mov dword [eax], ecx
jmp 0x1001fdf8
mov ecx, dword [edi + 8]
cmp eax, ecx
jne 0x1001fdef
mov edx, dword [edi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1001fc4a
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fdef
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fddf
xor ecx, ecx
jmp 0x1001fde1
add ecx, edx
cmp ecx, eax
jae 0x1001fde7
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
test eax, eax
je 0x1001fdf8
mov dword [eax], ebx
mov eax, dword [ebp - 0x34]
add dword [edi + 4], 4
add eax, 0x3c
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x5c]
jne 0x1001fd00
push 4
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x1001fe27
mov dword [eax], vtable.CSinkDefault.0
mov ebx, eax
jmp 0x1001fe29
xor ebx, ebx
mov eax, dword [edi + 4]
lea edx, [ebp - 0x34]
mov dword [ebp - 0x34], ebx
cmp edx, eax
jae 0x1001fea3
mov edx, dword [edi]
lea ecx, [ebp - 0x34]
cmp edx, ecx
ja 0x1001fea3
mov ebx, ecx
mov ecx, dword [edi + 8]
sub ebx, edx
sar ebx, 2
cmp eax, ecx
jne 0x1001fe91
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x1001fe64
push str.vector_T__too_long
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xlength_error_char_const__]
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fe91
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fe81
xor ecx, ecx
jmp 0x1001fe83
add ecx, edx
cmp ecx, eax
jae 0x1001fe89
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
mov edx, dword [edi]
lea ebx, [edx + ebx*4]
test eax, eax
je 0x1001fef9
mov ecx, dword [ebx]
mov dword [eax], ecx
jmp 0x1001fef9
mov ecx, dword [edi + 8]
cmp eax, ecx
jne 0x1001fef0
mov edx, dword [edi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
jbe 0x1001fec3
push str.vector_T__too_long
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xlength_error_char_const__]
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1001fef0
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x1001fee0
xor ecx, ecx
jmp 0x1001fee2
add ecx, edx
cmp ecx, eax
jae 0x1001fee8
mov ecx, eax
push ecx
mov esi, edi
call fcn.100230d0
mov eax, dword [edi + 4]
test eax, eax
je 0x1001fef9
mov dword [eax], ebx
add dword [edi + 4], 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x50], 0
je 0x1002003a
lea ecx, [ebp - 0x50]
call dword [sym.imp.MSVCP100.dll_public:_void___thiscall_std::_Container_base0::_Orphan_all_void_]
mov eax, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ebx
cmp ebx, eax
je 0x10020030
xor esi, esi
lea ebx, [ebx]
mov byte [ebp - 4], 0x23
cmp dword [ebx + 0x2c], esi
je 0x1001ff8c
lea ecx, [ebx + 0x2c]
call dword [sym.imp.MSVCP100.dll_public:_void___thiscall_std::_Container_base0::_Orphan_all_void_]
mov eax, dword [ebx + 0x30]
mov esi, dword [ebx + 0x2c]
mov dword [ebp - 0x30], eax
cmp esi, eax
je 0x1001ff7d
nop
cmp dword [esi + 0x14], 8
jb 0x1001ff62
mov eax, dword [esi]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], dx
add esi, 0x1c
cmp esi, dword [ebp - 0x30]
jne 0x1001ff50
mov eax, dword [ebx + 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor esi, esi
mov dword [ebx + 0x2c], esi
mov dword [ebx + 0x30], esi
mov dword [ebx + 0x34], esi
mov byte [ebp - 4], 0x22
cmp dword [ebx + 0x1c], esi
je 0x1001fff0
lea ecx, [ebx + 0x1c]
call dword [sym.imp.MSVCP100.dll_public:_void___thiscall_std::_Container_base0::_Orphan_all_void_]
mov eax, dword [ebx + 0x20]
mov esi, dword [ebx + 0x1c]
mov dword [ebp - 0x30], eax
cmp esi, eax
je 0x1001ffe1
cmp dword [esi + 0x14], 8
jb 0x1001ffc6
mov eax, dword [esi]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor eax, eax
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], ax
add esi, 0x1c
cmp esi, dword [ebp - 0x30]
jne 0x1001ffb4
mov eax, dword [ebx + 0x1c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor esi, esi
mov dword [ebx + 0x1c], esi
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x24], esi
mov byte [ebp - 4], 9
cmp dword [ebx + 0x14], 8
jb 0x1002000f
mov eax, dword [ebx]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor ecx, ecx
mov dword [ebx + 0x14], 7
mov dword [ebx + 0x10], esi
mov word [ebx], cx
add ebx, 0x3c
mov dword [ebp - 0x34], ebx
cmp ebx, dword [ebp - 0x38]
jne 0x1001ff30
mov ebx, dword [ebp - 0x50]
push ebx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor eax, eax
mov byte [ebp - 4], 8
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x60], eax
je 0x10020075
lea ecx, [ebp - 0x60]
call dword [sym.imp.MSVCP100.dll_public:_void___thiscall_std::_Container_base0::_Orphan_all_void_]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
push edx
push eax
push ecx
call fcn.10018720
mov edx, dword [ebp - 0x60]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 0x10
xor eax, eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x70]
mov dword [ebp - 0x74], vtable.CFilterModel.0
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
push eax
push ecx
lea esi, [ebp - 0x30]
lea eax, [ebp - 0x70]
call fcn.10011540
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x6c]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
mov eax, dword [ebp - 0x40]
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10048188
mov esp, ebp
pop ebp
ret