26

The default installation of Genshin Impact 1.0.0 must be run as administrator on Windows 10. Is there a way to allow it be run without administrator privileges?

0

5 Answers 5

21

Is there a way to allow it be run without administrator privileges?

Without breaking any of miHoYo's ToS, and risking your account being permanently banned, the answer is no.

However, if you still want to know how to do it while breaking their ToS, read on.

There is a way of doing this and which involves modifying game files. It is assumed that you have decent knowledge of reverse engineering and are comfortable with Assembly instructions.

The goal is to disable the checks for whether mhyprot2.sys has started properly. This is the process for their kernel-level anti cheat. It is automatically started with the game, after you click the "Launch" button on the Launcher.

If you open GenshinImpact.exe found in C:\Program Files\Genshin Impact\Genshin Impact Game in IDA Pro, you'll find that the import segment has been destroyed, and that the debug symbol list is missing. This is miHoYo's first barrier to reversing - destroying the list of imports so you will have to rebuild it from scratch. As for the debug symbols, you'll need Genshin's source code for that so don't bother.

The next thing you'll notice are the chunks of code that look like data instead of assembly. They look like this:

Anti-debug measures

These are the anti-debugging defense miHoYo has included in the binary, by protecting it against static analysis. By tracing the function call, we can find the chunk with the obfuscator. Since we have neither the debug symbols nor imports, we'll need to reconstruct the imports segment for a start.

For this, we need Scylla to dump the process while Genshin is running. I would suggest you do a fresh installation of Genshin on a new computer for this, as your login data is still saved on the login screen and hooking a process dumper to Genshin might constitute as 'cheating' and get your account banned. Do a binary search for the registry strings in IDA, then put the hexadecimal address into Scylla, which should return a partial imports segment. Open this modified GenshinImpact.exe back in IDA Pro, and then turn on the debugger and hunt for the missing segments by taking a memory snapshot of the process.

Now you just have to find the start function at the subroutine where mhyprot2.sys is called, and set it to always True. If you don't know how to set to always True, read AMD64 Architecture Programmer’s Manual on Procedure Calls and Procedure Stacks.

Finally, we can disable the access privilege check which is usually found in the CS Register. Save the .exe and run it and you should be able to run as any user without the anti-cheat now. Since there is no integrity requirement before you can login to your account (there is a check, but it does not prevent you from logging in), you should have no problems playing the game.

Disclaimer: I take no responsibility if your account gets banned.

Also, miHoYo can patch this easily so it might not work by next patch.

7

my problem was how to run Genshin Impact in my daugter's profile (User) even when it needs Admin priviledges. I was searching several forums where people were asking for the same problem solution. There was answers with some cheating or tricks that can lead to BAN. So this is not the right way. Finally I have found solution. I have used "RunAsRob" utility that allows to store crypted admin password for one specific exe program. RunasRob is only free for private use. https://robotronic.de/runasroben.html free personal download is at the bottom: https://robotronic.de/runasrob/runasroben.zip

Download it and unzip to some folder accesible by Everyone (read and run priviledges are enough + ability to see content of the folder). (sorry I have Windows in Czech language so I'm not sure about exact English terminology) Then run "RunAsRob.exe" - and fill in:

  • Path ... X:(programfolder)\Genshin Impact\launcher.exe
  • leave localhost
  • username ... (admin username)
  • password ... (admin password) (this will be binary encrypted)
  • crypt file ... where encrypted file *.xus will be stored (this file should be runable via RunAsRob)
  • logon as ... another user
  • program window ... visible
  • other settings .. I have both enabled

Then "Save crypt file". Double click on saved *.xus file should run the game (without asking password). In case Windows are not recognizing XUS file extension, select path to your locally stored RunAsRob.exe and save it.

Last it is good idea to create shortcut to this XUS file. Name it simply "Genshin Impact". Then right click on it -> Properties -> Change icon and find path to the original installed launcher (X:(programfolder)\Genshin Impact\launcher.exe). Use its icon. Copy this shortcut to your child Desktop (or elsewhere) - it is possible to run the game now as user withow sharing your admin password. It is running as admin without cheating.

2
  • 1
    Came here with the exact same problem, expected to find something like sudoers file in Linux, and this is what worked. Damn Windows is pretty damn difficult
    – theist
    Commented Jan 18, 2021 at 18:21
  • Works great but to get it to work I also needed to set the 'working directory' option to be the same as the launcher directory.
    – Mike
    Commented Feb 8, 2021 at 3:39
6
+25

I think this is probably due to the anti-cheat software being used in the game. It is the same system used in League of Legends.

It taps directly into your machine and as such needs administrator access to do its job. The nub of it seems to be that cheaters use kernal level cheats, so the anti-cheat needs to be on the same level to catch them.

an abundance of cheats currently run at a higher privilege level than our anti-cheat does

There is a blog post with more details.

https://www.pcgamer.com/uk/genshin-impacts-kernel-level-anti-cheat-no-longer-runs-after-you-close-the-game/.
Technical explanation: https://na.leagueoflegends.com/en-us/news/dev/dev-null-anti-cheat-kernel-driver/

7
  • 5
    Easy anti-cheat (Fortnite) Battleeye (ARK) also uses kernel-mode driver, but admin rights are required only once, when it is being installed / updated, not on every run. This is the reason I doubt that this answer is factually correct. The links do not explain why the game should be run as admin, it is clear that you need be admin to install it. Commented Oct 5, 2020 at 19:19
  • 3
    @AndrewSavinykh EasyAntiCheat is started every time your computer starts before the OS loads. It needs admin access the first time so it can add itself to the list of programs that are allowed to do that, which is also why your computer needs to restart before you can play.
    – Corsaka
    Commented Oct 6, 2020 at 14:06
  • 4
    @DavidYell This information is interesting, but it doesn’t answer the question “Is there a way to allow it be run without administrator privileges?” Commented Oct 6, 2020 at 19:44
  • 1
    If it's the same system then LoL would admin every time it starts, but it doesn't... so genshin needing admin on every start sounds suspicious.
    – d33j
    Commented Oct 31, 2020 at 5:53
  • @d33j Not sure about LoL, but Valorant's anti cheat starts upon computer boot. So no admin access is needed because it is constantly running in the background even when the game is closed.
    – Yuu
    Commented Nov 26, 2020 at 18:34
1

Go to Task Scheduler and create a basic task called Genshin Impact. Check the box "Run with elevated Privileges" and make sure to change it to your windows version, mine is Windows 10, so i select Windows 10 instead of Windows Vista.

Then go to actions and create an action. browse for the launcher.exe file for Genshin Impact, and after that click OK. If you are going to use it as a non-Steam game then add Genshin Impact to steam as a non-Steam game. now in the "Target" box type in this: "C:\Windows\System32\schtasks.exe" /run /tn "Genshin Impact

For a normal shortcut, create a new desktop shortcut and type the same thing.

(for steam) Once you have copied and pasted the text above change the logo to the genshin impact one. you can do that by pressing the logo in the properties tab and going to C:\Users\(your username)\Downloads and select the Genshin Impact installer. It should change the icon. Then right click genshin impact in your steam library and create a desktop shortcut. you can get rid of the default shortcut for genshin impact

3
  • I can’t get this to work. It runs but does nothing, and I’ve triple-checked that the launcher path is correct. If I leave the run location blank the task will say it’s running but no launcher runs. If I put the location in the start program task, it doesn’t try to run the task at all, always showing Ready. Could you add more details? Does the task author matter? Does it have to be created by an Admin account? Can you add screenshots of each step? I have no idea what’s missing from my setup. This looks like it should be simple. Commented May 11, 2021 at 23:16
  • it doesn't work for me either - @SevenSidedDie did you find or use another solution?
    – surfen
    Commented Jan 13, 2023 at 18:24
  • @surfen I gave up and just typed in my admin PIN when my kid needed it to launch, and she’s moved on to different games now. But, from some further research I did conclude that the task author does need to be changed to an admin account, not just set to run with elevated privileges, so that’s where I would start if I was trying to make this method work now. Commented Jan 16, 2023 at 1:46
0

If like me your simple user (child account) can not create a scheduled task, here is a solution to launch "Genshin Impact" as an other user that have privileges

  • Create a .bat file named launcher.bat into the game directory
  • in this .bat file write the command:

C:\Windows\System32\runas.exe /env /noprofile /user:COMPUTER\user /savecred "cmd /c D:\Genshin^ Impact\launcher.exe"

( ^ char is to escape spaces into folder name) ( /env option is not mandatory but why not) ( /noprofile option to run quicker) ( /savecred option to avoid asking any more password)

  • You can create a shortcut in taskbar pointing on this launcher.bat file and set to it the "Genshin Impact" icon by browsing to the originale game launcher.exe.
  • Launch the shortcut a first time, you will be prompted for COMPUTER\user password that will be saved thank to /savecred parameter
  • Now the game will ask for user control autorisation but without admin password

==> only one bad thing with this solution, the COMPUTER\user credentials will be saved so simple user will be able to launch other runas command with admin user without asking password... but a child will not do that :-). You can also create a new local user account with desired privileges just to do this task.

2
  • This is a bad idea as you noted: Read superuser.com/a/903881. It's better to create a task to just launch this program with admin privileges. Then create a link to start that task (and allow your user execute and read privileges on the task and shortcut). Note that mhyprot is still a leaky probably buggy kernel level driver accessed by genshin, and genshin can write/read arbitrary memory via it. (Which means; if genshin has any exploitable bug, it's automatically a privilege escalation exploit).
    – aphid
    Commented Mar 18, 2022 at 15:11
  • Yes you are right, but i'm not able to create a scheduled task from child account or accessible one by chid account created with admin :-(
    – JcAspes
    Commented Mar 20, 2022 at 19:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .