Function at 0x4052e0
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x3648
call fcn.00427d50
mov eax, dword [0x455e64]
mov ecx, dword [0x454e08]
mov dword [esp + 0x3644], eax
push ebx
push ebp
push esi
mov esi, dword [0x454dfc]
mov eax, 0x9c9a6c87
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454df8]
push edi
imul edx, edx, 0xcd41
mov edi, dword [0x454e14]
mov ebx, edi
imul ebx, ebx, 0xfb02
sub ebx, eax
mov eax, esi
imul eax, eax, 0x10088
add ebx, edx
lea edx, [ebx + eax + 0x139e4]
mov dword [str._r_____r_____n], edx
mov eax, 0xa2ad5745
imul esi
add edx, esi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454e0c]
mov esi, eax
mov eax, 0xc2bd9c5d
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0x7fbc240d
imul edi
sub ebx, esi
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
sar edx, 0xf
add ebx, edx
mov esi, edx
mov eax, 0x7fbc240d
imul ecx
mov eax, dword [esp + 0x365c]
sar edx, 0xf
shr esi, 0x1f
mov ecx, edx
shr ecx, 0x1f
add esi, ebx
add ecx, edx
sub esi, ecx
sub esi, 0xdecb
test eax, eax
push str.C:WINDOWS_system32driversetc_service5.ini
mov dword [0x454dfc], esi
push 0x2800
jne 0x4053dd
lea edx, [esp + 0xe5c]
push edx
push 0x444dd9
push str.ConfigL4
jmp 0x4053ef
lea eax, [esp + 0xe5c]
push eax
push 0x444dd9
push str.ConfigL4x
push str.GameType1
call ebp
mov ecx, dword [0x454dfc]
mov edx, dword [0x454e00]
imul ecx, ecx, 0x689f
imul edx, edx, 0xdecc
add ecx, edx
mov edx, dword [0x454df8]
mov eax, edx
imul eax, eax, 0x15208
sub ecx, eax
mov eax, 0x3d4263a3
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
lea eax, [esp + 0xe54]
mov dword [0x454e08], ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x405443
sub eax, esi
mov dword [esp + 0x10], eax
jne 0x40546c
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
mov ecx, dword [esp + 0x3644]
call fcn.00427501
add esp, 0x3648
ret
mov esi, dword [0x454df4]
mov edi, dword [0x454e0c]
mov eax, 0x93140835
imul edi, edi, 0x689f
imul esi
add edx, esi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
mov eax, 0x30780947
imul ecx
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, edi
sub esi, ecx
mov ecx, dword [0x454e10]
mov eax, 0x3d4263a3
imul ecx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [esp + 0xe54]
sub esi, eax
mov eax, dword [str._r_____r_____n]
push ecx
lea edx, [esp + 0x18]
add esi, eax
push 0x190
push edx
mov dword [0x454df4], esi
call fcn.00404dc0
mov edi, eax
add esp, 0xc
cmp edi, 4
jl 0x405adf
and eax, reloc.WS2_32.dll_closesocket
jns 0x4054ff
dec eax
or eax, 0xfffffffc
inc eax
jne 0x405adf
mov esi, dword [0x454df8]
mov ebx, dword [0x454e10]
mov eax, 0x7514b1e9
imul ebx, ebx, 0xdecb
imul dword [0x454e08]
mov ecx, esi
imul ecx, ecx, 0xcd41
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebx, ecx
mov ecx, dword [0x454e04]
mov edx, ecx
imul edx, edx, 0x85ba
sub ebx, eax
lea eax, [ebx + edx + 0x139e4]
mov dword [0x454e00], eax
mov eax, edi
cdq
mov edi, 3
and edx, edi
add eax, edx
sar eax, 2
mov dword [0x5674f8], eax
mov eax, dword [0x567174]
test eax, eax
jg 0x4056d0
mov eax, 0xa2ad5745
imul ecx, ecx, 0x5706
imul esi
add edx, esi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r_____n]
imul edx, edx, 0x64b7
push str.C:WINDOWS_system32driversetc_service5.ini
sub edx, eax
push 0x800
lea eax, [edx + ecx - 0xdecb]
lea ecx, [esp + 0x65c]
push ecx
push 0x444dd9
push str.ConfigL1
push str.GameType1
mov dword [0x454e0c], eax
call ebp
lea edx, [esp + 0x654]
push edx
call fcn.00427d0a
add esp, 4
cmp eax, edi
mov esi, 0x78
jge 0x4055ea
mov dword [0x567174], edi
jmp 0x40561b
lea eax, [esp + 0x654]
push eax
call fcn.00427d0a
add esp, 4
cmp eax, esi
jle 0x405606
mov dword [0x567174], esi
jmp 0x40561b
lea ecx, [esp + 0x654]
push ecx
call fcn.00427d0a
add esp, 4
mov dword [0x567174], eax
mov ecx, dword [0x454df8]
mov eax, 0xa2ad5745
imul ecx
add edx, ecx
mov ecx, dword [str._r_____r_____n]
sar edx, 0xe
imul ecx, ecx, 0x64b7
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454e04]
imul edx, edx, 0x5706
push str.C:WINDOWS_system32driversetc_service5.ini
sub ecx, eax
push 0x800
lea eax, [ecx + edx - 0xdecb]
lea ecx, [esp + 0x65c]
push ecx
push 0x444dd9
push str.ConfigL2
push str.GameType1
mov dword [0x454e0c], eax
call ebp
lea edx, [esp + 0x654]
push edx
call fcn.00427d0a
add esp, 4
cmp eax, edi
jge 0x405699
mov dword [0x567178], edi
jmp 0x4056ca
lea eax, [esp + 0x654]
push eax
call fcn.00427d0a
add esp, 4
cmp eax, esi
jle 0x4056b5
mov dword [0x567178], esi
jmp 0x4056ca
lea ecx, [esp + 0x654]
push ecx
call fcn.00427d0a
add esp, 4
mov dword [0x567178], eax
mov ecx, dword [0x454e04]
mov esi, dword [0x454e14]
mov edi, dword [0x454e0c]
imul edi, edi, 0xcd41
mov edx, esi
imul edx, edx, 0xfb02
sub edi, edx
mov eax, 0x68649efd
imul dword [0x454dfc]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edi, edx
add eax, edi
mov edi, dword [0x454e00]
mov edx, edi
imul edx, edx, 0x8bf0
sub eax, edx
add eax, 0x64b7
mov dword [0x454df8], eax
mov eax, dword [0x5674fc]
test eax, eax
jg 0x405882
mov eax, 0x20a2ed5d
imul ecx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul edx, edx, 0xdecb
mov ecx, eax
sub ecx, edx
mov eax, 0x68649efd
imul edi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x68649efd
imul esi
push str.C:WINDOWS_system32driversetc_service5.ini
sar edx, 0xf
push 0x800
mov eax, edx
add ecx, edx
lea edx, [esp + 0x65c]
push edx
push 0x444dd9
shr eax, 0x1f
push str.ConfigL3
lea ecx, [eax + ecx + 0x8bf0]
push str.GameType1
mov dword [0x454e04], ecx
call ebp
mov esi, dword [0x454e08]
mov eax, dword [0x454df4]
imul esi, esi, 0x139e4
mov ecx, dword [0x454e10]
imul eax, eax, 0x8bf0
mov ebp, dword [0x454df8]
add esi, eax
mov eax, 0x7fbc240d
imul ecx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
sub esi, ebp
lea edx, [esp + 0x654]
add esi, 0xd145
push edx
mov dword [0x454e10], esi
call fcn.00427d0a
mov ecx, dword [0x5674f8]
add esp, 4
cmp eax, ecx
jge 0x405803
mov dword [0x5674fc], ecx
jmp 0x405882
lea eax, [esp + 0x654]
push eax
call fcn.00427d0a
add esp, 4
cmp eax, 0x64
jle 0x40586d
mov ecx, dword [0x454e10]
mov edx, dword [0x454df8]
imul ecx, ecx, 0xdecb
imul edx, edx, 0xcd41
add ecx, edx
mov eax, 0x7514b1e9
imul dword [0x454e08]
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x454e04]
sub ecx, eax
imul edx, edx, 0x85ba
lea eax, [ecx + edx + 0x139e4]
mov dword [0x454e00], eax
mov dword [0x5674fc], 0x64
jmp 0x405882
lea ecx, [esp + 0x654]
push ecx
call fcn.00427d0a
add esp, 4
mov dword [0x5674fc], eax
mov ecx, dword [0x454dfc]
mov eax, 0xa2ad5745
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, eax
mov eax, 0xc2bd9c5d
imul dword [0x454e0c]
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, eax
mov eax, 0x7fbc240d
imul dword [0x454e14]
sub esi, ecx
sar edx, 0xf
mov ecx, edx
add esi, edx
mov eax, 0x7fbc240d
imul dword [0x454e08]
sar edx, 0xf
shr ecx, 0x1f
mov eax, edx
shr eax, 0x1f
add ecx, esi
add eax, edx
sub ecx, eax
sub ecx, 0xdecb
push 0
mov dword [0x454dfc], ecx
call fcn.00427d0f
sub eax, dword [0x56719c]
add esp, 4
cmp eax, 0xa8c0
jl 0x40596c
mov esi, dword [0x454e10]
mov ecx, dword [0x454df8]
imul esi, esi, 0xdecb
imul ecx, ecx, 0xcd41
add esi, ecx
mov ecx, dword [0x454e08]
mov eax, 0x7514b1e9
imul ecx
mov ecx, dword [0x454e04]
sar edx, 0xe
imul ecx, ecx, 0x85ba
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
lea edx, [esi + ecx + 0x139e4]
push 0
mov dword [0x454e00], edx
call fcn.00427d0f
add esp, 4
xor ecx, ecx
mov dword [0x56719c], eax
mov dword [0x567500], ecx
jmp 0x405972
mov ecx, dword [0x567500]
mov edx, dword [0x454e04]
mov esi, dword [0x454e14]
mov eax, 0x20a2ed5d
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
imul edx, edx, 0xdecb
mov edi, eax
sub edi, edx
mov edx, dword [0x454e00]
mov eax, 0x68649efd
imul edx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x68649efd
imul esi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edi, edx
lea edx, [eax + edi + 0x8bf0]
cmp ecx, dword [0x5674fc]
mov dword [0x454e04], edx
jge 0x405ac3
cmp ecx, dword [0x5674f8]
jge 0x405a0b
push 0
call fcn.00427d0f
mov ecx, dword [0x567174]
mov esi, dword [0x567504]
imul ecx, ecx, 0x3c
sub eax, esi
add esp, 4
cmp eax, ecx
jge 0x405a44
mov ecx, dword [0x567500]
cmp ecx, dword [0x5674fc]
jge 0x405ac3
cmp ecx, dword [0x5674f8]
jl 0x405ac3
push 0
call fcn.00427d0f
sub eax, dword [0x567504]
mov edx, dword [0x567178]
imul edx, edx, 0x3c
add esp, 4
cmp eax, edx
jl 0x405ac3
mov ecx, dword [0x454df8]
mov esi, dword [0x454dfc]
mov eax, dword [0x454e00]
imul esi, esi, 0x689f
imul eax, eax, 0xdecc
add esi, eax
mov edx, ecx
imul edx, edx, 0x15208
sub esi, edx
mov eax, 0x3d4263a3
imul ecx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, dword [0x567500]
cdq
idiv dword [0x5674f8]
mov dword [0x454e08], esi
shl edx, 4
mov eax, dword [esp + edx + 0x14]
mov edx, 0x567508
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x405aa0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x3644]
call fcn.00427501
add esp, 0x3648
ret
pop edi
pop esi
pop ebp
mov eax, 9
pop ebx
mov ecx, dword [esp + 0x3644]
call fcn.00427501
add esp, 0x3648
ret
mov ecx, dword [esp + 0x3654]
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
call fcn.00427501
add esp, 0x3648
ret