Function at 0x14017ae10
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 8], rbx
push rdi
mov eax, 0x20
call fcn.14024eae0
sub rsp, rax
xor edi, edi
mov rbx, rcx
mov qword [rcx], rdi
mov qword [rcx + 8], rdi
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], rdi
mov qword [rcx + 0x20], rdi
mov qword [rcx + 0x28], rdi
mov qword [rcx + 0x30], rdi
mov qword [rcx + 0x38], rdi
mov qword [rcx + 0x40], rdi
mov qword [rcx + 0x48], rdi
mov qword [rcx + 0x50], rdi
mov qword [rcx + 0x58], rdi
mov qword [rcx + 0x60], rdi
mov qword [rcx + 0x68], rdi
mov qword [rcx + 0x70], rdi
mov qword [rcx + 0x78], rdi
mov qword [rcx + 0x80], rdi
mov qword [rcx + 0x88], rdi
mov qword [rcx + 0x90], rdi
mov qword [rcx + 0x98], rdi
mov qword [rcx + 0xa0], rdi
mov qword [rcx + 0xa8], rdi
mov qword [rcx + 0xb0], rdi
mov qword [rcx + 0xb8], rdi
mov qword [rcx + 0xc0], rdi
mov qword [rcx + 0xc8], rdi
mov qword [rcx + 0xd0], rdi
mov qword [rcx + 0xd8], rdi
mov qword [rcx + 0xe0], rdi
mov qword [rcx + 0xe8], rdi
mov qword [rcx + 0xf0], rdi
mov qword [rcx + 0xf8], rdi
mov qword [rcx + 0x100], rdi
mov qword [rcx + 0x108], rdi
mov qword [rcx + 0x110], rdi
mov qword [rcx + 0x118], rdi
mov qword [rcx + 0x120], rdi
mov qword [rcx + 0x128], rdi
mov qword [rcx + 0x130], rdi
mov qword [rcx + 0x138], rdi
mov qword [rcx + 0x140], rdi
mov qword [rcx + 0x148], rdi
mov qword [rcx + 0x150], rdi
mov qword [rcx + 0x158], rdi
mov qword [rcx + 0x160], rdi
mov qword [rcx + 0x168], rdi
mov qword [rcx + 0x170], rdi
lea rcx, str.c2r64.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rbx + 0x170], rax
test rax, rax
je 0x14017b402
lea rdx, str.GetTotalProgress
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.IsClick2Run
mov qword [rbx], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.C2rVersion
mov qword [rbx + 8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.IsRoaming
mov qword [rbx + 0x10], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.IsOSPPReady
mov qword [rbx + 0x18], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.IsStreaming
mov qword [rbx + 0x20], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.ClearPropertyBagValue
mov qword [rbx + 0x28], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.SetPropertyBagToken
mov qword [rbx + 0x30], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.InstallProofOfPurchase
mov qword [rbx + 0x38], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.UninstallProofOfPurchase
mov qword [rbx + 0x40], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HandleScheduledHeartbeat
mov qword [rbx + 0x48], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.MigrateOSPPToSPP
mov qword [rbx + 0x50], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.LicenseRepair
mov qword [rbx + 0x58], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.StartScenario
mov qword [rbx + 0x60], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.StartFB
mov qword [rbx + 0x68], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.GetProperty
mov qword [rbx + 0x70], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.GetPackageRoot
mov qword [rbx + 0x78], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.GetInstalledProducts
mov qword [rbx + 0x80], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.AddOfficeProduct
mov qword [rbx + 0x88], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.Launch
mov qword [rbx + 0x90], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x98], rax
lea rdx, str.EnsureConnection
mov rcx, qword [rbx + 0x170]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.GetUpdateStatus
mov qword [rbx + 0xa0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrUpdateNow
mov qword [rbx + 0xa8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.SaveRecording
mov qword [rbx + 0xb0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.GetStatusValue
mov qword [rbx + 0xb8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetAreUpdatesEnabled
mov qword [rbx + 0xc0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetAreUpdatesCOMManaged
mov qword [rbx + 0xc8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetAreUpdatesFromAdminSource
mov qword [rbx + 0xd0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetAreUpdatesReadyForDownload
mov qword [rbx + 0xd8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetAreUpdatesReadyToApply
mov qword [rbx + 0xe0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetExecutingScenario
mov qword [rbx + 0xe8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrSetAreUpdatesEnabled
mov qword [rbx + 0xf0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrSetAreUpdatesFromAdminSource
mov qword [rbx + 0xf8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrApplyUpdatesNow
mov qword [rbx + 0x100], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrDownloadUpdatesNow
mov qword [rbx + 0x108], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrRefreshState
mov qword [rbx + 0x110], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.IsRepairRequired
mov qword [rbx + 0x118], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.Repair
mov qword [rbx + 0x120], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.StartProgressAgent
mov qword [rbx + 0x128], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.MarkFinalIntegrateComplete
mov qword [rbx + 0x130], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrBeginUpdatesDiscoveryPeriod
mov qword [rbx + 0x138], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetAreUpdatesLate
mov qword [rbx + 0x140], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetPendingUpdateDeadline
mov qword [rbx + 0x148], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrModifyOfficeProducts
mov qword [rbx + 0x150], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrGetChannelIdForDisplay
mov qword [rbx + 0x158], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x170]
lea rdx, str.HrActivate
mov qword [rbx + 0x160], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x168], rax
mov rax, rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret