================================================================================
 IL2CPP STUB / DUMMY ASSEMBLIES  -  Unity (Kairosoft title)
 Reconstructed managed reference DLLs
================================================================================
 Prepared by: StixsworldHD (StixsmasterHD4k)
================================================================================

WHAT THIS IS
------------
This archive contains the reconstructed managed .NET "stub" assemblies for a
Unity game that was compiled with IL2CPP. They were regenerated from the two
IL2CPP artifacts shipped in the game:

    * GameAssembly.dll      (PE32 / x86 native IL2CPP binary)
    * global-metadata.dat   (IL2CPP metadata blob)

Tool used:   Il2CppDumper v6.7.46 (Perfare)
Metadata:    IL2CPP Metadata Version 31
IL2CPP:      Version 31  (Unity 2022.3.x / Unity 6 era)
Architecture: 32-bit (x86)  -> CodeRegistration 0x10F78668,
                                MetadataRegistration 0x11123AE8  (auto-detected)

These are the "base Unity DLLs" plus the game's own managed assemblies, rebuilt
with FULL type / field / property / method SIGNATURES and metadata tokens, but
with EMPTY method bodies (the real logic lives natively inside GameAssembly.dll).
That is exactly what a stub / dummy assembly is: it is for REFERENCE and
ANALYSIS, not for execution.

CONTENTS
--------
51 stub assemblies total. Highlights:

  Game code
    Assembly-CSharp.dll        - game entry assembly (thin on this title)
    KairoLibrary.dll           - Kairosoft's shared engine library
                                 (the bulk of the game logic lives here)
    __Generated.dll            - IL2CPP-generated helper assembly
    Il2CppDummyDll.dll         - Il2CppDumper attribute/marker assembly

  Core runtime
    mscorlib.dll, System*.dll, Mono.Security.dll

  Unity engine modules
    UnityEngine.dll + UnityEngine.CoreModule.dll and the full UnityEngine.*Module
    set (Physics, Physics2D, Animation, Audio, Particle, UI, UIElements, IMGUI,
    TextCore, Tilemap, SpriteShape, Terrain, Video, XR, VFX, InputLegacy, etc.)

  Input / UI
    Unity.InputSystem.dll, Unity.InputSystem.ForUI.dll,
    UnityEngine.UI.dll, UnityEngine.UIElementsModule.dll

Every file in this archive is a valid PE32 .NET assembly with an intact CLI
(COR20) header and a BSJB metadata root - verified across all 51 files.

NOTE ON __Generated.dll
-----------------------
Il2CppDumper wrote this assembly without a file extension because its internal
module name carries none. The .dll extension has been restored here so that
dnSpy / ILSpy / the C# compiler resolve it normally. Its internal assembly
identity is unchanged - only the on-disk filename was corrected.

HOW TO USE THESE
----------------
1. INSPECTION / REVERSE ENGINEERING
   Open the folder in dnSpy, dnSpyEx, or ILSpy to browse the game's type
   hierarchy, method signatures, enums, and field layouts. Pair with the
   companion outputs from the same dump if you have them:
       dump.cs            - full C#-style dump of every type
       il2cpp.h           - C header of all structs (for Ghidra / IDA)
       script.json        - address <-> method map for the native binary
       stringliteral.json - decoded string literals

2. COMPILE-TIME REFERENCES (writing a mod)
   You can add these DLLs as assembly references in a .csproj to compile against
   the game's real type/method signatures. Because the bodies are empty, they
   are reference-only - do not ship them; at runtime your code binds to the
   game's live types.

3. GHIDRA / IDA
   Use ida.py / ida_with_struct.py or ghidra_with_struct.py (shipped with
   Il2CppDumper) together with script.json + il2cpp.h to rename and type the
   thousands of functions inside GameAssembly.dll.

IMPORTANT - IF YOU ARE BUILDING A BepInEx IL2CPP PLUGIN
-------------------------------------------------------
These Il2CppDumper "DummyDll" stubs are NOT the same as the runtime interop
assemblies BepInEx generates. When BepInEx 6 (IL2CPP) first launches a game it
runs Il2CppInterop and writes real, callable proxy assemblies to:

    BepInEx\interop\        (older builds: BepInEx\unhollowed\)

Reference THOSE for the actual plugin build, since they contain working
il2cpp<->mono marshalling. The stubs in this archive are best used alongside
them for analysis, for confirming signatures, and for reading how KairoLibrary
is structured before you write against the interop assemblies.

================================================================================
 StixsworldHD (StixsmasterHD4k)
================================================================================
