$_ = "\n\n" . join /\n/, <main
::DATA>; 1 while s/^(.*?\n?)\n{1,2}\s*([^\d]+)\s+(\d+)\s*?(?:\s*and|[,\n\s])(.*?)(?<=\n)(\3\s+)([^\n]*)(\n.*$|$)/$1$2 - $6\n\n$4$5$6$7/gs;
s/\n\n.*$//s;
__DATA__
Aa Aaa 1, Bb Bbb 2 and Cc Ccc 1
1 Institut xx Xx, Some University, Xxxx 14, US-10000 NewYork, USA; E-Mails: aa.aaa@edu.com; cc.ccc@edu.com
2 Institut zz Zzz, Some University2, Zzzz 20, US-10000 NewYork, USA; E-Mail: bb.bbb@edu.com
JF8gPSAiXG5cbiIgLiBqb2luIC9cbi8sIDxtYWluOjpEQVRBPjsKMSB3aGlsZSBzL14oLio/XG4/KVxuezEsMn1ccyooW15cZF0rKVxzKyhcZCspXHMqPyg/OlxzKmFuZHxbLFxuXHNdKSguKj8pKD88PVxuKShcM1xzKykoW15cbl0qKShcbi4qJHwkKS8kMSQyIC0gJDZcblxuJDQkNSQ2JDcvZ3M7CnMvXG5cbi4qJC8vczsKcHJpbnQgJF87CiAKX19EQVRBX18KQWEgQWFhIDEsIEJiIEJiYiAyICBhbmQgQ2MgQ2NjIDEgCjEgSW5zdGl0dXQgeHggWHgsIFNvbWUgVW5pdmVyc2l0eSwgWHh4eCAxNCwgVVMtMTAwMDAgTmV3WW9yaywgVVNBOyBFLU1haWxzOiBhYS5hYWFAZWR1LmNvbTsgY2MuY2NjQGVkdS5jb20gCjIgSW5zdGl0dXQgenogWnp6LCBTb21lIFVuaXZlcnNpdHkyLCBaenp6IDIwLCBVUy0xMDAwMCBOZXdZb3JrLCBVU0E7IEUtTWFpbDogYmIuYmJiQGVkdS5jb20=
Aa Aaa - Institut xx Xx, Some University, Xxxx 14, US-10000 NewYork, USA; E-Mails: aa.aaa@edu.com; cc.ccc@edu.com
Bb Bbb - Institut zz Zzz, Some University2, Zzzz 20, US-10000 NewYork, USA; E-Mail: bb.bbb@edu.com
Cc Ccc - Institut xx Xx, Some University, Xxxx 14, US-10000 NewYork, USA; E-Mails: aa.aaa@edu.com; cc.ccc@edu.com