Function at 0x4105f3
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, 0x43f61f
call fcn.0043d060
sub esp, 0x668
push ebx
push edi
xor edi, edi
lea ecx, [ebp - 0x5c]
push edi
call fcn.00415c11
lea ecx, [ebp - 0x674]
mov dword [ebp - 4], edi
call fcn.00412f07
push 1
lea eax, [ebp - 0x1ec]
pop ebx
push dword [ebp + 8]
mov byte [ebp - 4], bl
push eax
call fcn.00427aa8
pop ecx
pop ecx
lea eax, [ebp - 0x5c]
push ebx
push eax
lea eax, [ebp - 0x1ec]
push eax
lea ecx, [ebp - 0x674]
mov byte [ebp - 4], 2
call fcn.00412f79
test al, al
je 0x41152b
lea ecx, [ebp - 0x5c]
call fcn.0041690f
test al, al
jne 0x41152b
push esi
mov esi, 0x4547ec
push esi
lea ecx, [ebp - 0x2c]
call fcn.00415d05
lea eax, [ebp - 0x2c]
lea ecx, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x6c]
push dword [0x4546e8]
mov byte [ebp - 4], 3
push eax
call fcn.00416c87
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 4
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 5
push dword [ecx]
push edi
mov edi, dword [ebp + 0xc]
push eax
lea ecx, [edi + 0x10]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 4
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 3
call fcn.00415f24
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.00415f24
push esi
lea ecx, [ebp - 0x2c]
call fcn.00415d05
lea eax, [ebp - 0x2c]
lea ecx, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x6c]
push dword [0x454518]
mov byte [ebp - 4], 6
push eax
call fcn.00416c87
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 8
push dword [ecx]
lea ecx, [edi + 0x20]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 7
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 6
call fcn.00415f24
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.00415f24
push esi
lea ecx, [ebp - 0x1ac]
call fcn.00415d05
mov byte [ebp - 4], 9
lea eax, [ebp - 0x1ac]
push eax
lea eax, [ebp - 0x1c]
push dword [0x454714]
lea ecx, [ebp - 0x5c]
push eax
call fcn.00416c87
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 0xb
call fcn.00415f24
lea ecx, [ebp - 0x1c]
xor edi, edi
call fcn.004168c2
test eax, eax
jbe 0x411519
lea ecx, [ebp - 0x5dc]
call fcn.0041156b
push esi
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0xc
call fcn.00415d05
lea eax, [ebp - 0x1cc]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x4c]
push dword [0x4546ec]
mov byte [ebp - 4], 0xd
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0xf
call fcn.00415f24
and dword [ebp + 8], 0
lea ecx, [ebp - 0x4c]
call fcn.004168c2
test eax, eax
jbe 0x410a89
lea ecx, [ebp - 0x4cc]
call fcn.0041168c
push esi
lea ecx, [ebp - 0x20c]
mov byte [ebp - 4], 0x10
call fcn.00415d05
lea eax, [ebp - 0x20c]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x44c]
push dword [0x454724]
mov byte [ebp - 4], 0x11
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0x12
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x13
push dword [ecx]
lea ecx, [ebp - 0x4cc]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0x12
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x44c]
mov byte [ebp - 4], 0x11
call fcn.00415f24
lea ecx, [ebp - 0x20c]
mov byte [ebp - 4], 0x10
call fcn.00415f24
push esi
lea ecx, [ebp - 0xac]
call fcn.00415d05
lea eax, [ebp - 0xac]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x47c]
push dword [0x4546c0]
mov byte [ebp - 4], 0x14
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x15
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x16
push dword [ecx]
lea ecx, [ebp - 0x4bc]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x15
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x14
call fcn.00415f24
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xac]
call fcn.00415f24
push esi
lea ecx, [ebp - 0x1bc]
call fcn.00415d05
lea eax, [ebp - 0x1bc]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x39c]
push dword [0x4546c4]
mov byte [ebp - 4], 0x17
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x18
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x19
push dword [ecx]
lea ecx, [ebp - 0x4ac]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x18
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x39c]
mov byte [ebp - 4], 0x17
call fcn.00415f24
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x10
call fcn.00415f24
push esi
lea ecx, [ebp - 0xcc]
call fcn.00415d05
lea eax, [ebp - 0xcc]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x21c]
push dword [0x45471c]
mov byte [ebp - 4], 0x1a
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0x1b
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x1c
push dword [ecx]
lea ecx, [ebp - 0x49c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0x1b
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x1a
call fcn.00415f24
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0x10
call fcn.00415f24
lea eax, [ebp - 0x4cc]
push eax
lea ecx, [ebp - 0x5dc]
call fcn.0040ac39
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 4], 0xf
call fcn.0040c35a
inc dword [ebp + 8]
lea ecx, [ebp - 0x4c]
call fcn.004168c2
cmp dword [ebp + 8], eax
jb 0x4107fd
push esi
lea ecx, [ebp - 0x16c]
call fcn.00415d05
lea eax, [ebp - 0x16c]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x3bc]
push dword [0x454718]
mov byte [ebp - 4], 0x1d
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0x1e
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x1f
push dword [ecx]
lea ecx, [ebp - 0x5cc]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0x1e
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x3bc]
mov byte [ebp - 4], 0x1d
call fcn.00415f24
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0xec]
call fcn.00415d05
lea eax, [ebp - 0xec]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x46c]
push dword [0x454720]
mov byte [ebp - 4], 0x20
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x21
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x22
push dword [ecx]
lea ecx, [ebp - 0x5bc]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x2bc]
mov byte [ebp - 4], 0x21
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x46c]
mov byte [ebp - 4], 0x20
call fcn.00415f24
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x1fc]
call fcn.00415d05
lea eax, [ebp - 0x1fc]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x3dc]
push dword [0x4546d0]
mov byte [ebp - 4], 0x23
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 4], 0x24
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x25
push dword [ecx]
lea ecx, [ebp - 0x5ac]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 4], 0x24
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x3dc]
mov byte [ebp - 4], 0x23
call fcn.00415f24
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x10c]
call fcn.00415d05
lea eax, [ebp - 0x10c]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x45c]
push dword [0x454710]
mov byte [ebp - 4], 0x26
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0x27
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x28
push dword [ecx]
lea ecx, [ebp - 0x59c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0x27
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x45c]
mov byte [ebp - 4], 0x26
call fcn.00415f24
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x8c]
call fcn.00415d05
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0x3fc]
push dword [0x4546f0]
lea ecx, [ebp - 0x1c]
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x2a
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x2b
push dword [ecx]
lea ecx, [ebp - 0x58c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x2a
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x3fc]
mov byte [ebp - 4], 0x29
call fcn.00415f24
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x12c]
call fcn.00415d05
lea eax, [ebp - 0x12c]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x48c]
push dword [0x4546fc]
mov byte [ebp - 4], 0x2c
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x33c]
mov byte [ebp - 4], 0x2d
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x2e
push dword [ecx]
lea ecx, [ebp - 0x57c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x33c]
mov byte [ebp - 4], 0x2d
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x48c]
mov byte [ebp - 4], 0x2c
call fcn.00415f24
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x1dc]
call fcn.00415d05
lea eax, [ebp - 0x1dc]
mov byte [ebp - 4], 0x2f
push eax
lea eax, [ebp - 0x41c]
push dword [0x4546e0]
push eax
push edi
lea ecx, [ebp - 0x1c]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0x30
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x31
push dword [ecx]
lea ecx, [ebp - 0x56c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0x30
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x41c]
mov byte [ebp - 4], 0x2f
call fcn.00415f24
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x14c]
call fcn.00415d05
lea eax, [ebp - 0x14c]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x22c]
push dword [0x4546cc]
mov byte [ebp - 4], 0x32
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x33
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x34
push dword [ecx]
lea ecx, [ebp - 0x55c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x33
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x32
call fcn.00415f24
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0x9c]
call fcn.00415d05
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x35
push eax
lea eax, [ebp - 0x26c]
push dword [0x4546f8]
lea ecx, [ebp - 0x1c]
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0x36
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x37
push dword [ecx]
lea ecx, [ebp - 0x54c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0x36
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x26c]
mov byte [ebp - 4], 0x35
call fcn.00415f24
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0xbc]
call fcn.00415d05
lea eax, [ebp - 0xbc]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x2ac]
push dword [0x454708]
mov byte [ebp - 4], 0x38
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x39
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x3a
push dword [ecx]
lea ecx, [ebp - 0x53c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 0x39
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0x38
call fcn.00415f24
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0xf
call fcn.00415f24
push esi
lea ecx, [ebp - 0xdc]
call fcn.00415d05
lea eax, [ebp - 0xdc]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x2c]
push dword [0x4546dc]
mov byte [ebp - 4], 0x3b
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x3d
call fcn.00415f24
and dword [ebp + 8], 0
lea ecx, [ebp - 0x2c]
call fcn.004168c2
test eax, eax
jbe 0x4111f8
lea ecx, [ebp - 0x19c]
call fcn.004116f5
push esi
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x3e
call fcn.00415d05
lea eax, [ebp - 0xfc]
lea ecx, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x2ec]
push dword [0x454700]
mov byte [ebp - 4], 0x3f
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 4], 0x40
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x41
push dword [ecx]
lea ecx, [ebp - 0x19c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 4], 0x40
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 0x3f
call fcn.00415f24
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x3e
call fcn.00415f24
push esi
lea ecx, [ebp - 0x11c]
call fcn.00415d05
lea eax, [ebp - 0x11c]
lea ecx, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x32c]
push dword [0x4546e4]
mov byte [ebp - 4], 0x42
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x30c]
mov byte [ebp - 4], 0x43
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x44
push dword [ecx]
lea ecx, [ebp - 0x18c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x30c]
mov byte [ebp - 4], 0x43
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x32c]
mov byte [ebp - 4], 0x42
call fcn.00415f24
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x11c]
call fcn.00415f24
lea eax, [ebp - 0x19c]
lea ecx, [ebp - 0x52c]
push eax
call fcn.00412470
push ebx
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 0x45
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push ebx
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 0x3d
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
inc dword [ebp + 8]
lea ecx, [ebp - 0x2c]
call fcn.004168c2
cmp dword [ebp + 8], eax
jb 0x41107d
push esi
lea ecx, [ebp - 0x13c]
call fcn.00415d05
lea eax, [ebp - 0x13c]
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x3c]
push dword [0x454704]
mov byte [ebp - 4], 0x46
push eax
push edi
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0x48
call fcn.00415f24
and dword [ebp + 8], 0
lea ecx, [ebp - 0x3c]
call fcn.004168c2
test eax, eax
jbe 0x4114c6
lea ecx, [ebp - 0x50c]
call fcn.00411737
push esi
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x49
call fcn.00415d05
lea eax, [ebp - 0x15c]
lea ecx, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x36c]
push dword [0x4546d8]
mov byte [ebp - 4], 0x4a
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x4b
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x4c
push dword [ecx]
lea ecx, [ebp - 0x50c]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x4b
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x36c]
mov byte [ebp - 4], 0x4a
call fcn.00415f24
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x49
call fcn.00415f24
push esi
lea ecx, [ebp - 0x17c]
call fcn.00415d05
lea eax, [ebp - 0x17c]
lea ecx, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x3ac]
push dword [0x4546d4]
mov byte [ebp - 4], 0x4d
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x38c]
mov byte [ebp - 4], 0x4e
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x4f
push dword [ecx]
lea ecx, [ebp - 0x4ec]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x38c]
mov byte [ebp - 4], 0x4e
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x3ac]
mov byte [ebp - 4], 0x4d
call fcn.00415f24
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x17c]
call fcn.00415f24
push esi
lea ecx, [ebp - 0x6c]
call fcn.00415d05
lea eax, [ebp - 0x6c]
lea ecx, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x3ec]
push dword [0x45470c]
mov byte [ebp - 4], 0x50
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 0x51
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x52
push dword [ecx]
lea ecx, [ebp - 0x4fc]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 0x51
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 4], 0x50
call fcn.00415f24
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x49
call fcn.00415f24
push esi
lea ecx, [ebp - 0x7c]
call fcn.00415d05
lea eax, [ebp - 0x7c]
lea ecx, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x42c]
push dword [0x4546c8]
mov byte [ebp - 4], 0x53
push eax
push dword [ebp + 8]
call fcn.00416941
mov ecx, eax
call fcn.00416c87
lea ecx, [ebp - 0x40c]
mov byte [ebp - 4], 0x54
push ecx
mov ecx, eax
call fcn.0041605d
mov ecx, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov byte [ebp - 4], 0x55
push dword [ecx]
lea ecx, [ebp - 0x4dc]
push 0
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___unsigned_int__unsigned_int_]
push ebx
lea ecx, [ebp - 0x40c]
mov byte [ebp - 4], 0x54
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
lea ecx, [ebp - 0x42c]
mov byte [ebp - 4], 0x53
call fcn.00415f24
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x49
call fcn.00415f24
lea eax, [ebp - 0x50c]
push eax
lea ecx, [ebp - 0x51c]
call fcn.00412484
lea ecx, [ebp - 0x50c]
mov byte [ebp - 4], 0x48
call fcn.0040c3f1
inc dword [ebp + 8]
lea ecx, [ebp - 0x3c]
call fcn.004168c2
cmp dword [ebp + 8], eax
jb 0x41124c
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x5dc]
push eax
call fcn.00412498
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x3d
call fcn.00415f24
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xf
call fcn.00415f24
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xc
call fcn.00415f24
lea ecx, [ebp - 0x5dc]
mov byte [ebp - 4], 0xb
call fcn.004071a9
lea ecx, [ebp - 0x1c]
inc edi
call fcn.004168c2
cmp edi, eax
jb 0x41079a
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 2
call fcn.00415f24
mov byte [ebp + 0xf], bl
pop esi
jmp 0x41152f
and byte [ebp + 0xf], 0
push ebx
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], bl
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
and byte [ebp - 4], 0
lea ecx, [ebp - 0x674]
call fcn.0040fb5e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5c]
call fcn.00415f24
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp + 0xf]
pop edi
pop ebx
mov dword fs:[0], ecx
leave
ret