Function at 0x413c09
Capabilities:
Read .ini file

Disassembly:
push ebp
sub esp, 0x58
mov eax, 0x42f4bb
call fcn.0042ef64
sub esp, 0x5bc
push esi
push edi
xor edi, edi
lea eax, [ebp - 0x108]
push edi
push 0x28
mov esi, ecx
push eax
mov dword [ebp + 0x58], esi
call fcn.004149a5
test eax, eax
jne 0x413c41
push 2
pop eax
jmp 0x4140ac
cmp dword [esi + 0x11b0], 1
push ebx
jne 0x413d8a
lea edi, [esi + 0x834]
push edi
lea eax, [esi + 0x420]
lea ecx, [esi + 0x11b8]
push eax
call fcn.004172a5
mov ecx, esi
call fcn.00414bce
test eax, eax
jne 0x413d88
cmp dword [ebp + 0x64], eax
jne 0x4140a4
mov dword [ebp + 0x58], eax
mov dword [ebp - 4], eax
lea ecx, [esi + 0x11b8]
cmp dword [ecx], 0
mov ebx, 0x4368b0
mov eax, ebx
cmovne eax, dword [ecx]
lea ecx, [ebp + 0x64]
push eax
call fcn.00409479
push ecx
lea ecx, [ebp + 0x64]
mov byte [ebp - 4], 1
call fcn.00415cd7
mov eax, dword [esi + 0x11d8]
mov edx, ebx
test eax, eax
mov ecx, ebx
cmovne edx, eax
mov eax, dword [esi + 0x11bc]
test eax, eax
push edx
cmovne ecx, eax
cmp dword [ebp + 0x64], 0
push ecx
mov eax, ebx
cmovne eax, dword [ebp + 0x64]
push eax
lea eax, [ebp + 0x58]
push str._s:___s_s
push eax
call fcn.00415c81
mov eax, dword [ebp + 0x58]
mov ecx, ebx
test eax, eax
cmovne ecx, eax
cmovne ebx, eax
push ecx
push ebx
lea eax, [ebp + 0x54]
push str.Le_serveur_HTTP_de_la_version_de_r
push eax
call fcn.00402d4f
add esp, 0x24
mov ecx, eax
push 0x14
push edi
call fcn.0040b37e
push eax
xor esi, esi
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
lea ecx, [ebp + 0x54]
sete bl
call fcn.0040b313
test bl, bl
je 0x413d59
mov byte [ebp - 4], 2
mov ecx, dword [ebp + 0x64]
test ecx, ecx
je 0x413d3d
call fcn.00405ca7
mov dword [ebp + 0x64], esi
mov dword [ebp - 4], 3
mov ecx, dword [ebp + 0x58]
test ecx, ecx
je 0x413e2a
call fcn.00405ca7
jmp 0x413e2a
mov byte [ebp - 4], 4
mov ecx, dword [ebp + 0x64]
test ecx, ecx
je 0x413d6c
call fcn.00405ca7
mov dword [ebp + 0x64], esi
mov dword [ebp - 4], 5
mov ecx, dword [ebp + 0x58]
test ecx, ecx
je 0x4140a4
call fcn.00405ca7
jmp 0x4140a4
xor edi, edi
lea ebx, [esi + 0x62a]
mov ecx, ebx
call fcn.00407388
test eax, eax
jne 0x413e63
mov dword [esi + 0xf90], edi
cmp dword [ebp + 0x64], eax
jne 0x413e38
push ebx
push ebx
lea eax, [ebp + 0x64]
push str.Le_fichier_des_param
push eax
call fcn.00402d4f
add esp, 0x10
mov ecx, eax
call fcn.0040b37e
push 0x14
lea ecx, [esi + 0x834]
push ecx
push eax
push edi
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
lea ecx, [ebp + 0x64]
sete bl
call fcn.0040b313
test bl, bl
je 0x413e32
cmp dword [esi + 0xc48], edi
je 0x413e2a
lea eax, [esi + 0x62a]
push eax
push eax
lea eax, [ebp + 0x64]
push str.127___Le_fichier_de_param
push eax
call fcn.00402d4f
add esp, 0x10
mov ecx, eax
mov dword [ebp - 4], 6
call fcn.0040b37e
push eax
mov ecx, esi
call fcn.00412ee3
lea ecx, [ebp + 0x64]
call fcn.0040b313
xor eax, eax
inc eax
jmp 0x4140ab
lea ebx, [esi + 0x62a]
cmp dword [esi + 0xc48], edi
je 0x4140a4
push ebx
push ebx
lea eax, [ebp + 0x64]
push str.126___Le_fichier_de_param
push eax
call fcn.00402d4f
add esp, 0x10
mov dword [ebp - 4], 7
jmp 0x413f2d
mov ecx, esi
call fcn.00415b78
push ebx
push 0x28
lea ecx, [ebp]
push ecx
push 0x4368b0
lea eax, [esi + 0x834]
push str.VERSION
push eax
mov dword [ebp + 0x64], eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp]
lea eax, [ebp - 0x108]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x413eba
test dx, dx
je 0x413eb6
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x413eba
add eax, 4
add ecx, 4
test dx, dx
jne 0x413e94
mov eax, edi
jmp 0x413ebf
sbb eax, eax
or eax, 1
test eax, eax
je 0x4140a4
mov eax, dword [esi + 0x11b0]
cmp eax, 1
jne 0x413ff5
cmp word [ebp], 0
jne 0x413f49
cmp dword [esi + 0xc48], edi
je 0x4140a4
push ecx
mov edx, 0x43ad7c
lea ecx, [ebp - 0x5c8]
call fcn.00407c55
pop ecx
test eax, eax
je 0x413f0e
push ecx
mov edx, ebx
lea ecx, [ebp - 0x5c8]
call fcn.004072d5
pop ecx
lea eax, [ebp - 0x5c8]
push eax
lea eax, [ebp + 0x64]
push str.140___Impossible_de_d
push eax
call fcn.00402d4f
add esp, 0xc
mov dword [ebp - 4], 8
mov ecx, eax
call fcn.0040b37e
push eax
mov ecx, esi
call fcn.00412ee3
lea ecx, [ebp + 0x64]
call fcn.0040b313
jmp 0x4140a4
cmp eax, 1
jne 0x413ff5
lea eax, [ebp - 0x3bc]
mov ecx, esi
push eax
call fcn.00414ad7
test eax, eax
je 0x413ff5
lea ecx, [ebp - 0x3bc]
call fcn.0040755f
lea edi, [ebp - 0x3bc]
sub edi, 2
xor ecx, ecx
mov ax, word [edi + 2]
add edi, 2
cmp ax, cx
jne 0x413f7e
push 6
pop ecx
lea eax, [ebp - 0x3bc]
mov esi, str.WDSetup.exe
push eax
push 0x28
lea eax, [ebp - 0x15c]
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.004149a5
mov edi, dword [ebp + 0x64]
test eax, eax
je 0x413ff0
push ebx
push 0x28
lea eax, [ebp - 0x1b0]
push eax
push 0x4368b0
push str.VERSIONWDSETUP
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x15c]
push eax
lea eax, [ebp - 0x1b0]
push eax
call fcn.0041c2a7
mov esi, dword [ebp + 0x58]
pop ecx
pop ecx
test eax, eax
je 0x413ffb
mov ecx, esi
call fcn.004150e8
jmp 0x413ffb
mov esi, dword [ebp + 0x58]
jmp 0x413ffb
lea edi, [esi + 0x834]
push ebx
xor eax, eax
push eax
push str.VERSION_OBLIGATOIRE
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
jne 0x4140a8
lea eax, [esi + 0x420]
push eax
push 0x28
lea eax, [ebp - 0x60]
push eax
push 0x4368b0
push str.LIMITEMAJ
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp word [ebp - 0x60], 0
je 0x414049
push ecx
lea edx, [ebp - 0x60]
lea ecx, [ebp]
call fcn.0040c890
pop ecx
test eax, eax
jle 0x4140a4
push ebx
push 0x28
lea eax, [ebp - 0xb4]
push eax
push 0x4368b0
push str.DERNIERE_VERSION
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp word [ebp - 0xb4], 0
je 0x414085
push ecx
lea edx, [ebp - 0xb4]
lea ecx, [ebp - 0x108]
call fcn.0040c890
pop ecx
test eax, eax
js 0x4140a8
mov ecx, esi
call fcn.00415ae0
test eax, eax
jne 0x4140a8
cmp dword [esi + 0xc48], eax
je 0x4140a4
push str.141___V
mov ecx, esi
call fcn.00412ee3
xor eax, eax
jmp 0x4140ab
push 2
pop eax
pop ebx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
lea esp, [ebp + 0x5c]
pop ebp
ret 4