Function at 0x408fd4
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x1ec
mov eax, 0x4ea5c5
call fcn.004e624d
mov ebx, ecx
mov dword [ebp - 0x1f8], ebx
mov esi, dword [ebp + 8]
lea ecx, [ebp - 0x40]
push str.soft_list_count
call fcn.00403020
and dword [ebp - 4], 0
lea ecx, [ebp - 0x70]
push str.recommend_config
call fcn.00403020
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x70]
mov ecx, ebx
push eax
call fcn.0042bb00
lea ecx, [ebp - 0x70]
mov ebx, eax
call fcn.004032d0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.004032d0
xor edi, edi
test ebx, ebx
jle 0x409808
mov edx, edi
lea ecx, [ebp - 0x28]
call fcn.0041f570
push eax
mov edx, str.recommend_soft_list
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x70]
call fcn.004098e5
pop ecx
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x1f4]
call fcn.00403f50
push str.need_popup
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push 0
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 6
push eax
call fcn.0042bb00
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x1f4], eax
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x28]
call fcn.00403020
push str.soft_name
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 7
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x1f0]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x40]
call fcn.004032d0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.soft_describe
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 9
call fcn.00403020
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
mov ecx, dword [ebp - 0x1f8]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x1d8]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push str.soft_icon
lea ecx, [ebp - 0x28]
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x1c0]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.0042b940
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.support_ext
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xc
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x1b4]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push 0x50ffe8
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xe
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x19c]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push 0x50fff0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x10
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x184]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.install_param
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x12
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.uninstall_reg
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x14
call fcn.00403020
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 0x1f8]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x154]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.path_reg
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x16
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x13c]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.path_key
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x18
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x124]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.shortcut_name
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1a
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x10c]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.exe_name
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1c
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0xf4]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.start_param
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1e
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0xdc]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push str.interval
lea ecx, [ebp - 0x28]
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x28]
push 0x1e
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x20
push eax
call fcn.0042bb00
lea ecx, [ebp - 0x28]
mov dword [ebp - 0xc4], eax
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.stat_show
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x21
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x22
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0xc0]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.stat_install
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x23
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x24
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0xa8]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push 0x50e6c0
lea ecx, [ebp - 0x40]
call fcn.00403020
push str.stat_success
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x25
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x26
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0042bd10
push eax
lea ecx, [ebp - 0x90]
call fcn.00403de0
lea ecx, [ebp - 0x58]
call fcn.004032d0
lea ecx, [ebp - 0x28]
call fcn.004032d0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.004032d0
push str.time_out
lea ecx, [ebp - 0x28]
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x28]
push 0x3c
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x27
push eax
call fcn.0042bb00
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x78], eax
mov byte [ebp - 4], 5
call fcn.004032d0
push str.setup_mode
lea ecx, [ebp - 0x28]
call fcn.00403020
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x28]
push 1
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x28
push eax
call fcn.0042bb00
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x74], eax
mov byte [ebp - 4], 5
call fcn.004032d0
cmp dword [ebp - 0x1e0], 0
je 0x4097e8
cmp dword [ebp - 0x1c8], 0
je 0x4097e8
mov eax, dword [ebp - 0x1c0]
cmp eax, dword [ebp - 0x1bc]
je 0x4097e8
cmp dword [ebp - 0x1a4], 0
je 0x4097e8
cmp dword [ebp - 0x18c], 0
je 0x4097e8
cmp dword [ebp - 0x174], 0
je 0x4097e8
cmp dword [ebp - 0x144], 0
je 0x4097e8
cmp dword [ebp - 0xe4], 0
je 0x4097e8
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x1f4]
push ecx
cmp dword [esi + 8], eax
je 0x4097e0
mov ecx, eax
call fcn.00409acb
add dword [esi + 4], 0x184
jmp 0x4097e8
push eax
mov ecx, esi
call fcn.0040991d
lea ecx, [ebp - 0x1f4]
call fcn.004040a0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.004032d0
inc edi
cmp edi, ebx
jl 0x409041
call fcn.004e6208
ret 4