Function at 0x4a8390
Capabilities:
Enumerate processes
Execute command
Hide graphical window
Query environment variable

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
lea ebx, [ebp - 0x520]
push ecx
sub esp, 0x5a8
mov esi, dword [ecx + 4]
call sym.___main
mov ecx, ebx
mov eax, dword [esi]
mov dword [esp], eax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.115_
mov eax, 0x4b508e
sub esp, 4
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0xffffffff
mov ecx, ebx
mov dword [esp + 8], eax
mov dword [esp], 0x4b508e
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.find_last_of_char_const__unsigned_int__unsigned_int__const
lea ecx, [ebp - 0x538]
sub esp, 0xc
add eax, 1
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], eax
mov dword [esp], ebx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.substr_unsigned_int__unsigned_int__const
sub esp, 0xc
mov eax, str.running_n
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], str.running_n
mov dword [esp + 8], eax
mov dword [esp], 0x4b47a0
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp], str.config.ini
lea edi, [ebp - 0x140]
mov ecx, edi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.115_
mov eax, dword [ebp - 0x140]
sub esp, 4
mov dword [esp + 4], 0
mov dword [esp], eax
mov eax, dword [sym.__stub]
mov dword [ebp - 0x5a8], eax
call eax
mov edx, dword [ebp - 0x140]
mov ebx, eax
lea eax, [ebp - 0x138]
cmp edx, eax
je 0x4a847c
mov dword [esp], edx
call sym.operator_delete_void_
test ebx, ebx
jne 0x4a9522
mov dword [esp], 0x18
lea eax, [ebp - 0x4d4]
mov dword [ebp - 0x4cc], eax
mov dword [ebp - 0x4c8], eax
lea eax, [ebp - 0x4c0]
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0
mov dword [ebp - 0x4c4], 0
mov dword [ebp - 0x4bc], eax
mov dword [ebp - 0x4c0], eax
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x4b0], 0
call sym.operator_new_unsigned_int_
mov dword [eax + 4], 1
mov ecx, eax
mov dword [eax + 8], 1
mov dword [eax], fcn.00480690
mov dword [eax + 0xc], vtable.cxx13stdio_filebufIcSt11char_traitsIcEEE.0
mov dword [eax + 0x10], 0x3b3d5d5b
mov dword [eax + 0x14], 0x7d3a7b24
mov dword [esp], 0x4baa98
mov dword [ebp - 0x4b0], eax
call method.std::_Sp_counted_ptr_inplace_inipp::Format_char___std::allocator_inipp.Format_char________gnu_cxx::_Lock_policy_2_::_M_get_deleter_std::type_info_const_
lea ecx, [ebp - 0x23c]
push ebx
mov dword [ebp - 0x4b4], eax
mov dword [esp + 4], 8
mov dword [esp], str.config.ini
call sym.std::basic_ifstream_char__std::char_traits_char___::basic_ifstream_char_const__std::_Ios_Openmode_
push ecx
lea eax, [ebp - 0x500]
push ecx
lea ecx, [ebp - 0x588]
mov dword [ebp - 0x508], eax
lea eax, [ebp - 0x4e8]
mov dword [ebp - 0x504], 0
mov dword [esp], 0x4b50d1
mov byte [ebp - 0x500], 0
mov dword [ebp - 0x4f0], eax
mov dword [ebp - 0x4ec], 0
mov byte [ebp - 0x4e8], 0
call method.std::locale.locale_char_const_
push eax
lea eax, [ebp - 0x4d8]
mov dword [ebp - 0x5a0], eax
mov eax, dword [ebp - 0x23c]
mov eax, dword [eax - 0xc]
mov ebx, dword [ebp + eax - 0x1c0]
test ebx, ebx
je 0x4a9b90
cmp byte [ebx + 0x1c], 0
je 0x4a8a20
movzx eax, byte [ebx + 0x27]
movsx eax, al
mov dword [esp + 8], eax
lea eax, [ebp - 0x508]
mov dword [esp + 4], eax
lea eax, [ebp - 0x23c]
mov dword [esp], eax
call sym.std::basic_istream_char__std::char_traits_char____std::getline_char__std::char_traits_char___std::allocator_char____std::basic_istream_char__std::char_traits_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____char_
mov edx, dword [eax]
mov edx, dword [edx - 0xc]
test byte [eax + edx + 0x14], 5
jne 0x4a8c7a
mov eax, dword [ebp - 0x504]
mov edx, dword [ebp - 0x508]
mov dword [ebp - 0x594], eax
sar eax, 2
mov dword [ebp - 0x590], edx
test eax, eax
jle 0x4a8a5d
lea eax, [edx + eax*4]
mov ebx, edx
mov dword [ebp - 0x58c], eax
jmp 0x4a86ab
lea eax, [ebp - 0x588]
movzx esi, byte [ebx + 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
je 0x4a8ae1
lea eax, [ebp - 0x588]
movzx esi, byte [ebx + 2]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a8ad9
lea eax, [ebp - 0x588]
movzx esi, byte [ebx + 3]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a8ad1
add ebx, 4
cmp dword [ebp - 0x58c], ebx
je 0x4a8a63
lea eax, [ebp - 0x588]
movzx esi, byte [ebx]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
jne 0x4a8630
mov edx, dword [ebp - 0x508]
mov eax, dword [ebp - 0x504]
lea ecx, [edx + eax]
cmp ebx, ecx
je 0x4a8a4b
mov esi, ebx
sub esi, edx
sub eax, esi
je 0x4a8718
test esi, esi
je 0x4a8718
cmp eax, 1
je 0x4a8beb
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
call sym._memmove
mov eax, dword [ebp - 0x504]
mov edx, dword [ebp - 0x508]
sub eax, esi
mov dword [ebp - 0x504], eax
mov byte [edx + eax], 0
mov eax, dword [ebp - 0x508]
mov edx, eax
mov dword [ebp - 0x594], eax
mov eax, dword [ebp - 0x504]
add edx, eax
sar eax, 2
mov ebx, edx
mov dword [ebp - 0x590], edx
test eax, eax
jle 0x4a8a9d
shl eax, 2
sub edx, eax
mov dword [ebp - 0x58c], edx
jmp 0x4a87db
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 2]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
je 0x4a8af9
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 3]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
je 0x4a8af1
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 4]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
je 0x4a8ae9
sub ebx, 4
cmp dword [ebp - 0x58c], ebx
je 0x4a8aa3
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
jne 0x4a8760
mov ecx, dword [ebp - 0x508]
mov eax, dword [ebp - 0x504]
mov edx, ebx
sub edx, ecx
lea esi, [ecx + eax]
cmp dword [ebp - 0x590], esi
je 0x4a8a3d
mov esi, dword [ebp - 0x590]
sub esi, ebx
mov dword [ebp - 0x58c], esi
add edx, esi
mov esi, eax
sub esi, edx
je 0x4a8864
cmp dword [ebp - 0x58c], 0
je 0x4a8864
add edx, ecx
cmp esi, 1
je 0x4a8bd5
mov dword [esp + 8], esi
mov dword [esp + 4], edx
mov dword [esp], ebx
call sym._memmove
mov eax, dword [ebp - 0x504]
mov ecx, dword [ebp - 0x508]
sub eax, dword [ebp - 0x58c]
mov dword [ebp - 0x504], eax
mov byte [ecx + eax], 0
mov eax, dword [ebp - 0x508]
mov dword [ebp - 0x590], eax
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x58c], eax
test eax, eax
je 0x4a85a9
mov ecx, dword [ebp - 0x4b4]
sar eax, 2
mov esi, dword [ebp - 0x590]
mov ebx, dword [ecx]
test eax, eax
jle 0x4a9acf
lea eax, [esi + eax*4]
mov dword [ebp - 0x594], eax
jmp 0x4a8935
cmp byte [ecx + 6], dl
sete al
test al, al
jne 0x4a895e
mov eax, dword [ebx + 8]
movsx edx, byte [esi + 1]
cmp eax, method.inipp::Format_char_.is_assign_char__const
jne 0x4a8b41
cmp byte [ecx + 6], dl
sete al
test al, al
jne 0x4a8b59
mov eax, dword [ebx + 8]
movsx edx, byte [esi + 2]
cmp eax, method.inipp::Format_char_.is_assign_char__const
jne 0x4a8b21
cmp byte [ecx + 6], dl
sete al
test al, al
jne 0x4a8b39
mov eax, dword [ebx + 8]
movsx edx, byte [esi + 3]
cmp eax, method.inipp::Format_char_.is_assign_char__const
jne 0x4a8b01
cmp byte [ecx + 6], dl
sete al
test al, al
jne 0x4a8b19
add esi, 4
cmp dword [ebp - 0x594], esi
je 0x4a9acf
mov eax, dword [ebx + 8]
movsx edx, byte [esi]
cmp eax, method.inipp::Format_char_.is_assign_char__const
je 0x4a88b8
mov dword [esp], edx
call eax
mov ecx, dword [ebp - 0x4b4]
sub esp, 4
mov ebx, dword [ecx]
test al, al
je 0x4a88c6
mov ebx, dword [ebp - 0x508]
mov eax, dword [ecx]
movsx edx, byte [ebx]
mov dword [esp], edx
call dword [eax + 0xc]
push edx
test al, al
jne 0x4a85a9
mov ecx, dword [ebp - 0x4b4]
movsx edx, byte [ebx]
mov eax, dword [ecx]
mov dword [esp], edx
call dword [eax]
mov edx, dword [ebp - 0x508]
push ecx
test al, al
je 0x4a9baf
mov ecx, dword [ebp - 0x4b4]
mov ebx, dword [ebp - 0x504]
mov eax, dword [ecx]
movsx edx, byte [edx + ebx - 1]
mov dword [esp], edx
call dword [eax + 4]
push edx
test al, al
je 0x4a9b95
mov eax, dword [ebp - 0x58c]
mov dword [esp + 4], 1
lea esi, [ebp - 0x30c]
mov ecx, esi
sub eax, 2
mov dword [esp + 8], eax
lea eax, [ebp - 0x508]
mov dword [esp], eax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.substr_unsigned_int__unsigned_int__const
sub esp, 0xc
lea ecx, [ebp - 0x4f0]
mov dword [esp], esi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.operator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
lea edx, [ebp - 0x304]
push eax
mov eax, dword [ebp - 0x30c]
cmp eax, edx
je 0x4a85a9
mov dword [esp], eax
call sym.operator_delete_void_
jmp 0x4a85a9
mov ecx, ebx
call method.std::ctype_char_._M_widen_init___const
mov eax, dword [ebx]
mov ecx, ebx
mov dword [esp], 0xa
call dword [eax + 0x18]
sub esp, 4
jmp 0x4a85cf
mov dword [ebp - 0x504], edx
mov byte [ebx], 0
jmp 0x4a8874
mov dword [ebp - 0x504], 0
mov byte [edx], 0
jmp 0x4a8722
mov ebx, dword [ebp - 0x590]
mov eax, dword [ebp - 0x590]
add eax, dword [ebp - 0x594]
mov dword [ebp - 0x58c], eax
sub eax, ebx
cmp eax, 2
je 0x4a8b87
cmp eax, 3
je 0x4a8b61
cmp eax, 1
je 0x4a8bad
mov ebx, dword [ebp - 0x58c]
jmp 0x4a86ce
mov ebx, dword [ebp - 0x590]
mov eax, ebx
sub eax, dword [ebp - 0x594]
cmp eax, 2
je 0x4a8c2a
cmp eax, 3
je 0x4a8c03
cmp eax, 1
je 0x4a8c51
mov ebx, dword [ebp - 0x594]
jmp 0x4a87ff
add ebx, 3
jmp 0x4a86ce
add ebx, 2
jmp 0x4a86ce
add ebx, 1
jmp 0x4a86ce
sub ebx, 3
jmp 0x4a87ff
sub ebx, 2
jmp 0x4a87ff
sub ebx, 1
jmp 0x4a87ff
mov dword [esp], edx
call eax
mov ecx, dword [ebp - 0x4b4]
sub esp, 4
mov ebx, dword [ecx]
test al, al
je 0x4a8926
add esi, 3
jmp 0x4a895e
mov dword [esp], edx
call eax
mov ecx, dword [ebp - 0x4b4]
sub esp, 4
mov ebx, dword [ecx]
test al, al
je 0x4a8906
add esi, 2
jmp 0x4a895e
mov dword [esp], edx
call eax
mov ecx, dword [ebp - 0x4b4]
sub esp, 4
mov ebx, dword [ecx]
test al, al
je 0x4a88e6
add esi, 1
jmp 0x4a895e
lea eax, [ebp - 0x588]
movzx esi, byte [ebx]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a86ce
add ebx, 1
lea eax, [ebp - 0x588]
movzx esi, byte [ebx]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a86ce
add ebx, 1
lea eax, [ebp - 0x588]
movzx esi, byte [ebx]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a86ce
jmp 0x4a8a92
movzx eax, byte [edx]
mov byte [ebx], al
mov eax, dword [ebp - 0x504]
mov ecx, dword [ebp - 0x508]
jmp 0x4a8864
movzx eax, byte [ebx]
mov byte [edx], al
mov eax, dword [ebp - 0x504]
mov edx, dword [ebp - 0x508]
sub eax, esi
jmp 0x4a8718
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a87ff
sub ebx, 1
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a87ff
sub ebx, 1
lea eax, [ebp - 0x588]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a87ff
jmp 0x4a8ac6
lea ecx, [ebp - 0x588]
call fcn.004851d0
mov eax, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4e8]
cmp eax, edx
je 0x4a8c9d
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x508]
lea edx, [ebp - 0x500]
cmp eax, edx
je 0x4a8cb5
mov dword [esp], eax
call sym.operator_delete_void_
mov dword [esp], 0x4b50d1
lea ecx, [ebp - 0x584]
call method.std::locale.locale_char_const_
mov eax, dword [ebp - 0x4cc]
lea edx, [ebp - 0x4d4]
push ebx
mov dword [ebp - 0x5a4], eax
cmp eax, edx
je 0x4a9005
mov eax, dword [ebp - 0x5a4]
mov edx, dword [eax + 0x34]
add eax, 0x2c
mov dword [ebp - 0x59c], eax
mov dword [ebp - 0x58c], edx
cmp edx, eax
je 0x4a8fe3
lea esi, [esi]
lea edi, [edi]
mov eax, dword [ebp - 0x58c]
mov ebx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
lea edx, [ebx + eax]
mov dword [ebp - 0x590], edx
mov edx, eax
sar edx, 2
test edx, edx
jle 0x4a93b0
lea esi, [ebx + edx*4]
jmp 0x4a8dd1
cmp byte [ecx + 7], dl
sete al
test al, al
jne 0x4a8e00
mov ecx, dword [ebp - 0x4b4]
movsx edx, byte [ebx + 1]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
cmp eax, method.inipp::Format_char_.is_comment_char__const
jne 0x4a9300
cmp byte [ecx + 7], dl
sete al
test al, al
jne 0x4a9310
mov ecx, dword [ebp - 0x4b4]
movsx edx, byte [ebx + 2]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
cmp eax, method.inipp::Format_char_.is_comment_char__const
jne 0x4a9320
cmp byte [ecx + 7], dl
sete al
test al, al
jne 0x4a9330
mov ecx, dword [ebp - 0x4b4]
movsx edx, byte [ebx + 3]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
cmp eax, method.inipp::Format_char_.is_comment_char__const
jne 0x4a9340
cmp byte [ecx + 7], dl
sete al
test al, al
jne 0x4a9350
add ebx, 4
cmp ebx, esi
je 0x4a93a8
mov ecx, dword [ebp - 0x4b4]
movsx edx, byte [ebx]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
cmp eax, method.inipp::Format_char_.is_comment_char__const
je 0x4a8d40
mov dword [esp], edx
call eax
sub esp, 4
test al, al
je 0x4a8d4e
lea esi, [esi]
mov eax, dword [ebp - 0x58c]
mov edx, ebx
mov ecx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
sub edx, ecx
lea esi, [ecx + eax]
cmp dword [ebp - 0x590], esi
je 0x4a9358
mov esi, dword [ebp - 0x590]
sub esi, ebx
mov dword [ebp - 0x590], esi
add edx, esi
mov esi, eax
sub esi, edx
je 0x4a8e65
cmp dword [ebp - 0x590], 0
je 0x4a8e65
add edx, ecx
cmp esi, 1
je 0x4a9465
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp], ebx
call sym._memmove
mov edx, dword [ebp - 0x58c]
mov eax, dword [edx + 0x2c]
mov ecx, dword [edx + 0x28]
mov edx, dword [ebp - 0x58c]
sub eax, dword [ebp - 0x590]
mov dword [edx + 0x2c], eax
mov byte [ecx + eax], 0
mov eax, edx
mov edx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x598], edx
lea ecx, [edx + eax]
mov edx, eax
sar edx, 2
mov ebx, ecx
mov dword [ebp - 0x594], ecx
test edx, edx
jle 0x4a9382
shl edx, 2
sub ecx, edx
mov dword [ebp - 0x590], ecx
jmp 0x4a8f2b
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 2]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
je 0x4a93ca
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 3]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
je 0x4a93d2
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 4]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a93da
sub ebx, 4
cmp dword [ebp - 0x590], ebx
je 0x4a937a
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov edx, esi
mov eax, dword [eax + 0x18]
movzx esi, dl
test byte [eax + esi*2], 0x20
jne 0x4a8eb0
mov eax, dword [ebp - 0x58c]
mov edx, ebx
mov ecx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
sub edx, ecx
lea esi, [ecx + eax]
cmp dword [ebp - 0x594], esi
je 0x4a9369
mov esi, dword [ebp - 0x594]
sub esi, ebx
mov dword [ebp - 0x590], esi
add edx, esi
mov esi, eax
sub esi, edx
je 0x4a8fb4
cmp dword [ebp - 0x590], 0
je 0x4a8fb4
add edx, ecx
cmp esi, 1
je 0x4a947b
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp], ebx
call sym._memmove
mov edx, dword [ebp - 0x58c]
mov eax, dword [edx + 0x2c]
mov ecx, dword [edx + 0x28]
mov edx, dword [ebp - 0x58c]
sub eax, dword [ebp - 0x590]
mov dword [edx + 0x2c], eax
mov byte [ecx + eax], 0
mov eax, edx
mov dword [esp], eax
call method.std._Rb_tree_increment_std::_Rb_tree_node_base_
mov dword [ebp - 0x58c], eax
cmp dword [ebp - 0x59c], eax
jne 0x4a8d10
mov eax, dword [ebp - 0x5a4]
mov dword [esp], eax
call method.std._Rb_tree_increment_std::_Rb_tree_node_base_
lea edx, [ebp - 0x4d4]
mov dword [ebp - 0x5a4], eax
cmp eax, edx
jne 0x4a8ce2
lea ecx, [ebp - 0x584]
call fcn.004851d0
lea eax, [ebp - 0x548]
mov ecx, edi
mov dword [esp], str.CONFIG
mov dword [ebp - 0x550], eax
lea eax, [ebp - 0x560]
mov dword [ebp - 0x568], eax
lea eax, [ebp - 0x578]
mov dword [ebp - 0x54c], 0
mov byte [ebp - 0x548], 0
mov dword [ebp - 0x564], 0
mov byte [ebp - 0x560], 0
mov dword [ebp - 0x580], eax
mov dword [ebp - 0x57c], 0
mov byte [ebp - 0x578], 0
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.115_
push ecx
mov ecx, dword [ebp - 0x5a0]
mov dword [esp], edi
call sym.std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___________std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______________::operator__
push edx
lea ecx, [ebp - 0x550]
mov edx, str.run_on_startup
call fcn.0041cc50
mov eax, dword [ebp - 0x140]
lea edx, [ebp - 0x138]
cmp eax, edx
je 0x4a90ad
mov dword [esp], eax
call sym.operator_delete_void_
mov dword [esp], str.CONFIG
mov ecx, edi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.115_
push esi
mov ecx, dword [ebp - 0x5a0]
mov dword [esp], edi
call sym.std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___________std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______________::operator__
push ebx
lea ecx, [ebp - 0x568]
mov edx, str.background_change
call fcn.0041cc50
mov eax, dword [ebp - 0x140]
lea edx, [ebp - 0x138]
cmp eax, edx
je 0x4a90f3
mov dword [esp], eax
call sym.operator_delete_void_
mov dword [esp], str.CONFIG
mov ecx, edi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.115_
push ecx
mov ecx, dword [ebp - 0x5a0]
mov dword [esp], edi
call sym.std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___________std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::map_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::less_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______std::allocator_std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______________::operator__
push edx
lea ecx, [ebp - 0x580]
mov edx, str.background_file
call fcn.0041cc50
mov eax, dword [ebp - 0x140]
lea edx, [ebp - 0x138]
cmp eax, edx
je 0x4a9139
mov dword [esp], eax
call sym.operator_delete_void_
cmp dword [ebp - 0x54c], 0
je 0x4a9ab6
cmp dword [ebp - 0x564], 0
je 0x4a964b
lea ecx, [ebp - 0x568]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.compare_char_const__const__clone_.constprop.11_
or eax, dword [ebp - 0x57c]
je 0x4a9d44
mov dword [esp], 0x18
lea eax, [ebp - 0x3dc]
mov ecx, eax
mov dword [ebp - 0x598], eax
call sym.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___::basic_stringstream_std::_Ios_Openmode_
push eax
mov dword [esp], str.appdata
call sub.msvcrt.dll_getenv
mov dword [esp + 4], eax
lea eax, [ebp - 0x3d4]
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov ebx, eax
mov eax, str.MicrosoftWindowsStart_MenuProgramsStartup_
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], str.MicrosoftWindowsStart_MenuProgramsStartup_
mov dword [esp + 8], eax
mov dword [esp], ebx
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [ebp - 0x534]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x538]
mov dword [esp + 4], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp], 0x18
lea ecx, [ebp - 0x4ac]
call sym.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___::basic_stringstream_std::_Ios_Openmode_
push esi
mov dword [esp], str.appdata
call sub.msvcrt.dll_getenv
mov dword [esp + 4], eax
lea eax, [ebp - 0x4a4]
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov dword [esp + 4], str.MicrosoftWindowsStart_MenuProgramsStartup_
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
lea ecx, [ebp - 0x550]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.compare_char_const__const__clone_.constprop.11_
test eax, eax
je 0x4a9735
lea ecx, [ebp - 0x568]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.compare_char_const__const__clone_.constprop.11_
test eax, eax
je 0x4a96c2
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [sym.imp.USER32.dll_ShowWindow]
push ecx
lea esi, [ebp - 0x11c]
push ecx
lea esi, [esi]
lea edi, [edi]
mov dword [esp + 4], 0
mov dword [esp], 2
mov dword [ebp - 0x140], 0x128
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
sub esp, 8
mov ebx, eax
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.KERNEL32.dll_Process32First
jmp 0x4a92d5
mov dword [esp + 4], str.slui.exe
mov dword [esp], esi
call dword [sym.imp.msvcrt.dll__stricmp]
test eax, eax
je 0x4a9590
mov dword [esp + 4], edi
mov dword [esp], ebx
call sub.KERNEL32.dll_Process32Next
sub esp, 8
test eax, eax
jne 0x4a92b0
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [esp], 0x258
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
jmp 0x4a9270
mov dword [esp], edx
call eax
sub esp, 4
test al, al
je 0x4a8d76
add ebx, 1
jmp 0x4a8e00
mov dword [esp], edx
call eax
sub esp, 4
test al, al
je 0x4a8d9e
add ebx, 2
jmp 0x4a8e00
mov dword [esp], edx
call eax
sub esp, 4
test al, al
je 0x4a8dc6
add ebx, 3
jmp 0x4a8e00
mov eax, dword [ebp - 0x58c]
mov dword [eax + 0x2c], edx
mov byte [ebx], 0
jmp 0x4a8e7a
mov eax, dword [ebp - 0x58c]
mov dword [eax + 0x2c], edx
mov byte [ebx], 0
jmp 0x4a8fc9
mov eax, ebx
sub eax, dword [ebp - 0x598]
cmp eax, 2
je 0x4a94b8
cmp eax, 3
je 0x4a9491
cmp eax, 1
je 0x4a94df
mov ebx, dword [ebp - 0x598]
jmp 0x4a8f4f
mov eax, dword [ebp - 0x590]
sub eax, ebx
cmp eax, 2
je 0x4a940d
cmp eax, 3
je 0x4a93e2
cmp eax, 1
je 0x4a9438
mov ebx, dword [ebp - 0x590]
jmp 0x4a8e00
sub ebx, 1
jmp 0x4a8f4f
sub ebx, 2
jmp 0x4a8f4f
sub ebx, 3
jmp 0x4a8f4f
mov ecx, dword [ebp - 0x4b4]
movsx eax, byte [ebx]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
cmp edx, method.inipp::Format_char_.is_comment_char__const
jne 0x4a9583
cmp byte [ecx + 7], al
sete al
test al, al
jne 0x4a8e00
add ebx, 1
mov ecx, dword [ebp - 0x4b4]
movsx eax, byte [ebx]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
cmp edx, method.inipp::Format_char_.is_comment_char__const
jne 0x4a9515
cmp byte [ecx + 7], al
sete al
test al, al
jne 0x4a8e00
add ebx, 1
mov ecx, dword [ebp - 0x4b4]
movsx eax, byte [ebx]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
cmp edx, method.inipp::Format_char_.is_comment_char__const
jne 0x4a9508
cmp byte [ecx + 7], al
sete al
test al, al
jne 0x4a8e00
jmp 0x4a93bf
movzx eax, byte [edx]
mov edx, dword [ebp - 0x58c]
mov byte [ebx], al
mov eax, dword [edx + 0x2c]
mov ecx, dword [edx + 0x28]
jmp 0x4a8e65
movzx eax, byte [edx]
mov edx, dword [ebp - 0x58c]
mov byte [ebx], al
mov eax, dword [edx + 0x2c]
mov ecx, dword [edx + 0x28]
jmp 0x4a8fb4
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a8f4f
sub ebx, 1
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a8f4f
sub ebx, 1
lea eax, [ebp - 0x584]
movzx esi, byte [ebx - 1]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a8f4f
jmp 0x4a939d
mov dword [esp], eax
call edx
sub esp, 4
jmp 0x4a9458
mov dword [esp], eax
call edx
sub esp, 4
jmp 0x4a942d
mov dword [esp + 4], str.Error:__config.ini__Doesnt_exist_n
mov dword [esp], 0x4b4660
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov dword [esp], str.pause
call sub.msvcrt.dll_system
mov eax, dword [ebp - 0x538]
lea edx, [ebp - 0x530]
cmp eax, edx
je 0x4a955a
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x520]
lea edx, [ebp - 0x518]
cmp eax, edx
je 0x4a9572
mov dword [esp], eax
call sym.operator_delete_void_
lea esp, [ebp - 0x10]
mov eax, 1
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
mov dword [esp], eax
call edx
push edx
jmp 0x4a9402
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [esp], str.taskkill__IM_slui.exe__F__exit
call sub.msvcrt.dll_system
mov dword [esp + 8], 3
mov dword [esp + 4], 0x4b522d
mov dword [esp], 0x4b47a0
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
lea ecx, [ebp - 0x568]
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.compare_char_const__const__clone_.constprop.11_
test eax, eax
jne 0x4a92e8
mov eax, dword [ebp - 0x580]
mov edx, dword [ebp - 0x57c]
lea ebx, [ebp - 0x304]
lea ecx, [ebp - 0x30c]
mov dword [ebp - 0x30c], ebx
add edx, eax
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.__ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE12_M_constructIN9__gnu_cxx17__normal_iteratorIPcNS0_IcS1_IcESaIcEEEEEEEv
mov eax, dword [ebp - 0x30c]
sub esp, 8
mov dword [esp + 0xc], 1
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0x14
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
sub esp, 0x10
mov eax, dword [ebp - 0x30c]
cmp eax, ebx
je 0x4a92e8
mov dword [esp], eax
call sym.operator_delete_void_
jmp 0x4a92e8
mov dword [esp + 4], str.Background_Change_Boolean_Isnt_Set_In__config.ini___n
mov dword [esp], 0x4b4660
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov eax, dword [ebp - 0x580]
lea edi, [ebp - 0x578]
cmp eax, edi
je 0x4a9677
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x568]
lea edi, [ebp - 0x560]
cmp eax, edi
je 0x4a968f
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x550]
lea edi, [ebp - 0x548]
cmp eax, edi
je 0x4a96a7
mov dword [esp], eax
call sym.operator_delete_void_
lea ecx, [ebp - 0x23c]
call fcn.00476520
mov ecx, dword [ebp - 0x5a0]
call method.inipp::Ini_char_.Ini__
jmp 0x4a9542
mov eax, dword [ebp - 0x580]
mov edx, dword [ebp - 0x57c]
lea ebx, [ebp - 0x304]
lea ecx, [ebp - 0x30c]
mov dword [ebp - 0x30c], ebx
add edx, eax
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.__ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE12_M_constructIN9__gnu_cxx17__normal_iteratorIPcNS0_IcS1_IcESaIcEEEEEEEv
push esi
mov eax, dword [ebp - 0x30c]
push esi
mov dword [esp + 0xc], 1
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0x14
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
sub esp, 0x10
mov eax, dword [ebp - 0x30c]
cmp eax, ebx
je 0x4a9246
mov dword [esp], eax
call sym.operator_delete_void_
jmp 0x4a9246
lea eax, [ebp - 0x3d0]
mov ecx, edi
mov dword [esp], eax
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push ebx
mov eax, dword [ebp - 0x140]
mov dword [esp + 4], 0
mov dword [esp], eax
mov eax, dword [ebp - 0x5a8]
call eax
mov edx, dword [ebp - 0x140]
test eax, eax
je 0x4a9d5d
lea eax, [ebp - 0x138]
cmp edx, eax
jne 0x4a9b4c
mov dword [esp], 0x18
lea esi, [ebp - 0x30c]
mov ecx, esi
call sym.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___::basic_stringstream_std::_Ios_Openmode_
push ecx
mov eax, str.copy
lea ebx, [ebp - 0x304]
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], str.copy
mov dword [esp + 8], eax
mov dword [esp], ebx
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, 0x4b51ea
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0x4b51ea
mov dword [esp + 8], eax
mov dword [esp], ebx
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [ebp - 0x51c]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x520]
mov dword [esp + 4], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov ebx, eax
mov eax, 0x4b51ea
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0x4b51ea
mov dword [esp + 8], eax
mov dword [esp], ebx
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, 0x4b51ec
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0x4b51ec
mov dword [esp + 8], eax
mov dword [esp], ebx
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, 0x4b51ea
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0x4b51ea
mov dword [esp + 8], eax
mov dword [esp], ebx
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
lea eax, [ebp - 0x4a0]
mov ecx, edi
mov dword [esp], eax
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push edx
mov eax, dword [ebp - 0x13c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x140]
mov dword [esp], ebx
mov dword [esp + 4], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 4], 0x4b51ea
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov eax, dword [ebp - 0x140]
lea edx, [ebp - 0x138]
cmp eax, edx
je 0x4a989f
mov dword [esp], eax
call sym.operator_delete_void_
mov dword [esp], 0x18
mov ecx, edi
call sym.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___::basic_stringstream_std::_Ios_Openmode_
push eax
mov eax, str.copy_config.ini
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], str.copy_config.ini
mov dword [esp + 8], eax
lea eax, [ebp - 0x138]
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, 0x4b51ec
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0x4b51ec
mov dword [esp + 8], eax
lea eax, [ebp - 0x138]
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, 0x4b51ea
call method.std::char_traits_char_.length_char_const_
mov dword [esp + 4], 0x4b51ea
mov dword [esp + 8], eax
lea eax, [ebp - 0x138]
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
lea eax, [ebp - 0x4a0]
lea ecx, [ebp - 0x4f0]
mov dword [esp], eax
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push eax
mov eax, dword [ebp - 0x4ec]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x4f0]
mov dword [esp + 4], eax
lea eax, [ebp - 0x138]
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 4], 0x4b51ea
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov eax, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4e8]
cmp eax, edx
je 0x4a9979
mov dword [esp], eax
call sym.operator_delete_void_
lea ebx, [ebp - 0x300]
lea ecx, [ebp - 0x4f0]
mov dword [esp], ebx
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push eax
mov eax, dword [ebp - 0x4ec]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x4f0]
mov dword [esp], 0x4b47a0
mov dword [esp + 4], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 4], 0x4b51fe
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov eax, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4e8]
cmp eax, edx
je 0x4a99d6
mov dword [esp], eax
call sym.operator_delete_void_
lea eax, [ebp - 0x134]
lea ecx, [ebp - 0x4f0]
mov dword [esp], eax
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push eax
mov eax, dword [ebp - 0x4ec]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x4f0]
mov dword [esp], 0x4b47a0
mov dword [esp + 4], eax
call method.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 4], 0x4b51fe
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov eax, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4e8]
cmp eax, edx
je 0x4a9a33
mov dword [esp], eax
call sym.operator_delete_void_
mov dword [esp], ebx
lea ecx, [ebp - 0x4f0]
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push eax
mov eax, dword [ebp - 0x4f0]
mov dword [esp], eax
call sub.msvcrt.dll_system
mov eax, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4e8]
cmp eax, edx
je 0x4a9a68
mov dword [esp], eax
call sym.operator_delete_void_
lea eax, [ebp - 0x134]
lea ecx, [ebp - 0x4f0]
mov dword [esp], eax
call method.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___.str___const
push eax
mov eax, dword [ebp - 0x4f0]
mov dword [esp], eax
call sub.msvcrt.dll_system
mov eax, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4e8]
cmp eax, edx
je 0x4a9aa3
mov dword [esp], eax
call sym.operator_delete_void_
mov ecx, edi
call method.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___.basic_stringstream__
mov ecx, esi
call method.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___.basic_stringstream__
jmp 0x4a9233
mov dword [esp + 4], str.Run_On_Startup_Boolean_Isnt_Set_In__config.ini___n
mov dword [esp], 0x4b4660
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
jmp 0x4a965f
mov ebx, dword [ebp - 0x590]
add ebx, dword [ebp - 0x58c]
mov eax, ebx
sub eax, esi
cmp eax, 2
je 0x4a9b15
cmp eax, 3
je 0x4a9af5
sub eax, 1
je 0x4a9b35
mov esi, ebx
jmp 0x4a895e
mov eax, dword [ecx]
movsx edx, byte [esi]
mov eax, dword [eax + 8]
cmp eax, method.inipp::Format_char_.is_assign_char__const
jne 0x4a9b74
cmp byte [ecx + 6], dl
sete al
test al, al
jne 0x4a895e
add esi, 1
mov eax, dword [ecx]
movsx edx, byte [esi]
mov eax, dword [eax + 8]
cmp eax, method.inipp::Format_char_.is_assign_char__const
jne 0x4a9b82
cmp byte [ecx + 6], dl
sete al
test al, al
jne 0x4a895e
add esi, 1
mov eax, dword [ecx]
movsx edx, byte [esi]
mov eax, dword [eax + 8]
cmp eax, method.inipp::Format_char_.is_assign_char__const
jne 0x4a9b59
cmp byte [ecx + 6], dl
sete al
jmp 0x4a9b65
mov dword [esp], edx
call sym.operator_delete_void_
jmp 0x4a977b
mov dword [esp], edx
call eax
push ecx
mov ecx, dword [ebp - 0x4b4]
test al, al
jne 0x4a895e
mov esi, ebx
jmp 0x4a895e
mov dword [esp], edx
call eax
push ecx
mov ecx, dword [ebp - 0x4b4]
jmp 0x4a9b0a
mov dword [esp], edx
call eax
mov ecx, dword [ebp - 0x4b4]
push edx
jmp 0x4a9b2a
call method.std.__throw_bad_cast__
lea eax, [ebp - 0x508]
lea ecx, [ebp - 0x4c0]
mov dword [esp], eax
call sym.std::__cxx11::list_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::allocator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______::push_back_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
push eax
jmp 0x4a85a9
cmp edx, esi
je 0x4a9b95
mov eax, dword [ebp - 0x504]
add eax, edx
cmp esi, eax
je 0x4a9b95
mov dword [esp + 4], esi
lea eax, [ebp - 0x3dc]
lea ecx, [ebp - 0x3d4]
mov dword [esp], edx
mov dword [ebp - 0x3dc], ecx
mov ecx, eax
mov dword [ebp - 0x598], eax
call fcn.00486820
push eax
add esi, 1
lea ebx, [ebp - 0x304]
lea ecx, [ebp - 0x30c]
push eax
mov eax, dword [ebp - 0x504]
add eax, dword [ebp - 0x508]
mov dword [ebp - 0x30c], ebx
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.00486820
mov eax, dword [ebp - 0x3dc]
push esi
push esi
mov edx, eax
mov dword [ebp - 0x594], eax
mov eax, dword [ebp - 0x3d8]
add edx, eax
sar eax, 2
mov dword [ebp - 0x59c], edx
mov dword [ebp - 0x5a4], eax
mov dword [ebp - 0x590], edx
jmp 0x4a9cf6
lea edx, [ebp - 0x588]
movzx esi, byte [eax - 1]
mov dword [esp], edx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9d7f
mov eax, dword [ebp - 0x590]
movzx esi, byte [eax - 2]
lea eax, [ebp - 0x588]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov eax, dword [eax + 0x18]
mov ecx, esi
movzx esi, cl
test byte [eax + esi*2], 0x20
mov eax, dword [ebp - 0x590]
je 0x4aa75d
movzx esi, byte [eax - 3]
lea eax, [ebp - 0x588]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov eax, dword [eax + 0x18]
mov ecx, esi
movzx esi, cl
test byte [eax + esi*2], 0x20
mov eax, dword [ebp - 0x590]
je 0x4aa74f
lea ecx, [ebp - 0x588]
movzx esi, byte [eax - 4]
mov dword [esp], ecx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
sub dword [ebp - 0x590], 4
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9d78
sub dword [ebp - 0x5a4], 1
mov eax, dword [ebp - 0x590]
cmp dword [ebp - 0x5a4], 0
mov dword [ebp - 0x58c], eax
jg 0x4a9c46
mov eax, dword [ebp - 0x58c]
sub eax, dword [ebp - 0x594]
cmp eax, 2
je 0x4aa654
cmp eax, 3
je 0x4aa61b
sub eax, 1
je 0x4aa685
mov eax, dword [ebp - 0x594]
mov dword [ebp - 0x58c], eax
jmp 0x4a9d7f
mov dword [esp + 4], str.Background_Image_Path_Isnt_Set_In__config.ini___n
mov dword [esp], 0x4b4660
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
jmp 0x4a965f
lea eax, [ebp - 0x138]
cmp edx, eax
je 0x4a9233
mov dword [esp], edx
call sym.operator_delete_void_
jmp 0x4a9233
sub dword [ebp - 0x58c], 3
mov esi, dword [ebp - 0x3dc]
mov edx, dword [ebp - 0x58c]
mov eax, dword [ebp - 0x3d8]
sub edx, esi
lea ecx, [esi + eax]
cmp dword [ebp - 0x59c], ecx
je 0x4a9f33
mov ecx, dword [ebp - 0x59c]
sub ecx, dword [ebp - 0x58c]
mov dword [ebp - 0x590], ecx
add edx, ecx
mov ecx, eax
sub ecx, edx
je 0x4a9df2
cmp dword [ebp - 0x590], 0
je 0x4a9df2
add edx, esi
cmp ecx, 1
je 0x4aa503
mov eax, dword [ebp - 0x58c]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._memmove
mov esi, dword [ebp - 0x3dc]
mov eax, dword [ebp - 0x3d8]
sub eax, dword [ebp - 0x590]
mov dword [ebp - 0x3d8], eax
mov byte [esi + eax], 0
mov eax, dword [ebp - 0x308]
mov edx, dword [ebp - 0x30c]
mov dword [ebp - 0x5a4], eax
sar eax, 2
mov dword [ebp - 0x59c], edx
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
jmp 0x4a9ed9
lea edx, [ebp - 0x588]
movzx esi, byte [eax]
mov dword [esp], edx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9f4e
mov eax, dword [ebp - 0x590]
movzx esi, byte [eax + 1]
lea eax, [ebp - 0x588]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov eax, dword [eax + 0x18]
mov ecx, esi
movzx esi, cl
test byte [eax + esi*2], 0x20
mov eax, dword [ebp - 0x590]
je 0x4aa47e
movzx esi, byte [eax + 2]
lea eax, [ebp - 0x588]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov eax, dword [eax + 0x18]
mov ecx, esi
movzx esi, cl
test byte [eax + esi*2], 0x20
mov eax, dword [ebp - 0x590]
je 0x4aa470
lea ecx, [ebp - 0x588]
movzx esi, byte [eax + 3]
mov dword [esp], ecx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
add dword [ebp - 0x590], 4
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9f47
sub dword [ebp - 0x594], 1
mov eax, dword [ebp - 0x590]
cmp dword [ebp - 0x594], 0
mov dword [ebp - 0x58c], eax
jg 0x4a9e2e
mov eax, dword [ebp - 0x59c]
add eax, dword [ebp - 0x5a4]
mov dword [ebp - 0x594], eax
sub eax, dword [ebp - 0x58c]
cmp eax, 2
je 0x4aa412
cmp eax, 3
je 0x4aa3da
sub eax, 1
je 0x4aa442
mov eax, dword [ebp - 0x594]
mov dword [ebp - 0x58c], eax
jmp 0x4a9f4e
mov dword [ebp - 0x3d8], edx
mov edx, dword [ebp - 0x58c]
mov byte [edx], 0
jmp 0x4a9e02
add dword [ebp - 0x58c], 3
mov edx, dword [ebp - 0x30c]
mov eax, dword [ebp - 0x308]
lea ecx, [edx + eax]
cmp dword [ebp - 0x58c], ecx
je 0x4aa026
mov esi, dword [ebp - 0x58c]
mov ecx, eax
sub esi, edx
sub ecx, esi
je 0x4a9fa6
test esi, esi
je 0x4a9fa6
cmp ecx, 1
je 0x4aa3be
mov eax, dword [ebp - 0x58c]
mov dword [esp], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
call sym._memmove
mov edx, dword [ebp - 0x30c]
mov eax, dword [ebp - 0x308]
sub eax, esi
mov dword [ebp - 0x308], eax
mov byte [edx + eax], 0
mov eax, dword [ebp - 0x4f0]
mov dword [ebp - 0x594], ebx
mov esi, dword [ebp - 0x4d0]
mov ecx, dword [ebp - 0x4ec]
mov dword [ebp - 0x590], eax
lea eax, [ebp - 0x4d4]
mov dword [ebp - 0x58c], eax
test esi, esi
je 0x4aa043
mov ebx, dword [esi + 0x14]
mov eax, ecx
cmp ebx, ecx
cmovbe eax, ebx
test eax, eax
je 0x4aa03d
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x590]
mov dword [ebp - 0x59c], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x10]
mov dword [esp], eax
call sym._memcmp
mov ecx, dword [ebp - 0x59c]
test eax, eax
je 0x4aa03d
test eax, eax
js 0x4aa038
mov dword [ebp - 0x58c], esi
mov esi, dword [esi + 8]
jmp 0x4a9fdc
mov dword [ebp - 0x308], 0
mov byte [edx], 0
jmp 0x4a9fb2
mov esi, dword [esi + 0xc]
jmp 0x4a9fdc
mov eax, ebx
sub eax, ecx
jmp 0x4aa017
mov edx, dword [ebp - 0x58c]
lea eax, [ebp - 0x4d4]
mov ebx, dword [ebp - 0x594]
cmp edx, eax
je 0x4aa20a
mov esi, dword [edx + 0x14]
cmp ecx, esi
mov eax, esi
cmovbe eax, ecx
test eax, eax
je 0x4aa201
mov dword [esp + 8], eax
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x594], ecx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x590]
mov dword [esp], eax
call sym._memcmp
mov ecx, dword [ebp - 0x594]
test eax, eax
je 0x4aa201
mov edx, dword [ebp - 0x58c]
add edx, 0x2c
mov dword [ebp - 0x594], edx
test eax, eax
js 0x4aa20a
mov eax, dword [ebp - 0x58c]
lea ecx, [eax + 0x28]
mov eax, dword [ebp - 0x598]
mov dword [esp], eax
call sym.__ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE4fi
push edx
cmp dword [ebp - 0x594], eax
je 0x4aa113
lea eax, [ebp - 0x508]
lea ecx, [ebp - 0x4c0]
mov dword [esp], eax
call sym.std::__cxx11::list_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::allocator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_______::push_back_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
push esi
mov eax, dword [ebp - 0x30c]
cmp eax, ebx
je 0x4aa0fa
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x3dc]
lea edx, [ebp - 0x3d4]
cmp eax, edx
jne 0x4a8a0a
jmp 0x4a85a9
lea eax, [ebp - 0x138]
mov edx, dword [ebp - 0x3d8]
mov ecx, edi
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x3dc]
add edx, eax
mov dword [esp], eax
mov dword [esp + 4], edx
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char__char__char__std::forward_iterator_tag___clone_.constprop.8_
push eax
mov edx, dword [ebp - 0x308]
lea ecx, [ebp - 0x128]
push eax
lea eax, [ebp - 0x120]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x30c]
add edx, eax
mov dword [esp], eax
mov dword [esp + 4], edx
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char__char__char__std::forward_iterator_tag___clone_.constprop.8_
push eax
mov esi, dword [ebp - 0x594]
mov ecx, 1
push eax
mov eax, dword [ebp - 0x58c]
mov edx, dword [eax + 0x30]
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x590], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x598], eax
mov eax, ebx
mov ebx, edx
mov edx, esi
mov esi, eax
jmp 0x4aa1a8
mov eax, dword [ebx + 0xc]
mov edx, ebx
mov ebx, eax
test ebx, ebx
je 0x4aa499
mov edx, dword [ebx + 0x14]
mov eax, dword [ebp - 0x590]
cmp eax, edx
cmova eax, edx
test eax, eax
je 0x4aa48c
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x59c], edx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x598]
mov dword [esp], eax
call sym._memcmp
mov edx, dword [ebp - 0x59c]
test eax, eax
je 0x4aa48c
shr eax, 0x1f
mov ecx, eax
test al, al
je 0x4aa1a1
mov eax, dword [ebx + 8]
jmp 0x4aa1a4
mov eax, ecx
sub eax, esi
jmp 0x4aa09c
mov dword [esp], 0x40
mov eax, dword [ebp - 0x58c]
mov dword [ebp - 0x590], eax
call sym.operator_new_unsigned_int_
lea edx, [eax + 0x18]
lea esi, [eax + 0x10]
mov dword [ebp - 0x58c], eax
mov dword [eax + 0x10], edx
mov eax, dword [ebp - 0x4f0]
mov ecx, esi
mov dword [ebp - 0x59c], edx
mov edx, dword [ebp - 0x4ec]
mov dword [esp], eax
add edx, eax
mov dword [esp + 4], edx
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char__char__char__std::forward_iterator_tag___clone_.constprop.8_
push eax
mov ecx, dword [ebp - 0x5a0]
push eax
mov eax, dword [ebp - 0x58c]
lea edx, [eax + 0x2c]
mov dword [eax + 0x2c], 0
mov dword [eax + 0x30], 0
mov dword [eax + 0x34], edx
mov dword [eax + 0x38], edx
mov dword [eax + 0x3c], 0
mov eax, dword [ebp - 0x590]
mov dword [esp + 4], esi
mov dword [esp], eax
mov dword [ebp - 0x594], edx
call sym.__ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St3mapIS5_S5_St4lessIS5_ESaIS6_IS7_S5_EEEESt10
mov dword [ebp - 0x590], eax
push ecx
push ecx
test edx, edx
je 0x4aa2ee
cmp dword [ebp - 0x590], 0
jne 0x4aa2ba
lea eax, [ebp - 0x4d4]
cmp eax, edx
jne 0x4aa39c
mov eax, 1
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x58c]
lea ecx, [ebp - 0x4d4]
movzx eax, al
mov dword [esp + 0xc], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call method.std._Rb_tree_insert_and_rebalance_bool__std::_Rb_tree_node_base__std::_Rb_tree_node_base__std::_Rb_tree_node_base_
add dword [ebp - 0x4c4], 1
jmp 0x4aa0b3
mov eax, dword [ebp - 0x58c]
mov esi, dword [eax + 0x30]
add eax, 0x28
mov dword [ebp - 0x5a4], eax
mov eax, ebx
mov ebx, esi
mov esi, eax
test ebx, ebx
je 0x4aa359
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebp - 0x5a4]
mov dword [esp], edx
call sym.__ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE8_M
push ecx
mov eax, dword [ebx + 8]
lea ecx, [ebx + 0x30]
mov edx, dword [ebx + 0x28]
mov dword [ebp - 0x594], eax
cmp edx, ecx
je 0x4aa337
mov dword [esp], edx
call sym.operator_delete_void_
mov edx, dword [ebx + 0x10]
lea ecx, [ebx + 0x18]
cmp edx, ecx
je 0x4aa349
mov dword [esp], edx
call sym.operator_delete_void_
mov dword [esp], ebx
call sym.operator_delete_void_
mov ebx, dword [ebp - 0x594]
jmp 0x4aa306
mov eax, dword [ebp - 0x58c]
mov ebx, esi
mov eax, dword [eax + 0x10]
cmp dword [ebp - 0x59c], eax
je 0x4aa374
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x58c]
mov dword [esp], eax
call sym.operator_delete_void_
mov eax, dword [ebp - 0x590]
mov dword [ebp - 0x58c], eax
add eax, 0x2c
mov dword [ebp - 0x594], eax
jmp 0x4aa0b3
lea eax, [edx + 0x10]
mov ecx, esi
mov dword [ebp - 0x590], edx
mov dword [esp], eax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.compare_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__const
mov edx, dword [ebp - 0x590]
push esi
shr eax, 0x1f
jmp 0x4aa2bf
mov eax, dword [ebp - 0x58c]
movzx eax, byte [eax]
mov byte [edx], al
mov edx, dword [ebp - 0x30c]
mov eax, dword [ebp - 0x308]
jmp 0x4a9fa6
mov eax, dword [ebp - 0x590]
lea edx, [ebp - 0x588]
movzx esi, byte [eax]
mov dword [esp], edx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9f4e
mov eax, dword [ebp - 0x590]
add eax, 1
mov dword [ebp - 0x58c], eax
mov eax, dword [ebp - 0x58c]
lea edx, [ebp - 0x588]
movzx esi, byte [eax]
mov dword [esp], edx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9f4e
add dword [ebp - 0x58c], 1
mov eax, dword [ebp - 0x58c]
movzx esi, byte [eax]
lea eax, [ebp - 0x588]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9f4e
jmp 0x4a9f25
add eax, 2
mov dword [ebp - 0x58c], eax
jmp 0x4a9f4e
add eax, 1
mov dword [ebp - 0x58c], eax
jmp 0x4a9f4e
mov eax, dword [ebp - 0x590]
sub eax, edx
jmp 0x4aa1f3
mov ebx, esi
mov esi, edx
test cl, cl
je 0x4aa614
mov eax, dword [ebp - 0x58c]
cmp dword [eax + 0x34], edx
je 0x4aa529
mov dword [esp], edx
call method.std._Rb_tree_decrement_std::_Rb_tree_node_base_
mov ecx, dword [eax + 0x14]
mov edx, dword [ebp - 0x590]
cmp edx, ecx
cmova edx, ecx
test edx, edx
je 0x4aa51f
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x598]
mov dword [ebp - 0x59c], ecx
mov dword [esp + 4], edx
mov eax, dword [eax + 0x10]
mov dword [esp], eax
call sym._memcmp
mov ecx, dword [ebp - 0x59c]
test eax, eax
je 0x4aa51f
test eax, eax
js 0x4aa529
mov ecx, edi
call method.std::pair_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____.pair__
jmp 0x4aa0e8
movzx eax, byte [edx]
mov edx, dword [ebp - 0x58c]
mov byte [edx], al
mov esi, dword [ebp - 0x3dc]
mov eax, dword [ebp - 0x3d8]
jmp 0x4a9df2
mov eax, ecx
sub eax, dword [ebp - 0x590]
jmp 0x4aa4f3
test esi, esi
je 0x4aa4f7
mov byte [ebp - 0x59c], 1
cmp dword [ebp - 0x594], esi
jne 0x4aa706
mov dword [esp], 0x40
call sym.operator_new_unsigned_int_
lea edx, [eax + 0x18]
lea ecx, [ebp - 0x138]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x140]
cmp edx, ecx
je 0x4aa6dd
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x138]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x13c]
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x13c], 0
mov byte [ebp - 0x138], 0
mov dword [eax + 0x14], edx
lea edx, [ebp - 0x138]
mov dword [ebp - 0x140], edx
lea edx, [eax + 0x30]
mov dword [eax + 0x28], edx
mov edx, dword [ebp - 0x128]
cmp edx, ecx
je 0x4aa6b4
mov dword [eax + 0x28], edx
mov edx, dword [ebp - 0x120]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x124]
mov byte [ebp - 0x120], 0
mov dword [ebp - 0x124], 0
mov dword [eax + 0x2c], edx
lea edx, [ebp - 0x120]
mov dword [ebp - 0x128], edx
mov edx, dword [ebp - 0x594]
mov dword [esp + 4], eax
movzx eax, byte [ebp - 0x59c]
mov dword [esp + 0xc], edx
mov dword [esp], eax
mov dword [esp + 8], esi
call method.std._Rb_tree_insert_and_rebalance_bool__std::_Rb_tree_node_base__std::_Rb_tree_node_base__std::_Rb_tree_node_base_
mov eax, dword [ebp - 0x58c]
add dword [eax + 0x3c], 1
jmp 0x4aa4f7
mov eax, edx
jmp 0x4aa4b8
mov eax, dword [ebp - 0x590]
lea edx, [ebp - 0x588]
movzx esi, byte [eax - 1]
mov dword [esp], edx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9d7f
mov eax, dword [ebp - 0x590]
sub eax, 1
mov dword [ebp - 0x58c], eax
mov eax, dword [ebp - 0x58c]
lea edx, [ebp - 0x588]
movzx esi, byte [eax - 1]
mov dword [esp], edx
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9d7f
sub dword [ebp - 0x58c], 1
mov eax, dword [ebp - 0x58c]
movzx esi, byte [eax - 1]
lea eax, [ebp - 0x588]
mov dword [esp], eax
call method.std::ctype_char__const_std::use_facet_std.ctype_char____std::locale_const_
mov ecx, esi
mov eax, dword [eax + 0x18]
movzx esi, cl
test byte [eax + esi*2], 0x20
je 0x4a9d7f
jmp 0x4a9d36
mov edx, dword [ebp - 0x120]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x11c]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x118]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x114]
mov dword [eax + 0x3c], edx
jmp 0x4aa5be
mov edx, dword [ebp - 0x138]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x134]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x130]
mov dword [eax + 0x20], edx
mov edx, dword [ebp - 0x12c]
mov dword [eax + 0x24], edx
jmp 0x4aa572
mov edx, dword [esi + 0x14]
mov eax, dword [ebp - 0x590]
cmp eax, edx
cmova eax, edx
test eax, eax
je 0x4aa76b
mov dword [esp + 8], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x59c], edx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x598]
mov dword [esp], eax
call sym._memcmp
mov edx, dword [ebp - 0x59c]
test eax, eax
je 0x4aa76b
shr eax, 0x1f
mov dword [ebp - 0x59c], eax
jmp 0x4aa540
sub eax, 2
mov dword [ebp - 0x58c], eax
jmp 0x4a9d7f
sub eax, 1
mov dword [ebp - 0x58c], eax
jmp 0x4a9d7f
mov eax, dword [ebp - 0x590]
sub eax, edx
jmp 0x4aa741