Function at 0x4316b0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44717f
mov eax, dword fs:[0]
push eax
mov eax, 0xfc50
call fcn.00420f80
mov eax, dword [0x459080]
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 [0x45cde0]
test eax, eax
je 0x4316f9
xor eax, eax
jmp 0x431cf4
mov byte [0x45cde0], 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.00414400
push 0x5000
lea ecx, [ebp - 0xf40c]
push ecx
mov edx, dword [ebp + 8]
push edx
call sym.Install_time.exe_public:_static_class_CNsNet____cdecl_CNsNet::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsNet::GetUrlInfo_wchar_t_const___char___int_
mov eax, dword [ebp - 0xfc5c]
cmp dword [eax + 0x45c], 0
je 0x43178a
call sym.Install_time.exe_public:_static_class_CNsNet____cdecl_CNsNet::Instance_void_
mov ecx, eax
call sym.Install_time.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_time.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_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::Parse_wchar_t_const__
lea eax, [ebp - 0xf7f4]
push eax
push str.Switch
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t__
push 0x44cb94
lea ecx, [ebp - 0xf7f4]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x43180a
cmp dword [ebp + 0xc], 0
je 0x4317fc
push 0
push 0
push 1
call dword [ebp + 0xc]
mov byte [0x45cde0], 0
xor eax, eax
jmp 0x431cf4
lea edx, [ebp - 0xa3fc]
push edx
push 0x44cb9c
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t__
mov dword [ebp - 0xa404], 0
push str.File
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::GetXmlNodeCount_wchar_t_const__
mov dword [ebp - 0xa408], eax
cmp dword [ebp + 0xc], 0
je 0x43185c
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 0x43188b
mov edx, dword [ebp - 0xf7fc]
add edx, 1
mov dword [ebp - 0xf7fc], edx
mov eax, dword [ebp - 0xf7fc]
cmp eax, dword [ebp - 0xa408]
jge 0x431ca9
mov ecx, dword [ebp - 0xfc5c]
cmp dword [ecx], 0
je 0x4318df
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 0x4318d1
push 0
push 0
push 4
call dword [ebp + 0xc]
mov byte [0x45cde0], 0
xor eax, eax
jmp 0x431cf4
lea ecx, [ebp - 0xa400]
push ecx
lea edx, [ebp - 0xf7f4]
push edx
push str.WebPath
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
lea eax, [ebp - 0xf80c]
push eax
lea ecx, [ebp - 0xa3fc]
call fcn.004056c0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xf7f4]
push ecx
lea ecx, [ebp - 0xf80c]
call fcn.0040cdc0
lea edx, [ebp - 0xa400]
push edx
lea eax, [ebp - 0xf7f4]
push eax
push str.SavePath
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.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.004056c0
mov byte [ebp - 4], 1
lea eax, [ebp - 0xf7f4]
push eax
lea ecx, [ebp - 0xf804]
call fcn.0040cdc0
lea ecx, [ebp - 0xa400]
push ecx
lea edx, [ebp - 0xf7f4]
push edx
push str.RealPath
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
lea eax, [ebp - 0xf804]
lea esi, [ebp - 0xf808]
call fcn.004056a0
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 0x431a50
mov edx, dword [ebp - 0xfc5c]
add edx, 0x10
lea edi, [ebp - 0xf808]
call fcn.004057e0
lea ecx, [ebp - 0xf7f4]
push ecx
lea ecx, [ebp - 0xf808]
call fcn.0040cdc0
mov byte [ebp - 0xf80d], 1
push 0x410
push 0
lea edx, [ebp - 0xfc24]
push edx
call fcn.00418aa0
add esp, 0xc
lea eax, [ebp - 0xf804]
call fcn.00405900
push eax
lea eax, [ebp - 0xfc24]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [ebp - 0xf808]
call fcn.00405900
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.00416b90
lea eax, [ebp - 0xa400]
push eax
lea ecx, [ebp - 0xf7f4]
push ecx
push str.Size
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.exe_public:_int___thiscall_CNsXml::GetXmlNodeValue_wchar_t_const___wchar_t___int__
lea edx, [ebp - 0xf7f4]
push edx
call fcn.00424930
add esp, 4
mov dword [ebp - 0xf800], eax
lea eax, [ebp - 0xa400]
push eax
lea ecx, [ebp - 0xf7f4]
push ecx
push 0x44cbf4
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.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.00405900
push eax
mov ecx, dword [ebp - 0xfc5c]
call sym.Install_time.exe_public:_int___thiscall_CNsUpdate::VerifyFile_wchar_t_const___wchar_t_const___int_
test eax, eax
jne 0x431bda
mov ecx, dword [ebp + 0x10]
push ecx
push 0
lea eax, [ebp - 0xf804]
call fcn.00405900
push eax
lea eax, [ebp - 0xf80c]
call fcn.00405900
push eax
mov ecx, dword [ebp - 0xfc5c]
add ecx, 0x27c
call sym.Install_time.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.00405900
push eax
mov ecx, dword [ebp - 0xfc5c]
call sym.Install_time.exe_public:_int___thiscall_CNsUpdate::VerifyFile_wchar_t_const___wchar_t_const___int_
test eax, eax
jne 0x431bc2
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 0x431b64
push 0
push 0
push 5
call dword [ebp + 0xc]
lea eax, [ebp - 0xf804]
call fcn.00405900
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [0x45cde0], 0
mov dword [ebp - 0xfc28], 0
mov byte [ebp - 4], 1
lea eax, [ebp - 0xf808]
call fcn.004058e0
mov byte [ebp - 4], 0
lea eax, [ebp - 0xf804]
call fcn.004058e0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xf80c]
call fcn.004058e0
mov eax, dword [ebp - 0xfc28]
jmp 0x431cf4
movzx ecx, byte [ebp - 0xf80d]
test ecx, ecx
je 0x431bda
mov edx, dword [ebp - 0xfc5c]
mov dword [edx + 4], 1
cmp dword [ebp + 0xc], 0
je 0x431bf3
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 0x44cbfc
call sym.Install_time.exe_public:_static_class_CNsXml____cdecl_CNsXml::Instance_void_
mov ecx, eax
call sym.Install_time.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 0x431c44
push 0
push 0
push 0
lea eax, [ebp - 0xf804]
call fcn.00405900
push eax
call sym.Install_time.exe_int___cdecl_DoRun_wchar_t_const___wchar_t_const___int__int_
add esp, 0x10
jmp 0x431c74
push str.show
lea edx, [ebp - 0xf7f4]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
jne 0x431c74
push 5
push 0
push 0
lea eax, [ebp - 0xf804]
call fcn.00405900
push eax
call sym.Install_time.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.004058e0
mov byte [ebp - 4], 0
lea eax, [ebp - 0xf804]
call fcn.004058e0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xf80c]
call fcn.004058e0
jmp 0x43187c
cmp dword [ebp - 0xa40c], 0
jle 0x431cdc
cmp dword [ebp + 0xc], 0
je 0x431cc1
push 0
push 0
push 3
call dword [ebp + 0xc]
mov ecx, dword [ebp - 0xfc5c]
call sym.Install_time.exe_private:_void___thiscall_CNsUpdate::SaveUpdateCfg_void_
mov byte [0x45cde0], 0
mov eax, 1
jmp 0x431cf4
cmp dword [ebp + 0xc], 0
je 0x431ceb
push 0
push 0
push 1
call dword [ebp + 0xc]
mov byte [0x45cde0], 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.00417bfa
mov esp, ebp
pop ebp
ret 0xc