.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_80254260 func_80254260: /* 80254260 0024FEC0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80254264 0024FEC4 2C 04 00 00 */ cmpwi r4, 0 /* 80254268 0024FEC8 90 C1 00 08 */ stw r6, 8(r1) /* 8025426C 0024FECC C0 01 00 08 */ lfs f0, 8(r1) /* 80254270 0024FED0 41 80 00 BC */ blt lbl_8025432C /* 80254274 0024FED4 A0 03 00 00 */ lhz r0, 0(r3) /* 80254278 0024FED8 7C 04 00 00 */ cmpw r4, r0 /* 8025427C 0024FEDC 41 80 00 08 */ blt lbl_80254284 /* 80254280 0024FEE0 48 00 00 AC */ b lbl_8025432C lbl_80254284: /* 80254284 0024FEE4 1C 04 00 C0 */ mulli r0, r4, 0xc0 /* 80254288 0024FEE8 80 63 00 08 */ lwz r3, 8(r3) /* 8025428C 0024FEEC 28 05 00 0A */ cmplwi r5, 0xa /* 80254290 0024FEF0 7C 83 02 14 */ add r4, r3, r0 /* 80254294 0024FEF4 41 81 00 98 */ bgt lbl_8025432C /* 80254298 0024FEF8 3C 60 80 42 */ lis r3, lbl_80424D88@ha /* 8025429C 0024FEFC 54 A0 10 3A */ slwi r0, r5, 2 /* 802542A0 0024FF00 38 63 4D 88 */ addi r3, r3, lbl_80424D88@l /* 802542A4 0024FF04 7C 63 00 2E */ lwzx r3, r3, r0 /* 802542A8 0024FF08 7C 69 03 A6 */ mtctr r3 /* 802542AC 0024FF0C 4E 80 04 20 */ bctr /* 802542B0 0024FF10 98 C4 00 06 */ stb r6, 6(r4) /* 802542B4 0024FF14 48 00 00 78 */ b lbl_8025432C /* 802542B8 0024FF18 54 C0 46 3E */ srwi r0, r6, 0x18 /* 802542BC 0024FF1C 54 C3 86 3E */ rlwinm r3, r6, 0x10, 0x18, 0x1f /* 802542C0 0024FF20 98 04 00 20 */ stb r0, 0x20(r4) /* 802542C4 0024FF24 54 C0 C6 3E */ rlwinm r0, r6, 0x18, 0x18, 0x1f /* 802542C8 0024FF28 98 64 00 21 */ stb r3, 0x21(r4) /* 802542CC 0024FF2C 98 04 00 22 */ stb r0, 0x22(r4) /* 802542D0 0024FF30 98 C4 00 23 */ stb r6, 0x23(r4) /* 802542D4 0024FF34 48 00 00 58 */ b lbl_8025432C /* 802542D8 0024FF38 D0 04 00 24 */ stfs f0, 0x24(r4) /* 802542DC 0024FF3C 48 00 00 50 */ b lbl_8025432C /* 802542E0 0024FF40 D0 04 00 28 */ stfs f0, 0x28(r4) /* 802542E4 0024FF44 48 00 00 48 */ b lbl_8025432C /* 802542E8 0024FF48 D0 04 00 2C */ stfs f0, 0x2c(r4) /* 802542EC 0024FF4C 48 00 00 40 */ b lbl_8025432C /* 802542F0 0024FF50 D0 04 00 30 */ stfs f0, 0x30(r4) /* 802542F4 0024FF54 48 00 00 38 */ b lbl_8025432C /* 802542F8 0024FF58 D0 04 00 34 */ stfs f0, 0x34(r4) /* 802542FC 0024FF5C 48 00 00 30 */ b lbl_8025432C /* 80254300 0024FF60 7C 06 00 D0 */ neg r0, r6 /* 80254304 0024FF64 7C 00 33 78 */ or r0, r0, r6 /* 80254308 0024FF68 54 00 0F FE */ srwi r0, r0, 0x1f /* 8025430C 0024FF6C 98 04 00 9F */ stb r0, 0x9f(r4) /* 80254310 0024FF70 48 00 00 1C */ b lbl_8025432C /* 80254314 0024FF74 98 C4 00 07 */ stb r6, 7(r4) /* 80254318 0024FF78 48 00 00 14 */ b lbl_8025432C /* 8025431C 0024FF7C 7C 06 00 D0 */ neg r0, r6 /* 80254320 0024FF80 7C 00 33 78 */ or r0, r0, r6 /* 80254324 0024FF84 54 00 0F FE */ srwi r0, r0, 0x1f /* 80254328 0024FF88 98 04 00 A1 */ stb r0, 0xa1(r4) lbl_8025432C: /* 8025432C 0024FF8C 38 21 00 10 */ addi r1, r1, 0x10 /* 80254330 0024FF90 4E 80 00 20 */ blr .global lbl_80254334 lbl_80254334: /* 80254334 0024FF94 2C 04 00 00 */ cmpwi r4, 0 /* 80254338 0024FF98 4D 80 00 20 */ bltlr /* 8025433C 0024FF9C A0 03 00 00 */ lhz r0, 0(r3) /* 80254340 0024FFA0 7C 04 00 00 */ cmpw r4, r0 /* 80254344 0024FFA4 41 80 00 08 */ blt lbl_8025434C /* 80254348 0024FFA8 4E 80 00 20 */ blr lbl_8025434C: /* 8025434C 0024FFAC 1C 04 00 C0 */ mulli r0, r4, 0xc0 /* 80254350 0024FFB0 80 63 00 08 */ lwz r3, 8(r3) /* 80254354 0024FFB4 28 05 00 0F */ cmplwi r5, 0xf /* 80254358 0024FFB8 7C E3 02 14 */ add r7, r3, r0 /* 8025435C 0024FFBC 4D 81 00 20 */ bgtlr /* 80254360 0024FFC0 3C 60 80 42 */ lis r3, lbl_80424DB4@ha /* 80254364 0024FFC4 54 A0 10 3A */ slwi r0, r5, 2 /* 80254368 0024FFC8 38 63 4D B4 */ addi r3, r3, lbl_80424DB4@l /* 8025436C 0024FFCC 7C 63 00 2E */ lwzx r3, r3, r0 /* 80254370 0024FFD0 7C 69 03 A6 */ mtctr r3 /* 80254374 0024FFD4 4E 80 04 20 */ bctr /* 80254378 0024FFD8 88 07 00 06 */ lbz r0, 6(r7) /* 8025437C 0024FFDC 90 06 00 00 */ stw r0, 0(r6) /* 80254380 0024FFE0 4E 80 00 20 */ blr /* 80254384 0024FFE4 A0 07 00 12 */ lhz r0, 0x12(r7) /* 80254388 0024FFE8 90 06 00 00 */ stw r0, 0(r6) /* 8025438C 0024FFEC 4E 80 00 20 */ blr /* 80254390 0024FFF0 80 07 00 08 */ lwz r0, 8(r7) /* 80254394 0024FFF4 90 06 00 00 */ stw r0, 0(r6) /* 80254398 0024FFF8 4E 80 00 20 */ blr /* 8025439C 0024FFFC 88 07 00 21 */ lbz r0, 0x21(r7) /* 802543A0 00250000 88 A7 00 22 */ lbz r5, 0x22(r7) /* 802543A4 00250004 88 87 00 23 */ lbz r4, 0x23(r7) /* 802543A8 00250008 54 00 80 1E */ slwi r0, r0, 0x10 /* 802543AC 0025000C 88 67 00 20 */ lbz r3, 0x20(r7) /* 802543B0 00250010 50 A4 44 2E */ rlwimi r4, r5, 8, 0x10, 0x17 /* 802543B4 00250014 50 60 C0 0E */ rlwimi r0, r3, 0x18, 0, 7 /* 802543B8 00250018 7C 80 03 78 */ or r0, r4, r0 /* 802543BC 0025001C 90 06 00 00 */ stw r0, 0(r6) /* 802543C0 00250020 4E 80 00 20 */ blr /* 802543C4 00250024 80 07 00 0C */ lwz r0, 0xc(r7) /* 802543C8 00250028 90 06 00 00 */ stw r0, 0(r6) /* 802543CC 0025002C 4E 80 00 20 */ blr /* 802543D0 00250030 88 07 00 9F */ lbz r0, 0x9f(r7) /* 802543D4 00250034 90 06 00 00 */ stw r0, 0(r6) /* 802543D8 00250038 4E 80 00 20 */ blr /* 802543DC 0025003C 88 07 00 07 */ lbz r0, 7(r7) /* 802543E0 00250040 90 06 00 00 */ stw r0, 0(r6) /* 802543E4 00250044 4E 80 00 20 */ blr /* 802543E8 00250048 88 07 00 A1 */ lbz r0, 0xa1(r7) /* 802543EC 0025004C 90 06 00 00 */ stw r0, 0(r6) /* 802543F0 00250050 4E 80 00 20 */ blr /* 802543F4 00250054 80 07 00 24 */ lwz r0, 0x24(r7) /* 802543F8 00250058 90 06 00 00 */ stw r0, 0(r6) /* 802543FC 0025005C 4E 80 00 20 */ blr /* 80254400 00250060 80 07 00 28 */ lwz r0, 0x28(r7) /* 80254404 00250064 90 06 00 00 */ stw r0, 0(r6) /* 80254408 00250068 4E 80 00 20 */ blr /* 8025440C 0025006C 80 07 00 2C */ lwz r0, 0x2c(r7) /* 80254410 00250070 90 06 00 00 */ stw r0, 0(r6) /* 80254414 00250074 4E 80 00 20 */ blr /* 80254418 00250078 80 07 00 30 */ lwz r0, 0x30(r7) /* 8025441C 0025007C 90 06 00 00 */ stw r0, 0(r6) /* 80254420 00250080 4E 80 00 20 */ blr /* 80254424 00250084 80 07 00 34 */ lwz r0, 0x34(r7) /* 80254428 00250088 90 06 00 00 */ stw r0, 0(r6) /* 8025442C 0025008C 4E 80 00 20 */ blr /* 80254430 00250090 4E 80 00 20 */ blr /* 80254434 00250094 38 00 00 08 */ li r0, 8 /* 80254438 00250098 90 06 00 00 */ stw r0, 0(r6) /* 8025443C 0025009C 4E 80 00 20 */ blr .global func_80254440 func_80254440: /* 80254440 002500A0 38 A0 00 01 */ li r5, 1 /* 80254444 002500A4 38 6D A6 38 */ addi r3, r13, lbl_8063F8F8-_SDA_BASE_ /* 80254448 002500A8 38 80 00 04 */ li r4, 4 /* 8025444C 002500AC 38 00 00 00 */ li r0, 0 /* 80254450 002500B0 98 AD A6 38 */ stb r5, lbl_8063F8F8-_SDA_BASE_(r13) /* 80254454 002500B4 B0 83 00 02 */ sth r4, 2(r3) /* 80254458 002500B8 98 03 00 04 */ stb r0, 4(r3) /* 8025445C 002500BC 4E 80 00 20 */ blr