Hendi48 / Magicmida

Themida unpacker
378 stars 85 forks source link

exe doesn't work after unpack #14

Closed Max-RM closed 7 months ago

Max-RM commented 7 months ago

Same error as here: https://github.com/ergrelet/unlicense/issues/100

Here recorded process of unpack: https://youtu.be/Ybm49B4IOnc after unpacking exe, it runs for several seconds then crash.

Max-RM commented 7 months ago

image

Hendi48 commented 7 months ago

I've published a new version that addresses the issues presented by this case. Please check.

Max-RM commented 7 months ago

Я опубликовал новую версию, в которой рассматриваются проблемы, связанные с этим делом. Пожалуйста, проверьте.

Thanks, will try tommrow.

Max-RM commented 7 months ago

I've published a new version that addresses the issues presented by this case. Please check.

Hi. I have tested your app. Now no errors in app window but unpacked exe doesnt appear after done unpacking Added: only 1.9.1.15 exe doesnt appear. 1.11.4.2 Works now! (At latest many thanks for it)

For: 1.12.0.28, 1.13.3, 1.13.4, 1.14.30, 1.14.31 versions. exe appears but doesnt work correctly. crashes while launch. This program has build in console on backgroud maybe this contain some usefull information.

Btw I can send you all versions of the program that doesnt work correctly after Magicmida.

Max-RM commented 7 months ago

@Hendi48

Hendi48 commented 7 months ago

only 1.9.1.15 exe doesnt appear.

That was the version I was testing with. It worked for me on all attempts. Maybe try putting it in a different path.

For: 1.12.0.28, 1.13.3, 1.13.4, 1.14.30, 1.14.31 versions. exe appears but doesnt work correctly. crashes while launch. This program has build in console on backgroud maybe > this contain some usefull information.

Btw I can send you all versions of the program that doesnt work correctly after Magicmida.

I'll check them when I have time. They're all in your dropbox right?

Max-RM commented 7 months ago

only 1.9.1.15 exe doesnt appear.

That was the version I was testing with. It worked for me on all attempts. Maybe try putting it in a different path.

For: 1.12.0.28, 1.13.3, 1.13.4, 1.14.30, 1.14.31 versions. exe appears but doesnt work correctly. crashes while launch. This program has build in console on backgroud maybe > this contain some usefull information. Btw I can send you all versions of the program that doesnt work correctly after Magicmida.

I'll check them when I have time. They're all in your dropbox right?

  1. ok. (but if this will not work for me, can you send your result?)

  2. Thx. Yea, thay were uploaded to dropbox, link in another issue I think you already have it.

Max-RM commented 7 months ago

only 1.9.1.15 exe doesnt appear.

That was the version I was testing with. It worked for me on all attempts. Maybe try putting it in a different path.

For: 1.12.0.28, 1.13.3, 1.13.4, 1.14.30, 1.14.31 versions. exe appears but doesnt work correctly. crashes while launch. This program has build in console on backgroud maybe > this contain some usefull information. Btw I can send you all versions of the program that doesnt work correctly after Magicmida.

I'll check them when I have time. They're all in your dropbox right?

Thx. it worked with different path. Althought many other user may dont know avout this issue. Maybe need to fix it? is there any error log that I can send here to slove the problem?

Hendi48 commented 7 months ago

Althought many other user may dont know avout this issue. Maybe need to fix it? is there any error log that I can send here to slove the problem?

I don't think there's much I can do. The most likely issue is Windows AppCompat bullshit, it sometimes stores information in the registry for an executable path and automatically runs it with shims and stuff. Theoretically it could also be caused by an extremely long path or maybe unicode chars in the path, but I assume both wasn't the case for you.

Max-RM commented 7 months ago

Althought many other user may dont know avout this issue. Maybe need to fix it? is there any error log that I can send here to slove the problem?

I don't think there's much I can do. The most likely issue is Windows AppCompat bullshit, it sometimes stores information in the registry for an executable path and automatically runs it with shims and stuff. Theoretically it could also be caused by an extremely long path or maybe unicode chars in the path, but I assume both wasn't the case for you.

But this is portable app.

And path was same length as 1.11.4 but 1.11.4 was unpacked without problems while 1.9.1 not.

So only real solution is add to readme:

If unpacked exe doesn't apper in folder, then try to move program to another path.
Hendi48 commented 7 months ago

The latest release should now be compatible with all versions of your target.

The problem was that the newer versions use dynamic TLS, and for whatever reason Microsoft decided to check the characteristics of the section the pointer resides in. If it's writable, it just skips initialization. Themida likes merging .text/.rdata/.data sections into a single RWX section, which caused this problem.

Max-RM commented 7 months ago

The latest release should now be compatible with all versions of your target.

The problem was that the newer versions use dynamic TLS, and for whatever reason Microsoft decided to check the characteristics of the section the pointer resides in. If it's writable, it just skips initialization. Themida likes merging .text/.rdata/.data sections into a single RWX section, which caused this problem.

Many thanks for you! now all old versions can be unthemided! you just made a huge contribution to the MCBE modding community. Because if the exe has Themida, then it is impossible to use Byte Patching mods, only RAM patching, which I do not like. Thank you very much again.