Function at 0x40e5ab
Capabilities:
Check if file exists

Disassembly:
mov eax, 0x523864
call fcn.004f70e4
sub esp, 0x34
push ebx
push esi
mov esi, ecx
mov ecx, 0x562835
push edi
call fcn.004f6dfd
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x28]
add eax, 4
push eax
call fcn.0040406a
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
push 0xf013f
push str.SOFTWAREClientsStartMenuInternet
push reloc.WS2_32.dll_bind
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call fcn.004059b5
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x40ec56
push 0x529994
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00404829
push str.GptBrowser.exe
push eax
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 2
push eax
call fcn.00404829
add esp, 0x18
mov ecx, dword [ebp - 0x2c]
mov byte [ebp - 4], 4
lea ecx, [ecx - 0x10]
call fcn.00405e10
push dword [ebp - 0x10]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x40ec46
push str.GPT_Chrome
lea ecx, [ebp - 0x14]
call fcn.004041e9
push ebx
push ebx
mov esi, 0x2001f
mov byte [ebp - 4], 5
push esi
push ebx
push ebx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x40]
push dword [ebp - 0x40]
call fcn.00409930
push ebx
push ebx
push esi
push ebx
push ebx
push 0x52b570
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push str.GPT_Chrome
lea ecx, [ebp - 0x30]
call fcn.004041e9
push str._is_an_awsome_internet_browser
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 6
push eax
call fcn.00404829
add esp, 0xc
lea ecx, [ebp - 0x40]
xor esi, esi
inc esi
push esi
push dword [eax]
push str.ApplicationDescription
call fcn.0040a300
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00405e10
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00405e10
push 0x52b5cc
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.00404829
add esp, 0xc
push esi
push dword [ebp - 0x18]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 7
push str.ApplicationIcon
call fcn.0040a300
push esi
push dword [ebp - 0x14]
lea ecx, [ebp - 0x40]
push str.ApplicationName
call fcn.0040a300
push ebx
push ebx
push 0x2001f
push ebx
push ebx
push str.FileAssociations
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push esi
push str.TSBrowserHTM
push 0x52a220
lea ecx, [ebp - 0x40]
call fcn.0040a300
push esi
push str.TSBrowserHTM
push 0x52a214
lea ecx, [ebp - 0x40]
call fcn.0040a300
push esi
push str.TSBrowserHTM
push str..shtml
lea ecx, [ebp - 0x40]
call fcn.0040a300
push esi
push str.TSBrowserHTM
push 0x52a258
lea ecx, [ebp - 0x40]
call fcn.0040a300
push esi
push str.TSBrowserHTM
push str..webp
lea ecx, [ebp - 0x40]
call fcn.0040a300
push esi
push str.TSBrowserHTM
push str..xht
lea ecx, [ebp - 0x40]
call fcn.0040a300
push esi
push str.TSBrowserHTM
push str..xhtml
lea ecx, [ebp - 0x40]
call fcn.0040a300
cmp dword [ebp - 0x40], ebx
je 0x40e7c9
push dword [ebp - 0x40]
call edi
mov dword [ebp - 0x40], ebx
push str.GPT_Chrome
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x3c], ebx
call fcn.004041e9
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 8
push str.SOFTWAREClientsStartMenuInternet_
push eax
call fcn.00404891
push str.Capabilities
push eax
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 9
push eax
call fcn.00404829
add esp, 0x18
lea ecx, [ebp - 0x40]
push 0xf013f
push dword [eax]
push reloc.WS2_32.dll_bind
call fcn.004059b5
mov ecx, dword [ebp - 0x30]
mov esi, eax
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x2c]
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 7
lea ecx, [ecx - 0x10]
call fcn.00405e10
test esi, esi
jne 0x40ec2b
push ebx
push ebx
push 0x2001f
push ebx
push ebx
push str.Startmenu
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push 1
push dword [ebp - 0x14]
lea ecx, [ebp - 0x40]
push str.StartMenuInternet
call fcn.0040a300
cmp dword [ebp - 0x40], esi
je 0x40e87d
push dword [ebp - 0x40]
call edi
mov dword [ebp - 0x40], ebx
push str.GPT_Chrome
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x3c], ebx
call fcn.004041e9
push eax
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0xa
push str.SOFTWAREClientsStartMenuInternet_
push eax
call fcn.00404891
push str.Capabilities
push eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0xb
push eax
call fcn.00404829
add esp, 0x18
lea ecx, [ebp - 0x40]
push 0xf013f
push dword [eax]
push reloc.WS2_32.dll_bind
call fcn.004059b5
mov ecx, dword [ebp - 0x34]
mov esi, eax
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x2c]
mov byte [ebp - 4], 7
lea ecx, [ecx - 0x10]
call fcn.00405e10
test esi, esi
jne 0x40ec2b
push ebx
push ebx
push 0x2001f
push ebx
push ebx
push str.URLAssociations
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push 1
mov esi, str.TSBrowserHTM
lea ecx, [ebp - 0x40]
push esi
push 0x52b6b8
call fcn.0040a300
push 1
push esi
push 0x52a270
lea ecx, [ebp - 0x40]
call fcn.0040a300
push 1
push esi
push 0x52a3a8
lea ecx, [ebp - 0x40]
call fcn.0040a300
cmp dword [ebp - 0x40], 0
je 0x40e955
push dword [ebp - 0x40]
call edi
mov dword [ebp - 0x40], ebx
push str.GPT_Chrome
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x3c], ebx
call fcn.004041e9
push eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0xc
push str.SOFTWAREClientsStartMenuInternet_
push eax
call fcn.00404891
add esp, 0xc
lea ecx, [ebp - 0x40]
push 0xf013f
push dword [eax]
push reloc.WS2_32.dll_bind
call fcn.004059b5
mov ecx, dword [ebp - 0x34]
mov esi, eax
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
mov byte [ebp - 4], 7
call fcn.00405e10
test esi, esi
jne 0x40ec2b
push ebx
push ebx
push 0x2001f
push ebx
push ebx
push str.DefaultIcon
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push 1
push dword [ebp - 0x18]
lea ecx, [ebp - 0x40]
push 0x529990
call fcn.0040a300
cmp dword [ebp - 0x40], esi
je 0x40e9eb
push dword [ebp - 0x40]
call edi
mov dword [ebp - 0x40], ebx
push str.GPT_Chrome
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x3c], ebx
call fcn.004041e9
push eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0xd
push str.SOFTWAREClientsStartMenuInternet_
push eax
call fcn.00404891
add esp, 0xc
lea ecx, [ebp - 0x40]
push 0xf013f
push dword [eax]
push reloc.WS2_32.dll_bind
call fcn.004059b5
mov ecx, dword [ebp - 0x34]
mov esi, eax
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
mov byte [ebp - 4], 7
call fcn.00405e10
test esi, esi
jne 0x40ec2b
push ebx
push ebx
push 0x2001f
push ebx
push ebx
push str.InstallInfo
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
lea eax, [ebp - 0x10]
mov esi, 0x529b44
push eax
lea eax, [ebp - 0x30]
push esi
push eax
call fcn.00404891
push esi
push eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0xe
push eax
call fcn.00404829
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xf
call fcn.00404652
mov ecx, dword [ebp - 0x34]
lea ecx, [ecx - 0x10]
call fcn.00405e10
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 7
lea ecx, [ecx - 0x10]
call fcn.00405e10
push str.___hide_icons
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.00404829
add esp, 0xc
xor esi, esi
mov byte [ebp - 4], 0x10
inc esi
lea ecx, [ebp - 0x40]
push esi
push str.IconsVisible
call fcn.0040a191
push esi
push dword [ebp - 0x24]
lea ecx, [ebp - 0x40]
push str.HideIconsCommand
call fcn.0040a300
push str.___make_default_browser
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00404829
add esp, 0xc
push esi
push dword [ebp - 0x20]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x11
push str.ReinstallCommand
call fcn.0040a300
push str.___show_icons
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00404829
add esp, 0xc
push esi
push dword [ebp - 0x1c]
mov byte [ebp - 4], 0x12
push str.ShowIconsCommand
lea ecx, [ebp - 0x40]
call fcn.0040a300
cmp dword [ebp - 0x40], 0
je 0x40eb4b
push dword [ebp - 0x40]
call edi
mov dword [ebp - 0x40], ebx
push str.GPT_Chrome
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x3c], ebx
call fcn.004041e9
push eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0x13
push str.SOFTWAREClientsStartMenuInternet_
push eax
call fcn.00404891
add esp, 0xc
lea ecx, [ebp - 0x40]
push 0xf013f
push dword [eax]
push reloc.WS2_32.dll_bind
call fcn.004059b5
mov ecx, dword [ebp - 0x34]
mov esi, eax
add ecx, 0xfffffff0
call fcn.00405e10
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
call fcn.00405e10
test esi, esi
jne 0x40ec05
push ebx
push ebx
mov esi, 0x2001f
lea ecx, [ebp - 0x40]
push esi
push ebx
push ebx
push str.shell
push dword [ebp - 0x40]
call fcn.00409930
push ebx
push ebx
push esi
push ebx
push ebx
push str.open
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push ebx
push ebx
push esi
push ebx
push ebx
push str.command
push dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
call fcn.00409930
push 1
push dword [ebp - 0x10]
lea ecx, [ebp - 0x40]
push 0x529990
call fcn.0040a300
mov esi, dword [ebp - 0x40]
test esi, esi
je 0x40ec08
push esi
call edi
mov esi, ebx
jmp 0x40ec08
mov esi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00405e10
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.00405e10
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00405e10
jmp 0x40ec2e
mov esi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.00405e10
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00405e10
jmp 0x40ec49
mov esi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00405e10
jmp 0x40ec59
mov esi, dword [ebp - 0x40]
test esi, esi
je 0x40ec60
push esi
call edi
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00405e10
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret