diff -r e94b2a8f268a src/C4Application.cpp
--- a/src/C4Application.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/C4Application.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -186,20 +186,6 @@
 	Log(C4ENGINEINFOLONG);
 	LogF("Version: %s %s", C4VERSION, C4_OS);
 
-	// Log registration info
-	if (Config.Registered())
-		{
-		char buf[4096 + 1] = "";
-		SAppend("Registered to: ", buf, 4096);
-		SAppend(Config.General.Name, buf, 4096); SAppend(" ", buf, 4096);
-		if (Config.GetRegistrationData("Nick")[0])
-			{ SAppend("(", buf, 4096); SAppend(Config.GetRegistrationData("Nick"), buf, 4096); SAppend(") ", buf, 4096); }
-		SAppend("[", buf, 4096); SAppend(Config.GetRegistrationData("Cuid"), buf, 4096); SAppend("]", buf, 4096);
-		Log(buf);
-		}
-	else
-		Log(Config.GetRegistrationError());
-
 #if defined(USE_DIRECTX) && defined(_WIN32)
 	// DDraw emulation warning
 	DWORD DDrawEmulationState;
diff -r e94b2a8f268a src/c4group/c4group_cmdl.cpp
--- a/src/c4group/c4group_cmdl.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/c4group/c4group_cmdl.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -97,13 +97,12 @@
 		printf("Group: %s\n",szFilename);
 
 	// Open group file
-  if (hGroup.Open(szFilename, true && Config.Registered()))
+  if (hGroup.Open(szFilename, true))
     {
     // No commands: display contents
     if (iFirstCommand<0)
 		{
-			if (Config.Registered())
-				hGroup.View("*");
+			hGroup.View("*");
 		}
 
     // Process commands
@@ -113,12 +112,6 @@
 			// This argument is a command
       if (argv[iArg][0]=='-')
         {
-				// Block unregistered commands
-				if (!Config.Registered() && (SCharPos(argv[iArg][1], "yw") < 0))
-				{
-			    printf("Command -%c not allowed in unregistered version: %s\n", argv[iArg][1], Config.GetRegistrationError());
-					continue;
-				}
 				// Handle commands
         switch (argv[iArg][1])
           {
diff -r e94b2a8f268a src/gui/C4ChatDlg.cpp
--- a/src/gui/C4ChatDlg.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4ChatDlg.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -383,17 +383,6 @@
 	const char *szNick = Config.IRC.Nick, *szRealName = Config.IRC.RealName;
 	StdStrBuf sNick, sRealName;
 	if (!*szNick) szNick = Config.Network.Nick.getData();
-	if (Config.Registered())
-		{
-		if (!szNick || !*szNick) { sNick.Copy(Config.GetRegistrationData("Nick")); szNick = sNick.getData(); }
-		if (!*szRealName)
-			{
-			sRealName.Copy(Config.GetRegistrationData("FirstName"));
-			sRealName.AppendChar(' ');
-			sRealName.Append(Config.GetRegistrationData("LastName"));
-			szRealName = sRealName.getData();
-			}
-		}
 	pEdtLoginNick->SetText(szNick, false);
 	pEdtLoginRealName->SetText(szRealName, false);
 	pEdtLoginChannel->SetText(Config.IRC.Channel, false);
diff -r e94b2a8f268a src/gui/C4Gui.h
--- a/src/gui/C4Gui.h	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4Gui.h	Mon Mar 01 22:19:54 2010 +0100
@@ -712,8 +712,7 @@
 		Ico_Ex_Update        = Ico_Extended + 14,
 		Ico_Ex_Chat          = Ico_Extended + 15,
 		Ico_Ex_GameList      = Ico_Extended + 16,
-		Ico_Ex_Comment       = Ico_Extended + 17,
-		Ico_Ex_Unregistered  = Ico_Extended + 18
+		Ico_Ex_Comment       = Ico_Extended + 17
 		};
 
 	// cute, litte, useless thingy
diff -r e94b2a8f268a src/gui/C4PlayerInfoListBox.cpp
--- a/src/gui/C4PlayerInfoListBox.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4PlayerInfoListBox.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -285,22 +285,6 @@
 			::GraphicsResource.fctPlayerClr.DrawClr(pIcon->GetMFacet(), true, dwPlayerClr);
 			}
 		fIconSet = true;
-		// unreg icon? Grayscale and stamp!
-		bool fUnreg = false;
-		C4ClientPlayerInfos *pClientPlrInfos = Game.PlayerInfos.GetClientInfoByPlayerID(pInfo->GetID());
-		if (pClientPlrInfos)
-			{
-			int32_t idClient = pClientPlrInfos->GetClientID();
-			C4Client *pClient = Game.Clients.getClientByID(idClient);
-			if (pClient) fUnreg = !pClient->isRegistered();
-			}
-		if (fUnreg)
-			{
-			C4FacetSurface &rPlrImg = pIcon->GetMFacet();
-			rPlrImg.EnsureOwnSurface();
-			rPlrImg.Grayscale(30);
-			C4GUI::Icon::GetIconFacet(C4GUI::Ico_Ex_Unregistered).Draw(rPlrImg);
-			}
 		}
 	else
 		// no player info known - either res not retrieved yet or script player
diff -r e94b2a8f268a src/gui/C4StartupAboutDlg.cpp
--- a/src/gui/C4StartupAboutDlg.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4StartupAboutDlg.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -47,31 +47,6 @@
 	C4GUI::ComponentAligner caInfo(C4Rect(rcClient.x + rcClient.Wdt - iInfoWdt, rcClient.y, iInfoWdt, rcClient.Hgt/8), 0,0, false);
 	AddElement(new C4GUI::Label(sVersion.getData(), caInfo.GetGridCell(0,1,0,4), ARight));
 	StdStrBuf sRegStr, sKeyFile;
-	if (Config.Registered())
-		{
-		StdStrBuf sRegName, sFirstName, sLastName, sNick;
-		sFirstName.Copy(Config.GetRegistrationData("FirstName"));
-		sLastName.Copy(Config.GetRegistrationData("LastName"));
-		sNick.Copy(Config.GetRegistrationData("Nick"));
-		sRegName.Format("%s %s (%s)", sFirstName.getData(), sLastName.getData(), sNick.getData());
-		sRegStr.Format(LoadResStr("IDS_PRC_REG"), sRegName.getData());
-		sKeyFile.Format("%s %s", LoadResStr("IDS_CTL_KEYFILE"), Config.GetKeyFilename());
-		C4GUI::Label *pLbl;
-		AddElement(pLbl = new C4GUI::Label(sRegStr.getData(), caInfo.GetGridCell(0,1,1,4), ARight));
-		pLbl->SetToolTip(sKeyFile.getData());
-		AddElement(pLbl = new C4GUI::Label(FormatString("%s %s", LoadResStr("IDS_CTL_CUID"), Config.GetRegistrationData("Cuid")).getData(), caInfo.GetGridCell(0,1,2,4), ARight));
-		pLbl->SetToolTip(sKeyFile.getData());
-		AddElement(pWebCodeLbl = new C4GUI::Label("", caInfo.GetGridCell(0,1,3,4), ARight));
-		pWebCodeLbl ->SetToolTip(sKeyFile.getData());
-		}
-	else
-		{
-		AddElement(new C4GUI::Label(LoadResStr("IDS_CTL_UNREGISTERED"), caInfo.GetGridCell(0,1,1,4), ARight));
-		AddElement(new C4GUI::Label(Config.GetRegistrationError(), caInfo.GetGridCell(0,1,2,4), ARight));
-		pWebCodeLbl = NULL;
-		}
-	// webcode-display timer
-	iWebCodeTimer = C4AboutWebCodeShowTime + 1;
 	Application.Add(this);
 	OnSec1Timer();
 
@@ -82,11 +57,6 @@
 	int32_t iButtonWidth = caButtons.GetInnerWidth() / 4;
 	AddElement(btn = new C4GUI::CallbackButton<C4StartupAboutDlg>(LoadResStr("IDS_BTN_BACK"), caButtons.GetGridCell(0,3,0,1,iButtonWidth,C4GUI_ButtonHgt,true), &C4StartupAboutDlg::OnBackBtn));
 	btn->SetToolTip(LoadResStr("IDS_DLGTIP_BACKMAIN"));
-	if (!Config.Registered())
-		{
-		AddElement(btn = new C4GUI::CallbackButton<C4StartupAboutDlg>(LoadResStr("IDS_BTN_REGISTERNOW"), caButtons.GetGridCell(1,3,0,1,iButtonWidth,C4GUI_ButtonHgt,true), &C4StartupAboutDlg::OnRegisterBtn));
-		btn->SetToolTip(LoadResStr("IDS_DESC_GOTOTHEONLINEREGISTRATION"));
-		}
 	AddElement(btn = new C4GUI::CallbackButton<C4StartupAboutDlg>(LoadResStr("IDS_BTN_CHECKFORUPDATES"), caButtons.GetGridCell(2,3,0,1,iButtonWidth,C4GUI_ButtonHgt,true), &C4StartupAboutDlg::OnUpdateBtn));
 	btn->SetToolTip(LoadResStr("IDS_DESC_CHECKONLINEFORNEWVERSIONS"));
 	}
@@ -104,23 +74,6 @@
 
 void C4StartupAboutDlg::OnSec1Timer()
 	{
-	// no webcode label in unregistered
-	if (!pWebCodeLbl) return;
-	// display countdown first
-	// display webcode after time is up
-	if (iWebCodeTimer)
-		{
-		if (--iWebCodeTimer)
-			{
-			// countdown
-			pWebCodeLbl->SetText(FormatString("%s %s (%d)", LoadResStr("IDS_CTL_WEBCODE"), LoadResStr("IDS_CTL_PLEASEWAIT"), iWebCodeTimer).getData(), false);
-			}
-		else
-			{
-			// webcode display
-			pWebCodeLbl->SetText(FormatString("%s %s", LoadResStr("IDS_CTL_WEBCODE"), Config.GetRegistrationData("WebCode")).getData(), false);
-			}
-		}
 	}
 
 void C4StartupAboutDlg::DrawElement(C4TargetFacet &cgo)
diff -r e94b2a8f268a src/gui/C4StartupMainDlg.cpp
--- a/src/gui/C4StartupMainDlg.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4StartupMainDlg.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -121,8 +121,6 @@
 	// draw version info
 	StdStrBuf sVer;
 	sVer.Format(LoadResStr("IDS_DLG_VERSION"), C4VERSION);
-	if (!Config.Registered())
-		{ sVer += " <c ff0000>["; sVer += LoadResStr("IDS_CTL_UNREGISTERED"); sVer += "]</c>"; }
 	lpDDraw->TextOut(sVer.getData(), C4GUI::GetRes()->TextFont, 1.0f, cgo.Surface, rcBounds.Wdt*1/40, rcBounds.Hgt/12 + int32_t(fLogoZoom*fctLogo.Hgt) - 10, 0xffffffff, ALeft, true);
 	}
 
@@ -298,20 +296,6 @@
 void C4StartupMainDlg::OnShown()
 	{
 
-	// New valid registration key found (in working directory or key path)
-	if (Config.Registered() && !Config.Security.WasRegistered)
-		HandleIncomingKeyfile(Config.GetKeyFilename());
-	// Incoming key file from command line
-	else if (Application.IncomingKeyfile)
-		HandleIncomingKeyfile(Application.IncomingKeyfile.getData());
-	// An invalid key file was found: handle it to show warning message
-	else if (!Config.Registered() && *Config.GetInvalidKeyFilename())
-		HandleIncomingKeyfile(Config.GetInvalidKeyFilename());
-	// Clear incoming key info
-	Application.IncomingKeyfile.Clear();
-	// Update registration status
-	Config.Security.WasRegistered = Config.Registered();
-
 	// Incoming update
 	if (Application.IncomingUpdate)
 		{
@@ -384,84 +368,4 @@
 	return true;
 }
 
-void C4StartupMainDlg::HandleIncomingKeyfile(const char *strIncomingKey)
-{
-	static bool fWarnedInvalidKeyfile = false;
 
-	// Copy filename parameter to keep it valid
-	StdCopyStrBuf strKeyFilename; strKeyFilename = strIncomingKey;
-
-	// Key file doesn't even exist? Do nothing.
-	if (!FileExists(strKeyFilename.getData())) return;
-
-	// Try loading registration from the incoming keyfile to verify it
-	Config.ClearRegistrationError();
-	if (!Config.LoadRegistration(strKeyFilename.getData()))
-	{
-		// Invalid keyfile: show message (but only once)
-		if (!fWarnedInvalidKeyfile)
-		{
-			StdStrBuf strMessage; strMessage.Format(LoadResStr("IDS_MSG_INVALIDKEY"), Config.GetRegistrationError());
-			GetScreen()->ShowMessageModal(strMessage.getData(), LoadResStr("IDS_DLG_REGISTRATION"),	C4GUI::MessageDialog::btnOK, C4GUI::Ico_Error);
-		}
-		fWarnedInvalidKeyfile = true;
-		// Try to reload any existing registration
-		Config.LoadRegistration();
-		// Bail out
-		return;
-	}
-
-	// See where the key is coming from
-	char strIncomingPath[_MAX_PATH + 1];
-	GetParentPath(strKeyFilename.getData(), strIncomingPath);
-	AppendBackslash(strIncomingPath);
-
-	// The key is already in the key path: that's how we like it
-	if (SEqualNoCase(strIncomingPath, Config.GetKeyPath()))
-		{
-		// Just say thank you
-		GetScreen()->ShowMessageModal(LoadResStr("IDS_CTL_REGISTERED"), LoadResStr("IDS_DLG_REGISTRATION"),	C4GUI::MessageDialog::btnOK, C4GUI::Ico_Notify);
-		return;
-		}
-
-	// The key is currently in the work dir (ExePath)
-	if (SEqualNoCase(strIncomingPath, Config.General.ExePath))
-		{
-		// Ask whether to move it to the key path (preferred)
-		StdStrBuf strMessage; strMessage.Format("%s||%s", LoadResStr("IDS_CTL_REGISTERED"), LoadResStr("IDS_MSG_MOVEKEY"));
-		if (GetScreen()->ShowMessageModal(strMessage.getData(), LoadResStr("IDS_DLG_REGISTRATION"),	C4GUI::MessageDialog::btnYesNo, C4GUI::Ico_Confirm))
-			{
-			// Create key path if it doesn't already exist
-			CreatePath(Config.GetKeyPath());
-			// Move key into key path
-			StdStrBuf strTarget; strTarget.Format("%s%s", Config.GetKeyPath(), GetFilename(strKeyFilename.getData()));
-			if (!MoveItem(strKeyFilename.getData(), strTarget.getData()))
-				GetScreen()->ShowMessageModal(LoadResStr("IDS_FAIL_MOVE"), LoadResStr("IDS_DLG_REGISTRATION"),	C4GUI::MessageDialog::btnOK, C4GUI::Ico_Error);
-			// Update registration
-			Config.LoadRegistration();
-			}
-		return;
-		}
-
-	// The key is coming from the outside
-	else
-		{
-		// Say thank you
-		GetScreen()->ShowMessageModal(LoadResStr("IDS_CTL_REGISTERED"), LoadResStr("IDS_DLG_REGISTRATION"),	C4GUI::MessageDialog::btnOK, C4GUI::Ico_Notify);
-		// Create key path if it doesn't already exist
-		CreatePath(Config.GetKeyPath());
-		// Now try to copy it into the key path (preferred)
-		StdStrBuf strTarget; strTarget.Format("%s%s", Config.GetKeyPath(), GetFilename(strKeyFilename.getData()));
-		if (!CopyItem(strKeyFilename.getData(), strTarget.getData()))
-			{
-			// Failed for some reason, try copy it into the work dir instead (emergency backup)
-			strTarget.Format("%s%s", Config.General.ExePath, GetFilename(strKeyFilename.getData()));
-			if (!CopyItem(strKeyFilename.getData(), strTarget.getData()))
-				GetScreen()->ShowMessageModal(LoadResStr("IDS_FAIL_COPY"), LoadResStr("IDS_DLG_REGISTRATION"),	C4GUI::MessageDialog::btnOK, C4GUI::Ico_Error);
-			}
-		// Update registration
-		Config.LoadRegistration();
-		return;
-		}
-
-}
diff -r e94b2a8f268a src/gui/C4StartupMainDlg.h
--- a/src/gui/C4StartupMainDlg.h	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4StartupMainDlg.h	Mon Mar 01 22:19:54 2010 +0100
@@ -33,7 +33,6 @@
 
 	protected:
 
-		void HandleIncomingKeyfile(const char *strIncomingKey);
 		void ConfirmMoveKey(const char *strKeyFilename);
 
 		virtual void DrawElement(C4TargetFacet &cgo);
diff -r e94b2a8f268a src/gui/C4StartupNetDlg.cpp
--- a/src/gui/C4StartupNetDlg.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4StartupNetDlg.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -1036,16 +1036,6 @@
 					C4GUI::Ico_Error);
 			return true;
 			}
-		// no unregistered join
-		if (pRef->isRegJoinOnly())
-			if (!Config.Registered())
-				{
-				::pGUI->ShowMessageModal(LoadResStr("IDS_NET_REGJOINONLY"),
-																		strNoJoin.getData(),
-																		C4GUI::MessageDialog::btnOK,
-																		C4GUI::Ico_Error);
-				return true;
-				}
 		// no runtime join
 		if (!pRef->isJoinAllowed())
 			{
diff -r e94b2a8f268a src/gui/C4StartupPlrSelDlg.cpp
--- a/src/gui/C4StartupPlrSelDlg.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/gui/C4StartupPlrSelDlg.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -401,12 +401,6 @@
 
 void C4StartupPlrSelDlg::CrewListItem::OnDeathMessageCtx(C4GUI::Element *el)
 	{
-	// Registered version only
-	if (!Config.Registered())
-		{
-		::pGUI->ShowMessageModal(LoadResStr("IDS_CTL_REGISTEREDONLY"), LoadResStr("IDS_MSG_SETDEATHMESSAGE"), C4GUI::MessageDialog::btnOK, C4GUI::Ico_Error);
-		return;
-		}
 	// Death message dialog
 	C4GUI::InputDialog *pDlg;
 	GetScreen()->ShowRemoveDlg(pDlg=new C4GUI::InputDialog(LoadResStr("IDS_MSG_ENTERNEWDEATHMESSAGE"), LoadResStr("IDS_MSG_SETDEATHMESSAGE"), C4GUI::Ico_Ex_Comment, new C4GUI::InputCallback<C4StartupPlrSelDlg::CrewListItem>(this, &C4StartupPlrSelDlg::CrewListItem::OnDeathMessageSet), false));
diff -r e94b2a8f268a src/network/C4Network2IRC.cpp
--- a/src/network/C4Network2IRC.cpp	Sun Feb 28 22:51:03 2010 +0100
+++ b/src/network/C4Network2IRC.cpp	Mon Mar 01 22:19:54 2010 +0100
@@ -727,14 +727,8 @@
 			if(SEqualNoCase(Tag.getData(), "FINGER") && !fNotice)
 				{
 				StdStrBuf Answer;
-				if(Config.Registered())
-					{
-					Answer = Config.GetRegistrationData("Cuid");
-					}
-				else
-					{
-					Answer = LoadResStr("IDS_PRC_UNREGUSER");
-					}
+				Answer = LoadResStr("IDS_PRC_UNREGUSER"); //ToDo: Anser sth. else 
+				
 				Send("NOTICE", FormatString("%s :%cFINGER %s%c",
 					Sender.getData(), X_DELIM,
 					Answer.getData(),
