Function at 0x404380
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x17d8
call fcn.0042af20
mov eax, dword [0x459190]
mov dword [esp + 0x17d4], eax
push ebx
mov ecx, dword [0x457830]
push esi
imul ecx, ecx, 0x1643
mov esi, dword [0x457834]
mov eax, 0xf00f00f1
imul esi
mov eax, dword [0x457818]
imul eax, eax, 0x2220
add edx, esi
sar edx, 0xd
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
add ebx, eax
push edi
mov edi, dword [0x457820]
mov eax, 0x8f2b7b75
imul edi
sub ebx, ecx
add edx, edi
sar edx, 0xb
add ebx, edx
mov ecx, edx
mov eax, 0xb6adc247
imul esi
add edx, esi
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [0x45782c]
sub ecx, eax
mov eax, 0x9ad70599
imul ebx
add edx, ebx
mov ebx, dword [str._r_____r____]
imul ebx, ebx, 0x1a74
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x77826bf5
imul edi
mov edi, dword [esp + 0x17e8]
mov dword [0x457818], ecx
imul ecx, ecx, 0x59b
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
add ebx, ecx
sub ebx, esi
sub ebx, 0x2220
test edi, edi
mov dword [0x457820], ebx
je 0x40470e
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404467
sub eax, edx
mov dword [esp + 0xc], eax
je 0x40470e
mov ebx, dword [esp + 0x17ec]
test ebx, ebx
je 0x40470e
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404490
sub eax, edx
mov dword [esp + 0xc], eax
je 0x40470e
mov ecx, dword [0x457824]
mov eax, 0x77c150d
imul ecx
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, dword [0x457838]
push ebp
mov ebp, ecx
imul ebp, ebp, 0xffffdde0
sub ebp, edx
mov eax, 0x2d78bd59
imul ecx
mov eax, dword [0x45781c]
imul eax, eax, 0x1568
sar edx, 0xa
mov esi, edx
add ebp, edx
shr esi, 0x1f
add esi, ebp
add esi, eax
mov eax, 0x7931d3bd
imul ecx
sar edx, 0xb
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
lea ecx, [esp + 0xfe4]
mov dword [0x457828], esi
mov eax, edi
sub ecx, edi
pop ebp
mov dl, byte [eax]
mov byte [ecx + eax], dl
inc eax
test dl, dl
jne 0x404510
lea edx, [esp + 0xfe0]
push edx
call fcn.004041c0
imul esi, esi, 0xe4e
mov ecx, dword [0x45781c]
mov edi, dword [0x45782c]
mov eax, 0x887d940b
imul edi, edi, 0x2220
imul ecx
mov ecx, dword [0x457824]
add esp, 4
imul ecx, ecx, 0x562
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
push str.C:WINDOWS_system32driversetc_service5.ini
add eax, edx
push 0x800
lea edx, [esp + 0x7e8]
push edx
sub eax, edi
push 0x447e15
add eax, esi
push ebx
sub eax, ecx
push str.GameType1
mov dword [0x457830], eax
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 0x404597
sub eax, edx
mov dword [esp + 0xc], eax
je 0x4046bd
mov ecx, dword [0x45782c]
mov esi, dword [0x457834]
mov eax, 0x17eb125
imul esi, esi, 0x2220
imul ecx
mov ecx, dword [0x457820]
sar edx, 5
imul ecx, ecx, 0x114e
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, 0x8f2b7b75
imul ecx
add edx, ecx
sar edx, 0xb
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 [0x457838], edi
call fcn.0040cc60
mov edi, eax
add esp, 0xc
xor esi, esi
test edi, edi
jle 0x4046bd
jmp 0x404630
mov ecx, dword [0x457824]
mov eax, 0x77c150d
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0x9ad70599
imul ecx
add edx, ecx
sar edx, 0xc
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x457838]
imul edx, edx, 0x1685
sub ebx, ecx
mov ecx, dword [0x45781c]
add ebx, edx
mov eax, 0xb7fe3405
imul ecx
add edx, ecx
mov ecx, dword [0x457830]
sar edx, 0xc
imul ecx, ecx, 0x10e6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + esi*4 + 0x10]
sub ebx, eax
push edx
lea eax, [esp + 0xfe4]
add ebx, ecx
push eax
mov dword [str._r_____r____], ebx
call fcn.0042b350
add esp, 8
test eax, eax
jne 0x404726
inc esi
cmp esi, edi
jl 0x404630
mov ecx, dword [0x45782c]
mov esi, dword [str._r_____r____]
mov eax, 0x17eb125
imul esi, esi, 0x2234
imul ecx
mov ecx, dword [0x457818]
sar edx, 5
imul ecx, ecx, 0x10e6
mov eax, edx
shr eax, 0x1f
add eax, edx
add ecx, dword [0x457830]
mov edx, dword [0x457828]
imul edx, edx, 0x59b
sub esi, eax
add ecx, esi
lea eax, [edx + ecx - 0x2220]
mov dword [0x457824], eax
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x17d4]
call fcn.0042a6e1
add esp, 0x17d8
ret
mov ecx, dword [0x457838]
mov eax, 0x77c150d
imul ecx
imul ecx, ecx, 0x1685
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
sub esi, ecx
mov ecx, dword [0x45781c]
mov eax, 0x17eb125
imul ecx
sar edx, 5
add esi, edx
mov ecx, edx
mov edx, dword [0x457830]
imul edx, edx, 0x10e6
shr ecx, 0x1f
add ecx, esi
add ecx, edx
sub ecx, dword [str._r_____r____]
add ecx, 0x1123
pop edi
mov dword [0x45781c], ecx
mov ecx, dword [esp + 0x17dc]
pop esi
mov eax, 1
pop ebx
call fcn.0042a6e1
add esp, 0x17d8
ret