Function at 0x405330
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x17dc
call fcn.004322b0
mov eax, dword [0x460640]
xor eax, esp
mov ecx, dword [0x45ebdc]
mov dword [esp + 0x17d8], eax
mov eax, dword [esp + 0x17e4]
mov dword [esp + 4], eax
push ebx
push ebp
push esi
push edi
mov edi, dword [0x45ebe0]
mov eax, 0x2d01dbc7
imul ecx
sar edx, 0x1b
mov ecx, edx
mov ebp, dword [0x45ebd0]
mov esi, edi
imul esi, esi, 0x4d0e971
add esi, edx
mov eax, 0x273a7861
imul edi
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
shr ecx, 0x1f
add ecx, esi
sub ecx, eax
mov eax, 0x5e0c18e7
imul ebp
sar edx, 0x1b
add ecx, edx
mov ebx, edx
shr ebx, 0x1f
add ebx, ecx
mov ecx, dword [0x45ebd8]
imul ecx, ecx, 0xbd0f4c0
add ebx, ecx
mov ecx, dword [0x45ebe4]
mov eax, 0x56a9121b
imul ecx
imul ecx, ecx, 0xd0d40b9
sar edx, 0x1a
mov esi, edx
add ebx, edx
shr esi, 0x1f
add esi, ebx
mov ebx, dword [0x45ebe8]
mov eax, ebx
imul eax, eax, 0x31136cfe
mov dword [esp + 0x10], eax
mov eax, 0xc09944a7
imul ebp
add edx, ebp
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub edx, eax
mov ebp, dword [0x45ebc4]
add edx, ecx
mov dword [esp + 0x10], edx
mov eax, 0x9c5fe915
imul ebx
mov eax, dword [esp + 0x10]
add edx, ebx
sar edx, 0x1d
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, ebp
imul edx, edx, 0x346312ef
sub eax, ecx
sub eax, edx
mov ecx, eax
mov eax, 0x56a9121b
imul dword [0x45ebd8]
mov dword [0x45ebc8], esi
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add ecx, edi
add eax, edx
lea ecx, [eax + ecx - 0xbd0f4c0]
mov dword [0x45ebd0], ecx
mov ecx, dword [esp + 0x17f0]
test ecx, ecx
je 0x4057b0
mov eax, ecx
lea edx, [eax + 1]
mov dword [esp + 0x10], edx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x405475
sub eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
je 0x4057b0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4057b0
lea edx, [eax + 1]
mov dword [esp + 0x10], edx
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4054a0
sub eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
je 0x4057b0
mov eax, 0x4be59407
imul esi
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul edx, edx, 0x35f7d09c
sub edx, eax
mov dword [esp + 0x10], edx
mov eax, 0x53766c07
imul ebp
mov eax, dword [esp + 0x10]
sar edx, 0x1c
add eax, edx
mov ebp, edx
mov edx, dword [0x45ebcc]
imul edx, edx, 0x1f444551
shr ebp, 0x1f
add ebp, eax
sub ebp, edx
mov eax, 0x83008757
imul edi
add edx, edi
sar edx, 0x1c
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0x5e0c18e7
imul ebx
mov eax, ebx
imul eax, eax, 0xbd0f4c0
sar edx, 0x1b
mov edi, edx
shr edi, 0x1f
add ebp, edx
add edi, ebp
sub edi, eax
lea ebp, [esp + 0xfe8]
mov dword [0x45ebd8], edi
sub ebp, ecx
lea esp, [esp]
mov al, byte [ecx]
mov byte [ecx + ebp], al
inc ecx
test al, al
jne 0x405540
lea ecx, [esp + 0xfe8]
push ecx
call fcn.004050e0
imul esi, esi, 0x31136cfe
imul edi, edi, 0x2d80f713
mov ecx, dword [0x45ebd0]
mov eax, dword [0x45ebd4]
mov ebp, ecx
sub ebp, eax
mov eax, 0xc09944a7
imul ebp, ebp, 0x15445b42
imul ecx
add edx, ecx
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebp, esi
add ebp, edi
sub ebp, eax
mov eax, 0x2e45b009
imul ebx
sar edx, 0x1b
mov ecx, edx
add ebp, edx
mov edx, dword [0x45ebcc]
imul edx, edx, 0xbd0f4c0
add esp, 4
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
shr ecx, 0x1f
push 0x800
add ecx, ebp
sub ecx, edx
lea eax, [esp + 0x7f0]
push eax
mov dword [0x45ebe0], ecx
mov ecx, dword [esp + 0x20]
push 0x44ee89
push ecx
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [esp + 0x7e8]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4055f0
sub eax, edx
mov dword [esp + 0x10], eax
je 0x405749
mov ecx, dword [0x45ebc8]
mov eax, 0x4be59407
imul ecx
mov ecx, dword [0x45ebd8]
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov esi, dword [0x45ebdc]
mov eax, 0x2d01dbc7
imul ecx
imul ecx, ecx, 0x4bbe8b58
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x83008757
imul esi
add edx, esi
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebd4]
sub edi, eax
imul edx, edx, 0xbd0f4c0
add edi, ecx
mov ecx, dword [0x45ebd0]
imul ecx, ecx, 0x15c6babc
lea eax, [esp + 0x7e8]
push eax
add edi, ecx
lea ecx, [esp + 0x1c]
sub edi, edx
push 0x1f4
push ecx
mov dword [0x45ebe8], edi
call fcn.00410580
mov edi, eax
add esp, 0xc
xor esi, esi
test edi, edi
jle 0x405749
mov ecx, dword [0x45ebd4]
mov eax, 0x4be59407
imul ecx
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0x2e45b009
imul ecx
sar edx, 0x1b
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ebe0]
imul edx, edx, 0x15c6babc
sub ebx, ecx
mov ecx, dword [0x45ebcc]
sub ebx, edx
mov eax, 0x9c5fe915
imul ecx
add edx, ecx
mov ecx, dword [0x45ebd8]
sar edx, 0x1d
mov ebp, edx
add ebx, edx
mov eax, 0x9c5fe915
imul ecx
add edx, ecx
mov ecx, dword [0x45ebdc]
imul ecx, ecx, 0x3e20adb7
sar edx, 0x1d
shr ebp, 0x1f
mov eax, edx
shr eax, 0x1f
add ebp, ebx
add ebp, edx
mov edx, dword [esp + esi*4 + 0x18]
add eax, ebp
add eax, ecx
mov dword [0x45ebc4], eax
push edx
lea eax, [esp + 0xfec]
push eax
call fcn.004326c0
add esp, 8
test eax, eax
jne 0x4057cb
inc esi
cmp esi, edi
jl 0x4056a0
mov ecx, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov eax, 0x4be59407
imul esi, esi, 0x35f7d09c
imul ecx
sar edx, 0x1c
add esi, edx
mov edi, edx
mov eax, 0x83008757
imul ecx
add edx, ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1c
imul ecx, ecx, 0x15c6babc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebc4]
shr edi, 0x1f
imul edx, edx, 0x1a1a8172
add edi, esi
sub edi, eax
mov eax, dword [0x45ebe4]
sub edi, ecx
add edi, eax
lea eax, [edx + edi + 0xbd0f4c0]
mov dword [0x45ebd4], eax
xor eax, eax
mov ecx, dword [esp + 0x17e8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00431a6d
add esp, 0x17dc
ret
mov ecx, dword [0x45ebdc]
mov esi, dword [0x45ebc4]
imul esi, esi, 0x31136cfe
mov eax, 0xc09944a7
imul ecx
add edx, ecx
mov ecx, dword [0x45ebd0]
sar edx, 0x1c
add esi, edx
mov edi, edx
mov eax, 0x273a7861
imul ecx
sar edx, 0x19
mov ecx, edx
shr edi, 0x1f
add edi, esi
shr ecx, 0x1f
add ecx, edx
sub edi, ecx
mov ecx, dword [0x45ebe0]
mov eax, 0x2e45b009
imul ecx
mov ecx, dword [0x45ebd8]
sar edx, 0x1b
add edi, edx
mov esi, edx
mov eax, 0x9c5fe915
imul ecx
add edx, ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add eax, edx
shr esi, 0x1f
add esi, edi
sub esi, eax
mov eax, 0x9c5fe915
imul ecx
add edx, ecx
mov ecx, dword [0x45ebd4]
sar edx, 0x1d
add esi, edx
mov edi, edx
mov eax, 0x56a9121b
imul ecx
shr edi, 0x1f
sar edx, 0x1a
add edi, esi
mov ecx, edx
shr ecx, 0x1f
add edi, edx
add ecx, edi
mov dword [0x45ebcc], ecx
mov eax, 1
jmp 0x4057b2