Function at 0x4de890
Capabilities:
Check if file exists
Delete file
Get geographical location
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x178
mov eax, dword [0x544af0]
xor eax, ebp
mov dword [ebp - 4], eax
push str.http:__iplocation.geo.qiyi.com_cityjson
lea ecx, [ebp - 0x30]
call fcn.004037e0
lea ecx, [ebp - 0x2c]
call fcn.00407250
mov eax, dword [0x549dbc]
push eax
push str._scity.json
lea ecx, [ebp - 0x2c]
push ecx
call fcn.00406160
add esp, 0xc
lea ecx, [ebp - 0x2c]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4de8f1
lea ecx, [ebp - 0x2c]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0xbb8
push ecx
mov ecx, esp
mov dword [ebp - 0x150], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.00402130
push ecx
mov ecx, esp
mov dword [ebp - 0x154], esp
lea eax, [ebp - 0x30]
push eax
call fcn.00402130
call fcn.004de030
add esp, 0xc
test eax, eax
jne 0x4de943
lea ecx, [ebp - 0x2c]
call fcn.00402e70
lea ecx, [ebp - 0x30]
call fcn.00402e70
lea ecx, [ebp + 8]
call fcn.00402e70
jmp 0x4dec3a
lea ecx, [ebp - 0x2c]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4de973
lea ecx, [ebp - 0x2c]
call fcn.00402e70
lea ecx, [ebp - 0x30]
call fcn.00402e70
lea ecx, [ebp + 8]
call fcn.00402e70
jmp 0x4dec3a
lea ecx, [ebp - 0x28]
call fcn.00407250
push 0x514948
lea ecx, [ebp - 0x2c]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
call fcn.004b8769
add esp, 8
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x4de9bf
lea ecx, [ebp - 0x28]
call fcn.00402e70
lea ecx, [ebp - 0x2c]
call fcn.00402e70
lea ecx, [ebp - 0x30]
call fcn.00402e70
lea ecx, [ebp + 8]
call fcn.00402e70
jmp 0x4dec3a
push 2
push 0
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.004b8fbc
add esp, 0xc
mov edx, dword [ebp - 0x24]
push edx
call fcn.004b91de
add esp, 4
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
call fcn.00496d17
add esp, 4
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x158]
mov dword [ebp - 0xf8], ecx
push 0
push 0
mov edx, dword [ebp - 0x24]
push edx
call fcn.004b8fbc
add esp, 0xc
mov eax, dword [ebp - 0x24]
push eax
mov ecx, dword [ebp - 0xf4]
push ecx
push 1
mov edx, dword [ebp - 0xf8]
push edx
call fcn.004b94ec
add esp, 0x10
lea ecx, [ebp - 0x20]
call fcn.00407bf0
mov eax, dword [ebp - 0xf4]
push eax
mov ecx, dword [ebp - 0xf8]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00402300
mov edx, dword [ebp - 0xf8]
mov dword [ebp - 0x15c], edx
mov eax, dword [ebp - 0x15c]
push eax
call fcn.00496d22
add esp, 4
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.004b884a
add esp, 4
lea ecx, [ebp - 0xf0]
call fcn.0041eeb0
push 0
lea ecx, [ebp - 0x60]
call fcn.00425e30
lea ecx, [ebp - 0x4c]
call fcn.00407bf0
lea edx, [ebp - 0x20]
push edx
lea eax, [ebp - 0x178]
push eax
call fcn.00416080
add esp, 8
push eax
lea ecx, [ebp - 0x4c]
call fcn.00408470
lea ecx, [ebp - 0x178]
call fcn.00402bf0
push 1
lea ecx, [ebp - 0x60]
push ecx
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp - 0xf0]
call fcn.0041efd0
movzx eax, al
test eax, eax
je 0x4debcf
lea ecx, [ebp - 0x114]
push ecx
push str.code
lea ecx, [ebp - 0x60]
call fcn.00427b20
mov ecx, eax
call fcn.00426b50
push str.A00000
lea ecx, [ebp - 0x114]
call fcn.0040c8e0
test eax, eax
jne 0x4debc4
push str.data
lea ecx, [ebp - 0x60]
call fcn.00427b20
push eax
lea ecx, [ebp - 0x128]
call fcn.00426250
lea ecx, [ebp - 0x128]
call fcn.004276e0
movzx edx, al
test edx, edx
jne 0x4debb9
xor eax, eax
mov word [ebp - 0x14c], ax
xor ecx, ecx
mov dword [ebp - 0x14a], ecx
mov dword [ebp - 0x146], ecx
mov dword [ebp - 0x142], ecx
mov dword [ebp - 0x13e], ecx
mov dword [ebp - 0x13a], ecx
mov dword [ebp - 0x136], ecx
mov dword [ebp - 0x132], ecx
mov word [ebp - 0x12e], cx
push str.city_id
lea ecx, [ebp - 0x128]
call fcn.00427b20
mov ecx, eax
call fcn.00426c60
mov dword [ebp - 0x12c], eax
push 0xa
lea edx, [ebp - 0x14c]
push edx
mov eax, dword [ebp - 0x12c]
push eax
call fcn.004babdd
add esp, 0xc
lea ecx, [ebp - 0x14c]
push ecx
lea ecx, [ebp - 0x28]
call fcn.004037c0
lea ecx, [ebp - 0x128]
call fcn.00426460
lea ecx, [ebp - 0x114]
call fcn.00402bf0
mov ecx, 0x549da0
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
lea ecx, [ebp - 0x28]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
lea ecx, [ebp + 8]
call sym.QiyiInstaller.exe_public:_enum_eScriptType___thiscall_CScriptModule::Type_void_
push eax
push 0x514970
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea ecx, [ebp - 0x4c]
call fcn.00402bf0
lea ecx, [ebp - 0x60]
call fcn.00426460
lea ecx, [ebp - 0xf0]
call fcn.00408140
lea ecx, [ebp - 0x20]
call fcn.00402bf0
lea ecx, [ebp - 0x28]
call fcn.00402e70
lea ecx, [ebp - 0x2c]
call fcn.00402e70
lea ecx, [ebp - 0x30]
call fcn.00402e70
lea ecx, [ebp + 8]
call fcn.00402e70
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004b5ba3
mov esp, ebp
pop ebp
ret