Function at 0x4013fb
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x60
mov ecx, dword [ebp + 8]
mov eax, dword [0x54c154]
xor eax, ebp
mov dword [esp + 0x58], eax
lea esi, [esp + 0x18]
xor edi, edi
mov edx, 4
sub edx, edi
cmp dword [ecx + 0xc], 1
cmovne edx, edi
cmp byte [ecx + 0x11], 0
je 0x40143b
mov eax, dword [ecx + 0x14]
bt eax, edx
jae 0x40169c
mov dword [esp + 0x14], edi
test edx, edx
sete bl
and bl, byte [ecx + 0x10]
mov dword [esp + 0x30], str.Microsoft.WebView2Runtime.Stable_8wekyb3d8bbwe
mov dword [esp + 0x34], str.Microsoft.WebView2Runtime.Beta_8wekyb3d8bbwe
mov dword [esp + 0x38], str.Microsoft.WebView2Runtime.Dev_8wekyb3d8bbwe
mov dword [esp + 0x3c], str.Microsoft.WebView2Runtime.Canary_8wekyb3d8bbwe
mov dword [esp + 0x40], str.Microsoft.WebView2Runtime.Internal_8wekyb3d8bbwe
mov eax, dword [esp + edx*4 + 0x30]
mov dword [esp], eax
xor eax, eax
dec eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov ecx, esi
mov edi, edx
call fcn.00402344
movzx ebx, bl
push esi
push ebx
mov dword [esp + 0x18], edi
push edi
call fcn.00401005
add esp, 0xc
mov ecx, esi
call fcn.00402610
mov ecx, eax
mov edx, ebx
push dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
push edi
push 0
call fcn.00401fa4
add esp, 0xc
test al, al
jne 0x4018bf
mov ecx, esi
call fcn.00402610
mov ecx, eax
mov edx, ebx
push dword [ebp + 0xc]
push edi
push 1
call fcn.00401fa4
add esp, 0xc
test al, al
jne 0x4018bf
pcmpeqd xmm0, xmm0
movdqu xmmword [esp + 0x48], xmm0
mov eax, dword [0x555f04]
mov ecx, dword [0x5567e8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 8]
jg 0x4017e7
cmp dword [0x555f00], 0
je 0x40168a
mov eax, dword [0x555f0c]
mov ecx, dword [0x5567e8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 8]
jg 0x40182f
cmp dword [0x555f08], 0
je 0x40168a
xor ebx, ebx
mov dword [esp + 0x24], ebx
mov ecx, dword [0x555f00]
call dword [0x510530]
sub esp, 0x24
lea eax, [esp + 0x48]
mov dword [esp + 0x20], eax
pxor xmm0, xmm0
movdqu xmmword [esp + 0x10], xmm0
pxor xmm0, xmm0
movq qword [esp + 8], xmm0
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
mov dword [esp], ebx
call ecx
test eax, eax
js 0x4015c3
mov dword [esp + 0x30], ebx
mov ecx, dword [0x555f08]
mov esi, dword [esp + 0x24]
call dword [0x510530]
push ebx
lea eax, [esp + 0x34]
push eax
push ebx
push ebx
push esi
call ecx
mov esi, dword [esp + 0x24]
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push esi
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov dword [esp + 0x24], ebx
mov eax, dword [0x555f14]
mov ecx, dword [0x5567e8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 8]
jg 0x401877
mov ecx, dword [0x555f10]
test ecx, ecx
mov eax, 0
je 0x40168a
mov dword [esp + 0x2c], 0xffffffff
mov dword [esp + 0x28], eax
xor ebx, ebx
call dword [0x510530]
lea eax, [esp + 0x2c]
push eax
push ebx
lea eax, [esp + 0x30]
push eax
push 0x180001
call ecx
cmp eax, 0x7a
jne 0x40168a
cmp dword [esp + 0x28], 0
je 0x40168a
xor eax, eax
dec eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
lea esi, [esp + 0x30]
mov ecx, esi
call fcn.00402344
mov ecx, esi
push dword [esp + 0x28]
call fcn.004025ac
test al, al
je 0x401681
mov ebx, dword [0x555f10]
lea ecx, [esp + 0x30]
call fcn.00402610
mov esi, eax
mov ecx, ebx
call dword [0x510530]
lea eax, [esp + 0x2c]
push eax
push esi
lea eax, [esp + 0x30]
push eax
push 0x180001
call ebx
test eax, eax
je 0x4016ab
lea ecx, [esp + 0x30]
call fcn.00402356
lea esi, [esp + 0x18]
mov ecx, esi
call fcn.00402356
mov ecx, dword [ebp + 8]
mov edi, dword [esp + 0x14]
inc edi
cmp edi, 5
jne 0x40141b
jmp 0x401908
lea ecx, [esp + 0x30]
call fcn.00402610
cmp dword [esp + 0x2c], 0
je 0x401681
mov ebx, eax
add ebx, 0x1c
xor esi, esi
push dword [esp]
push dword [ebx - 0xc]
call fcn.004e5de2
add esp, 8
test eax, eax
je 0x4016e0
inc esi
add ebx, 0x34
cmp esi, dword [esp + 0x2c]
jb 0x4016c2
jmp 0x401681
movq xmm0, qword [ebx]
punpcklwd xmm0, xmmword [0x5106e0]
movdqa xmmword [esp], xmm0
pshufd xmm0, xmm0, 0x1b
movdqu xmmword [esp + 0x48], xmm0
mov esi, dword [ebp + 0xc]
mov ecx, esi
push dword [ebx - 0x14]
call fcn.0040243a
lea ebx, [esp + 0x30]
mov ecx, ebx
call fcn.00402356
lea ecx, [esp + 0x48]
mov edx, esi
call fcn.00402152
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x4017d6
test al, al
je 0x4017d6
mov ecx, edi
push 0xf
call fcn.004023b6
xor eax, eax
dec eax
mov dword [esp + 0x42], eax
mov dword [esp + 0x3e], eax
pcmpeqd xmm0, xmm0
movdqu xmmword [esp + 0x30], xmm0
pshufd xmm0, xmmword [esp], 0xff
sub esp, 0x10
mov dword [esp + 4], ebx
movdqa xmmword [esp + 0x10], xmm0
movd dword [esp], xmm0
mov dword [esp + 0xc], 0xa
mov dword [esp + 8], 0xb
call fcn.004e603b
add esp, 0x10
test eax, eax
jne 0x40168a
movdqa xmm0, xmmword [esp]
movd dword [esp], xmm0
mov ecx, edi
push ebx
call fcn.0040243a
mov esi, ebx
mov ebx, 3
push 0xa
push 0xb
push esi
push dword [esp + 0xc]
call fcn.004e603b
add esp, 0x10
test eax, eax
jne 0x40168a
mov ecx, edi
push 0x510d20
call fcn.00402504
mov ecx, edi
push esi
call fcn.00402504
dec ebx
jne 0x4017a1
jmp 0x4018bf
test al, al
lea esi, [esp + 0x18]
je 0x40168e
jmp 0x4018bf
push 0x555f04
call fcn.004a4a41
add esp, 4
cmp dword [0x555f04], 0xffffffff
jne 0x401510
push 0x510d40
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.TryCreatePackageDependency
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x555f00], eax
push 0x555f04
call fcn.004a49f7
add esp, 4
jmp 0x401510
push 0x555f0c
call fcn.004a4a41
add esp, 4
cmp dword [0x555f0c], 0xffffffff
jne 0x40153e
push 0x510d40
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.AddPackageDependency
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x555f08], eax
push 0x555f0c
call fcn.004a49f7
add esp, 4
jmp 0x40153e
push 0x555f14
call fcn.004a4a41
add esp, 4
cmp dword [0x555f14], 0xffffffff
jne 0x4015e4
push 0x510d40
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.GetCurrentPackageInfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x555f10], eax
push 0x555f14
call fcn.004a49f7
add esp, 4
jmp 0x4015e4
mov ecx, dword [ebp + 0x14]
test ecx, ecx
je 0x4018fb
mov dword [esp + 0x30], 0x5109cc
mov dword [esp + 0x34], str.beta
mov dword [esp + 0x38], 0x5109d8
mov dword [esp + 0x3c], str.canary
mov dword [esp + 0x40], str.internal
mov eax, dword [esp + 0x10]
push dword [esp + eax*4 + 0x30]
call fcn.0040243a
lea ecx, [esp + 0x18]
call fcn.00402356
xor esi, esi
jmp 0x401918
push 0x510a78
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov esi, 0x80070002
mov ecx, dword [esp + 0x58]
xor ecx, ebp
call fcn.004a44cd
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret