#pragma mapfile "utils/th11.eclm" meta { anim: ["enemy.anm", "stgenm04.anm"], ecli: [ "default.ecl", "stage4c00a.ecl", "stage4c00b.ecl", "stage4c00c.ecl", "stage4c01a.ecl", "stage4c01b.ecl", "stage4c01c.ecl", ], } void BCir00() { stackAlloc(@nargs=1, @blob="04000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=4, @blob="08000000 43697230 30000000 69690000 57000000 69690000 2d000000 69690000 01000000", ); delete(@blob=""); } void BCir01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 43697230 31000000 69690000 4b000000 69690000 01000000", ); delete(@blob=""); } void BCir01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 43697230 31620000 69690000 4b000000 69690000 01000000", ); delete(@blob=""); } void BCir02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 43697230 32000000 69690000 4b000000 69690000 01000000", ); delete(@blob=""); } void BCir03() { stackAlloc(@nargs=1, @blob="04000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=4, @blob="08000000 43697230 33000000 69690000 57000000 69690000 2d000000 69690000 01000000", ); delete(@blob=""); } void BGirl00() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 4769726c 30300000 69690000 00000000 69690000 01000000", ); delete(@blob=""); } void BGirl00b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 4769726c 30306200 69690000 00000000 69690000 01000000", ); delete(@blob=""); } void BGirl01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 4769726c 30310000 69690000 00000000 69690000 01000000", ); delete(@blob=""); } void BGirl01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 4769726c 30316200 69690000 00000000 69690000 01000000", ); delete(@blob=""); } void BGirl02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 4769726c 30320000 69690000 00000000 69690000 01000000", ); delete(@blob=""); } void BGirl03() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="08000000 4769726c 30330000 69690000 00000000 69690000 01000000", ); delete(@blob=""); } void BPhantomMBoss() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 00000000 69690000 62000000 69690000 01000000", ); delete(@blob=""); } void BPhantomMBoss2() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2d000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 32000000 69690000 62000000 69690000 01000000", ); delete(@blob=""); } void Boss() { stackAlloc(@nargs=1, @blob="04000000"); setBoss(@nargs=1, @blob="00000000"); anmSelect(@nargs=1, @blob="02000000"); anmSetMain(@nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="00004042 00004042"); setHitbox(@nargs=2, @blob="00004042 00004042"); setInvuln(@nargs=1, @blob="3c000000"); lifeSet(@nargs=1, @blob="8c230000"); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00000043"); fog(@nargs=2, @blob="00002043 ff00ff00"); +60: // 60 dialogWait(@blob=""); lifeHide(@nargs=1, @blob="00000000"); flagClear(@nargs=1, @blob="10000000"); moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 0000c042"); anmSelect(@nargs=1, @blob="00000000"); anmSetSprite(@nargs=2, @blob="01000000 5c000000"); anmSetSprite(@nargs=2, @blob="02000000 aa000000"); anmSelect(@nargs=1, @blob="02000000"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); call(@nargs=1, @blob="08000000 426f7373 31000000"); delete(@blob=""); } void Boss1() { stackAlloc(@nargs=1, @blob="00000000"); timerReset(@blob=""); setInterrupt( @nargs=4, @blob="00000000 6c070000 140a0000 0c000000 426f7373 43617264 31000000", ); lifeMarker(@nargs=3, @blob="00000000 0080ed44 80a0ffff"); setChapter(@nargs=1, @blob="18000000"); stars(@nargs=1, @blob="02000000"); funcSet(@nargs=1, @blob="00000000"); moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00000042"); pushi(@nargs=1, @blob="00000000"); seti(@mask=0b1, @nargs=1, @blob="23d9ffff"); pushi(@nargs=1, @blob="00000000"); seti(@mask=0b1, @nargs=1, @blob="24d9ffff"); jmp(@nargs=2, @blob="18010000 00000000"); callAsync(@nargs=1, @blob="0c000000 426f7373 315f6174 31000000"); call(@nargs=1, @blob="0c000000 426f7373 315f6174 32000000"); diffWait(@nargs=4, @blob="3c000000 3c000000 3c000000 3c000000"); moveRand(@nargs=3, @blob="3c000000 04000000 00000040"); wait(@nargs=1, @blob="3c000000"); callAsync(@nargs=1, @blob="0c000000 426f7373 315f6174 31620000"); call(@nargs=1, @blob="0c000000 426f7373 315f6174 32620000"); moveRand(@nargs=3, @blob="3c000000 04000000 00000040"); wait(@nargs=1, @blob="3c000000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="ecfeffff 00000000"); ret(@blob=""); } void Boss1_at1() { stackAlloc(@nargs=1, @blob="18000000"); diffI( @mask=0b1, @nargs=5, @blob="00000000 1e000000 78000000 78000000 78000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 03000000 03000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 00000000"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f cdcccc3f cdcccc3f cdcccc3f 0000803f 0000803f 0000803f 0000803f", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="00000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="bc040000 00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 00008041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00008040 7cd9203f"); etOn(@nargs=1, @blob="00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 0000a041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 06000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00000041 7cd9203f"); etOn(@nargs=1, @blob="00000000"); diffWait(@nargs=4, @blob="04000000 01000000 01000000 01000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="00000000"); neqi(@blob=""); jmpEq(@nargs=2, @blob="b0010000 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); jmp(@nargs=2, @blob="98010000 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000803f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="48fbffff 00000000"); ret(@blob=""); } void Boss1_at1b() { stackAlloc(@nargs=1, @blob="18000000"); diffI( @mask=0b1, @nargs=5, @blob="00000000 1e000000 78000000 78000000 78000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 01000000 03000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 00000000"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f cdcccc3f cdcccc3f cdcccc3f 0000803f 0000803f 0000803f 0000803f", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="32000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="bc040000 00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 00008041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00008040 db0fc93e"); etOn(@nargs=1, @blob="00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 0000a041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 06000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00000041 db0fc93e"); etOn(@nargs=1, @blob="00000000"); diffWait(@nargs=4, @blob="04000000 01000000 01000000 01000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="00000000"); neqi(@blob=""); jmpEq(@nargs=2, @blob="b0010000 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); jmp(@nargs=2, @blob="98010000 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000003f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="48fbffff 00000000"); ret(@blob=""); } void Boss1_at2() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="78000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 03000000"); etSprite(@nargs=3, @blob="01000000 03000000 02000000"); etCountD( @nargs=9, @blob="01000000 01000000 01000000 01000000 03000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="01000000 00000000 00000000"); etSpeed(@nargs=3, @blob="01000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="01000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="00000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="04030000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="0d000000"); modi(@blob=""); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="b0000000 00000000"); etSprite(@nargs=3, @blob="01000000 11000000 00000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00008040 7cd9203f"); etOn(@nargs=1, @blob="01000000"); etSprite(@nargs=3, @blob="01000000 11000000 01000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00000041 7cd9203f"); etOn(@nargs=1, @blob="01000000"); wait(@nargs=1, @blob="01000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000803f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="00fdffff 00000000"); ret(@blob=""); } void Boss1_at2b() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="78000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 03000000"); etSprite(@nargs=3, @blob="01000000 03000000 02000000"); etCountD( @nargs=9, @blob="01000000 01000000 01000000 01000000 03000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="01000000 00000000 00000000"); etSpeed(@nargs=3, @blob="01000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="01000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="32000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="04030000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="0d000000"); modi(@blob=""); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="b0000000 00000000"); etSprite(@nargs=3, @blob="01000000 11000000 00000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00008040 db0fc93e"); etOn(@nargs=1, @blob="01000000"); etSprite(@nargs=3, @blob="01000000 11000000 01000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00000041 db0fc93e"); etOn(@nargs=1, @blob="01000000"); wait(@nargs=1, @blob="01000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000003f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="00fdffff 00000000"); ret(@blob=""); } void Boss2() { stackAlloc(@nargs=1, @blob="00000000"); timerReset(@blob=""); enmKillAll(@blob=""); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="44000000 00000000"); etCancel(@nargs=1, @blob="00002044"); jmp(@nargs=2, @blob="2c000000 00000000"); etClear(@nargs=1, @blob="00002044"); spellEnd(@blob=""); killAllAsync(@blob=""); funcSet(@nargs=1, @blob="00000000"); laserCancel(@blob=""); lifeSet(@nargs=1, @blob="60220000"); setInterrupt( @nargs=4, @blob="00000000 00000000 34080000 10000000 426f7373 43617264 324d7367 00000000", ); setChapter(@nargs=1, @blob="19000000"); stars(@nargs=1, @blob="01000000"); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="20010000 00000000"); setInvuln(@nargs=1, @blob="3c000000"); dropClear(@blob=""); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="2c000000 00000000"); dropMain(@nargs=1, @blob="05000000"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); dropExtra(@nargs=2, @blob="01000000 0a000000"); dropExtra(@nargs=2, @blob="02000000 05000000"); dropArea(@nargs=2, @blob="00004042 00004042"); dropItems(@blob=""); playSound(@nargs=1, @blob="0f000000"); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00000043"); +90: // 90 nop(@blob=""); moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00000042"); pushi(@nargs=1, @blob="00000000"); seti(@mask=0b1, @nargs=1, @blob="23d9ffff"); pushi(@nargs=1, @blob="00000000"); seti(@mask=0b1, @nargs=1, @blob="24d9ffff"); jmp(@nargs=2, @blob="c8000000 5a000000"); {"34567"}: callAsync( @nargs=1, @blob="0c000000 426f7373 325f6174 32000000", ); call(@nargs=1, @blob="0c000000 426f7373 325f6174 31000000"); {"34567"}: callAsync( @nargs=1, @blob="0c000000 426f7373 325f6174 32620000", ); call(@nargs=1, @blob="0c000000 426f7373 325f6174 31620000"); moveRand(@nargs=3, @blob="3c000000 04000000 00000040"); wait(@nargs=1, @blob="3c000000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="3cffffff 5a000000"); ret(@blob=""); } void Boss2_at1() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="78000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 03000000 03000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 00000000"); etSpeed(@nargs=3, @blob="00000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="00000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="18030000 00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 00008041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00008040 7cd9203f"); etOn(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="01000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="80000000 00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 0000a041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 06000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00000041 7cd9203f"); etOn(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="01000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000803f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="ecfcffff 00000000"); ret(@blob=""); } void Boss2_at1b() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="78000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 01000000 03000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 00000000"); etSpeed(@nargs=3, @blob="00000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="32000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="18030000 00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 00008041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00008040 7cd9203f"); etOn(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="01000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="80000000 00000000"); etOffsetRad(@mask=0b110, @nargs=3, @blob="00000000 0000a041 00004041"); etSprite(@nargs=3, @blob="00000000 03000000 06000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00000041 7cd9203f"); etOn(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="01000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000003f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="ecfcffff 00000000"); ret(@blob=""); } void Boss2_at2() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="78000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 03000000"); etSprite(@nargs=3, @blob="01000000 03000000 02000000"); etCountD( @nargs=9, @blob="01000000 01000000 01000000 01000000 01000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="01000000 00000000 00000000"); etSpeed(@nargs=3, @blob="01000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="01000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="00000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="04030000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="0d000000"); modi(@blob=""); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="b0000000 00000000"); etSprite(@nargs=3, @blob="01000000 11000000 00000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00008040 00000000"); etOn(@nargs=1, @blob="01000000"); etSprite(@nargs=3, @blob="01000000 11000000 01000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00000041 00000000"); etOn(@nargs=1, @blob="01000000"); wait(@nargs=1, @blob="01000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000803f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="00fdffff 00000000"); ret(@blob=""); } void Boss2_at2b() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="78000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 03000000"); etSprite(@nargs=3, @blob="01000000 03000000 02000000"); etCount(@nargs=3, @blob="01000000 01000000 01000000"); etAngle(@nargs=3, @blob="01000000 00000000 00000000"); etSpeed(@nargs=3, @blob="01000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="01000000 01000000 01000000 01000000 c1bdf0ff c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc9bf"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushi(@nargs=1, @blob="32000000"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="04030000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="0d000000"); modi(@blob=""); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="b0000000 00000000"); etSprite(@nargs=3, @blob="01000000 11000000 00000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00008040 00000000"); etOn(@nargs=1, @blob="01000000"); etSprite(@nargs=3, @blob="01000000 11000000 01000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00000041 00000000"); etOn(@nargs=1, @blob="01000000"); wait(@nargs=1, @blob="01000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="3ed00a3d"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="3ed00a3d"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); validRad(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@nargs=1, @blob="d80fc93e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); validRad(@mask=0b1, @nargs=1, @blob="00008041"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="d80fc93e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="0000003f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="00fdffff 00000000"); ret(@blob=""); } void BossCard1() { stackAlloc(@nargs=1, @blob="14000000"); setInterrupt( @nargs=4, @blob="00000000 00000000 140a0000 08000000 426f7373 32000000", ); {"014567"}: spell( @nargs=4, @blob="2a000000 140a0000 20a10700 20000000 e6041ef2 724f129d ec7c0e41 68390a28 e6350638 604000b3 dc6dfc52 dba27960", ); {"234567"}: spell3( @nargs=4, @blob="2c000000 140a0000 20a10700 14000000 e6041ef2 724f1a48 fa8a00f7 7d020600 e61885ac", ); setChapter(@nargs=1, @blob="2b000000"); killAllAsync(@blob=""); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00006043"); setInvuln(@nargs=1, @blob="3c000000"); playSound(@nargs=1, @blob="07000000"); enmCreate( @nargs=6, @blob="0c000000 45636c5f 45744272 65616b00 00000000 00000000 0f270000 00000000 00000000", ); enmKillAll(@blob=""); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="3c000000 00000000"); dropMain(@nargs=1, @blob="05000000"); dropItems(@blob=""); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); funcSet(@nargs=1, @blob="01000000"); moveLimit(@nargs=4, @blob="00000000 00000043 0000c043 00008043"); +30: // 30 anmPlay(@nargs=2, @blob="00000000 83000000"); +120: // 150 nop(@blob=""); jmp(@nargs=2, @blob="28020000 96000000"); pushf(@nargs=1, @blob="c0922b3c"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); callAsync( @nargs=2, @blob="10000000 426f7373 43617264 315f6174 00000000 66660000 db0fc9bf", ); wait(@nargs=1, @blob="78000000"); playSound(@nargs=1, @blob="29000000"); wait(@nargs=1, @blob="3c000000"); playSound(@nargs=1, @blob="10000000"); wait(@nargs=1, @blob="14000000"); diffF( @mask=0b1, @nargs=5, @blob="00004041 5077563e 5077563e 5077563e f975f73d", ); callAsync( @mask=0b10, @nargs=2, @blob="10000000 426f7373 43617264 315f6174 32000000 66660000 00004041", ); pushf(@nargs=1, @blob="c0922bbc"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); callAsync( @nargs=2, @blob="10000000 426f7373 43617264 315f6174 00000000 66660000 db0fc93f", ); wait(@nargs=1, @blob="78000000"); playSound(@nargs=1, @blob="29000000"); wait(@nargs=1, @blob="3c000000"); playSound(@nargs=1, @blob="10000000"); wait(@nargs=1, @blob="14000000"); diffF( @mask=0b1, @nargs=5, @blob="00004041 507756be 507756be 507756be f975f7bd", ); callAsync( @mask=0b10, @nargs=2, @blob="10000000 426f7373 43617264 315f6174 32000000 66660000 00004041", ); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="dcfdffff 96000000"); ret(@blob=""); } void BossCard1_at() { stackAlloc(@nargs=1, @blob="18000000"); pushf(@nargs=1, @blob="00000000"); setf(@mask=0b1, @nargs=1, @blob="00008040"); diffI( @mask=0b1, @nargs=5, @blob="14000000 10000000 10000000 20000000 20000000", ); pushf(@nargs=1, @blob="db0fc940"); pushi(@mask=0b1, @nargs=1, @blob="14000000"); divf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008041"); jmp(@nargs=2, @blob="2c010000 00000000"); circlePos( @mask=0b111, @nargs=4, @blob="00000041 00004041 00008040 00008042", ); etOffset(@mask=0b110, @nargs=3, @blob="00000000 00000041 00004041"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000000"); addf(@blob=""); laserStOn( @mask=0b1000, @nargs=12, @blob="00000000 03000000 06000000 000080bf 00000000 0000e643 b4000000 14000000 32000000 08000000 00008041 08000000", ); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); validRad(@mask=0b1, @nargs=1, @blob="00008040"); deci(@mask=0b1, @nargs=1, @blob="14000000"); jmpNeq(@nargs=2, @blob="d8feffff 00000000"); ret(@blob=""); } void BossCard1_at2() { stackAlloc(@nargs=1, @blob="14000000"); pushf(@nargs=1, @blob="00000000"); setf(@mask=0b1, @nargs=1, @blob="00008040"); pushi(@nargs=1, @blob="10000000"); seti(@mask=0b1, @nargs=1, @blob="10000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="01000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="40020000 00000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 03000000"); etSprite(@nargs=3, @blob="01000000 01000000 0d000000"); etCountD( @nargs=9, @blob="01000000 08000000 08000000 0c000000 14000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="01000000 00000000 00000000"); etSpeedD( @nargs=9, @blob="01000000 cdcccc3f cdcccc3f 00000040 00000040 0000803f 0000803f 0000803f 0000803f", ); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etDist(@nargs=2, @blob="01000000 00000042"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008040"); jmp(@nargs=2, @blob="a8000000 00000000"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00008040 00000000"); etOn(@nargs=1, @blob="01000000"); wait(@nargs=1, @blob="06000000"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@mask=0b1, @nargs=1, @blob="00000000"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); deci(@mask=0b1, @nargs=1, @blob="10000000"); jmpNeq(@nargs=2, @blob="5cffffff 00000000"); jmp(@nargs=2, @blob="68010000 00000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 03000000"); etSprite(@nargs=3, @blob="01000000 01000000 0d000000"); etCount(@nargs=3, @blob="01000000 08000000 01000000"); etAngle(@nargs=3, @blob="01000000 00000000 00000000"); etSpeed(@nargs=3, @blob="01000000 cdcccc3f 0000803f"); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etDist(@nargs=2, @blob="01000000 00000042"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00008040"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00008040 00000000"); etOn(@nargs=1, @blob="01000000"); wait(@nargs=1, @blob="60000000"); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 02000000"); etSprite(@nargs=3, @blob="01000000 11000000 01000000"); etCountD( @nargs=9, @blob="01000000 01000000 01000000 01000000 01000000 08000000 08000000 18000000 20000000", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="02000000"); mulf(@blob=""); etAngle(@mask=0b110, @nargs=3, @blob="01000000 00000000 000080bf"); etSpeedD( @nargs=9, @blob="01000000 0000c03f 0000c03f 00000040 00002040 0000003f 0000003f 0000003f 0000003f", ); {"234567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000"); {"234567"}: pushf(@nargs=1, @blob="9a99993e"); {"234567"}: mulf(@blob=""); {"234567"}: etAngle( @mask=0b110, @nargs=3, @blob="01000000 00000000 000080bf", ); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etOn(@nargs=1, @blob="01000000"); ret(@blob=""); } void BossCard2Msg() { stackAlloc(@nargs=1, @blob="00000000"); killAllAsync(@blob=""); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00004043"); setInvuln(@nargs=1, @blob="3c000000"); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="e4000000 00000000"); dropClear(@blob=""); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="2c000000 00000000"); dropMain(@nargs=1, @blob="05000000"); dropExtra(@nargs=2, @blob="01000000 0f000000"); dropExtra(@nargs=2, @blob="02000000 0a000000"); dropArea(@nargs=2, @blob="00004042 00004042"); dropItems(@blob=""); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); lifeSet(@nargs=1, @blob="e8030000"); playSound(@nargs=1, @blob="07000000"); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="64000000 00000000"); enmCreate( @nargs=6, @blob="0c000000 45636c5f 45744272 65616b00 00000000 00000000 0f270000 00000000 00000000", ); jmp(@nargs=2, @blob="50000000 00000000"); enmCreate( @nargs=6, @blob="10000000 45636c5f 45744272 65616b5f 6e690000 00000000 00000000 0f270000 00000000 00000000", ); laserCancel(@blob=""); enmKillAll(@blob=""); setChapter(@nargs=1, @blob="2c000000"); moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00000043"); flagSet(@nargs=1, @blob="10000000"); dialogRead(@nargs=1, @blob="02000000"); dialogWait(@blob=""); flagClear(@nargs=1, @blob="10000000"); setChapter(@nargs=1, @blob="2c000000"); stars(@nargs=1, @blob="00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 53656c65 63740000"); ret(@blob=""); } void BossCardItem() { stackAlloc(@nargs=1, @blob="00000000"); dropExtra(@nargs=2, @blob="01000000 0a000000"); dropExtra(@nargs=2, @blob="02000000 0e000000"); ret(@blob=""); } void BossCardSelect() { stackAlloc(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="27d9ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="54000000 00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 325f3030 41000000"); jmp(@nargs=2, @blob="bc020000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="27d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="54000000 00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 325f3030 42000000"); jmp(@nargs=2, @blob="30020000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="27d9ffff"); pushi(@nargs=1, @blob="02000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="54000000 00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 325f3030 43000000"); jmp(@nargs=2, @blob="a4010000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="27d9ffff"); pushi(@nargs=1, @blob="03000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="54000000 00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 325f3031 41000000"); jmp(@nargs=2, @blob="18010000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="27d9ffff"); pushi(@nargs=1, @blob="04000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="54000000 00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 325f3031 42000000"); jmp(@nargs=2, @blob="8c000000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="27d9ffff"); pushi(@nargs=1, @blob="05000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="3c000000 00000000"); call(@nargs=1, @blob="10000000 426f7373 43617264 325f3031 43000000"); ret(@blob=""); } void BossDead() { stackAlloc(@nargs=1, @blob="04000000"); flagSet(@nargs=1, @blob="8c000000"); anmPlay(@nargs=2, @blob="00000000 4c000000"); playSound(@nargs=1, @blob="12000000"); anmPlay(@nargs=2, @blob="00000000 8d000000"); moveVelTime( @mask=0b100, @nargs=4, @blob="01000000 00000000 00381cc6 cdcccc3e", ); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="68000000 00000000"); enmCreate( @nargs=6, @blob="10000000 45636c5f 45744272 65616b32 00000000 00000000 00000000 0f270000 00000000 00000000", ); jmp(@nargs=2, @blob="50000000 00000000"); enmCreate( @nargs=6, @blob="10000000 45636c5f 45744272 65616b32 5f6e6900 00000000 00000000 0f270000 00000000 00000000", ); +60: // 60 etClearAll(@blob=""); spellEnd(@blob=""); dropMain(@nargs=1, @blob="00000000"); dropClear(@blob=""); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="3c000000 3c000000"); dropMain(@nargs=1, @blob="05000000"); dropItems(@blob=""); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); dropExtra(@nargs=2, @blob="01000000 0a000000"); dropExtra(@nargs=2, @blob="02000000 08000000"); dropArea(@nargs=2, @blob="00004042 00004042"); dropItems(@blob=""); setScreenShake(@nargs=3, @blob="1e000000 0c000000 00000000"); anmPlay(@nargs=2, @blob="00000000 4c000000"); anmPlay(@nargs=2, @blob="00000000 8e000000"); playSound(@nargs=1, @blob="12000000"); setBoss(@nargs=1, @blob="ffffffff"); delete(@blob=""); delete(@blob=""); } void Cir00() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="14000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="03000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); moveVel(@nargs=2, @blob="00000000 00000041"); moveVelTime(@nargs=4, @blob="3c000000 04000000 f02374c9 00000000"); +60: // 60 flagClear(@nargs=1, @blob="03000000"); +60: // 120 moveVel(@mask=0b1, @nargs=2, @blob="00141cc6 00000000"); {"234567"}: callAsync( @nargs=1, @blob="0c000000 52436972 30305f61 74000000", ); moveVelTime( @mask=0b100, @nargs=4, @blob="3c000000 04000000 00141cc6 00000040", ); jmp(@nargs=2, @blob="2c000000 78000000"); wait(@nargs=1, @blob="e8030000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="d8ffffff 78000000"); ret(@blob=""); } void Cir01() { stackAlloc(@nargs=1, @blob="14000000"); pushi(@nargs=1, @blob="03000000"); seti(@mask=0b1, @nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="02000000 03000000"); dropArea(@nargs=2, @blob="00004042 00004042"); callAsync(@nargs=1, @blob="0c000000 52436972 30315f61 74000000"); moveVel(@nargs=2, @blob="db0fc93f 00004040"); wait(@nargs=1, @blob="3c000000"); moveVelTime(@nargs=4, @blob="32000000 00000000 db0f49bf 0000a040"); wait(@nargs=1, @blob="3c000000"); +6000: // 6000 nop(@blob=""); ret(@blob=""); } void Cir01b() { stackAlloc(@nargs=1, @blob="14000000"); pushi(@nargs=1, @blob="03000000"); seti(@mask=0b1, @nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="02000000 03000000"); dropArea(@nargs=2, @blob="00004042 00004042"); callAsync(@nargs=1, @blob="0c000000 52436972 3031625f 61740000"); moveVel(@nargs=2, @blob="db0fc93f 00004040"); wait(@nargs=1, @blob="3c000000"); moveVelTime(@nargs=4, @blob="32000000 00000000 db0f4940 0000a040"); wait(@nargs=1, @blob="3c000000"); +6000: // 6000 nop(@blob=""); ret(@blob=""); } void Cir02() { stackAlloc(@nargs=1, @blob="14000000"); pushi(@nargs=1, @blob="03000000"); seti(@mask=0b1, @nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); callAsync(@nargs=1, @blob="0c000000 52436972 30325f61 74000000"); moveVel(@nargs=2, @blob="db0fc9be 00004040"); wait(@nargs=1, @blob="3c000000"); moveVelTime(@nargs=4, @blob="32000000 00000000 00000000 00008040"); wait(@nargs=1, @blob="3c000000"); +6000: // 6000 nop(@blob=""); ret(@blob=""); } void Cir03() { stackAlloc(@nargs=1, @blob="18000000"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="14000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="03000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); moveVel(@nargs=2, @blob="db0fc93f cdcc4c3e"); +60: // 60 flagClear(@nargs=1, @blob="03000000"); moveVelTime(@nargs=4, @blob="1e000000 00000000 f02374c9 00000000"); callAsync( @nargs=2, @blob="0c000000 52436972 30335f61 74000000 69690000 01000000", ); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="01000000 04000000"); +300: // 360 flagSet(@nargs=1, @blob="03000000"); anmSwitch(@nargs=2, @blob="00000000 03000000"); anmSetSprite(@nargs=2, @blob="01000000 ffffffff"); moveVel(@nargs=2, @blob="db0fc93f cdcc4c3e"); moveVelTime(@nargs=4, @blob="1e000000 00000000 f02374c9 0000803f"); +60: // 420 delete(@blob=""); ret(@blob=""); } void GCir00() { stackAlloc(@nargs=1, @blob="04000000"); dropMain(@nargs=1, @blob="03000000"); call( @nargs=4, @blob="08000000 43697230 30000000 69690000 54000000 69690000 2f000000 69690000 01000000", ); delete(@blob=""); } void GCir01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 43697230 31000000 69690000 48000000 69690000 01000000", ); delete(@blob=""); } void GCir01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 43697230 31620000 69690000 48000000 69690000 01000000", ); delete(@blob=""); } void GCir02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 43697230 32000000 69690000 48000000 69690000 01000000", ); delete(@blob=""); } void GCir03() { stackAlloc(@nargs=1, @blob="04000000"); dropMain(@nargs=1, @blob="03000000"); call( @nargs=4, @blob="08000000 43697230 33000000 69690000 54000000 69690000 2f000000 69690000 01000000", ); delete(@blob=""); } void GGirl00() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 4769726c 30300000 69690000 0a000000 69690000 01000000", ); delete(@blob=""); } void GGirl00b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 4769726c 30306200 69690000 0a000000 69690000 01000000", ); delete(@blob=""); } void GGirl01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 4769726c 30310000 69690000 0a000000 69690000 01000000", ); delete(@blob=""); } void GGirl01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 4769726c 30316200 69690000 0a000000 69690000 01000000", ); delete(@blob=""); } void GGirl02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 4769726c 30320000 69690000 0a000000 69690000 01000000", ); delete(@blob=""); } void GGirl03() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="03000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="08000000 4769726c 30330000 69690000 0a000000 69690000 01000000", ); delete(@blob=""); } void GPhantomMBoss() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 00000000 69690000 60000000 69690000 01000000", ); delete(@blob=""); } void GPhantomMBoss2() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 2f000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 32000000 69690000 60000000 69690000 01000000", ); delete(@blob=""); } void Girl00() { stackAlloc(@nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetMain(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="02000000 04000000"); dropArea(@nargs=2, @blob="00000042 00000042"); moveVel(@nargs=2, @blob="00000000 0000c040"); moveVelTime(@nargs=4, @blob="3c000000 09000000 00000000 00000000"); +60: // 60 callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c30305f 61740000 69690000 04000000", ); wait(@nargs=1, @blob="78000000"); moveVel(@nargs=2, @blob="db0fc9bf 00000000"); moveVelTime(@nargs=4, @blob="3c000000 00000000 f02374c9 0000803f"); +6000: // 6060 nop(@blob=""); ret(@blob=""); } void Girl00b() { stackAlloc(@nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetMain(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="02000000 04000000"); dropArea(@nargs=2, @blob="00000042 00000042"); moveVel(@nargs=2, @blob="00000000 0000c040"); moveVelTime(@nargs=4, @blob="3c000000 09000000 00000000 00000000"); +60: // 60 callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c303062 5f617400 69690000 04000000", ); wait(@nargs=1, @blob="3c000000"); {"34567"}: callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c303062 5f617400 69690000 04000000", ); wait(@nargs=1, @blob="3c000000"); moveVel(@nargs=2, @blob="db0fc9bf 00000000"); moveVelTime(@nargs=4, @blob="3c000000 00000000 f02374c9 0000803f"); +6000: // 6060 nop(@blob=""); ret(@blob=""); } void Girl01() { stackAlloc(@nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetMain(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c30315f 61740000 69690000 04000000", ); moveVel(@nargs=2, @blob="db0fc93f 00004040"); moveVelTime(@nargs=4, @blob="3c000000 09000000 db0f4940 00004040"); wait(@nargs=1, @blob="78000000"); +6000: // 6000 nop(@blob=""); ret(@blob=""); } void Girl01b() { stackAlloc(@nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetMain(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); {"1234567"}: callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c303162 5f617400 69690000 04000000", ); moveVel(@nargs=2, @blob="db0fc93f 00004040"); moveVelTime(@nargs=4, @blob="3c000000 09000000 db0f4940 00004040"); wait(@nargs=1, @blob="78000000"); +6000: // 6000 nop(@blob=""); ret(@blob=""); } void Girl02() { stackAlloc(@nargs=1, @blob="10000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetMain(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="01000000 02000000"); dropExtra(@nargs=2, @blob="02000000 04000000"); dropArea(@nargs=2, @blob="00000042 00000042"); moveVel(@nargs=2, @blob="00000000 0000a040"); moveVelTime(@nargs=4, @blob="3c000000 09000000 00000000 00000000"); +60: // 60 callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c30325f 61740000 69690000 04000000", ); wait(@nargs=1, @blob="f0000000"); moveVel(@nargs=2, @blob="db0fc9bf 00000000"); moveVelTime(@nargs=4, @blob="3c000000 00000000 f02374c9 0000803f"); +6000: // 6060 nop(@blob=""); ret(@blob=""); } void Girl03() { stackAlloc(@nargs=1, @blob="10000000"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); anmSelect(@nargs=1, @blob="01000000"); anmSetMain(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="02000000 04000000"); dropArea(@nargs=2, @blob="00000042 00000042"); setInterrupt( @nargs=4, @blob="00000000 00000000 ffffffff 0c000000 4769726c 33446561 64000000", ); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 0000c042"); +60: // 60 callAsync( @mask=0b10, @nargs=2, @blob="0c000000 52476972 6c30335f 61740000 69690000 04000000", ); wait(@nargs=1, @blob="58020000"); killAllAsync(@blob=""); moveVel(@nargs=2, @blob="db0fc9bf 00000000"); moveVelTime(@nargs=4, @blob="3c000000 00000000 f02374c9 0000803f"); +6000: // 6060 nop(@blob=""); ret(@blob=""); } void Girl3Dead() { stackAlloc(@nargs=1, @blob="00000000"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="01000000 14000000"); dropExtra(@nargs=2, @blob="02000000 05000000"); dropArea(@nargs=2, @blob="00004042 00004042"); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="2c000000 00000000"); dropMain(@nargs=1, @blob="05000000"); dropItems(@blob=""); anmPlay(@nargs=2, @blob="00000000 4e000000"); playSound(@nargs=1, @blob="02000000"); ret(@blob=""); } void MBoss() { stackAlloc(@nargs=1, @blob="10000000"); setBoss(@nargs=1, @blob="00000000"); anmSelect(@nargs=1, @blob="00000000"); anmSetSprite(@nargs=2, @blob="02000000 aa000000"); anmSelect(@nargs=1, @blob="02000000"); anmSetMain(@nargs=2, @blob="00000000 07000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="00004042 00004042"); setHitbox(@nargs=2, @blob="00002042 00002042"); lifeSet(@nargs=1, @blob="80380100"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); setChapter(@nargs=1, @blob="06000000"); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00000043"); wait(@nargs=1, @blob="46000000"); moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00008041"); wait(@nargs=1, @blob="78000000"); playSound(@nargs=1, @blob="29000000"); fog(@nargs=2, @blob="00002043 0000ff00"); anmSelect(@nargs=1, @blob="00000000"); anmSetSprite(@nargs=2, @blob="01000000 5c000000"); anmSelect(@nargs=1, @blob="02000000"); wait(@nargs=1, @blob="3c000000"); pushi(@nargs=1, @blob="0a000000"); seti(@mask=0b1, @nargs=1, @blob="04000000"); jmp(@nargs=2, @blob="60020000 00000000"); wait(@nargs=1, @blob="1e000000"); moveRand(@nargs=3, @blob="28000000 04000000 00000041"); playSound(@nargs=1, @blob="22000000"); pushf(@mask=0b1, @nargs=1, @blob="00381cc6"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); circlePos( @mask=0b111, @nargs=4, @blob="00000041 00004041 00f41bc6 00000042", ); pushi(@nargs=1, @blob="02000000"); seti(@mask=0b1, @nargs=1, @blob="ffd8ffff"); enmCreate( @mask=0b110, @nargs=6, @blob="10000000 52506861 6e746f6d 4d426f73 73000000 00000041 00004041 2c010000 e8030000 02000000", ); pushf(@mask=0b1, @nargs=1, @blob="00f41bc6"); pushf(@nargs=1, @blob="910a0640"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); circlePos( @mask=0b111, @nargs=4, @blob="00000041 00004041 00f41bc6 00000042", ); enmCreate( @mask=0b110, @nargs=6, @blob="10000000 47506861 6e746f6d 4d426f73 73000000 00000041 00004041 2c010000 e8030000 02000000", ); pushf(@mask=0b1, @nargs=1, @blob="00f41bc6"); pushf(@nargs=1, @blob="910a0640"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); circlePos( @mask=0b111, @nargs=4, @blob="00000041 00004041 00f41bc6 00000042", ); enmCreate( @mask=0b110, @nargs=6, @blob="10000000 42506861 6e746f6d 4d426f73 73000000 00000041 00004041 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="28000000"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="a4fdffff 00000000"); call(@nargs=1, @blob="0c000000 4d426f73 73457363 61706500"); jmp(@nargs=2, @blob="2c000000 00000000"); wait(@nargs=1, @blob="e8030000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="d8ffffff 00000000"); delete(@blob=""); } void MBoss2() { stackAlloc(@nargs=1, @blob="10000000"); setBoss(@nargs=1, @blob="00000000"); anmSelect(@nargs=1, @blob="00000000"); anmSetSprite(@nargs=2, @blob="02000000 aa000000"); anmSelect(@nargs=1, @blob="02000000"); anmSetMain(@nargs=2, @blob="00000000 07000000"); flagSet(@nargs=1, @blob="40000000"); setHurtbox(@nargs=2, @blob="00004042 00004042"); setHitbox(@nargs=2, @blob="00002042 00002042"); lifeSet(@nargs=1, @blob="e02e0000"); pushi(@nargs=1, @blob="01000000"); seti(@mask=0b1, @nargs=1, @blob="25d9ffff"); setInterrupt( @nargs=4, @blob="00000000 00000000 36060000 10000000 4d426f73 73457363 61706532 00000000", ); setChapter(@nargs=1, @blob="07000000"); movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00000043"); wait(@nargs=1, @blob="46000000"); moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00008041"); wait(@nargs=1, @blob="3c000000"); playSound(@nargs=1, @blob="29000000"); fog(@nargs=2, @blob="00002043 0000ff00"); anmSelect(@nargs=1, @blob="00000000"); anmSetSprite(@nargs=2, @blob="01000000 5c000000"); anmSelect(@nargs=1, @blob="02000000"); anmPlay(@nargs=2, @blob="00000000 83000000"); wait(@nargs=1, @blob="3c000000"); wait(@nargs=1, @blob="3c000000"); callAsync(@nargs=1, @blob="0c000000 4d426f73 73325f61 74000000"); callAsync(@nargs=1, @blob="0c000000 4d426f73 73325f61 74320000"); wait(@nargs=1, @blob="3c000000"); jmp(@nargs=2, @blob="d4000000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="26d9ffff"); pushi(@nargs=1, @blob="02000000"); leqi(@blob=""); jmpEq(@nargs=2, @blob="70000000 00000000"); playSound(@nargs=1, @blob="29000000"); anmPlay(@nargs=2, @blob="00000000 83000000"); wait(@nargs=1, @blob="78000000"); jmp(@nargs=2, @blob="04ffffff 00000000"); wait(@nargs=1, @blob="01000000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="30ffffff 00000000"); jmp(@nargs=2, @blob="2c000000 00000000"); wait(@nargs=1, @blob="e8030000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="d8ffffff 00000000"); delete(@blob=""); } void MBoss2_at() { stackAlloc(@nargs=1, @blob="18000000"); pushf(@mask=0b1, @nargs=1, @blob="00141cc6"); setf(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@nargs=3, @blob="00000000 03000000 02000000"); etCountD( @nargs=9, @blob="00000000 20000000 30000000 30000000 40000000 01000000 01000000 01000000 01000000", ); etAngle(@mask=0b100, @nargs=3, @blob="00000000 00000000 00000000"); etSpeedD( @nargs=9, @blob="00000000 9a99993e 9a99993e 9a99993e 9a99993e 0000803f 0000803f 0000803f 0000803f", ); etSound(@nargs=3, @blob="00000000 07000000 ffffffff"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00008040 610b363c 610bb63c 610bb63c 610bb63c", ); etEx( @mask=0b1000000, @nargs=8, @blob="00000000 01000000 00000000 04000000 5a000000 c1bdf0ff 00008040 f02374c9", ); diffI( @mask=0b1, @nargs=5, @blob="14000000 0a000000 14000000 1e000000 1e000000", ); diffF( @mask=0b1, @nargs=5, @blob="00000041 0000f042 00002043 00002043 00002043", ); diffF( @mask=0b1, @nargs=5, @blob="00008041 0000a041 00008041 00004041 00004041", ); pushi(@nargs=1, @blob="d0070000"); setf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@mask=0b1, @nargs=1, @blob="00381cc6"); setf(@mask=0b1, @nargs=1, @blob="00004041"); jmp(@nargs=2, @blob="f8010000 00000000"); etDist(@mask=0b10, @nargs=2, @blob="00000000 00000041"); pushf(@mask=0b1, @nargs=1, @blob="00381cc6"); pushf(@mask=0b1, @nargs=1, @blob="00000000"); divf(@blob=""); etAngle(@mask=0b10, @nargs=3, @blob="00000000 000080bf 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="0a000000"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); validRad(@mask=0b1, @nargs=1, @blob="00000000"); etOn(@nargs=1, @blob="00000000"); etDist(@mask=0b10, @nargs=2, @blob="01000000 00000041"); etAngle(@mask=0b10, @nargs=3, @blob="01000000 00004041 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@nargs=1, @blob="9a09863c"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); validRad(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); diffWait(@nargs=4, @blob="08000000 05000000 02000000 02000000"); deci(@mask=0b1, @nargs=1, @blob="14000000"); jmpNeq(@nargs=2, @blob="0cfeffff 00000000"); ret(@blob=""); } void MBoss2_at2() { stackAlloc(@nargs=1, @blob="1c000000"); diffI( @mask=0b1, @nargs=5, @blob="14000000 04000000 08000000 08000000 0a000000", ); diffF( @mask=0b1, @nargs=5, @blob="00004041 0000f042 00002043 00002043 00002043", ); diffF( @mask=0b1, @nargs=5, @blob="00008041 00000042 00008041 00008041 00008041", ); jmp(@nargs=2, @blob="d0010000 00000000"); pushi(@nargs=1, @blob="08000000"); seti(@mask=0b1, @nargs=1, @blob="18000000"); pushf(@mask=0b1, @nargs=1, @blob="00381cc6"); setf(@mask=0b1, @nargs=1, @blob="00000000"); jmp(@nargs=2, @blob="d0000000 00000000"); circlePos( @mask=0b1111, @nargs=4, @blob="00008040 00000041 00000000 00004041", ); enmCreate( @mask=0b110, @nargs=6, @blob="10000000 42506861 6e746f6d 4d426f73 73320000 00008040 00000041 a0000000 e8030000 02000000", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="d80f493f"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); validRad(@mask=0b1, @nargs=1, @blob="00000000"); deci(@mask=0b1, @nargs=1, @blob="18000000"); jmpNeq(@nargs=2, @blob="34ffffff 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); diffWait(@nargs=4, @blob="0a000000 05000000 05000000 05000000"); deci(@mask=0b1, @nargs=1, @blob="14000000"); jmpNeq(@nargs=2, @blob="34feffff 00000000"); ret(@blob=""); } void MBossEscape() { stackAlloc(@nargs=1, @blob="04000000"); setInterrupt( @nargs=4, @blob="00000000 ffffffff 00000000 04000000 00000000", ); setInterrupt( @nargs=4, @blob="01000000 ffffffff 00000000 04000000 00000000", ); spellEnd(@blob=""); moveLimitReset(@blob=""); dropClear(@blob=""); dropExtra(@nargs=2, @blob="01000000 08000000"); dropExtra(@nargs=2, @blob="02000000 0a000000"); dropArea(@nargs=2, @blob="00004042 00004042"); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="7c000000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="2c000000 00000000"); dropMain(@nargs=1, @blob="05000000"); dropItems(@blob=""); playSound(@nargs=1, @blob="0f000000"); lifeSet(@nargs=1, @blob="a0860100"); setBoss(@nargs=1, @blob="ffffffff"); flagSet(@nargs=1, @blob="10000000"); movePosTime(@nargs=4, @blob="3c000000 04000000 00006043 00008042"); +60: // 60 setChapter(@nargs=1, @blob="00000000"); delete(@blob=""); delete(@blob=""); } void MBossEscape2() { stackAlloc(@nargs=1, @blob="04000000"); setInterrupt( @nargs=4, @blob="00000000 ffffffff 00000000 04000000 00000000", ); setInterrupt( @nargs=4, @blob="01000000 ffffffff 00000000 04000000 00000000", ); spellEnd(@blob=""); moveLimitReset(@blob=""); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="44000000 00000000"); etCancel(@nargs=1, @blob="00002044"); jmp(@nargs=2, @blob="2c000000 00000000"); etClear(@nargs=1, @blob="00002044"); ins_371(@nargs=1, @blob="01000000"); lifeSet(@nargs=1, @blob="a0860100"); setBoss(@nargs=1, @blob="ffffffff"); dropClear(@blob=""); dropExtra(@nargs=2, @blob="01000000 0a000000"); dropExtra(@nargs=2, @blob="02000000 05000000"); dropArea(@nargs=2, @blob="00004042 00004042"); pushi(@mask=0b1, @nargs=1, @blob="fed8ffff"); pushi(@nargs=1, @blob="00000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="7c000000 00000000"); pushi(@mask=0b1, @nargs=1, @blob="25d9ffff"); pushi(@nargs=1, @blob="01000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="2c000000 00000000"); dropMain(@nargs=1, @blob="05000000"); dropItems(@blob=""); playSound(@nargs=1, @blob="0f000000"); wait(@nargs=1, @blob="78000000"); flagSet(@nargs=1, @blob="10000000"); movePosTime(@nargs=4, @blob="3c000000 04000000 000060c3 00008042"); +60: // 60 setChapter(@nargs=1, @blob="00000000"); delete(@blob=""); delete(@blob=""); } void MainBossDebug() { stackAlloc(@nargs=1, @blob="00000000"); +60: // 60 dialogRead(@nargs=1, @blob="ffffffff"); dialogWait(@blob=""); enmCreateA( @nargs=6, @blob="08000000 426f7373 00000000 000058c3 00008042 28000000 e8030000 01000000", ); ins_500(@nargs=1, @blob="64000000"); deathWait(@blob=""); +60: // 120 dialogRead(@nargs=1, @blob="01000000"); dialogWait(@blob=""); ret(@blob=""); ret(@blob=""); } void MainMBossDebug() { stackAlloc(@nargs=1, @blob="00000000"); enmCreateA( @nargs=6, @blob="08000000 4d426f73 73000000 000010c3 000000c2 28000000 10270000 01000000", ); jmp(@nargs=2, @blob="2c000000 00000000"); wait(@nargs=1, @blob="e8030000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="d8ffffff 00000000"); ret(@blob=""); } void MainMsgDebug() { stackAlloc(@nargs=1, @blob="00000000"); ins_500(@nargs=1, @blob="64000000"); +120: // 120 dialogRead(@nargs=1, @blob="01000000"); dialogWait(@blob=""); +1: // 121 dialogWait(@blob=""); +60: // 181 dialogRead(@nargs=1, @blob="01000000"); dialogWait(@blob=""); jmp(@nargs=2, @blob="28000000 55100000"); +4000: // 4181 nop(@blob=""); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="dcffffff b5000000"); ret(@blob=""); } void MainSub00() { stackAlloc(@nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="06000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); jmp(@nargs=2, @blob="58010000 00000000"); pushi(@nargs=1, @blob="20000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="20000000"); muli(@blob=""); addi(@blob=""); enmCreate( @mask=0b100, @nargs=6, @blob="08000000 52436972 30300000 000080c2 000080bf 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="05000000"); pushi(@nargs=1, @blob="20000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="20000000"); muli(@blob=""); addi(@blob=""); enmCreate( @mask=0b100, @nargs=6, @blob="08000000 52436972 30300000 000080c3 000080bf 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="05000000"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="acfeffff 00000000"); ret(@blob=""); } void MainSub00b() { stackAlloc(@nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="06000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); jmp(@nargs=2, @blob="58010000 00000000"); pushi(@nargs=1, @blob="20000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="20000000"); muli(@blob=""); addi(@blob=""); enmCreateM( @mask=0b100, @nargs=6, @blob="08000000 52436972 30300000 00008042 000080bf 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="05000000"); pushi(@nargs=1, @blob="20000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="20000000"); muli(@blob=""); addi(@blob=""); enmCreateM( @mask=0b100, @nargs=6, @blob="08000000 52436972 30300000 00008043 000080bf 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="05000000"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="acfeffff 00000000"); ret(@blob=""); } void MainSub01() { stackAlloc(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="08000000 4d426f73 73000000 000060c3 00008042 2c010000 e8030000 02000000", ); ret(@blob=""); } void MainSub01b() { stackAlloc(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 4d426f73 73320000 00006043 00008042 2c010000 e8030000 02000000", ); ret(@blob=""); } void MainSub02() { stackAlloc(@nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303000 000060c3 00008042 f4010000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303000 00006043 00008042 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="f0000000"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303000 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303000 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303000 00006043 00000043 f4010000 e8030000 02000000", ); ret(@blob=""); } void MainSub02b() { stackAlloc(@nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 000060c3 00008042 f4010000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 00006043 00008042 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="f0000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 000060c3 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303062 00000000 00006043 00000043 f4010000 e8030000 02000000", ); ret(@blob=""); } void MainSub03() { stackAlloc(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="c8000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateAM( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateAM( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateAM( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateAM( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateAM( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateAM( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); enmCreateA( @nargs=6, @blob="08000000 42476972 6c303100 00000000 000000c2 2c010000 e8030000 02000000", ); wait(@nargs=1, @blob="3c000000"); ret(@blob=""); } void MainSub03b() { stackAlloc(@nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="09000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); wait(@nargs=1, @blob="c8000000"); jmp(@nargs=2, @blob="00040000 00000000"); enmCreateA( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 00000043 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateA( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 00000043 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateA( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 00000043 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303162 00000000 00000043 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateA( @nargs=6, @blob="0c000000 52476972 6c303162 00000000 00000043 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateA( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 00000043 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateAM( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 000000c3 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateAM( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 000000c3 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateAM( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 000000c3 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303162 00000000 000000c3 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateAM( @nargs=6, @blob="0c000000 52476972 6c303162 00000000 000000c3 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateAM( @nargs=6, @blob="0c000000 42476972 6c303162 00000000 000000c3 000000c2 32000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); pushi(@mask=0b1, @nargs=1, @blob="00000000"); pushi(@nargs=1, @blob="03000000"); modi(@blob=""); pushi(@nargs=1, @blob="02000000"); eqi(@blob=""); jmpEq(@nargs=2, @blob="2c000000 00000000"); wait(@nargs=1, @blob="3c000000"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="04fcffff 00000000"); ret(@blob=""); } void MainSub04() { stackAlloc(@nargs=1, @blob="00000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30310000 000020c3 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30310000 00002043 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="14000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30310000 000020c3 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30310000 00002043 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="14000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30310000 000020c3 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30310000 00002043 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30316200 000070c2 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30316200 00007042 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="14000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30316200 000070c2 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30316200 00007042 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="14000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30316200 000070c2 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30316200 00007042 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="78000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30310000 000020c3 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30310000 00002043 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="14000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30310000 000020c3 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30310000 00002043 000000c2 64000000 e8030000 02000000", ); wait(@nargs=1, @blob="14000000"); enmCreateA( @nargs=6, @blob="08000000 42436972 30310000 000020c3 000000c2 64000000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52436972 30310000 00002043 000000c2 64000000 e8030000 02000000", ); ret(@blob=""); } void MainSub05() { stackAlloc(@nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="02000000"); seti(@mask=0b1, @nargs=1, @blob="00000000"); wait(@nargs=1, @blob="58020000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); jmp(@nargs=2, @blob="90050000 00000000"); wait(@nargs=1, @blob="78000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateMF( @nargs=6, @blob="08000000 47436972 30320000 00006043 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); wait(@nargs=1, @blob="78000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); enmCreateF( @nargs=6, @blob="08000000 47436972 30320000 000060c3 00004043 28000000 e8030000 02000000", ); wait(@nargs=1, @blob="0a000000"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="74faffff 00000000"); ret(@blob=""); } void MainSub06() { stackAlloc(@nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303200 000060c3 0000c042 f4010000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303200 00006043 0000c042 f4010000 e8030000 02000000", ); ret(@blob=""); } void MainSub06b() { stackAlloc(@nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00f41bc6"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303200 000060c3 0000c042 f4010000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303200 00006043 0000c042 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="b4000000"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303200 000060c3 00000043 f4010000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303200 00006043 00000043 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="b4000000"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303200 000060c3 0000c042 f4010000 e8030000 02000000", ); enmCreateAM( @nargs=6, @blob="08000000 52476972 6c303200 00006043 0000c042 f4010000 e8030000 02000000", ); wait(@nargs=1, @blob="68010000"); enmCreateA( @nargs=6, @blob="08000000 52476972 6c303300 00000000 000000c2 b80b0000 e8030000 02000000", ); ret(@blob=""); } void MapleEnemy() { stackAlloc(@nargs=1, @blob="04000000"); flagSet(@nargs=1, @blob="20000000"); anmPlayAbs(@nargs=2, @blob="00000000 ad000000"); +3: // 3 jmp(@nargs=2, @blob="e8ffffff 00000000"); delete(@blob=""); } void MapleEnemy2() { stackAlloc(@nargs=1, @blob="04000000"); flagSet(@nargs=1, @blob="20000000"); anmPlayAbs(@nargs=2, @blob="00000000 ac000000"); +3: // 3 jmp(@nargs=2, @blob="e8ffffff 00000000"); delete(@blob=""); } void PCir00() { stackAlloc(@nargs=1, @blob="04000000"); call( @nargs=4, @blob="08000000 43697230 30000000 69690000 5a000000 69690000 30000000 69690000 01000000", ); delete(@blob=""); } void PCir01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 43697230 31000000 69690000 4e000000 69690000 01000000", ); delete(@blob=""); } void PCir01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 43697230 31620000 69690000 4e000000 69690000 01000000", ); delete(@blob=""); } void PCir02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 43697230 32000000 69690000 4e000000 69690000 01000000", ); delete(@blob=""); } void PCir03() { stackAlloc(@nargs=1, @blob="04000000"); call( @nargs=4, @blob="08000000 43697230 33000000 69690000 5a000000 69690000 30000000 69690000 01000000", ); delete(@blob=""); } void PhantomMBoss() { stackAlloc(@nargs=1, @blob="08000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="03000000"); unknown370(@nargs=1, @blob="01000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); wait(@nargs=1, @blob="0c000000"); flagSet(@nargs=1, @blob="40000000"); flagClear(@nargs=1, @blob="03000000"); callAsync(@nargs=1, @blob="10000000 5068616e 746f6d4d 426f7373 5f617400"); moveVel(@mask=0b1, @nargs=2, @blob="00f41bc6 00000000"); moveVelTime(@nargs=4, @blob="3c000000 00000000 f02374c9 cdccccbd"); +400: // 400 delete(@blob=""); ret(@blob=""); } void PhantomMBoss2() { stackAlloc(@nargs=1, @blob="08000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@mask=0b10, @nargs=2, @blob="00000000 00000000"); flagSet(@nargs=1, @blob="03000000"); unknown370(@nargs=1, @blob="01000000"); setHurtbox(@nargs=2, @blob="0000c041 0000c041"); setHitbox(@nargs=2, @blob="00008041 00008041"); wait(@nargs=1, @blob="0c000000"); flagSet(@nargs=1, @blob="40000000"); flagClear(@nargs=1, @blob="03000000"); +400: // 400 nop(@blob=""); unknown369(@nargs=1, @blob="01000000"); +60: // 460 nop(@blob=""); call( @nargs=1, @blob="14000000 5068616e 746f6d4d 426f7373 325f6174 00000000", ); delete(@blob=""); ret(@blob=""); } void PhantomMBoss2_at() { stackAlloc(@nargs=1, @blob="0c000000"); pushf(@mask=0b1, @nargs=1, @blob="00141cc6"); setf(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 01000000"); etSprite(@nargs=3, @blob="00000000 02000000 06000000"); etCountD( @nargs=9, @blob="00000000 03000000 03000000 05000000 06000000 01000000 01000000 01000000 01000000", ); pushf(@mask=0b1, @nargs=1, @blob="00141cc6"); pushf(@mask=0b1, @nargs=1, @blob="00381cc6"); pushi(@nargs=1, @blob="03000000"); divf(@blob=""); addf(@blob=""); etAngle(@mask=0b10, @nargs=3, @blob="00000000 000080bf db0fc93e"); etSpeed(@nargs=3, @blob="00000000 00004040 0000803f"); etSound(@nargs=3, @blob="00000000 07000000 ffffffff"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00008040 610b36bc 610b36bc 610b36bc 610bb6bb", ); etEx( @mask=0b1000000, @nargs=8, @blob="00000000 01000000 00000000 04000000 5a000000 c1bdf0ff 00008040 f02374c9", ); etOn(@nargs=1, @blob="00000000"); ret(@blob=""); } void PhantomMBoss_at() { stackAlloc(@nargs=1, @blob="0c000000"); pushf(@mask=0b1, @nargs=1, @blob="00141cc6"); setf(@mask=0b1, @nargs=1, @blob="00000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@mask=0b100, @nargs=3, @blob="00000000 02000000 ffd8ffff"); etCount(@nargs=3, @blob="00000000 08000000 01000000"); etAngle(@mask=0b100, @nargs=3, @blob="00000000 00000000 00000000"); etSpeed(@nargs=3, @blob="00000000 0000003f 0000803f"); etSound(@nargs=3, @blob="00000000 07000000 ffffffff"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00008040 8988883c 610bb63c 8fc2f53c b4a2113d", ); etEx( @mask=0b1000000, @nargs=8, @blob="00000000 01000000 00000000 04000000 5a000000 c1bdf0ff 00008040 f02374c9", ); etDist(@nargs=2, @blob="00000000 00000042"); diffI( @mask=0b1, @nargs=5, @blob="08000000 03000000 07000000 0c000000 0f000000", ); jmp(@nargs=2, @blob="c8000000 00000000"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00000000 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="73d9a03e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); validRad(@mask=0b1, @nargs=1, @blob="00000000"); etOn(@nargs=1, @blob="00000000"); diffWait(@nargs=4, @blob="5a000000 2d000000 1c000000 0f000000"); deci(@mask=0b1, @nargs=1, @blob="08000000"); jmpNeq(@nargs=2, @blob="3cffffff 00000000"); ret(@blob=""); } void RCir00() { stackAlloc(@nargs=1, @blob="04000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=4, @blob="08000000 43697230 30000000 69690000 51000000 69690000 2e000000 69690000 01000000", ); delete(@blob=""); } void RCir00_at() { stackAlloc(@nargs=1, @blob="0c000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 02000000"); etSprite(@nargs=3, @blob="00000000 02000000 06000000"); etCountD( @nargs=9, @blob="00000000 04000000 04000000 04000000 08000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 5077563d"); etSpeedD( @nargs=9, @blob="00000000 0000803f 0000803f 0000803f 0000803f 0000803f 0000803f 0000803f 0000803f", ); etSound(@nargs=3, @blob="00000000 07000000 ffffffff"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00008040 8988083d 8988083d 8988083d 398e633d", ); etEx( @mask=0b1000000, @nargs=8, @blob="00000000 01000000 00000000 04000000 5a000000 c1bdf0ff 00008040 f02374c9", ); etNew(@nargs=1, @blob="01000000"); etAim(@nargs=2, @blob="01000000 00000000"); etSprite(@nargs=3, @blob="01000000 02000000 06000000"); etCount(@nargs=3, @blob="01000000 03000000 01000000"); etAngle(@nargs=3, @blob="01000000 00000000 db0fc93e"); etSpeed(@nargs=3, @blob="01000000 0000803f 0000803f"); etSound(@nargs=3, @blob="00000000 07000000 ffffffff"); etEx( @nargs=8, @blob="01000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @mask=0b1000000, @nargs=8, @blob="01000000 01000000 00000000 04000000 5a000000 c1bdf0ff 00008040 f02374c9", ); diffI( @mask=0b1, @nargs=5, @blob="08000000 03000000 0a000000 14000000 14000000", ); jmp(@nargs=2, @blob="4c000000 00000000"); etOn(@nargs=1, @blob="00000000"); diffWait(@nargs=4, @blob="3c000000 1e000000 0f000000 0f000000"); deci(@mask=0b1, @nargs=1, @blob="08000000"); jmpNeq(@nargs=2, @blob="b8ffffff 00000000"); ret(@blob=""); } void RCir01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="02000000"); call( @nargs=3, @blob="08000000 43697230 31000000 69690000 45000000 69690000 01000000", ); delete(@blob=""); } void RCir01_at() { stackAlloc(@nargs=1, @blob="0c000000"); diffF( @mask=0b1, @nargs=5, @blob="00008040 0000c040 0000c040 00000041 00000041", ); etEx( @nargs=8, @blob="00000000 00000000 00000000 04000000 3c000000 c1bdf0ff bcbbbbbd f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 00100000 14000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 02000000 00000000 04000000 3c000000 c1bdf0ff abaa2a3d f02374c9", ); etSound(@nargs=3, @blob="00000000 10000000 ffffffff"); diffI( @mask=0b1, @nargs=5, @blob="08000000 0c000000 20000000 34000000 50000000", ); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00000000"); jmp(@nargs=2, @blob="d4020000 00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 02000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 02000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 02000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 02000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 02000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 02000000 00000000 00008040 00000000 00000043 00000044 00004041", ); diffWait(@nargs=4, @blob="0f000000 0a000000 07000000 05000000"); deci(@mask=0b1, @nargs=1, @blob="08000000"); jmpNeq(@nargs=2, @blob="30fdffff 00000000"); ret(@blob=""); } void RCir01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="02000000"); call( @nargs=3, @blob="08000000 43697230 31620000 69690000 45000000 69690000 01000000", ); delete(@blob=""); } void RCir01b_at() { stackAlloc(@nargs=1, @blob="0c000000"); diffF( @mask=0b1, @nargs=5, @blob="00008040 0000c040 0000c040 00000041 00000041", ); etEx( @nargs=8, @blob="00000000 00000000 00000000 04000000 3c000000 c1bdf0ff bcbbbbbd f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 00100000 14000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 02000000 00000000 04000000 3c000000 c1bdf0ff abaa2a3d f02374c9", ); etSound(@nargs=3, @blob="00000000 10000000 ffffffff"); diffI( @mask=0b1, @nargs=5, @blob="08000000 0c000000 20000000 34000000 50000000", ); pushf(@nargs=1, @blob="d80fc93f"); setf(@mask=0b1, @nargs=1, @blob="00000000"); jmp(@nargs=2, @blob="d4020000 00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 06000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 06000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 06000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 06000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 06000000 00000000 00008040 00000000 00000043 00000044 00004041", ); pushf(@mask=0b1, @nargs=1, @blob="00000000"); pushf(@nargs=1, @blob="960a863f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000000"); laserOn3( @mask=0b1100, @nargs=8, @blob="03000000 06000000 00000000 00008040 00000000 00000043 00000044 00004041", ); diffWait(@nargs=4, @blob="0f000000 0a000000 07000000 05000000"); deci(@mask=0b1, @nargs=1, @blob="08000000"); jmpNeq(@nargs=2, @blob="30fdffff 00000000"); ret(@blob=""); } void RCir02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=3, @blob="08000000 43697230 32000000 69690000 45000000 69690000 01000000", ); delete(@blob=""); } void RCir02_at() { stackAlloc(@nargs=1, @blob="08000000"); diffI( @mask=0b1, @nargs=5, @blob="00000000 03000000 08000000 0a000000 0a000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 00000000"); etSprite(@nargs=3, @blob="00000000 0c000000 05000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 01000000 01000000 01000000 01000000 02000000 02000000", ); etAngle(@nargs=3, @blob="00000000 00000000 920a863f"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f 00000040 66668640 66668640 00000040 00000040 00000040 00000040", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); wait(@nargs=1, @blob="1e000000"); diffF( @mask=0b1, @nargs=5, @blob="00008040 00000040 00000040 00008040 00000040", ); jmp(@nargs=2, @blob="a8000000 00000000"); etSpeed(@mask=0b10, @nargs=3, @blob="00000000 00008040 00000040"); pushf(@mask=0b1, @nargs=1, @blob="00008040"); pushf(@nargs=1, @blob="9a99193f"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00008040"); etOn(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="0a000000"); deci(@mask=0b1, @nargs=1, @blob="00000000"); jmpNeq(@nargs=2, @blob="5cffffff 00000000"); ret(@blob=""); } void RCir03() { stackAlloc(@nargs=1, @blob="04000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=4, @blob="08000000 43697230 33000000 69690000 51000000 69690000 2e000000 69690000 01000000", ); delete(@blob=""); } void RCir03_at() { stackAlloc(@nargs=1, @blob="10000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 02000000"); etSprite(@nargs=3, @blob="00000000 02000000 06000000"); etCount(@nargs=3, @blob="00000000 04000000 01000000"); etAngle(@nargs=3, @blob="00000000 00000000 5077563d"); etSpeed(@nargs=3, @blob="00000000 0000803f 0000803f"); etSound(@nargs=3, @blob="00000000 07000000 ffffffff"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 04000000 5a000000 c1bdf0ff 8988083d f02374c9", ); pushi(@nargs=1, @blob="0a000000"); seti(@mask=0b1, @nargs=1, @blob="0c000000"); jmp(@nargs=2, @blob="40000000 00000000"); etOn(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="1e000000"); deci(@mask=0b1, @nargs=1, @blob="0c000000"); jmpNeq(@nargs=2, @blob="c4ffffff 00000000"); ret(@blob=""); } void RGirl00() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="02000000"); call( @nargs=3, @blob="08000000 4769726c 30300000 69690000 28000000 69690000 01000000", ); delete(@blob=""); } void RGirl00_at() { stackAlloc(@nargs=1, @blob="10000000"); diffI( @mask=0b1, @nargs=5, @blob="04000000 04000000 08000000 08000000 0c000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 00000000"); etSprite(@nargs=3, @blob="00000000 06000000 06000000"); etCountD( @nargs=9, @blob="00000000 03000000 03000000 03000000 05000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 920a863f"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f 00000040 cdcc0c40 cdcc0c40 00000040 00000040 00000040 00000040", ); {"34567"}: etAngle(@nargs=3, @blob="00000000 00000000 fac8653f"); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 00100000 28000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00004041 a6922b3c a692ab3b fc0f933b fdad803b", ); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); mulf(@blob=""); pushi(@nargs=1, @blob="02000000"); divf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="01000000"); addi(@blob=""); seti(@mask=0b1, @nargs=1, @blob="04000000"); jmp(@nargs=2, @blob="c4010000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 4260e5bb 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff cdcc4cbd 00000041", ); etOn(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="02000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="5c000000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 0ad723bc 00000041", ); etOn(@nargs=1, @blob="00000000"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="40feffff 00000000"); ret(@blob=""); } void RGirl00b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="02000000"); call( @nargs=3, @blob="08000000 4769726c 30306200 69690000 28000000 69690000 01000000", ); delete(@blob=""); } void RGirl00b_at() { stackAlloc(@nargs=1, @blob="10000000"); diffI( @mask=0b1, @nargs=5, @blob="04000000 04000000 08000000 0a000000 08000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 01000000"); etSprite(@nargs=3, @blob="00000000 06000000 0a000000"); etCountD( @nargs=9, @blob="00000000 03000000 03000000 03000000 06000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 db0fc93f 920a863f"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f 00000040 cdcc0c40 00000040 00000040 00000040 00000040 00000040", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 00100000 28000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00004041 a6922b3c a692ab3b fc0f933b a692ab3b", ); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); mulf(@blob=""); pushi(@nargs=1, @blob="02000000"); divf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="01000000"); addi(@blob=""); seti(@mask=0b1, @nargs=1, @blob="04000000"); jmp(@nargs=2, @blob="30010000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 4260e5bb 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff cdcc4cbd 00000041", ); etOn(@nargs=1, @blob="00000000"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="d4feffff 00000000"); ret(@blob=""); } void RGirl01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=3, @blob="08000000 4769726c 30310000 69690000 05000000 69690000 01000000", ); delete(@blob=""); } void RGirl01_at() { stackAlloc(@nargs=1, @blob="0c000000"); diffI( @mask=0b1, @nargs=5, @blob="04000000 01000000 04000000 0a000000 0c000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 01000000"); etSprite(@nargs=3, @blob="00000000 0c000000 03000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 01000000 01000000 01000000 01000000 02000000 01000000", ); etAngle(@mask=0b10, @nargs=3, @blob="00000000 00141cc6 c2b8b23e"); etSpeedD( @nargs=9, @blob="00000000 0000803f 0000803f 66668640 66668640 00000040 00000040 00000040 00000040", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); wait(@nargs=1, @blob="1e000000"); diffF( @mask=0b1, @nargs=5, @blob="00000041 0000803f 0000803f 00000040 0000803f", ); jmp(@nargs=2, @blob="a8000000 00000000"); etSpeed(@mask=0b10, @nargs=3, @blob="00000000 00000041 0000803f"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="cdcc4c3e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); etOn(@nargs=1, @blob="00000000"); wait(@nargs=1, @blob="0a000000"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="5cffffff 00000000"); ret(@blob=""); } void RGirl01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=3, @blob="08000000 4769726c 30316200 69690000 05000000 69690000 01000000", ); delete(@blob=""); } void RGirl01b_at() { stackAlloc(@nargs=1, @blob="0c000000"); diffI( @mask=0b1, @nargs=5, @blob="04000000 01000000 04000000 0a000000 14000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 00000000"); etSprite(@nargs=3, @blob="00000000 0c000000 03000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 01000000 01000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 920a863f"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f 00004040 66668640 66668640 00000040 00000040 00000040 00000040", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); wait(@nargs=1, @blob="1e000000"); diffF( @mask=0b1, @nargs=5, @blob="00000041 00004040 00004040 00006040 00008040", ); jmp(@nargs=2, @blob="b4000000 00000000"); etSpeed(@mask=0b10, @nargs=3, @blob="00000000 00000041 00000000"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@nargs=1, @blob="cdcc4c3e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); etOn(@nargs=1, @blob="00000000"); diffWait(@nargs=4, @blob="1e000000 1e000000 1e000000 0f000000"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="50ffffff 00000000"); ret(@blob=""); } void RGirl02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="02000000"); call( @nargs=3, @blob="08000000 4769726c 30320000 69690000 28000000 69690000 01000000", ); delete(@blob=""); } void RGirl02_at() { stackAlloc(@nargs=1, @blob="10000000"); diffI( @mask=0b1, @nargs=5, @blob="04000000 04000000 08000000 0a000000 0c000000", ); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 02000000"); etSprite(@nargs=3, @blob="00000000 06000000 04000000"); etCountD( @nargs=9, @blob="00000000 03000000 06000000 06000000 06000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 920a863f"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f 00000040 cdcc0c40 cdcc0c40 00000040 00000040 00000040 00000040", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 00100000 28000000 c1bdf0ff f02374c9 f02374c9", ); diffF( @mask=0b1, @nargs=5, @blob="00004041 a6922b3c a692ab3b fc0f933b fdad803b", ); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); mulf(@blob=""); pushi(@nargs=1, @blob="02000000"); divf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="01000000"); addi(@blob=""); seti(@mask=0b1, @nargs=1, @blob="04000000"); jmp(@nargs=2, @blob="08020000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 4260e5bb 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 426065bc 00000041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff cdcc4cbd 00000041", ); etOn(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="01000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="5c000000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 295c8fbd 00000041", ); etOn(@nargs=1, @blob="00000000"); pushf(@mask=0b1, @nargs=1, @blob="00000041"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00000041"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="fcfdffff 00000000"); ret(@blob=""); } void RGirl03() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="02000000"); call( @nargs=3, @blob="08000000 4769726c 30330000 69690000 28000000 69690000 01000000", ); delete(@blob=""); } void RGirl03_at() { stackAlloc(@nargs=1, @blob="1c000000"); diffI( @mask=0b1, @nargs=5, @blob="04000000 08000000 08000000 08000000 08000000", ); pushi(@nargs=1, @blob="12000000"); seti(@mask=0b1, @nargs=1, @blob="08000000"); etNew(@nargs=1, @blob="00000000"); etAim(@nargs=2, @blob="00000000 03000000"); etSprite(@nargs=3, @blob="00000000 06000000 0a000000"); etCountD( @nargs=9, @blob="00000000 01000000 01000000 01000000 01000000 01000000 01000000 01000000 01000000", ); etAngle(@nargs=3, @blob="00000000 00000000 920a863f"); etSpeedD( @nargs=9, @blob="00000000 cdcccc3f 00000040 cdcc0c40 cdcc0c40 00000040 00000040 00000040 00000040", ); etEx( @nargs=8, @blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9", ); etEx( @nargs=8, @blob="00000000 01000000 00000000 00100000 28000000 c1bdf0ff f02374c9 f02374c9", ); pushf(@nargs=1, @blob="d731e23f"); setf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="e1edaf3f"); setf(@mask=0b1, @nargs=1, @blob="0000c041"); jmp(@nargs=2, @blob="0c070000 00000000"); diffF( @mask=0b1, @nargs=5, @blob="00008041 a6922b3c a692ab3b fc0f933b fdad803b", ); diffI( @mask=0b1, @nargs=5, @blob="04000000 03000000 06000000 08000000 0a000000", ); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); mulf(@blob=""); pushi(@nargs=1, @blob="02000000"); divf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 0000a041 00000000"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="01000000"); addi(@blob=""); seti(@mask=0b1, @nargs=1, @blob="04000000"); jmp(@nargs=2, @blob="c4010000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 00004041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 4260e5bb 00004041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 8fc275bd 00004041", ); etOn(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="01000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="5c000000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 0ad7a3bd 00004041", ); etOn(@nargs=1, @blob="00000000"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="40feffff 00000000"); diffF( @mask=0b1, @nargs=5, @blob="00008041 a6922b3c a692ab3b fc0f933b fdad803b", ); diffI( @mask=0b1, @nargs=5, @blob="04000000 03000000 06000000 08000000 0a000000", ); pushf(@mask=0b1, @nargs=1, @blob="00008041"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); mulf(@blob=""); pushi(@nargs=1, @blob="02000000"); divf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); etAngle(@mask=0b10, @nargs=3, @blob="00000000 0000c041 00000000"); pushi(@mask=0b1, @nargs=1, @blob="04000000"); pushi(@nargs=1, @blob="01000000"); addi(@blob=""); seti(@mask=0b1, @nargs=1, @blob="04000000"); jmp(@nargs=2, @blob="c4010000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 00004041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 4260e5bb 00004041", ); etOn(@nargs=1, @blob="00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 8fc275bd 00004041", ); etOn(@nargs=1, @blob="00000000"); pushi(@mask=0b1, @nargs=1, @blob="19d9ffff"); pushi(@nargs=1, @blob="01000000"); geqi(@blob=""); jmpEq(@nargs=2, @blob="5c000000 00000000"); etEx( @mask=0b10000000, @nargs=8, @blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 0ad7a3bd 00004041", ); etOn(@nargs=1, @blob="00000000"); pushf(@mask=0b1, @nargs=1, @blob="00004041"); pushf(@mask=0b1, @nargs=1, @blob="00008041"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="00004041"); deci(@mask=0b1, @nargs=1, @blob="04000000"); jmpNeq(@nargs=2, @blob="40feffff 00000000"); pushf(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@nargs=1, @blob="850a863e"); addf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000a041"); validRad(@mask=0b1, @nargs=1, @blob="0000a041"); pushf(@mask=0b1, @nargs=1, @blob="0000c041"); pushf(@nargs=1, @blob="850a863e"); subf(@blob=""); setf(@mask=0b1, @nargs=1, @blob="0000c041"); validRad(@mask=0b1, @nargs=1, @blob="0000c041"); wait(@nargs=1, @blob="0a000000"); deci(@mask=0b1, @nargs=1, @blob="08000000"); jmpNeq(@nargs=2, @blob="f8f8ffff 00000000"); ret(@blob=""); } void RPhantomMBoss() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 00000000 69690000 5e000000 69690000 01000000", ); delete(@blob=""); } void RPhantomMBoss2() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 2e000000"); dropMain(@nargs=1, @blob="01000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 32000000 69690000 5e000000 69690000 01000000", ); delete(@blob=""); } void YGirl00() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 4769726c 30300000 69690000 0f000000 69690000 01000000", ); delete(@blob=""); } void YGirl00b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 4769726c 30306200 69690000 0f000000 69690000 01000000", ); delete(@blob=""); } void YGirl01() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 4769726c 30310000 69690000 0f000000 69690000 01000000", ); delete(@blob=""); } void YGirl01b() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 4769726c 30316200 69690000 0f000000 69690000 01000000", ); delete(@blob=""); } void YGirl02() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 4769726c 30320000 69690000 0f000000 69690000 01000000", ); delete(@blob=""); } void YGirl03() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="08000000 4769726c 30330000 69690000 0f000000 69690000 01000000", ); delete(@blob=""); } void YPhantomMBoss() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 00000000 69690000 64000000 69690000 01000000", ); delete(@blob=""); } void YPhantomMBoss2() { stackAlloc(@nargs=1, @blob="04000000"); anmSelect(@nargs=1, @blob="01000000"); dropMain(@nargs=1, @blob="02000000"); anmSetSprite(@nargs=2, @blob="01000000 30000000"); call( @nargs=3, @blob="10000000 5068616e 746f6d4d 426f7373 32000000 69690000 64000000 69690000 01000000", ); delete(@blob=""); } void main() { stackAlloc(@nargs=1, @blob="0c000000"); flagSet(@nargs=1, @blob="20000000"); wait(@nargs=1, @blob="3c000000"); wait(@nargs=1, @blob="8c000000"); playSound(@nargs=1, @blob="35000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 30000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 31000000"); wait(@nargs=1, @blob="4c040000"); callAsync(@nargs=1, @blob="0c000000 4d61696e 53756230 33000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 32000000"); wait(@nargs=1, @blob="be000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 34000000"); wait(@nargs=1, @blob="78000000"); playSound(@nargs=1, @blob="35000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 30620000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 31620000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 35000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 36000000"); wait(@nargs=1, @blob="04010000"); callAsync(@nargs=1, @blob="0c000000 4d61696e 53756230 33620000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 32620000"); wait(@nargs=1, @blob="be000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 34000000"); wait(@nargs=1, @blob="b4000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 36620000"); wait(@nargs=1, @blob="58020000"); dialogRead(@nargs=1, @blob="00000000"); dialogWait(@blob=""); enmCreateA( @nargs=6, @blob="08000000 426f7373 00000000 000058c3 00008042 28000000 e8030000 01000000", ); deathWait(@blob=""); dialogRead(@nargs=1, @blob="01000000"); dialogWait(@blob=""); jmp(@nargs=2, @blob="2c000000 00000000"); wait(@nargs=1, @blob="e8030000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="d8ffffff 00000000"); jmp(@nargs=2, @blob="2c000000 00000000"); wait(@nargs=1, @blob="e8030000"); pushi(@nargs=1, @blob="01000000"); jmpNeq(@nargs=2, @blob="d8ffffff 00000000"); wait(@nargs=1, @blob="78000000"); callAsync(@nargs=1, @blob="0c000000 4d61696e 53756230 32000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 33000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 34000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 35000000"); call(@nargs=1, @blob="0c000000 4d61696e 53756230 36000000"); wait(@nargs=1, @blob="b4000000"); dialogRead(@nargs=1, @blob="00000000"); dialogWait(@blob=""); deathWait(@blob=""); +40000: // 40000 nop(@blob=""); delete(@blob=""); }