Function at 0x473f57
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xc
mov eax, 0x683805
call fcn.005b852e
xor ebx, ebx
cmp edi, ebx
je 0x4748f7
push 0x69c5b8
lea ecx, [ebp - 0x10]
call fcn.00401b65
push ebx
push ebx
push esi
mov dword [ebp - 4], ebx
call fcn.004b6fde
push str.IsInstalling
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 4]
push eax
push esi
call fcn.004b6fd2
push 0xfffffffffffffffd
pop ebx
push ebx
push esi
call fcn.004b6fcc
push str.IsInstallingOnReboot
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 5]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.IsRuntimeSourceOk
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 6]
add esp, 0x44
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.IsFolderReference
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 7]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.FullPath
push esi
call fcn.004b6fd8
push dword [edi + 8]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
add esp, 0x40
push str.FileName
push esi
call fcn.004b6fd8
push dword [edi + 0xc]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.FileSource
push esi
call fcn.004b6fd8
push dword [edi + 0x10]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.FileExtension
push esi
call fcn.004b6fd8
push dword [edi + 0x14]
push esi
call fcn.004b6fd8
add esp, 0x40
push ebx
push esi
call fcn.004b6fcc
push str.RuntimeSource
push esi
call fcn.004b6fd8
push dword [edi + 0x18]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push 0x6a90bc
push esi
call fcn.004b6fd8
push dword [edi + 0x1c]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.FolderRecurse
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x20]
add esp, 0x40
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.FolderMatchMode
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x21]
mov dword [ebp - 0x18], eax
add esp, 0x10
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call fcn.004b7028
push ebx
push esi
call fcn.004b6fcc
push str.IsReadOnly
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x30]
and eax, 1
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.IsHidden
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x30]
and eax, 2
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
add esp, 0x44
push str.IsSystem
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x30]
and eax, 4
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.IsArchive
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x30]
and eax, 0x20
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.CreationDate
push esi
call fcn.004b6fd8
add esp, 0x38
push str._A___B__d___Y
lea eax, [ebp - 0x18]
lea ecx, [edi + 0x34]
push eax
call fcn.0043a66e
push dword [eax]
push esi
call fcn.004b6fd8
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040124d
push ebx
push esi
call fcn.004b6fcc
push str.CreationDateISO
push esi
call fcn.004b6fd8
add esp, 0x10
push str._Y__m__dT_H:_M:_S
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x34]
call fcn.0043a66e
push dword [eax]
push esi
call fcn.004b6fd8
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040124d
push ebx
push esi
call fcn.004b6fcc
push str.AccessDate
push esi
call fcn.004b6fd8
add esp, 0x10
push str._A___B__d___Y
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x3c]
call fcn.0043a66e
push dword [eax]
push esi
call fcn.004b6fd8
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040124d
push ebx
push esi
call fcn.004b6fcc
push str.AccessDateISO
push esi
call fcn.004b6fd8
add esp, 0x10
push str._Y__m__dT_H:_M:_S
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x34]
call fcn.0043a66e
push dword [eax]
push esi
call fcn.004b6fd8
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040124d
push ebx
push esi
call fcn.004b6fcc
push str.ModifiedDate
push esi
call fcn.004b6fd8
add esp, 0x10
push str._A___B__d___Y
lea eax, [ebp - 0x18]
lea ecx, [edi + 0x44]
push eax
call fcn.0043a66e
push dword [eax]
push esi
call fcn.004b6fd8
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040124d
push ebx
push esi
call fcn.004b6fcc
push str.ModifiedDateISO
push esi
call fcn.004b6fd8
add esp, 0x10
push str._Y__m__dT_H:_M:_S
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x44]
call fcn.0043a66e
push dword [eax]
push esi
call fcn.004b6fd8
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040124d
push ebx
push esi
call fcn.004b6fcc
push str.Destination
push esi
call fcn.004b6fd8
push dword [edi + 0x68]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.CreateBackup
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x6d]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.FailSafeCopy
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x6e]
add esp, 0x40
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutInStartMenu
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x6f]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutInStartMenuPrograms
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x70]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
add esp, 0x40
push str.ShortcutInStartMenuAppFolder
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x71]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutInStartup
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x72]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutInDesktop
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x73]
push eax
push esi
call fcn.004b6fd2
add esp, 0x40
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutInQuickLaunch
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x74]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutInCustom
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x76]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.CustomShortcutPath
push esi
call fcn.004b6fd8
add esp, 0x40
push dword [edi + 0x78]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutDescription
push esi
call fcn.004b6fd8
push dword [edi + 0x7c]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutArguments
push esi
call fcn.004b6fd8
push dword [edi + 0x80]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
add esp, 0x40
push str.ShortcutWorkingFolder
push esi
call fcn.004b6fd8
push dword [edi + 0x84]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.UseExternalIcon
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x8c]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.IconPath
push esi
call fcn.004b6fd8
push dword [edi + 0x90]
push esi
call fcn.004b6fd8
add esp, 0x40
push ebx
push esi
call fcn.004b6fcc
push str.IconIndex
push esi
call fcn.004b6fd8
fild dword [edi + 0x94]
mov eax, dword [edi + 0x94]
test eax, eax
jns 0x4744d7
fadd qword [0x69ce28]
add esp, 8
fstp qword [esp]
push esi
call fcn.004b7028
push ebx
push esi
call fcn.004b6fcc
push 0x6aa360
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x98]
add esp, 0x1c
sub eax, 0
push ecx
push ecx
je 0x47451c
dec eax
je 0x474514
dec eax
jne 0x47451c
fld qword [0x6a9430]
jmp 0x47451e
fld qword [0x6aa358]
jmp 0x47451e
fld1
fstp qword [esp]
push esi
call fcn.004b7028
add esp, 0xc
push ebx
push esi
call fcn.004b6fcc
push str.RegisterAsTTF
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x9c]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.FontName
push esi
call fcn.004b6fd8
push dword [edi + 0xa0]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push str.RegisterAsOCX
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xa4]
add esp, 0x40
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.RegisterAsTLB
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xa5]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.SupressInUseNotice
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xa6]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
add esp, 0x40
push str.CompressFile
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xa7]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.DisableCRCCheck
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xb4]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.UseOriginalAttributes
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xa8]
push eax
push esi
call fcn.004b6fd2
add esp, 0x40
push ebx
push esi
call fcn.004b6fcc
push str.NewAttributeReadOnly
push esi
call fcn.004b6fd8
mov eax, dword [edi + 0xac]
and eax, 1
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.NewAttributeArchive
push esi
call fcn.004b6fd8
mov eax, dword [edi + 0xac]
and eax, 0x20
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.NewAttributeHidden
push esi
call fcn.004b6fd8
mov eax, dword [edi + 0xac]
add esp, 0x40
and eax, 2
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.NewAttributeSystem
push esi
call fcn.004b6fd8
mov eax, dword [edi + 0xac]
and eax, 4
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.InstallOrder
push esi
call fcn.004b6fd8
fild dword [edi + 0xb0]
add esp, 0x28
fstp qword [esp]
push esi
call fcn.004b7028
push ebx
push esi
call fcn.004b6fcc
push str.NeverRemove
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xb5]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
push str.SharedSystemFile
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0xb6]
push eax
push esi
call fcn.004b6fd2
push ebx
push esi
call fcn.004b6fcc
xor eax, eax
add esp, 0x44
mov dword [ebp - 0x14], eax
cmp dword [edi + 0xfc], eax
jle 0x4747ac
push eax
push eax
push esi
call fcn.004b6fde
mov eax, dword [edi + 0xf4]
add esp, 0xc
mov dword [ebp - 0x18], eax
test eax, eax
je 0x474788
inc dword [ebp - 0x14]
fild dword [ebp - 0x14]
push ecx
push ecx
fstp qword [esp]
push esi
call fcn.004b7028
mov eax, dword [ebp - 0x18]
add esp, 0xc
test eax, eax
je 0x4747a7
push dword [eax + 8]
mov ecx, dword [eax]
push esi
mov dword [ebp - 0x18], ecx
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
add esp, 0x10
cmp dword [ebp - 0x18], 0
jne 0x47474f
push str.Packages
push esi
call fcn.004b6fd8
push 0xfffffffffffffffe
push esi
call fcn.004b7088
push ebx
push esi
call fcn.004b6fcc
add esp, 0x18
jmp 0x4747c7
call fcn.004b8094
push str.Packages
push esi
call fcn.004b6fd8
push esi
call fcn.004b7034
push ebx
push esi
call fcn.004b6fcc
add esp, 0x14
push str.Notes
push esi
call fcn.004b6fd8
push dword [edi + 0x10c]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
push 0x6aa23c
push esi
call fcn.004b6fd8
fild dword [edi + 0x118]
mov eax, dword [edi + 0x118]
test eax, eax
jns 0x474806
fadd qword [0x69ce28]
add esp, 0x18
fstp qword [esp]
push esi
call fcn.004b7028
push ebx
push esi
call fcn.004b6fcc
push str.ShortcutKey
push esi
call fcn.004b6fd8
movzx eax, word [edi + 0x9a]
mov dword [ebp - 0x18], eax
add esp, 0x14
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call fcn.004b7028
push ebx
push esi
call fcn.004b6fcc
push str.Overwrite
push esi
call fcn.004b6fd8
movzx eax, byte [edi + 0x6c]
mov dword [ebp - 0x18], eax
add esp, 0x14
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call fcn.004b7028
push ebx
push esi
call fcn.004b6fcc
movzx eax, word [edi + 0x54]
push eax
movzx eax, word [edi + 0x56]
push eax
movzx eax, word [edi + 0x50]
push eax
movzx eax, word [edi + 0x52]
push eax
lea eax, [ebp - 0x10]
push str._d._d._d._d
push eax
call fcn.0040255b
push 0x6a90d8
push esi
call fcn.004b6fd8
push dword [ebp - 0x10]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
movzx eax, word [edi + 0x5c]
add esp, 0x44
push eax
movzx eax, word [edi + 0x5e]
push eax
movzx eax, word [edi + 0x58]
push eax
movzx eax, word [edi + 0x5a]
push eax
lea eax, [ebp - 0x10]
push str._d._d._d._d
push eax
call fcn.0040255b
push 0x6a90e8
push esi
call fcn.004b6fd8
push dword [ebp - 0x10]
push esi
call fcn.004b6fd8
push ebx
push esi
call fcn.004b6fcc
mov ecx, dword [ebp - 0x10]
add esp, 0x30
add ecx, 0xfffffff0
call fcn.0040124d
call fcn.005b8606
ret