Function at 0x423d90
Capabilities:
Check if file exists

Disassembly:
sub esp, 0x618
push ebx
push esi
push edi
xor esi, esi
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x216]
mov word [esp + 0x214], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
cmp dword [0x5de220], esi
je 0x423e73
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0xe]
mov word [esp + 0xc], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0xc]
push 0x103
push eax
push str.Progid
push str.SoftwareMicrosoftWindows_shellAssociationsUrlAssociationshttpUserChoice
push SysReAllocStringLen
call fcn.00423cf0
add esp, 0x14
test eax, eax
jne 0x423e1b
lea ecx, [esp + 0xc]
push 0x103
push ecx
push str.Progid
push str.SoftwareMicrosoftWindows_shellAssociationsUrlAssociationshttpUserChoice
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00423cf0
add esp, 0x14
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x41e]
mov word [esp + 0x41c], si
rep stosd dword es:[edi], eax
mov ebx, dword [sym.imp.MSVCRT.dll__snwprintf]
lea edx, [esp + 0xc]
stosw word es:[edi], ax
push edx
push str._s_shellopencommand
lea eax, [esp + 0x424]
push 0x103
push eax
call ebx
lea ecx, [esp + 0x224]
push 0x103
push ecx
lea edx, [esp + 0x434]
push 0x560ec0
push edx
jmp 0x423fe7
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0xe]
mov word [esp + 0xc], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0xc]
push 0x103
push eax
push 0x560ec0
push str.SOFTWAREClientsStartMenuInternet
push SysReAllocStringLen
call fcn.00423cf0
mov ebx, dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x14
cmp eax, esi
jne 0x423edb
lea ecx, [esp + 0xc]
push 0x103
push ecx
push 0x560ec0
push str.SOFTWAREClientsStartMenuInternet
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00423cf0
add esp, 0x14
cmp eax, esi
je 0x423f71
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x41e]
mov word [esp + 0x41c], si
rep stosd dword es:[edi], eax
lea edx, [esp + 0xc]
push edx
push str.SOFTWAREClientsStartMenuInternet
stosw word es:[edi], ax
push str._s_s_shellopencommand
lea eax, [esp + 0x428]
push 0x103
push eax
call ebx
lea ecx, [esp + 0x228]
push 0x103
push ecx
lea edx, [esp + 0x438]
push 0x560ec0
push edx
push SysReAllocStringLen
call fcn.00423cf0
add esp, 0x28
cmp eax, esi
jne 0x423ffc
lea eax, [esp + 0x214]
push 0x103
push eax
lea ecx, [esp + 0x424]
push 0x560ec0
push ecx
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00423cf0
add esp, 0x14
cmp eax, esi
jne 0x423ffc
lea edx, [esp + 0xc]
push 0x103
push edx
push 0x560ec0
push 0x52efc4
push SysReAllocStringLen
call fcn.00423cf0
add esp, 0x14
cmp eax, esi
je 0x424125
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x41e]
mov word [esp + 0x41c], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0xc]
lea ecx, [esp + 0x41c]
push eax
push str._s_shellopencommand
push 0x103
push ecx
call ebx
lea edx, [esp + 0x224]
push 0x103
push edx
lea eax, [esp + 0x434]
push 0x560ec0
push eax
push SysReAllocStringLen
call fcn.00423cf0
add esp, 0x24
cmp eax, esi
je 0x424125
mov dx, word [esp + 0x214]
cmp dx, si
je 0x424125
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0xe]
mov word [esp + 0xc], si
rep stosd dword es:[edi], eax
cmp dx, 0x22
stosw word es:[edi], ax
jne 0x42409c
lea ecx, [esp + 0x216]
push 0x22
push ecx
call dword [sym.imp.MSVCRT.dll_wcschr]
add esp, 8
cmp eax, esi
lea edx, [esp + 0x216]
je 0x424065
sub eax, edx
sar eax, 1
cmp eax, 0x103
jb 0x424055
mov eax, 0x103
push eax
lea eax, [esp + 0x21a]
lea ecx, [esp + 0x10]
push eax
push ecx
jmp 0x4240d8
mov edi, dword [sym.imp.MSVCRT.dll_wcslen]
push edx
call edi
add esp, 4
cmp eax, 0x103
jae 0x424087
lea eax, [esp + 0x216]
push eax
call edi
add esp, 4
jmp 0x42408c
mov eax, 0x103
lea ecx, [esp + 0x216]
push eax
lea edx, [esp + 0x10]
push ecx
push edx
jmp 0x4240d8
mov edi, dword [sym.imp.MSVCRT.dll_wcslen]
lea eax, [esp + 0x214]
push eax
call edi
add esp, 4
cmp eax, 0x103
jae 0x4240c5
lea ecx, [esp + 0x214]
push ecx
call edi
add esp, 4
jmp 0x4240ca
mov eax, 0x103
push eax
lea edx, [esp + 0x218]
lea eax, [esp + 0x10]
push edx
push eax
call dword [sym.imp.MSVCRT.dll_wcsncpy]
add esp, 0xc
cmp word [esp + 0xc], si
je 0x424125
lea ecx, [esp + 0xc]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x424125
mov eax, dword [esp + 0x62c]
mov ecx, dword [esp + 0x628]
lea edx, [esp + 0xc]
push edx
push 0x52e450
push eax
push ecx
call ebx
add esp, 0x10
mov eax, 1
pop edi
pop esi
pop ebx
add esp, 0x618
ret
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x618
ret