Function at 0x20058861
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x200a07f2
call fcn.2007d394
sub esp, 0x1e4
mov eax, dword [0x200cc84c]
push ebx
push esi
xor eax, ebp
mov esi, ecx
cmp dword [esi + 0x10d24], 0x10
mov dword [ebp - 0x10], eax
push edi
jb 0x20058891
mov eax, dword [esi + 0x10d10]
jmp 0x20058897
lea eax, [esi + 0x10d10]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push eax
push 1
push str.nodetype
mov ebx, str.Network
push ebx
call edi
mov dword [esi + 0x2a8], eax
cmp dword [esi + 0x10d24], 0x10
jb 0x200588c4
mov eax, dword [esi + 0x10d10]
jmp 0x200588ca
lea eax, [esi + 0x10d10]
push eax
push 0
push str.forcenodetype
push ebx
call edi
xor ebx, ebx
push ebx
lea ecx, [ebp - 0x130]
mov dword [esi + 0x2ac], eax
mov dword [ebp - 0x1cc], ebx
mov dword [ebp - 0x118], 0xf
call fcn.20001bc0
mov dword [ebp - 4], ebx
push ebx
lea ecx, [ebp - 0x1c4]
call fcn.200162c7
mov byte [ebp - 4], 1
cmp dword [esi + 0x454], ebx
je 0x20058964
lea eax, [esi + 0x440]
cmp dword [eax + 0x18], 0x10
jb 0x20058925
mov ecx, dword [eax + 4]
jmp 0x20058928
lea ecx, [eax + 4]
lea eax, [esi + 0x10cf0]
cmp dword [eax + 0x18], 0x10
jb 0x20058939
mov eax, dword [eax + 4]
jmp 0x2005893c
add eax, 4
push ecx
push eax
lea eax, [ebp - 0x114]
push str._s_s.lpc
push eax
call fcn.2007d900
add esp, 0x10
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x130]
call fcn.20003a20
cmp dword [ebp - 0x11c], ebx
je 0x20058b82
cmp dword [ebp - 0x118], 0x10
mov eax, dword [ebp - 0x12c]
jae 0x20058985
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x1c4]
call fcn.200163a4
test eax, eax
je 0x20058b82
cmp dword [ebp - 0x118], 0x10
mov eax, dword [ebp - 0x12c]
jae 0x200589ae
lea eax, [ebp - 0x12c]
push ebx
push eax
lea ecx, [ebp - 0x1c4]
call fcn.200166f6
test eax, eax
je 0x20058b82
lea ecx, [ebp - 0x1c4]
call fcn.20015f44
cmp eax, 0x8000
jae 0x20058b77
push ebx
push ebx
lea ecx, [ebp - 0x1c4]
call fcn.200160da
lea ecx, [ebp - 0x1c4]
mov edi, eax
call fcn.20015f44
push ebx
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x1c8], eax
call fcn.20036ee9
mov byte [ebp - 4], 2
push 0x200a6810
lea ecx, [ebp - 0x174]
call fcn.20003a20
push dword [ebp - 0x1c8]
lea ecx, [ebp - 0x178]
push edi
call fcn.200370b2
mov eax, dword [ebp - 0x154]
mov edi, dword [eax]
cmp edi, eax
je 0x20058b5d
lea eax, [edi + 8]
push eax
lea ecx, [ebp - 0x14c]
call fcn.20003892
mov byte [ebp - 4], 3
cmp dword [ebp - 0x134], 0x10
mov ebx, dword [edi]
mov eax, dword [ebp - 0x148]
jae 0x20058a65
lea eax, [ebp - 0x148]
push eax
call fcn.2007db04
push 0
mov dword [ebp - 0x1c8], eax
call fcn.2007e6f0
pop ecx
pop ecx
lea ecx, [ebp - 0x1d4]
mov edi, eax
call fcn.200013ff
cmp edi, dword [ebp - 0x1c8]
jle 0x20058b48
sub edi, dword [ebp - 0x1c8]
cmp edi, 0xa
jge 0x20058b48
jmp 0x20058b3c
cmp dword [ebx + 0x20], 0x10
jb 0x20058ab2
mov eax, dword [ebx + 0xc]
jmp 0x20058ab5
lea eax, [ebx + 0xc]
push 0
push eax
lea ecx, [ebp - 0x1d4]
call fcn.20034471
lea ecx, [ebp - 0x1d4]
call fcn.200342ea
test eax, eax
je 0x20058b3a
push 6
lea eax, [esi + 0x10c00]
push eax
lea eax, [ebp - 0x1d4]
push eax
call fcn.2007ce10
add esp, 0xc
test eax, eax
je 0x20058b3a
inc dword [ebp - 0x1cc]
lea eax, [ebp - 0x1f0]
push eax
lea ecx, [ebp - 0x1d4]
call fcn.20034401
mov byte [ebp - 4], 4
cmp dword [eax + 0x18], 0x10
jb 0x20058b15
mov eax, dword [eax + 4]
jmp 0x20058b18
add eax, 4
push 2
push eax
push str.localcache
mov ecx, esi
call fcn.20057758
mov byte [ebp - 4], 3
push 0
push 1
lea ecx, [ebp - 0x1f0]
call fcn.2000275e
mov ebx, dword [ebx]
cmp ebx, dword [ebp - 0x154]
jne 0x20058aa7
mov byte [ebp - 4], 2
push 0
push 1
lea ecx, [ebp - 0x14c]
call fcn.2000275e
xor ebx, ebx
lea ecx, [ebp - 0x1c4]
call fcn.20015ff9
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x178]
call fcn.20036f48
lea ecx, [ebp - 0x1c4]
call fcn.200164a6
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1c4]
call fcn.200166a0
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp - 0x130]
call fcn.2000275e
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x1cc]
pop edi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop esi
xor ecx, ebp
pop ebx
call fcn.2007c9ae
leave
ret