Function at 0x42e0c0
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x432cd0
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5274d0]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x18], ebx
mov dword [ebx + 0x45c], 0
lea esi, [ebx + 0x468]
mov dword [ebx], vtable.SymbolicSequence.0
mov dword [esp + 0x78], 0
mov dword [esp + 0x3c], esi
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
lea edi, [ebx + 0x474]
mov dword [edi], 0
mov dword [esp + 0x40], edi
mov dword [edi + 4], 0
mov dword [edi + 8], 0
lea eax, [ebx + 0x480]
mov dword [ebx + 0x480], 0
mov dword [esp + 0x44], eax
mov dword [ebx + 0x484], 0
mov dword [ebx + 0x488], 0
mov ecx, dword [esp + 0x84]
lea edx, [ebx + 0x204]
mov byte [esp + 0x78], 3
sub edx, ecx
lea ecx, [ecx]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx + ecx - 1], al
test al, al
jne 0x42e180
mov eax, dword [esp + 0x88]
mov dword [ebx + 0x464], eax
cmp eax, 4
jne 0x42e1b2
push dword [esp + 0x80]
mov ecx, ebx
call fcn.004309b0
jmp 0x42ef62
mov ebp, dword [esp + 0x80]
lea eax, [ebx + 0x490]
push eax
push ebp
mov dword [ebx + 0x45c], 0
mov dword [ebx + 0x458], 0
call fcn.0042d420
add esp, 8
mov byte [ebx + 4], 0
mov ecx, ebx
call fcn.0042f700
lea esi, [ebx + 0x404]
mov dword [ebx + 0x444], 0
push esi
mov ecx, ebp
mov dword [esp + 0x2c], esi
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
mov eax, dword [esi]
cmp eax, 0x1fff
jl 0x42e2be
push 0x50870c
push 0x2000
push str.__MAX_T_is
push eax
push str.Sequence_too_long__
push 0x5089d8
push 0xcc
push str._line
push str...........2017_1_OB_src_Win32_x86psp_srcpredictors_ssproSequence.cxx
push str.__file
push str.unknown__
push str.Error:_in_function
push dword [sym.imp.MSVCP120.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.00428940
add esp, 8
push eax
call fcn.00428940
add esp, 8
push eax
call fcn.00428940
add esp, 8
push eax
call fcn.00428940
add esp, 8
push eax
call fcn.00428940
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.00428940
add esp, 8
push eax
call fcn.00428940
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.00428940
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.00428940
add esp, 8
call dword [sym.imp.MSVCR120.dll_abort]
xor ecx, ecx
inc eax
mov edi, 4
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x408], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x40c], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x414], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x418], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x41c], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x420], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x424], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x428], eax
mov eax, dword [esi]
xor ecx, ecx
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x410], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x42c], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x430], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x434], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x438], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x43c], eax
xor ecx, ecx
mov eax, dword [esi]
inc eax
mul edi
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov dword [ebx + 0x440], eax
add esp, 0x3c
mov eax, dword [ebx + 0x418]
mov dword [eax], 0
mov eax, dword [ebx + 0x414]
mov dword [eax], 0
mov eax, dword [ebx + 0x40c]
mov dword [eax], 0
mov eax, dword [ebx + 0x408]
mov dword [eax], 0
mov eax, dword [ebx + 0x428]
mov dword [eax], 0
mov eax, dword [ebx + 0x424]
mov dword [eax], 0
mov edi, 1
mov eax, dword [ebx + 0x420]
mov dword [eax], 0
cmp dword [esi], edi
jl 0x42e4d5
lea eax, [esp + 0x84]
push eax
push ebp
call fcn.0042d320
movsx eax, byte [esp + 0x8c]
add esp, 8
mov ecx, dword [ebx + 0x408]
mov eax, dword [eax*4 + 0x5153e4]
mov dword [ecx + edi*4], eax
inc edi
cmp edi, dword [esi]
jle 0x42e4a7
mov edi, 1
cmp dword [esi], edi
jl 0x42e55e
mov eax, dword [ebx + 0x440]
mov dword [eax + edi*4], 0
lea eax, [esp + 0x84]
push eax
push ebp
call fcn.0042d320
mov al, byte [esp + 0x8c]
add esp, 8
cmp al, 0x2d
jne 0x42e51a
mov eax, dword [ebx + 0x40c]
mov dword [eax + edi*4], 0xffffffff
jmp 0x42e559
cmp al, 0x48
je 0x42e54c
cmp al, 0x47
je 0x42e54c
cmp al, 0x49
je 0x42e54c
cmp al, 0x45
je 0x42e53d
cmp al, 0x42
je 0x42e53d
mov eax, dword [ebx + 0x40c]
mov dword [eax + edi*4], 2
jmp 0x42e559
mov eax, dword [ebx + 0x40c]
mov dword [eax + edi*4], 1
jmp 0x42e559
mov eax, dword [ebx + 0x40c]
mov dword [eax + edi*4], 0
inc edi
cmp edi, dword [esi]
jle 0x42e4e2
mov edi, 1
cmp dword [esi], edi
jl 0x42e591
lea eax, [esp + 0x14]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
mov ecx, dword [esp + 0x14]
xor eax, eax
test ecx, ecx
cmovs ecx, eax
mov eax, dword [ebx + 0x414]
mov dword [esp + 0x14], ecx
mov dword [eax + edi*4], ecx
inc edi
cmp edi, dword [esi]
jle 0x42e567
mov edi, 1
cmp dword [esi], edi
jl 0x42e5ca
lea ebx, [ebx]
lea eax, [esp + 0x14]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
mov ecx, dword [esp + 0x14]
xor eax, eax
test ecx, ecx
cmovs ecx, eax
mov eax, dword [ebx + 0x418]
mov dword [esp + 0x14], ecx
mov dword [eax + edi*4], ecx
inc edi
cmp edi, dword [esi]
jle 0x42e5a0
mov edi, 1
cmp dword [esi], edi
jl 0x42e5ea
mov eax, dword [ebx + 0x41c]
mov ecx, ebp
lea eax, [eax + edi*4]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
inc edi
cmp edi, dword [esi]
jle 0x42e5d3
mov edi, 1
cmp dword [esi], edi
jl 0x42e63f
jmp 0x42e600
mov eax, dword [ebx + 0x428]
lea ecx, [edi*4]
add eax, ecx
push eax
mov eax, dword [ebx + 0x424]
add eax, ecx
push eax
mov eax, dword [ebx + 0x420]
add eax, ecx
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___float__]
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___float__]
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___float__]
inc edi
cmp edi, dword [esi]
jle 0x42e600
mov eax, dword [esp + 0x88]
cmp eax, 1
je 0x42ef62
cmp eax, 5
jne 0x42e661
push ebp
mov ecx, ebx
call fcn.004306f0
jmp 0x42ef62
mov edi, 1
mov dword [esp + 0x30], edi
cmp dword [esi], edi
jl 0x42e8d7
lea eax, [esp + 0x34]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
mov eax, dword [esp + 0x34]
cmp eax, 1
jl 0x42ea78
cmp eax, dword [esi]
jg 0x42ea78
lea eax, [esp + 0x38]
push eax
push ebp
call fcn.0042d320
mov ecx, dword [esp + 0x40]
add esp, 8
movsx eax, cl
mov edx, dword [eax*4 + 0x5153e4]
mov eax, dword [ebx + 0x408]
cmp dword [eax + edi*4], edx
jne 0x42e9ec
lea eax, [esp + 0x2c]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
xor ebx, ebx
xor edi, edi
xor esi, esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], esi
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x78], 4
test eax, eax
jle 0x42e808
mov dword [esp + 0x88], esi
lea eax, [esp + 0x1c]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
lea eax, [esp + 0x1c]
cmp eax, edi
jae 0x42e783
cmp ebx, eax
ja 0x42e783
mov ebp, eax
sub ebp, ebx
sar ebp, 2
cmp edi, esi
jne 0x42e771
mov eax, esi
sub eax, edi
sar eax, 2
cmp eax, 1
jae 0x42e771
sub edi, ebx
mov eax, 0x3fffffff
sar edi, 2
sub eax, edi
cmp eax, 1
jb 0x42e9e1
sub esi, ebx
mov eax, 0x3fffffff
sar esi, 2
inc edi
mov ecx, esi
shr ecx, 1
sub eax, ecx
cmp eax, esi
jae 0x42e754
xor esi, esi
jmp 0x42e756
add esi, ecx
cmp esi, edi
lea ecx, [esp + 0x4c]
cmovb esi, edi
push esi
call fcn.0042f290
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x50]
mov ebx, dword [esp + 0x4c]
test edi, edi
je 0x42e77a
mov eax, dword [ebx + ebp*4]
mov dword [edi], eax
mov ebp, dword [esp + 0x80]
jmp 0x42e7e8
cmp edi, esi
jne 0x42e7de
mov eax, esi
sub eax, edi
sar eax, 2
cmp eax, 1
jae 0x42e7de
sub edi, ebx
mov eax, 0x3fffffff
sar edi, 2
sub eax, edi
cmp eax, 1
jb 0x42e9e1
sub esi, ebx
mov eax, 0x3fffffff
sar esi, 2
inc edi
mov ecx, esi
shr ecx, 1
sub eax, ecx
cmp eax, esi
jae 0x42e7c1
xor esi, esi
jmp 0x42e7c3
add esi, ecx
cmp esi, edi
lea ecx, [esp + 0x4c]
cmovb esi, edi
push esi
call fcn.0042f290
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x50]
mov ebx, dword [esp + 0x4c]
test edi, edi
je 0x42e7e8
mov eax, dword [esp + 0x1c]
mov dword [edi], eax
mov eax, dword [esp + 0x88]
add edi, 4
inc eax
mov dword [esp + 0x50], edi
mov dword [esp + 0x88], eax
cmp eax, dword [esp + 0x2c]
jl 0x42e6f6
mov esi, dword [esp + 0x3c]
lea ecx, [esp + 0x4c]
mov eax, dword [esi + 4]
cmp ecx, eax
jae 0x42e861
mov edx, dword [esi]
cmp edx, ecx
ja 0x42e861
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
mov eax, dword [esi + 4]
sar edx, 1
mov edi, edx
shr edi, 0x1f
add edi, edx
cmp eax, dword [esi + 8]
jne 0x42e840
push 1
mov ecx, esi
call fcn.0042f490
mov eax, dword [esi]
lea ecx, [edi + edi*2]
lea eax, [eax + ecx*4]
mov ecx, dword [esi + 4]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x78], 5
test ecx, ecx
je 0x42e890
jmp 0x42e88a
cmp eax, dword [esi + 8]
jne 0x42e86f
push 1
mov ecx, esi
call fcn.0042f490
mov ecx, dword [esi + 4]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x78], 6
test ecx, ecx
je 0x42e890
lea eax, [esp + 0x4c]
push eax
call fcn.0042d9c0
add dword [esi + 4], 0xc
mov byte [esp + 0x78], 3
test ebx, ebx
je 0x42e8be
push ebx
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x28]
inc edi
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x30], edi
cmp edi, dword [esi]
jle 0x42e672
mov edi, 1
mov dword [esp + 0x2c], edi
cmp dword [esi], edi
jl 0x42ec03
lea eax, [esp + 0x3c]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
mov eax, dword [esp + 0x3c]
cmp eax, 1
jl 0x42ea78
cmp eax, dword [esi]
jg 0x42ea78
lea eax, [esp + 0x38]
push eax
push ebp
call fcn.0042d320
mov ecx, dword [esp + 0x40]
add esp, 8
movsx eax, cl
mov edx, dword [eax*4 + 0x5153e4]
mov eax, dword [ebx + 0x408]
cmp dword [eax + edi*4], edx
jne 0x42e9ec
lea eax, [esp + 0x30]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
xor ebx, ebx
xor edi, edi
xor esi, esi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], esi
mov eax, dword [esp + 0x30]
mov byte [esp + 0x78], 7
test eax, eax
jle 0x42eb33
mov dword [esp + 0x88], esi
lea esp, [esp]
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
lea eax, [esp + 0x20]
cmp eax, edi
jae 0x42eaae
cmp ebx, eax
ja 0x42eaae
mov ebp, eax
sub ebp, ebx
sar ebp, 2
cmp edi, esi
jne 0x42ea9c
mov eax, esi
sub eax, edi
sar eax, 2
cmp eax, 1
jae 0x42ea9c
sub edi, ebx
mov eax, 0x3fffffff
sar edi, 2
sub eax, edi
cmp eax, 1
jb 0x42e9e1
sub esi, ebx
mov eax, 0x3fffffff
sar esi, 2
inc edi
mov ecx, esi
shr ecx, 1
sub eax, ecx
cmp eax, esi
jae 0x42ea7f
xor esi, esi
jmp 0x42ea81
push str.vector_T__too_long
call dword [sym.imp.MSVCP120.dll_void___cdecl_std::_Xlength_error_char_const__]
push 0x42c850
push ecx
push 0x508710
push edx
push str._aa
push dword [eax + edi*4]
push str._u_t_
push edi
push str.index
push dword [sym.imp.MSVCP120.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00428940
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.00428940
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.00428940
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.00428940
add esp, 8
push eax
call fcn.0042d5e0
add esp, 8
mov ecx, eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
push str.amino_acid_in_3d_doesnt_match_with_the_aa_in_sequence._n
push dword [sym.imp.MSVCP120.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00428940
add esp, 8
push 1
call dword [sym.imp.MSVCR120.dll_exit]
push str.index_of_3d_information_is_out_of_boundary._n
jmp 0x42ea62
add esi, ecx
cmp esi, edi
lea ecx, [esp + 0x58]
cmovb esi, edi
push esi
call fcn.0042f290
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
test edi, edi
je 0x42eaa5
mov eax, dword [ebx + ebp*4]
mov dword [edi], eax
mov ebp, dword [esp + 0x80]
jmp 0x42eb13
cmp edi, esi
jne 0x42eb09
mov eax, esi
sub eax, edi
sar eax, 2
cmp eax, 1
jae 0x42eb09
sub edi, ebx
mov eax, 0x3fffffff
sar edi, 2
sub eax, edi
cmp eax, 1
jb 0x42e9e1
sub esi, ebx
mov eax, 0x3fffffff
sar esi, 2
inc edi
mov ecx, esi
shr ecx, 1
sub eax, ecx
cmp eax, esi
jae 0x42eaec
xor esi, esi
jmp 0x42eaee
add esi, ecx
cmp esi, edi
lea ecx, [esp + 0x58]
cmovb esi, edi
push esi
call fcn.0042f290
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
test edi, edi
je 0x42eb13
mov eax, dword [esp + 0x20]
mov dword [edi], eax
mov eax, dword [esp + 0x88]
add edi, 4
inc eax
mov dword [esp + 0x5c], edi
mov dword [esp + 0x88], eax
cmp eax, dword [esp + 0x30]
jl 0x42e970
mov edi, dword [esp + 0x40]
lea ecx, [esp + 0x58]
mov eax, dword [edi + 4]
cmp ecx, eax
jae 0x42eb8c
mov edx, dword [edi]
cmp edx, ecx
ja 0x42eb8c
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
mov eax, dword [edi + 4]
sar edx, 1
mov esi, edx
shr esi, 0x1f
add esi, edx
cmp eax, dword [edi + 8]
jne 0x42eb6b
push 1
mov ecx, edi
call fcn.0042f490
mov eax, dword [edi]
lea ecx, [esi + esi*2]
lea eax, [eax + ecx*4]
mov ecx, dword [edi + 4]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x78], 8
test ecx, ecx
je 0x42ebbb
jmp 0x42ebb5
cmp eax, dword [edi + 8]
jne 0x42eb9a
push 1
mov ecx, edi
call fcn.0042f490
mov ecx, dword [edi + 4]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x78], 9
test ecx, ecx
je 0x42ebbb
lea eax, [esp + 0x58]
push eax
call fcn.0042d9c0
add dword [edi + 4], 0xc
mov byte [esp + 0x78], 3
test ebx, ebx
je 0x42ebe9
push ebx
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
inc edi
mov dword [esp + 0x2c], edi
cmp edi, dword [esi]
jg 0x42ec03
mov ebx, dword [esp + 0x18]
jmp 0x42e8e8
mov ebx, 1
mov dword [esp + 0x2c], ebx
cmp dword [esi], ebx
jl 0x42ee7d
lea eax, [esp + 0x40]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
mov eax, dword [esp + 0x40]
cmp eax, 1
jl 0x42ea78
cmp eax, dword [esi]
jg 0x42ea78
lea eax, [esp + 0x3c]
push eax
push ebp
call fcn.0042d320
mov edx, dword [esp + 0x44]
add esp, 8
mov ecx, dword [esp + 0x18]
movsx eax, dl
mov esi, dword [eax*4 + 0x5153e4]
mov eax, dword [ecx + 0x408]
cmp dword [eax + ebx*4], esi
jne 0x42eefb
lea eax, [esp + 0x30]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
xor ebx, ebx
xor edi, edi
xor esi, esi
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], esi
mov eax, dword [esp + 0x30]
mov byte [esp + 0x78], 0xa
test eax, eax
jle 0x42edb2
mov dword [esp + 0x88], esi
lea esp, [esp]
lea eax, [esp + 0x24]
mov ecx, ebp
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::operator___int__]
lea eax, [esp + 0x24]
cmp eax, edi
jae 0x42ed2d
cmp ebx, eax
ja 0x42ed2d
mov ebp, eax
sub ebp, ebx
sar ebp, 2
cmp edi, esi
jne 0x42ed1b
mov eax, esi
sub eax, edi
sar eax, 2
cmp eax, 1
jae 0x42ed1b
sub edi, ebx
mov eax, 0x3fffffff
sar edi, 2
sub eax, edi
cmp eax, 1
jb 0x42e9e1
sub esi, ebx
mov eax, 0x3fffffff
sar esi, 2
inc edi
mov ecx, esi
shr ecx, 1
sub eax, ecx
cmp eax, esi
jae 0x42ecfe
xor esi, esi
jmp 0x42ed00
add esi, ecx
cmp esi, edi
lea ecx, [esp + 0x64]
cmovb esi, edi
push esi
call fcn.0042f290
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
test edi, edi
je 0x42ed24
mov eax, dword [ebx + ebp*4]
mov dword [edi], eax
mov ebp, dword [esp + 0x80]
jmp 0x42ed92
cmp edi, esi
jne 0x42ed88
mov eax, esi
sub eax, edi
sar eax, 2
cmp eax, 1
jae 0x42ed88
sub edi, ebx
mov eax, 0x3fffffff
sar edi, 2
sub eax, edi
cmp eax, 1
jb 0x42e9e1
sub esi, ebx
mov eax, 0x3fffffff
sar esi, 2
inc edi
mov ecx, esi
shr ecx, 1
sub eax, ecx
cmp eax, esi
jae 0x42ed6b
xor esi, esi
jmp 0x42ed6d
add esi, ecx
cmp esi, edi
lea ecx, [esp + 0x64]
cmovb esi, edi
push esi
call fcn.0042f290
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
test edi, edi
je 0x42ed92
mov eax, dword [esp + 0x24]
mov dword [edi], eax
mov eax, dword [esp + 0x88]
add edi, 4
inc eax
mov dword [esp + 0x68], edi
mov dword [esp + 0x88], eax
cmp eax, dword [esp + 0x30]
jl 0x42eca0
mov esi, dword [esp + 0x44]
lea ecx, [esp + 0x64]
mov eax, dword [esi + 4]
cmp ecx, eax
jae 0x42ee0b
mov edx, dword [esi]
cmp edx, ecx
ja 0x42ee0b
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
mov eax, dword [esi + 4]
sar edx, 1
mov edi, edx
shr edi, 0x1f
add edi, edx
cmp eax, dword [esi + 8]
jne 0x42edea
push 1
mov ecx, esi
call fcn.0042f490
mov eax, dword [esi]
lea ecx, [edi + edi*2]
lea eax, [eax + ecx*4]
mov ecx, dword [esi + 4]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x78], 0xb
test ecx, ecx
je 0x42ee3a
jmp 0x42ee34
cmp eax, dword [esi + 8]
jne 0x42ee19
push 1
mov ecx, esi
call fcn.0042f490
mov ecx, dword [esi + 4]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x78], 0xc
test ecx, ecx
je 0x42ee3a
lea eax, [esp + 0x64]
push eax
call fcn.0042d9c0
add dword [esi + 4], 0xc
mov byte [esp + 0x78], 3
test ebx, ebx
je 0x42ee68
push ebx
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
inc ebx
mov dword [esp + 0x2c], ebx
cmp ebx, dword [esi]
jle 0x42ec14
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0x464]
cmp eax, 2
je 0x42ef62
cmp eax, 3
jne 0x42ef62
mov eax, dword [esi]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR120.dll_void____cdecl_operator_new___unsigned_int_
mov edi, 1
mov dword [ebx + 0x460], eax
add esp, 4
cmp dword [esi], edi
jl 0x42ef62
jmp 0x42eed0
lea eax, [esp + 0x84]
push eax
push ebp
call fcn.0042d320
mov al, byte [esp + 0x8c]
add esp, 8
cmp al, 0x2d
jne 0x42ef1a
mov eax, dword [ebx + 0x460]
mov dword [eax + edi*4], 0xffffffff
jmp 0x42ef59
push 0x42c850
push edx
push 0x508710
push esi
push str._aa
push dword [eax + ebx*4]
push str._u_t_
push ebx
jmp 0x42ea06
cmp al, 0x48
je 0x42ef4c
cmp al, 0x47
je 0x42ef4c
cmp al, 0x49
je 0x42ef4c
cmp al, 0x45
je 0x42ef3d
cmp al, 0x42
je 0x42ef3d
mov eax, dword [ebx + 0x460]
mov dword [eax + edi*4], 2
jmp 0x42ef59
mov eax, dword [ebx + 0x460]
mov dword [eax + edi*4], 1
jmp 0x42ef59
mov eax, dword [ebx + 0x460]
mov dword [eax + edi*4], 0
inc edi
cmp edi, dword [esi]
jle 0x42eed0
mov eax, ebx
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret 0xc