Function at 0x406d20
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x447830
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfdc
mov eax, dword [0x45b4b0]
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov ebx, dword [0x459b44]
mov eax, 0x491979d9
imul ebx
mov eax, dword [0x459b58]
sar edx, 0x11
imul eax, eax, 0x3b76e
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
add eax, ecx
mov edi, dword [0x459b3c]
mov edx, edi
imul edx, edx, 0x426f4
add edx, eax
shl edx, 1
mov esi, edx
mov eax, 0x89cc5bfb
imul edi
add edx, edi
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x5764ae1b
imul ebx
mov ebx, dword [0x459b50]
sar edx, 0x12
imul ebx, ebx, 0x426f4
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x415373e5
imul edi
mov eax, dword [ebp + 8]
sar edx, 0x10
add ebx, ecx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ecx + ebx*2 + 0x84bc4]
sub edx, esi
test eax, eax
mov dword [str._r_____r____], esi
mov dword [0x459b3c], edx
je 0x40727d
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406df0
sub eax, edx
mov dword [ebp - 0x818], eax
je 0x40727d
mov ecx, dword [ebp + 0xc]
push str.C:_WINDOWS_system32driversetc_service5.ini
push 0x800
lea eax, [ebp - 0x814]
push eax
push 0x449e59
push ecx
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov esi, dword [0x459b4c]
mov edi, dword [0x459b48]
mov eax, 0x415373e5
imul esi
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
imul ecx, ecx, 0x84de8
sub ecx, eax
mov ebx, dword [0x459b58]
mov edx, edi
imul ebx, ebx, 0x3b76e
imul edx, edx, 0x20dab
add ecx, edx
mov dword [ebp - 0x818], ecx
mov ecx, dword [0x459b44]
mov eax, 0x491979d9
imul ecx
mov ecx, dword [ebp - 0x818]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
imul edx, edx, 0x70110
add eax, ebx
add eax, ecx
mov ecx, dword [0x459b50]
add edx, eax
lea eax, [edx + ecx - 0xd61e3]
mov dword [0x459b44], eax
lea eax, [ebp - 0x814]
lea edx, [eax + 1]
mov dword [ebp - 0x818], edx
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x406ec0
sub eax, dword [ebp - 0x818]
mov dword [ebp - 0x818], eax
je 0x407221
mov eax, dword [0x459b40]
imul ecx, ecx, 0x3eb04
imul esi, esi, 0xd61e3
mov edx, dword [0x459b54]
imul eax, eax, 0x1db98
add ecx, esi
add ecx, eax
mov eax, 0x5764ae1b
imul edx
sar edx, 0x12
add ecx, edx
mov esi, edx
shr esi, 0x1f
add esi, ecx
mov ecx, dword [0x459b3c]
mov eax, 0xf957fd3
imul ecx
sar edx, 0xd
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x491979d9
imul dword [0x459b44]
sar edx, 0x11
sub esi, ecx
mov eax, edx
shr eax, 0x1f
lea ecx, [ebp - 0x814]
push ecx
add eax, edx
add esi, ebx
lea edx, [ebp - 0xfe8]
add eax, esi
push 0x1f4
push edx
mov dword [0x459b4c], eax
call fcn.0040e2c0
add esp, 0xc
mov edi, eax
xor esi, esi
cmp esi, edi
jge 0x407215
mov ecx, dword [0x459b48]
mov ebx, dword [0x459b38]
mov eax, 0x89cc5bfb
imul ebx, ebx, 0x3eb37
imul ecx
add edx, ecx
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x459b54]
sub ebx, eax
mov eax, 0x5764ae1b
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x459b58]
imul edx, edx, 0x3b76e
sub ebx, eax
add ebx, edx
mov eax, 0x491979d9
imul ecx
mov ecx, dword [0x459b44]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x491979d9
imul ecx
mov eax, dword [ebp + esi*4 - 0xfe8]
sar edx, 0x11
mov ecx, edx
add ebx, edx
mov edx, dword [str._r_____r____]
imul edx, edx, 0x70110
shr ecx, 0x1f
add ecx, ebx
add ecx, edx
mov dword [0x459b54], ecx
mov ecx, dword [ebp + 8]
push eax
push ecx
call fcn.0042dc70
add esp, 8
test eax, eax
je 0x40720f
mov ecx, dword [0x459b40]
mov eax, 0x491979d9
imul dword [0x459b44]
sar edx, 0x11
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x20ab631d
imul ecx
sar edx, 0xf
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [0x459b38]
imul edx, edx, 0xd61e3
add ebx, edx
mov eax, 0x4c84c1e9
imul ecx
sar edx, 0x12
add ebx, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [0x459b50]
mov eax, ebx
imul ebx, ebx, 0x426f4
imul eax, eax, 0x1db98
sub ecx, eax
mov eax, 0xf957fd3
imul dword [0x459b54]
mov edi, dword [0x459b58]
sar edx, 0xd
imul edi, edi, 0x3b76e
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x459b3c]
sub ecx, eax
mov eax, 0x415373e5
imul edx
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
add ebx, esi
lea eax, [eax + ebx*2 + 0x84bc4]
sub eax, edx
add ecx, esi
mov dword [0x459b3c], eax
mov eax, dword [0x55d54c]
add ecx, edi
inc eax
cmp eax, 5
mov dword [0x459b38], ecx
mov dword [0x55d54c], eax
jg 0x4071a3
cmp dword [ebp + 0x10], 1
jne 0x4071a3
mov ebx, dword [0x459b48]
imul ecx, ecx, 0x20dab
mov eax, 0xf6ddfe9
imul ebx, ebx, 0xbb797
imul dword [0x459b40]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x459b4c]
sub ebx, eax
mov eax, 0x5764ae1b
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
add ebx, ecx
sub ebx, dword [0x459b54]
add ebx, esi
lea ecx, [ebx + edi - 0xd61e3]
mov dword [0x459b40], ecx
mov ecx, dword [0x459b3c]
mov edx, ecx
imul edx, edx, 0x426f4
add edx, esi
add edx, edi
shl edx, 1
mov esi, edx
mov eax, 0x89cc5bfb
imul ecx
add edx, ecx
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x5764ae1b
imul dword [0x459b44]
mov eax, dword [0x56d928]
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
mov dword [str._r_____r____], esi
mov edx, dword [eax]
push eax
mov dword [ebp - 4], 0
call dword [edx + 0x30]
mov ecx, dword [0x459b58]
mov esi, dword [0x459b50]
mov eax, 0x491979d9
imul esi, esi, 0x3eb37
imul dword [0x459b44]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp + 8], eax
mov eax, 0x3da796f7
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x89c36131
imul ecx
add edx, ecx
imul ecx, ecx, 0x9aa75
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add esi, edx
add eax, esi
sub eax, ecx
mov dword [0x459b48], eax
mov eax, 1
jmp 0x40727f
inc esi
jmp 0x406f63
mov esi, dword [0x459b4c]
mov edi, dword [0x459b48]
mov ecx, dword [0x459b3c]
imul edi, edi, 0x3eb04
imul esi, esi, 0xd61e3
mov eax, 0xf6ddfe9
imul ecx
mov eax, dword [0x459b58]
sar edx, 0xf
imul eax, eax, 0xc0332
mov ecx, edx
sub edi, esi
shr ecx, 0x1f
add ecx, edx
sub edi, ecx
mov ecx, dword [0x459b44]
mov edx, ecx
imul edx, edx, 0x3b76e
sub edi, edx
add edi, eax
mov eax, 0x491979d9
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add edi, edx
add eax, edi
mov dword [0x459b50], eax
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.0042d001
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret