📄 samba.fw.asm
字号:
samba.fw: file format binaryDisassembly of section .data:00000000 <.data>: /* * Interrupt vector */ 0: ea000013 b 0x54 /* Reset */ 4: eafffffe b 0x4 /* Illegal instruction */ 8: ea000054 b 0x160 /* SWI */ c: eafffffe b 0xc /* Prefetch Abort */ 10: eafffffe b 0x10 /* Data Abort */ 14: eafffffe b 0x14 /* (Reserved) */ 18: eafffffe b 0x18 /* IRQ */ 1c: e599820c ldr r8, [r9, #524] /* FIQ */ 20: e3a0d004 mov sp, #4 ; 0x4 24: e58bd128 str sp, [fp, #296] 28: e59ad04c ldr sp, [sl, #76] 2c: e59cd004 ldr sp, [ip, #4] 30: e21dd001 ands sp, sp, #1 ; 0x1 34: 125ef004 subnes pc, lr, #4 ; 0x4 38: e59ad03c ldr sp, [sl, #60] 3c: e21ddf80 ands sp, sp, #512 ; 0x200 40: 01cc80b0 streqh r8, [ip] 44: 11cc80b2 strneh r8, [ip, #2] 48: 13a0d001 movne sp, #1 ; 0x1 4c: 158cd004 strne sp, [ip, #4] 50: e25ef004 subs pc, lr, #4 ; 0x4 /* * Reset bootstrap */ /* Switch to FIQ mode and initialize banked registers */ 54: e10f0000 mrs r0, CPSR 58: e321f0d1 msr CPSR_c, #209 ; 0xd1 5c: e28f200c add r2, pc, #12 ; 0xc 60: e8921e00 ldmia r2, {r9, sl, fp, ip} 64: e3c00040 bic r0, r0, #64 ; 0x40 68: e121f000 msr CPSR_c, r0 6c: ea000003 b 0x80 70: fffcc000 swinv 0x00fcc000 74: fffff400 swinv 0x00fff400 78: fffff000 swinv 0x00fff000 7c: 00200f44 eoreq r0, r0, r4, asr #30 /* Initialize stack */ 80: e59fd0f4 ldr sp, [pc, #244] ; 0x17c /* Initialize flash controller */ 84: e3e010ff mvn r1, #255 /* Memory controller base */ 88: e59f00f0 ldr r0, [pc, #240] ; 0x180 8c: e5810060 str r0, [r1, #96] /* Try to use an external oscillator */ 90: e59f10ec ldr r1, [pc, #236] ; 0x184 94: e3a00002 mov r0, #2 ; 0x2 98: e5810020 str r0, [r1, #32] /* Set oscillator bypass */ 9c: e3a0002d mov r0, #45 ; 0x2d a0: e2500001 subs r0, r0, #1 ; 0x1 a4: 8afffffd bhi 0xa0 /* Wait for input to stabilize */ /* Test Main Clock Ready */ a8: e3a04b40 mov r4, #65536 ; 0x10000 ac: e5913024 ldr r3, [r1, #36] b0: e0043003 and r3, r4, r3 b4: e3530b40 cmp r3, #65536 ; 0x10000 b8: 0a000006 beq 0xd8 /* External oscillator configured */ /* Start Main Oscillator */ bc: e59f00c4 ldr r0, [pc, #196] ; 0x188 c0: e5810020 str r0, [r1, #32] c4: e3a04001 mov r4, #1 ; 0x1 c8: e5913068 ldr r3, [r1, #104] cc: e0043003 and r3, r4, r3 d0: e3530001 cmp r3, #1 ; 0x1 d4: 1afffffb bne 0xc8 /* Wait for Main Oscillator stabilized */ /* Set Main Clock to use Main Oscillator */ d8: e3a00001 mov r0, #1 ; 0x1 dc: e5810030 str r0, [r1, #48] /* Main clock, no divisor */ e0: e3a04008 mov r4, #8 ; 0x8 e4: e5913068 ldr r3, [r1, #104] e8: e0043003 and r3, r4, r3 ec: e3530008 cmp r3, #8 ; 0x8 f0: 1afffffb bne 0xe4 /* Wait for Master Clock ready */ /* Copy OS core to ram */ f4: e3a00000 mov r0, #0 ; 0x0 f8: e3a01d50 mov r1, #5120 ; 0x1400 fc: e3a02980 mov r2, #2097152 ; 0x200000 100: e490a004 ldr sl, [r0], #4 104: e482a004 str sl, [r2], #4 108: e1500001 cmp r0, r1 10c: 3afffffb bcc 0x100 /* Copy more stuff to RAM */ 110: e28f202c add r2, pc, #44 ; 0x2c 114: e892001b ldmia r2, {r0, r1, r3, r4} 118: e1500001 cmp r0, r1 11c: 0a000003 beq 0x130 120: e1510003 cmp r1, r3 124: 34902004 ldrcc r2, [r0], #4 128: 34812004 strcc r2, [r1], #4 12c: 3afffffb bcc 0x120 130: e3a02000 mov r2, #0 ; 0x0 134: e1530004 cmp r3, r4 138: 34832004 strcc r2, [r3], #4 13c: 3afffffc bcc 0x134 140: ea000003 b 0x154 144: 00200f2c eoreq /* */ 148: 00200f2c eoreq /* */ 14c: 00200f3c eoreq /* */ 150: 00200f84 eoreq /* */ /* Call the Boot0 additional bootstrap */ 154: e59f0030 ldr r0, [pc, #48] ; 0x18c 158: e1a0e00f mov lr, pc 15c: e12fff10 bx r0 /* Call into Main, the OS bootup sequence. */ 160: e59f0028 ldr r0, [pc, #40] ; 0x190 164: e1a0e00f mov lr, pc 168: e12fff10 bx r0 /* Crash if Main returns. */ 16c: eafffffe b 0x16c /* Branch to something else, dunno what yet. */ 170: e59fe01c ldr lr, [pc, #28] ; 0x194 174: e12fff10 bx r0 178: eafffffe b 0x178 17c: 00202000 /* Stack pointer address */ 180: 00340100 /* Initial flash controller mode */ 184: fffffc00 /* Power Mgmt Controller base*/ 188: 00004001 /* Oscillator configuration */ 18c: 0020038d /* Address of Boot0 */ 190: 00200c9b /* Address of Main */ 194: 00200160 /* Address of ??? */ 198: b4104998 ldrlt r4, [r0], #-2456 19c: 60882001 addvs r2, r8, r1 1a0: 22004897 andcs r4, r0, #9895936 ; 0x970000 1a4: 20016082 andcs r6, r1, r2, lsl #1 1a8: 42430280 submi r0, r3, #8 ; 0x8 1ac: 48956158 ldmmiia r5, {r3, r4, r6, r8, sp, lr} 1b0: 62812104 addvs r2, r1, #1 ; 0x1 1b4: 68446804 stmvsda r4, {r2, fp, sp, lr}^ 1b8: 009c6302 addeqs r6, ip, r2, lsl #6 1bc: 4a9160a2 bmi 0xfe45844c 1c0: 60513240 subvss r3, r1, r0, asr #4 1c4: 4a906241 bmi 0xfe418ad0 1c8: 605001c8 subvss r0, r0, r8, asr #3 1cc: bc106159 ldflts f6, [r0], {89} 1d0: b4f04770 ldrltbt r4, [r0], #1904 1d4: 6843488d stmvsda r3, {r0, r2, r3, r7, fp, lr}^ 1d8: 2504488b strcs r4, [r4, #-2187] 1dc: 3c401c04 mcrrcc 12, 0, r1, r0, cr4 1e0: 2b002201 blcs 0x89ec 1e4: d11d498a tstle sp, sl, lsl #19 1e8: 610b424b tstvs fp, fp, asr #4 1ec: 0c034e84 stceq 14, cr4, [r3], {132} 1f0: 4b8260b3 blmi 0xfe0984c4 1f4: 1c0b605a stcne 0, cr6, [fp], {90} 1f8: 0253611d subeqs r6, r3, #1073741831 ; 0x40000007 1fc: 60236163 eorvs r6, r3, r3, ror #2 200: 6306424e tstvs r6, #-536870908 ; 0xe0000004 204: 4f836066 swimi 0x00836066 208: 60fe1306 rscvss r1, lr, r6, lsl #6 20c: 008f2620 addeq r2, pc, r0, lsr #12 210: 4e7c60be mrcmi 0, 3, r6, cr12, cr14, {5} 214: 60353640 eorvss r3, r5, r0, asr #12 218: 62354e7a eorvss r4, r5, #1952 ; 0x7a0 21c: 600368c6 andvs r6, r3, r6, asr #17 220: 605a4b7a subvss r4, sl, sl, ror fp 224: 685e4b79 ldmvsda lr, {r0, r3, r4, r5, r6, r8, r9, fp, lr}^ 228: 37084f78 smlsdxcc r8, r8, pc, r4 22c: d1692e01 cmnle r9, r1, lsl #28 230: 1c3c6878 ldcne 8, cr6, [ip], #-480 234: d0642800 rsble r2, r4, r0, lsl #16 238: 1c3d8860 ldcne 8, cr8, [sp], #-384 23c: 1b40882d blne 0x10222f8 240: 4d730400 cfldrdmi mvd0, [r3] 244: 27ad0c00 strcs r0, [sp, r0, lsl #24]! 248: 354000ff strccb r0, [r0, #-255] 24c: 801842b8 ldrhih r4, [r8], -r8 250: d2464e71 suble r4, r6, #1808 ; 0x710 254: d2012888 andle r2, r1, #8912896 ; 0x880000 258: e0234870 eor r4, r3, r0, ror r8 25c: 3a881c02 bcc 0xfe20726c 260: d2012a48 andle r2, r1, #294912 ; 0x48000 264: e01d486e ands r4, sp, lr, ror #16 268: 3ad01c02 bcc 0xff407278 26c: d2012ad0 andle r2, r1, #851968 ; 0xd0000 270: e017486c ands r4, r7, ip, ror #16 274: 3aff1c02 bcc 0xfffc7284 278: 2a883aa1 bcs 0xfe20ed04 27c: 486ad201 stmmida sl!, {r0, r9, ip, lr, pc}^ 280: 2245e010 subcs lr, r5, #16 ; 0x10 284: 27ff00d2 undefined 288: 1a8237e9 bne 0xfe08e234 28c: d20142ba andle r4, r1, #-1610612725 ; 0xa000000b 290: e0074866 and r4, r7, r6, ror #16 294: 01122241 tsteq r2, r1, asr #4 298: 22ff1a80 rsccss r1, pc, #524288 ; 0x80000 29c: 42903259 addmis r3, r0, #-1879048187 ; 0x90000005 2a0: 4863d201 stmmida r3!, {r0, r9, ip, lr, pc}^ 2a4: 200062c8 andcs r6, r0, r8, asr #5 2a8: 07526aaa ldreqb r6, [r2, -sl, lsr #21] 2ac: 1c02d403 cfstrsne mvf13, [r2], {3} 2b0: 42b23001 adcmis r3, r2, #1 ; 0x1 2b4: 2009d3f8 strcsd sp, [r9], -r8 2b8: 20006308 andcs r6, r0, r8, lsl #6 2bc: 07126aaa ldreq r6, [r2, -sl, lsr #21] 2c0: 1c02d403 cfstrsne mvf13, [r2], {3} 2c4: 42b23001 adcmis r3, r2, #1 ; 0x1 2c8: 200bd3f8 strcsd sp, [fp], -r8 2cc: 20006308 andcs r6, r0, r8, lsl #6 2d0: 07096aa9 streq r6, [r9, -r9, lsr #21] 2d4: 1c01d403 cfstrsne mvf13, [r1], {3} 2d8: 42b13001 adcmis r3, r1, #1 ; 0x1 2dc: 2002d3f8 strcsd sp, [r2], -r8 2e0: 630ae00c tstvs sl, #12 ; 0xc 2e4: 6aaa2000 bvs 0xfea882ec 2e8: d4030712 strle r0, [r3], #-1810 2ec: 30011c02 andcc r1, r1, r2, lsl #24 2f0: d3f842b2 mvnles r4, #536870923 ; 0x2000000b 2f4: 0200203f andeq r2, r0, #63 ; 0x3f 2f8: 200362c8 andcs r6, r3, r8, asr #5 2fc: 20006058 andcs r6, r0, r8, asr r0 300: e0406060 sub r6, r0, r0, rrx 304: 6859e7ff ldmvsda r9, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, sp, lr, pc}^ 308: d10a2902 tstle sl, r2, lsl #18 30c: 28006878 stmcsda r0, {r3, r4, r5, r6, fp, sp, lr} 310: 8878d039 ldmhida r8!, {r0, r3, r4, r5, ip, lr, pc}^ 314: 1a408839 bne 0x1022400 318: 20008018 andcs r8, r0, r8, lsl r0 31c: 20036078 andcs r6, r3, r8, ror r0 320: 6859e02c ldmvsda r9, {r2, r3, r5, sp, lr, pc}^ 324: d1102903 tstle r0, r3, lsl #18 328: 63010249 tstvs r1, #-1879048188 ; 0x90000004 32c: 48396061 ldmmida r9!, {r0, r5, r6, sp, lr} 330: 600121ac andvs r2, r1, ip, lsr #3 334: 31408819 cmpcc r0, r9, lsl r8 338: 620109c9 andvs r0, r1, #3293184 ; 0x324000 33c: 01892123 orreq r2, r9, r3, lsr #2 340: 21506041 cmpcs r0, r1, asr #32 344: 605d6001 subvss r6, sp, r1 348: 6858e01d ldmvsda r8, {r0, r2, r3, r4, sp, lr, pc}^ 34c: d11a2804 tstle sl, r4, lsl #16 350: 69484930 stmvsdb r8, {r4, r5, r8, fp, lr}^ 354: 0f400600 swieq 0x00400600 358: 6988d004 stmvsib r8, {r2, ip, lr, pc} 35c: 300120ff strccd r2, [r1], -pc 360: e00f6008 and r6, pc, r8 364: 07c06948 streqb r6, [r0, r8, asr #18] 368: 6988d50d stmvsib r8, {r0, r2, r3, r8, sl, ip, lr, pc} 36c: d1072823 tstle r7, r3, lsr #16 370: 07806948 streq r6, [r0, r8, asr #18] 374: 203ed5fc ldrcssh sp, [lr], -ip 378: 200561c8 andcs r6, r5, r8, asr #3 37c: e0026058 and r6, r2, r8, asr r0 380: d0002880 andle r2, r0, r0, lsl #17 384: 6858605a ldmvsda r8, {r1, r3, r4, r6, sp, lr}^ 388: 4770bcf0 undefined 38c: 4829b510 stmmida r9!, {r4, r8, sl, ip, sp, pc} 390: 2400491f strcs r4, [r0], #-2335 394: 4a1e62c8 bmi 0x798ebc 398: 32404b1f subcc r4, r0, #31744 ; 0x7c00 39c: 07406a90 undefined 3a0: 1c20d403 cfstrsne mvf13, [r0], #-12 3a4: 42983401 addmis r3, r8, #16777216 ; 0x1000000 3a8: 2001d3f8 strcsd sp, [r1], -r8 3ac: 03c04a22 biceq r4, r0, #139264 ; 0x22000 3b0: 4a216050 bmi 0x8584f8 3b4: 3a404821 bcc 0x1012440 3b8: 48166090 ldmmida r6, {r4, r7, sp, lr} 3bc: 68003040 stmvsda r0, {r6, ip, sp} 3c0: 42904a1f addmis r4, r0, #126976 ; 0x1f000 3c4: 2080d009 addcs sp, r0, r9 3c8: 01006008 tsteq r0, r8 3cc: 490e6108 stmmidb lr, {r3, r8, sp, lr} 3d0: 39400140 stmccdb r0, {r6, r8}^ 3d4: 61086008 tstvs r8, r8 3d8: 490c6348 stmmidb ip, {r3, r6, r8, r9, sp, lr} 3dc: 31082000 tstcc r8, r0 3e0: 80488008 subhi r8, r8, r8 3e4: 48176048 ldmmida r7, {r3, r6, sp, lr} 3e8: f92bf000 stmnvdb fp!, {ip, sp, lr, pc} 3ec: 48174916 ldmmida r7, {r1, r2, r4, r8, fp, lr} 3f0: fb2bf000 blx 0xafc3fa 3f4: bc08bc10 stclt 12, cr11, [r8], {16} 3f8: 00004718 andeq r4, r0, r8, lsl r7 3fc: fffcc000 swinv 0x00fcc000 400: fffcc200 swinv 0x00fcc200
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -