Código:
include "x.inc"
Patch equ 0x456B55B0
dir 1 equ 0x456B5614
dir 2 equ 0x456B5618
dir 3 equ 0x4C022B40
org 0x456B55B0
:loc_456B55B0
LDR R0, [R4,0x30]
LDR R1, loc_456B5610
PUSH {R0-R7,LR}
LDR R7, dword_456B560C
LDRB R6, [R7,1]
CMP R6, 1
BEQ loc_456B55C6
MOV R1, 1
STRB R1, [R7,1]
BL sub_456B55C8
:loc_456B55C6
POP {R0-R7,PC}
:sub_456B55C8
PUSH {R0-R7,LR}
LDR R7, dword_456B560C
LDRB R6, [R7]
CMP R6, 1
BEQ loc_456B55E2
MOV R0, 0x1E
BL sub_455F2464
MOV R0, 0x32
LDR R1, off_456B5614
BL sub_4564C288
POP {R0-R7,PC}
:loc_456B55E2
MOV R6, 0
STRB R6, [R7]
STRB R6, [R7,1]
POP {R0-R7,PC}
DCB 0xFF
unk_456B55EB DCB 0xB5
DCB 0x3C
DCB 0xF7
DCB 0x46
DCB 0xFF
MOV R0, 0x32
LDR R1, off_456B5618
BL sub_4564C288
POP {R0-R7,PC}
:loc_456B55FA
ADD R4, 0x4C
LDRB R0, [R4,3]
PUSH {R0-R7,LR}
LDR R7, dword_456B560C
LDRB R6, [R7,1]
CMP R6, 1
BNE loc_456B560A
STRB R6, [R7]
:loc_456B560A
POP {R0-R7,PC}
dword_456B560C DCD 0x4C022B40
:loc_456B5610
LDR R1, [R0,0x28]
CMP R0, R4
PD: Fijate si no es mucho pedir y si no te interrumpo, si los dir 1, dir 2 y dir 3 estan bien, entiendo que estos son las direcciones que sobresalen de los offset, que no se encuentran dentro del rango y que patch es donde empieza el parche. Otra duda que tenia que son los unk_xxxxx y si tambien debo ponerlos con : y otra duda donde debo poner los valores de dir 1, dir 2 y dir 3. Muchas Gracias.
Marcadores