Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LDPlayer (emulator) is crashing #7

Open
RusJJ opened this issue Aug 26, 2024 · 13 comments
Open

LDPlayer (emulator) is crashing #7

RusJJ opened this issue Aug 26, 2024 · 13 comments

Comments

@RusJJ
Copy link

RusJJ commented Aug 26, 2024

Hi @XMDS , there is a serious issue. GlossHook/GlossHookAddr causes the whole APK to crash. Please fix it

@Saschl
Copy link

Saschl commented Aug 26, 2024

What is that..?

Please ignore, my account got compromised, I deleted the comment

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

Also there is another problem: im hooking a GetAbortClimb in both v2.10 for 32bit and 64bit. But calling original function in 32bit causes SIGSEGV. Since your code is closed, i dont even understand what's going on.

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

The same crash for 32bit version of GTA:SA v2.10, symbols MeleeAttackJustDown and/or GetMeleeAttack

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

Using GlossHookAddr fixed the crashing problem on 32-bit systems, while GlossHook is unstable as hell... It doesnt fix LDPlayer problem.

@XMDS
Copy link
Owner

XMDS commented Aug 27, 2024

The same crash for 32bit version of GTA:SA v2.10, symbols MeleeAttackJustDown and/or GetMeleeAttack

The first problem is that these functions have IT instructions. After being overwritten, the PC address of the original instructions in the backup area is no longer correct. There is no particularly good way to rewrite the repair IT instructions,Therefore, GlossHook provides a 4-byte instruction coverage method, which can solve the crash problem of IT instructions and short functions.

@XMDS
Copy link
Owner

XMDS commented Aug 27, 2024

Using GlossHookAddr fixed the crashing problem on 32-bit systems, while GlossHook is unstable as hell... It doesnt fix LDPlayer problem.

Second question. The name of the LDPlayer simulator in China is (雷电模拟器). The underlying environment of almost most Android emulators is x86 (the lower layer, not the upper layer). Because GlossHook internally hooks some functions in Linker and uses some codes related to the Android system (the simulator does not always fully implement all Android codes), GlossHook does not support x86/x86_64, so it cannot The emulator's Android system (such as functions in Linker) implements functions. Based on the above, GlossHook does not support Android emulators. If it is forced to support it, it will need to be adapted for all mainstream emulators, which will take a lot of time and other problems will arise. So it's best not to use it in the simulator.
By the way, xdl also has many problems in the simulator: hexhacking/xDL#16

@XMDS
Copy link
Owner

XMDS commented Aug 27, 2024

In other aspects it is very stable. GlossHook Version 1.9.0 will be updated recently and will have better stability. It will take some time.

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

Is there a way to not use hooks in a linker?

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

In my another project it causes "illegal opcode" crash... Not even related to LDPlayer.
What's new in 1.9.0 and when are you going to release the source code?

@XMDS
Copy link
Owner

XMDS commented Aug 27, 2024

Is there a way to not use hooks in a linker?

GlossHook's 4-byte hook uses the linker part (but it is not necessary). From a practical point of view, this API can be provided. But xdl can also cause problems.

@XMDS
Copy link
Owner

XMDS commented Aug 27, 2024

In my another project it causes "illegal opcode" crash... Not even related to LDPlayer.
What's new in 1.9.0 and when are you going to release the source code?

1.9.0 will be open source later

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

Im working with the project that should be working on LDPlayer and other emulators. Otherwise it will be very sad... Gloss is amazing but this thing is required. I already contacted LDPlayer's support but i dont think they will do something about it... That's a company that will not much care about a single project

@RusJJ
Copy link
Author

RusJJ commented Aug 27, 2024

Forgot to say. Shadowhook was working fine but it was causing a lot of issues such as corrupted memory, that's why i used Gloss. And it started crashing because of IT intstruction. Does Shadowhook use linker hook? if it does, then it was working in LDPlayer very well.

Also, another issue. If you use GlossHookAddr with is_4_byte_hook=true on 64-bit version, it will not hook some functions. And this is causing big issues too...

@RusJJ
Copy link
Author

RusJJ commented Sep 4, 2024

Also i accessed a limit of B/BL/BLX hooks. newly added hooks are not working...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants