Function at 0x42f6ab
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x4cabe7
call fcn.0045d534
sub esp, 0x118
mov al, byte [esp + 0x13]
push ebx
push ebp
push esi
push edi
mov esi, ecx
xor edi, edi
lea ecx, [esp + 0x10]
push edi
mov byte [esp + 0x14], al
call fcn.00404df7
mov ebx, str.psnetwork.ini
push ebx
call fcn.0045d7a0
pop ecx
push eax
push ebx
lea ecx, [esp + 0x18]
call fcn.00404e8a
mov eax, dword [esp + 0x14]
mov dword [esp + 0x130], edi
cmp eax, edi
jne 0x42f700
mov eax, 0x4d3cf4
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push eax
lea eax, [esp + 0x28]
push 0xfff
push eax
push str.localhost
mov ebx, str.Http
push str.host
push ebx
call ebp
lea eax, [esp + 0x24]
lea ecx, [esi + 0x44]
push eax
call fcn.004be04b
mov eax, dword [esp + 0x14]
cmp eax, edi
jne 0x42f73d
mov eax, 0x4d3cf4
push eax
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str.share
push ebx
call edi
mov dword [esi + 0x4c], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f75d
mov eax, 0x4d3cf4
push eax
lea eax, [esp + 0x28]
push 0xfff
push eax
push 0x50dea8
push str.path
push ebx
call ebp
lea eax, [esp + 0x24]
lea ecx, [esi + 0x48]
push eax
call fcn.004be04b
mov eax, dword [esp + 0x14]
mov ebp, 0x4d3cf4
test eax, eax
jne 0x42f791
mov eax, ebp
push eax
mov ebx, str.fixed
push 0
push ebx
push str.XPSP2
call edi
push str.powerplayer.ini
push 0
push ebx
push str.WMP8
mov dword [esi + 0x58], eax
call edi
mov dword [esi + 0x50], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f7c0
mov eax, ebp
push eax
push 1
mov ebx, str.upnp
push str.FindUPNP
push ebx
call edi
mov dword [esi + 0x68], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f7dd
mov eax, ebp
push eax
push 1
push str.StartUPNP
push ebx
call edi
mov dword [esi + 0x64], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f7f5
mov eax, ebp
push eax
push 0x28
mov ebx, str.Network
push str.remotepeerlimit
push ebx
call edi
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f812
mov eax, ebp
push eax
push 0x1e
push str.localpeerlimit
push ebx
call edi
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f82a
mov eax, ebp
push eax
push 0x2d
push str.totalpeerlimit
push ebx
call edi
mov dword [esi + 0x14], eax
xor ebp, ebp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
call fcn.00460161
pop ecx
call fcn.0046016e
cdq
mov ecx, 0x2e7c
idiv ecx
add ebp, edx
cmp ebp, 0x1fa4
jl 0x42f847
cmp ebp, 0x4a2c
jne 0x42f867
inc ebp
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f874
mov eax, 0x4d3cf4
push eax
push ebp
push str.tcpport
push ebx
call edi
mov word [esi + 8], ax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f88f
mov eax, 0x4d3cf4
push eax
push ebp
push str.udpport
push ebx
call edi
cmp word [esi + 8], 0
mov word [esi + 0xa], ax
jne 0x42f8a8
mov word [esi + 8], bp
test ax, ax
jne 0x42f8b1
mov word [esi + 0xa], bp
mov eax, dword [esp + 0x14]
mov ebp, 0x4d3cf4
test eax, eax
jne 0x42f8c0
mov eax, ebp
push eax
push 0
push str.fixport
push ebx
call edi
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f8d8
mov eax, ebp
push eax
push 0x1e
push str.simulconnectingpeer
push ebx
call edi
mov dword [esi + 0x20], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f8f0
mov eax, ebp
push eax
push 1
push str.accl
push ebx
call edi
push 0xa
mov dword [esi + 0x1c], eax
pop eax
cmp dword [esi + 0x20], eax
jae 0x42f909
mov dword [esi + 0x20], eax
push 0x5a
pop ecx
cmp dword [esi + 0x20], ecx
jbe 0x42f914
mov dword [esi + 0x20], ecx
push 0x32
pop ecx
cmp dword [esi + 0x10], ecx
jbe 0x42f91f
mov dword [esi + 0x10], ecx
cmp dword [esi + 0x10], eax
jae 0x42f927
mov dword [esi + 0x10], eax
push 0x64
pop eax
cmp dword [esi + 0xc], eax
jbe 0x42f932
mov dword [esi + 0xc], eax
push 0x14
pop eax
cmp dword [esi + 0xc], eax
jae 0x42f93d
mov dword [esi + 0xc], eax
mov ecx, dword [esi + 0x10]
cmp dword [esi + 0x14], ecx
jae 0x42f94b
lea eax, [ecx + 0xf]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0xc]
cmp dword [esi + 0x14], eax
jae 0x42f959
lea edx, [eax + 0xa]
mov dword [esi + 0x14], edx
lea edx, [eax + ecx]
cmp dword [esi + 0x14], edx
jbe 0x42f96d
cmp ecx, eax
jbe 0x42f967
mov eax, ecx
add eax, 0xa
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f977
mov eax, ebp
push eax
lea eax, [esp + 0x28]
push 0x104
mov ebp, str.http:__www.ppstream.com_download.html
push eax
push ebp
mov ebx, 0x50326c
push str.XPSP2URL
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [esp + 0x24]
lea ecx, [esi + 0x54]
push eax
call fcn.004be04b
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f9b3
mov eax, 0x4d3cf4
push eax
lea eax, [esp + 0x28]
push 0x104
push eax
push ebp
push str.WMPURL
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [esp + 0x24]
lea ecx, [esi + 0x5c]
push eax
call fcn.004be04b
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42f9e5
mov eax, 0x4d3cf4
push eax
lea eax, [esp + 0x28]
push 0x104
push eax
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str.OptHelperURL
push ebx
call ebp
lea eax, [esp + 0x24]
lea ecx, [esi + 0x5c]
push eax
call fcn.004be04b
mov ebx, str.powerplayer.ini
push ebx
call fcn.0045d7a0
pop ecx
push eax
push ebx
lea ecx, [esp + 0x18]
call fcn.00404e8a
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42fa30
mov eax, 0x4d3cf4
push eax
push 0
mov ebx, str.main
push str.AutoMiniMemory
push ebx
call edi
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42fa50
mov eax, 0x4d3cf4
push eax
push 0
push str.AutoRun
push ebx
call edi
mov dword [esi + 0x2c], eax
call fcn.004c43c0
mov eax, dword [eax + 4]
push 1
push str.PromptWhenExit
push ebx
mov ecx, eax
call fcn.004c45a5
mov dword [esi + 0x34], eax
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42fa85
mov eax, 0x4d3cf4
push eax
push 5
push str.AutoMiniMemTime
push ebx
call edi
mov dword [esi + 0x38], eax
push str.powerlist.ini
lea eax, [esp + 0x28]
push 0x104
push eax
push 0x503154
push str.mode
push str.server
call ebp
lea eax, [esp + 0x24]
push str.http
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x42fad0
mov dword [esi + 0x3c], 1
jmp 0x42fad4
and dword [esi + 0x3c], 0
or dword [esp + 0x130], 0xffffffff
push 1
lea ecx, [esp + 0x14]
call fcn.00404df7
mov ecx, dword [esp + 0x128]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
leave
ret