.include "macros.inc" .section .text, "ax" # 8032e1f8 .global J3DDeformData J3DDeformData: /* 8032E1F8 0032B138 38 00 00 00 */ li r0, 0 /* 8032E1FC 0032B13C B0 03 00 00 */ sth r0, 0(r3) /* 8032E200 0032B140 B0 03 00 02 */ sth r0, 2(r3) /* 8032E204 0032B144 B0 03 00 04 */ sth r0, 4(r3) /* 8032E208 0032B148 90 03 00 08 */ stw r0, 8(r3) /* 8032E20C 0032B14C 90 03 00 0C */ stw r0, 0xc(r3) /* 8032E210 0032B150 90 03 00 10 */ stw r0, 0x10(r3) /* 8032E214 0032B154 B0 03 00 14 */ sth r0, 0x14(r3) /* 8032E218 0032B158 B0 03 00 16 */ sth r0, 0x16(r3) /* 8032E21C 0032B15C 90 03 00 18 */ stw r0, 0x18(r3) /* 8032E220 0032B160 90 03 00 1C */ stw r0, 0x1c(r3) /* 8032E224 0032B164 90 03 00 20 */ stw r0, 0x20(r3) /* 8032E228 0032B168 90 03 00 24 */ stw r0, 0x24(r3) /* 8032E22C 0032B16C 4E 80 00 20 */ blr .global J3DDeformData_NS_offAllFlag J3DDeformData_NS_offAllFlag: /* 8032E230 0032B170 38 E0 00 00 */ li r7, 0 /* 8032E234 0032B174 7C 86 20 F8 */ nor r6, r4, r4 /* 8032E238 0032B178 48 00 00 28 */ b lbl_8032E260 lbl_8032E23C: /* 8032E23C 0032B17C 80 A3 00 08 */ lwz r5, 8(r3) /* 8032E240 0032B180 54 E0 04 3E */ clrlwi r0, r7, 0x10 /* 8032E244 0032B184 1C 80 00 24 */ mulli r4, r0, 0x24 /* 8032E248 0032B188 38 04 00 20 */ addi r0, r4, 0x20 /* 8032E24C 0032B18C 7C 85 00 2E */ lwzx r4, r5, r0 /* 8032E250 0032B190 80 04 00 10 */ lwz r0, 0x10(r4) /* 8032E254 0032B194 7C 00 30 38 */ and r0, r0, r6 /* 8032E258 0032B198 90 04 00 10 */ stw r0, 0x10(r4) /* 8032E25C 0032B19C 38 E7 00 01 */ addi r7, r7, 1 lbl_8032E260: /* 8032E260 0032B1A0 54 E4 04 3E */ clrlwi r4, r7, 0x10 /* 8032E264 0032B1A4 A0 03 00 00 */ lhz r0, 0(r3) /* 8032E268 0032B1A8 7C 04 00 40 */ cmplw r4, r0 /* 8032E26C 0032B1AC 41 80 FF D0 */ blt lbl_8032E23C /* 8032E270 0032B1B0 4E 80 00 20 */ blr .global J3DDeformData_NS_deform J3DDeformData_NS_deform: /* 8032E274 0032B1B4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8032E278 0032B1B8 7C 08 02 A6 */ mflr r0 /* 8032E27C 0032B1BC 90 01 00 14 */ stw r0, 0x14(r1) /* 8032E280 0032B1C0 38 84 00 88 */ addi r4, r4, 0x88 /* 8032E284 0032B1C4 48 00 00 15 */ bl J3DDeformData_NS_deform_X1_ /* 8032E288 0032B1C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8032E28C 0032B1CC 7C 08 03 A6 */ mtlr r0 /* 8032E290 0032B1D0 38 21 00 10 */ addi r1, r1, 0x10 /* 8032E294 0032B1D4 4E 80 00 20 */ blr .global J3DDeformData_NS_deform_X1_ J3DDeformData_NS_deform_X1_: /* 8032E298 0032B1D8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8032E29C 0032B1DC 7C 08 02 A6 */ mflr r0 /* 8032E2A0 0032B1E0 90 01 00 24 */ stw r0, 0x24(r1) /* 8032E2A4 0032B1E4 39 61 00 20 */ addi r11, r1, 0x20 /* 8032E2A8 0032B1E8 48 03 3F 35 */ bl _savegpr_29 /* 8032E2AC 0032B1EC 7C 7D 1B 78 */ mr r29, r3 /* 8032E2B0 0032B1F0 7C 9F 23 78 */ mr r31, r4 /* 8032E2B4 0032B1F4 80 64 00 04 */ lwz r3, 4(r4) /* 8032E2B8 0032B1F8 80 04 00 08 */ lwz r0, 8(r4) /* 8032E2BC 0032B1FC 90 04 00 04 */ stw r0, 4(r4) /* 8032E2C0 0032B200 90 64 00 08 */ stw r3, 8(r4) /* 8032E2C4 0032B204 80 64 00 0C */ lwz r3, 0xc(r4) /* 8032E2C8 0032B208 80 04 00 10 */ lwz r0, 0x10(r4) /* 8032E2CC 0032B20C 90 04 00 0C */ stw r0, 0xc(r4) /* 8032E2D0 0032B210 90 64 00 10 */ stw r3, 0x10(r4) /* 8032E2D4 0032B214 3B C0 00 00 */ li r30, 0 /* 8032E2D8 0032B218 48 00 00 28 */ b lbl_8032E300 lbl_8032E2DC: /* 8032E2DC 0032B21C 80 9D 00 08 */ lwz r4, 8(r29) /* 8032E2E0 0032B220 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 8032E2E4 0032B224 1C 60 00 24 */ mulli r3, r0, 0x24 /* 8032E2E8 0032B228 38 03 00 20 */ addi r0, r3, 0x20 /* 8032E2EC 0032B22C 7C 64 00 2E */ lwzx r3, r4, r0 /* 8032E2F0 0032B230 7F E4 FB 78 */ mr r4, r31 /* 8032E2F4 0032B234 7F C5 F3 78 */ mr r5, r30 /* 8032E2F8 0032B238 48 00 00 C5 */ bl J3DDeformer_NS_deform /* 8032E2FC 0032B23C 3B DE 00 01 */ addi r30, r30, 1 lbl_8032E300: /* 8032E300 0032B240 57 C3 04 3E */ clrlwi r3, r30, 0x10 /* 8032E304 0032B244 A0 1D 00 00 */ lhz r0, 0(r29) /* 8032E308 0032B248 7C 03 00 40 */ cmplw r3, r0 /* 8032E30C 0032B24C 41 80 FF D0 */ blt lbl_8032E2DC /* 8032E310 0032B250 80 7F 00 00 */ lwz r3, 0(r31) /* 8032E314 0032B254 80 03 00 00 */ lwz r0, 0(r3) /* 8032E318 0032B258 80 7F 00 04 */ lwz r3, 4(r31) /* 8032E31C 0032B25C 1C 80 00 0C */ mulli r4, r0, 0xc /* 8032E320 0032B260 48 00 D3 19 */ bl DCStoreRangeNoSync /* 8032E324 0032B264 80 7F 00 00 */ lwz r3, 0(r31) /* 8032E328 0032B268 80 03 00 04 */ lwz r0, 4(r3) /* 8032E32C 0032B26C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 8032E330 0032B270 1C 80 00 0C */ mulli r4, r0, 0xc /* 8032E334 0032B274 48 00 D3 05 */ bl DCStoreRangeNoSync /* 8032E338 0032B278 48 00 B9 C1 */ bl PPCSync /* 8032E33C 0032B27C 80 1F 00 04 */ lwz r0, 4(r31) /* 8032E340 0032B280 90 1F 00 2C */ stw r0, 0x2c(r31) /* 8032E344 0032B284 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8032E348 0032B288 90 1F 00 30 */ stw r0, 0x30(r31) /* 8032E34C 0032B28C 39 61 00 20 */ addi r11, r1, 0x20 /* 8032E350 0032B290 48 03 3E D9 */ bl _restgpr_29 /* 8032E354 0032B294 80 01 00 24 */ lwz r0, 0x24(r1) /* 8032E358 0032B298 7C 08 03 A6 */ mtlr r0 /* 8032E35C 0032B29C 38 21 00 20 */ addi r1, r1, 0x20 /* 8032E360 0032B2A0 4E 80 00 20 */ blr .global J3DDeformData_NS_setAnm J3DDeformData_NS_setAnm: /* 8032E364 0032B2A4 38 E0 00 00 */ li r7, 0 /* 8032E368 0032B2A8 48 00 00 20 */ b lbl_8032E388 lbl_8032E36C: /* 8032E36C 0032B2AC 80 C3 00 08 */ lwz r6, 8(r3) /* 8032E370 0032B2B0 54 E0 04 3E */ clrlwi r0, r7, 0x10 /* 8032E374 0032B2B4 1C A0 00 24 */ mulli r5, r0, 0x24 /* 8032E378 0032B2B8 38 05 00 20 */ addi r0, r5, 0x20 /* 8032E37C 0032B2BC 7C A6 00 2E */ lwzx r5, r6, r0 /* 8032E380 0032B2C0 90 85 00 04 */ stw r4, 4(r5) /* 8032E384 0032B2C4 38 E7 00 01 */ addi r7, r7, 1 lbl_8032E388: /* 8032E388 0032B2C8 54 E5 04 3E */ clrlwi r5, r7, 0x10 /* 8032E38C 0032B2CC A0 03 00 00 */ lhz r0, 0(r3) /* 8032E390 0032B2D0 7C 05 00 40 */ cmplw r5, r0 /* 8032E394 0032B2D4 41 80 FF D8 */ blt lbl_8032E36C /* 8032E398 0032B2D8 4E 80 00 20 */ blr .global J3DDeformer J3DDeformer: /* 8032E39C 0032B2DC 90 83 00 00 */ stw r4, 0(r3) /* 8032E3A0 0032B2E0 38 00 00 00 */ li r0, 0 /* 8032E3A4 0032B2E4 90 03 00 04 */ stw r0, 4(r3) /* 8032E3A8 0032B2E8 90 03 00 08 */ stw r0, 8(r3) /* 8032E3AC 0032B2EC 90 03 00 0C */ stw r0, 0xc(r3) /* 8032E3B0 0032B2F0 38 00 00 03 */ li r0, 3 /* 8032E3B4 0032B2F4 90 03 00 10 */ stw r0, 0x10(r3) /* 8032E3B8 0032B2F8 4E 80 00 20 */ blr .global J3DDeformer_NS_deform J3DDeformer_NS_deform: /* 8032E3BC 0032B2FC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8032E3C0 0032B300 7C 08 02 A6 */ mflr r0 /* 8032E3C4 0032B304 90 01 00 24 */ stw r0, 0x24(r1) /* 8032E3C8 0032B308 39 61 00 20 */ addi r11, r1, 0x20 /* 8032E3CC 0032B30C 48 03 3E 05 */ bl _savegpr_26 /* 8032E3D0 0032B310 7C 7C 1B 78 */ mr r28, r3 /* 8032E3D4 0032B314 7C 9D 23 78 */ mr r29, r4 /* 8032E3D8 0032B318 7C BE 2B 78 */ mr r30, r5 /* 8032E3DC 0032B31C 3B E0 00 00 */ li r31, 0 /* 8032E3E0 0032B320 80 03 00 04 */ lwz r0, 4(r3) /* 8032E3E4 0032B324 28 00 00 00 */ cmplwi r0, 0 /* 8032E3E8 0032B328 41 82 00 A4 */ beq lbl_8032E48C /* 8032E3EC 0032B32C 38 A0 00 00 */ li r5, 0 /* 8032E3F0 0032B330 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 8032E3F4 0032B334 48 00 00 24 */ b lbl_8032E418 lbl_8032E3F8: /* 8032E3F8 0032B338 80 7C 00 00 */ lwz r3, 0(r28) /* 8032E3FC 0032B33C 80 83 00 08 */ lwz r4, 8(r3) /* 8032E400 0032B340 54 A3 04 3E */ clrlwi r3, r5, 0x10 /* 8032E404 0032B344 1C 63 00 24 */ mulli r3, r3, 0x24 /* 8032E408 0032B348 7C 64 1A 14 */ add r3, r4, r3 /* 8032E40C 0032B34C A0 63 00 10 */ lhz r3, 0x10(r3) /* 8032E410 0032B350 7F FF 1A 14 */ add r31, r31, r3 /* 8032E414 0032B354 38 A5 00 01 */ addi r5, r5, 1 lbl_8032E418: /* 8032E418 0032B358 54 A3 04 3E */ clrlwi r3, r5, 0x10 /* 8032E41C 0032B35C 7C 03 00 40 */ cmplw r3, r0 /* 8032E420 0032B360 41 80 FF D8 */ blt lbl_8032E3F8 /* 8032E424 0032B364 80 7C 00 00 */ lwz r3, 0(r28) /* 8032E428 0032B368 80 63 00 08 */ lwz r3, 8(r3) /* 8032E42C 0032B36C 1C 00 00 24 */ mulli r0, r0, 0x24 /* 8032E430 0032B370 7C 63 02 14 */ add r3, r3, r0 /* 8032E434 0032B374 A3 63 00 10 */ lhz r27, 0x10(r3) /* 8032E438 0032B378 3B 40 00 00 */ li r26, 0 /* 8032E43C 0032B37C 48 00 00 30 */ b lbl_8032E46C lbl_8032E440: /* 8032E440 0032B380 80 7C 00 04 */ lwz r3, 4(r28) /* 8032E444 0032B384 7F E4 FB 78 */ mr r4, r31 /* 8032E448 0032B388 81 83 00 00 */ lwz r12, 0(r3) /* 8032E44C 0032B38C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8032E450 0032B390 7D 89 03 A6 */ mtctr r12 /* 8032E454 0032B394 3B FF 00 01 */ addi r31, r31, 1 /* 8032E458 0032B398 4E 80 04 21 */ bctrl /* 8032E45C 0032B39C 80 7C 00 08 */ lwz r3, 8(r28) /* 8032E460 0032B3A0 57 40 13 BA */ rlwinm r0, r26, 2, 0xe, 0x1d /* 8032E464 0032B3A4 7C 23 05 2E */ stfsx f1, r3, r0 /* 8032E468 0032B3A8 3B 5A 00 01 */ addi r26, r26, 1 lbl_8032E46C: /* 8032E46C 0032B3AC 57 40 04 3E */ clrlwi r0, r26, 0x10 /* 8032E470 0032B3B0 7C 00 D8 40 */ cmplw r0, r27 /* 8032E474 0032B3B4 41 80 FF CC */ blt lbl_8032E440 /* 8032E478 0032B3B8 7F 83 E3 78 */ mr r3, r28 /* 8032E47C 0032B3BC 7F A4 EB 78 */ mr r4, r29 /* 8032E480 0032B3C0 7F C5 F3 78 */ mr r5, r30 /* 8032E484 0032B3C4 80 DC 00 08 */ lwz r6, 8(r28) /* 8032E488 0032B3C8 48 00 06 2D */ bl J3DDeformer_NS_deform_X1_ lbl_8032E48C: /* 8032E48C 0032B3CC 39 61 00 20 */ addi r11, r1, 0x20 /* 8032E490 0032B3D0 48 03 3D 8D */ bl _restgpr_26 /* 8032E494 0032B3D4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8032E498 0032B3D8 7C 08 03 A6 */ mtlr r0 /* 8032E49C 0032B3DC 38 21 00 20 */ addi r1, r1, 0x20 /* 8032E4A0 0032B3E0 4E 80 00 20 */ blr .global J3DDeformer_NS_deform_VtxPosF32 J3DDeformer_NS_deform_VtxPosF32: /* 8032E4A4 0032B3E4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8032E4A8 0032B3E8 7C 08 02 A6 */ mflr r0 /* 8032E4AC 0032B3EC 90 01 00 24 */ stw r0, 0x24(r1) /* 8032E4B0 0032B3F0 39 61 00 20 */ addi r11, r1, 0x20 /* 8032E4B4 0032B3F4 48 03 3D 29 */ bl _savegpr_29 /* 8032E4B8 0032B3F8 A0 05 00 12 */ lhz r0, 0x12(r5) /* 8032E4BC 0032B3FC A1 05 00 10 */ lhz r8, 0x10(r5) /* 8032E4C0 0032B400 80 84 00 04 */ lwz r4, 4(r4) /* 8032E4C4 0032B404 80 63 00 00 */ lwz r3, 0(r3) /* 8032E4C8 0032B408 81 43 00 18 */ lwz r10, 0x18(r3) /* 8032E4CC 0032B40C 81 65 00 18 */ lwz r11, 0x18(r5) /* 8032E4D0 0032B410 38 60 00 00 */ li r3, 0 /* 8032E4D4 0032B414 C0 02 CA 7C */ lfs f0, lbl_8045647C-_SDA2_BASE_(r2) /* 8032E4D8 0032B418 7C 09 03 A6 */ mtctr r0 /* 8032E4DC 0032B41C 2C 00 00 00 */ cmpwi r0, 0 /* 8032E4E0 0032B420 40 81 00 28 */ ble lbl_8032E508 lbl_8032E4E4: /* 8032E4E4 0032B424 7D 2B 1A 2E */ lhzx r9, r11, r3 /* 8032E4E8 0032B428 1D 29 00 03 */ mulli r9, r9, 3 /* 8032E4EC 0032B42C 55 29 10 3A */ slwi r9, r9, 2 /* 8032E4F0 0032B430 7D 24 4A 14 */ add r9, r4, r9 /* 8032E4F4 0032B434 D0 09 00 00 */ stfs f0, 0(r9) /* 8032E4F8 0032B438 D0 09 00 04 */ stfs f0, 4(r9) /* 8032E4FC 0032B43C D0 09 00 08 */ stfs f0, 8(r9) /* 8032E500 0032B440 38 63 00 02 */ addi r3, r3, 2 /* 8032E504 0032B444 42 00 FF E0 */ bdnz lbl_8032E4E4 lbl_8032E508: /* 8032E508 0032B448 81 22 CA 74 */ lwz r9, lbl_80456474-_SDA2_BASE_(r2) /* 8032E50C 0032B44C 80 62 CA 78 */ lwz r3, lbl_80456478-_SDA2_BASE_(r2) /* 8032E510 0032B450 91 21 00 08 */ stw r9, 8(r1) /* 8032E514 0032B454 90 61 00 0C */ stw r3, 0xc(r1) /* 8032E518 0032B458 3B E0 00 00 */ li r31, 0 /* 8032E51C 0032B45C 39 21 00 08 */ addi r9, r1, 8 /* 8032E520 0032B460 48 00 00 C8 */ b lbl_8032E5E8 lbl_8032E524: /* 8032E524 0032B464 80 65 00 18 */ lwz r3, 0x18(r5) /* 8032E528 0032B468 57 EB 0B FC */ rlwinm r11, r31, 1, 0xf, 0x1e /* 8032E52C 0032B46C 7C 63 5A 2E */ lhzx r3, r3, r11 /* 8032E530 0032B470 1C 63 00 03 */ mulli r3, r3, 3 /* 8032E534 0032B474 3B C0 00 00 */ li r30, 0 /* 8032E538 0032B478 54 63 10 3A */ slwi r3, r3, 2 /* 8032E53C 0032B47C 7D 84 1A 14 */ add r12, r4, r3 /* 8032E540 0032B480 48 00 00 98 */ b lbl_8032E5D8 lbl_8032E544: /* 8032E544 0032B484 57 C3 04 3E */ clrlwi r3, r30, 0x10 /* 8032E548 0032B488 1C 63 00 0C */ mulli r3, r3, 0xc /* 8032E54C 0032B48C 38 63 00 04 */ addi r3, r3, 4 /* 8032E550 0032B490 7C 66 18 2E */ lwzx r3, r6, r3 /* 8032E554 0032B494 7F AB 1A 2E */ lhzx r29, r11, r3 /* 8032E558 0032B498 57 A3 04 DE */ rlwinm r3, r29, 0, 0x13, 0xf /* 8032E55C 0032B49C 1C 63 00 0C */ mulli r3, r3, 0xc /* 8032E560 0032B4A0 7C 6A 1A 14 */ add r3, r10, r3 /* 8032E564 0032B4A4 C0 43 00 00 */ lfs f2, 0(r3) /* 8032E568 0032B4A8 C0 63 00 04 */ lfs f3, 4(r3) /* 8032E56C 0032B4AC C0 83 00 08 */ lfs f4, 8(r3) /* 8032E570 0032B4B0 57 A3 9F 7A */ rlwinm r3, r29, 0x13, 0x1d, 0x1d /* 8032E574 0032B4B4 7C 09 1C 2E */ lfsx f0, r9, r3 /* 8032E578 0032B4B8 EC 42 00 32 */ fmuls f2, f2, f0 /* 8032E57C 0032B4BC 57 A3 A7 7A */ rlwinm r3, r29, 0x14, 0x1d, 0x1d /* 8032E580 0032B4C0 7C 09 1C 2E */ lfsx f0, r9, r3 /* 8032E584 0032B4C4 EC 63 00 32 */ fmuls f3, f3, f0 /* 8032E588 0032B4C8 57 A3 AF 7A */ rlwinm r3, r29, 0x15, 0x1d, 0x1d /* 8032E58C 0032B4CC 7C 09 1C 2E */ lfsx f0, r9, r3 /* 8032E590 0032B4D0 EC 84 00 32 */ fmuls f4, f4, f0 /* 8032E594 0032B4D4 C0 2C 00 00 */ lfs f1, 0(r12) /* 8032E598 0032B4D8 57 C3 13 BA */ rlwinm r3, r30, 2, 0xe, 0x1d /* 8032E59C 0032B4DC 7C 07 1C 2E */ lfsx f0, r7, r3 /* 8032E5A0 0032B4E0 EC 02 00 32 */ fmuls f0, f2, f0 /* 8032E5A4 0032B4E4 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E5A8 0032B4E8 D0 0C 00 00 */ stfs f0, 0(r12) /* 8032E5AC 0032B4EC C0 2C 00 04 */ lfs f1, 4(r12) /* 8032E5B0 0032B4F0 7C 07 1C 2E */ lfsx f0, r7, r3 /* 8032E5B4 0032B4F4 EC 03 00 32 */ fmuls f0, f3, f0 /* 8032E5B8 0032B4F8 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E5BC 0032B4FC D0 0C 00 04 */ stfs f0, 4(r12) /* 8032E5C0 0032B500 C0 2C 00 08 */ lfs f1, 8(r12) /* 8032E5C4 0032B504 7C 07 1C 2E */ lfsx f0, r7, r3 /* 8032E5C8 0032B508 EC 04 00 32 */ fmuls f0, f4, f0 /* 8032E5CC 0032B50C EC 01 00 2A */ fadds f0, f1, f0 /* 8032E5D0 0032B510 D0 0C 00 08 */ stfs f0, 8(r12) /* 8032E5D4 0032B514 3B DE 00 01 */ addi r30, r30, 1 lbl_8032E5D8: /* 8032E5D8 0032B518 57 C3 04 3E */ clrlwi r3, r30, 0x10 /* 8032E5DC 0032B51C 7C 03 40 00 */ cmpw r3, r8 /* 8032E5E0 0032B520 41 80 FF 64 */ blt lbl_8032E544 /* 8032E5E4 0032B524 3B FF 00 01 */ addi r31, r31, 1 lbl_8032E5E8: /* 8032E5E8 0032B528 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 8032E5EC 0032B52C 7C 03 00 00 */ cmpw r3, r0 /* 8032E5F0 0032B530 41 80 FF 34 */ blt lbl_8032E524 /* 8032E5F4 0032B534 39 61 00 20 */ addi r11, r1, 0x20 /* 8032E5F8 0032B538 48 03 3C 31 */ bl _restgpr_29 /* 8032E5FC 0032B53C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8032E600 0032B540 7C 08 03 A6 */ mtlr r0 /* 8032E604 0032B544 38 21 00 20 */ addi r1, r1, 0x20 /* 8032E608 0032B548 4E 80 00 20 */ blr .global J3DDeformer_NS_deform_VtxNrmF32 J3DDeformer_NS_deform_VtxNrmF32: /* 8032E60C 0032B54C 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8032E610 0032B550 7C 08 02 A6 */ mflr r0 /* 8032E614 0032B554 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8032E618 0032B558 DB E1 00 90 */ stfd f31, 0x90(r1) /* 8032E61C 0032B55C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8032E620 0032B560 DB C1 00 80 */ stfd f30, 0x80(r1) /* 8032E624 0032B564 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 8032E628 0032B568 DB A1 00 70 */ stfd f29, 0x70(r1) /* 8032E62C 0032B56C F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 8032E630 0032B570 DB 81 00 60 */ stfd f28, 0x60(r1) /* 8032E634 0032B574 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 8032E638 0032B578 DB 61 00 50 */ stfd f27, 0x50(r1) /* 8032E63C 0032B57C F3 61 00 58 */ psq_st f27, 88(r1), 0, qr0 /* 8032E640 0032B580 39 61 00 50 */ addi r11, r1, 0x50 /* 8032E644 0032B584 48 03 3B 79 */ bl _savegpr_21 /* 8032E648 0032B588 7C BF 2B 78 */ mr r31, r5 /* 8032E64C 0032B58C 7C D6 33 78 */ mr r22, r6 /* 8032E650 0032B590 7C F5 3B 78 */ mr r21, r7 /* 8032E654 0032B594 83 64 00 0C */ lwz r27, 0xc(r4) /* 8032E658 0032B598 80 83 00 00 */ lwz r4, 0(r3) /* 8032E65C 0032B59C 83 C4 00 1C */ lwz r30, 0x1c(r4) /* 8032E660 0032B5A0 83 43 00 0C */ lwz r26, 0xc(r3) /* 8032E664 0032B5A4 A2 E5 00 10 */ lhz r23, 0x10(r5) /* 8032E668 0032B5A8 A3 25 00 16 */ lhz r25, 0x16(r5) /* 8032E66C 0032B5AC 3B 80 00 00 */ li r28, 0 /* 8032E670 0032B5B0 C3 62 CA 7C */ lfs f27, lbl_8045647C-_SDA2_BASE_(r2) /* 8032E674 0032B5B4 48 00 01 24 */ b lbl_8032E798 lbl_8032E678: /* 8032E678 0032B5B8 57 80 04 3E */ clrlwi r0, r28, 0x10 /* 8032E67C 0032B5BC 1C 00 00 03 */ mulli r0, r0, 3 /* 8032E680 0032B5C0 54 00 10 3A */ slwi r0, r0, 2 /* 8032E684 0032B5C4 7C 7A 02 14 */ add r3, r26, r0 /* 8032E688 0032B5C8 D3 63 00 00 */ stfs f27, 0(r3) /* 8032E68C 0032B5CC D3 63 00 04 */ stfs f27, 4(r3) /* 8032E690 0032B5D0 D3 63 00 08 */ stfs f27, 8(r3) /* 8032E694 0032B5D4 38 A0 00 00 */ li r5, 0 /* 8032E698 0032B5D8 57 84 0B FC */ rlwinm r4, r28, 1, 0xf, 0x1e /* 8032E69C 0032B5DC 48 00 00 E4 */ b lbl_8032E780 lbl_8032E6A0: /* 8032E6A0 0032B5E0 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 8032E6A4 0032B5E4 1C C0 00 0C */ mulli r6, r0, 0xc /* 8032E6A8 0032B5E8 38 C6 00 08 */ addi r6, r6, 8 /* 8032E6AC 0032B5EC 7C D6 30 2E */ lwzx r6, r22, r6 /* 8032E6B0 0032B5F0 7C E4 32 2E */ lhzx r7, r4, r6 /* 8032E6B4 0032B5F4 54 E6 04 21 */ rlwinm. r6, r7, 0, 0x10, 0x10 /* 8032E6B8 0032B5F8 41 82 00 18 */ beq lbl_8032E6D0 /* 8032E6BC 0032B5FC 54 E6 04 DE */ rlwinm r6, r7, 0, 0x13, 0xf /* 8032E6C0 0032B600 1C C6 00 0C */ mulli r6, r6, 0xc /* 8032E6C4 0032B604 7C 1E 34 2E */ lfsx f0, r30, r6 /* 8032E6C8 0032B608 FC 40 00 50 */ fneg f2, f0 /* 8032E6CC 0032B60C 48 00 00 10 */ b lbl_8032E6DC lbl_8032E6D0: /* 8032E6D0 0032B610 54 E6 04 DE */ rlwinm r6, r7, 0, 0x13, 0xf /* 8032E6D4 0032B614 1C C6 00 0C */ mulli r6, r6, 0xc /* 8032E6D8 0032B618 7C 5E 34 2E */ lfsx f2, r30, r6 lbl_8032E6DC: /* 8032E6DC 0032B61C 54 E6 04 63 */ rlwinm. r6, r7, 0, 0x11, 0x11 /* 8032E6E0 0032B620 41 82 00 1C */ beq lbl_8032E6FC /* 8032E6E4 0032B624 54 E6 04 DE */ rlwinm r6, r7, 0, 0x13, 0xf /* 8032E6E8 0032B628 1C C6 00 0C */ mulli r6, r6, 0xc /* 8032E6EC 0032B62C 38 C6 00 04 */ addi r6, r6, 4 /* 8032E6F0 0032B630 7C 1E 34 2E */ lfsx f0, r30, r6 /* 8032E6F4 0032B634 FC 60 00 50 */ fneg f3, f0 /* 8032E6F8 0032B638 48 00 00 14 */ b lbl_8032E70C lbl_8032E6FC: /* 8032E6FC 0032B63C 54 E6 04 DE */ rlwinm r6, r7, 0, 0x13, 0xf /* 8032E700 0032B640 1C C6 00 0C */ mulli r6, r6, 0xc /* 8032E704 0032B644 38 C6 00 04 */ addi r6, r6, 4 /* 8032E708 0032B648 7C 7E 34 2E */ lfsx f3, r30, r6 lbl_8032E70C: /* 8032E70C 0032B64C 54 E6 04 A5 */ rlwinm. r6, r7, 0, 0x12, 0x12 /* 8032E710 0032B650 41 82 00 1C */ beq lbl_8032E72C /* 8032E714 0032B654 54 E6 04 DE */ rlwinm r6, r7, 0, 0x13, 0xf /* 8032E718 0032B658 1C C6 00 0C */ mulli r6, r6, 0xc /* 8032E71C 0032B65C 38 C6 00 08 */ addi r6, r6, 8 /* 8032E720 0032B660 7C 1E 34 2E */ lfsx f0, r30, r6 /* 8032E724 0032B664 FC 80 00 50 */ fneg f4, f0 /* 8032E728 0032B668 48 00 00 14 */ b lbl_8032E73C lbl_8032E72C: /* 8032E72C 0032B66C 54 E6 04 DE */ rlwinm r6, r7, 0, 0x13, 0xf /* 8032E730 0032B670 1C C6 00 0C */ mulli r6, r6, 0xc /* 8032E734 0032B674 38 C6 00 08 */ addi r6, r6, 8 /* 8032E738 0032B678 7C 9E 34 2E */ lfsx f4, r30, r6 lbl_8032E73C: /* 8032E73C 0032B67C C0 23 00 00 */ lfs f1, 0(r3) /* 8032E740 0032B680 54 00 10 3A */ slwi r0, r0, 2 /* 8032E744 0032B684 7C 15 04 2E */ lfsx f0, r21, r0 /* 8032E748 0032B688 EC 02 00 32 */ fmuls f0, f2, f0 /* 8032E74C 0032B68C EC 01 00 2A */ fadds f0, f1, f0 /* 8032E750 0032B690 D0 03 00 00 */ stfs f0, 0(r3) /* 8032E754 0032B694 C0 23 00 04 */ lfs f1, 4(r3) /* 8032E758 0032B698 7C 15 04 2E */ lfsx f0, r21, r0 /* 8032E75C 0032B69C EC 03 00 32 */ fmuls f0, f3, f0 /* 8032E760 0032B6A0 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E764 0032B6A4 D0 03 00 04 */ stfs f0, 4(r3) /* 8032E768 0032B6A8 C0 23 00 08 */ lfs f1, 8(r3) /* 8032E76C 0032B6AC 7C 15 04 2E */ lfsx f0, r21, r0 /* 8032E770 0032B6B0 EC 04 00 32 */ fmuls f0, f4, f0 /* 8032E774 0032B6B4 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E778 0032B6B8 D0 03 00 08 */ stfs f0, 8(r3) /* 8032E77C 0032B6BC 38 A5 00 01 */ addi r5, r5, 1 lbl_8032E780: /* 8032E780 0032B6C0 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 8032E784 0032B6C4 7C 00 B8 40 */ cmplw r0, r23 /* 8032E788 0032B6C8 41 80 FF 18 */ blt lbl_8032E6A0 /* 8032E78C 0032B6CC 7C 64 1B 78 */ mr r4, r3 /* 8032E790 0032B6D0 48 01 89 65 */ bl PSVECNormalize /* 8032E794 0032B6D4 3B 9C 00 01 */ addi r28, r28, 1 lbl_8032E798: /* 8032E798 0032B6D8 57 83 04 3E */ clrlwi r3, r28, 0x10 /* 8032E79C 0032B6DC A0 1F 00 14 */ lhz r0, 0x14(r31) /* 8032E7A0 0032B6E0 7C 03 00 40 */ cmplw r3, r0 /* 8032E7A4 0032B6E4 41 80 FE D4 */ blt lbl_8032E678 /* 8032E7A8 0032B6E8 3B 00 00 00 */ li r24, 0 /* 8032E7AC 0032B6EC C3 A2 CA 7C */ lfs f29, lbl_8045647C-_SDA2_BASE_(r2) /* 8032E7B0 0032B6F0 C3 C2 CA 70 */ lfs f30, lbl_80456470-_SDA2_BASE_(r2) /* 8032E7B4 0032B6F4 CB E2 CA 98 */ lfd f31, lbl_80456498-_SDA2_BASE_(r2) /* 8032E7B8 0032B6F8 3F C0 43 30 */ lis r30, 0x4330 /* 8032E7BC 0032B6FC 48 00 02 AC */ b lbl_8032EA68 lbl_8032E7C0: /* 8032E7C0 0032B700 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 8032E7C4 0032B704 57 00 04 3E */ clrlwi r0, r24, 0x10 /* 8032E7C8 0032B708 1C 00 00 0C */ mulli r0, r0, 0xc /* 8032E7CC 0032B70C 7E E3 02 14 */ add r23, r3, r0 /* 8032E7D0 0032B710 D3 A1 00 08 */ stfs f29, 8(r1) /* 8032E7D4 0032B714 D3 A1 00 0C */ stfs f29, 0xc(r1) /* 8032E7D8 0032B718 D3 A1 00 10 */ stfs f29, 0x10(r1) /* 8032E7DC 0032B71C A0 17 00 00 */ lhz r0, 0(r23) /* 8032E7E0 0032B720 90 01 00 1C */ stw r0, 0x1c(r1) /* 8032E7E4 0032B724 93 C1 00 18 */ stw r30, 0x18(r1) /* 8032E7E8 0032B728 C8 01 00 18 */ lfd f0, 0x18(r1) /* 8032E7EC 0032B72C EC 00 F8 28 */ fsubs f0, f0, f31 /* 8032E7F0 0032B730 EC 5E 00 24 */ fdivs f2, f30, f0 /* 8032E7F4 0032B734 38 80 00 00 */ li r4, 0 /* 8032E7F8 0032B738 48 00 00 5C */ b lbl_8032E854 lbl_8032E7FC: /* 8032E7FC 0032B73C 80 77 00 04 */ lwz r3, 4(r23) /* 8032E800 0032B740 54 80 0B FC */ rlwinm r0, r4, 1, 0xf, 0x1e /* 8032E804 0032B744 7C 03 02 2E */ lhzx r0, r3, r0 /* 8032E808 0032B748 1C 00 00 03 */ mulli r0, r0, 3 /* 8032E80C 0032B74C C0 21 00 08 */ lfs f1, 8(r1) /* 8032E810 0032B750 54 00 10 3A */ slwi r0, r0, 2 /* 8032E814 0032B754 7C 7A 02 14 */ add r3, r26, r0 /* 8032E818 0032B758 C0 03 00 00 */ lfs f0, 0(r3) /* 8032E81C 0032B75C EC 02 00 32 */ fmuls f0, f2, f0 /* 8032E820 0032B760 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E824 0032B764 D0 01 00 08 */ stfs f0, 8(r1) /* 8032E828 0032B768 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8032E82C 0032B76C C0 03 00 04 */ lfs f0, 4(r3) /* 8032E830 0032B770 EC 02 00 32 */ fmuls f0, f2, f0 /* 8032E834 0032B774 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E838 0032B778 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8032E83C 0032B77C C0 21 00 10 */ lfs f1, 0x10(r1) /* 8032E840 0032B780 C0 03 00 08 */ lfs f0, 8(r3) /* 8032E844 0032B784 EC 02 00 32 */ fmuls f0, f2, f0 /* 8032E848 0032B788 EC 01 00 2A */ fadds f0, f1, f0 /* 8032E84C 0032B78C D0 01 00 10 */ stfs f0, 0x10(r1) /* 8032E850 0032B790 38 84 00 01 */ addi r4, r4, 1 lbl_8032E854: /* 8032E854 0032B794 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 8032E858 0032B798 A0 17 00 00 */ lhz r0, 0(r23) /* 8032E85C 0032B79C 7C 03 00 40 */ cmplw r3, r0 /* 8032E860 0032B7A0 41 80 FF 9C */ blt lbl_8032E7FC /* 8032E864 0032B7A4 38 61 00 08 */ addi r3, r1, 8 /* 8032E868 0032B7A8 7C 64 1B 78 */ mr r4, r3 /* 8032E86C 0032B7AC 48 01 88 89 */ bl PSVECNormalize /* 8032E870 0032B7B0 3A C0 00 00 */ li r22, 0 /* 8032E874 0032B7B4 48 00 01 E0 */ b lbl_8032EA54 lbl_8032E878: /* 8032E878 0032B7B8 80 77 00 08 */ lwz r3, 8(r23) /* 8032E87C 0032B7BC 56 C0 0B FC */ rlwinm r0, r22, 1, 0xf, 0x1e /* 8032E880 0032B7C0 7C 63 02 2E */ lhzx r3, r3, r0 /* 8032E884 0032B7C4 28 03 FF FF */ cmplwi r3, 0xffff /* 8032E888 0032B7C8 41 82 01 C8 */ beq lbl_8032EA50 /* 8032E88C 0032B7CC 1E A3 00 03 */ mulli r21, r3, 3 /* 8032E890 0032B7D0 80 77 00 04 */ lwz r3, 4(r23) /* 8032E894 0032B7D4 7C 03 02 2E */ lhzx r0, r3, r0 /* 8032E898 0032B7D8 7C 1C 03 78 */ mr r28, r0 /* 8032E89C 0032B7DC 1C 00 00 03 */ mulli r0, r0, 3 /* 8032E8A0 0032B7E0 54 00 10 3A */ slwi r0, r0, 2 /* 8032E8A4 0032B7E4 7F BA 02 14 */ add r29, r26, r0 /* 8032E8A8 0032B7E8 C0 21 00 10 */ lfs f1, 0x10(r1) /* 8032E8AC 0032B7EC C0 1D 00 08 */ lfs f0, 8(r29) /* 8032E8B0 0032B7F0 EC 61 00 32 */ fmuls f3, f1, f0 /* 8032E8B4 0032B7F4 C3 81 00 08 */ lfs f28, 8(r1) /* 8032E8B8 0032B7F8 C3 7D 00 00 */ lfs f27, 0(r29) /* 8032E8BC 0032B7FC EC 5C 06 F2 */ fmuls f2, f28, f27 /* 8032E8C0 0032B800 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8032E8C4 0032B804 C0 1D 00 04 */ lfs f0, 4(r29) /* 8032E8C8 0032B808 EC 01 00 32 */ fmuls f0, f1, f0 /* 8032E8CC 0032B80C EC 02 00 2A */ fadds f0, f2, f0 /* 8032E8D0 0032B810 EC 43 00 2A */ fadds f2, f3, f0 /* 8032E8D4 0032B814 C0 22 CA 70 */ lfs f1, lbl_80456470-_SDA2_BASE_(r2) /* 8032E8D8 0032B818 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8032E8DC 0032B81C 4C 41 13 82 */ cror 2, 1, 2 /* 8032E8E0 0032B820 40 82 00 0C */ bne lbl_8032E8EC /* 8032E8E4 0032B824 C0 22 CA 7C */ lfs f1, lbl_8045647C-_SDA2_BASE_(r2) /* 8032E8E8 0032B828 48 00 00 A4 */ b lbl_8032E98C lbl_8032E8EC: /* 8032E8EC 0032B82C C0 02 CA 80 */ lfs f0, lbl_80456480-_SDA2_BASE_(r2) /* 8032E8F0 0032B830 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8032E8F4 0032B834 40 81 00 94 */ ble lbl_8032E988 /* 8032E8F8 0032B838 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8032E8FC 0032B83C 4C 41 13 82 */ cror 2, 1, 2 /* 8032E900 0032B840 40 82 00 0C */ bne lbl_8032E90C /* 8032E904 0032B844 C0 22 CA 7C */ lfs f1, lbl_8045647C-_SDA2_BASE_(r2) /* 8032E908 0032B848 48 00 00 74 */ b lbl_8032E97C lbl_8032E90C: /* 8032E90C 0032B84C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8032E910 0032B850 4C 40 13 82 */ cror 2, 0, 2 /* 8032E914 0032B854 40 82 00 0C */ bne lbl_8032E920 /* 8032E918 0032B858 C0 22 CA 84 */ lfs f1, lbl_80456484-_SDA2_BASE_(r2) /* 8032E91C 0032B85C 48 00 00 60 */ b lbl_8032E97C lbl_8032E920: /* 8032E920 0032B860 C0 02 CA 7C */ lfs f0, lbl_8045647C-_SDA2_BASE_(r2) /* 8032E924 0032B864 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8032E928 0032B868 40 80 00 30 */ bge lbl_8032E958 /* 8032E92C 0032B86C C0 22 CA 88 */ lfs f1, lbl_80456488-_SDA2_BASE_(r2) /* 8032E930 0032B870 FC 00 10 50 */ fneg f0, f2 /* 8032E934 0032B874 EC 21 00 32 */ fmuls f1, f1, f0 /* 8032E938 0032B878 48 03 37 75 */ bl func_803620AC /* 8032E93C 0032B87C 54 60 10 3A */ slwi r0, r3, 2 /* 8032E940 0032B880 3C 60 80 45 */ lis r3, lbl_8044AA40@ha /* 8032E944 0032B884 38 63 AA 40 */ addi r3, r3, lbl_8044AA40@l /* 8032E948 0032B888 7C 23 04 2E */ lfsx f1, r3, r0 /* 8032E94C 0032B88C C0 02 CA 8C */ lfs f0, lbl_8045648C-_SDA2_BASE_(r2) /* 8032E950 0032B890 EC 21 00 2A */ fadds f1, f1, f0 /* 8032E954 0032B894 48 00 00 28 */ b lbl_8032E97C lbl_8032E958: /* 8032E958 0032B898 C0 02 CA 88 */ lfs f0, lbl_80456488-_SDA2_BASE_(r2) /* 8032E95C 0032B89C EC 20 00 B2 */ fmuls f1, f0, f2 /* 8032E960 0032B8A0 48 03 37 4D */ bl func_803620AC /* 8032E964 0032B8A4 54 60 10 3A */ slwi r0, r3, 2 /* 8032E968 0032B8A8 3C 60 80 45 */ lis r3, lbl_8044AA40@ha /* 8032E96C 0032B8AC 38 63 AA 40 */ addi r3, r3, lbl_8044AA40@l /* 8032E970 0032B8B0 7C 23 04 2E */ lfsx f1, r3, r0 /* 8032E974 0032B8B4 C0 02 CA 8C */ lfs f0, lbl_8045648C-_SDA2_BASE_(r2) /* 8032E978 0032B8B8 EC 20 08 28 */ fsubs f1, f0, f1 lbl_8032E97C: /* 8032E97C 0032B8BC C0 02 CA 90 */ lfs f0, lbl_80456490-_SDA2_BASE_(r2) /* 8032E980 0032B8C0 EC 21 00 32 */ fmuls f1, f1, f0 /* 8032E984 0032B8C4 48 00 00 08 */ b lbl_8032E98C lbl_8032E988: /* 8032E988 0032B8C8 C0 22 CA 94 */ lfs f1, lbl_80456494-_SDA2_BASE_(r2) lbl_8032E98C: /* 8032E98C 0032B8CC C0 1F 00 04 */ lfs f0, 4(r31) /* 8032E990 0032B8D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8032E994 0032B8D4 4C 40 13 82 */ cror 2, 0, 2 /* 8032E998 0032B8D8 40 82 00 24 */ bne lbl_8032E9BC /* 8032E99C 0032B8DC 56 A0 10 3A */ slwi r0, r21, 2 /* 8032E9A0 0032B8E0 7C 7B 02 14 */ add r3, r27, r0 /* 8032E9A4 0032B8E4 D3 83 00 00 */ stfs f28, 0(r3) /* 8032E9A8 0032B8E8 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8032E9AC 0032B8EC D0 03 00 04 */ stfs f0, 4(r3) /* 8032E9B0 0032B8F0 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8032E9B4 0032B8F4 D0 03 00 08 */ stfs f0, 8(r3) /* 8032E9B8 0032B8F8 48 00 00 98 */ b lbl_8032EA50 lbl_8032E9BC: /* 8032E9BC 0032B8FC C0 5F 00 00 */ lfs f2, 0(r31) /* 8032E9C0 0032B900 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8032E9C4 0032B904 40 81 00 30 */ ble lbl_8032E9F4 /* 8032E9C8 0032B908 1C 1C 00 0C */ mulli r0, r28, 0xc /* 8032E9CC 0032B90C 7C 7A 02 14 */ add r3, r26, r0 /* 8032E9D0 0032B910 C0 03 00 00 */ lfs f0, 0(r3) /* 8032E9D4 0032B914 56 A0 10 3A */ slwi r0, r21, 2 /* 8032E9D8 0032B918 7C 9B 02 14 */ add r4, r27, r0 /* 8032E9DC 0032B91C D0 04 00 00 */ stfs f0, 0(r4) /* 8032E9E0 0032B920 C0 03 00 04 */ lfs f0, 4(r3) /* 8032E9E4 0032B924 D0 04 00 04 */ stfs f0, 4(r4) /* 8032E9E8 0032B928 C0 03 00 08 */ lfs f0, 8(r3) /* 8032E9EC 0032B92C D0 04 00 08 */ stfs f0, 8(r4) /* 8032E9F0 0032B930 48 00 00 60 */ b lbl_8032EA50 lbl_8032E9F4: /* 8032E9F4 0032B934 EC 21 00 28 */ fsubs f1, f1, f0 /* 8032E9F8 0032B938 EC 02 00 28 */ fsubs f0, f2, f0 /* 8032E9FC 0032B93C EC 41 00 24 */ fdivs f2, f1, f0 /* 8032EA00 0032B940 C0 02 CA 70 */ lfs f0, lbl_80456470-_SDA2_BASE_(r2) /* 8032EA04 0032B944 EC 60 10 28 */ fsubs f3, f0, f2 /* 8032EA08 0032B948 EC 22 06 F2 */ fmuls f1, f2, f27 /* 8032EA0C 0032B94C EC 03 07 32 */ fmuls f0, f3, f28 /* 8032EA10 0032B950 EC 01 00 2A */ fadds f0, f1, f0 /* 8032EA14 0032B954 56 A0 10 3A */ slwi r0, r21, 2 /* 8032EA18 0032B958 7C 7B 02 14 */ add r3, r27, r0 /* 8032EA1C 0032B95C D0 03 00 00 */ stfs f0, 0(r3) /* 8032EA20 0032B960 C0 1D 00 04 */ lfs f0, 4(r29) /* 8032EA24 0032B964 EC 22 00 32 */ fmuls f1, f2, f0 /* 8032EA28 0032B968 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8032EA2C 0032B96C EC 03 00 32 */ fmuls f0, f3, f0 /* 8032EA30 0032B970 EC 01 00 2A */ fadds f0, f1, f0 /* 8032EA34 0032B974 D0 03 00 04 */ stfs f0, 4(r3) /* 8032EA38 0032B978 C0 1D 00 08 */ lfs f0, 8(r29) /* 8032EA3C 0032B97C EC 22 00 32 */ fmuls f1, f2, f0 /* 8032EA40 0032B980 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8032EA44 0032B984 EC 03 00 32 */ fmuls f0, f3, f0 /* 8032EA48 0032B988 EC 01 00 2A */ fadds f0, f1, f0 /* 8032EA4C 0032B98C D0 03 00 08 */ stfs f0, 8(r3) lbl_8032EA50: /* 8032EA50 0032B990 3A D6 00 01 */ addi r22, r22, 1 lbl_8032EA54: /* 8032EA54 0032B994 56 C3 04 3E */ clrlwi r3, r22, 0x10 /* 8032EA58 0032B998 A0 17 00 00 */ lhz r0, 0(r23) /* 8032EA5C 0032B99C 7C 03 00 40 */ cmplw r3, r0 /* 8032EA60 0032B9A0 41 80 FE 18 */ blt lbl_8032E878 /* 8032EA64 0032B9A4 3B 18 00 01 */ addi r24, r24, 1 lbl_8032EA68: /* 8032EA68 0032B9A8 57 00 04 3E */ clrlwi r0, r24, 0x10 /* 8032EA6C 0032B9AC 7C 00 C8 00 */ cmpw r0, r25 /* 8032EA70 0032B9B0 41 80 FD 50 */ blt lbl_8032E7C0 /* 8032EA74 0032B9B4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8032EA78 0032B9B8 CB E1 00 90 */ lfd f31, 0x90(r1) /* 8032EA7C 0032B9BC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 8032EA80 0032B9C0 CB C1 00 80 */ lfd f30, 0x80(r1) /* 8032EA84 0032B9C4 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 8032EA88 0032B9C8 CB A1 00 70 */ lfd f29, 0x70(r1) /* 8032EA8C 0032B9CC E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 8032EA90 0032B9D0 CB 81 00 60 */ lfd f28, 0x60(r1) /* 8032EA94 0032B9D4 E3 61 00 58 */ psq_l f27, 88(r1), 0, qr0 /* 8032EA98 0032B9D8 CB 61 00 50 */ lfd f27, 0x50(r1) /* 8032EA9C 0032B9DC 39 61 00 50 */ addi r11, r1, 0x50 /* 8032EAA0 0032B9E0 48 03 37 69 */ bl _restgpr_21 /* 8032EAA4 0032B9E4 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8032EAA8 0032B9E8 7C 08 03 A6 */ mtlr r0 /* 8032EAAC 0032B9EC 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8032EAB0 0032B9F0 4E 80 00 20 */ blr .global J3DDeformer_NS_deform_X1_ J3DDeformer_NS_deform_X1_: /* 8032EAB4 0032B9F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8032EAB8 0032B9F8 7C 08 02 A6 */ mflr r0 /* 8032EABC 0032B9FC 90 01 00 24 */ stw r0, 0x24(r1) /* 8032EAC0 0032BA00 39 61 00 20 */ addi r11, r1, 0x20 /* 8032EAC4 0032BA04 48 03 37 11 */ bl _savegpr_27 /* 8032EAC8 0032BA08 7C 7D 1B 78 */ mr r29, r3 /* 8032EACC 0032BA0C 7C 9E 23 78 */ mr r30, r4 /* 8032EAD0 0032BA10 7C DF 33 78 */ mr r31, r6 /* 8032EAD4 0032BA14 80 03 00 10 */ lwz r0, 0x10(r3) /* 8032EAD8 0032BA18 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8032EADC 0032BA1C 41 82 00 D8 */ beq lbl_8032EBB4 /* 8032EAE0 0032BA20 80 7E 00 00 */ lwz r3, 0(r30) /* 8032EAE4 0032BA24 80 03 00 50 */ lwz r0, 0x50(r3) /* 8032EAE8 0032BA28 2C 00 00 04 */ cmpwi r0, 4 /* 8032EAEC 0032BA2C 40 82 00 C8 */ bne lbl_8032EBB4 /* 8032EAF0 0032BA30 80 FD 00 00 */ lwz r7, 0(r29) /* 8032EAF4 0032BA34 80 C7 00 08 */ lwz r6, 8(r7) /* 8032EAF8 0032BA38 54 A4 04 3E */ clrlwi r4, r5, 0x10 /* 8032EAFC 0032BA3C 1C 04 00 24 */ mulli r0, r4, 0x24 /* 8032EB00 0032BA40 7F 86 02 14 */ add r28, r6, r0 /* 8032EB04 0032BA44 38 A0 00 00 */ li r5, 0 /* 8032EB08 0032BA48 39 00 00 00 */ li r8, 0 /* 8032EB0C 0032BA4C 48 00 00 24 */ b lbl_8032EB30 lbl_8032EB10: /* 8032EB10 0032BA50 55 00 04 3E */ clrlwi r0, r8, 0x10 /* 8032EB14 0032BA54 1C 00 00 24 */ mulli r0, r0, 0x24 /* 8032EB18 0032BA58 7C 66 02 14 */ add r3, r6, r0 /* 8032EB1C 0032BA5C A0 03 00 10 */ lhz r0, 0x10(r3) /* 8032EB20 0032BA60 7C 60 2A 14 */ add r3, r0, r5 /* 8032EB24 0032BA64 38 03 00 01 */ addi r0, r3, 1 /* 8032EB28 0032BA68 54 05 04 3E */ clrlwi r5, r0, 0x10 /* 8032EB2C 0032BA6C 39 08 00 01 */ addi r8, r8, 1 lbl_8032EB30: /* 8032EB30 0032BA70 55 00 04 3E */ clrlwi r0, r8, 0x10 /* 8032EB34 0032BA74 7C 00 20 40 */ cmplw r0, r4 /* 8032EB38 0032BA78 41 80 FF D8 */ blt lbl_8032EB10 /* 8032EB3C 0032BA7C 80 67 00 0C */ lwz r3, 0xc(r7) /* 8032EB40 0032BA80 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 8032EB44 0032BA84 1C 00 00 0C */ mulli r0, r0, 0xc /* 8032EB48 0032BA88 7F 63 02 14 */ add r27, r3, r0 /* 8032EB4C 0032BA8C 7F A3 EB 78 */ mr r3, r29 /* 8032EB50 0032BA90 A0 9C 00 10 */ lhz r4, 0x10(r28) /* 8032EB54 0032BA94 7F E5 FB 78 */ mr r5, r31 /* 8032EB58 0032BA98 48 00 00 75 */ bl J3DDeformer_NS_normalizeWeight /* 8032EB5C 0032BA9C 7F A3 EB 78 */ mr r3, r29 /* 8032EB60 0032BAA0 7F C4 F3 78 */ mr r4, r30 /* 8032EB64 0032BAA4 7F 85 E3 78 */ mr r5, r28 /* 8032EB68 0032BAA8 7F 66 DB 78 */ mr r6, r27 /* 8032EB6C 0032BAAC 7F E7 FB 78 */ mr r7, r31 /* 8032EB70 0032BAB0 4B FF F9 35 */ bl J3DDeformer_NS_deform_VtxPosF32 /* 8032EB74 0032BAB4 80 1D 00 10 */ lwz r0, 0x10(r29) /* 8032EB78 0032BAB8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8032EB7C 0032BABC 41 82 00 38 */ beq lbl_8032EBB4 /* 8032EB80 0032BAC0 88 1C 00 0C */ lbz r0, 0xc(r28) /* 8032EB84 0032BAC4 28 00 00 00 */ cmplwi r0, 0 /* 8032EB88 0032BAC8 41 82 00 2C */ beq lbl_8032EBB4 /* 8032EB8C 0032BACC 80 7E 00 00 */ lwz r3, 0(r30) /* 8032EB90 0032BAD0 80 03 00 58 */ lwz r0, 0x58(r3) /* 8032EB94 0032BAD4 2C 00 00 04 */ cmpwi r0, 4 /* 8032EB98 0032BAD8 40 82 00 1C */ bne lbl_8032EBB4 /* 8032EB9C 0032BADC 7F A3 EB 78 */ mr r3, r29 /* 8032EBA0 0032BAE0 7F C4 F3 78 */ mr r4, r30 /* 8032EBA4 0032BAE4 7F 85 E3 78 */ mr r5, r28 /* 8032EBA8 0032BAE8 7F 66 DB 78 */ mr r6, r27 /* 8032EBAC 0032BAEC 7F E7 FB 78 */ mr r7, r31 /* 8032EBB0 0032BAF0 4B FF FA 5D */ bl J3DDeformer_NS_deform_VtxNrmF32 lbl_8032EBB4: /* 8032EBB4 0032BAF4 39 61 00 20 */ addi r11, r1, 0x20 /* 8032EBB8 0032BAF8 48 03 36 69 */ bl _restgpr_27 /* 8032EBBC 0032BAFC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8032EBC0 0032BB00 7C 08 03 A6 */ mtlr r0 /* 8032EBC4 0032BB04 38 21 00 20 */ addi r1, r1, 0x20 /* 8032EBC8 0032BB08 4E 80 00 20 */ blr .global J3DDeformer_NS_normalizeWeight J3DDeformer_NS_normalizeWeight: /* 8032EBCC 0032BB0C C0 22 CA 7C */ lfs f1, lbl_8045647C-_SDA2_BASE_(r2) /* 8032EBD0 0032BB10 38 60 00 00 */ li r3, 0 /* 8032EBD4 0032BB14 48 00 00 14 */ b lbl_8032EBE8 lbl_8032EBD8: /* 8032EBD8 0032BB18 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8032EBDC 0032BB1C 7C 05 04 2E */ lfsx f0, r5, r0 /* 8032EBE0 0032BB20 EC 21 00 2A */ fadds f1, f1, f0 /* 8032EBE4 0032BB24 38 63 00 01 */ addi r3, r3, 1 lbl_8032EBE8: /* 8032EBE8 0032BB28 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8032EBEC 0032BB2C 7C 00 20 00 */ cmpw r0, r4 /* 8032EBF0 0032BB30 41 80 FF E8 */ blt lbl_8032EBD8 /* 8032EBF4 0032BB34 C0 02 CA 70 */ lfs f0, lbl_80456470-_SDA2_BASE_(r2) /* 8032EBF8 0032BB38 EC 20 08 24 */ fdivs f1, f0, f1 /* 8032EBFC 0032BB3C 38 60 00 00 */ li r3, 0 /* 8032EC00 0032BB40 48 00 00 18 */ b lbl_8032EC18 lbl_8032EC04: /* 8032EC04 0032BB44 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8032EC08 0032BB48 7C 05 04 2E */ lfsx f0, r5, r0 /* 8032EC0C 0032BB4C EC 00 00 72 */ fmuls f0, f0, f1 /* 8032EC10 0032BB50 7C 05 05 2E */ stfsx f0, r5, r0 /* 8032EC14 0032BB54 38 63 00 01 */ addi r3, r3, 1 lbl_8032EC18: /* 8032EC18 0032BB58 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8032EC1C 0032BB5C 7C 00 20 00 */ cmpw r0, r4 /* 8032EC20 0032BB60 41 80 FF E4 */ blt lbl_8032EC04 /* 8032EC24 0032BB64 4E 80 00 20 */ blr