Function at 0x449406
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0x164
mov eax, 0x4b4d91
call fcn.0046afbc
push str.IsCriticalUpdatePending...
lea ecx, [ebp - 0x118]
call fcn.00402829
xor ebx, ebx
lea edx, [ebp - 0x118]
push ebx
mov dword [ebp - 4], ebx
call fcn.004140b9
or dword [ebp - 4], 0xffffffff
pop ecx
mov ecx, dword [ebp - 0x118]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push str.__skipping_check_for_pending_critical_update
lea ecx, [ebp - 0x124]
call fcn.00402829
xor esi, esi
inc esi
mov dword [ebp - 4], esi
call fcn.00451171
push eax
lea ecx, [ebp - 0x144]
call fcn.00402899
lea eax, [ebp - 0x144]
mov byte [ebp - 4], 2
push eax
mov ecx, 0x518e5c
call fcn.0043e262
lea ecx, [ebp - 0x144]
call fcn.00424134
push 0x4f63e8
lea ecx, [ebp - 0x144]
call fcn.00409edf
test eax, eax
je 0x4494db
push str.not_Reader_or_Acrobat_DC
lea ecx, [ebp - 0x118]
call fcn.00402829
mov byte [ebp - 4], 3
push ebx
lea eax, [ebp - 0x124]
push eax
push 2
lea edx, [ebp - 0x118]
pop ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x118]
jmp 0x449c5c
mov eax, dword [0x518f00]
cmp eax, 0xffffffff
je 0x449c2d
cmp eax, esi
jb 0x449c2d
mov edx, dword [0x518d04]
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x148]
mov dword [ebp - 0x148], ebx
push eax
push str.iDisableCheckForCriticalUpdate
mov ecx, reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x130], ebx
call fcn.0044058f
add esp, 0xc
test eax, eax
jne 0x449548
cmp dword [ebp - 0x148], esi
jne 0x449548
push str.disabled_in_registry
lea ecx, [ebp - 0x118]
call fcn.00402829
mov byte [ebp - 4], 5
jmp 0x4494b8
call fcn.00441761
test eax, eax
je 0x44957d
push str.AUSST_file_found
lea ecx, [ebp - 0x118]
call fcn.00402829
mov byte [ebp - 4], 6
push ecx
lea eax, [ebp - 0x124]
push eax
lea edx, [ebp - 0x118]
call fcn.004140eb
jmp 0x4494ce
cmp dword [0x518efc], 0x48
je 0x44959c
push str.default_72_hours_check_for_updates_interval_is_overwritten
lea ecx, [ebp - 0x118]
call fcn.00402829
mov byte [ebp - 4], 7
jmp 0x449565
call fcn.00451171
push eax
lea ecx, [ebp - 0x13c]
call fcn.00402899
mov byte [ebp - 4], 8
mov eax, dword [0x518eac]
add eax, 0xfffffff0
push eax
call fcn.00402d9f
pop ecx
lea edi, [eax + 0x10]
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 9
cmp dword [edi - 0xc], 0x26
jge 0x44962f
push str.invalid_ProductCode:
lea ecx, [ebp - 0x118]
call fcn.00402829
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.004024b8
add esp, 8
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x118]
push eax
call fcn.004140eb
pop ecx
pop ecx
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x118]
jmp 0x449c15
movzx ecx, word [edi + 0x32]
cmp ecx, 0x41
jne 0x44963f
mov eax, str.Reader32bit
jmp 0x449659
cmp ecx, 0x30
jne 0x44964b
mov eax, str.Acrobat32bit
jmp 0x449659
cmp ecx, 0x42
jne 0x449bbe
mov eax, str.Acrobat64bit
push eax
lea ecx, [ebp - 0x13c]
call fcn.0040286d
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x11c]
push str.iLastProcessedCU
push eax
call fcn.004023f1
mov byte [ebp - 4], 0xe
mov ecx, eax
push ebx
push dword [0x518f00]
call fcn.00449e7d
mov byte [ebp - 4], 9
add esp, 0x14
mov ecx, dword [ebp - 0x11c]
mov esi, eax
add ecx, 0xfffffff0
call fcn.00402e64
test esi, esi
je 0x449c1d
push str.https:__armmf.adobe.com_arm_manifests_win_critical_update_info_
lea ecx, [ebp - 0x140]
call fcn.00402829
mov byte [ebp - 4], 0xf
call fcn.00451171
push eax
lea ecx, [ebp - 0x138]
call fcn.00402899
lea eax, [ebp - 0x11c]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x138]
mov dword [ebp - 0x11c], ebx
push eax
push str.CriticalUpdateUrlOverwrite
mov edx, 0x4cd258
mov ecx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.004404d0
add esp, 0xc
test eax, eax
jne 0x44975f
mov eax, dword [ebp - 0x138]
cmp dword [eax - 0xc], 0
je 0x44975f
push str.Found_CriticalUpdateUrlOverwrite:
lea ecx, [ebp - 0x118]
call fcn.00402829
push ecx
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x11
push eax
lea edx, [ebp - 0x118]
call fcn.004140eb
pop ecx
pop ecx
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x118]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x140]
call fcn.00402e14
call fcn.00451171
push eax
lea ecx, [ebp - 0x128]
call fcn.00402899
mov byte [ebp - 4], 0x12
call fcn.00451171
push eax
lea ecx, [ebp - 0x118]
call fcn.00402899
lea edx, [ebp - 0x118]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x128]
call fcn.004417db
test eax, eax
je 0x449b8c
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.004024b8
mov esi, str..txt
mov byte [ebp - 4], 0x14
push esi
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.00402459
add esp, 0x18
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x128]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.004025c6
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x120]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push esi
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.00402459
add esp, 0xc
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x140]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.004025c6
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea eax, [ebp - 0x129]
mov byte [ebp - 0x129], bl
push eax
lea edx, [ebp - 0x128]
lea ecx, [ebp - 0x140]
call fcn.0044ede5
mov esi, dword [ebp - 0x128]
pop ecx
test eax, eax
jne 0x449b50
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x449b50
lea ecx, [ebp - 0x15c]
call fcn.00451270
push ebx
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x18
call fcn.004026c3
lea eax, [ebp - 0x170]
mov byte [ebp - 4], 0x19
push eax
push 0x20
push esi
lea ecx, [ebp - 0x15c]
call fcn.004517e0
test eax, eax
jne 0x449936
push str.Open_file_failed:
lea ecx, [ebp - 0x120]
call fcn.00402829
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.004024b8
push ebx
push eax
push 2
lea edx, [ebp - 0x120]
mov byte [ebp - 4], 0x1b
pop ecx
call fcn.00413940
mov ecx, dword [ebp - 0x11c]
add esp, 0x14
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x120]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea ecx, [ebp - 0x128]
call fcn.0044564a
jmp 0x449b2b
push 0x104
lea eax, [ebp - 0x114]
push ebx
push eax
call fcn.00483730
add esp, 0xc
lea eax, [ebp - 0x114]
lea ecx, [ebp - 0x15c]
push 0x104
push eax
call fcn.004519d0
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x134]
call fcn.0040a17c
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x134]
cmp dword [eax - 0xc], 0
je 0x449aa2
push ebx
push 0x4e9d28
lea ecx, [ebp - 0x134]
call fcn.00409c8e
cmp eax, 0xffffffff
je 0x449aa2
push str.version_from_file:
lea ecx, [ebp - 0x120]
call fcn.00402829
push ebx
lea eax, [ebp - 0x134]
mov byte [ebp - 4], 0x1f
push eax
push 2
lea edx, [ebp - 0x120]
pop ecx
call fcn.00413940
pop ecx
pop ecx
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x120]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov eax, dword [0x518eb0]
add eax, 0xfffffff0
push eax
call fcn.00402d9f
add eax, 0x10
pop ecx
mov dword [ebp - 0x11c], eax
lea edx, [ebp - 0x11c]
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x134]
call fcn.00441fc3
lea ecx, [ebp - 0x120]
test eax, eax
je 0x449a4c
push str.available_version_is_higher_than_installed_version
call fcn.00402829
push ebx
push 2
lea edx, [ebp - 0x120]
mov byte [ebp - 4], 0x21
pop ecx
call fcn.00414071
pop ecx
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x120]
lea ecx, [ecx - 0x10]
call fcn.00402e64
xor ebx, ebx
inc ebx
jmp 0x449a7c
push str.available_version_is_not_higher_than_installed_version
call fcn.00402829
push ebx
push 2
lea edx, [ebp - 0x120]
mov byte [ebp - 4], 0x22
pop ecx
call fcn.00414071
pop ecx
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x120]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea ecx, [ebp - 0x15c]
call fcn.00451530
lea ecx, [ebp - 0x128]
call fcn.0044564a
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
jmp 0x449b1d
push str.empty_or_invalid_file:
lea ecx, [ebp - 0x11c]
call fcn.00402829
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.004024b8
push ebx
push eax
push 2
lea edx, [ebp - 0x11c]
mov byte [ebp - 4], 0x1e
pop ecx
call fcn.00413940
mov ecx, dword [ebp - 0x120]
add esp, 0x14
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea ecx, [ebp - 0x15c]
call fcn.00451530
lea ecx, [ebp - 0x128]
call fcn.0044564a
mov ecx, dword [ebp - 0x134]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x160]
mov dword [ebp - method.CFileException.virtual_0], vtable.CFileException.0
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea ecx, [ebp - 0x15c]
call fcn.004512a0
jmp 0x449b92
push str.unable_to_confirm_with_critical_update_file
lea ecx, [ebp - 0x11c]
call fcn.00402829
push ebx
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x17
push eax
push 2
lea edx, [ebp - 0x11c]
pop ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
jmp 0x449b92
mov esi, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x118]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea ecx, [esi - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x138]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x140]
jmp 0x449c15
push str.not_eligible_ProductCode:
lea ecx, [ebp - 0x11c]
call fcn.00402829
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.004024b8
add esp, 8
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x11c]
push eax
call fcn.004140eb
pop ecx
pop ecx
mov ecx, dword [ebp - 0x120]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x11c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea ecx, [edi - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x13c]
jmp 0x449c5c
push str.Valid_CheckCU_not_found
lea ecx, [ebp - 0x130]
call fcn.00402829
push ecx
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 4
push eax
lea edx, [ebp - 0x130]
call fcn.004140eb
pop ecx
pop ecx
mov ecx, dword [ebp - 0x130]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ecx, dword [ebp - 0x144]
add ecx, 0xfffffff0
call fcn.00402e64
mov ecx, dword [ebp - 0x124]
add ecx, 0xfffffff0
call fcn.00402e64
mov eax, ebx
call fcn.0046af66
ret