Ok so this is a command line tool (uib2t.exe) I developed to convert binary UIFILES to readable XML format.
It can either convert a single binary UIFILE resource file (previously extracted with a resource editor) or extract multiple UIFILEs from a system file and convert them. 
It does not modify system files in any way. If you don't trust that, just copy the system file somewhere else and extract from the copied file ...
This tool is only for 64 bit windows!USAGE:
	uib2t -file binfile
-or-
	uib2t -sys sysfile id destfolder
Parameters:
	-file		Convert a single binary file to XML text (see notes)
	binfile		Binary file to convert. Fully qualified path, use quotes if contains spaces, can include environment variables
	-sys		Extract one or more binary UIFILE resources from a system file (.exe, .dll, ...) and convert to XML text
	sysfile		System file containing binary UIFILE resources to extract. Fully qualified path, use quotes if contains spaces, can include environment variables
	id		IDs of UIFILE resources to convert, can be:
			- a single UIFILE ID (e.g. 40960)
			- a comma separated list of UIFILE IDs (e.g. 23,24,25)
			- * to include all UIFILE resources in the source file"
	destfolder	Destination folder for converted UIFILEs. Fully qualified path, use quotes if contains spaces, can include environment variables
EXAMPLES:
	uib2t -file "D:\My Path\40960.raw"
	uib2t -sys c:\windows\system32\explorerframe.dll 40960 e:\outpath
	uib2t -sys "%SystemRoot%\system32\shell32.dll" 23,24,25 e:\outpath
	uib2t -sys "%SystemRoot%\system32\ExplorerFrame.dll" * "d:\long path"
NOTES:
1. If multiple UIFILE IDs are specified with the -sys option, UIFILE resources that are in text format or cannot be converted will be automatically skipped.
2. When using the -file option, the binary file to convert must be in raw binary format (file extension is irrelevant). To extract UIFILEs from system files in raw binary format:
* Restorator: Resources menu -> Extract -> Extract as -> Extract as ".raw"
* ResHacker: Action menu -> Save resource as a binary file
The converted XML text file will be saved in the same folder as the source binary file (.uib2t.txt extension).
3. When using the -sys option, converted XML text file(s) will be saved in the destination folder specified as a parameter (.uib2t.txt extension).
Usage info above can be displayed by running the program without any parameters.
I have tested this on Windows 8.1 Update 1 without any issues - but it should work on any 8+ Windows version. Please use OldNewExplorer to test this, or 
make a backup if you're going to modify system files (which this tool does not do). I take no responsibility if you mess up your system!!!  

UPDATE SEPTEMBER 2015Tool updated to version 
1.0.3 BETA. Now tested with Windows 10 RTM
Changes from previous version (1.0.2 BETA):* Minor tweaks to conversion code
* Text output during conversion improved:
     - Errors and warnings are now highlighted in red
     - Destination folder for converted XML files now indicated in text output when conversion complete
* New program icon (courtesy of 
http://www.iconsdb.com/)
* Changes to command line parameters:
     - In -file mode, added an optional parameter to specify a destination folder to save converted XML files
     - In -sys mode, destination folder parameter is now optional. If omitted, converted XML files are saved in a sub-folder of the uib2t program
Updated usage information:uib2t :: by drakkar1969 :: Version 1.0.3 BETA
Convert binary UIFILE resources to XML text format
This program DOES NOT MODIFY system files in any way
USAGE:
   uib2t -file binfile [destfolder]
-or-
   uib2t -sys sysfile id [destfolder]
Parameters:
   -file        Convert binary file(s) to XML text (see note 1)
   binfile      Binary file(s) to convert, specify multiple files using
                wildcards (* and ?). Path can be omitted if the files to
                convert are in the same folder as the uib2t program. If a path
                is specified, it must be a fully qualified path; use quotes
                if contains spaces, can include environment variables.
   destfolder   Optional parameter. Destination folder for converted XML text
                files. Fully qualified path, use quotes if contains spaces,
                can include environment variables. If omitted, converted XML text
                files will be saved in the same folder as the source binary files.
Parameters:
   -sys         Extract one or more binary UIFILE resources from a system file
                (.exe, .dll, ...) and convert to XML text
   sysfile      System file containing binary UIFILE resources to extract.
                Fully qualified path, use quotes if contains spaces, can
                include environment variables.
   id           ID(s) of UIFILE resources to convert, can be:
                - a single UIFILE ID (e.g. 40960)
                - a comma separated list of UIFILE IDs (e.g. 23,24,25)
                - * to include all UIFILE resources in the source file
   destfolder   Optional parameter. Destination folder for converted XML text
                files. Fully qualified path, use quotes if contains spaces,
                can include environment variables. If omitted, converted XML text
                files will be saved in a sub-folder of the uib2t program folder
                with the same name as the source system file (e.g. "shell32.dll"
                sub-folder).
NOTES:
1. When using the -file option, the binary file(s) to convert must be in raw
   binary format (file extension is irrelevant).
   To extract UIFILEs from system files in raw binary format:
   * Restorator: Resources menu -> Extract -> Extract as -> Extract as ".raw"
   * ResHacker: Action menu -> Save resource as a binary file
2. Converted XML text file(s) are saved with a .uib2t.txt extension.
3. When converting multiple UIFILE(s) (either source binary files or binary
   resources in a system file) UIFILE resources that are in text format
   or cannot be converted will be automatically skipped.
   An example is the RIBBON resource in ExplorerFrame.dll, which is not a
   binary UIFILE resource and cannot therefore be converted.
EXAMPLES:
* Convert a single binary file to XML text (file is in the uib2t program folder):
   uib2t -file 40960.raw
* Convert all .raw files in a folder to XML text, specifying destination folder:
   uib2t -file "D:\source path\*.raw" E:\destpath
* Extract a single UIFILE (40960) from ExplorerFrame.dll and convert to XML text:
   uib2t -sys c:\windows\system32\explorerframe.dll 40960 e:\destpath
* Extract multiple UIFILEs (23, 24 and 25) from shell32.dll and convert to XML
  text (environment variable used to specify source file); output XML files are
  saved in the "shell32.dll" sub-folder of the uib2t program folder:
   uib2t -sys "%SystemRoot%\system32\shell32.dll" 23,24,25
* Extract all UIFILEs from ExplorerFrame.dll and convert to XML text
  (environment variable used to specify source file):
   uib2t -sys "%SystemRoot%\system32\ExplorerFrame.dll" * "d:\long path"
* Extract all UIFILEs from ExplorerFrame.dll and convert to XML text; ouput
  XML files are saved in the "ExplorerFrame.dll" sub-folder of the uib2t
  program folder:
   uib2t -sys "c:\windows\system32\ExplorerFrame.dll"