.include "macros.inc" .section .data .balign 8 .global lbl_803F2290 lbl_803F2290: .asciz "OSLink: unknown relocation type %3d\n" .balign 4 .global lbl_803F22B8 lbl_803F22B8: .asciz "OSUnlink: unknown relocation type %3d\n" .balign 4 .section .text, "ax" .global OSNotifyLink OSNotifyLink: /* 80381ECC 0037EE2C 4E 80 00 20 */ blr .global OSNotifyUnlink OSNotifyUnlink: /* 80381ED0 0037EE30 4E 80 00 20 */ blr .global Relocate Relocate: /* 80381ED4 0037EE34 7C 08 02 A6 */ mflr r0 /* 80381ED8 0037EE38 90 01 00 04 */ stw r0, 4(r1) /* 80381EDC 0037EE3C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80381EE0 0037EE40 BE E1 00 1C */ stmw r23, 0x1c(r1) /* 80381EE4 0037EE44 7C 7A 1B 79 */ or. r26, r3, r3 /* 80381EE8 0037EE48 3B 64 00 00 */ addi r27, r4, 0 /* 80381EEC 0037EE4C 41 82 00 0C */ beq lbl_80381EF8 /* 80381EF0 0037EE50 83 FA 00 00 */ lwz r31, 0(r26) /* 80381EF4 0037EE54 48 00 00 08 */ b lbl_80381EFC lbl_80381EF8: /* 80381EF8 0037EE58 3B E0 00 00 */ li r31, 0 lbl_80381EFC: /* 80381EFC 0037EE5C 80 7B 00 28 */ lwz r3, 0x28(r27) /* 80381F00 0037EE60 80 1B 00 2C */ lwz r0, 0x2c(r27) /* 80381F04 0037EE64 38 83 00 00 */ addi r4, r3, 0 /* 80381F08 0037EE68 7C 63 02 14 */ add r3, r3, r0 /* 80381F0C 0037EE6C 38 03 00 07 */ addi r0, r3, 7 /* 80381F10 0037EE70 7C 04 00 50 */ subf r0, r4, r0 /* 80381F14 0037EE74 54 00 E8 FE */ srwi r0, r0, 3 /* 80381F18 0037EE78 7C 04 18 40 */ cmplw r4, r3 /* 80381F1C 0037EE7C 7C 09 03 A6 */ mtctr r0 /* 80381F20 0037EE80 40 80 00 18 */ bge lbl_80381F38 lbl_80381F24: /* 80381F24 0037EE84 80 04 00 00 */ lwz r0, 0(r4) /* 80381F28 0037EE88 7C 00 F8 40 */ cmplw r0, r31 /* 80381F2C 0037EE8C 41 82 00 14 */ beq lbl_80381F40 /* 80381F30 0037EE90 38 84 00 08 */ addi r4, r4, 8 /* 80381F34 0037EE94 42 00 FF F0 */ bdnz lbl_80381F24 lbl_80381F38: /* 80381F38 0037EE98 38 60 00 00 */ li r3, 0 /* 80381F3C 0037EE9C 48 00 02 40 */ b lbl_8038217C lbl_80381F40: /* 80381F40 0037EEA0 3C 60 80 3F */ lis r3, lbl_803F2290@ha /* 80381F44 0037EEA4 83 C4 00 04 */ lwz r30, 4(r4) /* 80381F48 0037EEA8 3B 23 22 90 */ addi r25, r3, lbl_803F2290@l /* 80381F4C 0037EEAC 3B A0 00 00 */ li r29, 0 /* 80381F50 0037EEB0 48 00 01 F4 */ b lbl_80382144 lbl_80381F54: /* 80381F54 0037EEB4 A0 1E 00 00 */ lhz r0, 0(r30) /* 80381F58 0037EEB8 28 1F 00 00 */ cmplwi r31, 0 /* 80381F5C 0037EEBC 7F 9C 02 14 */ add r28, r28, r0 /* 80381F60 0037EEC0 41 82 00 1C */ beq lbl_80381F7C /* 80381F64 0037EEC4 88 1E 00 03 */ lbz r0, 3(r30) /* 80381F68 0037EEC8 80 7A 00 10 */ lwz r3, 0x10(r26) /* 80381F6C 0037EECC 54 00 18 38 */ slwi r0, r0, 3 /* 80381F70 0037EED0 7C 03 00 2E */ lwzx r0, r3, r0 /* 80381F74 0037EED4 54 05 00 3C */ rlwinm r5, r0, 0, 0, 0x1e /* 80381F78 0037EED8 48 00 00 08 */ b lbl_80381F80 lbl_80381F7C: /* 80381F7C 0037EEDC 38 A0 00 00 */ li r5, 0 lbl_80381F80: /* 80381F80 0037EEE0 2C 04 00 06 */ cmpwi r4, 6 /* 80381F84 0037EEE4 41 82 00 C4 */ beq lbl_80382048 /* 80381F88 0037EEE8 40 80 00 30 */ bge lbl_80381FB8 /* 80381F8C 0037EEEC 2C 04 00 02 */ cmpwi r4, 2 /* 80381F90 0037EEF0 41 82 00 68 */ beq lbl_80381FF8 /* 80381F94 0037EEF4 40 80 00 14 */ bge lbl_80381FA8 /* 80381F98 0037EEF8 2C 04 00 00 */ cmpwi r4, 0 /* 80381F9C 0037EEFC 41 82 01 A4 */ beq lbl_80382140 /* 80381FA0 0037EF00 40 80 00 48 */ bge lbl_80381FE8 /* 80381FA4 0037EF04 48 00 01 90 */ b lbl_80382134 lbl_80381FA8: /* 80381FA8 0037EF08 2C 04 00 04 */ cmpwi r4, 4 /* 80381FAC 0037EF0C 41 82 00 78 */ beq lbl_80382024 /* 80381FB0 0037EF10 40 80 00 84 */ bge lbl_80382034 /* 80381FB4 0037EF14 48 00 00 60 */ b lbl_80382014 lbl_80381FB8: /* 80381FB8 0037EF18 2C 04 00 C9 */ cmpwi r4, 0xc9 /* 80381FBC 0037EF1C 41 82 01 84 */ beq lbl_80382140 /* 80381FC0 0037EF20 40 80 00 1C */ bge lbl_80381FDC /* 80381FC4 0037EF24 2C 04 00 0A */ cmpwi r4, 0xa /* 80381FC8 0037EF28 41 82 00 C8 */ beq lbl_80382090 /* 80381FCC 0037EF2C 41 80 00 A8 */ blt lbl_80382074 /* 80381FD0 0037EF30 2C 04 00 0E */ cmpwi r4, 0xe /* 80381FD4 0037EF34 40 80 01 60 */ bge lbl_80382134 /* 80381FD8 0037EF38 48 00 00 D8 */ b lbl_803820B0 lbl_80381FDC: /* 80381FDC 0037EF3C 2C 04 00 CB */ cmpwi r4, 0xcb /* 80381FE0 0037EF40 40 80 01 54 */ bge lbl_80382134 /* 80381FE4 0037EF44 48 00 00 EC */ b lbl_803820D0 lbl_80381FE8: /* 80381FE8 0037EF48 80 1E 00 04 */ lwz r0, 4(r30) /* 80381FEC 0037EF4C 7C 05 02 14 */ add r0, r5, r0 /* 80381FF0 0037EF50 90 1C 00 00 */ stw r0, 0(r28) /* 80381FF4 0037EF54 48 00 01 4C */ b lbl_80382140 lbl_80381FF8: /* 80381FF8 0037EF58 80 1E 00 04 */ lwz r0, 4(r30) /* 80381FFC 0037EF5C 80 7C 00 00 */ lwz r3, 0(r28) /* 80382000 0037EF60 7C 05 02 14 */ add r0, r5, r0 /* 80382004 0037EF64 54 63 07 8A */ rlwinm r3, r3, 0, 0x1e, 5 /* 80382008 0037EF68 50 03 01 BA */ rlwimi r3, r0, 0, 6, 0x1d /* 8038200C 0037EF6C 90 7C 00 00 */ stw r3, 0(r28) /* 80382010 0037EF70 48 00 01 30 */ b lbl_80382140 lbl_80382014: /* 80382014 0037EF74 80 1E 00 04 */ lwz r0, 4(r30) /* 80382018 0037EF78 7C 05 02 14 */ add r0, r5, r0 /* 8038201C 0037EF7C B0 1C 00 00 */ sth r0, 0(r28) /* 80382020 0037EF80 48 00 01 20 */ b lbl_80382140 lbl_80382024: /* 80382024 0037EF84 80 1E 00 04 */ lwz r0, 4(r30) /* 80382028 0037EF88 7C 05 02 14 */ add r0, r5, r0 /* 8038202C 0037EF8C B0 1C 00 00 */ sth r0, 0(r28) /* 80382030 0037EF90 48 00 01 10 */ b lbl_80382140 lbl_80382034: /* 80382034 0037EF94 80 1E 00 04 */ lwz r0, 4(r30) /* 80382038 0037EF98 7C 05 02 14 */ add r0, r5, r0 /* 8038203C 0037EF9C 54 00 84 3E */ srwi r0, r0, 0x10 /* 80382040 0037EFA0 B0 1C 00 00 */ sth r0, 0(r28) /* 80382044 0037EFA4 48 00 00 FC */ b lbl_80382140 lbl_80382048: /* 80382048 0037EFA8 80 1E 00 04 */ lwz r0, 4(r30) /* 8038204C 0037EFAC 7C 85 02 14 */ add r4, r5, r0 /* 80382050 0037EFB0 54 80 04 21 */ rlwinm. r0, r4, 0, 0x10, 0x10 /* 80382054 0037EFB4 41 82 00 0C */ beq lbl_80382060 /* 80382058 0037EFB8 38 60 00 01 */ li r3, 1 /* 8038205C 0037EFBC 48 00 00 08 */ b lbl_80382064 lbl_80382060: /* 80382060 0037EFC0 38 60 00 00 */ li r3, 0 lbl_80382064: /* 80382064 0037EFC4 54 80 84 3E */ srwi r0, r4, 0x10 /* 80382068 0037EFC8 7C 00 1A 14 */ add r0, r0, r3 /* 8038206C 0037EFCC B0 1C 00 00 */ sth r0, 0(r28) /* 80382070 0037EFD0 48 00 00 D0 */ b lbl_80382140 lbl_80382074: /* 80382074 0037EFD4 80 1E 00 04 */ lwz r0, 4(r30) /* 80382078 0037EFD8 80 7C 00 00 */ lwz r3, 0(r28) /* 8038207C 0037EFDC 7C 05 02 14 */ add r0, r5, r0 /* 80382080 0037EFE0 54 63 07 9E */ rlwinm r3, r3, 0, 0x1e, 0xf /* 80382084 0037EFE4 50 03 04 3A */ rlwimi r3, r0, 0, 0x10, 0x1d /* 80382088 0037EFE8 90 7C 00 00 */ stw r3, 0(r28) /* 8038208C 0037EFEC 48 00 00 B4 */ b lbl_80382140 lbl_80382090: /* 80382090 0037EFF0 80 1E 00 04 */ lwz r0, 4(r30) /* 80382094 0037EFF4 80 7C 00 00 */ lwz r3, 0(r28) /* 80382098 0037EFF8 7C 05 02 14 */ add r0, r5, r0 /* 8038209C 0037EFFC 7C 1C 00 50 */ subf r0, r28, r0 /* 803820A0 0037F000 54 63 07 8A */ rlwinm r3, r3, 0, 0x1e, 5 /* 803820A4 0037F004 50 03 01 BA */ rlwimi r3, r0, 0, 6, 0x1d /* 803820A8 0037F008 90 7C 00 00 */ stw r3, 0(r28) /* 803820AC 0037F00C 48 00 00 94 */ b lbl_80382140 lbl_803820B0: /* 803820B0 0037F010 80 1E 00 04 */ lwz r0, 4(r30) /* 803820B4 0037F014 80 7C 00 00 */ lwz r3, 0(r28) /* 803820B8 0037F018 7C 05 02 14 */ add r0, r5, r0 /* 803820BC 0037F01C 7C 1C 00 50 */ subf r0, r28, r0 /* 803820C0 0037F020 54 63 07 9E */ rlwinm r3, r3, 0, 0x1e, 0xf /* 803820C4 0037F024 50 03 04 3A */ rlwimi r3, r0, 0, 0x10, 0x1d /* 803820C8 0037F028 90 7C 00 00 */ stw r3, 0(r28) /* 803820CC 0037F02C 48 00 00 74 */ b lbl_80382140 lbl_803820D0: /* 803820D0 0037F030 88 1E 00 03 */ lbz r0, 3(r30) /* 803820D4 0037F034 28 1D 00 00 */ cmplwi r29, 0 /* 803820D8 0037F038 80 7B 00 10 */ lwz r3, 0x10(r27) /* 803820DC 0037F03C 54 00 18 38 */ slwi r0, r0, 3 /* 803820E0 0037F040 7C 63 02 14 */ add r3, r3, r0 /* 803820E4 0037F044 80 03 00 00 */ lwz r0, 0(r3) /* 803820E8 0037F048 3A E3 00 00 */ addi r23, r3, 0 /* 803820EC 0037F04C 54 1C 00 3C */ rlwinm r28, r0, 0, 0, 0x1e /* 803820F0 0037F050 41 82 00 24 */ beq lbl_80382114 /* 803820F4 0037F054 80 1D 00 00 */ lwz r0, 0(r29) /* 803820F8 0037F058 80 9D 00 04 */ lwz r4, 4(r29) /* 803820FC 0037F05C 54 18 00 3C */ rlwinm r24, r0, 0, 0, 0x1e /* 80382100 0037F060 38 78 00 00 */ addi r3, r24, 0 /* 80382104 0037F064 4B FF C9 AD */ bl DCFlushRange /* 80382108 0037F068 7F 03 C3 78 */ mr r3, r24 /* 8038210C 0037F06C 80 9D 00 04 */ lwz r4, 4(r29) /* 80382110 0037F070 4B FF CA 85 */ bl ICInvalidateRange lbl_80382114: /* 80382114 0037F074 80 17 00 00 */ lwz r0, 0(r23) /* 80382118 0037F078 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8038211C 0037F07C 41 82 00 0C */ beq lbl_80382128 /* 80382120 0037F080 7E E0 BB 78 */ mr r0, r23 /* 80382124 0037F084 48 00 00 08 */ b lbl_8038212C lbl_80382128: /* 80382128 0037F088 38 00 00 00 */ li r0, 0 lbl_8038212C: /* 8038212C 0037F08C 7C 1D 03 78 */ mr r29, r0 /* 80382130 0037F090 48 00 00 10 */ b lbl_80382140 lbl_80382134: /* 80382134 0037F094 38 79 00 00 */ addi r3, r25, 0 /* 80382138 0037F098 4C C6 31 82 */ crclr 6 /* 8038213C 0037F09C 4B FF D8 71 */ bl OSReport lbl_80382140: /* 80382140 0037F0A0 3B DE 00 08 */ addi r30, r30, 8 lbl_80382144: /* 80382144 0037F0A4 88 9E 00 02 */ lbz r4, 2(r30) /* 80382148 0037F0A8 28 04 00 CB */ cmplwi r4, 0xcb /* 8038214C 0037F0AC 40 82 FE 08 */ bne lbl_80381F54 /* 80382150 0037F0B0 28 1D 00 00 */ cmplwi r29, 0 /* 80382154 0037F0B4 41 82 00 24 */ beq lbl_80382178 /* 80382158 0037F0B8 80 1D 00 00 */ lwz r0, 0(r29) /* 8038215C 0037F0BC 80 9D 00 04 */ lwz r4, 4(r29) /* 80382160 0037F0C0 54 19 00 3C */ rlwinm r25, r0, 0, 0, 0x1e /* 80382164 0037F0C4 38 79 00 00 */ addi r3, r25, 0 /* 80382168 0037F0C8 4B FF C9 49 */ bl DCFlushRange /* 8038216C 0037F0CC 7F 23 CB 78 */ mr r3, r25 /* 80382170 0037F0D0 80 9D 00 04 */ lwz r4, 4(r29) /* 80382174 0037F0D4 4B FF CA 21 */ bl ICInvalidateRange lbl_80382178: /* 80382178 0037F0D8 38 60 00 01 */ li r3, 1 lbl_8038217C: /* 8038217C 0037F0DC BA E1 00 1C */ lmw r23, 0x1c(r1) /* 80382180 0037F0E0 80 01 00 44 */ lwz r0, 0x44(r1) /* 80382184 0037F0E4 38 21 00 40 */ addi r1, r1, 0x40 /* 80382188 0037F0E8 7C 08 03 A6 */ mtlr r0 /* 8038218C 0037F0EC 4E 80 00 20 */ blr .global OSLink OSLink: /* 80382190 0037F0F0 7C 08 02 A6 */ mflr r0 /* 80382194 0037F0F4 90 01 00 04 */ stw r0, 4(r1) /* 80382198 0037F0F8 38 00 00 00 */ li r0, 0 /* 8038219C 0037F0FC 94 21 FF E8 */ stwu r1, -0x18(r1) /* 803821A0 0037F100 93 E1 00 14 */ stw r31, 0x14(r1) /* 803821A4 0037F104 3B E3 00 00 */ addi r31, r3, 0 /* 803821A8 0037F108 93 C1 00 10 */ stw r30, 0x10(r1) /* 803821AC 0037F10C 7C 9E 23 78 */ mr r30, r4 /* 803821B0 0037F110 98 03 00 33 */ stb r0, 0x33(r3) /* 803821B4 0037F114 80 03 00 1C */ lwz r0, 0x1c(r3) /* 803821B8 0037F118 28 00 00 02 */ cmplwi r0, 2 /* 803821BC 0037F11C 41 81 00 40 */ bgt lbl_803821FC /* 803821C0 0037F120 41 80 00 44 */ blt lbl_80382204 /* 803821C4 0037F124 80 7F 00 40 */ lwz r3, 0x40(r31) /* 803821C8 0037F128 28 03 00 00 */ cmplwi r3, 0 /* 803821CC 0037F12C 41 82 00 14 */ beq lbl_803821E0 /* 803821D0 0037F130 7C 1F 1B 96 */ divwu r0, r31, r3 /* 803821D4 0037F134 7C 00 19 D6 */ mullw r0, r0, r3 /* 803821D8 0037F138 7C 00 F8 51 */ subf. r0, r0, r31 /* 803821DC 0037F13C 40 82 00 20 */ bne lbl_803821FC lbl_803821E0: /* 803821E0 0037F140 80 7F 00 44 */ lwz r3, 0x44(r31) /* 803821E4 0037F144 28 03 00 00 */ cmplwi r3, 0 /* 803821E8 0037F148 41 82 00 1C */ beq lbl_80382204 /* 803821EC 0037F14C 7C 1E 1B 96 */ divwu r0, r30, r3 /* 803821F0 0037F150 7C 00 19 D6 */ mullw r0, r0, r3 /* 803821F4 0037F154 7C 00 F0 51 */ subf. r0, r0, r30 /* 803821F8 0037F158 41 82 00 0C */ beq lbl_80382204 lbl_803821FC: /* 803821FC 0037F15C 38 60 00 00 */ li r3, 0 /* 80382200 0037F160 48 00 01 D4 */ b lbl_803823D4 lbl_80382204: /* 80382204 0037F164 3C 60 80 00 */ lis r3, 0x800030C8@ha /* 80382208 0037F168 38 A3 30 C8 */ addi r5, r3, 0x800030C8@l /* 8038220C 0037F16C 84 85 00 04 */ lwzu r4, 4(r5) /* 80382210 0037F170 28 04 00 00 */ cmplwi r4, 0 /* 80382214 0037F174 40 82 00 0C */ bne lbl_80382220 /* 80382218 0037F178 93 E3 30 C8 */ stw r31, 0x30c8(r3) /* 8038221C 0037F17C 48 00 00 08 */ b lbl_80382224 lbl_80382220: /* 80382220 0037F180 93 E4 00 04 */ stw r31, 4(r4) lbl_80382224: /* 80382224 0037F184 90 9F 00 08 */ stw r4, 8(r31) /* 80382228 0037F188 38 00 00 00 */ li r0, 0 /* 8038222C 0037F18C 38 7E 00 00 */ addi r3, r30, 0 /* 80382230 0037F190 90 1F 00 04 */ stw r0, 4(r31) /* 80382234 0037F194 38 80 00 00 */ li r4, 0 /* 80382238 0037F198 93 E5 00 00 */ stw r31, 0(r5) /* 8038223C 0037F19C 80 BF 00 20 */ lwz r5, 0x20(r31) /* 80382240 0037F1A0 4B C8 11 69 */ bl memset /* 80382244 0037F1A4 80 1F 00 10 */ lwz r0, 0x10(r31) /* 80382248 0037F1A8 38 A0 00 01 */ li r5, 1 /* 8038224C 0037F1AC 38 60 00 08 */ li r3, 8 /* 80382250 0037F1B0 7C 00 FA 14 */ add r0, r0, r31 /* 80382254 0037F1B4 90 1F 00 10 */ stw r0, 0x10(r31) /* 80382258 0037F1B8 80 1F 00 24 */ lwz r0, 0x24(r31) /* 8038225C 0037F1BC 7C 00 FA 14 */ add r0, r0, r31 /* 80382260 0037F1C0 90 1F 00 24 */ stw r0, 0x24(r31) /* 80382264 0037F1C4 80 1F 00 28 */ lwz r0, 0x28(r31) /* 80382268 0037F1C8 7C 00 FA 14 */ add r0, r0, r31 /* 8038226C 0037F1CC 90 1F 00 28 */ stw r0, 0x28(r31) /* 80382270 0037F1D0 48 00 00 48 */ b lbl_803822B8 lbl_80382274: /* 80382274 0037F1D4 80 1F 00 10 */ lwz r0, 0x10(r31) /* 80382278 0037F1D8 7C 80 1A 14 */ add r4, r0, r3 /* 8038227C 0037F1DC 80 04 00 00 */ lwz r0, 0(r4) /* 80382280 0037F1E0 28 00 00 00 */ cmplwi r0, 0 /* 80382284 0037F1E4 41 82 00 10 */ beq lbl_80382294 /* 80382288 0037F1E8 7C 00 FA 14 */ add r0, r0, r31 /* 8038228C 0037F1EC 90 04 00 00 */ stw r0, 0(r4) /* 80382290 0037F1F0 48 00 00 20 */ b lbl_803822B0 lbl_80382294: /* 80382294 0037F1F4 80 04 00 04 */ lwz r0, 4(r4) /* 80382298 0037F1F8 28 00 00 00 */ cmplwi r0, 0 /* 8038229C 0037F1FC 41 82 00 14 */ beq lbl_803822B0 /* 803822A0 0037F200 98 BF 00 33 */ stb r5, 0x33(r31) /* 803822A4 0037F204 93 C4 00 00 */ stw r30, 0(r4) /* 803822A8 0037F208 80 04 00 04 */ lwz r0, 4(r4) /* 803822AC 0037F20C 7F DE 02 14 */ add r30, r30, r0 lbl_803822B0: /* 803822B0 0037F210 38 63 00 08 */ addi r3, r3, 8 /* 803822B4 0037F214 38 A5 00 01 */ addi r5, r5, 1 lbl_803822B8: /* 803822B8 0037F218 80 1F 00 0C */ lwz r0, 0xc(r31) /* 803822BC 0037F21C 7C 05 00 40 */ cmplw r5, r0 /* 803822C0 0037F220 41 80 FF B4 */ blt lbl_80382274 /* 803822C4 0037F224 80 9F 00 28 */ lwz r4, 0x28(r31) /* 803822C8 0037F228 48 00 00 14 */ b lbl_803822DC lbl_803822CC: /* 803822CC 0037F22C 80 04 00 04 */ lwz r0, 4(r4) /* 803822D0 0037F230 7C 00 FA 14 */ add r0, r0, r31 /* 803822D4 0037F234 90 04 00 04 */ stw r0, 4(r4) /* 803822D8 0037F238 38 84 00 08 */ addi r4, r4, 8 lbl_803822DC: /* 803822DC 0037F23C 80 7F 00 28 */ lwz r3, 0x28(r31) /* 803822E0 0037F240 80 1F 00 2C */ lwz r0, 0x2c(r31) /* 803822E4 0037F244 7C 03 02 14 */ add r0, r3, r0 /* 803822E8 0037F248 7C 04 00 40 */ cmplw r4, r0 /* 803822EC 0037F24C 41 80 FF E0 */ blt lbl_803822CC /* 803822F0 0037F250 88 1F 00 30 */ lbz r0, 0x30(r31) /* 803822F4 0037F254 28 00 00 00 */ cmplwi r0, 0 /* 803822F8 0037F258 41 82 00 20 */ beq lbl_80382318 /* 803822FC 0037F25C 80 7F 00 10 */ lwz r3, 0x10(r31) /* 80382300 0037F260 54 00 18 38 */ slwi r0, r0, 3 /* 80382304 0037F264 80 9F 00 34 */ lwz r4, 0x34(r31) /* 80382308 0037F268 7C 03 00 2E */ lwzx r0, r3, r0 /* 8038230C 0037F26C 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80382310 0037F270 7C 04 02 14 */ add r0, r4, r0 /* 80382314 0037F274 90 1F 00 34 */ stw r0, 0x34(r31) lbl_80382318: /* 80382318 0037F278 88 1F 00 31 */ lbz r0, 0x31(r31) /* 8038231C 0037F27C 28 00 00 00 */ cmplwi r0, 0 /* 80382320 0037F280 41 82 00 20 */ beq lbl_80382340 /* 80382324 0037F284 80 7F 00 10 */ lwz r3, 0x10(r31) /* 80382328 0037F288 54 00 18 38 */ slwi r0, r0, 3 /* 8038232C 0037F28C 80 9F 00 38 */ lwz r4, 0x38(r31) /* 80382330 0037F290 7C 03 00 2E */ lwzx r0, r3, r0 /* 80382334 0037F294 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80382338 0037F298 7C 04 02 14 */ add r0, r4, r0 /* 8038233C 0037F29C 90 1F 00 38 */ stw r0, 0x38(r31) lbl_80382340: /* 80382340 0037F2A0 88 1F 00 32 */ lbz r0, 0x32(r31) /* 80382344 0037F2A4 28 00 00 00 */ cmplwi r0, 0 /* 80382348 0037F2A8 41 82 00 20 */ beq lbl_80382368 /* 8038234C 0037F2AC 80 7F 00 10 */ lwz r3, 0x10(r31) /* 80382350 0037F2B0 54 00 18 38 */ slwi r0, r0, 3 /* 80382354 0037F2B4 80 9F 00 3C */ lwz r4, 0x3c(r31) /* 80382358 0037F2B8 7C 03 00 2E */ lwzx r0, r3, r0 /* 8038235C 0037F2BC 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80382360 0037F2C0 7C 04 02 14 */ add r0, r4, r0 /* 80382364 0037F2C4 90 1F 00 3C */ stw r0, 0x3c(r31) lbl_80382368: /* 80382368 0037F2C8 3C 60 80 00 */ lis r3, 0x800030D0@ha /* 8038236C 0037F2CC 80 63 30 D0 */ lwz r3, 0x800030D0@l(r3) /* 80382370 0037F2D0 28 03 00 00 */ cmplwi r3, 0 /* 80382374 0037F2D4 41 82 00 10 */ beq lbl_80382384 /* 80382378 0037F2D8 80 1F 00 14 */ lwz r0, 0x14(r31) /* 8038237C 0037F2DC 7C 00 1A 14 */ add r0, r0, r3 /* 80382380 0037F2E0 90 1F 00 14 */ stw r0, 0x14(r31) lbl_80382384: /* 80382384 0037F2E4 38 60 00 00 */ li r3, 0 /* 80382388 0037F2E8 38 9F 00 00 */ addi r4, r31, 0 /* 8038238C 0037F2EC 4B FF FB 49 */ bl Relocate /* 80382390 0037F2F0 3C 60 80 00 */ lis r3, 0x800030C8@ha /* 80382394 0037F2F4 83 C3 30 C8 */ lwz r30, 0x800030C8@l(r3) /* 80382398 0037F2F8 48 00 00 28 */ b lbl_803823C0 lbl_8038239C: /* 8038239C 0037F2FC 38 7F 00 00 */ addi r3, r31, 0 /* 803823A0 0037F300 38 9E 00 00 */ addi r4, r30, 0 /* 803823A4 0037F304 4B FF FB 31 */ bl Relocate /* 803823A8 0037F308 7C 1E F8 40 */ cmplw r30, r31 /* 803823AC 0037F30C 41 82 00 10 */ beq lbl_803823BC /* 803823B0 0037F310 38 7E 00 00 */ addi r3, r30, 0 /* 803823B4 0037F314 38 9F 00 00 */ addi r4, r31, 0 /* 803823B8 0037F318 4B FF FB 1D */ bl Relocate lbl_803823BC: /* 803823BC 0037F31C 83 DE 00 04 */ lwz r30, 4(r30) lbl_803823C0: /* 803823C0 0037F320 28 1E 00 00 */ cmplwi r30, 0 /* 803823C4 0037F324 40 82 FF D8 */ bne lbl_8038239C /* 803823C8 0037F328 7F E3 FB 78 */ mr r3, r31 /* 803823CC 0037F32C 4B FF FB 01 */ bl OSNotifyLink /* 803823D0 0037F330 38 60 00 01 */ li r3, 1 lbl_803823D4: /* 803823D4 0037F334 80 01 00 1C */ lwz r0, 0x1c(r1) /* 803823D8 0037F338 83 E1 00 14 */ lwz r31, 0x14(r1) /* 803823DC 0037F33C 83 C1 00 10 */ lwz r30, 0x10(r1) /* 803823E0 0037F340 38 21 00 18 */ addi r1, r1, 0x18 /* 803823E4 0037F344 7C 08 03 A6 */ mtlr r0 /* 803823E8 0037F348 4E 80 00 20 */ blr .global Undo Undo: /* 803823EC 0037F34C 7C 08 02 A6 */ mflr r0 /* 803823F0 0037F350 90 01 00 04 */ stw r0, 4(r1) /* 803823F4 0037F354 94 21 FF C8 */ stwu r1, -0x38(r1) /* 803823F8 0037F358 BF 21 00 1C */ stmw r25, 0x1c(r1) /* 803823FC 0037F35C 7C 9C 23 78 */ mr r28, r4 /* 80382400 0037F360 80 83 00 00 */ lwz r4, 0(r3) /* 80382404 0037F364 80 7C 00 28 */ lwz r3, 0x28(r28) /* 80382408 0037F368 80 1C 00 2C */ lwz r0, 0x2c(r28) /* 8038240C 0037F36C 38 A3 00 00 */ addi r5, r3, 0 /* 80382410 0037F370 7C 63 02 14 */ add r3, r3, r0 /* 80382414 0037F374 38 03 00 07 */ addi r0, r3, 7 /* 80382418 0037F378 7C 05 00 50 */ subf r0, r5, r0 /* 8038241C 0037F37C 54 00 E8 FE */ srwi r0, r0, 3 /* 80382420 0037F380 7C 05 18 40 */ cmplw r5, r3 /* 80382424 0037F384 7C 09 03 A6 */ mtctr r0 /* 80382428 0037F388 40 80 00 18 */ bge lbl_80382440 lbl_8038242C: /* 8038242C 0037F38C 80 05 00 00 */ lwz r0, 0(r5) /* 80382430 0037F390 7C 00 20 40 */ cmplw r0, r4 /* 80382434 0037F394 41 82 00 14 */ beq lbl_80382448 /* 80382438 0037F398 38 A5 00 08 */ addi r5, r5, 8 /* 8038243C 0037F39C 42 00 FF F0 */ bdnz lbl_8038242C lbl_80382440: /* 80382440 0037F3A0 38 60 00 00 */ li r3, 0 /* 80382444 0037F3A4 48 00 01 CC */ b lbl_80382610 lbl_80382448: /* 80382448 0037F3A8 3C 60 80 3F */ lis r3, lbl_803F22B8@ha /* 8038244C 0037F3AC 83 E5 00 04 */ lwz r31, 4(r5) /* 80382450 0037F3B0 3B 63 22 B8 */ addi r27, r3, lbl_803F22B8@l /* 80382454 0037F3B4 3B C0 00 00 */ li r30, 0 /* 80382458 0037F3B8 48 00 01 80 */ b lbl_803825D8 lbl_8038245C: /* 8038245C 0037F3BC A0 1F 00 00 */ lhz r0, 0(r31) /* 80382460 0037F3C0 2C 04 00 06 */ cmpwi r4, 6 /* 80382464 0037F3C4 38 60 00 00 */ li r3, 0 /* 80382468 0037F3C8 7F BD 02 14 */ add r29, r29, r0 /* 8038246C 0037F3CC 41 82 00 A4 */ beq lbl_80382510 /* 80382470 0037F3D0 40 80 00 30 */ bge lbl_803824A0 /* 80382474 0037F3D4 2C 04 00 02 */ cmpwi r4, 2 /* 80382478 0037F3D8 41 82 00 64 */ beq lbl_803824DC /* 8038247C 0037F3DC 40 80 00 14 */ bge lbl_80382490 /* 80382480 0037F3E0 2C 04 00 00 */ cmpwi r4, 0 /* 80382484 0037F3E4 41 82 01 50 */ beq lbl_803825D4 /* 80382488 0037F3E8 40 80 00 48 */ bge lbl_803824D0 /* 8038248C 0037F3EC 48 00 01 3C */ b lbl_803825C8 lbl_80382490: /* 80382490 0037F3F0 2C 04 00 04 */ cmpwi r4, 4 /* 80382494 0037F3F4 41 82 00 64 */ beq lbl_803824F8 /* 80382498 0037F3F8 40 80 00 6C */ bge lbl_80382504 /* 8038249C 0037F3FC 48 00 00 50 */ b lbl_803824EC lbl_803824A0: /* 803824A0 0037F400 2C 04 00 C9 */ cmpwi r4, 0xc9 /* 803824A4 0037F404 41 82 01 30 */ beq lbl_803825D4 /* 803824A8 0037F408 40 80 00 1C */ bge lbl_803824C4 /* 803824AC 0037F40C 2C 04 00 0A */ cmpwi r4, 0xa /* 803824B0 0037F410 41 82 00 7C */ beq lbl_8038252C /* 803824B4 0037F414 41 80 00 68 */ blt lbl_8038251C /* 803824B8 0037F418 2C 04 00 0E */ cmpwi r4, 0xe /* 803824BC 0037F41C 40 80 01 0C */ bge lbl_803825C8 /* 803824C0 0037F420 48 00 00 94 */ b lbl_80382554 lbl_803824C4: /* 803824C4 0037F424 2C 04 00 CB */ cmpwi r4, 0xcb /* 803824C8 0037F428 40 80 01 00 */ bge lbl_803825C8 /* 803824CC 0037F42C 48 00 00 98 */ b lbl_80382564 lbl_803824D0: /* 803824D0 0037F430 38 00 00 00 */ li r0, 0 /* 803824D4 0037F434 90 1D 00 00 */ stw r0, 0(r29) /* 803824D8 0037F438 48 00 00 FC */ b lbl_803825D4 lbl_803824DC: /* 803824DC 0037F43C 80 1D 00 00 */ lwz r0, 0(r29) /* 803824E0 0037F440 54 00 07 8A */ rlwinm r0, r0, 0, 0x1e, 5 /* 803824E4 0037F444 90 1D 00 00 */ stw r0, 0(r29) /* 803824E8 0037F448 48 00 00 EC */ b lbl_803825D4 lbl_803824EC: /* 803824EC 0037F44C 38 00 00 00 */ li r0, 0 /* 803824F0 0037F450 B0 1D 00 00 */ sth r0, 0(r29) /* 803824F4 0037F454 48 00 00 E0 */ b lbl_803825D4 lbl_803824F8: /* 803824F8 0037F458 38 00 00 00 */ li r0, 0 /* 803824FC 0037F45C B0 1D 00 00 */ sth r0, 0(r29) /* 80382500 0037F460 48 00 00 D4 */ b lbl_803825D4 lbl_80382504: /* 80382504 0037F464 38 00 00 00 */ li r0, 0 /* 80382508 0037F468 B0 1D 00 00 */ sth r0, 0(r29) /* 8038250C 0037F46C 48 00 00 C8 */ b lbl_803825D4 lbl_80382510: /* 80382510 0037F470 38 00 00 00 */ li r0, 0 /* 80382514 0037F474 B0 1D 00 00 */ sth r0, 0(r29) /* 80382518 0037F478 48 00 00 BC */ b lbl_803825D4 lbl_8038251C: /* 8038251C 0037F47C 80 1D 00 00 */ lwz r0, 0(r29) /* 80382520 0037F480 54 00 07 9E */ rlwinm r0, r0, 0, 0x1e, 0xf /* 80382524 0037F484 90 1D 00 00 */ stw r0, 0(r29) /* 80382528 0037F488 48 00 00 AC */ b lbl_803825D4 lbl_8038252C: /* 8038252C 0037F48C 88 1C 00 32 */ lbz r0, 0x32(r28) /* 80382530 0037F490 28 00 00 00 */ cmplwi r0, 0 /* 80382534 0037F494 41 82 00 0C */ beq lbl_80382540 /* 80382538 0037F498 80 1C 00 3C */ lwz r0, 0x3c(r28) /* 8038253C 0037F49C 7C 7D 00 50 */ subf r3, r29, r0 lbl_80382540: /* 80382540 0037F4A0 80 1D 00 00 */ lwz r0, 0(r29) /* 80382544 0037F4A4 54 00 07 8A */ rlwinm r0, r0, 0, 0x1e, 5 /* 80382548 0037F4A8 50 60 01 BA */ rlwimi r0, r3, 0, 6, 0x1d /* 8038254C 0037F4AC 90 1D 00 00 */ stw r0, 0(r29) /* 80382550 0037F4B0 48 00 00 84 */ b lbl_803825D4 lbl_80382554: /* 80382554 0037F4B4 80 1D 00 00 */ lwz r0, 0(r29) /* 80382558 0037F4B8 54 00 07 9E */ rlwinm r0, r0, 0, 0x1e, 0xf /* 8038255C 0037F4BC 90 1D 00 00 */ stw r0, 0(r29) /* 80382560 0037F4C0 48 00 00 74 */ b lbl_803825D4 lbl_80382564: /* 80382564 0037F4C4 88 1F 00 03 */ lbz r0, 3(r31) /* 80382568 0037F4C8 28 1E 00 00 */ cmplwi r30, 0 /* 8038256C 0037F4CC 80 7C 00 10 */ lwz r3, 0x10(r28) /* 80382570 0037F4D0 54 00 18 38 */ slwi r0, r0, 3 /* 80382574 0037F4D4 7C 63 02 14 */ add r3, r3, r0 /* 80382578 0037F4D8 80 03 00 00 */ lwz r0, 0(r3) /* 8038257C 0037F4DC 3B 43 00 00 */ addi r26, r3, 0 /* 80382580 0037F4E0 54 1D 00 3C */ rlwinm r29, r0, 0, 0, 0x1e /* 80382584 0037F4E4 41 82 00 24 */ beq lbl_803825A8 /* 80382588 0037F4E8 80 1E 00 00 */ lwz r0, 0(r30) /* 8038258C 0037F4EC 80 9E 00 04 */ lwz r4, 4(r30) /* 80382590 0037F4F0 54 19 00 3C */ rlwinm r25, r0, 0, 0, 0x1e /* 80382594 0037F4F4 38 79 00 00 */ addi r3, r25, 0 /* 80382598 0037F4F8 4B FF C5 19 */ bl DCFlushRange /* 8038259C 0037F4FC 7F 23 CB 78 */ mr r3, r25 /* 803825A0 0037F500 80 9E 00 04 */ lwz r4, 4(r30) /* 803825A4 0037F504 4B FF C5 F1 */ bl ICInvalidateRange lbl_803825A8: /* 803825A8 0037F508 80 1A 00 00 */ lwz r0, 0(r26) /* 803825AC 0037F50C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 803825B0 0037F510 41 82 00 0C */ beq lbl_803825BC /* 803825B4 0037F514 7F 40 D3 78 */ mr r0, r26 /* 803825B8 0037F518 48 00 00 08 */ b lbl_803825C0 lbl_803825BC: /* 803825BC 0037F51C 38 00 00 00 */ li r0, 0 lbl_803825C0: /* 803825C0 0037F520 7C 1E 03 78 */ mr r30, r0 /* 803825C4 0037F524 48 00 00 10 */ b lbl_803825D4 lbl_803825C8: /* 803825C8 0037F528 38 7B 00 00 */ addi r3, r27, 0 /* 803825CC 0037F52C 4C C6 31 82 */ crclr 6 /* 803825D0 0037F530 4B FF D3 DD */ bl OSReport lbl_803825D4: /* 803825D4 0037F534 3B FF 00 08 */ addi r31, r31, 8 lbl_803825D8: /* 803825D8 0037F538 88 9F 00 02 */ lbz r4, 2(r31) /* 803825DC 0037F53C 28 04 00 CB */ cmplwi r4, 0xcb /* 803825E0 0037F540 40 82 FE 7C */ bne lbl_8038245C /* 803825E4 0037F544 28 1E 00 00 */ cmplwi r30, 0 /* 803825E8 0037F548 41 82 00 24 */ beq lbl_8038260C /* 803825EC 0037F54C 80 1E 00 00 */ lwz r0, 0(r30) /* 803825F0 0037F550 80 9E 00 04 */ lwz r4, 4(r30) /* 803825F4 0037F554 54 1B 00 3C */ rlwinm r27, r0, 0, 0, 0x1e /* 803825F8 0037F558 38 7B 00 00 */ addi r3, r27, 0 /* 803825FC 0037F55C 4B FF C4 B5 */ bl DCFlushRange /* 80382600 0037F560 7F 63 DB 78 */ mr r3, r27 /* 80382604 0037F564 80 9E 00 04 */ lwz r4, 4(r30) /* 80382608 0037F568 4B FF C5 8D */ bl ICInvalidateRange lbl_8038260C: /* 8038260C 0037F56C 38 60 00 01 */ li r3, 1 lbl_80382610: /* 80382610 0037F570 BB 21 00 1C */ lmw r25, 0x1c(r1) /* 80382614 0037F574 80 01 00 3C */ lwz r0, 0x3c(r1) /* 80382618 0037F578 38 21 00 38 */ addi r1, r1, 0x38 /* 8038261C 0037F57C 7C 08 03 A6 */ mtlr r0 /* 80382620 0037F580 4E 80 00 20 */ blr .global OSUnlink OSUnlink: /* 80382624 0037F584 7C 08 02 A6 */ mflr r0 /* 80382628 0037F588 90 01 00 04 */ stw r0, 4(r1) /* 8038262C 0037F58C 94 21 FF E8 */ stwu r1, -0x18(r1) /* 80382630 0037F590 93 E1 00 14 */ stw r31, 0x14(r1) /* 80382634 0037F594 7C 7F 1B 78 */ mr r31, r3 /* 80382638 0037F598 93 C1 00 10 */ stw r30, 0x10(r1) /* 8038263C 0037F59C 80 83 00 04 */ lwz r4, 4(r3) /* 80382640 0037F5A0 80 A3 00 08 */ lwz r5, 8(r3) /* 80382644 0037F5A4 28 04 00 00 */ cmplwi r4, 0 /* 80382648 0037F5A8 40 82 00 10 */ bne lbl_80382658 /* 8038264C 0037F5AC 3C 60 80 00 */ lis r3, 0x800030CC@ha /* 80382650 0037F5B0 90 A3 30 CC */ stw r5, 0x800030CC@l(r3) /* 80382654 0037F5B4 48 00 00 08 */ b lbl_8038265C lbl_80382658: /* 80382658 0037F5B8 90 A4 00 08 */ stw r5, 8(r4) lbl_8038265C: /* 8038265C 0037F5BC 28 05 00 00 */ cmplwi r5, 0 /* 80382660 0037F5C0 40 82 00 10 */ bne lbl_80382670 /* 80382664 0037F5C4 3C 60 80 00 */ lis r3, 0x800030C8@ha /* 80382668 0037F5C8 90 83 30 C8 */ stw r4, 0x800030C8@l(r3) /* 8038266C 0037F5CC 48 00 00 08 */ b lbl_80382674 lbl_80382670: /* 80382670 0037F5D0 90 85 00 04 */ stw r4, 4(r5) lbl_80382674: /* 80382674 0037F5D4 3C 60 80 00 */ lis r3, 0x800030C8@ha /* 80382678 0037F5D8 83 C3 30 C8 */ lwz r30, 0x800030C8@l(r3) /* 8038267C 0037F5DC 48 00 00 14 */ b lbl_80382690 lbl_80382680: /* 80382680 0037F5E0 38 7F 00 00 */ addi r3, r31, 0 /* 80382684 0037F5E4 38 9E 00 00 */ addi r4, r30, 0 /* 80382688 0037F5E8 4B FF FD 65 */ bl Undo /* 8038268C 0037F5EC 83 DE 00 04 */ lwz r30, 4(r30) lbl_80382690: /* 80382690 0037F5F0 28 1E 00 00 */ cmplwi r30, 0 /* 80382694 0037F5F4 40 82 FF EC */ bne lbl_80382680 /* 80382698 0037F5F8 7F E3 FB 78 */ mr r3, r31 /* 8038269C 0037F5FC 4B FF F8 35 */ bl OSNotifyUnlink /* 803826A0 0037F600 3C 60 80 00 */ lis r3, 0x800030D0@ha /* 803826A4 0037F604 80 63 30 D0 */ lwz r3, 0x800030D0@l(r3) /* 803826A8 0037F608 28 03 00 00 */ cmplwi r3, 0 /* 803826AC 0037F60C 41 82 00 10 */ beq lbl_803826BC /* 803826B0 0037F610 80 1F 00 14 */ lwz r0, 0x14(r31) /* 803826B4 0037F614 7C 03 00 50 */ subf r0, r3, r0 /* 803826B8 0037F618 90 1F 00 14 */ stw r0, 0x14(r31) lbl_803826BC: /* 803826BC 0037F61C 88 1F 00 30 */ lbz r0, 0x30(r31) /* 803826C0 0037F620 28 00 00 00 */ cmplwi r0, 0 /* 803826C4 0037F624 41 82 00 20 */ beq lbl_803826E4 /* 803826C8 0037F628 80 9F 00 10 */ lwz r4, 0x10(r31) /* 803826CC 0037F62C 54 03 18 38 */ slwi r3, r0, 3 /* 803826D0 0037F630 80 1F 00 34 */ lwz r0, 0x34(r31) /* 803826D4 0037F634 7C 64 18 2E */ lwzx r3, r4, r3 /* 803826D8 0037F638 54 63 00 3C */ rlwinm r3, r3, 0, 0, 0x1e /* 803826DC 0037F63C 7C 03 00 50 */ subf r0, r3, r0 /* 803826E0 0037F640 90 1F 00 34 */ stw r0, 0x34(r31) lbl_803826E4: /* 803826E4 0037F644 88 1F 00 31 */ lbz r0, 0x31(r31) /* 803826E8 0037F648 28 00 00 00 */ cmplwi r0, 0 /* 803826EC 0037F64C 41 82 00 20 */ beq lbl_8038270C /* 803826F0 0037F650 80 9F 00 10 */ lwz r4, 0x10(r31) /* 803826F4 0037F654 54 03 18 38 */ slwi r3, r0, 3 /* 803826F8 0037F658 80 1F 00 38 */ lwz r0, 0x38(r31) /* 803826FC 0037F65C 7C 64 18 2E */ lwzx r3, r4, r3 /* 80382700 0037F660 54 63 00 3C */ rlwinm r3, r3, 0, 0, 0x1e /* 80382704 0037F664 7C 03 00 50 */ subf r0, r3, r0 /* 80382708 0037F668 90 1F 00 38 */ stw r0, 0x38(r31) lbl_8038270C: /* 8038270C 0037F66C 88 1F 00 32 */ lbz r0, 0x32(r31) /* 80382710 0037F670 28 00 00 00 */ cmplwi r0, 0 /* 80382714 0037F674 41 82 00 20 */ beq lbl_80382734 /* 80382718 0037F678 80 9F 00 10 */ lwz r4, 0x10(r31) /* 8038271C 0037F67C 54 03 18 38 */ slwi r3, r0, 3 /* 80382720 0037F680 80 1F 00 3C */ lwz r0, 0x3c(r31) /* 80382724 0037F684 7C 64 18 2E */ lwzx r3, r4, r3 /* 80382728 0037F688 54 63 00 3C */ rlwinm r3, r3, 0, 0, 0x1e /* 8038272C 0037F68C 7C 03 00 50 */ subf r0, r3, r0 /* 80382730 0037F690 90 1F 00 3C */ stw r0, 0x3c(r31) lbl_80382734: /* 80382734 0037F694 80 9F 00 28 */ lwz r4, 0x28(r31) /* 80382738 0037F698 48 00 00 14 */ b lbl_8038274C lbl_8038273C: /* 8038273C 0037F69C 80 04 00 04 */ lwz r0, 4(r4) /* 80382740 0037F6A0 7C 1F 00 50 */ subf r0, r31, r0 /* 80382744 0037F6A4 90 04 00 04 */ stw r0, 4(r4) /* 80382748 0037F6A8 38 84 00 08 */ addi r4, r4, 8 lbl_8038274C: /* 8038274C 0037F6AC 80 7F 00 28 */ lwz r3, 0x28(r31) /* 80382750 0037F6B0 80 1F 00 2C */ lwz r0, 0x2c(r31) /* 80382754 0037F6B4 7C 03 02 14 */ add r0, r3, r0 /* 80382758 0037F6B8 7C 04 00 40 */ cmplw r4, r0 /* 8038275C 0037F6BC 41 80 FF E0 */ blt lbl_8038273C /* 80382760 0037F6C0 38 C0 00 01 */ li r6, 1 /* 80382764 0037F6C4 38 A0 00 08 */ li r5, 8 /* 80382768 0037F6C8 38 60 00 00 */ li r3, 0 /* 8038276C 0037F6CC 48 00 00 40 */ b lbl_803827AC lbl_80382770: /* 80382770 0037F6D0 88 1F 00 33 */ lbz r0, 0x33(r31) /* 80382774 0037F6D4 80 9F 00 10 */ lwz r4, 0x10(r31) /* 80382778 0037F6D8 7C 06 00 40 */ cmplw r6, r0 /* 8038277C 0037F6DC 7C 84 2A 14 */ add r4, r4, r5 /* 80382780 0037F6E0 40 82 00 10 */ bne lbl_80382790 /* 80382784 0037F6E4 98 7F 00 33 */ stb r3, 0x33(r31) /* 80382788 0037F6E8 90 64 00 00 */ stw r3, 0(r4) /* 8038278C 0037F6EC 48 00 00 18 */ b lbl_803827A4 lbl_80382790: /* 80382790 0037F6F0 80 04 00 00 */ lwz r0, 0(r4) /* 80382794 0037F6F4 28 00 00 00 */ cmplwi r0, 0 /* 80382798 0037F6F8 41 82 00 0C */ beq lbl_803827A4 /* 8038279C 0037F6FC 7C 1F 00 50 */ subf r0, r31, r0 /* 803827A0 0037F700 90 04 00 00 */ stw r0, 0(r4) lbl_803827A4: /* 803827A4 0037F704 38 A5 00 08 */ addi r5, r5, 8 /* 803827A8 0037F708 38 C6 00 01 */ addi r6, r6, 1 lbl_803827AC: /* 803827AC 0037F70C 80 1F 00 0C */ lwz r0, 0xc(r31) /* 803827B0 0037F710 7C 06 00 40 */ cmplw r6, r0 /* 803827B4 0037F714 41 80 FF BC */ blt lbl_80382770 /* 803827B8 0037F718 80 1F 00 24 */ lwz r0, 0x24(r31) /* 803827BC 0037F71C 38 60 00 01 */ li r3, 1 /* 803827C0 0037F720 7C 1F 00 50 */ subf r0, r31, r0 /* 803827C4 0037F724 90 1F 00 24 */ stw r0, 0x24(r31) /* 803827C8 0037F728 80 1F 00 28 */ lwz r0, 0x28(r31) /* 803827CC 0037F72C 7C 1F 00 50 */ subf r0, r31, r0 /* 803827D0 0037F730 90 1F 00 28 */ stw r0, 0x28(r31) /* 803827D4 0037F734 80 1F 00 10 */ lwz r0, 0x10(r31) /* 803827D8 0037F738 7C 1F 00 50 */ subf r0, r31, r0 /* 803827DC 0037F73C 90 1F 00 10 */ stw r0, 0x10(r31) /* 803827E0 0037F740 80 01 00 1C */ lwz r0, 0x1c(r1) /* 803827E4 0037F744 83 E1 00 14 */ lwz r31, 0x14(r1) /* 803827E8 0037F748 83 C1 00 10 */ lwz r30, 0x10(r1) /* 803827EC 0037F74C 38 21 00 18 */ addi r1, r1, 0x18 /* 803827F0 0037F750 7C 08 03 A6 */ mtlr r0 /* 803827F4 0037F754 4E 80 00 20 */ blr .global __OSModuleInit __OSModuleInit: /* 803827F8 0037F758 3C 80 80 00 */ lis r4, 0x800030CC@ha /* 803827FC 0037F75C 38 00 00 00 */ li r0, 0 /* 80382800 0037F760 90 04 30 CC */ stw r0, 0x800030CC@l(r4) /* 80382804 0037F764 90 04 30 C8 */ stw r0, 0x30c8(r4) /* 80382808 0037F768 90 04 30 D0 */ stw r0, 0x30d0(r4) /* 8038280C 0037F76C 4E 80 00 20 */ blr