Function at 0x4d38b0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x664
mov eax, dword [0x5e6468]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x648], ecx
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x21c], 0
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x228]
push ecx
call fcn.004d07b0
mov ecx, eax
call fcn.004d33a0
mov dword [ebp - 0x220], eax
xor edx, edx
cmp dword [ebp - 0x228], 0
setne dl
mov dword [ebp - 0x214], edx
cmp dword [ebp - 0x21c], 1
jne 0x4d3924
mov dword [ebp - 0x214], 2
jmp 0x4d3937
cmp dword [ebp - 0x21c], 3
jne 0x4d3937
mov dword [ebp - 0x214], 3
mov dword [ebp - 0x224], 0
push 0x208
push 0
lea eax, [ebp - 0x210]
push eax
call fcn.0055e2a0
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x210]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dword [ebp - 0x218], 0
cmp dword [ebp - 0x228], 0
je 0x4d3b2f
push 0x208
push 0
lea edx, [ebp - 0x430]
push edx
call fcn.0055e2a0
add esp, 0xc
lea eax, [ebp - 0x210]
push eax
push 0x208
lea ecx, [ebp - 0x430]
push ecx
call fcn.004b8620
push str..._somproxy.dll
lea edx, [ebp - 0x430]
push edx
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x4d3b2f
lea eax, [ebp - 0x430]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4d3b2f
lea ecx, [ebp - 0x430]
push ecx
call fcn.004be3a0
add esp, 4
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
je 0x4d3b2f
push str.IsSetHomePageEx
mov edx, dword [ebp - 0x434]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x444], eax
push 0x5af874
mov eax, dword [ebp - 0x434]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x440], eax
push 0x5af880
mov ecx, dword [ebp - 0x434]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x43c], eax
push 0x5af890
mov edx, dword [ebp - 0x434]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x438], eax
cmp dword [ebp - 0x43c], 0
je 0x4d3aa9
cmp dword [ebp - 0x43c], 0
je 0x4d3aa9
call dword [ebp - 0x43c]
test eax, eax
je 0x4d3a93
call dword [ebp - 0x43c]
test eax, eax
je 0x4d3a93
mov dword [ebp - 0x64c], 1
jmp 0x4d3a9d
mov dword [ebp - 0x64c], 0
mov eax, dword [ebp - 0x64c]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x444], 0
je 0x4d3b2f
cmp dword [ebp - 0x440], 0
je 0x4d3b2f
mov dword [ebp - 0x448], 0
mov dword [ebp - 0x450], VariantCopy
lea ecx, [ebp - 0x448]
push ecx
mov edx, dword [ebp - 0x450]
push edx
call dword [ebp - 0x444]
add esp, 8
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 0
je 0x4d3b2f
cmp dword [ebp - 0x448], 3
je 0x4d3b10
cmp dword [ebp - 0x448], 4
je 0x4d3b10
cmp dword [ebp - 0x448], 0
jne 0x4d3b2f
mov eax, dword [ebp - 0x450]
push eax
call dword [ebp - 0x440]
add esp, 4
mov ecx, dword [ebp - 0x218]
or ecx, 1
mov dword [ebp - 0x218], ecx
cmp dword [ebp - 0x214], 2
jne 0x4d3d35
cmp dword [ebp - 0x224], 0
je 0x4d3b54
mov dword [ebp - 0x214], 0x16
jmp 0x4d3d35
lea ecx, [ebp - 0x45c]
call fcn.00426ee0
lea ecx, [ebp - 0x46c]
call fcn.00426ee0
lea ecx, [ebp - 0x468]
call fcn.00426ee0
mov dword [ebp - 0x454], 0
lea edx, [ebp - 0x46c]
push edx
call fcn.004db0e0
add esp, 4
lea eax, [ebp - 0x454]
push eax
lea ecx, [ebp - 0x45c]
push ecx
call fcn.004dbd50
add esp, 8
lea edx, [ebp - 0x468]
push edx
call fcn.004db0b0
add esp, 4
lea ecx, [ebp - 0x46c]
call fcn.004273e0
movzx eax, al
test eax, eax
jne 0x4d3bec
lea ecx, [ebp - 0x468]
call fcn.004273c0
push eax
lea ecx, [ebp - 0x46c]
call fcn.004467b0
test eax, eax
jne 0x4d3bec
mov dword [ebp - 0x650], 1
jmp 0x4d3bf6
mov dword [ebp - 0x650], 0
mov ecx, dword [ebp - 0x650]
mov dword [ebp - 0x460], ecx
cmp dword [ebp - 0x454], 0
je 0x4d3c44
lea ecx, [ebp - 0x45c]
call fcn.004273e0
movzx edx, al
test edx, edx
jne 0x4d3c44
lea ecx, [ebp - 0x468]
call fcn.004273c0
push eax
lea ecx, [ebp - 0x45c]
call fcn.004467b0
test eax, eax
jne 0x4d3c44
mov dword [ebp - 0x654], 1
jmp 0x4d3c4e
mov dword [ebp - 0x654], 0
mov eax, dword [ebp - 0x654]
mov dword [ebp - 0x458], eax
lea ecx, [ebp - 0x46c]
call fcn.004273e0
movzx ecx, al
test ecx, ecx
jne 0x4d3ccd
cmp dword [ebp - 0x460], 0
jne 0x4d3ccd
cmp dword [ebp - 0x454], 0
jne 0x4d3ccd
lea ecx, [ebp - 0x45c]
call fcn.004273e0
movzx edx, al
test edx, edx
jne 0x4d3cb7
lea ecx, [ebp - 0x468]
call fcn.004273c0
push eax
lea ecx, [ebp - 0x45c]
call fcn.004467b0
test eax, eax
jne 0x4d3cb7
mov dword [ebp - 0x658], 1
jmp 0x4d3cc1
mov dword [ebp - 0x658], 0
mov eax, dword [ebp - 0x658]
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x460], 0
jne 0x4d3ceb
cmp dword [ebp - 0x458], 0
jne 0x4d3ceb
mov dword [ebp - 0x65c], 0
jmp 0x4d3cf5
mov dword [ebp - 0x65c], 1
mov ecx, dword [ebp - 0x65c]
mov dword [ebp - 0x464], ecx
cmp dword [ebp - 0x464], 0
je 0x4d3d14
mov dword [ebp - 0x214], 0x15
lea ecx, [ebp - 0x468]
call fcn.00426fe0
lea ecx, [ebp - 0x46c]
call fcn.00426fe0
lea ecx, [ebp - 0x45c]
call fcn.00426fe0
call fcn.004b5d70
test eax, eax
je 0x4d4124
lea ecx, [ebp - 0x608]
call fcn.0054e120
lea ecx, [ebp - 0x608]
call fcn.0054e2c0
push 1
lea ecx, [ebp - 0x608]
call fcn.0054e5e0
lea ecx, [ebp - 0x530]
call fcn.004ed840
push 0xb8
push 0
lea edx, [ebp - 0x530]
push edx
call fcn.0055e2a0
add esp, 0xc
mov dword [ebp - 0x530], 0xb8
lea ecx, [ebp - 0x474]
call fcn.00426ee0
lea eax, [ebp - 0x530]
mov dword [ebp - 0x534], eax
mov ecx, dword [ebp - 0x214]
push ecx
push str.pgid:100bp:_d
lea edx, [ebp - 0x474]
push edx
call fcn.0042fa10
add esp, 0xc
cmp dword [0x5ebf44], 0
je 0x4d3eb9
lea ecx, [ebp - 0x610]
call fcn.00426ee0
mov ecx, dword [0x5ebf44]
call fcn.004dbfb0
mov dword [ebp - 0x614], eax
mov ecx, dword [0x5ebf44]
call fcn.004dbf90
cmp eax, 0x100
jne 0x4d3e0d
push str.xptgg
lea ecx, [ebp - 0x610]
call fcn.00427020
lea ecx, [ebp - 0x60c]
call fcn.00426ee0
mov eax, dword [ebp - 0x610]
push eax
mov ecx, dword [ebp - 0x614]
push ecx
push 0x5af8d0
lea edx, [ebp - 0x60c]
push edx
call fcn.0042fa10
add esp, 0x10
lea eax, [ebp - 0x60c]
push eax
lea ecx, [ebp - 0x474]
call fcn.0045fbe0
mov ecx, dword [0x5ebf44]
mov dword [ebp - 0x634], ecx
mov edx, dword [ebp - 0x634]
mov dword [ebp - 0x630], edx
cmp dword [ebp - 0x630], 0
je 0x4d3e8a
push 1
mov eax, dword [ebp - 0x630]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x630]
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 0x660], eax
jmp 0x4d3e94
mov dword [ebp - 0x660], 0
mov dword [0x5ebf44], 0
lea ecx, [ebp - 0x60c]
call fcn.00426fe0
lea ecx, [ebp - 0x610]
call fcn.00426fe0
jmp 0x4d3f59
mov dword [ebp - 0x61c], 0
lea ecx, [ebp - 0x61c]
push ecx
push 0
mov ecx, dword [ebp - 0x648]
call fcn.004d4590
mov dword [ebp - 0x618], eax
cmp dword [ebp - 0x618], 0
je 0x4d3f59
mov edx, dword [ebp - 0x648]
cmp dword [edx + 0x1dcc], 0
je 0x4d3f59
mov eax, dword [ebp - 0x648]
mov dword [eax + 0x1dcc], 0
lea ecx, [ebp - 0x620]
call fcn.00426ee0
push str.wgbbhd
mov ecx, dword [ebp - 0x648]
xor edx, edx
cmp dword [ecx + 0x1dc8], 0
setne dl
push edx
push 0x5af900
lea eax, [ebp - 0x620]
push eax
call fcn.0042fa10
add esp, 0x10
lea ecx, [ebp - 0x620]
push ecx
lea ecx, [ebp - 0x474]
call fcn.0045fbe0
lea ecx, [ebp - 0x620]
call fcn.00426fe0
cmp dword [0x5ebf48], 0
je 0x4d4038
lea ecx, [ebp - 0x628]
call fcn.00426ee0
mov ecx, dword [0x5ebf48]
call fcn.004dbfd0
mov dword [ebp - 0x62c], eax
push str.xpq11
lea ecx, [ebp - 0x628]
call fcn.00427020
lea ecx, [ebp - 0x624]
call fcn.00426ee0
mov edx, dword [ebp - 0x628]
push edx
mov eax, dword [ebp - 0x62c]
push eax
push str.ac:_dex:_s
lea ecx, [ebp - 0x624]
push ecx
call fcn.0042fa10
add esp, 0x10
lea edx, [ebp - 0x624]
push edx
lea ecx, [ebp - 0x474]
call fcn.0045fbe0
mov eax, dword [0x5ebf48]
mov dword [ebp - 0x63c], eax
mov ecx, dword [ebp - 0x63c]
mov dword [ebp - 0x638], ecx
cmp dword [ebp - 0x638], 0
je 0x4d400e
push 1
mov edx, dword [ebp - 0x638]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x638]
mov edx, dword [eax + 4]
call edx
mov dword [ebp - 0x664], eax
jmp 0x4d4018
mov dword [ebp - 0x664], 0
mov dword [0x5ebf48], 0
lea ecx, [ebp - 0x624]
call fcn.00426fe0
lea ecx, [ebp - 0x628]
call fcn.00426fe0
lea ecx, [ebp - 0x538]
call fcn.00426ee0
cmp dword [ebp - 0x218], 0
je 0x4d4067
mov eax, dword [ebp - 0x218]
push eax
push str.ex2:_d
lea ecx, [ebp - 0x538]
push ecx
call fcn.0042fa10
add esp, 0xc
lea edx, [ebp - 0x538]
push edx
lea ecx, [ebp - 0x474]
call fcn.0045fbe0
call fcn.004b81f0
mov dword [ebp - 0x470], eax
mov eax, dword [ebp - 0x470]
push eax
push str.v:
lea ecx, [ebp - 0x474]
push ecx
lea edx, [ebp - 0x640]
push edx
call fcn.004272e0
add esp, 0xc
push eax
lea eax, [ebp - 0x644]
push eax
call fcn.004272e0
add esp, 0xc
push eax
lea ecx, [ebp - 0x474]
call fcn.00427000
lea ecx, [ebp - 0x644]
call fcn.00426fe0
lea ecx, [ebp - 0x640]
call fcn.00426fe0
lea ecx, [ebp - 0x474]
call fcn.004273c0
push eax
push 1
lea ecx, [ebp - 0x534]
push ecx
lea ecx, [ebp - 0x608]
call fcn.0054e540
lea ecx, [ebp - 0x538]
call fcn.00426fe0
lea ecx, [ebp - 0x474]
call fcn.00426fe0
lea ecx, [ebp - 0x530]
call fcn.004ed8c0
lea ecx, [ebp - 0x608]
call fcn.0054e1a0
cmp dword [ebp - 0x21c], 3
jne 0x4d4148
push 3
push 0x5af96c
push 0x5af97c
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004b80b0
add esp, 0x10
jmp 0x4d41b2
cmp dword [ebp - 0x21c], 1
jne 0x4d416c
push 2
push 0x5af9a8
push 0x5af9b8
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004b80b0
add esp, 0x10
jmp 0x4d41b2
cmp dword [ebp - 0x21c], 2
jne 0x4d4190
push 1
push 0x5af9e4
push 0x5af9f4
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004b80b0
add esp, 0x10
jmp 0x4d41b2
cmp dword [ebp - 0x21c], 0
jne 0x4d41b2
push 0
push str.WD_NPI
push str.SOFTWARE360Safe_stat
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004b80b0
add esp, 0x10
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0055e289
mov esp, ebp
pop ebp
ret