ich würde wohl 2 TStringList -en machen. (TStringList.Create) für jede Section eine
mit TStringList.Add(str) an jeweils eine der Listen die Daten anfügen.
(d.h. ordne die Daten bevor du in die ini schreibst.. nicht erst beim Write

)
http://www.delphibasics.co.uk/RTL.asp?Name=TStringList
Dann beide nacheinander in die ini schreiben. Du kannst auch Delimiter verwenden (,, ;, ., #, /, |, usw.)
so wie du es versuchst müsstest du andauernd durch die ini zwitschern um die richtigen Zeilen zu finden. Der "Umweg" über 2 Stringlisten könnte dein Problem lösen.
Hoffe das hilft dir weiter.
gg hfhf
PS: Die Passwörter speicherst du hoffentlich nicht so in der ini!

der Trick dabei ist, nur die "verschlüsselten" PWDs zu speichern (Google: SHA1-Hash). Bei jeder Abfrage wird "das eingegebene Passwort verschlüsselt und mit dem verschlüsselten Wert in der
DB/Liste verglichen". Sind die gleich, war auch das Passwort richtig

. so speicherst du niemals Passwörter in Textform sondern nur verschlüsselte Werte

vielleicht wusstest du das.. aber vielleicht hilft es dir auch

"
http://helmbold.de/artikel/passwoerter-sicher-speichern