Function at 0x40e88d
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x170
mov eax, 0x42cc9d
call fcn.00428d88
and dword [ebp - 0x18], 0
and dword [ebp - 4], 0
xor eax, eax
lea edi, [ebp - 0x1c]
stosb byte es:[edi], al
push dword [ebp - 0x1c]
lea eax, [ebp - 0x9c]
push 0x43172c
push eax
call fcn.0040f643
lea esi, [ebp - 0x9c]
mov ecx, 0x45f654
mov dword [ebp - 4], 6
call fcn.0040f561
mov esi, eax
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [ebp - 0x1c]
lea eax, [ebp - 0x34]
call fcn.0040f6dd
mov eax, dword [esi + 0x1c]
add eax, 9
mov ecx, eax
add eax, 0xfffffff7
neg ecx
sbb ecx, ecx
and ecx, eax
mov eax, dword [ecx + 4]
xor ecx, ecx
lea edi, [ebp - 0x34]
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], eax
mov bl, 1
test bl, bl
je 0x40e932
mov edi, dword [edi + 4]
lea eax, [ebp - 0xa4]
cmp edi, dword [eax + 4]
je 0x40e932
mov bl, 1
jmp 0x40e934
xor bl, bl
mov dword [ebp - 4], 0x17
test dword [ebp - 0x18], 0x400000
je 0x40e954
and dword [ebp - 0x18], 0xffbfffff
lea ecx, [ebp - 0x74]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
and dword [ebp - 4], 0
test dword [ebp - 0x18], 0x200000
je 0x40e974
and dword [ebp - 0x18], 0xffdfffff
lea ecx, [ebp - 0x9c]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
test bl, bl
je 0x40ece1
xor bl, bl
mov dword [ebp - 4], 0x19
test dword [ebp - 0x18], 0x1000000
je 0x40e9a1
and dword [ebp - 0x18], 0xfeffffff
lea ecx, [ebp - 0xf4]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
and dword [ebp - 4], 0
test dword [ebp - 0x18], 0x800000
je 0x40e9c1
and dword [ebp - 0x18], 0xff7fffff
lea ecx, [ebp - 0xcc]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
test bl, bl
jne 0x40ec8b
xor eax, eax
lea edi, [ebp - 0x1c]
stosb byte es:[edi], al
push dword [ebp - 0x1c]
xor esi, esi
push 0x431738
lea eax, [ebp - 0x9c]
inc esi
push eax
mov dword [ebp - 0x28], esi
call fcn.0040f643
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x34]
mov eax, dword [eax + 4]
lea ebx, [eax + 0x1c]
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x9c]
mov edx, ebx
mov dword [ebp - 0x4c], ebx
call fcn.0040f7bb
lea ecx, [ebp - 0x9c]
mov edi, eax
mov byte [ebp - 4], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
cmp edi, esi
jne 0x40ec84
lea eax, [ebp - 0x24]
push eax
call fcn.0040f8d3
pop ecx
xor eax, eax
mov byte [ebp - 4], 0x1c
lea edi, [ebp - 0x44]
stosb byte es:[edi], al
push dword [ebp - 0x44]
lea eax, [ebp - 0x74]
push 0x43165c
push eax
call fcn.0040f643
lea eax, [ebp - 0x90]
push eax
lea esi, [ebp - 0x74]
mov ecx, ebx
mov byte [ebp - 4], 0x1d
call fcn.0040f79e
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x24]
push eax
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1d
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov ecx, esi
mov byte [ebp - 4], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
xor eax, eax
lea edi, [ebp - 0x3c]
stosb byte es:[edi], al
push dword [ebp - 0x3c]
lea eax, [ebp - 0x74]
push 0x431668
push eax
call fcn.0040f643
lea eax, [ebp - 0x90]
push eax
lea esi, [ebp - 0x74]
mov ecx, ebx
mov byte [ebp - 4], 0x1f
call fcn.0040f79e
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x24]
push eax
add ecx, 0x1c
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x1f
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov ecx, esi
mov byte [ebp - 4], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov eax, dword [ebp - 0x24]
add eax, 0x1c
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.0042382c
pop ecx
pop ecx
call fcn.0042389c
mov bl, al
neg bl
sbb bl, bl
lea ecx, [ebp - 0x90]
inc bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
test bl, bl
je 0x40ec74
xor eax, eax
lea edi, [ebp - 0x38]
stosb byte es:[edi], al
push dword [ebp - 0x38]
lea eax, [ebp - 0x74]
push 0x4315cc
push eax
mov dword [ebp - 0x28], 1
call fcn.0040f643
mov ebx, dword [ebp - 0x4c]
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x21
mov esi, dword [ebp - 0x24]
push eax
lea ecx, [ebp - 0x74]
mov edx, ebx
call fcn.0040f7bb
lea ecx, [ebp - 0x74]
mov dword [esi + 0x38], eax
mov byte [ebp - 4], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
xor eax, eax
lea edi, [ebp - 0x48]
stosb byte es:[edi], al
push dword [ebp - 0x48]
lea eax, [ebp - 0x74]
push 0x431754
push eax
call fcn.0040f643
lea eax, [ebp - 0x90]
push eax
lea esi, [ebp - 0x74]
mov ecx, ebx
mov byte [ebp - 4], 0x22
call fcn.0040f79e
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x24]
push eax
add ecx, 0x3c
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x22
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov ecx, esi
mov byte [ebp - 4], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
xor eax, eax
lea edi, [ebp - 0x2c]
stosb byte es:[edi], al
push dword [ebp - 0x2c]
lea eax, [ebp - 0x74]
push 0x43177c
push eax
call fcn.0040f643
lea eax, [ebp - 0x90]
push eax
lea esi, [ebp - 0x74]
mov ecx, ebx
mov byte [ebp - 4], 0x24
call fcn.0040f79e
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x24]
push eax
add ecx, 0x58
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x24
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov ecx, esi
mov byte [ebp - 4], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
xor eax, eax
lea edi, [ebp - 0x40]
stosb byte es:[edi], al
push dword [ebp - 0x40]
push 0x431784
lea eax, [ebp - 0x74]
push eax
call fcn.0040f643
lea eax, [ebp - 0x90]
push eax
lea esi, [ebp - 0x74]
mov ecx, ebx
mov byte [ebp - 4], 0x26
call fcn.0040f79e
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x24]
push eax
add ecx, 0x74
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x26
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov ecx, esi
mov byte [ebp - 4], 0x1c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x24]
push eax
call fcn.0040edf1
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x40ec84
call fcn.0040a05e
mov bl, 1
jmp 0x40e9c1
lea edi, [ebp - 0x34]
mov eax, edi
call fcn.00410398
mov dword [ebp - 4], 0x15
test dword [ebp - 0x18], 0x100000
je 0x40ecb8
and dword [ebp - 0x18], 0xffefffff
lea ecx, [ebp - 0xcc]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
and dword [ebp - 4], 0
test dword [ebp - 0x18], 0x80000
je 0x40e91c
and dword [ebp - 0x18], 0xfff7ffff
lea ecx, [ebp - 0xf4]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
jmp 0x40e91c
mov al, 1
jmp 0x40ed1f
call fcn.00428e2d
ret 4