.include "macros.inc" .section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860 .global LINTCmp LINTCmp: /* 80064ED0 00060D10 80 A3 00 00 */ lwz r5, 0x0(r3) /* 80064ED4 00060D14 38 C3 00 04 */ addi r6, r3, 0x4 /* 80064ED8 00060D18 80 04 00 00 */ lwz r0, 0x0(r4) /* 80064EDC 00060D1C 38 64 00 04 */ addi r3, r4, 0x4 /* 80064EE0 00060D20 7C 05 00 40 */ cmplw r5, r0 /* 80064EE4 00060D24 40 81 00 0C */ ble lbl_80064EF0 /* 80064EE8 00060D28 38 60 00 01 */ li r3, 0x1 /* 80064EEC 00060D2C 4E 80 00 20 */ blr .global lbl_80064EF0 lbl_80064EF0: /* 80064EF0 00060D30 40 80 00 0C */ bge lbl_80064EFC /* 80064EF4 00060D34 38 60 FF FF */ li r3, -0x1 /* 80064EF8 00060D38 4E 80 00 20 */ blr .global lbl_80064EFC lbl_80064EFC: /* 80064EFC 00060D3C 34 A5 FF FF */ addic. r5, r5, -0x1 /* 80064F00 00060D40 54 A4 10 3A */ slwi r4, r5, 2 /* 80064F04 00060D44 38 05 00 01 */ addi r0, r5, 0x1 /* 80064F08 00060D48 7C 63 22 14 */ add r3, r3, r4 /* 80064F0C 00060D4C 7C 86 22 14 */ add r4, r6, r4 /* 80064F10 00060D50 7C 09 03 A6 */ mtctr r0 /* 80064F14 00060D54 41 80 00 34 */ blt lbl_80064F48 .global lbl_80064F18 lbl_80064F18: /* 80064F18 00060D58 80 03 00 00 */ lwz r0, 0x0(r3) /* 80064F1C 00060D5C 80 A4 00 00 */ lwz r5, 0x0(r4) /* 80064F20 00060D60 7C 05 00 40 */ cmplw r5, r0 /* 80064F24 00060D64 40 81 00 0C */ ble lbl_80064F30 /* 80064F28 00060D68 38 60 00 01 */ li r3, 0x1 /* 80064F2C 00060D6C 4E 80 00 20 */ blr .global lbl_80064F30 lbl_80064F30: /* 80064F30 00060D70 40 80 00 0C */ bge lbl_80064F3C /* 80064F34 00060D74 38 60 FF FF */ li r3, -0x1 /* 80064F38 00060D78 4E 80 00 20 */ blr .global lbl_80064F3C lbl_80064F3C: /* 80064F3C 00060D7C 38 63 FF FC */ addi r3, r3, -0x4 /* 80064F40 00060D80 38 84 FF FC */ addi r4, r4, -0x4 /* 80064F44 00060D84 42 00 FF D4 */ bdnz lbl_80064F18 .global lbl_80064F48 lbl_80064F48: /* 80064F48 00060D88 38 60 00 00 */ li r3, 0x0 /* 80064F4C 00060D8C 4E 80 00 20 */ blr .global LINTLshift LINTLshift: /* 80064F50 00060D90 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80064F54 00060D94 7C 08 02 A6 */ mflr r0 /* 80064F58 00060D98 90 01 00 44 */ stw r0, 0x44(r1) /* 80064F5C 00060D9C 39 61 00 40 */ addi r11, r1, 0x40 /* 80064F60 00060DA0 4B FA 23 BD */ bl lbl_8000731C /* 80064F64 00060DA4 54 B5 D9 7F */ srwi. r21, r5, 5 /* 80064F68 00060DA8 83 04 00 00 */ lwz r24, 0x0(r4) /* 80064F6C 00060DAC 7C 73 1B 78 */ mr r19, r3 /* 80064F70 00060DB0 3A E4 00 04 */ addi r23, r4, 0x4 /* 80064F74 00060DB4 3A C3 00 04 */ addi r22, r3, 0x4 /* 80064F78 00060DB8 54 B4 06 FE */ clrlwi r20, r5, 27 /* 80064F7C 00060DBC 38 C0 00 00 */ li r6, 0x0 /* 80064F80 00060DC0 41 82 00 80 */ beq lbl_80065000 /* 80064F84 00060DC4 28 15 00 08 */ cmplwi r21, 0x8 /* 80064F88 00060DC8 38 95 FF F8 */ addi r4, r21, -0x8 /* 80064F8C 00060DCC 40 81 00 4C */ ble lbl_80064FD8 /* 80064F90 00060DD0 38 04 00 07 */ addi r0, r4, 0x7 /* 80064F94 00060DD4 7E C5 B3 78 */ mr r5, r22 /* 80064F98 00060DD8 54 00 E8 FE */ srwi r0, r0, 3 /* 80064F9C 00060DDC 38 60 00 00 */ li r3, 0x0 /* 80064FA0 00060DE0 7C 09 03 A6 */ mtctr r0 /* 80064FA4 00060DE4 28 04 00 00 */ cmplwi r4, 0x0 /* 80064FA8 00060DE8 40 81 00 30 */ ble lbl_80064FD8 .global lbl_80064FAC lbl_80064FAC: /* 80064FAC 00060DEC 90 65 00 00 */ stw r3, 0x0(r5) /* 80064FB0 00060DF0 38 C6 00 08 */ addi r6, r6, 0x8 /* 80064FB4 00060DF4 90 65 00 04 */ stw r3, 0x4(r5) /* 80064FB8 00060DF8 90 65 00 08 */ stw r3, 0x8(r5) /* 80064FBC 00060DFC 90 65 00 0C */ stw r3, 0xc(r5) /* 80064FC0 00060E00 90 65 00 10 */ stw r3, 0x10(r5) /* 80064FC4 00060E04 90 65 00 14 */ stw r3, 0x14(r5) /* 80064FC8 00060E08 90 65 00 18 */ stw r3, 0x18(r5) /* 80064FCC 00060E0C 90 65 00 1C */ stw r3, 0x1c(r5) /* 80064FD0 00060E10 38 A5 00 20 */ addi r5, r5, 0x20 /* 80064FD4 00060E14 42 00 FF D8 */ bdnz lbl_80064FAC .global lbl_80064FD8 lbl_80064FD8: /* 80064FD8 00060E18 54 C3 10 3A */ slwi r3, r6, 2 /* 80064FDC 00060E1C 7C 06 A8 50 */ subf r0, r6, r21 /* 80064FE0 00060E20 7C 96 1A 14 */ add r4, r22, r3 /* 80064FE4 00060E24 38 60 00 00 */ li r3, 0x0 /* 80064FE8 00060E28 7C 09 03 A6 */ mtctr r0 /* 80064FEC 00060E2C 7C 06 A8 40 */ cmplw r6, r21 /* 80064FF0 00060E30 40 80 00 10 */ bge lbl_80065000 .global lbl_80064FF4 lbl_80064FF4: /* 80064FF4 00060E34 90 64 00 00 */ stw r3, 0x0(r4) /* 80064FF8 00060E38 38 84 00 04 */ addi r4, r4, 0x4 /* 80064FFC 00060E3C 42 00 FF F8 */ bdnz lbl_80064FF4 .global lbl_80065000 lbl_80065000: /* 80065000 00060E40 2C 18 00 00 */ cmpwi r24, 0x0 /* 80065004 00060E44 3B 20 00 00 */ li r25, 0x0 /* 80065008 00060E48 3B 40 00 00 */ li r26, 0x0 /* 8006500C 00060E4C 3B 60 00 00 */ li r27, 0x0 /* 80065010 00060E50 41 82 01 D0 */ beq lbl_800651E0 /* 80065014 00060E54 28 18 00 08 */ cmplwi r24, 0x8 /* 80065018 00060E58 3B D8 FF F8 */ addi r30, r24, -0x8 /* 8006501C 00060E5C 40 81 01 6C */ ble lbl_80065188 /* 80065020 00060E60 56 A0 10 3A */ slwi r0, r21, 2 /* 80065024 00060E64 7E FD BB 78 */ mr r29, r23 /* 80065028 00060E68 7F 96 02 14 */ add r28, r22, r0 /* 8006502C 00060E6C 3B E0 FF FF */ li r31, -0x1 /* 80065030 00060E70 48 00 01 50 */ b lbl_80065180 .global lbl_80065034 lbl_80065034: /* 80065034 00060E74 80 9D 00 00 */ lwz r4, 0x0(r29) /* 80065038 00060E78 7E 85 A3 78 */ mr r5, r20 /* 8006503C 00060E7C 38 60 00 00 */ li r3, 0x0 /* 80065040 00060E80 4B FA 27 75 */ bl __shl2i /* 80065044 00060E84 7C 19 20 14 */ addc r0, r25, r4 /* 80065048 00060E88 7E 85 A3 78 */ mr r5, r20 /* 8006504C 00060E8C 7C 00 F8 38 */ and r0, r0, r31 /* 80065050 00060E90 90 1C 00 00 */ stw r0, 0x0(r28) /* 80065054 00060E94 7F 5A 19 14 */ adde r26, r26, r3 /* 80065058 00060E98 3B 20 00 00 */ li r25, 0x0 /* 8006505C 00060E9C 80 9D 00 04 */ lwz r4, 0x4(r29) /* 80065060 00060EA0 7F 5A F8 38 */ and r26, r26, r31 /* 80065064 00060EA4 38 60 00 00 */ li r3, 0x0 /* 80065068 00060EA8 4B FA 27 4D */ bl __shl2i /* 8006506C 00060EAC 7C 1A 20 14 */ addc r0, r26, r4 /* 80065070 00060EB0 7E 85 A3 78 */ mr r5, r20 /* 80065074 00060EB4 7C 00 F8 38 */ and r0, r0, r31 /* 80065078 00060EB8 90 1C 00 04 */ stw r0, 0x4(r28) /* 8006507C 00060EBC 7F 39 19 14 */ adde r25, r25, r3 /* 80065080 00060EC0 3B 40 00 00 */ li r26, 0x0 /* 80065084 00060EC4 80 9D 00 08 */ lwz r4, 0x8(r29) /* 80065088 00060EC8 7F 39 F8 38 */ and r25, r25, r31 /* 8006508C 00060ECC 38 60 00 00 */ li r3, 0x0 /* 80065090 00060ED0 4B FA 27 25 */ bl __shl2i /* 80065094 00060ED4 7C 19 20 14 */ addc r0, r25, r4 /* 80065098 00060ED8 7E 85 A3 78 */ mr r5, r20 /* 8006509C 00060EDC 7C 00 F8 38 */ and r0, r0, r31 /* 800650A0 00060EE0 90 1C 00 08 */ stw r0, 0x8(r28) /* 800650A4 00060EE4 7F 5A 19 14 */ adde r26, r26, r3 /* 800650A8 00060EE8 3B 20 00 00 */ li r25, 0x0 /* 800650AC 00060EEC 80 9D 00 0C */ lwz r4, 0xc(r29) /* 800650B0 00060EF0 7F 5A F8 38 */ and r26, r26, r31 /* 800650B4 00060EF4 38 60 00 00 */ li r3, 0x0 /* 800650B8 00060EF8 4B FA 26 FD */ bl __shl2i /* 800650BC 00060EFC 7C 1A 20 14 */ addc r0, r26, r4 /* 800650C0 00060F00 7E 85 A3 78 */ mr r5, r20 /* 800650C4 00060F04 7C 00 F8 38 */ and r0, r0, r31 /* 800650C8 00060F08 90 1C 00 0C */ stw r0, 0xc(r28) /* 800650CC 00060F0C 7F 39 19 14 */ adde r25, r25, r3 /* 800650D0 00060F10 3B 40 00 00 */ li r26, 0x0 /* 800650D4 00060F14 80 9D 00 10 */ lwz r4, 0x10(r29) /* 800650D8 00060F18 7F 39 F8 38 */ and r25, r25, r31 /* 800650DC 00060F1C 38 60 00 00 */ li r3, 0x0 /* 800650E0 00060F20 4B FA 26 D5 */ bl __shl2i /* 800650E4 00060F24 7C 19 20 14 */ addc r0, r25, r4 /* 800650E8 00060F28 7E 85 A3 78 */ mr r5, r20 /* 800650EC 00060F2C 7C 00 F8 38 */ and r0, r0, r31 /* 800650F0 00060F30 90 1C 00 10 */ stw r0, 0x10(r28) /* 800650F4 00060F34 7F 5A 19 14 */ adde r26, r26, r3 /* 800650F8 00060F38 3B 20 00 00 */ li r25, 0x0 /* 800650FC 00060F3C 80 9D 00 14 */ lwz r4, 0x14(r29) /* 80065100 00060F40 7F 5A F8 38 */ and r26, r26, r31 /* 80065104 00060F44 38 60 00 00 */ li r3, 0x0 /* 80065108 00060F48 4B FA 26 AD */ bl __shl2i /* 8006510C 00060F4C 7C 1A 20 14 */ addc r0, r26, r4 /* 80065110 00060F50 7E 85 A3 78 */ mr r5, r20 /* 80065114 00060F54 7C 00 F8 38 */ and r0, r0, r31 /* 80065118 00060F58 90 1C 00 14 */ stw r0, 0x14(r28) /* 8006511C 00060F5C 7F 39 19 14 */ adde r25, r25, r3 /* 80065120 00060F60 3B 40 00 00 */ li r26, 0x0 /* 80065124 00060F64 80 9D 00 18 */ lwz r4, 0x18(r29) /* 80065128 00060F68 7F 39 F8 38 */ and r25, r25, r31 /* 8006512C 00060F6C 38 60 00 00 */ li r3, 0x0 /* 80065130 00060F70 4B FA 26 85 */ bl __shl2i /* 80065134 00060F74 7C 19 20 14 */ addc r0, r25, r4 /* 80065138 00060F78 7E 85 A3 78 */ mr r5, r20 /* 8006513C 00060F7C 7C 00 F8 38 */ and r0, r0, r31 /* 80065140 00060F80 90 1C 00 18 */ stw r0, 0x18(r28) /* 80065144 00060F84 7F 5A 19 14 */ adde r26, r26, r3 /* 80065148 00060F88 3B 20 00 00 */ li r25, 0x0 /* 8006514C 00060F8C 80 9D 00 1C */ lwz r4, 0x1c(r29) /* 80065150 00060F90 7F 5A F8 38 */ and r26, r26, r31 /* 80065154 00060F94 38 60 00 00 */ li r3, 0x0 /* 80065158 00060F98 4B FA 26 5D */ bl __shl2i /* 8006515C 00060F9C 7C 1A 20 14 */ addc r0, r26, r4 /* 80065160 00060FA0 3B 40 00 00 */ li r26, 0x0 /* 80065164 00060FA4 7F 39 19 14 */ adde r25, r25, r3 /* 80065168 00060FA8 3B BD 00 20 */ addi r29, r29, 0x20 /* 8006516C 00060FAC 7C 00 F8 38 */ and r0, r0, r31 /* 80065170 00060FB0 90 1C 00 1C */ stw r0, 0x1c(r28) /* 80065174 00060FB4 7F 39 F8 38 */ and r25, r25, r31 /* 80065178 00060FB8 3B 7B 00 08 */ addi r27, r27, 0x8 /* 8006517C 00060FBC 3B 9C 00 20 */ addi r28, r28, 0x20 .global lbl_80065180 lbl_80065180: /* 80065180 00060FC0 7C 1B F0 40 */ cmplw r27, r30 /* 80065184 00060FC4 41 80 FE B0 */ blt lbl_80065034 .global lbl_80065188 lbl_80065188: /* 80065188 00060FC8 57 64 10 3A */ slwi r4, r27, 2 /* 8006518C 00060FCC 56 A3 10 3A */ slwi r3, r21, 2 /* 80065190 00060FD0 7C 04 B2 14 */ add r0, r4, r22 /* 80065194 00060FD4 3B 80 FF FF */ li r28, -0x1 /* 80065198 00060FD8 7E F7 22 14 */ add r23, r23, r4 /* 8006519C 00060FDC 7F A3 02 14 */ add r29, r3, r0 /* 800651A0 00060FE0 48 00 00 38 */ b lbl_800651D8 .global lbl_800651A4 lbl_800651A4: /* 800651A4 00060FE4 80 97 00 00 */ lwz r4, 0x0(r23) /* 800651A8 00060FE8 7E 85 A3 78 */ mr r5, r20 /* 800651AC 00060FEC 38 60 00 00 */ li r3, 0x0 /* 800651B0 00060FF0 4B FA 26 05 */ bl __shl2i /* 800651B4 00060FF4 7C 19 20 14 */ addc r0, r25, r4 /* 800651B8 00060FF8 3A F7 00 04 */ addi r23, r23, 0x4 /* 800651BC 00060FFC 7F 5A 19 14 */ adde r26, r26, r3 /* 800651C0 00061000 3B 7B 00 01 */ addi r27, r27, 0x1 /* 800651C4 00061004 7C 00 E0 38 */ and r0, r0, r28 /* 800651C8 00061008 90 1D 00 00 */ stw r0, 0x0(r29) /* 800651CC 0006100C 7F 59 E0 38 */ and r25, r26, r28 /* 800651D0 00061010 3B 40 00 00 */ li r26, 0x0 /* 800651D4 00061014 3B BD 00 04 */ addi r29, r29, 0x4 .global lbl_800651D8 lbl_800651D8: /* 800651D8 00061018 7C 1B C0 40 */ cmplw r27, r24 /* 800651DC 0006101C 41 80 FF C8 */ blt lbl_800651A4 .global lbl_800651E0 lbl_800651E0: /* 800651E0 00061020 7F 20 D3 79 */ or. r0, r25, r26 /* 800651E4 00061024 7C 7B AA 14 */ add r3, r27, r21 /* 800651E8 00061028 54 60 10 3A */ slwi r0, r3, 2 /* 800651EC 0006102C 7C 78 AA 14 */ add r3, r24, r21 /* 800651F0 00061030 7F 36 01 2E */ stwx r25, r22, r0 /* 800651F4 00061034 90 73 00 00 */ stw r3, 0x0(r19) /* 800651F8 00061038 41 82 00 0C */ beq lbl_80065204 /* 800651FC 0006103C 38 03 00 01 */ addi r0, r3, 0x1 /* 80065200 00061040 90 13 00 00 */ stw r0, 0x0(r19) .global lbl_80065204 lbl_80065204: /* 80065204 00061044 39 61 00 40 */ addi r11, r1, 0x40 /* 80065208 00061048 4B FA 21 61 */ bl lbl_80007368 /* 8006520C 0006104C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80065210 00061050 7C 08 03 A6 */ mtlr r0 /* 80065214 00061054 38 21 00 40 */ addi r1, r1, 0x40 /* 80065218 00061058 4E 80 00 20 */ blr /* 8006521C 0006105C 00 00 00 00 */ .4byte 0x00000000 .global LINTMsb LINTMsb: /* 80065220 00061060 80 E3 00 00 */ lwz r7, 0x0(r3) /* 80065224 00061064 38 00 00 04 */ li r0, 0x4 /* 80065228 00061068 39 00 00 20 */ li r8, 0x20 /* 8006522C 0006106C 38 C0 00 00 */ li r6, 0x0 /* 80065230 00061070 54 E5 10 3A */ slwi r5, r7, 2 /* 80065234 00061074 3C 80 80 00 */ lis r4, 0x80000000@ha /* 80065238 00061078 7C 63 28 2E */ lwzx r3, r3, r5 /* 8006523C 0006107C 7C 09 03 A6 */ mtctr r0 .global lbl_80065240 lbl_80065240: /* 80065240 00061080 7C 80 34 30 */ srw r0, r4, r6 /* 80065244 00061084 7C 00 18 39 */ and. r0, r0, r3 /* 80065248 00061088 40 82 00 9C */ bne lbl_800652E4 /* 8006524C 0006108C 38 C6 00 01 */ addi r6, r6, 0x1 /* 80065250 00061090 39 08 FF FF */ addi r8, r8, -0x1 /* 80065254 00061094 7C 80 34 30 */ srw r0, r4, r6 /* 80065258 00061098 7C 00 18 39 */ and. r0, r0, r3 /* 8006525C 0006109C 40 82 00 88 */ bne lbl_800652E4 /* 80065260 000610A0 38 C6 00 01 */ addi r6, r6, 0x1 /* 80065264 000610A4 39 08 FF FF */ addi r8, r8, -0x1 /* 80065268 000610A8 7C 80 34 30 */ srw r0, r4, r6 /* 8006526C 000610AC 7C 00 18 39 */ and. r0, r0, r3 /* 80065270 000610B0 40 82 00 74 */ bne lbl_800652E4 /* 80065274 000610B4 38 C6 00 01 */ addi r6, r6, 0x1 /* 80065278 000610B8 39 08 FF FF */ addi r8, r8, -0x1 /* 8006527C 000610BC 7C 80 34 30 */ srw r0, r4, r6 /* 80065280 000610C0 7C 00 18 39 */ and. r0, r0, r3 /* 80065284 000610C4 40 82 00 60 */ bne lbl_800652E4 /* 80065288 000610C8 38 C6 00 01 */ addi r6, r6, 0x1 /* 8006528C 000610CC 39 08 FF FF */ addi r8, r8, -0x1 /* 80065290 000610D0 7C 80 34 30 */ srw r0, r4, r6 /* 80065294 000610D4 7C 00 18 39 */ and. r0, r0, r3 /* 80065298 000610D8 40 82 00 4C */ bne lbl_800652E4 /* 8006529C 000610DC 38 C6 00 01 */ addi r6, r6, 0x1 /* 800652A0 000610E0 39 08 FF FF */ addi r8, r8, -0x1 /* 800652A4 000610E4 7C 80 34 30 */ srw r0, r4, r6 /* 800652A8 000610E8 7C 00 18 39 */ and. r0, r0, r3 /* 800652AC 000610EC 40 82 00 38 */ bne lbl_800652E4 /* 800652B0 000610F0 38 C6 00 01 */ addi r6, r6, 0x1 /* 800652B4 000610F4 39 08 FF FF */ addi r8, r8, -0x1 /* 800652B8 000610F8 7C 80 34 30 */ srw r0, r4, r6 /* 800652BC 000610FC 7C 00 18 39 */ and. r0, r0, r3 /* 800652C0 00061100 40 82 00 24 */ bne lbl_800652E4 /* 800652C4 00061104 38 C6 00 01 */ addi r6, r6, 0x1 /* 800652C8 00061108 39 08 FF FF */ addi r8, r8, -0x1 /* 800652CC 0006110C 7C 80 34 30 */ srw r0, r4, r6 /* 800652D0 00061110 7C 00 18 39 */ and. r0, r0, r3 /* 800652D4 00061114 40 82 00 10 */ bne lbl_800652E4 /* 800652D8 00061118 38 C6 00 01 */ addi r6, r6, 0x1 /* 800652DC 0006111C 39 08 FF FF */ addi r8, r8, -0x1 /* 800652E0 00061120 42 00 FF 60 */ bdnz lbl_80065240 .global lbl_800652E4 lbl_800652E4: /* 800652E4 00061124 38 07 FF FF */ addi r0, r7, -0x1 /* 800652E8 00061128 54 00 28 34 */ slwi r0, r0, 5 /* 800652EC 0006112C 7C 68 02 14 */ add r3, r8, r0 /* 800652F0 00061130 4E 80 00 20 */ blr /* 800652F4 00061134 00 00 00 00 */ .4byte 0x00000000 /* 800652F8 00061138 00 00 00 00 */ .4byte 0x00000000 /* 800652FC 0006113C 00 00 00 00 */ .4byte 0x00000000 .global LINTSub LINTSub: /* 80065300 00061140 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80065304 00061144 7C 08 02 A6 */ mflr r0 /* 80065308 00061148 90 01 00 24 */ stw r0, 0x24(r1) /* 8006530C 0006114C 39 61 00 20 */ addi r11, r1, 0x20 /* 80065310 00061150 4B FA 20 2D */ bl lbl_8000733C /* 80065314 00061154 83 E4 00 00 */ lwz r31, 0x80000000@l(r4) /* 80065318 00061158 3B A3 00 04 */ addi r29, r3, 0x4 /* 8006531C 0006115C 7F AA EB 78 */ mr r10, r29 /* 80065320 00061160 39 24 00 04 */ addi r9, r4, 0x4 /* 80065324 00061164 39 65 00 04 */ addi r11, r5, 0x4 /* 80065328 00061168 83 C5 00 00 */ lwz r30, 0x0(r5) /* 8006532C 0006116C 3B 60 00 00 */ li r27, 0x0 /* 80065330 00061170 3B 80 00 00 */ li r28, 0x0 /* 80065334 00061174 39 80 00 00 */ li r12, 0x0 /* 80065338 00061178 39 00 00 00 */ li r8, 0x0 /* 8006533C 0006117C 38 E0 FF FF */ li r7, -0x1 /* 80065340 00061180 38 00 00 01 */ li r0, 0x1 /* 80065344 00061184 7F E9 03 A6 */ mtctr r31 /* 80065348 00061188 28 1F 00 00 */ cmplwi r31, 0x0 /* 8006534C 0006118C 40 81 00 74 */ ble lbl_800653C0 .global lbl_80065350 lbl_80065350: /* 80065350 00061190 80 89 00 00 */ lwz r4, 0x0(r9) /* 80065354 00061194 7C DB 38 10 */ subfc r6, r27, r7 /* 80065358 00061198 7C BC 41 10 */ subfe r5, r28, r8 /* 8006535C 0006119C 7C 0C F0 40 */ cmplw r12, r30 /* 80065360 000611A0 7C 9B 20 50 */ subf r4, r27, r4 /* 80065364 000611A4 90 8A 00 00 */ stw r4, 0x0(r10) /* 80065368 000611A8 7C 84 30 10 */ subfc r4, r4, r6 /* 8006536C 000611AC 7F 68 29 10 */ subfe r27, r8, r5 /* 80065370 000611B0 7F 66 31 10 */ subfe r27, r6, r6 /* 80065374 000611B4 7F 7B 00 D0 */ neg r27, r27 /* 80065378 000611B8 7F 7C FE 70 */ srawi r28, r27, 31 /* 8006537C 000611BC 40 80 00 14 */ bge lbl_80065390 /* 80065380 000611C0 80 AB 00 00 */ lwz r5, 0x0(r11) /* 80065384 000611C4 80 8A 00 00 */ lwz r4, 0x0(r10) /* 80065388 000611C8 7C 85 20 50 */ subf r4, r5, r4 /* 8006538C 000611CC 90 8A 00 00 */ stw r4, 0x0(r10) .global lbl_80065390 lbl_80065390: /* 80065390 000611D0 80 8B 00 00 */ lwz r4, 0x0(r11) /* 80065394 000611D4 80 AA 00 00 */ lwz r5, 0x0(r10) /* 80065398 000611D8 20 84 FF FF */ subfic r4, r4, -0x1 /* 8006539C 000611DC 7C 05 20 40 */ cmplw r5, r4 /* 800653A0 000611E0 40 81 00 0C */ ble lbl_800653AC /* 800653A4 000611E4 7F 7B 00 14 */ addc r27, r27, r0 /* 800653A8 000611E8 7F 9C 41 14 */ adde r28, r28, r8 .global lbl_800653AC lbl_800653AC: /* 800653AC 000611EC 39 29 00 04 */ addi r9, r9, 0x4 /* 800653B0 000611F0 39 4A 00 04 */ addi r10, r10, 0x4 /* 800653B4 000611F4 39 6B 00 04 */ addi r11, r11, 0x4 /* 800653B8 000611F8 39 8C 00 01 */ addi r12, r12, 0x1 /* 800653BC 000611FC 42 00 FF 94 */ bdnz lbl_80065350 .global lbl_800653C0 lbl_800653C0: /* 800653C0 00061200 57 E0 10 3A */ slwi r0, r31, 2 /* 800653C4 00061204 7C 9D 02 14 */ add r4, r29, r0 /* 800653C8 00061208 48 00 00 10 */ b lbl_800653D8 /* 800653CC 0006120C 60 00 00 00 */ nop .global lbl_800653D0 lbl_800653D0: /* 800653D0 00061210 38 84 FF FC */ addi r4, r4, -0x4 /* 800653D4 00061214 3B FF FF FF */ addi r31, r31, -0x1 .global lbl_800653D8 lbl_800653D8: /* 800653D8 00061218 2C 1F 00 00 */ cmpwi r31, 0x0 /* 800653DC 0006121C 41 82 00 10 */ beq lbl_800653EC /* 800653E0 00061220 80 04 00 00 */ lwz r0, 0x0(r4) /* 800653E4 00061224 2C 00 00 00 */ cmpwi r0, 0x0 /* 800653E8 00061228 41 82 FF E8 */ beq lbl_800653D0 .global lbl_800653EC lbl_800653EC: /* 800653EC 0006122C 38 1F 00 01 */ addi r0, r31, 0x1 /* 800653F0 00061230 90 03 00 00 */ stw r0, 0x0(r3) /* 800653F4 00061234 39 61 00 20 */ addi r11, r1, 0x20 /* 800653F8 00061238 4B FA 1F 91 */ bl lbl_80007388 /* 800653FC 0006123C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80065400 00061240 7C 08 03 A6 */ mtlr r0 /* 80065404 00061244 38 21 00 20 */ addi r1, r1, 0x20 /* 80065408 00061248 4E 80 00 20 */ blr /* 8006540C 0006124C 00 00 00 00 */ .4byte 0x00000000 .global LINTMul LINTMul: /* 80065410 00061250 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80065414 00061254 7C 08 02 A6 */ mflr r0 /* 80065418 00061258 90 01 00 34 */ stw r0, 0x34(r1) /* 8006541C 0006125C 39 61 00 30 */ addi r11, r1, 0x30 /* 80065420 00061260 4B FA 1F 09 */ bl lbl_80007328 /* 80065424 00061264 83 A4 00 00 */ lwz r29, 0x0(r4) /* 80065428 00061268 3B 23 00 04 */ addi r25, r3, 0x4 /* 8006542C 0006126C 83 85 00 00 */ lwz r28, 0x0(r5) /* 80065430 00061270 38 00 00 01 */ li r0, 0x1 /* 80065434 00061274 7C 78 1B 78 */ mr r24, r3 /* 80065438 00061278 7C 97 23 78 */ mr r23, r4 /* 8006543C 0006127C 90 03 00 00 */ stw r0, 0x0(r3) /* 80065440 00061280 3B 64 00 04 */ addi r27, r4, 0x4 /* 80065444 00061284 7C B6 2B 78 */ mr r22, r5 /* 80065448 00061288 3B 45 00 04 */ addi r26, r5, 0x4 /* 8006544C 0006128C 7F 23 CB 78 */ mr r3, r25 /* 80065450 00061290 3B C0 00 00 */ li r30, 0x0 /* 80065454 00061294 3B E0 00 00 */ li r31, 0x0 /* 80065458 00061298 38 80 00 00 */ li r4, 0x0 /* 8006545C 0006129C 38 A0 00 80 */ li r5, 0x80 /* 80065460 000612A0 4B F9 EE F1 */ bl memset /* 80065464 000612A4 80 17 00 00 */ lwz r0, 0x0(r23) /* 80065468 000612A8 28 00 00 01 */ cmplwi r0, 0x1 /* 8006546C 000612AC 40 82 00 10 */ bne lbl_8006547C /* 80065470 000612B0 80 17 00 04 */ lwz r0, 0x4(r23) /* 80065474 000612B4 2C 00 00 00 */ cmpwi r0, 0x0 /* 80065478 000612B8 41 82 02 AC */ beq lbl_80065724 .global lbl_8006547C lbl_8006547C: /* 8006547C 000612BC 80 16 00 00 */ lwz r0, 0x0(r22) /* 80065480 000612C0 28 00 00 01 */ cmplwi r0, 0x1 /* 80065484 000612C4 40 82 00 14 */ bne lbl_80065498 /* 80065488 000612C8 80 16 00 04 */ lwz r0, 0x4(r22) /* 8006548C 000612CC 2C 00 00 00 */ cmpwi r0, 0x0 /* 80065490 000612D0 40 82 00 08 */ bne lbl_80065498 /* 80065494 000612D4 48 00 02 90 */ b lbl_80065724 .global lbl_80065498 lbl_80065498: /* 80065498 000612D8 38 C0 00 00 */ li r6, 0x0 /* 8006549C 000612DC 39 20 00 00 */ li r9, 0x0 /* 800654A0 000612E0 7C C3 33 78 */ mr r3, r6 /* 800654A4 000612E4 39 40 FF FF */ li r10, -0x1 /* 800654A8 000612E8 7C C0 33 78 */ mr r0, r6 /* 800654AC 000612EC 48 00 02 50 */ b lbl_800656FC .global lbl_800654B0 lbl_800654B0: /* 800654B0 000612F0 2C 1D 00 00 */ cmpwi r29, 0x0 /* 800654B4 000612F4 3B C0 00 00 */ li r30, 0x0 /* 800654B8 000612F8 3B E0 00 00 */ li r31, 0x0 /* 800654BC 000612FC 38 E0 00 00 */ li r7, 0x0 /* 800654C0 00061300 41 82 02 24 */ beq lbl_800656E4 /* 800654C4 00061304 28 1D 00 08 */ cmplwi r29, 0x8 /* 800654C8 00061308 39 7D FF F8 */ addi r11, r29, -0x8 /* 800654CC 0006130C 40 81 01 B4 */ ble lbl_80065680 /* 800654D0 00061310 39 0B 00 07 */ addi r8, r11, 0x7 /* 800654D4 00061314 7F 64 DB 78 */ mr r4, r27 /* 800654D8 00061318 55 08 E8 FE */ srwi r8, r8, 3 /* 800654DC 0006131C 7C B9 4A 14 */ add r5, r25, r9 /* 800654E0 00061320 7D 09 03 A6 */ mtctr r8 /* 800654E4 00061324 28 0B 00 00 */ cmplwi r11, 0x0 /* 800654E8 00061328 40 81 01 98 */ ble lbl_80065680 .global lbl_800654EC lbl_800654EC: /* 800654EC 0006132C 81 84 00 00 */ lwz r12, 0x0(r4) /* 800654F0 00061330 38 E7 00 08 */ addi r7, r7, 0x8 /* 800654F4 00061334 81 7A 00 00 */ lwz r11, 0x0(r26) /* 800654F8 00061338 82 E5 00 00 */ lwz r23, 0x0(r5) /* 800654FC 0006133C 7D 0C 59 D6 */ mullw r8, r12, r11 /* 80065500 00061340 7E FE B8 14 */ addc r23, r30, r23 /* 80065504 00061344 7F DF 01 94 */ addze r30, r31 /* 80065508 00061348 7D 17 40 14 */ addc r8, r23, r8 /* 8006550C 0006134C 7E EC 58 16 */ mulhwu r23, r12, r11 /* 80065510 00061350 7D 08 50 38 */ and r8, r8, r10 /* 80065514 00061354 91 05 00 00 */ stw r8, 0x0(r5) /* 80065518 00061358 81 84 00 04 */ lwz r12, 0x4(r4) /* 8006551C 0006135C 81 7A 00 00 */ lwz r11, 0x0(r26) /* 80065520 00061360 81 05 00 04 */ lwz r8, 0x4(r5) /* 80065524 00061364 7F FE B9 14 */ adde r31, r30, r23 /* 80065528 00061368 7F F7 50 38 */ and r23, r31, r10 /* 8006552C 0006136C 7E F7 40 14 */ addc r23, r23, r8 /* 80065530 00061370 3B E0 00 00 */ li r31, 0x0 /* 80065534 00061374 7D 0C 59 D6 */ mullw r8, r12, r11 /* 80065538 00061378 7F C3 01 94 */ addze r30, r3 /* 8006553C 0006137C 7D 17 40 14 */ addc r8, r23, r8 /* 80065540 00061380 7E EC 58 16 */ mulhwu r23, r12, r11 /* 80065544 00061384 7D 08 50 38 */ and r8, r8, r10 /* 80065548 00061388 91 05 00 04 */ stw r8, 0x4(r5) /* 8006554C 0006138C 81 84 00 08 */ lwz r12, 0x8(r4) /* 80065550 00061390 81 7A 00 00 */ lwz r11, 0x0(r26) /* 80065554 00061394 81 05 00 08 */ lwz r8, 0x8(r5) /* 80065558 00061398 7E DE B9 14 */ adde r22, r30, r23 /* 8006555C 0006139C 7E D7 50 38 */ and r23, r22, r10 /* 80065560 000613A0 7E F7 40 14 */ addc r23, r23, r8 /* 80065564 000613A4 7D 0C 59 D6 */ mullw r8, r12, r11 /* 80065568 000613A8 7F C3 01 94 */ addze r30, r3 /* 8006556C 000613AC 7D 17 40 14 */ addc r8, r23, r8 /* 80065570 000613B0 7E EC 58 16 */ mulhwu r23, r12, r11 /* 80065574 000613B4 7D 08 50 38 */ and r8, r8, r10 /* 80065578 000613B8 91 05 00 08 */ stw r8, 0x8(r5) /* 8006557C 000613BC 81 84 00 0C */ lwz r12, 0xc(r4) /* 80065580 000613C0 81 7A 00 00 */ lwz r11, 0x0(r26) /* 80065584 000613C4 81 05 00 0C */ lwz r8, 0xc(r5) /* 80065588 000613C8 7E DE B9 14 */ adde r22, r30, r23 /* 8006558C 000613CC 7E D7 50 38 */ and r23, r22, r10 /* 80065590 000613D0 7E F7 40 14 */ addc r23, r23, r8 /* 80065594 000613D4 7D 0C 59 D6 */ mullw r8, r12, r11 /* 80065598 000613D8 7F C3 01 94 */ addze r30, r3 /* 8006559C 000613DC 7D 17 40 14 */ addc r8, r23, r8 /* 800655A0 000613E0 7E EC 58 16 */ mulhwu r23, r12, r11 /* 800655A4 000613E4 7D 08 50 38 */ and r8, r8, r10 /* 800655A8 000613E8 91 05 00 0C */ stw r8, 0xc(r5) /* 800655AC 000613EC 81 84 00 10 */ lwz r12, 0x10(r4) /* 800655B0 000613F0 81 7A 00 00 */ lwz r11, 0x0(r26) /* 800655B4 000613F4 81 05 00 10 */ lwz r8, 0x10(r5) /* 800655B8 000613F8 7E DE B9 14 */ adde r22, r30, r23 /* 800655BC 000613FC 7E D7 50 38 */ and r23, r22, r10 /* 800655C0 00061400 7E F7 40 14 */ addc r23, r23, r8 /* 800655C4 00061404 7D 0C 59 D6 */ mullw r8, r12, r11 /* 800655C8 00061408 7F C3 01 94 */ addze r30, r3 /* 800655CC 0006140C 7D 17 40 14 */ addc r8, r23, r8 /* 800655D0 00061410 7E EC 58 16 */ mulhwu r23, r12, r11 /* 800655D4 00061414 7D 08 50 38 */ and r8, r8, r10 /* 800655D8 00061418 91 05 00 10 */ stw r8, 0x10(r5) /* 800655DC 0006141C 81 84 00 14 */ lwz r12, 0x14(r4) /* 800655E0 00061420 81 7A 00 00 */ lwz r11, 0x0(r26) /* 800655E4 00061424 81 05 00 14 */ lwz r8, 0x14(r5) /* 800655E8 00061428 7E DE B9 14 */ adde r22, r30, r23 /* 800655EC 0006142C 7E D7 50 38 */ and r23, r22, r10 /* 800655F0 00061430 7E F7 40 14 */ addc r23, r23, r8 /* 800655F4 00061434 7D 0C 59 D6 */ mullw r8, r12, r11 /* 800655F8 00061438 7F C0 01 94 */ addze r30, r0 /* 800655FC 0006143C 7D 17 40 14 */ addc r8, r23, r8 /* 80065600 00061440 7E EC 58 16 */ mulhwu r23, r12, r11 /* 80065604 00061444 7D 08 50 38 */ and r8, r8, r10 /* 80065608 00061448 91 05 00 14 */ stw r8, 0x14(r5) /* 8006560C 0006144C 81 84 00 18 */ lwz r12, 0x18(r4) /* 80065610 00061450 81 7A 00 00 */ lwz r11, 0x0(r26) /* 80065614 00061454 81 05 00 18 */ lwz r8, 0x18(r5) /* 80065618 00061458 7E DE B9 14 */ adde r22, r30, r23 /* 8006561C 0006145C 7E D7 50 38 */ and r23, r22, r10 /* 80065620 00061460 7E F7 40 14 */ addc r23, r23, r8 /* 80065624 00061464 7D 0C 59 D6 */ mullw r8, r12, r11 /* 80065628 00061468 7F C0 01 94 */ addze r30, r0 /* 8006562C 0006146C 7D 17 40 14 */ addc r8, r23, r8 /* 80065630 00061470 7E EC 58 16 */ mulhwu r23, r12, r11 /* 80065634 00061474 7D 08 50 38 */ and r8, r8, r10 /* 80065638 00061478 91 05 00 18 */ stw r8, 0x18(r5) /* 8006563C 0006147C 81 84 00 1C */ lwz r12, 0x1c(r4) /* 80065640 00061480 38 84 00 20 */ addi r4, r4, 0x20 /* 80065644 00061484 81 7A 00 00 */ lwz r11, 0x0(r26) /* 80065648 00061488 7E DE B9 14 */ adde r22, r30, r23 /* 8006564C 0006148C 81 05 00 1C */ lwz r8, 0x1c(r5) /* 80065650 00061490 7E D7 50 38 */ and r23, r22, r10 /* 80065654 00061494 7E F7 40 14 */ addc r23, r23, r8 /* 80065658 00061498 7D 0C 59 D6 */ mullw r8, r12, r11 /* 8006565C 0006149C 7F C0 01 94 */ addze r30, r0 /* 80065660 000614A0 7D 17 40 14 */ addc r8, r23, r8 /* 80065664 000614A4 7D 08 50 38 */ and r8, r8, r10 /* 80065668 000614A8 91 05 00 1C */ stw r8, 0x1c(r5) /* 8006566C 000614AC 7D 6C 58 16 */ mulhwu r11, r12, r11 /* 80065670 000614B0 38 A5 00 20 */ addi r5, r5, 0x20 /* 80065674 000614B4 7D 1E 59 14 */ adde r8, r30, r11 /* 80065678 000614B8 7D 1E 50 38 */ and r30, r8, r10 /* 8006567C 000614BC 42 00 FE 70 */ bdnz lbl_800654EC .global lbl_80065680 lbl_80065680: /* 80065680 000614C0 54 E8 10 3A */ slwi r8, r7, 2 /* 80065684 000614C4 7C 87 E8 50 */ subf r4, r7, r29 /* 80065688 000614C8 7C A8 CA 14 */ add r5, r8, r25 /* 8006568C 000614CC 7E FB 42 14 */ add r23, r27, r8 /* 80065690 000614D0 7E C9 2A 14 */ add r22, r9, r5 /* 80065694 000614D4 7C 89 03 A6 */ mtctr r4 /* 80065698 000614D8 7C 07 E8 40 */ cmplw r7, r29 /* 8006569C 000614DC 40 80 00 48 */ bge lbl_800656E4 .global lbl_800656A0 lbl_800656A0: /* 800656A0 000614E0 81 17 00 00 */ lwz r8, 0x0(r23) /* 800656A4 000614E4 3A F7 00 04 */ addi r23, r23, 0x4 /* 800656A8 000614E8 80 BA 00 00 */ lwz r5, 0x0(r26) /* 800656AC 000614EC 38 E7 00 01 */ addi r7, r7, 0x1 /* 800656B0 000614F0 81 76 00 00 */ lwz r11, 0x0(r22) /* 800656B4 000614F4 7C 88 29 D6 */ mullw r4, r8, r5 /* 800656B8 000614F8 7D 9E 58 14 */ addc r12, r30, r11 /* 800656BC 000614FC 7D 7F 01 94 */ addze r11, r31 /* 800656C0 00061500 7C 8C 20 14 */ addc r4, r12, r4 /* 800656C4 00061504 7C A8 28 16 */ mulhwu r5, r8, r5 /* 800656C8 00061508 7C 84 50 38 */ and r4, r4, r10 /* 800656CC 0006150C 90 96 00 00 */ stw r4, 0x0(r22) /* 800656D0 00061510 3A D6 00 04 */ addi r22, r22, 0x4 /* 800656D4 00061514 7F EB 29 14 */ adde r31, r11, r5 /* 800656D8 00061518 7F FE 50 38 */ and r30, r31, r10 /* 800656DC 0006151C 3B E0 00 00 */ li r31, 0x0 /* 800656E0 00061520 42 00 FF C0 */ bdnz lbl_800656A0 .global lbl_800656E4 lbl_800656E4: /* 800656E4 00061524 7C 86 3A 14 */ add r4, r6, r7 /* 800656E8 00061528 39 29 00 04 */ addi r9, r9, 0x4 /* 800656EC 0006152C 54 84 10 3A */ slwi r4, r4, 2 /* 800656F0 00061530 3B 5A 00 04 */ addi r26, r26, 0x4 /* 800656F4 00061534 7F D9 21 2E */ stwx r30, r25, r4 /* 800656F8 00061538 38 C6 00 01 */ addi r6, r6, 0x1 .global lbl_800656FC lbl_800656FC: /* 800656FC 0006153C 7C 06 E0 40 */ cmplw r6, r28 /* 80065700 00061540 41 80 FD B0 */ blt lbl_800654B0 /* 80065704 00061544 7F C0 FB 79 */ or. r0, r30, r31 /* 80065708 00061548 40 82 00 14 */ bne lbl_8006571C /* 8006570C 0006154C 7C 7D E2 14 */ add r3, r29, r28 /* 80065710 00061550 38 03 FF FF */ addi r0, r3, -0x1 /* 80065714 00061554 90 18 00 00 */ stw r0, 0x0(r24) /* 80065718 00061558 48 00 00 0C */ b lbl_80065724 .global lbl_8006571C lbl_8006571C: /* 8006571C 0006155C 7C 1D E2 14 */ add r0, r29, r28 /* 80065720 00061560 90 18 00 00 */ stw r0, 0x0(r24) .global lbl_80065724 lbl_80065724: /* 80065724 00061564 39 61 00 30 */ addi r11, r1, 0x30 /* 80065728 00061568 4B FA 1C 4D */ bl lbl_80007374 /* 8006572C 0006156C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80065730 00061570 7C 08 03 A6 */ mtlr r0 /* 80065734 00061574 38 21 00 30 */ addi r1, r1, 0x30 /* 80065738 00061578 4E 80 00 20 */ blr /* 8006573C 0006157C 00 00 00 00 */ .4byte 0x00000000