Function at 0x453e13
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4a0404
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x970
push ebx
mov ebx, dword [0x52f800]
push esi
push edi
call fcn.0041e77e
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x28], esp
push 0x4c2488
call fcn.0041eeaf
and dword [esp + 0x99c], 0
sub esp, 0x18
mov ecx, esp
push str.UpdateTime
call fcn.0041eeaf
or dword [esp + 0x9b4], 0xffffffff
xor cl, cl
call fcn.00421d97
add esp, 0x2c
push 0x136
push ecx
push ecx
push 0x30292b
push ecx
push ecx
push 0x13a
push 0xec
push 0x184
push ecx
lea ecx, [esp + 0x5c]
call fcn.004853e0
xor eax, eax
inc eax
cmp dword [ebp + 0x10], 0
mov dword [esp + 0x984], eax
je 0x453ec3
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], 3
jmp 0x453ecd
or dword [esp + 0x70], 0xffffffff
or dword [esp + 0x6c], 0xffffffff
mov byte [ebx + 0x154], al
call fcn.0041e77e
mov ecx, dword [eax + 0xc]
call fcn.00478e60
mov byte [esp + 0x160], al
lea eax, [esp + 0x18]
push 0x16
push eax
call fcn.0041e77e
mov ecx, dword [eax + 4]
call fcn.00421cab
push eax
lea ecx, [esp + 0xd0]
call fcn.0041eed4
push 0
push 1
lea ecx, [esp + 0x20]
call fcn.0041f6b8
cmp dword [ebp + 0xc], 1
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push 0
push dword [ebx + 4]
mov dword [esp + 0x174], ebx
sete byte [esp + 0x179]
mov byte [esp + 0x7d], 1
call edi
mov ecx, dword [0x52f784]
push 5
call fcn.00498feb
push eax
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
push 0
push esi
call edi
push ecx
mov ecx, dword [0x52f784]
call fcn.00498feb
push eax
lea ecx, [esp + 0x38]
call fcn.00421fdc
push 1
push esi
mov dword [esp + 0x18], eax
call edi
push 1
push dword [ebx + 4]
call edi
mov ecx, dword [0x52f784]
push 1
push 1
push dword [ecx + 0x1c]
call fcn.00499080
mov ecx, dword [0x52f784]
mov esi, dword [ecx + 0x1c]
call fcn.00498feb
push eax
push esi
push str._d__p
call fcn.0045d884
mov esi, dword [esp + 0x1c]
add esp, 0xc
mov byte [ebx + 0x475], 0
mov byte [ebx + 0x154], 0
cmp esi, 1
jne 0x454072
call fcn.0041e77e
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [eax + 0x3c]
cmp dword [eax + 0x34], 0
je 0x453fe8
push 0
call fcn.0041e77e
mov eax, dword [eax + 0x3c]
push dword [eax + 0x34]
call esi
call fcn.00499194
call fcn.00499223
push 0
push dword [ebx + 4]
call esi
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
push 0
push 0x10
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
call fcn.0045d4e5
call fcn.0041e77e
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x2c], esp
push 0x4c24b0
call fcn.0041eeaf
sub esp, 0x18
mov byte [esp + 0x9b4], 2
mov ecx, esp
push str.UpdateSuccessTime
call fcn.0041eeaf
mov cl, 1
mov byte [esp + 0x9b4], 1
call fcn.00421d97
add esp, 0x30
call fcn.0041e77e
push 0
mov eax, dword [eax + 0xc]
mov byte [eax + 0x40], 1
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x454202
push 5
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
call fcn.0049913f
mov eax, dword [ebx]
mov ecx, ebx
push dword [ebp + 0xc]
call dword [eax + 0x38]
mov ecx, dword [ebx + 4]
call fcn.0045d1bf
call fcn.0041e77e
sub esp, 0x18
mov dword [esp + 0x2c], esp
mov ecx, esp
cmp esi, 2
jne 0x4540c5
push 0x4c24d8
call fcn.0041eeaf
sub esp, 0x18
mov byte [esp + 0x9b4], 3
mov ecx, esp
push str.UpdateCancelTime
jmp 0x4540e1
push 0x4c2500
call fcn.0041eeaf
sub esp, 0x18
mov byte [esp + 0x9b4], 4
mov ecx, esp
push str.UpdateFailureTime
call fcn.0041eeaf
xor cl, cl
mov byte [esp + 0x9b4], 1
call fcn.00421d97
add esp, 0x30
cmp byte [ebx + 0x475], 0
mov byte [ebx + 0x475], 0
je 0x4541d2
xor eax, eax
push 0x7fe
push eax
mov word [esp + 0x180], ax
lea eax, [esp + 0x182]
push eax
call fcn.00438560
add esp, 0xc
lea eax, [esp + 0x178]
push 0x400
push eax
push dword [0x52e140]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x2c], esp
push 0x4c2528
call fcn.0041eeaf
sub esp, 0x18
mov byte [esp + 0x9b4], 5
lea eax, [esp + 0x1a8]
mov ecx, esp
push eax
call fcn.0041eeaf
mov dl, 1
mov byte [esp + 0x9b4], 1
xor cl, cl
call fcn.0045d454
add esp, 0x30
call fcn.004991e8
mov al, byte [ebx + 0x20]
test al, al
je 0x45419f
push 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_EndDialog]
jmp 0x4541a8
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_DestroyWindow]
xor ebx, ebx
push ebx
call dword [sym.imp.USER32.dll_PostQuitMessage]
call fcn.0041e77e
push ebx
push ebx
push 0x46d
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x44]
push dword [eax + 0xc]
mov byte [eax + 0x2c], 1
call dword [sym.imp.USER32.dll_PostThreadMessageW]
jmp 0x454202
call fcn.0041e77e
push 0
push 0
push 0x46d
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x44]
push dword [eax + 0xc]
mov byte [eax + 0x2c], 1
call dword [sym.imp.USER32.dll_PostThreadMessageW]
push 0
push 0
push 5
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_PostMessageW]
or dword [esp + 0x984], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.0048538c
mov ecx, dword [esp + 0x97c]
xor eax, eax
pop edi
pop esi
inc eax
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc