diff options
Diffstat (limited to 'asm/SDK')
-rw-r--r-- | asm/SDK/WPAD/WPAD.s | 52 | ||||
-rw-r--r-- | asm/SDK/WUD.s | 4808 |
2 files changed, 4834 insertions, 26 deletions
diff --git a/asm/SDK/WPAD/WPAD.s b/asm/SDK/WPAD/WPAD.s index 354d412..273c48e 100644 --- a/asm/SDK/WPAD/WPAD.s +++ b/asm/SDK/WPAD/WPAD.s @@ -40,7 +40,7 @@ OnShutdown: /* 802A5BFC 002A185C 7C 9E 23 78 */ mr r30, r4
/* 802A5C00 002A1860 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A5C04 002A1864 3B A0 00 00 */ li r29, 0
-/* 802A5C08 002A1868 48 01 0D 89 */ bl func_802B6990
+/* 802A5C08 002A1868 48 01 0D 89 */ bl WUDGetStatus
/* 802A5C0C 002A186C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A5C10 002A1870 40 82 01 74 */ bne lbl_802A5D84
/* 802A5C14 002A1874 2C 03 00 03 */ cmpwi r3, 3
@@ -66,7 +66,7 @@ lbl_802A5C48: /* 802A5C5C 002A18BC 3C 80 80 2A */ lis r4, noFree@ha
/* 802A5C60 002A18C0 38 63 5B 84 */ addi r3, r3, noAlloc@l
/* 802A5C64 002A18C4 38 84 5B B4 */ addi r4, r4, noFree@l
-/* 802A5C68 002A18C8 48 01 0B 51 */ bl func_802B67B8
+/* 802A5C68 002A18C8 48 01 0B 51 */ bl WUDRegisterAllocator
lbl_802A5C6C:
/* 802A5C6C 002A18CC 4B FC 8A F1 */ bl OSDisableInterrupts
/* 802A5C70 002A18D0 88 0D AE 4D */ lbz r0, lbl_8064010D-_SDA_BASE_(r13)
@@ -80,7 +80,7 @@ lbl_802A5C88: /* 802A5C8C 002A18EC 38 60 00 00 */ li r3, 0
/* 802A5C90 002A18F0 98 0D AE 4D */ stb r0, lbl_8064010D-_SDA_BASE_(r13)
/* 802A5C94 002A18F4 38 80 00 00 */ li r4, 0
-/* 802A5C98 002A18F8 48 01 12 41 */ bl func_802B6ED8
+/* 802A5C98 002A18F8 48 01 12 41 */ bl WUDSetVisibility
/* 802A5C9C 002A18FC 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
/* 802A5CA0 002A1900 3B E0 00 0A */ li r31, 0xa
/* 802A5CA4 002A1904 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
@@ -98,8 +98,8 @@ lbl_802A5CAC: /* 802A5CD0 002A1930 38 63 6D 40 */ addi r3, r3, lbl_80536D40@l
/* 802A5CD4 002A1934 4B FC 3D A5 */ bl OSCancelAlarm
/* 802A5CD8 002A1938 38 60 00 00 */ li r3, 0
-/* 802A5CDC 002A193C 48 01 11 45 */ bl func_802B6E20
-/* 802A5CE0 002A1940 48 01 0B 25 */ bl func_802B6804
+/* 802A5CDC 002A193C 48 01 11 45 */ bl WUDSetHidRecvCallback
+/* 802A5CE0 002A1940 48 01 0B 25 */ bl WUDShutdown
/* 802A5CE4 002A1944 7F C3 F3 78 */ mr r3, r30
/* 802A5CE8 002A1948 4B FC 8A 9D */ bl OSRestoreInterrupts
lbl_802A5CEC:
@@ -121,8 +121,8 @@ lbl_802A5D10: /* 802A5D20 002A1980 38 63 6D 40 */ addi r3, r3, lbl_80536D40@l
/* 802A5D24 002A1984 4B FC 3D 55 */ bl OSCancelAlarm
/* 802A5D28 002A1988 38 60 00 00 */ li r3, 0
-/* 802A5D2C 002A198C 48 01 10 F5 */ bl func_802B6E20
-/* 802A5D30 002A1990 48 01 0A D5 */ bl func_802B6804
+/* 802A5D2C 002A198C 48 01 10 F5 */ bl WUDSetHidRecvCallback
+/* 802A5D30 002A1990 48 01 0A D5 */ bl WUDShutdown
/* 802A5D34 002A1994 7F C3 F3 78 */ mr r3, r30
/* 802A5D38 002A1998 4B FC 8A 4D */ bl OSRestoreInterrupts
lbl_802A5D3C:
@@ -131,7 +131,7 @@ lbl_802A5D3C: lbl_802A5D44:
/* 802A5D44 002A19A4 2C 03 00 05 */ cmpwi r3, 5
/* 802A5D48 002A19A8 40 82 00 10 */ bne lbl_802A5D58
-/* 802A5D4C 002A19AC 48 01 0F 51 */ bl func_802B6C9C
+/* 802A5D4C 002A19AC 48 01 0F 51 */ bl WUDStopSyncSimple
/* 802A5D50 002A19B0 3B A0 00 00 */ li r29, 0
/* 802A5D54 002A19B4 48 00 00 34 */ b lbl_802A5D88
lbl_802A5D58:
@@ -258,7 +258,7 @@ lbl_802A5E94: /* 802A5F10 002A1B70 8B 39 08 C3 */ lbz r25, 0x8c3(r25)
/* 802A5F14 002A1B74 4B FC 88 71 */ bl OSRestoreInterrupts
/* 802A5F18 002A1B78 7F 23 CB 78 */ mr r3, r25
-/* 802A5F1C 002A1B7C 48 01 2F CD */ bl func_802B8EE8
+/* 802A5F1C 002A1B7C 48 01 2F CD */ bl _WUDGetDevAddr
/* 802A5F20 002A1B80 2C 03 00 00 */ cmpwi r3, 0
/* 802A5F24 002A1B84 41 82 00 18 */ beq lbl_802A5F3C
/* 802A5F28 002A1B88 7C 64 1B 78 */ mr r4, r3
@@ -1361,7 +1361,7 @@ WPADiManageHandler: /* 802A6ECC 002A2B2C 90 01 01 64 */ stw r0, 0x164(r1)
/* 802A6ED0 002A2B30 39 61 01 60 */ addi r11, r1, 0x160
/* 802A6ED4 002A2B34 4B F2 02 39 */ bl _savegpr_20
-/* 802A6ED8 002A2B38 48 00 FA B9 */ bl func_802B6990
+/* 802A6ED8 002A2B38 48 00 FA B9 */ bl WUDGetStatus
/* 802A6EDC 002A2B3C 2C 03 00 03 */ cmpwi r3, 3
/* 802A6EE0 002A2B40 41 82 00 3C */ beq lbl_802A6F1C
/* 802A6EE4 002A2B44 2C 03 00 02 */ cmpwi r3, 2
@@ -1373,10 +1373,10 @@ WPADiManageHandler: /* 802A6EFC 002A2B5C 3C 60 80 2B */ lis r3, WPADiConnCallback@ha
/* 802A6F00 002A2B60 90 0D AE 48 */ stw r0, lbl_80640108-_SDA_BASE_(r13)
/* 802A6F04 002A2B64 38 63 87 08 */ addi r3, r3, WPADiConnCallback@l
-/* 802A6F08 002A2B68 48 00 FF 75 */ bl func_802B6E7C
+/* 802A6F08 002A2B68 48 00 FF 75 */ bl WUDSetHidConnCallback
/* 802A6F0C 002A2B6C 3C 60 80 2B */ lis r3, WPADiRecvCallback@ha
/* 802A6F10 002A2B70 38 63 8B 4C */ addi r3, r3, WPADiRecvCallback@l
-/* 802A6F14 002A2B74 48 00 FF 0D */ bl func_802B6E20
+/* 802A6F14 002A2B74 48 00 FF 0D */ bl WUDSetHidRecvCallback
/* 802A6F18 002A2B78 48 00 06 BC */ b lbl_802A75D4
lbl_802A6F1C:
/* 802A6F1C 002A2B7C 3F 20 80 53 */ lis r25, lbl_80536D70@ha
@@ -1756,7 +1756,7 @@ lbl_802A7400: /* 802A747C 002A30DC 48 00 C3 E5 */ bl DEBUGPrint
/* 802A7480 002A30E0 88 0D AE 4C */ lbz r0, lbl_8064010C-_SDA_BASE_(r13)
/* 802A7484 002A30E4 7C 03 07 74 */ extsb r3, r0
-/* 802A7488 002A30E8 48 00 F8 AD */ bl func_802B6D34
+/* 802A7488 002A30E8 48 00 F8 AD */ bl WUDSetDisableChannel
lbl_802A748C:
/* 802A748C 002A30EC A0 CD AE 3A */ lhz r6, lbl_806400FA-_SDA_BASE_(r13)
/* 802A7490 002A30F0 3C 60 00 01 */ lis r3, 0x0000EA60@ha
@@ -2176,7 +2176,7 @@ WPADInit: /* 802A7AB0 002A3710 38 00 00 01 */ li r0, 1
/* 802A7AB4 002A3714 98 0D AE 38 */ stb r0, lbl_806400F8-_SDA_BASE_(r13)
lbl_802A7AB8:
-/* 802A7AB8 002A3718 48 00 EC 09 */ bl func_802B66C0
+/* 802A7AB8 002A3718 48 00 EC 09 */ bl WUDInit
/* 802A7ABC 002A371C 2C 03 00 00 */ cmpwi r3, 0
/* 802A7AC0 002A3720 41 82 00 10 */ beq lbl_802A7AD0
/* 802A7AC4 002A3724 38 00 00 00 */ li r0, 0
@@ -2195,23 +2195,23 @@ WPADSetDisableChannel: .global WPADStartFastSimpleSync
WPADStartFastSimpleSync:
-/* 802A7AE8 002A3748 48 00 F1 28 */ b lbl_802B6C10
+/* 802A7AE8 002A3748 48 00 F1 28 */ b WUDStartFastSyncSimple
.global WPADStopSimpleSync
WPADStopSimpleSync:
-/* 802A7AEC 002A374C 48 00 F1 B0 */ b func_802B6C9C
+/* 802A7AEC 002A374C 48 00 F1 B0 */ b WUDStopSyncSimple
.global WPADSetSimpleSyncCallback
WPADSetSimpleSyncCallback:
-/* 802A7AF0 002A3750 48 00 EF 90 */ b lbl_802B6A80
+/* 802A7AF0 002A3750 48 00 EF 90 */ b WUDSetSyncSimpleCallback
.global WPADRegisterAllocator
WPADRegisterAllocator:
-/* 802A7AF4 002A3754 48 00 EC C4 */ b func_802B67B8
+/* 802A7AF4 002A3754 48 00 EC C4 */ b WUDRegisterAllocator
.global WPADGetStatus
WPADGetStatus:
-/* 802A7AF8 002A3758 48 00 EE 98 */ b func_802B6990
+/* 802A7AF8 002A3758 48 00 EE 98 */ b WUDGetStatus
.global WPADGetRadioSensitivity
WPADGetRadioSensitivity:
@@ -2282,7 +2282,7 @@ lbl_802A7BCC: /* 802A7BE8 002A3848 8B DE 08 C3 */ lbz r30, 0x8c3(r30)
/* 802A7BEC 002A384C 4B FC 6B 99 */ bl OSRestoreInterrupts
/* 802A7BF0 002A3850 7F C3 F3 78 */ mr r3, r30
-/* 802A7BF4 002A3854 48 01 12 F5 */ bl func_802B8EE8
+/* 802A7BF4 002A3854 48 01 12 F5 */ bl _WUDGetDevAddr
/* 802A7BF8 002A3858 2C 03 00 00 */ cmpwi r3, 0
/* 802A7BFC 002A385C 41 82 00 18 */ beq lbl_802A7C14
/* 802A7C00 002A3860 7C 64 1B 78 */ mr r4, r3
@@ -2344,7 +2344,7 @@ abortConnCallback: /* 802A7CD0 002A3930 8B BD 08 C3 */ lbz r29, 0x8c3(r29)
/* 802A7CD4 002A3934 4B FC 6A B1 */ bl OSRestoreInterrupts
/* 802A7CD8 002A3938 7F A3 EB 78 */ mr r3, r29
-/* 802A7CDC 002A393C 48 01 12 0D */ bl func_802B8EE8
+/* 802A7CDC 002A393C 48 01 12 0D */ bl _WUDGetDevAddr
/* 802A7CE0 002A3940 2C 03 00 00 */ cmpwi r3, 0
/* 802A7CE4 002A3944 41 82 00 18 */ beq lbl_802A7CFC
/* 802A7CE8 002A3948 7C 64 1B 78 */ mr r4, r3
@@ -2963,7 +2963,7 @@ WPADiRetrieveChannel: /* 802A8610 002A4270 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A8614 002A4274 39 61 00 20 */ addi r11, r1, 0x20
/* 802A8618 002A4278 4B F1 EB 11 */ bl _savegpr_27
-/* 802A861C 002A427C 48 01 08 CD */ bl func_802B8EE8
+/* 802A861C 002A427C 48 01 08 CD */ bl _WUDGetDevAddr
/* 802A8620 002A4280 3F E0 80 54 */ lis r31, lbl_8053AC28@ha
/* 802A8624 002A4284 7C 7C 1B 78 */ mr r28, r3
/* 802A8628 002A4288 3B FF AC 28 */ addi r31, r31, lbl_8053AC28@l
@@ -6063,7 +6063,7 @@ IsBusyStream: /* 802AB2DC 002A6F3C 8B BE 08 CD */ lbz r29, 0x8cd(r30)
/* 802AB2E0 002A6F40 7C 7F 1B 78 */ mr r31, r3
/* 802AB2E4 002A6F44 8B 9E 08 C1 */ lbz r28, 0x8c1(r30)
-/* 802AB2E8 002A6F48 48 00 B6 E5 */ bl func_802B69CC
+/* 802AB2E8 002A6F48 48 00 B6 E5 */ bl WUDGetBufferStatus
/* 802AB2EC 002A6F4C 7C 7A 1B 78 */ mr r26, r3
/* 802AB2F0 002A6F50 4B FC 34 6D */ bl OSDisableInterrupts
/* 802AB2F4 002A6F54 88 9E 01 60 */ lbz r4, 0x160(r30)
@@ -6084,7 +6084,7 @@ lbl_802AB314: /* 802AB32C 002A6F8C 2C 16 FF FF */ cmpwi r22, -1
/* 802AB330 002A6F90 41 82 00 0C */ beq lbl_802AB33C
/* 802AB334 002A6F94 7E E3 07 74 */ extsb r3, r23
-/* 802AB338 002A6F98 48 00 DC 05 */ bl func_802B8F3C
+/* 802AB338 002A6F98 48 00 DC 05 */ bl _WUDGetQueuedSize
lbl_802AB33C:
/* 802AB33C 002A6F9C 7E DB C8 2E */ lwzx r22, r27, r25
/* 802AB340 002A6FA0 4B FC 34 1D */ bl OSDisableInterrupts
@@ -6097,11 +6097,11 @@ lbl_802AB33C: /* 802AB35C 002A6FBC 48 00 00 10 */ b lbl_802AB36C
lbl_802AB360:
/* 802AB360 002A6FC0 7E C3 07 74 */ extsb r3, r22
-/* 802AB364 002A6FC4 48 00 DC 35 */ bl func_802B8F98
+/* 802AB364 002A6FC4 48 00 DC 35 */ bl _WUDGetNotAckedSize
/* 802AB368 002A6FC8 7C 7B 1B 78 */ mr r27, r3
lbl_802AB36C:
/* 802AB36C 002A6FCC 8A DE 08 CF */ lbz r22, 0x8cf(r30)
-/* 802AB370 002A6FD0 48 00 DC 85 */ bl func_802B8FF4
+/* 802AB370 002A6FD0 48 00 DC 85 */ bl _WUDGetLinkNumber
/* 802AB374 002A6FD4 7C 7E 1B 78 */ mr r30, r3
/* 802AB378 002A6FD8 7F E3 FB 78 */ mr r3, r31
/* 802AB37C 002A6FDC 4B FC 34 09 */ bl OSRestoreInterrupts
diff --git a/asm/SDK/WUD.s b/asm/SDK/WUD.s new file mode 100644 index 0000000..21933de --- /dev/null +++ b/asm/SDK/WUD.s @@ -0,0 +1,4808 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global App_MEMalloc
+App_MEMalloc:
+/* 802B4CC0 002B0920 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B4CC4 002B0924 7C 08 02 A6 */ mflr r0
+/* 802B4CC8 002B0928 3C 80 80 44 */ lis r4, lbl_8043E124@ha
+/* 802B4CCC 002B092C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B4CD0 002B0930 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B4CD4 002B0934 7C 7F 1B 78 */ mr r31, r3
+/* 802B4CD8 002B0938 38 64 E1 24 */ addi r3, r4, lbl_8043E124@l
+/* 802B4CDC 002B093C 4C C6 31 82 */ crclr 6
+/* 802B4CE0 002B0940 48 00 48 9D */ bl func_802B957C
+/* 802B4CE4 002B0944 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B4CE8 002B0948 7F E3 FB 78 */ mr r3, r31
+/* 802B4CEC 002B094C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B4CF0 002B0950 81 84 06 F4 */ lwz r12, 0x6f4(r4)
+/* 802B4CF4 002B0954 7D 89 03 A6 */ mtctr r12
+/* 802B4CF8 002B0958 4E 80 04 21 */ bctrl
+/* 802B4CFC 002B095C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B4D00 002B0960 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B4D04 002B0964 7C 08 03 A6 */ mtlr r0
+/* 802B4D08 002B0968 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B4D0C 002B096C 4E 80 00 20 */ blr
+
+.global App_MEMfree
+App_MEMfree:
+/* 802B4D10 002B0970 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B4D14 002B0974 7C 08 02 A6 */ mflr r0
+/* 802B4D18 002B0978 3C 80 80 44 */ lis r4, lbl_8043E134@ha
+/* 802B4D1C 002B097C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B4D20 002B0980 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B4D24 002B0984 7C 7F 1B 78 */ mr r31, r3
+/* 802B4D28 002B0988 38 64 E1 34 */ addi r3, r4, lbl_8043E134@l
+/* 802B4D2C 002B098C 4C C6 31 82 */ crclr 6
+/* 802B4D30 002B0990 48 00 48 4D */ bl func_802B957C
+/* 802B4D34 002B0994 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B4D38 002B0998 7F E3 FB 78 */ mr r3, r31
+/* 802B4D3C 002B099C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B4D40 002B09A0 81 84 06 F8 */ lwz r12, 0x6f8(r4)
+/* 802B4D44 002B09A4 7D 89 03 A6 */ mtctr r12
+/* 802B4D48 002B09A8 4E 80 04 21 */ bctrl
+/* 802B4D4C 002B09AC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B4D50 002B09B0 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B4D54 002B09B4 7C 08 03 A6 */ mtlr r0
+/* 802B4D58 002B09B8 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B4D5C 002B09BC 4E 80 00 20 */ blr
+
+SyncFlushCallback:
+/* 802B4D60 002B09C0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B4D64 002B09C4 7C 08 02 A6 */ mflr r0
+/* 802B4D68 002B09C8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B4D6C 002B09CC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B4D70 002B09D0 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B4D74 002B09D4 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B4D78 002B09D8 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B4D7C 002B09DC 7C 7E 1B 78 */ mr r30, r3
+/* 802B4D80 002B09E0 3C 60 80 44 */ lis r3, lbl_8043E144@ha
+/* 802B4D84 002B09E4 88 BF 00 0C */ lbz r5, 0xc(r31)
+/* 802B4D88 002B09E8 7F C4 F3 78 */ mr r4, r30
+/* 802B4D8C 002B09EC 38 63 E1 44 */ addi r3, r3, lbl_8043E144@l
+/* 802B4D90 002B09F0 4C C6 31 82 */ crclr 6
+/* 802B4D94 002B09F4 48 00 47 E9 */ bl func_802B957C
+/* 802B4D98 002B09F8 88 1F 00 0C */ lbz r0, 0xc(r31)
+/* 802B4D9C 002B09FC 2C 00 00 00 */ cmpwi r0, 0
+/* 802B4DA0 002B0A00 41 82 00 20 */ beq lbl_802B4DC0
+/* 802B4DA4 002B0A04 2C 1E 00 00 */ cmpwi r30, 0
+/* 802B4DA8 002B0A08 40 82 00 10 */ bne lbl_802B4DB8
+/* 802B4DAC 002B0A0C 38 00 00 17 */ li r0, 0x17
+/* 802B4DB0 002B0A10 98 1F 00 0C */ stb r0, 0xc(r31)
+/* 802B4DB4 002B0A14 48 00 00 0C */ b lbl_802B4DC0
+lbl_802B4DB8:
+/* 802B4DB8 002B0A18 38 00 00 FF */ li r0, 0xff
+/* 802B4DBC 002B0A1C 98 1F 00 0C */ stb r0, 0xc(r31)
+lbl_802B4DC0:
+/* 802B4DC0 002B0A20 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B4DC4 002B0A24 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B4DC8 002B0A28 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B4DCC 002B0A2C 7C 08 03 A6 */ mtlr r0
+/* 802B4DD0 002B0A30 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B4DD4 002B0A34 4E 80 00 20 */ blr
+
+DeleteFlushCallback:
+/* 802B4DD8 002B0A38 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B4DDC 002B0A3C 7C 08 02 A6 */ mflr r0
+/* 802B4DE0 002B0A40 3C C0 80 44 */ lis r6, lbl_8043E168@ha
+/* 802B4DE4 002B0A44 7C 64 1B 78 */ mr r4, r3
+/* 802B4DE8 002B0A48 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B4DEC 002B0A4C 38 66 E1 68 */ addi r3, r6, lbl_8043E168@l
+/* 802B4DF0 002B0A50 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B4DF4 002B0A54 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B4DF8 002B0A58 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B4DFC 002B0A5C 88 BF 00 0D */ lbz r5, 0xd(r31)
+/* 802B4E00 002B0A60 4C C6 31 82 */ crclr 6
+/* 802B4E04 002B0A64 48 00 47 79 */ bl func_802B957C
+/* 802B4E08 002B0A68 88 1F 00 0D */ lbz r0, 0xd(r31)
+/* 802B4E0C 002B0A6C 2C 00 00 00 */ cmpwi r0, 0
+/* 802B4E10 002B0A70 41 82 00 0C */ beq lbl_802B4E1C
+/* 802B4E14 002B0A74 38 00 00 08 */ li r0, 8
+/* 802B4E18 002B0A78 98 1F 00 0D */ stb r0, 0xd(r31)
+lbl_802B4E1C:
+/* 802B4E1C 002B0A7C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B4E20 002B0A80 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B4E24 002B0A84 7C 08 03 A6 */ mtlr r0
+/* 802B4E28 002B0A88 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B4E2C 002B0A8C 4E 80 00 20 */ blr
+
+ShutFlushCallback:
+/* 802B4E30 002B0A90 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B4E34 002B0A94 7C 08 02 A6 */ mflr r0
+/* 802B4E38 002B0A98 3C C0 80 44 */ lis r6, lbl_8043E190@ha
+/* 802B4E3C 002B0A9C 7C 64 1B 78 */ mr r4, r3
+/* 802B4E40 002B0AA0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B4E44 002B0AA4 38 66 E1 90 */ addi r3, r6, lbl_8043E190@l
+/* 802B4E48 002B0AA8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B4E4C 002B0AAC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B4E50 002B0AB0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B4E54 002B0AB4 88 BF 00 11 */ lbz r5, 0x11(r31)
+/* 802B4E58 002B0AB8 4C C6 31 82 */ crclr 6
+/* 802B4E5C 002B0ABC 48 00 47 21 */ bl func_802B957C
+/* 802B4E60 002B0AC0 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B4E64 002B0AC4 4B FB 4C 15 */ bl OSCancelAlarm
+/* 802B4E68 002B0AC8 38 00 00 03 */ li r0, 3
+/* 802B4E6C 002B0ACC 98 1F 00 11 */ stb r0, 0x11(r31)
+/* 802B4E70 002B0AD0 48 00 B2 45 */ bl func_802C00B4
+/* 802B4E74 002B0AD4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B4E78 002B0AD8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B4E7C 002B0ADC 7C 08 03 A6 */ mtlr r0
+/* 802B4E80 002B0AE0 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B4E84 002B0AE4 4E 80 00 20 */ blr
+
+.global _resumeSmpSync
+_resumeSmpSync:
+/* 802B4E88 002B0AE8 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B4E8C 002B0AEC 38 00 00 01 */ li r0, 1
+/* 802B4E90 002B0AF0 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B4E94 002B0AF4 98 03 00 0C */ stb r0, 0xc(r3)
+/* 802B4E98 002B0AF8 4E 80 00 20 */ blr
+
+.global WUDiIsSyncDisabled
+WUDiIsSyncDisabled:
+/* 802B4E9C 002B0AFC 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802B4EA0 002B0B00 7C 08 02 A6 */ mflr r0
+/* 802B4EA4 002B0B04 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802B4EA8 002B0B08 39 61 00 30 */ addi r11, r1, 0x30
+/* 802B4EAC 002B0B0C 4B F1 22 7D */ bl _savegpr_27
+/* 802B4EB0 002B0B10 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B4EB4 002B0B14 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B4EB8 002B0B18 4B FB 98 A5 */ bl OSDisableInterrupts
+/* 802B4EBC 002B0B1C 38 00 00 00 */ li r0, 0
+/* 802B4EC0 002B0B20 98 1F 06 EB */ stb r0, 0x6eb(r31)
+/* 802B4EC4 002B0B24 98 1F 06 EA */ stb r0, 0x6ea(r31)
+/* 802B4EC8 002B0B28 4B FB 98 BD */ bl OSRestoreInterrupts
+/* 802B4ECC 002B0B2C 38 60 00 00 */ li r3, 0
+/* 802B4ED0 002B0B30 38 80 00 00 */ li r4, 0
+/* 802B4ED4 002B0B34 48 00 B2 B5 */ bl func_802C0188
+/* 802B4ED8 002B0B38 88 1F 06 E8 */ lbz r0, 0x6e8(r31)
+/* 802B4EDC 002B0B3C 7C 00 07 75 */ extsb. r0, r0
+/* 802B4EE0 002B0B40 40 82 00 0C */ bne lbl_802B4EEC
+/* 802B4EE4 002B0B44 38 60 00 0E */ li r3, 0xe
+/* 802B4EE8 002B0B48 48 00 00 F4 */ b lbl_802B4FDC
+lbl_802B4EEC:
+/* 802B4EEC 002B0B4C 4B FB 98 71 */ bl OSDisableInterrupts
+/* 802B4EF0 002B0B50 8B DF 06 E5 */ lbz r30, 0x6e5(r31)
+/* 802B4EF4 002B0B54 4B FB 98 91 */ bl OSRestoreInterrupts
+/* 802B4EF8 002B0B58 28 1E 00 04 */ cmplwi r30, 4
+/* 802B4EFC 002B0B5C 40 82 00 20 */ bne lbl_802B4F1C
+/* 802B4F00 002B0B60 4B FB 98 5D */ bl OSDisableInterrupts
+/* 802B4F04 002B0B64 8B DF 06 E4 */ lbz r30, 0x6e4(r31)
+/* 802B4F08 002B0B68 4B FB 98 7D */ bl OSRestoreInterrupts
+/* 802B4F0C 002B0B6C 28 1E 00 04 */ cmplwi r30, 4
+/* 802B4F10 002B0B70 40 82 00 0C */ bne lbl_802B4F1C
+/* 802B4F14 002B0B74 38 60 00 0E */ li r3, 0xe
+/* 802B4F18 002B0B78 48 00 00 C4 */ b lbl_802B4FDC
+lbl_802B4F1C:
+/* 802B4F1C 002B0B7C 88 1F 06 E7 */ lbz r0, 0x6e7(r31)
+/* 802B4F20 002B0B80 2C 00 00 00 */ cmpwi r0, 0
+/* 802B4F24 002B0B84 41 82 00 A0 */ beq lbl_802B4FC4
+/* 802B4F28 002B0B88 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B4F2C 002B0B8C 3B 60 00 00 */ li r27, 0
+/* 802B4F30 002B0B90 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B4F34 002B0B94 3B 80 00 00 */ li r28, 0
+lbl_802B4F38:
+/* 802B4F38 002B0B98 4B FB 98 25 */ bl OSDisableInterrupts
+/* 802B4F3C 002B0B9C 2C 1B 00 00 */ cmpwi r27, 0
+/* 802B4F40 002B0BA0 41 80 00 18 */ blt lbl_802B4F58
+/* 802B4F44 002B0BA4 2C 1B 00 0A */ cmpwi r27, 0xa
+/* 802B4F48 002B0BA8 40 80 00 10 */ bge lbl_802B4F58
+/* 802B4F4C 002B0BAC 7C 9D E2 14 */ add r4, r29, r28
+/* 802B4F50 002B0BB0 3B C4 00 E4 */ addi r30, r4, 0xe4
+/* 802B4F54 002B0BB4 48 00 00 14 */ b lbl_802B4F68
+lbl_802B4F58:
+/* 802B4F58 002B0BB8 38 1B FF F6 */ addi r0, r27, -10
+/* 802B4F5C 002B0BBC 1C 00 00 60 */ mulli r0, r0, 0x60
+/* 802B4F60 002B0BC0 7C 9D 02 14 */ add r4, r29, r0
+/* 802B4F64 002B0BC4 3B C4 04 A4 */ addi r30, r4, 0x4a4
+lbl_802B4F68:
+/* 802B4F68 002B0BC8 4B FB 98 1D */ bl OSRestoreInterrupts
+/* 802B4F6C 002B0BCC 88 1E 00 59 */ lbz r0, 0x59(r30)
+/* 802B4F70 002B0BD0 28 00 00 09 */ cmplwi r0, 9
+/* 802B4F74 002B0BD4 40 82 00 40 */ bne lbl_802B4FB4
+/* 802B4F78 002B0BD8 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B4F7C 002B0BDC 38 C0 00 00 */ li r6, 0
+/* 802B4F80 002B0BE0 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B4F84 002B0BE4 38 00 00 01 */ li r0, 1
+/* 802B4F88 002B0BE8 98 C1 00 10 */ stb r6, 0x10(r1)
+/* 802B4F8C 002B0BEC 38 9E 00 40 */ addi r4, r30, 0x40
+/* 802B4F90 002B0BF0 88 63 07 0A */ lbz r3, 0x70a(r3)
+/* 802B4F94 002B0BF4 38 A1 00 08 */ addi r5, r1, 8
+/* 802B4F98 002B0BF8 B0 C1 00 08 */ sth r6, 8(r1)
+/* 802B4F9C 002B0BFC B0 C1 00 0A */ sth r6, 0xa(r1)
+/* 802B4FA0 002B0C00 B0 01 00 0C */ sth r0, 0xc(r1)
+/* 802B4FA4 002B0C04 B0 C1 00 0E */ sth r6, 0xe(r1)
+/* 802B4FA8 002B0C08 48 01 3F 01 */ bl func_802C8EA8
+/* 802B4FAC 002B0C0C 38 60 00 01 */ li r3, 1
+/* 802B4FB0 002B0C10 48 00 00 2C */ b lbl_802B4FDC
+lbl_802B4FB4:
+/* 802B4FB4 002B0C14 3B 7B 00 01 */ addi r27, r27, 1
+/* 802B4FB8 002B0C18 3B 9C 00 60 */ addi r28, r28, 0x60
+/* 802B4FBC 002B0C1C 2C 1B 00 10 */ cmpwi r27, 0x10
+/* 802B4FC0 002B0C20 41 80 FF 78 */ blt lbl_802B4F38
+lbl_802B4FC4:
+/* 802B4FC4 002B0C24 88 7F 06 E8 */ lbz r3, 0x6e8(r31)
+/* 802B4FC8 002B0C28 7C 60 07 75 */ extsb. r0, r3
+/* 802B4FCC 002B0C2C 40 81 00 0C */ ble lbl_802B4FD8
+/* 802B4FD0 002B0C30 38 03 FF FF */ addi r0, r3, -1
+/* 802B4FD4 002B0C34 98 1F 06 E8 */ stb r0, 0x6e8(r31)
+lbl_802B4FD8:
+/* 802B4FD8 002B0C38 38 60 00 02 */ li r3, 2
+lbl_802B4FDC:
+/* 802B4FDC 002B0C3C 39 61 00 30 */ addi r11, r1, 0x30
+/* 802B4FE0 002B0C40 4B F1 21 95 */ bl _restgpr_27
+/* 802B4FE4 002B0C44 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802B4FE8 002B0C48 7C 08 03 A6 */ mtlr r0
+/* 802B4FEC 002B0C4C 38 21 00 30 */ addi r1, r1, 0x30
+/* 802B4FF0 002B0C50 4E 80 00 20 */ blr
+
+.global WUDiSaveDeviceToNand
+WUDiSaveDeviceToNand:
+/* 802B4FF4 002B0C54 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B4FF8 002B0C58 7C 08 02 A6 */ mflr r0
+/* 802B4FFC 002B0C5C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B5000 002B0C60 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B5004 002B0C64 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B5008 002B0C68 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B500C 002B0C6C 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802B5010 002B0C70 48 03 59 DD */ bl func_802EA9EC
+/* 802B5014 002B0C74 20 83 00 01 */ subfic r4, r3, 1
+/* 802B5018 002B0C78 38 03 FF FF */ addi r0, r3, -1
+/* 802B501C 002B0C7C 7C 80 03 78 */ or r0, r4, r0
+/* 802B5020 002B0C80 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f
+/* 802B5024 002B0C84 40 82 00 0C */ bne lbl_802B5030
+/* 802B5028 002B0C88 38 60 00 16 */ li r3, 0x16
+/* 802B502C 002B0C8C 48 00 00 B4 */ b lbl_802B50E0
+lbl_802B5030:
+/* 802B5030 002B0C90 3F A0 80 54 */ lis r29, lbl_8053AC28@ha
+/* 802B5034 002B0C94 38 80 00 00 */ li r4, 0
+/* 802B5038 002B0C98 3B DD AC 28 */ addi r30, r29, lbl_8053AC28@l
+/* 802B503C 002B0C9C 38 A0 02 BC */ li r5, 0x2bc
+/* 802B5040 002B0CA0 38 7E 00 01 */ addi r3, r30, 1
+/* 802B5044 002B0CA4 4B D4 F0 C1 */ bl memset
+/* 802B5048 002B0CA8 4B FB 97 15 */ bl OSDisableInterrupts
+/* 802B504C 002B0CAC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B5050 002B0CB0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B5054 002B0CB4 8B 9F 00 12 */ lbz r28, 0x12(r31)
+/* 802B5058 002B0CB8 4B FB 97 2D */ bl OSRestoreInterrupts
+/* 802B505C 002B0CBC 9B 9D AC 28 */ stb r28, -0x53d8(r29)
+/* 802B5060 002B0CC0 3B A0 00 00 */ li r29, 0
+/* 802B5064 002B0CC4 83 FF 00 64 */ lwz r31, 0x64(r31)
+/* 802B5068 002B0CC8 48 00 00 40 */ b lbl_802B50A8
+lbl_802B506C:
+/* 802B506C 002B0CCC 57 A0 06 3E */ clrlwi r0, r29, 0x18
+/* 802B5070 002B0CD0 80 7F 00 00 */ lwz r3, 0(r31)
+/* 802B5074 002B0CD4 1F 80 00 46 */ mulli r28, r0, 0x46
+/* 802B5078 002B0CD8 38 A0 00 06 */ li r5, 6
+/* 802B507C 002B0CDC 38 83 00 40 */ addi r4, r3, 0x40
+/* 802B5080 002B0CE0 7C 7E E2 14 */ add r3, r30, r28
+/* 802B5084 002B0CE4 38 63 00 01 */ addi r3, r3, 1
+/* 802B5088 002B0CE8 4B D4 EF 79 */ bl memcpy
+/* 802B508C 002B0CEC 7C 7E E2 14 */ add r3, r30, r28
+/* 802B5090 002B0CF0 80 9F 00 00 */ lwz r4, 0(r31)
+/* 802B5094 002B0CF4 38 63 00 07 */ addi r3, r3, 7
+/* 802B5098 002B0CF8 38 A0 00 40 */ li r5, 0x40
+/* 802B509C 002B0CFC 4B D4 EF 65 */ bl memcpy
+/* 802B50A0 002B0D00 83 FF 00 08 */ lwz r31, 8(r31)
+/* 802B50A4 002B0D04 3B BD 00 01 */ addi r29, r29, 1
+lbl_802B50A8:
+/* 802B50A8 002B0D08 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B50AC 002B0D0C 40 82 FF C0 */ bne lbl_802B506C
+/* 802B50B0 002B0D10 3C 60 80 44 */ lis r3, lbl_8043E1B8@ha
+/* 802B50B4 002B0D14 57 A4 06 3E */ clrlwi r4, r29, 0x18
+/* 802B50B8 002B0D18 38 63 E1 B8 */ addi r3, r3, lbl_8043E1B8@l
+/* 802B50BC 002B0D1C 4C C6 31 82 */ crclr 6
+/* 802B50C0 002B0D20 48 00 44 BD */ bl func_802B957C
+/* 802B50C4 002B0D24 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
+/* 802B50C8 002B0D28 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
+/* 802B50CC 002B0D2C 48 03 75 41 */ bl func_802EC60C
+/* 802B50D0 002B0D30 2C 03 00 00 */ cmpwi r3, 0
+/* 802B50D4 002B0D34 38 60 00 16 */ li r3, 0x16
+/* 802B50D8 002B0D38 41 82 00 08 */ beq lbl_802B50E0
+/* 802B50DC 002B0D3C 38 60 00 19 */ li r3, 0x19
+lbl_802B50E0:
+/* 802B50E0 002B0D40 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B50E4 002B0D44 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B50E8 002B0D48 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B50EC 002B0D4C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B50F0 002B0D50 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802B50F4 002B0D54 7C 08 03 A6 */ mtlr r0
+/* 802B50F8 002B0D58 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B50FC 002B0D5C 4E 80 00 20 */ blr
+
+.global WUDiSyncDone
+WUDiSyncDone:
+/* 802B5100 002B0D60 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802B5104 002B0D64 7C 08 02 A6 */ mflr r0
+/* 802B5108 002B0D68 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B510C 002B0D6C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802B5110 002B0D70 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 802B5114 002B0D74 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 802B5118 002B0D78 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 802B511C 002B0D7C 3B A3 A4 E0 */ addi r29, r3, lbl_8053A4E0@l
+/* 802B5120 002B0D80 93 81 00 20 */ stw r28, 0x20(r1)
+/* 802B5124 002B0D84 88 1D 06 E7 */ lbz r0, 0x6e7(r29)
+/* 802B5128 002B0D88 2C 00 00 00 */ cmpwi r0, 0
+/* 802B512C 002B0D8C 41 82 00 A0 */ beq lbl_802B51CC
+/* 802B5130 002B0D90 3B 80 00 00 */ li r28, 0
+/* 802B5134 002B0D94 3B C0 00 00 */ li r30, 0
+lbl_802B5138:
+/* 802B5138 002B0D98 4B FB 96 25 */ bl OSDisableInterrupts
+/* 802B513C 002B0D9C 2C 1C 00 00 */ cmpwi r28, 0
+/* 802B5140 002B0DA0 41 80 00 18 */ blt lbl_802B5158
+/* 802B5144 002B0DA4 2C 1C 00 0A */ cmpwi r28, 0xa
+/* 802B5148 002B0DA8 40 80 00 10 */ bge lbl_802B5158
+/* 802B514C 002B0DAC 7C 9D F2 14 */ add r4, r29, r30
+/* 802B5150 002B0DB0 3B E4 00 E4 */ addi r31, r4, 0xe4
+/* 802B5154 002B0DB4 48 00 00 14 */ b lbl_802B5168
+lbl_802B5158:
+/* 802B5158 002B0DB8 38 1C FF F6 */ addi r0, r28, -10
+/* 802B515C 002B0DBC 1C 00 00 60 */ mulli r0, r0, 0x60
+/* 802B5160 002B0DC0 7C 9D 02 14 */ add r4, r29, r0
+/* 802B5164 002B0DC4 3B E4 04 A4 */ addi r31, r4, 0x4a4
+lbl_802B5168:
+/* 802B5168 002B0DC8 4B FB 96 1D */ bl OSRestoreInterrupts
+/* 802B516C 002B0DCC 88 1F 00 59 */ lbz r0, 0x59(r31)
+/* 802B5170 002B0DD0 28 00 00 08 */ cmplwi r0, 8
+/* 802B5174 002B0DD4 40 82 00 48 */ bne lbl_802B51BC
+/* 802B5178 002B0DD8 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B517C 002B0DDC 38 E0 00 08 */ li r7, 8
+/* 802B5180 002B0DE0 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B5184 002B0DE4 38 80 00 02 */ li r4, 2
+/* 802B5188 002B0DE8 38 C0 00 01 */ li r6, 1
+/* 802B518C 002B0DEC 38 00 00 00 */ li r0, 0
+/* 802B5190 002B0DF0 98 81 00 10 */ stb r4, 0x10(r1)
+/* 802B5194 002B0DF4 38 9F 00 40 */ addi r4, r31, 0x40
+/* 802B5198 002B0DF8 88 63 07 0A */ lbz r3, 0x70a(r3)
+/* 802B519C 002B0DFC 38 A1 00 08 */ addi r5, r1, 8
+/* 802B51A0 002B0E00 B0 E1 00 08 */ sth r7, 8(r1)
+/* 802B51A4 002B0E04 B0 E1 00 0A */ sth r7, 0xa(r1)
+/* 802B51A8 002B0E08 B0 C1 00 0C */ sth r6, 0xc(r1)
+/* 802B51AC 002B0E0C B0 01 00 0E */ sth r0, 0xe(r1)
+/* 802B51B0 002B0E10 48 01 3C F9 */ bl func_802C8EA8
+/* 802B51B4 002B0E14 38 60 00 0E */ li r3, 0xe
+/* 802B51B8 002B0E18 48 00 00 8C */ b lbl_802B5244
+lbl_802B51BC:
+/* 802B51BC 002B0E1C 3B 9C 00 01 */ addi r28, r28, 1
+/* 802B51C0 002B0E20 3B DE 00 60 */ addi r30, r30, 0x60
+/* 802B51C4 002B0E24 2C 1C 00 10 */ cmpwi r28, 0x10
+/* 802B51C8 002B0E28 41 80 FF 70 */ blt lbl_802B5138
+lbl_802B51CC:
+/* 802B51CC 002B0E2C 38 7D 07 10 */ addi r3, r29, 0x710
+/* 802B51D0 002B0E30 4B FB 48 A9 */ bl OSCancelAlarm
+/* 802B51D4 002B0E34 4B FB 95 89 */ bl OSDisableInterrupts
+/* 802B51D8 002B0E38 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B51DC 002B0E3C 38 A0 00 00 */ li r5, 0
+/* 802B51E0 002B0E40 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B51E4 002B0E44 38 00 00 01 */ li r0, 1
+/* 802B51E8 002B0E48 98 A4 06 EB */ stb r5, 0x6eb(r4)
+/* 802B51EC 002B0E4C 98 04 06 EA */ stb r0, 0x6ea(r4)
+/* 802B51F0 002B0E50 4B FB 95 95 */ bl OSRestoreInterrupts
+/* 802B51F4 002B0E54 38 60 00 00 */ li r3, 0
+/* 802B51F8 002B0E58 38 80 00 01 */ li r4, 1
+/* 802B51FC 002B0E5C 48 00 AF 8D */ bl func_802C0188
+/* 802B5200 002B0E60 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
+/* 802B5204 002B0E64 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5208 002B0E68 40 82 00 0C */ bne lbl_802B5214
+/* 802B520C 002B0E6C 81 9D 00 00 */ lwz r12, 0(r29)
+/* 802B5210 002B0E70 48 00 00 08 */ b lbl_802B5218
+lbl_802B5214:
+/* 802B5214 002B0E74 81 9D 00 04 */ lwz r12, 4(r29)
+lbl_802B5218:
+/* 802B5218 002B0E78 2C 0C 00 00 */ cmpwi r12, 0
+/* 802B521C 002B0E7C 41 82 00 14 */ beq lbl_802B5230
+/* 802B5220 002B0E80 88 9D 06 E6 */ lbz r4, 0x6e6(r29)
+/* 802B5224 002B0E84 38 60 00 01 */ li r3, 1
+/* 802B5228 002B0E88 7D 89 03 A6 */ mtctr r12
+/* 802B522C 002B0E8C 4E 80 04 21 */ bctrl
+lbl_802B5230:
+/* 802B5230 002B0E90 3C 60 80 44 */ lis r3, lbl_8043E1D8@ha
+/* 802B5234 002B0E94 38 63 E1 D8 */ addi r3, r3, lbl_8043E1D8@l
+/* 802B5238 002B0E98 4C C6 31 82 */ crclr 6
+/* 802B523C 002B0E9C 48 00 43 41 */ bl func_802B957C
+/* 802B5240 002B0EA0 38 60 00 00 */ li r3, 0
+lbl_802B5244:
+/* 802B5244 002B0EA4 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802B5248 002B0EA8 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 802B524C 002B0EAC 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 802B5250 002B0EB0 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 802B5254 002B0EB4 83 81 00 20 */ lwz r28, 0x20(r1)
+/* 802B5258 002B0EB8 7C 08 03 A6 */ mtlr r0
+/* 802B525C 002B0EBC 38 21 00 30 */ addi r1, r1, 0x30
+/* 802B5260 002B0EC0 4E 80 00 20 */ blr
+
+SyncHandler:
+/* 802B5264 002B0EC4 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 802B5268 002B0EC8 7C 08 02 A6 */ mflr r0
+/* 802B526C 002B0ECC 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802B5270 002B0ED0 39 61 00 60 */ addi r11, r1, 0x60
+/* 802B5274 002B0ED4 4B F1 1E B1 */ bl _savegpr_26
+/* 802B5278 002B0ED8 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B527C 002B0EDC 3F 60 80 44 */ lis r27, lbl_8043E048@ha
+/* 802B5280 002B0EE0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B5284 002B0EE4 3B BF 00 00 */ addi r29, r31, 0
+/* 802B5288 002B0EE8 3B 7B E0 48 */ addi r27, r27, lbl_8043E048@l
+/* 802B528C 002B0EEC 88 1D 00 0C */ lbz r0, 0xc(r29)
+/* 802B5290 002B0EF0 2C 00 00 0F */ cmpwi r0, 0xf
+/* 802B5294 002B0EF4 41 82 03 C8 */ beq lbl_802B565C
+/* 802B5298 002B0EF8 40 80 00 64 */ bge lbl_802B52FC
+/* 802B529C 002B0EFC 2C 00 00 07 */ cmpwi r0, 7
+/* 802B52A0 002B0F00 41 82 05 C4 */ beq lbl_802B5864
+/* 802B52A4 002B0F04 40 80 00 30 */ bge lbl_802B52D4
+/* 802B52A8 002B0F08 2C 00 00 03 */ cmpwi r0, 3
+/* 802B52AC 002B0F0C 41 82 07 84 */ beq lbl_802B5A30
+/* 802B52B0 002B0F10 40 80 00 14 */ bge lbl_802B52C4
+/* 802B52B4 002B0F14 2C 00 00 01 */ cmpwi r0, 1
+/* 802B52B8 002B0F18 41 82 00 A0 */ beq lbl_802B5358
+/* 802B52BC 002B0F1C 40 80 00 A8 */ bge lbl_802B5364
+/* 802B52C0 002B0F20 48 00 07 BC */ b lbl_802B5A7C
+lbl_802B52C4:
+/* 802B52C4 002B0F24 2C 00 00 05 */ cmpwi r0, 5
+/* 802B52C8 002B0F28 41 82 02 60 */ beq lbl_802B5528
+/* 802B52CC 002B0F2C 40 80 07 BC */ bge lbl_802B5A88
+/* 802B52D0 002B0F30 48 00 01 50 */ b lbl_802B5420
+lbl_802B52D4:
+/* 802B52D4 002B0F34 2C 00 00 0A */ cmpwi r0, 0xa
+/* 802B52D8 002B0F38 41 82 06 C4 */ beq lbl_802B599C
+/* 802B52DC 002B0F3C 40 80 00 10 */ bge lbl_802B52EC
+/* 802B52E0 002B0F40 2C 00 00 09 */ cmpwi r0, 9
+/* 802B52E4 002B0F44 40 80 07 98 */ bge lbl_802B5A7C
+/* 802B52E8 002B0F48 48 00 06 6C */ b lbl_802B5954
+lbl_802B52EC:
+/* 802B52EC 002B0F4C 2C 00 00 0D */ cmpwi r0, 0xd
+/* 802B52F0 002B0F50 41 82 07 98 */ beq lbl_802B5A88
+/* 802B52F4 002B0F54 40 80 07 30 */ bge lbl_802B5A24
+/* 802B52F8 002B0F58 48 00 07 84 */ b lbl_802B5A7C
+lbl_802B52FC:
+/* 802B52FC 002B0F5C 2C 00 00 17 */ cmpwi r0, 0x17
+/* 802B5300 002B0F60 41 82 06 C0 */ beq lbl_802B59C0
+/* 802B5304 002B0F64 40 80 00 30 */ bge lbl_802B5334
+/* 802B5308 002B0F68 2C 00 00 13 */ cmpwi r0, 0x13
+/* 802B530C 002B0F6C 41 82 04 08 */ beq lbl_802B5714
+/* 802B5310 002B0F70 40 80 00 14 */ bge lbl_802B5324
+/* 802B5314 002B0F74 2C 00 00 11 */ cmpwi r0, 0x11
+/* 802B5318 002B0F78 41 82 02 E4 */ beq lbl_802B55FC
+/* 802B531C 002B0F7C 40 80 03 88 */ bge lbl_802B56A4
+/* 802B5320 002B0F80 48 00 02 38 */ b lbl_802B5558
+lbl_802B5324:
+/* 802B5324 002B0F84 2C 00 00 15 */ cmpwi r0, 0x15
+/* 802B5328 002B0F88 41 82 04 BC */ beq lbl_802B57E4
+/* 802B532C 002B0F8C 40 80 06 44 */ bge lbl_802B5970
+/* 802B5330 002B0F90 48 00 04 4C */ b lbl_802B577C
+lbl_802B5334:
+/* 802B5334 002B0F94 2C 00 00 1A */ cmpwi r0, 0x1a
+/* 802B5338 002B0F98 41 82 07 50 */ beq lbl_802B5A88
+/* 802B533C 002B0F9C 40 80 00 10 */ bge lbl_802B534C
+/* 802B5340 002B0FA0 2C 00 00 19 */ cmpwi r0, 0x19
+/* 802B5344 002B0FA4 40 80 06 38 */ bge lbl_802B597C
+/* 802B5348 002B0FA8 48 00 07 40 */ b lbl_802B5A88
+lbl_802B534C:
+/* 802B534C 002B0FAC 2C 00 00 FF */ cmpwi r0, 0xff
+/* 802B5350 002B0FB0 41 82 06 A8 */ beq lbl_802B59F8
+/* 802B5354 002B0FB4 48 00 07 28 */ b lbl_802B5A7C
+lbl_802B5358:
+/* 802B5358 002B0FB8 4B FF FB 45 */ bl WUDiIsSyncDisabled
+/* 802B535C 002B0FBC 98 7D 00 0C */ stb r3, 0xc(r29)
+/* 802B5360 002B0FC0 48 00 07 28 */ b lbl_802B5A88
+lbl_802B5364:
+/* 802B5364 002B0FC4 88 1D 06 E7 */ lbz r0, 0x6e7(r29)
+/* 802B5368 002B0FC8 38 80 00 01 */ li r4, 1
+/* 802B536C 002B0FCC 38 60 00 00 */ li r3, 0
+/* 802B5370 002B0FD0 98 81 00 30 */ stb r4, 0x30(r1)
+/* 802B5374 002B0FD4 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5378 002B0FD8 98 81 00 32 */ stb r4, 0x32(r1)
+/* 802B537C 002B0FDC 98 61 00 33 */ stb r3, 0x33(r1)
+/* 802B5380 002B0FE0 41 82 00 10 */ beq lbl_802B5390
+/* 802B5384 002B0FE4 38 00 00 03 */ li r0, 3
+/* 802B5388 002B0FE8 98 01 00 31 */ stb r0, 0x31(r1)
+/* 802B538C 002B0FEC 48 00 00 5C */ b lbl_802B53E8
+lbl_802B5390:
+/* 802B5390 002B0FF0 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
+/* 802B5394 002B0FF4 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5398 002B0FF8 40 82 00 30 */ bne lbl_802B53C8
+/* 802B539C 002B0FFC 4B FB 93 C1 */ bl OSDisableInterrupts
+/* 802B53A0 002B1000 8B 7D 06 E5 */ lbz r27, 0x6e5(r29)
+/* 802B53A4 002B1004 4B FB 93 E1 */ bl OSRestoreInterrupts
+/* 802B53A8 002B1008 28 1B 00 03 */ cmplwi r27, 3
+/* 802B53AC 002B100C 38 60 00 05 */ li r3, 5
+/* 802B53B0 002B1010 40 82 00 08 */ bne lbl_802B53B8
+/* 802B53B4 002B1014 38 60 00 0A */ li r3, 0xa
+lbl_802B53B8:
+/* 802B53B8 002B1018 88 1D 06 E8 */ lbz r0, 0x6e8(r29)
+/* 802B53BC 002B101C 7C 00 18 50 */ subf r0, r0, r3
+/* 802B53C0 002B1020 98 01 00 31 */ stb r0, 0x31(r1)
+/* 802B53C4 002B1024 48 00 00 24 */ b lbl_802B53E8
+lbl_802B53C8:
+/* 802B53C8 002B1028 4B FB 93 95 */ bl OSDisableInterrupts
+/* 802B53CC 002B102C 8B 7D 06 E5 */ lbz r27, 0x6e5(r29)
+/* 802B53D0 002B1030 4B FB 93 B5 */ bl OSRestoreInterrupts
+/* 802B53D4 002B1034 28 1B 00 03 */ cmplwi r27, 3
+/* 802B53D8 002B1038 38 00 00 03 */ li r0, 3
+/* 802B53DC 002B103C 40 82 00 08 */ bne lbl_802B53E4
+/* 802B53E0 002B1040 38 00 00 08 */ li r0, 8
+lbl_802B53E4:
+/* 802B53E4 002B1044 98 01 00 31 */ stb r0, 0x31(r1)
+lbl_802B53E8:
+/* 802B53E8 002B1048 38 00 00 00 */ li r0, 0
+/* 802B53EC 002B104C 38 7F 0B B0 */ addi r3, r31, 0xbb0
+/* 802B53F0 002B1050 98 0D AE C1 */ stb r0, lbl_80640181-_SDA_BASE_(r13)
+/* 802B53F4 002B1054 38 80 00 00 */ li r4, 0
+/* 802B53F8 002B1058 38 A0 01 08 */ li r5, 0x108
+/* 802B53FC 002B105C 4B D4 ED 09 */ bl memset
+/* 802B5400 002B1060 3C A0 80 2C */ lis r5, WUDSearchCallback@ha
+/* 802B5404 002B1064 38 61 00 30 */ addi r3, r1, 0x30
+/* 802B5408 002B1068 38 A5 85 94 */ addi r5, r5, WUDSearchCallback@l
+/* 802B540C 002B106C 38 80 00 00 */ li r4, 0
+/* 802B5410 002B1070 48 00 AD D1 */ bl func_802C01E0
+/* 802B5414 002B1074 38 00 00 03 */ li r0, 3
+/* 802B5418 002B1078 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B541C 002B107C 48 00 06 6C */ b lbl_802B5A88
+lbl_802B5420:
+/* 802B5420 002B1080 88 0D AE C1 */ lbz r0, lbl_80640181-_SDA_BASE_(r13)
+/* 802B5424 002B1084 3B C0 00 01 */ li r30, 1
+/* 802B5428 002B1088 2C 00 00 00 */ cmpwi r0, 0
+/* 802B542C 002B108C 41 82 00 40 */ beq lbl_802B546C
+/* 802B5430 002B1090 38 7F 0B B0 */ addi r3, r31, 0xbb0
+/* 802B5434 002B1094 38 9B 01 A0 */ addi r4, r27, 0x1a0
+/* 802B5438 002B1098 38 63 00 06 */ addi r3, r3, 6
+/* 802B543C 002B109C 38 A0 00 10 */ li r5, 0x10
+/* 802B5440 002B10A0 4B F1 4F 59 */ bl memcmp
+/* 802B5444 002B10A4 2C 03 00 00 */ cmpwi r3, 0
+/* 802B5448 002B10A8 40 82 00 D8 */ bne lbl_802B5520
+/* 802B544C 002B10AC 88 6D AE C0 */ lbz r3, lbl_80640180-_SDA_BASE_(r13)
+/* 802B5450 002B10B0 88 1D 07 0B */ lbz r0, 0x70b(r29)
+/* 802B5454 002B10B4 7C 63 07 74 */ extsb r3, r3
+/* 802B5458 002B10B8 7C 00 07 74 */ extsb r0, r0
+/* 802B545C 002B10BC 7C 03 00 00 */ cmpw r3, r0
+/* 802B5460 002B10C0 40 81 00 C0 */ ble lbl_802B5520
+/* 802B5464 002B10C4 3B C0 00 05 */ li r30, 5
+/* 802B5468 002B10C8 48 00 00 B8 */ b lbl_802B5520
+lbl_802B546C:
+/* 802B546C 002B10CC 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
+/* 802B5470 002B10D0 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5474 002B10D4 40 82 00 AC */ bne lbl_802B5520
+/* 802B5478 002B10D8 3B C0 00 18 */ li r30, 0x18
+/* 802B547C 002B10DC 4B FB 92 E1 */ bl OSDisableInterrupts
+/* 802B5480 002B10E0 8B 7D 06 E5 */ lbz r27, 0x6e5(r29)
+/* 802B5484 002B10E4 4B FB 93 01 */ bl OSRestoreInterrupts
+/* 802B5488 002B10E8 28 1B 00 03 */ cmplwi r27, 3
+/* 802B548C 002B10EC 3B 60 00 02 */ li r27, 2
+/* 802B5490 002B10F0 40 82 00 08 */ bne lbl_802B5498
+/* 802B5494 002B10F4 3B 60 00 04 */ li r27, 4
+lbl_802B5498:
+/* 802B5498 002B10F8 4B FB 92 C5 */ bl OSDisableInterrupts
+/* 802B549C 002B10FC 3B 9F 00 00 */ addi r28, r31, 0
+/* 802B54A0 002B1100 8B 5C 06 E5 */ lbz r26, 0x6e5(r28)
+/* 802B54A4 002B1104 4B FB 92 E1 */ bl OSRestoreInterrupts
+/* 802B54A8 002B1108 28 1A 00 04 */ cmplwi r26, 4
+/* 802B54AC 002B110C 40 82 00 20 */ bne lbl_802B54CC
+/* 802B54B0 002B1110 4B FB 92 AD */ bl OSDisableInterrupts
+/* 802B54B4 002B1114 8B 5C 06 E4 */ lbz r26, 0x6e4(r28)
+/* 802B54B8 002B1118 4B FB 92 CD */ bl OSRestoreInterrupts
+/* 802B54BC 002B111C 28 1A 00 04 */ cmplwi r26, 4
+/* 802B54C0 002B1120 40 82 00 0C */ bne lbl_802B54CC
+/* 802B54C4 002B1124 38 00 00 0E */ li r0, 0xe
+/* 802B54C8 002B1128 98 1C 00 0C */ stb r0, 0xc(r28)
+lbl_802B54CC:
+/* 802B54CC 002B112C 4B FB 92 91 */ bl OSDisableInterrupts
+/* 802B54D0 002B1130 38 9F 00 00 */ addi r4, r31, 0
+/* 802B54D4 002B1134 38 A0 00 00 */ li r5, 0
+/* 802B54D8 002B1138 38 00 00 01 */ li r0, 1
+/* 802B54DC 002B113C 98 A4 06 EB */ stb r5, 0x6eb(r4)
+/* 802B54E0 002B1140 98 04 06 EA */ stb r0, 0x6ea(r4)
+/* 802B54E4 002B1144 4B FB 92 A1 */ bl OSRestoreInterrupts
+/* 802B54E8 002B1148 38 60 00 00 */ li r3, 0
+/* 802B54EC 002B114C 38 80 00 01 */ li r4, 1
+/* 802B54F0 002B1150 48 00 AC 99 */ bl func_802C0188
+/* 802B54F4 002B1154 38 7F 0C B8 */ addi r3, r31, 0xcb8
+/* 802B54F8 002B1158 4B FB 42 2D */ bl OSCreateAlarm
+/* 802B54FC 002B115C 3C 60 80 00 */ lis r3, 0x800000F8@ha
+/* 802B5500 002B1160 3C E0 80 2B */ lis r7, _resumeSmpSync@ha
+/* 802B5504 002B1164 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
+/* 802B5508 002B1168 38 7F 0C B8 */ addi r3, r31, 0xcb8
+/* 802B550C 002B116C 38 E7 4E 88 */ addi r7, r7, _resumeSmpSync@l
+/* 802B5510 002B1170 38 A0 00 00 */ li r5, 0
+/* 802B5514 002B1174 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B5518 002B1178 7C DB 01 D6 */ mullw r6, r27, r0
+/* 802B551C 002B117C 4B FB 44 69 */ bl OSSetAlarm
+lbl_802B5520:
+/* 802B5520 002B1180 9B DD 00 0C */ stb r30, 0xc(r29)
+/* 802B5524 002B1184 48 00 05 64 */ b lbl_802B5A88
+lbl_802B5528:
+/* 802B5528 002B1188 38 7F 0B B0 */ addi r3, r31, 0xbb0
+/* 802B552C 002B118C 3B 40 00 11 */ li r26, 0x11
+/* 802B5530 002B1190 48 00 22 35 */ bl WUDiGetDevInfo
+/* 802B5534 002B1194 2C 03 00 00 */ cmpwi r3, 0
+/* 802B5538 002B1198 41 82 00 18 */ beq lbl_802B5550
+/* 802B553C 002B119C 7C 64 1B 78 */ mr r4, r3
+/* 802B5540 002B11A0 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B5544 002B11A4 38 A0 00 60 */ li r5, 0x60
+/* 802B5548 002B11A8 4B D4 EA B9 */ bl memcpy
+/* 802B554C 002B11AC 3B 40 00 10 */ li r26, 0x10
+lbl_802B5550:
+/* 802B5550 002B11B0 9B 5D 00 0C */ stb r26, 0xc(r29)
+/* 802B5554 002B11B4 48 00 05 34 */ b lbl_802B5A88
+lbl_802B5558:
+/* 802B5558 002B11B8 3B 5F 0C E8 */ addi r26, r31, 0xce8
+/* 802B555C 002B11BC 38 60 00 01 */ li r3, 1
+/* 802B5560 002B11C0 88 1A 00 5B */ lbz r0, 0x5b(r26)
+/* 802B5564 002B11C4 98 7A 00 59 */ stb r3, 0x59(r26)
+/* 802B5568 002B11C8 2C 00 00 02 */ cmpwi r0, 2
+/* 802B556C 002B11CC 41 82 00 2C */ beq lbl_802B5598
+/* 802B5570 002B11D0 40 80 00 14 */ bge lbl_802B5584
+/* 802B5574 002B11D4 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5578 002B11D8 41 82 00 20 */ beq lbl_802B5598
+/* 802B557C 002B11DC 40 80 00 50 */ bge lbl_802B55CC
+/* 802B5580 002B11E0 48 00 00 70 */ b lbl_802B55F0
+lbl_802B5584:
+/* 802B5584 002B11E4 2C 00 00 06 */ cmpwi r0, 6
+/* 802B5588 002B11E8 40 80 00 68 */ bge lbl_802B55F0
+/* 802B558C 002B11EC 2C 00 00 04 */ cmpwi r0, 4
+/* 802B5590 002B11F0 40 80 00 08 */ bge lbl_802B5598
+/* 802B5594 002B11F4 48 00 00 38 */ b lbl_802B55CC
+lbl_802B5598:
+/* 802B5598 002B11F8 38 7F 00 00 */ addi r3, r31, 0
+/* 802B559C 002B11FC 88 03 06 E9 */ lbz r0, 0x6e9(r3)
+/* 802B55A0 002B1200 2C 00 00 00 */ cmpwi r0, 0
+/* 802B55A4 002B1204 40 82 00 1C */ bne lbl_802B55C0
+/* 802B55A8 002B1208 7F 43 D3 78 */ mr r3, r26
+/* 802B55AC 002B120C 48 00 27 F1 */ bl WUDiMoveBottomStdDevInfoPtr
+/* 802B55B0 002B1210 38 7A 00 40 */ addi r3, r26, 0x40
+/* 802B55B4 002B1214 48 00 20 6D */ bl WUDiRemoveDevice
+/* 802B55B8 002B1218 38 00 00 11 */ li r0, 0x11
+/* 802B55BC 002B121C 48 00 00 38 */ b lbl_802B55F4
+lbl_802B55C0:
+/* 802B55C0 002B1220 38 00 00 04 */ li r0, 4
+/* 802B55C4 002B1224 98 1A 00 5B */ stb r0, 0x5b(r26)
+/* 802B55C8 002B1228 48 00 00 28 */ b lbl_802B55F0
+lbl_802B55CC:
+/* 802B55CC 002B122C 7F 43 D3 78 */ mr r3, r26
+/* 802B55D0 002B1230 48 00 24 45 */ bl WUDiMoveBottomSmpDevInfoPtr
+/* 802B55D4 002B1234 38 7F 00 00 */ addi r3, r31, 0
+/* 802B55D8 002B1238 80 63 00 18 */ lwz r3, 0x18(r3)
+/* 802B55DC 002B123C 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B55E0 002B1240 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B55E4 002B1244 48 00 20 3D */ bl WUDiRemoveDevice
+/* 802B55E8 002B1248 38 00 00 11 */ li r0, 0x11
+/* 802B55EC 002B124C 48 00 00 08 */ b lbl_802B55F4
+lbl_802B55F0:
+/* 802B55F0 002B1250 38 00 00 0F */ li r0, 0xf
+lbl_802B55F4:
+/* 802B55F4 002B1254 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B55F8 002B1258 48 00 04 90 */ b lbl_802B5A88
+lbl_802B55FC:
+/* 802B55FC 002B125C 88 7D 06 E9 */ lbz r3, 0x6e9(r29)
+/* 802B5600 002B1260 3B 5F 0C E8 */ addi r26, r31, 0xce8
+/* 802B5604 002B1264 38 A0 00 01 */ li r5, 1
+/* 802B5608 002B1268 38 9F 0B B0 */ addi r4, r31, 0xbb0
+/* 802B560C 002B126C 7C 03 00 D0 */ neg r0, r3
+/* 802B5610 002B1270 98 BA 00 59 */ stb r5, 0x59(r26)
+/* 802B5614 002B1274 7C 00 1B 78 */ or r0, r0, r3
+/* 802B5618 002B1278 38 7A 00 40 */ addi r3, r26, 0x40
+/* 802B561C 002B127C 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 802B5620 002B1280 38 A0 00 06 */ li r5, 6
+/* 802B5624 002B1284 98 1A 00 5B */ stb r0, 0x5b(r26)
+/* 802B5628 002B1288 4B D4 E9 D9 */ bl memcpy
+/* 802B562C 002B128C 38 9F 0B B0 */ addi r4, r31, 0xbb0
+/* 802B5630 002B1290 7F 43 D3 78 */ mr r3, r26
+/* 802B5634 002B1294 38 84 00 06 */ addi r4, r4, 6
+/* 802B5638 002B1298 38 A0 00 40 */ li r5, 0x40
+/* 802B563C 002B129C 4B D4 E9 C5 */ bl memcpy
+/* 802B5640 002B12A0 38 7A 00 46 */ addi r3, r26, 0x46
+/* 802B5644 002B12A4 38 80 00 00 */ li r4, 0
+/* 802B5648 002B12A8 38 A0 00 10 */ li r5, 0x10
+/* 802B564C 002B12AC 4B D4 EA B9 */ bl memset
+/* 802B5650 002B12B0 38 00 00 0F */ li r0, 0xf
+/* 802B5654 002B12B4 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B5658 002B12B8 48 00 04 30 */ b lbl_802B5A88
+lbl_802B565C:
+/* 802B565C 002B12BC 38 7F 0B B0 */ addi r3, r31, 0xbb0
+/* 802B5660 002B12C0 38 9B 01 A0 */ addi r4, r27, 0x1a0
+/* 802B5664 002B12C4 38 63 00 06 */ addi r3, r3, 6
+/* 802B5668 002B12C8 3B 40 00 FF */ li r26, 0xff
+/* 802B566C 002B12CC 38 A0 00 10 */ li r5, 0x10
+/* 802B5670 002B12D0 4B F1 4D 29 */ bl memcmp
+/* 802B5674 002B12D4 2C 03 00 00 */ cmpwi r3, 0
+/* 802B5678 002B12D8 40 82 00 24 */ bne lbl_802B569C
+/* 802B567C 002B12DC 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B5680 002B12E0 38 00 00 02 */ li r0, 2
+/* 802B5684 002B12E4 98 03 00 59 */ stb r0, 0x59(r3)
+/* 802B5688 002B12E8 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B568C 002B12EC 38 80 00 00 */ li r4, 0
+/* 802B5690 002B12F0 38 A0 00 12 */ li r5, 0x12
+/* 802B5694 002B12F4 48 00 D1 ED */ bl func_802C2880
+/* 802B5698 002B12F8 3B 40 00 06 */ li r26, 6
+lbl_802B569C:
+/* 802B569C 002B12FC 9B 5D 00 0C */ stb r26, 0xc(r29)
+/* 802B56A0 002B1300 48 00 03 E8 */ b lbl_802B5A88
+lbl_802B56A4:
+/* 802B56A4 002B1304 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B56A8 002B1308 88 03 00 5B */ lbz r0, 0x5b(r3)
+/* 802B56AC 002B130C 2C 00 00 03 */ cmpwi r0, 3
+/* 802B56B0 002B1310 41 82 00 48 */ beq lbl_802B56F8
+/* 802B56B4 002B1314 40 80 00 1C */ bge lbl_802B56D0
+/* 802B56B8 002B1318 2C 00 00 01 */ cmpwi r0, 1
+/* 802B56BC 002B131C 41 82 00 24 */ beq lbl_802B56E0
+/* 802B56C0 002B1320 40 80 00 48 */ bge lbl_802B5708
+/* 802B56C4 002B1324 2C 00 00 00 */ cmpwi r0, 0
+/* 802B56C8 002B1328 40 80 00 20 */ bge lbl_802B56E8
+/* 802B56CC 002B132C 48 00 00 40 */ b lbl_802B570C
+lbl_802B56D0:
+/* 802B56D0 002B1330 2C 00 00 05 */ cmpwi r0, 5
+/* 802B56D4 002B1334 41 82 00 1C */ beq lbl_802B56F0
+/* 802B56D8 002B1338 40 80 00 34 */ bge lbl_802B570C
+/* 802B56DC 002B133C 48 00 00 24 */ b lbl_802B5700
+lbl_802B56E0:
+/* 802B56E0 002B1340 38 00 00 13 */ li r0, 0x13
+/* 802B56E4 002B1344 48 00 00 28 */ b lbl_802B570C
+lbl_802B56E8:
+/* 802B56E8 002B1348 38 00 00 14 */ li r0, 0x14
+/* 802B56EC 002B134C 48 00 00 20 */ b lbl_802B570C
+lbl_802B56F0:
+/* 802B56F0 002B1350 38 00 00 15 */ li r0, 0x15
+/* 802B56F4 002B1354 48 00 00 18 */ b lbl_802B570C
+lbl_802B56F8:
+/* 802B56F8 002B1358 38 00 00 17 */ li r0, 0x17
+/* 802B56FC 002B135C 48 00 00 10 */ b lbl_802B570C
+lbl_802B5700:
+/* 802B5700 002B1360 38 00 00 07 */ li r0, 7
+/* 802B5704 002B1364 48 00 00 08 */ b lbl_802B570C
+lbl_802B5708:
+/* 802B5708 002B1368 38 00 00 07 */ li r0, 7
+lbl_802B570C:
+/* 802B570C 002B136C 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B5710 002B1370 48 00 03 78 */ b lbl_802B5A88
+lbl_802B5714:
+/* 802B5714 002B1374 4B FB 90 49 */ bl OSDisableInterrupts
+/* 802B5718 002B1378 8B 5D 00 13 */ lbz r26, 0x13(r29)
+/* 802B571C 002B137C 4B FB 90 69 */ bl OSRestoreInterrupts
+/* 802B5720 002B1380 28 1A 00 06 */ cmplwi r26, 6
+/* 802B5724 002B1384 40 82 00 14 */ bne lbl_802B5738
+/* 802B5728 002B1388 80 7D 00 18 */ lwz r3, 0x18(r29)
+/* 802B572C 002B138C 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B5730 002B1390 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B5734 002B1394 48 00 1E ED */ bl WUDiRemoveDevice
+lbl_802B5738:
+/* 802B5738 002B1398 48 00 21 05 */ bl WUDiGetNewDevInfo
+/* 802B573C 002B139C 7C 7A 1B 78 */ mr r26, r3
+/* 802B5740 002B13A0 38 9F 0C E8 */ addi r4, r31, 0xce8
+/* 802B5744 002B13A4 38 A0 00 60 */ li r5, 0x60
+/* 802B5748 002B13A8 4B D4 E8 B9 */ bl memcpy
+/* 802B574C 002B13AC 38 7A 00 40 */ addi r3, r26, 0x40
+/* 802B5750 002B13B0 48 00 1D B9 */ bl WUDiRegisterDevice
+/* 802B5754 002B13B4 7F 43 D3 78 */ mr r3, r26
+/* 802B5758 002B13B8 48 00 21 A5 */ bl WUDiMoveTopSmpDevInfoPtr
+/* 802B575C 002B13BC 88 9A 00 56 */ lbz r4, 0x56(r26)
+/* 802B5760 002B13C0 38 00 00 17 */ li r0, 0x17
+/* 802B5764 002B13C4 38 BA 00 40 */ addi r5, r26, 0x40
+/* 802B5768 002B13C8 38 7F 0D 48 */ addi r3, r31, 0xd48
+/* 802B576C 002B13CC 54 84 10 3A */ slwi r4, r4, 2
+/* 802B5770 002B13D0 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B5774 002B13D4 7C A3 21 2E */ stwx r5, r3, r4
+/* 802B5778 002B13D8 48 00 03 10 */ b lbl_802B5A88
+lbl_802B577C:
+/* 802B577C 002B13DC 4B FB 8F E1 */ bl OSDisableInterrupts
+/* 802B5780 002B13E0 8B 5D 00 12 */ lbz r26, 0x12(r29)
+/* 802B5784 002B13E4 4B FB 90 01 */ bl OSRestoreInterrupts
+/* 802B5788 002B13E8 28 1A 00 0A */ cmplwi r26, 0xa
+/* 802B578C 002B13EC 40 82 00 14 */ bne lbl_802B57A0
+/* 802B5790 002B13F0 80 7D 00 68 */ lwz r3, 0x68(r29)
+/* 802B5794 002B13F4 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B5798 002B13F8 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B579C 002B13FC 48 00 1E 85 */ bl WUDiRemoveDevice
+lbl_802B57A0:
+/* 802B57A0 002B1400 48 00 20 9D */ bl WUDiGetNewDevInfo
+/* 802B57A4 002B1404 7C 7A 1B 78 */ mr r26, r3
+/* 802B57A8 002B1408 38 9F 0C E8 */ addi r4, r31, 0xce8
+/* 802B57AC 002B140C 38 A0 00 60 */ li r5, 0x60
+/* 802B57B0 002B1410 4B D4 E8 51 */ bl memcpy
+/* 802B57B4 002B1414 38 7A 00 40 */ addi r3, r26, 0x40
+/* 802B57B8 002B1418 48 00 1D 51 */ bl WUDiRegisterDevice
+/* 802B57BC 002B141C 7F 43 D3 78 */ mr r3, r26
+/* 802B57C0 002B1420 48 00 24 C5 */ bl WUDiMoveTopStdDevInfoPtr
+/* 802B57C4 002B1424 88 9A 00 56 */ lbz r4, 0x56(r26)
+/* 802B57C8 002B1428 38 00 00 07 */ li r0, 7
+/* 802B57CC 002B142C 38 BA 00 40 */ addi r5, r26, 0x40
+/* 802B57D0 002B1430 38 7F 0D 48 */ addi r3, r31, 0xd48
+/* 802B57D4 002B1434 54 84 10 3A */ slwi r4, r4, 2
+/* 802B57D8 002B1438 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B57DC 002B143C 7C A3 21 2E */ stwx r5, r3, r4
+/* 802B57E0 002B1440 48 00 02 A8 */ b lbl_802B5A88
+lbl_802B57E4:
+/* 802B57E4 002B1444 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B57E8 002B1448 48 00 22 2D */ bl WUDiMoveBottomSmpDevInfoPtr
+/* 802B57EC 002B144C 80 7D 00 18 */ lwz r3, 0x18(r29)
+/* 802B57F0 002B1450 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B57F4 002B1454 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B57F8 002B1458 48 00 1E 29 */ bl WUDiRemoveDevice
+/* 802B57FC 002B145C 4B FB 8F 61 */ bl OSDisableInterrupts
+/* 802B5800 002B1460 8B 5D 00 12 */ lbz r26, 0x12(r29)
+/* 802B5804 002B1464 4B FB 8F 81 */ bl OSRestoreInterrupts
+/* 802B5808 002B1468 28 1A 00 0A */ cmplwi r26, 0xa
+/* 802B580C 002B146C 40 82 00 14 */ bne lbl_802B5820
+/* 802B5810 002B1470 80 7D 00 68 */ lwz r3, 0x68(r29)
+/* 802B5814 002B1474 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B5818 002B1478 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B581C 002B147C 48 00 1E 05 */ bl WUDiRemoveDevice
+lbl_802B5820:
+/* 802B5820 002B1480 48 00 20 1D */ bl WUDiGetNewDevInfo
+/* 802B5824 002B1484 7C 7A 1B 78 */ mr r26, r3
+/* 802B5828 002B1488 38 9F 0C E8 */ addi r4, r31, 0xce8
+/* 802B582C 002B148C 38 A0 00 60 */ li r5, 0x60
+/* 802B5830 002B1490 4B D4 E7 D1 */ bl memcpy
+/* 802B5834 002B1494 38 7A 00 40 */ addi r3, r26, 0x40
+/* 802B5838 002B1498 48 00 1C D1 */ bl WUDiRegisterDevice
+/* 802B583C 002B149C 7F 43 D3 78 */ mr r3, r26
+/* 802B5840 002B14A0 48 00 24 45 */ bl WUDiMoveTopStdDevInfoPtr
+/* 802B5844 002B14A4 88 9A 00 56 */ lbz r4, 0x56(r26)
+/* 802B5848 002B14A8 38 00 00 07 */ li r0, 7
+/* 802B584C 002B14AC 38 BA 00 40 */ addi r5, r26, 0x40
+/* 802B5850 002B14B0 38 7F 0D 48 */ addi r3, r31, 0xd48
+/* 802B5854 002B14B4 54 84 10 3A */ slwi r4, r4, 2
+/* 802B5858 002B14B8 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B585C 002B14BC 7C A3 21 2E */ stwx r5, r3, r4
+/* 802B5860 002B14C0 48 00 02 28 */ b lbl_802B5A88
+lbl_802B5864:
+/* 802B5864 002B14C4 88 1D 00 0E */ lbz r0, 0xe(r29)
+/* 802B5868 002B14C8 2C 00 00 00 */ cmpwi r0, 0
+/* 802B586C 002B14CC 41 82 00 0C */ beq lbl_802B5878
+/* 802B5870 002B14D0 38 00 00 07 */ li r0, 7
+/* 802B5874 002B14D4 48 00 00 D8 */ b lbl_802B594C
+lbl_802B5878:
+/* 802B5878 002B14D8 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B587C 002B14DC 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B5880 002B14E0 48 00 1E E5 */ bl WUDiGetDevInfo
+/* 802B5884 002B14E4 7C 7E 1B 78 */ mr r30, r3
+/* 802B5888 002B14E8 38 7B 01 B4 */ addi r3, r27, 0x1b4
+/* 802B588C 002B14EC 4C C6 31 82 */ crclr 6
+/* 802B5890 002B14F0 48 00 3C ED */ bl func_802B957C
+/* 802B5894 002B14F4 88 9E 00 40 */ lbz r4, 0x40(r30)
+/* 802B5898 002B14F8 38 7B 01 CC */ addi r3, r27, 0x1cc
+/* 802B589C 002B14FC 88 BE 00 41 */ lbz r5, 0x41(r30)
+/* 802B58A0 002B1500 88 DE 00 42 */ lbz r6, 0x42(r30)
+/* 802B58A4 002B1504 88 FE 00 43 */ lbz r7, 0x43(r30)
+/* 802B58A8 002B1508 89 1E 00 44 */ lbz r8, 0x44(r30)
+/* 802B58AC 002B150C 89 3E 00 45 */ lbz r9, 0x45(r30)
+/* 802B58B0 002B1510 4C C6 31 82 */ crclr 6
+/* 802B58B4 002B1514 48 00 3C C9 */ bl func_802B957C
+/* 802B58B8 002B1518 88 1E 00 4D */ lbz r0, 0x4d(r30)
+/* 802B58BC 002B151C 38 7B 01 F8 */ addi r3, r27, 0x1f8
+/* 802B58C0 002B1520 90 01 00 08 */ stw r0, 8(r1)
+/* 802B58C4 002B1524 88 1E 00 4E */ lbz r0, 0x4e(r30)
+/* 802B58C8 002B1528 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802B58CC 002B152C 88 1E 00 4F */ lbz r0, 0x4f(r30)
+/* 802B58D0 002B1530 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802B58D4 002B1534 88 1E 00 50 */ lbz r0, 0x50(r30)
+/* 802B58D8 002B1538 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B58DC 002B153C 88 1E 00 51 */ lbz r0, 0x51(r30)
+/* 802B58E0 002B1540 90 01 00 18 */ stw r0, 0x18(r1)
+/* 802B58E4 002B1544 88 1E 00 52 */ lbz r0, 0x52(r30)
+/* 802B58E8 002B1548 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 802B58EC 002B154C 88 1E 00 53 */ lbz r0, 0x53(r30)
+/* 802B58F0 002B1550 90 01 00 20 */ stw r0, 0x20(r1)
+/* 802B58F4 002B1554 88 1E 00 54 */ lbz r0, 0x54(r30)
+/* 802B58F8 002B1558 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B58FC 002B155C 88 1E 00 55 */ lbz r0, 0x55(r30)
+/* 802B5900 002B1560 90 01 00 28 */ stw r0, 0x28(r1)
+/* 802B5904 002B1564 88 9E 00 46 */ lbz r4, 0x46(r30)
+/* 802B5908 002B1568 88 BE 00 47 */ lbz r5, 0x47(r30)
+/* 802B590C 002B156C 88 DE 00 48 */ lbz r6, 0x48(r30)
+/* 802B5910 002B1570 88 FE 00 49 */ lbz r7, 0x49(r30)
+/* 802B5914 002B1574 89 1E 00 4A */ lbz r8, 0x4a(r30)
+/* 802B5918 002B1578 89 3E 00 4B */ lbz r9, 0x4b(r30)
+/* 802B591C 002B157C 89 5E 00 4C */ lbz r10, 0x4c(r30)
+/* 802B5920 002B1580 4C C6 31 82 */ crclr 6
+/* 802B5924 002B1584 48 00 3C 59 */ bl func_802B957C
+/* 802B5928 002B1588 38 00 00 02 */ li r0, 2
+/* 802B592C 002B158C 3C C0 80 2C */ lis r6, WUDStoredLinkKeyCallback@ha
+/* 802B5930 002B1590 98 1D 00 0E */ stb r0, 0xe(r29)
+/* 802B5934 002B1594 38 9E 00 40 */ addi r4, r30, 0x40
+/* 802B5938 002B1598 38 BE 00 46 */ addi r5, r30, 0x46
+/* 802B593C 002B159C 38 C6 8B 08 */ addi r6, r6, WUDStoredLinkKeyCallback@l
+/* 802B5940 002B15A0 38 60 00 01 */ li r3, 1
+/* 802B5944 002B15A4 48 01 13 F5 */ bl func_802C6D38
+/* 802B5948 002B15A8 38 00 00 08 */ li r0, 8
+lbl_802B594C:
+/* 802B594C 002B15AC 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B5950 002B15B0 48 00 01 38 */ b lbl_802B5A88
+lbl_802B5954:
+/* 802B5954 002B15B4 88 1D 00 0E */ lbz r0, 0xe(r29)
+/* 802B5958 002B15B8 38 60 00 08 */ li r3, 8
+/* 802B595C 002B15BC 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5960 002B15C0 40 82 00 08 */ bne lbl_802B5968
+/* 802B5964 002B15C4 38 60 00 16 */ li r3, 0x16
+lbl_802B5968:
+/* 802B5968 002B15C8 98 7D 00 0C */ stb r3, 0xc(r29)
+/* 802B596C 002B15CC 48 00 01 1C */ b lbl_802B5A88
+lbl_802B5970:
+/* 802B5970 002B15D0 4B FF F6 85 */ bl WUDiSaveDeviceToNand
+/* 802B5974 002B15D4 98 7D 00 0C */ stb r3, 0xc(r29)
+/* 802B5978 002B15D8 48 00 01 10 */ b lbl_802B5A88
+lbl_802B597C:
+/* 802B597C 002B15DC 4B FB 8D E1 */ bl OSDisableInterrupts
+/* 802B5980 002B15E0 38 00 00 0D */ li r0, 0xd
+/* 802B5984 002B15E4 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B5988 002B15E8 4B FB 8D FD */ bl OSRestoreInterrupts
+/* 802B598C 002B15EC 3C 60 80 2B */ lis r3, SyncFlushCallback@ha
+/* 802B5990 002B15F0 38 63 4D 60 */ addi r3, r3, SyncFlushCallback@l
+/* 802B5994 002B15F4 48 03 64 39 */ bl func_802EBDCC
+/* 802B5998 002B15F8 48 00 00 F0 */ b lbl_802B5A88
+lbl_802B599C:
+/* 802B599C 002B15FC 88 1D 00 0E */ lbz r0, 0xe(r29)
+/* 802B59A0 002B1600 3B 40 00 0A */ li r26, 0xa
+/* 802B59A4 002B1604 2C 00 00 00 */ cmpwi r0, 0
+/* 802B59A8 002B1608 40 82 00 10 */ bne lbl_802B59B8
+/* 802B59AC 002B160C 38 7D 06 FC */ addi r3, r29, 0x6fc
+/* 802B59B0 002B1610 3B 40 00 14 */ li r26, 0x14
+/* 802B59B4 002B1614 48 00 1C 6D */ bl WUDiRemoveDevice
+lbl_802B59B8:
+/* 802B59B8 002B1618 9B 5D 00 0C */ stb r26, 0xc(r29)
+/* 802B59BC 002B161C 48 00 00 CC */ b lbl_802B5A88
+lbl_802B59C0:
+/* 802B59C0 002B1620 88 DD 06 E6 */ lbz r6, 0x6e6(r29)
+/* 802B59C4 002B1624 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B59C8 002B1628 38 80 00 00 */ li r4, 0
+/* 802B59CC 002B162C 38 A0 00 60 */ li r5, 0x60
+/* 802B59D0 002B1630 38 06 00 01 */ addi r0, r6, 1
+/* 802B59D4 002B1634 98 1D 06 E6 */ stb r0, 0x6e6(r29)
+/* 802B59D8 002B1638 4B D4 E7 2D */ bl memset
+/* 802B59DC 002B163C 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
+/* 802B59E0 002B1640 38 60 00 01 */ li r3, 1
+/* 802B59E4 002B1644 2C 00 00 00 */ cmpwi r0, 0
+/* 802B59E8 002B1648 40 82 00 08 */ bne lbl_802B59F0
+/* 802B59EC 002B164C 38 60 00 0E */ li r3, 0xe
+lbl_802B59F0:
+/* 802B59F0 002B1650 98 7D 00 0C */ stb r3, 0xc(r29)
+/* 802B59F4 002B1654 48 00 00 94 */ b lbl_802B5A88
+lbl_802B59F8:
+/* 802B59F8 002B1658 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B59FC 002B165C 38 80 00 00 */ li r4, 0
+/* 802B5A00 002B1660 38 A0 00 60 */ li r5, 0x60
+/* 802B5A04 002B1664 4B D4 E7 01 */ bl memset
+/* 802B5A08 002B1668 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
+/* 802B5A0C 002B166C 38 60 00 01 */ li r3, 1
+/* 802B5A10 002B1670 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5A14 002B1674 40 82 00 08 */ bne lbl_802B5A1C
+/* 802B5A18 002B1678 38 60 00 0E */ li r3, 0xe
+lbl_802B5A1C:
+/* 802B5A1C 002B167C 98 7D 00 0C */ stb r3, 0xc(r29)
+/* 802B5A20 002B1680 48 00 00 68 */ b lbl_802B5A88
+lbl_802B5A24:
+/* 802B5A24 002B1684 4B FF F6 DD */ bl WUDiSyncDone
+/* 802B5A28 002B1688 98 7D 00 0C */ stb r3, 0xc(r29)
+/* 802B5A2C 002B168C 48 00 00 5C */ b lbl_802B5A88
+lbl_802B5A30:
+/* 802B5A30 002B1690 4B FB 8D 2D */ bl OSDisableInterrupts
+/* 802B5A34 002B1694 8B 5D 06 E5 */ lbz r26, 0x6e5(r29)
+/* 802B5A38 002B1698 4B FB 8D 4D */ bl OSRestoreInterrupts
+/* 802B5A3C 002B169C 28 1A 00 04 */ cmplwi r26, 4
+/* 802B5A40 002B16A0 40 82 00 30 */ bne lbl_802B5A70
+/* 802B5A44 002B16A4 4B FB 8D 19 */ bl OSDisableInterrupts
+/* 802B5A48 002B16A8 8B 5D 06 E4 */ lbz r26, 0x6e4(r29)
+/* 802B5A4C 002B16AC 4B FB 8D 39 */ bl OSRestoreInterrupts
+/* 802B5A50 002B16B0 28 1A 00 04 */ cmplwi r26, 4
+/* 802B5A54 002B16B4 40 82 00 1C */ bne lbl_802B5A70
+/* 802B5A58 002B16B8 38 7B 02 50 */ addi r3, r27, 0x250
+/* 802B5A5C 002B16BC 4C C6 31 82 */ crclr 6
+/* 802B5A60 002B16C0 48 00 3B 1D */ bl func_802B957C
+/* 802B5A64 002B16C4 48 00 A8 01 */ bl func_802C0264
+/* 802B5A68 002B16C8 38 00 00 1A */ li r0, 0x1a
+/* 802B5A6C 002B16CC 48 00 00 08 */ b lbl_802B5A74
+lbl_802B5A70:
+/* 802B5A70 002B16D0 38 00 00 03 */ li r0, 3
+lbl_802B5A74:
+/* 802B5A74 002B16D4 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B5A78 002B16D8 48 00 00 10 */ b lbl_802B5A88
+lbl_802B5A7C:
+/* 802B5A7C 002B16DC 38 7B 02 80 */ addi r3, r27, 0x280
+/* 802B5A80 002B16E0 4C C6 31 82 */ crclr 6
+/* 802B5A84 002B16E4 48 00 3A F9 */ bl func_802B957C
+lbl_802B5A88:
+/* 802B5A88 002B16E8 39 61 00 60 */ addi r11, r1, 0x60
+/* 802B5A8C 002B16EC 4B F1 16 E5 */ bl _restgpr_26
+/* 802B5A90 002B16F0 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802B5A94 002B16F4 7C 08 03 A6 */ mtlr r0
+/* 802B5A98 002B16F8 38 21 00 60 */ addi r1, r1, 0x60
+/* 802B5A9C 002B16FC 4E 80 00 20 */ blr
+
+SyncHandler0:
+/* 802B5AA0 002B1700 3D 00 80 54 */ lis r8, lbl_8053B280@ha
+/* 802B5AA4 002B1704 3C E0 80 2B */ lis r7, SyncHandler@ha
+/* 802B5AA8 002B1708 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
+/* 802B5AAC 002B170C 38 A0 00 00 */ li r5, 0
+/* 802B5AB0 002B1710 38 E7 52 64 */ addi r7, r7, SyncHandler@l
+/* 802B5AB4 002B1714 38 C0 00 00 */ li r6, 0
+/* 802B5AB8 002B1718 39 08 10 00 */ addi r8, r8, 0x1000
+/* 802B5ABC 002B171C 4B FB 55 A4 */ b OSSwitchFiberEx
+
+.global WUDiTerminateDevice
+WUDiTerminateDevice:
+/* 802B5AC0 002B1720 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B5AC4 002B1724 7C 08 02 A6 */ mflr r0
+/* 802B5AC8 002B1728 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B5ACC 002B172C 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B5AD0 002B1730 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B5AD4 002B1734 3B C0 00 00 */ li r30, 0
+/* 802B5AD8 002B1738 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B5ADC 002B173C 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B5AE0 002B1740 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B5AE4 002B1744 3B FD 00 E4 */ addi r31, r29, 0xe4
+lbl_802B5AE8:
+/* 802B5AE8 002B1748 88 1F 00 59 */ lbz r0, 0x59(r31)
+/* 802B5AEC 002B174C 28 00 00 01 */ cmplwi r0, 1
+/* 802B5AF0 002B1750 40 81 00 0C */ ble lbl_802B5AFC
+/* 802B5AF4 002B1754 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B5AF8 002B1758 48 00 F3 9D */ bl func_802C4E94
+lbl_802B5AFC:
+/* 802B5AFC 002B175C 3B DE 00 01 */ addi r30, r30, 1
+/* 802B5B00 002B1760 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B5B04 002B1764 2C 1E 00 0A */ cmpwi r30, 0xa
+/* 802B5B08 002B1768 41 80 FF E0 */ blt lbl_802B5AE8
+/* 802B5B0C 002B176C 3B FD 04 A4 */ addi r31, r29, 0x4a4
+/* 802B5B10 002B1770 3B C0 00 00 */ li r30, 0
+lbl_802B5B14:
+/* 802B5B14 002B1774 88 1F 00 59 */ lbz r0, 0x59(r31)
+/* 802B5B18 002B1778 28 00 00 01 */ cmplwi r0, 1
+/* 802B5B1C 002B177C 40 81 00 0C */ ble lbl_802B5B28
+/* 802B5B20 002B1780 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B5B24 002B1784 48 00 F3 71 */ bl func_802C4E94
+lbl_802B5B28:
+/* 802B5B28 002B1788 3B DE 00 01 */ addi r30, r30, 1
+/* 802B5B2C 002B178C 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B5B30 002B1790 2C 1E 00 06 */ cmpwi r30, 6
+/* 802B5B34 002B1794 41 80 FF E0 */ blt lbl_802B5B14
+/* 802B5B38 002B1798 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B5B3C 002B179C 38 60 00 03 */ li r3, 3
+/* 802B5B40 002B17A0 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B5B44 002B17A4 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B5B48 002B17A8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B5B4C 002B17AC 7C 08 03 A6 */ mtlr r0
+/* 802B5B50 002B17B0 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B5B54 002B17B4 4E 80 00 20 */ blr
+
+.global WUDiDeleteDevice
+WUDiDeleteDevice:
+/* 802B5B58 002B17B8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B5B5C 002B17BC 7C 08 02 A6 */ mflr r0
+/* 802B5B60 002B17C0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B5B64 002B17C4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B5B68 002B17C8 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B5B6C 002B17CC 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B5B70 002B17D0 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B5B74 002B17D4 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B5B78 002B17D8 4B FB 8B E5 */ bl OSDisableInterrupts
+/* 802B5B7C 002B17DC 8B FD 06 E5 */ lbz r31, 0x6e5(r29)
+/* 802B5B80 002B17E0 4B FB 8C 05 */ bl OSRestoreInterrupts
+/* 802B5B84 002B17E4 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B5B88 002B17E8 41 82 00 0C */ beq lbl_802B5B94
+/* 802B5B8C 002B17EC 38 60 00 03 */ li r3, 3
+/* 802B5B90 002B17F0 48 00 00 60 */ b lbl_802B5BF0
+lbl_802B5B94:
+/* 802B5B94 002B17F4 3B FD 00 E4 */ addi r31, r29, 0xe4
+/* 802B5B98 002B17F8 3B C0 00 00 */ li r30, 0
+lbl_802B5B9C:
+/* 802B5B9C 002B17FC 88 1F 00 59 */ lbz r0, 0x59(r31)
+/* 802B5BA0 002B1800 28 00 00 01 */ cmplwi r0, 1
+/* 802B5BA4 002B1804 40 82 00 0C */ bne lbl_802B5BB0
+/* 802B5BA8 002B1808 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B5BAC 002B180C 48 00 1A 75 */ bl WUDiRemoveDevice
+lbl_802B5BB0:
+/* 802B5BB0 002B1810 3B DE 00 01 */ addi r30, r30, 1
+/* 802B5BB4 002B1814 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B5BB8 002B1818 2C 1E 00 0A */ cmpwi r30, 0xa
+/* 802B5BBC 002B181C 41 80 FF E0 */ blt lbl_802B5B9C
+/* 802B5BC0 002B1820 3B FD 04 A4 */ addi r31, r29, 0x4a4
+/* 802B5BC4 002B1824 3B C0 00 00 */ li r30, 0
+lbl_802B5BC8:
+/* 802B5BC8 002B1828 88 1F 00 59 */ lbz r0, 0x59(r31)
+/* 802B5BCC 002B182C 28 00 00 01 */ cmplwi r0, 1
+/* 802B5BD0 002B1830 40 82 00 0C */ bne lbl_802B5BDC
+/* 802B5BD4 002B1834 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B5BD8 002B1838 48 00 1A 49 */ bl WUDiRemoveDevice
+lbl_802B5BDC:
+/* 802B5BDC 002B183C 3B DE 00 01 */ addi r30, r30, 1
+/* 802B5BE0 002B1840 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B5BE4 002B1844 2C 1E 00 06 */ cmpwi r30, 6
+/* 802B5BE8 002B1848 41 80 FF E0 */ blt lbl_802B5BC8
+/* 802B5BEC 002B184C 38 60 00 05 */ li r3, 5
+lbl_802B5BF0:
+/* 802B5BF0 002B1850 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B5BF4 002B1854 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B5BF8 002B1858 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B5BFC 002B185C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B5C00 002B1860 7C 08 03 A6 */ mtlr r0
+/* 802B5C04 002B1864 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B5C08 002B1868 4E 80 00 20 */ blr
+
+DeleteAllHandler:
+/* 802B5C0C 002B186C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B5C10 002B1870 7C 08 02 A6 */ mflr r0
+/* 802B5C14 002B1874 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B5C18 002B1878 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B5C1C 002B187C 3B E0 00 00 */ li r31, 0
+/* 802B5C20 002B1880 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B5C24 002B1884 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B5C28 002B1888 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B5C2C 002B188C 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B5C30 002B1890 88 1D 00 0D */ lbz r0, 0xd(r29)
+/* 802B5C34 002B1894 9B FD 00 0C */ stb r31, 0xc(r29)
+/* 802B5C38 002B1898 28 00 00 08 */ cmplwi r0, 8
+/* 802B5C3C 002B189C 41 81 00 E8 */ bgt lbl_802B5D24
+/* 802B5C40 002B18A0 3C 60 80 44 */ lis r3, lbl_8043E2E4@ha
+/* 802B5C44 002B18A4 54 00 10 3A */ slwi r0, r0, 2
+/* 802B5C48 002B18A8 38 63 E2 E4 */ addi r3, r3, lbl_8043E2E4@l
+/* 802B5C4C 002B18AC 7C 63 00 2E */ lwzx r3, r3, r0
+/* 802B5C50 002B18B0 7C 69 03 A6 */ mtctr r3
+/* 802B5C54 002B18B4 4E 80 04 20 */ bctr
+/* 802B5C58 002B18B8 38 60 00 00 */ li r3, 0
+/* 802B5C5C 002B18BC 38 80 00 00 */ li r4, 0
+/* 802B5C60 002B18C0 48 00 A5 29 */ bl func_802C0188
+/* 802B5C64 002B18C4 38 00 00 02 */ li r0, 2
+/* 802B5C68 002B18C8 98 1D 00 0D */ stb r0, 0xd(r29)
+/* 802B5C6C 002B18CC 48 00 00 B8 */ b lbl_802B5D24
+/* 802B5C70 002B18D0 4B FF FE 51 */ bl WUDiTerminateDevice
+/* 802B5C74 002B18D4 98 7D 00 0D */ stb r3, 0xd(r29)
+/* 802B5C78 002B18D8 48 00 00 AC */ b lbl_802B5D24
+/* 802B5C7C 002B18DC 4B FF FE DD */ bl WUDiDeleteDevice
+/* 802B5C80 002B18E0 98 7D 00 0D */ stb r3, 0xd(r29)
+/* 802B5C84 002B18E4 48 00 00 A0 */ b lbl_802B5D24
+/* 802B5C88 002B18E8 48 03 4D 65 */ bl func_802EA9EC
+/* 802B5C8C 002B18EC 28 03 00 01 */ cmplwi r3, 1
+/* 802B5C90 002B18F0 41 82 00 94 */ beq lbl_802B5D24
+/* 802B5C94 002B18F4 3F E0 80 54 */ lis r31, lbl_8053AC28@ha
+/* 802B5C98 002B18F8 38 80 00 00 */ li r4, 0
+/* 802B5C9C 002B18FC 38 7F AC 28 */ addi r3, r31, lbl_8053AC28@l
+/* 802B5CA0 002B1900 38 A0 04 61 */ li r5, 0x461
+/* 802B5CA4 002B1904 4B D4 E4 61 */ bl memset
+/* 802B5CA8 002B1908 38 7F AC 28 */ addi r3, r31, -21464
+/* 802B5CAC 002B190C 48 03 69 61 */ bl func_802EC60C
+/* 802B5CB0 002B1910 2C 03 00 00 */ cmpwi r3, 0
+/* 802B5CB4 002B1914 41 82 00 70 */ beq lbl_802B5D24
+/* 802B5CB8 002B1918 38 00 00 06 */ li r0, 6
+/* 802B5CBC 002B191C 3C 60 80 2B */ lis r3, DeleteFlushCallback@ha
+/* 802B5CC0 002B1920 98 1D 00 0D */ stb r0, 0xd(r29)
+/* 802B5CC4 002B1924 38 63 4D D8 */ addi r3, r3, DeleteFlushCallback@l
+/* 802B5CC8 002B1928 48 03 61 05 */ bl func_802EBDCC
+/* 802B5CCC 002B192C 48 00 00 58 */ b lbl_802B5D24
+/* 802B5CD0 002B1930 4B FB 8A 8D */ bl OSDisableInterrupts
+/* 802B5CD4 002B1934 8B DD 06 EA */ lbz r30, 0x6ea(r29)
+/* 802B5CD8 002B1938 4B FB 8A AD */ bl OSRestoreInterrupts
+/* 802B5CDC 002B193C 4B FB 8A 81 */ bl OSDisableInterrupts
+/* 802B5CE0 002B1940 9B FD 06 EB */ stb r31, 0x6eb(r29)
+/* 802B5CE4 002B1944 9B DD 06 EA */ stb r30, 0x6ea(r29)
+/* 802B5CE8 002B1948 4B FB 8A 9D */ bl OSRestoreInterrupts
+/* 802B5CEC 002B194C 7F C4 F3 78 */ mr r4, r30
+/* 802B5CF0 002B1950 38 60 00 00 */ li r3, 0
+/* 802B5CF4 002B1954 48 00 A4 95 */ bl func_802C0188
+/* 802B5CF8 002B1958 38 7D 07 10 */ addi r3, r29, 0x710
+/* 802B5CFC 002B195C 4B FB 3D 7D */ bl OSCancelAlarm
+/* 802B5D00 002B1960 81 9D 00 08 */ lwz r12, 8(r29)
+/* 802B5D04 002B1964 9B FD 00 0D */ stb r31, 0xd(r29)
+/* 802B5D08 002B1968 2C 0C 00 00 */ cmpwi r12, 0
+/* 802B5D0C 002B196C 41 82 00 10 */ beq lbl_802B5D1C
+/* 802B5D10 002B1970 38 60 00 01 */ li r3, 1
+/* 802B5D14 002B1974 7D 89 03 A6 */ mtctr r12
+/* 802B5D18 002B1978 4E 80 04 21 */ bctrl
+lbl_802B5D1C:
+/* 802B5D1C 002B197C 38 00 00 00 */ li r0, 0
+/* 802B5D20 002B1980 98 1D 00 0D */ stb r0, 0xd(r29)
+lbl_802B5D24:
+/* 802B5D24 002B1984 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B5D28 002B1988 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B5D2C 002B198C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B5D30 002B1990 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B5D34 002B1994 7C 08 03 A6 */ mtlr r0
+/* 802B5D38 002B1998 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B5D3C 002B199C 4E 80 00 20 */ blr
+
+DeleteAllHandler0:
+/* 802B5D40 002B19A0 3D 00 80 54 */ lis r8, lbl_8053B280@ha
+/* 802B5D44 002B19A4 3C E0 80 2B */ lis r7, DeleteAllHandler@ha
+/* 802B5D48 002B19A8 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
+/* 802B5D4C 002B19AC 38 A0 00 00 */ li r5, 0
+/* 802B5D50 002B19B0 38 E7 5C 0C */ addi r7, r7, DeleteAllHandler@l
+/* 802B5D54 002B19B4 38 C0 00 00 */ li r6, 0
+/* 802B5D58 002B19B8 39 08 10 00 */ addi r8, r8, 0x1000
+/* 802B5D5C 002B19BC 4B FB 53 04 */ b OSSwitchFiberEx
+
+.global WUDiClearUnregisteredDevice
+WUDiClearUnregisteredDevice:
+/* 802B5D60 002B19C0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B5D64 002B19C4 7C 08 02 A6 */ mflr r0
+/* 802B5D68 002B19C8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B5D6C 002B19CC 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B5D70 002B19D0 4B F1 13 B9 */ bl _savegpr_27
+/* 802B5D74 002B19D4 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B5D78 002B19D8 3B 83 A4 E0 */ addi r28, r3, lbl_8053A4E0@l
+/* 802B5D7C 002B19DC 88 1C 00 0E */ lbz r0, 0xe(r28)
+/* 802B5D80 002B19E0 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5D84 002B19E4 40 82 00 D4 */ bne lbl_802B5E58
+/* 802B5D88 002B19E8 3B 60 00 00 */ li r27, 0
+/* 802B5D8C 002B19EC 3B A0 00 00 */ li r29, 0
+lbl_802B5D90:
+/* 802B5D90 002B19F0 4B FB 89 CD */ bl OSDisableInterrupts
+/* 802B5D94 002B19F4 2C 1B 00 00 */ cmpwi r27, 0
+/* 802B5D98 002B19F8 41 80 00 18 */ blt lbl_802B5DB0
+/* 802B5D9C 002B19FC 2C 1B 00 0A */ cmpwi r27, 0xa
+/* 802B5DA0 002B1A00 40 80 00 10 */ bge lbl_802B5DB0
+/* 802B5DA4 002B1A04 7C 9C EA 14 */ add r4, r28, r29
+/* 802B5DA8 002B1A08 3B E4 00 E4 */ addi r31, r4, 0xe4
+/* 802B5DAC 002B1A0C 48 00 00 14 */ b lbl_802B5DC0
+lbl_802B5DB0:
+/* 802B5DB0 002B1A10 38 1B FF F6 */ addi r0, r27, -10
+/* 802B5DB4 002B1A14 1C 00 00 60 */ mulli r0, r0, 0x60
+/* 802B5DB8 002B1A18 7C 9C 02 14 */ add r4, r28, r0
+/* 802B5DBC 002B1A1C 3B E4 04 A4 */ addi r31, r4, 0x4a4
+lbl_802B5DC0:
+/* 802B5DC0 002B1A20 4B FB 89 C5 */ bl OSRestoreInterrupts
+/* 802B5DC4 002B1A24 88 1F 00 59 */ lbz r0, 0x59(r31)
+/* 802B5DC8 002B1A28 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5DCC 002B1A2C 41 82 00 74 */ beq lbl_802B5E40
+/* 802B5DD0 002B1A30 88 1F 00 5C */ lbz r0, 0x5c(r31)
+/* 802B5DD4 002B1A34 28 00 00 01 */ cmplwi r0, 1
+/* 802B5DD8 002B1A38 40 82 00 2C */ bne lbl_802B5E04
+/* 802B5DDC 002B1A3C 38 00 00 03 */ li r0, 3
+/* 802B5DE0 002B1A40 3C 80 80 2C */ lis r4, WUDStoredLinkKeyCallback@ha
+/* 802B5DE4 002B1A44 98 1C 00 0E */ stb r0, 0xe(r28)
+/* 802B5DE8 002B1A48 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B5DEC 002B1A4C 38 84 8B 08 */ addi r4, r4, WUDStoredLinkKeyCallback@l
+/* 802B5DF0 002B1A50 48 01 10 19 */ bl func_802C6E08
+/* 802B5DF4 002B1A54 38 00 00 00 */ li r0, 0
+/* 802B5DF8 002B1A58 38 60 00 02 */ li r3, 2
+/* 802B5DFC 002B1A5C 98 1F 00 5C */ stb r0, 0x5c(r31)
+/* 802B5E00 002B1A60 48 00 00 5C */ b lbl_802B5E5C
+lbl_802B5E04:
+/* 802B5E04 002B1A64 28 00 00 03 */ cmplwi r0, 3
+/* 802B5E08 002B1A68 41 82 00 38 */ beq lbl_802B5E40
+/* 802B5E0C 002B1A6C 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B5E10 002B1A70 48 00 19 55 */ bl WUDiGetDevInfo
+/* 802B5E14 002B1A74 2C 03 00 00 */ cmpwi r3, 0
+/* 802B5E18 002B1A78 7C 7E 1B 78 */ mr r30, r3
+/* 802B5E1C 002B1A7C 41 82 00 24 */ beq lbl_802B5E40
+/* 802B5E20 002B1A80 4B FB 89 3D */ bl OSDisableInterrupts
+/* 802B5E24 002B1A84 7C 7F 1B 78 */ mr r31, r3
+/* 802B5E28 002B1A88 7F C3 F3 78 */ mr r3, r30
+/* 802B5E2C 002B1A8C 38 80 00 00 */ li r4, 0
+/* 802B5E30 002B1A90 38 A0 00 60 */ li r5, 0x60
+/* 802B5E34 002B1A94 4B D4 E2 D1 */ bl memset
+/* 802B5E38 002B1A98 7F E3 FB 78 */ mr r3, r31
+/* 802B5E3C 002B1A9C 4B FB 89 49 */ bl OSRestoreInterrupts
+lbl_802B5E40:
+/* 802B5E40 002B1AA0 3B 7B 00 01 */ addi r27, r27, 1
+/* 802B5E44 002B1AA4 3B BD 00 60 */ addi r29, r29, 0x60
+/* 802B5E48 002B1AA8 2C 1B 00 10 */ cmpwi r27, 0x10
+/* 802B5E4C 002B1AAC 41 80 FF 44 */ blt lbl_802B5D90
+/* 802B5E50 002B1AB0 38 60 00 03 */ li r3, 3
+/* 802B5E54 002B1AB4 48 00 00 08 */ b lbl_802B5E5C
+lbl_802B5E58:
+/* 802B5E58 002B1AB8 38 60 00 02 */ li r3, 2
+lbl_802B5E5C:
+/* 802B5E5C 002B1ABC 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B5E60 002B1AC0 4B F1 13 15 */ bl _restgpr_27
+/* 802B5E64 002B1AC4 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B5E68 002B1AC8 7C 08 03 A6 */ mtlr r0
+/* 802B5E6C 002B1ACC 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B5E70 002B1AD0 4E 80 00 20 */ blr
+
+EnableStackHandler:
+/* 802B5E74 002B1AD4 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B5E78 002B1AD8 7C 08 02 A6 */ mflr r0
+/* 802B5E7C 002B1ADC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B5E80 002B1AE0 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B5E84 002B1AE4 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B5E88 002B1AE8 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B5E8C 002B1AEC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B5E90 002B1AF0 3F C0 80 44 */ lis r30, lbl_8043E048@ha
+/* 802B5E94 002B1AF4 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
+/* 802B5E98 002B1AF8 88 1F 00 0F */ lbz r0, 0xf(r31)
+/* 802B5E9C 002B1AFC 2C 00 00 02 */ cmpwi r0, 2
+/* 802B5EA0 002B1B00 41 82 00 50 */ beq lbl_802B5EF0
+/* 802B5EA4 002B1B04 40 80 00 10 */ bge lbl_802B5EB4
+/* 802B5EA8 002B1B08 2C 00 00 01 */ cmpwi r0, 1
+/* 802B5EAC 002B1B0C 40 80 00 14 */ bge lbl_802B5EC0
+/* 802B5EB0 002B1B10 48 00 01 80 */ b lbl_802B6030
+lbl_802B5EB4:
+/* 802B5EB4 002B1B14 2C 00 00 04 */ cmpwi r0, 4
+/* 802B5EB8 002B1B18 40 80 01 78 */ bge lbl_802B6030
+/* 802B5EBC 002B1B1C 48 00 00 40 */ b lbl_802B5EFC
+lbl_802B5EC0:
+/* 802B5EC0 002B1B20 80 1F 07 40 */ lwz r0, 0x740(r31)
+/* 802B5EC4 002B1B24 28 00 00 01 */ cmplwi r0, 1
+/* 802B5EC8 002B1B28 40 82 00 1C */ bne lbl_802B5EE4
+/* 802B5ECC 002B1B2C 38 00 00 01 */ li r0, 1
+/* 802B5ED0 002B1B30 3C 80 80 2C */ lis r4, WUDStoredLinkKeyCallback@ha
+/* 802B5ED4 002B1B34 98 1F 00 0E */ stb r0, 0xe(r31)
+/* 802B5ED8 002B1B38 38 84 8B 08 */ addi r4, r4, WUDStoredLinkKeyCallback@l
+/* 802B5EDC 002B1B3C 38 60 00 00 */ li r3, 0
+/* 802B5EE0 002B1B40 48 01 0D 81 */ bl func_802C6C60
+lbl_802B5EE4:
+/* 802B5EE4 002B1B44 38 00 00 02 */ li r0, 2
+/* 802B5EE8 002B1B48 98 1F 00 0F */ stb r0, 0xf(r31)
+/* 802B5EEC 002B1B4C 48 00 01 44 */ b lbl_802B6030
+lbl_802B5EF0:
+/* 802B5EF0 002B1B50 4B FF FE 71 */ bl WUDiClearUnregisteredDevice
+/* 802B5EF4 002B1B54 98 7F 00 0F */ stb r3, 0xf(r31)
+/* 802B5EF8 002B1B58 48 00 01 38 */ b lbl_802B6030
+lbl_802B5EFC:
+/* 802B5EFC 002B1B5C 88 1F 00 0E */ lbz r0, 0xe(r31)
+/* 802B5F00 002B1B60 2C 00 00 00 */ cmpwi r0, 0
+/* 802B5F04 002B1B64 40 82 01 24 */ bne lbl_802B6028
+/* 802B5F08 002B1B68 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B5F0C 002B1B6C 4B FB 3B 6D */ bl OSCancelAlarm
+/* 802B5F10 002B1B70 38 61 00 08 */ addi r3, r1, 8
+/* 802B5F14 002B1B74 48 01 09 71 */ bl func_802C6884
+/* 802B5F18 002B1B78 88 81 00 08 */ lbz r4, 8(r1)
+/* 802B5F1C 002B1B7C 38 7E 02 C0 */ addi r3, r30, 0x2c0
+/* 802B5F20 002B1B80 4C C6 31 82 */ crclr 6
+/* 802B5F24 002B1B84 48 00 36 59 */ bl func_802B957C
+/* 802B5F28 002B1B88 A0 81 00 0A */ lhz r4, 0xa(r1)
+/* 802B5F2C 002B1B8C 38 7E 02 D8 */ addi r3, r30, 0x2d8
+/* 802B5F30 002B1B90 4C C6 31 82 */ crclr 6
+/* 802B5F34 002B1B94 48 00 36 49 */ bl func_802B957C
+/* 802B5F38 002B1B98 88 81 00 0C */ lbz r4, 0xc(r1)
+/* 802B5F3C 002B1B9C 38 7E 02 F0 */ addi r3, r30, 0x2f0
+/* 802B5F40 002B1BA0 4C C6 31 82 */ crclr 6
+/* 802B5F44 002B1BA4 48 00 36 39 */ bl func_802B957C
+/* 802B5F48 002B1BA8 A0 81 00 10 */ lhz r4, 0x10(r1)
+/* 802B5F4C 002B1BAC 38 7E 03 08 */ addi r3, r30, 0x308
+/* 802B5F50 002B1BB0 4C C6 31 82 */ crclr 6
+/* 802B5F54 002B1BB4 48 00 36 29 */ bl func_802B957C
+/* 802B5F58 002B1BB8 A0 81 00 0E */ lhz r4, 0xe(r1)
+/* 802B5F5C 002B1BBC 38 7E 03 20 */ addi r3, r30, 0x320
+/* 802B5F60 002B1BC0 4C C6 31 82 */ crclr 6
+/* 802B5F64 002B1BC4 48 00 36 19 */ bl func_802B957C
+/* 802B5F68 002B1BC8 A0 01 00 0A */ lhz r0, 0xa(r1)
+/* 802B5F6C 002B1BCC 38 7E 03 38 */ addi r3, r30, 0x338
+/* 802B5F70 002B1BD0 54 04 05 3E */ clrlwi r4, r0, 0x14
+/* 802B5F74 002B1BD4 4C C6 31 82 */ crclr 6
+/* 802B5F78 002B1BD8 48 00 36 05 */ bl func_802B957C
+/* 802B5F7C 002B1BDC A0 01 00 0A */ lhz r0, 0xa(r1)
+/* 802B5F80 002B1BE0 54 00 05 3E */ clrlwi r0, r0, 0x14
+/* 802B5F84 002B1BE4 2C 00 00 A7 */ cmpwi r0, 0xa7
+/* 802B5F88 002B1BE8 40 82 00 94 */ bne lbl_802B601C
+/* 802B5F8C 002B1BEC 38 7E 03 60 */ addi r3, r30, 0x360
+/* 802B5F90 002B1BF0 4C C6 31 82 */ crclr 6
+/* 802B5F94 002B1BF4 48 00 35 E9 */ bl func_802B957C
+/* 802B5F98 002B1BF8 3D 00 80 44 */ lis r8, lbl_8043E54C@ha
+/* 802B5F9C 002B1BFC 3C 60 00 01 */ lis r3, 0x0000FC4F@ha
+/* 802B5FA0 002B1C00 39 48 E5 4C */ addi r10, r8, lbl_8043E54C@l
+/* 802B5FA4 002B1C04 3C C0 80 2B */ lis r6, remove_patch_cb@ha
+/* 802B5FA8 002B1C08 88 EA 00 03 */ lbz r7, 3(r10)
+/* 802B5FAC 002B1C0C 38 03 FC 4F */ addi r0, r3, 0x0000FC4F@l
+/* 802B5FB0 002B1C10 88 8A 00 07 */ lbz r4, 7(r10)
+/* 802B5FB4 002B1C14 54 03 04 3E */ clrlwi r3, r0, 0x10
+/* 802B5FB8 002B1C18 88 AA 00 02 */ lbz r5, 2(r10)
+/* 802B5FBC 002B1C1C 54 E7 40 2E */ slwi r7, r7, 8
+/* 802B5FC0 002B1C20 88 0A 00 06 */ lbz r0, 6(r10)
+/* 802B5FC4 002B1C24 54 84 40 2E */ slwi r4, r4, 8
+/* 802B5FC8 002B1C28 7C A7 2A 14 */ add r5, r7, r5
+/* 802B5FCC 002B1C2C 88 EA 00 01 */ lbz r7, 1(r10)
+/* 802B5FD0 002B1C30 7C 04 02 14 */ add r0, r4, r0
+/* 802B5FD4 002B1C34 88 8A 00 05 */ lbz r4, 5(r10)
+/* 802B5FD8 002B1C38 54 A9 40 2E */ slwi r9, r5, 8
+/* 802B5FDC 002B1C3C 89 08 E5 4C */ lbz r8, -0x1ab4(r8)
+/* 802B5FE0 002B1C40 54 05 40 2E */ slwi r5, r0, 8
+/* 802B5FE4 002B1C44 88 0A 00 04 */ lbz r0, 4(r10)
+/* 802B5FE8 002B1C48 7D 29 3A 14 */ add r9, r9, r7
+/* 802B5FEC 002B1C4C 38 C6 6F 34 */ addi r6, r6, remove_patch_cb@l
+/* 802B5FF0 002B1C50 7C E5 22 14 */ add r7, r5, r4
+/* 802B5FF4 002B1C54 38 80 00 01 */ li r4, 1
+/* 802B5FF8 002B1C58 55 29 40 2E */ slwi r9, r9, 8
+/* 802B5FFC 002B1C5C 38 AD AE B0 */ addi r5, r13, lbl_80640170-_SDA_BASE_
+/* 802B6000 002B1C60 54 E7 40 2E */ slwi r7, r7, 8
+/* 802B6004 002B1C64 7D 09 42 14 */ add r8, r9, r8
+/* 802B6008 002B1C68 7C 07 02 14 */ add r0, r7, r0
+/* 802B600C 002B1C6C 91 0D AE B4 */ stw r8, lbl_80640174-_SDA_BASE_(r13)
+/* 802B6010 002B1C70 90 0D AE BC */ stw r0, lbl_8064017C-_SDA_BASE_(r13)
+/* 802B6014 002B1C74 48 01 09 75 */ bl func_802C6988
+/* 802B6018 002B1C78 48 00 00 08 */ b lbl_802B6020
+lbl_802B601C:
+/* 802B601C 002B1C7C 48 00 13 95 */ bl WUDiInitSub
+lbl_802B6020:
+/* 802B6020 002B1C80 38 00 00 04 */ li r0, 4
+/* 802B6024 002B1C84 48 00 00 08 */ b lbl_802B602C
+lbl_802B6028:
+/* 802B6028 002B1C88 38 00 00 02 */ li r0, 2
+lbl_802B602C:
+/* 802B602C 002B1C8C 98 1F 00 0F */ stb r0, 0xf(r31)
+lbl_802B6030:
+/* 802B6030 002B1C90 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B6034 002B1C94 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B6038 002B1C98 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B603C 002B1C9C 7C 08 03 A6 */ mtlr r0
+/* 802B6040 002B1CA0 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B6044 002B1CA4 4E 80 00 20 */ blr
+
+EnableStackHandler0:
+/* 802B6048 002B1CA8 3D 00 80 54 */ lis r8, lbl_8053B280@ha
+/* 802B604C 002B1CAC 3C E0 80 2B */ lis r7, EnableStackHandler@ha
+/* 802B6050 002B1CB0 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
+/* 802B6054 002B1CB4 38 A0 00 00 */ li r5, 0
+/* 802B6058 002B1CB8 38 E7 5E 74 */ addi r7, r7, EnableStackHandler@l
+/* 802B605C 002B1CBC 38 C0 00 00 */ li r6, 0
+/* 802B6060 002B1CC0 39 08 10 00 */ addi r8, r8, 0x1000
+/* 802B6064 002B1CC4 4B FB 4F FC */ b OSSwitchFiberEx
+
+.global WUDiGetRegisteredDevice
+WUDiGetRegisteredDevice:
+/* 802B6068 002B1CC8 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802B606C 002B1CCC 7C 08 02 A6 */ mflr r0
+/* 802B6070 002B1CD0 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802B6074 002B1CD4 39 61 00 40 */ addi r11, r1, 0x40
+/* 802B6078 002B1CD8 4B F1 10 99 */ bl _savegpr_21
+/* 802B607C 002B1CDC 3F 20 80 44 */ lis r25, lbl_8043E048@ha
+/* 802B6080 002B1CE0 3F 40 80 54 */ lis r26, lbl_8053AC28@ha
+/* 802B6084 002B1CE4 3B 39 E0 48 */ addi r25, r25, lbl_8043E048@l
+/* 802B6088 002B1CE8 38 80 00 00 */ li r4, 0
+/* 802B608C 002B1CEC 38 7A AC 28 */ addi r3, r26, lbl_8053AC28@l
+/* 802B6090 002B1CF0 38 A0 04 61 */ li r5, 0x461
+/* 802B6094 002B1CF4 4B D4 E0 71 */ bl memset
+/* 802B6098 002B1CF8 38 7A AC 28 */ addi r3, r26, -21464
+/* 802B609C 002B1CFC 48 03 65 65 */ bl func_802EC600
+/* 802B60A0 002B1D00 38 7A AC 28 */ addi r3, r26, -21464
+/* 802B60A4 002B1D04 3A C0 00 00 */ li r22, 0
+/* 802B60A8 002B1D08 3B 03 00 01 */ addi r24, r3, 1
+/* 802B60AC 002B1D0C 3B 60 00 01 */ li r27, 1
+/* 802B60B0 002B1D10 3A E3 00 07 */ addi r23, r3, 7
+/* 802B60B4 002B1D14 3B 80 00 00 */ li r28, 0
+/* 802B60B8 002B1D18 3B A0 00 02 */ li r29, 2
+/* 802B60BC 002B1D1C 3F C0 00 01 */ lis r30, 1
+/* 802B60C0 002B1D20 3B E0 00 03 */ li r31, 3
+/* 802B60C4 002B1D24 48 00 00 A0 */ b lbl_802B6164
+lbl_802B60C8:
+/* 802B60C8 002B1D28 48 00 17 75 */ bl WUDiGetNewDevInfo
+/* 802B60CC 002B1D2C 7C 75 1B 78 */ mr r21, r3
+/* 802B60D0 002B1D30 7F 04 C3 78 */ mr r4, r24
+/* 802B60D4 002B1D34 38 A0 00 06 */ li r5, 6
+/* 802B60D8 002B1D38 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B60DC 002B1D3C 4B D4 DF 25 */ bl memcpy
+/* 802B60E0 002B1D40 7E A3 AB 78 */ mr r3, r21
+/* 802B60E4 002B1D44 7E E4 BB 78 */ mr r4, r23
+/* 802B60E8 002B1D48 38 A0 00 40 */ li r5, 0x40
+/* 802B60EC 002B1D4C 4B D4 DF 15 */ bl memcpy
+/* 802B60F0 002B1D50 9B 75 00 59 */ stb r27, 0x59(r21)
+/* 802B60F4 002B1D54 7E A3 AB 78 */ mr r3, r21
+/* 802B60F8 002B1D58 38 99 03 7C */ addi r4, r25, 0x37c
+/* 802B60FC 002B1D5C 38 A0 00 13 */ li r5, 0x13
+/* 802B6100 002B1D60 9B 95 00 5B */ stb r28, 0x5b(r21)
+/* 802B6104 002B1D64 9B B5 00 5C */ stb r29, 0x5c(r21)
+/* 802B6108 002B1D68 4B F1 42 91 */ bl memcmp
+/* 802B610C 002B1D6C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B6110 002B1D70 40 82 00 14 */ bne lbl_802B6124
+/* 802B6114 002B1D74 9B B5 00 57 */ stb r29, 0x57(r21)
+/* 802B6118 002B1D78 38 1E 80 74 */ addi r0, r30, -32652
+/* 802B611C 002B1D7C B0 15 00 5E */ sth r0, 0x5e(r21)
+/* 802B6120 002B1D80 9B F5 00 58 */ stb r31, 0x58(r21)
+lbl_802B6124:
+/* 802B6124 002B1D84 88 95 00 40 */ lbz r4, 0x40(r21)
+/* 802B6128 002B1D88 38 79 01 CC */ addi r3, r25, 0x1cc
+/* 802B612C 002B1D8C 88 B5 00 41 */ lbz r5, 0x41(r21)
+/* 802B6130 002B1D90 88 D5 00 42 */ lbz r6, 0x42(r21)
+/* 802B6134 002B1D94 88 F5 00 43 */ lbz r7, 0x43(r21)
+/* 802B6138 002B1D98 89 15 00 44 */ lbz r8, 0x44(r21)
+/* 802B613C 002B1D9C 89 35 00 45 */ lbz r9, 0x45(r21)
+/* 802B6140 002B1DA0 4C C6 31 82 */ crclr 6
+/* 802B6144 002B1DA4 48 00 34 39 */ bl func_802B957C
+/* 802B6148 002B1DA8 7E A4 AB 78 */ mr r4, r21
+/* 802B614C 002B1DAC 38 79 03 90 */ addi r3, r25, 0x390
+/* 802B6150 002B1DB0 4C C6 31 82 */ crclr 6
+/* 802B6154 002B1DB4 48 00 34 29 */ bl func_802B957C
+/* 802B6158 002B1DB8 3B 18 00 46 */ addi r24, r24, 0x46
+/* 802B615C 002B1DBC 3A F7 00 46 */ addi r23, r23, 0x46
+/* 802B6160 002B1DC0 3A D6 00 01 */ addi r22, r22, 1
+lbl_802B6164:
+/* 802B6164 002B1DC4 88 1A AC 28 */ lbz r0, -0x53d8(r26)
+/* 802B6168 002B1DC8 7C 16 00 00 */ cmpw r22, r0
+/* 802B616C 002B1DCC 41 80 FF 5C */ blt lbl_802B60C8
+/* 802B6170 002B1DD0 39 61 00 40 */ addi r11, r1, 0x40
+/* 802B6174 002B1DD4 38 60 00 03 */ li r3, 3
+/* 802B6178 002B1DD8 4B F1 0F E5 */ bl _restgpr_21
+/* 802B617C 002B1DDC 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802B6180 002B1DE0 7C 08 03 A6 */ mtlr r0
+/* 802B6184 002B1DE4 38 21 00 40 */ addi r1, r1, 0x40
+/* 802B6188 002B1DE8 4E 80 00 20 */ blr
+
+InitHandler:
+/* 802B618C 002B1DEC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6190 002B1DF0 7C 08 02 A6 */ mflr r0
+/* 802B6194 002B1DF4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B6198 002B1DF8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B619C 002B1DFC 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B61A0 002B1E00 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B61A4 002B1E04 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B61A8 002B1E08 88 1E 00 10 */ lbz r0, 0x10(r30)
+/* 802B61AC 002B1E0C 2C 00 00 02 */ cmpwi r0, 2
+/* 802B61B0 002B1E10 41 82 00 78 */ beq lbl_802B6228
+/* 802B61B4 002B1E14 40 80 00 10 */ bge lbl_802B61C4
+/* 802B61B8 002B1E18 2C 00 00 01 */ cmpwi r0, 1
+/* 802B61BC 002B1E1C 40 80 00 14 */ bge lbl_802B61D0
+/* 802B61C0 002B1E20 48 00 00 98 */ b lbl_802B6258
+lbl_802B61C4:
+/* 802B61C4 002B1E24 2C 00 00 04 */ cmpwi r0, 4
+/* 802B61C8 002B1E28 40 80 00 90 */ bge lbl_802B6258
+/* 802B61CC 002B1E2C 48 00 00 68 */ b lbl_802B6234
+lbl_802B61D0:
+/* 802B61D0 002B1E30 3B E0 00 01 */ li r31, 1
+/* 802B61D4 002B1E34 4B FB C6 05 */ bl __OSGetSystemTime
+/* 802B61D8 002B1E38 3C A0 80 00 */ lis r5, 0x800000F8@ha
+/* 802B61DC 002B1E3C 3C 60 10 62 */ lis r3, 0x10624DD3@ha
+/* 802B61E0 002B1E40 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
+/* 802B61E4 002B1E44 38 63 4D D3 */ addi r3, r3, 0x10624DD3@l
+/* 802B61E8 002B1E48 80 AD A7 AC */ lwz r5, lbl_8063FA6C-_SDA_BASE_(r13)
+/* 802B61EC 002B1E4C 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B61F0 002B1E50 7C 03 00 16 */ mulhwu r0, r3, r0
+/* 802B61F4 002B1E54 7C 65 20 50 */ subf r3, r5, r4
+/* 802B61F8 002B1E58 54 00 D1 BE */ srwi r0, r0, 6
+/* 802B61FC 002B1E5C 7C 03 03 96 */ divwu r0, r3, r0
+/* 802B6200 002B1E60 20 00 01 F4 */ subfic r0, r0, 0x1f4
+/* 802B6204 002B1E64 2C 00 00 00 */ cmpwi r0, 0
+/* 802B6208 002B1E68 40 80 00 18 */ bge lbl_802B6220
+/* 802B620C 002B1E6C 48 03 47 E1 */ bl func_802EA9EC
+/* 802B6210 002B1E70 28 03 00 01 */ cmplwi r3, 1
+/* 802B6214 002B1E74 41 82 00 0C */ beq lbl_802B6220
+/* 802B6218 002B1E78 48 00 01 1D */ bl InitCore
+/* 802B621C 002B1E7C 3B E0 00 02 */ li r31, 2
+lbl_802B6220:
+/* 802B6220 002B1E80 9B FE 00 10 */ stb r31, 0x10(r30)
+/* 802B6224 002B1E84 48 00 00 34 */ b lbl_802B6258
+lbl_802B6228:
+/* 802B6228 002B1E88 4B FF FE 41 */ bl WUDiGetRegisteredDevice
+/* 802B622C 002B1E8C 98 7E 00 10 */ stb r3, 0x10(r30)
+/* 802B6230 002B1E90 48 00 00 28 */ b lbl_802B6258
+lbl_802B6234:
+/* 802B6234 002B1E94 38 7E 07 10 */ addi r3, r30, 0x710
+/* 802B6238 002B1E98 4B FB 38 41 */ bl OSCancelAlarm
+/* 802B623C 002B1E9C 38 00 00 01 */ li r0, 1
+/* 802B6240 002B1EA0 3C 60 80 2C */ lis r3, WUDSecurityCallback@ha
+/* 802B6244 002B1EA4 98 1E 07 08 */ stb r0, 0x708(r30)
+/* 802B6248 002B1EA8 38 63 80 40 */ addi r3, r3, WUDSecurityCallback@l
+/* 802B624C 002B1EAC 48 00 9D E1 */ bl func_802C002C
+/* 802B6250 002B1EB0 38 00 00 04 */ li r0, 4
+/* 802B6254 002B1EB4 98 1E 00 10 */ stb r0, 0x10(r30)
+lbl_802B6258:
+/* 802B6258 002B1EB8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B625C 002B1EBC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6260 002B1EC0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B6264 002B1EC4 7C 08 03 A6 */ mtlr r0
+/* 802B6268 002B1EC8 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B626C 002B1ECC 4E 80 00 20 */ blr
+
+InitHandler0:
+/* 802B6270 002B1ED0 3D 00 80 54 */ lis r8, lbl_8053B280@ha
+/* 802B6274 002B1ED4 3C E0 80 2B */ lis r7, InitHandler@ha
+/* 802B6278 002B1ED8 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
+/* 802B627C 002B1EDC 38 A0 00 00 */ li r5, 0
+/* 802B6280 002B1EE0 38 E7 61 8C */ addi r7, r7, InitHandler@l
+/* 802B6284 002B1EE4 38 C0 00 00 */ li r6, 0
+/* 802B6288 002B1EE8 39 08 10 00 */ addi r8, r8, 0x1000
+/* 802B628C 002B1EEC 4B FB 4D D4 */ b OSSwitchFiberEx
+
+ShutdownHandler:
+/* 802B6290 002B1EF0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6294 002B1EF4 7C 08 02 A6 */ mflr r0
+/* 802B6298 002B1EF8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B629C 002B1EFC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B62A0 002B1F00 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B62A4 002B1F04 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B62A8 002B1F08 88 1F 00 11 */ lbz r0, 0x11(r31)
+/* 802B62AC 002B1F0C 2C 00 00 02 */ cmpwi r0, 2
+/* 802B62B0 002B1F10 41 82 00 50 */ beq lbl_802B6300
+/* 802B62B4 002B1F14 40 80 00 4C */ bge lbl_802B6300
+/* 802B62B8 002B1F18 2C 00 00 01 */ cmpwi r0, 1
+/* 802B62BC 002B1F1C 40 80 00 08 */ bge lbl_802B62C4
+/* 802B62C0 002B1F20 48 00 00 40 */ b lbl_802B6300
+lbl_802B62C4:
+/* 802B62C4 002B1F24 48 03 47 29 */ bl func_802EA9EC
+/* 802B62C8 002B1F28 28 03 00 01 */ cmplwi r3, 1
+/* 802B62CC 002B1F2C 41 82 00 2C */ beq lbl_802B62F8
+/* 802B62D0 002B1F30 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
+/* 802B62D4 002B1F34 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
+/* 802B62D8 002B1F38 48 03 63 35 */ bl func_802EC60C
+/* 802B62DC 002B1F3C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B62E0 002B1F40 41 82 00 18 */ beq lbl_802B62F8
+/* 802B62E4 002B1F44 3C 60 80 2B */ lis r3, ShutFlushCallback@ha
+/* 802B62E8 002B1F48 38 63 4E 30 */ addi r3, r3, ShutFlushCallback@l
+/* 802B62EC 002B1F4C 48 03 5A E1 */ bl func_802EBDCC
+/* 802B62F0 002B1F50 38 00 00 02 */ li r0, 2
+/* 802B62F4 002B1F54 48 00 00 08 */ b lbl_802B62FC
+lbl_802B62F8:
+/* 802B62F8 002B1F58 38 00 00 01 */ li r0, 1
+lbl_802B62FC:
+/* 802B62FC 002B1F5C 98 1F 00 11 */ stb r0, 0x11(r31)
+lbl_802B6300:
+/* 802B6300 002B1F60 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6304 002B1F64 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6308 002B1F68 7C 08 03 A6 */ mtlr r0
+/* 802B630C 002B1F6C 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6310 002B1F70 4E 80 00 20 */ blr
+
+ShutdownHandler0:
+/* 802B6314 002B1F74 3D 00 80 54 */ lis r8, lbl_8053B280@ha
+/* 802B6318 002B1F78 3C E0 80 2B */ lis r7, ShutdownHandler@ha
+/* 802B631C 002B1F7C 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
+/* 802B6320 002B1F80 38 A0 00 00 */ li r5, 0
+/* 802B6324 002B1F84 38 E7 62 90 */ addi r7, r7, ShutdownHandler@l
+/* 802B6328 002B1F88 38 C0 00 00 */ li r6, 0
+/* 802B632C 002B1F8C 39 08 10 00 */ addi r8, r8, 0x1000
+/* 802B6330 002B1F90 4B FB 4D 30 */ b OSSwitchFiberEx
+
+.global InitCore
+InitCore:
+/* 802B6334 002B1F94 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B6338 002B1F98 7C 08 02 A6 */ mflr r0
+/* 802B633C 002B1F9C 3C 60 80 44 */ lis r3, lbl_8043E3E4@ha
+/* 802B6340 002B1FA0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B6344 002B1FA4 38 63 E3 E4 */ addi r3, r3, lbl_8043E3E4@l
+/* 802B6348 002B1FA8 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B634C 002B1FAC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B6350 002B1FB0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B6354 002B1FB4 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B6358 002B1FB8 3B DF 00 00 */ addi r30, r31, 0
+/* 802B635C 002B1FBC 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B6360 002B1FC0 4C C6 31 82 */ crclr 6
+/* 802B6364 002B1FC4 48 00 32 19 */ bl func_802B957C
+/* 802B6368 002B1FC8 38 DF 0D 48 */ addi r6, r31, 0xd48
+/* 802B636C 002B1FCC 39 40 00 00 */ li r10, 0
+/* 802B6370 002B1FD0 91 46 00 00 */ stw r10, 0(r6)
+/* 802B6374 002B1FD4 38 FF 1D A0 */ addi r7, r31, 0x1da0
+/* 802B6378 002B1FD8 39 1F 1D C0 */ addi r8, r31, 0x1dc0
+/* 802B637C 002B1FDC 38 9E 00 58 */ addi r4, r30, 0x58
+/* 802B6380 002B1FE0 B1 47 00 00 */ sth r10, 0(r7)
+/* 802B6384 002B1FE4 38 7E 00 1C */ addi r3, r30, 0x1c
+/* 802B6388 002B1FE8 38 00 00 03 */ li r0, 3
+/* 802B638C 002B1FEC 7F C5 F3 78 */ mr r5, r30
+/* 802B6390 002B1FF0 B1 48 00 00 */ sth r10, 0(r8)
+/* 802B6394 002B1FF4 39 20 00 00 */ li r9, 0
+/* 802B6398 002B1FF8 91 46 00 04 */ stw r10, 4(r6)
+/* 802B639C 002B1FFC B1 47 00 02 */ sth r10, 2(r7)
+/* 802B63A0 002B2000 B1 48 00 02 */ sth r10, 2(r8)
+/* 802B63A4 002B2004 91 46 00 08 */ stw r10, 8(r6)
+/* 802B63A8 002B2008 B1 47 00 04 */ sth r10, 4(r7)
+/* 802B63AC 002B200C B1 48 00 04 */ sth r10, 4(r8)
+/* 802B63B0 002B2010 91 46 00 0C */ stw r10, 0xc(r6)
+/* 802B63B4 002B2014 B1 47 00 06 */ sth r10, 6(r7)
+/* 802B63B8 002B2018 B1 48 00 06 */ sth r10, 6(r8)
+/* 802B63BC 002B201C 91 46 00 10 */ stw r10, 0x10(r6)
+/* 802B63C0 002B2020 B1 47 00 08 */ sth r10, 8(r7)
+/* 802B63C4 002B2024 B1 48 00 08 */ sth r10, 8(r8)
+/* 802B63C8 002B2028 91 46 00 14 */ stw r10, 0x14(r6)
+/* 802B63CC 002B202C B1 47 00 0A */ sth r10, 0xa(r7)
+/* 802B63D0 002B2030 B1 48 00 0A */ sth r10, 0xa(r8)
+/* 802B63D4 002B2034 91 46 00 18 */ stw r10, 0x18(r6)
+/* 802B63D8 002B2038 B1 47 00 0C */ sth r10, 0xc(r7)
+/* 802B63DC 002B203C B1 48 00 0C */ sth r10, 0xc(r8)
+/* 802B63E0 002B2040 91 46 00 1C */ stw r10, 0x1c(r6)
+/* 802B63E4 002B2044 B1 47 00 0E */ sth r10, 0xe(r7)
+/* 802B63E8 002B2048 B1 48 00 0E */ sth r10, 0xe(r8)
+/* 802B63EC 002B204C 91 46 00 20 */ stw r10, 0x20(r6)
+/* 802B63F0 002B2050 B1 47 00 10 */ sth r10, 0x10(r7)
+/* 802B63F4 002B2054 B1 48 00 10 */ sth r10, 0x10(r8)
+/* 802B63F8 002B2058 91 46 00 24 */ stw r10, 0x24(r6)
+/* 802B63FC 002B205C B1 47 00 12 */ sth r10, 0x12(r7)
+/* 802B6400 002B2060 B1 48 00 12 */ sth r10, 0x12(r8)
+/* 802B6404 002B2064 91 46 00 28 */ stw r10, 0x28(r6)
+/* 802B6408 002B2068 B1 47 00 14 */ sth r10, 0x14(r7)
+/* 802B640C 002B206C B1 48 00 14 */ sth r10, 0x14(r8)
+/* 802B6410 002B2070 91 46 00 2C */ stw r10, 0x2c(r6)
+/* 802B6414 002B2074 B1 47 00 16 */ sth r10, 0x16(r7)
+/* 802B6418 002B2078 B1 48 00 16 */ sth r10, 0x16(r8)
+/* 802B641C 002B207C 91 46 00 30 */ stw r10, 0x30(r6)
+/* 802B6420 002B2080 B1 47 00 18 */ sth r10, 0x18(r7)
+/* 802B6424 002B2084 B1 48 00 18 */ sth r10, 0x18(r8)
+/* 802B6428 002B2088 91 46 00 34 */ stw r10, 0x34(r6)
+/* 802B642C 002B208C B1 47 00 1A */ sth r10, 0x1a(r7)
+/* 802B6430 002B2090 B1 48 00 1A */ sth r10, 0x1a(r8)
+/* 802B6434 002B2094 91 46 00 38 */ stw r10, 0x38(r6)
+/* 802B6438 002B2098 B1 47 00 1C */ sth r10, 0x1c(r7)
+/* 802B643C 002B209C B1 48 00 1C */ sth r10, 0x1c(r8)
+/* 802B6440 002B20A0 91 46 00 3C */ stw r10, 0x3c(r6)
+/* 802B6444 002B20A4 B1 47 00 1E */ sth r10, 0x1e(r7)
+/* 802B6448 002B20A8 B1 48 00 1E */ sth r10, 0x1e(r8)
+/* 802B644C 002B20AC 90 9E 00 18 */ stw r4, 0x18(r30)
+/* 802B6450 002B20B0 90 7E 00 14 */ stw r3, 0x14(r30)
+/* 802B6454 002B20B4 7C 09 03 A6 */ mtctr r0
+lbl_802B6458:
+/* 802B6458 002B20B8 20 09 00 05 */ subfic r0, r9, 5
+/* 802B645C 002B20BC 2C 09 00 00 */ cmpwi r9, 0
+/* 802B6460 002B20C0 1C 00 00 60 */ mulli r0, r0, 0x60
+/* 802B6464 002B20C4 7C 7E 02 14 */ add r3, r30, r0
+/* 802B6468 002B20C8 38 03 04 A4 */ addi r0, r3, 0x4a4
+/* 802B646C 002B20CC 90 05 00 1C */ stw r0, 0x1c(r5)
+/* 802B6470 002B20D0 40 82 00 0C */ bne lbl_802B647C
+/* 802B6474 002B20D4 38 00 00 00 */ li r0, 0
+/* 802B6478 002B20D8 48 00 00 14 */ b lbl_802B648C
+lbl_802B647C:
+/* 802B647C 002B20DC 38 09 FF FF */ addi r0, r9, -1
+/* 802B6480 002B20E0 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B6484 002B20E4 7C 7E 02 14 */ add r3, r30, r0
+/* 802B6488 002B20E8 38 03 00 1C */ addi r0, r3, 0x1c
+lbl_802B648C:
+/* 802B648C 002B20EC 2C 09 00 05 */ cmpwi r9, 5
+/* 802B6490 002B20F0 90 05 00 20 */ stw r0, 0x20(r5)
+/* 802B6494 002B20F4 40 82 00 0C */ bne lbl_802B64A0
+/* 802B6498 002B20F8 38 00 00 00 */ li r0, 0
+/* 802B649C 002B20FC 48 00 00 14 */ b lbl_802B64B0
+lbl_802B64A0:
+/* 802B64A0 002B2100 38 09 00 01 */ addi r0, r9, 1
+/* 802B64A4 002B2104 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B64A8 002B2108 7C 7E 02 14 */ add r3, r30, r0
+/* 802B64AC 002B210C 38 03 00 1C */ addi r0, r3, 0x1c
+lbl_802B64B0:
+/* 802B64B0 002B2110 35 29 00 01 */ addic. r9, r9, 1
+/* 802B64B4 002B2114 90 05 00 24 */ stw r0, 0x24(r5)
+/* 802B64B8 002B2118 20 09 00 05 */ subfic r0, r9, 5
+/* 802B64BC 002B211C 1C 00 00 60 */ mulli r0, r0, 0x60
+/* 802B64C0 002B2120 7C 7E 02 14 */ add r3, r30, r0
+/* 802B64C4 002B2124 38 03 04 A4 */ addi r0, r3, 0x4a4
+/* 802B64C8 002B2128 90 05 00 28 */ stw r0, 0x28(r5)
+/* 802B64CC 002B212C 40 82 00 0C */ bne lbl_802B64D8
+/* 802B64D0 002B2130 38 00 00 00 */ li r0, 0
+/* 802B64D4 002B2134 48 00 00 14 */ b lbl_802B64E8
+lbl_802B64D8:
+/* 802B64D8 002B2138 38 09 FF FF */ addi r0, r9, -1
+/* 802B64DC 002B213C 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B64E0 002B2140 7C 7E 02 14 */ add r3, r30, r0
+/* 802B64E4 002B2144 38 03 00 1C */ addi r0, r3, 0x1c
+lbl_802B64E8:
+/* 802B64E8 002B2148 2C 09 00 05 */ cmpwi r9, 5
+/* 802B64EC 002B214C 90 05 00 2C */ stw r0, 0x2c(r5)
+/* 802B64F0 002B2150 40 82 00 0C */ bne lbl_802B64FC
+/* 802B64F4 002B2154 38 00 00 00 */ li r0, 0
+/* 802B64F8 002B2158 48 00 00 14 */ b lbl_802B650C
+lbl_802B64FC:
+/* 802B64FC 002B215C 38 09 00 01 */ addi r0, r9, 1
+/* 802B6500 002B2160 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B6504 002B2164 7C 7E 02 14 */ add r3, r30, r0
+/* 802B6508 002B2168 38 03 00 1C */ addi r0, r3, 0x1c
+lbl_802B650C:
+/* 802B650C 002B216C 90 05 00 30 */ stw r0, 0x30(r5)
+/* 802B6510 002B2170 38 A5 00 18 */ addi r5, r5, 0x18
+/* 802B6514 002B2174 39 29 00 01 */ addi r9, r9, 1
+/* 802B6518 002B2178 42 00 FF 40 */ bdnz lbl_802B6458
+/* 802B651C 002B217C 38 9E 00 D8 */ addi r4, r30, 0xd8
+/* 802B6520 002B2180 38 7E 00 6C */ addi r3, r30, 0x6c
+/* 802B6524 002B2184 90 9E 00 68 */ stw r4, 0x68(r30)
+/* 802B6528 002B2188 38 00 00 05 */ li r0, 5
+/* 802B652C 002B218C 7F C5 F3 78 */ mr r5, r30
+/* 802B6530 002B2190 38 9E 00 E4 */ addi r4, r30, 0xe4
+/* 802B6534 002B2194 38 C0 00 00 */ li r6, 0
+/* 802B6538 002B2198 90 7E 00 64 */ stw r3, 0x64(r30)
+/* 802B653C 002B219C 7C 09 03 A6 */ mtctr r0
+lbl_802B6540:
+/* 802B6540 002B21A0 2C 06 00 00 */ cmpwi r6, 0
+/* 802B6544 002B21A4 90 85 00 6C */ stw r4, 0x6c(r5)
+/* 802B6548 002B21A8 40 82 00 0C */ bne lbl_802B6554
+/* 802B654C 002B21AC 38 00 00 00 */ li r0, 0
+/* 802B6550 002B21B0 48 00 00 14 */ b lbl_802B6564
+lbl_802B6554:
+/* 802B6554 002B21B4 38 06 FF FF */ addi r0, r6, -1
+/* 802B6558 002B21B8 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B655C 002B21BC 7C 7E 02 14 */ add r3, r30, r0
+/* 802B6560 002B21C0 38 03 00 6C */ addi r0, r3, 0x6c
+lbl_802B6564:
+/* 802B6564 002B21C4 2C 06 00 09 */ cmpwi r6, 9
+/* 802B6568 002B21C8 90 05 00 70 */ stw r0, 0x70(r5)
+/* 802B656C 002B21CC 40 82 00 0C */ bne lbl_802B6578
+/* 802B6570 002B21D0 38 00 00 00 */ li r0, 0
+/* 802B6574 002B21D4 48 00 00 14 */ b lbl_802B6588
+lbl_802B6578:
+/* 802B6578 002B21D8 38 06 00 01 */ addi r0, r6, 1
+/* 802B657C 002B21DC 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B6580 002B21E0 7C 7E 02 14 */ add r3, r30, r0
+/* 802B6584 002B21E4 38 03 00 6C */ addi r0, r3, 0x6c
+lbl_802B6588:
+/* 802B6588 002B21E8 90 05 00 74 */ stw r0, 0x74(r5)
+/* 802B658C 002B21EC 38 84 00 60 */ addi r4, r4, 0x60
+/* 802B6590 002B21F0 34 C6 00 01 */ addic. r6, r6, 1
+/* 802B6594 002B21F4 90 85 00 78 */ stw r4, 0x78(r5)
+/* 802B6598 002B21F8 40 82 00 0C */ bne lbl_802B65A4
+/* 802B659C 002B21FC 38 00 00 00 */ li r0, 0
+/* 802B65A0 002B2200 48 00 00 14 */ b lbl_802B65B4
+lbl_802B65A4:
+/* 802B65A4 002B2204 38 06 FF FF */ addi r0, r6, -1
+/* 802B65A8 002B2208 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B65AC 002B220C 7C 7E 02 14 */ add r3, r30, r0
+/* 802B65B0 002B2210 38 03 00 6C */ addi r0, r3, 0x6c
+lbl_802B65B4:
+/* 802B65B4 002B2214 2C 06 00 09 */ cmpwi r6, 9
+/* 802B65B8 002B2218 90 05 00 7C */ stw r0, 0x7c(r5)
+/* 802B65BC 002B221C 40 82 00 0C */ bne lbl_802B65C8
+/* 802B65C0 002B2220 38 00 00 00 */ li r0, 0
+/* 802B65C4 002B2224 48 00 00 14 */ b lbl_802B65D8
+lbl_802B65C8:
+/* 802B65C8 002B2228 38 06 00 01 */ addi r0, r6, 1
+/* 802B65CC 002B222C 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802B65D0 002B2230 7C 7E 02 14 */ add r3, r30, r0
+/* 802B65D4 002B2234 38 03 00 6C */ addi r0, r3, 0x6c
+lbl_802B65D8:
+/* 802B65D8 002B2238 90 05 00 80 */ stw r0, 0x80(r5)
+/* 802B65DC 002B223C 38 84 00 60 */ addi r4, r4, 0x60
+/* 802B65E0 002B2240 38 A5 00 18 */ addi r5, r5, 0x18
+/* 802B65E4 002B2244 38 C6 00 01 */ addi r6, r6, 1
+/* 802B65E8 002B2248 42 00 FF 58 */ bdnz lbl_802B6540
+/* 802B65EC 002B224C 3B A0 00 00 */ li r29, 0
+/* 802B65F0 002B2250 38 C0 00 01 */ li r6, 1
+/* 802B65F4 002B2254 38 00 FF BF */ li r0, -65
+/* 802B65F8 002B2258 9B BE 00 0C */ stb r29, 0xc(r30)
+/* 802B65FC 002B225C 38 7E 07 02 */ addi r3, r30, 0x702
+/* 802B6600 002B2260 38 80 00 00 */ li r4, 0
+/* 802B6604 002B2264 9B BE 00 0E */ stb r29, 0xe(r30)
+/* 802B6608 002B2268 38 A0 00 06 */ li r5, 6
+/* 802B660C 002B226C 9B BE 00 0D */ stb r29, 0xd(r30)
+/* 802B6610 002B2270 9B BE 00 0F */ stb r29, 0xf(r30)
+/* 802B6614 002B2274 9B BE 00 10 */ stb r29, 0x10(r30)
+/* 802B6618 002B2278 9B BE 00 11 */ stb r29, 0x11(r30)
+/* 802B661C 002B227C 9B BE 06 E7 */ stb r29, 0x6e7(r30)
+/* 802B6620 002B2280 9B BE 06 E9 */ stb r29, 0x6e9(r30)
+/* 802B6624 002B2284 98 DE 06 E8 */ stb r6, 0x6e8(r30)
+/* 802B6628 002B2288 9B BE 06 EA */ stb r29, 0x6ea(r30)
+/* 802B662C 002B228C 9B BE 06 EB */ stb r29, 0x6eb(r30)
+/* 802B6630 002B2290 9B BE 07 08 */ stb r29, 0x708(r30)
+/* 802B6634 002B2294 9B BE 07 0A */ stb r29, 0x70a(r30)
+/* 802B6638 002B2298 98 1E 07 0B */ stb r0, 0x70b(r30)
+/* 802B663C 002B229C 4B D4 DA C9 */ bl memset
+/* 802B6640 002B22A0 38 7E 06 FC */ addi r3, r30, 0x6fc
+/* 802B6644 002B22A4 38 80 00 00 */ li r4, 0
+/* 802B6648 002B22A8 38 A0 00 06 */ li r5, 6
+/* 802B664C 002B22AC 4B D4 DA B9 */ bl memset
+/* 802B6650 002B22B0 38 00 00 0A */ li r0, 0xa
+/* 802B6654 002B22B4 B3 BE 07 44 */ sth r29, 0x744(r30)
+/* 802B6658 002B22B8 B0 1E 07 46 */ sth r0, 0x746(r30)
+/* 802B665C 002B22BC 4B FB 81 01 */ bl OSDisableInterrupts
+/* 802B6660 002B22C0 3B DF 00 00 */ addi r30, r31, 0
+/* 802B6664 002B22C4 7C 7F 1B 78 */ mr r31, r3
+/* 802B6668 002B22C8 38 7E 00 E4 */ addi r3, r30, 0xe4
+/* 802B666C 002B22CC 38 80 00 00 */ li r4, 0
+/* 802B6670 002B22D0 38 A0 03 C0 */ li r5, 0x3c0
+/* 802B6674 002B22D4 4B D4 DA 91 */ bl memset
+/* 802B6678 002B22D8 38 7E 04 A4 */ addi r3, r30, 0x4a4
+/* 802B667C 002B22DC 38 80 00 00 */ li r4, 0
+/* 802B6680 002B22E0 38 A0 02 40 */ li r5, 0x240
+/* 802B6684 002B22E4 4B D4 DA 81 */ bl memset
+/* 802B6688 002B22E8 9B BE 00 12 */ stb r29, 0x12(r30)
+/* 802B668C 002B22EC 7F E3 FB 78 */ mr r3, r31
+/* 802B6690 002B22F0 9B BE 00 13 */ stb r29, 0x13(r30)
+/* 802B6694 002B22F4 9B BE 06 E4 */ stb r29, 0x6e4(r30)
+/* 802B6698 002B22F8 9B BE 06 E5 */ stb r29, 0x6e5(r30)
+/* 802B669C 002B22FC 9B BE 06 E6 */ stb r29, 0x6e6(r30)
+/* 802B66A0 002B2300 4B FB 80 E5 */ bl OSRestoreInterrupts
+/* 802B66A4 002B2304 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B66A8 002B2308 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B66AC 002B230C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B66B0 002B2310 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B66B4 002B2314 7C 08 03 A6 */ mtlr r0
+/* 802B66B8 002B2318 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B66BC 002B231C 4E 80 00 20 */ blr
+
+.global WUDInit
+WUDInit:
+/* 802B66C0 002B2320 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B66C4 002B2324 7C 08 02 A6 */ mflr r0
+/* 802B66C8 002B2328 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B66CC 002B232C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B66D0 002B2330 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B66D4 002B2334 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B66D8 002B2338 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B66DC 002B233C 80 0D AE A8 */ lwz r0, lbl_80640168-_SDA_BASE_(r13)
+/* 802B66E0 002B2340 2C 00 00 00 */ cmpwi r0, 0
+/* 802B66E4 002B2344 41 82 00 0C */ beq lbl_802B66F0
+/* 802B66E8 002B2348 38 60 00 00 */ li r3, 0
+/* 802B66EC 002B234C 48 00 00 B4 */ b lbl_802B67A0
+lbl_802B66F0:
+/* 802B66F0 002B2350 3C 60 80 44 */ lis r3, lbl_8043E3F0@ha
+/* 802B66F4 002B2354 38 63 E3 F0 */ addi r3, r3, lbl_8043E3F0@l
+/* 802B66F8 002B2358 4C C6 31 82 */ crclr 6
+/* 802B66FC 002B235C 48 00 2E 81 */ bl func_802B957C
+/* 802B6700 002B2360 48 00 68 D1 */ bl func_802BCFD0
+/* 802B6704 002B2364 88 6D AE AC */ lbz r3, lbl_8064016C-_SDA_BASE_(r13)
+/* 802B6708 002B2368 48 00 73 BD */ bl func_802BDAC4
+/* 802B670C 002B236C 88 6D AE AC */ lbz r3, lbl_8064016C-_SDA_BASE_(r13)
+/* 802B6710 002B2370 48 01 FC CD */ bl func_802D63DC
+/* 802B6714 002B2374 88 6D AE AC */ lbz r3, lbl_8064016C-_SDA_BASE_(r13)
+/* 802B6718 002B2378 48 02 C5 15 */ bl func_802E2C2C
+/* 802B671C 002B237C 3C 60 80 44 */ lis r3, lbl_8043E408@ha
+/* 802B6720 002B2380 38 63 E4 08 */ addi r3, r3, lbl_8043E408@l
+/* 802B6724 002B2384 4C C6 31 82 */ crclr 6
+/* 802B6728 002B2388 48 00 2E 55 */ bl func_802B957C
+/* 802B672C 002B238C 38 00 00 00 */ li r0, 0
+/* 802B6730 002B2390 3B E0 00 01 */ li r31, 1
+/* 802B6734 002B2394 90 1E 00 00 */ stw r0, 0(r30)
+/* 802B6738 002B2398 90 1E 00 04 */ stw r0, 4(r30)
+/* 802B673C 002B239C 90 1E 00 08 */ stw r0, 8(r30)
+/* 802B6740 002B23A0 90 1E 06 F0 */ stw r0, 0x6f0(r30)
+/* 802B6744 002B23A4 90 1E 06 EC */ stw r0, 0x6ec(r30)
+/* 802B6748 002B23A8 9B FE 00 10 */ stb r31, 0x10(r30)
+/* 802B674C 002B23AC 48 03 42 01 */ bl func_802EA94C
+/* 802B6750 002B23B0 38 7E 07 10 */ addi r3, r30, 0x710
+/* 802B6754 002B23B4 4B FB 2F D1 */ bl OSCreateAlarm
+/* 802B6758 002B23B8 4B FB C0 61 */ bl OSGetTime
+/* 802B675C 002B23BC 3C A0 80 00 */ lis r5, 0x800000F8@ha
+/* 802B6760 002B23C0 3D 20 80 2B */ lis r9, InitHandler0@ha
+/* 802B6764 002B23C4 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
+/* 802B6768 002B23C8 3C C0 10 62 */ lis r6, 0x10624DD3@ha
+/* 802B676C 002B23CC 7C 65 1B 78 */ mr r5, r3
+/* 802B6770 002B23D0 39 29 62 70 */ addi r9, r9, InitHandler0@l
+/* 802B6774 002B23D4 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
+/* 802B6778 002B23D8 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B677C 002B23DC 7C 03 00 16 */ mulhwu r0, r3, r0
+/* 802B6780 002B23E0 7C 86 23 78 */ mr r6, r4
+/* 802B6784 002B23E4 38 7E 07 10 */ addi r3, r30, 0x710
+/* 802B6788 002B23E8 38 E0 00 00 */ li r7, 0
+/* 802B678C 002B23EC 54 00 D1 BE */ srwi r0, r0, 6
+/* 802B6790 002B23F0 1D 00 00 0A */ mulli r8, r0, 0xa
+/* 802B6794 002B23F4 4B FB 32 61 */ bl OSSetPeriodicAlarm
+/* 802B6798 002B23F8 93 ED AE A8 */ stw r31, lbl_80640168-_SDA_BASE_(r13)
+/* 802B679C 002B23FC 38 60 00 01 */ li r3, 1
+lbl_802B67A0:
+/* 802B67A0 002B2400 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B67A4 002B2404 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B67A8 002B2408 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B67AC 002B240C 7C 08 03 A6 */ mtlr r0
+/* 802B67B0 002B2410 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B67B4 002B2414 4E 80 00 20 */ blr
+
+.global WUDRegisterAllocator
+WUDRegisterAllocator:
+/* 802B67B8 002B2418 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B67BC 002B241C 7C 08 02 A6 */ mflr r0
+/* 802B67C0 002B2420 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B67C4 002B2424 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B67C8 002B2428 7C 9F 23 78 */ mr r31, r4
+/* 802B67CC 002B242C 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B67D0 002B2430 7C 7E 1B 78 */ mr r30, r3
+/* 802B67D4 002B2434 4B FB 7F 89 */ bl OSDisableInterrupts
+/* 802B67D8 002B2438 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B67DC 002B243C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B67E0 002B2440 93 C4 06 F4 */ stw r30, 0x6f4(r4)
+/* 802B67E4 002B2444 93 E4 06 F8 */ stw r31, 0x6f8(r4)
+/* 802B67E8 002B2448 4B FB 7F 9D */ bl OSRestoreInterrupts
+/* 802B67EC 002B244C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B67F0 002B2450 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B67F4 002B2454 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B67F8 002B2458 7C 08 03 A6 */ mtlr r0
+/* 802B67FC 002B245C 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6800 002B2460 4E 80 00 20 */ blr
+
+.global WUDShutdown
+WUDShutdown:
+/* 802B6804 002B2464 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B6808 002B2468 7C 08 02 A6 */ mflr r0
+/* 802B680C 002B246C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B6810 002B2470 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B6814 002B2474 4B F1 09 15 */ bl _savegpr_27
+/* 802B6818 002B2478 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B681C 002B247C 3C 60 80 44 */ lis r3, lbl_8043E41C@ha
+/* 802B6820 002B2480 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B6824 002B2484 38 63 E4 1C */ addi r3, r3, lbl_8043E41C@l
+/* 802B6828 002B2488 4C C6 31 82 */ crclr 6
+/* 802B682C 002B248C 48 00 2D 51 */ bl func_802B957C
+/* 802B6830 002B2490 4B FB 7F 2D */ bl OSDisableInterrupts
+/* 802B6834 002B2494 38 00 00 00 */ li r0, 0
+/* 802B6838 002B2498 98 1F 06 EB */ stb r0, 0x6eb(r31)
+/* 802B683C 002B249C 98 1F 06 EA */ stb r0, 0x6ea(r31)
+/* 802B6840 002B24A0 4B FB 7F 45 */ bl OSRestoreInterrupts
+/* 802B6844 002B24A4 38 60 00 00 */ li r3, 0
+/* 802B6848 002B24A8 38 80 00 00 */ li r4, 0
+/* 802B684C 002B24AC 48 00 99 3D */ bl func_802C0188
+/* 802B6850 002B24B0 4B FB 7F 0D */ bl OSDisableInterrupts
+/* 802B6854 002B24B4 7C 7E 1B 78 */ mr r30, r3
+/* 802B6858 002B24B8 4B FB 7F 05 */ bl OSDisableInterrupts
+/* 802B685C 002B24BC 88 1F 00 0C */ lbz r0, 0xc(r31)
+/* 802B6860 002B24C0 2C 00 00 00 */ cmpwi r0, 0
+/* 802B6864 002B24C4 40 82 00 34 */ bne lbl_802B6898
+/* 802B6868 002B24C8 88 1F 00 0D */ lbz r0, 0xd(r31)
+/* 802B686C 002B24CC 2C 00 00 00 */ cmpwi r0, 0
+/* 802B6870 002B24D0 40 82 00 28 */ bne lbl_802B6898
+/* 802B6874 002B24D4 88 1F 00 0F */ lbz r0, 0xf(r31)
+/* 802B6878 002B24D8 28 00 00 04 */ cmplwi r0, 4
+/* 802B687C 002B24DC 40 82 00 1C */ bne lbl_802B6898
+/* 802B6880 002B24E0 88 1F 00 10 */ lbz r0, 0x10(r31)
+/* 802B6884 002B24E4 28 00 00 04 */ cmplwi r0, 4
+/* 802B6888 002B24E8 40 82 00 10 */ bne lbl_802B6898
+/* 802B688C 002B24EC 4B FB 7E F9 */ bl OSRestoreInterrupts
+/* 802B6890 002B24F0 38 00 00 00 */ li r0, 0
+/* 802B6894 002B24F4 48 00 00 0C */ b lbl_802B68A0
+lbl_802B6898:
+/* 802B6898 002B24F8 4B FB 7E ED */ bl OSRestoreInterrupts
+/* 802B689C 002B24FC 38 00 00 01 */ li r0, 1
+lbl_802B68A0:
+/* 802B68A0 002B2500 2C 00 00 00 */ cmpwi r0, 0
+/* 802B68A4 002B2504 41 82 00 0C */ beq lbl_802B68B0
+/* 802B68A8 002B2508 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B68AC 002B250C 4B FB 31 CD */ bl OSCancelAlarm
+lbl_802B68B0:
+/* 802B68B0 002B2510 3F A0 80 54 */ lis r29, lbl_8053AC28@ha
+/* 802B68B4 002B2514 38 80 00 00 */ li r4, 0
+/* 802B68B8 002B2518 3B BD AC 28 */ addi r29, r29, lbl_8053AC28@l
+/* 802B68BC 002B251C 38 A0 02 BC */ li r5, 0x2bc
+/* 802B68C0 002B2520 38 7D 00 01 */ addi r3, r29, 1
+/* 802B68C4 002B2524 4B D4 D8 41 */ bl memset
+/* 802B68C8 002B2528 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B68CC 002B252C 3B 9D 00 01 */ addi r28, r29, 1
+/* 802B68D0 002B2530 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B68D4 002B2534 3B BD 00 07 */ addi r29, r29, 7
+/* 802B68D8 002B2538 83 63 00 64 */ lwz r27, 0x64(r3)
+/* 802B68DC 002B253C 48 00 00 34 */ b lbl_802B6910
+lbl_802B68E0:
+/* 802B68E0 002B2540 80 9B 00 00 */ lwz r4, 0(r27)
+/* 802B68E4 002B2544 7F 83 E3 78 */ mr r3, r28
+/* 802B68E8 002B2548 38 A0 00 06 */ li r5, 6
+/* 802B68EC 002B254C 38 84 00 40 */ addi r4, r4, 0x40
+/* 802B68F0 002B2550 4B D4 D7 11 */ bl memcpy
+/* 802B68F4 002B2554 80 9B 00 00 */ lwz r4, 0(r27)
+/* 802B68F8 002B2558 7F A3 EB 78 */ mr r3, r29
+/* 802B68FC 002B255C 38 A0 00 40 */ li r5, 0x40
+/* 802B6900 002B2560 4B D4 D7 01 */ bl memcpy
+/* 802B6904 002B2564 83 7B 00 08 */ lwz r27, 8(r27)
+/* 802B6908 002B2568 3B 9C 00 46 */ addi r28, r28, 0x46
+/* 802B690C 002B256C 3B BD 00 46 */ addi r29, r29, 0x46
+lbl_802B6910:
+/* 802B6910 002B2570 2C 1B 00 00 */ cmpwi r27, 0
+/* 802B6914 002B2574 40 82 FF CC */ bne lbl_802B68E0
+/* 802B6918 002B2578 38 00 00 01 */ li r0, 1
+/* 802B691C 002B257C 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B6920 002B2580 98 1F 00 11 */ stb r0, 0x11(r31)
+/* 802B6924 002B2584 4B FB 2E 01 */ bl OSCreateAlarm
+/* 802B6928 002B2588 4B FB BE 91 */ bl OSGetTime
+/* 802B692C 002B258C 3C A0 80 00 */ lis r5, 0x800000F8@ha
+/* 802B6930 002B2590 3D 20 80 2B */ lis r9, ShutdownHandler0@ha
+/* 802B6934 002B2594 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
+/* 802B6938 002B2598 3C C0 10 62 */ lis r6, 0x10624DD3@ha
+/* 802B693C 002B259C 7C 65 1B 78 */ mr r5, r3
+/* 802B6940 002B25A0 39 29 63 14 */ addi r9, r9, ShutdownHandler0@l
+/* 802B6944 002B25A4 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
+/* 802B6948 002B25A8 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B694C 002B25AC 7C 03 00 16 */ mulhwu r0, r3, r0
+/* 802B6950 002B25B0 7C 86 23 78 */ mr r6, r4
+/* 802B6954 002B25B4 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B6958 002B25B8 38 E0 00 00 */ li r7, 0
+/* 802B695C 002B25BC 54 00 D1 BE */ srwi r0, r0, 6
+/* 802B6960 002B25C0 1D 00 00 0A */ mulli r8, r0, 0xa
+/* 802B6964 002B25C4 4B FB 30 91 */ bl OSSetPeriodicAlarm
+/* 802B6968 002B25C8 38 00 00 04 */ li r0, 4
+/* 802B696C 002B25CC 7F C3 F3 78 */ mr r3, r30
+/* 802B6970 002B25D0 98 1F 07 08 */ stb r0, 0x708(r31)
+/* 802B6974 002B25D4 4B FB 7E 11 */ bl OSRestoreInterrupts
+/* 802B6978 002B25D8 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B697C 002B25DC 4B F1 07 F9 */ bl _restgpr_27
+/* 802B6980 002B25E0 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B6984 002B25E4 7C 08 03 A6 */ mtlr r0
+/* 802B6988 002B25E8 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B698C 002B25EC 4E 80 00 20 */ blr
+
+.global WUDGetStatus
+WUDGetStatus:
+/* 802B6990 002B25F0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6994 002B25F4 7C 08 02 A6 */ mflr r0
+/* 802B6998 002B25F8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B699C 002B25FC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B69A0 002B2600 4B FB 7D BD */ bl OSDisableInterrupts
+/* 802B69A4 002B2604 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B69A8 002B2608 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B69AC 002B260C 8B E4 07 08 */ lbz r31, 0x708(r4)
+/* 802B69B0 002B2610 4B FB 7D D5 */ bl OSRestoreInterrupts
+/* 802B69B4 002B2614 7F E3 07 74 */ extsb r3, r31
+/* 802B69B8 002B2618 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B69BC 002B261C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B69C0 002B2620 7C 08 03 A6 */ mtlr r0
+/* 802B69C4 002B2624 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B69C8 002B2628 4E 80 00 20 */ blr
+
+.global WUDGetBufferStatus
+WUDGetBufferStatus:
+/* 802B69CC 002B262C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B69D0 002B2630 7C 08 02 A6 */ mflr r0
+/* 802B69D4 002B2634 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B69D8 002B2638 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B69DC 002B263C 4B FB 7D 81 */ bl OSDisableInterrupts
+/* 802B69E0 002B2640 3C A0 80 54 */ lis r5, lbl_8053A4E0@ha
+/* 802B69E4 002B2644 38 A5 A4 E0 */ addi r5, r5, lbl_8053A4E0@l
+/* 802B69E8 002B2648 A0 85 07 44 */ lhz r4, 0x744(r5)
+/* 802B69EC 002B264C A0 05 07 46 */ lhz r0, 0x746(r5)
+/* 802B69F0 002B2650 7C 04 00 50 */ subf r0, r4, r0
+/* 802B69F4 002B2654 54 1F 06 3E */ clrlwi r31, r0, 0x18
+/* 802B69F8 002B2658 4B FB 7D 8D */ bl OSRestoreInterrupts
+/* 802B69FC 002B265C 7F E3 FB 78 */ mr r3, r31
+/* 802B6A00 002B2660 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6A04 002B2664 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6A08 002B2668 7C 08 03 A6 */ mtlr r0
+/* 802B6A0C 002B266C 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6A10 002B2670 4E 80 00 20 */ blr
+
+.global WUDSetSniffMode
+WUDSetSniffMode:
+/* 802B6A14 002B2674 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B6A18 002B2678 7C 08 02 A6 */ mflr r0
+/* 802B6A1C 002B267C 2C 04 00 00 */ cmpwi r4, 0
+/* 802B6A20 002B2680 3C E0 80 54 */ lis r7, lbl_8053A4E0@ha
+/* 802B6A24 002B2684 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B6A28 002B2688 7C 68 1B 78 */ mr r8, r3
+/* 802B6A2C 002B268C 38 E7 A4 E0 */ addi r7, r7, lbl_8053A4E0@l
+/* 802B6A30 002B2690 40 81 00 10 */ ble lbl_802B6A40
+/* 802B6A34 002B2694 38 00 00 02 */ li r0, 2
+/* 802B6A38 002B2698 98 01 00 10 */ stb r0, 0x10(r1)
+/* 802B6A3C 002B269C 48 00 00 0C */ b lbl_802B6A48
+lbl_802B6A40:
+/* 802B6A40 002B26A0 38 00 00 00 */ li r0, 0
+/* 802B6A44 002B26A4 98 01 00 10 */ stb r0, 0x10(r1)
+lbl_802B6A48:
+/* 802B6A48 002B26A8 38 C0 00 01 */ li r6, 1
+/* 802B6A4C 002B26AC 38 00 00 00 */ li r0, 0
+/* 802B6A50 002B26B0 B0 81 00 08 */ sth r4, 8(r1)
+/* 802B6A54 002B26B4 38 A1 00 08 */ addi r5, r1, 8
+/* 802B6A58 002B26B8 88 67 07 0A */ lbz r3, 0x70a(r7)
+/* 802B6A5C 002B26BC B0 81 00 0A */ sth r4, 0xa(r1)
+/* 802B6A60 002B26C0 7D 04 43 78 */ mr r4, r8
+/* 802B6A64 002B26C4 B0 C1 00 0C */ sth r6, 0xc(r1)
+/* 802B6A68 002B26C8 B0 01 00 0E */ sth r0, 0xe(r1)
+/* 802B6A6C 002B26CC 48 01 24 3D */ bl func_802C8EA8
+/* 802B6A70 002B26D0 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B6A74 002B26D4 7C 08 03 A6 */ mtlr r0
+/* 802B6A78 002B26D8 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B6A7C 002B26DC 4E 80 00 20 */ blr
+
+.global WUDSetSyncSimpleCallback
+WUDSetSyncSimpleCallback:
+/* 802B6A80 002B26E0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6A84 002B26E4 7C 08 02 A6 */ mflr r0
+/* 802B6A88 002B26E8 3C 80 80 44 */ lis r4, lbl_8043E42C@ha
+/* 802B6A8C 002B26EC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B6A90 002B26F0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B6A94 002B26F4 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B6A98 002B26F8 7C 7E 1B 78 */ mr r30, r3
+/* 802B6A9C 002B26FC 38 64 E4 2C */ addi r3, r4, lbl_8043E42C@l
+/* 802B6AA0 002B2700 4C C6 31 82 */ crclr 6
+/* 802B6AA4 002B2704 48 00 2A D9 */ bl func_802B957C
+/* 802B6AA8 002B2708 4B FB 7C B5 */ bl OSDisableInterrupts
+/* 802B6AAC 002B270C 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B6AB0 002B2710 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B6AB4 002B2714 83 E4 00 04 */ lwz r31, 4(r4)
+/* 802B6AB8 002B2718 93 C4 00 04 */ stw r30, 4(r4)
+/* 802B6ABC 002B271C 4B FB 7C C9 */ bl OSRestoreInterrupts
+/* 802B6AC0 002B2720 7F E3 FB 78 */ mr r3, r31
+/* 802B6AC4 002B2724 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6AC8 002B2728 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B6ACC 002B272C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6AD0 002B2730 7C 08 03 A6 */ mtlr r0
+/* 802B6AD4 002B2734 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6AD8 002B2738 4E 80 00 20 */ blr
+
+.global StartSyncDevice
+StartSyncDevice:
+/* 802B6ADC 002B273C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B6AE0 002B2740 7C 08 02 A6 */ mflr r0
+/* 802B6AE4 002B2744 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B6AE8 002B2748 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B6AEC 002B274C 4B F1 06 39 */ bl _savegpr_26
+/* 802B6AF0 002B2750 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B6AF4 002B2754 7C 7A 1B 78 */ mr r26, r3
+/* 802B6AF8 002B2758 7C 9B 23 78 */ mr r27, r4
+/* 802B6AFC 002B275C 7C BC 2B 78 */ mr r28, r5
+/* 802B6B00 002B2760 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B6B04 002B2764 3B C0 00 00 */ li r30, 0
+/* 802B6B08 002B2768 4B FB 7C 55 */ bl OSDisableInterrupts
+/* 802B6B0C 002B276C 8B BF 07 08 */ lbz r29, 0x708(r31)
+/* 802B6B10 002B2770 7F BD 07 74 */ extsb r29, r29
+/* 802B6B14 002B2774 4B FB 7C 71 */ bl OSRestoreInterrupts
+/* 802B6B18 002B2778 28 1D 00 03 */ cmplwi r29, 3
+/* 802B6B1C 002B277C 40 82 00 D8 */ bne lbl_802B6BF4
+/* 802B6B20 002B2780 4B FB 7C 3D */ bl OSDisableInterrupts
+/* 802B6B24 002B2784 88 1F 00 0C */ lbz r0, 0xc(r31)
+/* 802B6B28 002B2788 2C 00 00 00 */ cmpwi r0, 0
+/* 802B6B2C 002B278C 40 82 00 34 */ bne lbl_802B6B60
+/* 802B6B30 002B2790 88 1F 00 0D */ lbz r0, 0xd(r31)
+/* 802B6B34 002B2794 2C 00 00 00 */ cmpwi r0, 0
+/* 802B6B38 002B2798 40 82 00 28 */ bne lbl_802B6B60
+/* 802B6B3C 002B279C 88 1F 00 0F */ lbz r0, 0xf(r31)
+/* 802B6B40 002B27A0 28 00 00 04 */ cmplwi r0, 4
+/* 802B6B44 002B27A4 40 82 00 1C */ bne lbl_802B6B60
+/* 802B6B48 002B27A8 88 1F 00 10 */ lbz r0, 0x10(r31)
+/* 802B6B4C 002B27AC 28 00 00 04 */ cmplwi r0, 4
+/* 802B6B50 002B27B0 40 82 00 10 */ bne lbl_802B6B60
+/* 802B6B54 002B27B4 4B FB 7C 31 */ bl OSRestoreInterrupts
+/* 802B6B58 002B27B8 38 00 00 00 */ li r0, 0
+/* 802B6B5C 002B27BC 48 00 00 0C */ b lbl_802B6B68
+lbl_802B6B60:
+/* 802B6B60 002B27C0 4B FB 7C 25 */ bl OSRestoreInterrupts
+/* 802B6B64 002B27C4 38 00 00 01 */ li r0, 1
+lbl_802B6B68:
+/* 802B6B68 002B27C8 2C 00 00 00 */ cmpwi r0, 0
+/* 802B6B6C 002B27CC 40 82 00 88 */ bne lbl_802B6BF4
+/* 802B6B70 002B27D0 4B FB 7B ED */ bl OSDisableInterrupts
+/* 802B6B74 002B27D4 7C 1C 00 D0 */ neg r0, r28
+/* 802B6B78 002B27D8 38 A0 00 01 */ li r5, 1
+/* 802B6B7C 002B27DC 7C 04 E3 78 */ or r4, r0, r28
+/* 802B6B80 002B27E0 7C 7E 1B 78 */ mr r30, r3
+/* 802B6B84 002B27E4 38 00 00 00 */ li r0, 0
+/* 802B6B88 002B27E8 98 BF 00 0C */ stb r5, 0xc(r31)
+/* 802B6B8C 002B27EC 54 84 0F FE */ srwi r4, r4, 0x1f
+/* 802B6B90 002B27F0 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B6B94 002B27F4 9B 7F 06 E8 */ stb r27, 0x6e8(r31)
+/* 802B6B98 002B27F8 9B 5F 06 E9 */ stb r26, 0x6e9(r31)
+/* 802B6B9C 002B27FC 98 9F 06 E7 */ stb r4, 0x6e7(r31)
+/* 802B6BA0 002B2800 98 1F 06 E6 */ stb r0, 0x6e6(r31)
+/* 802B6BA4 002B2804 4B FB 2B 81 */ bl OSCreateAlarm
+/* 802B6BA8 002B2808 4B FB BC 11 */ bl OSGetTime
+/* 802B6BAC 002B280C 3C A0 80 00 */ lis r5, 0x800000F8@ha
+/* 802B6BB0 002B2810 3D 20 80 2B */ lis r9, SyncHandler0@ha
+/* 802B6BB4 002B2814 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
+/* 802B6BB8 002B2818 3C C0 10 62 */ lis r6, 0x10624DD3@ha
+/* 802B6BBC 002B281C 7C 65 1B 78 */ mr r5, r3
+/* 802B6BC0 002B2820 39 29 5A A0 */ addi r9, r9, SyncHandler0@l
+/* 802B6BC4 002B2824 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
+/* 802B6BC8 002B2828 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B6BCC 002B282C 7C 03 00 16 */ mulhwu r0, r3, r0
+/* 802B6BD0 002B2830 7C 86 23 78 */ mr r6, r4
+/* 802B6BD4 002B2834 38 7F 07 10 */ addi r3, r31, 0x710
+/* 802B6BD8 002B2838 38 E0 00 00 */ li r7, 0
+/* 802B6BDC 002B283C 54 00 D1 BE */ srwi r0, r0, 6
+/* 802B6BE0 002B2840 1D 00 00 14 */ mulli r8, r0, 0x14
+/* 802B6BE4 002B2844 4B FB 2E 11 */ bl OSSetPeriodicAlarm
+/* 802B6BE8 002B2848 7F C3 F3 78 */ mr r3, r30
+/* 802B6BEC 002B284C 4B FB 7B 99 */ bl OSRestoreInterrupts
+/* 802B6BF0 002B2850 3B C0 00 01 */ li r30, 1
+lbl_802B6BF4:
+/* 802B6BF4 002B2854 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B6BF8 002B2858 7F C3 F3 78 */ mr r3, r30
+/* 802B6BFC 002B285C 4B F1 05 75 */ bl _restgpr_26
+/* 802B6C00 002B2860 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B6C04 002B2864 7C 08 03 A6 */ mtlr r0
+/* 802B6C08 002B2868 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B6C0C 002B286C 4E 80 00 20 */ blr
+
+.global WUDStartFastSyncSimple
+WUDStartFastSyncSimple:
+/* 802B6C10 002B2870 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6C14 002B2874 7C 08 02 A6 */ mflr r0
+/* 802B6C18 002B2878 3C 60 80 44 */ lis r3, lbl_8043E47C@ha
+/* 802B6C1C 002B287C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B6C20 002B2880 38 63 E4 7C */ addi r3, r3, lbl_8043E47C@l
+/* 802B6C24 002B2884 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B6C28 002B2888 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B6C2C 002B288C 4C C6 31 82 */ crclr 6
+/* 802B6C30 002B2890 48 00 29 4D */ bl func_802B957C
+/* 802B6C34 002B2894 38 60 00 01 */ li r3, 1
+/* 802B6C38 002B2898 38 80 FF FF */ li r4, -1
+/* 802B6C3C 002B289C 38 A0 00 01 */ li r5, 1
+/* 802B6C40 002B28A0 4B FF FE 9D */ bl StartSyncDevice
+/* 802B6C44 002B28A4 7C 7F 1B 78 */ mr r31, r3
+/* 802B6C48 002B28A8 4B FB 7B 15 */ bl OSDisableInterrupts
+/* 802B6C4C 002B28AC 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B6C50 002B28B0 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B6C54 002B28B4 83 C4 00 04 */ lwz r30, 4(r4)
+/* 802B6C58 002B28B8 4B FB 7B 2D */ bl OSRestoreInterrupts
+/* 802B6C5C 002B28BC 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B6C60 002B28C0 40 82 00 20 */ bne lbl_802B6C80
+/* 802B6C64 002B28C4 2C 1E 00 00 */ cmpwi r30, 0
+/* 802B6C68 002B28C8 41 82 00 18 */ beq lbl_802B6C80
+/* 802B6C6C 002B28CC 7F CC F3 78 */ mr r12, r30
+/* 802B6C70 002B28D0 38 60 FF FF */ li r3, -1
+/* 802B6C74 002B28D4 38 80 00 00 */ li r4, 0
+/* 802B6C78 002B28D8 7D 89 03 A6 */ mtctr r12
+/* 802B6C7C 002B28DC 4E 80 04 21 */ bctrl
+lbl_802B6C80:
+/* 802B6C80 002B28E0 7F E3 FB 78 */ mr r3, r31
+/* 802B6C84 002B28E4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6C88 002B28E8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B6C8C 002B28EC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6C90 002B28F0 7C 08 03 A6 */ mtlr r0
+/* 802B6C94 002B28F4 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6C98 002B28F8 4E 80 00 20 */ blr
+
+.global WUDStopSyncSimple
+WUDStopSyncSimple:
+/* 802B6C9C 002B28FC 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B6CA0 002B2900 7C 08 02 A6 */ mflr r0
+/* 802B6CA4 002B2904 3C 60 80 44 */ lis r3, lbl_8043E4AC@ha
+/* 802B6CA8 002B2908 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B6CAC 002B290C 38 63 E4 AC */ addi r3, r3, lbl_8043E4AC@l
+/* 802B6CB0 002B2910 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B6CB4 002B2914 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B6CB8 002B2918 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B6CBC 002B291C 4C C6 31 82 */ crclr 6
+/* 802B6CC0 002B2920 48 00 28 BD */ bl func_802B957C
+/* 802B6CC4 002B2924 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B6CC8 002B2928 3B C0 00 00 */ li r30, 0
+/* 802B6CCC 002B292C 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B6CD0 002B2930 4B FB 7A 8D */ bl OSDisableInterrupts
+/* 802B6CD4 002B2934 88 1D 07 08 */ lbz r0, 0x708(r29)
+/* 802B6CD8 002B2938 7C 7F 1B 78 */ mr r31, r3
+/* 802B6CDC 002B293C 2C 00 00 03 */ cmpwi r0, 3
+/* 802B6CE0 002B2940 40 82 00 2C */ bne lbl_802B6D0C
+/* 802B6CE4 002B2944 88 1D 06 E8 */ lbz r0, 0x6e8(r29)
+/* 802B6CE8 002B2948 7C 00 07 75 */ extsb. r0, r0
+/* 802B6CEC 002B294C 41 82 00 1C */ beq lbl_802B6D08
+/* 802B6CF0 002B2950 88 1D 00 0C */ lbz r0, 0xc(r29)
+/* 802B6CF4 002B2954 28 00 00 03 */ cmplwi r0, 3
+/* 802B6CF8 002B2958 40 82 00 08 */ bne lbl_802B6D00
+/* 802B6CFC 002B295C 48 00 95 69 */ bl func_802C0264
+lbl_802B6D00:
+/* 802B6D00 002B2960 38 00 00 00 */ li r0, 0
+/* 802B6D04 002B2964 98 1D 06 E8 */ stb r0, 0x6e8(r29)
+lbl_802B6D08:
+/* 802B6D08 002B2968 3B C0 00 01 */ li r30, 1
+lbl_802B6D0C:
+/* 802B6D0C 002B296C 7F E3 FB 78 */ mr r3, r31
+/* 802B6D10 002B2970 4B FB 7A 75 */ bl OSRestoreInterrupts
+/* 802B6D14 002B2974 7F C3 F3 78 */ mr r3, r30
+/* 802B6D18 002B2978 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B6D1C 002B297C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B6D20 002B2980 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B6D24 002B2984 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B6D28 002B2988 7C 08 03 A6 */ mtlr r0
+/* 802B6D2C 002B298C 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B6D30 002B2990 4E 80 00 20 */ blr
+
+.global WUDSetDisableChannel
+WUDSetDisableChannel:
+/* 802B6D34 002B2994 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B6D38 002B2998 7C 08 02 A6 */ mflr r0
+/* 802B6D3C 002B299C 3C 80 80 44 */ lis r4, lbl_8043E4E0@ha
+/* 802B6D40 002B29A0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B6D44 002B29A4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B6D48 002B29A8 3B E0 00 00 */ li r31, 0
+/* 802B6D4C 002B29AC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B6D50 002B29B0 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B6D54 002B29B4 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B6D58 002B29B8 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B6D5C 002B29BC 7C 7D 1B 78 */ mr r29, r3
+/* 802B6D60 002B29C0 38 64 E4 E0 */ addi r3, r4, lbl_8043E4E0@l
+/* 802B6D64 002B29C4 4C C6 31 82 */ crclr 6
+/* 802B6D68 002B29C8 48 00 28 15 */ bl func_802B957C
+/* 802B6D6C 002B29CC 7F A0 07 75 */ extsb. r0, r29
+/* 802B6D70 002B29D0 41 80 00 0C */ blt lbl_802B6D7C
+/* 802B6D74 002B29D4 2C 00 00 0D */ cmpwi r0, 0xd
+/* 802B6D78 002B29D8 40 81 00 0C */ ble lbl_802B6D84
+lbl_802B6D7C:
+/* 802B6D7C 002B29DC 38 60 00 00 */ li r3, 0
+/* 802B6D80 002B29E0 48 00 00 84 */ b lbl_802B6E04
+lbl_802B6D84:
+/* 802B6D84 002B29E4 4B FB 79 D9 */ bl OSDisableInterrupts
+/* 802B6D88 002B29E8 8B DE 07 08 */ lbz r30, 0x708(r30)
+/* 802B6D8C 002B29EC 7F DE 07 74 */ extsb r30, r30
+/* 802B6D90 002B29F0 4B FB 79 F5 */ bl OSRestoreInterrupts
+/* 802B6D94 002B29F4 28 1E 00 03 */ cmplwi r30, 3
+/* 802B6D98 002B29F8 40 82 00 68 */ bne lbl_802B6E00
+/* 802B6D9C 002B29FC 7F A3 07 75 */ extsb. r3, r29
+/* 802B6DA0 002B2A00 40 82 00 10 */ bne lbl_802B6DB0
+/* 802B6DA4 002B2A04 38 00 00 FF */ li r0, 0xff
+/* 802B6DA8 002B2A08 38 80 00 FF */ li r4, 0xff
+/* 802B6DAC 002B2A0C 48 00 00 2C */ b lbl_802B6DD8
+lbl_802B6DB0:
+/* 802B6DB0 002B2A10 38 63 00 01 */ addi r3, r3, 1
+/* 802B6DB4 002B2A14 54 60 10 3A */ slwi r0, r3, 2
+/* 802B6DB8 002B2A18 7C 60 1A 14 */ add r3, r0, r3
+/* 802B6DBC 002B2A1C 34 03 FF F2 */ addic. r0, r3, -14
+/* 802B6DC0 002B2A20 38 83 00 0E */ addi r4, r3, 0xe
+/* 802B6DC4 002B2A24 40 80 00 08 */ bge lbl_802B6DCC
+/* 802B6DC8 002B2A28 38 00 00 00 */ li r0, 0
+lbl_802B6DCC:
+/* 802B6DCC 002B2A2C 2C 04 00 4E */ cmpwi r4, 0x4e
+/* 802B6DD0 002B2A30 40 81 00 08 */ ble lbl_802B6DD8
+/* 802B6DD4 002B2A34 38 80 00 4E */ li r4, 0x4e
+lbl_802B6DD8:
+/* 802B6DD8 002B2A38 54 03 06 3E */ clrlwi r3, r0, 0x18
+/* 802B6DDC 002B2A3C 54 84 06 3E */ clrlwi r4, r4, 0x18
+/* 802B6DE0 002B2A40 48 00 ED 0D */ bl func_802C5AEC
+/* 802B6DE4 002B2A44 7C 60 1B 78 */ mr r0, r3
+/* 802B6DE8 002B2A48 3C 60 80 44 */ lis r3, lbl_8043E4F8@ha
+/* 802B6DEC 002B2A4C 38 63 E4 F8 */ addi r3, r3, lbl_8043E4F8@l
+/* 802B6DF0 002B2A50 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B6DF4 002B2A54 4C C6 31 82 */ crclr 6
+/* 802B6DF8 002B2A58 48 00 27 85 */ bl func_802B957C
+/* 802B6DFC 002B2A5C 3B E0 00 01 */ li r31, 1
+lbl_802B6E00:
+/* 802B6E00 002B2A60 7F E3 FB 78 */ mr r3, r31
+lbl_802B6E04:
+/* 802B6E04 002B2A64 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B6E08 002B2A68 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B6E0C 002B2A6C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B6E10 002B2A70 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B6E14 002B2A74 7C 08 03 A6 */ mtlr r0
+/* 802B6E18 002B2A78 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B6E1C 002B2A7C 4E 80 00 20 */ blr
+
+.global WUDSetHidRecvCallback
+WUDSetHidRecvCallback:
+/* 802B6E20 002B2A80 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6E24 002B2A84 7C 08 02 A6 */ mflr r0
+/* 802B6E28 002B2A88 3C 80 80 44 */ lis r4, lbl_8043E514@ha
+/* 802B6E2C 002B2A8C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B6E30 002B2A90 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B6E34 002B2A94 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B6E38 002B2A98 7C 7E 1B 78 */ mr r30, r3
+/* 802B6E3C 002B2A9C 38 64 E5 14 */ addi r3, r4, lbl_8043E514@l
+/* 802B6E40 002B2AA0 4C C6 31 82 */ crclr 6
+/* 802B6E44 002B2AA4 48 00 27 39 */ bl func_802B957C
+/* 802B6E48 002B2AA8 4B FB 79 15 */ bl OSDisableInterrupts
+/* 802B6E4C 002B2AAC 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B6E50 002B2AB0 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B6E54 002B2AB4 83 E4 06 EC */ lwz r31, 0x6ec(r4)
+/* 802B6E58 002B2AB8 93 C4 06 EC */ stw r30, 0x6ec(r4)
+/* 802B6E5C 002B2ABC 4B FB 79 29 */ bl OSRestoreInterrupts
+/* 802B6E60 002B2AC0 7F E3 FB 78 */ mr r3, r31
+/* 802B6E64 002B2AC4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6E68 002B2AC8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B6E6C 002B2ACC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6E70 002B2AD0 7C 08 03 A6 */ mtlr r0
+/* 802B6E74 002B2AD4 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6E78 002B2AD8 4E 80 00 20 */ blr
+
+.global WUDSetHidConnCallback
+WUDSetHidConnCallback:
+/* 802B6E7C 002B2ADC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6E80 002B2AE0 7C 08 02 A6 */ mflr r0
+/* 802B6E84 002B2AE4 3C 80 80 44 */ lis r4, lbl_8043E530@ha
+/* 802B6E88 002B2AE8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B6E8C 002B2AEC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B6E90 002B2AF0 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B6E94 002B2AF4 7C 7E 1B 78 */ mr r30, r3
+/* 802B6E98 002B2AF8 38 64 E5 30 */ addi r3, r4, lbl_8043E530@l
+/* 802B6E9C 002B2AFC 4C C6 31 82 */ crclr 6
+/* 802B6EA0 002B2B00 48 00 26 DD */ bl func_802B957C
+/* 802B6EA4 002B2B04 4B FB 78 B9 */ bl OSDisableInterrupts
+/* 802B6EA8 002B2B08 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B6EAC 002B2B0C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B6EB0 002B2B10 83 E4 06 F0 */ lwz r31, 0x6f0(r4)
+/* 802B6EB4 002B2B14 93 C4 06 F0 */ stw r30, 0x6f0(r4)
+/* 802B6EB8 002B2B18 4B FB 78 CD */ bl OSRestoreInterrupts
+/* 802B6EBC 002B2B1C 7F E3 FB 78 */ mr r3, r31
+/* 802B6EC0 002B2B20 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6EC4 002B2B24 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B6EC8 002B2B28 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6ECC 002B2B2C 7C 08 03 A6 */ mtlr r0
+/* 802B6ED0 002B2B30 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6ED4 002B2B34 4E 80 00 20 */ blr
+
+.global WUDSetVisibility
+WUDSetVisibility:
+/* 802B6ED8 002B2B38 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B6EDC 002B2B3C 7C 08 02 A6 */ mflr r0
+/* 802B6EE0 002B2B40 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B6EE4 002B2B44 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B6EE8 002B2B48 7C 9F 23 78 */ mr r31, r4
+/* 802B6EEC 002B2B4C 93 C1 00 08 */ stw r30, 8(r1)
+/* 802B6EF0 002B2B50 7C 7E 1B 78 */ mr r30, r3
+/* 802B6EF4 002B2B54 4B FB 78 69 */ bl OSDisableInterrupts
+/* 802B6EF8 002B2B58 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B6EFC 002B2B5C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B6F00 002B2B60 9B C4 06 EB */ stb r30, 0x6eb(r4)
+/* 802B6F04 002B2B64 9B E4 06 EA */ stb r31, 0x6ea(r4)
+/* 802B6F08 002B2B68 4B FB 78 7D */ bl OSRestoreInterrupts
+/* 802B6F0C 002B2B6C 7F C3 F3 78 */ mr r3, r30
+/* 802B6F10 002B2B70 7F E4 FB 78 */ mr r4, r31
+/* 802B6F14 002B2B74 48 00 92 75 */ bl func_802C0188
+/* 802B6F18 002B2B78 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B6F1C 002B2B7C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B6F20 002B2B80 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802B6F24 002B2B84 7C 08 03 A6 */ mtlr r0
+/* 802B6F28 002B2B88 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B6F2C 002B2B8C 4E 80 00 20 */ blr
+
+reset_again_cb:
+/* 802B6F30 002B2B90 48 00 04 80 */ b WUDiInitSub
+
+remove_patch_cb:
+/* 802B6F34 002B2B94 94 21 FE F0 */ stwu r1, -0x110(r1)
+/* 802B6F38 002B2B98 7C 08 02 A6 */ mflr r0
+/* 802B6F3C 002B2B9C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B6F40 002B2BA0 90 01 01 14 */ stw r0, 0x114(r1)
+/* 802B6F44 002B2BA4 40 82 00 14 */ bne lbl_802B6F58
+/* 802B6F48 002B2BA8 3C 60 80 2B */ lis r3, reset_again_cb@ha
+/* 802B6F4C 002B2BAC 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
+/* 802B6F50 002B2BB0 48 00 EA 3D */ bl func_802C598C
+/* 802B6F54 002B2BB4 48 00 01 48 */ b lbl_802B709C
+lbl_802B6F58:
+/* 802B6F58 002B2BB8 80 6D AE BC */ lwz r3, lbl_8064017C-_SDA_BASE_(r13)
+/* 802B6F5C 002B2BBC 38 00 00 FB */ li r0, 0xfb
+/* 802B6F60 002B2BC0 28 03 00 FB */ cmplwi r3, 0xfb
+/* 802B6F64 002B2BC4 40 80 00 08 */ bge lbl_802B6F6C
+/* 802B6F68 002B2BC8 7C 60 1B 78 */ mr r0, r3
+lbl_802B6F6C:
+/* 802B6F6C 002B2BCC 80 AD AE B4 */ lwz r5, lbl_80640174-_SDA_BASE_(r13)
+/* 802B6F70 002B2BD0 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 802B6F74 002B2BD4 2C 87 00 00 */ cmpwi cr1, r7, 0
+/* 802B6F78 002B2BD8 38 C0 00 00 */ li r6, 0
+/* 802B6F7C 002B2BDC 54 A4 C6 3E */ rlwinm r4, r5, 0x18, 0x18, 0x1f
+/* 802B6F80 002B2BE0 54 A3 86 3E */ rlwinm r3, r5, 0x10, 0x18, 0x1f
+/* 802B6F84 002B2BE4 54 A0 46 3E */ srwi r0, r5, 0x18
+/* 802B6F88 002B2BE8 98 A1 00 08 */ stb r5, 8(r1)
+/* 802B6F8C 002B2BEC 98 81 00 09 */ stb r4, 9(r1)
+/* 802B6F90 002B2BF0 98 61 00 0A */ stb r3, 0xa(r1)
+/* 802B6F94 002B2BF4 98 01 00 0B */ stb r0, 0xb(r1)
+/* 802B6F98 002B2BF8 40 85 00 DC */ ble cr1, lbl_802B7074
+/* 802B6F9C 002B2BFC 2C 07 00 08 */ cmpwi r7, 8
+/* 802B6FA0 002B2C00 38 87 FF F8 */ addi r4, r7, -8
+/* 802B6FA4 002B2C04 40 81 00 98 */ ble lbl_802B703C
+/* 802B6FA8 002B2C08 38 A0 00 00 */ li r5, 0
+/* 802B6FAC 002B2C0C 41 84 00 18 */ blt cr1, lbl_802B6FC4
+/* 802B6FB0 002B2C10 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 802B6FB4 002B2C14 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 802B6FB8 002B2C18 7C 07 00 00 */ cmpw r7, r0
+/* 802B6FBC 002B2C1C 41 81 00 08 */ bgt lbl_802B6FC4
+/* 802B6FC0 002B2C20 38 A0 00 01 */ li r5, 1
+lbl_802B6FC4:
+/* 802B6FC4 002B2C24 2C 05 00 00 */ cmpwi r5, 0
+/* 802B6FC8 002B2C28 41 82 00 74 */ beq lbl_802B703C
+/* 802B6FCC 002B2C2C 38 04 00 07 */ addi r0, r4, 7
+/* 802B6FD0 002B2C30 3C A0 80 44 */ lis r5, lbl_8043E54C@ha
+/* 802B6FD4 002B2C34 54 00 E8 FE */ srwi r0, r0, 3
+/* 802B6FD8 002B2C38 39 01 00 08 */ addi r8, r1, 8
+/* 802B6FDC 002B2C3C 38 A5 E5 4C */ addi r5, r5, lbl_8043E54C@l
+/* 802B6FE0 002B2C40 7C 09 03 A6 */ mtctr r0
+/* 802B6FE4 002B2C44 2C 04 00 00 */ cmpwi r4, 0
+/* 802B6FE8 002B2C48 40 81 00 54 */ ble lbl_802B703C
+lbl_802B6FEC:
+/* 802B6FEC 002B2C4C 7C 85 32 14 */ add r4, r5, r6
+/* 802B6FF0 002B2C50 38 C6 00 08 */ addi r6, r6, 8
+/* 802B6FF4 002B2C54 88 64 00 08 */ lbz r3, 8(r4)
+/* 802B6FF8 002B2C58 88 04 00 09 */ lbz r0, 9(r4)
+/* 802B6FFC 002B2C5C 98 68 00 04 */ stb r3, 4(r8)
+/* 802B7000 002B2C60 88 64 00 0A */ lbz r3, 0xa(r4)
+/* 802B7004 002B2C64 98 08 00 05 */ stb r0, 5(r8)
+/* 802B7008 002B2C68 88 04 00 0B */ lbz r0, 0xb(r4)
+/* 802B700C 002B2C6C 98 68 00 06 */ stb r3, 6(r8)
+/* 802B7010 002B2C70 88 64 00 0C */ lbz r3, 0xc(r4)
+/* 802B7014 002B2C74 98 08 00 07 */ stb r0, 7(r8)
+/* 802B7018 002B2C78 88 04 00 0D */ lbz r0, 0xd(r4)
+/* 802B701C 002B2C7C 98 68 00 08 */ stb r3, 8(r8)
+/* 802B7020 002B2C80 88 64 00 0E */ lbz r3, 0xe(r4)
+/* 802B7024 002B2C84 98 08 00 09 */ stb r0, 9(r8)
+/* 802B7028 002B2C88 88 04 00 0F */ lbz r0, 0xf(r4)
+/* 802B702C 002B2C8C 98 68 00 0A */ stb r3, 0xa(r8)
+/* 802B7030 002B2C90 98 08 00 0B */ stb r0, 0xb(r8)
+/* 802B7034 002B2C94 39 08 00 08 */ addi r8, r8, 8
+/* 802B7038 002B2C98 42 00 FF B4 */ bdnz lbl_802B6FEC
+lbl_802B703C:
+/* 802B703C 002B2C9C 38 A1 00 08 */ addi r5, r1, 8
+/* 802B7040 002B2CA0 3C 80 80 44 */ lis r4, lbl_8043E54C@ha
+/* 802B7044 002B2CA4 7C 06 38 50 */ subf r0, r6, r7
+/* 802B7048 002B2CA8 7C A5 32 14 */ add r5, r5, r6
+/* 802B704C 002B2CAC 38 84 E5 4C */ addi r4, r4, lbl_8043E54C@l
+/* 802B7050 002B2CB0 7C 09 03 A6 */ mtctr r0
+/* 802B7054 002B2CB4 7C 06 38 00 */ cmpw r6, r7
+/* 802B7058 002B2CB8 40 80 00 1C */ bge lbl_802B7074
+lbl_802B705C:
+/* 802B705C 002B2CBC 7C 64 32 14 */ add r3, r4, r6
+/* 802B7060 002B2CC0 38 C6 00 01 */ addi r6, r6, 1
+/* 802B7064 002B2CC4 88 03 00 08 */ lbz r0, 8(r3)
+/* 802B7068 002B2CC8 98 05 00 04 */ stb r0, 4(r5)
+/* 802B706C 002B2CCC 38 A5 00 01 */ addi r5, r5, 1
+/* 802B7070 002B2CD0 42 00 FF EC */ bdnz lbl_802B705C
+lbl_802B7074:
+/* 802B7074 002B2CD4 3C 60 00 01 */ lis r3, 0x0000FC4C@ha
+/* 802B7078 002B2CD8 38 07 00 04 */ addi r0, r7, 4
+/* 802B707C 002B2CDC 38 63 FC 4C */ addi r3, r3, 0x0000FC4C@l
+/* 802B7080 002B2CE0 3C C0 80 2B */ lis r6, write_patch_cb@ha
+/* 802B7084 002B2CE4 90 ED AE B8 */ stw r7, lbl_80640178-_SDA_BASE_(r13)
+/* 802B7088 002B2CE8 54 63 04 3E */ clrlwi r3, r3, 0x10
+/* 802B708C 002B2CEC 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B7090 002B2CF0 38 A1 00 08 */ addi r5, r1, 8
+/* 802B7094 002B2CF4 38 C6 70 AC */ addi r6, r6, write_patch_cb@l
+/* 802B7098 002B2CF8 48 00 F8 F1 */ bl func_802C6988
+lbl_802B709C:
+/* 802B709C 002B2CFC 80 01 01 14 */ lwz r0, 0x114(r1)
+/* 802B70A0 002B2D00 7C 08 03 A6 */ mtlr r0
+/* 802B70A4 002B2D04 38 21 01 10 */ addi r1, r1, 0x110
+/* 802B70A8 002B2D08 4E 80 00 20 */ blr
+
+write_patch_cb:
+/* 802B70AC 002B2D0C 94 21 FD F0 */ stwu r1, -0x210(r1)
+/* 802B70B0 002B2D10 7C 08 02 A6 */ mflr r0
+/* 802B70B4 002B2D14 2C 03 00 00 */ cmpwi r3, 0
+/* 802B70B8 002B2D18 90 01 02 14 */ stw r0, 0x214(r1)
+/* 802B70BC 002B2D1C 93 E1 02 0C */ stw r31, 0x20c(r1)
+/* 802B70C0 002B2D20 93 C1 02 08 */ stw r30, 0x208(r1)
+/* 802B70C4 002B2D24 41 82 01 F4 */ beq lbl_802B72B8
+/* 802B70C8 002B2D28 80 8D AE B8 */ lwz r4, lbl_80640178-_SDA_BASE_(r13)
+/* 802B70CC 002B2D2C 80 0D AE BC */ lwz r0, lbl_8064017C-_SDA_BASE_(r13)
+/* 802B70D0 002B2D30 7C 00 20 40 */ cmplw r0, r4
+/* 802B70D4 002B2D34 40 82 00 80 */ bne lbl_802B7154
+/* 802B70D8 002B2D38 3C 60 80 44 */ lis r3, lbl_8043E608@ha
+/* 802B70DC 002B2D3C 38 80 00 00 */ li r4, 0
+/* 802B70E0 002B2D40 88 63 E6 08 */ lbz r3, lbl_8043E608@l(r3)
+/* 802B70E4 002B2D44 38 00 00 13 */ li r0, 0x13
+/* 802B70E8 002B2D48 98 8D AE B1 */ stb r4, lbl_80640171-_SDA_BASE_(r13)
+/* 802B70EC 002B2D4C 2C 03 00 13 */ cmpwi r3, 0x13
+/* 802B70F0 002B2D50 98 6D AE B2 */ stb r3, lbl_80640172-_SDA_BASE_(r13)
+/* 802B70F4 002B2D54 40 80 00 08 */ bge lbl_802B70FC
+/* 802B70F8 002B2D58 7C 60 1B 78 */ mr r0, r3
+lbl_802B70FC:
+/* 802B70FC 002B2D5C 54 1F 06 3E */ clrlwi r31, r0, 0x18
+/* 802B7100 002B2D60 3C 80 80 44 */ lis r4, lbl_8043E608@ha
+/* 802B7104 002B2D64 1F DF 00 0D */ mulli r30, r31, 0xd
+/* 802B7108 002B2D68 98 01 01 08 */ stb r0, 0x108(r1)
+/* 802B710C 002B2D6C 38 84 E6 08 */ addi r4, r4, lbl_8043E608@l
+/* 802B7110 002B2D70 38 61 01 09 */ addi r3, r1, 0x109
+/* 802B7114 002B2D74 7F C5 F3 78 */ mr r5, r30
+/* 802B7118 002B2D78 38 84 00 01 */ addi r4, r4, 1
+/* 802B711C 002B2D7C 4B D4 CE E5 */ bl memcpy
+/* 802B7120 002B2D80 88 8D AE B1 */ lbz r4, lbl_80640171-_SDA_BASE_(r13)
+/* 802B7124 002B2D84 3C 60 00 01 */ lis r3, 0x0000FC4F@ha
+/* 802B7128 002B2D88 38 63 FC 4F */ addi r3, r3, 0x0000FC4F@l
+/* 802B712C 002B2D8C 3C C0 80 2B */ lis r6, install_patch_cb@ha
+/* 802B7130 002B2D90 7C 84 FA 14 */ add r4, r4, r31
+/* 802B7134 002B2D94 38 1E 00 01 */ addi r0, r30, 1
+/* 802B7138 002B2D98 98 8D AE B1 */ stb r4, lbl_80640171-_SDA_BASE_(r13)
+/* 802B713C 002B2D9C 54 63 04 3E */ clrlwi r3, r3, 0x10
+/* 802B7140 002B2DA0 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B7144 002B2DA4 38 A1 01 08 */ addi r5, r1, 0x108
+/* 802B7148 002B2DA8 38 C6 72 DC */ addi r6, r6, install_patch_cb@l
+/* 802B714C 002B2DAC 48 00 F8 3D */ bl func_802C6988
+/* 802B7150 002B2DB0 48 00 01 74 */ b lbl_802B72C4
+lbl_802B7154:
+/* 802B7154 002B2DB4 7C 04 00 50 */ subf r0, r4, r0
+/* 802B7158 002B2DB8 38 60 00 FB */ li r3, 0xfb
+/* 802B715C 002B2DBC 28 00 00 FB */ cmplwi r0, 0xfb
+/* 802B7160 002B2DC0 40 80 00 08 */ bge lbl_802B7168
+/* 802B7164 002B2DC4 7C 03 03 78 */ mr r3, r0
+lbl_802B7168:
+/* 802B7168 002B2DC8 80 0D AE B4 */ lwz r0, lbl_80640174-_SDA_BASE_(r13)
+/* 802B716C 002B2DCC 54 63 06 3E */ clrlwi r3, r3, 0x18
+/* 802B7170 002B2DD0 2C 83 00 00 */ cmpwi cr1, r3, 0
+/* 802B7174 002B2DD4 38 C0 00 00 */ li r6, 0
+/* 802B7178 002B2DD8 7C 00 22 14 */ add r0, r0, r4
+/* 802B717C 002B2DDC 54 05 C6 3E */ rlwinm r5, r0, 0x18, 0x18, 0x1f
+/* 802B7180 002B2DE0 98 01 00 08 */ stb r0, 8(r1)
+/* 802B7184 002B2DE4 54 04 86 3E */ rlwinm r4, r0, 0x10, 0x18, 0x1f
+/* 802B7188 002B2DE8 54 00 46 3E */ srwi r0, r0, 0x18
+/* 802B718C 002B2DEC 98 A1 00 09 */ stb r5, 9(r1)
+/* 802B7190 002B2DF0 98 81 00 0A */ stb r4, 0xa(r1)
+/* 802B7194 002B2DF4 98 01 00 0B */ stb r0, 0xb(r1)
+/* 802B7198 002B2DF8 40 85 00 EC */ ble cr1, lbl_802B7284
+/* 802B719C 002B2DFC 2C 03 00 08 */ cmpwi r3, 8
+/* 802B71A0 002B2E00 38 E3 FF F8 */ addi r7, r3, -8
+/* 802B71A4 002B2E04 40 81 00 A0 */ ble lbl_802B7244
+/* 802B71A8 002B2E08 38 A0 00 00 */ li r5, 0
+/* 802B71AC 002B2E0C 41 84 00 18 */ blt cr1, lbl_802B71C4
+/* 802B71B0 002B2E10 3C 80 80 00 */ lis r4, 0x7FFFFFFE@ha
+/* 802B71B4 002B2E14 38 04 FF FE */ addi r0, r4, 0x7FFFFFFE@l
+/* 802B71B8 002B2E18 7C 03 00 00 */ cmpw r3, r0
+/* 802B71BC 002B2E1C 41 81 00 08 */ bgt lbl_802B71C4
+/* 802B71C0 002B2E20 38 A0 00 01 */ li r5, 1
+lbl_802B71C4:
+/* 802B71C4 002B2E24 2C 05 00 00 */ cmpwi r5, 0
+/* 802B71C8 002B2E28 41 82 00 7C */ beq lbl_802B7244
+/* 802B71CC 002B2E2C 38 07 00 07 */ addi r0, r7, 7
+/* 802B71D0 002B2E30 3C 80 80 44 */ lis r4, lbl_8043E54C@ha
+/* 802B71D4 002B2E34 80 AD AE B8 */ lwz r5, lbl_80640178-_SDA_BASE_(r13)
+/* 802B71D8 002B2E38 38 84 E5 4C */ addi r4, r4, lbl_8043E54C@l
+/* 802B71DC 002B2E3C 54 00 E8 FE */ srwi r0, r0, 3
+/* 802B71E0 002B2E40 39 01 00 08 */ addi r8, r1, 8
+/* 802B71E4 002B2E44 7D 24 2A 14 */ add r9, r4, r5
+/* 802B71E8 002B2E48 7C 09 03 A6 */ mtctr r0
+/* 802B71EC 002B2E4C 2C 07 00 00 */ cmpwi r7, 0
+/* 802B71F0 002B2E50 40 81 00 54 */ ble lbl_802B7244
+lbl_802B71F4:
+/* 802B71F4 002B2E54 7C A9 32 14 */ add r5, r9, r6
+/* 802B71F8 002B2E58 38 C6 00 08 */ addi r6, r6, 8
+/* 802B71FC 002B2E5C 88 85 00 08 */ lbz r4, 8(r5)
+/* 802B7200 002B2E60 88 05 00 09 */ lbz r0, 9(r5)
+/* 802B7204 002B2E64 98 88 00 04 */ stb r4, 4(r8)
+/* 802B7208 002B2E68 88 85 00 0A */ lbz r4, 0xa(r5)
+/* 802B720C 002B2E6C 98 08 00 05 */ stb r0, 5(r8)
+/* 802B7210 002B2E70 88 05 00 0B */ lbz r0, 0xb(r5)
+/* 802B7214 002B2E74 98 88 00 06 */ stb r4, 6(r8)
+/* 802B7218 002B2E78 88 85 00 0C */ lbz r4, 0xc(r5)
+/* 802B721C 002B2E7C 98 08 00 07 */ stb r0, 7(r8)
+/* 802B7220 002B2E80 88 05 00 0D */ lbz r0, 0xd(r5)
+/* 802B7224 002B2E84 98 88 00 08 */ stb r4, 8(r8)
+/* 802B7228 002B2E88 88 85 00 0E */ lbz r4, 0xe(r5)
+/* 802B722C 002B2E8C 98 08 00 09 */ stb r0, 9(r8)
+/* 802B7230 002B2E90 88 05 00 0F */ lbz r0, 0xf(r5)
+/* 802B7234 002B2E94 98 88 00 0A */ stb r4, 0xa(r8)
+/* 802B7238 002B2E98 98 08 00 0B */ stb r0, 0xb(r8)
+/* 802B723C 002B2E9C 39 08 00 08 */ addi r8, r8, 8
+/* 802B7240 002B2EA0 42 00 FF B4 */ bdnz lbl_802B71F4
+lbl_802B7244:
+/* 802B7244 002B2EA4 3C 80 80 44 */ lis r4, lbl_8043E54C@ha
+/* 802B7248 002B2EA8 80 AD AE B8 */ lwz r5, lbl_80640178-_SDA_BASE_(r13)
+/* 802B724C 002B2EAC 38 E1 00 08 */ addi r7, r1, 8
+/* 802B7250 002B2EB0 7C 06 18 50 */ subf r0, r6, r3
+/* 802B7254 002B2EB4 38 84 E5 4C */ addi r4, r4, lbl_8043E54C@l
+/* 802B7258 002B2EB8 7C E7 32 14 */ add r7, r7, r6
+/* 802B725C 002B2EBC 7C A4 2A 14 */ add r5, r4, r5
+/* 802B7260 002B2EC0 7C 09 03 A6 */ mtctr r0
+/* 802B7264 002B2EC4 7C 06 18 00 */ cmpw r6, r3
+/* 802B7268 002B2EC8 40 80 00 1C */ bge lbl_802B7284
+lbl_802B726C:
+/* 802B726C 002B2ECC 7C 85 32 14 */ add r4, r5, r6
+/* 802B7270 002B2ED0 38 C6 00 01 */ addi r6, r6, 1
+/* 802B7274 002B2ED4 88 04 00 08 */ lbz r0, 8(r4)
+/* 802B7278 002B2ED8 98 07 00 04 */ stb r0, 4(r7)
+/* 802B727C 002B2EDC 38 E7 00 01 */ addi r7, r7, 1
+/* 802B7280 002B2EE0 42 00 FF EC */ bdnz lbl_802B726C
+lbl_802B7284:
+/* 802B7284 002B2EE4 80 AD AE B8 */ lwz r5, lbl_80640178-_SDA_BASE_(r13)
+/* 802B7288 002B2EE8 3C 80 00 01 */ lis r4, 0x0000FC4C@ha
+/* 802B728C 002B2EEC 38 03 00 04 */ addi r0, r3, 4
+/* 802B7290 002B2EF0 3C C0 80 2B */ lis r6, write_patch_cb@ha
+/* 802B7294 002B2EF4 7C 65 1A 14 */ add r3, r5, r3
+/* 802B7298 002B2EF8 38 84 FC 4C */ addi r4, r4, 0x0000FC4C@l
+/* 802B729C 002B2EFC 90 6D AE B8 */ stw r3, lbl_80640178-_SDA_BASE_(r13)
+/* 802B72A0 002B2F00 54 83 04 3E */ clrlwi r3, r4, 0x10
+/* 802B72A4 002B2F04 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B72A8 002B2F08 38 A1 00 08 */ addi r5, r1, 8
+/* 802B72AC 002B2F0C 38 C6 70 AC */ addi r6, r6, write_patch_cb@l
+/* 802B72B0 002B2F10 48 00 F6 D9 */ bl func_802C6988
+/* 802B72B4 002B2F14 48 00 00 10 */ b lbl_802B72C4
+lbl_802B72B8:
+/* 802B72B8 002B2F18 3C 60 80 2B */ lis r3, reset_again_cb@ha
+/* 802B72BC 002B2F1C 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
+/* 802B72C0 002B2F20 48 00 E6 CD */ bl func_802C598C
+lbl_802B72C4:
+/* 802B72C4 002B2F24 80 01 02 14 */ lwz r0, 0x214(r1)
+/* 802B72C8 002B2F28 83 E1 02 0C */ lwz r31, 0x20c(r1)
+/* 802B72CC 002B2F2C 83 C1 02 08 */ lwz r30, 0x208(r1)
+/* 802B72D0 002B2F30 7C 08 03 A6 */ mtlr r0
+/* 802B72D4 002B2F34 38 21 02 10 */ addi r1, r1, 0x210
+/* 802B72D8 002B2F38 4E 80 00 20 */ blr
+
+install_patch_cb:
+/* 802B72DC 002B2F3C 94 21 FE F0 */ stwu r1, -0x110(r1)
+/* 802B72E0 002B2F40 7C 08 02 A6 */ mflr r0
+/* 802B72E4 002B2F44 2C 03 00 00 */ cmpwi r3, 0
+/* 802B72E8 002B2F48 90 01 01 14 */ stw r0, 0x114(r1)
+/* 802B72EC 002B2F4C 93 E1 01 0C */ stw r31, 0x10c(r1)
+/* 802B72F0 002B2F50 93 C1 01 08 */ stw r30, 0x108(r1)
+/* 802B72F4 002B2F54 41 82 00 98 */ beq lbl_802B738C
+/* 802B72F8 002B2F58 88 AD AE B1 */ lbz r5, lbl_80640171-_SDA_BASE_(r13)
+/* 802B72FC 002B2F5C 88 0D AE B2 */ lbz r0, lbl_80640172-_SDA_BASE_(r13)
+/* 802B7300 002B2F60 7C 00 28 40 */ cmplw r0, r5
+/* 802B7304 002B2F64 40 82 00 14 */ bne lbl_802B7318
+/* 802B7308 002B2F68 3C 60 80 2B */ lis r3, reset_again_cb@ha
+/* 802B730C 002B2F6C 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
+/* 802B7310 002B2F70 48 00 E6 7D */ bl func_802C598C
+/* 802B7314 002B2F74 48 00 00 84 */ b lbl_802B7398
+lbl_802B7318:
+/* 802B7318 002B2F78 7C 65 00 50 */ subf r3, r5, r0
+/* 802B731C 002B2F7C 38 00 00 13 */ li r0, 0x13
+/* 802B7320 002B2F80 2C 03 00 13 */ cmpwi r3, 0x13
+/* 802B7324 002B2F84 40 80 00 08 */ bge lbl_802B732C
+/* 802B7328 002B2F88 7C 60 1B 78 */ mr r0, r3
+lbl_802B732C:
+/* 802B732C 002B2F8C 54 1F 06 3E */ clrlwi r31, r0, 0x18
+/* 802B7330 002B2F90 98 01 00 08 */ stb r0, 8(r1)
+/* 802B7334 002B2F94 3C 80 80 44 */ lis r4, lbl_8043E608@ha
+/* 802B7338 002B2F98 38 61 00 09 */ addi r3, r1, 9
+/* 802B733C 002B2F9C 1C 05 00 0D */ mulli r0, r5, 0xd
+/* 802B7340 002B2FA0 38 84 E6 08 */ addi r4, r4, lbl_8043E608@l
+/* 802B7344 002B2FA4 1F DF 00 0D */ mulli r30, r31, 0xd
+/* 802B7348 002B2FA8 7C 84 02 14 */ add r4, r4, r0
+/* 802B734C 002B2FAC 7F C5 F3 78 */ mr r5, r30
+/* 802B7350 002B2FB0 38 84 00 01 */ addi r4, r4, 1
+/* 802B7354 002B2FB4 4B D4 CC AD */ bl memcpy
+/* 802B7358 002B2FB8 88 8D AE B1 */ lbz r4, lbl_80640171-_SDA_BASE_(r13)
+/* 802B735C 002B2FBC 3C 60 00 01 */ lis r3, 0x0000FC4F@ha
+/* 802B7360 002B2FC0 38 63 FC 4F */ addi r3, r3, 0x0000FC4F@l
+/* 802B7364 002B2FC4 3C C0 80 2B */ lis r6, install_patch_cb@ha
+/* 802B7368 002B2FC8 7C 84 FA 14 */ add r4, r4, r31
+/* 802B736C 002B2FCC 38 1E 00 01 */ addi r0, r30, 1
+/* 802B7370 002B2FD0 98 8D AE B1 */ stb r4, lbl_80640171-_SDA_BASE_(r13)
+/* 802B7374 002B2FD4 54 63 04 3E */ clrlwi r3, r3, 0x10
+/* 802B7378 002B2FD8 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B737C 002B2FDC 38 A1 00 08 */ addi r5, r1, 8
+/* 802B7380 002B2FE0 38 C6 72 DC */ addi r6, r6, install_patch_cb@l
+/* 802B7384 002B2FE4 48 00 F6 05 */ bl func_802C6988
+/* 802B7388 002B2FE8 48 00 00 10 */ b lbl_802B7398
+lbl_802B738C:
+/* 802B738C 002B2FEC 3C 60 80 2B */ lis r3, reset_again_cb@ha
+/* 802B7390 002B2FF0 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
+/* 802B7394 002B2FF4 48 00 E5 F9 */ bl func_802C598C
+lbl_802B7398:
+/* 802B7398 002B2FF8 80 01 01 14 */ lwz r0, 0x114(r1)
+/* 802B739C 002B2FFC 83 E1 01 0C */ lwz r31, 0x10c(r1)
+/* 802B73A0 002B3000 83 C1 01 08 */ lwz r30, 0x108(r1)
+/* 802B73A4 002B3004 7C 08 03 A6 */ mtlr r0
+/* 802B73A8 002B3008 38 21 01 10 */ addi r1, r1, 0x110
+/* 802B73AC 002B300C 4E 80 00 20 */ blr
+
+.global WUDiInitSub
+WUDiInitSub:
+/* 802B73B0 002B3010 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B73B4 002B3014 7C 08 02 A6 */ mflr r0
+/* 802B73B8 002B3018 3C 60 80 44 */ lis r3, lbl_8043E664@ha
+/* 802B73BC 002B301C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B73C0 002B3020 38 63 E6 64 */ addi r3, r3, lbl_8043E664@l
+/* 802B73C4 002B3024 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B73C8 002B3028 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B73CC 002B302C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B73D0 002B3030 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B73D4 002B3034 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B73D8 002B3038 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802B73DC 002B303C 89 22 A4 30 */ lbz r9, lbl_80642A30-_SDA2_BASE_(r2)
+/* 802B73E0 002B3040 89 02 A4 31 */ lbz r8, lbl_80642A31-_SDA2_BASE_(r2)
+/* 802B73E4 002B3044 88 E2 A4 32 */ lbz r7, lbl_80642A32-_SDA2_BASE_(r2)
+/* 802B73E8 002B3048 88 C2 A4 33 */ lbz r6, lbl_80642A33-_SDA2_BASE_(r2)
+/* 802B73EC 002B304C 88 A2 A4 34 */ lbz r5, lbl_80642A34-_SDA2_BASE_(r2)
+/* 802B73F0 002B3050 88 82 A4 35 */ lbz r4, lbl_80642A35-_SDA2_BASE_(r2)
+/* 802B73F4 002B3054 88 02 A4 36 */ lbz r0, lbl_80642A36-_SDA2_BASE_(r2)
+/* 802B73F8 002B3058 99 21 00 0C */ stb r9, 0xc(r1)
+/* 802B73FC 002B305C 99 01 00 0D */ stb r8, 0xd(r1)
+/* 802B7400 002B3060 98 E1 00 0E */ stb r7, 0xe(r1)
+/* 802B7404 002B3064 98 C1 00 0F */ stb r6, 0xf(r1)
+/* 802B7408 002B3068 98 A1 00 08 */ stb r5, 8(r1)
+/* 802B740C 002B306C 98 81 00 09 */ stb r4, 9(r1)
+/* 802B7410 002B3070 98 01 00 0A */ stb r0, 0xa(r1)
+/* 802B7414 002B3074 4C C6 31 82 */ crclr 6
+/* 802B7418 002B3078 48 00 21 65 */ bl func_802B957C
+/* 802B741C 002B307C 38 61 00 0C */ addi r3, r1, 0xc
+/* 802B7420 002B3080 48 00 8D 05 */ bl func_802C0124
+/* 802B7424 002B3084 38 61 00 08 */ addi r3, r1, 8
+/* 802B7428 002B3088 48 00 F4 A9 */ bl func_802C68D0
+/* 802B742C 002B308C 3C 60 80 2C */ lis r3, WUDVendorSpecificCallback@ha
+/* 802B7430 002B3090 38 63 87 80 */ addi r3, r3, WUDVendorSpecificCallback@l
+/* 802B7434 002B3094 48 00 F6 BD */ bl func_802C6AF0
+/* 802B7438 002B3098 3C 60 80 2C */ lis r3, WUDDeviceStatusCallback@ha
+/* 802B743C 002B309C 38 63 8A B8 */ addi r3, r3, WUDDeviceStatusCallback@l
+/* 802B7440 002B30A0 48 00 F5 31 */ bl func_802C6970
+/* 802B7444 002B30A4 3C A0 80 2C */ lis r5, WUDPowerManagerCallback@ha
+/* 802B7448 002B30A8 38 9D 07 0A */ addi r4, r29, 0x70a
+/* 802B744C 002B30AC 38 A5 8D F4 */ addi r5, r5, WUDPowerManagerCallback@l
+/* 802B7450 002B30B0 38 60 00 03 */ li r3, 3
+/* 802B7454 002B30B4 48 01 19 99 */ bl func_802C8DEC
+/* 802B7458 002B30B8 3C 60 00 01 */ lis r3, 0x00008000@ha
+/* 802B745C 002B30BC 38 03 80 00 */ addi r0, r3, 0x00008000@l
+/* 802B7460 002B30C0 54 03 04 3E */ clrlwi r3, r0, 0x10
+/* 802B7464 002B30C4 48 00 F7 5D */ bl func_802C6BC0
+/* 802B7468 002B30C8 38 60 00 05 */ li r3, 5
+/* 802B746C 002B30CC 48 00 CA 19 */ bl func_802C3E84
+/* 802B7470 002B30D0 38 60 06 40 */ li r3, 0x640
+/* 802B7474 002B30D4 48 00 CD DD */ bl func_802C4250
+/* 802B7478 002B30D8 7F BF EB 78 */ mr r31, r29
+/* 802B747C 002B30DC 3B DD 01 24 */ addi r30, r29, 0x124
+/* 802B7480 002B30E0 3B 80 00 00 */ li r28, 0
+lbl_802B7484:
+/* 802B7484 002B30E4 88 1F 01 3D */ lbz r0, 0x13d(r31)
+/* 802B7488 002B30E8 28 00 00 01 */ cmplwi r0, 1
+/* 802B748C 002B30EC 40 82 00 0C */ bne lbl_802B7498
+/* 802B7490 002B30F0 7F C3 F3 78 */ mr r3, r30
+/* 802B7494 002B30F4 48 00 00 75 */ bl WUDiRegisterDevice
+lbl_802B7498:
+/* 802B7498 002B30F8 3B 9C 00 01 */ addi r28, r28, 1
+/* 802B749C 002B30FC 3B DE 00 60 */ addi r30, r30, 0x60
+/* 802B74A0 002B3100 2C 1C 00 0A */ cmpwi r28, 0xa
+/* 802B74A4 002B3104 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B74A8 002B3108 41 80 FF DC */ blt lbl_802B7484
+/* 802B74AC 002B310C 4B FB 72 B1 */ bl OSDisableInterrupts
+/* 802B74B0 002B3110 38 00 00 03 */ li r0, 3
+/* 802B74B4 002B3114 98 1D 07 08 */ stb r0, 0x708(r29)
+/* 802B74B8 002B3118 4B FB 72 CD */ bl OSRestoreInterrupts
+/* 802B74BC 002B311C 4B FB 72 A1 */ bl OSDisableInterrupts
+/* 802B74C0 002B3120 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B74C4 002B3124 38 A0 00 00 */ li r5, 0
+/* 802B74C8 002B3128 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B74CC 002B312C 38 00 00 01 */ li r0, 1
+/* 802B74D0 002B3130 98 A4 06 EB */ stb r5, 0x6eb(r4)
+/* 802B74D4 002B3134 98 04 06 EA */ stb r0, 0x6ea(r4)
+/* 802B74D8 002B3138 4B FB 72 AD */ bl OSRestoreInterrupts
+/* 802B74DC 002B313C 38 60 00 00 */ li r3, 0
+/* 802B74E0 002B3140 38 80 00 01 */ li r4, 1
+/* 802B74E4 002B3144 48 00 8C A5 */ bl func_802C0188
+/* 802B74E8 002B3148 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B74EC 002B314C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B74F0 002B3150 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B74F4 002B3154 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B74F8 002B3158 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802B74FC 002B315C 7C 08 03 A6 */ mtlr r0
+/* 802B7500 002B3160 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7504 002B3164 4E 80 00 20 */ blr
+
+.global WUDiRegisterDevice
+WUDiRegisterDevice:
+/* 802B7508 002B3168 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802B750C 002B316C 7C 08 02 A6 */ mflr r0
+/* 802B7510 002B3170 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802B7514 002B3174 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 802B7518 002B3178 3F E0 80 44 */ lis r31, lbl_8043E048@ha
+/* 802B751C 002B317C 3B FF E0 48 */ addi r31, r31, lbl_8043E048@l
+/* 802B7520 002B3180 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 802B7524 002B3184 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B7528 002B3188 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B752C 002B318C 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 802B7530 002B3190 48 00 02 35 */ bl WUDiGetDevInfo
+/* 802B7534 002B3194 7C 7D 1B 78 */ mr r29, r3
+/* 802B7538 002B3198 38 83 00 46 */ addi r4, r3, 0x46
+/* 802B753C 002B319C 38 A0 00 00 */ li r5, 0
+/* 802B7540 002B31A0 38 C0 00 00 */ li r6, 0
+/* 802B7544 002B31A4 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7548 002B31A8 48 00 8D E1 */ bl func_802C0328
+/* 802B754C 002B31AC 7C 60 1B 78 */ mr r0, r3
+/* 802B7550 002B31B0 38 7F 06 78 */ addi r3, r31, 0x678
+/* 802B7554 002B31B4 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B7558 002B31B8 4C C6 31 82 */ crclr 6
+/* 802B755C 002B31BC 48 00 20 21 */ bl func_802B957C
+/* 802B7560 002B31C0 7F A3 EB 78 */ mr r3, r29
+/* 802B7564 002B31C4 38 9F 01 A0 */ addi r4, r31, 0x1a0
+/* 802B7568 002B31C8 38 A0 00 10 */ li r5, 0x10
+/* 802B756C 002B31CC 4B F1 2E 2D */ bl memcmp
+/* 802B7570 002B31D0 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7574 002B31D4 40 82 00 48 */ bne lbl_802B75BC
+/* 802B7578 002B31D8 38 1F 00 00 */ addi r0, r31, 0
+/* 802B757C 002B31DC 38 60 00 D9 */ li r3, 0xd9
+/* 802B7580 002B31E0 B0 61 00 10 */ sth r3, 0x10(r1)
+/* 802B7584 002B31E4 38 7F 06 90 */ addi r3, r31, 0x690
+/* 802B7588 002B31E8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B758C 002B31EC 4C C6 31 82 */ crclr 6
+/* 802B7590 002B31F0 48 00 1F ED */ bl func_802B957C
+/* 802B7594 002B31F4 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 802B7598 002B31F8 38 7D 00 40 */ addi r3, r29, 0x40
+/* 802B759C 002B31FC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B75A0 002B3200 38 E1 00 08 */ addi r7, r1, 8
+/* 802B75A4 002B3204 90 81 00 08 */ stw r4, 8(r1)
+/* 802B75A8 002B3208 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802B75AC 002B320C A0 9D 00 5E */ lhz r4, 0x5e(r29)
+/* 802B75B0 002B3210 88 BD 00 57 */ lbz r5, 0x57(r29)
+/* 802B75B4 002B3214 88 DD 00 58 */ lbz r6, 0x58(r29)
+/* 802B75B8 002B3218 48 00 B4 0D */ bl func_802C29C4
+lbl_802B75BC:
+/* 802B75BC 002B321C 4B FB 71 A1 */ bl OSDisableInterrupts
+/* 802B75C0 002B3220 88 1D 00 5B */ lbz r0, 0x5b(r29)
+/* 802B75C4 002B3224 2C 00 00 00 */ cmpwi r0, 0
+/* 802B75C8 002B3228 41 82 00 1C */ beq lbl_802B75E4
+/* 802B75CC 002B322C 28 00 00 04 */ cmplwi r0, 4
+/* 802B75D0 002B3230 41 82 00 14 */ beq lbl_802B75E4
+/* 802B75D4 002B3234 28 00 00 02 */ cmplwi r0, 2
+/* 802B75D8 002B3238 41 82 00 0C */ beq lbl_802B75E4
+/* 802B75DC 002B323C 28 00 00 05 */ cmplwi r0, 5
+/* 802B75E0 002B3240 40 82 00 14 */ bne lbl_802B75F4
+lbl_802B75E4:
+/* 802B75E4 002B3244 88 9E 00 12 */ lbz r4, 0x12(r30)
+/* 802B75E8 002B3248 38 04 00 01 */ addi r0, r4, 1
+/* 802B75EC 002B324C 98 1E 00 12 */ stb r0, 0x12(r30)
+/* 802B75F0 002B3250 48 00 00 10 */ b lbl_802B7600
+lbl_802B75F4:
+/* 802B75F4 002B3254 88 9E 00 13 */ lbz r4, 0x13(r30)
+/* 802B75F8 002B3258 38 04 00 01 */ addi r0, r4, 1
+/* 802B75FC 002B325C 98 1E 00 13 */ stb r0, 0x13(r30)
+lbl_802B7600:
+/* 802B7600 002B3260 4B FB 71 85 */ bl OSRestoreInterrupts
+/* 802B7604 002B3264 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802B7608 002B3268 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 802B760C 002B326C 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 802B7610 002B3270 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 802B7614 002B3274 7C 08 03 A6 */ mtlr r0
+/* 802B7618 002B3278 38 21 00 30 */ addi r1, r1, 0x30
+/* 802B761C 002B327C 4E 80 00 20 */ blr
+
+.global WUDiRemoveDevice
+WUDiRemoveDevice:
+/* 802B7620 002B3280 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7624 002B3284 7C 08 02 A6 */ mflr r0
+/* 802B7628 002B3288 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B762C 002B328C 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B7630 002B3290 3F E0 80 44 */ lis r31, lbl_8043E048@ha
+/* 802B7634 002B3294 3B FF E0 48 */ addi r31, r31, lbl_8043E048@l
+/* 802B7638 002B3298 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B763C 002B329C 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B7640 002B32A0 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B7644 002B32A4 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B7648 002B32A8 7C 7D 1B 78 */ mr r29, r3
+/* 802B764C 002B32AC 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802B7650 002B32B0 4B FB 71 0D */ bl OSDisableInterrupts
+/* 802B7654 002B32B4 7C 7C 1B 78 */ mr r28, r3
+/* 802B7658 002B32B8 38 7F 06 A0 */ addi r3, r31, 0x6a0
+/* 802B765C 002B32BC 4C C6 31 82 */ crclr 6
+/* 802B7660 002B32C0 48 00 1F 1D */ bl func_802B957C
+/* 802B7664 002B32C4 7F A3 EB 78 */ mr r3, r29
+/* 802B7668 002B32C8 48 00 00 FD */ bl WUDiGetDevInfo
+/* 802B766C 002B32CC 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7670 002B32D0 7C 7D 1B 78 */ mr r29, r3
+/* 802B7674 002B32D4 41 82 00 C8 */ beq lbl_802B773C
+/* 802B7678 002B32D8 88 9D 00 56 */ lbz r4, 0x56(r29)
+/* 802B767C 002B32DC 38 7F 06 B8 */ addi r3, r31, 0x6b8
+/* 802B7680 002B32E0 88 BD 00 40 */ lbz r5, 0x40(r29)
+/* 802B7684 002B32E4 88 DD 00 41 */ lbz r6, 0x41(r29)
+/* 802B7688 002B32E8 88 FD 00 42 */ lbz r7, 0x42(r29)
+/* 802B768C 002B32EC 89 1D 00 43 */ lbz r8, 0x43(r29)
+/* 802B7690 002B32F0 89 3D 00 44 */ lbz r9, 0x44(r29)
+/* 802B7694 002B32F4 89 5D 00 45 */ lbz r10, 0x45(r29)
+/* 802B7698 002B32F8 4C C6 31 82 */ crclr 6
+/* 802B769C 002B32FC 48 00 1E E1 */ bl func_802B957C
+/* 802B76A0 002B3300 38 7F 06 F0 */ addi r3, r31, 0x6f0
+/* 802B76A4 002B3304 4C C6 31 82 */ crclr 6
+/* 802B76A8 002B3308 48 00 1E D5 */ bl func_802B957C
+/* 802B76AC 002B330C 7F A3 EB 78 */ mr r3, r29
+/* 802B76B0 002B3310 38 9F 01 A0 */ addi r4, r31, 0x1a0
+/* 802B76B4 002B3314 38 A0 00 10 */ li r5, 0x10
+/* 802B76B8 002B3318 4B F1 2C E1 */ bl memcmp
+/* 802B76BC 002B331C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B76C0 002B3320 40 82 00 28 */ bne lbl_802B76E8
+/* 802B76C4 002B3324 38 7F 07 14 */ addi r3, r31, 0x714
+/* 802B76C8 002B3328 4C C6 31 82 */ crclr 6
+/* 802B76CC 002B332C 48 00 1E B1 */ bl func_802B957C
+/* 802B76D0 002B3330 88 9D 00 56 */ lbz r4, 0x56(r29)
+/* 802B76D4 002B3334 38 7F 07 28 */ addi r3, r31, 0x728
+/* 802B76D8 002B3338 4C C6 31 82 */ crclr 6
+/* 802B76DC 002B333C 48 00 1E A1 */ bl func_802B957C
+/* 802B76E0 002B3340 88 7D 00 56 */ lbz r3, 0x56(r29)
+/* 802B76E4 002B3344 48 00 B3 89 */ bl func_802C2A6C
+lbl_802B76E8:
+/* 802B76E8 002B3348 38 7D 00 40 */ addi r3, r29, 0x40
+/* 802B76EC 002B334C 48 00 8D 2D */ bl func_802C0418
+/* 802B76F0 002B3350 7C 60 1B 78 */ mr r0, r3
+/* 802B76F4 002B3354 38 7F 07 38 */ addi r3, r31, 0x738
+/* 802B76F8 002B3358 54 04 06 3E */ clrlwi r4, r0, 0x18
+/* 802B76FC 002B335C 4C C6 31 82 */ crclr 6
+/* 802B7700 002B3360 48 00 1E 7D */ bl func_802B957C
+/* 802B7704 002B3364 88 1D 00 5B */ lbz r0, 0x5b(r29)
+/* 802B7708 002B3368 2C 00 00 00 */ cmpwi r0, 0
+/* 802B770C 002B336C 40 82 00 14 */ bne lbl_802B7720
+/* 802B7710 002B3370 88 7E 00 12 */ lbz r3, 0x12(r30)
+/* 802B7714 002B3374 38 03 FF FF */ addi r0, r3, -1
+/* 802B7718 002B3378 98 1E 00 12 */ stb r0, 0x12(r30)
+/* 802B771C 002B337C 48 00 00 10 */ b lbl_802B772C
+lbl_802B7720:
+/* 802B7720 002B3380 88 7E 00 13 */ lbz r3, 0x13(r30)
+/* 802B7724 002B3384 38 03 FF FF */ addi r0, r3, -1
+/* 802B7728 002B3388 98 1E 00 13 */ stb r0, 0x13(r30)
+lbl_802B772C:
+/* 802B772C 002B338C 7F A3 EB 78 */ mr r3, r29
+/* 802B7730 002B3390 38 80 00 00 */ li r4, 0
+/* 802B7734 002B3394 38 A0 00 60 */ li r5, 0x60
+/* 802B7738 002B3398 4B D4 C9 CD */ bl memset
+lbl_802B773C:
+/* 802B773C 002B339C 7F 83 E3 78 */ mr r3, r28
+/* 802B7740 002B33A0 4B FB 70 45 */ bl OSRestoreInterrupts
+/* 802B7744 002B33A4 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B7748 002B33A8 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B774C 002B33AC 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B7750 002B33B0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B7754 002B33B4 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802B7758 002B33B8 7C 08 03 A6 */ mtlr r0
+/* 802B775C 002B33BC 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7760 002B33C0 4E 80 00 20 */ blr
+
+.global WUDiGetDevInfo
+WUDiGetDevInfo:
+/* 802B7764 002B33C4 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7768 002B33C8 7C 08 02 A6 */ mflr r0
+/* 802B776C 002B33CC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B7770 002B33D0 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7774 002B33D4 4B F0 F9 B1 */ bl _savegpr_26
+/* 802B7778 002B33D8 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B777C 002B33DC 7C 7A 1B 78 */ mr r26, r3
+/* 802B7780 002B33E0 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B7784 002B33E4 3B 80 00 00 */ li r28, 0
+/* 802B7788 002B33E8 4B FB 6F D5 */ bl OSDisableInterrupts
+/* 802B778C 002B33EC 7C 7B 1B 78 */ mr r27, r3
+/* 802B7790 002B33F0 3B FD 01 24 */ addi r31, r29, 0x124
+/* 802B7794 002B33F4 3B C0 00 00 */ li r30, 0
+lbl_802B7798:
+/* 802B7798 002B33F8 7F E3 FB 78 */ mr r3, r31
+/* 802B779C 002B33FC 7F 44 D3 78 */ mr r4, r26
+/* 802B77A0 002B3400 38 A0 00 06 */ li r5, 6
+/* 802B77A4 002B3404 4B F1 2B F5 */ bl memcmp
+/* 802B77A8 002B3408 2C 03 00 00 */ cmpwi r3, 0
+/* 802B77AC 002B340C 40 82 00 14 */ bne lbl_802B77C0
+/* 802B77B0 002B3410 1C 1E 00 60 */ mulli r0, r30, 0x60
+/* 802B77B4 002B3414 7C 7D 02 14 */ add r3, r29, r0
+/* 802B77B8 002B3418 3B 83 00 E4 */ addi r28, r3, 0xe4
+/* 802B77BC 002B341C 48 00 00 14 */ b lbl_802B77D0
+lbl_802B77C0:
+/* 802B77C0 002B3420 3B DE 00 01 */ addi r30, r30, 1
+/* 802B77C4 002B3424 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B77C8 002B3428 2C 1E 00 0A */ cmpwi r30, 0xa
+/* 802B77CC 002B342C 41 80 FF CC */ blt lbl_802B7798
+lbl_802B77D0:
+/* 802B77D0 002B3430 2C 1C 00 00 */ cmpwi r28, 0
+/* 802B77D4 002B3434 40 82 00 44 */ bne lbl_802B7818
+/* 802B77D8 002B3438 3B FD 04 E4 */ addi r31, r29, 0x4e4
+/* 802B77DC 002B343C 3B C0 00 00 */ li r30, 0
+lbl_802B77E0:
+/* 802B77E0 002B3440 7F E3 FB 78 */ mr r3, r31
+/* 802B77E4 002B3444 7F 44 D3 78 */ mr r4, r26
+/* 802B77E8 002B3448 38 A0 00 06 */ li r5, 6
+/* 802B77EC 002B344C 4B F1 2B AD */ bl memcmp
+/* 802B77F0 002B3450 2C 03 00 00 */ cmpwi r3, 0
+/* 802B77F4 002B3454 40 82 00 14 */ bne lbl_802B7808
+/* 802B77F8 002B3458 1C 1E 00 60 */ mulli r0, r30, 0x60
+/* 802B77FC 002B345C 7C 7D 02 14 */ add r3, r29, r0
+/* 802B7800 002B3460 3B 83 04 A4 */ addi r28, r3, 0x4a4
+/* 802B7804 002B3464 48 00 00 14 */ b lbl_802B7818
+lbl_802B7808:
+/* 802B7808 002B3468 3B DE 00 01 */ addi r30, r30, 1
+/* 802B780C 002B346C 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802B7810 002B3470 2C 1E 00 06 */ cmpwi r30, 6
+/* 802B7814 002B3474 41 80 FF CC */ blt lbl_802B77E0
+lbl_802B7818:
+/* 802B7818 002B3478 7F 63 DB 78 */ mr r3, r27
+/* 802B781C 002B347C 4B FB 6F 69 */ bl OSRestoreInterrupts
+/* 802B7820 002B3480 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7824 002B3484 7F 83 E3 78 */ mr r3, r28
+/* 802B7828 002B3488 4B F0 F9 49 */ bl _restgpr_26
+/* 802B782C 002B348C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B7830 002B3490 7C 08 03 A6 */ mtlr r0
+/* 802B7834 002B3494 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7838 002B3498 4E 80 00 20 */ blr
+
+.global WUDiGetNewDevInfo
+WUDiGetNewDevInfo:
+/* 802B783C 002B349C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7840 002B34A0 7C 08 02 A6 */ mflr r0
+/* 802B7844 002B34A4 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B7848 002B34A8 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B784C 002B34AC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B7850 002B34B0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B7854 002B34B4 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B7858 002B34B8 3B C0 00 00 */ li r30, 0
+/* 802B785C 002B34BC 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B7860 002B34C0 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802B7864 002B34C4 4B FB 6E F9 */ bl OSDisableInterrupts
+/* 802B7868 002B34C8 88 1F 06 E9 */ lbz r0, 0x6e9(r31)
+/* 802B786C 002B34CC 7C 7D 1B 78 */ mr r29, r3
+/* 802B7870 002B34D0 2C 00 00 00 */ cmpwi r0, 0
+/* 802B7874 002B34D4 40 82 00 54 */ bne lbl_802B78C8
+/* 802B7878 002B34D8 38 00 00 0A */ li r0, 0xa
+/* 802B787C 002B34DC 7F E3 FB 78 */ mr r3, r31
+/* 802B7880 002B34E0 3B 80 00 00 */ li r28, 0
+/* 802B7884 002B34E4 7C 09 03 A6 */ mtctr r0
+lbl_802B7888:
+/* 802B7888 002B34E8 88 03 01 3D */ lbz r0, 0x13d(r3)
+/* 802B788C 002B34EC 2C 00 00 00 */ cmpwi r0, 0
+/* 802B7890 002B34F0 40 82 00 28 */ bne lbl_802B78B8
+/* 802B7894 002B34F4 3C 60 80 44 */ lis r3, lbl_8043E79C@ha
+/* 802B7898 002B34F8 7F 84 E3 78 */ mr r4, r28
+/* 802B789C 002B34FC 38 63 E7 9C */ addi r3, r3, lbl_8043E79C@l
+/* 802B78A0 002B3500 4C C6 31 82 */ crclr 6
+/* 802B78A4 002B3504 48 00 1C D9 */ bl func_802B957C
+/* 802B78A8 002B3508 1C 1C 00 60 */ mulli r0, r28, 0x60
+/* 802B78AC 002B350C 7C 7F 02 14 */ add r3, r31, r0
+/* 802B78B0 002B3510 3B C3 00 E4 */ addi r30, r3, 0xe4
+/* 802B78B4 002B3514 48 00 00 1C */ b lbl_802B78D0
+lbl_802B78B8:
+/* 802B78B8 002B3518 38 63 00 60 */ addi r3, r3, 0x60
+/* 802B78BC 002B351C 3B 9C 00 01 */ addi r28, r28, 1
+/* 802B78C0 002B3520 42 00 FF C8 */ bdnz lbl_802B7888
+/* 802B78C4 002B3524 48 00 00 0C */ b lbl_802B78D0
+lbl_802B78C8:
+/* 802B78C8 002B3528 80 7F 00 18 */ lwz r3, 0x18(r31)
+/* 802B78CC 002B352C 83 C3 00 00 */ lwz r30, 0(r3)
+lbl_802B78D0:
+/* 802B78D0 002B3530 7F A3 EB 78 */ mr r3, r29
+/* 802B78D4 002B3534 4B FB 6E B1 */ bl OSRestoreInterrupts
+/* 802B78D8 002B3538 7F C3 F3 78 */ mr r3, r30
+/* 802B78DC 002B353C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B78E0 002B3540 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B78E4 002B3544 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B78E8 002B3548 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802B78EC 002B354C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B78F0 002B3550 7C 08 03 A6 */ mtlr r0
+/* 802B78F4 002B3554 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B78F8 002B3558 4E 80 00 20 */ blr
+
+.global WUDiMoveTopSmpDevInfoPtr
+WUDiMoveTopSmpDevInfoPtr:
+/* 802B78FC 002B355C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7900 002B3560 7C 08 02 A6 */ mflr r0
+/* 802B7904 002B3564 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B7908 002B3568 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B790C 002B356C 4B F0 F8 1D */ bl _savegpr_27
+/* 802B7910 002B3570 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B7914 002B3574 7C 7B 1B 78 */ mr r27, r3
+/* 802B7918 002B3578 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B791C 002B357C 4B FB 6E 41 */ bl OSDisableInterrupts
+/* 802B7920 002B3580 7C 7D 1B 78 */ mr r29, r3
+/* 802B7924 002B3584 7F DC F3 78 */ mr r28, r30
+/* 802B7928 002B3588 3B E0 00 00 */ li r31, 0
+lbl_802B792C:
+/* 802B792C 002B358C 80 7C 00 1C */ lwz r3, 0x1c(r28)
+/* 802B7930 002B3590 38 9B 00 40 */ addi r4, r27, 0x40
+/* 802B7934 002B3594 38 A0 00 06 */ li r5, 6
+/* 802B7938 002B3598 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B793C 002B359C 4B F1 2A 5D */ bl memcmp
+/* 802B7940 002B35A0 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7944 002B35A4 40 82 00 A0 */ bne lbl_802B79E4
+/* 802B7948 002B35A8 1F 9F 00 0C */ mulli r28, r31, 0xc
+/* 802B794C 002B35AC 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 802B7950 002B35B0 38 A0 00 06 */ li r5, 6
+/* 802B7954 002B35B4 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B7958 002B35B8 7C 9E E2 14 */ add r4, r30, r28
+/* 802B795C 002B35BC 3B E4 00 1C */ addi r31, r4, 0x1c
+/* 802B7960 002B35C0 80 84 00 1C */ lwz r4, 0x1c(r4)
+/* 802B7964 002B35C4 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7968 002B35C8 38 84 00 40 */ addi r4, r4, 0x40
+/* 802B796C 002B35CC 4B F1 2A 2D */ bl memcmp
+/* 802B7970 002B35D0 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7974 002B35D4 41 82 00 80 */ beq lbl_802B79F4
+/* 802B7978 002B35D8 7F 9E E2 14 */ add r28, r30, r28
+/* 802B797C 002B35DC 38 A0 00 06 */ li r5, 6
+/* 802B7980 002B35E0 80 1C 00 24 */ lwz r0, 0x24(r28)
+/* 802B7984 002B35E4 80 7C 00 20 */ lwz r3, 0x20(r28)
+/* 802B7988 002B35E8 90 03 00 08 */ stw r0, 8(r3)
+/* 802B798C 002B35EC 80 9E 00 18 */ lwz r4, 0x18(r30)
+/* 802B7990 002B35F0 80 7F 00 00 */ lwz r3, 0(r31)
+/* 802B7994 002B35F4 80 C4 00 00 */ lwz r6, 0(r4)
+/* 802B7998 002B35F8 38 83 00 40 */ addi r4, r3, 0x40
+/* 802B799C 002B35FC 38 66 00 40 */ addi r3, r6, 0x40
+/* 802B79A0 002B3600 4B F1 29 F9 */ bl memcmp
+/* 802B79A4 002B3604 2C 03 00 00 */ cmpwi r3, 0
+/* 802B79A8 002B3608 40 82 00 10 */ bne lbl_802B79B8
+/* 802B79AC 002B360C 80 1C 00 20 */ lwz r0, 0x20(r28)
+/* 802B79B0 002B3610 90 1E 00 18 */ stw r0, 0x18(r30)
+/* 802B79B4 002B3614 48 00 00 10 */ b lbl_802B79C4
+lbl_802B79B8:
+/* 802B79B8 002B3618 80 1C 00 20 */ lwz r0, 0x20(r28)
+/* 802B79BC 002B361C 80 7C 00 24 */ lwz r3, 0x24(r28)
+/* 802B79C0 002B3620 90 03 00 04 */ stw r0, 4(r3)
+lbl_802B79C4:
+/* 802B79C4 002B3624 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 802B79C8 002B3628 38 00 00 00 */ li r0, 0
+/* 802B79CC 002B362C 90 7C 00 24 */ stw r3, 0x24(r28)
+/* 802B79D0 002B3630 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 802B79D4 002B3634 93 E3 00 04 */ stw r31, 4(r3)
+/* 802B79D8 002B3638 93 FE 00 14 */ stw r31, 0x14(r30)
+/* 802B79DC 002B363C 90 1C 00 20 */ stw r0, 0x20(r28)
+/* 802B79E0 002B3640 48 00 00 14 */ b lbl_802B79F4
+lbl_802B79E4:
+/* 802B79E4 002B3644 3B FF 00 01 */ addi r31, r31, 1
+/* 802B79E8 002B3648 3B 9C 00 0C */ addi r28, r28, 0xc
+/* 802B79EC 002B364C 2C 1F 00 06 */ cmpwi r31, 6
+/* 802B79F0 002B3650 41 80 FF 3C */ blt lbl_802B792C
+lbl_802B79F4:
+/* 802B79F4 002B3654 7F A3 EB 78 */ mr r3, r29
+/* 802B79F8 002B3658 4B FB 6D 8D */ bl OSRestoreInterrupts
+/* 802B79FC 002B365C 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7A00 002B3660 4B F0 F7 75 */ bl _restgpr_27
+/* 802B7A04 002B3664 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B7A08 002B3668 7C 08 03 A6 */ mtlr r0
+/* 802B7A0C 002B366C 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7A10 002B3670 4E 80 00 20 */ blr
+
+.global WUDiMoveBottomSmpDevInfoPtr
+WUDiMoveBottomSmpDevInfoPtr:
+/* 802B7A14 002B3674 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7A18 002B3678 7C 08 02 A6 */ mflr r0
+/* 802B7A1C 002B367C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B7A20 002B3680 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7A24 002B3684 4B F0 F7 05 */ bl _savegpr_27
+/* 802B7A28 002B3688 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B7A2C 002B368C 7C 7B 1B 78 */ mr r27, r3
+/* 802B7A30 002B3690 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B7A34 002B3694 4B FB 6D 29 */ bl OSDisableInterrupts
+/* 802B7A38 002B3698 7C 7D 1B 78 */ mr r29, r3
+/* 802B7A3C 002B369C 7F DC F3 78 */ mr r28, r30
+/* 802B7A40 002B36A0 3B E0 00 00 */ li r31, 0
+lbl_802B7A44:
+/* 802B7A44 002B36A4 80 7C 00 1C */ lwz r3, 0x1c(r28)
+/* 802B7A48 002B36A8 38 9B 00 40 */ addi r4, r27, 0x40
+/* 802B7A4C 002B36AC 38 A0 00 06 */ li r5, 6
+/* 802B7A50 002B36B0 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7A54 002B36B4 4B F1 29 45 */ bl memcmp
+/* 802B7A58 002B36B8 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7A5C 002B36BC 40 82 00 A0 */ bne lbl_802B7AFC
+/* 802B7A60 002B36C0 1F 9F 00 0C */ mulli r28, r31, 0xc
+/* 802B7A64 002B36C4 80 7E 00 18 */ lwz r3, 0x18(r30)
+/* 802B7A68 002B36C8 38 A0 00 06 */ li r5, 6
+/* 802B7A6C 002B36CC 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B7A70 002B36D0 7C 9E E2 14 */ add r4, r30, r28
+/* 802B7A74 002B36D4 3B E4 00 1C */ addi r31, r4, 0x1c
+/* 802B7A78 002B36D8 80 84 00 1C */ lwz r4, 0x1c(r4)
+/* 802B7A7C 002B36DC 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7A80 002B36E0 38 84 00 40 */ addi r4, r4, 0x40
+/* 802B7A84 002B36E4 4B F1 29 15 */ bl memcmp
+/* 802B7A88 002B36E8 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7A8C 002B36EC 41 82 00 80 */ beq lbl_802B7B0C
+/* 802B7A90 002B36F0 7F 9E E2 14 */ add r28, r30, r28
+/* 802B7A94 002B36F4 38 A0 00 06 */ li r5, 6
+/* 802B7A98 002B36F8 80 1C 00 20 */ lwz r0, 0x20(r28)
+/* 802B7A9C 002B36FC 80 7C 00 24 */ lwz r3, 0x24(r28)
+/* 802B7AA0 002B3700 90 03 00 04 */ stw r0, 4(r3)
+/* 802B7AA4 002B3704 80 9E 00 14 */ lwz r4, 0x14(r30)
+/* 802B7AA8 002B3708 80 7F 00 00 */ lwz r3, 0(r31)
+/* 802B7AAC 002B370C 80 C4 00 00 */ lwz r6, 0(r4)
+/* 802B7AB0 002B3710 38 83 00 40 */ addi r4, r3, 0x40
+/* 802B7AB4 002B3714 38 66 00 40 */ addi r3, r6, 0x40
+/* 802B7AB8 002B3718 4B F1 28 E1 */ bl memcmp
+/* 802B7ABC 002B371C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7AC0 002B3720 40 82 00 10 */ bne lbl_802B7AD0
+/* 802B7AC4 002B3724 80 1C 00 24 */ lwz r0, 0x24(r28)
+/* 802B7AC8 002B3728 90 1E 00 14 */ stw r0, 0x14(r30)
+/* 802B7ACC 002B372C 48 00 00 10 */ b lbl_802B7ADC
+lbl_802B7AD0:
+/* 802B7AD0 002B3730 80 1C 00 24 */ lwz r0, 0x24(r28)
+/* 802B7AD4 002B3734 80 7C 00 20 */ lwz r3, 0x20(r28)
+/* 802B7AD8 002B3738 90 03 00 08 */ stw r0, 8(r3)
+lbl_802B7ADC:
+/* 802B7ADC 002B373C 80 7E 00 18 */ lwz r3, 0x18(r30)
+/* 802B7AE0 002B3740 38 00 00 00 */ li r0, 0
+/* 802B7AE4 002B3744 90 7C 00 20 */ stw r3, 0x20(r28)
+/* 802B7AE8 002B3748 80 7E 00 18 */ lwz r3, 0x18(r30)
+/* 802B7AEC 002B374C 93 E3 00 08 */ stw r31, 8(r3)
+/* 802B7AF0 002B3750 93 FE 00 18 */ stw r31, 0x18(r30)
+/* 802B7AF4 002B3754 90 1C 00 24 */ stw r0, 0x24(r28)
+/* 802B7AF8 002B3758 48 00 00 14 */ b lbl_802B7B0C
+lbl_802B7AFC:
+/* 802B7AFC 002B375C 3B FF 00 01 */ addi r31, r31, 1
+/* 802B7B00 002B3760 3B 9C 00 0C */ addi r28, r28, 0xc
+/* 802B7B04 002B3764 2C 1F 00 06 */ cmpwi r31, 6
+/* 802B7B08 002B3768 41 80 FF 3C */ blt lbl_802B7A44
+lbl_802B7B0C:
+/* 802B7B0C 002B376C 7F A3 EB 78 */ mr r3, r29
+/* 802B7B10 002B3770 4B FB 6C 75 */ bl OSRestoreInterrupts
+/* 802B7B14 002B3774 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7B18 002B3778 4B F0 F6 5D */ bl _restgpr_27
+/* 802B7B1C 002B377C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B7B20 002B3780 7C 08 03 A6 */ mtlr r0
+/* 802B7B24 002B3784 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7B28 002B3788 4E 80 00 20 */ blr
+
+.global WUDiMoveTopOfDisconnectedSmpDevice
+WUDiMoveTopOfDisconnectedSmpDevice:
+/* 802B7B2C 002B378C 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802B7B30 002B3790 7C 08 02 A6 */ mflr r0
+/* 802B7B34 002B3794 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802B7B38 002B3798 39 61 00 30 */ addi r11, r1, 0x30
+/* 802B7B3C 002B379C 4B F0 F5 D9 */ bl _savegpr_22
+/* 802B7B40 002B37A0 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B7B44 002B37A4 7C 79 1B 78 */ mr r25, r3
+/* 802B7B48 002B37A8 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B7B4C 002B37AC 4B FB 6C 11 */ bl OSDisableInterrupts
+/* 802B7B50 002B37B0 7C 7B 1B 78 */ mr r27, r3
+/* 802B7B54 002B37B4 7F BF EB 78 */ mr r31, r29
+/* 802B7B58 002B37B8 3B DD 00 1C */ addi r30, r29, 0x1c
+/* 802B7B5C 002B37BC 3B 80 00 00 */ li r28, 0
+lbl_802B7B60:
+/* 802B7B60 002B37C0 80 7F 00 1C */ lwz r3, 0x1c(r31)
+/* 802B7B64 002B37C4 38 99 00 40 */ addi r4, r25, 0x40
+/* 802B7B68 002B37C8 38 A0 00 06 */ li r5, 6
+/* 802B7B6C 002B37CC 3A E3 00 40 */ addi r23, r3, 0x40
+/* 802B7B70 002B37D0 7E E3 BB 78 */ mr r3, r23
+/* 802B7B74 002B37D4 4B F1 28 25 */ bl memcmp
+/* 802B7B78 002B37D8 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7B7C 002B37DC 40 82 00 D4 */ bne lbl_802B7C50
+/* 802B7B80 002B37E0 82 DD 00 14 */ lwz r22, 0x14(r29)
+/* 802B7B84 002B37E4 7E DA B3 78 */ mr r26, r22
+/* 802B7B88 002B37E8 48 00 00 C0 */ b lbl_802B7C48
+lbl_802B7B8C:
+/* 802B7B8C 002B37EC 83 1A 00 00 */ lwz r24, 0(r26)
+/* 802B7B90 002B37F0 38 99 00 40 */ addi r4, r25, 0x40
+/* 802B7B94 002B37F4 38 A0 00 06 */ li r5, 6
+/* 802B7B98 002B37F8 38 78 00 40 */ addi r3, r24, 0x40
+/* 802B7B9C 002B37FC 4B F1 27 FD */ bl memcmp
+/* 802B7BA0 002B3800 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7BA4 002B3804 41 82 00 A0 */ beq lbl_802B7C44
+/* 802B7BA8 002B3808 88 18 00 59 */ lbz r0, 0x59(r24)
+/* 802B7BAC 002B380C 28 00 00 01 */ cmplwi r0, 1
+/* 802B7BB0 002B3810 41 81 00 94 */ bgt lbl_802B7C44
+/* 802B7BB4 002B3814 80 76 00 00 */ lwz r3, 0(r22)
+/* 802B7BB8 002B3818 7E E4 BB 78 */ mr r4, r23
+/* 802B7BBC 002B381C 38 A0 00 06 */ li r5, 6
+/* 802B7BC0 002B3820 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7BC4 002B3824 4B F1 27 D5 */ bl memcmp
+/* 802B7BC8 002B3828 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7BCC 002B382C 40 82 00 1C */ bne lbl_802B7BE8
+/* 802B7BD0 002B3830 80 16 00 08 */ lwz r0, 8(r22)
+/* 802B7BD4 002B3834 7C 1A 00 40 */ cmplw r26, r0
+/* 802B7BD8 002B3838 41 82 00 78 */ beq lbl_802B7C50
+/* 802B7BDC 002B383C 80 1F 00 24 */ lwz r0, 0x24(r31)
+/* 802B7BE0 002B3840 90 1D 00 14 */ stw r0, 0x14(r29)
+/* 802B7BE4 002B3844 48 00 00 10 */ b lbl_802B7BF4
+lbl_802B7BE8:
+/* 802B7BE8 002B3848 80 1F 00 24 */ lwz r0, 0x24(r31)
+/* 802B7BEC 002B384C 80 7F 00 20 */ lwz r3, 0x20(r31)
+/* 802B7BF0 002B3850 90 03 00 08 */ stw r0, 8(r3)
+lbl_802B7BF4:
+/* 802B7BF4 002B3854 80 1F 00 20 */ lwz r0, 0x20(r31)
+/* 802B7BF8 002B3858 80 7F 00 24 */ lwz r3, 0x24(r31)
+/* 802B7BFC 002B385C 90 03 00 04 */ stw r0, 4(r3)
+/* 802B7C00 002B3860 80 1D 00 14 */ lwz r0, 0x14(r29)
+/* 802B7C04 002B3864 7C 1A 00 40 */ cmplw r26, r0
+/* 802B7C08 002B3868 41 82 00 20 */ beq lbl_802B7C28
+/* 802B7C0C 002B386C 80 1A 00 04 */ lwz r0, 4(r26)
+/* 802B7C10 002B3870 90 1F 00 20 */ stw r0, 0x20(r31)
+/* 802B7C14 002B3874 93 5F 00 24 */ stw r26, 0x24(r31)
+/* 802B7C18 002B3878 80 7A 00 04 */ lwz r3, 4(r26)
+/* 802B7C1C 002B387C 93 C3 00 08 */ stw r30, 8(r3)
+/* 802B7C20 002B3880 93 DA 00 04 */ stw r30, 4(r26)
+/* 802B7C24 002B3884 48 00 00 2C */ b lbl_802B7C50
+lbl_802B7C28:
+/* 802B7C28 002B3888 93 5F 00 20 */ stw r26, 0x20(r31)
+/* 802B7C2C 002B388C 80 1A 00 08 */ lwz r0, 8(r26)
+/* 802B7C30 002B3890 90 1F 00 24 */ stw r0, 0x24(r31)
+/* 802B7C34 002B3894 80 7A 00 08 */ lwz r3, 8(r26)
+/* 802B7C38 002B3898 93 C3 00 04 */ stw r30, 4(r3)
+/* 802B7C3C 002B389C 93 DA 00 08 */ stw r30, 8(r26)
+/* 802B7C40 002B38A0 48 00 00 10 */ b lbl_802B7C50
+lbl_802B7C44:
+/* 802B7C44 002B38A4 83 5A 00 08 */ lwz r26, 8(r26)
+lbl_802B7C48:
+/* 802B7C48 002B38A8 2C 1A 00 00 */ cmpwi r26, 0
+/* 802B7C4C 002B38AC 40 82 FF 40 */ bne lbl_802B7B8C
+lbl_802B7C50:
+/* 802B7C50 002B38B0 3B 9C 00 01 */ addi r28, r28, 1
+/* 802B7C54 002B38B4 3B DE 00 0C */ addi r30, r30, 0xc
+/* 802B7C58 002B38B8 2C 1C 00 06 */ cmpwi r28, 6
+/* 802B7C5C 002B38BC 3B FF 00 0C */ addi r31, r31, 0xc
+/* 802B7C60 002B38C0 41 80 FF 00 */ blt lbl_802B7B60
+/* 802B7C64 002B38C4 7F 63 DB 78 */ mr r3, r27
+/* 802B7C68 002B38C8 4B FB 6B 1D */ bl OSRestoreInterrupts
+/* 802B7C6C 002B38CC 39 61 00 30 */ addi r11, r1, 0x30
+/* 802B7C70 002B38D0 4B F0 F4 F1 */ bl _restgpr_22
+/* 802B7C74 002B38D4 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802B7C78 002B38D8 7C 08 03 A6 */ mtlr r0
+/* 802B7C7C 002B38DC 38 21 00 30 */ addi r1, r1, 0x30
+/* 802B7C80 002B38E0 4E 80 00 20 */ blr
+
+.global WUDiMoveTopStdDevInfoPtr
+WUDiMoveTopStdDevInfoPtr:
+/* 802B7C84 002B38E4 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7C88 002B38E8 7C 08 02 A6 */ mflr r0
+/* 802B7C8C 002B38EC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B7C90 002B38F0 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7C94 002B38F4 4B F0 F4 95 */ bl _savegpr_27
+/* 802B7C98 002B38F8 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B7C9C 002B38FC 7C 7B 1B 78 */ mr r27, r3
+/* 802B7CA0 002B3900 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B7CA4 002B3904 4B FB 6A B9 */ bl OSDisableInterrupts
+/* 802B7CA8 002B3908 7C 7D 1B 78 */ mr r29, r3
+/* 802B7CAC 002B390C 7F DC F3 78 */ mr r28, r30
+/* 802B7CB0 002B3910 3B E0 00 00 */ li r31, 0
+lbl_802B7CB4:
+/* 802B7CB4 002B3914 80 7C 00 6C */ lwz r3, 0x6c(r28)
+/* 802B7CB8 002B3918 38 9B 00 40 */ addi r4, r27, 0x40
+/* 802B7CBC 002B391C 38 A0 00 06 */ li r5, 6
+/* 802B7CC0 002B3920 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7CC4 002B3924 4B F1 26 D5 */ bl memcmp
+/* 802B7CC8 002B3928 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7CCC 002B392C 40 82 00 A0 */ bne lbl_802B7D6C
+/* 802B7CD0 002B3930 1F 9F 00 0C */ mulli r28, r31, 0xc
+/* 802B7CD4 002B3934 80 7E 00 64 */ lwz r3, 0x64(r30)
+/* 802B7CD8 002B3938 38 A0 00 06 */ li r5, 6
+/* 802B7CDC 002B393C 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B7CE0 002B3940 7C 9E E2 14 */ add r4, r30, r28
+/* 802B7CE4 002B3944 3B E4 00 6C */ addi r31, r4, 0x6c
+/* 802B7CE8 002B3948 80 84 00 6C */ lwz r4, 0x6c(r4)
+/* 802B7CEC 002B394C 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7CF0 002B3950 38 84 00 40 */ addi r4, r4, 0x40
+/* 802B7CF4 002B3954 4B F1 26 A5 */ bl memcmp
+/* 802B7CF8 002B3958 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7CFC 002B395C 41 82 00 80 */ beq lbl_802B7D7C
+/* 802B7D00 002B3960 7F 9E E2 14 */ add r28, r30, r28
+/* 802B7D04 002B3964 38 A0 00 06 */ li r5, 6
+/* 802B7D08 002B3968 80 1C 00 74 */ lwz r0, 0x74(r28)
+/* 802B7D0C 002B396C 80 7C 00 70 */ lwz r3, 0x70(r28)
+/* 802B7D10 002B3970 90 03 00 08 */ stw r0, 8(r3)
+/* 802B7D14 002B3974 80 9E 00 68 */ lwz r4, 0x68(r30)
+/* 802B7D18 002B3978 80 7F 00 00 */ lwz r3, 0(r31)
+/* 802B7D1C 002B397C 80 C4 00 00 */ lwz r6, 0(r4)
+/* 802B7D20 002B3980 38 83 00 40 */ addi r4, r3, 0x40
+/* 802B7D24 002B3984 38 66 00 40 */ addi r3, r6, 0x40
+/* 802B7D28 002B3988 4B F1 26 71 */ bl memcmp
+/* 802B7D2C 002B398C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7D30 002B3990 40 82 00 10 */ bne lbl_802B7D40
+/* 802B7D34 002B3994 80 1C 00 70 */ lwz r0, 0x70(r28)
+/* 802B7D38 002B3998 90 1E 00 68 */ stw r0, 0x68(r30)
+/* 802B7D3C 002B399C 48 00 00 10 */ b lbl_802B7D4C
+lbl_802B7D40:
+/* 802B7D40 002B39A0 80 1C 00 70 */ lwz r0, 0x70(r28)
+/* 802B7D44 002B39A4 80 7C 00 74 */ lwz r3, 0x74(r28)
+/* 802B7D48 002B39A8 90 03 00 04 */ stw r0, 4(r3)
+lbl_802B7D4C:
+/* 802B7D4C 002B39AC 80 7E 00 64 */ lwz r3, 0x64(r30)
+/* 802B7D50 002B39B0 38 00 00 00 */ li r0, 0
+/* 802B7D54 002B39B4 90 7C 00 74 */ stw r3, 0x74(r28)
+/* 802B7D58 002B39B8 80 7E 00 64 */ lwz r3, 0x64(r30)
+/* 802B7D5C 002B39BC 93 E3 00 04 */ stw r31, 4(r3)
+/* 802B7D60 002B39C0 93 FE 00 64 */ stw r31, 0x64(r30)
+/* 802B7D64 002B39C4 90 1C 00 70 */ stw r0, 0x70(r28)
+/* 802B7D68 002B39C8 48 00 00 14 */ b lbl_802B7D7C
+lbl_802B7D6C:
+/* 802B7D6C 002B39CC 3B FF 00 01 */ addi r31, r31, 1
+/* 802B7D70 002B39D0 3B 9C 00 0C */ addi r28, r28, 0xc
+/* 802B7D74 002B39D4 2C 1F 00 0A */ cmpwi r31, 0xa
+/* 802B7D78 002B39D8 41 80 FF 3C */ blt lbl_802B7CB4
+lbl_802B7D7C:
+/* 802B7D7C 002B39DC 7F A3 EB 78 */ mr r3, r29
+/* 802B7D80 002B39E0 4B FB 6A 05 */ bl OSRestoreInterrupts
+/* 802B7D84 002B39E4 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7D88 002B39E8 4B F0 F3 ED */ bl _restgpr_27
+/* 802B7D8C 002B39EC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B7D90 002B39F0 7C 08 03 A6 */ mtlr r0
+/* 802B7D94 002B39F4 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7D98 002B39F8 4E 80 00 20 */ blr
+
+.global WUDiMoveBottomStdDevInfoPtr
+WUDiMoveBottomStdDevInfoPtr:
+/* 802B7D9C 002B39FC 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B7DA0 002B3A00 7C 08 02 A6 */ mflr r0
+/* 802B7DA4 002B3A04 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B7DA8 002B3A08 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7DAC 002B3A0C 4B F0 F3 7D */ bl _savegpr_27
+/* 802B7DB0 002B3A10 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B7DB4 002B3A14 7C 7B 1B 78 */ mr r27, r3
+/* 802B7DB8 002B3A18 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B7DBC 002B3A1C 4B FB 69 A1 */ bl OSDisableInterrupts
+/* 802B7DC0 002B3A20 7C 7D 1B 78 */ mr r29, r3
+/* 802B7DC4 002B3A24 7F DC F3 78 */ mr r28, r30
+/* 802B7DC8 002B3A28 3B E0 00 00 */ li r31, 0
+lbl_802B7DCC:
+/* 802B7DCC 002B3A2C 80 7C 00 6C */ lwz r3, 0x6c(r28)
+/* 802B7DD0 002B3A30 38 9B 00 40 */ addi r4, r27, 0x40
+/* 802B7DD4 002B3A34 38 A0 00 06 */ li r5, 6
+/* 802B7DD8 002B3A38 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7DDC 002B3A3C 4B F1 25 BD */ bl memcmp
+/* 802B7DE0 002B3A40 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7DE4 002B3A44 40 82 00 A0 */ bne lbl_802B7E84
+/* 802B7DE8 002B3A48 1F 9F 00 0C */ mulli r28, r31, 0xc
+/* 802B7DEC 002B3A4C 80 7E 00 68 */ lwz r3, 0x68(r30)
+/* 802B7DF0 002B3A50 38 A0 00 06 */ li r5, 6
+/* 802B7DF4 002B3A54 80 63 00 00 */ lwz r3, 0(r3)
+/* 802B7DF8 002B3A58 7C 9E E2 14 */ add r4, r30, r28
+/* 802B7DFC 002B3A5C 3B E4 00 6C */ addi r31, r4, 0x6c
+/* 802B7E00 002B3A60 80 84 00 6C */ lwz r4, 0x6c(r4)
+/* 802B7E04 002B3A64 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7E08 002B3A68 38 84 00 40 */ addi r4, r4, 0x40
+/* 802B7E0C 002B3A6C 4B F1 25 8D */ bl memcmp
+/* 802B7E10 002B3A70 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7E14 002B3A74 41 82 00 80 */ beq lbl_802B7E94
+/* 802B7E18 002B3A78 7F 9E E2 14 */ add r28, r30, r28
+/* 802B7E1C 002B3A7C 38 A0 00 06 */ li r5, 6
+/* 802B7E20 002B3A80 80 1C 00 70 */ lwz r0, 0x70(r28)
+/* 802B7E24 002B3A84 80 7C 00 74 */ lwz r3, 0x74(r28)
+/* 802B7E28 002B3A88 90 03 00 04 */ stw r0, 4(r3)
+/* 802B7E2C 002B3A8C 80 9E 00 64 */ lwz r4, 0x64(r30)
+/* 802B7E30 002B3A90 80 7F 00 00 */ lwz r3, 0(r31)
+/* 802B7E34 002B3A94 80 C4 00 00 */ lwz r6, 0(r4)
+/* 802B7E38 002B3A98 38 83 00 40 */ addi r4, r3, 0x40
+/* 802B7E3C 002B3A9C 38 66 00 40 */ addi r3, r6, 0x40
+/* 802B7E40 002B3AA0 4B F1 25 59 */ bl memcmp
+/* 802B7E44 002B3AA4 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7E48 002B3AA8 40 82 00 10 */ bne lbl_802B7E58
+/* 802B7E4C 002B3AAC 80 1C 00 74 */ lwz r0, 0x74(r28)
+/* 802B7E50 002B3AB0 90 1E 00 64 */ stw r0, 0x64(r30)
+/* 802B7E54 002B3AB4 48 00 00 10 */ b lbl_802B7E64
+lbl_802B7E58:
+/* 802B7E58 002B3AB8 80 1C 00 74 */ lwz r0, 0x74(r28)
+/* 802B7E5C 002B3ABC 80 7C 00 70 */ lwz r3, 0x70(r28)
+/* 802B7E60 002B3AC0 90 03 00 08 */ stw r0, 8(r3)
+lbl_802B7E64:
+/* 802B7E64 002B3AC4 80 7E 00 68 */ lwz r3, 0x68(r30)
+/* 802B7E68 002B3AC8 38 00 00 00 */ li r0, 0
+/* 802B7E6C 002B3ACC 90 7C 00 70 */ stw r3, 0x70(r28)
+/* 802B7E70 002B3AD0 80 7E 00 68 */ lwz r3, 0x68(r30)
+/* 802B7E74 002B3AD4 93 E3 00 08 */ stw r31, 8(r3)
+/* 802B7E78 002B3AD8 93 FE 00 68 */ stw r31, 0x68(r30)
+/* 802B7E7C 002B3ADC 90 1C 00 74 */ stw r0, 0x74(r28)
+/* 802B7E80 002B3AE0 48 00 00 14 */ b lbl_802B7E94
+lbl_802B7E84:
+/* 802B7E84 002B3AE4 3B FF 00 01 */ addi r31, r31, 1
+/* 802B7E88 002B3AE8 3B 9C 00 0C */ addi r28, r28, 0xc
+/* 802B7E8C 002B3AEC 2C 1F 00 0A */ cmpwi r31, 0xa
+/* 802B7E90 002B3AF0 41 80 FF 3C */ blt lbl_802B7DCC
+lbl_802B7E94:
+/* 802B7E94 002B3AF4 7F A3 EB 78 */ mr r3, r29
+/* 802B7E98 002B3AF8 4B FB 68 ED */ bl OSRestoreInterrupts
+/* 802B7E9C 002B3AFC 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B7EA0 002B3B00 4B F0 F2 D5 */ bl _restgpr_27
+/* 802B7EA4 002B3B04 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B7EA8 002B3B08 7C 08 03 A6 */ mtlr r0
+/* 802B7EAC 002B3B0C 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B7EB0 002B3B10 4E 80 00 20 */ blr
+
+.global WUDiMoveTopOfDisconnectedStdDevice
+WUDiMoveTopOfDisconnectedStdDevice:
+/* 802B7EB4 002B3B14 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802B7EB8 002B3B18 7C 08 02 A6 */ mflr r0
+/* 802B7EBC 002B3B1C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802B7EC0 002B3B20 39 61 00 30 */ addi r11, r1, 0x30
+/* 802B7EC4 002B3B24 4B F0 F2 51 */ bl _savegpr_22
+/* 802B7EC8 002B3B28 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B7ECC 002B3B2C 7C 79 1B 78 */ mr r25, r3
+/* 802B7ED0 002B3B30 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B7ED4 002B3B34 4B FB 68 89 */ bl OSDisableInterrupts
+/* 802B7ED8 002B3B38 7C 7B 1B 78 */ mr r27, r3
+/* 802B7EDC 002B3B3C 7F BF EB 78 */ mr r31, r29
+/* 802B7EE0 002B3B40 3B DD 00 6C */ addi r30, r29, 0x6c
+/* 802B7EE4 002B3B44 3B 80 00 00 */ li r28, 0
+lbl_802B7EE8:
+/* 802B7EE8 002B3B48 80 7F 00 6C */ lwz r3, 0x6c(r31)
+/* 802B7EEC 002B3B4C 38 99 00 40 */ addi r4, r25, 0x40
+/* 802B7EF0 002B3B50 38 A0 00 06 */ li r5, 6
+/* 802B7EF4 002B3B54 3A E3 00 40 */ addi r23, r3, 0x40
+/* 802B7EF8 002B3B58 7E E3 BB 78 */ mr r3, r23
+/* 802B7EFC 002B3B5C 4B F1 24 9D */ bl memcmp
+/* 802B7F00 002B3B60 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7F04 002B3B64 40 82 00 D4 */ bne lbl_802B7FD8
+/* 802B7F08 002B3B68 82 DD 00 64 */ lwz r22, 0x64(r29)
+/* 802B7F0C 002B3B6C 7E DA B3 78 */ mr r26, r22
+/* 802B7F10 002B3B70 48 00 00 C0 */ b lbl_802B7FD0
+lbl_802B7F14:
+/* 802B7F14 002B3B74 83 1A 00 00 */ lwz r24, 0(r26)
+/* 802B7F18 002B3B78 38 99 00 40 */ addi r4, r25, 0x40
+/* 802B7F1C 002B3B7C 38 A0 00 06 */ li r5, 6
+/* 802B7F20 002B3B80 38 78 00 40 */ addi r3, r24, 0x40
+/* 802B7F24 002B3B84 4B F1 24 75 */ bl memcmp
+/* 802B7F28 002B3B88 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7F2C 002B3B8C 41 82 00 A0 */ beq lbl_802B7FCC
+/* 802B7F30 002B3B90 88 18 00 59 */ lbz r0, 0x59(r24)
+/* 802B7F34 002B3B94 28 00 00 01 */ cmplwi r0, 1
+/* 802B7F38 002B3B98 41 81 00 94 */ bgt lbl_802B7FCC
+/* 802B7F3C 002B3B9C 80 76 00 00 */ lwz r3, 0(r22)
+/* 802B7F40 002B3BA0 7E E4 BB 78 */ mr r4, r23
+/* 802B7F44 002B3BA4 38 A0 00 06 */ li r5, 6
+/* 802B7F48 002B3BA8 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B7F4C 002B3BAC 4B F1 24 4D */ bl memcmp
+/* 802B7F50 002B3BB0 2C 03 00 00 */ cmpwi r3, 0
+/* 802B7F54 002B3BB4 40 82 00 1C */ bne lbl_802B7F70
+/* 802B7F58 002B3BB8 80 16 00 08 */ lwz r0, 8(r22)
+/* 802B7F5C 002B3BBC 7C 1A 00 40 */ cmplw r26, r0
+/* 802B7F60 002B3BC0 41 82 00 78 */ beq lbl_802B7FD8
+/* 802B7F64 002B3BC4 80 1F 00 74 */ lwz r0, 0x74(r31)
+/* 802B7F68 002B3BC8 90 1D 00 64 */ stw r0, 0x64(r29)
+/* 802B7F6C 002B3BCC 48 00 00 10 */ b lbl_802B7F7C
+lbl_802B7F70:
+/* 802B7F70 002B3BD0 80 1F 00 74 */ lwz r0, 0x74(r31)
+/* 802B7F74 002B3BD4 80 7F 00 70 */ lwz r3, 0x70(r31)
+/* 802B7F78 002B3BD8 90 03 00 08 */ stw r0, 8(r3)
+lbl_802B7F7C:
+/* 802B7F7C 002B3BDC 80 1F 00 70 */ lwz r0, 0x70(r31)
+/* 802B7F80 002B3BE0 80 7F 00 74 */ lwz r3, 0x74(r31)
+/* 802B7F84 002B3BE4 90 03 00 04 */ stw r0, 4(r3)
+/* 802B7F88 002B3BE8 80 1D 00 64 */ lwz r0, 0x64(r29)
+/* 802B7F8C 002B3BEC 7C 1A 00 40 */ cmplw r26, r0
+/* 802B7F90 002B3BF0 41 82 00 20 */ beq lbl_802B7FB0
+/* 802B7F94 002B3BF4 80 1A 00 04 */ lwz r0, 4(r26)
+/* 802B7F98 002B3BF8 90 1F 00 70 */ stw r0, 0x70(r31)
+/* 802B7F9C 002B3BFC 93 5F 00 74 */ stw r26, 0x74(r31)
+/* 802B7FA0 002B3C00 80 7A 00 04 */ lwz r3, 4(r26)
+/* 802B7FA4 002B3C04 93 C3 00 08 */ stw r30, 8(r3)
+/* 802B7FA8 002B3C08 93 DA 00 04 */ stw r30, 4(r26)
+/* 802B7FAC 002B3C0C 48 00 00 2C */ b lbl_802B7FD8
+lbl_802B7FB0:
+/* 802B7FB0 002B3C10 93 5F 00 70 */ stw r26, 0x70(r31)
+/* 802B7FB4 002B3C14 80 1A 00 08 */ lwz r0, 8(r26)
+/* 802B7FB8 002B3C18 90 1F 00 74 */ stw r0, 0x74(r31)
+/* 802B7FBC 002B3C1C 80 7A 00 08 */ lwz r3, 8(r26)
+/* 802B7FC0 002B3C20 93 C3 00 04 */ stw r30, 4(r3)
+/* 802B7FC4 002B3C24 93 DA 00 08 */ stw r30, 8(r26)
+/* 802B7FC8 002B3C28 48 00 00 10 */ b lbl_802B7FD8
+lbl_802B7FCC:
+/* 802B7FCC 002B3C2C 83 5A 00 08 */ lwz r26, 8(r26)
+lbl_802B7FD0:
+/* 802B7FD0 002B3C30 2C 1A 00 00 */ cmpwi r26, 0
+/* 802B7FD4 002B3C34 40 82 FF 40 */ bne lbl_802B7F14
+lbl_802B7FD8:
+/* 802B7FD8 002B3C38 3B 9C 00 01 */ addi r28, r28, 1
+/* 802B7FDC 002B3C3C 3B DE 00 0C */ addi r30, r30, 0xc
+/* 802B7FE0 002B3C40 2C 1C 00 0A */ cmpwi r28, 0xa
+/* 802B7FE4 002B3C44 3B FF 00 0C */ addi r31, r31, 0xc
+/* 802B7FE8 002B3C48 41 80 FF 00 */ blt lbl_802B7EE8
+/* 802B7FEC 002B3C4C 7F 63 DB 78 */ mr r3, r27
+/* 802B7FF0 002B3C50 4B FB 67 95 */ bl OSRestoreInterrupts
+/* 802B7FF4 002B3C54 39 61 00 30 */ addi r11, r1, 0x30
+/* 802B7FF8 002B3C58 4B F0 F1 69 */ bl _restgpr_22
+/* 802B7FFC 002B3C5C 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802B8000 002B3C60 7C 08 03 A6 */ mtlr r0
+/* 802B8004 002B3C64 38 21 00 30 */ addi r1, r1, 0x30
+/* 802B8008 002B3C68 4E 80 00 20 */ blr
+
+CleanupCallback:
+/* 802B800C 002B3C6C 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8010 002B3C70 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B8014 002B3C74 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B8018 002B3C78 40 82 00 14 */ bne lbl_802B802C
+/* 802B801C 002B3C7C 38 00 00 00 */ li r0, 0
+/* 802B8020 002B3C80 90 0D AE A8 */ stw r0, lbl_80640168-_SDA_BASE_(r13)
+/* 802B8024 002B3C84 98 03 07 08 */ stb r0, 0x708(r3)
+/* 802B8028 002B3C88 4E 80 00 20 */ blr
+lbl_802B802C:
+/* 802B802C 002B3C8C 3C 60 80 44 */ lis r3, lbl_8043E7B4@ha
+/* 802B8030 002B3C90 38 63 E7 B4 */ addi r3, r3, lbl_8043E7B4@l
+/* 802B8034 002B3C94 4C C6 31 82 */ crclr 6
+/* 802B8038 002B3C98 48 00 15 44 */ b func_802B957C
+/* 802B803C 002B3C9C 4E 80 00 20 */ blr
+
+WUDSecurityCallback:
+/* 802B8040 002B3CA0 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 802B8044 002B3CA4 7C 08 02 A6 */ mflr r0
+/* 802B8048 002B3CA8 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802B804C 002B3CAC 39 61 00 60 */ addi r11, r1, 0x60
+/* 802B8050 002B3CB0 4B F0 F0 D1 */ bl _savegpr_25
+/* 802B8054 002B3CB4 3F C0 80 44 */ lis r30, lbl_8043E048@ha
+/* 802B8058 002B3CB8 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B805C 002B3CBC 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
+/* 802B8060 002B3CC0 7C 79 1B 78 */ mr r25, r3
+/* 802B8064 002B3CC4 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
+/* 802B8068 002B3CC8 7C 9C 23 78 */ mr r28, r4
+/* 802B806C 002B3CCC 3B BF 00 00 */ addi r29, r31, 0
+/* 802B8070 002B3CD0 38 7E 07 8C */ addi r3, r30, 0x78c
+/* 802B8074 002B3CD4 4C C6 31 82 */ crclr 6
+/* 802B8078 002B3CD8 48 00 15 05 */ bl func_802B957C
+/* 802B807C 002B3CDC 28 19 00 08 */ cmplwi r25, 8
+/* 802B8080 002B3CE0 41 81 04 FC */ bgt lbl_802B857C
+/* 802B8084 002B3CE4 3C 60 80 44 */ lis r3, lbl_8043EA30@ha
+/* 802B8088 002B3CE8 57 20 10 3A */ slwi r0, r25, 2
+/* 802B808C 002B3CEC 38 63 EA 30 */ addi r3, r3, lbl_8043EA30@l
+/* 802B8090 002B3CF0 7C 63 00 2E */ lwzx r3, r3, r0
+/* 802B8094 002B3CF4 7C 69 03 A6 */ mtctr r3
+/* 802B8098 002B3CF8 4E 80 04 20 */ bctr
+/* 802B809C 002B3CFC 7F 84 E3 78 */ mr r4, r28
+/* 802B80A0 002B3D00 38 7D 07 02 */ addi r3, r29, 0x702
+/* 802B80A4 002B3D04 38 A0 00 06 */ li r5, 6
+/* 802B80A8 002B3D08 4B D4 BF 59 */ bl memcpy
+/* 802B80AC 002B3D0C 38 7E 07 A8 */ addi r3, r30, 0x7a8
+/* 802B80B0 002B3D10 4C C6 31 82 */ crclr 6
+/* 802B80B4 002B3D14 48 00 14 C9 */ bl func_802B957C
+/* 802B80B8 002B3D18 88 9D 07 02 */ lbz r4, 0x702(r29)
+/* 802B80BC 002B3D1C 38 7E 07 B8 */ addi r3, r30, 0x7b8
+/* 802B80C0 002B3D20 88 BD 07 03 */ lbz r5, 0x703(r29)
+/* 802B80C4 002B3D24 88 DD 07 04 */ lbz r6, 0x704(r29)
+/* 802B80C8 002B3D28 88 FD 07 05 */ lbz r7, 0x705(r29)
+/* 802B80CC 002B3D2C 89 1D 07 06 */ lbz r8, 0x706(r29)
+/* 802B80D0 002B3D30 89 3D 07 07 */ lbz r9, 0x707(r29)
+/* 802B80D4 002B3D34 4C C6 31 82 */ crclr 6
+/* 802B80D8 002B3D38 48 00 14 A5 */ bl func_802B957C
+/* 802B80DC 002B3D3C 3C 80 80 2C */ lis r4, lbl_802B9030@ha
+/* 802B80E0 002B3D40 38 60 00 12 */ li r3, 0x12
+/* 802B80E4 002B3D44 38 84 90 30 */ addi r4, r4, lbl_802B9030@l
+/* 802B80E8 002B3D48 48 00 A6 75 */ bl func_802C275C
+/* 802B80EC 002B3D4C 38 00 00 01 */ li r0, 1
+/* 802B80F0 002B3D50 38 7D 07 10 */ addi r3, r29, 0x710
+/* 802B80F4 002B3D54 98 1D 00 0F */ stb r0, 0xf(r29)
+/* 802B80F8 002B3D58 4B FB 16 2D */ bl OSCreateAlarm
+/* 802B80FC 002B3D5C 4B FB A6 BD */ bl OSGetTime
+/* 802B8100 002B3D60 3C A0 80 00 */ lis r5, 0x800000F8@ha
+/* 802B8104 002B3D64 3D 20 80 2B */ lis r9, EnableStackHandler0@ha
+/* 802B8108 002B3D68 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
+/* 802B810C 002B3D6C 3C C0 10 62 */ lis r6, 0x10624DD3@ha
+/* 802B8110 002B3D70 7C 65 1B 78 */ mr r5, r3
+/* 802B8114 002B3D74 39 29 60 48 */ addi r9, r9, EnableStackHandler0@l
+/* 802B8118 002B3D78 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
+/* 802B811C 002B3D7C 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B8120 002B3D80 7C 03 00 16 */ mulhwu r0, r3, r0
+/* 802B8124 002B3D84 7C 86 23 78 */ mr r6, r4
+/* 802B8128 002B3D88 38 7D 07 10 */ addi r3, r29, 0x710
+/* 802B812C 002B3D8C 38 E0 00 00 */ li r7, 0
+/* 802B8130 002B3D90 54 00 D1 BE */ srwi r0, r0, 6
+/* 802B8134 002B3D94 1D 00 00 0A */ mulli r8, r0, 0xa
+/* 802B8138 002B3D98 4B FB 18 BD */ bl OSSetPeriodicAlarm
+/* 802B813C 002B3D9C 38 00 00 02 */ li r0, 2
+/* 802B8140 002B3DA0 98 1D 07 08 */ stb r0, 0x708(r29)
+/* 802B8144 002B3DA4 48 00 04 38 */ b lbl_802B857C
+/* 802B8148 002B3DA8 38 7E 07 E0 */ addi r3, r30, 0x7e0
+/* 802B814C 002B3DAC 4C C6 31 82 */ crclr 6
+/* 802B8150 002B3DB0 48 00 14 2D */ bl func_802B957C
+/* 802B8154 002B3DB4 3C 60 80 2C */ lis r3, CleanupCallback@ha
+/* 802B8158 002B3DB8 38 63 80 0C */ addi r3, r3, CleanupCallback@l
+/* 802B815C 002B3DBC 48 00 4F 51 */ bl func_802BD0AC
+/* 802B8160 002B3DC0 48 00 04 1C */ b lbl_802B857C
+/* 802B8164 002B3DC4 38 7E 07 F4 */ addi r3, r30, 0x7f4
+/* 802B8168 002B3DC8 4C C6 31 82 */ crclr 6
+/* 802B816C 002B3DCC 48 00 14 11 */ bl func_802B957C
+/* 802B8170 002B3DD0 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
+/* 802B8174 002B3DD4 2C 00 00 00 */ cmpwi r0, 0
+/* 802B8178 002B3DD8 40 82 00 0C */ bne lbl_802B8184
+/* 802B817C 002B3DDC 3B BD 07 02 */ addi r29, r29, 0x702
+/* 802B8180 002B3DE0 48 00 00 08 */ b lbl_802B8188
+lbl_802B8184:
+/* 802B8184 002B3DE4 7F 9D E3 78 */ mr r29, r28
+lbl_802B8188:
+/* 802B8188 002B3DE8 3B 7F 0C E8 */ addi r27, r31, 0xce8
+/* 802B818C 002B3DEC 88 1B 00 5B */ lbz r0, 0x5b(r27)
+/* 802B8190 002B3DF0 28 00 00 04 */ cmplwi r0, 4
+/* 802B8194 002B3DF4 40 82 00 14 */ bne lbl_802B81A8
+/* 802B8198 002B3DF8 38 7B 00 40 */ addi r3, r27, 0x40
+/* 802B819C 002B3DFC 4B FF F4 85 */ bl WUDiRemoveDevice
+/* 802B81A0 002B3E00 38 7B 00 40 */ addi r3, r27, 0x40
+/* 802B81A4 002B3E04 48 00 CC F1 */ bl func_802C4E94
+lbl_802B81A8:
+/* 802B81A8 002B3E08 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B81AC 002B3E0C 38 00 00 01 */ li r0, 1
+/* 802B81B0 002B3E10 98 03 00 5A */ stb r0, 0x5a(r3)
+/* 802B81B4 002B3E14 4B FB 65 A9 */ bl OSDisableInterrupts
+/* 802B81B8 002B3E18 88 1D 00 05 */ lbz r0, 5(r29)
+/* 802B81BC 002B3E1C 98 01 00 30 */ stb r0, 0x30(r1)
+/* 802B81C0 002B3E20 88 1D 00 04 */ lbz r0, 4(r29)
+/* 802B81C4 002B3E24 98 01 00 31 */ stb r0, 0x31(r1)
+/* 802B81C8 002B3E28 88 1D 00 03 */ lbz r0, 3(r29)
+/* 802B81CC 002B3E2C 98 01 00 32 */ stb r0, 0x32(r1)
+/* 802B81D0 002B3E30 88 1D 00 02 */ lbz r0, 2(r29)
+/* 802B81D4 002B3E34 98 01 00 33 */ stb r0, 0x33(r1)
+/* 802B81D8 002B3E38 88 1D 00 01 */ lbz r0, 1(r29)
+/* 802B81DC 002B3E3C 98 01 00 34 */ stb r0, 0x34(r1)
+/* 802B81E0 002B3E40 88 1D 00 00 */ lbz r0, 0(r29)
+/* 802B81E4 002B3E44 98 01 00 35 */ stb r0, 0x35(r1)
+/* 802B81E8 002B3E48 4B FB 65 9D */ bl OSRestoreInterrupts
+/* 802B81EC 002B3E4C 7F 83 E3 78 */ mr r3, r28
+/* 802B81F0 002B3E50 38 C1 00 30 */ addi r6, r1, 0x30
+/* 802B81F4 002B3E54 38 80 00 01 */ li r4, 1
+/* 802B81F8 002B3E58 38 A0 00 06 */ li r5, 6
+/* 802B81FC 002B3E5C 48 00 80 A1 */ bl func_802C029C
+/* 802B8200 002B3E60 48 00 03 7C */ b lbl_802B857C
+/* 802B8204 002B3E64 38 7E 08 08 */ addi r3, r30, 0x808
+/* 802B8208 002B3E68 4C C6 31 82 */ crclr 6
+/* 802B820C 002B3E6C 48 00 13 71 */ bl func_802B957C
+/* 802B8210 002B3E70 88 9C 00 00 */ lbz r4, 0(r28)
+/* 802B8214 002B3E74 38 7E 08 20 */ addi r3, r30, 0x820
+/* 802B8218 002B3E78 88 BC 00 01 */ lbz r5, 1(r28)
+/* 802B821C 002B3E7C 88 DC 00 02 */ lbz r6, 2(r28)
+/* 802B8220 002B3E80 88 FC 00 03 */ lbz r7, 3(r28)
+/* 802B8224 002B3E84 89 1C 00 04 */ lbz r8, 4(r28)
+/* 802B8228 002B3E88 89 3C 00 05 */ lbz r9, 5(r28)
+/* 802B822C 002B3E8C 4C C6 31 82 */ crclr 6
+/* 802B8230 002B3E90 48 00 13 4D */ bl func_802B957C
+/* 802B8234 002B3E94 88 1C 01 06 */ lbz r0, 0x106(r28)
+/* 802B8238 002B3E98 38 7E 08 48 */ addi r3, r30, 0x848
+/* 802B823C 002B3E9C 90 01 00 08 */ stw r0, 8(r1)
+/* 802B8240 002B3EA0 88 1C 01 07 */ lbz r0, 0x107(r28)
+/* 802B8244 002B3EA4 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802B8248 002B3EA8 88 1C 01 08 */ lbz r0, 0x108(r28)
+/* 802B824C 002B3EAC 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802B8250 002B3EB0 88 1C 01 09 */ lbz r0, 0x109(r28)
+/* 802B8254 002B3EB4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B8258 002B3EB8 88 1C 01 0A */ lbz r0, 0x10a(r28)
+/* 802B825C 002B3EBC 90 01 00 18 */ stw r0, 0x18(r1)
+/* 802B8260 002B3EC0 88 1C 01 0B */ lbz r0, 0x10b(r28)
+/* 802B8264 002B3EC4 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 802B8268 002B3EC8 88 1C 01 0C */ lbz r0, 0x10c(r28)
+/* 802B826C 002B3ECC 90 01 00 20 */ stw r0, 0x20(r1)
+/* 802B8270 002B3ED0 88 1C 01 0D */ lbz r0, 0x10d(r28)
+/* 802B8274 002B3ED4 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B8278 002B3ED8 88 1C 01 0E */ lbz r0, 0x10e(r28)
+/* 802B827C 002B3EDC 90 01 00 28 */ stw r0, 0x28(r1)
+/* 802B8280 002B3EE0 88 9C 00 FF */ lbz r4, 0xff(r28)
+/* 802B8284 002B3EE4 88 BC 01 00 */ lbz r5, 0x100(r28)
+/* 802B8288 002B3EE8 88 DC 01 01 */ lbz r6, 0x101(r28)
+/* 802B828C 002B3EEC 88 FC 01 02 */ lbz r7, 0x102(r28)
+/* 802B8290 002B3EF0 89 1C 01 03 */ lbz r8, 0x103(r28)
+/* 802B8294 002B3EF4 89 3C 01 04 */ lbz r9, 0x104(r28)
+/* 802B8298 002B3EF8 89 5C 01 05 */ lbz r10, 0x105(r28)
+/* 802B829C 002B3EFC 4C C6 31 82 */ crclr 6
+/* 802B82A0 002B3F00 48 00 12 DD */ bl func_802B957C
+/* 802B82A4 002B3F04 88 9C 01 0F */ lbz r4, 0x10f(r28)
+/* 802B82A8 002B3F08 38 7E 08 A4 */ addi r3, r30, 0x8a4
+/* 802B82AC 002B3F0C 4C C6 31 82 */ crclr 6
+/* 802B82B0 002B3F10 48 00 12 CD */ bl func_802B957C
+/* 802B82B4 002B3F14 88 1C 01 0F */ lbz r0, 0x10f(r28)
+/* 802B82B8 002B3F18 2C 00 00 00 */ cmpwi r0, 0
+/* 802B82BC 002B3F1C 41 82 02 C0 */ beq lbl_802B857C
+/* 802B82C0 002B3F20 7F 83 E3 78 */ mr r3, r28
+/* 802B82C4 002B3F24 4B FF F4 A1 */ bl WUDiGetDevInfo
+/* 802B82C8 002B3F28 3B 7F 0C E8 */ addi r27, r31, 0xce8
+/* 802B82CC 002B3F2C 7C 7A 1B 78 */ mr r26, r3
+/* 802B82D0 002B3F30 7F 84 E3 78 */ mr r4, r28
+/* 802B82D4 002B3F34 38 A0 00 06 */ li r5, 6
+/* 802B82D8 002B3F38 38 7B 00 40 */ addi r3, r27, 0x40
+/* 802B82DC 002B3F3C 4B F1 20 BD */ bl memcmp
+/* 802B82E0 002B3F40 2C 03 00 00 */ cmpwi r3, 0
+/* 802B82E4 002B3F44 40 82 00 18 */ bne lbl_802B82FC
+/* 802B82E8 002B3F48 38 00 00 0C */ li r0, 0xc
+/* 802B82EC 002B3F4C 2C 1A 00 00 */ cmpwi r26, 0
+/* 802B82F0 002B3F50 98 1B 00 59 */ stb r0, 0x59(r27)
+/* 802B82F4 002B3F54 40 82 00 08 */ bne lbl_802B82FC
+/* 802B82F8 002B3F58 7F 7A DB 78 */ mr r26, r27
+lbl_802B82FC:
+/* 802B82FC 002B3F5C 38 7A 00 46 */ addi r3, r26, 0x46
+/* 802B8300 002B3F60 38 9C 00 FF */ addi r4, r28, 0xff
+/* 802B8304 002B3F64 38 A0 00 10 */ li r5, 0x10
+/* 802B8308 002B3F68 4B D4 BC F9 */ bl memcpy
+/* 802B830C 002B3F6C 48 00 02 70 */ b lbl_802B857C
+/* 802B8310 002B3F70 38 7E 08 B4 */ addi r3, r30, 0x8b4
+/* 802B8314 002B3F74 4C C6 31 82 */ crclr 6
+/* 802B8318 002B3F78 48 00 12 65 */ bl func_802B957C
+/* 802B831C 002B3F7C 48 00 02 60 */ b lbl_802B857C
+/* 802B8320 002B3F80 38 7E 08 CC */ addi r3, r30, 0x8cc
+/* 802B8324 002B3F84 4C C6 31 82 */ crclr 6
+/* 802B8328 002B3F88 48 00 12 55 */ bl func_802B957C
+/* 802B832C 002B3F8C 88 9C 00 00 */ lbz r4, 0(r28)
+/* 802B8330 002B3F90 38 7E 08 E0 */ addi r3, r30, 0x8e0
+/* 802B8334 002B3F94 88 BC 00 01 */ lbz r5, 1(r28)
+/* 802B8338 002B3F98 88 DC 00 02 */ lbz r6, 2(r28)
+/* 802B833C 002B3F9C 88 FC 00 03 */ lbz r7, 3(r28)
+/* 802B8340 002B3FA0 89 1C 00 04 */ lbz r8, 4(r28)
+/* 802B8344 002B3FA4 89 3C 00 05 */ lbz r9, 5(r28)
+/* 802B8348 002B3FA8 4C C6 31 82 */ crclr 6
+/* 802B834C 002B3FAC 48 00 12 31 */ bl func_802B957C
+/* 802B8350 002B3FB0 7F 83 E3 78 */ mr r3, r28
+/* 802B8354 002B3FB4 4B FF F4 11 */ bl WUDiGetDevInfo
+/* 802B8358 002B3FB8 2C 03 00 00 */ cmpwi r3, 0
+/* 802B835C 002B3FBC 7C 7A 1B 78 */ mr r26, r3
+/* 802B8360 002B3FC0 40 82 00 24 */ bne lbl_802B8384
+/* 802B8364 002B3FC4 3B 7F 0C E8 */ addi r27, r31, 0xce8
+/* 802B8368 002B3FC8 7F 83 E3 78 */ mr r3, r28
+/* 802B836C 002B3FCC 38 9B 00 40 */ addi r4, r27, 0x40
+/* 802B8370 002B3FD0 38 A0 00 06 */ li r5, 6
+/* 802B8374 002B3FD4 4B F1 20 25 */ bl memcmp
+/* 802B8378 002B3FD8 2C 03 00 00 */ cmpwi r3, 0
+/* 802B837C 002B3FDC 40 82 00 08 */ bne lbl_802B8384
+/* 802B8380 002B3FE0 7F 7A DB 78 */ mr r26, r27
+lbl_802B8384:
+/* 802B8384 002B3FE4 2C 1A 00 00 */ cmpwi r26, 0
+/* 802B8388 002B3FE8 41 82 00 1C */ beq lbl_802B83A4
+/* 802B838C 002B3FEC 4B FB 63 D1 */ bl OSDisableInterrupts
+/* 802B8390 002B3FF0 38 9F 00 00 */ addi r4, r31, 0
+/* 802B8394 002B3FF4 8B 64 06 E5 */ lbz r27, 0x6e5(r4)
+/* 802B8398 002B3FF8 4B FB 63 ED */ bl OSRestoreInterrupts
+/* 802B839C 002B3FFC 28 1B 00 04 */ cmplwi r27, 4
+/* 802B83A0 002B4000 40 82 00 44 */ bne lbl_802B83E4
+lbl_802B83A4:
+/* 802B83A4 002B4004 7F 83 E3 78 */ mr r3, r28
+/* 802B83A8 002B4008 48 00 CA ED */ bl func_802C4E94
+/* 802B83AC 002B400C 2C 1A 00 00 */ cmpwi r26, 0
+/* 802B83B0 002B4010 38 7E 09 0C */ addi r3, r30, 0x90c
+/* 802B83B4 002B4014 38 9E 09 40 */ addi r4, r30, 0x940
+/* 802B83B8 002B4018 40 82 00 08 */ bne lbl_802B83C0
+/* 802B83BC 002B401C 38 9E 09 34 */ addi r4, r30, 0x934
+lbl_802B83C0:
+/* 802B83C0 002B4020 88 BC 00 00 */ lbz r5, 0(r28)
+/* 802B83C4 002B4024 88 DC 00 01 */ lbz r6, 1(r28)
+/* 802B83C8 002B4028 88 FC 00 02 */ lbz r7, 2(r28)
+/* 802B83CC 002B402C 89 1C 00 03 */ lbz r8, 3(r28)
+/* 802B83D0 002B4030 89 3C 00 04 */ lbz r9, 4(r28)
+/* 802B83D4 002B4034 89 5C 00 05 */ lbz r10, 5(r28)
+/* 802B83D8 002B4038 4C C6 31 82 */ crclr 6
+/* 802B83DC 002B403C 48 00 11 A1 */ bl func_802B957C
+/* 802B83E0 002B4040 48 00 01 9C */ b lbl_802B857C
+lbl_802B83E4:
+/* 802B83E4 002B4044 88 1A 00 59 */ lbz r0, 0x59(r26)
+/* 802B83E8 002B4048 38 60 00 03 */ li r3, 3
+/* 802B83EC 002B404C 28 00 00 02 */ cmplwi r0, 2
+/* 802B83F0 002B4050 40 82 00 08 */ bne lbl_802B83F8
+/* 802B83F4 002B4054 38 60 00 0C */ li r3, 0xc
+lbl_802B83F8:
+/* 802B83F8 002B4058 98 7A 00 59 */ stb r3, 0x59(r26)
+/* 802B83FC 002B405C 88 7D 06 E5 */ lbz r3, 0x6e5(r29)
+/* 802B8400 002B4060 38 03 00 01 */ addi r0, r3, 1
+/* 802B8404 002B4064 98 1D 06 E5 */ stb r0, 0x6e5(r29)
+/* 802B8408 002B4068 48 00 01 74 */ b lbl_802B857C
+/* 802B840C 002B406C 38 7E 09 50 */ addi r3, r30, 0x950
+/* 802B8410 002B4070 4C C6 31 82 */ crclr 6
+/* 802B8414 002B4074 48 00 11 69 */ bl func_802B957C
+/* 802B8418 002B4078 88 9C 00 00 */ lbz r4, 0(r28)
+/* 802B841C 002B407C 38 7E 08 E0 */ addi r3, r30, 0x8e0
+/* 802B8420 002B4080 88 BC 00 01 */ lbz r5, 1(r28)
+/* 802B8424 002B4084 88 DC 00 02 */ lbz r6, 2(r28)
+/* 802B8428 002B4088 88 FC 00 03 */ lbz r7, 3(r28)
+/* 802B842C 002B408C 89 1C 00 04 */ lbz r8, 4(r28)
+/* 802B8430 002B4090 89 3C 00 05 */ lbz r9, 5(r28)
+/* 802B8434 002B4094 4C C6 31 82 */ crclr 6
+/* 802B8438 002B4098 48 00 11 45 */ bl func_802B957C
+/* 802B843C 002B409C 88 9C 00 06 */ lbz r4, 6(r28)
+/* 802B8440 002B40A0 38 7E 09 68 */ addi r3, r30, 0x968
+/* 802B8444 002B40A4 4C C6 31 82 */ crclr 6
+/* 802B8448 002B40A8 48 00 11 35 */ bl func_802B957C
+/* 802B844C 002B40AC 7F 83 E3 78 */ mr r3, r28
+/* 802B8450 002B40B0 4B FF F3 15 */ bl WUDiGetDevInfo
+/* 802B8454 002B40B4 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8458 002B40B8 41 82 00 A4 */ beq lbl_802B84FC
+/* 802B845C 002B40BC 38 00 00 01 */ li r0, 1
+/* 802B8460 002B40C0 38 BF 0C E8 */ addi r5, r31, 0xce8
+/* 802B8464 002B40C4 98 03 00 59 */ stb r0, 0x59(r3)
+/* 802B8468 002B40C8 38 65 00 40 */ addi r3, r5, 0x40
+/* 802B846C 002B40CC 7F 84 E3 78 */ mr r4, r28
+/* 802B8470 002B40D0 38 A0 00 06 */ li r5, 6
+/* 802B8474 002B40D4 88 DD 06 E5 */ lbz r6, 0x6e5(r29)
+/* 802B8478 002B40D8 38 06 FF FF */ addi r0, r6, -1
+/* 802B847C 002B40DC 98 1D 06 E5 */ stb r0, 0x6e5(r29)
+/* 802B8480 002B40E0 4B F1 1F 19 */ bl memcmp
+/* 802B8484 002B40E4 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8488 002B40E8 40 82 00 0C */ bne lbl_802B8494
+/* 802B848C 002B40EC 38 00 00 FF */ li r0, 0xff
+/* 802B8490 002B40F0 98 1D 00 0C */ stb r0, 0xc(r29)
+lbl_802B8494:
+/* 802B8494 002B40F4 88 1C 00 06 */ lbz r0, 6(r28)
+/* 802B8498 002B40F8 28 00 00 15 */ cmplwi r0, 0x15
+/* 802B849C 002B40FC 40 82 00 A0 */ bne lbl_802B853C
+/* 802B84A0 002B4100 3B 7F 07 48 */ addi r27, r31, 0x748
+/* 802B84A4 002B4104 3B 20 00 00 */ li r25, 0
+/* 802B84A8 002B4108 3B E0 00 01 */ li r31, 1
+lbl_802B84AC:
+/* 802B84AC 002B410C 57 23 06 3E */ clrlwi r3, r25, 0x18
+/* 802B84B0 002B4110 7F 84 E3 78 */ mr r4, r28
+/* 802B84B4 002B4114 38 03 00 0A */ addi r0, r3, 0xa
+/* 802B84B8 002B4118 38 A0 00 06 */ li r5, 6
+/* 802B84BC 002B411C 1C 00 00 46 */ mulli r0, r0, 0x46
+/* 802B84C0 002B4120 7C 7B 02 14 */ add r3, r27, r0
+/* 802B84C4 002B4124 3B 43 00 01 */ addi r26, r3, 1
+/* 802B84C8 002B4128 7F 43 D3 78 */ mr r3, r26
+/* 802B84CC 002B412C 4B F1 1E CD */ bl memcmp
+/* 802B84D0 002B4130 2C 03 00 00 */ cmpwi r3, 0
+/* 802B84D4 002B4134 40 82 00 18 */ bne lbl_802B84EC
+/* 802B84D8 002B4138 7F 43 D3 78 */ mr r3, r26
+/* 802B84DC 002B413C 38 80 00 00 */ li r4, 0
+/* 802B84E0 002B4140 38 A0 00 46 */ li r5, 0x46
+/* 802B84E4 002B4144 4B D4 BC 21 */ bl memset
+/* 802B84E8 002B4148 9B ED AE 59 */ stb r31, lbl_80640119-_SDA_BASE_(r13)
+lbl_802B84EC:
+/* 802B84EC 002B414C 3B 39 00 01 */ addi r25, r25, 1
+/* 802B84F0 002B4150 28 19 00 04 */ cmplwi r25, 4
+/* 802B84F4 002B4154 41 80 FF B8 */ blt lbl_802B84AC
+/* 802B84F8 002B4158 48 00 00 44 */ b lbl_802B853C
+lbl_802B84FC:
+/* 802B84FC 002B415C 38 7F 0C E8 */ addi r3, r31, 0xce8
+/* 802B8500 002B4160 7F 84 E3 78 */ mr r4, r28
+/* 802B8504 002B4164 38 63 00 40 */ addi r3, r3, 0x40
+/* 802B8508 002B4168 38 A0 00 06 */ li r5, 6
+/* 802B850C 002B416C 4B F1 1E 8D */ bl memcmp
+/* 802B8510 002B4170 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8514 002B4174 40 82 00 1C */ bne lbl_802B8530
+/* 802B8518 002B4178 88 7D 06 E5 */ lbz r3, 0x6e5(r29)
+/* 802B851C 002B417C 38 00 00 FF */ li r0, 0xff
+/* 802B8520 002B4180 98 1D 00 0C */ stb r0, 0xc(r29)
+/* 802B8524 002B4184 38 03 FF FF */ addi r0, r3, -1
+/* 802B8528 002B4188 98 1D 06 E5 */ stb r0, 0x6e5(r29)
+/* 802B852C 002B418C 48 00 00 10 */ b lbl_802B853C
+lbl_802B8530:
+/* 802B8530 002B4190 38 7E 09 74 */ addi r3, r30, 0x974
+/* 802B8534 002B4194 4C C6 31 82 */ crclr 6
+/* 802B8538 002B4198 48 00 10 45 */ bl func_802B957C
+lbl_802B853C:
+/* 802B853C 002B419C 88 1D 06 E5 */ lbz r0, 0x6e5(r29)
+/* 802B8540 002B41A0 28 00 00 FA */ cmplwi r0, 0xfa
+/* 802B8544 002B41A4 41 80 00 38 */ blt lbl_802B857C
+/* 802B8548 002B41A8 38 7E 09 90 */ addi r3, r30, 0x990
+/* 802B854C 002B41AC 4C C6 31 82 */ crclr 6
+/* 802B8550 002B41B0 4B D4 F5 75 */ bl func_80007AC4
+/* 802B8554 002B41B4 38 00 00 00 */ li r0, 0
+/* 802B8558 002B41B8 98 1D 06 E5 */ stb r0, 0x6e5(r29)
+/* 802B855C 002B41BC 48 00 00 20 */ b lbl_802B857C
+/* 802B8560 002B41C0 38 7E 09 B4 */ addi r3, r30, 0x9b4
+/* 802B8564 002B41C4 4C C6 31 82 */ crclr 6
+/* 802B8568 002B41C8 48 00 10 15 */ bl func_802B957C
+/* 802B856C 002B41CC 48 00 00 10 */ b lbl_802B857C
+/* 802B8570 002B41D0 38 7E 09 D0 */ addi r3, r30, 0x9d0
+/* 802B8574 002B41D4 4C C6 31 82 */ crclr 6
+/* 802B8578 002B41D8 48 00 10 05 */ bl func_802B957C
+lbl_802B857C:
+/* 802B857C 002B41DC 39 61 00 60 */ addi r11, r1, 0x60
+/* 802B8580 002B41E0 4B F0 EB ED */ bl _restgpr_25
+/* 802B8584 002B41E4 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802B8588 002B41E8 7C 08 03 A6 */ mtlr r0
+/* 802B858C 002B41EC 38 21 00 60 */ addi r1, r1, 0x60
+/* 802B8590 002B41F0 4E 80 00 20 */ blr
+
+WUDSearchCallback:
+/* 802B8594 002B41F4 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802B8598 002B41F8 7C 08 02 A6 */ mflr r0
+/* 802B859C 002B41FC 2C 03 00 02 */ cmpwi r3, 2
+/* 802B85A0 002B4200 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802B85A4 002B4204 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 802B85A8 002B4208 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 802B85AC 002B420C 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 802B85B0 002B4210 3F A0 80 44 */ lis r29, lbl_8043E048@ha
+/* 802B85B4 002B4214 3B BD E0 48 */ addi r29, r29, lbl_8043E048@l
+/* 802B85B8 002B4218 93 81 00 20 */ stw r28, 0x20(r1)
+/* 802B85BC 002B421C 7C 9C 23 78 */ mr r28, r4
+/* 802B85C0 002B4220 41 82 00 D0 */ beq lbl_802B8690
+/* 802B85C4 002B4224 40 80 00 14 */ bge lbl_802B85D8
+/* 802B85C8 002B4228 2C 03 00 00 */ cmpwi r3, 0
+/* 802B85CC 002B422C 41 82 00 1C */ beq lbl_802B85E8
+/* 802B85D0 002B4230 40 80 00 B0 */ bge lbl_802B8680
+/* 802B85D4 002B4234 48 00 01 80 */ b lbl_802B8754
+lbl_802B85D8:
+/* 802B85D8 002B4238 2C 03 00 04 */ cmpwi r3, 4
+/* 802B85DC 002B423C 41 82 01 3C */ beq lbl_802B8718
+/* 802B85E0 002B4240 40 80 01 74 */ bge lbl_802B8754
+/* 802B85E4 002B4244 48 00 01 14 */ b lbl_802B86F8
+lbl_802B85E8:
+/* 802B85E8 002B4248 88 04 00 07 */ lbz r0, 7(r4)
+/* 802B85EC 002B424C 38 7D 0A 0C */ addi r3, r29, 0xa0c
+/* 802B85F0 002B4250 90 01 00 08 */ stw r0, 8(r1)
+/* 802B85F4 002B4254 88 04 00 08 */ lbz r0, 8(r4)
+/* 802B85F8 002B4258 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802B85FC 002B425C 88 04 00 09 */ lbz r0, 9(r4)
+/* 802B8600 002B4260 7C 00 07 74 */ extsb r0, r0
+/* 802B8604 002B4264 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802B8608 002B4268 88 84 00 00 */ lbz r4, 0(r4)
+/* 802B860C 002B426C 88 BC 00 01 */ lbz r5, 1(r28)
+/* 802B8610 002B4270 88 DC 00 02 */ lbz r6, 2(r28)
+/* 802B8614 002B4274 88 FC 00 03 */ lbz r7, 3(r28)
+/* 802B8618 002B4278 89 1C 00 04 */ lbz r8, 4(r28)
+/* 802B861C 002B427C 89 3C 00 05 */ lbz r9, 5(r28)
+/* 802B8620 002B4280 89 5C 00 06 */ lbz r10, 6(r28)
+/* 802B8624 002B4284 4C C6 31 82 */ crclr 6
+/* 802B8628 002B4288 48 00 0F 55 */ bl func_802B957C
+/* 802B862C 002B428C 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
+/* 802B8630 002B4290 88 1C 00 09 */ lbz r0, 9(r28)
+/* 802B8634 002B4294 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
+/* 802B8638 002B4298 88 7E 06 E7 */ lbz r3, 0x6e7(r30)
+/* 802B863C 002B429C 98 0D AE C0 */ stb r0, lbl_80640180-_SDA_BASE_(r13)
+/* 802B8640 002B42A0 28 03 00 01 */ cmplwi r3, 1
+/* 802B8644 002B42A4 41 82 00 20 */ beq lbl_802B8664
+/* 802B8648 002B42A8 2C 03 00 00 */ cmpwi r3, 0
+/* 802B864C 002B42AC 40 82 00 20 */ bne lbl_802B866C
+/* 802B8650 002B42B0 4B FB 61 0D */ bl OSDisableInterrupts
+/* 802B8654 002B42B4 8B BE 06 E5 */ lbz r29, 0x6e5(r30)
+/* 802B8658 002B42B8 4B FB 61 2D */ bl OSRestoreInterrupts
+/* 802B865C 002B42BC 28 1D 00 03 */ cmplwi r29, 3
+/* 802B8660 002B42C0 40 80 00 0C */ bge lbl_802B866C
+lbl_802B8664:
+/* 802B8664 002B42C4 38 00 12 C0 */ li r0, 0x12c0
+/* 802B8668 002B42C8 48 00 00 0C */ b lbl_802B8674
+lbl_802B866C:
+/* 802B866C 002B42CC 3C 60 00 01 */ lis r3, 0x00008000@ha
+/* 802B8670 002B42D0 38 03 80 00 */ addi r0, r3, 0x00008000@l
+lbl_802B8674:
+/* 802B8674 002B42D4 54 03 04 3E */ clrlwi r3, r0, 0x10
+/* 802B8678 002B42D8 48 00 E5 49 */ bl func_802C6BC0
+/* 802B867C 002B42DC 48 00 00 E4 */ b lbl_802B8760
+lbl_802B8680:
+/* 802B8680 002B42E0 38 7D 0A 50 */ addi r3, r29, 0xa50
+/* 802B8684 002B42E4 4C C6 31 82 */ crclr 6
+/* 802B8688 002B42E8 48 00 0E F5 */ bl func_802B957C
+/* 802B868C 002B42EC 48 00 00 D4 */ b lbl_802B8760
+lbl_802B8690:
+/* 802B8690 002B42F0 3F C0 80 54 */ lis r30, lbl_8053B090@ha
+/* 802B8694 002B42F4 38 A0 00 06 */ li r5, 6
+/* 802B8698 002B42F8 38 7E B0 90 */ addi r3, r30, lbl_8053B090@l
+/* 802B869C 002B42FC 4B D4 B9 65 */ bl memcpy
+/* 802B86A0 002B4300 3B FE B0 90 */ addi r31, r30, -20336
+/* 802B86A4 002B4304 38 9C 00 06 */ addi r4, r28, 6
+/* 802B86A8 002B4308 38 7F 00 06 */ addi r3, r31, 6
+/* 802B86AC 002B430C 38 A0 00 40 */ li r5, 0x40
+/* 802B86B0 002B4310 4B D4 B9 51 */ bl memcpy
+/* 802B86B4 002B4314 88 8D AE C1 */ lbz r4, lbl_80640181-_SDA_BASE_(r13)
+/* 802B86B8 002B4318 38 7D 0A 64 */ addi r3, r29, 0xa64
+/* 802B86BC 002B431C 80 BC 01 00 */ lwz r5, 0x100(r28)
+/* 802B86C0 002B4320 39 5F 00 06 */ addi r10, r31, 6
+/* 802B86C4 002B4324 38 04 00 01 */ addi r0, r4, 1
+/* 802B86C8 002B4328 90 BF 01 00 */ stw r5, 0x100(r31)
+/* 802B86CC 002B432C 98 0D AE C1 */ stb r0, lbl_80640181-_SDA_BASE_(r13)
+/* 802B86D0 002B4330 90 A1 00 08 */ stw r5, 8(r1)
+/* 802B86D4 002B4334 88 9E B0 90 */ lbz r4, -0x4f70(r30)
+/* 802B86D8 002B4338 88 BF 00 01 */ lbz r5, 1(r31)
+/* 802B86DC 002B433C 88 DF 00 02 */ lbz r6, 2(r31)
+/* 802B86E0 002B4340 88 FF 00 03 */ lbz r7, 3(r31)
+/* 802B86E4 002B4344 89 1F 00 04 */ lbz r8, 4(r31)
+/* 802B86E8 002B4348 89 3F 00 05 */ lbz r9, 5(r31)
+/* 802B86EC 002B434C 4C C6 31 82 */ crclr 6
+/* 802B86F0 002B4350 48 00 0E 8D */ bl func_802B957C
+/* 802B86F4 002B4354 48 00 00 6C */ b lbl_802B8760
+lbl_802B86F8:
+/* 802B86F8 002B4358 38 7D 0A A4 */ addi r3, r29, 0xaa4
+/* 802B86FC 002B435C 4C C6 31 82 */ crclr 6
+/* 802B8700 002B4360 48 00 0E 7D */ bl func_802B957C
+/* 802B8704 002B4364 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B8708 002B4368 38 00 00 04 */ li r0, 4
+/* 802B870C 002B436C 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B8710 002B4370 98 03 00 0C */ stb r0, 0xc(r3)
+/* 802B8714 002B4374 48 00 00 4C */ b lbl_802B8760
+lbl_802B8718:
+/* 802B8718 002B4378 38 7D 0A B8 */ addi r3, r29, 0xab8
+/* 802B871C 002B437C 4C C6 31 82 */ crclr 6
+/* 802B8720 002B4380 48 00 0E 5D */ bl func_802B957C
+/* 802B8724 002B4384 38 00 00 00 */ li r0, 0
+/* 802B8728 002B4388 3C 60 80 54 */ lis r3, lbl_8053B090@ha
+/* 802B872C 002B438C 98 0D AE C1 */ stb r0, lbl_80640181-_SDA_BASE_(r13)
+/* 802B8730 002B4390 38 63 B0 90 */ addi r3, r3, lbl_8053B090@l
+/* 802B8734 002B4394 38 80 00 00 */ li r4, 0
+/* 802B8738 002B4398 38 A0 01 08 */ li r5, 0x108
+/* 802B873C 002B439C 4B D4 B9 C9 */ bl memset
+/* 802B8740 002B43A0 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
+/* 802B8744 002B43A4 38 00 00 04 */ li r0, 4
+/* 802B8748 002B43A8 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
+/* 802B874C 002B43AC 98 03 00 0C */ stb r0, 0xc(r3)
+/* 802B8750 002B43B0 48 00 00 10 */ b lbl_802B8760
+lbl_802B8754:
+/* 802B8754 002B43B4 38 7D 0A C8 */ addi r3, r29, 0xac8
+/* 802B8758 002B43B8 4C C6 31 82 */ crclr 6
+/* 802B875C 002B43BC 48 00 0E 21 */ bl func_802B957C
+lbl_802B8760:
+/* 802B8760 002B43C0 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802B8764 002B43C4 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 802B8768 002B43C8 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 802B876C 002B43CC 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 802B8770 002B43D0 83 81 00 20 */ lwz r28, 0x20(r1)
+/* 802B8774 002B43D4 7C 08 03 A6 */ mtlr r0
+/* 802B8778 002B43D8 38 21 00 30 */ addi r1, r1, 0x30
+/* 802B877C 002B43DC 4E 80 00 20 */ blr
+
+WUDVendorSpecificCallback:
+/* 802B8780 002B43E0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B8784 002B43E4 7C 08 02 A6 */ mflr r0
+/* 802B8788 002B43E8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B878C 002B43EC 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802B8790 002B43F0 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
+/* 802B8794 002B43F4 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802B8798 002B43F8 3F C0 80 44 */ lis r30, lbl_8043E048@ha
+/* 802B879C 002B43FC 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
+/* 802B87A0 002B4400 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802B87A4 002B4404 7C 9D 23 78 */ mr r29, r4
+/* 802B87A8 002B4408 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802B87AC 002B440C 3B 9F A4 E0 */ addi r28, r31, lbl_8053A4E0@l
+/* 802B87B0 002B4410 88 04 00 00 */ lbz r0, 0(r4)
+/* 802B87B4 002B4414 2C 00 00 0A */ cmpwi r0, 0xa
+/* 802B87B8 002B4418 41 82 02 A0 */ beq lbl_802B8A58
+/* 802B87BC 002B441C 40 80 00 14 */ bge lbl_802B87D0
+/* 802B87C0 002B4420 2C 00 00 08 */ cmpwi r0, 8
+/* 802B87C4 002B4424 41 82 00 18 */ beq lbl_802B87DC
+/* 802B87C8 002B4428 40 80 01 10 */ bge lbl_802B88D8
+/* 802B87CC 002B442C 48 00 02 CC */ b lbl_802B8A98
+lbl_802B87D0:
+/* 802B87D0 002B4430 2C 00 00 10 */ cmpwi r0, 0x10
+/* 802B87D4 002B4434 41 82 02 A0 */ beq lbl_802B8A74
+/* 802B87D8 002B4438 48 00 02 C0 */ b lbl_802B8A98
+lbl_802B87DC:
+/* 802B87DC 002B443C 38 7E 0A F8 */ addi r3, r30, 0xaf8
+/* 802B87E0 002B4440 4C C6 31 82 */ crclr 6
+/* 802B87E4 002B4444 48 00 0D 99 */ bl func_802B957C
+/* 802B87E8 002B4448 38 7E 06 38 */ addi r3, r30, 0x638
+/* 802B87EC 002B444C 4C C6 31 82 */ crclr 6
+/* 802B87F0 002B4450 48 00 0D 8D */ bl func_802B957C
+/* 802B87F4 002B4454 4B FB 5F 69 */ bl OSDisableInterrupts
+/* 802B87F8 002B4458 83 BF A4 E0 */ lwz r29, -0x5b20(r31)
+/* 802B87FC 002B445C 7C 7F 1B 78 */ mr r31, r3
+/* 802B8800 002B4460 4B FB 5F 5D */ bl OSDisableInterrupts
+/* 802B8804 002B4464 88 1C 00 0C */ lbz r0, 0xc(r28)
+/* 802B8808 002B4468 2C 00 00 00 */ cmpwi r0, 0
+/* 802B880C 002B446C 40 82 00 34 */ bne lbl_802B8840
+/* 802B8810 002B4470 88 1C 00 0D */ lbz r0, 0xd(r28)
+/* 802B8814 002B4474 2C 00 00 00 */ cmpwi r0, 0
+/* 802B8818 002B4478 40 82 00 28 */ bne lbl_802B8840
+/* 802B881C 002B447C 88 1C 00 0F */ lbz r0, 0xf(r28)
+/* 802B8820 002B4480 28 00 00 04 */ cmplwi r0, 4
+/* 802B8824 002B4484 40 82 00 1C */ bne lbl_802B8840
+/* 802B8828 002B4488 88 1C 00 10 */ lbz r0, 0x10(r28)
+/* 802B882C 002B448C 28 00 00 04 */ cmplwi r0, 4
+/* 802B8830 002B4490 40 82 00 10 */ bne lbl_802B8840
+/* 802B8834 002B4494 4B FB 5F 51 */ bl OSRestoreInterrupts
+/* 802B8838 002B4498 38 80 00 00 */ li r4, 0
+/* 802B883C 002B449C 48 00 00 0C */ b lbl_802B8848
+lbl_802B8840:
+/* 802B8840 002B44A0 4B FB 5F 45 */ bl OSRestoreInterrupts
+/* 802B8844 002B44A4 38 80 00 01 */ li r4, 1
+lbl_802B8848:
+/* 802B8848 002B44A8 7C 04 00 D0 */ neg r0, r4
+/* 802B884C 002B44AC 7F E3 FB 78 */ mr r3, r31
+/* 802B8850 002B44B0 7C 00 23 78 */ or r0, r0, r4
+/* 802B8854 002B44B4 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 802B8858 002B44B8 7F E0 00 D0 */ neg r31, r0
+/* 802B885C 002B44BC 4B FB 5F 29 */ bl OSRestoreInterrupts
+/* 802B8860 002B44C0 2C 1D 00 00 */ cmpwi r29, 0
+/* 802B8864 002B44C4 41 82 00 1C */ beq lbl_802B8880
+/* 802B8868 002B44C8 7F AC EB 78 */ mr r12, r29
+/* 802B886C 002B44CC 7F E3 FB 78 */ mr r3, r31
+/* 802B8870 002B44D0 38 80 00 00 */ li r4, 0
+/* 802B8874 002B44D4 7D 89 03 A6 */ mtctr r12
+/* 802B8878 002B44D8 4E 80 04 21 */ bctrl
+/* 802B887C 002B44DC 48 00 02 1C */ b lbl_802B8A98
+lbl_802B8880:
+/* 802B8880 002B44E0 38 7E 04 1C */ addi r3, r30, 0x41c
+/* 802B8884 002B44E4 4C C6 31 82 */ crclr 6
+/* 802B8888 002B44E8 48 00 0C F5 */ bl func_802B957C
+/* 802B888C 002B44EC 38 60 00 00 */ li r3, 0
+/* 802B8890 002B44F0 38 80 00 03 */ li r4, 3
+/* 802B8894 002B44F4 38 A0 00 00 */ li r5, 0
+/* 802B8898 002B44F8 4B FF E2 45 */ bl StartSyncDevice
+/* 802B889C 002B44FC 7C 7F 1B 78 */ mr r31, r3
+/* 802B88A0 002B4500 4B FB 5E BD */ bl OSDisableInterrupts
+/* 802B88A4 002B4504 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B88A8 002B4508 83 C4 A4 E0 */ lwz r30, lbl_8053A4E0@l(r4)
+/* 802B88AC 002B450C 4B FB 5E D9 */ bl OSRestoreInterrupts
+/* 802B88B0 002B4510 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B88B4 002B4514 40 82 01 E4 */ bne lbl_802B8A98
+/* 802B88B8 002B4518 2C 1E 00 00 */ cmpwi r30, 0
+/* 802B88BC 002B451C 41 82 01 DC */ beq lbl_802B8A98
+/* 802B88C0 002B4520 7F CC F3 78 */ mr r12, r30
+/* 802B88C4 002B4524 38 60 FF FF */ li r3, -1
+/* 802B88C8 002B4528 38 80 00 00 */ li r4, 0
+/* 802B88CC 002B452C 7D 89 03 A6 */ mtctr r12
+/* 802B88D0 002B4530 4E 80 04 21 */ bctrl
+/* 802B88D4 002B4534 48 00 01 C4 */ b lbl_802B8A98
+lbl_802B88D8:
+/* 802B88D8 002B4538 38 7E 0B 10 */ addi r3, r30, 0xb10
+/* 802B88DC 002B453C 4C C6 31 82 */ crclr 6
+/* 802B88E0 002B4540 48 00 0C 9D */ bl func_802B957C
+/* 802B88E4 002B4544 38 7E 06 5C */ addi r3, r30, 0x65c
+/* 802B88E8 002B4548 4C C6 31 82 */ crclr 6
+/* 802B88EC 002B454C 48 00 0C 91 */ bl func_802B957C
+/* 802B88F0 002B4550 4B FB 5E 6D */ bl OSDisableInterrupts
+/* 802B88F4 002B4554 83 FC 00 08 */ lwz r31, 8(r28)
+/* 802B88F8 002B4558 7C 7D 1B 78 */ mr r29, r3
+/* 802B88FC 002B455C 4B FB 5E 61 */ bl OSDisableInterrupts
+/* 802B8900 002B4560 88 1C 00 0C */ lbz r0, 0xc(r28)
+/* 802B8904 002B4564 2C 00 00 00 */ cmpwi r0, 0
+/* 802B8908 002B4568 40 82 00 34 */ bne lbl_802B893C
+/* 802B890C 002B456C 88 1C 00 0D */ lbz r0, 0xd(r28)
+/* 802B8910 002B4570 2C 00 00 00 */ cmpwi r0, 0
+/* 802B8914 002B4574 40 82 00 28 */ bne lbl_802B893C
+/* 802B8918 002B4578 88 1C 00 0F */ lbz r0, 0xf(r28)
+/* 802B891C 002B457C 28 00 00 04 */ cmplwi r0, 4
+/* 802B8920 002B4580 40 82 00 1C */ bne lbl_802B893C
+/* 802B8924 002B4584 88 1C 00 10 */ lbz r0, 0x10(r28)
+/* 802B8928 002B4588 28 00 00 04 */ cmplwi r0, 4
+/* 802B892C 002B458C 40 82 00 10 */ bne lbl_802B893C
+/* 802B8930 002B4590 4B FB 5E 55 */ bl OSRestoreInterrupts
+/* 802B8934 002B4594 38 80 00 00 */ li r4, 0
+/* 802B8938 002B4598 48 00 00 0C */ b lbl_802B8944
+lbl_802B893C:
+/* 802B893C 002B459C 4B FB 5E 49 */ bl OSRestoreInterrupts
+/* 802B8940 002B45A0 38 80 00 01 */ li r4, 1
+lbl_802B8944:
+/* 802B8944 002B45A4 7C 04 00 D0 */ neg r0, r4
+/* 802B8948 002B45A8 7F A3 EB 78 */ mr r3, r29
+/* 802B894C 002B45AC 7C 00 23 78 */ or r0, r0, r4
+/* 802B8950 002B45B0 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 802B8954 002B45B4 7F A0 00 D0 */ neg r29, r0
+/* 802B8958 002B45B8 4B FB 5E 2D */ bl OSRestoreInterrupts
+/* 802B895C 002B45BC 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B8960 002B45C0 41 82 00 18 */ beq lbl_802B8978
+/* 802B8964 002B45C4 7F EC FB 78 */ mr r12, r31
+/* 802B8968 002B45C8 7F A3 EB 78 */ mr r3, r29
+/* 802B896C 002B45CC 7D 89 03 A6 */ mtctr r12
+/* 802B8970 002B45D0 4E 80 04 21 */ bctrl
+/* 802B8974 002B45D4 48 00 01 24 */ b lbl_802B8A98
+lbl_802B8978:
+/* 802B8978 002B45D8 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
+/* 802B897C 002B45DC 38 7E 04 7C */ addi r3, r30, 0x47c
+/* 802B8980 002B45E0 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
+/* 802B8984 002B45E4 4C C6 31 82 */ crclr 6
+/* 802B8988 002B45E8 48 00 0B F5 */ bl func_802B957C
+/* 802B898C 002B45EC 4B FB 5D D1 */ bl OSDisableInterrupts
+/* 802B8990 002B45F0 8B DD 07 08 */ lbz r30, 0x708(r29)
+/* 802B8994 002B45F4 7F DE 07 74 */ extsb r30, r30
+/* 802B8998 002B45F8 4B FB 5D ED */ bl OSRestoreInterrupts
+/* 802B899C 002B45FC 28 1E 00 03 */ cmplwi r30, 3
+/* 802B89A0 002B4600 40 82 00 F8 */ bne lbl_802B8A98
+/* 802B89A4 002B4604 4B FB 5D B9 */ bl OSDisableInterrupts
+/* 802B89A8 002B4608 88 1D 00 0C */ lbz r0, 0xc(r29)
+/* 802B89AC 002B460C 2C 00 00 00 */ cmpwi r0, 0
+/* 802B89B0 002B4610 40 82 00 34 */ bne lbl_802B89E4
+/* 802B89B4 002B4614 88 1D 00 0D */ lbz r0, 0xd(r29)
+/* 802B89B8 002B4618 2C 00 00 00 */ cmpwi r0, 0
+/* 802B89BC 002B461C 40 82 00 28 */ bne lbl_802B89E4
+/* 802B89C0 002B4620 88 1D 00 0F */ lbz r0, 0xf(r29)
+/* 802B89C4 002B4624 28 00 00 04 */ cmplwi r0, 4
+/* 802B89C8 002B4628 40 82 00 1C */ bne lbl_802B89E4
+/* 802B89CC 002B462C 88 1D 00 10 */ lbz r0, 0x10(r29)
+/* 802B89D0 002B4630 28 00 00 04 */ cmplwi r0, 4
+/* 802B89D4 002B4634 40 82 00 10 */ bne lbl_802B89E4
+/* 802B89D8 002B4638 4B FB 5D AD */ bl OSRestoreInterrupts
+/* 802B89DC 002B463C 38 00 00 00 */ li r0, 0
+/* 802B89E0 002B4640 48 00 00 0C */ b lbl_802B89EC
+lbl_802B89E4:
+/* 802B89E4 002B4644 4B FB 5D A1 */ bl OSRestoreInterrupts
+/* 802B89E8 002B4648 38 00 00 01 */ li r0, 1
+lbl_802B89EC:
+/* 802B89EC 002B464C 2C 00 00 00 */ cmpwi r0, 0
+/* 802B89F0 002B4650 40 82 00 A8 */ bne lbl_802B8A98
+/* 802B89F4 002B4654 4B FB 5D 69 */ bl OSDisableInterrupts
+/* 802B89F8 002B4658 38 00 00 01 */ li r0, 1
+/* 802B89FC 002B465C 7C 7E 1B 78 */ mr r30, r3
+/* 802B8A00 002B4660 98 1D 00 0D */ stb r0, 0xd(r29)
+/* 802B8A04 002B4664 38 7D 07 10 */ addi r3, r29, 0x710
+/* 802B8A08 002B4668 4B FB 0D 1D */ bl OSCreateAlarm
+/* 802B8A0C 002B466C 4B FB 9D AD */ bl OSGetTime
+/* 802B8A10 002B4670 3C A0 80 00 */ lis r5, 0x800000F8@ha
+/* 802B8A14 002B4674 3D 20 80 2B */ lis r9, DeleteAllHandler0@ha
+/* 802B8A18 002B4678 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
+/* 802B8A1C 002B467C 3C C0 10 62 */ lis r6, 0x10624DD3@ha
+/* 802B8A20 002B4680 7C 65 1B 78 */ mr r5, r3
+/* 802B8A24 002B4684 39 29 5D 40 */ addi r9, r9, DeleteAllHandler0@l
+/* 802B8A28 002B4688 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
+/* 802B8A2C 002B468C 54 00 F0 BE */ srwi r0, r0, 2
+/* 802B8A30 002B4690 7C 03 00 16 */ mulhwu r0, r3, r0
+/* 802B8A34 002B4694 7C 86 23 78 */ mr r6, r4
+/* 802B8A38 002B4698 38 7D 07 10 */ addi r3, r29, 0x710
+/* 802B8A3C 002B469C 38 E0 00 00 */ li r7, 0
+/* 802B8A40 002B46A0 54 00 D1 BE */ srwi r0, r0, 6
+/* 802B8A44 002B46A4 1D 00 00 14 */ mulli r8, r0, 0x14
+/* 802B8A48 002B46A8 4B FB 0F AD */ bl OSSetPeriodicAlarm
+/* 802B8A4C 002B46AC 7F C3 F3 78 */ mr r3, r30
+/* 802B8A50 002B46B0 4B FB 5D 35 */ bl OSRestoreInterrupts
+/* 802B8A54 002B46B4 48 00 00 44 */ b lbl_802B8A98
+lbl_802B8A58:
+/* 802B8A58 002B46B8 88 84 00 01 */ lbz r4, 1(r4)
+/* 802B8A5C 002B46BC 38 7E 0B 28 */ addi r3, r30, 0xb28
+/* 802B8A60 002B46C0 4C C6 31 82 */ crclr 6
+/* 802B8A64 002B46C4 48 00 0B 19 */ bl func_802B957C
+/* 802B8A68 002B46C8 88 1D 00 01 */ lbz r0, 1(r29)
+/* 802B8A6C 002B46CC 98 1C 07 09 */ stb r0, 0x709(r28)
+/* 802B8A70 002B46D0 48 00 00 28 */ b lbl_802B8A98
+lbl_802B8A74:
+/* 802B8A74 002B46D4 88 84 00 01 */ lbz r4, 1(r4)
+/* 802B8A78 002B46D8 38 7E 0B 4C */ addi r3, r30, 0xb4c
+/* 802B8A7C 002B46DC 4C C6 31 82 */ crclr 6
+/* 802B8A80 002B46E0 48 00 0A FD */ bl func_802B957C
+/* 802B8A84 002B46E4 38 BE 0B 74 */ addi r5, r30, 0xb74
+/* 802B8A88 002B46E8 38 6D 89 C0 */ addi r3, r13, lbl_8063DC80-_SDA_BASE_
+/* 802B8A8C 002B46EC 38 80 0F 25 */ li r4, 0xf25
+/* 802B8A90 002B46F0 4C C6 31 82 */ crclr 6
+/* 802B8A94 002B46F4 4B FB 2A 09 */ bl OSPanic
+lbl_802B8A98:
+/* 802B8A98 002B46F8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B8A9C 002B46FC 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802B8AA0 002B4700 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802B8AA4 002B4704 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802B8AA8 002B4708 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802B8AAC 002B470C 7C 08 03 A6 */ mtlr r0
+/* 802B8AB0 002B4710 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B8AB4 002B4714 4E 80 00 20 */ blr
+
+WUDDeviceStatusCallback:
+/* 802B8AB8 002B4718 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B8ABC 002B471C 7C 08 02 A6 */ mflr r0
+/* 802B8AC0 002B4720 3C 80 80 44 */ lis r4, lbl_8043EBD0@ha
+/* 802B8AC4 002B4724 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B8AC8 002B4728 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B8ACC 002B472C 7C 7F 1B 78 */ mr r31, r3
+/* 802B8AD0 002B4730 38 64 EB D0 */ addi r3, r4, lbl_8043EBD0@l
+/* 802B8AD4 002B4734 4C C6 31 82 */ crclr 6
+/* 802B8AD8 002B4738 48 00 0A A5 */ bl func_802B957C
+/* 802B8ADC 002B473C 28 1F 00 02 */ cmplwi r31, 2
+/* 802B8AE0 002B4740 40 82 00 14 */ bne lbl_802B8AF4
+/* 802B8AE4 002B4744 3C 60 80 44 */ lis r3, lbl_8043EBEC@ha
+/* 802B8AE8 002B4748 38 63 EB EC */ addi r3, r3, lbl_8043EBEC@l
+/* 802B8AEC 002B474C 4C C6 31 82 */ crclr 6
+/* 802B8AF0 002B4750 4B D4 EF D5 */ bl func_80007AC4
+lbl_802B8AF4:
+/* 802B8AF4 002B4754 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B8AF8 002B4758 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B8AFC 002B475C 7C 08 03 A6 */ mtlr r0
+/* 802B8B00 002B4760 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B8B04 002B4764 4E 80 00 20 */ blr
+
+WUDStoredLinkKeyCallback:
+/* 802B8B08 002B4768 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 802B8B0C 002B476C 7C 08 02 A6 */ mflr r0
+/* 802B8B10 002B4770 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802B8B14 002B4774 39 61 00 60 */ addi r11, r1, 0x60
+/* 802B8B18 002B4778 4B F0 E6 01 */ bl _savegpr_23
+/* 802B8B1C 002B477C 88 03 00 00 */ lbz r0, 0(r3)
+/* 802B8B20 002B4780 3F C0 80 44 */ lis r30, lbl_8043E048@ha
+/* 802B8B24 002B4784 3F 80 80 54 */ lis r28, lbl_8053A4E0@ha
+/* 802B8B28 002B4788 7C 7A 1B 78 */ mr r26, r3
+/* 802B8B2C 002B478C 2C 00 00 03 */ cmpwi r0, 3
+/* 802B8B30 002B4790 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
+/* 802B8B34 002B4794 3B 9C A4 E0 */ addi r28, r28, lbl_8053A4E0@l
+/* 802B8B38 002B4798 41 82 02 20 */ beq lbl_802B8D58
+/* 802B8B3C 002B479C 40 80 00 14 */ bge lbl_802B8B50
+/* 802B8B40 002B47A0 2C 00 00 01 */ cmpwi r0, 1
+/* 802B8B44 002B47A4 41 82 00 18 */ beq lbl_802B8B5C
+/* 802B8B48 002B47A8 40 80 01 E0 */ bge lbl_802B8D28
+/* 802B8B4C 002B47AC 48 00 02 7C */ b lbl_802B8DC8
+lbl_802B8B50:
+/* 802B8B50 002B47B0 2C 00 00 05 */ cmpwi r0, 5
+/* 802B8B54 002B47B4 40 80 02 74 */ bge lbl_802B8DC8
+/* 802B8B58 002B47B8 48 00 02 2C */ b lbl_802B8D84
+lbl_802B8B5C:
+/* 802B8B5C 002B47BC 38 7E 0B CC */ addi r3, r30, 0xbcc
+/* 802B8B60 002B47C0 4C C6 31 82 */ crclr 6
+/* 802B8B64 002B47C4 48 00 0A 19 */ bl func_802B957C
+/* 802B8B68 002B47C8 3B BA 00 02 */ addi r29, r26, 2
+/* 802B8B6C 002B47CC 3B 60 00 00 */ li r27, 0
+/* 802B8B70 002B47D0 3A E0 00 01 */ li r23, 1
+/* 802B8B74 002B47D4 3B 00 00 03 */ li r24, 3
+/* 802B8B78 002B47D8 3B 20 00 06 */ li r25, 6
+/* 802B8B7C 002B47DC 48 00 01 9C */ b lbl_802B8D18
+lbl_802B8B80:
+/* 802B8B80 002B47E0 7F A3 EB 78 */ mr r3, r29
+/* 802B8B84 002B47E4 4B FF EB E1 */ bl WUDiGetDevInfo
+/* 802B8B88 002B47E8 88 9D 00 00 */ lbz r4, 0(r29)
+/* 802B8B8C 002B47EC 7C 7F 1B 78 */ mr r31, r3
+/* 802B8B90 002B47F0 88 BD 00 01 */ lbz r5, 1(r29)
+/* 802B8B94 002B47F4 38 7E 0B EC */ addi r3, r30, 0xbec
+/* 802B8B98 002B47F8 88 DD 00 02 */ lbz r6, 2(r29)
+/* 802B8B9C 002B47FC 88 FD 00 03 */ lbz r7, 3(r29)
+/* 802B8BA0 002B4800 89 1D 00 04 */ lbz r8, 4(r29)
+/* 802B8BA4 002B4804 89 3D 00 05 */ lbz r9, 5(r29)
+/* 802B8BA8 002B4808 4C C6 31 82 */ crclr 6
+/* 802B8BAC 002B480C 48 00 09 D1 */ bl func_802B957C
+/* 802B8BB0 002B4810 88 1D 00 0D */ lbz r0, 0xd(r29)
+/* 802B8BB4 002B4814 38 7E 0C 18 */ addi r3, r30, 0xc18
+/* 802B8BB8 002B4818 90 01 00 08 */ stw r0, 8(r1)
+/* 802B8BBC 002B481C 88 1D 00 0E */ lbz r0, 0xe(r29)
+/* 802B8BC0 002B4820 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802B8BC4 002B4824 88 1D 00 0F */ lbz r0, 0xf(r29)
+/* 802B8BC8 002B4828 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802B8BCC 002B482C 88 1D 00 10 */ lbz r0, 0x10(r29)
+/* 802B8BD0 002B4830 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B8BD4 002B4834 88 1D 00 11 */ lbz r0, 0x11(r29)
+/* 802B8BD8 002B4838 90 01 00 18 */ stw r0, 0x18(r1)
+/* 802B8BDC 002B483C 88 1D 00 12 */ lbz r0, 0x12(r29)
+/* 802B8BE0 002B4840 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 802B8BE4 002B4844 88 1D 00 13 */ lbz r0, 0x13(r29)
+/* 802B8BE8 002B4848 90 01 00 20 */ stw r0, 0x20(r1)
+/* 802B8BEC 002B484C 88 1D 00 14 */ lbz r0, 0x14(r29)
+/* 802B8BF0 002B4850 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B8BF4 002B4854 88 1D 00 15 */ lbz r0, 0x15(r29)
+/* 802B8BF8 002B4858 90 01 00 28 */ stw r0, 0x28(r1)
+/* 802B8BFC 002B485C 88 9D 00 06 */ lbz r4, 6(r29)
+/* 802B8C00 002B4860 88 BD 00 07 */ lbz r5, 7(r29)
+/* 802B8C04 002B4864 88 DD 00 08 */ lbz r6, 8(r29)
+/* 802B8C08 002B4868 88 FD 00 09 */ lbz r7, 9(r29)
+/* 802B8C0C 002B486C 89 1D 00 0A */ lbz r8, 0xa(r29)
+/* 802B8C10 002B4870 89 3D 00 0B */ lbz r9, 0xb(r29)
+/* 802B8C14 002B4874 89 5D 00 0C */ lbz r10, 0xc(r29)
+/* 802B8C18 002B4878 4C C6 31 82 */ crclr 6
+/* 802B8C1C 002B487C 48 00 09 61 */ bl func_802B957C
+/* 802B8C20 002B4880 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B8C24 002B4884 40 82 00 88 */ bne lbl_802B8CAC
+/* 802B8C28 002B4888 38 7E 0C 74 */ addi r3, r30, 0xc74
+/* 802B8C2C 002B488C 4C C6 31 82 */ crclr 6
+/* 802B8C30 002B4890 48 00 09 4D */ bl func_802B957C
+/* 802B8C34 002B4894 4B FF EC 09 */ bl WUDiGetNewDevInfo
+/* 802B8C38 002B4898 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8C3C 002B489C 7C 7F 1B 78 */ mr r31, r3
+/* 802B8C40 002B48A0 40 82 00 38 */ bne lbl_802B8C78
+/* 802B8C44 002B48A4 7F 83 E3 78 */ mr r3, r28
+/* 802B8C48 002B48A8 3B 60 00 00 */ li r27, 0
+/* 802B8C4C 002B48AC 7F 29 03 A6 */ mtctr r25
+lbl_802B8C50:
+/* 802B8C50 002B48B0 88 03 04 FD */ lbz r0, 0x4fd(r3)
+/* 802B8C54 002B48B4 2C 00 00 00 */ cmpwi r0, 0
+/* 802B8C58 002B48B8 40 82 00 14 */ bne lbl_802B8C6C
+/* 802B8C5C 002B48BC 1C 1B 00 60 */ mulli r0, r27, 0x60
+/* 802B8C60 002B48C0 7C 7C 02 14 */ add r3, r28, r0
+/* 802B8C64 002B48C4 3B E3 04 A4 */ addi r31, r3, 0x4a4
+/* 802B8C68 002B48C8 48 00 00 10 */ b lbl_802B8C78
+lbl_802B8C6C:
+/* 802B8C6C 002B48CC 38 63 00 60 */ addi r3, r3, 0x60
+/* 802B8C70 002B48D0 3B 7B 00 01 */ addi r27, r27, 1
+/* 802B8C74 002B48D4 42 00 FF DC */ bdnz lbl_802B8C50
+lbl_802B8C78:
+/* 802B8C78 002B48D8 2C 1F 00 00 */ cmpwi r31, 0
+/* 802B8C7C 002B48DC 41 82 00 94 */ beq lbl_802B8D10
+/* 802B8C80 002B48E0 9A FF 00 5C */ stb r23, 0x5c(r31)
+/* 802B8C84 002B48E4 7F A4 EB 78 */ mr r4, r29
+/* 802B8C88 002B48E8 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B8C8C 002B48EC 38 A0 00 06 */ li r5, 6
+/* 802B8C90 002B48F0 9A FF 00 59 */ stb r23, 0x59(r31)
+/* 802B8C94 002B48F4 4B D4 B3 6D */ bl memcpy
+/* 802B8C98 002B48F8 38 7F 00 46 */ addi r3, r31, 0x46
+/* 802B8C9C 002B48FC 38 9D 00 06 */ addi r4, r29, 6
+/* 802B8CA0 002B4900 38 A0 00 10 */ li r5, 0x10
+/* 802B8CA4 002B4904 4B D4 B3 5D */ bl memcpy
+/* 802B8CA8 002B4908 48 00 00 68 */ b lbl_802B8D10
+lbl_802B8CAC:
+/* 802B8CAC 002B490C 7F A4 EB 78 */ mr r4, r29
+/* 802B8CB0 002B4910 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B8CB4 002B4914 38 A0 00 06 */ li r5, 6
+/* 802B8CB8 002B4918 4B D4 B3 49 */ bl memcpy
+/* 802B8CBC 002B491C 38 7F 00 46 */ addi r3, r31, 0x46
+/* 802B8CC0 002B4920 38 9D 00 06 */ addi r4, r29, 6
+/* 802B8CC4 002B4924 38 A0 00 10 */ li r5, 0x10
+/* 802B8CC8 002B4928 4B D4 B3 39 */ bl memcpy
+/* 802B8CCC 002B492C 88 1F 00 5C */ lbz r0, 0x5c(r31)
+/* 802B8CD0 002B4930 28 00 00 02 */ cmplwi r0, 2
+/* 802B8CD4 002B4934 40 82 00 08 */ bne lbl_802B8CDC
+/* 802B8CD8 002B4938 9B 1F 00 5C */ stb r24, 0x5c(r31)
+lbl_802B8CDC:
+/* 802B8CDC 002B493C 7F A4 EB 78 */ mr r4, r29
+/* 802B8CE0 002B4940 38 7C 06 FC */ addi r3, r28, 0x6fc
+/* 802B8CE4 002B4944 38 A0 00 06 */ li r5, 6
+/* 802B8CE8 002B4948 4B D4 B3 19 */ bl memcpy
+/* 802B8CEC 002B494C 88 9C 06 FC */ lbz r4, 0x6fc(r28)
+/* 802B8CF0 002B4950 38 7E 0C 98 */ addi r3, r30, 0xc98
+/* 802B8CF4 002B4954 88 BC 06 FD */ lbz r5, 0x6fd(r28)
+/* 802B8CF8 002B4958 88 DC 06 FE */ lbz r6, 0x6fe(r28)
+/* 802B8CFC 002B495C 88 FC 06 FF */ lbz r7, 0x6ff(r28)
+/* 802B8D00 002B4960 89 1C 07 00 */ lbz r8, 0x700(r28)
+/* 802B8D04 002B4964 89 3C 07 01 */ lbz r9, 0x701(r28)
+/* 802B8D08 002B4968 4C C6 31 82 */ crclr 6
+/* 802B8D0C 002B496C 48 00 08 71 */ bl func_802B957C
+lbl_802B8D10:
+/* 802B8D10 002B4970 3B BD 00 16 */ addi r29, r29, 0x16
+/* 802B8D14 002B4974 3B 7B 00 01 */ addi r27, r27, 1
+lbl_802B8D18:
+/* 802B8D18 002B4978 88 1A 00 01 */ lbz r0, 1(r26)
+/* 802B8D1C 002B497C 7C 1B 00 00 */ cmpw r27, r0
+/* 802B8D20 002B4980 41 80 FE 60 */ blt lbl_802B8B80
+/* 802B8D24 002B4984 48 00 00 B8 */ b lbl_802B8DDC
+lbl_802B8D28:
+/* 802B8D28 002B4988 38 7E 0C C0 */ addi r3, r30, 0xcc0
+/* 802B8D2C 002B498C 4C C6 31 82 */ crclr 6
+/* 802B8D30 002B4990 48 00 08 4D */ bl func_802B957C
+/* 802B8D34 002B4994 88 9A 00 01 */ lbz r4, 1(r26)
+/* 802B8D38 002B4998 38 7E 0C E4 */ addi r3, r30, 0xce4
+/* 802B8D3C 002B499C A0 BA 00 02 */ lhz r5, 2(r26)
+/* 802B8D40 002B49A0 A0 DA 00 04 */ lhz r6, 4(r26)
+/* 802B8D44 002B49A4 4C C6 31 82 */ crclr 6
+/* 802B8D48 002B49A8 48 00 08 35 */ bl func_802B957C
+/* 802B8D4C 002B49AC 38 00 00 00 */ li r0, 0
+/* 802B8D50 002B49B0 98 1C 00 0E */ stb r0, 0xe(r28)
+/* 802B8D54 002B49B4 48 00 00 88 */ b lbl_802B8DDC
+lbl_802B8D58:
+/* 802B8D58 002B49B8 38 7E 0D 10 */ addi r3, r30, 0xd10
+/* 802B8D5C 002B49BC 4C C6 31 82 */ crclr 6
+/* 802B8D60 002B49C0 48 00 08 1D */ bl func_802B957C
+/* 802B8D64 002B49C4 88 9A 00 01 */ lbz r4, 1(r26)
+/* 802B8D68 002B49C8 38 7E 0D 34 */ addi r3, r30, 0xd34
+/* 802B8D6C 002B49CC 88 BA 00 02 */ lbz r5, 2(r26)
+/* 802B8D70 002B49D0 4C C6 31 82 */ crclr 6
+/* 802B8D74 002B49D4 48 00 08 09 */ bl func_802B957C
+/* 802B8D78 002B49D8 38 00 00 00 */ li r0, 0
+/* 802B8D7C 002B49DC 98 1C 00 0E */ stb r0, 0xe(r28)
+/* 802B8D80 002B49E0 48 00 00 5C */ b lbl_802B8DDC
+lbl_802B8D84:
+/* 802B8D84 002B49E4 38 7E 0D 50 */ addi r3, r30, 0xd50
+/* 802B8D88 002B49E8 4C C6 31 82 */ crclr 6
+/* 802B8D8C 002B49EC 48 00 07 F1 */ bl func_802B957C
+/* 802B8D90 002B49F0 88 9A 00 01 */ lbz r4, 1(r26)
+/* 802B8D94 002B49F4 38 7E 0D 34 */ addi r3, r30, 0xd34
+/* 802B8D98 002B49F8 A0 BA 00 02 */ lhz r5, 2(r26)
+/* 802B8D9C 002B49FC 4C C6 31 82 */ crclr 6
+/* 802B8DA0 002B4A00 48 00 07 DD */ bl func_802B957C
+/* 802B8DA4 002B4A04 A0 1A 00 02 */ lhz r0, 2(r26)
+/* 802B8DA8 002B4A08 2C 00 00 00 */ cmpwi r0, 0
+/* 802B8DAC 002B4A0C 40 82 00 10 */ bne lbl_802B8DBC
+/* 802B8DB0 002B4A10 38 7E 0D 74 */ addi r3, r30, 0xd74
+/* 802B8DB4 002B4A14 4C C6 31 82 */ crclr 6
+/* 802B8DB8 002B4A18 48 00 07 C5 */ bl func_802B957C
+lbl_802B8DBC:
+/* 802B8DBC 002B4A1C 38 00 00 00 */ li r0, 0
+/* 802B8DC0 002B4A20 98 1C 00 0E */ stb r0, 0xe(r28)
+/* 802B8DC4 002B4A24 48 00 00 18 */ b lbl_802B8DDC
+lbl_802B8DC8:
+/* 802B8DC8 002B4A28 38 BE 0D 94 */ addi r5, r30, 0xd94
+/* 802B8DCC 002B4A2C 38 6D 89 C0 */ addi r3, r13, lbl_8063DC80-_SDA_BASE_
+/* 802B8DD0 002B4A30 38 80 0F BD */ li r4, 0xfbd
+/* 802B8DD4 002B4A34 4C C6 31 82 */ crclr 6
+/* 802B8DD8 002B4A38 4B FB 26 C5 */ bl OSPanic
+lbl_802B8DDC:
+/* 802B8DDC 002B4A3C 39 61 00 60 */ addi r11, r1, 0x60
+/* 802B8DE0 002B4A40 4B F0 E3 85 */ bl _restgpr_23
+/* 802B8DE4 002B4A44 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802B8DE8 002B4A48 7C 08 03 A6 */ mtlr r0
+/* 802B8DEC 002B4A4C 38 21 00 60 */ addi r1, r1, 0x60
+/* 802B8DF0 002B4A50 4E 80 00 20 */ blr
+
+WUDPowerManagerCallback:
+/* 802B8DF4 002B4A54 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802B8DF8 002B4A58 7C 08 02 A6 */ mflr r0
+/* 802B8DFC 002B4A5C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802B8E00 002B4A60 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B8E04 002B4A64 4B F0 E3 25 */ bl _savegpr_27
+/* 802B8E08 002B4A68 3F C0 80 44 */ lis r30, lbl_8043E048@ha
+/* 802B8E0C 002B4A6C 7C 7B 1B 78 */ mr r27, r3
+/* 802B8E10 002B4A70 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
+/* 802B8E14 002B4A74 7C 9C 23 78 */ mr r28, r4
+/* 802B8E18 002B4A78 7C DD 33 78 */ mr r29, r6
+/* 802B8E1C 002B4A7C 38 7E 0D A4 */ addi r3, r30, 0xda4
+/* 802B8E20 002B4A80 4C C6 31 82 */ crclr 6
+/* 802B8E24 002B4A84 48 00 07 59 */ bl func_802B957C
+/* 802B8E28 002B4A88 7F A4 EB 78 */ mr r4, r29
+/* 802B8E2C 002B4A8C 38 7E 0D C0 */ addi r3, r30, 0xdc0
+/* 802B8E30 002B4A90 4C C6 31 82 */ crclr 6
+/* 802B8E34 002B4A94 48 00 07 49 */ bl func_802B957C
+/* 802B8E38 002B4A98 7F 63 DB 78 */ mr r3, r27
+/* 802B8E3C 002B4A9C 4B FF E9 29 */ bl WUDiGetDevInfo
+/* 802B8E40 002B4AA0 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8E44 002B4AA4 7C 7D 1B 78 */ mr r29, r3
+/* 802B8E48 002B4AA8 40 82 00 28 */ bne lbl_802B8E70
+/* 802B8E4C 002B4AAC 3F E0 80 54 */ lis r31, lbl_8053B1C8@ha
+/* 802B8E50 002B4AB0 7F 64 DB 78 */ mr r4, r27
+/* 802B8E54 002B4AB4 3B FF B1 C8 */ addi r31, r31, lbl_8053B1C8@l
+/* 802B8E58 002B4AB8 38 A0 00 06 */ li r5, 6
+/* 802B8E5C 002B4ABC 38 7F 00 40 */ addi r3, r31, 0x40
+/* 802B8E60 002B4AC0 4B F1 15 39 */ bl memcmp
+/* 802B8E64 002B4AC4 2C 03 00 00 */ cmpwi r3, 0
+/* 802B8E68 002B4AC8 40 82 00 08 */ bne lbl_802B8E70
+/* 802B8E6C 002B4ACC 7F FD FB 78 */ mr r29, r31
+lbl_802B8E70:
+/* 802B8E70 002B4AD0 2C 1C 00 01 */ cmpwi r28, 1
+/* 802B8E74 002B4AD4 41 82 00 34 */ beq lbl_802B8EA8
+/* 802B8E78 002B4AD8 40 80 00 10 */ bge lbl_802B8E88
+/* 802B8E7C 002B4ADC 2C 1C 00 00 */ cmpwi r28, 0
+/* 802B8E80 002B4AE0 40 80 00 14 */ bge lbl_802B8E94
+/* 802B8E84 002B4AE4 48 00 00 24 */ b lbl_802B8EA8
+lbl_802B8E88:
+/* 802B8E88 002B4AE8 2C 1C 00 03 */ cmpwi r28, 3
+/* 802B8E8C 002B4AEC 40 80 00 1C */ bge lbl_802B8EA8
+/* 802B8E90 002B4AF0 48 00 00 10 */ b lbl_802B8EA0
+lbl_802B8E94:
+/* 802B8E94 002B4AF4 38 00 00 08 */ li r0, 8
+/* 802B8E98 002B4AF8 98 1D 00 59 */ stb r0, 0x59(r29)
+/* 802B8E9C 002B4AFC 48 00 00 0C */ b lbl_802B8EA8
+lbl_802B8EA0:
+/* 802B8EA0 002B4B00 38 00 00 09 */ li r0, 9
+/* 802B8EA4 002B4B04 98 1D 00 59 */ stb r0, 0x59(r29)
+lbl_802B8EA8:
+/* 802B8EA8 002B4B08 88 9D 00 40 */ lbz r4, 0x40(r29)
+/* 802B8EAC 002B4B0C 38 7E 0D D0 */ addi r3, r30, 0xdd0
+/* 802B8EB0 002B4B10 88 BD 00 41 */ lbz r5, 0x41(r29)
+/* 802B8EB4 002B4B14 88 DD 00 42 */ lbz r6, 0x42(r29)
+/* 802B8EB8 002B4B18 88 FD 00 43 */ lbz r7, 0x43(r29)
+/* 802B8EBC 002B4B1C 89 1D 00 44 */ lbz r8, 0x44(r29)
+/* 802B8EC0 002B4B20 89 3D 00 45 */ lbz r9, 0x45(r29)
+/* 802B8EC4 002B4B24 89 5D 00 59 */ lbz r10, 0x59(r29)
+/* 802B8EC8 002B4B28 4C C6 31 82 */ crclr 6
+/* 802B8ECC 002B4B2C 48 00 06 B1 */ bl func_802B957C
+/* 802B8ED0 002B4B30 39 61 00 20 */ addi r11, r1, 0x20
+/* 802B8ED4 002B4B34 4B F0 E2 A1 */ bl _restgpr_27
+/* 802B8ED8 002B4B38 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802B8EDC 002B4B3C 7C 08 03 A6 */ mtlr r0
+/* 802B8EE0 002B4B40 38 21 00 20 */ addi r1, r1, 0x20
+/* 802B8EE4 002B4B44 4E 80 00 20 */ blr
+
+.global _WUDGetDevAddr
+_WUDGetDevAddr:
+/* 802B8EE8 002B4B48 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B8EEC 002B4B4C 7C 08 02 A6 */ mflr r0
+/* 802B8EF0 002B4B50 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B8EF4 002B4B54 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B8EF8 002B4B58 7C 7F 1B 78 */ mr r31, r3
+/* 802B8EFC 002B4B5C 4B FB 58 61 */ bl OSDisableInterrupts
+/* 802B8F00 002B4B60 28 1F 00 10 */ cmplwi r31, 0x10
+/* 802B8F04 002B4B64 40 80 00 18 */ bge lbl_802B8F1C
+/* 802B8F08 002B4B68 3C 80 80 54 */ lis r4, lbl_8053B228@ha
+/* 802B8F0C 002B4B6C 57 E0 15 BA */ rlwinm r0, r31, 2, 0x16, 0x1d
+/* 802B8F10 002B4B70 38 84 B2 28 */ addi r4, r4, lbl_8053B228@l
+/* 802B8F14 002B4B74 7F E4 00 2E */ lwzx r31, r4, r0
+/* 802B8F18 002B4B78 48 00 00 08 */ b lbl_802B8F20
+lbl_802B8F1C:
+/* 802B8F1C 002B4B7C 3B E0 00 00 */ li r31, 0
+lbl_802B8F20:
+/* 802B8F20 002B4B80 4B FB 58 65 */ bl OSRestoreInterrupts
+/* 802B8F24 002B4B84 7F E3 FB 78 */ mr r3, r31
+/* 802B8F28 002B4B88 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B8F2C 002B4B8C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B8F30 002B4B90 7C 08 03 A6 */ mtlr r0
+/* 802B8F34 002B4B94 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B8F38 002B4B98 4E 80 00 20 */ blr
+
+.global _WUDGetQueuedSize
+_WUDGetQueuedSize:
+/* 802B8F3C 002B4B9C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B8F40 002B4BA0 7C 08 02 A6 */ mflr r0
+/* 802B8F44 002B4BA4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B8F48 002B4BA8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B8F4C 002B4BAC 7C 7F 1B 78 */ mr r31, r3
+/* 802B8F50 002B4BB0 4B FB 58 0D */ bl OSDisableInterrupts
+/* 802B8F54 002B4BB4 7F E0 07 75 */ extsb. r0, r31
+/* 802B8F58 002B4BB8 41 80 00 20 */ blt lbl_802B8F78
+/* 802B8F5C 002B4BBC 2C 00 00 10 */ cmpwi r0, 0x10
+/* 802B8F60 002B4BC0 40 80 00 18 */ bge lbl_802B8F78
+/* 802B8F64 002B4BC4 3C 80 80 54 */ lis r4, lbl_8053C280@ha
+/* 802B8F68 002B4BC8 54 00 08 3C */ slwi r0, r0, 1
+/* 802B8F6C 002B4BCC 38 84 C2 80 */ addi r4, r4, lbl_8053C280@l
+/* 802B8F70 002B4BD0 7F E4 02 2E */ lhzx r31, r4, r0
+/* 802B8F74 002B4BD4 48 00 00 08 */ b lbl_802B8F7C
+lbl_802B8F78:
+/* 802B8F78 002B4BD8 3B E0 00 00 */ li r31, 0
+lbl_802B8F7C:
+/* 802B8F7C 002B4BDC 4B FB 58 09 */ bl OSRestoreInterrupts
+/* 802B8F80 002B4BE0 7F E3 FB 78 */ mr r3, r31
+/* 802B8F84 002B4BE4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B8F88 002B4BE8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B8F8C 002B4BEC 7C 08 03 A6 */ mtlr r0
+/* 802B8F90 002B4BF0 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B8F94 002B4BF4 4E 80 00 20 */ blr
+
+.global _WUDGetNotAckedSize
+_WUDGetNotAckedSize:
+/* 802B8F98 002B4BF8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B8F9C 002B4BFC 7C 08 02 A6 */ mflr r0
+/* 802B8FA0 002B4C00 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B8FA4 002B4C04 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B8FA8 002B4C08 7C 7F 1B 78 */ mr r31, r3
+/* 802B8FAC 002B4C0C 4B FB 57 B1 */ bl OSDisableInterrupts
+/* 802B8FB0 002B4C10 7F E0 07 75 */ extsb. r0, r31
+/* 802B8FB4 002B4C14 41 80 00 20 */ blt lbl_802B8FD4
+/* 802B8FB8 002B4C18 2C 00 00 10 */ cmpwi r0, 0x10
+/* 802B8FBC 002B4C1C 40 80 00 18 */ bge lbl_802B8FD4
+/* 802B8FC0 002B4C20 3C 80 80 54 */ lis r4, lbl_8053C2A0@ha
+/* 802B8FC4 002B4C24 54 00 08 3C */ slwi r0, r0, 1
+/* 802B8FC8 002B4C28 38 84 C2 A0 */ addi r4, r4, lbl_8053C2A0@l
+/* 802B8FCC 002B4C2C 7F E4 02 2E */ lhzx r31, r4, r0
+/* 802B8FD0 002B4C30 48 00 00 08 */ b lbl_802B8FD8
+lbl_802B8FD4:
+/* 802B8FD4 002B4C34 3B E0 00 00 */ li r31, 0
+lbl_802B8FD8:
+/* 802B8FD8 002B4C38 4B FB 57 AD */ bl OSRestoreInterrupts
+/* 802B8FDC 002B4C3C 7F E3 FB 78 */ mr r3, r31
+/* 802B8FE0 002B4C40 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B8FE4 002B4C44 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B8FE8 002B4C48 7C 08 03 A6 */ mtlr r0
+/* 802B8FEC 002B4C4C 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B8FF0 002B4C50 4E 80 00 20 */ blr
+
+.global _WUDGetLinkNumber
+_WUDGetLinkNumber:
+/* 802B8FF4 002B4C54 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802B8FF8 002B4C58 7C 08 02 A6 */ mflr r0
+/* 802B8FFC 002B4C5C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802B9000 002B4C60 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802B9004 002B4C64 4B FB 57 59 */ bl OSDisableInterrupts
+/* 802B9008 002B4C68 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
+/* 802B900C 002B4C6C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
+/* 802B9010 002B4C70 8B E4 06 E5 */ lbz r31, 0x6e5(r4)
+/* 802B9014 002B4C74 4B FB 57 71 */ bl OSRestoreInterrupts
+/* 802B9018 002B4C78 7F E3 FB 78 */ mr r3, r31
+/* 802B901C 002B4C7C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802B9020 002B4C80 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802B9024 002B4C84 7C 08 03 A6 */ mtlr r0
+/* 802B9028 002B4C88 38 21 00 10 */ addi r1, r1, 0x10
+/* 802B902C 002B4C8C 4E 80 00 20 */ blr
|