18 dépôts
Utilities for assembling, disassembling, and modifying the structural representation of WebAssembly files.
Distinct from WebAssembly: Existing candidates are either general Wasm tools or specific loaders; this is specifically about structural binary manipulation.
Explore 18 awesome GitHub repositories matching programming languages & runtimes · WebAssembly Binary Manipulators. Refine with filters or upvote what's useful.
This project is a Ruby-based package definition repository that functions as a cross-platform package manager and software dependency resolver for macOS and Linux. It provides a centralized system for installing, updating, and managing software through a Git-based distribution model. The system distinguishes itself through a binary package distribution network that produces pre-compiled bottles to avoid local compilation from source. It utilizes a Ruby-based domain specific language to define installation recipes and employs a distributed version control architecture to synchronize these defi
Provides the ability to build software from source specifically for 32-bit ARM architectures.
VirtualApp is an Android application virtualization engine and user-space sandbox that enables the execution of applications within an isolated environment. It allows for the running of multiple independent instances of the same application on a single device and supports private application installation without requiring system-level root access. The project features a comprehensive hooking framework for intercepting Java and native layer functions to modify application behavior. It includes tools for hardware simulation to spoof device models and system information, as well as a non-root pr
Selects between 32-bit and 64-bit runtime packages to match the target binary architecture of the application.
OrbStack is a native macOS application that replaces Docker Desktop, providing an all-in-one environment for running Docker containers, full Linux virtual machines, and local Kubernetes clusters. It runs Linux VMs directly on the macOS hypervisor framework for near-native performance, uses VirtioFS for fast bidirectional file sharing between macOS and Linux, and leverages Rosetta for near-native x86 emulation on Apple Silicon. The system assigns predictable local domain names to containers and VMs with automatic HTTPS certificate generation, forwards ports via event-driven updates, and stores
Runs programs built for 32/64-bit ARM and Intel architectures on both Apple Silicon and Intel Macs.
Binaryen is a WebAssembly compiler toolchain and optimizer designed to transform, validate, and shrink binary modules. It provides a comprehensive intermediate representation framework that converts binary code into a single-assignment form to enable advanced program analysis and code transformation. The project includes a specialized transformation engine that applies iterative optimization passes to increase execution speed and reduce binary size. Additionally, it functions as a transpiler that translates WebAssembly binary modules into executable JavaScript for environments that lack nativ
Ships a utility for assembling, disassembling, and manipulating WebAssembly files and their internal structural representations.
Le WebAssembly Binary Toolkit est une suite d'outils pour inspecter, valider et transformer des modules WebAssembly entre des représentations binaires et lisibles par l'homme. Il inclut un interpréteur basé sur une pile pour exécuter les modules et un transpiler qui convertit les fichiers binaires en code source C et en en-têtes. La boîte à outils fournit des utilitaires pour assembler du texte lisible en modules binaires et désassembler des fichiers binaires en texte. Elle dispose d'un formateur de texte pour normaliser les définitions en une représentation plate canonique et prend en charge la conversion de binaires en formats S-expression. Le projet couvre de larges domaines de capacités, notamment la manipulation binaire, comme la suppression des sections de métadonnées, et l'inspection de modules pour extraire des statistiques structurelles et des symboles de débogage. Il fournit également des outils de validation pour vérifier la conformité des binaires aux spécifications techniques et un environnement d'exécution pour la logique compatible WASI.
Provides utilities for assembling, disassembling, and modifying the structural representation of WebAssembly binary files.
wasm-pack is a build tool and workflow orchestrator for compiling Rust code to WebAssembly. It coordinates the compilation process and generates the JavaScript glue code required to execute Rust logic within web browsers and server-side runtimes. The tool manages binary optimization to reduce file sizes and improve execution speed. It also functions as a package manager, bundling compiled WebAssembly modules into archives compatible with JavaScript registries and bundlers. The project covers language interoperability through the automatic generation of TypeScript type definitions. It further
Enables the creation of memory64 binaries by coordinating the toolchain and passing specific flags to the optimizer.
LibChecker is an Android application library analyzer used to identify third-party libraries and classify software components within installed applications. It functions as a software component classifier and a native library ABI inspector to determine if an application is 32-bit or 64-bit. The tool utilizes a rules repository and a local database to match detected libraries against known software signatures. It employs regex-based pattern detection and rule-based matching to identify components, even when files have been renamed or obfuscated. The project provides capabilities for Android p
Determines the ABI architecture of native libraries to see if an application supports 32-bit or 64-bit systems.
BlackDex is an Android runtime-level DEX extraction tool that recovers bytecode from protected APK files across Android versions 5 through 12 without requiring root access. It operates by hooking system APIs, reading DexFile cookies, and repairing obfuscated method bodies from memory, supporting both 32-bit and 64-bit architectures for installed and uninstalled applications. The tool distinguishes itself through a multi-method approach that combines cookie-based dumping, API hooking, and memory-based instruction repair to handle first through third generation packers. It reconstructs method b
Provides separate builds for 32-bit and 64-bit architectures to unpack apps compiled for either.
HexFiend is a native macOS hex editor designed for opening and editing binary files of any size without loading them entirely into memory. It uses a 64-bit addressable data model with memory-mapped file access, enabling navigation of multi-gigabyte files while maintaining byte-level undo for insert and delete operations. The editor distinguishes itself through a diff algorithm for binary file comparison that accounts for insertions and deletions, and a template-based structure parsing system that uses user-defined scripts to visualize binary file layouts. It also includes a typed data interpr
Provides a sparse 64-bit addressable data model for editing binary files without loading them entirely.
InterviewGuide is a comprehensive technical interview preparation platform that covers the full spectrum of software engineering recruitment, from foundational computer science concepts through to offer negotiation. It provides structured learning paths across algorithms, operating systems, databases, networking, and programming languages, with a particular emphasis on C++ and Go. The platform aggregates real interview experiences and company-specific questions from major tech employers, offering candidates a searchable database of past written exam problems and detailed accounts of actual int
Teaches pointer size determination based on compilation environment for interview preparation.
Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces
Provides a function to query the byte size of a pointer type at runtime.
This is the official documentation repository for Raspberry Pi hardware and software. It covers the complete range of Raspberry Pi single-board computers, the RP-series microcontrollers, and the Raspberry Pi operating system. The documentation provides reference material for setting up devices, configuring hardware, and using the system for tasks including AI inference, camera and video capture, embedded development, and remote access. The documentation covers the full boot chain from the GPU firmware and EEPROM bootloader through to kernel loading, with detailed guidance on boot configuratio
Documents starting the kernel in 64-bit or 32-bit mode with model-dependent defaults.
Documents how to validate whether a typed array contains valid WebAssembly binary code.
Box64 est un runtime inter-architecture et une couche d'émulation en mode utilisateur qui permet aux logiciels Linux et Windows de s'exécuter sur du matériel non natif. Il fonctionne comme un émulateur d'instructions x86-64 et un traducteur binaire, exécutant des binaires 64 bits sur différentes architectures CPU en traduisant le code machine en instructions natives. Le projet utilise la recompilation dynamique pour accélérer l'exécution et mappe les appels système invités vers des bibliothèques hôtes natives pour augmenter la vitesse et la compatibilité matérielle. Il peut simuler un environnement d'exécution 32 bits pour prendre en charge les logiciels hérités et s'intègre au noyau du système d'exploitation pour reconnaître et lancer automatiquement les exécutables étrangers. Le système couvre l'exécution de programmes Linux 64 bits et 32 bits, de binaires Windows et de clients de jeux, incluant la prise en charge des overlays graphiques Vulkan. Il fournit des mécanismes pour le regroupement de bibliothèques, le chargement de paquets AppImage et l'optimisation ciblée par matériel. Le logiciel prend en charge la compilation binaire statique et fournit une chaîne d'outils de compilation croisée pour le déploiement sur différentes architectures CPU.
Simulates a 32-bit execution environment using 64-bit libraries to run software on architectures lacking native support.
SukiSU-Ultra is a kernel-level privilege management tool for Android that grants and controls administrative access by patching kernel functions and loading custom modules. It functions as a kernel module framework that overwrites kernel function addresses to enhance system capabilities, and as a kernel patching utility for building device-specific rooted kernel images that preserve root access after system updates. The project enforces fine-grained superuser permission management directly in the kernel, with per-application root privilege locking that restricts elevated access to a controlle
Runs on the primary 64-bit ARM target architecture with full support.
HyperDbg is a hardware-assisted kernel-mode debugging platform that leverages virtualization to monitor and control system execution. By utilizing hypervisor-level primitives, it enables deep system analysis and instrumentation without relying on standard operating system debugging interfaces. The framework provides a comprehensive environment for inspecting both kernel and user-mode processes, allowing for granular control over execution flow and system state. The project distinguishes itself through a transparent debugging layer designed to remain invisible to the target environment. It emp
Retrieves and displays the current thread's call stack, supporting both 32-bit and 64-bit execution environments.
Box86 is a Linux userspace emulator and instruction translator designed to run x86 binaries on ARM-based devices. It functions as a hardware compatibility layer that simulates an x86 environment, allowing software built for different processor architectures to execute on ARM Linux. The project utilizes a dynamic recompiler to translate x86 opcodes into native ARM instructions at runtime, increasing execution speed over standard interpretation. To further improve performance and stability, it wraps native system libraries and Vulkan drivers, redirecting architecture-specific calls to native ho
Provides the ability to generate 32-bit binaries for execution on 64-bit ARM systems.
Yabridge is a compatibility bridge that allows Windows audio plugins to run within Linux digital audio workstations. It utilizes a Wine-based wrapper to translate audio processing and plugin calls from Windows plugins to Linux hosts, supporting both VST2 and VST3 standards. The system manages the execution of both 32-bit and 64-bit Windows plugins on Linux. It includes specialized mechanisms to handle window scaling, input focus, and the transfer of data through cross-environment drag-and-drop between native Linux applications and Windows plugins. The project provides tools for environment i
Enables the loading of legacy 32-bit Windows plugins within 64-bit Linux audio software.