Function at 0x443d5b
Capabilities:
Accept command line arguments

Disassembly:
push 0x4b4
mov eax, 0x4b5187
call fcn.004935c5
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4c0], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
push dword [eax + 4]
mov esi, ecx
call fcn.0043fdca
xor ebx, ebx
mov edi, str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdatemiscKWpsUpdateImpl.cpp
test al, al
je 0x443f06
call fcn.0044380d
test al, al
je 0x443f06
mov eax, dword [0x4fc334]
cmp eax, 3
je 0x443f06
cmp eax, 5
je 0x443f06
cmp byte [esi + 0x55], bl
jne 0x443f06
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp dword [eax + 0x14], ebx
je 0x443f06
push str.install
call fcn.0042fbe1
mov ecx, eax
call fcn.0043ec3e
test al, al
jne 0x443f06
mov dword [ebp - 0x4b8], ebx
cmp byte [esi + 0x52], bl
je 0x443e00
mov eax, dword [esi + 0xc]
mov ecx, dword [eax]
push 0x4bf8f0
push 4
push eax
call dword [ecx + 0x24]
lea eax, [ebp - 0x474]
push eax
call fcn.0047a255
mov ecx, eax
call fcn.0047a5d1
mov dword [ebp - 0x4b4], eax
lea eax, [ebp - 0x43c]
push ebx
push eax
mov dword [ebp - 4], ebx
call fcn.0047a255
mov ecx, eax
call fcn.00479b64
mov ecx, dword [ebp - 0x4b4]
cmp dword [ecx + 0x14], 8
mov byte [ebp - 4], 1
jb 0x443e42
mov ecx, dword [ecx]
cmp dword [eax + 0x14], 8
jb 0x443e4a
mov eax, dword [eax]
lea edx, [ebp - 0x4b8]
push edx
push ebx
push ebx
push ecx
push eax
push str.C_DownQuery
mov ecx, esi
call fcn.00441668
push ebx
push 1
lea ecx, [ebp - 0x43c]
call fcn.0042e109
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp - 0x474]
call fcn.0042e109
push dword [ebp - 0x4b8]
push str.Query_install:__i
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x243
push edi
push 7
call fcn.0042f683
add esp, 0x18
cmp dword [ebp - 0x4b8], 1
je 0x443f06
push 0x4be6f8
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x4bc], esp
push str.HaveNewPatch
push eax
call fcn.0042f046
pop ecx
pop ecx
call fcn.0047f92e
add esp, 0x20
cmp eax, ebx
jl 0x443ee2
push dword [ebp - 0x4c0]
mov ecx, esi
call fcn.0044123b
jmp 0x443efc
push eax
push str.Failed_set_new_patch_flag:_0x_08x.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x24b
push edi
push ebx
call fcn.0042f683
add esp, 0x18
xor al, al
call fcn.00493648
ret 8
mov eax, dword [ebp + 8]
mov eax, dword [eax]
push dword [eax + 4]
mov ecx, esi
call fcn.0043fdca
test al, al
je 0x443ff3
mov eax, dword [0x4fc334]
cmp eax, 3
je 0x443ff3
cmp eax, 5
je 0x443ff3
cmp byte [esi + 0x55], bl
jne 0x443ff3
call fcn.0044380d
test al, al
jne 0x443ff3
xor eax, eax
mov dword [ebp - 0x428], 7
mov dword [ebp - 0x42c], ebx
mov word [ebp - 0x43c], ax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov dword [ebp - 4], 2
cmp dword [ecx + 0x18], ebx
jne 0x443f8d
call fcn.0042fc20
mov ecx, dword [eax]
lea edx, [ebp - 0x43c]
push edx
push eax
call dword [ecx + 0x7c]
test eax, eax
jne 0x443fb4
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
cmp dword [ecx + 0x1c], 0xffffffff
je 0x443fe1
push 0x4c599c
mov ecx, esi
mov dword [ebp - 0x4b4], eax
call fcn.0043fdea
mov ecx, dword [ebp - 0x4b4]
mov ecx, dword [ecx]
cmp eax, dword [ecx + 0x1c]
ja 0x443fe1
push str.Auto_mode__but_kso_is_running._exit.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x259
push edi
push 5
call fcn.0042f683
add esp, 0x14
lea ecx, [ebp - 0x43c]
push ebx
push 1
call fcn.0042e109
jmp 0x443efc
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp - 0x43c]
call fcn.0042e109
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp dword [eax + 0xc], ebx
je 0x444161
call fcn.0047d4f9
test al, al
jne 0x444161
push str.Need_higher_privileges.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x261
push edi
push 7
call fcn.0042f683
add esp, 0x14
push dword [ebp - 0x4c0]
mov ecx, esi
call fcn.0044123b
test eax, eax
js 0x443efc
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x43c]
call fcn.0042e48d
lea eax, [ebp - 0x43c]
push eax
mov ecx, esi
mov dword [ebp - 4], 3
call fcn.00440554
xor eax, eax
mov esi, 0x206
push esi
mov word [ebp - 0x420], ax
lea eax, [ebp - 0x41e]
push ebx
push eax
call fcn.00492b40
add esp, 0xc
push 0x104
lea eax, [ebp - 0x420]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
push esi
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push ebx
push eax
call fcn.00492b40
mov eax, dword [ebp - 0x43c]
add esp, 0xc
cmp dword [ebp - 0x428], 8
jae 0x4440c5
lea eax, [ebp - 0x43c]
push str.elevated
push str.install
push eax
push str._s___s_s
lea eax, [ebp - 0x218]
push 0x103
push eax
call fcn.0049372c
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.0047e6f3
mov esi, eax
add esp, 0x20
cmp esi, ebx
jge 0x44414c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x4bc], esp
push 0x4bf8f0
call fcn.0042e48d
push 6
mov byte [ebp - 4], 4
call fcn.00430d77
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.0042f1f3
push esi
push str.Failed_run_wpsupdate_elevated:_0x_08x.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x279
push edi
push ebx
call fcn.0042f683
add esp, 0x18
jmp 0x443fce
push ebx
push 1
lea ecx, [ebp - 0x43c]
call fcn.0042e109
mov al, 1
jmp 0x443efe
cmp byte [esi + 0x56], bl
je 0x44416d
mov ecx, esi
call fcn.00441805
xor eax, eax
mov dword [ebp - 0x444], 7
mov dword [ebp - 0x448], ebx
mov word [ebp - 0x458], ax
mov eax, dword [ebp + 8]
mov edx, dword [eax]
push dword [edx + 4]
mov ecx, esi
mov dword [ebp - 4], 5
call fcn.0043fdca
test al, al
je 0x44430c
cmp dword [edx + 0x18], ebx
jne 0x44430c
call fcn.0042fc20
mov ecx, dword [eax]
lea edx, [ebp - 0x458]
push edx
push eax
call dword [ecx + 0x7c]
test eax, eax
je 0x44430c
push str.Kso_is_running.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x28b
push edi
push 4
call fcn.0042f683
mov eax, dword [0x4fc334]
add esp, 0x14
mov dword [ebp - 0x4b8], 2
cmp eax, 3
je 0x44420e
cmp eax, 5
je 0x44420e
cmp byte [esi + 0x55], bl
jne 0x44420e
mov ecx, esi
call fcn.0044380d
test al, al
je 0x4442de
cmp byte [esi + 0x52], bl
je 0x444223
mov eax, dword [esi + 0xc]
mov ecx, dword [eax]
push 0x4bf8f0
push 4
push eax
call dword [ecx + 0x24]
cmp dword [ebp - 0x444], 8
mov eax, dword [ebp - 0x458]
jae 0x444238
lea eax, [ebp - 0x458]
push eax
lea eax, [ebp - 0x43c]
push eax
call fcn.0047a255
mov ecx, eax
call fcn.0047a830
mov dword [ebp - 0x4b4], eax
lea eax, [ebp - 0x474]
push ebx
push eax
mov byte [ebp - 4], 6
call fcn.0047a255
mov ecx, eax
call fcn.00479b64
mov ecx, dword [ebp - 0x4b4]
cmp dword [ecx + 0x14], 8
mov byte [ebp - 4], 7
jb 0x44427c
mov ecx, dword [ecx]
cmp dword [eax + 0x14], 8
jb 0x444284
mov eax, dword [eax]
lea edx, [ebp - 0x4b8]
push edx
push ebx
push ebx
push ecx
push eax
push str.C_KsoRunningQuery
mov ecx, esi
call fcn.00441668
push ebx
push 1
lea ecx, [ebp - 0x474]
call fcn.0042e109
push ebx
push 1
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 5
call fcn.0042e109
cmp dword [ebp - 0x4b8], 1
jne 0x4442e7
call fcn.0042fc20
mov ecx, dword [eax]
lea edx, [ebp - 0x458]
push edx
push eax
call dword [ecx + 0x7c]
test eax, eax
jne 0x444223
cmp dword [ebp - 0x4b8], 1
je 0x44430c
push str.Kso_is_running__exit.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x29a
push edi
push 4
call fcn.0042f683
add esp, 0x14
lea ecx, [ebp - 0x458]
jmp 0x443fd4
mov eax, dword [ebp + 8]
mov edx, dword [eax]
push dword [edx + 4]
mov ecx, esi
call fcn.0043fdca
test al, al
je 0x444470
cmp dword [edx + 0x1c], 0xffffffff
je 0x444470
mov eax, dword [ebp + 8]
push 0x4c599c
mov dword [ebp - 0x4b4], eax
call fcn.0043fdea
mov ecx, dword [ebp - 0x4b4]
mov ecx, dword [ecx]
cmp eax, dword [ecx + 0x1c]
ja 0x444470
mov eax, dword [ebp + 8]
mov eax, dword [eax]
push dword [eax + 0x1c]
push str.Not_enough_disk_space._need__u.
push str.kupdate::KWpsUpdateImpl::CheckActionExecuteEnv
push 0x2a4
push edi
push ebx
call fcn.0042f683
push ecx
mov ecx, esp
mov dword [ebp - 0x4bc], esp
mov edi, 0x4bf8f0
push edi
call fcn.0042e48d
push 0xb
mov byte [ebp - 4], 8
call fcn.00430d77
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.0042f1f3
mov eax, dword [0x4fc334]
cmp eax, 3
je 0x4443bc
cmp eax, 5
je 0x4443bc
cmp byte [esi + 0x55], bl
jne 0x4443bc
mov ecx, esi
call fcn.0044380d
test al, al
je 0x444451
mov dword [ebp - 0x4b4], ebx
cmp byte [esi + 0x52], bl
je 0x4443d3
mov eax, dword [esi + 0xc]
mov ecx, dword [eax]
push edi
push 4
push eax
call dword [ecx + 0x24]
cmp byte [esi + 0x54], bl
jne 0x444451
lea eax, [ebp - 0x4ac]
push 0x4c5800
push eax
call fcn.0047a255
mov ecx, eax
call fcn.0047ac09
mov edi, eax
lea eax, [ebp - 0x490]
push ebx
push eax
mov byte [ebp - 4], 9
call fcn.0047a255
mov ecx, eax
call fcn.00479b64
cmp dword [edi + 0x14], 8
mov byte [ebp - 4], 0xa
jb 0x444416
mov edi, dword [edi]
cmp dword [eax + 0x14], 8
jb 0x44441e
mov eax, dword [eax]
lea ecx, [ebp - 0x4b4]
push ecx
push ebx
push ebx
push edi
push eax
push str.C_NotEnoughSpace
mov ecx, esi
call fcn.00441668
push ebx
push 1
lea ecx, [ebp - 0x490]
call fcn.0042e109
push ebx
push 1
lea ecx, [ebp - 0x4ac]
call fcn.0042e109
mov byte [ebp - 0x4ad], bl
push ebx
push 1
lea ecx, [ebp - 0x458]
call fcn.0042e109
mov al, byte [ebp - 0x4ad]
jmp 0x443efe
mov byte [ebp - 0x4ad], 1
jmp 0x444457