Function at 0x180117c4
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb8
mov eax, dword [0x180af1d0]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
push edi
mov ebx, ecx
push 9
pop ecx
push 6
mov esi, str.MozillaFirefox_
lea edi, [ebp - 0x9c]
rep movsd dword es:[edi], dword [esi]
pop ecx
mov esi, str.profiles.ini
lea edi, [ebp - 0x78]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov esi, str.Profile0
lea edi, [ebp - 0x44]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov esi, str.Name
lea edi, [ebp - 0x14]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 5
pop ecx
mov esi, str.IsRelative
lea edi, [ebp - 0x5c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov eax, dword [ebp + 8]
mov esi, str.Path
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov esi, str.Default
lea edi, [ebp - 0x30]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], ebx
call fcn.18003bdc
mov esi, ebx
call fcn.18003bdc
mov eax, dword [0x180b41a8]
mov esi, 0x180b41a8
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
push 0x1a
lea ebx, [ebp - 0xa0]
mov dword [ebp - 0xa0], eax
call fcn.1800fe4c
pop ecx
test eax, eax
jge 0x180118a4
mov esi, eax
mov eax, dword [ebp - 0xa0]
add eax, 0xfffffff0
call fcn.18003e1e
mov ecx, dword [ebp - 8]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.180761c5
leave
ret
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.18002bc5
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xa0]
lea ecx, [ebp - 0xac]
call fcn.18002a05
mov ebx, dword [ebp - 0xac]
pop ecx
push ebx
call fcn.1800acf4
pop ecx
test al, al
jne 0x180118ed
lea eax, [ebx - 0x10]
call fcn.18003e1e
mov esi, 0x80070002
jmp 0x18011885
mov eax, dword [0x180b41a8]
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa8], eax
push ebx
mov eax, 0x800
push eax
push eax
lea eax, [ebp - 0xa8]
call fcn.18002b1f
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesW]
lea esi, [ebp - 0xa8]
mov edi, eax
call fcn.18003bbe
mov esi, dword [ebp - 0xa8]
lea edi, [esi + edi*2]
jmp 0x18011960
cmp word [esi], 0
je 0x18011964
push ebx
push 0
lea eax, [ebp - 0x30]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
je 0x1801195a
mov dword [ebp - 0xa4], esi
jmp 0x1801196d
cmp word [esi], 0
je 0x1801195e
inc esi
inc esi
cmp esi, edi
jb 0x18011952
inc esi
inc esi
cmp esi, edi
jb 0x18011932
lea eax, [ebp - 0x44]
mov dword [ebp - 0xa4], eax
mov esi, dword [ebp - 0xb4]
push ebx
mov eax, 0x100
push eax
push eax
mov eax, esi
call fcn.18002b1f
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push eax
mov ebx, 0x1809c304
push ebx
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0xa4]
call edi
call fcn.18003bbe
push dword [ebp - 0xac]
mov esi, dword [ebp - 0xb0]
mov eax, 0x400
push eax
push eax
mov eax, esi
call fcn.18002b1f
push eax
push ebx
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0xa4]
call edi
call fcn.18003bbe
mov eax, esi
call fcn.18005524
mov edi, dword [ebp - 0xac]
push edi
push 0
lea eax, [ebp - 0x5c]
push eax
push dword [ebp - 0xa4]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
je 0x18011a07
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
je 0x18011a07
push dword [ebp - 0xa0]
xor eax, eax
push esi
call fcn.180091aa
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
call fcn.18003e1e
lea eax, [edi - 0x10]
call fcn.18003e1e
xor esi, esi
jmp 0x18011885