Function at 0x405ff0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x444b50
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfd8
mov eax, dword [0x458190]
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov ecx, dword [0x456824]
mov eax, 0xbdd265f5
imul ecx
add edx, ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, eax
mov eax, 0x5f7fac71
imul dword [0x45681c]
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x61e35267
imul dword [0x456824]
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov ebx, dword [0x456838]
mov eax, 0xbdd265f5
imul ebx
add edx, ebx
sar edx, 0xc
mov esi, dword [0x456830]
imul esi, esi, 0x1525
mov edi, ebx
mov ebx, edx
imul edi, edi, 0x58f
shr ebx, 0x1f
add ebx, edx
mov eax, 0xc152500d
imul dword [0x45681c]
add edx, dword [0x45681c]
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add ecx, edi
add ebx, edx
add eax, ebx
add ecx, esi
sub eax, edi
mov edi, dword [ebp + 8]
sub eax, ecx
test edi, edi
mov dword [str._r_____r____], ecx
lea ecx, [eax + esi + 0x1126]
mov dword [0x45681c], ecx
je 0x4064e5
mov eax, edi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4060e0
sub eax, edx
mov dword [ebp + 8], eax
je 0x4064e5
mov eax, dword [ebp + 0xc]
push str.C:WINDOWS_system32driversetc_service5.ini
push 0x800
lea edx, [ebp - 0x814]
push edx
push 0x446e15
push eax
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [0x45682c]
mov ebx, dword [0x456828]
mov eax, 0xc152500d
imul ebx, ebx, 0x1ec0
imul ecx
mov esi, dword [0x456830]
add edx, ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x456818]
sub ebx, eax
imul edx, edx, 0x1525
mov eax, dword [str._r_____r____]
imul eax, eax, 0x1594
add edx, esi
add edx, ebx
lea ebx, [eax + edx - 0x11cf]
lea eax, [ebp - 0x814]
lea edx, [eax + 1]
mov dword [0x456824], ebx
mov dword [ebp + 8], edx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x406178
sub eax, dword [ebp + 8]
mov dword [ebp + 8], eax
je 0x4064ab
mov edx, dword [0x45681c]
imul ecx, ecx, 0x11cf
imul esi, esi, 0xcde
mov eax, 0x214d0215
imul edx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x456820]
mov ebx, edx
imul ebx, ebx, 0x1572
sub ebx, eax
mov eax, 0x61e35267
imul edx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
add eax, ecx
lea ecx, [ebp - 0x814]
push ecx
lea edx, [ebp - 0xfe4]
add eax, esi
push 0x1f4
push edx
mov dword [0x45682c], eax
call fcn.0040cb10
add esp, 0xc
mov ebx, eax
xor esi, esi
lea esp, [esp]
cmp esi, ebx
jge 0x40649f
mov ecx, dword [0x456828]
mov eax, 0xbdd265f5
imul ecx
add edx, ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0x1594
sub edx, eax
mov dword [ebp + 8], edx
mov eax, 0x5f7fac71
imul ecx
mov eax, dword [ebp + 8]
sar edx, 0xb
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x456818]
imul edx, edx, 0x1530
sub eax, ecx
mov ecx, dword [0x456834]
add eax, edx
mov dword [ebp + 8], eax
mov eax, 0x61e35267
imul ecx
mov ecx, dword [ebp + 8]
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov dword [0x456834], ecx
mov ecx, dword [ebp + esi*4 - 0xfe4]
push ecx
push edi
call fcn.0042af90
add esp, 8
test eax, eax
je 0x406499
mov ecx, dword [0x456834]
mov esi, dword [0x456830]
mov eax, 0x214d0215
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, esi
imul esi, esi, 0x1525
imul edi, edi, 0xffffea8e
sub edi, eax
mov eax, 0xe6005641
imul ecx
add edx, ecx
mov ecx, dword [0x456818]
sar edx, 0xc
imul ecx, ecx, 0x11cf
add edi, edx
mov ebx, edx
shr ebx, 0x1f
mov eax, 0x4f950fb3
imul dword [0x456820]
add ebx, edi
sar edx, 0xa
add ebx, ecx
add ebx, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [0x456838]
mov eax, 0xbdd265f5
imul ebx
add edx, ebx
sar edx, 0xc
mov edi, ebx
mov ebx, edx
imul edi, edi, 0x58f
shr ebx, 0x1f
add ebx, edx
mov edx, dword [0x45681c]
mov eax, 0xc152500d
imul edx
add edx, dword [0x45681c]
sar edx, 0xc
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov ebx, dword [str._r_____r____]
sub eax, edi
sub eax, ebx
lea edx, [eax + esi + 0x1126]
mov eax, dword [0x55a22c]
inc eax
cmp eax, 5
mov dword [0x456818], ecx
mov dword [0x45681c], edx
mov dword [0x55a22c], eax
jg 0x406425
cmp dword [ebp + 0x10], 1
jne 0x406425
mov edx, dword [0x45682c]
imul ecx, ecx, 0x1ec0
imul ebx, ebx, 0x14ec
mov eax, 0x61e35267
imul edx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x776d83ad
imul dword [0x456820]
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x456834]
add ecx, ebx
sub ecx, eax
sub ecx, edx
sub ecx, 0x11cf
mov dword [0x456820], ecx
mov ecx, dword [0x456824]
mov eax, 0xbdd265f5
imul ecx
add edx, ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0x5f7fac71
imul dword [0x45681c]
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x61e35267
imul ecx
mov eax, dword [0x56a608]
sar edx, 0xb
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
add ebx, edi
add ebx, esi
mov dword [str._r_____r____], ebx
mov edx, dword [eax]
push eax
mov dword [ebp - 4], 0
call dword [edx + 0x30]
mov ecx, dword [0x456824]
mov eax, 0xbdd265f5
imul ecx
add edx, ecx
mov ecx, dword [0x456838]
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
mov eax, 0x9f248ed3
imul ecx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, dword [0x45681c]
imul eax, eax, 0x1530
mov edx, ecx
imul edx, edx, 0x11cf
sub edi, esi
add edi, eax
sub edi, edx
mov eax, 0xb838211b
imul ecx
add edx, ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add edi, edx
add eax, edi
mov dword [0x456828], eax
mov eax, 1
jmp 0x4064e7
inc esi
jmp 0x406200
mov ebx, dword [0x456824]
mov ecx, dword [0x45682c]
mov edx, dword [0x45681c]
imul ecx, ecx, 0x11cf
imul ebx, ebx, 0xb97
mov esi, dword [0x456828]
mov eax, 0x88927c53
imul esi, esi, 0xcde
imul edx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ecx
add eax, esi
add eax, ebx
mov dword [0x456830], eax
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.0042a321
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret