Function at 0x56dde6
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 [0x64f100]
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 0x56de26
mov eax, dword [ecx + 0x14]
bt eax, edx
jae 0x56e087
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.0056e7bc
movzx ebx, bl
push esi
push ebx
mov dword [esp + 0x18], edi
push edi
call fcn.0056d711
add esp, 0xc
mov ecx, esi
call fcn.0056ea66
mov ecx, eax
mov edx, ebx
push dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
push edi
push 0
call fcn.0056e5bb
add esp, 0xc
test al, al
jne 0x56e2aa
mov ecx, esi
call fcn.0056ea66
mov ecx, eax
mov edx, ebx
push dword [ebp + 0xc]
push edi
push 1
call fcn.0056e5bb
add esp, 0xc
test al, al
jne 0x56e2aa
pcmpeqd xmm0, xmm0
movdqu xmmword [esp + 0x48], xmm0
mov eax, dword [0x64fdac]
mov ecx, dword [0x64fe00]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x56e1d2
cmp dword [0x64fda8], 0
je 0x56e075
mov eax, dword [0x64fdb4]
mov ecx, dword [0x64fe00]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x56e21a
cmp dword [0x64fdb0], 0
je 0x56e075
xor ebx, ebx
mov dword [esp + 0x24], ebx
mov ecx, dword [0x64fda8]
call dword [0x588350]
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 0x56dfae
mov dword [esp + 0x30], ebx
mov ecx, dword [0x64fdb0]
mov esi, dword [esp + 0x24]
call dword [0x588350]
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 [0x64fdbc]
mov ecx, dword [0x64fe00]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x56e262
mov ecx, dword [0x64fdb8]
test ecx, ecx
mov eax, 0
je 0x56e075
mov dword [esp + 0x2c], 0xffffffff
mov dword [esp + 0x28], eax
xor ebx, ebx
call dword [0x588350]
lea eax, [esp + 0x2c]
push eax
push ebx
lea eax, [esp + 0x30]
push eax
push 0x180001
call ecx
cmp eax, 0x7a
jne 0x56e075
cmp dword [esp + 0x28], 0
je 0x56e075
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.0056e7bc
mov ecx, esi
push dword [esp + 0x28]
call fcn.0056ea02
test al, al
je 0x56e06c
mov ebx, dword [0x64fdb8]
lea ecx, [esp + 0x30]
call fcn.0056ea66
mov esi, eax
mov ecx, ebx
call dword [0x588350]
lea eax, [esp + 0x2c]
push eax
push esi
lea eax, [esp + 0x30]
push eax
push 0x180001
call ebx
test eax, eax
je 0x56e096
lea ecx, [esp + 0x30]
call fcn.0056e7ce
lea esi, [esp + 0x18]
mov ecx, esi
call fcn.0056e7ce
mov ecx, dword [ebp + 8]
mov edi, dword [esp + 0x14]
inc edi
cmp edi, 5
jne 0x56de06
jmp 0x56e2f3
lea ecx, [esp + 0x30]
call fcn.0056ea66
cmp dword [esp + 0x2c], 0
je 0x56e06c
mov ebx, eax
add ebx, 0x1c
xor esi, esi
push dword [esp]
push dword [ebx - 0xc]
call fcn.00574e59
add esp, 8
test eax, eax
je 0x56e0cb
inc esi
add ebx, 0x34
cmp esi, dword [esp + 0x2c]
jb 0x56e0ad
jmp 0x56e06c
movq xmm0, qword [ebx]
punpcklwd xmm0, xmmword [0x63f990]
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.0056e8b2
lea ebx, [esp + 0x30]
mov ecx, ebx
call fcn.0056e7ce
lea ecx, [esp + 0x48]
mov edx, esi
call fcn.0056e769
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x56e1c1
test al, al
je 0x56e1c1
mov ecx, edi
push 0xf
call fcn.0056e82e
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.00575088
add esp, 0x10
test eax, eax
jne 0x56e075
movdqa xmm0, xmmword [esp]
movd dword [esp], xmm0
mov ecx, edi
push ebx
call fcn.0056e8b2
mov esi, ebx
mov ebx, 3
push 0xa
push 0xb
push esi
push dword [esp + 0xc]
call fcn.00575088
add esp, 0x10
test eax, eax
jne 0x56e075
mov ecx, edi
push 0x6400d0
call fcn.0056e97c
mov ecx, edi
push esi
call fcn.0056e97c
dec ebx
jne 0x56e18c
jmp 0x56e2aa
test al, al
lea esi, [esp + 0x18]
je 0x56e079
jmp 0x56e2aa
push 0x64fdac
call fcn.0056fc90
add esp, 4
cmp dword [0x64fdac], 0xffffffff
jne 0x56defb
push str.kernelbase.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.TryCreatePackageDependency
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x64fda8], eax
push 0x64fdac
call fcn.0056fc3f
add esp, 4
jmp 0x56defb
push 0x64fdb4
call fcn.0056fc90
add esp, 4
cmp dword [0x64fdb4], 0xffffffff
jne 0x56df29
push str.kernelbase.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.AddPackageDependency
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x64fdb0], eax
push 0x64fdb4
call fcn.0056fc3f
add esp, 4
jmp 0x56df29
push 0x64fdbc
call fcn.0056fc90
add esp, 4
cmp dword [0x64fdbc], 0xffffffff
jne 0x56dfcf
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 [0x64fdb8], eax
push 0x64fdbc
call fcn.0056fc3f
add esp, 4
jmp 0x56dfcf
mov ecx, dword [ebp + 0x14]
test ecx, ecx
je 0x56e2e6
mov dword [esp + 0x30], 0x63fc7c
mov dword [esp + 0x34], str.beta
mov dword [esp + 0x38], 0x63fc88
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.0056e8b2
lea ecx, [esp + 0x18]
call fcn.0056e7ce
xor esi, esi
jmp 0x56e303
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.0056fc2e
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret