Uno mas

  • Offsets Base: W995 R1HA035
  • Portado: W595 R3EF001

Código:
include "x.inc"
include "W595_R3EF001.lib.asm"


;W595 SW-R3EF001
;Reemplaza el limite de tiempo de la alarma
;Ir a: Señal de alarma > Presionar la opcion "Ajustes"
;Añadida info. sobre el parche
;v.1.1
;(c) Laura_P
;(e) HotRabbit (Mobilefree.Ru)
;(p) DaRkMaN
;Idea original por Demion


org 0x1177CBD2 ;0x14338C3C
_14338C3C:

        LSL    R1, R5,    0
        NOP







org 0x1177CBE6 ;0x14338C50
_14338C50:

        LSL    R1, R5,    0
        NOP







org 0x109346E2 ;0x1523E5D6
_1523E5D6:

        LDR    R3, off_1523E5DC
        BX    R3

        align 4
off_1523E5DC    dw loc_15E73640+1    







org 0x1092EAF4 ;0x15239CC6 
_15239CC6:

        LDR    R3, off_15239CCC
        BX    R3

        align 4
off_15239CCC    dw loc_15E73674+1    










org 0x127A2B30 ;0x15E73640
loc_15E73640:                
                    
        LDR    R2, off_15E73664
        LDR    R1, dword_15E73668
        LDR    R0, [R4,0x18]
        BL    sub_15E7396C
        adr    R2, loc_15E736C4
        ADD    R2, 1
        MOV    R1, 0
        LDR    R0, [R4,0x18]
        BL    sub_15E7396C
        LDR    R2, dword_15E7366C
        MOV    R1, 0
        LDR    R0, [R4,0x18]
        BL    sub_15E73974
        LDR    R3, off_15E73670
        BX    R3

off_15E73664    dw 0x10932F68+1 ;0x1523CC84+1    
dword_15E73668    dw 0xFAF        
dword_15E7366C    dw 0x336 ;0x2FA        
off_15E73670    dw 0x109346EC+1 ;0x1523E5E0+1    


loc_15E73674:                
                    
        BL    sub_15E73808
        CMP    R1, 1
        BEQ    loc_15E73694
        CMP    R1, 2
        BEQ    loc_15E73698
        CMP    R1, 3
        BEQ    loc_15E7369C
        CMP    R1, 4
        BEQ    loc_15E736A0
        CMP    R1, 5
        BEQ    loc_15E736A4
        CMP    R1, 6
        BEQ    loc_15E736A8
        LDR    R1, dword_15E73894
        B    loc_15E736AA


loc_15E73694:                
        LDR    R1, dword_15E73898
        B    loc_15E736AA


loc_15E73698:                
        LDR    R1, dword_15E7389C
        B    loc_15E736AA


loc_15E7369C:                
        LDR    R1, dword_15E738A0
        B    loc_15E736AA


loc_15E736A0:                
        LDR    R1, dword_15E738A4
        B    loc_15E736AA


loc_15E736A4:                
        LDR    R1, dword_15E738A8
        B    loc_15E736AA


loc_15E736A8:                
        LDR    R1, dword_15E738AC

loc_15E736AA:                
                    
        LDR    R0, [R5]
        LDR    R3, off_15E736C0
        BLX    R3
        LDR    R1, off_15E736B8
        LDR    R3, off_15E736BC
        BX    R3

        align 4
off_15E736B8    dw 0x1092F34C+1 ;0x1523A470+1    
off_15E736BC    dw 0x1092EAFE+1 ;0x15239CD0+1    
off_15E736C0    dw 0x1177D6E8+1 ;0x14FDEE38+1    


loc_15E736C4:                
        PUSH    {LR}
        LDR    R1, off_15E736D0
        BL    sub_15E73984
        POP    {PC}

        align 4
off_15E736D0    dw off_15E736E4    
dword_15E736D4    dw 0xF            
        dw loc_15E73710+1
        db    0
        db    0
        db    0
        db    0
        db    0
        db    0
        db    0
        db    0
off_15E736E4    dw aIndicate_alarm    
                    
        db    0
        db    0
        db    0
        db    0
        dw dword_15E736D4
aIndicate_alarm    db "INDICATE_ALARM_SET_TIME_PAGE",0 
        db    0
        align 4


loc_15E73710:                
        PUSH    {R4-R7,LR}
        ADD    R4, R1,    0
        ADD    R0, R4,    0
        BL    sub_15E739BC
        STR    R0, [R4,0x1C]
        adr    R0, aAlarmsTimeLimi 
        MOV    R1, 0
        MOV    R2, 0xFF
        BL    sub_15E73964
        ADD    R1, R0,    0
        LDR    R0, [R4,0x1C]
        BL    sub_15E739B4
        LDR    R0, [R4,0x1C]
        MOV    R1, 9
        BL    sub_15E739E4
        LDR    R0, [R4,0x1C]
        MOV    R1, 7
        BL    sub_15E739AC
        BL    sub_15E73808
        LDR    R0, [R4,0x1C]
        BL    sub_15E739A4
        LDR    R0, [R4,0x1C]
        LDR    R1, off_15E737A4
        MOV    R2, 7
        BL    sub_15E7399C
        LDR    R0, [R4,0x1C]
        BL    sub_15E73994
        LDR    R0, [R4,0x1C]
        adr    R2, loc_15E737CC
        ADD    R2, 1
        LDR    R1, dword_15E73798
        BL    sub_15E7396C
        LDR    R0, [R4,0x1C]
        LDR    R1, dword_15E7379C
        adr    R2, loc_15E73858
        ADD    R2, 1
        BL    sub_15E7396C
        LDR    R0, [R4,0x1C]
        MOVL    R1, 0xFC0
        adr    R2, sub_15E73864
        ADD    R2, 1
        BL    sub_15E7396C
        LDR    R0, [R4,0x1C]
        MOV    R1, 0
        adr    R2, loc_15E738B0
        ADD    R2, 1
        BL    sub_15E7396C
        LDR    R0, [R4,0x1C]
        MOV    R1, 0
        LDR    R2, dword_15E737A0
        BL    sub_15E73974
        POP    {R4-R7,PC}

        align 4
dword_15E73798    dw 0xFC2        
dword_15E7379C    dw 0xFAF        
dword_15E737A0    dw 0x19CA ;0x16E9        
off_15E737A4    dw dword_15E73878    
aAlarmsTimeLimi    du "Alarms time limit",0 


loc_15E737CC:                
        PUSH    {R0-R7,LR}
        ADD    R4, R0,    0
        ADD    R0, R1,    0
        BL    sub_15E7398C
        SUB    SP, SP,    4
        STR    R0, [SP]
        MOV    R0, 0
        PUSH    {R0}
        MOV    R3, 0xFF
        ADD    R3, 0x81
        MOV    R2, 2
        adr    R1, aAlarm_time_bin 
        LDR    R0, dword_15E73834
        BL    sub_15E739C4
        ADD    SP, SP,    4
        ADD    R5, R0,    0
        MOV    R2, 4
        MOV    R1, SP
        BL    sub_15E739D4
        ADD    R0, R5,    0
        BL    sub_15E739CC
        ADD    SP, SP,    4
        ADD    R0, R4,    0
        BL    sub_15E73864
        POP    {R0-R7,PC}




sub_15E73808:                
                    

var_24        = -0x24

        PUSH    {R0,R2-R7,LR}
        MOV    R0, 0
        PUSH    {R0}
        MOV    R3, 0xFF
        ADD    R3, 0x81
        MOV    R2, 1
        adr    R1, aAlarm_time_bin 
        LDR    R0, dword_15E73834
        BL    sub_15E739C4
        ADD    R5, R0,    0
        MOV    R2, 4
        MOV    R1, SP
        BL    sub_15E739DC
        ADD    R0, R5,    0
        BL    sub_15E739CC
        LDR    R1, [SP,0x24+var_24]
        ADD    SP, SP,    4
        POP    {R0,R2-R7,PC}



        align 4
dword_15E73834    dw 0x11DA40C8 ;0x15BA72B8        
                    
aAlarm_time_bin    du "alarm_time.bin",0 
                    
        align 4


loc_15E73858:                
        PUSH    {LR}
        LDR    R0, dword_15E73870
        BL    sub_15E7397C
        POP    {PC}

        align 4




sub_15E73864:                
                    
        PUSH    {LR}
        LDR    R1, off_15E73874
        BL    sub_15E73984
        POP    {PC}



        align 4
dword_15E73870    dw 0x840        
off_15E73874    dw 0x11B1EC9C ;0x159F1528    
dword_15E73878    dw 0x32FA ;0x17AE        
        dw 0x32FB ;0x17A9
        dw 0x32FC ;0x17AF
        dw 0x32FD ;0x18FB
        dw 0x32FE ;0x18FC
        dw 0x32FF ;0x18FD
        dw 0x3300 ;0x17AD
dword_15E73894    dw 0x3A98        
dword_15E73898    dw 0x7530        
dword_15E7389C    dw 0xAFC8        
dword_15E738A0    dw 0xEA60        
dword_15E738A4    dw 0x15F90        
dword_15E738A8    dw 0x1D4C0        
dword_15E738AC    dw 0xFFFFFFFF        


loc_15E738B0:                
        PUSH    {R4,LR}
        adr    R0, aReplaceAlarmsT 
        LDR    R2, dword_15E738D8
        MOV    R1, 0
        BL    sub_15E73964
        ADD    R4, R0,    0
        MOV    R0, 0
        MOV    R1, 0
        PUSH    {R0,R1}
        MOV    R3, 1
        ADD    R1, R4,    0
        ADD    R0, R4,    0
        LDR    R2, dword_15E738D4
        BL    sub_15E739EC
        ADD    SP, SP,    8
        POP    {R4,PC}

dword_15E738D4    dw 0xFFFF        
dword_15E738D8    dw 0x6FFFFFFF        
aReplaceAlarmsT    du "Replace alarms time limit" 
        DCB 0xA,0
        du "v.1.1"
        DCB 0xA,0
        du "(c) Laura_P"
        DCB 0xA,0
        du "(e) HotRabbit"
        DCB 0xA,0
        du "(p) DaRkMaN",0
        align 4




sub_15E73964:                
                    
        LDR    R3, off_15E73968
        BX    R3



off_15E73968    dw 0x10F61E3C+1 ;0x142D8380+1     ;Str2ID




sub_15E7396C:                
                    
        LDR    R3, off_15E73970
        BX    R3        



off_15E73970    dw GUIObject_SoftKeys_SetAction+1 
                    




sub_15E73974:                
                    
        LDR    R3, off_15E73978
        BX    R3        



off_15E73978    dw GUIObject_SoftKeys_SetText+1 
                    




sub_15E7397C:                
        LDR    R3, off_15E73980
        BX    R3        



off_15E73980    dw UI_Event+1        
                    




sub_15E73984:                
                    
        LDR    R3, off_15E73988
        BX    R3        



off_15E73988    dw BookObj_GotoPage+1    
                    




sub_15E7398C:                



        LDR    R3, off_15E73990
        BX    R3        



off_15E73990    dw OneOfMany_GetSelected+1 
                    




sub_15E73994:                
        LDR    R3, off_15E73998
        BX    R3        



off_15E73998    dw GUIObject_Show+1    
                    




sub_15E7399C:                
        LDR    R3, off_15E739A0
        BX    R3        



off_15E739A0    dw OneOfMany_SetTexts+1 
                    




sub_15E739A4:                
        LDR    R3, off_15E739A8
        BX    R3        



off_15E739A8    dw OneOfMany_SetChecked+1 
                    




sub_15E739AC:                



        LDR    R3, off_15E739B0
        BX    R3        



off_15E739B0    dw OneOfMany_SetItemCount+1 
                    




sub_15E739B4:                
        LDR    R3, off_15E739B8
        BX    R3        



off_15E739B8    dw GUIObject_SetTitleText+1 
                    




sub_15E739BC:                
        LDR    R3, off_15E739C0
        BX    R3        



off_15E739C0    dw CreateOneOfMany+1    
                    




sub_15E739C4:                
                    
        LDR    R6, off_15E739C8
        BX    R6        



off_15E739C8    dw _fopen+1        
                    




sub_15E739CC:                
                    

var_C        = -0xC



        LDR    R3, off_15E739D0
        BX    R3        



off_15E739D0    dw fclose+1        
                    




sub_15E739D4:                
        LDR    R3, off_15E739D8
        BX    R3        



off_15E739D8    dw fwrite+1        
                    




sub_15E739DC:                
        LDR    R3, off_15E739E0
        BX    R3        



off_15E739E0    dw fread+1        
                    




sub_15E739E4:                
        LDR    R3, off_15E739E8
        BX    R3        



off_15E739E8    dw GUIObject_SetStyle+1 
                    




sub_15E739EC:                

arg_4        =  4



        LDR    R3, off_15E739F0
        BX    R3        



off_15E739F0    dw MessageBox+1
Saludos ..