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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xd0
mov eax, dword [ebp + 8]
mov ecx, dword [0x5ff014]
xor ecx, ebp
mov dword [esp + 0xc8], ecx
mov esi, dword [eax]
mov ecx, dword [eax + 8]
mov dword [esp + 0xc], ecx
mov eax, dword [eax + 0x1c]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 4], eax
xor edi, edi
dec edi
lea ecx, [esp + 0xbc]
mov dword [ecx], edi
mov dword [ecx + 4], edi
mov dword [ecx + 8], edi
lea eax, [esi + 4]
push eax
call fcn.004dd0c0
lea ebx, [esp + 0xb0]
mov dword [ebx], edi
mov dword [ebx + 4], edi
mov dword [ebx + 8], edi
mov ecx, esi
push dword [esp + 8]
push ebx
call fcn.0044b420
lea eax, [esp + 0x40]
mov ecx, dword [esp + 0xc]
push eax
call fcn.004ddda0
lea edi, [esp + 0x80]
mov ecx, ebx
lea eax, [esp + 0x40]
push eax
push edi
call fcn.00454420
mov ecx, ebx
push edi
call fcn.004dd210
mov ecx, edi
call fcn.004dd1f0
lea ecx, [esp + 0x40]
call fcn.004dd1f0
xor ebx, ebx
dec ebx
mov dword [edi + 0x20], ebx
pcmpeqd xmm0, xmm0
movdqa xmmword [edi + 0x10], xmm0
movdqa xmmword [edi], xmm0
mov ecx, edi
push 0
call fcn.00450fe0
push edi
mov edi, dword [esp + 8]
mov dword [esp + 0x10], esi
push esi
call fcn.004477b0
add esp, 8
lea esi, [esp + 0x74]
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
push esi
call fcn.00464020
add esp, 4
mov ecx, dword [ebp + 0xc]
push 0x200
push esi
push edi
call fcn.00575270
push str.UninstallString
call fcn.0051f544
add esp, 4
cmp eax, 0x7ffffff0
jae 0x44778a
mov ebx, eax
cmp eax, 5
lea esi, [esp + 0x40]
jae 0x446e15
mov edx, edi
mov byte [esp + 0x4b], bl
cmp ebx, 3
jne 0x44774a
movzx eax, word [0x5de020]
mov word [esp + 0x44], ax
mov eax, dword [str.UninstallString]
mov dword [esp + 0x40], eax
mov edi, esi
jmp 0x446e56
lea esi, [ebx + 8]
and esi, 0xfffffff8
lea eax, [esi + esi]
push eax
call fcn.00503d75
add esp, 4
mov edi, eax
mov dword [esp + 0x40], eax
or esi, 0x80000000
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], ebx
mov eax, ebx
add eax, ebx
push eax
push str.UninstallString
push edi
call fcn.00507560
add esp, 0xc
mov edx, dword [esp + 4]
lea esi, [esp + 0x40]
mov word [edi + ebx*2], 0
mov ecx, dword [ebp + 0xc]
push 1
lea eax, [esp + 0xb4]
push eax
push esi
push 0x200
lea eax, [esp + 0x84]
push eax
mov edi, edx
push edx
call fcn.00575380
cmp byte [esp + 0x4b], 0
jns 0x446e92
push dword [esp + 0x40]
call fcn.00503da5
add esp, 4
lea ecx, [esp + 0x80]
push esi
call fcn.00452970
push str.UninstallArguments
call fcn.0051f544
add esp, 4
cmp eax, 0x7ffffff0
jae 0x447793
mov ebx, eax
cmp eax, 5
jae 0x446ee7
mov edx, edi
lea edi, [esp + 0x68]
mov byte [edi + 0xb], bl
cmp ebx, 3
jne 0x44775b
movzx eax, word [0x5de040]
mov word [esp + 0x6c], ax
mov eax, dword [str.UninstallArguments]
mov dword [esp + 0x68], eax
jmp 0x446f28
lea esi, [ebx + 8]
and esi, 0xfffffff8
lea eax, [esi + esi]
push eax
call fcn.00503d75
add esp, 4
mov edi, eax
mov dword [esp + 0x68], eax
or esi, 0x80000000
mov dword [esp + 0x70], esi
mov dword [esp + 0x6c], ebx
mov eax, ebx
add eax, ebx
push eax
push str.UninstallArguments
push edi
call fcn.00507560
add esp, 0xc
mov edx, dword [esp + 4]
lea esi, [esp + 0x40]
mov word [edi + ebx*2], 0
lea ebx, [esp + 0x68]
mov ecx, dword [ebp + 0xc]
push 1
push esi
push ebx
push 0x200
lea eax, [esp + 0x84]
push eax
push edx
call fcn.00575380
cmp byte [ebx + 0xb], 0
jns 0x446f5e
push dword [esp + 0x68]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x4b], 0
jns 0x446f71
push dword [esp + 0x40]
call fcn.00503da5
add esp, 4
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x34], 0
jne 0x4476fd
lea esi, [esp + 0x40]
xor edi, edi
dec edi
mov dword [esi + 0x20], edi
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
mov ecx, esi
lea eax, [esp + 0xb0]
push eax
call fcn.00451030
mov ecx, esi
push 0
lea eax, [esp + 0x84]
push eax
call fcn.00550710
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
push ebx
call fcn.005595c0
add esp, 4
mov ecx, dword [ebp + 0xc]
push 0x200
push ebx
push dword [esp + 0xc]
call fcn.00575270
lea eax, [esp + 0x34]
push eax
call fcn.004777d0
add esp, 4
push str.DisplayName
call fcn.0051f544
add esp, 4
cmp eax, 0x7ffffff0
jae 0x44779c
mov ebx, eax
cmp eax, 5
jae 0x447030
lea esi, [esp + 0x28]
mov byte [esi + 0xb], bl
cmp ebx, 3
jne 0x447768
movzx eax, word [0x5de066]
mov word [esp + 0x2c], ax
mov eax, dword [str.DisplayName]
mov dword [esp + 0x28], eax
jmp 0x447069
lea edi, [ebx + 8]
and edi, 0xfffffff8
lea eax, [edi + edi]
push eax
call fcn.00503d75
add esp, 4
mov esi, eax
mov dword [esp + 0x28], eax
or edi, 0x80000000
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebx
mov eax, ebx
add eax, ebx
push eax
push str.DisplayName
push esi
call fcn.00507560
add esp, 0xc
mov word [esi + ebx*2], 0
lea edi, [esp + 0x28]
mov ecx, dword [ebp + 0xc]
push 1
lea ebx, [esp + 0x38]
push ebx
push edi
push 0x200
lea eax, [esp + 0x78]
push eax
mov esi, dword [esp + 0x18]
push esi
call fcn.00575380
cmp byte [edi + 0xb], 0
jns 0x4470a4
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x3f], 0
jns 0x4470b7
push dword [esp + 0x34]
call fcn.00503da5
add esp, 4
lea ecx, [esp + 0x40]
push ebx
call fcn.00452970
push str.UninstallString
call fcn.0051f544
add esp, 4
cmp eax, 0x7ffffff0
jae 0x44779c
mov ebx, eax
cmp eax, 5
jae 0x44710a
mov byte [esp + 0x33], bl
cmp ebx, 3
jne 0x447775
movzx eax, word [0x5de020]
mov word [esp + 0x2c], ax
mov eax, dword [str.UninstallString]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
mov edi, eax
jmp 0x44714b
lea esi, [ebx + 8]
and esi, 0xfffffff8
lea eax, [esi + esi]
push eax
call fcn.00503d75
add esp, 4
mov edi, eax
mov dword [esp + 0x28], eax
or esi, 0x80000000
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebx
mov eax, ebx
add eax, ebx
push eax
push str.UninstallString
push edi
call fcn.00507560
add esp, 0xc
mov esi, dword [esp + 4]
lea eax, [esp + 0x28]
mov word [edi + ebx*2], 0
mov edi, dword [ebp + 0xc]
mov ecx, edi
push 1
lea edx, [esp + 0x38]
push edx
push eax
push 0x200
lea ebx, [esp + 0x78]
push ebx
push esi
call fcn.00575380
cmp byte [esp + 0x33], 0
jns 0x447181
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x3f], 0
jns 0x447194
push dword [esp + 0x34]
call fcn.00503da5
add esp, 4
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x34], eax
mov dword [esp + 0x3c], 0x80000010
mov dword [esp + 0x38], 0xf
movups xmm0, xmmword [0x5e102c]
movups xmmword [eax + 0xe], xmm0
movups xmm0, xmmword [str.InstallLocation]
movups xmmword [eax], xmm0
mov word [eax + 0x1e], 0
mov ecx, edi
push 1
lea eax, [esp + 0xc0]
push eax
lea eax, [esp + 0x3c]
push eax
push 0x200
push ebx
push esi
call fcn.00575380
cmp byte [esp + 0x3f], 0
mov ebx, esi
jns 0x4471ff
push dword [esp + 0x34]
call fcn.00503da5
add esp, 4
xor eax, eax
dec eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
call fcn.005597a0
mov edi, eax
mov esi, str.chrome.exe
push esi
call fcn.0051f544
add esp, 4
lea ecx, [esp + 0xbc]
push eax
push esi
lea esi, [esp + 0x30]
push esi
call fcn.004de0b0
push edi
push esi
lea edi, [esp + 0x3c]
push edi
call fcn.0055b680
add esp, 0xc
mov ecx, esi
call fcn.004dd1f0
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0x80000010
mov dword [esp + 0x2c], 0xb
movsd xmm0, qword [0x5e104c]
movsd qword [eax + 0xe], xmm0
movups xmm0, xmmword [str.DisplayIcon]
movups xmmword [eax], xmm0
mov word [eax + 0x16], 0
mov ecx, dword [ebp + 0xc]
push 1
push edi
push esi
push 0x200
lea eax, [esp + 0x78]
push eax
push ebx
call fcn.00575380
cmp byte [esp + 0x33], 0
jns 0x4472b1
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0x80000010
mov dword [esp + 0x2c], 8
movups xmm0, xmmword [str.NoModify]
movups xmmword [eax], xmm0
mov word [eax + 0x10], 0
xor edi, edi
inc edi
mov esi, dword [ebp + 0xc]
mov ecx, esi
push edi
push edi
lea eax, [esp + 0x30]
push eax
push 0x200
lea eax, [esp + 0x78]
push eax
push ebx
call fcn.005753c0
cmp byte [esp + 0x33], 0
jns 0x447311
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0x80000010
mov dword [esp + 0x2c], 8
movups xmm0, xmmword [str.NoRepair]
movups xmmword [eax], xmm0
mov word [eax + 0x10], 0
mov ecx, esi
push edi
push edi
lea esi, [esp + 0x30]
push esi
push 0x200
lea eax, [esp + 0x78]
push eax
push ebx
call fcn.005753c0
cmp byte [esp + 0x33], 0
jns 0x44736b
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
push esi
call fcn.0055f9f0
add esp, 4
push 0x20
call fcn.00503d75
add esp, 4
lea edi, [esp + 0x1c]
mov dword [edi], eax
mov dword [edi + 8], 0x80000010
mov dword [edi + 4], 9
movzx ecx, word [0x5e108a]
mov word [eax + 0x10], cx
movups xmm0, xmmword [str.Publisher]
movups xmmword [eax], xmm0
mov word [eax + 0x12], 0
mov ecx, dword [ebp + 0xc]
push 1
push esi
push edi
push 0x200
lea eax, [esp + 0x78]
push eax
push ebx
call fcn.00575380
cmp byte [edi + 0xb], 0
jns 0x4473d6
push dword [esp + 0x1c]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x33], 0
jns 0x4473e9
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
mov ecx, dword [esp + 8]
push edi
call fcn.0045a720
movzx eax, byte [esp + 0x27]
test al, al
mov ebx, dword [ebp + 0xc]
jns 0x447407
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
push eax
push edi
lea esi, [esp + 0x30]
push esi
call fcn.00459010
add esp, 0xc
push 0x10
call fcn.00503d75
add esp, 4
lea edi, [esp + 0x10]
mov dword [edi], eax
mov dword [edi + 8], reloc.OLEAUT32.dll_VariantClear
mov dword [edi + 4], 7
movsd xmm0, qword [0x5e1094]
movsd qword [eax + 6], xmm0
movsd xmm0, qword [str.Version]
movsd qword [eax], xmm0
mov word [eax + 0xe], 0
mov ecx, ebx
push 1
push esi
push edi
push 0x200
lea eax, [esp + 0x78]
push eax
push dword [esp + 0x18]
call fcn.00575380
cmp byte [edi + 0xb], 0
jns 0x44747e
push dword [esp + 0x10]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x33], 0
jns 0x447491
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x27], 0
jns 0x4474a4
push dword [esp + 0x1c]
call fcn.00503da5
add esp, 4
lea ebx, [esp + 0x1c]
mov ecx, dword [esp + 8]
push ebx
call fcn.0045a720
movzx eax, byte [ebx + 0xb]
test al, al
jns 0x4474c2
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
push eax
push ebx
lea esi, [esp + 0x30]
push esi
call fcn.00459010
add esp, 0xc
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], 0x80000010
mov dword [esp + 0x14], 0xe
movups xmm0, xmmword [0x5e10aa]
movups xmmword [eax + 0xc], xmm0
movups xmm0, xmmword [str.DisplayVersion]
movups xmmword [eax], xmm0
mov word [eax + 0x1c], 0
mov ecx, dword [ebp + 0xc]
push 1
push esi
push edi
push 0x200
lea eax, [esp + 0x78]
push eax
mov ebx, dword [esp + 0x18]
push ebx
call fcn.00575380
cmp byte [esp + 0x1b], 0
jns 0x447538
push dword [esp + 0x10]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x33], 0
jns 0x44754b
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x27], 0
jns 0x44755e
push dword [esp + 0x1c]
call fcn.00503da5
add esp, 4
push esi
call fcn.004776a0
add esp, 4
push 0x20
call fcn.00503d75
add esp, 4
lea edi, [esp + 0x1c]
mov dword [edi], eax
mov dword [edi + 8], 0x80000010
mov dword [edi + 4], 0xb
movsd xmm0, qword [0x5e10ca]
movsd qword [eax + 0xe], xmm0
movdqu xmm0, xmmword [str.InstallDate]
movdqu xmmword [eax], xmm0
mov word [eax + 0x16], 0
mov ecx, dword [ebp + 0xc]
push 1
push esi
push edi
push 0x200
lea eax, [esp + 0x78]
push eax
push ebx
call fcn.00575380
cmp byte [edi + 0xb], 0
jns 0x4475cd
push dword [esp + 0x1c]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x33], 0
jns 0x4475e0
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
sub ecx, eax
cmp ecx, 0x10
jne 0x4476ce
mov edi, dword [eax + 8]
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0x80000010
mov dword [esp + 0x2c], 0xc
movsd xmm0, qword [0x5e10e4]
movsd qword [eax + 0x10], xmm0
movups xmm0, xmmword [str.VersionMajor]
movups xmmword [eax], xmm0
mov word [eax + 0x18], 0
mov ecx, dword [ebp + 0xc]
push 1
push edi
push esi
push 0x200
mov edi, ebx
lea esi, [esp + 0x78]
push esi
push ebx
call fcn.005753c0
cmp byte [esp + 0x33], 0
jns 0x44765e
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ebx, dword [eax + 0xc]
push 0x20
call fcn.00503d75
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0x80000010
mov dword [esp + 0x2c], 0xc
movsd xmm0, qword [0x5e10fe]
movsd qword [eax + 0x10], xmm0
movdqu xmm0, xmmword [str.VersionMinor]
movdqu xmmword [eax], xmm0
mov word [eax + 0x18], 0
mov ecx, dword [ebp + 0xc]
push 1
push ebx
lea eax, [esp + 0x30]
push eax
push 0x200
push esi
push edi
call fcn.005753c0
cmp byte [esp + 0x33], 0
jns 0x4476ce
push dword [esp + 0x28]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x3f], 0
jns 0x4476e1
push dword [esp + 0x34]
call fcn.00503da5
add esp, 4
cmp byte [esp + 0x73], 0
jns 0x4476f4
push dword [esp + 0x68]
call fcn.00503da5
add esp, 4
lea ecx, [esp + 0x40]
call fcn.00451270
cmp byte [esp + 0x7f], 0
jns 0x447710
push dword [esp + 0x74]
call fcn.00503da5
add esp, 4
lea ecx, [esp + 0x80]
call fcn.00451270
lea ecx, [esp + 0xb0]
call fcn.004dd1f0
lea ecx, [esp + 0xbc]
call fcn.004dd1f0
mov ecx, dword [esp + 0xc8]
xor ecx, ebp
call fcn.00504596
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, esi
test ebx, ebx
je 0x446e56
mov edi, esi
jmp 0x446e3b
test ebx, ebx
je 0x446f28
jmp 0x446f0d
test ebx, ebx
je 0x447069
jmp 0x447056
lea eax, [esp + 0x28]
mov edi, eax
test ebx, ebx
je 0x44714b
mov edi, eax
jmp 0x447130
lea ecx, [esp + 0x40]
call fcn.0054ed10
lea ecx, [esp + 0x68]
call fcn.0054ed10
lea ecx, [esp + 0x28]
call fcn.0054ed10
int3