Plik exe uruchamiany w natywnej grze bez wine (po co i jak)


(saturno) #1

Witam.

Jest sobie taka darmowa gra: Christmas Eve Crisis:

https://www.interactionstudios.com/platformselect.php?demo=CEC

 

Gra ma osobne wersje dla Linuksa i Windows.

W sumie nic dziwnego gdyby nie to że wśród procesów gry (wersja na Linuksa) pojawia się: game.exe

 

zrzut_ekranu9.jpg

 

I to byłbym nawet w stanie przełknąć bo może coś musi uruchomić się przez wine.

Z tym że przeprowadziłem eksperyment na systemie Live-CD gdzie nie było zainstalowane wine.

Gra się normalnie uruchomiła, a wśród uruchomionych procesów pojawia się: game.exe.

 

Jak to możliwe że plik .exe uruchamiany jest bez użycia wine?

 

Pozdrawiam.

saturno


(Jusko) #2

Być może gra opakowana jest we wrapper (przykładowo jak Wiedźmin 2 czy System Shock 2).


(roobal) #3

Tak samo jest z Teamviewer. Wine jest zaimplementowane w samej aplikacji. Nie musisz mieć zainstalowanego Wine, aby uruchomić aplkację. Sama aplikacja jest zintegrowana z Wine.


(saturno) #4

@ roobal sam się zastanawiałem czy nie jest to zrobione w stylu Teamviewer lub Picasa jednak to nie możliwe żeby użyte tu było wine bo:

 

  • za mały rozmiar pliku instalatora

  • brak jakichkolwiek procesów wine

  • brak zapisów w licencji o użyciu wine

 

Przychodzi mi do głowy jeszcze że może ten plik ma tylko taką nazwę:

$ exiftool game.exe 
ExifTool Version Number : 9.74
File Name : game.exe
Directory : .
File Size : 2.8 MB
File Modification Date/Time : 2014:02:19 12:22:30+01:00
File Access Date/Time : 2015:03:05 13:21:38+01:00
File Inode Change Date/Time : 2015:03:05 13:21:38+01:00
File Permissions : rwxr-xr-x
File Type : ELF executable
MIME Type : application/octet-stream
CPU Architecture : 32 bit
CPU Byte Order : Little endian                                                                                               
Object File Type : Executable file                                                                                             
CPU Type : i386

https://www.virustotal.com/pl/file/110014d89d4646ccb8d8d5c216ffa219595aa2db152758eac773105f0bdd4ff7/analysis/1425581006/

 

Inna sprawa to że w instalatorze zawarty jest plik: launcher i być może w nim jest odpowiedź (przedstawiłbym tu jego zawartość ale nie wiem czy nie łamałoby to licencji programu).


(dragonn) #5

Może po prostu to taka sobie nazwa pliku? Bez problemu możesz sobie na Linuksie nazwać binarkę z exe i ją odpalić i tak będzie widoczna w procesach.

EDIT

Sprawdź tak:

file ~/Pobieranie/winbox.exe 
/home/dragonn/Pobieranie/winbox.exe: PE32 executable (GUI) Intel 80386 (stripped to external PDB), for MS Windows
file /usr/bin/cat
/usr/bin/cat: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ff3ac31cb08289ca12976491bf7875480261a613, stripped

(saturno) #6
$ file ~/Pliki/ChristmasEveCrisisInstaller110/game/game.exe
/home/tom/Pliki/ChristmasEveCrisisInstaller110/game/game.exe: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, BuildID[sha1]=d86c7b1fdf45dbc2123f856bca7b770693d989b2, stripped

$ wine ~/Pliki/ChristmasEveCrisisInstaller110/game/game.exe
wine: Zły format EXE dla J:\Pliki\ChristmasEveCrisisInstaller110\game\game.ex
e.

$ ldd ~/Pliki/ChristmasEveCrisisInstaller110/game/game.exe
        linux-gate.so.1 (0xf77da000)
        libSDL-1.2.so.0 => /usr/lib/i386-linux-gnu/libSDL-1.2.so.0 (0xf7704000)
        libGL.so.1 => /usr/lib/i386-linux-gnu/libGL.so.1 (0xf7659000)
        libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf7612000)
        libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf7468000)
        /lib/ld-linux.so.2 (0xf77dd000)
        libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf744c000)
        libasound.so.2 => /usr/lib/i386-linux-gnu/libasound.so.2 (0xf7344000)
        libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf733f000)
        libpulse-simple.so.0 => /usr/lib/i386-linux-gnu/libpulse-simple.so.0 (0xf7338000)
        libpulse.so.0 => /usr/lib/i386-linux-gnu/libpulse.so.0 (0xf72e0000)
        libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf718e000)
        libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf7179000)
        libdirectfb-1.2.so.9 => /usr/lib/i386-linux-gnu/libdirectfb-1.2.so.9 (0xf70eb000)
        libfusion-1.2.so.9 => /usr/lib/i386-linux-gnu/libfusion-1.2.so.9 (0xf70df000)
        libdirect-1.2.so.9 => /usr/lib/i386-linux-gnu/libdirect-1.2.so.9 (0xf70c6000)
        libcaca.so.0 => /usr/lib/i386-linux-gnu/libcaca.so.0 (0xf6ffa000)
        libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xf6fd1000)
        libglapi.so.0 => /usr/lib/i386-linux-gnu/libglapi.so.0 (0xf6fb8000)
        libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xf6fb3000)
        libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf6fac000)
        libX11-xcb.so.1 => /usr/lib/i386-linux-gnu/libX11-xcb.so.1 (0xf6fa9000)
        libxcb-glx.so.0 => /usr/lib/i386-linux-gnu/libxcb-glx.so.0 (0xf6f8f000)
        libxcb-dri2.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri2.so.0 (0xf6f89000)
        libxcb-dri3.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri3.so.0 (0xf6f84000)
        libxcb-present.so.0 => /usr/lib/i386-linux-gnu/libxcb-present.so.0 (0xf6f80000)
        libxcb-sync.so.1 => /usr/lib/i386-linux-gnu/libxcb-sync.so.1 (0xf6f79000)
        libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf6f53000)
        libxshmfence.so.1 => /usr/lib/i386-linux-gnu/libxshmfence.so.1 (0xf6f50000)
        libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf6f48000)
        libdrm.so.2 => /usr/lib/i386-linux-gnu/libdrm.so.2 (0xf6f39000)
        librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf6f30000)
        libpulsecommon-5.0.so => /usr/lib/i386-linux-gnu/pulseaudio/libpulsecommon-5.0.so (0xf6eae000)
        libcap.so.2 => /lib/i386-linux-gnu/libcap.so.2 (0xf6ea7000)
        libjson-c.so.2 => /lib/i386-linux-gnu/libjson-c.so.2 (0xf6e9b000)
        libdbus-1.so.3 => /lib/i386-linux-gnu/libdbus-1.so.3 (0xf6e45000)
        libslang.so.2 => /lib/i386-linux-gnu/libslang.so.2 (0xf6d15000)
        libncursesw.so.5 => /lib/i386-linux-gnu/libncursesw.so.5 (0xf6cd9000)
        libtinfo.so.5 => /lib/i386-linux-gnu/libtinfo.so.5 (0xf6cb5000)
        libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf6c98000)
        libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf6c94000)
        libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf6c8e000)
        libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xf6c71000)
        libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xf6c66000)
        libXtst.so.6 => /usr/lib/i386-linux-gnu/libXtst.so.6 (0xf6c5e000)
        libsystemd.so.0 => /lib/i386-linux-gnu/libsystemd.so.0 (0xf6c35000)
        libwrap.so.0 => /lib/i386-linux-gnu/libwrap.so.0 (0xf6c2b000)
        libsndfile.so.1 => /usr/lib/i386-linux-gnu/libsndfile.so.1 (0xf6bb2000)
        libasyncns.so.0 => /usr/lib/i386-linux-gnu/libasyncns.so.0 (0xf6baa000)
        libattr.so.1 => /lib/i386-linux-gnu/libattr.so.1 (0xf6ba4000)
        libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf6b9e000)
        libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xf6b8b000)
        liblzma.so.5 => /lib/i386-linux-gnu/liblzma.so.5 (0xf6b62000)
        libgcrypt.so.20 => /lib/i386-linux-gnu/libgcrypt.so.20 (0xf6ab0000)
        libresolv.so.2 => /lib/i386-linux-gnu/i686/cmov/libresolv.so.2 (0xf6a99000)
        libnsl.so.1 => /lib/i386-linux-gnu/i686/cmov/libnsl.so.1 (0xf6a80000)
        libFLAC.so.8 => /usr/lib/i386-linux-gnu/libFLAC.so.8 (0xf6a49000)
        libvorbisenc.so.2 => /usr/lib/i386-linux-gnu/libvorbisenc.so.2 (0xf69ba000)
        libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xf69a5000)
        libogg.so.0 => /usr/lib/i386-linux-gnu/libogg.so.0 (0xf699c000)
        libvorbis.so.0 => /usr/lib/i386-linux-gnu/libvorbis.so.0 (0xf696f000) 

~/Pliki/ChristmasEveCrisisInstaller110/game/game.exe

Ostatnie polecenie uruchamia grę czyli jednak żaden to plik exe!

Czyli nici z odkrycia alternatywnego sposobu uruchamiania programów z Windows :beksa:

Ktoś nazywając tak plik miał fantazję lub chorobliwe przyzwyczajenia z systemu m$.

 

Dziękuję za pomoc.

Pozdrawiam.

saturno