Function at 0x444310
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov edi, ecx
mov esi, edx
cmp edi, 1
je 0x44432b
cmp edi, 9
jne 0x44440c
test esi, esi
je 0x44440c
mov ecx, esi
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x444335
sub ecx, esi
sar ecx, 1
lea edx, [ecx - 1]
mov ecx, str.http:
nop dword [eax]
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x444350
sub ecx, str.http:
sar ecx, 1
lea eax, [ecx - 1]
cmp edx, eax
jb 0x4443a0
mov ecx, str.http:
nop
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x444370
sub ecx, str.http:
sar ecx, 1
lea eax, [ecx - 1]
push eax
push str.http:
push esi
call dword [sym.imp.SHLWAPI.dll_StrCmpNIW]
neg eax
sbb eax, eax
add eax, 1
jne 0x444436
mov ecx, esi
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4443a2
sub ecx, esi
sar ecx, 1
lea edx, [ecx - 1]
mov ecx, str.https:
nop dword [eax]
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4443c0
sub ecx, str.https:
sar ecx, 1
lea eax, [ecx - 1]
cmp edx, eax
jb 0x44440c
mov ecx, str.https:
nop
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4443e0
sub ecx, str.https:
sar ecx, 1
lea eax, [ecx - 1]
push eax
push str.https:
push esi
call dword [sym.imp.SHLWAPI.dll_StrCmpNIW]
neg eax
sbb eax, eax
add eax, 1
jne 0x444436
cmp edi, 3
je 0x44444c
cmp edi, 2
jne 0x444444
test esi, esi
je 0x444584
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x444584
test al, 0x10
je 0x444584
mov esi, 1
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 4
jne 0x44447c
mov esi, dword [ebp + 8]
test esi, esi
je 0x444584
push esi
call dword [sym.imp.SHLWAPI.dll_PathIsRelativeW]
test eax, eax
jne 0x444436
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x444584
test al, 0x10
je 0x444436
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 5
jne 0x44450e
test esi, esi
je 0x444584
mov ecx, esi
nop
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x444490
sub ecx, esi
sar ecx, 1
lea edx, [ecx - 1]
mov ecx, str.mailto:
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4444a7
sub ecx, str.mailto:
sar ecx, 1
lea eax, [ecx - 1]
cmp edx, eax
jb 0x444584
mov ecx, str.mailto:
nop word [eax + eax]
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4444d0
sub ecx, str.mailto:
sar ecx, 1
lea eax, [ecx - 1]
push eax
push str.mailto:
push esi
call dword [sym.imp.SHLWAPI.dll_StrCmpNIW]
neg eax
sbb eax, eax
add eax, 1
je 0x444584
mov esi, 1
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 6
je 0x44451d
cmp edi, 8
je 0x44451d
cmp edi, 7
jne 0x444584
call fcn.00444240
test eax, eax
jne 0x444436
xor ebx, ebx
mov dword [ebp - 4], ebx
test esi, esi
je 0x444584
push ebx
push ebx
push 3
push ebx
push 7
push SysReAllocString
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
xor eax, eax
cmp edi, 0xffffffff
push ecx
cmove edi, eax
lea eax, [ebp - 4]
push eax
push ecx
mov edx, edi
mov ecx, esi
call fcn.00447600
add esp, 0xc
mov esi, 1
test eax, eax
cmovne ebx, esi
test edi, edi
je 0x44457c
cmp edi, 0xffffffff
je 0x44457c
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
jne 0x44443b
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret