Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .text:00046544 ; =============== S U B R O U T I N E =======================================
- .text:00046544
- .text:00046544
- .text:00046544 sub_46544 ; CODE XREF: DatabaseManager_LoadService+EC↑p
- .text:00046544 ; DatabaseManager_LoadDefaultData+244↓p ...
- .text:00046544
- .text:00046544 var_58 = -0x58
- .text:00046544 var_54 = -0x54
- .text:00046544 var_4C = -0x4C
- .text:00046544 var_48 = -0x48
- .text:00046544 var_44 = -0x44
- .text:00046544 var_40 = -0x40
- .text:00046544 var_3C = -0x3C
- .text:00046544
- .text:00046544 ; __unwind {
- .text:00046544 STMFD SP!, {R4-R11,LR}
- .text:00046548 SUB SP, SP, #4
- .text:0004654C VPUSH {D8-D9}
- .text:00046550 SUB SP, SP, #0x20
- .text:00046554 MOV R4, R1
- .text:00046558 MOV R5, R0
- .text:0004655C MOV R8, #0x13
- .text:00046560 CMP R2, #0
- .text:00046564 BEQ loc_4679C
- .text:00046568 LDRB R1, [R5,#1]
- .text:0004656C LDRB R0, [R5]
- .text:00046570 LDRB R2, [R5,#2]
- .text:00046574 MOV R1, R1,LSL#16
- .text:00046578 LDRB R3, [R5,#3]
- .text:0004657C ORR R0, R1, R0,LSL#24
- .text:00046580 ORR R0, R0, R2,LSL#8
- .text:00046584 ORR R1, R0, R3
- .text:00046588 ADD R0, R1, #4
- .text:0004658C CMP R0, R4
- .text:00046590 BNE loc_4661C
- .text:00046594 LDRB R2, [R5,#5]
- .text:00046598 SUB R1, R1, #4
- .text:0004659C LDRB R0, [R5,#4]
- .text:000465A0 LDRB R3, [R5,#6]
- .text:000465A4 MOV R2, R2,LSL#16
- .text:000465A8 LDRB R7, [R5,#7]
- .text:000465AC ORR R0, R2, R0,LSL#24
- .text:000465B0 ORR R0, R0, R3,LSL#8
- .text:000465B4 ORR R6, R0, R7
- .text:000465B8 ADD R0, R5, #8
- .text:000465BC BL mpeg_crc32
- .text:000465C0 CMP R0, R6
- .text:000465C4 BNE loc_4663C
- .text:000465C8 LDRB R1, [R5,#9]
- .text:000465CC LDRB R0, [R5,#8]
- .text:000465D0 LDRB R2, [R5,#0xA]
- .text:000465D4 MOV R1, R1,LSL#16
- .text:000465D8 LDRB R3, [R5,#0xB]
- .text:000465DC ORR R0, R1, R0,LSL#24
- .text:000465E0 ORR R0, R0, R2,LSL#8
- .text:000465E4 ORR R8, R0, R3
- .text:000465E8 SUB R0, R8, #0xE
- .text:000465EC CMP R0, #6
- .text:000465F0 BCC loc_46668
- .text:000465F4 LDR R1, =(aThDtv - 0x4660C)
- .text:000465F8 MOV R3, #0x13
- .text:000465FC LDR R2, =(aSErrorDataVers_0 - 0x46614)
- .text:00046600 LDR R0, =(aConvertdatatos - 0x4661C)
- .text:00046604 ADD R1, PC, R1 ; "TH_DTV"
- .text:00046608 STR R8, [SP,#0x58+var_58]
- .text:0004660C ADD R2, PC, R2 ; " [%s] :: error : data version not match"...
- .text:00046610 STR R3, [SP,#0x58+var_54]
- .text:00046614 ADD R3, PC, R0 ; "_ConvertDataToService"
- .text:00046618 B loc_46658
- .text:0004661C ; ---------------------------------------------------------------------------
- .text:0004661C
- .text:0004661C loc_4661C ; CODE XREF: sub_46544+4C↑j
- .text:0004661C LDR R0, =(aConvertdatatos - 0x4663C)
- .text:00046620 LDR R2, =(aThDtv - 0x46634)
- .text:00046624 LDR R3, =(aSErrorDataLeng - 0x46638)
- .text:00046628 STMEA SP, {R1,R4}
- .text:0004662C ADD R1, PC, R2 ; "TH_DTV"
- .text:00046630 ADD R2, PC, R3 ; " [%s] :: error : data length not matche"...
- .text:00046634 ADD R3, PC, R0 ; "_ConvertDataToService"
- .text:00046638 B loc_46658
- .text:0004663C ; ---------------------------------------------------------------------------
- .text:0004663C
- .text:0004663C loc_4663C ; CODE XREF: sub_46544+80↑j
- .text:0004663C LDR R3, =(aConvertdatatos - 0x46650)
- .text:00046640 LDR R1, =(aThDtv - 0x46658)
- .text:00046644 LDR R2, =(aSErrorCrcNotMa - 0x4665C)
- .text:00046648 ADD R3, PC, R3 ; "_ConvertDataToService"
- .text:0004664C STMEA SP, {R0,R6}
- .text:00046650 ADD R1, PC, R1 ; "TH_DTV"
- .text:00046654 ADD R2, PC, R2 ; " [%s] :: error : crc not matched %u / %"...
- .text:00046658
- .text:00046658 loc_46658 ; CODE XREF: sub_46544+D4↑j
- .text:00046658 ; sub_46544+F4↑j ...
- .text:00046658 MOV R0, #6
- .text:0004665C BL __android_log_print
- .text:00046660 MOV R4, #0
- .text:00046664 B loc_4734C
- .text:00046668 ; ---------------------------------------------------------------------------
- .text:00046668
- .text:00046668 loc_46668 ; CODE XREF: sub_46544+AC↑j
- .text:00046668 CMP R8, #0x12
- .text:0004666C BCC loc_46754
- .text:00046670 CMP R4, #0xC
- .text:00046674 BEQ loc_4675C
- .text:00046678 SUB R0, R4, #0xC
- .text:0004667C MOV R2, #0
- .text:00046680 CMP R0, #0x10
- .text:00046684 BCC loc_466C8
- .text:00046688 MOV R1, R0
- .text:0004668C BFC R1, #0, #4
- .text:00046690 CMP R1, #0
- .text:00046694 BEQ loc_466C8
- .text:00046698 MOV R3, R0
- .text:0004669C ADD R2, R5, #0xC
- .text:000466A0 VDUP.8 Q8, R4
- .text:000466A4 BFC R3, #0, #4
- .text:000466A8
- .text:000466A8 loc_466A8 ; CODE XREF: sub_46544+174↓j
- .text:000466A8 VLD1.8 {D18-D19}, [R2]
- .text:000466AC SUBS R3, R3, #0x10
- .text:000466B0 VEOR Q9, Q9, Q8
- .text:000466B4 VST1.8 {D18-D19}, [R2]!
- .text:000466B8 BNE loc_466A8
- .text:000466BC MOV R2, R1
- .text:000466C0 CMP R0, R1
- .text:000466C4 BEQ loc_466E8
- .text:000466C8
- .text:000466C8 loc_466C8 ; CODE XREF: sub_46544+140↑j
- .text:000466C8 ; sub_46544+150↑j
- .text:000466C8 SUB R1, R0, R2
- .text:000466CC ADD R2, R2, R5
- .text:000466D0 ADD R2, R2, #0xC
- .text:000466D4
- .text:000466D4 loc_466D4 ; CODE XREF: sub_46544+1A0↓j
- .text:000466D4 LDRB R3, [R2]
- .text:000466D8 SUBS R1, R1, #1
- .text:000466DC EOR R3, R3, R4
- .text:000466E0 STRB R3, [R2],#1
- .text:000466E4 BNE loc_466D4
- .text:000466E8
- .text:000466E8 loc_466E8 ; CODE XREF: sub_46544+180↑j
- .text:000466E8 MOV R2, #0
- .text:000466EC CMP R0, #0x10
- .text:000466F0 BCC loc_46734
- .text:000466F4 MOV R1, R0
- .text:000466F8 BFC R1, #0, #4
- .text:000466FC CMP R1, #0
- .text:00046700 BEQ loc_46734
- .text:00046704 MOV R3, R0
- .text:00046708 VMOV.I8 Q8, #0xD6
- .text:0004670C ADD R2, R5, #0xC
- .text:00046710 BFC R3, #0, #4
- .text:00046714
- .text:00046714 loc_46714 ; CODE XREF: sub_46544+1E0↓j
- .text:00046714 VLD1.8 {D18-D19}, [R2]
- .text:00046718 SUBS R3, R3, #0x10
- .text:0004671C VEOR Q9, Q9, Q8
- .text:00046720 VST1.8 {D18-D19}, [R2]!
- .text:00046724 BNE loc_46714
- .text:00046728 MOV R2, R1
- .text:0004672C CMP R0, R1
- .text:00046730 BEQ loc_46754
- .text:00046734
- .text:00046734 loc_46734 ; CODE XREF: sub_46544+1AC↑j
- .text:00046734 ; sub_46544+1BC↑j
- .text:00046734 ADD R1, R2, R5
- .text:00046738 SUB R0, R0, R2
- .text:0004673C ADD R1, R1, #0xC
- .text:00046740
- .text:00046740 loc_46740 ; CODE XREF: sub_46544+20C↓j
- .text:00046740 LDRB R2, [R1]
- .text:00046744 SUBS R0, R0, #1
- .text:00046748 EOR R2, R2, #0xD6
- .text:0004674C STRB R2, [R1],#1
- .text:00046750 BNE loc_46740
- .text:00046754
- .text:00046754 loc_46754 ; CODE XREF: sub_46544+128↑j
- .text:00046754 ; sub_46544+1EC↑j
- .text:00046754 CMP R8, #0x10
- .text:00046758 BCC loc_46798
- .text:0004675C
- .text:0004675C loc_4675C ; CODE XREF: sub_46544+130↑j
- .text:0004675C LDR R0, =(off_B0EE4 - 0x46770)
- .text:00046760 LDRB R2, [R5,#0xD]
- .text:00046764 LDRB R1, [R5,#0xC]
- .text:00046768 LDR R6, [PC,R0] ; off_B0EE4
- .text:0004676C LDRB R3, [R5,#0xE]
- .text:00046770 MOV R0, R2,LSL#16
- .text:00046774 ORR R0, R0, R1,LSL#24
- .text:00046778 LDRB R7, [R5,#0xF]
- .text:0004677C LDR R1, [R6,#0x18]
- .text:00046780 ORR R0, R0, R3,LSL#8
- .text:00046784 ORR R0, R0, R7
- .text:00046788 CMP R0, R1
- .text:0004678C BNE loc_47360
- .text:00046790 ADD R5, R5, #0x10
- .text:00046794 B loc_4679C
- .text:00046798 ; ---------------------------------------------------------------------------
- .text:00046798
- .text:00046798 loc_46798 ; CODE XREF: sub_46544+214↑j
- .text:00046798 ADD R5, R5, #0xC
- .text:0004679C
- .text:0004679C loc_4679C ; CODE XREF: sub_46544+20↑j
- .text:0004679C ; sub_46544+250↑j
- .text:0004679C LDR R0, =(off_B0EAC - 0x467B8)
- .text:000467A0 MOV R4, #1
- .text:000467A4 LDRB R2, [R5,#1]
- .text:000467A8 LDRB R1, [R5]
- .text:000467AC LDRB R3, [R5,#2]
- .text:000467B0 LDR R6, [PC,R0] ; off_B0EAC
- .text:000467B4 MOV R0, R2,LSL#16
- .text:000467B8 ORR R0, R0, R1,LSL#24
- .text:000467BC LDRB R7, [R5,#3]
- .text:000467C0 ORR R0, R0, R3,LSL#8
- .text:000467C4 STR R8, [SP,#0x58+var_44]
- .text:000467C8 ORRS R0, R0, R7
- .text:000467CC STR R0, [R6]
- .text:000467D0 BEQ loc_4734C
- .text:000467D4 ADD R0, R0, R0,LSL#2
- .text:000467D8 MOV R0, R0,LSL#5
- .text:000467DC BL _MemAlloc
- .text:000467E0 LDR R1, =(off_B0EAC - 0x467F0)
- .text:000467E4 CMP R0, #0
- .text:000467E8 LDR R1, [PC,R1] ; off_B0EAC
- .text:000467EC STR R0, [R1,#4]
- .text:000467F0 BEQ loc_4733C
- .text:000467F4 LDR R0, =(off_B0EAC - 0x46800)
- .text:000467F8 LDR R0, [PC,R0] ; off_B0EAC
- .text:000467FC LDR R0, [R0]
- .text:00046800 CMP R0, #0
- .text:00046804 BEQ loc_4734C
- .text:00046808 LDR R0, =(off_B0EAC - 0x46820)
- .text:0004680C VMOV.I8 Q4, #0x37
- .text:00046810 ADD R4, R5, #4
- .text:00046814 MOV R5, #0
- .text:00046818 LDR R0, [PC,R0] ; off_B0EAC
- .text:0004681C STR R0, [SP,#0x58+var_48]
- .text:00046820 LDR R0, =(off_B0EAC - 0x4682C)
- .text:00046824 LDR R0, [PC,R0] ; off_B0EAC
- .text:00046828 STR R0, [SP,#0x58+var_4C]
- .text:0004682C
- .text:0004682C loc_4682C ; CODE XREF: sub_46544+DEC↓j
- .text:0004682C LDR R0, [SP,#0x58+var_48]
- .text:00046830 ADD R1, R5, R5,LSL#2
- .text:00046834 LDR R0, [R0,#4]
- .text:00046838 ADD R11, R0, R1,LSL#5
- .text:0004683C MOV R10, R11
- .text:00046840 LDR R1, [R10,#0x40]!
- .text:00046844 LDRB R0, [R4],#1
- .text:00046848 BFC R1, #0xD, #8
- .text:0004684C CMP R0, #0
- .text:00046850 ORR R1, R1, R0,LSL#13
- .text:00046854 STR R1, [R10]
- .text:00046858 BEQ loc_469B4
- .text:0004685C ADD R0, R0, R0,LSL#1
- .text:00046860 MOV R0, R0,LSL#2
- .text:00046864 BL _MemAlloc
- .text:00046868 STR R0, [R11]
- .text:0004686C MOV R2, #0xE000
- .text:00046870 LDR R1, [R10]
- .text:00046874 MOVT R2, #0x1F
- .text:00046878 CMP R0, #0
- .text:0004687C AND R2, R1, R2
- .text:00046880 BEQ loc_469BC
- .text:00046884 CMP R2, #0
- .text:00046888 BEQ loc_469F0
- .text:0004688C MOV R7, #0
- .text:00046890 STR R5, [SP,#0x58+var_40]
- .text:00046894
- .text:00046894 loc_46894 ; CODE XREF: sub_46544+468↓j
- .text:00046894 ADD R5, R7, R7,LSL#1
- .text:00046898 MOV R6, R4
- .text:0004689C LDRB R1, [R6],#4
- .text:000468A0 MOV R2, #3
- .text:000468A4 ADD R0, R0, R5,LSL#2
- .text:000468A8 STRB R1, [R0,#8]
- .text:000468AC ADD R1, R4, #1
- .text:000468B0 BL _MemCpy
- .text:000468B4 LDR R0, [R11]
- .text:000468B8 ADD R1, R0, R5,LSL#2
- .text:000468BC LDRB R1, [R1,#8]
- .text:000468C0 CMP R1, #0
- .text:000468C4 BEQ loc_46988
- .text:000468C8 MOV R0, R1
- .text:000468CC BL _MemAlloc
- .text:000468D0 MOV R1, R0
- .text:000468D4 LDR R0, [R11]
- .text:000468D8 CMP R1, #0
- .text:000468DC ADD R3, R0, R5,LSL#2
- .text:000468E0 STR R1, [R3,#4]
- .text:000468E4 LDRB R2, [R3,#8]!
- .text:000468E8 BEQ loc_46990
- .text:000468EC MOV R0, R1
- .text:000468F0 MOV R1, R6
- .text:000468F4 BL _MemCpy
- .text:000468F8 CMP R8, #0x10
- .text:000468FC BCC loc_46974
- .text:00046900 LDR R0, [R11]
- .text:00046904 ADD R1, R0, R5,LSL#2
- .text:00046908 LDRB R0, [R1,#8]
- .text:0004690C CMP R0, #0
- .text:00046910 BEQ loc_46974
- .text:00046914 LDR R12, [R1,#4]
- .text:00046918 MOV R2, #0
- .text:0004691C CMP R0, #0x10
- .text:00046920 BCC loc_46958
- .text:00046924 AND R3, R0, #0xF
- .text:00046928 CMP R0, R3
- .text:0004692C BEQ loc_46958
- .text:00046930 SUB R2, R0, R3
- .text:00046934 SUB R4, R0, R3
- .text:00046938 MOV R1, R12
- .text:0004693C
- .text:0004693C loc_4693C ; CODE XREF: sub_46544+408↓j
- .text:0004693C VLD1.8 {D16-D17}, [R1]
- .text:00046940 SUBS R4, R4, #0x10
- .text:00046944 VEOR Q8, Q8, Q4
- .text:00046948 VST1.8 {D16-D17}, [R1]!
- .text:0004694C BNE loc_4693C
- .text:00046950 TST R3, #0xFF
- .text:00046954 BEQ loc_46974
- .text:00046958
- .text:00046958 loc_46958 ; CODE XREF: sub_46544+3DC↑j
- .text:00046958 ; sub_46544+3E8↑j
- .text:00046958 ADD R1, R12, R2
- .text:0004695C SUB R0, R0, R2
- .text:00046960
- .text:00046960 loc_46960 ; CODE XREF: sub_46544+42C↓j
- .text:00046960 LDRB R2, [R1]
- .text:00046964 SUBS R0, R0, #1
- .text:00046968 EOR R2, R2, #0x37
- .text:0004696C STRB R2, [R1],#1
- .text:00046970 BNE loc_46960
- .text:00046974
- .text:00046974 loc_46974 ; CODE XREF: sub_46544+3B8↑j
- .text:00046974 ; sub_46544+3CC↑j ...
- .text:00046974 LDR R0, [R11]
- .text:00046978 ADD R1, R0, R5,LSL#2
- .text:0004697C LDRB R1, [R1,#8]
- .text:00046980 ADD R4, R6, R1
- .text:00046984 B loc_4699C
- .text:00046988 ; ---------------------------------------------------------------------------
- .text:00046988
- .text:00046988 loc_46988 ; CODE XREF: sub_46544+380↑j
- .text:00046988 MOV R4, R6
- .text:0004698C B loc_4699C
- .text:00046990 ; ---------------------------------------------------------------------------
- .text:00046990
- .text:00046990 loc_46990 ; CODE XREF: sub_46544+3A4↑j
- .text:00046990 ADD R4, R6, R2
- .text:00046994 MOV R1, #0
- .text:00046998 STRB R1, [R3]
- .text:0004699C
- .text:0004699C loc_4699C ; CODE XREF: sub_46544+440↑j
- .text:0004699C ; sub_46544+448↑j
- .text:0004699C LDR R1, [R10]
- .text:000469A0 ADD R7, R7, #1
- .text:000469A4 UBFX R1, R1, #0xD, #8
- .text:000469A8 CMP R7, R1
- .text:000469AC BCC loc_46894
- .text:000469B0 B loc_46A04
- .text:000469B4 ; ---------------------------------------------------------------------------
- .text:000469B4
- .text:000469B4 loc_469B4 ; CODE XREF: sub_46544+314↑j
- .text:000469B4 STR R5, [SP,#0x58+var_40]
- .text:000469B8 B loc_46A04
- .text:000469BC ; ---------------------------------------------------------------------------
- .text:000469BC
- .text:000469BC loc_469BC ; CODE XREF: sub_46544+33C↑j
- .text:000469BC CMP R2, #0
- .text:000469C0 BEQ loc_469F8
- .text:000469C4 STR R5, [SP,#0x58+var_40]
- .text:000469C8 ADD R0, R0, #8
- .text:000469CC UBFX R2, R1, #0xD, #8
- .text:000469D0 MOV R3, #0
- .text:000469D4
- .text:000469D4 loc_469D4 ; CODE XREF: sub_46544+4A4↓j
- .text:000469D4 LDRB R7, [R0],#0xC
- .text:000469D8 ADD R3, R3, #1
- .text:000469DC CMP R3, R2
- .text:000469E0 ADD R7, R7, R4
- .text:000469E4 ADD R4, R7, #4
- .text:000469E8 BCC loc_469D4
- .text:000469EC B loc_469FC
- .text:000469F0 ; ---------------------------------------------------------------------------
- .text:000469F0
- .text:000469F0 loc_469F0 ; CODE XREF: sub_46544+344↑j
- .text:000469F0 STR R5, [SP,#0x58+var_40]
- .text:000469F4 B loc_46A04
- .text:000469F8 ; ---------------------------------------------------------------------------
- .text:000469F8
- .text:000469F8 loc_469F8 ; CODE XREF: sub_46544+47C↑j
- .text:000469F8 STR R5, [SP,#0x58+var_40]
- .text:000469FC
- .text:000469FC loc_469FC ; CODE XREF: sub_46544+4A8↑j
- .text:000469FC BFC R1, #0xD, #8
- .text:00046A00 STR R1, [R10]
- .text:00046A04
- .text:00046A04 loc_46A04 ; CODE XREF: sub_46544+46C↑j
- .text:00046A04 ; sub_46544+474↑j ...
- .text:00046A04 LDRB R0, [R4]
- .text:00046A08 ADD R9, R4, #4
- .text:00046A0C LDRB R1, [R4,#1]
- .text:00046A10 ORR R0, R1, R0,LSL#8
- .text:00046A14 STRH R0, [R11,#8]
- .text:00046A18 LDRB R0, [R4,#2]
- .text:00046A1C STRB R0, [R11,#0xA]
- .text:00046A20 LDRB R0, [R4,#3]
- .text:00046A24 STRB R0, [R11,#0xB]
- .text:00046A28 CMP R0, #0
- .text:00046A2C BEQ loc_46A98
- .text:00046A30 MOV R0, R0,LSL#2
- .text:00046A34 ADD R4, R11, #0xB
- .text:00046A38 BL _MemAlloc
- .text:00046A3C STR R0, [R11,#0xC]
- .text:00046A40 CMP R0, #0
- .text:00046A44 LDRB R1, [R4]
- .text:00046A48 BEQ loc_46AA0
- .text:00046A4C CMP R1, #0
- .text:00046A50 BEQ loc_46AB4
- .text:00046A54 ADD R0, R0, #2
- .text:00046A58 MOV R2, #0
- .text:00046A5C STR R10, [SP,#0x58+var_3C]
- .text:00046A60
- .text:00046A60 loc_46A60 ; CODE XREF: sub_46544+54C↓j
- .text:00046A60 LDRB R3, [R9]
- .text:00046A64 ADD R2, R2, #1
- .text:00046A68 LDRB R7, [R9,#1]
- .text:00046A6C CMP R2, R1
- .text:00046A70 ORR R3, R7, R3,LSL#8
- .text:00046A74 STRH R3, [R0,#-2]
- .text:00046A78 LDRB R3, [R9,#2]
- .text:00046A7C LDRB R7, [R9,#3]
- .text:00046A80 ADD R9, R9, #4
- .text:00046A84 ORR R3, R7, R3,LSL#8
- .text:00046A88 STRH R3, [R0]
- .text:00046A8C ADD R0, R0, #4
- .text:00046A90 BCC loc_46A60
- .text:00046A94 B loc_46AB8
- .text:00046A98 ; ---------------------------------------------------------------------------
- .text:00046A98
- .text:00046A98 loc_46A98 ; CODE XREF: sub_46544+4E8↑j
- .text:00046A98 STR R10, [SP,#0x58+var_3C]
- .text:00046A9C B loc_46AB8
- .text:00046AA0 ; ---------------------------------------------------------------------------
- .text:00046AA0
- .text:00046AA0 loc_46AA0 ; CODE XREF: sub_46544+504↑j
- .text:00046AA0 ADD R9, R9, R1,LSL#2
- .text:00046AA4 MOV R0, #0
- .text:00046AA8 STR R10, [SP,#0x58+var_3C]
- .text:00046AAC STRB R0, [R4]
- .text:00046AB0 B loc_46AB8
- .text:00046AB4 ; ---------------------------------------------------------------------------
- .text:00046AB4
- .text:00046AB4 loc_46AB4 ; CODE XREF: sub_46544+50C↑j
- .text:00046AB4 STR R10, [SP,#0x58+var_3C]
- .text:00046AB8
- .text:00046AB8 loc_46AB8 ; CODE XREF: sub_46544+550↑j
- .text:00046AB8 ; sub_46544+558↑j ...
- .text:00046AB8 MOV R10, R11
- .text:00046ABC LDR R2, [R10,#0x38]!
- .text:00046AC0 LDRB R0, [R9],#1
- .text:00046AC4 LDR R1, [R10,#4]
- .text:00046AC8 BFC R2, #8, #8
- .text:00046ACC CMP R0, #0
- .text:00046AD0 ORR R2, R2, R0,LSL#8
- .text:00046AD4 STR R2, [R10]
- .text:00046AD8 STR R1, [R10,#4]
- .text:00046ADC BEQ loc_46C28
- .text:00046AE0 ADD R0, R0, R0,LSL#1
- .text:00046AE4 MOV R0, R0,LSL#2
- .text:00046AE8 BL _MemAlloc
- .text:00046AEC MOV R4, R11
- .text:00046AF0 CMP R0, #0
- .text:00046AF4 STR R0, [R4,#0x10]!
- .text:00046AF8 LDR R2, [R10]
- .text:00046AFC LDR R1, [R10,#4]
- .text:00046B00 AND R3, R2, #0xFF00
- .text:00046B04 BEQ loc_46BF0
- .text:00046B08 CMP R3, #0
- .text:00046B0C BEQ loc_46C28
- .text:00046B10 MOV R7, #0
- .text:00046B14
- .text:00046B14 loc_46B14 ; CODE XREF: sub_46544+6A0↓j
- .text:00046B14 ADD R5, R7, R7,LSL#1
- .text:00046B18 LDRB R1, [R9]
- .text:00046B1C LDRB R2, [R9,#1]
- .text:00046B20 ADD R0, R0, R5,LSL#2
- .text:00046B24 ORR R1, R2, R1,LSL#8
- .text:00046B28 MOV R2, #3
- .text:00046B2C STRH R1, [R0,#4]
- .text:00046B30 LDRB R1, [R9,#2]
- .text:00046B34 STRB R1, [R0,#6]
- .text:00046B38 ADD R1, R9, #3
- .text:00046B3C BL _MemCpy
- .text:00046B40 LDR R0, [R4]
- .text:00046B44 LDRB R1, [R9,#6]
- .text:00046B48 ADD R9, R9, #7
- .text:00046B4C ADD R2, R0, R5,LSL#2
- .text:00046B50 CMP R1, #0
- .text:00046B54 STRB R1, [R2,#7]
- .text:00046B58 BEQ loc_46BD4
- .text:00046B5C MOV R0, R1,LSL#2
- .text:00046B60 BL _MemAlloc
- .text:00046B64 MOV R1, R0
- .text:00046B68 LDR R0, [R4]
- .text:00046B6C CMP R1, #0
- .text:00046B70 ADD R3, R0, R5,LSL#2
- .text:00046B74 STR R1, [R3,#8]
- .text:00046B78 LDRB R2, [R3,#7]!
- .text:00046B7C BEQ loc_46BC8
- .text:00046B80 CMP R2, #0
- .text:00046B84 BEQ loc_46BD4
- .text:00046B88 ADD R1, R1, #2
- .text:00046B8C MOV R3, #0
- .text:00046B90
- .text:00046B90 loc_46B90 ; CODE XREF: sub_46544+67C↓j
- .text:00046B90 LDRB R6, [R9]
- .text:00046B94 ADD R3, R3, #1
- .text:00046B98 LDRB R5, [R9,#1]
- .text:00046B9C CMP R3, R2
- .text:00046BA0 ORR R6, R5, R6,LSL#8
- .text:00046BA4 STRH R6, [R1,#-2]
- .text:00046BA8 LDRB R6, [R9,#2]
- .text:00046BAC LDRB R5, [R9,#3]
- .text:00046BB0 ADD R9, R9, #4
- .text:00046BB4 ORR R6, R5, R6,LSL#8
- .text:00046BB8 STRH R6, [R1]
- .text:00046BBC ADD R1, R1, #4
- .text:00046BC0 BCC loc_46B90
- .text:00046BC4 B loc_46BD4
- .text:00046BC8 ; ---------------------------------------------------------------------------
- .text:00046BC8
- .text:00046BC8 loc_46BC8 ; CODE XREF: sub_46544+638↑j
- .text:00046BC8 ADD R9, R9, R2,LSL#2
- .text:00046BCC MOV R1, #0
- .text:00046BD0 STRB R1, [R3]
- .text:00046BD4
- .text:00046BD4 loc_46BD4 ; CODE XREF: sub_46544+614↑j
- .text:00046BD4 ; sub_46544+640↑j ...
- .text:00046BD4 LDR R2, [R10]
- .text:00046BD8 ADD R7, R7, #1
- .text:00046BDC UBFX R1, R2, #8, #8
- .text:00046BE0 CMP R7, R1
- .text:00046BE4 BCC loc_46B14
- .text:00046BE8 LDR R1, [R10,#4]
- .text:00046BEC B loc_46C28
- .text:00046BF0 ; ---------------------------------------------------------------------------
- .text:00046BF0
- .text:00046BF0 loc_46BF0 ; CODE XREF: sub_46544+5C0↑j
- .text:00046BF0 CMP R3, #0
- .text:00046BF4 BEQ loc_46C1C
- .text:00046BF8 ADD R0, R0, #7
- .text:00046BFC UBFX R3, R2, #8, #8
- .text:00046C00 MOV R7, #0
- .text:00046C04
- .text:00046C04 loc_46C04 ; CODE XREF: sub_46544+6D4↓j
- .text:00046C04 LDRB R6, [R0],#0xC
- .text:00046C08 ADD R7, R7, #1
- .text:00046C0C CMP R7, R3
- .text:00046C10 ADD R6, R9, R6,LSL#2
- .text:00046C14 ADD R9, R6, #7
- .text:00046C18 BCC loc_46C04
- .text:00046C1C
- .text:00046C1C loc_46C1C ; CODE XREF: sub_46544+6B0↑j
- .text:00046C1C BFC R2, #8, #8
- .text:00046C20 STR R2, [R10]
- .text:00046C24 STR R1, [R10,#4]
- .text:00046C28
- .text:00046C28 loc_46C28 ; CODE XREF: sub_46544+598↑j
- .text:00046C28 ; sub_46544+5C8↑j ...
- .text:00046C28 LDRB R0, [R9],#1
- .text:00046C2C STR R2, [R10]
- .text:00046C30 BFI R1, R0, #0, #8
- .text:00046C34 STR R1, [R10,#4]
- .text:00046C38 CMP R0, #0
- .text:00046C3C BEQ loc_46CC8
- .text:00046C40 MOV R0, R0,LSL#2
- .text:00046C44 BL _MemAlloc
- .text:00046C48 STR R0, [R11,#0x14]
- .text:00046C4C CMP R0, #0
- .text:00046C50 LDR R2, [R10]
- .text:00046C54 LDR R1, [R10,#4]
- .text:00046C58 BEQ loc_46CB0
- .text:00046C5C TST R1, #0xFF
- .text:00046C60 BEQ loc_46CC8
- .text:00046C64 ADD R0, R0, #2
- .text:00046C68 MOV R2, #0
- .text:00046C6C
- .text:00046C6C loc_46C6C ; CODE XREF: sub_46544+760↓j
- .text:00046C6C LDRB R1, [R9]
- .text:00046C70 ADD R2, R2, #1
- .text:00046C74 LDRB R3, [R9,#1]
- .text:00046C78 ORR R1, R3, R1,LSL#8
- .text:00046C7C STRH R1, [R0,#-2]
- .text:00046C80 LDRB R1, [R9,#2]
- .text:00046C84 LDRB R3, [R9,#3]
- .text:00046C88 ADD R9, R9, #4
- .text:00046C8C ORR R1, R3, R1,LSL#8
- .text:00046C90 STRH R1, [R0]
- .text:00046C94 LDR R1, [R10,#4]
- .text:00046C98 ADD R0, R0, #4
- .text:00046C9C UXTB R3, R1
- .text:00046CA0 CMP R2, R3
- .text:00046CA4 BCC loc_46C6C
- .text:00046CA8 LDR R2, [R10]
- .text:00046CAC B loc_46CC8
- .text:00046CB0 ; ---------------------------------------------------------------------------
- .text:00046CB0
- .text:00046CB0 loc_46CB0 ; CODE XREF: sub_46544+714↑j
- .text:00046CB0 MOV R0, #0x3FC
- .text:00046CB4 STR R2, [R10]
- .text:00046CB8 AND R0, R0, R1,LSL#2
- .text:00046CBC BFC R1, #0, #8
- .text:00046CC0 ADD R9, R9, R0
- .text:00046CC4 STR R1, [R10,#4]
- .text:00046CC8
- .text:00046CC8 loc_46CC8 ; CODE XREF: sub_46544+6F8↑j
- .text:00046CC8 ; sub_46544+71C↑j ...
- .text:00046CC8 MOV R7, R9
- .text:00046CCC BFC R2, #0x10, #8
- .text:00046CD0 LDRB R0, [R7],#1
- .text:00046CD4 CMP R0, #0
- .text:00046CD8 ORR R2, R2, R0,LSL#16
- .text:00046CDC STR R2, [R10]
- .text:00046CE0 STR R1, [R10,#4]
- .text:00046CE4 BEQ loc_46DD4
- .text:00046CE8 MOV R0, R0,LSL#3
- .text:00046CEC BL _MemAlloc
- .text:00046CF0 MOV R4, R11
- .text:00046CF4 CMP R0, #0
- .text:00046CF8 STR R0, [R4,#0x18]!
- .text:00046CFC LDR R2, [R10]
- .text:00046D00 LDR R1, [R10,#4]
- .text:00046D04 BEQ loc_46DBC
- .text:00046D08 TST R2, #0xFF0000
- .text:00046D0C BEQ loc_46DD4
- .text:00046D10 MOV R5, #0
- .text:00046D14 MOV R6, #1
- .text:00046D18 B loc_46D28
- .text:00046D1C ; ---------------------------------------------------------------------------
- .text:00046D1C
- .text:00046D1C loc_46D1C ; CODE XREF: sub_46544+868↓j
- .text:00046D1C ADD R6, R6, #1
- .text:00046D20 LDR R0, [R4]
- .text:00046D24 ADD R5, R5, #8
- .text:00046D28
- .text:00046D28 loc_46D28 ; CODE XREF: sub_46544+7D4↑j
- .text:00046D28 ADD R7, R9, R5
- .text:00046D2C ADD R0, R0, R5
- .text:00046D30 ADD R1, R7, #1
- .text:00046D34 MOV R2, #3
- .text:00046D38 BL _MemCpy
- .text:00046D3C LDR R0, [R4]
- .text:00046D40 LDRB R2, [R7,#4]
- .text:00046D44 ADD R0, R0, R5
- .text:00046D48 LDR R1, [R0,#3]
- .text:00046D4C BFI R1, R2, #0, #5
- .text:00046D50 STR R1, [R0,#3]
- .text:00046D54 LDR R0, [R4]
- .text:00046D58 LDRB R2, [R7,#5]
- .text:00046D5C ADD R0, R0, R5
- .text:00046D60 LDR R1, [R0,#3]
- .text:00046D64 BFI R1, R2, #5, #3
- .text:00046D68 STR R1, [R0,#3]
- .text:00046D6C LDR R0, [R4]
- .text:00046D70 LDRB R1, [R7,#6]
- .text:00046D74 ADD R0, R0, R5
- .text:00046D78 STRB R1, [R0,#4]
- .text:00046D7C LDR R0, [R4]
- .text:00046D80 LDRB R2, [R7,#8]
- .text:00046D84 ADD R0, R0, R5
- .text:00046D88 LDRB R1, [R7,#7]
- .text:00046D8C LDR R3, [R0,#3]
- .text:00046D90 BFI R2, R1, #8, #5
- .text:00046D94 BFC R3, #0x10, #0xD
- .text:00046D98 ORR R1, R3, R2,LSL#16
- .text:00046D9C STR R1, [R0,#3]
- .text:00046DA0 LDR R2, [R10]
- .text:00046DA4 UBFX R0, R2, #0x10, #8
- .text:00046DA8 CMP R6, R0
- .text:00046DAC BCC loc_46D1C
- .text:00046DB0 LDR R1, [R10,#4]
- .text:00046DB4 ADD R7, R7, #9
- .text:00046DB8 B loc_46DD4
- .text:00046DBC ; ---------------------------------------------------------------------------
- .text:00046DBC
- .text:00046DBC loc_46DBC ; CODE XREF: sub_46544+7C0↑j
- .text:00046DBC MOV R0, #0x7F8
- .text:00046DC0 AND R0, R0, R2,LSR#13
- .text:00046DC4 BFC R2, #0x10, #8
- .text:00046DC8 STR R2, [R10]
- .text:00046DCC ADD R7, R7, R0
- .text:00046DD0 STR R1, [R10,#4]
- .text:00046DD4
- .text:00046DD4 loc_46DD4 ; CODE XREF: sub_46544+7A0↑j
- .text:00046DD4 ; sub_46544+7C8↑j ...
- .text:00046DD4 MOV R4, R7
- .text:00046DD8 BFC R2, #0x18, #8
- .text:00046DDC LDRB R0, [R4],#1
- .text:00046DE0 CMP R0, #0
- .text:00046DE4 ORR R2, R2, R0,LSL#24
- .text:00046DE8 STR R2, [R10]
- .text:00046DEC STR R1, [R10,#4]
- .text:00046DF0 BEQ loc_46F08
- .text:00046DF4 ADD R0, R0, R0,LSL#1
- .text:00046DF8 MOV R0, R0,LSL#2
- .text:00046DFC BL _MemAlloc
- .text:00046E00 MOV R9, R11
- .text:00046E04 CMP R0, #0
- .text:00046E08 STR R0, [R9,#0x1C]!
- .text:00046E0C LDR R2, [R10]
- .text:00046E10 LDR R1, [R10,#4]
- .text:00046E14 MOV R3, R2,LSR#24
- .text:00046E18 BEQ loc_46EF4
- .text:00046E1C CMP R3, #0
- .text:00046E20 BEQ loc_46F08
- .text:00046E24 ADD R4, R7, #0xB
- .text:00046E28 MOV R7, #0
- .text:00046E2C MOV R6, #3
- .text:00046E30 B loc_46E40
- .text:00046E34 ; ---------------------------------------------------------------------------
- .text:00046E34
- .text:00046E34 loc_46E34 ; CODE XREF: sub_46544+9A4↓j
- .text:00046E34 ADD R6, R6, #0xC
- .text:00046E38 ADD R4, R4, #0xA
- .text:00046E3C LDR R0, [R9]
- .text:00046E40
- .text:00046E40 loc_46E40 ; CODE XREF: sub_46544+8EC↑j
- .text:00046E40 ADD R0, R0, R6
- .text:00046E44 SUB R1, R4, #0xA
- .text:00046E48 SUB R0, R0, #3
- .text:00046E4C MOV R2, #3
- .text:00046E50 BL _MemCpy
- .text:00046E54 LDR R0, [R9]
- .text:00046E58 ADD R7, R7, #1
- .text:00046E5C LDRB R1, [R4,#-7]
- .text:00046E60 STRB R1, [R0,R6]
- .text:00046E64 LDR R0, [R9]
- .text:00046E68 LDR R1, [R0,R6]!
- .text:00046E6C LDRB R2, [R4,#-6]
- .text:00046E70 LDRB R3, [R4,#-5]
- .text:00046E74 LDR R5, [R0,#4]
- .text:00046E78 BFC R1, #8, #0x10
- .text:00046E7C ORR R2, R3, R2,LSL#8
- .text:00046E80 STR R5, [R0,#4]
- .text:00046E84 ORR R1, R1, R2,LSL#8
- .text:00046E88 STR R1, [R0]
- .text:00046E8C LDR R0, [R9]
- .text:00046E90 LDRB R1, [R4,#-4]
- .text:00046E94 LDRB R2, [R4,#-3]
- .text:00046E98 LDR R3, [R0,R6]!
- .text:00046E9C ORR R1, R2, R1,LSL#8
- .text:00046EA0 LDR R5, [R0,#4]
- .text:00046EA4 BFC R3, #0x18, #8
- .text:00046EA8 ORR R2, R3, R1,LSL#24
- .text:00046EAC STR R2, [R0]
- .text:00046EB0 BFC R5, #0, #8
- .text:00046EB4 ORR R1, R5, R1,LSR#8
- .text:00046EB8 STR R1, [R0,#4]
- .text:00046EBC LDR R0, [R9]
- .text:00046EC0 LDR R1, [R0,R6]!
- .text:00046EC4 LDRB R2, [R4,#-2]
- .text:00046EC8 LDRB R3, [R4,#-1]
- .text:00046ECC LDR R5, [R0,#4]
- .text:00046ED0 ORR R2, R3, R2,LSL#8
- .text:00046ED4 BFI R5, R2, #8, #0xD
- .text:00046ED8 STR R5, [R0,#4]
- .text:00046EDC STR R1, [R0]
- .text:00046EE0 LDR R2, [R10]
- .text:00046EE4 CMP R7, R2,LSR#24
- .text:00046EE8 BCC loc_46E34
- .text:00046EEC LDR R1, [R10,#4]
- .text:00046EF0 B loc_46F08
- .text:00046EF4 ; ---------------------------------------------------------------------------
- .text:00046EF4
- .text:00046EF4 loc_46EF4 ; CODE XREF: sub_46544+8D4↑j
- .text:00046EF4 ADD R0, R3, R3,LSL#2
- .text:00046EF8 BFC R2, #0x18, #8
- .text:00046EFC STR R2, [R10]
- .text:00046F00 ADD R4, R4, R0,LSL#1
- .text:00046F04 STR R1, [R10,#4]
- .text:00046F08
- .text:00046F08 loc_46F08 ; CODE XREF: sub_46544+8AC↑j
- .text:00046F08 ; sub_46544+8DC↑j ...
- .text:00046F08 MOV R6, R11
- .text:00046F0C LDRH R3, [R6,#0x30]!
- .text:00046F10 LDRB R12, [R4]
- .text:00046F14 MOV R9, R6
- .text:00046F18 LDRB R7, [R4,#1]
- .text:00046F1C LDR R0, [R9,#-8]!
- .text:00046F20 LDRB R5, [R6,#2]
- .text:00046F24 ORR R7, R7, R12,LSL#8
- .text:00046F28 LDR LR, [R6,#-4]
- .text:00046F2C BFC R0, #0, #0x10
- .text:00046F30 STR LR, [R6,#-4]
- .text:00046F34 ORR R5, R3, R5,LSL#16
- .text:00046F38 ORR R0, R7, R0
- .text:00046F3C STR R0, [R9]
- .text:00046F40 MOV R7, R5,LSR#16
- .text:00046F44 UXTB R5, R5
- .text:00046F48 STRB R7, [R6,#2]
- .text:00046F4C STRH R3, [R6]
- .text:00046F50 LDRB R12, [R4,#2]
- .text:00046F54 LDRB R8, [R4,#3]
- .text:00046F58 STRB R7, [R6,#2]
- .text:00046F5C ORR R7, R8, R12,LSL#8
- .text:00046F60 STR LR, [R6,#-4]
- .text:00046F64 PKHBT R12, R0, R7,LSL#16
- .text:00046F68 STR R12, [R9]
- .text:00046F6C STRH R3, [R6]
- .text:00046F70 LDRB R3, [R4,#5]
- .text:00046F74 LDRB R8, [R4,#4]
- .text:00046F78 LDRB R7, [R4,#6]
- .text:00046F7C MOV R3, R3,LSL#16
- .text:00046F80 LDRB R0, [R4,#7]
- .text:00046F84 ORR R3, R3, R8,LSL#24
- .text:00046F88 ORR R3, R3, R7,LSL#8
- .text:00046F8C ORR R0, R3, R0
- .text:00046F90 STR R0, [R6,#-0xC]
- .text:00046F94 LDRB R0, [R4,#8]
- .text:00046F98 LDRB R3, [R4,#9]
- .text:00046F9C STRB R0, [R6,#2]
- .text:00046FA0 ORR R0, R3, R0,LSL#8
- .text:00046FA4 STR LR, [R6,#-4]
- .text:00046FA8 STR R12, [R9]
- .text:00046FAC ORR R3, R5, R0,LSL#8
- .text:00046FB0 STRH R3, [R6]
- .text:00046FB4 LDRB R0, [R4,#0xA]
- .text:00046FB8 LDRB R5, [R4,#0xB]
- .text:00046FBC LDR R7, [R6,#4]!
- .text:00046FC0 ORR R0, R5, R0,LSL#8
- .text:00046FC4 LDR R8, [SP,#0x58+var_44]
- .text:00046FC8 BFC R7, #0, #0x10
- .text:00046FCC CMP R8, #0xF
- .text:00046FD0 ORR R0, R0, R7
- .text:00046FD4 STR R0, [R6]
- .text:00046FD8 LDRB R5, [R4,#0xC]
- .text:00046FDC BFC R0, #0x10, #8
- .text:00046FE0 ORR R5, R0, R5,LSL#16
- .text:00046FE4 STR R5, [R6]
- .text:00046FE8 BCC loc_47014
- .text:00046FEC LDRB R0, [R4,#0xD]
- .text:00046FF0 BFC R2, #0, #8
- .text:00046FF4 BFI R5, R0, #0x18, #3
- .text:00046FF8 STR R5, [R6]
- .text:00046FFC LDRB R0, [R4,#0xE]
- .text:00047000 ADD R6, R4, #0xF
- .text:00047004 ORR R2, R2, R0
- .text:00047008 STR R2, [R10]
- .text:0004700C STR R1, [R10,#4]
- .text:00047010 B loc_47018
- .text:00047014 ; ---------------------------------------------------------------------------
- .text:00047014
- .text:00047014 loc_47014 ; CODE XREF: sub_46544+AA4↑j
- .text:00047014 ADD R6, R4, #0xD
- .text:00047018
- .text:00047018 loc_47018 ; CODE XREF: sub_46544+ACC↑j
- .text:00047018 LDRB R0, [R6]
- .text:0004701C BFC R3, #0x18, #8
- .text:00047020 LDRB R4, [R6,#1]
- .text:00047024 CMP R8, #0x11
- .text:00047028 LDR R7, [SP,#0x58+var_3C]
- .text:0004702C ORR R0, R4, R0,LSL#8
- .text:00047030 STR R2, [R10]
- .text:00047034 BFI R1, R0, #8, #0xD
- .text:00047038 STR R1, [R10,#4]
- .text:0004703C LDR R2, [R7]
- .text:00047040 LDRB R1, [R6,#3]
- .text:00047044 LDRB R0, [R6,#2]
- .text:00047048 BFC R2, #0, #0xD
- .text:0004704C BFI R1, R0, #8, #5
- .text:00047050 ORR R2, R1, R2
- .text:00047054 STR R2, [R7]
- .text:00047058 LDRB R0, [R6,#4]
- .text:0004705C BFI R2, R0, #0x15, #1
- .text:00047060 STR R2, [R7]
- .text:00047064 LDRB R5, [R6,#5]
- .text:00047068 BFI R2, R5, #0x16, #2
- .text:0004706C STR R2, [R7]
- .text:00047070 BCC loc_470CC
- .text:00047074 LDRB R0, [R6,#6]
- .text:00047078 MOV R4, R9
- .text:0004707C LDRB R1, [R6,#7]
- .text:00047080 MOV R5, R3,LSR#16
- .text:00047084 STR R12, [R9]
- .text:00047088 BFC LR, #0, #0x10
- .text:0004708C STRH R3, [R4,#8]!
- .text:00047090 ORR R0, R1, R0,LSL#8
- .text:00047094 ORR R0, R0, LR
- .text:00047098 STRB R5, [R4,#2]
- .text:0004709C STR R0, [R9,#4]
- .text:000470A0 LDRB LR, [R6,#8]
- .text:000470A4 LDRB R1, [R6,#9]
- .text:000470A8 STRB R5, [R4,#2]
- .text:000470AC ORR R1, R1, LR,LSL#8
- .text:000470B0 STRH R3, [R4]
- .text:000470B4 STR R12, [R9]
- .text:000470B8 PKHBT R0, R0, R1,LSL#16
- .text:000470BC STR R0, [R9,#4]
- .text:000470C0 ADD R1, R6, #0xA
- .text:000470C4 LDR R5, [SP,#0x58+var_40]
- .text:000470C8 B loc_4713C
- .text:000470CC ; ---------------------------------------------------------------------------
- .text:000470CC
- .text:000470CC loc_470CC ; CODE XREF: sub_46544+B2C↑j
- .text:000470CC AND R0, R5, #3
- .text:000470D0 ADD R1, R6, #6
- .text:000470D4 CMP R0, #1
- .text:000470D8 BHI loc_47100
- .text:000470DC MOV R0, #0x2D0
- .text:000470E0 STR R12, [R9]
- .text:000470E4 MOVT R0, #0x240
- .text:000470E8 LDR R5, [SP,#0x58+var_40]
- .text:000470EC STR R0, [R9,#4]
- .text:000470F0 MOV R0, R3,LSR#16
- .text:000470F4 STRH R3, [R9,#8]
- .text:000470F8 STRB R0, [R9,#0xA]
- .text:000470FC B loc_4713C
- .text:00047100 ; ---------------------------------------------------------------------------
- .text:00047100
- .text:00047100 loc_47100 ; CODE XREF: sub_46544+B94↑j
- .text:00047100 LDR R5, [SP,#0x58+var_40]
- .text:00047104 BFC R3, #0x18, #8
- .text:00047108 CMP R0, #2
- .text:0004710C BNE loc_47120
- .text:00047110 MOV R0, #0x780
- .text:00047114 STR R12, [R9]
- .text:00047118 MOVT R0, #0x438
- .text:0004711C B loc_4712C
- .text:00047120 ; ---------------------------------------------------------------------------
- .text:00047120
- .text:00047120 loc_47120 ; CODE XREF: sub_46544+BC8↑j
- .text:00047120 MOV R0, #0xF00
- .text:00047124 STR R12, [R9]
- .text:00047128 MOVT R0, #0x870
- .text:0004712C
- .text:0004712C loc_4712C ; CODE XREF: sub_46544+BD8↑j
- .text:0004712C STR R0, [R9,#4]
- .text:00047130 MOV R0, R3,LSR#16
- .text:00047134 STRH R3, [R9,#8]
- .text:00047138 STRB R0, [R9,#0xA]
- .text:0004713C
- .text:0004713C loc_4713C ; CODE XREF: sub_46544+B84↑j
- .text:0004713C ; sub_46544+BB8↑j
- .text:0004713C LDRB R0, [R1]
- .text:00047140 BFI R2, R0, #0x18, #1
- .text:00047144 STR R2, [R7]
- .text:00047148 LDRB R0, [R1,#1]
- .text:0004714C BFI R2, R0, #0x19, #1
- .text:00047150 STR R2, [R7]
- .text:00047154 LDRB R0, [R1,#2]
- .text:00047158 BFI R2, R0, #0x1A, #1
- .text:0004715C STR R2, [R7]
- .text:00047160 LDRB R3, [R1,#4]
- .text:00047164 LDRB R0, [R1,#3]
- .text:00047168 LDRB R4, [R1,#5]
- .text:0004716C MOV R3, R3,LSL#16
- .text:00047170 LDRB R6, [R1,#6]
- .text:00047174 ORR R0, R3, R0,LSL#24
- .text:00047178 ORR R0, R0, R4,LSL#8
- .text:0004717C ORR R0, R0, R6
- .text:00047180 STR R0, [R11,#0x20]
- .text:00047184 LDRB R0, [R1,#7]
- .text:00047188 BFI R2, R0, #0x1B, #1
- .text:0004718C STR R2, [R7]
- .text:00047190 LDRB R0, [R1,#8]
- .text:00047194 BFI R2, R0, #0x1C, #1
- .text:00047198 STR R2, [R7]
- .text:0004719C LDR R2, [R11,#0x44]
- .text:000471A0 LDRB R0, [R1,#9]
- .text:000471A4 BFI R2, R0, #0, #3
- .text:000471A8 STR R2, [R11,#0x44]
- .text:000471AC LDRB R3, [R1,#0xA]
- .text:000471B0 AND R0, R0, #7
- .text:000471B4 CMP R0, #4
- .text:000471B8 BFI R2, R3, #3, #4
- .text:000471BC STR R2, [R11,#0x44]
- .text:000471C0 LDRB R3, [R1,#0xB]
- .text:000471C4 BFC R2, #7, #8
- .text:000471C8 ORR R2, R2, R3,LSL#7
- .text:000471CC STR R2, [R11,#0x44]
- .text:000471D0 LDRB R3, [R1,#0xC]
- .text:000471D4 BFC R2, #0xF, #8
- .text:000471D8 ORR R2, R2, R3,LSL#15
- .text:000471DC STR R2, [R11,#0x44]
- .text:000471E0 LDRB R3, [R1,#0xE]
- .text:000471E4 LDR R7, [R11,#0x48]
- .text:000471E8 LDRB R2, [R1,#0xD]
- .text:000471EC BFI R3, R2, #8, #6
- .text:000471F0 BFC R7, #0xE, #0xE
- .text:000471F4 ORR R2, R7, R3,LSL#14
- .text:000471F8 STR R2, [R11,#0x48]
- .text:000471FC LDRB R2, [R1,#0xF]
- .text:00047200 STRB R2, [R11,#0x4C]
- .text:00047204 LDRB R3, [R1,#0x10]
- .text:00047208 ORR R2, R2, R3,LSL#8
- .text:0004720C STRH R2, [R11,#0x4C]
- .text:00047210 BNE loc_47294
- .text:00047214 LDRB R2, [R1,#0x12]
- .text:00047218 MOV R4, R11
- .text:0004721C LDRB R0, [R1,#0x11]
- .text:00047220 ADD R6, R1, #0x16
- .text:00047224 LDR R3, [R4,#0x54]!
- .text:00047228 BFI R2, R0, #8, #2
- .text:0004722C BFC R3, #8, #0xA
- .text:00047230 ORR R0, R3, R2,LSL#8
- .text:00047234 STR R0, [R4]
- .text:00047238 LDRB R3, [R1,#0x14]
- .text:0004723C LDRB R2, [R1,#0x13]
- .text:00047240 BFC R0, #0x12, #0xA
- .text:00047244 BFI R3, R2, #8, #2
- .text:00047248 ORR R2, R0, R3,LSL#18
- .text:0004724C STR R2, [R4]
- .text:00047250 LDRB R0, [R1,#0x15]
- .text:00047254 BFC R2, #0, #8
- .text:00047258 ORR R2, R2, R0
- .text:0004725C STR R2, [R4]
- .text:00047260 CMP R0, #0
- .text:00047264 BEQ loc_472F4
- .text:00047268 BL _MemAlloc
- .text:0004726C STR R0, [R11,#0x50]
- .text:00047270 CMP R0, #0
- .text:00047274 LDR R1, [R4]
- .text:00047278 BEQ loc_472E8
- .text:0004727C UXTB R2, R1
- .text:00047280 MOV R1, R6
- .text:00047284 BL _MemCpy
- .text:00047288 LDRB R1, [R4]
- .text:0004728C UXTAB R6, R6, R1
- .text:00047290 B loc_472F4
- .text:00047294 ; ---------------------------------------------------------------------------
- .text:00047294
- .text:00047294 loc_47294 ; CODE XREF: sub_46544+CCC↑j
- .text:00047294 ADD R6, R1, #0x11
- .text:00047298 CMP R8, #0x13
- .text:0004729C BCC loc_472F4
- .text:000472A0 CMP R0, #1
- .text:000472A4 BNE loc_472F4
- .text:000472A8 LDRB R2, [R1,#0x12]
- .text:000472AC ADD R6, R1, #0x16
- .text:000472B0 LDRB R0, [R1,#0x11]
- .text:000472B4 LDRB R3, [R1,#0x13]
- .text:000472B8 LDR R7, [R11,#0x58]
- .text:000472BC MOV R2, R2,LSL#8
- .text:000472C0 ORR R0, R2, R0,LSL#16
- .text:000472C4 ORR R0, R0, R3
- .text:000472C8 AND R2, R7, #0xFF000000
- .text:000472CC ORR R0, R0, R2
- .text:000472D0 STR R0, [R11,#0x58]
- .text:000472D4 LDRB R0, [R1,#0x14]
- .text:000472D8 LDRB R2, [R1,#0x15]
- .text:000472DC ORR R0, R2, R0,LSL#8
- .text:000472E0 STRH R0, [R11,#0x5C]
- .text:000472E4 B loc_472F4
- .text:000472E8 ; ---------------------------------------------------------------------------
- .text:000472E8
- .text:000472E8 loc_472E8 ; CODE XREF: sub_46544+D34↑j
- .text:000472E8 BFC R1, #0, #8
- .text:000472EC STR R1, [R4]
- .text:000472F0 UXTAB R6, R6, R1
- .text:000472F4
- .text:000472F4 loc_472F4 ; CODE XREF: sub_46544+D20↑j
- .text:000472F4 ; sub_46544+D4C↑j ...
- .text:000472F4 ADD R0, R11, #0x5E
- .text:000472F8 MOV R1, R6
- .text:000472FC MOV R2, #0x40
- .text:00047300 BL _MemCpy
- .text:00047304 LDRB R0, [R6,#0x40]
- .text:00047308 LDRB R1, [R6,#0x41]
- .text:0004730C ORR R0, R1, R0,LSL#8
- .text:00047310 STRH R0, [R11,#0x9E]
- .text:00047314 MOV R0, R11
- .text:00047318 BL j_DatabaseManager_RefreshISO639ServiceName
- .text:0004731C LDR R0, [SP,#0x58+var_4C]
- .text:00047320 ADD R5, R5, #1
- .text:00047324 ADD R4, R6, #0x42
- .text:00047328 LDR R0, [R0]
- .text:0004732C CMP R5, R0
- .text:00047330 BCC loc_4682C
- .text:00047334 MOV R4, #1
- .text:00047338 B loc_4734C
- .text:0004733C ; ---------------------------------------------------------------------------
- .text:0004733C
- .text:0004733C loc_4733C ; CODE XREF: sub_46544+2AC↑j
- .text:0004733C LDR R0, =(off_B0EAC - 0x4734C)
- .text:00047340 MOV R1, #0
- .text:00047344 LDR R0, [PC,R0] ; off_B0EAC
- .text:00047348 STR R1, [R0]
- .text:0004734C
- .text:0004734C loc_4734C ; CODE XREF: sub_46544+120↑j
- .text:0004734C ; sub_46544+28C↑j ...
- .text:0004734C MOV R0, R4
- .text:00047350 ADD SP, SP, #0x20
- .text:00047354 VPOP {D8-D9}
- .text:00047358 ADD SP, SP, #4
- .text:0004735C LDMFD SP!, {R4-R11,PC}
- .text:00047360 ; ---------------------------------------------------------------------------
- .text:00047360
- .text:00047360 loc_47360 ; CODE XREF: sub_46544+248↑j
- .text:00047360 LDR R3, =(aConvertdatatos - 0x47374)
- .text:00047364 LDR R2, =(aThDtv - 0x4737C)
- .text:00047368 LDR R7, =(aSErrorProjectI - 0x47380)
- .text:0004736C ADD R3, PC, R3 ; "_ConvertDataToService"
- .text:00047370 STMEA SP, {R0,R1}
- .text:00047374 ADD R1, PC, R2 ; "TH_DTV"
- .text:00047378 ADD R2, PC, R7 ; " [%s] :: error : project id not matched"...
- .text:0004737C B loc_46658
- .text:0004737C ; End of function sub_46544
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement