Function at 0x405000
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x17d8
call fcn.00430240
mov eax, dword [0x45e640]
mov dword [esp + 0x17d4], eax
push ebx
push ebp
mov ebp, dword [0x45cce0]
push esi
mov esi, dword [0x45ccd0]
mov eax, 0xd0d507c9
imul esi
add edx, esi
sar edx, 0x15
mov ecx, ebp
imul ecx, ecx, 0x11c215
add ecx, edx
push edi
mov edi, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x273a49
shr edi, 0x1f
add edi, ecx
add edi, edx
mov eax, 0xc5432eb
imul esi
sar edx, 0x12
add edi, edx
mov ebx, edx
mov eax, 0xa2f64c79
imul esi
add edx, esi
sar edx, 0x16
mov ecx, edx
shr ebx, 0x1f
add ebx, edi
add ebx, edx
mov eax, 0x647e2ce7
imul dword [0x45cce4]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, dword [0x45ccd8]
shr ecx, 0x1f
add ecx, ebx
sub ecx, eax
mov eax, 0x26bae4e5
imul esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0xd0d507c9
imul edi
add edx, edi
imul edi, edi, 0x839c4a
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ccdc]
mov esi, eax
mov eax, 0x1f1f444d
imul edx
sar edx, 0x14
sub esi, ebx
mov ebx, dword [0x45cce8]
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov edx, ebx
imul edx, edx, 0x569052
mov eax, ecx
imul eax, eax, 0x5184aa
add esi, edi
mov edi, dword [0x45cce4]
add esi, edx
mov dword [0x45ccc8], ecx
add esi, eax
sub esi, edi
mov edi, dword [esp + 0x17ec]
sub esi, 0x273a49
test edi, edi
mov dword [0x45ccd0], esi
je 0x405459
lea edx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x405127
sub edi, edx
mov dword [esp + 0x10], edi
je 0x405459
mov edi, dword [esp + 0x17f0]
test edi, edi
je 0x405459
lea edx, [edi + 1]
lea esp, [esp]
mov al, byte [edi]
inc edi
test al, al
jne 0x405150
sub edi, edx
mov dword [esp + 0x10], edi
je 0x405459
mov eax, 0x54a93351
imul ecx, ecx, 0x5399dc
imul ebp
imul ebp, ebp, 0x1830cc
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ccd4]
mov edi, ebx
imul edi, edi, 0x273a49
sub eax, edi
add eax, ebp
mov dword [esp + 0x10], eax
mov eax, 0x61fd3f09
imul edx
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub edx, eax
add edx, ecx
mov dword [esp + 0x10], edx
mov eax, 0xbd455a63
imul ebx
mov eax, dword [esp + 0x10]
add edx, ebx
sar edx, 0x16
add eax, edx
mov edi, edx
shr edi, 0x1f
add edi, eax
mov eax, 0xc5432eb
imul ebx
mov eax, dword [esp + 0x17ec]
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub edi, ecx
lea ebp, [esp + 0xfe4]
mov dword [0x45ccd8], edi
sub ebp, eax
mov cl, byte [eax]
mov byte [eax + ebp], cl
inc eax
test cl, cl
jne 0x4051f5
lea edx, [esp + 0xfe4]
push edx
call fcn.00404dd0
imul edi, edi, 0x6489e9
mov ecx, dword [0x45cccc]
mov eax, 0x26bae4e5
imul ecx
add esi, ebx
sar edx, 0x13
imul esi, esi, 0x34e0fb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x3b87af8d
imul ebx
mov eax, dword [0x45ccd4]
sar edx, 0x14
imul eax, eax, 0x569052
mov ecx, edx
add esi, edx
mov edx, dword [0x45ccdc]
imul edx, edx, 0x273a49
shr ecx, 0x1f
add ecx, esi
sub ecx, edx
mov edx, dword [esp + 0x17f4]
add esp, 4
sub ecx, eax
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
add ecx, edi
push 0x800
mov dword [0x45cce0], ecx
lea ecx, [esp + 0x7ec]
push ecx
push 0x44ce59
push edx
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [esp + 0x7e4]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4052a0
sub eax, edx
mov dword [esp + 0x10], eax
je 0x4053f9
mov ecx, dword [0x45ccd0]
mov eax, dword [0x45ccd8]
mov edx, dword [0x45cce4]
mov esi, dword [0x45ccc8]
imul edx, edx, 0x273a49
lea edi, [eax + ecx]
imul ecx, ecx, 0x5399dc
imul edi, edi, 0x530e8f
sub edi, edx
mov eax, 0x54a93351
imul esi
sar edx, 0x13
mov ebx, edx
add edi, edx
mov eax, 0x61fd3f09
imul esi
shr ebx, 0x1f
sar edx, 0x15
add ebx, edi
sub ebx, ecx
mov ecx, dword [str._r_____r____]
mov esi, edx
add ebx, edx
mov eax, 0xa2f64c79
imul ecx
add edx, ecx
sar edx, 0x16
mov eax, edx
lea ecx, [esp + 0x7e4]
shr esi, 0x1f
shr eax, 0x1f
push ecx
add eax, edx
add esi, ebx
lea edx, [esp + 0x18]
sub esi, eax
push 0x1f4
push edx
mov dword [0x45cce8], esi
call fcn.0040fba0
mov ebx, eax
add esp, 0xc
xor esi, esi
test ebx, ebx
jle 0x4053f9
mov ecx, dword [0x45cccc]
mov eax, 0x3b87af8d
imul ecx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, 0x1f1f444d
imul ecx
imul ecx, ecx, 0x530e8f
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
sub ebp, edi
mov edi, dword [0x45ccd4]
mov eax, 0x1f1f444d
imul edi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x61fd3f09
imul edi
sar edx, 0x15
mov eax, edx
add ebp, edx
mov edx, dword [0x45cce8]
imul edx, edx, 0x569052
shr eax, 0x1f
add eax, ebp
add eax, edx
mov edx, dword [esp + esi*4 + 0x14]
add eax, ecx
mov ecx, dword [0x45ccdc]
imul ecx, ecx, 0x5184aa
add eax, ecx
mov dword [str._r_____r____], eax
push edx
lea eax, [esp + 0xfe8]
push eax
call fcn.00430650
add esp, 8
test eax, eax
jne 0x405472
inc esi
cmp esi, ebx
jl 0x405350
mov ecx, dword [0x45ccdc]
mov esi, dword [str._r_____r____]
mov eax, 0x54a93351
imul esi, esi, 0xa51e86
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, dword [0x45cce0]
sub esi, eax
mov eax, 0x61fd3f09
imul ecx
imul ecx, ecx, 0x530e8f
sar edx, 0x15
add esi, edx
mov eax, edx
mov edx, dword [0x45ccd8]
imul edx, edx, 0x5184aa
shr eax, 0x1f
add eax, esi
add ecx, edi
add ecx, eax
lea eax, [edx + ecx - 0x273a49]
mov dword [0x45ccd4], eax
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x17d4]
call fcn.0042fa01
add esp, 0x17d8
ret
mov ecx, dword [0x45cccc]
mov esi, dword [0x45cce4]
imul esi, esi, 0x273a49
mov eax, 0x54a93351
imul ecx
mov ecx, dword [0x45ccd4]
sar edx, 0x13
add esi, edx
mov edi, edx
mov eax, 0x61fd3f09
imul ecx
mov eax, dword [0x45cce0]
sar edx, 0x15
imul eax, eax, 0x530e8f
shr edi, 0x1f
add edi, esi
add edi, edx
mov esi, edx
mov edx, dword [0x45cce8]
imul edx, edx, 0x569052
shr esi, 0x1f
add esi, edi
sub esi, edx
add esi, eax
mov eax, 0x647e2ce7
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add esi, edx
mov edx, dword [str._r_____r____]
add ecx, esi
sub ecx, edx
pop edi
add ecx, 0x34e0fb
pop esi
mov dword [0x45cccc], ecx
mov ecx, dword [esp + 0x17dc]
pop ebp
mov eax, 1
pop ebx
call fcn.0042fa01
add esp, 0x17d8
ret