Function at 0x416b20
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43f7f0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfdc
mov eax, dword [0x452944]
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov edx, dword [0x4518e8]
mov ecx, dword [0x4518f4]
imul ecx, ecx, 0x926
mov eax, 0x6614bc37
imul edx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, dword [0x4518d8]
mov edx, ecx
sub edx, eax
sub edx, esi
mov esi, dword [0x4518dc]
lea eax, [edx + esi + 0x1503]
mov dword [str._r_____r_____n], eax
mov eax, 0x8c03f71d
imul esi
add edx, esi
mov esi, dword [0x4518e0]
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4518ec]
imul edx, edx, 0x1538
add eax, edx
sub eax, ecx
sub eax, esi
add eax, 0x2044
mov dword [0x4518d8], eax
mov eax, dword [ebp + 8]
test eax, eax
je 0x416f0b
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416bd0
sub eax, edx
mov dword [ebp - 0x818], eax
je 0x416f0b
mov ecx, dword [ebp + 0xc]
push str.C:WINDOWS_system32driversetc_service5.ini
push 0x800
lea eax, [ebp - 0x814]
push eax
push 0x441e2d
push ecx
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [0x4518e8]
mov esi, dword [0x4518d8]
mov edi, dword [0x4518e4]
mov eax, 0x61dea4df
imul ecx
mov ebx, esi
imul ebx, ebx, 0x1538
sar edx, 0xb
mov ecx, edi
imul ecx, ecx, 0x4cf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
add ebx, dword [0x4518f0]
lea ecx, [ecx + ebx + 0x14d5]
lea eax, [ebp - 0x814]
mov dword [0x4518e0], ecx
lea ebx, [eax + 1]
jmp 0x416c60
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x416c60
sub eax, ebx
mov dword [ebp - 0x818], eax
je 0x416ed9
mov edi, dword [0x4518dc]
imul ecx, ecx, 0x86d
mov edx, esi
imul edi, edi, 0xa08
imul edx, edx, 0xfad
sub edi, edx
mov eax, 0x6a79dd7b
imul esi
sar edx, 9
add edi, ecx
mov eax, edx
lea ecx, [ebp - 0x814]
shr eax, 0x1f
push ecx
add eax, edx
lea edx, [ebp - 0xfe8]
sub edi, eax
push 0x1f4
push edx
mov dword [0x4518e8], edi
call fcn.00403ea0
add esp, 0xc
mov edi, eax
xor esi, esi
jmp 0x416cd0
cmp esi, edi
jge 0x416ecd
mov ecx, dword [0x4518f0]
mov eax, 0x8b081419
imul ecx
mov ebx, dword [0x4518d8]
add edx, ecx
mov ecx, dword [0x4518e8]
sar edx, 0xc
imul ecx, ecx, 0x1d41
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4518d4]
imul edx, edx, 0x14ed
sub ecx, eax
mov eax, dword [ebp + esi*4 - 0xfe8]
add ecx, edx
sub ecx, ebx
add ecx, 0x1339
mov dword [0x4518f0], ecx
mov ecx, dword [ebp + 8]
push eax
push ecx
call fcn.00425900
add esp, 8
test eax, eax
je 0x416ec7
mov edi, dword [0x4518e8]
mov esi, dword [0x4518ec]
mov ecx, dword [0x4518f0]
imul esi, esi, 0xfffff5f8
mov eax, 0x4152dddf
imul edi
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov ebx, dword [0x4518dc]
mov eax, 0x6a79dd7b
imul ecx
sar edx, 9
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x4518d4]
sub esi, ecx
add esi, dword [str._r_____r_____n]
lea eax, [edx + esi - 0x86c]
mov esi, dword [0x4518f4]
mov dword [0x4518d4], eax
imul esi, esi, 0x926
mov eax, 0x8c03f71d
imul ebx
mov eax, dword [0x564dec]
add edx, ebx
sar edx, 0xc
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x4518ec]
imul edx, edx, 0x1538
add ecx, edx
mov edx, dword [0x4518e0]
sub ecx, esi
sub ecx, edx
add ecx, 0x2044
inc eax
cmp eax, 5
mov dword [0x4518d8], ecx
mov dword [0x564dec], eax
jg 0x416e6b
cmp dword [ebp + 0x10], 1
jne 0x416e6b
mov eax, 0x8b081419
imul edi
add edx, edi
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp + 8], eax
mov eax, 0xa5b2ed37
imul ebx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp + 8]
sub eax, edx
sub eax, dword [0x4518ec]
mov edx, dword [0x4518f4]
lea ebx, [eax + edx - 0x866]
mov eax, 0x6614bc37
imul edi
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, dword [0x563c10]
sub esi, ecx
lea ecx, [esi + ebx + 0x1503]
mov dword [0x4518dc], ebx
mov dword [str._r_____r_____n], ecx
mov edx, dword [eax]
push eax
mov dword [ebp - 4], 0
call dword [edx + 0x30]
mov ecx, dword [0x4518e4]
mov eax, 0x8c03f71d
imul dword [0x4518e0]
add edx, dword [0x4518e0]
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
mov eax, 0x1bfba0af
imul ecx
mov eax, dword [0x4518f4]
imul eax, eax, 0x86d
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, esi
sub ecx, eax
add ecx, 0x322e
mov dword [0x4518e4], ecx
mov eax, 1
jmp 0x416f0d
inc esi
jmp 0x416cd0
mov esi, dword [0x4518d8]
mov edi, dword [0x4518e4]
mov ecx, dword [str._r_____r_____n]
mov eax, 0x5a4d12c9
imul ecx, ecx, 0xb57
imul esi
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
imul edi, edi, 0x687
lea edx, [ecx + edi - 0x86c]
mov dword [0x4518ec], edx
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.004249c1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret