- Версия MoonLoader
- Другое
здравствуйте. у меня есть hex код 58 00 06 80 что означает, что джамп будет через 6 опкодов.
вод опкоды:
как вручную писать смещение, если мне нужно прыгнуть, например, через 500 опкодов? я правильно понял? 2 байт - размер шага, 3 байт - кол-во шагов.
и как прыгать назад?
в luajit в качестве второго и третьего байта указывается смещениена кол-во опкодов, а итоговое смещение равно сумме второго и третьего байта. вопрос закрыт
вод опкоды:
Код:
000270C0: 0074 0E:IST 0
[ДЖАМП] 000270C4: 0078 58:JMP 0 => 0094
000270C8: 007C 36:GGET 0 7 ; "thisScript"
000270CC: 0080 42:CALL 0 2 1
000270D0: 0084 12:MOV 1 0
000270D4: 0088 39:TGETS 0 0 8 ; "unload"
000270D8: 008C 42:CALL 0 1 2
000270DC: 0090 32:UCLO 0 => 050C
[СЮДА ПРЫЖОК] 000270E0: 0094 => 36:GGET 0 9 ; "refresssssssss"
000270E4: 0098 42:CALL 0 1 1
000270E8: 009C 33:FNEW 0 10 ; palatka.luac:0
000270EC: 00A0 37:GSET 0 11 ; "run_scr"
000270F0: 00A4 36:GGET 0 12 ; "sampRegisterChatCommand"
000270F4: 00A8 36:GGET 1 13 ; "MAIN_CMD"
000270F8: 00AC 36:GGET 2 11 ; "run_scr"
000270FC: 00B0 42:CALL 0 1 3
00027100: 00B4 36:GGET 0 12 ; "sampRegisterChatCommand"
00027104: 00B8 27:KSTR 1 14 ; "tstsl"
00027108: 00BC 33:FNEW 2 15 ; script.luac:0
как вручную писать смещение, если мне нужно прыгнуть, например, через 500 опкодов? я правильно понял? 2 байт - размер шага, 3 байт - кол-во шагов.
и как прыгать назад?
в luajit в качестве второго и третьего байта указывается смещениена кол-во опкодов, а итоговое смещение равно сумме второго и третьего байта. вопрос закрыт
Последнее редактирование: