Function at 0x40259d
Capabilities:
Check if file exists
Delete file
Get common file path
Get file attributes
Get graphical window text
Set file attributes

Disassembly:
mov eax, 0x4431d6
call fcn.0043680c
sub esp, 0xdc8
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [ebp - 0xdd4]
call fcn.00415b4e
push 1
xor ebx, ebx
pop edi
mov dword [ebp - 4], ebx
cmp dword [esi + 0x1100], edi
jne 0x4025ed
mov ecx, esi
call fcn.0040475d
test eax, eax
jne 0x4025e2
mov esi, 0x283c
jmp 0x403552
push ebx
push ebx
push ebx
push edi
mov ecx, esi
call fcn.004048cf
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.00404bd8
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.00406a8a
push eax
lea ecx, [ebp - 0x364]
call fcn.00406f0a
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00406733
cmp dword [esi + 0xbc0], edi
jne 0x402681
mov eax, dword [esi + 0x10ec]
push 5
cdq
pop ecx
mov dword [ebp - 0x14], ebx
idiv ecx
mov edi, eax
cmp edi, ebx
jle 0x40267a
push 1
lea ecx, [ebp - 0x364]
call fcn.00406f36
test eax, eax
je 0x40266c
push str._Autoup__app_is_already_running.._Try_again..
push 1
call fcn.00408893
pop ecx
pop ecx
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x402638
jmp 0x40267a
push str._Autoup__Success_to_create_apps_mutex.
push 1
call fcn.00408893
pop ecx
pop ecx
cmp dword [ebp - 0x14], edi
jne 0x4026c5
jmp 0x402691
push edi
lea ecx, [ebp - 0x364]
call fcn.00406f36
test eax, eax
je 0x4026c5
cmp dword [esi + 0xbc4], ebx
mov edi, 0x2906
jne 0x4026b0
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push edi
mov ecx, esi
call fcn.0040390c
push str._Autoup__app_is_already_running.._close..
push 1
call fcn.00408893
pop ecx
pop ecx
mov esi, edi
jmp 0x403543
lea edi, [esi + 0xa9c]
push 0x104
mov ecx, edi
call fcn.0040679b
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0xa94]
mov ebx, str.AUTmp
mov eax, dword [eax - 4]
cmp eax, 0xc4
jge 0x40280e
lea ecx, [esi + 0xa94]
call fcn.00406a8a
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov ecx, edi
call fcn.004067f3
push str.tempAUTmp
mov ecx, edi
call fcn.00406cdd
lea eax, [esi + 0xfd8]
push eax
lea eax, [ebp - 0x10]
push edi
push eax
call fcn.00406ad3
add esp, 0xc
push eax
mov ecx, edi
mov byte [ebp - 4], 4
call fcn.00406a8d
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.00406733
mov ecx, edi
call fcn.00406a8a
push eax
call fcn.0040599e
pop ecx
mov ecx, edi
call fcn.00406a8a
push eax
call fcn.0040587f
test eax, eax
pop ecx
jne 0x4027e3
lea ecx, [esi + 0xa94]
call fcn.00406a8a
push eax
push 0
push 0x445410
lea eax, [ebp - 0x10]
push 0x80000002
push eax
call fcn.0040649a
add esp, 0x14
push eax
mov ecx, edi
mov byte [ebp - 4], 6
call fcn.00406a8d
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.00406733
mov ecx, edi
call fcn.004067f3
push ebx
mov ecx, edi
call fcn.00406cdd
mov ecx, edi
call fcn.00406a8a
push eax
call fcn.0040599e
pop ecx
mov ecx, edi
call fcn.00406a8a
push eax
call fcn.0040587f
test eax, eax
pop ecx
jne 0x4027e3
push dword [edi]
push str._AutoUp__InitInstance__Create_Directory_Failed_:__s
push 1
call fcn.00408bf4
add esp, 0xc
mov ecx, esi
call fcn.00403d78
lea eax, [esi + 0xbd4]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.00415c04
test eax, eax
jne 0x40288a
mov esi, 0x283c
jmp 0x403543
push dword [ebp - 0x10]
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
jne 0x402830
push str._AutoUp__InitInstance__Create_TempDirectory_Failed
push 1
call fcn.00408bf4
pop ecx
pop ecx
jmp 0x402804
mov ecx, edi
call fcn.004067f3
push ebx
mov ecx, edi
call fcn.00406cdd
lea eax, [esi + 0xfd8]
push eax
lea eax, [ebp - 0x10]
push edi
push eax
call fcn.00406ad3
add esp, 0xc
push eax
mov ecx, edi
mov byte [ebp - 4], 5
call fcn.00406a8d
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.00406733
mov ecx, edi
call fcn.00406a8a
push eax
mov ecx, esi
call fcn.00404e2a
cmp eax, 1
jne 0x402747
push str._AutoUp__Update__HasJunctionPath_TRUE
jmp 0x402825
push dword [esi + 0x10e4]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ebx, [esi + 0x10e4]
call edi
test eax, eax
jle 0x4028b7
push dword [ebx]
lea ecx, [ebp - 0xdd4]
call fcn.0041b4f3
test eax, eax
je 0x402804
lea eax, [ebp - 0x10]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.00416574
push 0x103
mov ecx, eax
mov byte [ebp - 4], 7
lea ebx, [esi + 0xaa4]
call fcn.00406a8a
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.00406733
push ebx
call edi
test eax, eax
jle 0x402904
push ebx
call edi
cmp byte [eax + esi + 0xaa3], 0x5c
je 0x402917
push ebx
call edi
test eax, eax
jle 0x402923
push 0x44d1ec
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.MFC42.DLL
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x44d22c
push 1
call fcn.00408893
pop ecx
pop ecx
push str.____________________________autoup.exe_Start
push 1
call fcn.00408893
pop ecx
pop ecx
push 0x44d22c
push 1
call fcn.00408893
pop ecx
pop ecx
mov ecx, esi
call fcn.0040357a
lea ecx, [ebp - 0xdd4]
call fcn.004167a1
cmp eax, 0xffff
jne 0x4029a0
lea eax, [ebp - 0x10]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.004167d9
push 0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 8
call fcn.00406a8a
push eax
push 0
push 0x2845
push 1
mov ecx, esi
call fcn.004036cd
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
jmp 0x402aaa
cmp eax, 1
jne 0x4029df
lea eax, [ebp - 0x10]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.004167d9
push 0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 9
call fcn.00406a8a
push eax
push 0
push 0x2844
push 1
mov ecx, esi
call fcn.004036cd
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
jmp 0x402aaa
mov ecx, esi
call fcn.004044d9
test eax, eax
jne 0x402a01
push eax
push eax
mov edi, 0x2907
push eax
push edi
push 1
mov ecx, esi
call fcn.004036cd
jmp 0x4026be
push ebx
call edi
test eax, eax
jle 0x402a25
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
push str._Autoup__Update__m_hMFC42_Handle_is__d
push 1
mov dword [esi + 0xba8], eax
call fcn.00408893
add esp, 0xc
cmp dword [esi + 0xbc0], 0
jne 0x402ae8
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 1
push 1
push 0xff
push 0x32
call edi
push eax
push 0x31
call edi
push eax
call dword [sym.imp.COMCTL32.dll_ImageList_Create]
mov edi, eax
lea eax, [ebp - 0x14]
push edi
push eax
lea ecx, [ebp - 0xdd4]
call fcn.004165bd
push edi
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xa
call fcn.00406a8a
push eax
lea ecx, [ebp - 0x48]
call fcn.0040764f
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xb
call fcn.004076a5
test edi, edi
mov ebx, eax
je 0x402a92
push edi
call dword [sym.imp.COMCTL32.dll_ImageList_Destroy]
cmp ebx, 1
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x44]
je 0x402ad7
call fcn.00406733
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x14]
call fcn.00406733
and byte [ebp - 4], 0
lea ecx, [ebp - 0x364]
call fcn.00406f31
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xdd4]
call fcn.00415b9b
mov eax, 0x283c
jmp 0x403563
call fcn.00406733
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.00406733
cmp dword [esi + 0xbc4], 0
jne 0x402b3a
lea edi, [esi + 0xa78]
mov ecx, edi
call fcn.0040cd2d
mov ebx, eax
test ebx, ebx
jne 0x402b1f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._Autoup__Update__Dialog_Create_Error__d
push 1
call fcn.00408893
add esp, 0xc
jmp 0x402804
push 5
mov ecx, edi
call fcn.0040cd4a
push 0x271a
mov ecx, edi
mov dword [esi + 0xa74], ebx
call fcn.0040ce07
xor ebx, ebx
lea ecx, [ebp - 0xdd4]
push ebx
call fcn.00416896
mov eax, dword [esi + 0xba8]
lea edi, [esi + 0xba8]
cmp eax, ebx
je 0x402b6f
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push str._Autoup__Update__m_hMFC42_handle_release_is_OK
push 1
mov dword [edi], ebx
call fcn.00408893
pop ecx
pop ecx
lea ecx, [ebp - 0xdd4]
call fcn.004168a8
test eax, eax
je 0x402804
and byte [ebp - 0x574], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x573]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x20]
stosb byte es:[edi], al
call fcn.004066b3
lea eax, [ebp - 0x574]
push 0x104
push eax
mov byte [ebp - 4], 0xc
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea eax, [ebp - 0x574]
lea ecx, [ebp - 0x20]
push eax
call fcn.00406ab0
lea eax, [ebp - 0x20]
push str.autoup.ini
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00406bba
add esp, 0xc
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xd
call fcn.00406a8d
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xc
call fcn.00406733
lea ecx, [ebp - 0x20]
call fcn.00406a8a
push eax
mov ecx, esi
call fcn.00402376
cmp eax, ebx
jne 0x402c4a
lea ecx, [ebp - 0x20]
call fcn.00406a8a
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x402c39
push str._Autoup__Update__autoup.ini_is_deleted_forcely_
push 1
call fcn.00408bf4
pop ecx
pop ecx
lea ecx, [ebp - 0x20]
call fcn.00406a8a
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str._Autoup__Update__Before_not_pending_state
push 1
call fcn.00408bf4
jmp 0x402d21
cmp dword [esi + 0x828], ebx
jne 0x402d15
cmp eax, 2
je 0x402d0e
mov cx, word [esi + 0xbd4]
and byte [ebp - 0x16], 0
lea eax, [esi + 0xbd4]
cmp cx, bx
mov byte [ebp - 0x18], 3
mov byte [ebp - 0x17], 0xe2
je 0x402ca6
mov edi, ecx
xor ecx, ecx
mov dl, 3
movzx dx, dl
cmp dx, di
je 0x402c95
mov dl, byte [ebp + ecx - 0x17]
inc ecx
test dl, dl
jne 0x402c83
cmp byte [ebp + ecx - 0x18], 0
je 0x402cad
inc eax
inc eax
mov di, word [eax]
cmp di, bx
jne 0x402c7f
push str._Autoup__Update__As_former_times_pending_state__but_update_product_is_only_ASP__and_It_doesnt_change_Update_Type
jmp 0x402d1a
cmp word [esi + 0xfd4], 4
jne 0x402cc1
mov esi, 0x27db
jmp 0x403537
push str._Autoup__Update__Because_former_times_pending_state__Update_Type_change_only_engine
push 1
pop ebx
push ebx
call fcn.00408893
pop ecx
mov edi, str._Autoup__Update__Update_Type_:_0x_x
pop ecx
mov word [esi + 0xfd4], 6
push 6
push edi
push ebx
call fcn.00408893
and word [esi + 0xfd4], 0xfffb
add esp, 0xc
movzx eax, word [esi + 0xfd4]
push eax
push edi
push ebx
call fcn.00408893
add esp, 0xc
mov dword [esi + 0xbc8], ebx
jmp 0x402d23
push str._Autoup__Update__Another_Product_is_Pending
jmp 0x402d1a
push str._Autoup__Update__declared_IgnoreRebootCopy
push 1
call fcn.00408893
pop ecx
pop ecx
xor eax, eax
mov ecx, esi
push eax
push eax
push eax
push 2
call fcn.004048cf
mov ecx, esi
call fcn.00404608
test eax, eax
jne 0x402d46
mov esi, 0x283c
jmp 0x403537
mov ax, word [esi + 0xfd4]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.004168e6
test eax, eax
je 0x402d3c
lea ebx, [esi + 0xa78]
push 0x32
mov ecx, ebx
call fcn.0040ced5
push 0x271b
mov ecx, ebx
call fcn.0040ce07
push dword [esi + 0xc]
mov ecx, ebx
push 0x14a
call fcn.0040cf15
lea ecx, [ebp - 0xdd4]
call fcn.0041b997
test eax, eax
jne 0x402da4
push str._Autoup__CopyEssentialFilePD__CopyEssentialFilePD_is_fail..._but_update_continue
push 1
call fcn.00408bf4
pop ecx
pop ecx
lea ecx, [ebp - 0xdd4]
call fcn.00416944
xor edi, edi
cmp dword [esi + 0xc], edi
jne 0x402ecd
cmp dword [esi + 0xbbc], 1
je 0x402dcc
cmp dword [esi + 0xbc8], 1
jne 0x402e24
and byte [ebp - 0x14c], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x14b]
push 0x104
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x14c]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetWindowTextA]
lea eax, [ebp - 0x14c]
push eax
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x402e22
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 1
push str._Autoup__Update__SetWindowPos_is__d___GetLastError___d_
push 1
call fcn.00408893
add esp, 0x10
xor edi, edi
cmp dword [esi + 0xbbc], edi
je 0x402e43
push 1
push edi
lea ecx, [ebp - 0xdd4]
call fcn.00417f84
push 0x28a
mov ecx, ebx
jmp 0x402e5f
push edi
push edi
lea ecx, [ebp - 0xdd4]
call fcn.00417f84
cmp dword [esi + 0xbc8], edi
push 0x28a
mov ecx, ebx
je 0x402e7d
call fcn.0040ced5
push 0x3e8
mov ecx, ebx
call fcn.0040ced5
push 0xa
push edi
push edi
push 0x27db
push 2
jmp 0x402e98
call fcn.0040ced5
push 0x3e8
mov ecx, ebx
call fcn.0040ced5
push 0xa
push edi
push edi
push 0x27dc
push edi
mov ecx, esi
call fcn.004036cd
lea ecx, [esi + 0xbd0]
call fcn.00406a8a
push eax
mov ecx, esi
call fcn.00403bba
lea ecx, [ebp - 0xdd4]
call fcn.00417fd8
mov eax, dword [0x46487c]
mov esi, dword [eax + 0x1104]
jmp 0x403537
lea eax, [esi + 0xbd4]
mov dword [ebp - 0x10], edi
push eax
mov dword [ebp - 0x18], edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jbe 0x402f6b
lea eax, [esi + 0x1c]
mov dword [ebp - 0x24], eax
lea eax, [esi + 0xbd4]
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 0xc]
dec eax
cmp eax, 0xffffffff
mov dword [ebp - 0x14], eax
jae 0x402f52
push dword [ebp - 0x14]
lea ecx, [esi + 4]
call fcn.00407398
mov ecx, dword [ebp - 0x1c]
mov cx, word [ecx]
cmp cx, word [eax + 0x1e0]
je 0x402f28
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffff
jb 0x402f03
jmp 0x402f52
mov ecx, dword [ebp - 0x24]
mov ax, word [eax + 0x1e0]
mov word [ecx], ax
movzx eax, ax
push eax
push dword [ebp - 0x18]
push str._Autoup__Update__m_szUpdatingPd__d__:_0x_04x
push 1
call fcn.00408893
add esp, 0x10
inc dword [ebp - 0x18]
add dword [ebp - 0x24], 2
inc dword [ebp - 0x10]
add dword [ebp - 0x1c], 2
lea eax, [esi + 0xbd4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp dword [ebp - 0x10], eax
jb 0x402ef7
push 0x271c
mov ecx, ebx
call fcn.0040ce07
push dword [esi + 0xc]
mov ecx, ebx
push 0x262
call fcn.0040cf15
lea ecx, [ebp - 0xdd4]
call fcn.004170fc
test eax, eax
jne 0x402f9f
mov esi, 0x283f
jmp 0x403537
lea ecx, [ebp - 0xdd4]
call fcn.0041abc4
push 0x271d
mov ecx, ebx
call fcn.0040ce07
lea ecx, [ebp - 0xdd4]
call fcn.0041732c
test eax, eax
jne 0x403006
cmp dword [esi + 0x10f0], 1
jne 0x402fe6
push str._Autoup__Update__failed_to_unload_process_because_of_medic
push 1
call fcn.00408bf4
pop ecx
mov esi, 0x2908
pop ecx
jmp 0x403537
push edi
push edi
push edi
mov edi, 0x2847
push edi
push 1
mov ecx, esi
call fcn.004036cd
mov ecx, esi
call fcn.0040439f
mov esi, edi
jmp 0x403537
push 0x294
mov ecx, ebx
call fcn.0040ced5
push dword [esi + 0xc]
mov ecx, ebx
push 0x384
call fcn.0040cf15
lea eax, [ebp - 0x258]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.004173ca
cmp eax, edi
mov dword [ebp - 0x10], eax
jne 0x403052
push 0x2720
mov ecx, ebx
call fcn.0040ce07
push edi
lea ecx, [ebp - 0xdd4]
call fcn.00417e78
push 0x2721
mov ecx, ebx
call fcn.0040ce07
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0xdd4]
push eax
push dword [esi + 0xbbc]
push dword [ebp - 0x10]
call fcn.00417bbd
mov ecx, esi
mov dword [ebp - 0x1c], eax
call fcn.0040439f
push 0x3b6
mov ecx, ebx
call fcn.0040ced5
cmp dword [ebp - 0x1c], edi
je 0x4034bf
cmp dword [ebp - 0x10], edi
je 0x4034c4
mov ax, word [esi + 0xfd4]
lea ecx, [ebp - 0xdd4]
push eax
call fcn.00417f47
push 0x3de
mov ecx, ebx
call fcn.0040ced5
cmp dword [esi + 0xbbc], 1
je 0x4030d2
cmp dword [esi + 0xbc8], 1
jne 0x4030e7
mov eax, dword [ebx]
cmp eax, edi
je 0x4030e7
push 3
push edi
push edi
push edi
push edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x27d8
mov ecx, ebx
call fcn.0040ce07
push 0x3e8
mov ecx, ebx
call fcn.0040ced5
cmp dword [esi + 0xbbc], edi
je 0x4033d0
push 1
push 1
lea ecx, [ebp - 0xdd4]
call fcn.00417f84
mov ebx, dword [esi + 0x18]
cmp ebx, edi
je 0x4033ff
lea ecx, [ebp - 0x18]
call fcn.004066b3
test bl, 1
mov byte [ebp - 4], 0xe
je 0x403162
push dword [esi + 0xa68]
lea ecx, [ebp - 0x10]
push 0x2774
call fcn.00406716
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xf
call fcn.00406c4e
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call fcn.00406733
test bl, 2
je 0x4031a8
mov eax, dword [ebp - 0x18]
cmp dword [eax - 4], edi
je 0x40317c
push 0x44d4f8
lea ecx, [ebp - 0x18]
call fcn.00406c71
push dword [esi + 0xa68]
lea ecx, [ebp - 0x10]
push 0x2775
call fcn.00406716
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x10
call fcn.00406c4e
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call fcn.00406733
test bl, 4
je 0x4031ee
mov eax, dword [ebp - 0x18]
cmp dword [eax - 4], edi
je 0x4031c2
push 0x44d4f8
lea ecx, [ebp - 0x18]
call fcn.00406c71
push dword [esi + 0xa68]
lea ecx, [ebp - 0x10]
push 0x2776
call fcn.00406716
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x11
call fcn.00406c4e
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call fcn.00406733
test bl, 8
je 0x403234
mov eax, dword [ebp - 0x18]
cmp dword [eax - 4], edi
je 0x403208
push 0x44d4f8
lea ecx, [ebp - 0x18]
call fcn.00406c71
push dword [esi + 0xa68]
lea ecx, [ebp - 0x10]
push 0x2777
call fcn.00406716
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x12
call fcn.00406c4e
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call fcn.00406733
push 0xa
lea ecx, [ebp - 0x18]
call fcn.00406a8a
push eax
push 0
push 0x27da
push 2
mov ecx, esi
call fcn.004036cd
and byte [ebp - 0x14c], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x14b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.0040cf56
lea ecx, [ebp - 0x14]
mov edi, eax
call fcn.004066b3
mov ecx, edi
mov byte [ebp - 4], 0x13
call fcn.0040d066
test eax, eax
lea eax, [ebp - 0x14c]
push 0x104
push eax
je 0x403299
mov ecx, edi
call fcn.0040d163
jmp 0x40329f
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test edi, edi
je 0x4032ab
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
lea eax, [ebp - 0x14c]
lea ecx, [ebp - 0x14]
push eax
call fcn.00406ab0
lea eax, [ebp - 0x14]
push str.autoup.ini
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00406bba
add esp, 0xc
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x14
call fcn.00406a8d
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x13
call fcn.00406733
lea ecx, [ebp - 0x14]
call fcn.00406a8a
push eax
push str._Autoup__Update__Autoup.ini_Path_:__s
push 1
call fcn.00408bf4
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.00406a8a
mov edi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push eax
mov ebx, str.PendingState
push 0x44d420
push ebx
push str.AhnLab
call edi
lea ecx, [esi + 0xfd8]
call fcn.00406a8a
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x40336f
lea ecx, [esi + 0xfd8]
call fcn.00406a8a
push eax
push str._Autoup__Update__PendingProduct_MainAppName_:__s
push 1
call fcn.00408bf4
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.00406a8a
push eax
push 0x44d420
push ebx
lea ecx, [esi + 0xfd8]
call fcn.00406a8a
push eax
call edi
push 0x80
lea ecx, [ebp - 0x14]
call fcn.00406a8a
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0
lea ecx, [ebp - 0x14]
call fcn.00406a8a
push eax
call fcn.00405596
pop ecx
pop ecx
lea ecx, [esi + 0xbd0]
call fcn.00406a8a
push eax
mov ecx, esi
call fcn.00403bba
lea ecx, [ebp - 0xdd4]
call fcn.00417fd8
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xe
call fcn.00406733
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xc
call fcn.00406733
jmp 0x4034a8
push edi
push 1
lea ecx, [ebp - 0xdd4]
call fcn.00417f84
cmp dword [esi + 0x110c], 1
jne 0x4033f7
push 0xa
push edi
push edi
push 0x283c
push 1
jmp 0x403483
cmp dword [esi + 0xbc8], edi
je 0x40340c
push 0xa
push edi
push edi
push 0x27db
push 2
jmp 0x403483
mov ax, word [esi + 0xfd4]
cmp ax, di
mov dword [ebp - 0x10], eax
jne 0x403422
mov dword [ebp - 0x10], 7
cmp dword [esi + 0x1108], edi
jne 0x403479
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00404a5f
mov ebx, eax
lea eax, [esi + 0x1120]
lea ecx, [esi + 0xa94]
push eax
mov byte [ebp - 4], 0x15
call fcn.00406a8a
push eax
lea eax, [esi + 0xbd4]
push eax
mov ecx, ebx
call fcn.00406a8a
push eax
lea ecx, [esi + 0x834]
movzx eax, word [ebp - 0x10]
push eax
call fcn.0040c2e1
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xc
call fcn.00406733
push 0xa
push edi
push edi
push 0x27d8
push edi
mov ecx, esi
call fcn.004036cd
lea ecx, [esi + 0xbd0]
call fcn.00406a8a
push eax
mov ecx, esi
call fcn.00403bba
lea ecx, [ebp - 0xdd4]
call fcn.00417fd8
mov eax, dword [0x46487c]
mov esi, dword [eax + 0x1104]
cmp esi, 0x27d8
jne 0x403537
xor esi, esi
jmp 0x403537
cmp dword [ebp - 0x10], edi
jne 0x4034ea
lea eax, [ebp - 0x24c]
push edi
push eax
mov ecx, esi
push dword [ebp - 0x250]
push dword [ebp - 0x254]
push dword [ebp - 0x258]
call fcn.004036cd
cmp dword [ebp - 0x1c], edi
jne 0x40350b
lea eax, [ebp - 0x464]
push edi
push eax
mov ecx, esi
push dword [ebp - 0x468]
push dword [ebp - 0x46c]
push dword [ebp - 0x470]
call fcn.004036cd
mov esi, 0x2909
cmp dword [ebp - 0x250], esi
je 0x403537
cmp dword [ebp - 0x250], 0x17
jne 0x403524
inc esi
jmp 0x403537
cmp dword [ebp - 0x250], 0x70
mov esi, 0x290b
je 0x403537
mov esi, 0x2841
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
call fcn.00406733
and byte [ebp - 4], 0
lea ecx, [ebp - 0x364]
call fcn.00406f31
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xdd4]
call fcn.00415b9b
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret