It worked for me on a device with att 4.4 OTA installed, and i THINK it should work for everything that has 4.2.2 and 4.4 firmware available on the firmware page.
What to download:
(many of these are here)
Android Development Tools (ADT) ;;; your carrier's firmware for 4.2.2 ;;; Motorola Device Manager (for drivers) ;;; Cydia Impactor ;;; puttytel (just puttytel.exe is all you need) ;;; RockMyMoto ;;; RSDLite ; MotoWPNoMo ;;; SlapMyMoto
Extras: root checker apk ;;; latest Xposed Framework
extract ADT, Impactor, MotoWPNoMo, RockMyMoto, SlapMyMoto, and the firmware Install RSDLite. Puttytel should just be an exe already. Open the adt directory and in the search bar type adb.exe right click the file and open folder location. this is a very important directory. it will be reffered to as the adb.exe directory/folder copy all files from RockMyMoto extraction folder and put them in this directory run moto device manager, follow instructions for it to get your drivers. you might have to connect the phone via usb. open the extracted firmware and modify the xml file and remove the disable any isolation mode on your router (IDk what this is but mine was turned off, if you can't get it to work and can't find your router setting you might be SOL.) anytime the direction says "send" it means in the command line window extract directory for ADT search for adb.exe open file location of adb.exe copy location path type win+r, cmd, enter send "cd " then right click paste to paste the directory path you are now executing commands from that directory send " adb shell getprop dhcp.wlan0.ipaddress " write down that ip address factory reset phone get to settings menu enable usb debugging connect to computer send "adb devices" look at phone, click always accept this connection or whatever it says... send "adb devices" if it shows some numbers and letters, you are good send "adb reboot bootloader" Plug in phone, enable USB debugging, then "adb reboot bootloader" - this will boot you into fastboot mode so RSD will recognize your phone open RSDLite select the edited 4.2.2 xml file as file to flash. click start to flash the 4.2.2 firmware on your now jellybean phone open settings enable usb debugging. restart the phone. it took me a while to figure this out. it just wouldn't go on... send "adb devices" to check if it is connected send "adb push su /sdcard/" send "adb push RockMyMoto.jar /sdcard/" open cydia impactor exe click drop down menu, select "# start telnetd as system on port 2222" click start check phone follow prompts/click accept. check cydia window on PC wait for it to get through all the different messages until it is back at the initial screen. This basically installs a temporary telnet receiver on your phone, whatever the hell that is... now open up puttytel.exe type your devices ip address and change port to 2222 click open this brings up a command line screen but with green font. wait for the $ sign, then send "dalvikvm -cp /sdcard/RockMyMoto.jar RockMyMoto" on the green font screen (in the green screen, you can paste by right clicking) solve the equation LOL open the cmd.exe window that you didn't have closed send "adb reboot" close cydia and puttytel open cydia impactor and start the telnet session again on port 2222 check phone if the process seems to stick. open another puttytel session send "dalvikvm -cp /sdcard/RockMyMoto.jar RockMyMoto" wait for phone to reboot close cydia and puttytel open the cydia impactor and restart the session on port 2222 open the telnet session to your devices ip address and port 2222 send the exploit again. your phone should have rooted 4.2.2 now! in folder motowpnomo, open wpbegone.exe as admin accept risks... send monoies to email@example.com ; support people instead of corporations. follow the instructions about flashing to reflash the xml file enable usb debugging, cmd prompt at adb.exe directory, adb reboot bootloader, open rsdlite, select the modded xml file, start wait for it to reboot send "adb push SlapMyMoto.jar /sdcard/SlapMyMoto.jar" open cydia impactor open telnetd as system on port 2222 check phone and accept or deny until impactor stops waiting for completion open puttytel connect your phone to your router wifi, the ip address should be the same as earlier. if you want to check, send " adb shell getprop dhcp.wlan0.ipaddress " put ip address and port 2222 again click open with the telnetd green command line screen send "dalvikvm -cp /sdcard/SlapMyMoto.jar SlapMyMoto" close the green screen on the cmd.exe screen send "adb reboot" repeat the Impactor, telnet, "dalvikvm -cp /sdcard/SlapMyMoto.jar SlapMyMoto" again reboot the device go to settings, about phone, updates, take update if 4.4, if it only offers 4.4.2, you will have to ask someone what to do... (I would imagine you can download 4.4 from the place you got your 4.2.2 firmware download then flash using RSDLite, but I never had to cross that bridge personally) (the instructions were not very clear here. I was really winging it here but it worked for me) On the PC, copy all files from SlapMyMoto extraction and place them in adb.exe folder, overwriting the old files. in cmd.exe, send the following one at a time: adb shell cp /sdcard/install.sh /data/local/tmp/install.sh chmod 755 /data/local/tmp/install.sh echo "/data/local/tmp/install.sh" > /sys/kernel/uevent_helper Then wait a few minutes, toggle bluetooth, reboot the device.
You should now be rooted on 4.4!
I tried to write this as I was doing it but I may have accidentally omitted something.
Thanks to techsavvy2 ;;; beaups ;;; JCase ;;; CartlandSmith (and anyone else i didn't remember to thank), for helping the community to hack this thing!