Código:
include "x.inc"
addr1 = 0x456B603F
addr2 = 0x456B5D67
addr3 = 0x456B5FC9
addr4 = 0x456B6015
addr5 = 0x456B5E01
addr6 = 0x456B6053
addr7 = 0x456B6071
addr8 = 0x456B6089
addr9 = 0x456B60A7
addr10 = 0x456B60C1
addr11 = 0x456B60DF
addr12 = 0x456B60F9
addr13 = 0x456B6117
addr14 = 0x456B6131
addr15 = 0x456B614F
addr16 = 0x444D8348
addr17 = 0x456B5E70+1
addr18 = 0x1200
addr19 = 0x456B5D1C+1
patch = ckspin_p
;
; +-------------------------------------------------------------------------+
; | This file is generated by The Interactive Disassembler (IDA) |
; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> |
; | Licensed to: GVU, Gerhard Uphoff, 1 user, adv, 10/2007 |
; +-------------------------------------------------------------------------+
;
; ---------------------------------------------------------------------------
code16
push {LR}
ldr R1, addr16
bl sub_45664EC4
pop {PC}
;------ Ôóí-èÿ ----
align 4
sub_456B5C9A:
push {R0-R7,LR}
add R4, R0, 0
ldr R0, [R0,0x30]
bl sub_454547E0
add R0, R4, 0
bl sub_45663DB8
pop {R0-R7,PC}
; End of function sub_456B5C9A
; ---------------------------------------------------------------------------
align 4
loc_456B5CAC:
push {R0-R7,LR}
sub SP, SP, 0x50
add R7, R0, 0
ldr R0, [R7,0x1C]
add R1, SP, 4
bl sub_4564891C
mov R1, SP
str R0, [R1]
ldr R4, [R7,0x30]
ldr R2, [R4]
cmp R2, R0
bne loc_456B5CDE
add R1, SP, 4
add R0, R4, 0
add R0, R0, 4
align 4
loc_456B5CCC:
cmp R2, 0
beq loc_456B5D12
sub R2, R2, 1
lsl R3, R2, 1
ldrh R4, [R0,R3]
ldrh R5, [R1,R3]
cmp R4, R5
bne loc_456B5CDE
b loc_456B5CCC
; ---------------------------------------------------------------------------
align 4
loc_456B5CDE:
add R0, SP, 0x20
mov R1, 0
strh R1, [R0]
adr R1, aTpaSettings ; "/tpa/settings/"
bl sub_4563B5FC
adr R1, aPasw_dat ; "pasw.dat"
add R0, SP, 0x20
bl sub_4563B5FC
adr R1, dword_456B5F70
add R0, SP, 0x20
bl sub_456B5E72
add R4, R0, 0
mov R0, SP
ldr R1, [R0]
add R1, R1, 2
lsl R1, R1, 2
mov R2, 1
add R3, R4, 0
bl sub_456B5E7A
add R0, R4, 0
bl sub_456B5E7E
align 4
loc_456B5D12:
add R0, R7, 0
bl sub_456B5C9A
add SP, SP, 0x50
pop {R0-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B5D1C:
push {R4,LR}
add R4, R0, 0
bl sub_4564A7E0
cmp R0, 1
bne loc_456B5D3A
add R0, R4, 0
bl sub_4564A7E8
adr R1, loc_456B5D3C
lsl R0, R0, 1
ldrh R1, [R1,R0]
add R0, R4, 0
bl sub_4564A7F0
align 4
loc_456B5D3A:
pop {R4,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B5D3C:
lsl R7, R4, 0xD
lsl R3, R0, 0x1D
lsr R6, R2, 0xB
lsr R0, R7, 0xC
;------ Ôóí-èÿ ----
align 4
sub_456B5D44:
push {R0-R7,LR}
mov R2, 5
mov R1, 1
mov R0, 0x40
bl sub_45453AA8
add R7, R0, 0
adr R3, aPasswordbook ; "PasswordBook"
mov R2, 0
ldr R1, addr17
bl sub_45663DA0
add R0, R7, 0
adr R1, _aUserlockspin_p
bl sub_45664EC4
pop {R0-R7,PC}
; End of function sub_456B5D44
; ---------------------------------------------------------------------------
push {R0-R7,LR}
sub SP, SP, 0x70
add R7, R1, 0
mov R0, 0x20
mov R2, 5
mov R1, 1
bl sub_45453AA8
str R0, [R7,0x30]
add R0, SP, 0x10
mov R1, 0
strh R1, [R0]
adr R1, aTpaSettings ; "/tpa/settings/"
bl sub_4563B5FC
adr R1, aPasw_dat ; "pasw.dat"
add R0, SP, 0x10
bl sub_4563B5FC
adr R1, dword_456B5F6C
add R0, SP, 0x10
bl sub_456B5E72
add R4, R0, 0
beq loc_456B5DAC
ldr R1, [SP,8]
mov R2, 1
add R3, R4, 0
ldr R0, [R7,0x30]
bl sub_456B5E76
add R0, R4, 0
bl sub_456B5E7E
b loc_456B5DB0
; ---------------------------------------------------------------------------
align 4
loc_456B5DAC:
ldr R1, [R7,0x30]
str R0, [R1]
align 4
loc_456B5DB0:
add R0, R7, 0
bl sub_456488E4
str R0, [R7,0x1C]
ldr R1, addr18
bl sub_4564A780
mov R1, 4
ldr R0, [R7,0x1C]
bl sub_454D9974
mov R1, 0
ldr R0, [R7,0x1C]
bl sub_456488FC
ldr R1, [R7,0x30]
ldr R2, [R1]
add R1, R1, 4
ldr R0, [R7,0x1C]
bl sub_456488F4
ldr R1, addr19
ldr R0, [R7,0x1C]
bl sub_454D997C
ldr R0, [R7,0x1C]
bl sub_4564A758
ldr R2, loc_456B5CAC+1
ldr R1, 0xFAC
ldr R0, [R7,0x1C]
bl sub_4564C5A4
ldr R2, sub_456B5C9A+1
ldr R1, 0xFC0
ldr R0, [R7,0x1C]
bl sub_4564C5A4
add SP, SP, 0x70
pop {R0-R7,PC}
; ---------------------------------------------------------------------------
push {R4-R7,LR}
add R4, R1, 0
add R0, R4, 0
bl sub_4564A770
str R0, [R4,0x18]
ldr R1, 0x26C
bl sub_4564A780
mov R1, 2
ldr R0, [R4,0x18]
bl sub_4564A788
mov R1, 0
ldr R0, [R4,0x18]
bl sub_4564A7D0
mov R2, 2
adr R1, dword_456B5F2C
ldr R0, [R4,0x18]
bl sub_456488B4
ldr R0, [R4,0x18]
bl sub_4564A758
ldr R2, unk_45411635
ldr R1, 0xFC0
ldr R0, [R4,0x18]
bl sub_4564C5A4
ldr R2, loc_456B5E52+1
ldr R1, 0xFC2
ldr R0, [R4,0x18]
bl sub_4564C5A4
ldr R2, unk_4541163D
ldr R1, 0xFAF
ldr R0, [R4,0x18]
bl sub_4564C5A4
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B5E52:
push {R4,R5,LR}
add R4, R0, 0
ldr R0, [R4,0x18]
bl sub_4564893C
cmp R0, 0
beq loc_456B5E66
bl sub_456B5D44
b loc_456B5E6E
; ---------------------------------------------------------------------------
align 4
loc_456B5E66:
add R0, R4, 0
adr R1, _aUilocks_phonel
bl sub_45664EC4
align 4
loc_456B5E6E:
pop {R4,R5,PC}
; ---------------------------------------------------------------------------
locret_456B5E70:
bx LR
;------ Ôóí-èÿ ----
align 4
sub_456B5E72:
; FUNCTION CHUNK AT 4510A668 SIZE 00000056 BYTES
ldr R6, loc_4510A668+1
bx R6
; End of function sub_456B5E72
;------ Ôóí-èÿ ----
align 4
sub_456B5E76:
ldr R6, sub_4510A148+1
bx R6
; End of function sub_456B5E76
;------ Ôóí-èÿ ----
align 4
sub_456B5E7A:
ldr R6, sub_4510A248+1
bx R6
; End of function sub_456B5E7A
;------ Ôóí-èÿ ----
align 4
sub_456B5E7E:
ldr R6, sub_45109EFC+1
bx R6
; End of function sub_456B5E7E
;------ Ôóí-èÿ ----
align 4
sub_456B5E82:
push {R1-R7,LR}
add R7, R0, 0
sub SP, SP, 0x70
add R2, SP, 0x90+var_80
adr R1, aPasw_dat ; "pasw.dat"
adr R0, aTpaSettings ; "/tpa/settings/"
bl sub_455B4ADC
add R0, SP, 0x90+var_70
mov R1, 0
strh R1, [R0]
adr R1, aTpaSettings ; "/tpa/settings/"
bl sub_4563B5FC
adr R1, aPasw_dat ; "pasw.dat"
add R0, SP, 0x90+var_70
bl sub_4563B5FC
adr R1, dword_456B5F6C
add R0, SP, 0x90+var_70
bl sub_456B5E72
add R4, R0, 0
add R1, SP, 0x90+var_78
mov R2, 1
add R3, R4, 0
mov R0, SP
bl sub_456B5E76
add R0, R4, 0
bl sub_456B5E7E
add R2, SP, 0x90+var_90
cmp R2, 0
beq loc_456B5ED8
add R6, SP, 0x90+var_8C
align 4
loc_456B5ECA:
sub R2, R2, 1
lsl R0, R2, 1
ldrh R1, [R6,R0]
cmp R1, R7
beq loc_456B5EDE
cmp R2, 0
bne loc_456B5ECA
align 4
loc_456B5ED8:
mov R0, 0
add SP, SP, 0x70
pop {R1-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B5EDE:
mov R0, 1
add SP, SP, 0x70
pop {R1-R7,PC}
; End of function sub_456B5E82
; ---------------------------------------------------------------------------
align 4
off_444D8348 dw off_444D8348
dw 0x7B2
off_456B5EEC dw loc_4510A668+1
off_456B5EF0 dw sub_4510A148+1
off_456B5EF4 dw sub_4510A248+1
off_456B5EF8 dw sub_45109EFC+1
off_456B5EFC dw locret_456B5E70+1
off_456B5F00 dw addr19
off_456B5F04 dw loc_456B5CAC+1
dword_456B5F08 dw 0xFAC
off_456B5F0C dw sub_456B5C9A+1
_unk_45411635 dw unk_45411635
dword_456B5F14 dw 0xFC2
off_456B5F18 dw loc_456B5E52+1
dword_456B5F1C dw 0xFAF
_unk_4541163D dw unk_4541163D
dword_456B5F24 dw 0xFC0
dword_456B5F28 dw 0x26C
dword_456B5F2C dw 0x4EC
align 4
dword_456B5F30 dw addr18
_aUilocks_phonel dw aUilocks_phonel
align 4
dw 0
dw unk_444D8520
_aUserlockspin_p dw aUserlockspin_p
ALIGN 8
align 4
dw _5
_5 dw 5
dw addr1
dw 0xF
dw addr2
dw 0x10
dw unk_4541164D
dw 0
dw 0
dword_456B5F6C dw 0x6272
align 4
dword_456B5F70 dw 0x6277
align 4
aPasswordbook db "PasswordBook",0
db 0, 0, 0
align 4
aTpaSettings unicode 0, </tpa/settings/>,0
ALIGN 4
aPasw_dat unicode 0, <pasw.dat>,0
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_455275F0
align 4
loc_456B5FB6:
ldr R5, aUiLocksErrorDC
ldrb R6, [R2]
push {R0-R7,LR}
cmp R6, 0xA
bne loc_456B5FC6
add R1, R4, 0
bl sub_456B5FC8
align 4
loc_456B5FC6:
pop {R0-R7,PC}
; END OF FUNCTION CHUNK FOR sub_455275F0
;------ Ôóí-èÿ ----
align 4
sub_456B5FC8:
push {R4-R7,LR}
add R4, R1, 0
mov R1, 0x22
mov R0, 4
strb R0, [R4,R1]
ldr R0, loc_456B5FE6+1
push {R0}
mov R3, 8
ldr R2, 0x315
ldr R1, 0xF98
add R0, R4, 0
bl sub_456B6168
mov R0, 1
pop {R3-R7,PC}
; End of function sub_456B5FC8
; ---------------------------------------------------------------------------
align 4
loc_456B5FE6:
push {R4-R7,LR}
add R4, R0, 0
add R6, R1, 0
ldr R0, [R4,0x44]
mov R1, 2
add R2, R6, 0
ldr R3, [R0]
ldr R3, [R3,0x28]
blx R3
cmp R0, 0
bmi loc_456B600A
add R0, R4, 0
bl sub_45663DB8
mov R0, 0xF
bl sub_4564C298
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B600A:
add R0, R4, 0
adr R1, _aWrongpasword_p
bl sub_45664EC4
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
push {R4-R7,LR}
add R4, R1, 0
mov R0, 6
bl sub_4553D330
mov R1, 0
add R0, R4, 0
bl sub_4553B950
str R0, [R4,0x18]
mov R3, 1
ldr R2, loc_456B6034+1
ldr R1, 0x178A
bl sub_456B616C
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B6034:
push {LR}
adr R1, _aUserlocks_page
bl sub_45664EC4
pop {PC}
;------ Ôóí-èÿ ----
align 4
sub_456B603E:
push {R4-R7,LR}
bl sub_4564B3C0
mov R3, 0x10
mov R2, 2
mov R1, 0xA
bl sub_455275F0
mov R0, 1
pop {R4-R7,PC}
; End of function sub_456B603E
; ---------------------------------------------------------------------------
push {R4-R7,LR}
add R4, R1, 0
mov R0, 0
bl sub_456B5E82
cmp R0, 0
beq loc_456B6068
add R0, R4, 0
bl sub_456B603E
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B6068:
add R1, R4, 0
bl sub_456B6070
pop {R4-R7,PC}
;------ Ôóí-èÿ ----
align 4
sub_456B6070:
push {R4-R7,LR}
add R0, R1, 0
adr R1, _aDatabrowsercat
bl sub_45664EC4
pop {R4-R7,PC}
; End of function sub_456B6070
; ---------------------------------------------------------------------------
align 4
_aDatabrowsercat dw aDatabrowsercat
align 4
dw 0
; ---------------------------------------------------------------------------
ldrb R4, [R6,R5]
add R7, R9
push {R4-R7,LR}
add R4, R1, 0
mov R0, 0
bl sub_456B5E82
cmp R0, 0
beq loc_456B609E
add R0, R4, 0
bl sub_456B603E
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B609E:
add R1, R4, 0
bl sub_456B60A6
pop {R4-R7,PC}
;------ Ôóí-èÿ ----
align 4
sub_456B60A6:
push {R4-R7,LR}
add R0, R1, 0
adr R1, _aSub_view_page
bl sub_45664EC4
pop {R4-R7,PC}
; End of function sub_456B60A6
; ---------------------------------------------------------------------------
DCW 0xFFFF
align 4
_aSub_view_page dw aSub_view_page
align 4
dw 0
; ---------------------------------------------------------------------------
mov R2, 0xF0
add R1, R10
push {R4-R7,LR}
add R4, R1, 0
mov R0, 1
bl sub_456B5E82
cmp R0, 0
beq loc_456B60D6
add R0, R4, 0
bl sub_456B603E
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B60D6:
add R1, R4, 0
bl sub_456B60DE
pop {R4-R7,PC}
;------ Ôóí-èÿ ----
align 4
sub_456B60DE:
push {R4-R7,LR}
add R0, R1, 0
adr R1, _aPb_ui_contacts
bl sub_45664EC4
pop {R4-R7,PC}
; End of function sub_456B60DE
; ---------------------------------------------------------------------------
DCW 0xFFFF
align 4
_aPb_ui_contacts dw aPb_ui_contacts
align 4
dw 0
; ---------------------------------------------------------------------------
LDMIA R5!, {R3,R6,R7}
add R5, R9
push {R4-R7,LR}
add R4, R1, 0
mov R0, 2
bl sub_456B5E82
cmp R0, 0
beq loc_456B610E
add R0, R4, 0
bl sub_456B603E
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B610E:
add R1, R4, 0
bl sub_456B6116
pop {R4-R7,PC}
;------ Ôóí-èÿ ----
align 4
sub_456B6116:
push {R4-R7,LR}
add R0, R1, 0
adr R1, _aPb_ui_calllist
bl sub_45664EC4
pop {R4-R7,PC}
; End of function sub_456B6116
; ---------------------------------------------------------------------------
DCW 0xFFFF
align 4
_aPb_ui_calllist dw aPb_ui_calllist
align 4
dw 0
; ---------------------------------------------------------------------------
pop {R2-R7,PC}
; ---------------------------------------------------------------------------
add R5, R9
push {R4-R7,LR}
add R4, R1, 0
mov R0, 3
bl sub_456B5E82
cmp R0, 0
beq loc_456B6146
add R0, R4, 0
bl sub_456B603E
pop {R4-R7,PC}
; ---------------------------------------------------------------------------
align 4
loc_456B6146:
add R1, R4, 0
bl sub_456B614E
pop {R4-R7,PC}
;------ Ôóí-èÿ ----
align 4
sub_456B614E:
push {R4-R7,LR}
add R0, R1, 0
adr R1, _aMsg_ui_openfol
bl sub_45664EC4
pop {R4-R7,PC}
; End of function sub_456B614E
; ---------------------------------------------------------------------------
DCW 0xFFFF
align 4
_aMsg_ui_openfol dw aMsg_ui_openfol
align 4
dw 0
; ---------------------------------------------------------------------------
STMIA R2!, {R3-R7}
add R1, R10
;------ Ôóí-èÿ ----
align 4
sub_456B6168:
arg_0 = 0
; FUNCTION CHUNK AT 4520A170 SIZE 00000080 BYTES
ldr R4, loc_4520A170+1
bx R4
; End of function sub_456B6168
;------ Ôóí-èÿ ----
align 4
sub_456B616C:
; FUNCTION CHUNK AT 4520A494 SIZE 0000004E BYTES
ldr R4, loc_4520A494+1
bx R4
; End of function sub_456B616C
; ---------------------------------------------------------------------------
align 4
off_456B6170 dw loc_4520A170+1
off_456B6174 dw loc_4520A494+1
_aUiLocksErrorDC dw aUiLocksErrorDC
align 4
dword_456B617C dw 0x315
dword_456B6180 dw 0xF98
dword_456B6184 dw 0x178A
off_456B6188 dw loc_456B6034+1
off_456B618C dw loc_456B5FE6+1
_aUserlocks_page dw aUserlocks_page
ALIGN 8
align 4
dw _5
_5 dw 5
dw addr3
dw 0
dw 0
_aWrongpasword_p dw aWrongpasword_p
align 4
dw 0
dw _5
_5 dw 5
dw addr4
dw 6
dw unk_45208EC5
dw 0
dw 0
dw 5
dw addr5
dw 0xF
dw unk_4541164D
dw 0x11
dw unk_45411649
dw 0x1C20
dw unk_4541164D
dw 6
dw unk_45411955
dw 0
dw 0
dw 5
dw addr6
dw 0xF
dw addr7
dw 0x10
dw unk_4524F265
dw 0
dw 0
dw 5
dw addr8
dw 0xF
dw addr9
dw 0x10
dw unk_454627D5
dw 0
dw 0
dw 5
dw addr10
dw 0xF
dw addr11
dw 0x10
dw unk_45213E19
dw 0
dw 0
dw 5
dw addr12
dw 0xF
dw addr13
dw 0x10
dw unk_4520F645
dw 0
dw 0
dw 5
dw addr14
dw 0xF
dw addr15
dw 0x10
dw unk_4548DE39
dw 0
dw 0
align 4
El error que tengo es este:
Marcadores