.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global WDPi_SwitchActiveSession WDPi_SwitchActiveSession: /* 802EEFA0 002EAC00 80 03 00 04 */ lwz r0, 4(r3) /* 802EEFA4 002EAC04 38 C0 00 00 */ li r6, 0 /* 802EEFA8 002EAC08 2C 00 00 00 */ cmpwi r0, 0 /* 802EEFAC 002EAC0C 40 82 00 10 */ bne lbl_802EEFBC /* 802EEFB0 002EAC10 38 00 00 00 */ li r0, 0 /* 802EEFB4 002EAC14 90 03 00 10 */ stw r0, 0x10(r3) /* 802EEFB8 002EAC18 48 00 00 44 */ b lbl_802EEFFC lbl_802EEFBC: /* 802EEFBC 002EAC1C 80 83 00 10 */ lwz r4, 0x10(r3) /* 802EEFC0 002EAC20 2C 04 00 00 */ cmpwi r4, 0 /* 802EEFC4 002EAC24 41 82 00 14 */ beq lbl_802EEFD8 /* 802EEFC8 002EAC28 80 A4 00 00 */ lwz r5, 0(r4) /* 802EEFCC 002EAC2C 2C 05 00 00 */ cmpwi r5, 0 /* 802EEFD0 002EAC30 41 82 00 08 */ beq lbl_802EEFD8 /* 802EEFD4 002EAC34 48 00 00 08 */ b lbl_802EEFDC lbl_802EEFD8: /* 802EEFD8 002EAC38 7C 05 03 78 */ mr r5, r0 lbl_802EEFDC: /* 802EEFDC 002EAC3C 38 80 00 00 */ li r4, 0 /* 802EEFE0 002EAC40 90 A3 00 10 */ stw r5, 0x10(r3) /* 802EEFE4 002EAC44 38 00 00 01 */ li r0, 1 /* 802EEFE8 002EAC48 38 C0 00 01 */ li r6, 1 /* 802EEFEC 002EAC4C 98 83 00 16 */ stb r4, 0x16(r3) /* 802EEFF0 002EAC50 88 85 03 6A */ lbz r4, 0x36a(r5) /* 802EEFF4 002EAC54 98 83 00 17 */ stb r4, 0x17(r3) /* 802EEFF8 002EAC58 B0 03 00 14 */ sth r0, 0x14(r3) lbl_802EEFFC: /* 802EEFFC 002EAC5C 7C C3 33 78 */ mr r3, r6 /* 802EF000 002EAC60 4E 80 00 20 */ blr .global WDPi_UpdateStatus WDPi_UpdateStatus: /* 802EF004 002EAC64 1C C4 00 34 */ mulli r6, r4, 0x34 /* 802EF008 002EAC68 38 00 00 01 */ li r0, 1 /* 802EF00C 002EAC6C 7C 09 20 30 */ slw r9, r0, r4 /* 802EF010 002EAC70 7C E3 32 14 */ add r7, r3, r6 /* 802EF014 002EAC74 80 07 00 28 */ lwz r0, 0x28(r7) /* 802EF018 002EAC78 55 2A 04 3E */ clrlwi r10, r9, 0x10 /* 802EF01C 002EAC7C 80 C7 00 2C */ lwz r6, 0x2c(r7) /* 802EF020 002EAC80 2C 00 00 06 */ cmpwi r0, 6 /* 802EF024 002EAC84 41 82 00 50 */ beq lbl_802EF074 /* 802EF028 002EAC88 40 80 00 10 */ bge lbl_802EF038 /* 802EF02C 002EAC8C 2C 00 00 01 */ cmpwi r0, 1 /* 802EF030 002EAC90 41 82 00 14 */ beq lbl_802EF044 /* 802EF034 002EAC94 48 00 00 4C */ b lbl_802EF080 lbl_802EF038: /* 802EF038 002EAC98 2C 00 00 08 */ cmpwi r0, 8 /* 802EF03C 002EAC9C 40 80 00 44 */ bge lbl_802EF080 /* 802EF040 002EACA0 48 00 00 14 */ b lbl_802EF054 lbl_802EF044: /* 802EF044 002EACA4 A0 03 03 68 */ lhz r0, 0x368(r3) /* 802EF048 002EACA8 7C 00 50 78 */ andc r0, r0, r10 /* 802EF04C 002EACAC B0 03 03 68 */ sth r0, 0x368(r3) /* 802EF050 002EACB0 48 00 00 30 */ b lbl_802EF080 lbl_802EF054: /* 802EF054 002EACB4 A0 06 05 D4 */ lhz r0, 0x5d4(r6) /* 802EF058 002EACB8 7D 48 50 F8 */ nor r8, r10, r10 /* 802EF05C 002EACBC 7C 00 40 38 */ and r0, r0, r8 /* 802EF060 002EACC0 B0 06 05 D4 */ sth r0, 0x5d4(r6) /* 802EF064 002EACC4 A0 03 03 6A */ lhz r0, 0x36a(r3) /* 802EF068 002EACC8 7C 00 40 38 */ and r0, r0, r8 /* 802EF06C 002EACCC B0 03 03 6A */ sth r0, 0x36a(r3) /* 802EF070 002EACD0 48 00 00 10 */ b lbl_802EF080 lbl_802EF074: /* 802EF074 002EACD4 A0 03 03 6E */ lhz r0, 0x36e(r3) /* 802EF078 002EACD8 7C 00 50 78 */ andc r0, r0, r10 /* 802EF07C 002EACDC B0 03 03 6E */ sth r0, 0x36e(r3) lbl_802EF080: /* 802EF080 002EACE0 2C 05 00 05 */ cmpwi r5, 5 /* 802EF084 002EACE4 90 A7 00 28 */ stw r5, 0x28(r7) /* 802EF088 002EACE8 41 82 00 A8 */ beq lbl_802EF130 /* 802EF08C 002EACEC 40 80 00 1C */ bge lbl_802EF0A8 /* 802EF090 002EACF0 2C 05 00 01 */ cmpwi r5, 1 /* 802EF094 002EACF4 41 82 00 24 */ beq lbl_802EF0B8 /* 802EF098 002EACF8 41 80 00 98 */ blt lbl_802EF130 /* 802EF09C 002EACFC 2C 05 00 04 */ cmpwi r5, 4 /* 802EF0A0 002EAD00 40 80 00 6C */ bge lbl_802EF10C /* 802EF0A4 002EAD04 48 00 00 8C */ b lbl_802EF130 lbl_802EF0A8: /* 802EF0A8 002EAD08 2C 05 00 07 */ cmpwi r5, 7 /* 802EF0AC 002EAD0C 41 82 00 1C */ beq lbl_802EF0C8 /* 802EF0B0 002EAD10 40 80 00 80 */ bge lbl_802EF130 /* 802EF0B4 002EAD14 48 00 00 70 */ b lbl_802EF124 lbl_802EF0B8: /* 802EF0B8 002EAD18 A0 03 03 68 */ lhz r0, 0x368(r3) /* 802EF0BC 002EAD1C 7C 00 53 78 */ or r0, r0, r10 /* 802EF0C0 002EAD20 B0 03 03 68 */ sth r0, 0x368(r3) /* 802EF0C4 002EAD24 48 00 00 6C */ b lbl_802EF130 lbl_802EF0C8: /* 802EF0C8 002EAD28 A0 A6 05 D4 */ lhz r5, 0x5d4(r6) /* 802EF0CC 002EAD2C 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 802EF0D0 002EAD30 7C A5 53 78 */ or r5, r5, r10 /* 802EF0D4 002EAD34 B0 A6 05 D4 */ sth r5, 0x5d4(r6) /* 802EF0D8 002EAD38 A0 A3 03 6A */ lhz r5, 0x36a(r3) /* 802EF0DC 002EAD3C 7C A5 53 78 */ or r5, r5, r10 /* 802EF0E0 002EAD40 B0 A3 03 6A */ sth r5, 0x36a(r3) /* 802EF0E4 002EAD44 A0 A6 04 D8 */ lhz r5, 0x4d8(r6) /* 802EF0E8 002EAD48 7C A5 4B 78 */ or r5, r5, r9 /* 802EF0EC 002EAD4C B0 A6 04 D8 */ sth r5, 0x4d8(r6) /* 802EF0F0 002EAD50 A0 A6 04 DA */ lhz r5, 0x4da(r6) /* 802EF0F4 002EAD54 7C A5 4B 78 */ or r5, r5, r9 /* 802EF0F8 002EAD58 B0 A6 04 DA */ sth r5, 0x4da(r6) /* 802EF0FC 002EAD5C A0 A6 05 D2 */ lhz r5, 0x5d2(r6) /* 802EF100 002EAD60 7C A0 03 78 */ or r0, r5, r0 /* 802EF104 002EAD64 B0 06 05 D2 */ sth r0, 0x5d2(r6) /* 802EF108 002EAD68 48 00 00 28 */ b lbl_802EF130 lbl_802EF10C: /* 802EF10C 002EAD6C A0 A6 05 D0 */ lhz r5, 0x5d0(r6) /* 802EF110 002EAD70 38 00 00 00 */ li r0, 0 /* 802EF114 002EAD74 7C A5 4B 78 */ or r5, r5, r9 /* 802EF118 002EAD78 B0 A6 05 D0 */ sth r5, 0x5d0(r6) /* 802EF11C 002EAD7C B0 06 05 CC */ sth r0, 0x5cc(r6) /* 802EF120 002EAD80 48 00 00 10 */ b lbl_802EF130 lbl_802EF124: /* 802EF124 002EAD84 A0 03 03 6E */ lhz r0, 0x36e(r3) /* 802EF128 002EAD88 7C 00 53 78 */ or r0, r0, r10 /* 802EF12C 002EAD8C B0 03 03 6E */ sth r0, 0x36e(r3) lbl_802EF130: /* 802EF130 002EAD90 81 83 00 00 */ lwz r12, 0(r3) /* 802EF134 002EAD94 2C 0C 00 00 */ cmpwi r12, 0 /* 802EF138 002EAD98 4D 82 00 20 */ beqlr /* 802EF13C 002EAD9C 7C 85 23 78 */ mr r5, r4 /* 802EF140 002EADA0 38 80 00 00 */ li r4, 0 /* 802EF144 002EADA4 7D 89 03 A6 */ mtctr r12 /* 802EF148 002EADA8 4E 80 04 20 */ bctr /* 802EF14C 002EADAC 4E 80 00 20 */ blr .global WDP_InitParentContext WDP_InitParentContext: /* 802EF150 002EADB0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EF154 002EADB4 7C 08 02 A6 */ mflr r0 /* 802EF158 002EADB8 90 01 00 24 */ stw r0, 0x24(r1) /* 802EF15C 002EADBC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802EF160 002EADC0 3B E0 00 00 */ li r31, 0 /* 802EF164 002EADC4 93 C1 00 18 */ stw r30, 0x18(r1) /* 802EF168 002EADC8 93 A1 00 14 */ stw r29, 0x14(r1) /* 802EF16C 002EADCC 7C DD 33 78 */ mr r29, r6 /* 802EF170 002EADD0 93 81 00 10 */ stw r28, 0x10(r1) /* 802EF174 002EADD4 7C 7C 1B 78 */ mr r28, r3 /* 802EF178 002EADD8 90 83 00 00 */ stw r4, 0(r3) /* 802EF17C 002EADDC 38 80 00 14 */ li r4, 0x14 /* 802EF180 002EADE0 90 E3 00 24 */ stw r7, 0x24(r3) /* 802EF184 002EADE4 93 E3 00 04 */ stw r31, 4(r3) /* 802EF188 002EADE8 93 E3 00 10 */ stw r31, 0x10(r3) /* 802EF18C 002EADEC 93 E3 00 18 */ stw r31, 0x18(r3) /* 802EF190 002EADF0 93 E3 00 1C */ stw r31, 0x1c(r3) /* 802EF194 002EADF4 9B E3 00 17 */ stb r31, 0x17(r3) /* 802EF198 002EADF8 93 E3 00 20 */ stw r31, 0x20(r3) /* 802EF19C 002EADFC B3 E3 03 68 */ sth r31, 0x368(r3) /* 802EF1A0 002EAE00 B3 E3 03 6A */ sth r31, 0x36a(r3) /* 802EF1A4 002EAE04 B3 E3 03 6C */ sth r31, 0x36c(r3) /* 802EF1A8 002EAE08 B3 E3 03 6E */ sth r31, 0x36e(r3) /* 802EF1AC 002EAE0C B3 E3 03 70 */ sth r31, 0x370(r3) /* 802EF1B0 002EAE10 B3 E3 03 72 */ sth r31, 0x372(r3) /* 802EF1B4 002EAE14 93 E3 00 08 */ stw r31, 8(r3) /* 802EF1B8 002EAE18 38 63 00 36 */ addi r3, r3, 0x36 /* 802EF1BC 002EAE1C 4B FF F9 CD */ bl WDP_CopyString /* 802EF1C0 002EAE20 88 1C 00 34 */ lbz r0, 0x34(r28) /* 802EF1C4 002EAE24 53 A0 07 3E */ rlwimi r0, r29, 0, 0x1c, 0x1f /* 802EF1C8 002EAE28 98 7C 00 35 */ stb r3, 0x35(r28) /* 802EF1CC 002EAE2C 3B DC 00 5C */ addi r30, r28, 0x5c /* 802EF1D0 002EAE30 3B A0 00 01 */ li r29, 1 /* 802EF1D4 002EAE34 98 1C 00 34 */ stb r0, 0x34(r28) lbl_802EF1D8: /* 802EF1D8 002EAE38 7F 83 E3 78 */ mr r3, r28 /* 802EF1DC 002EAE3C 7F A4 EB 78 */ mr r4, r29 /* 802EF1E0 002EAE40 38 A0 00 00 */ li r5, 0 /* 802EF1E4 002EAE44 4B FF FE 21 */ bl WDPi_UpdateStatus /* 802EF1E8 002EAE48 93 FE 00 04 */ stw r31, 4(r30) /* 802EF1EC 002EAE4C 38 7E 00 08 */ addi r3, r30, 8 /* 802EF1F0 002EAE50 38 80 00 00 */ li r4, 0 /* 802EF1F4 002EAE54 38 A0 00 20 */ li r5, 0x20 /* 802EF1F8 002EAE58 48 00 4E 11 */ bl MI_CpuFill8 /* 802EF1FC 002EAE5C 38 7E 00 28 */ addi r3, r30, 0x28 /* 802EF200 002EAE60 38 80 00 00 */ li r4, 0 /* 802EF204 002EAE64 38 A0 00 04 */ li r5, 4 /* 802EF208 002EAE68 48 00 4E 01 */ bl MI_CpuFill8 /* 802EF20C 002EAE6C 93 FE 00 2C */ stw r31, 0x2c(r30) /* 802EF210 002EAE70 3B BD 00 01 */ addi r29, r29, 1 /* 802EF214 002EAE74 2C 1D 00 10 */ cmpwi r29, 0x10 /* 802EF218 002EAE78 93 FE 00 30 */ stw r31, 0x30(r30) /* 802EF21C 002EAE7C 3B DE 00 34 */ addi r30, r30, 0x34 /* 802EF220 002EAE80 41 80 FF B8 */ blt lbl_802EF1D8 /* 802EF224 002EAE84 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EF228 002EAE88 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EF22C 002EAE8C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802EF230 002EAE90 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802EF234 002EAE94 83 81 00 10 */ lwz r28, 0x10(r1) /* 802EF238 002EAE98 7C 08 03 A6 */ mtlr r0 /* 802EF23C 002EAE9C 38 21 00 20 */ addi r1, r1, 0x20 /* 802EF240 002EAEA0 4E 80 00 20 */ blr .global WDP_CallBeaconSendHook WDP_CallBeaconSendHook: /* 802EF244 002EAEA4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802EF248 002EAEA8 7C 08 02 A6 */ mflr r0 /* 802EF24C 002EAEAC 90 01 00 34 */ stw r0, 0x34(r1) /* 802EF250 002EAEB0 39 61 00 30 */ addi r11, r1, 0x30 /* 802EF254 002EAEB4 4B ED 7E C5 */ bl _savegpr_23 /* 802EF258 002EAEB8 7C 7A 1B 78 */ mr r26, r3 /* 802EF25C 002EAEBC 7C 9B 23 78 */ mr r27, r4 /* 802EF260 002EAEC0 3B E0 FF FF */ li r31, -1 /* 802EF264 002EAEC4 4B F7 F4 F9 */ bl OSDisableInterrupts /* 802EF268 002EAEC8 80 9A 00 08 */ lwz r4, 8(r26) /* 802EF26C 002EAECC 38 04 00 01 */ addi r0, r4, 1 /* 802EF270 002EAED0 2C 00 00 01 */ cmpwi r0, 1 /* 802EF274 002EAED4 90 1A 00 08 */ stw r0, 8(r26) /* 802EF278 002EAED8 40 82 00 08 */ bne lbl_802EF280 /* 802EF27C 002EAEDC 90 7A 00 0C */ stw r3, 0xc(r26) lbl_802EF280: /* 802EF280 002EAEE0 80 BA 00 04 */ lwz r5, 4(r26) /* 802EF284 002EAEE4 38 C0 00 00 */ li r6, 0 /* 802EF288 002EAEE8 38 00 00 03 */ li r0, 3 /* 802EF28C 002EAEEC 48 00 02 08 */ b lbl_802EF494 lbl_802EF290: /* 802EF290 002EAEF0 A0 65 04 DA */ lhz r3, 0x4da(r5) /* 802EF294 002EAEF4 2C 03 00 00 */ cmpwi r3, 0 /* 802EF298 002EAEF8 41 82 01 F8 */ beq lbl_802EF490 /* 802EF29C 002EAEFC 38 7A 00 34 */ addi r3, r26, 0x34 /* 802EF2A0 002EAF00 38 85 00 22 */ addi r4, r5, 0x22 /* 802EF2A4 002EAF04 7C 09 03 A6 */ mtctr r0 lbl_802EF2A8: /* 802EF2A8 002EAF08 A1 03 00 34 */ lhz r8, 0x34(r3) /* 802EF2AC 002EAF0C A0 E3 00 36 */ lhz r7, 0x36(r3) /* 802EF2B0 002EAF10 B1 04 03 64 */ sth r8, 0x364(r4) /* 802EF2B4 002EAF14 B0 E4 03 66 */ sth r7, 0x366(r4) /* 802EF2B8 002EAF18 A1 03 00 38 */ lhz r8, 0x38(r3) /* 802EF2BC 002EAF1C A0 E3 00 3A */ lhz r7, 0x3a(r3) /* 802EF2C0 002EAF20 B1 04 03 68 */ sth r8, 0x368(r4) /* 802EF2C4 002EAF24 B0 E4 03 6A */ sth r7, 0x36a(r4) /* 802EF2C8 002EAF28 A1 03 00 3C */ lhz r8, 0x3c(r3) /* 802EF2CC 002EAF2C A0 E3 00 3E */ lhz r7, 0x3e(r3) /* 802EF2D0 002EAF30 B1 04 03 6C */ sth r8, 0x36c(r4) /* 802EF2D4 002EAF34 B0 E4 03 6E */ sth r7, 0x36e(r4) /* 802EF2D8 002EAF38 A1 03 00 40 */ lhz r8, 0x40(r3) /* 802EF2DC 002EAF3C A0 E3 00 42 */ lhz r7, 0x42(r3) /* 802EF2E0 002EAF40 B1 04 03 70 */ sth r8, 0x370(r4) /* 802EF2E4 002EAF44 B0 E4 03 72 */ sth r7, 0x372(r4) /* 802EF2E8 002EAF48 A0 E3 00 44 */ lhz r7, 0x44(r3) /* 802EF2EC 002EAF4C B0 E4 03 74 */ sth r7, 0x374(r4) /* 802EF2F0 002EAF50 A0 E3 00 46 */ lhz r7, 0x46(r3) /* 802EF2F4 002EAF54 B0 E4 03 76 */ sth r7, 0x376(r4) /* 802EF2F8 002EAF58 A0 E3 00 48 */ lhz r7, 0x48(r3) /* 802EF2FC 002EAF5C B0 E4 03 78 */ sth r7, 0x378(r4) /* 802EF300 002EAF60 A1 03 00 68 */ lhz r8, 0x68(r3) /* 802EF304 002EAF64 A0 E3 00 6A */ lhz r7, 0x6a(r3) /* 802EF308 002EAF68 B1 04 03 7A */ sth r8, 0x37a(r4) /* 802EF30C 002EAF6C B0 E4 03 7C */ sth r7, 0x37c(r4) /* 802EF310 002EAF70 A1 03 00 6C */ lhz r8, 0x6c(r3) /* 802EF314 002EAF74 A0 E3 00 6E */ lhz r7, 0x6e(r3) /* 802EF318 002EAF78 B1 04 03 7E */ sth r8, 0x37e(r4) /* 802EF31C 002EAF7C B0 E4 03 80 */ sth r7, 0x380(r4) /* 802EF320 002EAF80 A1 03 00 70 */ lhz r8, 0x70(r3) /* 802EF324 002EAF84 A0 E3 00 72 */ lhz r7, 0x72(r3) /* 802EF328 002EAF88 B1 04 03 82 */ sth r8, 0x382(r4) /* 802EF32C 002EAF8C B0 E4 03 84 */ sth r7, 0x384(r4) /* 802EF330 002EAF90 A1 03 00 74 */ lhz r8, 0x74(r3) /* 802EF334 002EAF94 A0 E3 00 76 */ lhz r7, 0x76(r3) /* 802EF338 002EAF98 B1 04 03 86 */ sth r8, 0x386(r4) /* 802EF33C 002EAF9C B0 E4 03 88 */ sth r7, 0x388(r4) /* 802EF340 002EAFA0 A0 E3 00 78 */ lhz r7, 0x78(r3) /* 802EF344 002EAFA4 B0 E4 03 8A */ sth r7, 0x38a(r4) /* 802EF348 002EAFA8 A0 E3 00 7A */ lhz r7, 0x7a(r3) /* 802EF34C 002EAFAC B0 E4 03 8C */ sth r7, 0x38c(r4) /* 802EF350 002EAFB0 A0 E3 00 7C */ lhz r7, 0x7c(r3) /* 802EF354 002EAFB4 B0 E4 03 8E */ sth r7, 0x38e(r4) /* 802EF358 002EAFB8 A1 03 00 9C */ lhz r8, 0x9c(r3) /* 802EF35C 002EAFBC A0 E3 00 9E */ lhz r7, 0x9e(r3) /* 802EF360 002EAFC0 B1 04 03 90 */ sth r8, 0x390(r4) /* 802EF364 002EAFC4 B0 E4 03 92 */ sth r7, 0x392(r4) /* 802EF368 002EAFC8 A1 03 00 A0 */ lhz r8, 0xa0(r3) /* 802EF36C 002EAFCC A0 E3 00 A2 */ lhz r7, 0xa2(r3) /* 802EF370 002EAFD0 B1 04 03 94 */ sth r8, 0x394(r4) /* 802EF374 002EAFD4 B0 E4 03 96 */ sth r7, 0x396(r4) /* 802EF378 002EAFD8 A1 03 00 A4 */ lhz r8, 0xa4(r3) /* 802EF37C 002EAFDC A0 E3 00 A6 */ lhz r7, 0xa6(r3) /* 802EF380 002EAFE0 B1 04 03 98 */ sth r8, 0x398(r4) /* 802EF384 002EAFE4 B0 E4 03 9A */ sth r7, 0x39a(r4) /* 802EF388 002EAFE8 A1 03 00 A8 */ lhz r8, 0xa8(r3) /* 802EF38C 002EAFEC A0 E3 00 AA */ lhz r7, 0xaa(r3) /* 802EF390 002EAFF0 B1 04 03 9C */ sth r8, 0x39c(r4) /* 802EF394 002EAFF4 B0 E4 03 9E */ sth r7, 0x39e(r4) /* 802EF398 002EAFF8 A0 E3 00 AC */ lhz r7, 0xac(r3) /* 802EF39C 002EAFFC B0 E4 03 A0 */ sth r7, 0x3a0(r4) /* 802EF3A0 002EB000 A0 E3 00 AE */ lhz r7, 0xae(r3) /* 802EF3A4 002EB004 B0 E4 03 A2 */ sth r7, 0x3a2(r4) /* 802EF3A8 002EB008 A0 E3 00 B0 */ lhz r7, 0xb0(r3) /* 802EF3AC 002EB00C B0 E4 03 A4 */ sth r7, 0x3a4(r4) /* 802EF3B0 002EB010 A1 03 00 D0 */ lhz r8, 0xd0(r3) /* 802EF3B4 002EB014 A0 E3 00 D2 */ lhz r7, 0xd2(r3) /* 802EF3B8 002EB018 B1 04 03 A6 */ sth r8, 0x3a6(r4) /* 802EF3BC 002EB01C B0 E4 03 A8 */ sth r7, 0x3a8(r4) /* 802EF3C0 002EB020 A1 03 00 D4 */ lhz r8, 0xd4(r3) /* 802EF3C4 002EB024 A0 E3 00 D6 */ lhz r7, 0xd6(r3) /* 802EF3C8 002EB028 B1 04 03 AA */ sth r8, 0x3aa(r4) /* 802EF3CC 002EB02C B0 E4 03 AC */ sth r7, 0x3ac(r4) /* 802EF3D0 002EB030 A1 03 00 D8 */ lhz r8, 0xd8(r3) /* 802EF3D4 002EB034 A0 E3 00 DA */ lhz r7, 0xda(r3) /* 802EF3D8 002EB038 B1 04 03 AE */ sth r8, 0x3ae(r4) /* 802EF3DC 002EB03C B0 E4 03 B0 */ sth r7, 0x3b0(r4) /* 802EF3E0 002EB040 A1 03 00 DC */ lhz r8, 0xdc(r3) /* 802EF3E4 002EB044 A0 E3 00 DE */ lhz r7, 0xde(r3) /* 802EF3E8 002EB048 B1 04 03 B2 */ sth r8, 0x3b2(r4) /* 802EF3EC 002EB04C B0 E4 03 B4 */ sth r7, 0x3b4(r4) /* 802EF3F0 002EB050 A0 E3 00 E0 */ lhz r7, 0xe0(r3) /* 802EF3F4 002EB054 B0 E4 03 B6 */ sth r7, 0x3b6(r4) /* 802EF3F8 002EB058 A0 E3 00 E2 */ lhz r7, 0xe2(r3) /* 802EF3FC 002EB05C B0 E4 03 B8 */ sth r7, 0x3b8(r4) /* 802EF400 002EB060 A0 E3 00 E4 */ lhz r7, 0xe4(r3) /* 802EF404 002EB064 B0 E4 03 BA */ sth r7, 0x3ba(r4) /* 802EF408 002EB068 A1 03 01 04 */ lhz r8, 0x104(r3) /* 802EF40C 002EB06C A0 E3 01 06 */ lhz r7, 0x106(r3) /* 802EF410 002EB070 B1 04 03 BC */ sth r8, 0x3bc(r4) /* 802EF414 002EB074 B0 E4 03 BE */ sth r7, 0x3be(r4) /* 802EF418 002EB078 A1 03 01 08 */ lhz r8, 0x108(r3) /* 802EF41C 002EB07C A0 E3 01 0A */ lhz r7, 0x10a(r3) /* 802EF420 002EB080 B1 04 03 C0 */ sth r8, 0x3c0(r4) /* 802EF424 002EB084 B0 E4 03 C2 */ sth r7, 0x3c2(r4) /* 802EF428 002EB088 A1 03 01 0C */ lhz r8, 0x10c(r3) /* 802EF42C 002EB08C A0 E3 01 0E */ lhz r7, 0x10e(r3) /* 802EF430 002EB090 B1 04 03 C4 */ sth r8, 0x3c4(r4) /* 802EF434 002EB094 B0 E4 03 C6 */ sth r7, 0x3c6(r4) /* 802EF438 002EB098 A1 03 01 10 */ lhz r8, 0x110(r3) /* 802EF43C 002EB09C A0 E3 01 12 */ lhz r7, 0x112(r3) /* 802EF440 002EB0A0 B1 04 03 C8 */ sth r8, 0x3c8(r4) /* 802EF444 002EB0A4 B0 E4 03 CA */ sth r7, 0x3ca(r4) /* 802EF448 002EB0A8 A0 E3 01 14 */ lhz r7, 0x114(r3) /* 802EF44C 002EB0AC B0 E4 03 CC */ sth r7, 0x3cc(r4) /* 802EF450 002EB0B0 A0 E3 01 16 */ lhz r7, 0x116(r3) /* 802EF454 002EB0B4 B0 E4 03 CE */ sth r7, 0x3ce(r4) /* 802EF458 002EB0B8 A0 E3 01 18 */ lhz r7, 0x118(r3) /* 802EF45C 002EB0BC B0 E4 03 D0 */ sth r7, 0x3d0(r4) /* 802EF460 002EB0C0 38 63 01 04 */ addi r3, r3, 0x104 /* 802EF464 002EB0C4 38 84 00 6E */ addi r4, r4, 0x6e /* 802EF468 002EB0C8 42 00 FE 40 */ bdnz lbl_802EF2A8 /* 802EF46C 002EB0CC A0 65 04 D8 */ lhz r3, 0x4d8(r5) /* 802EF470 002EB0D0 60 63 00 01 */ ori r3, r3, 1 /* 802EF474 002EB0D4 B0 65 03 6C */ sth r3, 0x36c(r5) /* 802EF478 002EB0D8 A0 65 04 DA */ lhz r3, 0x4da(r5) /* 802EF47C 002EB0DC B0 65 03 6E */ sth r3, 0x36e(r5) /* 802EF480 002EB0E0 88 65 03 6A */ lbz r3, 0x36a(r5) /* 802EF484 002EB0E4 38 63 00 01 */ addi r3, r3, 1 /* 802EF488 002EB0E8 98 65 03 6A */ stb r3, 0x36a(r5) /* 802EF48C 002EB0EC B0 C5 04 DA */ sth r6, 0x4da(r5) lbl_802EF490: /* 802EF490 002EB0F0 80 A5 00 00 */ lwz r5, 0(r5) lbl_802EF494: /* 802EF494 002EB0F4 2C 05 00 00 */ cmpwi r5, 0 /* 802EF498 002EB0F8 40 82 FD F8 */ bne lbl_802EF290 /* 802EF49C 002EB0FC 80 1A 00 10 */ lwz r0, 0x10(r26) /* 802EF4A0 002EB100 2C 00 00 00 */ cmpwi r0, 0 /* 802EF4A4 002EB104 40 82 00 14 */ bne lbl_802EF4B8 /* 802EF4A8 002EB108 7F 43 D3 78 */ mr r3, r26 /* 802EF4AC 002EB10C 4B FF FA F5 */ bl WDPi_SwitchActiveSession /* 802EF4B0 002EB110 2C 03 00 00 */ cmpwi r3, 0 /* 802EF4B4 002EB114 41 82 02 84 */ beq lbl_802EF738 lbl_802EF4B8: /* 802EF4B8 002EB118 83 FA 00 10 */ lwz r31, 0x10(r26) /* 802EF4BC 002EB11C 3C 60 53 98 */ lis r3, 0x5397829D@ha /* 802EF4C0 002EB120 38 00 02 20 */ li r0, 0x220 /* 802EF4C4 002EB124 88 BA 00 16 */ lbz r5, 0x16(r26) /* 802EF4C8 002EB128 88 9F 03 68 */ lbz r4, 0x368(r31) /* 802EF4CC 002EB12C 38 63 82 9D */ addi r3, r3, 0x5397829D@l /* 802EF4D0 002EB130 3B DB 00 50 */ addi r30, r27, 0x50 /* 802EF4D4 002EB134 3B BF 00 0C */ addi r29, r31, 0xc /* 802EF4D8 002EB138 54 84 07 BE */ clrlwi r4, r4, 0x1e /* 802EF4DC 002EB13C 7C 84 00 34 */ cntlzw r4, r4 /* 802EF4E0 002EB140 54 84 DF FE */ rlwinm r4, r4, 0x1b, 0x1f, 0x1f /* 802EF4E4 002EB144 7C 84 00 D0 */ neg r4, r4 /* 802EF4E8 002EB148 7C 04 20 78 */ andc r4, r0, r4 /* 802EF4EC 002EB14C 20 C4 03 58 */ subfic r6, r4, 0x358 /* 802EF4F0 002EB150 38 06 00 61 */ addi r0, r6, 0x61 /* 802EF4F4 002EB154 7C 03 00 16 */ mulhwu r0, r3, r0 /* 802EF4F8 002EB158 54 18 D9 7E */ srwi r24, r0, 5 /* 802EF4FC 002EB15C 7F 00 2A 78 */ xor r0, r24, r5 /* 802EF500 002EB160 7C 00 00 34 */ cntlzw r0, r0 /* 802EF504 002EB164 7F 00 00 30 */ slw r0, r24, r0 /* 802EF508 002EB168 54 1C 0F FF */ rlwinm. r28, r0, 1, 0x1f, 0x1f /* 802EF50C 002EB16C 41 82 00 5C */ beq lbl_802EF568 /* 802EF510 002EB170 1C E5 00 62 */ mulli r7, r5, 0x62 /* 802EF514 002EB174 7C 7F 22 14 */ add r3, r31, r4 /* 802EF518 002EB178 38 9E 00 0E */ addi r4, r30, 0xe /* 802EF51C 002EB17C 38 63 00 0C */ addi r3, r3, 0xc /* 802EF520 002EB180 7C 07 30 50 */ subf r0, r7, r6 /* 802EF524 002EB184 3B 20 00 62 */ li r25, 0x62 /* 802EF528 002EB188 28 00 00 62 */ cmplwi r0, 0x62 /* 802EF52C 002EB18C 40 80 00 08 */ bge lbl_802EF534 /* 802EF530 002EB190 7C 19 03 78 */ mr r25, r0 lbl_802EF534: /* 802EF534 002EB194 7F 25 CB 78 */ mr r5, r25 /* 802EF538 002EB198 7C 63 3A 14 */ add r3, r3, r7 /* 802EF53C 002EB19C 48 00 4A D1 */ bl MI_CpuCopy8 /* 802EF540 002EB1A0 7C 7E CA 14 */ add r3, r30, r25 /* 802EF544 002EB1A4 20 B9 00 62 */ subfic r5, r25, 0x62 /* 802EF548 002EB1A8 38 63 00 0E */ addi r3, r3, 0xe /* 802EF54C 002EB1AC 38 80 00 00 */ li r4, 0 /* 802EF550 002EB1B0 48 00 4A B9 */ bl MI_CpuFill8 /* 802EF554 002EB1B4 9B 3E 00 0C */ stb r25, 0xc(r30) /* 802EF558 002EB1B8 88 1A 00 16 */ lbz r0, 0x16(r26) /* 802EF55C 002EB1BC 98 1E 00 0A */ stb r0, 0xa(r30) /* 802EF560 002EB1C0 9B 1E 00 0B */ stb r24, 0xb(r30) /* 802EF564 002EB1C4 48 00 01 38 */ b lbl_802EF69C lbl_802EF568: /* 802EF568 002EB1C8 88 7D 03 5E */ lbz r3, 0x35e(r29) /* 802EF56C 002EB1CC 88 1A 00 17 */ lbz r0, 0x17(r26) /* 802EF570 002EB1D0 7C 00 18 40 */ cmplw r0, r3 /* 802EF574 002EB1D4 41 82 00 10 */ beq lbl_802EF584 /* 802EF578 002EB1D8 38 00 00 01 */ li r0, 1 /* 802EF57C 002EB1DC 98 7A 00 17 */ stb r3, 0x17(r26) /* 802EF580 002EB1E0 B0 1A 00 14 */ sth r0, 0x14(r26) lbl_802EF584: /* 802EF584 002EB1E4 A0 7F 03 6C */ lhz r3, 0x36c(r31) /* 802EF588 002EB1E8 4B FF F4 05 */ bl MATH_CountPopulation /* 802EF58C 002EB1EC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 802EF590 002EB1F0 98 7E 00 0A */ stb r3, 0xa(r30) /* 802EF594 002EB1F4 7C 00 46 70 */ srawi r0, r0, 8 /* 802EF598 002EB1F8 98 1E 00 0B */ stb r0, 0xb(r30) /* 802EF59C 002EB1FC A0 7D 03 60 */ lhz r3, 0x360(r29) /* 802EF5A0 002EB200 7C 60 46 70 */ srawi r0, r3, 8 /* 802EF5A4 002EB204 98 7E 00 0C */ stb r3, 0xc(r30) /* 802EF5A8 002EB208 98 1E 00 0D */ stb r0, 0xd(r30) /* 802EF5AC 002EB20C A0 7D 03 62 */ lhz r3, 0x362(r29) /* 802EF5B0 002EB210 7C 60 46 70 */ srawi r0, r3, 8 /* 802EF5B4 002EB214 98 7E 00 0E */ stb r3, 0xe(r30) /* 802EF5B8 002EB218 98 1E 00 0F */ stb r0, 0xf(r30) /* 802EF5BC 002EB21C 81 9A 00 00 */ lwz r12, 0(r26) /* 802EF5C0 002EB220 2C 0C 00 00 */ cmpwi r12, 0 /* 802EF5C4 002EB224 41 82 00 18 */ beq lbl_802EF5DC /* 802EF5C8 002EB228 7F 43 D3 78 */ mr r3, r26 /* 802EF5CC 002EB22C 7F E5 FB 78 */ mr r5, r31 /* 802EF5D0 002EB230 38 80 00 02 */ li r4, 2 /* 802EF5D4 002EB234 7D 89 03 A6 */ mtctr r12 /* 802EF5D8 002EB238 4E 80 04 21 */ bctrl lbl_802EF5DC: /* 802EF5DC 002EB23C 38 7D 04 C4 */ addi r3, r29, 0x4c4 /* 802EF5E0 002EB240 38 9E 00 68 */ addi r4, r30, 0x68 /* 802EF5E4 002EB244 38 A0 00 08 */ li r5, 8 /* 802EF5E8 002EB248 48 00 4A 25 */ bl MI_CpuCopy8 /* 802EF5EC 002EB24C 81 9A 00 00 */ lwz r12, 0(r26) /* 802EF5F0 002EB250 2C 0C 00 00 */ cmpwi r12, 0 /* 802EF5F4 002EB254 41 82 00 18 */ beq lbl_802EF60C /* 802EF5F8 002EB258 7F 43 D3 78 */ mr r3, r26 /* 802EF5FC 002EB25C 7F E5 FB 78 */ mr r5, r31 /* 802EF600 002EB260 38 80 00 03 */ li r4, 3 /* 802EF604 002EB264 7D 89 03 A6 */ mtctr r12 /* 802EF608 002EB268 4E 80 04 21 */ bctrl lbl_802EF60C: /* 802EF60C 002EB26C A0 7A 00 14 */ lhz r3, 0x14(r26) /* 802EF610 002EB270 3B FE 00 10 */ addi r31, r30, 0x10 /* 802EF614 002EB274 A0 1D 03 60 */ lhz r0, 0x360(r29) /* 802EF618 002EB278 3B 60 00 00 */ li r27, 0 /* 802EF61C 002EB27C 3B 20 00 01 */ li r25, 1 /* 802EF620 002EB280 7C 60 02 78 */ xor r0, r3, r0 /* 802EF624 002EB284 54 17 00 3C */ rlwinm r23, r0, 0, 0, 0x1e /* 802EF628 002EB288 48 00 00 48 */ b lbl_802EF670 lbl_802EF62C: /* 802EF62C 002EB28C 38 17 FF FF */ addi r0, r23, -1 /* 802EF630 002EB290 7F E4 FB 78 */ mr r4, r31 /* 802EF634 002EB294 7C 00 B8 78 */ andc r0, r0, r23 /* 802EF638 002EB298 38 A0 00 16 */ li r5, 0x16 /* 802EF63C 002EB29C 7C 00 00 34 */ cntlzw r0, r0 /* 802EF640 002EB2A0 23 00 00 20 */ subfic r24, r0, 0x20 /* 802EF644 002EB2A4 1C 18 00 16 */ mulli r0, r24, 0x16 /* 802EF648 002EB2A8 7C 7D 02 14 */ add r3, r29, r0 /* 802EF64C 002EB2AC 38 63 03 64 */ addi r3, r3, 0x364 /* 802EF650 002EB2B0 48 00 49 BD */ bl MI_CpuCopy8 /* 802EF654 002EB2B4 A0 1A 00 14 */ lhz r0, 0x14(r26) /* 802EF658 002EB2B8 7F 23 C0 30 */ slw r3, r25, r24 /* 802EF65C 002EB2BC 7E F7 18 78 */ andc r23, r23, r3 /* 802EF660 002EB2C0 3B FF 00 16 */ addi r31, r31, 0x16 /* 802EF664 002EB2C4 7C 00 1B 78 */ or r0, r0, r3 /* 802EF668 002EB2C8 3B 7B 00 01 */ addi r27, r27, 1 /* 802EF66C 002EB2CC B0 1A 00 14 */ sth r0, 0x14(r26) lbl_802EF670: /* 802EF670 002EB2D0 2C 1B 00 04 */ cmpwi r27, 4 /* 802EF674 002EB2D4 40 80 00 0C */ bge lbl_802EF680 /* 802EF678 002EB2D8 2C 17 00 00 */ cmpwi r23, 0 /* 802EF67C 002EB2DC 40 82 FF B0 */ bne lbl_802EF62C lbl_802EF680: /* 802EF680 002EB2E0 1C 7B 00 16 */ mulli r3, r27, 0x16 /* 802EF684 002EB2E4 20 1B 00 04 */ subfic r0, r27, 4 /* 802EF688 002EB2E8 38 80 00 00 */ li r4, 0 /* 802EF68C 002EB2EC 7C 7E 1A 14 */ add r3, r30, r3 /* 802EF690 002EB2F0 1C A0 00 16 */ mulli r5, r0, 0x16 /* 802EF694 002EB2F4 38 63 00 10 */ addi r3, r3, 0x10 /* 802EF698 002EB2F8 48 00 49 71 */ bl MI_CpuFill8 lbl_802EF69C: /* 802EF69C 002EB2FC 88 7D 03 58 */ lbz r3, 0x358(r29) /* 802EF6A0 002EB300 2C 1C 00 00 */ cmpwi r28, 0 /* 802EF6A4 002EB304 88 1D 03 59 */ lbz r0, 0x359(r29) /* 802EF6A8 002EB308 98 7E 00 00 */ stb r3, 0(r30) /* 802EF6AC 002EB30C 98 1E 00 01 */ stb r0, 1(r30) /* 802EF6B0 002EB310 88 7D 03 5A */ lbz r3, 0x35a(r29) /* 802EF6B4 002EB314 88 1D 03 5B */ lbz r0, 0x35b(r29) /* 802EF6B8 002EB318 98 7E 00 02 */ stb r3, 2(r30) /* 802EF6BC 002EB31C 98 1E 00 03 */ stb r0, 3(r30) /* 802EF6C0 002EB320 88 9D 03 5C */ lbz r4, 0x35c(r29) /* 802EF6C4 002EB324 88 1D 03 5D */ lbz r0, 0x35d(r29) /* 802EF6C8 002EB328 98 9E 00 04 */ stb r4, 4(r30) /* 802EF6CC 002EB32C 98 1E 00 05 */ stb r0, 5(r30) /* 802EF6D0 002EB330 88 7D 03 5E */ lbz r3, 0x35e(r29) /* 802EF6D4 002EB334 88 1D 03 5F */ lbz r0, 0x35f(r29) /* 802EF6D8 002EB338 98 7E 00 06 */ stb r3, 6(r30) /* 802EF6DC 002EB33C 98 1E 00 07 */ stb r0, 7(r30) /* 802EF6E0 002EB340 40 82 00 10 */ bne lbl_802EF6F0 /* 802EF6E4 002EB344 38 00 00 02 */ li r0, 2 /* 802EF6E8 002EB348 50 04 07 BE */ rlwimi r4, r0, 0, 0x1e, 0x1f /* 802EF6EC 002EB34C 98 9E 00 04 */ stb r4, 4(r30) lbl_802EF6F0: /* 802EF6F0 002EB350 88 9A 00 16 */ lbz r4, 0x16(r26) /* 802EF6F4 002EB354 38 7E 00 0A */ addi r3, r30, 0xa /* 802EF6F8 002EB358 98 9E 00 07 */ stb r4, 7(r30) /* 802EF6FC 002EB35C 38 04 00 01 */ addi r0, r4, 1 /* 802EF700 002EB360 98 1A 00 16 */ stb r0, 0x16(r26) /* 802EF704 002EB364 4B FF F2 E1 */ bl WDPi_GetBeaconCheckSum /* 802EF708 002EB368 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f /* 802EF70C 002EB36C 2C 1C 00 00 */ cmpwi r28, 0 /* 802EF710 002EB370 98 7E 00 08 */ stb r3, 8(r30) /* 802EF714 002EB374 98 1E 00 09 */ stb r0, 9(r30) /* 802EF718 002EB378 40 82 00 1C */ bne lbl_802EF734 /* 802EF71C 002EB37C A0 7A 00 14 */ lhz r3, 0x14(r26) /* 802EF720 002EB380 A0 1D 03 60 */ lhz r0, 0x360(r29) /* 802EF724 002EB384 7C 03 00 40 */ cmplw r3, r0 /* 802EF728 002EB388 40 82 00 0C */ bne lbl_802EF734 /* 802EF72C 002EB38C 7F 43 D3 78 */ mr r3, r26 /* 802EF730 002EB390 4B FF F8 71 */ bl WDPi_SwitchActiveSession lbl_802EF734: /* 802EF734 002EB394 3B E0 00 70 */ li r31, 0x70 lbl_802EF738: /* 802EF738 002EB398 80 1A 00 08 */ lwz r0, 8(r26) /* 802EF73C 002EB39C 34 00 FF FF */ addic. r0, r0, -1 /* 802EF740 002EB3A0 90 1A 00 08 */ stw r0, 8(r26) /* 802EF744 002EB3A4 40 82 00 0C */ bne lbl_802EF750 /* 802EF748 002EB3A8 80 7A 00 0C */ lwz r3, 0xc(r26) /* 802EF74C 002EB3AC 4B F7 F0 39 */ bl OSRestoreInterrupts lbl_802EF750: /* 802EF750 002EB3B0 39 61 00 30 */ addi r11, r1, 0x30 /* 802EF754 002EB3B4 7F E3 FB 78 */ mr r3, r31 /* 802EF758 002EB3B8 4B ED 7A 0D */ bl _restgpr_23 /* 802EF75C 002EB3BC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EF760 002EB3C0 7C 08 03 A6 */ mtlr r0 /* 802EF764 002EB3C4 38 21 00 30 */ addi r1, r1, 0x30 /* 802EF768 002EB3C8 4E 80 00 20 */ blr .global WDP_CallParentConnectedHook WDP_CallParentConnectedHook: /* 802EF76C 002EB3CC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EF770 002EB3D0 7C 08 02 A6 */ mflr r0 /* 802EF774 002EB3D4 90 01 00 24 */ stw r0, 0x24(r1) /* 802EF778 002EB3D8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802EF77C 002EB3DC 93 C1 00 18 */ stw r30, 0x18(r1) /* 802EF780 002EB3E0 93 A1 00 14 */ stw r29, 0x14(r1) /* 802EF784 002EB3E4 7C 9D 23 78 */ mr r29, r4 /* 802EF788 002EB3E8 93 81 00 10 */ stw r28, 0x10(r1) /* 802EF78C 002EB3EC 7C 7C 1B 78 */ mr r28, r3 /* 802EF790 002EB3F0 4B F7 EF CD */ bl OSDisableInterrupts /* 802EF794 002EB3F4 80 9C 00 08 */ lwz r4, 8(r28) /* 802EF798 002EB3F8 38 04 00 01 */ addi r0, r4, 1 /* 802EF79C 002EB3FC 2C 00 00 01 */ cmpwi r0, 1 /* 802EF7A0 002EB400 90 1C 00 08 */ stw r0, 8(r28) /* 802EF7A4 002EB404 40 82 00 08 */ bne lbl_802EF7AC /* 802EF7A8 002EB408 90 7C 00 0C */ stw r3, 0xc(r28) lbl_802EF7AC: /* 802EF7AC 002EB40C 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 802EF7B0 002EB410 7F 83 E3 78 */ mr r3, r28 /* 802EF7B4 002EB414 7F A4 EB 78 */ mr r4, r29 /* 802EF7B8 002EB418 38 A0 00 00 */ li r5, 0 /* 802EF7BC 002EB41C 7F DC 02 14 */ add r30, r28, r0 /* 802EF7C0 002EB420 4B FF F8 45 */ bl WDPi_UpdateStatus /* 802EF7C4 002EB424 3B E0 00 00 */ li r31, 0 /* 802EF7C8 002EB428 38 7E 00 30 */ addi r3, r30, 0x30 /* 802EF7CC 002EB42C 93 FE 00 2C */ stw r31, 0x2c(r30) /* 802EF7D0 002EB430 38 80 00 00 */ li r4, 0 /* 802EF7D4 002EB434 38 A0 00 20 */ li r5, 0x20 /* 802EF7D8 002EB438 48 00 48 31 */ bl MI_CpuFill8 /* 802EF7DC 002EB43C 38 7E 00 50 */ addi r3, r30, 0x50 /* 802EF7E0 002EB440 38 80 00 00 */ li r4, 0 /* 802EF7E4 002EB444 38 A0 00 04 */ li r5, 4 /* 802EF7E8 002EB448 48 00 48 21 */ bl MI_CpuFill8 /* 802EF7EC 002EB44C 93 FE 00 54 */ stw r31, 0x54(r30) /* 802EF7F0 002EB450 38 00 00 01 */ li r0, 1 /* 802EF7F4 002EB454 7C 00 E8 30 */ slw r0, r0, r29 /* 802EF7F8 002EB458 7F 83 E3 78 */ mr r3, r28 /* 802EF7FC 002EB45C 93 FE 00 58 */ stw r31, 0x58(r30) /* 802EF800 002EB460 7F A4 EB 78 */ mr r4, r29 /* 802EF804 002EB464 38 A0 00 01 */ li r5, 1 /* 802EF808 002EB468 80 DC 00 20 */ lwz r6, 0x20(r28) /* 802EF80C 002EB46C 7C C0 03 78 */ or r0, r6, r0 /* 802EF810 002EB470 90 1C 00 20 */ stw r0, 0x20(r28) /* 802EF814 002EB474 4B FF F7 F1 */ bl WDPi_UpdateStatus /* 802EF818 002EB478 80 1C 00 08 */ lwz r0, 8(r28) /* 802EF81C 002EB47C 34 00 FF FF */ addic. r0, r0, -1 /* 802EF820 002EB480 90 1C 00 08 */ stw r0, 8(r28) /* 802EF824 002EB484 40 82 00 0C */ bne lbl_802EF830 /* 802EF828 002EB488 80 7C 00 0C */ lwz r3, 0xc(r28) /* 802EF82C 002EB48C 4B F7 EF 59 */ bl OSRestoreInterrupts lbl_802EF830: /* 802EF830 002EB490 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EF834 002EB494 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EF838 002EB498 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802EF83C 002EB49C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802EF840 002EB4A0 83 81 00 10 */ lwz r28, 0x10(r1) /* 802EF844 002EB4A4 7C 08 03 A6 */ mtlr r0 /* 802EF848 002EB4A8 38 21 00 20 */ addi r1, r1, 0x20 /* 802EF84C 002EB4AC 4E 80 00 20 */ blr .global WDP_CallParentDisconnectedHook WDP_CallParentDisconnectedHook: /* 802EF850 002EB4B0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EF854 002EB4B4 7C 08 02 A6 */ mflr r0 /* 802EF858 002EB4B8 90 01 00 24 */ stw r0, 0x24(r1) /* 802EF85C 002EB4BC 39 61 00 20 */ addi r11, r1, 0x20 /* 802EF860 002EB4C0 4B ED 78 C5 */ bl _savegpr_26 /* 802EF864 002EB4C4 1F C4 00 34 */ mulli r30, r4, 0x34 /* 802EF868 002EB4C8 38 00 00 01 */ li r0, 1 /* 802EF86C 002EB4CC 7C 7B 1B 78 */ mr r27, r3 /* 802EF870 002EB4D0 7C 9C 23 78 */ mr r28, r4 /* 802EF874 002EB4D4 7C 1D 20 30 */ slw r29, r0, r4 /* 802EF878 002EB4D8 7F E3 F2 14 */ add r31, r3, r30 /* 802EF87C 002EB4DC 4B F7 EE E1 */ bl OSDisableInterrupts /* 802EF880 002EB4E0 80 9B 00 08 */ lwz r4, 8(r27) /* 802EF884 002EB4E4 38 04 00 01 */ addi r0, r4, 1 /* 802EF888 002EB4E8 2C 00 00 01 */ cmpwi r0, 1 /* 802EF88C 002EB4EC 90 1B 00 08 */ stw r0, 8(r27) /* 802EF890 002EB4F0 40 82 00 08 */ bne lbl_802EF898 /* 802EF894 002EB4F4 90 7B 00 0C */ stw r3, 0xc(r27) lbl_802EF898: /* 802EF898 002EB4F8 A0 9B 03 6C */ lhz r4, 0x36c(r27) /* 802EF89C 002EB4FC 7F BA E8 F8 */ nor r26, r29, r29 /* 802EF8A0 002EB500 A0 1B 03 70 */ lhz r0, 0x370(r27) /* 802EF8A4 002EB504 38 7F 00 34 */ addi r3, r31, 0x34 /* 802EF8A8 002EB508 7C 85 D0 38 */ and r5, r4, r26 /* 802EF8AC 002EB50C 38 80 00 00 */ li r4, 0 /* 802EF8B0 002EB510 7C 00 D0 38 */ and r0, r0, r26 /* 802EF8B4 002EB514 B0 BB 03 6C */ sth r5, 0x36c(r27) /* 802EF8B8 002EB518 38 A0 00 16 */ li r5, 0x16 /* 802EF8BC 002EB51C B0 1B 03 70 */ sth r0, 0x370(r27) /* 802EF8C0 002EB520 48 00 47 49 */ bl MI_CpuFill8 /* 802EF8C4 002EB524 80 7F 00 2C */ lwz r3, 0x2c(r31) /* 802EF8C8 002EB528 2C 03 00 00 */ cmpwi r3, 0 /* 802EF8CC 002EB52C 41 82 00 34 */ beq lbl_802EF900 /* 802EF8D0 002EB530 A0 03 04 D8 */ lhz r0, 0x4d8(r3) /* 802EF8D4 002EB534 7C 00 D0 38 */ and r0, r0, r26 /* 802EF8D8 002EB538 B0 03 04 D8 */ sth r0, 0x4d8(r3) /* 802EF8DC 002EB53C A0 03 05 D2 */ lhz r0, 0x5d2(r3) /* 802EF8E0 002EB540 7C 00 D0 38 */ and r0, r0, r26 /* 802EF8E4 002EB544 B0 03 05 D2 */ sth r0, 0x5d2(r3) /* 802EF8E8 002EB548 A0 03 05 D0 */ lhz r0, 0x5d0(r3) /* 802EF8EC 002EB54C 7C 00 D0 38 */ and r0, r0, r26 /* 802EF8F0 002EB550 B0 03 05 D0 */ sth r0, 0x5d0(r3) /* 802EF8F4 002EB554 A0 03 04 DA */ lhz r0, 0x4da(r3) /* 802EF8F8 002EB558 7C 00 EB 78 */ or r0, r0, r29 /* 802EF8FC 002EB55C B0 03 04 DA */ sth r0, 0x4da(r3) lbl_802EF900: /* 802EF900 002EB560 7C 7B F2 14 */ add r3, r27, r30 /* 802EF904 002EB564 80 03 00 28 */ lwz r0, 0x28(r3) /* 802EF908 002EB568 2C 00 00 06 */ cmpwi r0, 6 /* 802EF90C 002EB56C 40 82 00 24 */ bne lbl_802EF930 /* 802EF910 002EB570 81 9B 00 00 */ lwz r12, 0(r27) /* 802EF914 002EB574 2C 0C 00 00 */ cmpwi r12, 0 /* 802EF918 002EB578 41 82 00 18 */ beq lbl_802EF930 /* 802EF91C 002EB57C 7F 63 DB 78 */ mr r3, r27 /* 802EF920 002EB580 7F 85 E3 78 */ mr r5, r28 /* 802EF924 002EB584 38 80 00 08 */ li r4, 8 /* 802EF928 002EB588 7D 89 03 A6 */ mtctr r12 /* 802EF92C 002EB58C 4E 80 04 21 */ bctrl lbl_802EF930: /* 802EF930 002EB590 7F 63 DB 78 */ mr r3, r27 /* 802EF934 002EB594 7F 84 E3 78 */ mr r4, r28 /* 802EF938 002EB598 38 A0 00 00 */ li r5, 0 /* 802EF93C 002EB59C 4B FF F6 C9 */ bl WDPi_UpdateStatus /* 802EF940 002EB5A0 3B 80 00 00 */ li r28, 0 /* 802EF944 002EB5A4 38 7F 00 30 */ addi r3, r31, 0x30 /* 802EF948 002EB5A8 93 9F 00 2C */ stw r28, 0x2c(r31) /* 802EF94C 002EB5AC 38 80 00 00 */ li r4, 0 /* 802EF950 002EB5B0 38 A0 00 20 */ li r5, 0x20 /* 802EF954 002EB5B4 48 00 46 B5 */ bl MI_CpuFill8 /* 802EF958 002EB5B8 38 7F 00 50 */ addi r3, r31, 0x50 /* 802EF95C 002EB5BC 38 80 00 00 */ li r4, 0 /* 802EF960 002EB5C0 38 A0 00 04 */ li r5, 4 /* 802EF964 002EB5C4 48 00 46 A5 */ bl MI_CpuFill8 /* 802EF968 002EB5C8 93 9F 00 54 */ stw r28, 0x54(r31) /* 802EF96C 002EB5CC 93 9F 00 58 */ stw r28, 0x58(r31) /* 802EF970 002EB5D0 80 1B 00 08 */ lwz r0, 8(r27) /* 802EF974 002EB5D4 34 00 FF FF */ addic. r0, r0, -1 /* 802EF978 002EB5D8 90 1B 00 08 */ stw r0, 8(r27) /* 802EF97C 002EB5DC 40 82 00 0C */ bne lbl_802EF988 /* 802EF980 002EB5E0 80 7B 00 0C */ lwz r3, 0xc(r27) /* 802EF984 002EB5E4 4B F7 EE 01 */ bl OSRestoreInterrupts lbl_802EF988: /* 802EF988 002EB5E8 39 61 00 20 */ addi r11, r1, 0x20 /* 802EF98C 002EB5EC 4B ED 77 E5 */ bl _restgpr_26 /* 802EF990 002EB5F0 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EF994 002EB5F4 7C 08 03 A6 */ mtlr r0 /* 802EF998 002EB5F8 38 21 00 20 */ addi r1, r1, 0x20 /* 802EF99C 002EB5FC 4E 80 00 20 */ blr .global WDP_CallParentSendHook WDP_CallParentSendHook: /* 802EF9A0 002EB600 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802EF9A4 002EB604 7C 08 02 A6 */ mflr r0 /* 802EF9A8 002EB608 90 01 00 34 */ stw r0, 0x34(r1) /* 802EF9AC 002EB60C 39 61 00 30 */ addi r11, r1, 0x30 /* 802EF9B0 002EB610 4B ED 77 79 */ bl _savegpr_27 /* 802EF9B4 002EB614 83 E4 00 00 */ lwz r31, 0(r4) /* 802EF9B8 002EB618 7C 7C 1B 78 */ mr r28, r3 /* 802EF9BC 002EB61C 7C 9D 23 78 */ mr r29, r4 /* 802EF9C0 002EB620 4B F7 ED 9D */ bl OSDisableInterrupts /* 802EF9C4 002EB624 80 9C 00 08 */ lwz r4, 8(r28) /* 802EF9C8 002EB628 38 04 00 01 */ addi r0, r4, 1 /* 802EF9CC 002EB62C 2C 00 00 01 */ cmpwi r0, 1 /* 802EF9D0 002EB630 90 1C 00 08 */ stw r0, 8(r28) /* 802EF9D4 002EB634 40 82 00 08 */ bne lbl_802EF9DC /* 802EF9D8 002EB638 90 7C 00 0C */ stw r3, 0xc(r28) lbl_802EF9DC: /* 802EF9DC 002EB63C 38 00 00 00 */ li r0, 0 /* 802EF9E0 002EB640 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802EF9E4 002EB644 98 1F 00 00 */ stb r0, 0(r31) /* 802EF9E8 002EB648 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 802EF9EC 002EB64C 38 60 00 01 */ li r3, 1 /* 802EF9F0 002EB650 B0 7D 00 04 */ sth r3, 4(r29) /* 802EF9F4 002EB654 B0 1D 00 06 */ sth r0, 6(r29) /* 802EF9F8 002EB658 A0 1C 03 6E */ lhz r0, 0x36e(r28) /* 802EF9FC 002EB65C 2C 00 00 00 */ cmpwi r0, 0 /* 802EFA00 002EB660 41 82 00 18 */ beq lbl_802EFA18 /* 802EFA04 002EB664 38 00 00 05 */ li r0, 5 /* 802EFA08 002EB668 98 1F 00 00 */ stb r0, 0(r31) /* 802EFA0C 002EB66C A0 1C 03 6E */ lhz r0, 0x36e(r28) /* 802EFA10 002EB670 B0 1D 00 06 */ sth r0, 6(r29) /* 802EFA14 002EB674 48 00 02 58 */ b lbl_802EFC6C lbl_802EFA18: /* 802EFA18 002EB678 A0 1C 03 68 */ lhz r0, 0x368(r28) /* 802EFA1C 002EB67C 2C 00 00 00 */ cmpwi r0, 0 /* 802EFA20 002EB680 41 82 00 14 */ beq lbl_802EFA34 /* 802EFA24 002EB684 98 7F 00 00 */ stb r3, 0(r31) /* 802EFA28 002EB688 A0 1C 03 68 */ lhz r0, 0x368(r28) /* 802EFA2C 002EB68C B0 1D 00 06 */ sth r0, 6(r29) /* 802EFA30 002EB690 48 00 02 3C */ b lbl_802EFC6C lbl_802EFA34: /* 802EFA34 002EB694 A0 1C 03 70 */ lhz r0, 0x370(r28) /* 802EFA38 002EB698 2C 00 00 00 */ cmpwi r0, 0 /* 802EFA3C 002EB69C 41 82 00 18 */ beq lbl_802EFA54 /* 802EFA40 002EB6A0 38 00 00 06 */ li r0, 6 /* 802EFA44 002EB6A4 98 1F 00 00 */ stb r0, 0(r31) /* 802EFA48 002EB6A8 A0 1C 03 70 */ lhz r0, 0x370(r28) /* 802EFA4C 002EB6AC B0 1D 00 06 */ sth r0, 6(r29) /* 802EFA50 002EB6B0 48 00 02 1C */ b lbl_802EFC6C lbl_802EFA54: /* 802EFA54 002EB6B4 A0 1C 03 6C */ lhz r0, 0x36c(r28) /* 802EFA58 002EB6B8 2C 00 00 00 */ cmpwi r0, 0 /* 802EFA5C 002EB6BC 41 82 00 18 */ beq lbl_802EFA74 /* 802EFA60 002EB6C0 38 00 00 02 */ li r0, 2 /* 802EFA64 002EB6C4 98 1F 00 00 */ stb r0, 0(r31) /* 802EFA68 002EB6C8 A0 1C 03 6C */ lhz r0, 0x36c(r28) /* 802EFA6C 002EB6CC B0 1D 00 06 */ sth r0, 6(r29) /* 802EFA70 002EB6D0 48 00 01 FC */ b lbl_802EFC6C lbl_802EFA74: /* 802EFA74 002EB6D4 A0 BC 03 6A */ lhz r5, 0x36a(r28) /* 802EFA78 002EB6D8 2C 05 00 00 */ cmpwi r5, 0 /* 802EFA7C 002EB6DC 41 82 00 C0 */ beq lbl_802EFB3C /* 802EFA80 002EB6E0 83 DC 00 18 */ lwz r30, 0x18(r28) /* 802EFA84 002EB6E4 2C 1E 00 00 */ cmpwi r30, 0 /* 802EFA88 002EB6E8 41 82 00 08 */ beq lbl_802EFA90 /* 802EFA8C 002EB6EC 48 00 00 08 */ b lbl_802EFA94 lbl_802EFA90: /* 802EFA90 002EB6F0 83 DC 00 04 */ lwz r30, 4(r28) lbl_802EFA94: /* 802EFA94 002EB6F4 38 00 00 0F */ li r0, 0xf /* 802EFA98 002EB6F8 38 9C 00 5C */ addi r4, r28, 0x5c /* 802EFA9C 002EB6FC 38 E0 00 00 */ li r7, 0 /* 802EFAA0 002EB700 38 C0 00 01 */ li r6, 1 /* 802EFAA4 002EB704 38 60 00 01 */ li r3, 1 /* 802EFAA8 002EB708 7C 09 03 A6 */ mtctr r0 lbl_802EFAAC: /* 802EFAAC 002EB70C 7C 60 30 30 */ slw r0, r3, r6 /* 802EFAB0 002EB710 7C A0 00 39 */ and. r0, r5, r0 /* 802EFAB4 002EB714 41 82 00 14 */ beq lbl_802EFAC8 /* 802EFAB8 002EB718 88 04 00 24 */ lbz r0, 0x24(r4) /* 802EFABC 002EB71C 38 60 00 01 */ li r3, 1 /* 802EFAC0 002EB720 7C 67 00 30 */ slw r7, r3, r0 /* 802EFAC4 002EB724 48 00 00 10 */ b lbl_802EFAD4 lbl_802EFAC8: /* 802EFAC8 002EB728 38 84 00 34 */ addi r4, r4, 0x34 /* 802EFACC 002EB72C 38 C6 00 01 */ addi r6, r6, 1 /* 802EFAD0 002EB730 42 00 FF DC */ bdnz lbl_802EFAAC lbl_802EFAD4: /* 802EFAD4 002EB734 2C 1E 00 00 */ cmpwi r30, 0 /* 802EFAD8 002EB738 41 82 01 94 */ beq lbl_802EFC6C /* 802EFADC 002EB73C 38 60 00 01 */ li r3, 1 lbl_802EFAE0: /* 802EFAE0 002EB740 83 DE 00 00 */ lwz r30, 0(r30) /* 802EFAE4 002EB744 2C 1E 00 00 */ cmpwi r30, 0 /* 802EFAE8 002EB748 41 82 00 08 */ beq lbl_802EFAF0 /* 802EFAEC 002EB74C 48 00 00 08 */ b lbl_802EFAF4 lbl_802EFAF0: /* 802EFAF0 002EB750 83 DC 00 04 */ lwz r30, 4(r28) lbl_802EFAF4: /* 802EFAF4 002EB754 88 1E 03 68 */ lbz r0, 0x368(r30) /* 802EFAF8 002EB758 54 00 F6 BE */ rlwinm r0, r0, 0x1e, 0x1a, 0x1f /* 802EFAFC 002EB75C 7C 60 00 30 */ slw r0, r3, r0 /* 802EFB00 002EB760 7C E0 00 39 */ and. r0, r7, r0 /* 802EFB04 002EB764 41 82 FF DC */ beq lbl_802EFAE0 /* 802EFB08 002EB768 93 DC 00 18 */ stw r30, 0x18(r28) /* 802EFB0C 002EB76C 38 00 00 03 */ li r0, 3 /* 802EFB10 002EB770 38 7E 04 E8 */ addi r3, r30, 0x4e8 /* 802EFB14 002EB774 38 9F 00 01 */ addi r4, r31, 1 /* 802EFB18 002EB778 98 1F 00 00 */ stb r0, 0(r31) /* 802EFB1C 002EB77C 38 A0 00 E4 */ li r5, 0xe4 /* 802EFB20 002EB780 48 00 44 ED */ bl MI_CpuCopy8 /* 802EFB24 002EB784 A0 7D 00 04 */ lhz r3, 4(r29) /* 802EFB28 002EB788 38 03 00 E4 */ addi r0, r3, 0xe4 /* 802EFB2C 002EB78C B0 1D 00 04 */ sth r0, 4(r29) /* 802EFB30 002EB790 A0 1E 05 D4 */ lhz r0, 0x5d4(r30) /* 802EFB34 002EB794 B0 1D 00 06 */ sth r0, 6(r29) /* 802EFB38 002EB798 48 00 01 34 */ b lbl_802EFC6C lbl_802EFB3C: /* 802EFB3C 002EB79C 80 1C 00 1C */ lwz r0, 0x1c(r28) /* 802EFB40 002EB7A0 2C 00 00 00 */ cmpwi r0, 0 /* 802EFB44 002EB7A4 41 82 00 08 */ beq lbl_802EFB4C /* 802EFB48 002EB7A8 48 00 00 08 */ b lbl_802EFB50 lbl_802EFB4C: /* 802EFB4C 002EB7AC 80 1C 00 04 */ lwz r0, 4(r28) lbl_802EFB50: /* 802EFB50 002EB7B0 2C 00 00 00 */ cmpwi r0, 0 /* 802EFB54 002EB7B4 7C 1E 03 78 */ mr r30, r0 /* 802EFB58 002EB7B8 41 82 01 14 */ beq lbl_802EFC6C lbl_802EFB5C: /* 802EFB5C 002EB7BC 83 DE 00 00 */ lwz r30, 0(r30) /* 802EFB60 002EB7C0 2C 1E 00 00 */ cmpwi r30, 0 /* 802EFB64 002EB7C4 41 82 00 08 */ beq lbl_802EFB6C /* 802EFB68 002EB7C8 48 00 00 08 */ b lbl_802EFB70 lbl_802EFB6C: /* 802EFB6C 002EB7CC 83 DC 00 04 */ lwz r30, 4(r28) lbl_802EFB70: /* 802EFB70 002EB7D0 A0 7E 05 D0 */ lhz r3, 0x5d0(r30) /* 802EFB74 002EB7D4 2C 03 00 00 */ cmpwi r3, 0 /* 802EFB78 002EB7D8 40 82 00 0C */ bne lbl_802EFB84 /* 802EFB7C 002EB7DC 7C 1E 00 40 */ cmplw r30, r0 /* 802EFB80 002EB7E0 40 82 FF DC */ bne lbl_802EFB5C lbl_802EFB84: /* 802EFB84 002EB7E4 2C 03 00 00 */ cmpwi r3, 0 /* 802EFB88 002EB7E8 41 82 00 E4 */ beq lbl_802EFC6C /* 802EFB8C 002EB7EC 93 DC 00 1C */ stw r30, 0x1c(r28) /* 802EFB90 002EB7F0 38 60 00 01 */ li r3, 1 /* 802EFB94 002EB7F4 A0 9C 03 72 */ lhz r4, 0x372(r28) /* 802EFB98 002EB7F8 88 1E 03 68 */ lbz r0, 0x368(r30) /* 802EFB9C 002EB7FC 54 00 F6 BE */ rlwinm r0, r0, 0x1e, 0x1a, 0x1f /* 802EFBA0 002EB800 7C 60 00 30 */ slw r0, r3, r0 /* 802EFBA4 002EB804 7C 80 00 39 */ and. r0, r4, r0 /* 802EFBA8 002EB808 41 82 00 44 */ beq lbl_802EFBEC /* 802EFBAC 002EB80C A0 1E 05 CE */ lhz r0, 0x5ce(r30) /* 802EFBB0 002EB810 A0 7E 05 CC */ lhz r3, 0x5cc(r30) /* 802EFBB4 002EB814 7C 80 18 51 */ subf. r4, r0, r3 /* 802EFBB8 002EB818 41 80 00 30 */ blt lbl_802EFBE8 /* 802EFBBC 002EB81C 2C 04 00 02 */ cmpwi r4, 2 /* 802EFBC0 002EB820 41 81 00 28 */ bgt lbl_802EFBE8 /* 802EFBC4 002EB824 38 03 00 01 */ addi r0, r3, 1 /* 802EFBC8 002EB828 B0 1E 05 CC */ sth r0, 0x5cc(r30) /* 802EFBCC 002EB82C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802EFBD0 002EB830 A0 1E 04 E0 */ lhz r0, 0x4e0(r30) /* 802EFBD4 002EB834 7C 03 00 40 */ cmplw r3, r0 /* 802EFBD8 002EB838 41 80 00 14 */ blt lbl_802EFBEC /* 802EFBDC 002EB83C A0 1E 05 CE */ lhz r0, 0x5ce(r30) /* 802EFBE0 002EB840 B0 1E 05 CC */ sth r0, 0x5cc(r30) /* 802EFBE4 002EB844 48 00 00 08 */ b lbl_802EFBEC lbl_802EFBE8: /* 802EFBE8 002EB848 B0 1E 05 CC */ sth r0, 0x5cc(r30) lbl_802EFBEC: /* 802EFBEC 002EB84C A3 7E 05 CC */ lhz r27, 0x5cc(r30) /* 802EFBF0 002EB850 38 7E 04 DC */ addi r3, r30, 0x4dc /* 802EFBF4 002EB854 38 A1 00 08 */ addi r5, r1, 8 /* 802EFBF8 002EB858 7F 64 DB 78 */ mr r4, r27 /* 802EFBFC 002EB85C 4B FF F2 CD */ bl WDPi_GetSegmentRegion /* 802EFC00 002EB860 2C 03 00 00 */ cmpwi r3, 0 /* 802EFC04 002EB864 41 82 00 68 */ beq lbl_802EFC6C /* 802EFC08 002EB868 81 9E 00 08 */ lwz r12, 8(r30) /* 802EFC0C 002EB86C 7F C3 F3 78 */ mr r3, r30 /* 802EFC10 002EB870 38 9F 00 05 */ addi r4, r31, 5 /* 802EFC14 002EB874 38 A1 00 08 */ addi r5, r1, 8 /* 802EFC18 002EB878 7D 89 03 A6 */ mtctr r12 /* 802EFC1C 002EB87C 4E 80 04 21 */ bctrl /* 802EFC20 002EB880 2C 03 00 00 */ cmpwi r3, 0 /* 802EFC24 002EB884 41 82 00 48 */ beq lbl_802EFC6C /* 802EFC28 002EB888 38 60 00 04 */ li r3, 4 /* 802EFC2C 002EB88C 57 60 C6 3E */ rlwinm r0, r27, 0x18, 0x18, 0x1f /* 802EFC30 002EB890 98 7F 00 00 */ stb r3, 0(r31) /* 802EFC34 002EB894 88 7E 03 68 */ lbz r3, 0x368(r30) /* 802EFC38 002EB898 54 63 F6 BE */ rlwinm r3, r3, 0x1e, 0x1a, 0x1f /* 802EFC3C 002EB89C 98 7F 00 01 */ stb r3, 1(r31) /* 802EFC40 002EB8A0 7C 63 46 70 */ srawi r3, r3, 8 /* 802EFC44 002EB8A4 98 7F 00 02 */ stb r3, 2(r31) /* 802EFC48 002EB8A8 9B 7F 00 03 */ stb r27, 3(r31) /* 802EFC4C 002EB8AC 98 1F 00 04 */ stb r0, 4(r31) /* 802EFC50 002EB8B0 A0 7D 00 04 */ lhz r3, 4(r29) /* 802EFC54 002EB8B4 80 01 00 10 */ lwz r0, 0x10(r1) /* 802EFC58 002EB8B8 7C 60 1A 14 */ add r3, r0, r3 /* 802EFC5C 002EB8BC 38 03 00 04 */ addi r0, r3, 4 /* 802EFC60 002EB8C0 B0 1D 00 04 */ sth r0, 4(r29) /* 802EFC64 002EB8C4 A0 1E 05 D0 */ lhz r0, 0x5d0(r30) /* 802EFC68 002EB8C8 B0 1D 00 06 */ sth r0, 6(r29) lbl_802EFC6C: /* 802EFC6C 002EB8CC A0 7D 00 04 */ lhz r3, 4(r29) /* 802EFC70 002EB8D0 38 00 00 00 */ li r0, 0 /* 802EFC74 002EB8D4 38 63 00 01 */ addi r3, r3, 1 /* 802EFC78 002EB8D8 54 63 04 3C */ rlwinm r3, r3, 0, 0x10, 0x1e /* 802EFC7C 002EB8DC B0 7D 00 04 */ sth r3, 4(r29) /* 802EFC80 002EB8E0 80 7C 00 04 */ lwz r3, 4(r28) /* 802EFC84 002EB8E4 48 00 00 0C */ b lbl_802EFC90 lbl_802EFC88: /* 802EFC88 002EB8E8 B0 03 05 CE */ sth r0, 0x5ce(r3) /* 802EFC8C 002EB8EC 80 63 00 00 */ lwz r3, 0(r3) lbl_802EFC90: /* 802EFC90 002EB8F0 2C 03 00 00 */ cmpwi r3, 0 /* 802EFC94 002EB8F4 40 82 FF F4 */ bne lbl_802EFC88 /* 802EFC98 002EB8F8 80 1C 00 08 */ lwz r0, 8(r28) /* 802EFC9C 002EB8FC 38 60 00 00 */ li r3, 0 /* 802EFCA0 002EB900 B0 7C 03 72 */ sth r3, 0x372(r28) /* 802EFCA4 002EB904 34 00 FF FF */ addic. r0, r0, -1 /* 802EFCA8 002EB908 90 1C 00 08 */ stw r0, 8(r28) /* 802EFCAC 002EB90C 40 82 00 0C */ bne lbl_802EFCB8 /* 802EFCB0 002EB910 80 7C 00 0C */ lwz r3, 0xc(r28) /* 802EFCB4 002EB914 4B F7 EA D1 */ bl OSRestoreInterrupts lbl_802EFCB8: /* 802EFCB8 002EB918 39 61 00 30 */ addi r11, r1, 0x30 /* 802EFCBC 002EB91C 4B ED 74 B9 */ bl _restgpr_27 /* 802EFCC0 002EB920 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EFCC4 002EB924 7C 08 03 A6 */ mtlr r0 /* 802EFCC8 002EB928 38 21 00 30 */ addi r1, r1, 0x30 /* 802EFCCC 002EB92C 4E 80 00 20 */ blr .global WDP_CallParentRecvHook WDP_CallParentRecvHook: /* 802EFCD0 002EB930 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802EFCD4 002EB934 7C 08 02 A6 */ mflr r0 /* 802EFCD8 002EB938 90 01 00 34 */ stw r0, 0x34(r1) /* 802EFCDC 002EB93C 39 61 00 30 */ addi r11, r1, 0x30 /* 802EFCE0 002EB940 4B ED 74 49 */ bl _savegpr_27 /* 802EFCE4 002EB944 1C 04 00 34 */ mulli r0, r4, 0x34 /* 802EFCE8 002EB948 83 85 00 00 */ lwz r28, 0(r5) /* 802EFCEC 002EB94C 7C 7D 1B 78 */ mr r29, r3 /* 802EFCF0 002EB950 7C 9E 23 78 */ mr r30, r4 /* 802EFCF4 002EB954 7F E3 02 14 */ add r31, r3, r0 /* 802EFCF8 002EB958 83 7F 00 28 */ lwz r27, 0x28(r31) /* 802EFCFC 002EB95C 4B F7 EA 61 */ bl OSDisableInterrupts /* 802EFD00 002EB960 80 9D 00 08 */ lwz r4, 8(r29) /* 802EFD04 002EB964 38 04 00 01 */ addi r0, r4, 1 /* 802EFD08 002EB968 2C 00 00 01 */ cmpwi r0, 1 /* 802EFD0C 002EB96C 90 1D 00 08 */ stw r0, 8(r29) /* 802EFD10 002EB970 40 82 00 08 */ bne lbl_802EFD18 /* 802EFD14 002EB974 90 7D 00 0C */ stw r3, 0xc(r29) lbl_802EFD18: /* 802EFD18 002EB978 88 1C 00 00 */ lbz r0, 0(r28) /* 802EFD1C 002EB97C 2C 00 00 09 */ cmpwi r0, 9 /* 802EFD20 002EB980 41 82 01 C4 */ beq lbl_802EFEE4 /* 802EFD24 002EB984 40 80 00 14 */ bge lbl_802EFD38 /* 802EFD28 002EB988 2C 00 00 07 */ cmpwi r0, 7 /* 802EFD2C 002EB98C 41 82 00 18 */ beq lbl_802EFD44 /* 802EFD30 002EB990 40 80 01 98 */ bge lbl_802EFEC8 /* 802EFD34 002EB994 48 00 02 68 */ b lbl_802EFF9C lbl_802EFD38: /* 802EFD38 002EB998 2C 00 00 0B */ cmpwi r0, 0xb /* 802EFD3C 002EB99C 40 80 02 60 */ bge lbl_802EFF9C /* 802EFD40 002EB9A0 48 00 02 24 */ b lbl_802EFF64 lbl_802EFD44: /* 802EFD44 002EB9A4 2C 1B 00 01 */ cmpwi r27, 1 /* 802EFD48 002EB9A8 40 82 02 54 */ bne lbl_802EFF9C /* 802EFD4C 002EB9AC 8B 7C 00 01 */ lbz r27, 1(r28) /* 802EFD50 002EB9B0 38 7F 00 50 */ addi r3, r31, 0x50 /* 802EFD54 002EB9B4 38 80 00 05 */ li r4, 5 /* 802EFD58 002EB9B8 7F 65 DB 78 */ mr r5, r27 /* 802EFD5C 002EB9BC 4B FF F1 F9 */ bl WDP_MergeBitset /* 802EFD60 002EB9C0 2C 03 00 00 */ cmpwi r3, 0 /* 802EFD64 002EB9C4 41 82 02 38 */ beq lbl_802EFF9C /* 802EFD68 002EB9C8 1C DB 00 06 */ mulli r6, r27, 6 /* 802EFD6C 002EB9CC 38 9F 00 30 */ addi r4, r31, 0x30 /* 802EFD70 002EB9D0 38 7C 00 02 */ addi r3, r28, 2 /* 802EFD74 002EB9D4 38 A0 00 06 */ li r5, 6 /* 802EFD78 002EB9D8 20 06 00 1E */ subfic r0, r6, 0x1e /* 802EFD7C 002EB9DC 28 00 00 06 */ cmplwi r0, 6 /* 802EFD80 002EB9E0 7C 84 32 14 */ add r4, r4, r6 /* 802EFD84 002EB9E4 40 80 00 08 */ bge lbl_802EFD8C /* 802EFD88 002EB9E8 7C 05 03 78 */ mr r5, r0 lbl_802EFD8C: /* 802EFD8C 002EB9EC 48 00 42 81 */ bl MI_CpuCopy8 /* 802EFD90 002EB9F0 80 7F 00 54 */ lwz r3, 0x54(r31) /* 802EFD94 002EB9F4 38 03 00 01 */ addi r0, r3, 1 /* 802EFD98 002EB9F8 28 00 00 05 */ cmplwi r0, 5 /* 802EFD9C 002EB9FC 90 1F 00 54 */ stw r0, 0x54(r31) /* 802EFDA0 002EBA00 41 80 01 FC */ blt lbl_802EFF9C /* 802EFDA4 002EBA04 83 7D 00 04 */ lwz r27, 4(r29) /* 802EFDA8 002EBA08 48 00 00 08 */ b lbl_802EFDB0 lbl_802EFDAC: /* 802EFDAC 002EBA0C 83 7B 00 00 */ lwz r27, 0(r27) lbl_802EFDB0: /* 802EFDB0 002EBA10 2C 1B 00 00 */ cmpwi r27, 0 /* 802EFDB4 002EBA14 41 82 00 30 */ beq lbl_802EFDE4 /* 802EFDB8 002EBA18 38 7B 03 64 */ addi r3, r27, 0x364 /* 802EFDBC 002EBA1C 38 9F 00 30 */ addi r4, r31, 0x30 /* 802EFDC0 002EBA20 38 A0 00 04 */ li r5, 4 /* 802EFDC4 002EBA24 4B FF ED 89 */ bl WDP_CompareMemory /* 802EFDC8 002EBA28 2C 03 00 00 */ cmpwi r3, 0 /* 802EFDCC 002EBA2C 40 82 FF E0 */ bne lbl_802EFDAC /* 802EFDD0 002EBA30 88 7B 03 68 */ lbz r3, 0x368(r27) /* 802EFDD4 002EBA34 88 1F 00 4C */ lbz r0, 0x4c(r31) /* 802EFDD8 002EBA38 54 63 F6 BE */ rlwinm r3, r3, 0x1e, 0x1a, 0x1f /* 802EFDDC 002EBA3C 7C 03 00 40 */ cmplw r3, r0 /* 802EFDE0 002EBA40 40 82 FF CC */ bne lbl_802EFDAC lbl_802EFDE4: /* 802EFDE4 002EBA44 93 7F 00 2C */ stw r27, 0x2c(r31) /* 802EFDE8 002EBA48 2C 1B 00 00 */ cmpwi r27, 0 /* 802EFDEC 002EBA4C 88 1F 00 34 */ lbz r0, 0x34(r31) /* 802EFDF0 002EBA50 53 C0 26 36 */ rlwimi r0, r30, 4, 0x18, 0x1b /* 802EFDF4 002EBA54 98 1F 00 34 */ stb r0, 0x34(r31) /* 802EFDF8 002EBA58 40 82 00 54 */ bne lbl_802EFE4C /* 802EFDFC 002EBA5C 38 60 00 05 */ li r3, 5 /* 802EFE00 002EBA60 38 00 00 01 */ li r0, 1 /* 802EFE04 002EBA64 93 C1 00 10 */ stw r30, 0x10(r1) /* 802EFE08 002EBA68 7C 04 F0 30 */ slw r4, r0, r30 /* 802EFE0C 002EBA6C 90 61 00 14 */ stw r3, 0x14(r1) /* 802EFE10 002EBA70 A0 7D 03 6C */ lhz r3, 0x36c(r29) /* 802EFE14 002EBA74 A0 1D 03 68 */ lhz r0, 0x368(r29) /* 802EFE18 002EBA78 81 9D 00 00 */ lwz r12, 0(r29) /* 802EFE1C 002EBA7C 7C 63 23 78 */ or r3, r3, r4 /* 802EFE20 002EBA80 7C 00 20 78 */ andc r0, r0, r4 /* 802EFE24 002EBA84 B0 7D 03 6C */ sth r3, 0x36c(r29) /* 802EFE28 002EBA88 2C 0C 00 00 */ cmpwi r12, 0 /* 802EFE2C 002EBA8C B0 1D 03 68 */ sth r0, 0x368(r29) /* 802EFE30 002EBA90 41 82 01 6C */ beq lbl_802EFF9C /* 802EFE34 002EBA94 7F A3 EB 78 */ mr r3, r29 /* 802EFE38 002EBA98 38 A1 00 10 */ addi r5, r1, 0x10 /* 802EFE3C 002EBA9C 38 80 00 01 */ li r4, 1 /* 802EFE40 002EBAA0 7D 89 03 A6 */ mtctr r12 /* 802EFE44 002EBAA4 4E 80 04 21 */ bctrl /* 802EFE48 002EBAA8 48 00 01 54 */ b lbl_802EFF9C lbl_802EFE4C: /* 802EFE4C 002EBAAC A0 7B 04 D8 */ lhz r3, 0x4d8(r27) /* 802EFE50 002EBAB0 4B FF EB 3D */ bl MATH_CountPopulation /* 802EFE54 002EBAB4 88 1B 02 42 */ lbz r0, 0x242(r27) /* 802EFE58 002EBAB8 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 802EFE5C 002EBABC 7C 03 00 40 */ cmplw r3, r0 /* 802EFE60 002EBAC0 41 80 00 54 */ blt lbl_802EFEB4 /* 802EFE64 002EBAC4 38 60 00 06 */ li r3, 6 /* 802EFE68 002EBAC8 38 00 00 01 */ li r0, 1 /* 802EFE6C 002EBACC 93 C1 00 08 */ stw r30, 8(r1) /* 802EFE70 002EBAD0 7C 04 F0 30 */ slw r4, r0, r30 /* 802EFE74 002EBAD4 90 61 00 0C */ stw r3, 0xc(r1) /* 802EFE78 002EBAD8 A0 7D 03 70 */ lhz r3, 0x370(r29) /* 802EFE7C 002EBADC A0 1D 03 68 */ lhz r0, 0x368(r29) /* 802EFE80 002EBAE0 81 9D 00 00 */ lwz r12, 0(r29) /* 802EFE84 002EBAE4 7C 63 23 78 */ or r3, r3, r4 /* 802EFE88 002EBAE8 7C 00 20 78 */ andc r0, r0, r4 /* 802EFE8C 002EBAEC B0 7D 03 70 */ sth r3, 0x370(r29) /* 802EFE90 002EBAF0 2C 0C 00 00 */ cmpwi r12, 0 /* 802EFE94 002EBAF4 B0 1D 03 68 */ sth r0, 0x368(r29) /* 802EFE98 002EBAF8 41 82 01 04 */ beq lbl_802EFF9C /* 802EFE9C 002EBAFC 7F A3 EB 78 */ mr r3, r29 /* 802EFEA0 002EBB00 38 A1 00 08 */ addi r5, r1, 8 /* 802EFEA4 002EBB04 38 80 00 01 */ li r4, 1 /* 802EFEA8 002EBB08 7D 89 03 A6 */ mtctr r12 /* 802EFEAC 002EBB0C 4E 80 04 21 */ bctrl /* 802EFEB0 002EBB10 48 00 00 EC */ b lbl_802EFF9C lbl_802EFEB4: /* 802EFEB4 002EBB14 7F A3 EB 78 */ mr r3, r29 /* 802EFEB8 002EBB18 7F C4 F3 78 */ mr r4, r30 /* 802EFEBC 002EBB1C 38 A0 00 02 */ li r5, 2 /* 802EFEC0 002EBB20 4B FF F1 45 */ bl WDPi_UpdateStatus /* 802EFEC4 002EBB24 48 00 00 D8 */ b lbl_802EFF9C lbl_802EFEC8: /* 802EFEC8 002EBB28 2C 1B 00 07 */ cmpwi r27, 7 /* 802EFECC 002EBB2C 40 82 00 D0 */ bne lbl_802EFF9C /* 802EFED0 002EBB30 7F A3 EB 78 */ mr r3, r29 /* 802EFED4 002EBB34 7F C4 F3 78 */ mr r4, r30 /* 802EFED8 002EBB38 38 A0 00 03 */ li r5, 3 /* 802EFEDC 002EBB3C 4B FF F1 29 */ bl WDPi_UpdateStatus /* 802EFEE0 002EBB40 48 00 00 BC */ b lbl_802EFF9C lbl_802EFEE4: /* 802EFEE4 002EBB44 2C 1B 00 04 */ cmpwi r27, 4 /* 802EFEE8 002EBB48 40 82 00 B4 */ bne lbl_802EFF9C /* 802EFEEC 002EBB4C 80 BF 00 2C */ lwz r5, 0x2c(r31) /* 802EFEF0 002EBB50 2C 05 00 00 */ cmpwi r5, 0 /* 802EFEF4 002EBB54 41 82 00 A8 */ beq lbl_802EFF9C /* 802EFEF8 002EBB58 88 7C 00 04 */ lbz r3, 4(r28) /* 802EFEFC 002EBB5C 88 1C 00 03 */ lbz r0, 3(r28) /* 802EFF00 002EBB60 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 /* 802EFF04 002EBB64 88 9C 00 01 */ lbz r4, 1(r28) /* 802EFF08 002EBB68 88 7C 00 02 */ lbz r3, 2(r28) /* 802EFF0C 002EBB6C 90 1F 00 58 */ stw r0, 0x58(r31) /* 802EFF10 002EBB70 50 64 44 2E */ rlwimi r4, r3, 8, 0x10, 0x17 /* 802EFF14 002EBB74 A0 05 05 CE */ lhz r0, 0x5ce(r5) /* 802EFF18 002EBB78 7C 00 20 40 */ cmplw r0, r4 /* 802EFF1C 002EBB7C 40 80 00 08 */ bge lbl_802EFF24 /* 802EFF20 002EBB80 B0 85 05 CE */ sth r4, 0x5ce(r5) lbl_802EFF24: /* 802EFF24 002EBB84 88 05 03 68 */ lbz r0, 0x368(r5) /* 802EFF28 002EBB88 38 60 00 01 */ li r3, 1 /* 802EFF2C 002EBB8C 81 9D 00 00 */ lwz r12, 0(r29) /* 802EFF30 002EBB90 54 00 F6 BE */ rlwinm r0, r0, 0x1e, 0x1a, 0x1f /* 802EFF34 002EBB94 A0 9D 03 72 */ lhz r4, 0x372(r29) /* 802EFF38 002EBB98 7C 60 00 30 */ slw r0, r3, r0 /* 802EFF3C 002EBB9C 2C 0C 00 00 */ cmpwi r12, 0 /* 802EFF40 002EBBA0 7C 80 03 78 */ or r0, r4, r0 /* 802EFF44 002EBBA4 B0 1D 03 72 */ sth r0, 0x372(r29) /* 802EFF48 002EBBA8 41 82 00 54 */ beq lbl_802EFF9C /* 802EFF4C 002EBBAC 7F A3 EB 78 */ mr r3, r29 /* 802EFF50 002EBBB0 7F C5 F3 78 */ mr r5, r30 /* 802EFF54 002EBBB4 38 80 00 00 */ li r4, 0 /* 802EFF58 002EBBB8 7D 89 03 A6 */ mtctr r12 /* 802EFF5C 002EBBBC 4E 80 04 21 */ bctrl /* 802EFF60 002EBBC0 48 00 00 3C */ b lbl_802EFF9C lbl_802EFF64: /* 802EFF64 002EBBC4 2C 1B 00 04 */ cmpwi r27, 4 /* 802EFF68 002EBBC8 40 82 00 34 */ bne lbl_802EFF9C /* 802EFF6C 002EBBCC 80 FF 00 2C */ lwz r7, 0x2c(r31) /* 802EFF70 002EBBD0 38 00 00 01 */ li r0, 1 /* 802EFF74 002EBBD4 7C 00 F0 30 */ slw r0, r0, r30 /* 802EFF78 002EBBD8 7F A3 EB 78 */ mr r3, r29 /* 802EFF7C 002EBBDC A0 C7 05 D0 */ lhz r6, 0x5d0(r7) /* 802EFF80 002EBBE0 7F C4 F3 78 */ mr r4, r30 /* 802EFF84 002EBBE4 38 A0 00 05 */ li r5, 5 /* 802EFF88 002EBBE8 7C C0 00 78 */ andc r0, r6, r0 /* 802EFF8C 002EBBEC B0 07 05 D0 */ sth r0, 0x5d0(r7) /* 802EFF90 002EBBF0 A0 07 04 E0 */ lhz r0, 0x4e0(r7) /* 802EFF94 002EBBF4 90 1F 00 58 */ stw r0, 0x58(r31) /* 802EFF98 002EBBF8 4B FF F0 6D */ bl WDPi_UpdateStatus lbl_802EFF9C: /* 802EFF9C 002EBBFC 80 1D 00 08 */ lwz r0, 8(r29) /* 802EFFA0 002EBC00 34 00 FF FF */ addic. r0, r0, -1 /* 802EFFA4 002EBC04 90 1D 00 08 */ stw r0, 8(r29) /* 802EFFA8 002EBC08 40 82 00 0C */ bne lbl_802EFFB4 /* 802EFFAC 002EBC0C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 802EFFB0 002EBC10 4B F7 E7 D5 */ bl OSRestoreInterrupts lbl_802EFFB4: /* 802EFFB4 002EBC14 39 61 00 30 */ addi r11, r1, 0x30 /* 802EFFB8 002EBC18 4B ED 71 BD */ bl _restgpr_27 /* 802EFFBC 002EBC1C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EFFC0 002EBC20 7C 08 03 A6 */ mtlr r0 /* 802EFFC4 002EBC24 38 21 00 30 */ addi r1, r1, 0x30 /* 802EFFC8 002EBC28 4E 80 00 20 */ blr .global WDP_RegisterSession WDP_RegisterSession: /* 802EFFCC 002EBC2C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 802EFFD0 002EBC30 7C 08 02 A6 */ mflr r0 /* 802EFFD4 002EBC34 90 01 00 74 */ stw r0, 0x74(r1) /* 802EFFD8 002EBC38 39 61 00 70 */ addi r11, r1, 0x70 /* 802EFFDC 002EBC3C 4B ED 71 19 */ bl __save_gpr /* 802EFFE0 002EBC40 3E C0 80 44 */ lis r22, lbl_80445BD8@ha /* 802EFFE4 002EBC44 82 A1 00 7C */ lwz r21, 0x7c(r1) /* 802EFFE8 002EBC48 82 81 00 80 */ lwz r20, 0x80(r1) /* 802EFFEC 002EBC4C 7C 6F 1B 78 */ mr r15, r3 /* 802EFFF0 002EBC50 82 41 00 84 */ lwz r18, 0x84(r1) /* 802EFFF4 002EBC54 7C 90 23 78 */ mr r16, r4 /* 802EFFF8 002EBC58 90 C1 00 08 */ stw r6, 8(r1) /* 802EFFFC 002EBC5C 7C AE 2B 78 */ mr r14, r5 /* 802F0000 002EBC60 7D 51 53 78 */ mr r17, r10 /* 802F0004 002EBC64 3A D6 5B D8 */ addi r22, r22, lbl_80445BD8@l /* 802F0008 002EBC68 90 E1 00 0C */ stw r7, 0xc(r1) /* 802F000C 002EBC6C 3A 64 04 E8 */ addi r19, r4, 0x4e8 /* 802F0010 002EBC70 91 01 00 10 */ stw r8, 0x10(r1) /* 802F0014 002EBC74 91 21 00 14 */ stw r9, 0x14(r1) /* 802F0018 002EBC78 4B F7 E7 45 */ bl OSDisableInterrupts /* 802F001C 002EBC7C 80 8F 00 08 */ lwz r4, 8(r15) /* 802F0020 002EBC80 38 04 00 01 */ addi r0, r4, 1 /* 802F0024 002EBC84 2C 00 00 01 */ cmpwi r0, 1 /* 802F0028 002EBC88 90 0F 00 08 */ stw r0, 8(r15) /* 802F002C 002EBC8C 40 82 00 08 */ bne lbl_802F0034 /* 802F0030 002EBC90 90 6F 00 0C */ stw r3, 0xc(r15) lbl_802F0034: /* 802F0034 002EBC94 80 F2 00 24 */ lwz r7, 0x24(r18) /* 802F0038 002EBC98 38 73 00 08 */ addi r3, r19, 8 /* 802F003C 002EBC9C 38 80 00 00 */ li r4, 0 /* 802F0040 002EBCA0 38 A0 00 04 */ li r5, 4 /* 802F0044 002EBCA4 54 E6 42 1E */ rlwinm r6, r7, 8, 8, 0xf /* 802F0048 002EBCA8 54 E0 C4 2E */ rlwinm r0, r7, 0x18, 0x10, 0x17 /* 802F004C 002EBCAC 50 E6 C0 0E */ rlwimi r6, r7, 0x18, 0, 7 /* 802F0050 002EBCB0 50 E0 46 3E */ rlwimi r0, r7, 8, 0x18, 0x1f /* 802F0054 002EBCB4 7C C0 03 78 */ or r0, r6, r0 /* 802F0058 002EBCB8 54 07 C6 3E */ rlwinm r7, r0, 0x18, 0x18, 0x1f /* 802F005C 002EBCBC 98 13 00 00 */ stb r0, 0(r19) /* 802F0060 002EBCC0 54 06 86 3E */ rlwinm r6, r0, 0x10, 0x18, 0x1f /* 802F0064 002EBCC4 54 00 46 3E */ srwi r0, r0, 0x18 /* 802F0068 002EBCC8 98 F3 00 01 */ stb r7, 1(r19) /* 802F006C 002EBCCC 98 D3 00 02 */ stb r6, 2(r19) /* 802F0070 002EBCD0 98 13 00 03 */ stb r0, 3(r19) /* 802F0074 002EBCD4 80 F2 00 34 */ lwz r7, 0x34(r18) /* 802F0078 002EBCD8 54 E6 42 1E */ rlwinm r6, r7, 8, 8, 0xf /* 802F007C 002EBCDC 54 E0 C4 2E */ rlwinm r0, r7, 0x18, 0x10, 0x17 /* 802F0080 002EBCE0 50 E6 C0 0E */ rlwimi r6, r7, 0x18, 0, 7 /* 802F0084 002EBCE4 50 E0 46 3E */ rlwimi r0, r7, 8, 0x18, 0x1f /* 802F0088 002EBCE8 7C C0 03 78 */ or r0, r6, r0 /* 802F008C 002EBCEC 54 07 C6 3E */ rlwinm r7, r0, 0x18, 0x18, 0x1f /* 802F0090 002EBCF0 98 13 00 04 */ stb r0, 4(r19) /* 802F0094 002EBCF4 54 06 86 3E */ rlwinm r6, r0, 0x10, 0x18, 0x1f /* 802F0098 002EBCF8 54 00 46 3E */ srwi r0, r0, 0x18 /* 802F009C 002EBCFC 98 F3 00 05 */ stb r7, 5(r19) /* 802F00A0 002EBD00 98 D3 00 06 */ stb r6, 6(r19) /* 802F00A4 002EBD04 98 13 00 07 */ stb r0, 7(r19) /* 802F00A8 002EBD08 48 00 3F 61 */ bl MI_CpuFill8 /* 802F00AC 002EBD0C 7E A3 AB 78 */ mr r3, r21 /* 802F00B0 002EBD10 38 93 00 3C */ addi r4, r19, 0x3c /* 802F00B4 002EBD14 38 A0 00 88 */ li r5, 0x88 /* 802F00B8 002EBD18 48 00 3F 55 */ bl MI_CpuCopy8 /* 802F00BC 002EBD1C 7E 83 A3 78 */ mr r3, r20 /* 802F00C0 002EBD20 38 93 00 C4 */ addi r4, r19, 0xc4 /* 802F00C4 002EBD24 38 A0 00 20 */ li r5, 0x20 /* 802F00C8 002EBD28 48 00 3F 45 */ bl MI_CpuCopy8 /* 802F00CC 002EBD2C 38 72 00 28 */ addi r3, r18, 0x28 /* 802F00D0 002EBD30 38 12 00 38 */ addi r0, r18, 0x38 /* 802F00D4 002EBD34 3A 40 00 00 */ li r18, 0 /* 802F00D8 002EBD38 38 82 A4 98 */ addi r4, r2, lbl_80642A98-_SDA2_BASE_ /* 802F00DC 002EBD3C 3F 40 80 40 */ lis r26, lbl_803FE0F8@ha /* 802F00E0 002EBD40 90 81 00 1C */ stw r4, 0x1c(r1) /* 802F00E4 002EBD44 7E 59 93 78 */ mr r25, r18 /* 802F00E8 002EBD48 7E 5B 93 78 */ mr r27, r18 /* 802F00EC 002EBD4C 90 61 00 20 */ stw r3, 0x20(r1) /* 802F00F0 002EBD50 3A E1 00 1C */ addi r23, r1, 0x1c /* 802F00F4 002EBD54 3B 5A E0 F8 */ addi r26, r26, lbl_803FE0F8@l /* 802F00F8 002EBD58 3B E0 00 00 */ li r31, 0 /* 802F00FC 002EBD5C 90 01 00 24 */ stw r0, 0x24(r1) /* 802F0100 002EBD60 3B C0 00 00 */ li r30, 0 /* 802F0104 002EBD64 3B 80 00 2C */ li r28, 0x2c /* 802F0108 002EBD68 3B A0 00 02 */ li r29, 2 lbl_802F010C: /* 802F010C 002EBD6C 93 21 00 18 */ stw r25, 0x18(r1) /* 802F0110 002EBD70 7E 43 93 78 */ mr r3, r18 /* 802F0114 002EBD74 7D 17 F0 2E */ lwzx r8, r23, r30 /* 802F0118 002EBD78 7F 13 FA 14 */ add r24, r19, r31 /* 802F011C 002EBD7C 38 E1 00 18 */ addi r7, r1, 0x18 /* 802F0120 002EBD80 38 C0 00 01 */ li r6, 1 /* 802F0124 002EBD84 88 08 00 01 */ lbz r0, 1(r8) /* 802F0128 002EBD88 8A A8 00 00 */ lbz r21, 0(r8) /* 802F012C 002EBD8C 50 15 44 2E */ rlwimi r21, r0, 8, 0x10, 0x17 /* 802F0130 002EBD90 88 08 00 05 */ lbz r0, 5(r8) /* 802F0134 002EBD94 88 A8 00 02 */ lbz r5, 2(r8) /* 802F0138 002EBD98 8A 88 00 04 */ lbz r20, 4(r8) /* 802F013C 002EBD9C 50 14 44 2E */ rlwimi r20, r0, 8, 0x10, 0x17 /* 802F0140 002EBDA0 88 88 00 06 */ lbz r4, 6(r8) /* 802F0144 002EBDA4 50 B5 82 1E */ rlwimi r21, r5, 0x10, 8, 0xf /* 802F0148 002EBDA8 88 08 00 03 */ lbz r0, 3(r8) /* 802F014C 002EBDAC 50 94 82 1E */ rlwimi r20, r4, 0x10, 8, 0xf /* 802F0150 002EBDB0 50 15 C0 0E */ rlwimi r21, r0, 0x18, 0, 7 /* 802F0154 002EBDB4 88 08 00 07 */ lbz r0, 7(r8) /* 802F0158 002EBDB8 7E A4 AB 78 */ mr r4, r21 /* 802F015C 002EBDBC 50 14 C0 0E */ rlwimi r20, r0, 0x18, 0, 7 /* 802F0160 002EBDC0 7E 85 A3 78 */ mr r5, r20 /* 802F0164 002EBDC4 4B FF EA E9 */ bl WDPi_IsValidSegmentRegion /* 802F0168 002EBDC8 2C 03 00 00 */ cmpwi r3, 0 /* 802F016C 002EBDCC 40 82 00 20 */ bne lbl_802F018C /* 802F0170 002EBDD0 7E A6 AB 78 */ mr r6, r21 /* 802F0174 002EBDD4 7E 87 A3 78 */ mr r7, r20 /* 802F0178 002EBDD8 38 76 00 00 */ addi r3, r22, 0 /* 802F017C 002EBDDC 38 B6 00 10 */ addi r5, r22, 0x10 /* 802F0180 002EBDE0 38 80 03 9A */ li r4, 0x39a /* 802F0184 002EBDE4 4C C6 31 82 */ crclr 6 /* 802F0188 002EBDE8 48 00 3E 95 */ bl OSi_TPanic lbl_802F018C: /* 802F018C 002EBDEC 9A 98 00 14 */ stb r20, 0x14(r24) /* 802F0190 002EBDF0 56 80 C6 3E */ rlwinm r0, r20, 0x18, 0x18, 0x1f /* 802F0194 002EBDF4 56 83 86 3E */ rlwinm r3, r20, 0x10, 0x18, 0x1f /* 802F0198 002EBDF8 56 87 46 3E */ srwi r7, r20, 0x18 /* 802F019C 002EBDFC 98 18 00 15 */ stb r0, 0x15(r24) /* 802F01A0 002EBE00 56 A6 C6 3E */ rlwinm r6, r21, 0x18, 0x18, 0x1f /* 802F01A4 002EBE04 56 A0 86 3E */ rlwinm r0, r21, 0x10, 0x18, 0x1f /* 802F01A8 002EBE08 56 A8 46 3E */ srwi r8, r21, 0x18 /* 802F01AC 002EBE0C 98 78 00 16 */ stb r3, 0x16(r24) /* 802F01B0 002EBE10 38 78 00 19 */ addi r3, r24, 0x19 /* 802F01B4 002EBE14 38 80 00 00 */ li r4, 0 /* 802F01B8 002EBE18 38 A0 00 03 */ li r5, 3 /* 802F01BC 002EBE1C 98 F8 00 17 */ stb r7, 0x17(r24) /* 802F01C0 002EBE20 9A B8 00 10 */ stb r21, 0x10(r24) /* 802F01C4 002EBE24 98 D8 00 11 */ stb r6, 0x11(r24) /* 802F01C8 002EBE28 98 18 00 12 */ stb r0, 0x12(r24) /* 802F01CC 002EBE2C 99 18 00 13 */ stb r8, 0x13(r24) /* 802F01D0 002EBE30 9A B8 00 0C */ stb r21, 0xc(r24) /* 802F01D4 002EBE34 98 D8 00 0D */ stb r6, 0xd(r24) /* 802F01D8 002EBE38 98 18 00 0E */ stb r0, 0xe(r24) /* 802F01DC 002EBE3C 99 18 00 0F */ stb r8, 0xf(r24) /* 802F01E0 002EBE40 48 00 3E 29 */ bl MI_CpuFill8 /* 802F01E4 002EBE44 7C 7A F0 2E */ lwzx r3, r26, r30 /* 802F01E8 002EBE48 88 18 00 18 */ lbz r0, 0x18(r24) /* 802F01EC 002EBE4C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f /* 802F01F0 002EBE50 54 00 07 EE */ rlwinm r0, r0, 0, 0x1f, 0x17 /* 802F01F4 002EBE54 98 18 00 18 */ stb r0, 0x18(r24) /* 802F01F8 002EBE58 80 01 00 18 */ lwz r0, 0x18(r1) /* 802F01FC 002EBE5C 2C 00 00 00 */ cmpwi r0, 0 /* 802F0200 002EBE60 41 82 00 14 */ beq lbl_802F0214 /* 802F0204 002EBE64 9B 78 00 0C */ stb r27, 0xc(r24) /* 802F0208 002EBE68 9B 78 00 0D */ stb r27, 0xd(r24) /* 802F020C 002EBE6C 9B 98 00 0E */ stb r28, 0xe(r24) /* 802F0210 002EBE70 9B B8 00 0F */ stb r29, 0xf(r24) lbl_802F0214: /* 802F0214 002EBE74 3A 52 00 01 */ addi r18, r18, 1 /* 802F0218 002EBE78 3B DE 00 04 */ addi r30, r30, 4 /* 802F021C 002EBE7C 2C 12 00 03 */ cmpwi r18, 3 /* 802F0220 002EBE80 3B FF 00 10 */ addi r31, r31, 0x10 /* 802F0224 002EBE84 41 80 FE E8 */ blt lbl_802F010C /* 802F0228 002EBE88 80 AF 00 24 */ lwz r5, 0x24(r15) /* 802F022C 002EBE8C 7E 64 9B 78 */ mr r4, r19 /* 802F0230 002EBE90 38 70 04 DC */ addi r3, r16, 0x4dc /* 802F0234 002EBE94 4B FF EB 95 */ bl WDPi_InitSegmentMapper /* 802F0238 002EBE98 2C 03 00 00 */ cmpwi r3, 0 /* 802F023C 002EBE9C 40 82 00 1C */ bne lbl_802F0258 /* 802F0240 002EBEA0 38 76 00 00 */ addi r3, r22, 0 /* 802F0244 002EBEA4 38 B6 00 38 */ addi r5, r22, 0x38 /* 802F0248 002EBEA8 38 80 03 AD */ li r4, 0x3ad /* 802F024C 002EBEAC 4C C6 31 82 */ crclr 6 /* 802F0250 002EBEB0 48 00 3D CD */ bl OSi_TPanic /* 802F0254 002EBEB4 48 00 01 94 */ b lbl_802F03E8 lbl_802F0258: /* 802F0258 002EBEB8 88 01 00 7B */ lbz r0, 0x7b(r1) /* 802F025C 002EBEBC 38 80 00 00 */ li r4, 0 /* 802F0260 002EBEC0 88 70 03 68 */ lbz r3, 0x368(r16) /* 802F0264 002EBEC4 56 27 C6 3E */ rlwinm r7, r17, 0x18, 0x18, 0x1f /* 802F0268 002EBEC8 56 26 86 3E */ rlwinm r6, r17, 0x10, 0x18, 0x1f /* 802F026C 002EBECC 56 25 46 3E */ srwi r5, r17, 0x18 /* 802F0270 002EBED0 50 03 16 3A */ rlwimi r3, r0, 2, 0x18, 0x1d /* 802F0274 002EBED4 2C 0E 00 00 */ cmpwi r14, 0 /* 802F0278 002EBED8 9A 30 03 64 */ stb r17, 0x364(r16) /* 802F027C 002EBEDC 3A 50 00 0C */ addi r18, r16, 0xc /* 802F0280 002EBEE0 98 F0 03 65 */ stb r7, 0x365(r16) /* 802F0284 002EBEE4 98 D0 03 66 */ stb r6, 0x366(r16) /* 802F0288 002EBEE8 98 B0 03 67 */ stb r5, 0x367(r16) /* 802F028C 002EBEEC 98 70 03 68 */ stb r3, 0x368(r16) /* 802F0290 002EBEF0 98 90 03 69 */ stb r4, 0x369(r16) /* 802F0294 002EBEF4 98 90 03 6A */ stb r4, 0x36a(r16) /* 802F0298 002EBEF8 41 82 00 10 */ beq lbl_802F02A8 /* 802F029C 002EBEFC 80 01 00 08 */ lwz r0, 8(r1) /* 802F02A0 002EBF00 2C 00 00 00 */ cmpwi r0, 0 /* 802F02A4 002EBF04 40 82 00 08 */ bne lbl_802F02AC lbl_802F02A8: /* 802F02A8 002EBF08 38 80 00 01 */ li r4, 1 lbl_802F02AC: /* 802F02AC 002EBF0C 88 72 03 5C */ lbz r3, 0x35c(r18) /* 802F02B0 002EBF10 50 83 07 BE */ rlwimi r3, r4, 0, 0x1e, 0x1f /* 802F02B4 002EBF14 54 60 07 BE */ clrlwi r0, r3, 0x1e /* 802F02B8 002EBF18 98 72 03 5C */ stb r3, 0x35c(r18) /* 802F02BC 002EBF1C 28 00 00 01 */ cmplwi r0, 1 /* 802F02C0 002EBF20 40 82 00 18 */ bne lbl_802F02D8 /* 802F02C4 002EBF24 7E 43 93 78 */ mr r3, r18 /* 802F02C8 002EBF28 38 80 00 00 */ li r4, 0 /* 802F02CC 002EBF2C 38 A0 02 20 */ li r5, 0x220 /* 802F02D0 002EBF30 48 00 3D 39 */ bl MI_CpuFill8 /* 802F02D4 002EBF34 48 00 00 24 */ b lbl_802F02F8 lbl_802F02D8: /* 802F02D8 002EBF38 7D C3 73 78 */ mr r3, r14 /* 802F02DC 002EBF3C 38 92 00 20 */ addi r4, r18, 0x20 /* 802F02E0 002EBF40 38 A0 02 00 */ li r5, 0x200 /* 802F02E4 002EBF44 48 00 3D 29 */ bl MI_CpuCopy8 /* 802F02E8 002EBF48 80 61 00 08 */ lwz r3, 8(r1) /* 802F02EC 002EBF4C 7E 44 93 78 */ mr r4, r18 /* 802F02F0 002EBF50 38 A0 00 20 */ li r5, 0x20 /* 802F02F4 002EBF54 48 00 3D 19 */ bl MI_CpuCopy8 lbl_802F02F8: /* 802F02F8 002EBF58 A0 CF 00 34 */ lhz r6, 0x34(r15) /* 802F02FC 002EBF5C 38 72 02 38 */ addi r3, r18, 0x238 /* 802F0300 002EBF60 A0 0F 00 36 */ lhz r0, 0x36(r15) /* 802F0304 002EBF64 38 80 00 60 */ li r4, 0x60 /* 802F0308 002EBF68 80 A1 00 10 */ lwz r5, 0x10(r1) /* 802F030C 002EBF6C B0 D2 02 20 */ sth r6, 0x220(r18) /* 802F0310 002EBF70 B0 12 02 22 */ sth r0, 0x222(r18) /* 802F0314 002EBF74 A0 CF 00 38 */ lhz r6, 0x38(r15) /* 802F0318 002EBF78 A0 0F 00 3A */ lhz r0, 0x3a(r15) /* 802F031C 002EBF7C B0 D2 02 24 */ sth r6, 0x224(r18) /* 802F0320 002EBF80 B0 12 02 26 */ sth r0, 0x226(r18) /* 802F0324 002EBF84 A0 CF 00 3C */ lhz r6, 0x3c(r15) /* 802F0328 002EBF88 A0 0F 00 3E */ lhz r0, 0x3e(r15) /* 802F032C 002EBF8C B0 D2 02 28 */ sth r6, 0x228(r18) /* 802F0330 002EBF90 B0 12 02 2A */ sth r0, 0x22a(r18) /* 802F0334 002EBF94 A0 CF 00 40 */ lhz r6, 0x40(r15) /* 802F0338 002EBF98 A0 0F 00 42 */ lhz r0, 0x42(r15) /* 802F033C 002EBF9C B0 D2 02 2C */ sth r6, 0x22c(r18) /* 802F0340 002EBFA0 B0 12 02 2E */ sth r0, 0x22e(r18) /* 802F0344 002EBFA4 A0 0F 00 44 */ lhz r0, 0x44(r15) /* 802F0348 002EBFA8 B0 12 02 30 */ sth r0, 0x230(r18) /* 802F034C 002EBFAC A0 0F 00 46 */ lhz r0, 0x46(r15) /* 802F0350 002EBFB0 B0 12 02 32 */ sth r0, 0x232(r18) /* 802F0354 002EBFB4 A0 0F 00 48 */ lhz r0, 0x48(r15) /* 802F0358 002EBFB8 B0 12 02 34 */ sth r0, 0x234(r18) /* 802F035C 002EBFBC 80 01 00 0C */ lwz r0, 0xc(r1) /* 802F0360 002EBFC0 98 12 02 36 */ stb r0, 0x236(r18) /* 802F0364 002EBFC4 4B FF E8 25 */ bl WDP_CopyString /* 802F0368 002EBFC8 80 A1 00 14 */ lwz r5, 0x14(r1) /* 802F036C 002EBFCC 38 72 02 98 */ addi r3, r18, 0x298 /* 802F0370 002EBFD0 38 80 00 C0 */ li r4, 0xc0 /* 802F0374 002EBFD4 4B FF E8 15 */ bl WDP_CopyString /* 802F0378 002EBFD8 38 72 03 64 */ addi r3, r18, 0x364 /* 802F037C 002EBFDC 38 80 00 00 */ li r4, 0 /* 802F0380 002EBFE0 38 A0 01 60 */ li r5, 0x160 /* 802F0384 002EBFE4 48 00 3C 85 */ bl MI_CpuFill8 /* 802F0388 002EBFE8 38 72 04 C4 */ addi r3, r18, 0x4c4 /* 802F038C 002EBFEC 38 80 00 00 */ li r4, 0 /* 802F0390 002EBFF0 38 A0 00 08 */ li r5, 8 /* 802F0394 002EBFF4 48 00 3C 75 */ bl MI_CpuFill8 /* 802F0398 002EBFF8 80 01 00 8C */ lwz r0, 0x8c(r1) /* 802F039C 002EBFFC 38 60 00 00 */ li r3, 0 /* 802F03A0 002EC000 38 80 00 01 */ li r4, 1 /* 802F03A4 002EC004 B0 72 03 62 */ sth r3, 0x362(r18) /* 802F03A8 002EC008 38 AF 00 04 */ addi r5, r15, 4 /* 802F03AC 002EC00C 90 10 00 04 */ stw r0, 4(r16) /* 802F03B0 002EC010 80 01 00 88 */ lwz r0, 0x88(r1) /* 802F03B4 002EC014 B0 92 03 60 */ sth r4, 0x360(r18) /* 802F03B8 002EC018 90 10 00 08 */ stw r0, 8(r16) /* 802F03BC 002EC01C B0 90 04 D8 */ sth r4, 0x4d8(r16) /* 802F03C0 002EC020 B0 70 05 D2 */ sth r3, 0x5d2(r16) /* 802F03C4 002EC024 B0 70 05 D4 */ sth r3, 0x5d4(r16) /* 802F03C8 002EC028 48 00 00 08 */ b lbl_802F03D0 lbl_802F03CC: /* 802F03CC 002EC02C 7C 05 03 78 */ mr r5, r0 lbl_802F03D0: /* 802F03D0 002EC030 80 05 00 00 */ lwz r0, 0(r5) /* 802F03D4 002EC034 2C 00 00 00 */ cmpwi r0, 0 /* 802F03D8 002EC038 40 82 FF F4 */ bne lbl_802F03CC /* 802F03DC 002EC03C 92 05 00 00 */ stw r16, 0(r5) /* 802F03E0 002EC040 38 00 00 00 */ li r0, 0 /* 802F03E4 002EC044 90 10 00 00 */ stw r0, 0(r16) lbl_802F03E8: /* 802F03E8 002EC048 80 0F 00 08 */ lwz r0, 8(r15) /* 802F03EC 002EC04C 34 00 FF FF */ addic. r0, r0, -1 /* 802F03F0 002EC050 90 0F 00 08 */ stw r0, 8(r15) /* 802F03F4 002EC054 40 82 00 0C */ bne lbl_802F0400 /* 802F03F8 002EC058 80 6F 00 0C */ lwz r3, 0xc(r15) /* 802F03FC 002EC05C 4B F7 E3 89 */ bl OSRestoreInterrupts lbl_802F0400: /* 802F0400 002EC060 39 61 00 70 */ addi r11, r1, 0x70 /* 802F0404 002EC064 4B ED 6D 3D */ bl __restore_gpr /* 802F0408 002EC068 80 01 00 74 */ lwz r0, 0x74(r1) /* 802F040C 002EC06C 7C 08 03 A6 */ mtlr r0 /* 802F0410 002EC070 38 21 00 70 */ addi r1, r1, 0x70 /* 802F0414 002EC074 4E 80 00 20 */ blr .global WDP_AllowChildStatus WDP_AllowChildStatus: /* 802F0418 002EC078 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802F041C 002EC07C 7C 08 02 A6 */ mflr r0 /* 802F0420 002EC080 90 01 00 24 */ stw r0, 0x24(r1) /* 802F0424 002EC084 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802F0428 002EC088 7C 7F 1B 78 */ mr r31, r3 /* 802F042C 002EC08C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802F0430 002EC090 3B C0 00 00 */ li r30, 0 /* 802F0434 002EC094 93 A1 00 14 */ stw r29, 0x14(r1) /* 802F0438 002EC098 7C BD 2B 78 */ mr r29, r5 /* 802F043C 002EC09C 93 81 00 10 */ stw r28, 0x10(r1) /* 802F0440 002EC0A0 7C 9C 23 78 */ mr r28, r4 /* 802F0444 002EC0A4 4B F7 E3 19 */ bl OSDisableInterrupts /* 802F0448 002EC0A8 80 9F 00 08 */ lwz r4, 8(r31) /* 802F044C 002EC0AC 38 04 00 01 */ addi r0, r4, 1 /* 802F0450 002EC0B0 2C 00 00 01 */ cmpwi r0, 1 /* 802F0454 002EC0B4 90 1F 00 08 */ stw r0, 8(r31) /* 802F0458 002EC0B8 40 82 00 08 */ bne lbl_802F0460 /* 802F045C 002EC0BC 90 7F 00 0C */ stw r3, 0xc(r31) lbl_802F0460: /* 802F0460 002EC0C0 1C 1C 00 34 */ mulli r0, r28, 0x34 /* 802F0464 002EC0C4 7C 7F 02 14 */ add r3, r31, r0 /* 802F0468 002EC0C8 80 03 00 28 */ lwz r0, 0x28(r3) /* 802F046C 002EC0CC 2C 00 00 04 */ cmpwi r0, 4 /* 802F0470 002EC0D0 41 82 00 DC */ beq lbl_802F054C /* 802F0474 002EC0D4 40 80 00 14 */ bge lbl_802F0488 /* 802F0478 002EC0D8 2C 00 00 02 */ cmpwi r0, 2 /* 802F047C 002EC0DC 41 82 00 18 */ beq lbl_802F0494 /* 802F0480 002EC0E0 40 80 00 90 */ bge lbl_802F0510 /* 802F0484 002EC0E4 48 00 00 C8 */ b lbl_802F054C lbl_802F0488: /* 802F0488 002EC0E8 2C 00 00 06 */ cmpwi r0, 6 /* 802F048C 002EC0EC 40 80 00 C0 */ bge lbl_802F054C /* 802F0490 002EC0F0 48 00 00 A0 */ b lbl_802F0530 lbl_802F0494: /* 802F0494 002EC0F4 2C 1D 00 03 */ cmpwi r29, 3 /* 802F0498 002EC0F8 40 82 00 1C */ bne lbl_802F04B4 /* 802F049C 002EC0FC 7F E3 FB 78 */ mr r3, r31 /* 802F04A0 002EC100 7F 84 E3 78 */ mr r4, r28 /* 802F04A4 002EC104 38 A0 00 07 */ li r5, 7 /* 802F04A8 002EC108 4B FF EB 5D */ bl WDPi_UpdateStatus /* 802F04AC 002EC10C 3B C0 00 01 */ li r30, 1 /* 802F04B0 002EC110 48 00 00 9C */ b lbl_802F054C lbl_802F04B4: /* 802F04B4 002EC114 2C 1D 00 00 */ cmpwi r29, 0 /* 802F04B8 002EC118 40 82 00 94 */ bne lbl_802F054C /* 802F04BC 002EC11C 38 60 00 06 */ li r3, 6 /* 802F04C0 002EC120 38 00 00 01 */ li r0, 1 /* 802F04C4 002EC124 93 81 00 08 */ stw r28, 8(r1) /* 802F04C8 002EC128 7C 04 E0 30 */ slw r4, r0, r28 /* 802F04CC 002EC12C 90 61 00 0C */ stw r3, 0xc(r1) /* 802F04D0 002EC130 A0 7F 03 6C */ lhz r3, 0x36c(r31) /* 802F04D4 002EC134 A0 1F 03 68 */ lhz r0, 0x368(r31) /* 802F04D8 002EC138 81 9F 00 00 */ lwz r12, 0(r31) /* 802F04DC 002EC13C 7C 63 23 78 */ or r3, r3, r4 /* 802F04E0 002EC140 7C 00 20 78 */ andc r0, r0, r4 /* 802F04E4 002EC144 B0 7F 03 6C */ sth r3, 0x36c(r31) /* 802F04E8 002EC148 2C 0C 00 00 */ cmpwi r12, 0 /* 802F04EC 002EC14C B0 1F 03 68 */ sth r0, 0x368(r31) /* 802F04F0 002EC150 41 82 00 18 */ beq lbl_802F0508 /* 802F04F4 002EC154 7F E3 FB 78 */ mr r3, r31 /* 802F04F8 002EC158 38 A1 00 08 */ addi r5, r1, 8 /* 802F04FC 002EC15C 38 80 00 01 */ li r4, 1 /* 802F0500 002EC160 7D 89 03 A6 */ mtctr r12 /* 802F0504 002EC164 4E 80 04 21 */ bctrl lbl_802F0508: /* 802F0508 002EC168 3B C0 00 01 */ li r30, 1 /* 802F050C 002EC16C 48 00 00 40 */ b lbl_802F054C lbl_802F0510: /* 802F0510 002EC170 2C 1D 00 04 */ cmpwi r29, 4 /* 802F0514 002EC174 40 82 00 38 */ bne lbl_802F054C /* 802F0518 002EC178 7F E3 FB 78 */ mr r3, r31 /* 802F051C 002EC17C 7F 84 E3 78 */ mr r4, r28 /* 802F0520 002EC180 38 A0 00 04 */ li r5, 4 /* 802F0524 002EC184 4B FF EA E1 */ bl WDPi_UpdateStatus /* 802F0528 002EC188 3B C0 00 01 */ li r30, 1 /* 802F052C 002EC18C 48 00 00 20 */ b lbl_802F054C lbl_802F0530: /* 802F0530 002EC190 2C 1D 00 06 */ cmpwi r29, 6 /* 802F0534 002EC194 40 82 00 18 */ bne lbl_802F054C /* 802F0538 002EC198 7F E3 FB 78 */ mr r3, r31 /* 802F053C 002EC19C 7F 84 E3 78 */ mr r4, r28 /* 802F0540 002EC1A0 38 A0 00 06 */ li r5, 6 /* 802F0544 002EC1A4 4B FF EA C1 */ bl WDPi_UpdateStatus /* 802F0548 002EC1A8 3B C0 00 01 */ li r30, 1 lbl_802F054C: /* 802F054C 002EC1AC 80 1F 00 08 */ lwz r0, 8(r31) /* 802F0550 002EC1B0 34 00 FF FF */ addic. r0, r0, -1 /* 802F0554 002EC1B4 90 1F 00 08 */ stw r0, 8(r31) /* 802F0558 002EC1B8 40 82 00 0C */ bne lbl_802F0564 /* 802F055C 002EC1BC 80 7F 00 0C */ lwz r3, 0xc(r31) /* 802F0560 002EC1C0 4B F7 E2 25 */ bl OSRestoreInterrupts lbl_802F0564: /* 802F0564 002EC1C4 7F C3 F3 78 */ mr r3, r30 /* 802F0568 002EC1C8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802F056C 002EC1CC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802F0570 002EC1D0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802F0574 002EC1D4 83 81 00 10 */ lwz r28, 0x10(r1) /* 802F0578 002EC1D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 802F057C 002EC1DC 7C 08 03 A6 */ mtlr r0 /* 802F0580 002EC1E0 38 21 00 20 */ addi r1, r1, 0x20 /* 802F0584 002EC1E4 4E 80 00 20 */ blr