Function at 0x401730
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x449831
mov eax, dword fs:[0]
push eax
sub esp, 0x430
mov eax, dword [0x45a040]
xor eax, esp
mov dword [esp + 0x428], eax
push ebx
push esi
push edi
mov eax, dword [0x45a040]
xor eax, esp
push eax
lea eax, [esp + 0x440]
mov dword fs:[0], eax
mov dword [esp + 0x1c], ecx
xor eax, eax
mov esi, 0x206
push esi
mov word [esp + 0x230], ax
xor edi, edi
lea eax, [esp + 0x232]
push edi
push eax
call fcn.00437340
add esp, 0xc
xor eax, eax
push esi
mov word [esp + 0x28], ax
lea eax, [esp + 0x2a]
push edi
push eax
call fcn.00437340
mov eax, dword [0x45d8cc]
mov ebx, 0x45d8cc
add esp, 0xc
mov ecx, ebx
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
push 0x104
lea eax, [esp + 0x28]
push eax
push edi
mov dword [esp + 0x454], edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [esp + 0x24]
push 0x5c
push eax
call fcn.0043493b
pop ecx
inc eax
pop ecx
inc eax
push eax
lea eax, [esp + 0x14]
push eax
call fcn.00402ba6
lea eax, [esp + 0x24]
push 0x5c
push eax
call fcn.0043493b
pop ecx
pop ecx
xor ecx, ecx
lea edi, [esp + 0x24]
dec edi
mov word [eax], cx
dec edi
mov ax, word [edi + 2]
inc edi
inc edi
test ax, ax
jne 0x40180f
push 0xa
pop ecx
mov esi, str.SHOnlineInstall.ini
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x44c374
xor ecx, ecx
lea esi, [esp + 0x14]
call fcn.00402bda
mov edi, eax
mov eax, dword [0x45d8cc]
mov ecx, ebx
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x18], eax
mov byte [esp + 0x448], 1
test edi, edi
jl 0x4018b0
inc edi
inc edi
push 0x44c37c
mov ecx, edi
call fcn.00402bda
test eax, eax
jge 0x401877
push 0x44c380
mov ecx, edi
call fcn.00402bda
test eax, eax
jl 0x4018b0
mov ecx, eax
lea eax, [esp + 0x14]
push eax
sub ecx, edi
mov edx, edi
lea eax, [esp + 0x14]
call fcn.00402c0b
lea edi, [esp + 0x18]
mov byte [esp + 0x448], 2
call fcn.00402b65
mov byte [esp + 0x448], 1
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.004045ea
mov eax, dword [0x45d8cc]
mov ecx, ebx
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x14], eax
mov byte [esp + 0x448], 3
mov eax, dword [esp + 0x18]
cmp dword [eax - 0xc], 0
jle 0x4018e8
push eax
lea eax, [esp + 0x18]
push str.http:__photocdn.hd.sohu.com_upgrade_IFoxInfo__s.cfg
push eax
call fcn.0040411b
add esp, 0xc
jmp 0x4018f9
lea eax, [esp + 0x14]
push str.http:__photocdn.hd.sohu.com_upgrade_IFoxInfo.cfg
push eax
call fcn.0040411b
pop ecx
pop ecx
mov ebx, dword [esp + 0x14]
lea eax, [esp + 0x24]
push eax
push 0x104
lea eax, [esp + 0x234]
push eax
push ebx
push str.cfgUrl
push str.UPGRADE
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
sub esp, 0x20
mov esi, esp
mov dword [esp + 0x40], esp
push dword [esp + 0x3c]
mov eax, 0x401d26
push eax
call fcn.0040412e
lea eax, [esp + 0x24c]
push 0
push eax
mov byte [esp + 0x470], 4
call fcn.00404f33
mov edi, eax
mov byte [esp + 0x470], 3
call fcn.00404f6f
lea eax, [ebx - 0x10]
call fcn.004045ea
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
call fcn.004045ea
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
call fcn.004045ea
mov ecx, dword [esp + 0x440]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x428]
xor ecx, esp
call fcn.0043465f
mov esp, ebp
pop ebp
ret