Function at 0x42f5c0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x443871
mov eax, dword fs:[0]
push eax
mov eax, 0xfc50
call fcn.0041f0c0
mov eax, dword [0x454080]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xfc5c], ecx
movzx eax, byte [0x457dd8]
test eax, eax
je 0x42f609
xor eax, eax
jmp 0x42fc04
mov byte [0x457dd8], 1
mov ecx, dword [ebp - 0xfc5c]
mov dword [ecx], 0
mov edx, dword [ebp - 0xfc5c]
mov dword [edx + 8], 0
mov eax, dword [ebp - 0xfc5c]
mov dword [eax + 0xc], 0
mov ecx, dword [ebp - 0xfc5c]
add ecx, 0x26c
call fcn.00412f00
push 0x5000
lea ecx, [ebp - 0xf40c]
push ecx
mov edx, dword [ebp + 8]
push edx
call sym.Install_classic.exe_public:_static_class_CNsNet____cdecl_CNsNet::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsNet::GetUrlInfo_wchar_t_const___char___int_
mov eax, dword [ebp - 0xfc5c]
cmp dword [eax + 0x45c], 0
je 0x42f69a
call sym.Install_classic.exe_public:_static_class_CNsNet____cdecl_CNsNet::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsNet::GetInfoLen_void_
mov dword [ebp - 0xf7f8], eax
mov ecx, dword [ebp - 0xf7f8]
push ecx
lea edx, [ebp - 0xf40c]
push edx
call sym.Install_classic.exe_void___cdecl_EasyEncode_char___int_
add esp, 8
push 0x5000
lea eax, [ebp - 0xa014]
push eax
push 0xffffffffffffffff
lea ecx, [ebp - 0xf40c]
push ecx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea edx, [ebp - 0xa014]
push edx
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::Parse_wchar_t_const__
lea eax, [ebp - 0xf7f4]
push eax
push str.Switch
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t__
push 0x448a5c
lea ecx, [ebp - 0xf7f4]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x42f71a
cmp dword [ebp + 0xc], 0
je 0x42f70c
push 0
push 0
push 1
call dword [ebp + 0xc]
mov byte [0x457dd8], 0
xor eax, eax
jmp 0x42fc04
lea edx, [ebp - 0xa3fc]
push edx
push 0x448a64
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t__
mov dword [ebp - 0xa404], 0
push str.File
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeCount_wchar_t_const__
mov dword [ebp - 0xa408], eax
cmp dword [ebp + 0xc], 0
je 0x42f76c
mov eax, dword [ebp - 0xa408]
push eax
mov ecx, dword [ebp - 0xa404]
push ecx
push 2
call dword [ebp + 0xc]
mov dword [ebp - 0xa40c], 0
mov dword [ebp - 0xa400], 0
mov dword [ebp - 0xf7fc], 0
jmp 0x42f79b
mov edx, dword [ebp - 0xf7fc]
add edx, 1
mov dword [ebp - 0xf7fc], edx
mov eax, dword [ebp - 0xf7fc]
cmp eax, dword [ebp - 0xa408]
jge 0x42fbb9
mov ecx, dword [ebp - 0xfc5c]
cmp dword [ecx], 0
je 0x42f7ef
mov edx, dword [ebp - 0xfc5c]
mov dword [edx + 4], 0
mov eax, dword [ebp - 0xfc5c]
mov dword [eax + 8], 1
cmp dword [ebp + 0xc], 0
je 0x42f7e1
push 0
push 0
push 4
call dword [ebp + 0xc]
mov byte [0x457dd8], 0
xor eax, eax
jmp 0x42fc04
lea ecx, [ebp - 0xa400]
push ecx
lea edx, [ebp - 0xf7f4]
push edx
push str.WebPath
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
lea eax, [ebp - 0xf80c]
push eax
lea ecx, [ebp - 0xa3fc]
call fcn.00404c20
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xf7f4]
push ecx
lea ecx, [ebp - 0xf80c]
call fcn.0040bcb0
lea edx, [ebp - 0xa400]
push edx
lea eax, [ebp - 0xf7f4]
push eax
push str.SavePath
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
mov ecx, dword [ebp - 0xfc5c]
add ecx, 0x10
lea edx, [ebp - 0xf804]
push edx
call fcn.00404c20
mov byte [ebp - 4], 1
lea eax, [ebp - 0xf7f4]
push eax
lea ecx, [ebp - 0xf804]
call fcn.0040bcb0
lea ecx, [ebp - 0xa400]
push ecx
lea edx, [ebp - 0xf7f4]
push edx
push str.RealPath
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
lea eax, [ebp - 0xf804]
lea esi, [ebp - 0xf808]
call fcn.00404c00
mov byte [ebp - 4], 2
mov byte [ebp - 0xf80d], 0
lea eax, [ebp - 0xf7f4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jle 0x42f960
mov edx, dword [ebp - 0xfc5c]
add edx, 0x10
lea edi, [ebp - 0xf808]
call fcn.00404d60
lea ecx, [ebp - 0xf7f4]
push ecx
lea ecx, [ebp - 0xf808]
call fcn.0040bcb0
mov byte [ebp - 0xf80d], 1
push 0x410
push 0
lea edx, [ebp - 0xfc24]
push edx
call fcn.004177b0
add esp, 0xc
lea eax, [ebp - 0xf804]
call fcn.00404da0
push eax
lea eax, [ebp - 0xfc24]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [ebp - 0xf808]
call fcn.00404da0
push eax
lea ecx, [ebp - 0xfa1c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea edx, [ebp - 0xfc24]
push edx
mov ecx, dword [ebp - 0xfc5c]
add ecx, 0x26c
call fcn.004155c0
lea eax, [ebp - 0xa400]
push eax
lea ecx, [ebp - 0xf7f4]
push ecx
push str.Size
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
lea edx, [ebp - 0xf7f4]
push edx
call fcn.00422a70
add esp, 4
mov dword [ebp - 0xf800], eax
lea eax, [ebp - 0xa400]
push eax
lea ecx, [ebp - 0xf7f4]
push ecx
push 0x448ab0
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
mov edx, dword [ebp - 0xf800]
push edx
lea eax, [ebp - 0xf7f4]
push eax
lea eax, [ebp - 0xf808]
call fcn.00404da0
push eax
mov ecx, dword [ebp - 0xfc5c]
call sym.Install_classic.exe_public:_int___thiscall_CNsUpdate::VerifyFile_wchar_t_const___wchar_t_const___int_
test eax, eax
jne 0x42faea
mov ecx, dword [ebp + 0x10]
push ecx
push 0
lea eax, [ebp - 0xf804]
call fcn.00404da0
push eax
lea eax, [ebp - 0xf80c]
call fcn.00404da0
push eax
mov ecx, dword [ebp - 0xfc5c]
add ecx, 0x27c
call sym.Install_classic.exe_public:_int___thiscall_CNsDownload::GetHttpFile_wchar_t_const___wchar_t_const___int__void____stdcall___int__wchar_t_const___long_long___int64___long_long___int64___double__
mov edx, dword [ebp - 0xa40c]
add edx, 1
mov dword [ebp - 0xa40c], edx
mov eax, dword [ebp - 0xf800]
push eax
lea ecx, [ebp - 0xf7f4]
push ecx
lea eax, [ebp - 0xf804]
call fcn.00404da0
push eax
mov ecx, dword [ebp - 0xfc5c]
call sym.Install_classic.exe_public:_int___thiscall_CNsUpdate::VerifyFile_wchar_t_const___wchar_t_const___int_
test eax, eax
jne 0x42fad2
mov edx, dword [ebp - 0xfc5c]
mov dword [edx + 4], 0
mov eax, dword [ebp - 0xfc5c]
mov dword [eax + 0xc], 1
cmp dword [ebp + 0xc], 0
je 0x42fa74
push 0
push 0
push 5
call dword [ebp + 0xc]
lea eax, [ebp - 0xf804]
call fcn.00404da0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [0x457dd8], 0
mov dword [ebp - 0xfc28], 0
mov byte [ebp - 4], 1
lea eax, [ebp - 0xf808]
call fcn.00404cd0
mov byte [ebp - 4], 0
lea eax, [ebp - 0xf804]
call fcn.00404cd0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xf80c]
call fcn.00404cd0
mov eax, dword [ebp - 0xfc28]
jmp 0x42fc04
movzx ecx, byte [ebp - 0xf80d]
test ecx, ecx
je 0x42faea
mov edx, dword [ebp - 0xfc5c]
mov dword [edx + 4], 1
cmp dword [ebp + 0xc], 0
je 0x42fb03
mov eax, dword [ebp - 0xa408]
push eax
mov ecx, dword [ebp - 0xa404]
push ecx
push 2
call dword [ebp + 0xc]
lea edx, [ebp - 0xa400]
push edx
lea eax, [ebp - 0xf7f4]
push eax
push 0x448ab8
call sym.Install_classic.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_classic.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
push str.hide
lea ecx, [ebp - 0xf7f4]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
jne 0x42fb54
push 0
push 0
push 0
lea eax, [ebp - 0xf804]
call fcn.00404da0
push eax
call sym.Install_classic.exe_int___cdecl_DoRun_wchar_t_const___wchar_t_const___int__int_
add esp, 0x10
jmp 0x42fb84
push str.show
lea edx, [ebp - 0xf7f4]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
jne 0x42fb84
push 5
push 0
push 0
lea eax, [ebp - 0xf804]
call fcn.00404da0
push eax
call sym.Install_classic.exe_int___cdecl_DoRun_wchar_t_const___wchar_t_const___int__int_
add esp, 0x10
mov byte [ebp - 4], 1
lea eax, [ebp - 0xf808]
call fcn.00404cd0
mov byte [ebp - 4], 0
lea eax, [ebp - 0xf804]
call fcn.00404cd0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xf80c]
call fcn.00404cd0
jmp 0x42f78c
cmp dword [ebp - 0xa40c], 0
jle 0x42fbec
cmp dword [ebp + 0xc], 0
je 0x42fbd1
push 0
push 0
push 3
call dword [ebp + 0xc]
mov ecx, dword [ebp - 0xfc5c]
call sym.Install_classic.exe_private:_void___thiscall_CNsUpdate::SaveUpdateCfg_void_
mov byte [0x457dd8], 0
mov eax, 1
jmp 0x42fc04
cmp dword [ebp + 0xc], 0
je 0x42fbfb
push 0
push 0
push 1
call dword [ebp + 0xc]
mov byte [0x457dd8], 0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004168aa
mov esp, ebp
pop ebp
ret 0xc