Function at 0x404250
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x17d8
call fcn.0042a5a0
mov eax, dword [0x458190]
push ebx
mov dword [esp + 0x17d8], eax
push esi
mov esi, dword [0x456834]
mov eax, 0x4ca85b91
imul esi
mov eax, dword [0x456818]
imul eax, eax, 0xd5bac
sar edx, 0x12
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
add ebx, eax
mov eax, 0x72563b0d
imul esi
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x456830]
imul edx, edx, 0x8a1c3
sub ebx, ecx
sub ebx, edx
push edi
mov edi, dword [0x456820]
mov eax, 0x2e259371
imul edi
sar edx, 0x10
add ebx, edx
mov ecx, edx
mov edx, dword [0x45682c]
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [str._r_____r____]
mov eax, 0x637bce79
imul ebx, ebx, 0xa4b0c
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov dword [0x456818], ecx
imul ecx, ecx, 0x23d2f
mov eax, 0x2681eb59
imul edi
mov edi, dword [esp + 0x17e8]
add ebx, ecx
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
sub ebx, esi
sub ebx, 0xd5bac
test edi, edi
mov dword [0x456820], ebx
je 0x4045c7
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404330
sub eax, edx
mov dword [esp + 0xc], eax
je 0x4045c7
mov ebx, dword [esp + 0x17ec]
test ebx, ebx
je 0x4045c7
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404357
sub eax, edx
mov dword [esp + 0xc], eax
je 0x4045c7
mov ecx, dword [0x456824]
mov eax, 0x1315e2c9
imul ecx
mov ecx, dword [0x456838]
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45681c]
push ebp
imul edx, edx, 0x85714
mov ebp, ecx
imul ebp, ebp, 0xfff2a454
sub ebp, eax
add ebp, edx
mov eax, 0x7464ef13
imul ecx
sar edx, 0x12
add ebp, edx
mov esi, edx
mov eax, 0x4d18b8d9
imul ecx
sar edx, 0x11
shr esi, 0x1f
mov eax, edx
shr eax, 0x1f
add esi, ebp
add eax, edx
sub esi, eax
lea ecx, [esp + 0xfe4]
mov dword [0x456828], esi
mov eax, edi
sub ecx, edi
pop ebp
mov dl, byte [eax]
mov byte [ecx + eax], dl
inc eax
test dl, dl
jne 0x4043d8
lea ecx, [esp + 0xfe0]
push ecx
call fcn.004040b0
imul esi, esi, 0x58c2a
mov edx, dword [0x45682c]
mov edi, dword [0x456824]
imul edx, edx, 0xd5bac
mov ecx, dword [0x45681c]
imul edi, edi, 0xfffdd9b2
sub edi, edx
mov eax, 0x2681eb59
imul ecx
add esp, 4
push str.C:WINDOWS_system32driversetc_service5.ini
sar edx, 0x10
push 0x800
mov eax, edx
lea ecx, [esp + 0x7e8]
push ecx
shr eax, 0x1f
add eax, edx
push 0x446e15
sub edi, eax
push ebx
add edi, esi
push str.GameType1
mov dword [0x456830], edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [esp + 0x7e0]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404460
sub eax, edx
mov dword [esp + 0xc], eax
je 0x404576
mov ecx, dword [0x45682c]
mov esi, dword [0x456834]
mov eax, 0x3d63c959
imul esi, esi, 0xd5bac
imul ecx
mov ecx, dword [0x456820]
sar edx, 0x11
imul ecx, ecx, 0x6c5b6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
sub edi, esi
sub edi, ecx
mov ecx, dword [str._r_____r____]
mov eax, 0x2e259371
imul ecx
sar edx, 0x10
mov eax, edx
lea ecx, [esp + 0x7e0]
shr eax, 0x1f
push ecx
add eax, edx
lea edx, [esp + 0x14]
sub edi, eax
push 0x1f4
push edx
mov dword [0x456838], edi
call fcn.0040c7e0
mov edi, eax
add esp, 0xc
xor esi, esi
test edi, edi
jle 0x404576
lea ecx, [ecx]
mov ecx, dword [0x456824]
mov eax, 0x1315e2c9
imul ecx
mov eax, dword [0x456838]
imul eax, eax, 0x8cc35
sar edx, 0x10
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
add ebx, eax
mov eax, 0x637bce79
imul ecx
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x456830]
imul edx, edx, 0x6a41a
sub ebx, ecx
mov ecx, dword [0x45681c]
add ebx, edx
mov eax, 0x3b50a35b
imul ecx
mov ecx, dword [esp + esi*4 + 0x10]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
push ecx
lea edx, [esp + 0xfe4]
sub ebx, eax
push edx
mov dword [str._r_____r____], ebx
call fcn.0042a9d0
add esp, 8
test eax, eax
jne 0x4045df
inc esi
cmp esi, edi
jl 0x4044f0
mov ecx, dword [0x45682c]
mov esi, dword [str._r_____r____]
mov eax, 0x3d63c959
imul esi, esi, 0xd69d0
imul ecx
mov ecx, dword [0x456828]
sar edx, 0x11
imul ecx, ecx, 0x23d2f
mov eax, edx
shr eax, 0x1f
add eax, edx
add ecx, dword [0x456830]
mov edx, dword [0x456818]
imul edx, edx, 0x6a41a
sub esi, eax
add ecx, esi
lea eax, [edx + ecx - 0xd5bac]
mov dword [0x456824], eax
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x17d4]
call fcn.00429d61
add esp, 0x17d8
ret
mov ecx, dword [0x456838]
mov eax, 0x1315e2c9
imul ecx
imul ecx, ecx, 0x8cc35
sar edx, 0x10
mov esi, edx
shr esi, 0x1f
add esi, edx
mov edx, dword [0x45681c]
mov eax, 0x3d63c959
imul edx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add esi, edx
mov edx, dword [str._r_____r____]
add eax, esi
sub eax, ecx
mov ecx, dword [0x456830]
imul ecx, ecx, 0x6a41a
add eax, ecx
mov ecx, dword [esp + 0x17e0]
sub eax, edx
add eax, 0x6a5e7
pop edi
pop esi
mov dword [0x45681c], eax
mov eax, 1
pop ebx
call fcn.00429d61
add esp, 0x17d8
ret