Function at 0x100016fe
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x60
mov dword [esp + 0xc], edx
mov dword [esp + 0x14], ecx
mov eax, dword [0x10017008]
xor eax, ebp
mov dword [esp + 0x58], eax
lea esi, [esp + 0x1c]
xor eax, eax
mov edi, 4
sub edi, eax
cmp dword [esp + 0x14], 1
mov dword [esp + 0x18], eax
cmovne edi, eax
xor eax, eax
dec eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov ecx, esi
call fcn.100024d8
mov dword [esp + 0x10], edi
mov edi, dword [edi*4 + 0x100150f0]
push edi
call fcn.10005cb9
add esp, 4
mov ebx, eax
add eax, 0x2a
mov ecx, esi
push eax
call fcn.10002540
mov ecx, esi
push 0x2a
push str.SoftwareMicrosoftEdgeUpdateClientState_
call fcn.100025ec
mov ecx, esi
push ebx
lea ebx, [esp + 0x34]
push edi
call fcn.100026bc
mov ecx, dword [esp + 0x24]
xor edx, edx
push dword [esp + 0xc]
push dword [ebp + 8]
call fcn.10001bc1
add esp, 8
test al, al
jne 0x100019e4
mov ecx, dword [esp + 0x24]
xor edx, edx
inc edx
push dword [esp + 0xc]
push dword [ebp + 8]
call fcn.10001bc1
add esp, 8
test al, al
jne 0x100019e4
mov eax, dword [0x100183b8]
mov ecx, dword [0x1001798c]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x1000199c
mov eax, dword [0x100183b4]
test eax, eax
je 0x100018a8
mov dword [esp + 0x2c], 0xffffffff
xor ecx, ecx
mov dword [esp + 0x28], ecx
lea edx, [esp + 0x2c]
push edx
push ecx
lea ecx, [esp + 0x30]
push ecx
push 1
call eax
cmp eax, 0x7a
jne 0x100018a8
cmp dword [esp + 0x28], 0
je 0x100018a8
xor eax, eax
dec eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov ecx, ebx
call fcn.100024d8
mov eax, dword [esp + 0x28]
shr eax, 1
inc eax
mov ecx, ebx
push eax
call fcn.10002540
test al, al
je 0x100018a1
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x3c]
lea eax, [esp + 0x30]
push eax
push 1
call dword [0x100183b4]
test eax, eax
jne 0x100018a1
cmp dword [esp + 0x2c], 0
je 0x100018a1
mov eax, dword [esp + 0x10]
mov eax, dword [eax*4 + 0x10015530]
mov dword [esp + 8], eax
mov esi, dword [esp + 0x38]
add esi, 0x22
xor edi, edi
push dword [esp + 8]
push dword [esi - 0x12]
call fcn.10005a57
add esp, 8
test eax, eax
je 0x100018c6
inc edi
add esi, 0x34
cmp edi, dword [esp + 0x2c]
jb 0x10001884
mov ecx, ebx
call fcn.100024ea
lea esi, [esp + 0x1c]
mov ecx, esi
call fcn.100024ea
mov eax, dword [esp + 0x18]
inc eax
cmp eax, 5
jne 0x10001723
jmp 0x10001a08
movzx eax, word [esi]
mov dword [esp + 8], eax
mov dword [esp + 0x48], eax
movzx eax, word [esi - 2]
mov dword [esp + 0x4c], eax
movzx eax, word [esi - 4]
mov dword [esp + 0x50], eax
movzx eax, word [esi - 6]
mov dword [esp + 0x54], eax
mov edi, dword [esp + 0xc]
mov ecx, edi
push dword [esi - 0x1a]
call fcn.100025c2
mov ecx, ebx
call fcn.100024ea
lea ecx, [esp + 0x48]
mov edx, edi
call fcn.10001cd1
test al, al
je 0x10001992
cmp dword [ebp + 8], 0
je 0x10001992
mov ecx, dword [ebp + 8]
push 0xf
call fcn.10002540
xor eax, eax
dec eax
mov dword [esp + 0x42], eax
mov dword [esp + 0x3e], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x30], xmm0
push 0xa
push 0xb
push ebx
push dword [esp + 0x14]
call fcn.10005915
add esp, 0x10
test eax, eax
jne 0x100018a8
mov ecx, dword [ebp + 8]
push ebx
call fcn.100025c2
mov esi, 3
push 0xa
push 0xb
push ebx
push dword [esp + 0x14]
call fcn.10005915
add esp, 0x10
test eax, eax
jne 0x100018a8
mov edi, dword [ebp + 8]
mov ecx, edi
push 0x100155aa
call fcn.10002692
mov ecx, edi
push ebx
call fcn.10002692
dec esi
jne 0x1000195d
jmp 0x100019e4
test al, al
je 0x100018a8
jmp 0x100019e4
push 0x100183b8
call fcn.10002a17
add esp, 4
cmp dword [0x100183b8], 0xffffffff
jne 0x100017e4
push str.kernelbase.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.GetCurrentPackageInfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100183b4], eax
push 0x100183b8
call fcn.10002a69
add esp, 4
jmp 0x100017e4
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x100019fb
mov eax, dword [esp + 0x10]
push dword [eax*4 + 0x10015190]
call fcn.100025c2
lea ecx, [esp + 0x1c]
call fcn.100024ea
xor esi, esi
jmp 0x10001a18
push str.WebView2:_Failed_to_find_an_installed_WebView2_runtime_or_non_stable_Microsoft_Edge_installation._n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov esi, 0x80070002
mov ecx, dword [esp + 0x58]
xor ecx, ebp
call fcn.10002c0c
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret