Hva er ASI-filformatet?
.asi er en fil for spillutvidelser som brukes til å injisere tilpasset kode i Windows-baserte PC-spill. Til tross for filendelsen er en .asi-fil teknisk sett en standard .DLL - en kompilert binærfil i Windows Portable Executable (PE)-format - der filendelsen er endret fra .dll til .asi som en konvensjon innen modding.
.asi-filer gjør ingenting på egen hånd. De krever en dedikert ASI Loader plassert i spillets mappe, vanligvis forkledd som et systembibliotek som dinput8.dll, version.dll eller vorbisFile.dll. Ved oppstart av spillet kaller lasteren LoadLibrary() på hver .asi den finner i mappen, og injiserer hver utvidelses kode direkte inn i den kjørende spillprosessen.
Konvensjonen oppsto i modding-miljøet på midten av 2000-tallet rundt Rockstars Grand Theft Auto-serie (GTA III, Vice City, San Andreas) og har siden spredt seg til mange andre PC-titler. Mye brukte lastere inkluderer Ultimate ASI Loader og Silent's ASI Loader.
Fordi en .asi-utvidelse kjører vilkårlig maskinkode inne i spillprosessen med full tilgang til minne og system-API-er, bør bare filer fra pålitelige kilder installeres. Filen starter med de vanlige MZ magic bytes (4D 5A) ved posisjon 0 og PE\0\0-signaturen lenger inn - identisk med enhver .dll eller .EXE. Den kan inspiseres med PE-verktøy som CFF Explorer, men den krever målspillet og en ASI Loader for å faktisk kunne kjøre.
Sikkerhet og trygghet
RISIKO: HIGHEn .asi er kjørbar maskinkode (en DLL) som kjører inne i spillet med dine brukerrettigheter, så den har samme risikoprofil som å installere en hvilken som helst ukjent DLL: en ondsinnet .asi kan gjøre alt kontoen din har tilgang til. Spill-«trainers», «cheats» og piratkopierte .asi-filer er en kjent kilde til skadevare/PUP. Installer kun .asi-utvidelser fra anerkjente kilder (etablerte modding-samfunn, GitHub-utgivelser, mod-forfatterens offisielle side), foretrekk lastere med åpen kildekode (Ultimate ASI Loader), skann ukjente filer, og inspiser en .asi-fils importer i en PE-viser hvis du er usikker. Kjør aldri spillmodifikasjoner på en konto med sensitive data, og unngå portaler for «gratis .asi»-nedlastinger som er buntet med reklameprogramvare.
Formatdetaljer
i et nøtteskall- Assembly include / kildekodefil (Alpha Software, MASM-stil) - Noen assemblere/IDE-verktøy bruker .asi for en assembly «include»- eller header-kildekodefil (betydningen registrert i dette nettstedets database under utvikleren «Alpha Software»); dette er ren tekst, ikke en kjørbar fil.
- Velvet Studio / tracker-sample/instrument - Eldre musikk-tracker-verktøy brukte .asi for en instrument- eller sample-fil; åpnes kun i den aktuelle trackeren.
Programmer som åpner ASI-filer
Tekniske detaljer
dyp spesifikasjon| Filstruktur | Windows Portable Executable (PE) - en standard DLL med filendelsen omdøpt til .asi |
| Magic bytes | 4D 5A («MZ») ved posisjon 0; PE-signatur 50 45 00 00 ved posisjonen lagret i MZ-headeren |
| PE-variant | PE32 (32-bit / x86) eller PE32+ (64-bit / x64) avhengig av målspillets arkitektur |
| Koding | Binær - kompilert maskinkode (vanligvis C eller C++) |
| Byterekkefølge | Little-endian (Intel x86/x64-konvensjon, arvet fra PE-formatet) |
| Typisk filstørrelse | Fra ti talls KB til noen få MB (en kompilert maskinkode-utvidelse) |
| Komprimering | Ingen i PE-beholderen som standard; individuelle seksjoner kan være pakket av forfatteren |
| Kodesignering | Valgfri Authenticode-signatur; de fleste fellesskapslagde .asi-utvidelser er usignerte |
| MIME-type | application/x-msdownload (samme som .dll og .exe) |
| Lastemekanisme | En ASI Loader (levert som dinput8.dll, version.dll, vorbisFile.dll, osv.) kaller LoadLibrary() på hver .asi i spillmappen ved oppstart |
| Kjøringskontekst | Kjører som en DLL inne i vertens spillprosess med full tilgang til spillets minne, tråder og Windows-API-er |
| Inngangspunkt | Standard DLL-inngangspunkt (DllMain); ingen spesiell ASI-spesifikk eksport er nødvendig |
| Lastingsrekkefølge | ASI Loadere injiserer vanligvis .asi-filer i alfabetisk rekkefølge fra spillmappen |
| Tilhørende OS | Windows (PE-formatet er spesifikt for Windows) |
| Sikkerhetsrisiko | Høy - kjører vilkårlig maskinkode med fulle prosessrettigheter; installer kun fra pålitelige kilder |
| Utgitt | Early-mid 2000s modding scene (GTA III/Vice City/San Andreas era ASI loaders) |
| Siste versjon | Tied to the Windows PE/DLL format; Ultimate ASI Loader actively maintained (2020s) |
| Spesifikasjon | github.com |