Function at 0x42d5c0
Capabilities:
Check if file exists
Delete file

Disassembly:
push 0xffffffffffffffff
push 0x5202e4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x258
push ebx
push ebp
push esi
push edi
mov ebp, ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor ebx, ebx
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x45]
mov byte [esp + 0x44], bl
push 0x104
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x48]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x44]
push str...360safemgr_geturl.xml
push ecx
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
lea ecx, [esp + 0x148]
call fcn.00444510
push 0xea60
lea ecx, [esp + 0x14c]
mov dword [esp + 0x274], ebx
call fcn.004445d0
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::CString_3
mov esi, dword [esp + 0x278]
mov edx, dword [0x5706c4]
push edx
mov byte [esp + 0x274], 1
mov eax, dword [esi + 0x38c]
cmp eax, ebx
mov eax, dword [esi]
push eax
je 0x42d675
push str.http:__m.soft.360.cn_index.php_controllerIntfactionget.Down.Urlsoft_id_dno_view1ofmtxml_s
jmp 0x42d67a
push str.http:__q.soft.360.cn_get_download_url.php_soft_ids_d_s
lea ecx, [esp + 0x24]
push ecx
call sub.MFC42.DLL_CString::Format
mov edx, dword [esp + 0x28]
add esp, 0x10
push edx
push 0x562d34
call fcn.00432200
mov ecx, dword [esp + 0x20]
add esp, 8
lea eax, [esp + 0x44]
push eax
push ecx
lea ecx, [esp + 0x150]
call fcn.00444680
test eax, eax
je 0x42dd19
push 0x562d24
call fcn.00432200
mov dword [esp + 0x24], ebx
lea edx, [esp + 0x24]
mov byte [esp + 0x274], 2
push edx
call fcn.00416d50
add esp, 8
test eax, eax
jl 0x42dd01
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x42dd01
lea ecx, [esp + 0x44]
xor eax, eax
push ecx
lea ecx, [esp + 0x38]
mov dword [esp + 0x34], eax
mov word [esp + 0x38], ax
call fcn.00432170
mov edi, dword [esp + 0x34]
lea ecx, [esp + 0x30]
push ecx
mov eax, dword [esp + 0x24]
sub esp, 0x10
mov byte [esp + 0x284], 3
mov ecx, esp
mov edx, dword [eax]
push eax
mov dword [ecx], edi
mov edi, dword [esp + 0x50]
mov dword [ecx + 4], edi
mov edi, dword [esp + 0x54]
mov dword [ecx + 8], edi
mov edi, dword [esp + 0x58]
mov dword [ecx + 0xc], edi
call dword [edx + 0xe8]
test eax, eax
jl 0x42d75d
cmp word [esp + 0x30], 0xffff
sete al
test al, al
je 0x42d75d
mov bl, 1
jmp 0x42d75f
xor bl, bl
lea edx, [esp + 0x34]
mov byte [esp + 0x270], 2
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test bl, bl
je 0x42dd01
push 0x562d14
call fcn.00432200
add esp, 4
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor ebx, ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], ebx
push 0xffffffffffffffff
push 0x562d10
mov byte [esp + 0x278], 6
call fcn.00423b80
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x24]
push edx
push edi
mov ecx, dword [eax]
push eax
mov byte [esp + 0x27c], 7
call dword [ecx + 0x94]
test eax, eax
jl 0x42d7e6
cmp dword [esp + 0x24], ebx
je 0x42d7e6
mov bl, 1
jmp 0x42d7e8
xor bl, bl
push edi
mov byte [esp + 0x274], 6
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test bl, bl
je 0x42dcbf
push 0xffffffffffffffff
push str.softs
call fcn.00423b80
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x1c]
push edx
push edi
mov ecx, dword [eax]
push eax
mov byte [esp + 0x27c], 8
call dword [ecx + 0x94]
test eax, eax
jl 0x42d83f
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x42d83f
mov bl, 1
jmp 0x42d841
xor bl, bl
push edi
mov byte [esp + 0x274], 6
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test bl, bl
je 0x42dcbf
push 0xffffffffffffffff
push str.soft
call fcn.00423b80
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x1c]
lea edx, [esp + 0x14]
push edx
push edi
mov ecx, dword [eax]
push eax
mov byte [esp + 0x27c], 9
call dword [ecx + 0x94]
test eax, eax
jl 0x42d898
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42d898
mov bl, 1
jmp 0x42d89a
xor bl, bl
push edi
mov byte [esp + 0x274], 6
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test bl, bl
je 0x42dcbf
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.durls
call sub.MFC42.DLL_CString::CString_2
lea eax, [esp + 0x18]
lea ecx, [esp + 0x30]
push eax
push ecx
mov ecx, ebp
call fcn.0042d490
push ecx
mov byte [esp + 0x274], 0xa
mov ecx, esp
mov dword [esp + 0x14], esp
push str.vname
call sub.MFC42.DLL_CString::CString_2
lea edx, [esp + 0x18]
lea eax, [esp + 0x2c]
push edx
push eax
mov ecx, ebp
call fcn.0042d490
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x270], 0xb
mov ecx, dword [eax - 8]
test ecx, ecx
jle 0x42dc9d
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx - 8]
test edx, edx
jle 0x42dc9d
push eax
push 0x562cdc
call fcn.00432200
mov edx, dword [esp + 0x34]
lea eax, [esi + 0x5f4]
add esp, 8
mov edi, 0x400
sub edx, eax
mov cl, byte [eax + edx]
test cl, cl
je 0x42d951
mov byte [eax], cl
inc eax
dec edi
jne 0x42d942
jmp 0x42d955
test edi, edi
jne 0x42d956
dec eax
mov edx, dword [esp + 0x28]
mov byte [eax], 0
lea eax, [esi + 4]
mov edi, 0x104
sub edx, eax
mov cl, byte [eax + edx]
test cl, cl
je 0x42d976
mov byte [eax], cl
inc eax
dec edi
jne 0x42d967
jmp 0x42d97a
test edi, edi
jne 0x42d97b
dec eax
push ecx
mov byte [eax], 0
mov ecx, esp
mov dword [esp + 0x14], esp
push str.dname
call sub.MFC42.DLL_CString::CString_2
lea edx, [esp + 0x18]
lea eax, [esp + 0x14]
push edx
push eax
mov ecx, ebp
call fcn.0042d490
mov ecx, dword [eax]
lea ebx, [esi + 0x9f4]
mov edi, 0x64
mov eax, ebx
sub ecx, ebx
mov dl, byte [eax + ecx]
test dl, dl
je 0x42d9c0
mov byte [eax], dl
inc eax
dec edi
jne 0x42d9b1
jmp 0x42d9c4
test edi, edi
jne 0x42d9c5
dec eax
lea ecx, [esp + 0x10]
mov byte [eax], 0
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.args
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x18]
lea edx, [esp + 0x14]
push ecx
push edx
mov ecx, ebp
call fcn.0042d490
mov ecx, dword [eax]
lea eax, [esi + 0x288]
mov edi, 0x104
sub ecx, eax
mov dl, byte [eax + ecx]
test dl, dl
je 0x42da11
mov byte [eax], dl
inc eax
dec edi
jne 0x42da02
jmp 0x42da15
test edi, edi
jne 0x42da16
dec eax
lea ecx, [esp + 0x10]
mov byte [eax], 0
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 0x562cc8
call sub.MFC42.DLL_CString::CString_2
lea eax, [esp + 0x18]
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, ebp
call fcn.0042d490
mov ecx, dword [eax]
lea eax, [esi + 0x21c]
mov edi, 0x64
sub ecx, eax
mov dl, byte [eax + ecx]
test dl, dl
je 0x42da62
mov byte [eax], dl
inc eax
dec edi
jne 0x42da53
jmp 0x42da66
test edi, edi
jne 0x42da67
dec eax
lea ecx, [esp + 0x10]
mov byte [eax], 0
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 0x562cc4
call sub.MFC42.DLL_CString::CString_2
lea edx, [esp + 0x18]
lea eax, [esp + 0x14]
push edx
push eax
mov ecx, ebp
call fcn.0042d490
mov ecx, dword [eax]
lea eax, [esi + 0xa58]
mov edi, 0x28
sub ecx, eax
mov dl, byte [eax + ecx]
test dl, dl
je 0x42dab3
mov byte [eax], dl
inc eax
dec edi
jne 0x42daa4
jmp 0x42dab7
test edi, edi
jne 0x42dab8
dec eax
lea ecx, [esp + 0x10]
mov byte [eax], 0
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.hint2
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x18]
lea edx, [esp + 0x14]
push ecx
push edx
mov ecx, ebp
call fcn.0042d490
mov ecx, dword [eax]
lea eax, [esi + 0xa80]
mov edi, 0x400
sub ecx, eax
mov dl, byte [eax + ecx]
test dl, dl
je 0x42db04
mov byte [eax], dl
inc eax
dec edi
jne 0x42daf5
jmp 0x42db08
test edi, edi
jne 0x42db09
dec eax
lea ecx, [esp + 0x10]
mov byte [eax], 0
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.size
call sub.MFC42.DLL_CString::CString_2
lea eax, [esp + 0x18]
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, ebp
call fcn.0042d490
mov eax, dword [eax]
push eax
call dword [sym.imp.MSVCRT.dll__atoi64]
add esp, 4
lea ecx, [esp + 0x10]
mov dword [esi + 0x280], eax
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.pnum
call sub.MFC42.DLL_CString::CString_2
lea edx, [esp + 0x18]
lea eax, [esp + 0x14]
push edx
push eax
mov ecx, ebp
call fcn.0042d490
mov eax, dword [eax]
mov edi, dword [sym.imp.MSVCRT.dll_atoi]
push eax
call edi
add esp, 4
lea ecx, [esp + 0x10]
mov dword [esi + 0x5e0], eax
call sub.MFC42.DLL_CString::CString
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.iflag
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x18]
lea edx, [esp + 0x14]
push ecx
push edx
mov ecx, ebp
call fcn.0042d490
mov eax, dword [eax]
push eax
call edi
add esp, 4
xor ecx, ecx
cmp eax, 2
sete cl
mov dword [esi + 0x218], ecx
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::CString
mov edx, dword [0x56fbd4]
push ebx
lea eax, [esi + 0x114]
push edx
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineA]
lea ecx, [esp + 0x28]
mov dword [esi + 0x398], 1
mov byte [esp + 0x270], 0xa
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x270], 6
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x14]
mov byte [esp + 0x270], 5
test eax, eax
je 0x42dc29
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x270], 4
test eax, eax
je 0x42dc3f
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esp + 0x24]
mov byte [esp + 0x270], 2
test eax, eax
je 0x42dc55
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x20]
mov byte [esp + 0x270], 1
test eax, eax
je 0x42dc6b
mov edx, dword [eax]
push eax
call dword [edx + 8]
lea ecx, [esp + 0x18]
mov byte [esp + 0x270], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x148]
mov dword [esp + 0x270], 0xffffffff
call fcn.00444560
mov eax, 1
jmp 0x42dd5b
lea ecx, [esp + 0x28]
mov byte [esp + 0x270], 0xa
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x270], 6
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x14]
mov byte [esp + 0x270], 5
test eax, eax
je 0x42dcd5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x270], 4
test eax, eax
je 0x42dceb
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esp + 0x24]
mov byte [esp + 0x270], 2
test eax, eax
je 0x42dd01
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x20]
mov byte [esp + 0x270], 1
test eax, eax
je 0x42dd24
mov edx, dword [eax]
push eax
call dword [edx + 8]
jmp 0x42dd24
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x562c94
call fcn.00432200
add esp, 4
lea ecx, [esp + 0x18]
mov byte [esp + 0x270], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x148]
mov dword [esp + 0x270], 0xffffffff
call fcn.00444560
xor eax, eax
mov ecx, dword [esp + 0x268]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x264
ret 4