Assemblercode und Interpreter?
=====================
Auf die Gefahr hin, mich unsterblich zu blamieren: Gibt es eine Möglichkeit, INLINE-ASSEMBLERCODE im XProfan-INTERPRETER zu verwenden (sprich: eine mit 80x86-Code geladene Bereichsvariable zur Ausführung anzuspringen?
Gruss
P.S.: Grund meiner Frage: EXE-Dateien sind von Admins freizugeben. Ich soll schnelle Matrixmultiplikation verwenden, aber ohne eine EXE auszuführen... (Sicherheitsbedenken sind klar, das Ganze läuft aber ohnehin in einer virtuellen Umgebung)
Assemblercode und Interpreter?
-
-
-
Zitat von p. specht;940022
Assemblercode und Interpreter?
Da die CALL-Funktion auch im Interpreter funktioniert, kann man natürlich Assemblercode in eine Bereichsvariable reinschreiben und diesen dann mit CALL aufrufen. Natürlich dürfen im Code keine absoluten Adressen vorkommen, da der Bereichsvariable bei jedem Aufruf neu ihr Speicherbereich zugewiesen wird.
Im Prinzip funktioniert das nicht viel anders als z.B. ehedem beim ZX81 oder ZX Spectrum, wo ich meine Assemblerroutinen gerne in Strings oder in REM-Zeilen am Anfang des Programmes unterbrachte.
Gruß
Roland -
Hurraaaaaa!Super!:s3:Danke RGH!
-
Zitat von p. specht;940022
Assemblercode und Interpreter?
Die Frage verstehe ich im Zusammenhang mit dem Thread hier nicht - erkläre mal. -
Hab auf "Spezielles" gelickt, und da kam dieses Thema. Offenbar verklickt - Sorry, tut mir leid AHT! Wenn möglich, bitte ausgliedern - Danke!!!
-
Nicht schlimm, kein Problem.
-
Zitat
Ich soll schnelle Matrixmultiplikation verwenden, aber ohne eine EXE auszuführen...
Aber der Interpreter ist doch auch eine Exe, du wirst die PRF also kaum ohne ausführen können.
P.S.: Hab die Frage mal in einen eigenen Thread verschoben.
-
Der Profan-Interpreter liess sich ANSTANDSLOS mit seinen Standardeinstellungen im User-Account installieren und starten. Offenbar besitzt der verwendete Installer dazu die richtigen "Credentials" (Ausweise) in seinen Ressourcen, ... wie heisst das Zeug doch gleich richtig?
Gruss -
Der XProfan Interpreter hat unter Windows > XP keinerlei Rechte, jedenfalls
nicht mit der mitgelieferten Manifest. Er wird virtualisiert, was heißt, Du
wirst ständig verarscht, IOResult, Registryfunktionen usw. melden Dir keine
Fehler.Ich sehe da nur ein virtuelles Sicherheitsproblem
-
OS im Intranet ist WinXP-professional. Die interpretierten Programme funktionieren alle klaglos, inklusive File-Erstellung. Auf CALL bin ich schon sehr neugierig. Werde berichten...
GrussP.S.: Es scheint sauschwer zu sein, positionsunabhängigen Code für 80x86 zu schreiben, siehe dazu z.B. hier!
-
Jau, das ist recht trickreich.
Ich mache da immer folgendes: Ich nehme mir einen Bereich für den Code (Code#) und einen für die Daten, die der Assemblercode bearbeiten soll (Daten#). Im Assemblercode nehme ich jetzt folgende Funktion, um die Adresse des Datenbereiches rauszubekommen:
Vor dem @Call(Code#) suche ich jetzt in Code# nach dem Long 123456789 und ersetze es durch die Adresse von Daten#. Im Assemblercode kann ich mir dann die Adresse von Daten# durch Call GetDataAdrEAX nach eax holen und Daten# nach belieben verwenden.
Hab ich auch in meinem Primzahlen-Algo so gemacht!
Gruß
Jonathan -
Cool!
-
Win32+64-bit 80x86 Debugger Malware-sicher?
==============================
Natürlich wäre ein Freeware 64bit Debugger sehr interessant, z.B. dieser: http://www.duxcore.com/products.html
Ich bin allerdings verunsichert: Neben dem Installer im .msi-Format gibt es ein "prerequisites" setup.exe, das angeblich die MS-Tools 'depends.exe' und 'vmmap.exe' enthält. Die Dateien gibt es im OS aber bereits (gezipped), und dort sind sie 8.5- und 11 mal größer. Hat jemand Erfahrung, wie unter Wahrung der Sicherheit installiert werden sollte?
Gruss -
Hab damit keine Erfahrung.
Was aber wäre, wenn du deiner Exe einfach ein User-Manifest spendieren würdest? Dann sollte es doch normal starten wie der XProfan-Interpreter, oder?
-
Weder Interpreter noch Runtime haben eine User-Manifest, nur XP-Style
-
Bei Manifest fällt mir derzeit nur den Marxens ihr Karli ein. Der ist aber schon lange bei den Engels (Vermutlich über seinen Bart gestolpert).
-
Wieauchimmer. In LemonEd's Resourcendialog könntest deiner Exe ein User-Manifest spendieren und die Exe dann einfach mal testen.
-
Wusste nicht, daß LemonEd das kann. Bin dran...
-
Klappt nur wenn man die exe hinein-entzippt. Alle anderen Versuche scheitern an der vom System ungeliebten .exe-Extension. Manifest macht bei der Ausführung allerdings keinen Unterschied: Will nicht klappen...(Standardeinstellungen)
Gruss -
Ah, ok. Den Versuch war es ja zumindest wert.
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!