Function at 0x406e00
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4330a8
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x446050]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push esi
push edi
mov eax, dword [0x446050]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
cmp byte [ebp + 8], 0
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, ecx
jne 0x406f31
mov eax, dword [esi + 4]
push str.Reading_configuration...
push 0x41e
push eax
mov byte [esi + 0x1c], 1
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov ecx, dword [esi + 4]
push 0x4b
push 1
push 0x40a
push 0x3eb
push ecx
call ebx
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [esi + 4]
push 5
push 0x3eb
push edx
call ebx
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push eax
call edi
mov eax, dword [esi + 4]
push 5
push 0x41e
push eax
call ebx
push eax
call edi
mov eax, dword [esi + 4]
push 0
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov edi, 0x44a8b8
call fcn.00404880
mov edi, 0x44a588
call fcn.00403210
mov edi, 0x44a168
call fcn.00403210
mov ecx, dword [esi + 4]
push 0x4364e7
push 0x41e
push ecx
mov byte [esi + 0x1c], 0
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov edx, dword [esi + 4]
push 0x4b
push 0
push 0x40a
push 0x3eb
push edx
call ebx
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esi + 4]
push 0
push 0x3eb
push eax
call ebx
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push eax
call edi
mov ecx, dword [esi + 4]
push 0
push 0x41e
push ecx
call ebx
push eax
call edi
mov eax, dword [esi + 4]
push 1
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov edi, 0x44a2c8
call fcn.00403210
mov edi, 0x44a428
call fcn.00403210
mov edi, 0x44a758
call fcn.00403210
cmp byte [0x44a588], 0
jne 0x406f65
cmp byte [0x44a168], 0
je 0x406f65
mov al, 1
jmp 0x406f67
xor al, al
movzx edx, al
mov eax, dword [esi + 4]
push edx
push 0x422
push eax
call ebx
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call edi
cmp byte [0x44a588], 0
jne 0x406f95
test byte [0x44a16c], 3
je 0x406f95
mov al, 1
jmp 0x406f97
xor al, al
mov edx, dword [esi + 4]
movzx ecx, al
push ecx
push 0x420
push edx
call ebx
push eax
call edi
cmp byte [0x44a588], 0
jne 0x406fbf
test byte [0x44a16c], 4
je 0x406fbf
mov al, 1
jmp 0x406fc1
xor al, al
mov ecx, dword [esi + 4]
movzx eax, al
push eax
push 0x421
push ecx
call ebx
push eax
call edi
test byte [0x44a16c], 2
mov eax, str.Upgrade
jne 0x406fe6
mov eax, 0x437898
mov edx, dword [esi + 4]
mov edi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
push eax
push 0x420
push edx
call edi
mov eax, dword [esi + 4]
push 0x44a26c
push 0x43b
push eax
call edi
lea ecx, [esp + 0x4c]
push ecx
call fcn.00402c20
add esp, 4
mov dword [esp + 0x78], 0
cmp dword [esp + 0x64], 0x10
mov eax, dword [esp + 0x50]
jae 0x40702c
lea eax, [esp + 0x50]
mov edx, dword [esi + 4]
push eax
push 0x437
push edx
call edi
cmp byte [0x44a168], 0
jne 0x40704e
cmp byte [0x44a588], 0
je 0x40704e
mov al, 1
jmp 0x407050
xor al, al
mov ecx, dword [esi + 4]
movzx eax, al
push eax
push 0x425
push ecx
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
cmp byte [0x44a168], 0
jne 0x40707c
test byte [0x44a58c], 3
je 0x40707c
mov al, 1
jmp 0x40707e
xor al, al
movzx edx, al
mov eax, dword [esi + 4]
push edx
push 0x423
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
cmp byte [0x44a168], 0
jne 0x4070aa
test byte [0x44a58c], 4
je 0x4070aa
mov al, 1
jmp 0x4070ac
xor al, al
mov edx, dword [esi + 4]
movzx ecx, al
push ecx
push 0x424
push edx
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
test byte [0x44a58c], 2
mov eax, str.Upgrade
jne 0x4070d5
mov eax, 0x437898
push eax
mov eax, dword [esi + 4]
push 0x423
push eax
call edi
mov ecx, dword [esi + 4]
push 0x44a68c
push 0x439
push ecx
call edi
lea edx, [esp + 0x14]
push edx
call fcn.00402ce0
add esp, 4
mov byte [esp + 0x78], 1
cmp dword [esp + 0x2c], 0x10
mov eax, dword [esp + 0x18]
jae 0x407112
lea eax, [esp + 0x18]
push eax
mov eax, dword [esi + 4]
push 0x435
push eax
call edi
movzx ecx, byte [0x44a8b8]
mov edx, dword [esi + 4]
push ecx
push 0x428
push edx
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
test byte [0x44a8bc], 3
jne 0x407145
xor al, al
jmp 0x407147
mov al, 1
mov ecx, dword [esi + 4]
movzx eax, al
push eax
push 0x426
push ecx
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov eax, dword [0x44a8bc]
shr eax, 2
and al, 1
movzx edx, al
mov eax, dword [esi + 4]
push edx
push 0x427
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
test byte [0x44a8bc], 2
mov eax, str.Upgrade
jne 0x407190
mov eax, 0x437898
mov ecx, dword [esi + 4]
push eax
push 0x426
push ecx
call edi
mov edx, dword [esi + 4]
push 0x44a978
push 0x431
push edx
call edi
lea eax, [esp + 0x30]
push eax
call fcn.00402b50
add esp, 4
mov byte [esp + 0x78], 2
cmp dword [esp + 0x48], 0x10
mov eax, dword [esp + 0x34]
jae 0x4071cd
lea eax, [esp + 0x34]
mov ecx, dword [esi + 4]
push eax
push 0x434
push ecx
call edi
mov edx, dword [esi + 4]
push 0x44a52c
push 0x43c
push edx
call edi
mov eax, dword [esi + 4]
push 0x44a85c
push 0x43a
push eax
call edi
mov ecx, dword [esi + 4]
push 0x44a3cc
push 0x432
push ecx
call edi
mov edx, dword [esi + 4]
push 0x426
push edx
call ebx
mov edi, dword [sym.imp.USER32.dll_IsWindowEnabled]
push eax
call edi
test eax, eax
jne 0x407249
mov eax, dword [esi + 4]
push 0x423
push eax
call ebx
push eax
call edi
test eax, eax
jne 0x407249
mov ecx, dword [esi + 4]
push 0x420
push ecx
call ebx
push eax
call edi
test eax, eax
jne 0x407249
xor al, al
jmp 0x40724b
mov al, 1
movzx edx, al
mov eax, dword [esi + 4]
push edx
push 0x436
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov byte [esp + 0x78], 1
mov esi, 0x10
cmp dword [esp + 0x48], esi
jb 0x40727e
mov ecx, dword [esp + 0x34]
push ecx
call fcn.0042019e
add esp, 4
mov ebx, 0xf
xor edi, edi
mov dword [esp + 0x48], ebx
mov dword [esp + 0x44], edi
mov byte [esp + 0x34], 0
mov byte [esp + 0x78], 0
cmp dword [esp + 0x2c], esi
jb 0x4072aa
mov edx, dword [esp + 0x18]
push edx
call fcn.0042019e
add esp, 4
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], edi
mov byte [esp + 0x18], 0
mov dword [esp + 0x78], 0xffffffff
cmp dword [esp + 0x64], esi
jb 0x4072d2
mov eax, dword [esp + 0x50]
push eax
call fcn.0042019e
add esp, 4
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], edi
mov byte [esp + 0x50], 0
xor eax, eax
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.0041f826
mov esp, ebp
pop ebp
ret 4