Announcement

Collapse
No announcement yet.

Need help finding a code (through breakpoints(?))

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Need help finding a code (through breakpoints(?))

    Hi,
    I have recently found a code for Skyward Sword (PAL) to modify the firs shot arrow's speed concerning to the X-, y- and z-axis of the stage. But I'd like to find the address that contains a float value which defines the speed of ALL arrows (such a code exists for OOT and Wind Waker (and Twilight Princess I think).
    I tried setting a write-breakpoint for the speed's address. There I have found addresses as registers. But non of them contained a value that defines the initial value of speed for the arrows.
    Any advice?

    thanks for reading
    My Website
    Hacking YouTube Channel


    No requests, please

  • #2
    If you can do some kind of trace log it would be easy.
    Spoiler Alert! Click to view...

    THE BAD GUY!!!!!!

    Comment


    • #3
      this?

      Code:
       CR:48000422  XER:00000000  CTR:8038B8F0 DSIS:02400000
       DAR:80B61638 SRR0:802F3090 SRR1:0000B032   LR:802F3084
        r0:00000717   r1:806894F8   r2:8057FF60   r3:80689502
        r4:804F6B30   r5:80B61626   r6:80689506   r7:00000000
        r8:00000000   r9:00000000  r10:00000000  r11:80689518
       r12:8038B8F0  r13:8057A9C0  r14:00000000  r15:00000000
       r16:00000000  r17:00000000  r18:00000000  r19:00000000
       r20:00000000  r21:00000000  r22:00000000  r23:00000000
       r24:00000000  r25:00000000  r26:00000000  r27:43300000
       r28:80B61C04  r29:80B61638  r30:80B61624  r31:80B61626
      
        f0:4353703F   f1:3F5BD691   f2:3F5B9421   f3:3C4A7935
        f4:3DA80000   f5:4585CD22   f6:3FFFFF45   f7:00000000
        f8:00000000   f9:3E323FFF  f10:00000000  f11:BF9BF7FF
       f12:4401010F  f13:3F588F32  f14:00000000  f15:00000000
       f16:00000000  f17:00000000  f18:00000000  f19:00000000
       f20:00000000  f21:00000000  f22:00000000  f23:00000000
       f24:00000000  f25:00000000  f26:00000000  f27:00000000
       f28:00000000  f29:00000000  f30:437A0000  f31:437637F7
      Code:
      802F3090:  D01D0000	stfs	f0,0(r29)	f0 = -126,094	r29 = 80B61638	[80B61638] = 00000000
      My Website
      Hacking YouTube Channel


      No requests, please

      Comment


      • #4
        Trace log is a log file of all lines of code executed before the break occurred, this helps in figuring out where certain values came from and branches were taken. Maybe do a break on read and since you have a break on write already you can look between the addresses of the break on read and break on write.
        Spoiler Alert! Click to view...

        THE BAD GUY!!!!!!

        Comment


        • #5
          ok. thanks

          break on read:
          Code:
          8025E390:  FFC00090	fmr	f30,f0
          8025E394:  7FE3FB78	mr	r3,r31
          8025E398:  4BFAB839	bl	0x80209bd0
          8025E39C:  EC1E0072	fmuls	f0,f30,f1
          8025E3A0:  EFFF002A	fadds	f31,f31,f0
          8025E3A4:  C022D6B8	lfs	f1,-10568(r2)
          8025E3A8:  C01E06A0	lfs	f0,1696(r30)
          8025E3AC:  C11E0158	lfs	f8,344(r30)
          8025E3B0:  ED21002A	fadds	f9,f1,f0
          8025E3B4:  C0FE0154	lfs	f7,340(r30)
          
          8025E3B8:  C0DE0150	lfs	f6,336(r30)
          
          8025E3BC:  C0BE00C8	lfs	f5,200(r30)
          8025E3C0:  EC080272	fmuls	f0,f8,f9
          8025E3C4:  C09E00C4	lfs	f4,196(r30)
          8025E3C8:  EC270272	fmuls	f1,f7,f9
          8025E3CC:  C07E00C0	lfs	f3,192(r30)
          8025E3D0:  EC460272	fmuls	f2,f6,f9
          8025E3D4:  D0010034	stfs	f0,52(r1)
          8025E3D8:  EC05002A	fadds	f0,f5,f0
          8025E3DC:  D041002C	stfs	f2,44(r1)
          8025E3E0:  ED44082A	fadds	f10,f4,f1
          8025E3E4:  EC43102A	fadds	f2,f3,f2
          8025E3E8:  D0010040	stfs	f0,64(r1)
          8025E3EC:  D0410038	stfs	f2,56(r1)
          8025E3F0:  D141003C	stfs	f10,60(r1)
          8025E3F4:  801E067C	lwz	r0,1660(r30)
          8025E3F8:  807E037C	lwz	r3,892(r30)
          8025E3FC:  540006B5	rlwinm.	r0,r0,0,26,26
          8025E400:  D0210030	stfs	f1,48(r1)
          8025E404:  60600001	ori	r0,r3,1
          8025E408:  D0410020	stfs	f2,32(r1)
          8025E40C:  D1410024	stfs	f10,36(r1)
          8025E410:  D0010028	stfs	f0,40(r1)
          8025E414:  901E037C	stw	r0,892(r30)
          8025E418:  40820034	bne-	0x8025e44c
          8025E41C:  881E0680	lbz	r0,1664(r30)
          8025E420:  540006F7	rlwinm.	r0,r0,0,27,27
          8025E424:  40820010	bne-	0x8025e434
          8025E428:  7FC3F378	mr	r3,r30
          8025E42C:  3880045C	li	r4,1116
          8025E430:  4BDCF431	bl	0x8002d860
          8025E434:  7FC3F378	mr	r3,r30
          8025E438:  389E00C0	addi	r4,r30,192
          8025E43C:  38A10038	addi	r5,r1,56
          8025E440:  38C00001	li	r6,1
          8025E444:  4BFFFCFD	bl	0x8025e140
          8025E448:  4800007C	b	0x8025e4c4
          8025E44C:  C041003C	lfs	f2,60(r1)
          8025E450:  C01E06D8	lfs	f0,1752(r30)
          8025E454:  C022D6C8	lfs	f1,-10552(r2)
          8025E458:  ED420028	fsubs	f10,f2,f0
          8025E45C:  FC0A0840	fcmpo	cr0,f10,f1
          8025E460:  40800064	bge-	0x8025e4c4
          8025E464:  C01E00C4	lfs	f0,196(r30)
          8025E468:  ED415028	fsubs	f10,f1,f10
          8025E46C:  EC020028	fsubs	f0,f2,f0
          8025E470:  FC200210	fabs	f1,f0
          8025E474:  FC015040	fcmpo	cr0,f1,f10
          8025E478:  4081004C	ble-	0x8025e4c4
          8025E47C:  EC015028	fsubs	f0,f1,f10
          break on write:
          Code:
          802F3068:  3861000C	addi	r3,r1,12
          802F306C:  B001000C	sth	r0,12(r1)
          802F3070:  EFFE0072	fmuls	f31,f30,f1
          802F3074:  E023B000	psq_l	f1,0(r3),1,3
          802F3078:  C002E468	lfs	f0,-7064(r2)
          802F307C:  EC200072	fmuls	f1,f0,f1
          802F3080:  48144B21	bl	0x80437ba0
          802F3084:  EC1F0072	fmuls	f0,f31,f1
          802F3088:  A81E0000	lha	r0,0(r30)
          802F308C:  3861000A	addi	r3,r1,10
          
          802F3090:  D01D0000	stfs	f0,0(r29)
          
          802F3094:  B001000A	sth	r0,10(r1)
          802F3098:  E023B000	psq_l	f1,0(r3),1,3
          802F309C:  C002E468	lfs	f0,-7064(r2)
          802F30A0:  EC200072	fmuls	f1,f0,f1
          802F30A4:  48144AFD	bl	0x80437ba0
          802F30A8:  EC1E0072	fmuls	f0,f30,f1
          802F30AC:  A81F0000	lha	r0,0(r31)
          802F30B0:  38610008	addi	r3,r1,8
          802F30B4:  D01D0004	stfs	f0,4(r29)
          802F30B8:  B0010008	sth	r0,8(r1)
          802F30BC:  E023B000	psq_l	f1,0(r3),1,3
          802F30C0:  C002E468	lfs	f0,-7064(r2)
          802F30C4:  EC200072	fmuls	f1,f0,f1
          802F30C8:  48144B59	bl	0x80437c20
          802F30CC:  EC1F0072	fmuls	f0,f31,f1
          802F30D0:  D01D0008	stfs	f0,8(r29)
          802F30D4:  E3E10038	psq_l	f31,56(r1),0,0
          802F30D8:  CBE10030	lfd	f31,48(r1)
          802F30DC:  E3C10028	psq_l	f30,40(r1),0,0
          802F30E0:  CBC10020	lfd	f30,32(r1)
          802F30E4:  83E1001C	lwz	r31,28(r1)
          802F30E8:  83C10018	lwz	r30,24(r1)
          802F30EC:  83A10014	lwz	r29,20(r1)
          802F30F0:  80010044	lwz	r0,68(r1)
          802F30F4:  7C0803A6	mtlr	r0
          802F30F8:  38210040	addi	r1,r1,64
          802F30FC:  4E800020	blr	
          802F3100:  9421FFF0	stwu	r1,-16(r1)
          802F3104:  7C0802A6	mflr	r0
          802F3108:  90010014	stw	r0,20(r1)
          802F310C:  93E1000C	stw	r31,12(r1)
          802F3110:  7C7F1B78	mr	r31,r3
          802F3114:  480C676D	bl	0x803b9880
          802F3118:  FC400A10	fabs	f2,f1
          802F311C:  C002E46C	lfs	f0,-7060(r2)
          802F3120:  FC401018	frsp	f2,f2
          802F3124:  FC020040	fcmpo	cr0,f2,f0
          802F3128:  4C401382	cror	2,0,2
          802F312C:  7C000026	mfcr	r0
          802F3130:  54001FFF	rlwinm.	r0,r0,3,31,31
          802F3134:  40820030	bne-	0x802f3164
          802F3138:  C002E470	lfs	f0,-7056(r2)
          802F313C:  C07F0000	lfs	f3,0(r31)
          802F3140:  EC800824	fdivs	f4,f0,f1
          802F3144:  C05F0004	lfs	f2,4(r31)
          802F3148:  C01F0008	lfs	f0,8(r31)
          802F314C:  EC630132	fmuls	f3,f3,f4
          802F3150:  EC420132	fmuls	f2,f2,f4
          802F3154:  EC000132	fmuls	f0,f0,f4
          break on read/write:
          Code:
          802F3068:  3861000C	addi	r3,r1,12
          802F306C:  B001000C	sth	r0,12(r1)
          802F3070:  EFFE0072	fmuls	f31,f30,f1
          802F3074:  E023B000	psq_l	f1,0(r3),1,3
          802F3078:  C002E468	lfs	f0,-7064(r2)
          802F307C:  EC200072	fmuls	f1,f0,f1
          802F3080:  48144B21	bl	0x80437ba0
          802F3084:  EC1F0072	fmuls	f0,f31,f1
          802F3088:  A81E0000	lha	r0,0(r30)
          802F308C:  3861000A	addi	r3,r1,10
          
          802F3090:  D01D0000	stfs	f0,0(r29)
          
          802F3094:  B001000A	sth	r0,10(r1)
          802F3098:  E023B000	psq_l	f1,0(r3),1,3
          802F309C:  C002E468	lfs	f0,-7064(r2)
          802F30A0:  EC200072	fmuls	f1,f0,f1
          802F30A4:  48144AFD	bl	0x80437ba0
          802F30A8:  EC1E0072	fmuls	f0,f30,f1
          802F30AC:  A81F0000	lha	r0,0(r31)
          802F30B0:  38610008	addi	r3,r1,8
          802F30B4:  D01D0004	stfs	f0,4(r29)
          802F30B8:  B0010008	sth	r0,8(r1)
          802F30BC:  E023B000	psq_l	f1,0(r3),1,3
          802F30C0:  C002E468	lfs	f0,-7064(r2)
          802F30C4:  EC200072	fmuls	f1,f0,f1
          802F30C8:  48144B59	bl	0x80437c20
          802F30CC:  EC1F0072	fmuls	f0,f31,f1
          802F30D0:  D01D0008	stfs	f0,8(r29)
          802F30D4:  E3E10038	psq_l	f31,56(r1),0,0
          802F30D8:  CBE10030	lfd	f31,48(r1)
          802F30DC:  E3C10028	psq_l	f30,40(r1),0,0
          802F30E0:  CBC10020	lfd	f30,32(r1)
          802F30E4:  83E1001C	lwz	r31,28(r1)
          802F30E8:  83C10018	lwz	r30,24(r1)
          802F30EC:  83A10014	lwz	r29,20(r1)
          802F30F0:  80010044	lwz	r0,68(r1)
          802F30F4:  7C0803A6	mtlr	r0
          802F30F8:  38210040	addi	r1,r1,64
          802F30FC:  4E800020	blr	
          802F3100:  9421FFF0	stwu	r1,-16(r1)
          802F3104:  7C0802A6	mflr	r0
          802F3108:  90010014	stw	r0,20(r1)
          802F310C:  93E1000C	stw	r31,12(r1)
          802F3110:  7C7F1B78	mr	r31,r3
          802F3114:  480C676D	bl	0x803b9880
          802F3118:  FC400A10	fabs	f2,f1
          802F311C:  C002E46C	lfs	f0,-7060(r2)
          802F3120:  FC401018	frsp	f2,f2
          802F3124:  FC020040	fcmpo	cr0,f2,f0
          802F3128:  4C401382	cror	2,0,2
          802F312C:  7C000026	mfcr	r0
          802F3130:  54001FFF	rlwinm.	r0,r0,3,31,31
          802F3134:  40820030	bne-	0x802f3164
          802F3138:  C002E470	lfs	f0,-7056(r2)
          802F313C:  C07F0000	lfs	f3,0(r31)
          802F3140:  EC800824	fdivs	f4,f0,f1
          802F3144:  C05F0004	lfs	f2,4(r31)
          802F3148:  C01F0008	lfs	f0,8(r31)
          802F314C:  EC630132	fmuls	f3,f3,f4
          802F3150:  EC420132	fmuls	f2,f2,f4
          802F3154:  EC000132	fmuls	f0,f0,f4
          I often find a floating point value at 8057FF60 with 43480000 (200) that looks like the arrow's speed for me. but changing it does nothing.
          My Website
          Hacking YouTube Channel


          No requests, please

          Comment


          • #6
            Ok so what is the breakpoint address you get on read and on write? I looked at both above and I don't see the read going to the write in the log there. Basically what I was saying is to make a log from the read address all the way to the write address if at all possible, then we break things down and look at possible addresses to poke.
            Spoiler Alert! Click to view...

            THE BAD GUY!!!!!!

            Comment


            • #7
              breakpoint type: read: at 80B61638

              (you can see the results in the post above)
              then i set a breakpoint at 8025F224
              butcannot read from 8025F224

              so i set the breakpoint to execute. it gave me the same log.

              breakpoint type write and read/write at 80B61638:
              (see above again)

              execute at 802F3090 gives me the same
              read or write don't work there (i don't think that the game overwrites these instructions)


              so the read address is: 8025F224: C0030150 lfs f0,336(r3)
              and the write address is: 802F3090: D01D0000 stfs f0,0(r29)

              the logs being displayed beneath the register logs don't reach each other. but i can get the entire functions through the disassembler. i will mark with word wraps where the addresses of the read and break are

              Code:
              8025F1F0:  9421FF60	stwu	r1,-160(r1)
              8025F1F4:  7C0802A6	mflr	r0
              8025F1F8:  900100A4	stw	r0,164(r1)
              8025F1FC:  39610070	addi	r11,r1,112
              8025F200:  DBE10090	stfd	f31,144(r1)
              8025F204:  F3E10098	psq_st	f31,152(r1),0,0
              8025F208:  DBC10080	stfd	f30,128(r1)
              8025F20C:  F3C10088	psq_st	f30,136(r1),0,0
              8025F210:  DBA10070	stfd	f29,112(r1)
              8025F214:  F3A10078	psq_st	f29,120(r1),0,0
              8025F218:  48268111	bl	0x804c7328
              8025F21C:  C04300C0	lfs	f2,192(r3)
              8025F220:  3FC0805B	lis	r30,-32677
              
              8025F224:  C0030150	lfs	f0,336(r3) (READ)
              
              8025F228:  7C7D1B78	mr	r29,r3
              8025F22C:  C08306A0	lfs	f4,1696(r3)
              8025F230:  3BDE5F68	addi	r30,r30,24424
              8025F234:  EC62002A	fadds	f3,f2,f0
              8025F238:  C0230154	lfs	f1,340(r3)
              8025F23C:  ECC00132	fmuls	f6,f0,f4
              8025F240:  C04300C4	lfs	f2,196(r3)
              8025F244:  ECA10132	fmuls	f5,f1,f4
              8025F248:  C0030158	lfs	f0,344(r3)
              8025F24C:  EC42082A	fadds	f2,f2,f1
              8025F250:  C02300C8	lfs	f1,200(r3)
              8025F254:  EC800132	fmuls	f4,f0,f4
              8025F258:  D06300C0	stfs	f3,192(r3)
              8025F25C:  EC01002A	fadds	f0,f1,f0
              8025F260:  EC22282A	fadds	f1,f2,f5
              8025F264:  D04300C4	stfs	f2,196(r3)
              8025F268:  EC43302A	fadds	f2,f3,f6
              8025F26C:  D00300C8	stfs	f0,200(r3)
              8025F270:  EC00202A	fadds	f0,f0,f4
              8025F274:  D0410048	stfs	f2,72(r1)
              8025F278:  D021004C	stfs	f1,76(r1)
              8025F27C:  D0010050	stfs	f0,80(r1)
              8025F280:  8003067C	lwz	r0,1660(r3)
              8025F284:  D0C10030	stfs	f6,48(r1)
              8025F288:  540006B5	rlwinm.	r0,r0,0,26,26
              8025F28C:  D0A10034	stfs	f5,52(r1)
              8025F290:  D0810038	stfs	f4,56(r1)
              8025F294:  D0410024	stfs	f2,36(r1)
              8025F298:  D0210028	stfs	f1,40(r1)
              8025F29C:  D001002C	stfs	f0,44(r1)
              8025F2A0:  40820164	bne-	0x8025f404
              8025F2A4:  7FA6EB78	mr	r6,r29
              8025F2A8:  387E0010	addi	r3,r30,16
              8025F2AC:  389D0118	addi	r4,r29,280
              8025F2B0:  38A10048	addi	r5,r1,72
              8025F2B4:  480E31DD	bl	0x80342490
              8025F2B8:  480DBE29	bl	0x8033b0e0
              8025F2BC:  389E0010	addi	r4,r30,16
              8025F2C0:  480DB551	bl	0x8033a810
              8025F2C4:  2C030000	cmpwi	r3,0
              8025F2C8:  41820024	beq-	0x8025f2ec
              8025F2CC:  387E0010	addi	r3,r30,16
              8025F2D0:  C0030068	lfs	f0,104(r3)
              8025F2D4:  C0230064	lfs	f1,100(r3)
              8025F2D8:  C0430060	lfs	f2,96(r3)
              8025F2DC:  D041003C	stfs	f2,60(r1)
              8025F2E0:  D0210040	stfs	f1,64(r1)
              8025F2E4:  D0010044	stfs	f0,68(r1)
              8025F2E8:  4800001C	b	0x8025f304
              8025F2EC:  C0010050	lfs	f0,80(r1)
              8025F2F0:  C021004C	lfs	f1,76(r1)
              8025F2F4:  C0410048	lfs	f2,72(r1)
              8025F2F8:  D041003C	stfs	f2,60(r1)
              8025F2FC:  D0210040	stfs	f1,64(r1)
              8025F300:  D0010044	stfs	f0,68(r1)
              8025F304:  7FA3EB78	mr	r3,r29
              8025F308:  389D0118	addi	r4,r29,280
              8025F30C:  38A1003C	addi	r5,r1,60
              8025F310:  38C00000	li	r6,0
              8025F314:  4BFFEE2D	bl	0x8025e140
              8025F318:  2C030000	cmpwi	r3,0
              8025F31C:  418200E8	beq-	0x8025f404
              8025F320:  801D067C	lwz	r0,1660(r29)
              8025F324:  3C80805D	lis	r4,-32675
              8025F328:  388418A0	addi	r4,r4,6304
              8025F32C:  387D0150	addi	r3,r29,336
              8025F330:  60000020	ori	r0,r0,32
              8025F334:  540005EA	rlwinm	r0,r0,0,23,21
              8025F338:  901D067C	stw	r0,1660(r29)
              8025F33C:  C0040068	lfs	f0,104(r4)
              8025F340:  C0240064	lfs	f1,100(r4)
              8025F344:  C0440060	lfs	f2,96(r4)
              8025F348:  D05D06D4	stfs	f2,1748(r29)
              8025F34C:  D03D06D8	stfs	f1,1752(r29)
              8025F350:  D01D06DC	stfs	f0,1756(r29)
              8025F354:  48093DAD	bl	0x802f3100
              8025F358:  C05D0158	lfs	f2,344(r29)
              8025F35C:  C062D6CC	lfs	f3,-10548(r2)
              8025F360:  C03D0154	lfs	f1,340(r29)
              8025F364:  EC8200F2	fmuls	f4,f2,f3
              8025F368:  C01D0150	lfs	f0,336(r29)
              8025F36C:  ECA100F2	fmuls	f5,f1,f3
              8025F370:  C0410044	lfs	f2,68(r1)
              8025F374:  ECC000F2	fmuls	f6,f0,f3
              8025F378:  C0210040	lfs	f1,64(r1)
              8025F37C:  ECE22028	fsubs	f7,f2,f4
              8025F380:  C001003C	lfs	f0,60(r1)
              8025F384:  ED012828	fsubs	f8,f1,f5
              8025F388:  881D0680	lbz	r0,1664(r29)
              8025F38C:  ED203028	fsubs	f9,f0,f6
              8025F390:  C15D06A8	lfs	f10,1704(r29)
              8025F394:  C05D0150	lfs	f2,336(r29)
              8025F398:  540006F7	rlwinm.	r0,r0,0,27,27
              8025F39C:  C03D0154	lfs	f1,340(r29)
              8025F3A0:  C01D0158	lfs	f0,344(r29)
              8025F3A4:  EC4202B2	fmuls	f2,f2,f10
              8025F3A8:  EC2102B2	fmuls	f1,f1,f10
              8025F3AC:  D0C10018	stfs	f6,24(r1)
              8025F3B0:  EC0002B2	fmuls	f0,f0,f10
              8025F3B4:  D0A1001C	stfs	f5,28(r1)
              8025F3B8:  D0810020	stfs	f4,32(r1)
              8025F3BC:  D121000C	stfs	f9,12(r1)
              8025F3C0:  D1010010	stfs	f8,16(r1)
              8025F3C4:  D0E10014	stfs	f7,20(r1)
              8025F3C8:  D13D00C0	stfs	f9,192(r29)
              8025F3CC:  D11D00C4	stfs	f8,196(r29)
              8025F3D0:  D0FD00C8	stfs	f7,200(r29)
              8025F3D4:  D05D0150	stfs	f2,336(r29)
              8025F3D8:  D03D0154	stfs	f1,340(r29)
              8025F3DC:  D01D0158	stfs	f0,344(r29)
              8025F3E0:  4082000C	bne-	0x8025f3ec
              8025F3E4:  EC035024	fdivs	f0,f3,f10
              8025F3E8:  D01D06A0	stfs	f0,1696(r29)
              8025F3EC:  C0010044	lfs	f0,68(r1)
              8025F3F0:  C0210040	lfs	f1,64(r1)
              8025F3F4:  C041003C	lfs	f2,60(r1)
              8025F3F8:  D0410048	stfs	f2,72(r1)
              8025F3FC:  D021004C	stfs	f1,76(r1)
              8025F400:  D0010050	stfs	f0,80(r1)
              8025F404:  7FA6EB78	mr	r6,r29
              8025F408:  387E0010	addi	r3,r30,16
              8025F40C:  389D0118	addi	r4,r29,280
              8025F410:  38A10048	addi	r5,r1,72
              8025F414:  480E307D	bl	0x80342490
              8025F418:  480DBCC9	bl	0x8033b0e0
              8025F41C:  389E0010	addi	r4,r30,16
              8025F420:  480DB3F1	bl	0x8033a810
              8025F424:  801D03CC	lwz	r0,972(r29)
              8025F428:  7C7F1B78	mr	r31,r3
              8025F42C:  3B800000	li	r28,0
              8025F430:  3B40FFFF	li	r26,-1
              8025F434:  540007FF	rlwinm.	r0,r0,0,31,31
              8025F438:  3B600000	li	r27,0
              8025F43C:  41820018	beq-	0x8025f454
              8025F440:  387D03B8	addi	r3,r29,952
              8025F444:  480C9B0D	bl	0x80328f50
              8025F448:  2C030000	cmpwi	r3,0
              8025F44C:  41820008	beq-	0x8025f454
              8025F450:  3B600001	li	r27,1
              8025F454:  2C1B0000	cmpwi	r27,0
              8025F458:  41820008	beq-	0x8025f460
              8025F45C:  3B9D035C	addi	r28,r29,860
              8025F460:  2C1C0000	cmpwi	r28,0
              8025F464:  41820010	beq-	0x8025f474
              8025F468:  7F83E378	mr	r3,r28
              8025F46C:  480C9F55	bl	0x803293c0
              8025F470:  547A043E	rlwinm	r26,r3,0,16,31
              8025F474:  2C1A0008	cmpwi	r26,8
              8025F478:  408200AC	bne-	0x8025f524
              8025F47C:  7F83E378	mr	r3,r28
              8025F480:  480C9E01	bl	0x80329280
              8025F484:  C0030008	lfs	f0,8(r3)
              8025F488:  C0230004	lfs	f1,4(r3)
              8025F48C:  C0430000	lfs	f2,0(r3)
              8025F490:  7F83E378	mr	r3,r28
              8025F494:  D05D00C0	stfs	f2,192(r29)
              8025F498:  D03D00C4	stfs	f1,196(r29)
              8025F49C:  D01D00C8	stfs	f0,200(r29)
              8025F4A0:  480CA001	bl	0x803294a0
              8025F4A4:  C0830000	lfs	f4,0(r3)
              8025F4A8:  C0430008	lfs	f2,8(r3)
              8025F4AC:  EC640132	fmuls	f3,f4,f4
              8025F4B0:  C002D6B8	lfs	f0,-10568(r2)
              8025F4B4:  EC2200B2	fmuls	f1,f2,f2
              8025F4B8:  EC23082A	fadds	f1,f3,f1
              8025F4BC:  FC010040	fcmpo	cr0,f1,f0
              8025F4C0:  40800024	bge-	0x8025f4e4
              8025F4C4:  7F83E378	mr	r3,r28
              8025F4C8:  480C9FC9	bl	0x80329490
              8025F4CC:  7C641B78	mr	r4,r3
              8025F4D0:  387D00C0	addi	r3,r29,192
              8025F4D4:  388400C0	addi	r4,r4,192
              8025F4D8:  48081739	bl	0x802e0c10
              8025F4DC:  B07D013E	sth	r3,318(r29)
              8025F4E0:  48000014	b	0x8025f4f4
              8025F4E4:  FC202050	fneg	f1,f4
              8025F4E8:  FC401050	fneg	f2,f2
              8025F4EC:  48081B95	bl	0x802e1080
              8025F4F0:  B07D013E	sth	r3,318(r29)
              8025F4F4:  801D067C	lwz	r0,1660(r29)
              8025F4F8:  387D0704	addi	r3,r29,1796
              8025F4FC:  A8BD013E	lha	r5,318(r29)
              8025F500:  389E01B8	addi	r4,r30,440
              8025F504:  60000400	ori	r0,r0,1024
              8025F508:  B0BD00BA	sth	r5,186(r29)
              8025F50C:  901D067C	stw	r0,1660(r29)
              8025F510:  819D0704	lwz	r12,1796(r29)
              8025F514:  818C0018	lwz	r12,24(r12)
              8025F518:  7D8903A6	mtctr	r12
              8025F51C:  4E800421	bctrl	
              8025F520:  48000798	b	0x8025fcb8
              8025F524:  2C1C0000	cmpwi	r28,0
              8025F528:  4182004C	beq-	0x8025f574
              8025F52C:  7F83E378	mr	r3,r28
              8025F530:  480C9D51	bl	0x80329280
              8025F534:  C0030008	lfs	f0,8(r3)
              8025F538:  389E01B8	addi	r4,r30,440
              8025F53C:  C0230004	lfs	f1,4(r3)
              8025F540:  C0430000	lfs	f2,0(r3)
              8025F544:  387D0704	addi	r3,r29,1796
              8025F548:  D05D00C0	stfs	f2,192(r29)
              8025F54C:  D03D00C4	stfs	f1,196(r29)
              8025F550:  D01D00C8	stfs	f0,200(r29)
              8025F554:  819D0704	lwz	r12,1796(r29)
              8025F558:  818C0018	lwz	r12,24(r12)
              8025F55C:  7D8903A6	mtctr	r12
              8025F560:  4E800421	bctrl	
              8025F564:  7FA3EB78	mr	r3,r29
              8025F568:  3880045E	li	r4,1118
              8025F56C:  4BDCE1B5	bl	0x8002d720
              8025F570:  48000748	b	0x8025fcb8
              8025F574:  801D0370	lwz	r0,880(r29)
              8025F578:  3B600000	li	r27,0
              8025F57C:  540007FF	rlwinm.	r0,r0,0,31,31
              8025F580:  41820018	beq-	0x8025f598
              8025F584:  387D035C	addi	r3,r29,860
              8025F588:  480C99C9	bl	0x80328f50
              8025F58C:  2C030000	cmpwi	r3,0
              8025F590:  41820008	beq-	0x8025f598
              8025F594:  3B600001	li	r27,1
              8025F598:  2C1B0000	cmpwi	r27,0
              8025F59C:  418201B0	beq-	0x8025f74c
              8025F5A0:  387D035C	addi	r3,r29,860
              8025F5A4:  480C9DBD	bl	0x80329360
              8025F5A8:  A0030008	lhz	r0,8(r3)
              8025F5AC:  280001B5	cmplwi	r0,437
              8025F5B0:  4082000C	bne-	0x8025f5bc
              8025F5B4:  38000000	li	r0,0
              8025F5B8:  981D0683	stb	r0,1667(r29)
              8025F5BC:  836DBC48	lwz	r27,-17336(r13)
              8025F5C0:  387D035C	addi	r3,r29,860
              8025F5C4:  480C9C6D	bl	0x80329230
              8025F5C8:  7C641B78	mr	r4,r3
              8025F5CC:  7F63DB78	mr	r3,r27
              8025F5D0:  4BDC3731	bl	0x80022d00
              8025F5D4:  881D0680	lbz	r0,1664(r29)
              8025F5D8:  540006F7	rlwinm.	r0,r0,0,27,27
              8025F5DC:  41820020	beq-	0x8025f5fc
              8025F5E0:  387D035C	addi	r3,r29,860
              8025F5E4:  480C9C4D	bl	0x80329230
              8025F5E8:  7C641B78	mr	r4,r3
              8025F5EC:  7FA3EB78	mr	r3,r29
              8025F5F0:  38A00000	li	r5,0
              8025F5F4:  48000E7D	bl	0x80260470
              8025F5F8:  480006C0	b	0x8025fcb8
              8025F5FC:  387D035C	addi	r3,r29,860
              8025F600:  480C9D61	bl	0x80329360
              8025F604:  2C030000	cmpwi	r3,0
              8025F608:  7C7A1B78	mr	r26,r3
              8025F60C:  3B800001	li	r28,1
              8025F610:  418200A0	beq-	0x8025f6b0
              8025F614:  800302B0	lwz	r0,688(r3)
              8025F618:  2C000000	cmpwi	r0,0
              8025F61C:  41820094	beq-	0x8025f6b0
              8025F620:  801D0358	lwz	r0,856(r29)
              8025F624:  38800000	li	r4,0
              8025F628:  7C030040	cmplw	r3,r0
              8025F62C:  4182003C	beq-	0x8025f668
              8025F630:  387D035C	addi	r3,r29,860
              8025F634:  480C9C1D	bl	0x80329250
              8025F638:  7C7B1B78	mr	r27,r3
              8025F63C:  387D035C	addi	r3,r29,860
              8025F640:  480C9BF1	bl	0x80329230
              8025F644:  7C641B78	mr	r4,r3
              8025F648:  807A02B0	lwz	r3,688(r26)
              8025F64C:  7F68DB78	mr	r8,r27
              8025F650:  38BD00B8	addi	r5,r29,184
              8025F654:  38DD06B0	addi	r6,r29,1712
              8025F658:  38FD06BC	addi	r7,r29,1724
              8025F65C:  480FA345	bl	0x803599a0
              8025F660:  907D0698	stw	r3,1688(r29)
              8025F664:  38800001	li	r4,1
              8025F668:  801D0698	lwz	r0,1688(r29)
              8025F66C:  2C000000	cmpwi	r0,0
              8025F670:  41800020	blt-	0x8025f690
              8025F674:  2C040000	cmpwi	r4,0
              8025F678:  3B800004	li	r28,4
              8025F67C:  41820078	beq-	0x8025f6f4
              8025F680:  7F44D378	mr	r4,r26
              8025F684:  387D0350	addi	r3,r29,848
              8025F688:  480836D9	bl	0x802e2d60
              8025F68C:  48000068	b	0x8025f6f4
              8025F690:  2C00FFFE	cmpwi	r0,-2
              8025F694:  41820014	beq-	0x8025f6a8
              8025F698:  387D035C	addi	r3,r29,860
              8025F69C:  480C9BB5	bl	0x80329250
              8025F6A0:  2C030000	cmpwi	r3,0
              8025F6A4:  41820050	beq-	0x8025f6f4
              8025F6A8:  3B800002	li	r28,2
              8025F6AC:  48000048	b	0x8025f6f4
              8025F6B0:  387D035C	addi	r3,r29,860
              8025F6B4:  480C9B9D	bl	0x80329250
              8025F6B8:  2C030000	cmpwi	r3,0
              8025F6BC:  4182000C	beq-	0x8025f6c8
              8025F6C0:  3B800002	li	r28,2
              8025F6C4:  48000030	b	0x8025f6f4
              8025F6C8:  387D035C	addi	r3,r29,860
              8025F6CC:  480C9C65	bl	0x80329330
              8025F6D0:  2C030000	cmpwi	r3,0
              8025F6D4:  41820020	beq-	0x8025f6f4
              8025F6D8:  387D035C	addi	r3,r29,860
              8025F6DC:  480C9B55	bl	0x80329230
              8025F6E0:  7C651B78	mr	r5,r3
              8025F6E4:  7FA3EB78	mr	r3,r29
              8025F6E8:  7F44D378	mr	r4,r26
              8025F6EC:  4BFFF455	bl	0x8025eb40
              8025F6F0:  3B800004	li	r28,4
              8025F6F4:  2C1C0001	cmpwi	r28,1
              8025F6F8:  40820058	bne-	0x8025f750
              8025F6FC:  2C1A0000	cmpwi	r26,0
              8025F700:  41820050	beq-	0x8025f750
              8025F704:  801A0220	lwz	r0,544(r26)
              8025F708:  540004E7	rlwinm.	r0,r0,0,19,19
              8025F70C:  41820044	beq-	0x8025f750
              8025F710:  881D0680	lbz	r0,1664(r29)
              8025F714:  540006F7	rlwinm.	r0,r0,0,27,27
              8025F718:  40820038	bne-	0x8025f750
              8025F71C:  801D0700	lwz	r0,1792(r29)
              8025F720:  2C000000	cmpwi	r0,0
              8025F724:  40820020	bne-	0x8025f744
              8025F728:  7F44D378	mr	r4,r26
              8025F72C:  7FA5EB78	mr	r5,r29
              8025F730:  387A0210	addi	r3,r26,528
              8025F734:  38DD06F8	addi	r6,r29,1784
              8025F738:  38E00008	li	r7,8
              8025F73C:  39000000	li	r8,0
              8025F740:  4BDF1691	bl	0x80050dd0
              8025F744:  3B800000	li	r28,0
              8025F748:  48000008	b	0x8025f750
              8025F74C:  3B800000	li	r28,0
              8025F750:  2C1C0000	cmpwi	r28,0
              8025F754:  41820120	beq-	0x8025f874
              8025F758:  2C1C0003	cmpwi	r28,3
              8025F75C:  41820118	beq-	0x8025f874
              8025F760:  2C1C0002	cmpwi	r28,2
              8025F764:  40820088	bne-	0x8025f7ec
              8025F768:  801D067C	lwz	r0,1660(r29)
              8025F76C:  540006B5	rlwinm.	r0,r0,0,26,26
              8025F770:  41820014	beq-	0x8025f784
              8025F774:  801D067C	lwz	r0,1660(r29)
              8025F778:  60000002	ori	r0,r0,2
              8025F77C:  901D067C	stw	r0,1660(r29)
              8025F780:  48000538	b	0x8025fcb8
              8025F784:  801D0370	lwz	r0,880(r29)
              8025F788:  3B600000	li	r27,0
              8025F78C:  540007FF	rlwinm.	r0,r0,0,31,31
              8025F790:  41820018	beq-	0x8025f7a8
              8025F794:  387D035C	addi	r3,r29,860
              8025F798:  480C97B9	bl	0x80328f50
              8025F79C:  2C030000	cmpwi	r3,0
              8025F7A0:  41820008	beq-	0x8025f7a8
              8025F7A4:  3B600001	li	r27,1
              8025F7A8:  2C1B0000	cmpwi	r27,0
              8025F7AC:  41820024	beq-	0x8025f7d0
              8025F7B0:  387D035C	addi	r3,r29,860
              8025F7B4:  480C9A7D	bl	0x80329230
              8025F7B8:  C0030008	lfs	f0,8(r3)
              8025F7BC:  C0230004	lfs	f1,4(r3)
              8025F7C0:  C0430000	lfs	f2,0(r3)
              8025F7C4:  D05D00C0	stfs	f2,192(r29)
              8025F7C8:  D03D00C4	stfs	f1,196(r29)
              8025F7CC:  D01D00C8	stfs	f0,200(r29)
              8025F7D0:  819D0704	lwz	r12,1796(r29)
              8025F7D4:  387D0704	addi	r3,r29,1796
              8025F7D8:  389E01B8	addi	r4,r30,440
              8025F7DC:  818C0018	lwz	r12,24(r12)
              8025F7E0:  7D8903A6	mtctr	r12
              8025F7E4:  4E800421	bctrl	
              8025F7E8:  480004D0	b	0x8025fcb8
              8025F7EC:  2C1C0004	cmpwi	r28,4
              8025F7F0:  40820020	bne-	0x8025f810
              8025F7F4:  819D0704	lwz	r12,1796(r29)
              8025F7F8:  387D0704	addi	r3,r29,1796
              8025F7FC:  389E0138	addi	r4,r30,312
              8025F800:  818C0018	lwz	r12,24(r12)
              8025F804:  7D8903A6	mtctr	r12
              8025F808:  4E800421	bctrl	
              8025F80C:  480004AC	b	0x8025fcb8
              8025F810:  801D067C	lwz	r0,1660(r29)
              8025F814:  60000002	ori	r0,r0,2
              8025F818:  901D067C	stw	r0,1660(r29)
              8025F81C:  540006B5	rlwinm.	r0,r0,0,26,26
              8025F820:  40820498	bne-	0x8025fcb8
              8025F824:  801D0370	lwz	r0,880(r29)
              8025F828:  3B600000	li	r27,0
              8025F82C:  540007FF	rlwinm.	r0,r0,0,31,31
              8025F830:  41820018	beq-	0x8025f848
              8025F834:  387D035C	addi	r3,r29,860
              8025F838:  480C9719	bl	0x80328f50
              8025F83C:  2C030000	cmpwi	r3,0
              8025F840:  41820008	beq-	0x8025f848
              8025F844:  3B600001	li	r27,1
              8025F848:  2C1B0000	cmpwi	r27,0
              8025F84C:  4182046C	beq-	0x8025fcb8
              8025F850:  387D035C	addi	r3,r29,860
              8025F854:  480C99DD	bl	0x80329230
              8025F858:  C0030008	lfs	f0,8(r3)
              8025F85C:  C0230004	lfs	f1,4(r3)
              8025F860:  C0430000	lfs	f2,0(r3)
              8025F864:  D05D00C0	stfs	f2,192(r29)
              8025F868:  D03D00C4	stfs	f1,196(r29)
              8025F86C:  D01D00C8	stfs	f0,200(r29)
              8025F870:  48000448	b	0x8025fcb8
              8025F874:  2C1F0000	cmpwi	r31,0
              8025F878:  418201E8	beq-	0x8025fa60
              8025F87C:  387E0010	addi	r3,r30,16
              8025F880:  801D067C	lwz	r0,1660(r29)
              8025F884:  C0030068	lfs	f0,104(r3)
              8025F888:  C0430064	lfs	f2,100(r3)
              8025F88C:  540006B5	rlwinm.	r0,r0,0,26,26
              8025F890:  C0230060	lfs	f1,96(r3)
              8025F894:  D03D00C0	stfs	f1,192(r29)
              8025F898:  D05D00C4	stfs	f2,196(r29)
              8025F89C:  D01D00C8	stfs	f0,200(r29)
              8025F8A0:  41820034	beq-	0x8025f8d4
              8025F8A4:  881D0680	lbz	r0,1664(r29)
              8025F8A8:  540006F7	rlwinm.	r0,r0,0,27,27
              8025F8AC:  40820018	bne-	0x8025f8c4
              8025F8B0:  C03D06D8	lfs	f1,1752(r29)
              8025F8B4:  C002D6C8	lfs	f0,-10552(r2)
              8025F8B8:  EC220828	fsubs	f1,f2,f1
              8025F8BC:  FC010040	fcmpo	cr0,f1,f0
              8025F8C0:  40800014	bge-	0x8025f8d4
              8025F8C4:  801D067C	lwz	r0,1660(r29)
              8025F8C8:  60000002	ori	r0,r0,2
              8025F8CC:  901D067C	stw	r0,1660(r29)
              8025F8D0:  480003E8	b	0x8025fcb8
              8025F8D4:  480DB80D	bl	0x8033b0e0
              8025F8D8:  3B9E0010	addi	r28,r30,16
              8025F8DC:  389C0028	addi	r4,r28,40
              8025F8E0:  480DC1C1	bl	0x8033baa0
              8025F8E4:  7C7B1B78	mr	r27,r3
              8025F8E8:  480DB7F9	bl	0x8033b0e0
              8025F8EC:  389C0028	addi	r4,r28,40
              8025F8F0:  480DC241	bl	0x8033bb30
              8025F8F4:  7C7F1B78	mr	r31,r3
              8025F8F8:  480DB7E9	bl	0x8033b0e0
              8025F8FC:  389C0028	addi	r4,r28,40
              8025F900:  480DC0C1	bl	0x8033b9c0
              8025F904:  881D0680	lbz	r0,1664(r29)
              8025F908:  7C7C1B78	mr	r28,r3
              8025F90C:  540006F7	rlwinm.	r0,r0,0,27,27
              8025F910:  40820070	bne-	0x8025f980
              8025F914:  2C030013	cmpwi	r3,19
              8025F918:  41820068	beq-	0x8025f980
              8025F91C:  2C030014	cmpwi	r3,20
              8025F920:  41820060	beq-	0x8025f980
              8025F924:  2C030010	cmpwi	r3,16
              8025F928:  41820058	beq-	0x8025f980
              8025F92C:  2C03000A	cmpwi	r3,10
              8025F930:  41820050	beq-	0x8025f980
              8025F934:  2C03000B	cmpwi	r3,11
              8025F938:  41820048	beq-	0x8025f980
              8025F93C:  2C1B0006	cmpwi	r27,6
              8025F940:  41820040	beq-	0x8025f980
              8025F944:  2C1B0002	cmpwi	r27,2
              8025F948:  41820038	beq-	0x8025f980
              8025F94C:  2C1B0000	cmpwi	r27,0
              8025F950:  41820030	beq-	0x8025f980
              8025F954:  2C1B000B	cmpwi	r27,11
              8025F958:  41820028	beq-	0x8025f980
              8025F95C:  2C1B0008	cmpwi	r27,8
              8025F960:  41820020	beq-	0x8025f980
              8025F964:  2C1B000A	cmpwi	r27,10
              8025F968:  41820018	beq-	0x8025f980
              8025F96C:  2C1B000D	cmpwi	r27,13
              8025F970:  408200D4	bne-	0x8025fa44
              8025F974:  381FFFFE	subi	r0,r31,2
              8025F978:  28000001	cmplwi	r0,1
              8025F97C:  418100C8	bgt-	0x8025fa44
              8025F980:  801D067C	lwz	r0,1660(r29)
              8025F984:  540006B5	rlwinm.	r0,r0,0,26,26
              8025F988:  41820014	beq-	0x8025f99c
              8025F98C:  801D067C	lwz	r0,1660(r29)
              8025F990:  60000002	ori	r0,r0,2
              8025F994:  901D067C	stw	r0,1660(r29)
              8025F998:  48000320	b	0x8025fcb8
              8025F99C:  3BFE0010	addi	r31,r30,16
              8025F9A0:  C022D6BC	lfs	f1,-10564(r2)
              8025F9A4:  387D00C0	addi	r3,r29,192
              8025F9A8:  389F0028	addi	r4,r31,40
              8025F9AC:  4BF83A35	bl	0x801e33e0
              8025F9B0:  881D0680	lbz	r0,1664(r29)
              8025F9B4:  540006F7	rlwinm.	r0,r0,0,27,27
              8025F9B8:  41820020	beq-	0x8025f9d8
              8025F9BC:  381BFFFA	subi	r0,r27,6
              8025F9C0:  7FA3EB78	mr	r3,r29
              8025F9C4:  7C000034	cntlzw	r0,r0
              8025F9C8:  389D00C0	addi	r4,r29,192
              8025F9CC:  5405D97E	rlwinm	r5,r0,27,5,31
              8025F9D0:  48000AA1	bl	0x80260470
              8025F9D4:  480002E4	b	0x8025fcb8
              8025F9D8:  7FA3EB78	mr	r3,r29
              8025F9DC:  38BF0028	addi	r5,r31,40
              8025F9E0:  3880044E	li	r4,1102
              8025F9E4:  38C00000	li	r6,0
              8025F9E8:  4BDCDD99	bl	0x8002d780
              8025F9EC:  2C1B0006	cmpwi	r27,6
              8025F9F0:  41820028	beq-	0x8025fa18
              8025F9F4:  2C1B000B	cmpwi	r27,11
              8025F9F8:  41820020	beq-	0x8025fa18
              8025F9FC:  2C1B0000	cmpwi	r27,0
              8025FA00:  41820018	beq-	0x8025fa18
              8025FA04:  2C1C0010	cmpwi	r28,16
              8025FA08:  41820010	beq-	0x8025fa18
              8025FA0C:  381CFFF6	subi	r0,r28,10
              8025FA10:  28000001	cmplwi	r0,1
              8025FA14:  41810014	bgt-	0x8025fa28
              8025FA18:  801D067C	lwz	r0,1660(r29)
              8025FA1C:  60000002	ori	r0,r0,2
              8025FA20:  901D067C	stw	r0,1660(r29)
              8025FA24:  48000294	b	0x8025fcb8
              8025FA28:  819D0704	lwz	r12,1796(r29)
              8025FA2C:  387D0704	addi	r3,r29,1796
              8025FA30:  389E01B8	addi	r4,r30,440
              8025FA34:  818C0018	lwz	r12,24(r12)
              8025FA38:  7D8903A6	mtctr	r12
              8025FA3C:  4E800421	bctrl	
              8025FA40:  48000278	b	0x8025fcb8
              8025FA44:  819D0704	lwz	r12,1796(r29)
              8025FA48:  387D0704	addi	r3,r29,1796
              8025FA4C:  389E0178	addi	r4,r30,376
              8025FA50:  818C0018	lwz	r12,24(r12)
              8025FA54:  7D8903A6	mtctr	r12
              8025FA58:  4E800421	bctrl	
              8025FA5C:  4800025C	b	0x8025fcb8
              8025FA60:  801D067C	lwz	r0,1660(r29)
              8025FA64:  540006B5	rlwinm.	r0,r0,0,26,26
              8025FA68:  418200E0	beq-	0x8025fb48
              8025FA6C:  881D0680	lbz	r0,1664(r29)
              8025FA70:  540006F7	rlwinm.	r0,r0,0,27,27
              8025FA74:  4182002C	beq-	0x8025faa0
              8025FA78:  801D067C	lwz	r0,1660(r29)
              8025FA7C:  C0010050	lfs	f0,80(r1)
              8025FA80:  C021004C	lfs	f1,76(r1)
              8025FA84:  60000002	ori	r0,r0,2
              8025FA88:  C0410048	lfs	f2,72(r1)
              8025FA8C:  D05D00C0	stfs	f2,192(r29)
              8025FA90:  D03D00C4	stfs	f1,196(r29)
              8025FA94:  D01D00C8	stfs	f0,200(r29)
              8025FA98:  901D067C	stw	r0,1660(r29)
              8025FA9C:  4800021C	b	0x8025fcb8
              8025FAA0:  C05D00C4	lfs	f2,196(r29)
              8025FAA4:  C03D06D8	lfs	f1,1752(r29)
              8025FAA8:  C002D6C8	lfs	f0,-10552(r2)
              8025FAAC:  EC220828	fsubs	f1,f2,f1
              8025FAB0:  FC010040	fcmpo	cr0,f1,f0
              8025FAB4:  4080005C	bge-	0x8025fb10
              8025FAB8:  801D037C	lwz	r0,892(r29)
              8025FABC:  387D035C	addi	r3,r29,860
              8025FAC0:  5400003C	rlwinm	r0,r0,0,0,30
              8025FAC4:  901D037C	stw	r0,892(r29)
              8025FAC8:  480C9679	bl	0x80329140
              8025FACC:  C022D69C	lfs	f1,-10596(r2)
              8025FAD0:  387D00CC	addi	r3,r29,204
              8025FAD4:  C042D710	lfs	f2,-10480(r2)
              8025FAD8:  4807F779	bl	0x802df250
              8025FADC:  2C030000	cmpwi	r3,0
              8025FAE0:  41820014	beq-	0x8025faf4
              8025FAE4:  801D067C	lwz	r0,1660(r29)
              8025FAE8:  60000002	ori	r0,r0,2
              8025FAEC:  901D067C	stw	r0,1660(r29)
              8025FAF0:  480001C8	b	0x8025fcb8
              8025FAF4:  C01D00CC	lfs	f0,204(r29)
              8025FAF8:  387D0334	addi	r3,r29,820
              8025FAFC:  D01D00D4	stfs	f0,212(r29)
              8025FB00:  389D00CC	addi	r4,r29,204
              8025FB04:  D01D00D0	stfs	f0,208(r29)
              8025FB08:  4808C7C9	bl	0x802ec2d0
              8025FB0C:  480001AC	b	0x8025fcb8
              8025FB10:  C002D6CC	lfs	f0,-10548(r2)
              8025FB14:  FC010040	fcmpo	cr0,f1,f0
              8025FB18:  40810014	ble-	0x8025fb2c
              8025FB1C:  801D067C	lwz	r0,1660(r29)
              8025FB20:  60000002	ori	r0,r0,2
              8025FB24:  901D067C	stw	r0,1660(r29)
              8025FB28:  48000190	b	0x8025fcb8
              8025FB2C:  387D00C0	addi	r3,r29,192
              8025FB30:  389D06C8	addi	r4,r29,1736
              8025FB34:  48159FBD	bl	0x803b9af0
              8025FB38:  4823B7C9	bl	0x8049b300
              8025FB3C:  7FA3EB78	mr	r3,r29
              8025FB40:  4BFFE7B1	bl	0x8025e2f0
              8025FB44:  48000174	b	0x8025fcb8
              8025FB48:  387D00C0	addi	r3,r29,192
              8025FB4C:  389D06C8	addi	r4,r29,1736
              8025FB50:  48159FA1	bl	0x803b9af0
              8025FB54:  4823B7AD	bl	0x8049b300
              8025FB58:  C01D06A4	lfs	f0,1700(r29)
              8025FB5C:  FFE00890	fmr	f31,f1
              8025FB60:  FC010040	fcmpo	cr0,f1,f0
              8025FB64:  41810014	bgt-	0x8025fb78
              8025FB68:  C03D0148	lfs	f1,328(r29)
              8025FB6C:  C002D69C	lfs	f0,-10596(r2)
              8025FB70:  FC010040	fcmpo	cr0,f1,f0
              8025FB74:  40800138	bge-	0x8025fcac
              8025FB78:  881D0680	lbz	r0,1664(r29)
              8025FB7C:  540006F7	rlwinm.	r0,r0,0,27,27
              8025FB80:  41820010	beq-	0x8025fb90
              8025FB84:  C002D714	lfs	f0,-10476(r2)
              8025FB88:  D01D0148	stfs	f0,328(r29)
              8025FB8C:  4800000C	b	0x8025fb98
              8025FB90:  C002D718	lfs	f0,-10472(r2)
              8025FB94:  D01D0148	stfs	f0,328(r29)
              8025FB98:  C03D0154	lfs	f1,340(r29)
              8025FB9C:  C01D0148	lfs	f0,328(r29)
              8025FBA0:  881D0680	lbz	r0,1664(r29)
              8025FBA4:  EC01002A	fadds	f0,f1,f0
              8025FBA8:  540006F7	rlwinm.	r0,r0,0,27,27
              8025FBAC:  D01D0154	stfs	f0,340(r29)
              8025FBB0:  4182007C	beq-	0x8025fc2c
              8025FBB4:  C03D0150	lfs	f1,336(r29)
              8025FBB8:  C01D0158	lfs	f0,344(r29)
              8025FBBC:  EC210072	fmuls	f1,f1,f1
              8025FBC0:  836DC398	lwz	r27,-15464(r13)
              8025FBC4:  EC000032	fmuls	f0,f0,f0
              8025FBC8:  EC21002A	fadds	f1,f1,f0
              8025FBCC:  4823B735	bl	0x8049b300
              8025FBD0:  D0210008	stfs	f1,8(r1)
              8025FBD4:  7F63DB78	mr	r3,r27
              8025FBD8:  4BFA9529	bl	0x80209100
              8025FBDC:  C3C10008	lfs	f30,8(r1)
              8025FBE0:  FFA00890	fmr	f29,f1
              8025FBE4:  FC1E0840	fcmpo	cr0,f30,f1
              8025FBE8:  40810044	ble-	0x8025fc2c
              8025FBEC:  7F63DB78	mr	r3,r27
              8025FBF0:  4BFA9521	bl	0x80209110
              8025FBF4:  FC400890	fmr	f2,f1
              8025FBF8:  38610008	addi	r3,r1,8
              8025FBFC:  FC20E890	fmr	f1,f29
              8025FC00:  4807F651	bl	0x802df250
              8025FC04:  C0010008	lfs	f0,8(r1)
              8025FC08:  EC40F024	fdivs	f2,f0,f30
              8025FC0C:  D0410008	stfs	f2,8(r1)
              8025FC10:  C01D0150	lfs	f0,336(r29)
              8025FC14:  C03D0158	lfs	f1,344(r29)
              8025FC18:  EC0000B2	fmuls	f0,f0,f2
              8025FC1C:  D01D0150	stfs	f0,336(r29)
              8025FC20:  C0010008	lfs	f0,8(r1)
              8025FC24:  EC010032	fmuls	f0,f1,f0
              8025FC28:  D01D0158	stfs	f0,344(r29)
              8025FC2C:  A87D068A	lha	r3,1674(r29)
              8025FC30:  2C030000	cmpwi	r3,0
              8025FC34:  41820010	beq-	0x8025fc44
              8025FC38:  3803FFFF	subi	r0,r3,1
              8025FC3C:  B01D068A	sth	r0,1674(r29)
              8025FC40:  48000014	b	0x8025fc54
              8025FC44:  801D067C	lwz	r0,1660(r29)
              8025FC48:  60000002	ori	r0,r0,2
              8025FC4C:  901D067C	stw	r0,1660(r29)
              8025FC50:  48000068	b	0x8025fcb8
              8025FC54:  C03D0150	lfs	f1,336(r29)
              8025FC58:  C01D0158	lfs	f0,344(r29)
              8025FC5C:  EC210072	fmuls	f1,f1,f1
              8025FC60:  EC000032	fmuls	f0,f0,f0
              8025FC64:  EC21002A	fadds	f1,f1,f0
              8025FC68:  4823B699	bl	0x8049b300
              8025FC6C:  C01D0154	lfs	f0,340(r29)
              8025FC70:  FC400890	fmr	f2,f1
              8025FC74:  FC200050	fneg	f1,f0
              8025FC78:  48081409	bl	0x802e1080
              8025FC7C:  881D0680	lbz	r0,1664(r29)
              8025FC80:  7C640734	extsh	r4,r3
              8025FC84:  7C8400D0	neg	r4,r4
              8025FC88:  B07D00B8	sth	r3,184(r29)
              8025FC8C:  540006F7	rlwinm.	r0,r0,0,27,27
              8025FC90:  B09D013C	sth	r4,316(r29)
              8025FC94:  40820018	bne-	0x8025fcac
              8025FC98:  387D0150	addi	r3,r29,336
              8025FC9C:  48159BE5	bl	0x803b9880
              8025FCA0:  C002D6CC	lfs	f0,-10548(r2)
              8025FCA4:  EC000824	fdivs	f0,f0,f1
              8025FCA8:  D01D06A0	stfs	f0,1696(r29)
              8025FCAC:  FC20F890	fmr	f1,f31
              8025FCB0:  7FA3EB78	mr	r3,r29
              8025FCB4:  4BFFE63D	bl	0x8025e2f0
              8025FCB8:  39610070	addi	r11,r1,112
              8025FCBC:  E3E10098	psq_l	f31,152(r1),0,0
              8025FCC0:  CBE10090	lfd	f31,144(r1)
              8025FCC4:  E3C10088	psq_l	f30,136(r1),0,0
              8025FCC8:  CBC10080	lfd	f30,128(r1)
              8025FCCC:  E3A10078	psq_l	f29,120(r1),0,0
              8025FCD0:  CBA10070	lfd	f29,112(r1)
              8025FCD4:  482676A1	bl	0x804c7374
              8025FCD8:  800100A4	lwz	r0,164(r1)
              8025FCDC:  7C0803A6	mtlr	r0
              8025FCE0:  382100A0	addi	r1,r1,160
              8025FCE4:  4E800020	blr




              Code:
              802F3010:  9421FFC0	stwu	r1,-64(r1)
              802F3014:  7C0802A6	mflr	r0
              802F3018:  90010044	stw	r0,68(r1)
              802F301C:  38C1000E	addi	r6,r1,14
              802F3020:  A8040000	lha	r0,0(r4)
              802F3024:  DBE10030	stfd	f31,48(r1)
              802F3028:  F3E10038	psq_st	f31,56(r1),0,0
              802F302C:  DBC10020	stfd	f30,32(r1)
              802F3030:  F3C10028	psq_st	f30,40(r1),0,0
              802F3034:  FFC00890	fmr	f30,f1
              802F3038:  93E1001C	stw	r31,28(r1)
              802F303C:  7CBF2B78	mr	r31,r5
              802F3040:  93C10018	stw	r30,24(r1)
              802F3044:  7C9E2378	mr	r30,r4
              802F3048:  93A10014	stw	r29,20(r1)
              802F304C:  7C7D1B78	mr	r29,r3
              802F3050:  B001000E	sth	r0,14(r1)
              802F3054:  E026B000	psq_l	f1,0(r6),1,3
              802F3058:  C002E468	lfs	f0,-7064(r2)
              802F305C:  EC200072	fmuls	f1,f0,f1
              802F3060:  48144BC1	bl	0x80437c20
              802F3064:  A81F0000	lha	r0,0(r31)
              802F3068:  3861000C	addi	r3,r1,12
              802F306C:  B001000C	sth	r0,12(r1)
              802F3070:  EFFE0072	fmuls	f31,f30,f1
              802F3074:  E023B000	psq_l	f1,0(r3),1,3
              802F3078:  C002E468	lfs	f0,-7064(r2)
              802F307C:  EC200072	fmuls	f1,f0,f1
              802F3080:  48144B21	bl	0x80437ba0
              802F3084:  EC1F0072	fmuls	f0,f31,f1
              802F3088:  A81E0000	lha	r0,0(r30)
              802F308C:  3861000A	addi	r3,r1,10
              
              802F3090:  D01D0000	stfs	f0,0(r29) (WRITE)
              
              802F3094:  B001000A	sth	r0,10(r1)
              802F3098:  E023B000	psq_l	f1,0(r3),1,3
              802F309C:  C002E468	lfs	f0,-7064(r2)
              802F30A0:  EC200072	fmuls	f1,f0,f1
              802F30A4:  48144AFD	bl	0x80437ba0
              802F30A8:  EC1E0072	fmuls	f0,f30,f1
              802F30AC:  A81F0000	lha	r0,0(r31)
              802F30B0:  38610008	addi	r3,r1,8
              802F30B4:  D01D0004	stfs	f0,4(r29)
              802F30B8:  B0010008	sth	r0,8(r1)
              802F30BC:  E023B000	psq_l	f1,0(r3),1,3
              802F30C0:  C002E468	lfs	f0,-7064(r2)
              802F30C4:  EC200072	fmuls	f1,f0,f1
              802F30C8:  48144B59	bl	0x80437c20
              802F30CC:  EC1F0072	fmuls	f0,f31,f1
              802F30D0:  D01D0008	stfs	f0,8(r29)
              802F30D4:  E3E10038	psq_l	f31,56(r1),0,0
              802F30D8:  CBE10030	lfd	f31,48(r1)
              802F30DC:  E3C10028	psq_l	f30,40(r1),0,0
              802F30E0:  CBC10020	lfd	f30,32(r1)
              802F30E4:  83E1001C	lwz	r31,28(r1)
              802F30E8:  83C10018	lwz	r30,24(r1)
              802F30EC:  83A10014	lwz	r29,20(r1)
              802F30F0:  80010044	lwz	r0,68(r1)
              802F30F4:  7C0803A6	mtlr	r0
              802F30F8:  38210040	addi	r1,r1,64
              802F30FC:  4E800020	blr
              i hope i've got it right what you explained to me. i'm not so common with asm and breakpoints
              My Website
              Hacking YouTube Channel


              No requests, please

              Comment


              • #8
                Ok here is where there is a miscommunication I believe, to set a breakpoint on read or write you need a RAM address and you said you have no read breaks on the address 8025F224 and looking at the log file that is an ASM instruction so anything that is ASM is always break on execute and this won't help you right now.

                What we need is this RAM address you found and set a break on read and log that (along with the ASM instruction) and then do a break on write and log that (note the ASM instruction again), the logs should have the read and write somewhere in there.

                So the read should eventually end up where the write break is and all the addresses/instructions in between those 2 breaks are what you should concentrate on.

                See if you can do what I just posted above then we can move onto actually testing the branches and inspecting the registers at addresses we suspect might have something useful and we also will use the break on execute during this step.
                Spoiler Alert! Click to view...

                THE BAD GUY!!!!!!

                Comment


                • #9
                  What we need is this RAM address you found and set a break on read and log that (along with the ASM instruction) and then do a break on write and log that (note the ASM instruction again), the logs should have the read and write somewhere in there.
                  That's what I did. But there aren't same addresses between the 2 breaks. The distance is quite huge:
                  Last addres on read: 8025FCE4
                  First address on write: 802F3010
                  offset: 9332C
                  My Website
                  Hacking YouTube Channel


                  No requests, please

                  Comment


                  • #10
                    I know there is usually a huge gap but often times if you follow the read there are a bunch of branches before you hit that write breakpoint address so if you can go line by line since there isn't a decent way to do a trace log you can see the branch that is taken to that routine that has the write and concentrate on the routine.

                    Typically read breaks occur but then simply store it in some temporary place and then gets recalled in the write instruction, so this is also another thing to look at as a possibility of where to get the value in the registers.

                    When you get a break on read do you have multiple breaks with different addresses or is it the same constant address?
                    Spoiler Alert! Click to view...

                    THE BAD GUY!!!!!!

                    Comment


                    • #11
                      What sort of instruction could the branch be? lfs?
                      i had a look there but couldn't find anything..

                      When you get a break on read do you have multiple breaks with different addresses or is it the same constant address?
                      the address of the arrow's speed concerning to the x-axis of the level changes as soon as I go into another stage. but the addresses of the breakpoint are always the same

                      EDIT: Haha, I've found it by myself. Do you remember I said that the address with the value of 43480000 appears suspect to me?
                      I searched for every value of 43480000 in the RAM and found what I was looking for.
                      Anyways, Thank you for your help and patients with me
                      Last edited by CosmoCortney; 01-27-2015, 01:47:22 PM.
                      My Website
                      Hacking YouTube Channel


                      No requests, please

                      Comment

                      Working...
                      X