Function at 0x4d27e0
Capabilities:
Check if file exists
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x280
mov esi, dword [ebp + 8]
mov eax, dword [0x5f3418]
xor eax, ebp
mov dword [esp + 0x278], eax
mov ebx, dword [0x6c0230]
cmp ebx, 1
ja 0x4d2853
push 0x6c0230
call fcn.00408860
add esp, 4
test al, al
je 0x4d284d
mov byte [0x6c0234], 0
xor eax, eax
mov dword [0x6c023c], eax
mov dword [0x6c0238], eax
mov dword [0x6c0240], eax
mov byte [0x6c0244], 1
mov dword [0x6c0248], eax
mov ebx, 0x6c0234
mov dword [0x6c0230], ebx
jmp 0x4d2853
mov ebx, dword [0x6c0230]
xor eax, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], eax
test esi, esi
je 0x4d28be
push esi
call fcn.00510eb5
add esp, 4
lea ecx, [esp + 0x10]
push eax
push esi
call fcn.00547750
mov al, byte [esp + 0x1b]
test al, al
jns 0x4d2887
mov edi, dword [esp + 0x10]
jmp 0x4d288b
lea edi, [esp + 0x10]
cmp byte [0x6c024c], 0
je 0x4d2985
test al, al
jns 0x4d28a8
push dword [esp + 0x10]
call fcn.0050fc7c
add esp, 4
mov ecx, dword [esp + 0x278]
xor ecx, ebp
call fcn.00512ee3
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea edi, [esp + 0x70]
push 0x208
push 0
push edi
call fcn.005191b0
add esp, 0xc
push str.chrome.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
jne 0x4d29e3
xor eax, eax
push 0x104
push edi
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
dec eax
lea esi, [esp + 0x64]
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
push edi
call fcn.00510eb5
add esp, 4
mov ecx, esi
push eax
push edi
call fcn.0040e660
mov ecx, esi
xor eax, eax
push eax
push eax
call fcn.00501f10
xor ecx, ecx
dec ecx
cmp eax, ecx
jne 0x4d2c50
lea edi, [esp + 0x60]
mov dword [edi], 0xffffffff
push esi
push edi
call fcn.0056ce00
add esp, 8
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], eax
mov dword [esp + 8], eax
mov esi, dword [edi]
test esi, esi
jne 0x4d2a6e
cmp byte [esp + 0x6f], 0
jns 0x4d2969
push dword [esp + 0x64]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0x1b], 0
jns 0x4d2a0b
push dword [esp + 0x10]
call fcn.0050fc7c
add esp, 4
jmp 0x4d2a0b
call fcn.00587a30
mov ecx, eax
push edi
call fcn.00578160
test eax, eax
setne byte [ebx]
mov byte [0x6c024c], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + 0x14], eax
test edi, edi
je 0x4d2c3c
lea esi, [ebx + 4]
push edi
call fcn.00510eb5
add esp, 4
mov ecx, esi
push eax
push edi
call fcn.00547750
xor edi, edi
dec edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], edi
movzx eax, byte [ebx + 0xf]
test al, al
jns 0x4d2a23
mov esi, dword [ebx + 4]
mov eax, dword [ebx + 8]
jmp 0x4d2a26
push 0x103
push edi
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push edi
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
push 0x5d77c2
push edi
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov ecx, esp
push edi
call fcn.005477d0
mov eax, dword [esp + 8]
mov dword [esp + 0x18], eax
movsd xmm0, qword [esp]
movsd qword [esp + 0x10], xmm0
jmp 0x4d2879
and eax, 0x7f
lea ecx, [esp + 0x70]
push eax
push esi
mov esi, ecx
call fcn.0040e660
xor eax, eax
mov ecx, esi
push eax
push eax
call fcn.00501f10
cmp eax, edi
jne 0x4d2c3f
push esi
call fcn.00420f30
add esp, 4
mov byte [ebx + 0x10], al
cmp byte [esp + 0x7b], 0
jns 0x4d2a65
push dword [esp + 0x70]
call fcn.0050fc7c
add esp, 4
mov al, byte [esp + 0x1b]
jmp 0x4d2898
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x64]
push eax
call fcn.0041a7b0
xor eax, eax
lea edi, [esp + 0x20]
mov dword [edi + 4], eax
mov dword [edi], eax
mov dword [edi + 8], eax
mov ecx, esi
push edi
push 0x5dea62
call fcn.0056d220
movzx eax, byte [edi + 0xb]
test al, al
jns 0x4d2aa9
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
jmp 0x4d2aac
and eax, 0x7f
lea ecx, [esp + 0x30]
push eax
push edi
mov edi, ecx
push ecx
call fcn.00420d40
add esp, 0xc
movzx eax, byte [edi + 0xb]
test al, al
jns 0x4d2acf
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
jmp 0x4d2ad4
mov edx, edi
and eax, 0x7f
lea edi, [esp + 0x48]
lea ecx, [esp + 0x3c]
push eax
push edx
push edi
call fcn.00410a10
lea eax, [esp + 0x54]
mov ecx, edi
mov edi, eax
push 0xb
push 0x5d77c2
push eax
call fcn.00410a10
cmp byte [esp + 0xb], 0
movzx eax, byte [edi + 0xb]
js 0x4d2c61
test al, al
js 0x4d2b21
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
movsd xmm0, qword [esp + 0x54]
movsd qword [esp], xmm0
jmp 0x4d2b43
mov ecx, esp
push dword [esp + 0x58]
push dword [esp + 0x58]
call fcn.00407e20
cmp byte [esp + 0x5f], 0
jns 0x4d2b43
push dword [esp + 0x54]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0x53], 0
jns 0x4d2b56
push dword [esp + 0x48]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0x3b], 0
jns 0x4d2b69
push dword [esp + 0x30]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0x2b], 0
jns 0x4d2b7c
push dword [esp + 0x20]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0x47], 0
jns 0x4d2b8f
push dword [esp + 0x3c]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0xb], 0
jns 0x4d2b9b
mov eax, dword [esp]
jmp 0x4d2b9d
mov eax, esp
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4d2c27
lea ecx, [esp + 0x64]
lea edi, [esp + 0x48]
push edi
call fcn.0041a7b0
mov ecx, edi
lea edi, [esp + 0x54]
push 0xb
push 0x5d77c2
push edi
call fcn.00410a10
cmp byte [esp + 0xb], 0
movzx eax, byte [esp + 0x5f]
js 0x4d2c82
test al, al
js 0x4d2bf2
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
movsd xmm0, qword [esp + 0x54]
movsd qword [esp], xmm0
jmp 0x4d2c14
mov ecx, esp
push dword [esp + 0x58]
push dword [esp + 0x58]
call fcn.00407e20
cmp byte [esp + 0x5f], 0
jns 0x4d2c14
push dword [esp + 0x54]
call fcn.0050fc7c
add esp, 4
cmp byte [esp + 0x53], 0
jns 0x4d2c27
push dword [esp + 0x48]
call fcn.0050fc7c
add esp, 4
mov ecx, esi
call fcn.0056cc30
push esi
call fcn.0050fc7c
add esp, 4
jmp 0x4d2956
int3
lea ecx, [esp + 0x70]
push 0xffffffffffffffff
push eax
call fcn.00561c50
jmp 0x4d2a46
lea ecx, [esp + 0x64]
push 0xffffffffffffffff
push eax
call fcn.00561c50
jmp 0x4d292b
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
cmovns eax, edi
mov ecx, esp
push edx
push eax
call fcn.004d18b0
jmp 0x4d2b30
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0x58]
cmovs edi, dword [esp + 0x54]
mov ecx, esp
push edx
push edi
call fcn.004d18b0
jmp 0x4d2c01