Function at 0x47b230
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4efe05
mov eax, dword fs:[0]
push eax
sub esp, 0x548
mov eax, dword [0x5392a4]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x479]
call fcn.0040b800
push eax
lea ecx, [ebp - 0x3c]
call fcn.004148f0
mov dword [ebp - 4], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x470], 0
mov ax, word [0x504c0c]
mov word [ebp - 0x44c], ax
push 0x206
push 0
lea ecx, [ebp - 0x44a]
push ecx
call fcn.0044aec0
add esp, 0xc
mov dx, word [0x504c10]
mov word [ebp - 0x244], dx
push 0x206
push 0
lea eax, [ebp - 0x242]
push eax
call fcn.0044aec0
add esp, 0xc
lea ecx, [ebp - 0x49c]
push ecx
call fcn.0047b150
add esp, 4
mov dword [ebp - 0x524], eax
mov edx, dword [ebp - 0x524]
mov dword [ebp - 0x528], edx
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x528]
mov dword [ebp - 0x52c], eax
cmp dword [ebp - 0x52c], 0
je 0x47b327
mov ecx, dword [ebp - 0x52c]
add ecx, 4
mov dword [ebp - 0x530], ecx
jmp 0x47b331
mov dword [ebp - 0x530], 0
push str.profiles.ini
mov edx, dword [ebp - 0x530]
push edx
lea eax, [ebp - 0x4b8]
push eax
call fcn.00407a80
add esp, 0xc
mov dword [ebp - 0x534], eax
mov ecx, dword [ebp - 0x534]
mov dword [ebp - 0x538], ecx
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x538]
push edx
lea ecx, [ebp - 0x46c]
call fcn.00417720
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4b8]
call fcn.00414bf0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x49c]
call fcn.00414a10
push 0xffffffffffffffff
push 0
mov ecx, dword [ebp + 8]
add ecx, 4
call fcn.00414d50
mov dword [ebp - 0x474], 0
jmp 0x47b3bc
mov eax, dword [ebp - 0x474]
add eax, 1
mov dword [ebp - 0x474], eax
cmp dword [ebp - 0x474], 0x1e
jge 0x47b47b
mov ecx, dword [ebp - 0x474]
push ecx
push 0x504c30
lea edx, [ebp - 0x3c]
push edx
call fcn.00413900
add esp, 0xc
lea ecx, [ebp - 0x468]
call fcn.00413e50
push eax
push 0x104
lea eax, [ebp - 0x244]
push eax
push 0x504c44
push str.Name
lea ecx, [ebp - 0x38]
call fcn.00413e50
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx ecx, word [ebp - 0x244]
test ecx, ecx
jne 0x47b41f
jmp 0x47b47b
cmp dword [ebp - 0x18], 0
jne 0x47b459
lea ecx, [ebp - 0x468]
call fcn.00413e50
push eax
push 0
push str.Default
lea ecx, [ebp - 0x38]
call fcn.00413e50
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x47b459
mov edx, dword [ebp - 0x474]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x470]
add eax, 1
mov dword [ebp - 0x470], eax
cmp dword [ebp - 0x18], 0
je 0x47b476
cmp dword [ebp + 0xc], 0
jne 0x47b476
jmp 0x47b47b
jmp 0x47b3ad
mov ecx, dword [ebp - 0x18]
push ecx
push str.Profile_d
lea edx, [ebp - 0x3c]
push edx
call fcn.00413900
add esp, 0xc
lea ecx, [ebp - 0x468]
call fcn.00413e50
push eax
push 0xffffffffffffffff
push str.IsRelative
lea ecx, [ebp - 0x38]
call fcn.00413e50
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x468]
call fcn.00413e50
push eax
push 0x104
lea eax, [ebp - 0x44c]
push eax
push 0x504c90
push 0x504c94
lea ecx, [ebp - 0x38]
call fcn.00413e50
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp dword [ebp - 0x14], 0
jl 0x47b4f7
movzx ecx, word [ebp - 0x44c]
test ecx, ecx
jne 0x47b527
mov byte [ebp - 0x4b9], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x46c]
call fcn.00414a10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call fcn.00414a10
mov al, byte [ebp - 0x4b9]
jmp 0x47b6d6
push 0x2f
lea edx, [ebp - 0x44c]
push edx
call fcn.0042e410
add esp, 8
mov dword [ebp - 0x478], eax
jmp 0x47b557
push 0x2f
mov eax, dword [ebp - 0x478]
push eax
call fcn.0042e410
add esp, 8
mov dword [ebp - 0x478], eax
cmp dword [ebp - 0x478], 0
je 0x47b570
mov ecx, 0x5c
mov edx, dword [ebp - 0x478]
mov word [edx], cx
jmp 0x47b540
lea eax, [ebp - 0x44c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea ecx, [ebp - 0x4dd]
call fcn.0040b800
push eax
lea ecx, [ebp - 0x44c]
push ecx
lea ecx, [ebp - 0x4dc]
call fcn.00414c40
mov byte [ebp - 4], 6
lea edx, [ebp - 0x4dc]
push edx
mov ecx, dword [ebp + 8]
call fcn.00415500
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x4dc]
call fcn.00414a10
cmp dword [ebp - 0x14], 0
je 0x47b69a
cmp dword [ebp + 8], 0
je 0x47b5db
mov eax, dword [ebp + 8]
add eax, 4
mov dword [ebp - 0x53c], eax
jmp 0x47b5e5
mov dword [ebp - 0x53c], 0
lea ecx, [ebp - 0x500]
push ecx
call fcn.0047b150
add esp, 4
mov dword [ebp - 0x540], eax
mov edx, dword [ebp - 0x540]
mov dword [ebp - 0x544], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0x548], eax
cmp dword [ebp - 0x548], 0
je 0x47b630
mov ecx, dword [ebp - 0x548]
add ecx, 4
mov dword [ebp - 0x54c], ecx
jmp 0x47b63a
mov dword [ebp - 0x54c], 0
mov edx, dword [ebp - 0x53c]
push edx
mov eax, dword [ebp - 0x54c]
push eax
lea ecx, [ebp - 0x51c]
push ecx
call fcn.00407b10
add esp, 0xc
mov dword [ebp - 0x550], eax
mov edx, dword [ebp - 0x550]
mov dword [ebp - 0x554], edx
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x554]
push eax
mov ecx, dword [ebp + 8]
call fcn.00407ba0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x51c]
call fcn.00414bf0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x500]
call fcn.00414a10
cmp dword [ebp + 0xc], 0
je 0x47b6ab
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x470]
mov dword [ecx], edx
mov byte [ebp - 0x51d], 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x46c]
call fcn.00414a10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c]
call fcn.00414a10
mov al, byte [ebp - 0x51d]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.004489b2
mov esp, ebp
pop ebp
ret