Function at 0x410cf0
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x3648
call fcn.004322b0
mov eax, dword [0x460640]
mov ecx, dword [0x45ebd4]
xor eax, esp
mov dword [esp + 0x3644], eax
mov eax, 0x4be59407
imul ecx
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
push ebx
push ebp
push esi
push edi
mov edi, eax
mov esi, dword [0x45ebd8]
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 edi, ecx
sub edi, edx
mov ecx, dword [0x45ebcc]
mov eax, 0x9c5fe915
imul esi
add edx, esi
sar edx, 0x1d
add edi, edx
mov ebx, edx
mov eax, 0x9c5fe915
imul ecx
mov eax, dword [0x45ebdc]
add edx, ecx
imul eax, eax, 0x3e20adb7
sar edx, 0x1d
mov ecx, edx
shr ebx, 0x1f
add ebx, edi
add ebx, edx
mov edi, dword [0x45ebe8]
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [0x45ebd0]
add ecx, eax
mov eax, 0xc09944a7
imul ebx
add edx, ebx
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebe4]
imul edx, edx, 0xd0d40b9
mov ebp, edi
imul ebp, ebp, 0x31136cfe
sub ebp, eax
add ebp, edx
mov eax, 0x9c5fe915
imul edi
add edx, edi
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov dword [0x45ebc4], ecx
imul ecx, ecx, 0x346312ef
mov eax, 0x56a9121b
imul esi
sar edx, 0x1a
sub ebp, ecx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ebe0]
mov eax, dword [esp + 0x365c]
add ebp, edx
test eax, eax
lea edx, [ecx + ebp - 0xbd0f4c0]
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
mov dword [0x45ebd0], edx
push 0x2800
jne 0x410e32
lea eax, [esp + 0xe5c]
push eax
push 0x44ee89
push str.ConfigL4
jmp 0x410e44
lea ecx, [esp + 0xe5c]
push ecx
push 0x44ee89
push str.ConfigL4x
push str.GameType1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ebp, dword [0x45ebe4]
mov ecx, dword [0x45ebcc]
mov eax, 0x4be59407
imul ebp
mov eax, dword [0x45ebc8]
sar edx, 0x1c
imul eax, eax, 0x2d80f713
mov edi, edx
shr edi, 0x1f
add edi, edx
mov edx, ecx
imul edx, edx, 0x5885071a
mov esi, dword [0x45ebd0]
add edi, edx
add edi, eax
mov eax, 0x273a7861
imul ecx
sar edx, 0x19
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x9c5fe915
imul esi
sub edi, ecx
add edx, esi
sar edx, 0x1d
add edi, edx
mov ecx, edx
mov edx, dword [0x45ebc4]
imul edx, edx, 0xbd0f4c0
shr ecx, 0x1f
add ecx, edi
add ecx, edx
lea eax, [esp + 0xe54]
mov dword [0x45ebdc], ecx
lea edi, [eax + 1]
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x410ed0
sub eax, edi
mov dword [esp + 0x10], eax
jne 0x410ee7
or eax, 0xffffffff
jmp 0x41176a
mov edi, dword [0x45ebe0]
mov eax, 0x2d01dbc7
imul ecx
mov ebx, edi
sar edx, 0x1b
imul ebx, ebx, 0x4d0e971
mov ecx, edx
add ebx, edx
mov eax, 0x273a7861
imul edi
sar edx, 0x19
mov eax, edx
shr ecx, 0x1f
shr eax, 0x1f
add eax, edx
add ecx, ebx
sub ecx, eax
mov eax, 0x5e0c18e7
imul esi
sar edx, 0x1b
add ecx, edx
mov esi, edx
mov eax, 0x56a9121b
imul ebp
sar edx, 0x1a
shr esi, 0x1f
add esi, ecx
mov ecx, edx
add esi, edx
mov edx, dword [0x45ebd8]
imul edx, edx, 0xbd0f4c0
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.00410580
mov ebx, eax
add esp, 0xc
cmp ebx, 4
jl 0x411765
mov edx, ebx
and edx, reloc.WS2_32.dll_closesocket
jns 0x410f89
dec edx
or edx, 0xfffffffc
inc edx
jne 0x411765
mov edi, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov eax, 0x4be59407
imul edi
mov ecx, esi
imul ecx, ecx, 0x35f7d09c
sar edx, 0x1c
add ecx, edx
mov ebp, edx
mov eax, 0x83008757
imul edi
add edx, edi
sar edx, 0x1c
shr ebp, 0x1f
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebp, ecx
mov ecx, dword [0x45ebc8]
sub ebp, eax
mov eax, dword [0x45ebc4]
mov edx, ecx
imul eax, eax, 0x1a1a8172
imul edx, edx, 0x15c6babc
sub ebp, edx
add ebp, dword [0x45ebe4]
lea ebp, [eax + ebp + 0xbd0f4c0]
mov eax, ebx
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [0x5615d8], eax
mov eax, dword [0x572808]
test eax, eax
mov dword [0x45ebd4], ebp
jg 0x4111ee
mov edi, dword [0x45ebd0]
imul ecx, ecx, 0x31136cfe
mov ebx, edi
sub ebx, ebp
imul ebx, ebx, 0x15445b42
add ebx, ecx
mov ecx, dword [0x45ebd8]
mov eax, 0xc09944a7
imul ecx, ecx, 0x2d80f713
imul edi
add edx, edi
sar edx, 0x1c
mov eax, edx
add ebx, ecx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x2e45b009
imul esi
sar edx, 0x1b
add ebx, edx
mov ecx, edx
mov edx, dword [0x45ebcc]
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
imul edx, edx, 0xbd0f4c0
push 0x800
lea eax, [esp + 0x65c]
push eax
shr ecx, 0x1f
push 0x44ee89
add ecx, ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str.ConfigL1
sub ecx, edx
push str.GameType1
mov dword [0x45ebe0], ecx
call ebx
lea ecx, [esp + 0x654]
push ecx
call fcn.00432272
mov esi, 3
add esp, 4
cmp eax, esi
mov edi, 0x78
jge 0x4110c7
mov dword [0x572808], esi
jmp 0x4110f8
lea edx, [esp + 0x654]
push edx
call fcn.00432272
add esp, 4
cmp eax, edi
jle 0x4110e3
mov dword [0x572808], edi
jmp 0x4110f8
lea eax, [esp + 0x654]
push eax
call fcn.00432272
add esp, 4
mov dword [0x572808], eax
mov ecx, dword [0x45ebd0]
mov edx, dword [0x45ebd4]
mov eax, dword [0x45ebd8]
mov ebp, ecx
imul eax, eax, 0x2d80f713
sub ebp, edx
mov edx, dword [0x45ebc8]
imul ebp, ebp, 0x15445b42
imul edx, edx, 0x31136cfe
add ebp, edx
add ebp, eax
mov eax, 0xc09944a7
imul ecx
add edx, ecx
sar edx, 0x1c
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebp, ecx
mov ecx, dword [0x45ebe8]
mov eax, 0x2e45b009
imul ecx
mov ecx, dword [0x45ebcc]
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
imul ecx, ecx, 0xbd0f4c0
sar edx, 0x1b
push 0x800
mov eax, edx
add ebp, edx
lea edx, [esp + 0x65c]
push edx
shr eax, 0x1f
push 0x44ee89
add eax, ebp
push str.ConfigL2
sub eax, ecx
push str.GameType1
mov dword [0x45ebe0], eax
call ebx
lea eax, [esp + 0x654]
push eax
call fcn.00432272
add esp, 4
cmp eax, esi
jge 0x4111a9
mov dword [0x57280c], esi
jmp 0x4111da
lea ecx, [esp + 0x654]
push ecx
call fcn.00432272
add esp, 4
cmp eax, edi
jle 0x4111c5
mov dword [0x57280c], edi
jmp 0x4111da
lea edx, [esp + 0x654]
push edx
call fcn.00432272
add esp, 4
mov dword [0x57280c], eax
mov edi, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov ecx, dword [0x45ebc8]
jmp 0x4111f4
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ebp, dword [0x45ebc4]
mov eax, 0xc09944a7
imul ebp, ebp, 0x31136cfe
imul edi
add edx, edi
sar edx, 0x1c
add ebp, edx
mov edi, edx
mov eax, 0x273a7861
imul dword [0x45ebd0]
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
shr edi, 0x1f
add edi, ebp
mov ebp, dword [0x45ebe0]
sub edi, eax
mov eax, 0x2e45b009
imul ebp
sar edx, 0x1b
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, eax
mov eax, 0x9c5fe915
imul ecx
add edx, ecx
sar edx, 0x1d
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, dword [0x45ebd8]
mov dword [esp + 0x10], eax
mov eax, 0x9c5fe915
imul dword [0x45ebd8]
add edx, edi
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub edx, eax
mov dword [esp + 0x10], edx
mov eax, 0x56a9121b
imul 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 0x4114a2
mov eax, 0x4be59407
imul edi, edi, 0x1f444551
imul ecx
imul ecx, ecx, 0x35f7d09c
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x53766c07
imul dword [0x45ebc4]
sar edx, 0x1c
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov dword [esp + 0x10], eax
mov eax, 0x83008757
imul ebp
mov eax, dword [esp + 0x10]
add edx, ebp
sar edx, 0x1c
add eax, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, eax
mov eax, 0x5e0c18e7
imul esi
imul esi, esi, 0xbd0f4c0
sar edx, 0x1b
sub ecx, edi
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
mov eax, edx
shr eax, 0x1f
add ecx, edx
push 0x800
add eax, ecx
lea ecx, [esp + 0x65c]
push ecx
push 0x44ee89
push str.ConfigL3
sub eax, esi
push str.GameType1
mov dword [0x45ebd8], eax
call ebx
mov ecx, dword [0x45ebcc]
mov esi, dword [0x45ebd8]
mov eax, 0x4be59407
imul esi, esi, 0x35f7d09c
imul ecx
mov ecx, dword [0x45ebc4]
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, 0xc09944a7
imul ecx
add edx, ecx
mov ecx, dword [0x45ebd4]
sar edx, 0x1c
imul ecx, ecx, 0x3e888aa2
sub edi, esi
mov esi, edx
add edi, edx
shr esi, 0x1f
add esi, edi
add esi, ecx
mov ecx, dword [0x45ebd0]
mov eax, 0x2e45b009
imul ecx
mov ecx, dword [0x45ebe4]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x9c5fe915
imul ecx
add edx, ecx
sar edx, 0x1d
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [esp + 0x654]
sub esi, ecx
push edx
mov dword [0x45ebe4], esi
call fcn.00432272
mov ecx, dword [0x5615d8]
add esp, 4
cmp eax, ecx
jge 0x4113fc
mov dword [0x5615dc], ecx
jmp 0x41149c
lea eax, [esp + 0x654]
push eax
call fcn.00432272
add esp, 4
cmp eax, 0x64
jle 0x411487
mov ecx, dword [0x45ebdc]
mov esi, dword [0x45ebe8]
mov eax, 0x4be59407
imul ecx
mov edi, esi
imul edi, edi, 0x35f7d09c
sar edx, 0x1c
add edi, edx
mov ebx, edx
mov eax, 0x83008757
imul ecx
mov eax, dword [0x45ebc4]
add edx, ecx
imul eax, eax, 0x1a1a8172
sar edx, 0x1c
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ebc8]
imul edx, edx, 0x15c6babc
shr ebx, 0x1f
add ebx, edi
sub ebx, ecx
mov ecx, dword [0x45ebe4]
sub ebx, edx
add ebx, ecx
lea ecx, [eax + ebx + 0xbd0f4c0]
mov dword [0x45ebd4], ecx
mov dword [0x5615dc], 0x64
jmp 0x4114a2
lea edx, [esp + 0x654]
push edx
call fcn.00432272
add esp, 4
mov dword [0x5615dc], eax
mov esi, dword [0x45ebe8]
mov ecx, dword [0x45ebd0]
mov eax, 0xc09944a7
imul ecx
add edx, ecx
sar edx, 0x1c
mov edi, esi
imul edi, edi, 0x31136cfe
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, dword [0x45ebe4]
imul eax, eax, 0xd0d40b9
add edi, eax
mov eax, 0x9c5fe915
imul esi
mov eax, dword [0x45ebc4]
imul eax, eax, 0x346312ef
add edx, esi
mov ebx, dword [0x45ebe0]
sar edx, 0x1d
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub edi, ecx
sub edi, eax
mov eax, 0x56a9121b
imul dword [0x45ebd8]
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, ebx
lea ecx, [eax + edi - 0xbd0f4c0]
push 0
mov dword [0x45ebd0], ecx
call fcn.00432277
sub eax, dword [0x572830]
add esp, 4
cmp eax, 0xa8c0
jl 0x4115ba
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
mov esi, dword [0x45ebe4]
sub edi, eax
sub edi, ecx
add edi, esi
lea eax, [edx + edi + 0xbd0f4c0]
push 0
mov dword [0x45ebd4], eax
call fcn.00432277
add esp, 4
xor esi, esi
mov dword [0x572830], eax
mov dword [0x5615e0], esi
jmp 0x4115c0
mov esi, dword [0x5615e0]
mov ecx, dword [0x45ebc8]
mov eax, 0x4be59407
imul ecx
imul ecx, ecx, 0x35f7d09c
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebc4]
sub ecx, eax
mov eax, 0x53766c07
imul edx
sar edx, 0x1c
add ecx, edx
mov edi, edx
shr edi, 0x1f
add edi, ecx
mov ecx, dword [0x45ebe0]
mov eax, 0x83008757
imul ecx
add edx, ecx
mov ecx, dword [0x45ebcc]
imul ecx, ecx, 0x1f444551
sar edx, 0x1c
mov ebx, edx
shr ebx, 0x1f
add edi, edx
add ebx, edi
sub ebx, ecx
mov ecx, dword [0x45ebe8]
mov eax, 0x5e0c18e7
imul ecx
imul ecx, ecx, 0xbd0f4c0
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
sub eax, ecx
mov dword [0x45ebd8], eax
cmp esi, dword [0x5615dc]
jge 0x41175e
cmp esi, dword [0x5615d8]
jge 0x411680
push 0
call fcn.00432277
mov ecx, dword [0x572808]
mov esi, dword [0x5615e4]
imul ecx, ecx, 0x3c
sub eax, esi
add esp, 4
cmp eax, ecx
jge 0x4116b9
mov esi, dword [0x5615e0]
cmp esi, dword [0x5615dc]
jge 0x41175e
cmp esi, dword [0x5615d8]
jl 0x41175e
push 0
call fcn.00432277
sub eax, dword [0x5615e4]
mov edx, dword [0x57280c]
imul edx, edx, 0x3c
add esp, 4
cmp eax, edx
jl 0x41175e
mov ecx, dword [0x45ebe4]
mov eax, 0x4be59407
imul ecx
mov ecx, dword [0x45ebcc]
sar edx, 0x1c
mov esi, edx
mov eax, ecx
imul eax, eax, 0x5885071a
shr esi, 0x1f
add esi, edx
mov edx, dword [0x45ebc8]
imul edx, edx, 0x2d80f713
add esi, eax
add esi, edx
mov eax, 0x273a7861
imul ecx
mov ecx, dword [0x45ebd0]
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x9c5fe915
imul ecx
mov eax, dword [0x5615e0]
add edx, ecx
sar edx, 0x1d
add esi, edx
mov ecx, edx
mov edx, dword [0x45ebc4]
imul edx, edx, 0xbd0f4c0
shr ecx, 0x1f
add ecx, esi
add ecx, edx
cdq
idiv dword [0x5615d8]
mov dword [0x45ebdc], ecx
mov ecx, 0x5615e8
shl edx, 4
mov eax, dword [esp + edx + 0x14]
sub ecx, eax
lea ebx, [ebx]
mov dl, byte [eax]
mov byte [ecx + eax], dl
inc eax
test dl, dl
jne 0x411750
xor eax, eax
jmp 0x41176a
mov eax, 9
jmp 0x41176a
mov eax, 0xfffffffe
mov ecx, dword [esp + 0x3654]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00431a6d
add esp, 0x3648
ret