Function at 0x40397b
Capabilities:
Read .ini file

Disassembly:
push 0x24
mov eax, 0x40b727
call fcn.0040b441
mov ebx, ecx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x30], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
and dword [ebp - 4], 0
lea eax, [ebp - 0x2c]
push eax
push str.http:__www.92.cn_update_online_CompleteSetup.txt
xor ecx, ecx
call fcn.004042ec
test eax, eax
je 0x4039c2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
xor al, al
call fcn.0040b48b
ret
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebx + 0xb3c]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x4039de
lea eax, [ebp - 0x28]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push eax
push 0x104
add ebx, 0x318
push ebx
mov ebx, 0x40d6dc
push ebx
push str.gamename
mov esi, str.setup
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403a10
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push 0x104
add eax, 0x934
push eax
push ebx
push str.exefilename
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403a34
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push 0x104
add eax, 0xa38
push eax
push ebx
push str.linkname
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403a58
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push 0x104
add eax, 0x41c
push eax
push ebx
push str.ProductTitle
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403a7c
lea eax, [ebp - 0x28]
push eax
push 0xffffffffffffffff
push str.size
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
mov ecx, dword [ebp - 0x30]
mov dword [ecx + 0x520], eax
jge 0x403aae
xor bl, bl
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov al, bl
jmp 0x4039bc
shl eax, 0xa
cmp dword [ebp - 0x14], 0x10
mov dword [ecx + 0x520], eax
mov eax, dword [ebp - 0x28]
jae 0x403ac3
lea eax, [ebp - 0x28]
push eax
push 0x104
add ecx, 0x524
push ecx
push ebx
push str.urlAgreement
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403ae5
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push 0x104
add eax, 0x628
push eax
push ebx
push str.uninstname
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403b09
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push 0x104
add eax, 0x72c
push eax
push ebx
push str.Publisher
push esi
call edi
cmp dword [ebp - 0x14], 0x10
mov eax, dword [ebp - 0x28]
jae 0x403b2d
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push 0x104
add eax, 0x830
push eax
push ebx
push str.Contact
push esi
call edi
mov bl, 1
jmp 0x403a9a