tp/asm/exi/EXIBios.s

1869 lines
89 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 80342c0c
.global SetExiInterruptMask
SetExiInterruptMask:
/* 80342C0C 0033FB4C 7C 08 02 A6 */ mflr r0
/* 80342C10 0033FB50 90 01 00 04 */ stw r0, 4(r1)
/* 80342C14 0033FB54 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80342C18 0033FB58 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80342C1C 0033FB5C 3B E4 00 00 */ addi r31, r4, 0
/* 80342C20 0033FB60 3C 80 80 45 */ lis r4, lbl_8044C570@ha
/* 80342C24 0033FB64 38 84 C5 70 */ addi r4, r4, lbl_8044C570@l
/* 80342C28 0033FB68 38 84 00 80 */ addi r4, r4, 0x80
/* 80342C2C 0033FB6C 2C 03 00 01 */ cmpwi r3, 1
/* 80342C30 0033FB70 41 82 00 5C */ beq lbl_80342C8C
/* 80342C34 0033FB74 40 80 00 10 */ bge lbl_80342C44
/* 80342C38 0033FB78 2C 03 00 00 */ cmpwi r3, 0
/* 80342C3C 0033FB7C 40 80 00 14 */ bge lbl_80342C50
/* 80342C40 0033FB80 48 00 00 AC */ b lbl_80342CEC
lbl_80342C44:
/* 80342C44 0033FB84 2C 03 00 03 */ cmpwi r3, 3
/* 80342C48 0033FB88 40 80 00 A4 */ bge lbl_80342CEC
/* 80342C4C 0033FB8C 48 00 00 70 */ b lbl_80342CBC
lbl_80342C50:
/* 80342C50 0033FB90 80 1F 00 00 */ lwz r0, 0(r31)
/* 80342C54 0033FB94 28 00 00 00 */ cmplwi r0, 0
/* 80342C58 0033FB98 40 82 00 10 */ bne lbl_80342C68
/* 80342C5C 0033FB9C 80 04 00 00 */ lwz r0, 0(r4)
/* 80342C60 0033FBA0 28 00 00 00 */ cmplwi r0, 0
/* 80342C64 0033FBA4 41 82 00 10 */ beq lbl_80342C74
lbl_80342C68:
/* 80342C68 0033FBA8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80342C6C 0033FBAC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80342C70 0033FBB0 41 82 00 10 */ beq lbl_80342C80
lbl_80342C74:
/* 80342C74 0033FBB4 3C 60 00 41 */ lis r3, 0x41
/* 80342C78 0033FBB8 4B FF AE 45 */ bl __OSMaskInterrupts
/* 80342C7C 0033FBBC 48 00 00 70 */ b lbl_80342CEC
lbl_80342C80:
/* 80342C80 0033FBC0 3C 60 00 41 */ lis r3, 0x41
/* 80342C84 0033FBC4 4B FF AE C1 */ bl __OSUnmaskInterrupts
/* 80342C88 0033FBC8 48 00 00 64 */ b lbl_80342CEC
lbl_80342C8C:
/* 80342C8C 0033FBCC 80 1F 00 00 */ lwz r0, 0(r31)
/* 80342C90 0033FBD0 28 00 00 00 */ cmplwi r0, 0
/* 80342C94 0033FBD4 41 82 00 10 */ beq lbl_80342CA4
/* 80342C98 0033FBD8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80342C9C 0033FBDC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80342CA0 0033FBE0 41 82 00 10 */ beq lbl_80342CB0
lbl_80342CA4:
/* 80342CA4 0033FBE4 3C 60 00 08 */ lis r3, 8
/* 80342CA8 0033FBE8 4B FF AE 15 */ bl __OSMaskInterrupts
/* 80342CAC 0033FBEC 48 00 00 40 */ b lbl_80342CEC
lbl_80342CB0:
/* 80342CB0 0033FBF0 3C 60 00 08 */ lis r3, 8
/* 80342CB4 0033FBF4 4B FF AE 91 */ bl __OSUnmaskInterrupts
/* 80342CB8 0033FBF8 48 00 00 34 */ b lbl_80342CEC
lbl_80342CBC:
/* 80342CBC 0033FBFC 38 60 00 19 */ li r3, 0x19
/* 80342CC0 0033FC00 4B FF AA 9D */ bl __OSGetInterruptHandler
/* 80342CC4 0033FC04 28 03 00 00 */ cmplwi r3, 0
/* 80342CC8 0033FC08 41 82 00 10 */ beq lbl_80342CD8
/* 80342CCC 0033FC0C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80342CD0 0033FC10 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80342CD4 0033FC14 41 82 00 10 */ beq lbl_80342CE4
lbl_80342CD8:
/* 80342CD8 0033FC18 38 60 00 40 */ li r3, 0x40
/* 80342CDC 0033FC1C 4B FF AD E1 */ bl __OSMaskInterrupts
/* 80342CE0 0033FC20 48 00 00 0C */ b lbl_80342CEC
lbl_80342CE4:
/* 80342CE4 0033FC24 38 60 00 40 */ li r3, 0x40
/* 80342CE8 0033FC28 4B FF AE 5D */ bl __OSUnmaskInterrupts
lbl_80342CEC:
/* 80342CEC 0033FC2C 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80342CF0 0033FC30 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80342CF4 0033FC34 38 21 00 18 */ addi r1, r1, 0x18
/* 80342CF8 0033FC38 7C 08 03 A6 */ mtlr r0
/* 80342CFC 0033FC3C 4E 80 00 20 */ blr
.global EXIImm
EXIImm:
/* 80342D00 0033FC40 7C 08 02 A6 */ mflr r0
/* 80342D04 0033FC44 90 01 00 04 */ stw r0, 4(r1)
/* 80342D08 0033FC48 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80342D0C 0033FC4C BF 21 00 24 */ stmw r25, 0x24(r1)
/* 80342D10 0033FC50 3B 43 00 00 */ addi r26, r3, 0
/* 80342D14 0033FC54 3B 64 00 00 */ addi r27, r4, 0
/* 80342D18 0033FC58 3B 85 00 00 */ addi r28, r5, 0
/* 80342D1C 0033FC5C 3B A6 00 00 */ addi r29, r6, 0
/* 80342D20 0033FC60 3B 27 00 00 */ addi r25, r7, 0
/* 80342D24 0033FC64 54 64 30 32 */ slwi r4, r3, 6
/* 80342D28 0033FC68 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80342D2C 0033FC6C 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80342D30 0033FC70 7F E0 22 14 */ add r31, r0, r4
/* 80342D34 0033FC74 4B FF A9 C1 */ bl __RAS_OSDisableInterrupts_begin
/* 80342D38 0033FC78 7C 7E 1B 78 */ mr r30, r3
/* 80342D3C 0033FC7C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80342D40 0033FC80 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80342D44 0033FC84 40 82 00 10 */ bne lbl_80342D54
/* 80342D48 0033FC88 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80342D4C 0033FC8C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80342D50 0033FC90 40 82 00 14 */ bne lbl_80342D64
lbl_80342D54:
/* 80342D54 0033FC94 7F C3 F3 78 */ mr r3, r30
/* 80342D58 0033FC98 4B FF A9 C5 */ bl OSRestoreInterrupts
/* 80342D5C 0033FC9C 38 60 00 00 */ li r3, 0
/* 80342D60 0033FCA0 48 00 01 E8 */ b lbl_80342F48
lbl_80342D64:
/* 80342D64 0033FCA4 93 3F 00 04 */ stw r25, 4(r31)
/* 80342D68 0033FCA8 80 1F 00 04 */ lwz r0, 4(r31)
/* 80342D6C 0033FCAC 28 00 00 00 */ cmplwi r0, 0
/* 80342D70 0033FCB0 41 82 00 28 */ beq lbl_80342D98
/* 80342D74 0033FCB4 38 7A 00 00 */ addi r3, r26, 0
/* 80342D78 0033FCB8 38 80 00 00 */ li r4, 0
/* 80342D7C 0033FCBC 38 A0 00 01 */ li r5, 1
/* 80342D80 0033FCC0 38 C0 00 00 */ li r6, 0
/* 80342D84 0033FCC4 48 00 05 B1 */ bl EXIClearInterrupts
/* 80342D88 0033FCC8 3C 60 00 20 */ lis r3, 0x20
/* 80342D8C 0033FCCC 1C 1A 00 03 */ mulli r0, r26, 3
/* 80342D90 0033FCD0 7C 63 04 30 */ srw r3, r3, r0
/* 80342D94 0033FCD4 4B FF AD B1 */ bl __OSUnmaskInterrupts
lbl_80342D98:
/* 80342D98 0033FCD8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80342D9C 0033FCDC 60 00 00 02 */ ori r0, r0, 2
/* 80342DA0 0033FCE0 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80342DA4 0033FCE4 28 1D 00 00 */ cmplwi r29, 0
/* 80342DA8 0033FCE8 41 82 01 44 */ beq lbl_80342EEC
/* 80342DAC 0033FCEC 38 00 00 00 */ li r0, 0
/* 80342DB0 0033FCF0 38 80 00 00 */ li r4, 0
/* 80342DB4 0033FCF4 7C 04 E0 00 */ cmpw r4, r28
/* 80342DB8 0033FCF8 40 80 01 20 */ bge lbl_80342ED8
/* 80342DBC 0033FCFC 38 DC FF F8 */ addi r6, r28, -8
/* 80342DC0 0033FD00 2C 1C 00 08 */ cmpwi r28, 8
/* 80342DC4 0033FD04 40 81 01 7C */ ble lbl_80342F40
/* 80342DC8 0033FD08 38 7B 00 00 */ addi r3, r27, 0
/* 80342DCC 0033FD0C 38 A6 00 07 */ addi r5, r6, 7
/* 80342DD0 0033FD10 54 A5 E8 FE */ srwi r5, r5, 3
/* 80342DD4 0033FD14 7C A9 03 A6 */ mtctr r5
/* 80342DD8 0033FD18 2C 06 00 00 */ cmpwi r6, 0
/* 80342DDC 0033FD1C 40 81 01 64 */ ble lbl_80342F40
lbl_80342DE0:
/* 80342DE0 0033FD20 88 C3 00 00 */ lbz r6, 0(r3)
/* 80342DE4 0033FD24 20 A4 00 03 */ subfic r5, r4, 3
/* 80342DE8 0033FD28 54 A5 18 38 */ slwi r5, r5, 3
/* 80342DEC 0033FD2C 7C C5 28 30 */ slw r5, r6, r5
/* 80342DF0 0033FD30 7C 00 2B 78 */ or r0, r0, r5
/* 80342DF4 0033FD34 88 C3 00 01 */ lbz r6, 1(r3)
/* 80342DF8 0033FD38 38 A4 00 01 */ addi r5, r4, 1
/* 80342DFC 0033FD3C 20 A5 00 03 */ subfic r5, r5, 3
/* 80342E00 0033FD40 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E04 0033FD44 7C C5 28 30 */ slw r5, r6, r5
/* 80342E08 0033FD48 7C 00 2B 78 */ or r0, r0, r5
/* 80342E0C 0033FD4C 88 C3 00 02 */ lbz r6, 2(r3)
/* 80342E10 0033FD50 38 A4 00 02 */ addi r5, r4, 2
/* 80342E14 0033FD54 20 A5 00 03 */ subfic r5, r5, 3
/* 80342E18 0033FD58 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E1C 0033FD5C 7C C5 28 30 */ slw r5, r6, r5
/* 80342E20 0033FD60 7C 00 2B 78 */ or r0, r0, r5
/* 80342E24 0033FD64 88 C3 00 03 */ lbz r6, 3(r3)
/* 80342E28 0033FD68 7C A4 00 D0 */ neg r5, r4
/* 80342E2C 0033FD6C 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E30 0033FD70 7C C5 28 30 */ slw r5, r6, r5
/* 80342E34 0033FD74 7C 00 2B 78 */ or r0, r0, r5
/* 80342E38 0033FD78 88 C3 00 04 */ lbz r6, 4(r3)
/* 80342E3C 0033FD7C 38 A4 00 04 */ addi r5, r4, 4
/* 80342E40 0033FD80 20 A5 00 03 */ subfic r5, r5, 3
/* 80342E44 0033FD84 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E48 0033FD88 7C C5 28 30 */ slw r5, r6, r5
/* 80342E4C 0033FD8C 7C 00 2B 78 */ or r0, r0, r5
/* 80342E50 0033FD90 88 C3 00 05 */ lbz r6, 5(r3)
/* 80342E54 0033FD94 38 A4 00 05 */ addi r5, r4, 5
/* 80342E58 0033FD98 20 A5 00 03 */ subfic r5, r5, 3
/* 80342E5C 0033FD9C 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E60 0033FDA0 7C C5 28 30 */ slw r5, r6, r5
/* 80342E64 0033FDA4 7C 00 2B 78 */ or r0, r0, r5
/* 80342E68 0033FDA8 88 C3 00 06 */ lbz r6, 6(r3)
/* 80342E6C 0033FDAC 38 A4 00 06 */ addi r5, r4, 6
/* 80342E70 0033FDB0 20 A5 00 03 */ subfic r5, r5, 3
/* 80342E74 0033FDB4 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E78 0033FDB8 7C C5 28 30 */ slw r5, r6, r5
/* 80342E7C 0033FDBC 7C 00 2B 78 */ or r0, r0, r5
/* 80342E80 0033FDC0 88 C3 00 07 */ lbz r6, 7(r3)
/* 80342E84 0033FDC4 38 A4 00 07 */ addi r5, r4, 7
/* 80342E88 0033FDC8 20 A5 00 03 */ subfic r5, r5, 3
/* 80342E8C 0033FDCC 54 A5 18 38 */ slwi r5, r5, 3
/* 80342E90 0033FDD0 7C C5 28 30 */ slw r5, r6, r5
/* 80342E94 0033FDD4 7C 00 2B 78 */ or r0, r0, r5
/* 80342E98 0033FDD8 38 63 00 08 */ addi r3, r3, 8
/* 80342E9C 0033FDDC 38 84 00 08 */ addi r4, r4, 8
/* 80342EA0 0033FDE0 42 00 FF 40 */ bdnz lbl_80342DE0
/* 80342EA4 0033FDE4 48 00 00 9C */ b lbl_80342F40
lbl_80342EA8:
/* 80342EA8 0033FDE8 7C 64 E0 50 */ subf r3, r4, r28
/* 80342EAC 0033FDEC 7C 69 03 A6 */ mtctr r3
/* 80342EB0 0033FDF0 7C 04 E0 00 */ cmpw r4, r28
/* 80342EB4 0033FDF4 40 80 00 24 */ bge lbl_80342ED8
lbl_80342EB8:
/* 80342EB8 0033FDF8 88 A6 00 00 */ lbz r5, 0(r6)
/* 80342EBC 0033FDFC 20 64 00 03 */ subfic r3, r4, 3
/* 80342EC0 0033FE00 54 63 18 38 */ slwi r3, r3, 3
/* 80342EC4 0033FE04 7C A3 18 30 */ slw r3, r5, r3
/* 80342EC8 0033FE08 7C 00 1B 78 */ or r0, r0, r3
/* 80342ECC 0033FE0C 38 C6 00 01 */ addi r6, r6, 1
/* 80342ED0 0033FE10 38 84 00 01 */ addi r4, r4, 1
/* 80342ED4 0033FE14 42 00 FF E4 */ bdnz lbl_80342EB8
lbl_80342ED8:
/* 80342ED8 0033FE18 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80342EDC 0033FE1C 38 83 68 00 */ addi r4, r3, 0xCC006800@l
/* 80342EE0 0033FE20 1C 7A 00 14 */ mulli r3, r26, 0x14
/* 80342EE4 0033FE24 7C 64 1A 14 */ add r3, r4, r3
/* 80342EE8 0033FE28 90 03 00 10 */ stw r0, 0x10(r3)
lbl_80342EEC:
/* 80342EEC 0033FE2C 93 7F 00 14 */ stw r27, 0x14(r31)
/* 80342EF0 0033FE30 28 1D 00 01 */ cmplwi r29, 1
/* 80342EF4 0033FE34 41 82 00 0C */ beq lbl_80342F00
/* 80342EF8 0033FE38 7F 80 E3 78 */ mr r0, r28
/* 80342EFC 0033FE3C 48 00 00 08 */ b lbl_80342F04
lbl_80342F00:
/* 80342F00 0033FE40 38 00 00 00 */ li r0, 0
lbl_80342F04:
/* 80342F04 0033FE44 90 1F 00 10 */ stw r0, 0x10(r31)
/* 80342F08 0033FE48 57 A0 10 3A */ slwi r0, r29, 2
/* 80342F0C 0033FE4C 60 03 00 01 */ ori r3, r0, 1
/* 80342F10 0033FE50 38 1C FF FF */ addi r0, r28, -1
/* 80342F14 0033FE54 54 00 20 36 */ slwi r0, r0, 4
/* 80342F18 0033FE58 7C 64 03 78 */ or r4, r3, r0
/* 80342F1C 0033FE5C 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80342F20 0033FE60 38 63 68 00 */ addi r3, r3, 0xCC006800@l
/* 80342F24 0033FE64 1C 1A 00 14 */ mulli r0, r26, 0x14
/* 80342F28 0033FE68 7C 63 02 14 */ add r3, r3, r0
/* 80342F2C 0033FE6C 90 83 00 0C */ stw r4, 0xc(r3)
/* 80342F30 0033FE70 7F C3 F3 78 */ mr r3, r30
/* 80342F34 0033FE74 4B FF A7 E9 */ bl OSRestoreInterrupts
/* 80342F38 0033FE78 38 60 00 01 */ li r3, 1
/* 80342F3C 0033FE7C 48 00 00 0C */ b lbl_80342F48
lbl_80342F40:
/* 80342F40 0033FE80 7C DB 22 14 */ add r6, r27, r4
/* 80342F44 0033FE84 4B FF FF 64 */ b lbl_80342EA8
lbl_80342F48:
/* 80342F48 0033FE88 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80342F4C 0033FE8C BB 21 00 24 */ lmw r25, 0x24(r1)
/* 80342F50 0033FE90 38 21 00 40 */ addi r1, r1, 0x40
/* 80342F54 0033FE94 7C 08 03 A6 */ mtlr r0
/* 80342F58 0033FE98 4E 80 00 20 */ blr
.global EXIImmEx
EXIImmEx:
/* 80342F5C 0033FE9C 7C 08 02 A6 */ mflr r0
/* 80342F60 0033FEA0 90 01 00 04 */ stw r0, 4(r1)
/* 80342F64 0033FEA4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80342F68 0033FEA8 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 80342F6C 0033FEAC 3B 63 00 00 */ addi r27, r3, 0
/* 80342F70 0033FEB0 3B 84 00 00 */ addi r28, r4, 0
/* 80342F74 0033FEB4 3B A5 00 00 */ addi r29, r5, 0
/* 80342F78 0033FEB8 3B C6 00 00 */ addi r30, r6, 0
/* 80342F7C 0033FEBC 48 00 00 60 */ b lbl_80342FDC
lbl_80342F80:
/* 80342F80 0033FEC0 2C 1D 00 04 */ cmpwi r29, 4
/* 80342F84 0033FEC4 40 80 00 0C */ bge lbl_80342F90
/* 80342F88 0033FEC8 7F BF EB 78 */ mr r31, r29
/* 80342F8C 0033FECC 48 00 00 08 */ b lbl_80342F94
lbl_80342F90:
/* 80342F90 0033FED0 3B E0 00 04 */ li r31, 4
lbl_80342F94:
/* 80342F94 0033FED4 38 BF 00 00 */ addi r5, r31, 0
/* 80342F98 0033FED8 38 7B 00 00 */ addi r3, r27, 0
/* 80342F9C 0033FEDC 38 9C 00 00 */ addi r4, r28, 0
/* 80342FA0 0033FEE0 38 DE 00 00 */ addi r6, r30, 0
/* 80342FA4 0033FEE4 38 E0 00 00 */ li r7, 0
/* 80342FA8 0033FEE8 4B FF FD 59 */ bl EXIImm
/* 80342FAC 0033FEEC 2C 03 00 00 */ cmpwi r3, 0
/* 80342FB0 0033FEF0 40 82 00 0C */ bne lbl_80342FBC
/* 80342FB4 0033FEF4 38 60 00 00 */ li r3, 0
/* 80342FB8 0033FEF8 48 00 00 30 */ b lbl_80342FE8
lbl_80342FBC:
/* 80342FBC 0033FEFC 7F 63 DB 78 */ mr r3, r27
/* 80342FC0 0033FF00 48 00 01 29 */ bl EXISync
/* 80342FC4 0033FF04 2C 03 00 00 */ cmpwi r3, 0
/* 80342FC8 0033FF08 40 82 00 0C */ bne lbl_80342FD4
/* 80342FCC 0033FF0C 38 60 00 00 */ li r3, 0
/* 80342FD0 0033FF10 48 00 00 18 */ b lbl_80342FE8
lbl_80342FD4:
/* 80342FD4 0033FF14 7F 9C FA 14 */ add r28, r28, r31
/* 80342FD8 0033FF18 7F BF E8 50 */ subf r29, r31, r29
lbl_80342FDC:
/* 80342FDC 0033FF1C 2C 1D 00 00 */ cmpwi r29, 0
/* 80342FE0 0033FF20 40 82 FF A0 */ bne lbl_80342F80
/* 80342FE4 0033FF24 38 60 00 01 */ li r3, 1
lbl_80342FE8:
/* 80342FE8 0033FF28 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80342FEC 0033FF2C BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 80342FF0 0033FF30 38 21 00 30 */ addi r1, r1, 0x30
/* 80342FF4 0033FF34 7C 08 03 A6 */ mtlr r0
/* 80342FF8 0033FF38 4E 80 00 20 */ blr
.global EXIDma
EXIDma:
/* 80342FFC 0033FF3C 7C 08 02 A6 */ mflr r0
/* 80343000 0033FF40 90 01 00 04 */ stw r0, 4(r1)
/* 80343004 0033FF44 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80343008 0033FF48 BF 21 00 24 */ stmw r25, 0x24(r1)
/* 8034300C 0033FF4C 3B 63 00 00 */ addi r27, r3, 0
/* 80343010 0033FF50 3B 84 00 00 */ addi r28, r4, 0
/* 80343014 0033FF54 3B A5 00 00 */ addi r29, r5, 0
/* 80343018 0033FF58 3B C6 00 00 */ addi r30, r6, 0
/* 8034301C 0033FF5C 3B 27 00 00 */ addi r25, r7, 0
/* 80343020 0033FF60 54 64 30 32 */ slwi r4, r3, 6
/* 80343024 0033FF64 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80343028 0033FF68 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 8034302C 0033FF6C 7F 40 22 14 */ add r26, r0, r4
/* 80343030 0033FF70 4B FF A6 C5 */ bl __RAS_OSDisableInterrupts_begin
/* 80343034 0033FF74 7C 7F 1B 78 */ mr r31, r3
/* 80343038 0033FF78 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 8034303C 0033FF7C 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80343040 0033FF80 40 82 00 10 */ bne lbl_80343050
/* 80343044 0033FF84 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 80343048 0033FF88 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8034304C 0033FF8C 40 82 00 14 */ bne lbl_80343060
lbl_80343050:
/* 80343050 0033FF90 7F E3 FB 78 */ mr r3, r31
/* 80343054 0033FF94 4B FF A6 C9 */ bl OSRestoreInterrupts
/* 80343058 0033FF98 38 60 00 00 */ li r3, 0
/* 8034305C 0033FF9C 48 00 00 78 */ b lbl_803430D4
lbl_80343060:
/* 80343060 0033FFA0 93 3A 00 04 */ stw r25, 4(r26)
/* 80343064 0033FFA4 80 1A 00 04 */ lwz r0, 4(r26)
/* 80343068 0033FFA8 28 00 00 00 */ cmplwi r0, 0
/* 8034306C 0033FFAC 41 82 00 28 */ beq lbl_80343094
/* 80343070 0033FFB0 38 7B 00 00 */ addi r3, r27, 0
/* 80343074 0033FFB4 38 80 00 00 */ li r4, 0
/* 80343078 0033FFB8 38 A0 00 01 */ li r5, 1
/* 8034307C 0033FFBC 38 C0 00 00 */ li r6, 0
/* 80343080 0033FFC0 48 00 02 B5 */ bl EXIClearInterrupts
/* 80343084 0033FFC4 3C 60 00 20 */ lis r3, 0x20
/* 80343088 0033FFC8 1C 1B 00 03 */ mulli r0, r27, 3
/* 8034308C 0033FFCC 7C 63 04 30 */ srw r3, r3, r0
/* 80343090 0033FFD0 4B FF AA B5 */ bl __OSUnmaskInterrupts
lbl_80343094:
/* 80343094 0033FFD4 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 80343098 0033FFD8 60 00 00 01 */ ori r0, r0, 1
/* 8034309C 0033FFDC 90 1A 00 0C */ stw r0, 0xc(r26)
/* 803430A0 0033FFE0 57 84 01 B4 */ rlwinm r4, r28, 0, 6, 0x1a
/* 803430A4 0033FFE4 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 803430A8 0033FFE8 38 03 68 00 */ addi r0, r3, 0xCC006800@l
/* 803430AC 0033FFEC 1C 7B 00 14 */ mulli r3, r27, 0x14
/* 803430B0 0033FFF0 7C 60 1A 14 */ add r3, r0, r3
/* 803430B4 0033FFF4 90 83 00 04 */ stw r4, 4(r3)
/* 803430B8 0033FFF8 93 A3 00 08 */ stw r29, 8(r3)
/* 803430BC 0033FFFC 57 C0 10 3A */ slwi r0, r30, 2
/* 803430C0 00340000 60 00 00 03 */ ori r0, r0, 3
/* 803430C4 00340004 90 03 00 0C */ stw r0, 0xc(r3)
/* 803430C8 00340008 7F E3 FB 78 */ mr r3, r31
/* 803430CC 0034000C 4B FF A6 51 */ bl OSRestoreInterrupts
/* 803430D0 00340010 38 60 00 01 */ li r3, 1
lbl_803430D4:
/* 803430D4 00340014 80 01 00 44 */ lwz r0, 0x44(r1)
/* 803430D8 00340018 BB 21 00 24 */ lmw r25, 0x24(r1)
/* 803430DC 0034001C 38 21 00 40 */ addi r1, r1, 0x40
/* 803430E0 00340020 7C 08 03 A6 */ mtlr r0
/* 803430E4 00340024 4E 80 00 20 */ blr
.global EXISync
EXISync:
/* 803430E8 00340028 7C 08 02 A6 */ mflr r0
/* 803430EC 0034002C 90 01 00 04 */ stw r0, 4(r1)
/* 803430F0 00340030 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 803430F4 00340034 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 803430F8 00340038 54 65 30 32 */ slwi r5, r3, 6
/* 803430FC 0034003C 3C 80 80 45 */ lis r4, lbl_8044C570@ha
/* 80343100 00340040 38 04 C5 70 */ addi r0, r4, lbl_8044C570@l
/* 80343104 00340044 7F E0 2A 14 */ add r31, r0, r5
/* 80343108 00340048 3B 80 00 00 */ li r28, 0
/* 8034310C 0034004C 1F C3 00 14 */ mulli r30, r3, 0x14
/* 80343110 00340050 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80343114 00340054 3B A3 68 00 */ addi r29, r3, 0xCC006800@l
/* 80343118 00340058 7F BD F2 14 */ add r29, r29, r30
/* 8034311C 0034005C 48 00 01 F4 */ b lbl_80343310
lbl_80343120:
/* 80343120 00340060 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80343124 00340064 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80343128 00340068 40 82 01 E8 */ bne lbl_80343310
/* 8034312C 0034006C 4B FF A5 C9 */ bl __RAS_OSDisableInterrupts_begin
/* 80343130 00340070 7C 7B 1B 78 */ mr r27, r3
/* 80343134 00340074 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343138 00340078 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8034313C 0034007C 41 82 01 C8 */ beq lbl_80343304
/* 80343140 00340080 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343144 00340084 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80343148 00340088 41 82 01 34 */ beq lbl_8034327C
/* 8034314C 0034008C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343150 00340090 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80343154 00340094 41 82 01 1C */ beq lbl_80343270
/* 80343158 00340098 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 8034315C 0034009C 2C 03 00 00 */ cmpwi r3, 0
/* 80343160 003400A0 41 82 01 10 */ beq lbl_80343270
/* 80343164 003400A4 80 BF 00 14 */ lwz r5, 0x14(r31)
/* 80343168 003400A8 3C 80 CC 00 */ lis r4, 0xCC006800@ha
/* 8034316C 003400AC 38 04 68 00 */ addi r0, r4, 0xCC006800@l
/* 80343170 003400B0 7C 80 F2 14 */ add r4, r0, r30
/* 80343174 003400B4 80 04 00 10 */ lwz r0, 0x10(r4)
/* 80343178 003400B8 38 80 00 00 */ li r4, 0
/* 8034317C 003400BC 40 81 00 F4 */ ble lbl_80343270
/* 80343180 003400C0 38 E3 FF F8 */ addi r7, r3, -8
/* 80343184 003400C4 2C 03 00 08 */ cmpwi r3, 8
/* 80343188 003400C8 40 81 00 BC */ ble lbl_80343244
/* 8034318C 003400CC 38 C7 00 07 */ addi r6, r7, 7
/* 80343190 003400D0 54 C6 E8 FE */ srwi r6, r6, 3
/* 80343194 003400D4 7C C9 03 A6 */ mtctr r6
/* 80343198 003400D8 2C 07 00 00 */ cmpwi r7, 0
/* 8034319C 003400DC 40 81 00 A8 */ ble lbl_80343244
lbl_803431A0:
/* 803431A0 003400E0 20 C4 00 03 */ subfic r6, r4, 3
/* 803431A4 003400E4 54 C6 18 38 */ slwi r6, r6, 3
/* 803431A8 003400E8 7C 06 34 30 */ srw r6, r0, r6
/* 803431AC 003400EC 98 C5 00 00 */ stb r6, 0(r5)
/* 803431B0 003400F0 38 C4 00 01 */ addi r6, r4, 1
/* 803431B4 003400F4 20 C6 00 03 */ subfic r6, r6, 3
/* 803431B8 003400F8 54 C6 18 38 */ slwi r6, r6, 3
/* 803431BC 003400FC 7C 06 34 30 */ srw r6, r0, r6
/* 803431C0 00340100 98 C5 00 01 */ stb r6, 1(r5)
/* 803431C4 00340104 38 C4 00 02 */ addi r6, r4, 2
/* 803431C8 00340108 20 C6 00 03 */ subfic r6, r6, 3
/* 803431CC 0034010C 54 C6 18 38 */ slwi r6, r6, 3
/* 803431D0 00340110 7C 06 34 30 */ srw r6, r0, r6
/* 803431D4 00340114 98 C5 00 02 */ stb r6, 2(r5)
/* 803431D8 00340118 7C C4 00 D0 */ neg r6, r4
/* 803431DC 0034011C 54 C6 18 38 */ slwi r6, r6, 3
/* 803431E0 00340120 7C 06 34 30 */ srw r6, r0, r6
/* 803431E4 00340124 98 C5 00 03 */ stb r6, 3(r5)
/* 803431E8 00340128 38 C4 00 04 */ addi r6, r4, 4
/* 803431EC 0034012C 20 C6 00 03 */ subfic r6, r6, 3
/* 803431F0 00340130 54 C6 18 38 */ slwi r6, r6, 3
/* 803431F4 00340134 7C 06 34 30 */ srw r6, r0, r6
/* 803431F8 00340138 98 C5 00 04 */ stb r6, 4(r5)
/* 803431FC 0034013C 38 C4 00 05 */ addi r6, r4, 5
/* 80343200 00340140 20 C6 00 03 */ subfic r6, r6, 3
/* 80343204 00340144 54 C6 18 38 */ slwi r6, r6, 3
/* 80343208 00340148 7C 06 34 30 */ srw r6, r0, r6
/* 8034320C 0034014C 98 C5 00 05 */ stb r6, 5(r5)
/* 80343210 00340150 38 C4 00 06 */ addi r6, r4, 6
/* 80343214 00340154 20 C6 00 03 */ subfic r6, r6, 3
/* 80343218 00340158 54 C6 18 38 */ slwi r6, r6, 3
/* 8034321C 0034015C 7C 06 34 30 */ srw r6, r0, r6
/* 80343220 00340160 98 C5 00 06 */ stb r6, 6(r5)
/* 80343224 00340164 38 C4 00 07 */ addi r6, r4, 7
/* 80343228 00340168 20 C6 00 03 */ subfic r6, r6, 3
/* 8034322C 0034016C 54 C6 18 38 */ slwi r6, r6, 3
/* 80343230 00340170 7C 06 34 30 */ srw r6, r0, r6
/* 80343234 00340174 98 C5 00 07 */ stb r6, 7(r5)
/* 80343238 00340178 38 A5 00 08 */ addi r5, r5, 8
/* 8034323C 0034017C 38 84 00 08 */ addi r4, r4, 8
/* 80343240 00340180 42 00 FF 60 */ bdnz lbl_803431A0
lbl_80343244:
/* 80343244 00340184 7C C4 18 50 */ subf r6, r4, r3
/* 80343248 00340188 7C C9 03 A6 */ mtctr r6
/* 8034324C 0034018C 7C 04 18 00 */ cmpw r4, r3
/* 80343250 00340190 40 80 00 20 */ bge lbl_80343270
lbl_80343254:
/* 80343254 00340194 20 64 00 03 */ subfic r3, r4, 3
/* 80343258 00340198 54 63 18 38 */ slwi r3, r3, 3
/* 8034325C 0034019C 7C 03 1C 30 */ srw r3, r0, r3
/* 80343260 003401A0 98 65 00 00 */ stb r3, 0(r5)
/* 80343264 003401A4 38 A5 00 01 */ addi r5, r5, 1
/* 80343268 003401A8 38 84 00 01 */ addi r4, r4, 1
/* 8034326C 003401AC 42 00 FF E8 */ bdnz lbl_80343254
lbl_80343270:
/* 80343270 003401B0 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343274 003401B4 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 80343278 003401B8 90 1F 00 0C */ stw r0, 0xc(r31)
lbl_8034327C:
/* 8034327C 003401BC 4B FF 75 E5 */ bl __OSGetDIConfig
/* 80343280 003401C0 28 03 00 FF */ cmplwi r3, 0xff
/* 80343284 003401C4 40 82 00 7C */ bne lbl_80343300
/* 80343288 003401C8 4B FF 6C 75 */ bl OSGetConsoleType
/* 8034328C 003401CC 54 63 00 06 */ rlwinm r3, r3, 0, 0, 3
/* 80343290 003401D0 3C 03 E0 00 */ addis r0, r3, 0xe000
/* 80343294 003401D4 28 00 00 00 */ cmplwi r0, 0
/* 80343298 003401D8 41 82 00 68 */ beq lbl_80343300
/* 8034329C 003401DC 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 803432A0 003401E0 2C 00 00 04 */ cmpwi r0, 4
/* 803432A4 003401E4 40 82 00 5C */ bne lbl_80343300
/* 803432A8 003401E8 80 1D 00 00 */ lwz r0, 0(r29)
/* 803432AC 003401EC 54 00 06 77 */ rlwinm. r0, r0, 0, 0x19, 0x1b
/* 803432B0 003401F0 40 82 00 50 */ bne lbl_80343300
/* 803432B4 003401F4 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 803432B8 003401F8 38 03 68 00 */ addi r0, r3, 0xCC006800@l
/* 803432BC 003401FC 7C 80 F2 14 */ add r4, r0, r30
/* 803432C0 00340200 84 64 00 10 */ lwzu r3, 0x10(r4)
/* 803432C4 00340204 3C 03 FE FF */ addis r0, r3, 0xfeff
/* 803432C8 00340208 28 00 00 00 */ cmplwi r0, 0
/* 803432CC 0034020C 41 82 00 24 */ beq lbl_803432F0
/* 803432D0 00340210 80 64 00 00 */ lwz r3, 0(r4)
/* 803432D4 00340214 3C 03 FA F9 */ addis r0, r3, 0xfaf9
/* 803432D8 00340218 28 00 00 00 */ cmplwi r0, 0
/* 803432DC 0034021C 41 82 00 14 */ beq lbl_803432F0
/* 803432E0 00340220 80 64 00 00 */ lwz r3, 0(r4)
/* 803432E4 00340224 3C 03 FB DE */ addis r0, r3, 0xfbde
/* 803432E8 00340228 28 00 00 01 */ cmplwi r0, 1
/* 803432EC 0034022C 40 82 00 14 */ bne lbl_80343300
lbl_803432F0:
/* 803432F0 00340230 3C 60 80 00 */ lis r3, 0x800030E6@ha
/* 803432F4 00340234 A0 03 30 E6 */ lhz r0, 0x800030E6@l(r3)
/* 803432F8 00340238 28 00 82 00 */ cmplwi r0, 0x8200
/* 803432FC 0034023C 40 82 00 08 */ bne lbl_80343304
lbl_80343300:
/* 80343300 00340240 3B 80 00 01 */ li r28, 1
lbl_80343304:
/* 80343304 00340244 7F 63 DB 78 */ mr r3, r27
/* 80343308 00340248 4B FF A4 15 */ bl OSRestoreInterrupts
/* 8034330C 0034024C 48 00 00 10 */ b lbl_8034331C
lbl_80343310:
/* 80343310 00340250 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343314 00340254 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80343318 00340258 40 82 FE 08 */ bne lbl_80343120
lbl_8034331C:
/* 8034331C 0034025C 7F 83 E3 78 */ mr r3, r28
/* 80343320 00340260 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80343324 00340264 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 80343328 00340268 38 21 00 30 */ addi r1, r1, 0x30
/* 8034332C 0034026C 7C 08 03 A6 */ mtlr r0
/* 80343330 00340270 4E 80 00 20 */ blr
.global EXIClearInterrupts
EXIClearInterrupts:
/* 80343334 00340274 1C 03 00 14 */ mulli r0, r3, 0x14
/* 80343338 00340278 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 8034333C 0034027C 38 E3 68 00 */ addi r7, r3, 0xCC006800@l
/* 80343340 00340280 7C E7 02 14 */ add r7, r7, r0
/* 80343344 00340284 80 07 00 00 */ lwz r0, 0(r7)
/* 80343348 00340288 7C 03 03 78 */ mr r3, r0
/* 8034334C 0034028C 70 00 07 F5 */ andi. r0, r0, 0x7f5
/* 80343350 00340290 2C 04 00 00 */ cmpwi r4, 0
/* 80343354 00340294 41 82 00 08 */ beq lbl_8034335C
/* 80343358 00340298 60 00 00 02 */ ori r0, r0, 2
lbl_8034335C:
/* 8034335C 0034029C 2C 05 00 00 */ cmpwi r5, 0
/* 80343360 003402A0 41 82 00 08 */ beq lbl_80343368
/* 80343364 003402A4 60 00 00 08 */ ori r0, r0, 8
lbl_80343368:
/* 80343368 003402A8 2C 06 00 00 */ cmpwi r6, 0
/* 8034336C 003402AC 41 82 00 08 */ beq lbl_80343374
/* 80343370 003402B0 60 00 08 00 */ ori r0, r0, 0x800
lbl_80343374:
/* 80343374 003402B4 90 07 00 00 */ stw r0, 0(r7)
/* 80343378 003402B8 4E 80 00 20 */ blr
.global EXISetExiCallback
EXISetExiCallback:
/* 8034337C 003402BC 7C 08 02 A6 */ mflr r0
/* 80343380 003402C0 90 01 00 04 */ stw r0, 4(r1)
/* 80343384 003402C4 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 80343388 003402C8 BF 41 00 10 */ stmw r26, 0x10(r1)
/* 8034338C 003402CC 3B 43 00 00 */ addi r26, r3, 0
/* 80343390 003402D0 3B 64 00 00 */ addi r27, r4, 0
/* 80343394 003402D4 54 60 30 32 */ slwi r0, r3, 6
/* 80343398 003402D8 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 8034339C 003402DC 3B E3 C5 70 */ addi r31, r3, lbl_8044C570@l
/* 803433A0 003402E0 7F DF 02 14 */ add r30, r31, r0
/* 803433A4 003402E4 4B FF A3 51 */ bl __RAS_OSDisableInterrupts_begin
/* 803433A8 003402E8 7C 7C 1B 78 */ mr r28, r3
/* 803433AC 003402EC 83 BE 00 00 */ lwz r29, 0(r30)
/* 803433B0 003402F0 93 7E 00 00 */ stw r27, 0(r30)
/* 803433B4 003402F4 2C 1A 00 02 */ cmpwi r26, 2
/* 803433B8 003402F8 41 82 00 14 */ beq lbl_803433CC
/* 803433BC 003402FC 38 7A 00 00 */ addi r3, r26, 0
/* 803433C0 00340300 38 9E 00 00 */ addi r4, r30, 0
/* 803433C4 00340304 4B FF F8 49 */ bl SetExiInterruptMask
/* 803433C8 00340308 48 00 00 10 */ b lbl_803433D8
lbl_803433CC:
/* 803433CC 0034030C 38 60 00 00 */ li r3, 0
/* 803433D0 00340310 38 9F 00 00 */ addi r4, r31, 0
/* 803433D4 00340314 4B FF F8 39 */ bl SetExiInterruptMask
lbl_803433D8:
/* 803433D8 00340318 7F 83 E3 78 */ mr r3, r28
/* 803433DC 0034031C 4B FF A3 41 */ bl OSRestoreInterrupts
/* 803433E0 00340320 7F A3 EB 78 */ mr r3, r29
/* 803433E4 00340324 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 803433E8 00340328 BB 41 00 10 */ lmw r26, 0x10(r1)
/* 803433EC 0034032C 38 21 00 28 */ addi r1, r1, 0x28
/* 803433F0 00340330 7C 08 03 A6 */ mtlr r0
/* 803433F4 00340334 4E 80 00 20 */ blr
.global __EXIProbe
__EXIProbe:
/* 803433F8 00340338 7C 08 02 A6 */ mflr r0
/* 803433FC 0034033C 90 01 00 04 */ stw r0, 4(r1)
/* 80343400 00340340 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 80343404 00340344 BF 61 00 14 */ stmw r27, 0x14(r1)
/* 80343408 00340348 3B 83 00 00 */ addi r28, r3, 0
/* 8034340C 0034034C 54 64 30 32 */ slwi r4, r3, 6
/* 80343410 00340350 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80343414 00340354 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343418 00340358 7F E0 22 14 */ add r31, r0, r4
/* 8034341C 0034035C 2C 1C 00 02 */ cmpwi r28, 2
/* 80343420 00340360 40 82 00 0C */ bne lbl_8034342C
/* 80343424 00340364 38 60 00 01 */ li r3, 1
/* 80343428 00340368 48 00 01 30 */ b lbl_80343558
lbl_8034342C:
/* 8034342C 0034036C 3B A0 00 01 */ li r29, 1
/* 80343430 00340370 4B FF A2 C5 */ bl __RAS_OSDisableInterrupts_begin
/* 80343434 00340374 3B C3 00 00 */ addi r30, r3, 0
/* 80343438 00340378 1C 1C 00 14 */ mulli r0, r28, 0x14
/* 8034343C 0034037C 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80343440 00340380 38 63 68 00 */ addi r3, r3, 0xCC006800@l
/* 80343444 00340384 7C 63 02 14 */ add r3, r3, r0
/* 80343448 00340388 80 A3 00 00 */ lwz r5, 0(r3)
/* 8034344C 0034038C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343450 00340390 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80343454 00340394 40 82 00 CC */ bne lbl_80343520
/* 80343458 00340398 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14
/* 8034345C 0034039C 41 82 00 2C */ beq lbl_80343488
/* 80343460 003403A0 80 03 00 00 */ lwz r0, 0(r3)
/* 80343464 003403A4 70 00 07 F5 */ andi. r0, r0, 0x7f5
/* 80343468 003403A8 60 00 08 00 */ ori r0, r0, 0x800
/* 8034346C 003403AC 90 03 00 00 */ stw r0, 0(r3)
/* 80343470 003403B0 38 80 00 00 */ li r4, 0
/* 80343474 003403B4 90 9F 00 20 */ stw r4, 0x20(r31)
/* 80343478 003403B8 57 80 10 3A */ slwi r0, r28, 2
/* 8034347C 003403BC 3C 60 80 00 */ lis r3, 0x800030C0@ha
/* 80343480 003403C0 38 63 30 C0 */ addi r3, r3, 0x800030C0@l
/* 80343484 003403C4 7C 83 01 2E */ stwx r4, r3, r0
lbl_80343488:
/* 80343488 003403C8 54 A0 04 E7 */ rlwinm. r0, r5, 0, 0x13, 0x13
/* 8034348C 003403CC 41 82 00 74 */ beq lbl_80343500
/* 80343490 003403D0 3F E0 80 00 */ lis r31, 0x800000F8@ha
/* 80343494 003403D4 80 1F 00 F8 */ lwz r0, 0x800000F8@l(r31)
/* 80343498 003403D8 54 00 F0 BE */ srwi r0, r0, 2
/* 8034349C 003403DC 3C 60 10 62 */ lis r3, 0x10624DD3@ha
/* 803434A0 003403E0 38 63 4D D3 */ addi r3, r3, 0x10624DD3@l
/* 803434A4 003403E4 7C 03 00 16 */ mulhwu r0, r3, r0
/* 803434A8 003403E8 54 1B D1 BE */ srwi r27, r0, 6
/* 803434AC 003403EC 4B FF F2 51 */ bl OSGetTime
/* 803434B0 003403F0 38 A0 00 00 */ li r5, 0
/* 803434B4 003403F4 38 DB 00 00 */ addi r6, r27, 0
/* 803434B8 003403F8 48 01 EE 6D */ bl __div2i
/* 803434BC 003403FC 38 A0 00 00 */ li r5, 0
/* 803434C0 00340400 38 C0 00 64 */ li r6, 0x64
/* 803434C4 00340404 48 01 EE 61 */ bl __div2i
/* 803434C8 00340408 38 84 00 01 */ addi r4, r4, 1
/* 803434CC 0034040C 57 80 10 3A */ slwi r0, r28, 2
/* 803434D0 00340410 38 7F 30 C0 */ addi r3, r31, 0x30c0
/* 803434D4 00340414 7C 63 02 14 */ add r3, r3, r0
/* 803434D8 00340418 80 03 00 00 */ lwz r0, 0(r3)
/* 803434DC 0034041C 2C 00 00 00 */ cmpwi r0, 0
/* 803434E0 00340420 40 82 00 08 */ bne lbl_803434E8
/* 803434E4 00340424 90 83 00 00 */ stw r4, 0(r3)
lbl_803434E8:
/* 803434E8 00340428 80 03 00 00 */ lwz r0, 0(r3)
/* 803434EC 0034042C 7C 00 20 50 */ subf r0, r0, r4
/* 803434F0 00340430 2C 00 00 03 */ cmpwi r0, 3
/* 803434F4 00340434 40 80 00 58 */ bge lbl_8034354C
/* 803434F8 00340438 3B A0 00 00 */ li r29, 0
/* 803434FC 0034043C 48 00 00 50 */ b lbl_8034354C
lbl_80343500:
/* 80343500 00340440 38 80 00 00 */ li r4, 0
/* 80343504 00340444 90 9F 00 20 */ stw r4, 0x20(r31)
/* 80343508 00340448 57 80 10 3A */ slwi r0, r28, 2
/* 8034350C 0034044C 3C 60 80 00 */ lis r3, 0x800030C0@ha
/* 80343510 00340450 38 63 30 C0 */ addi r3, r3, 0x800030C0@l
/* 80343514 00340454 7C 83 01 2E */ stwx r4, r3, r0
/* 80343518 00340458 3B A0 00 00 */ li r29, 0
/* 8034351C 0034045C 48 00 00 30 */ b lbl_8034354C
lbl_80343520:
/* 80343520 00340460 54 A0 04 E7 */ rlwinm. r0, r5, 0, 0x13, 0x13
/* 80343524 00340464 41 82 00 0C */ beq lbl_80343530
/* 80343528 00340468 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14
/* 8034352C 0034046C 41 82 00 20 */ beq lbl_8034354C
lbl_80343530:
/* 80343530 00340470 38 80 00 00 */ li r4, 0
/* 80343534 00340474 90 9F 00 20 */ stw r4, 0x20(r31)
/* 80343538 00340478 57 80 10 3A */ slwi r0, r28, 2
/* 8034353C 0034047C 3C 60 80 00 */ lis r3, 0x800030C0@ha
/* 80343540 00340480 38 63 30 C0 */ addi r3, r3, 0x800030C0@l
/* 80343544 00340484 7C 83 01 2E */ stwx r4, r3, r0
/* 80343548 00340488 3B A0 00 00 */ li r29, 0
lbl_8034354C:
/* 8034354C 0034048C 7F C3 F3 78 */ mr r3, r30
/* 80343550 00340490 4B FF A1 CD */ bl OSRestoreInterrupts
/* 80343554 00340494 7F A3 EB 78 */ mr r3, r29
lbl_80343558:
/* 80343558 00340498 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 8034355C 0034049C BB 61 00 14 */ lmw r27, 0x14(r1)
/* 80343560 003404A0 38 21 00 28 */ addi r1, r1, 0x28
/* 80343564 003404A4 7C 08 03 A6 */ mtlr r0
/* 80343568 003404A8 4E 80 00 20 */ blr
.global EXIProbe
EXIProbe:
/* 8034356C 003404AC 7C 08 02 A6 */ mflr r0
/* 80343570 003404B0 90 01 00 04 */ stw r0, 4(r1)
/* 80343574 003404B4 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80343578 003404B8 93 E1 00 14 */ stw r31, 0x14(r1)
/* 8034357C 003404BC 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80343580 003404C0 3B C3 00 00 */ addi r30, r3, 0
/* 80343584 003404C4 54 64 30 32 */ slwi r4, r3, 6
/* 80343588 003404C8 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 8034358C 003404CC 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343590 003404D0 7F E0 22 14 */ add r31, r0, r4
/* 80343594 003404D4 38 7E 00 00 */ addi r3, r30, 0
/* 80343598 003404D8 4B FF FE 61 */ bl __EXIProbe
/* 8034359C 003404DC 2C 03 00 00 */ cmpwi r3, 0
/* 803435A0 003404E0 41 82 00 34 */ beq lbl_803435D4
/* 803435A4 003404E4 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 803435A8 003404E8 2C 00 00 00 */ cmpwi r0, 0
/* 803435AC 003404EC 40 82 00 28 */ bne lbl_803435D4
/* 803435B0 003404F0 38 7E 00 00 */ addi r3, r30, 0
/* 803435B4 003404F4 38 80 00 00 */ li r4, 0
/* 803435B8 003404F8 38 A1 00 0C */ addi r5, r1, 0xc
/* 803435BC 003404FC 48 00 0C 7D */ bl EXIGetID
/* 803435C0 00340500 2C 03 00 00 */ cmpwi r3, 0
/* 803435C4 00340504 41 82 00 0C */ beq lbl_803435D0
/* 803435C8 00340508 38 60 00 01 */ li r3, 1
/* 803435CC 0034050C 48 00 00 08 */ b lbl_803435D4
lbl_803435D0:
/* 803435D0 00340510 38 60 00 00 */ li r3, 0
lbl_803435D4:
/* 803435D4 00340514 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803435D8 00340518 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803435DC 0034051C 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 803435E0 00340520 38 21 00 18 */ addi r1, r1, 0x18
/* 803435E4 00340524 7C 08 03 A6 */ mtlr r0
/* 803435E8 00340528 4E 80 00 20 */ blr
.global EXIProbeEx
EXIProbeEx:
/* 803435EC 0034052C 7C 08 02 A6 */ mflr r0
/* 803435F0 00340530 90 01 00 04 */ stw r0, 4(r1)
/* 803435F4 00340534 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 803435F8 00340538 93 E1 00 14 */ stw r31, 0x14(r1)
/* 803435FC 0034053C 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80343600 00340540 3B C3 00 00 */ addi r30, r3, 0
/* 80343604 00340544 54 64 30 32 */ slwi r4, r3, 6
/* 80343608 00340548 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 8034360C 0034054C 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343610 00340550 7F E0 22 14 */ add r31, r0, r4
/* 80343614 00340554 38 7E 00 00 */ addi r3, r30, 0
/* 80343618 00340558 4B FF FD E1 */ bl __EXIProbe
/* 8034361C 0034055C 2C 03 00 00 */ cmpwi r3, 0
/* 80343620 00340560 41 82 00 34 */ beq lbl_80343654
/* 80343624 00340564 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 80343628 00340568 2C 00 00 00 */ cmpwi r0, 0
/* 8034362C 0034056C 40 82 00 28 */ bne lbl_80343654
/* 80343630 00340570 38 7E 00 00 */ addi r3, r30, 0
/* 80343634 00340574 38 80 00 00 */ li r4, 0
/* 80343638 00340578 38 A1 00 0C */ addi r5, r1, 0xc
/* 8034363C 0034057C 48 00 0B FD */ bl EXIGetID
/* 80343640 00340580 2C 03 00 00 */ cmpwi r3, 0
/* 80343644 00340584 41 82 00 0C */ beq lbl_80343650
/* 80343648 00340588 38 60 00 01 */ li r3, 1
/* 8034364C 0034058C 48 00 00 08 */ b lbl_80343654
lbl_80343650:
/* 80343650 00340590 38 60 00 00 */ li r3, 0
lbl_80343654:
/* 80343654 00340594 2C 03 00 00 */ cmpwi r3, 0
/* 80343658 00340598 41 82 00 0C */ beq lbl_80343664
/* 8034365C 0034059C 38 60 00 01 */ li r3, 1
/* 80343660 003405A0 48 00 00 28 */ b lbl_80343688
lbl_80343664:
/* 80343664 003405A4 57 C0 10 3A */ slwi r0, r30, 2
/* 80343668 003405A8 3C 60 80 00 */ lis r3, 0x800030C0@ha
/* 8034366C 003405AC 38 63 30 C0 */ addi r3, r3, 0x800030C0@l
/* 80343670 003405B0 7C 03 00 2E */ lwzx r0, r3, r0
/* 80343674 003405B4 2C 00 00 00 */ cmpwi r0, 0
/* 80343678 003405B8 41 82 00 0C */ beq lbl_80343684
/* 8034367C 003405BC 38 60 00 00 */ li r3, 0
/* 80343680 003405C0 48 00 00 08 */ b lbl_80343688
lbl_80343684:
/* 80343684 003405C4 38 60 FF FF */ li r3, -1
lbl_80343688:
/* 80343688 003405C8 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 8034368C 003405CC 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80343690 003405D0 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80343694 003405D4 38 21 00 18 */ addi r1, r1, 0x18
/* 80343698 003405D8 7C 08 03 A6 */ mtlr r0
/* 8034369C 003405DC 4E 80 00 20 */ blr
.global EXIAttach
EXIAttach:
/* 803436A0 003405E0 7C 08 02 A6 */ mflr r0
/* 803436A4 003405E4 90 01 00 04 */ stw r0, 4(r1)
/* 803436A8 003405E8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 803436AC 003405EC BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 803436B0 003405F0 3B 63 00 00 */ addi r27, r3, 0
/* 803436B4 003405F4 3B 84 00 00 */ addi r28, r4, 0
/* 803436B8 003405F8 54 64 30 32 */ slwi r4, r3, 6
/* 803436BC 003405FC 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 803436C0 00340600 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 803436C4 00340604 7F C0 22 14 */ add r30, r0, r4
/* 803436C8 00340608 38 7B 00 00 */ addi r3, r27, 0
/* 803436CC 0034060C 4B FF FD 2D */ bl __EXIProbe
/* 803436D0 00340610 2C 03 00 00 */ cmpwi r3, 0
/* 803436D4 00340614 41 82 00 20 */ beq lbl_803436F4
/* 803436D8 00340618 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 803436DC 0034061C 2C 00 00 00 */ cmpwi r0, 0
/* 803436E0 00340620 40 82 00 14 */ bne lbl_803436F4
/* 803436E4 00340624 38 7B 00 00 */ addi r3, r27, 0
/* 803436E8 00340628 38 80 00 00 */ li r4, 0
/* 803436EC 0034062C 38 A1 00 1C */ addi r5, r1, 0x1c
/* 803436F0 00340630 48 00 0B 49 */ bl EXIGetID
lbl_803436F4:
/* 803436F4 00340634 4B FF A0 01 */ bl __RAS_OSDisableInterrupts_begin
/* 803436F8 00340638 7C 7D 1B 78 */ mr r29, r3
/* 803436FC 0034063C 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 80343700 00340640 2C 00 00 00 */ cmpwi r0, 0
/* 80343704 00340644 40 82 00 14 */ bne lbl_80343718
/* 80343708 00340648 7F A3 EB 78 */ mr r3, r29
/* 8034370C 0034064C 4B FF A0 11 */ bl OSRestoreInterrupts
/* 80343710 00340650 38 60 00 00 */ li r3, 0
/* 80343714 00340654 48 00 00 84 */ b lbl_80343798
lbl_80343718:
/* 80343718 00340658 4B FF 9F DD */ bl __RAS_OSDisableInterrupts_begin
/* 8034371C 0034065C 7C 7F 1B 78 */ mr r31, r3
/* 80343720 00340660 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80343724 00340664 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80343728 00340668 40 82 00 14 */ bne lbl_8034373C
/* 8034372C 0034066C 7F 63 DB 78 */ mr r3, r27
/* 80343730 00340670 4B FF FC C9 */ bl __EXIProbe
/* 80343734 00340674 2C 03 00 00 */ cmpwi r3, 0
/* 80343738 00340678 40 82 00 14 */ bne lbl_8034374C
lbl_8034373C:
/* 8034373C 0034067C 7F E3 FB 78 */ mr r3, r31
/* 80343740 00340680 4B FF 9F DD */ bl OSRestoreInterrupts
/* 80343744 00340684 3B E0 00 00 */ li r31, 0
/* 80343748 00340688 48 00 00 44 */ b lbl_8034378C
lbl_8034374C:
/* 8034374C 0034068C 38 7B 00 00 */ addi r3, r27, 0
/* 80343750 00340690 38 80 00 01 */ li r4, 1
/* 80343754 00340694 38 A0 00 00 */ li r5, 0
/* 80343758 00340698 38 C0 00 00 */ li r6, 0
/* 8034375C 0034069C 4B FF FB D9 */ bl EXIClearInterrupts
/* 80343760 003406A0 93 9E 00 08 */ stw r28, 8(r30)
/* 80343764 003406A4 3C 60 00 10 */ lis r3, 0x10
/* 80343768 003406A8 1C 1B 00 03 */ mulli r0, r27, 3
/* 8034376C 003406AC 7C 63 04 30 */ srw r3, r3, r0
/* 80343770 003406B0 4B FF A3 D5 */ bl __OSUnmaskInterrupts
/* 80343774 003406B4 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80343778 003406B8 60 00 00 08 */ ori r0, r0, 8
/* 8034377C 003406BC 90 1E 00 0C */ stw r0, 0xc(r30)
/* 80343780 003406C0 7F E3 FB 78 */ mr r3, r31
/* 80343784 003406C4 4B FF 9F 99 */ bl OSRestoreInterrupts
/* 80343788 003406C8 3B E0 00 01 */ li r31, 1
lbl_8034378C:
/* 8034378C 003406CC 7F A3 EB 78 */ mr r3, r29
/* 80343790 003406D0 4B FF 9F 8D */ bl OSRestoreInterrupts
/* 80343794 003406D4 7F E3 FB 78 */ mr r3, r31
lbl_80343798:
/* 80343798 003406D8 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8034379C 003406DC BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 803437A0 003406E0 38 21 00 40 */ addi r1, r1, 0x40
/* 803437A4 003406E4 7C 08 03 A6 */ mtlr r0
/* 803437A8 003406E8 4E 80 00 20 */ blr
.global EXIDetach
EXIDetach:
/* 803437AC 003406EC 7C 08 02 A6 */ mflr r0
/* 803437B0 003406F0 90 01 00 04 */ stw r0, 4(r1)
/* 803437B4 003406F4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803437B8 003406F8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803437BC 003406FC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803437C0 00340700 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803437C4 00340704 3B A3 00 00 */ addi r29, r3, 0
/* 803437C8 00340708 54 64 30 32 */ slwi r4, r3, 6
/* 803437CC 0034070C 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 803437D0 00340710 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 803437D4 00340714 7F E0 22 14 */ add r31, r0, r4
/* 803437D8 00340718 4B FF 9F 1D */ bl __RAS_OSDisableInterrupts_begin
/* 803437DC 0034071C 7C 7E 1B 78 */ mr r30, r3
/* 803437E0 00340720 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 803437E4 00340724 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 803437E8 00340728 40 82 00 14 */ bne lbl_803437FC
/* 803437EC 0034072C 7F C3 F3 78 */ mr r3, r30
/* 803437F0 00340730 4B FF 9F 2D */ bl OSRestoreInterrupts
/* 803437F4 00340734 38 60 00 01 */ li r3, 1
/* 803437F8 00340738 48 00 00 54 */ b lbl_8034384C
lbl_803437FC:
/* 803437FC 0034073C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343800 00340740 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80343804 00340744 41 82 00 20 */ beq lbl_80343824
/* 80343808 00340748 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 8034380C 0034074C 28 00 00 00 */ cmplwi r0, 0
/* 80343810 00340750 40 82 00 14 */ bne lbl_80343824
/* 80343814 00340754 7F C3 F3 78 */ mr r3, r30
/* 80343818 00340758 4B FF 9F 05 */ bl OSRestoreInterrupts
/* 8034381C 0034075C 38 60 00 00 */ li r3, 0
/* 80343820 00340760 48 00 00 2C */ b lbl_8034384C
lbl_80343824:
/* 80343824 00340764 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343828 00340768 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8034382C 0034076C 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80343830 00340770 3C 60 00 50 */ lis r3, 0x50
/* 80343834 00340774 1C 1D 00 03 */ mulli r0, r29, 3
/* 80343838 00340778 7C 63 04 30 */ srw r3, r3, r0
/* 8034383C 0034077C 4B FF A2 81 */ bl __OSMaskInterrupts
/* 80343840 00340780 7F C3 F3 78 */ mr r3, r30
/* 80343844 00340784 4B FF 9E D9 */ bl OSRestoreInterrupts
/* 80343848 00340788 38 60 00 01 */ li r3, 1
lbl_8034384C:
/* 8034384C 0034078C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80343850 00340790 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80343854 00340794 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80343858 00340798 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8034385C 0034079C 38 21 00 20 */ addi r1, r1, 0x20
/* 80343860 003407A0 7C 08 03 A6 */ mtlr r0
/* 80343864 003407A4 4E 80 00 20 */ blr
.global EXISelect
EXISelect:
/* 80343868 003407A8 7C 08 02 A6 */ mflr r0
/* 8034386C 003407AC 90 01 00 04 */ stw r0, 4(r1)
/* 80343870 003407B0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80343874 003407B4 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 80343878 003407B8 3B 63 00 00 */ addi r27, r3, 0
/* 8034387C 003407BC 3B 84 00 00 */ addi r28, r4, 0
/* 80343880 003407C0 3B A5 00 00 */ addi r29, r5, 0
/* 80343884 003407C4 54 64 30 32 */ slwi r4, r3, 6
/* 80343888 003407C8 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 8034388C 003407CC 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343890 003407D0 7F E0 22 14 */ add r31, r0, r4
/* 80343894 003407D4 4B FF 9E 61 */ bl __RAS_OSDisableInterrupts_begin
/* 80343898 003407D8 7C 7E 1B 78 */ mr r30, r3
/* 8034389C 003407DC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 803438A0 003407E0 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 803438A4 003407E4 40 82 00 48 */ bne lbl_803438EC
/* 803438A8 003407E8 2C 1B 00 02 */ cmpwi r27, 2
/* 803438AC 003407EC 41 82 00 50 */ beq lbl_803438FC
/* 803438B0 003407F0 28 1C 00 00 */ cmplwi r28, 0
/* 803438B4 003407F4 40 82 00 20 */ bne lbl_803438D4
/* 803438B8 003407F8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 803438BC 003407FC 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 803438C0 00340800 40 82 00 14 */ bne lbl_803438D4
/* 803438C4 00340804 7F 63 DB 78 */ mr r3, r27
/* 803438C8 00340808 4B FF FB 31 */ bl __EXIProbe
/* 803438CC 0034080C 2C 03 00 00 */ cmpwi r3, 0
/* 803438D0 00340810 41 82 00 1C */ beq lbl_803438EC
lbl_803438D4:
/* 803438D4 00340814 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 803438D8 00340818 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 803438DC 0034081C 41 82 00 10 */ beq lbl_803438EC
/* 803438E0 00340820 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 803438E4 00340824 7C 00 E0 40 */ cmplw r0, r28
/* 803438E8 00340828 41 82 00 14 */ beq lbl_803438FC
lbl_803438EC:
/* 803438EC 0034082C 7F C3 F3 78 */ mr r3, r30
/* 803438F0 00340830 4B FF 9E 2D */ bl OSRestoreInterrupts
/* 803438F4 00340834 38 60 00 00 */ li r3, 0
/* 803438F8 00340838 48 00 00 88 */ b lbl_80343980
lbl_803438FC:
/* 803438FC 0034083C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343900 00340840 60 00 00 04 */ ori r0, r0, 4
/* 80343904 00340844 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80343908 00340848 1C 1B 00 14 */ mulli r0, r27, 0x14
/* 8034390C 0034084C 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80343910 00340850 38 83 68 00 */ addi r4, r3, 0xCC006800@l
/* 80343914 00340854 7C 84 02 14 */ add r4, r4, r0
/* 80343918 00340858 80 A4 00 00 */ lwz r5, 0(r4)
/* 8034391C 0034085C 70 A5 04 05 */ andi. r5, r5, 0x405
/* 80343920 00340860 38 00 00 01 */ li r0, 1
/* 80343924 00340864 7C 00 E0 30 */ slw r0, r0, r28
/* 80343928 00340868 54 03 38 30 */ slwi r3, r0, 7
/* 8034392C 0034086C 57 A0 20 36 */ slwi r0, r29, 4
/* 80343930 00340870 7C 60 03 78 */ or r0, r3, r0
/* 80343934 00340874 7C A5 03 78 */ or r5, r5, r0
/* 80343938 00340878 90 A4 00 00 */ stw r5, 0(r4)
/* 8034393C 0034087C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343940 00340880 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80343944 00340884 41 82 00 30 */ beq lbl_80343974
/* 80343948 00340888 2C 1B 00 01 */ cmpwi r27, 1
/* 8034394C 0034088C 41 82 00 20 */ beq lbl_8034396C
/* 80343950 00340890 40 80 00 24 */ bge lbl_80343974
/* 80343954 00340894 2C 1B 00 00 */ cmpwi r27, 0
/* 80343958 00340898 40 80 00 08 */ bge lbl_80343960
/* 8034395C 0034089C 48 00 00 18 */ b lbl_80343974
lbl_80343960:
/* 80343960 003408A0 3C 60 00 10 */ lis r3, 0x10
/* 80343964 003408A4 4B FF A1 59 */ bl __OSMaskInterrupts
/* 80343968 003408A8 48 00 00 0C */ b lbl_80343974
lbl_8034396C:
/* 8034396C 003408AC 3C 60 00 02 */ lis r3, 2
/* 80343970 003408B0 4B FF A1 4D */ bl __OSMaskInterrupts
lbl_80343974:
/* 80343974 003408B4 7F C3 F3 78 */ mr r3, r30
/* 80343978 003408B8 4B FF 9D A5 */ bl OSRestoreInterrupts
/* 8034397C 003408BC 38 60 00 01 */ li r3, 1
lbl_80343980:
/* 80343980 003408C0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80343984 003408C4 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 80343988 003408C8 38 21 00 30 */ addi r1, r1, 0x30
/* 8034398C 003408CC 7C 08 03 A6 */ mtlr r0
/* 80343990 003408D0 4E 80 00 20 */ blr
.global EXIDeselect
EXIDeselect:
/* 80343994 003408D4 7C 08 02 A6 */ mflr r0
/* 80343998 003408D8 90 01 00 04 */ stw r0, 4(r1)
/* 8034399C 003408DC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803439A0 003408E0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803439A4 003408E4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803439A8 003408E8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803439AC 003408EC 93 81 00 10 */ stw r28, 0x10(r1)
/* 803439B0 003408F0 3B E3 00 00 */ addi r31, r3, 0
/* 803439B4 003408F4 54 64 30 32 */ slwi r4, r3, 6
/* 803439B8 003408F8 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 803439BC 003408FC 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 803439C0 00340900 7F C0 22 14 */ add r30, r0, r4
/* 803439C4 00340904 4B FF 9D 31 */ bl __RAS_OSDisableInterrupts_begin
/* 803439C8 00340908 7C 7C 1B 78 */ mr r28, r3
/* 803439CC 0034090C 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 803439D0 00340910 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 803439D4 00340914 40 82 00 14 */ bne lbl_803439E8
/* 803439D8 00340918 7F 83 E3 78 */ mr r3, r28
/* 803439DC 0034091C 4B FF 9D 41 */ bl OSRestoreInterrupts
/* 803439E0 00340920 38 60 00 00 */ li r3, 0
/* 803439E4 00340924 48 00 00 A0 */ b lbl_80343A84
lbl_803439E8:
/* 803439E8 00340928 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 803439EC 0034092C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 803439F0 00340930 90 1E 00 0C */ stw r0, 0xc(r30)
/* 803439F4 00340934 1C 1F 00 14 */ mulli r0, r31, 0x14
/* 803439F8 00340938 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 803439FC 0034093C 38 63 68 00 */ addi r3, r3, 0xCC006800@l
/* 80343A00 00340940 7C 63 02 14 */ add r3, r3, r0
/* 80343A04 00340944 83 A3 00 00 */ lwz r29, 0(r3)
/* 80343A08 00340948 73 A0 04 05 */ andi. r0, r29, 0x405
/* 80343A0C 0034094C 90 03 00 00 */ stw r0, 0(r3)
/* 80343A10 00340950 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80343A14 00340954 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80343A18 00340958 41 82 00 30 */ beq lbl_80343A48
/* 80343A1C 0034095C 2C 1F 00 01 */ cmpwi r31, 1
/* 80343A20 00340960 41 82 00 20 */ beq lbl_80343A40
/* 80343A24 00340964 40 80 00 24 */ bge lbl_80343A48
/* 80343A28 00340968 2C 1F 00 00 */ cmpwi r31, 0
/* 80343A2C 0034096C 40 80 00 08 */ bge lbl_80343A34
/* 80343A30 00340970 48 00 00 18 */ b lbl_80343A48
lbl_80343A34:
/* 80343A34 00340974 3C 60 00 10 */ lis r3, 0x10
/* 80343A38 00340978 4B FF A1 0D */ bl __OSUnmaskInterrupts
/* 80343A3C 0034097C 48 00 00 0C */ b lbl_80343A48
lbl_80343A40:
/* 80343A40 00340980 3C 60 00 02 */ lis r3, 2
/* 80343A44 00340984 4B FF A1 01 */ bl __OSUnmaskInterrupts
lbl_80343A48:
/* 80343A48 00340988 7F 83 E3 78 */ mr r3, r28
/* 80343A4C 0034098C 4B FF 9C D1 */ bl OSRestoreInterrupts
/* 80343A50 00340990 2C 1F 00 02 */ cmpwi r31, 2
/* 80343A54 00340994 41 82 00 2C */ beq lbl_80343A80
/* 80343A58 00340998 57 A0 06 31 */ rlwinm. r0, r29, 0, 0x18, 0x18
/* 80343A5C 0034099C 41 82 00 24 */ beq lbl_80343A80
/* 80343A60 003409A0 7F E3 FB 78 */ mr r3, r31
/* 80343A64 003409A4 4B FF F9 95 */ bl __EXIProbe
/* 80343A68 003409A8 2C 03 00 00 */ cmpwi r3, 0
/* 80343A6C 003409AC 41 82 00 0C */ beq lbl_80343A78
/* 80343A70 003409B0 38 60 00 01 */ li r3, 1
/* 80343A74 003409B4 48 00 00 10 */ b lbl_80343A84
lbl_80343A78:
/* 80343A78 003409B8 38 60 00 00 */ li r3, 0
/* 80343A7C 003409BC 48 00 00 08 */ b lbl_80343A84
lbl_80343A80:
/* 80343A80 003409C0 38 60 00 01 */ li r3, 1
lbl_80343A84:
/* 80343A84 003409C4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80343A88 003409C8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80343A8C 003409CC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80343A90 003409D0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80343A94 003409D4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80343A98 003409D8 38 21 00 20 */ addi r1, r1, 0x20
/* 80343A9C 003409DC 7C 08 03 A6 */ mtlr r0
/* 80343AA0 003409E0 4E 80 00 20 */ blr
.global EXIIntrruptHandler
EXIIntrruptHandler:
/* 80343AA4 003409E4 7C 08 02 A6 */ mflr r0
/* 80343AA8 003409E8 90 01 00 04 */ stw r0, 4(r1)
/* 80343AAC 003409EC 94 21 FD 08 */ stwu r1, -0x2f8(r1)
/* 80343AB0 003409F0 93 E1 02 F4 */ stw r31, 0x2f4(r1)
/* 80343AB4 003409F4 93 C1 02 F0 */ stw r30, 0x2f0(r1)
/* 80343AB8 003409F8 93 A1 02 EC */ stw r29, 0x2ec(r1)
/* 80343ABC 003409FC 3B E4 00 00 */ addi r31, r4, 0
/* 80343AC0 00340A00 7C 63 07 34 */ extsh r3, r3
/* 80343AC4 00340A04 38 03 FF F7 */ addi r0, r3, -9
/* 80343AC8 00340A08 3C 60 55 55 */ lis r3, 0x55555556@ha
/* 80343ACC 00340A0C 38 63 55 56 */ addi r3, r3, 0x55555556@l
/* 80343AD0 00340A10 7C 63 00 96 */ mulhw r3, r3, r0
/* 80343AD4 00340A14 54 60 0F FE */ srwi r0, r3, 0x1f
/* 80343AD8 00340A18 7F C3 02 14 */ add r30, r3, r0
/* 80343ADC 00340A1C 1C 1E 00 14 */ mulli r0, r30, 0x14
/* 80343AE0 00340A20 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80343AE4 00340A24 38 63 68 00 */ addi r3, r3, 0xCC006800@l
/* 80343AE8 00340A28 7C 63 02 14 */ add r3, r3, r0
/* 80343AEC 00340A2C 80 03 00 00 */ lwz r0, 0(r3)
/* 80343AF0 00340A30 70 00 07 F5 */ andi. r0, r0, 0x7f5
/* 80343AF4 00340A34 60 00 00 02 */ ori r0, r0, 2
/* 80343AF8 00340A38 90 03 00 00 */ stw r0, 0(r3)
/* 80343AFC 00340A3C 57 C4 30 32 */ slwi r4, r30, 6
/* 80343B00 00340A40 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80343B04 00340A44 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343B08 00340A48 7C 60 22 14 */ add r3, r0, r4
/* 80343B0C 00340A4C 80 03 00 00 */ lwz r0, 0(r3)
/* 80343B10 00340A50 7C 1D 03 78 */ mr r29, r0
/* 80343B14 00340A54 28 00 00 00 */ cmplwi r0, 0
/* 80343B18 00340A58 41 82 00 38 */ beq lbl_80343B50
/* 80343B1C 00340A5C 38 61 00 18 */ addi r3, r1, 0x18
/* 80343B20 00340A60 4B FF 84 E1 */ bl OSClearContext
/* 80343B24 00340A64 38 61 00 18 */ addi r3, r1, 0x18
/* 80343B28 00340A68 4B FF 83 11 */ bl OSSetCurrentContext
/* 80343B2C 00340A6C 38 7E 00 00 */ addi r3, r30, 0
/* 80343B30 00340A70 38 9F 00 00 */ addi r4, r31, 0
/* 80343B34 00340A74 39 9D 00 00 */ addi r12, r29, 0
/* 80343B38 00340A78 7D 88 03 A6 */ mtlr r12
/* 80343B3C 00340A7C 4E 80 00 21 */ blrl
/* 80343B40 00340A80 38 61 00 18 */ addi r3, r1, 0x18
/* 80343B44 00340A84 4B FF 84 BD */ bl OSClearContext
/* 80343B48 00340A88 7F E3 FB 78 */ mr r3, r31
/* 80343B4C 00340A8C 4B FF 82 ED */ bl OSSetCurrentContext
lbl_80343B50:
/* 80343B50 00340A90 80 01 02 FC */ lwz r0, 0x2fc(r1)
/* 80343B54 00340A94 83 E1 02 F4 */ lwz r31, 0x2f4(r1)
/* 80343B58 00340A98 83 C1 02 F0 */ lwz r30, 0x2f0(r1)
/* 80343B5C 00340A9C 83 A1 02 EC */ lwz r29, 0x2ec(r1)
/* 80343B60 00340AA0 38 21 02 F8 */ addi r1, r1, 0x2f8
/* 80343B64 00340AA4 7C 08 03 A6 */ mtlr r0
/* 80343B68 00340AA8 4E 80 00 20 */ blr
.global TCIntrruptHandler
TCIntrruptHandler:
/* 80343B6C 00340AAC 7C 08 02 A6 */ mflr r0
/* 80343B70 00340AB0 90 01 00 04 */ stw r0, 4(r1)
/* 80343B74 00340AB4 94 21 FD 08 */ stwu r1, -0x2f8(r1)
/* 80343B78 00340AB8 93 E1 02 F4 */ stw r31, 0x2f4(r1)
/* 80343B7C 00340ABC 93 C1 02 F0 */ stw r30, 0x2f0(r1)
/* 80343B80 00340AC0 93 A1 02 EC */ stw r29, 0x2ec(r1)
/* 80343B84 00340AC4 93 81 02 E8 */ stw r28, 0x2e8(r1)
/* 80343B88 00340AC8 3B 84 00 00 */ addi r28, r4, 0
/* 80343B8C 00340ACC 7C 65 07 34 */ extsh r5, r3
/* 80343B90 00340AD0 38 05 FF F6 */ addi r0, r5, -10
/* 80343B94 00340AD4 3C 60 55 55 */ lis r3, 0x55555556@ha
/* 80343B98 00340AD8 38 63 55 56 */ addi r3, r3, 0x55555556@l
/* 80343B9C 00340ADC 7C 63 00 96 */ mulhw r3, r3, r0
/* 80343BA0 00340AE0 54 60 0F FE */ srwi r0, r3, 0x1f
/* 80343BA4 00340AE4 7F C3 02 14 */ add r30, r3, r0
/* 80343BA8 00340AE8 57 C4 30 32 */ slwi r4, r30, 6
/* 80343BAC 00340AEC 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80343BB0 00340AF0 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343BB4 00340AF4 7F E0 22 14 */ add r31, r0, r4
/* 80343BB8 00340AF8 3C 00 80 00 */ lis r0, 0x8000
/* 80343BBC 00340AFC 7C 03 2C 30 */ srw r3, r0, r5
/* 80343BC0 00340B00 4B FF 9E FD */ bl __OSMaskInterrupts
/* 80343BC4 00340B04 1C FE 00 14 */ mulli r7, r30, 0x14
/* 80343BC8 00340B08 3C C0 CC 00 */ lis r6, 0xCC006800@ha
/* 80343BCC 00340B0C 38 66 68 00 */ addi r3, r6, 0xCC006800@l
/* 80343BD0 00340B10 7C 63 3A 14 */ add r3, r3, r7
/* 80343BD4 00340B14 80 03 00 00 */ lwz r0, 0(r3)
/* 80343BD8 00340B18 70 00 07 F5 */ andi. r0, r0, 0x7f5
/* 80343BDC 00340B1C 60 00 00 08 */ ori r0, r0, 8
/* 80343BE0 00340B20 90 03 00 00 */ stw r0, 0(r3)
/* 80343BE4 00340B24 80 1F 00 04 */ lwz r0, 4(r31)
/* 80343BE8 00340B28 7C 1D 03 78 */ mr r29, r0
/* 80343BEC 00340B2C 28 00 00 00 */ cmplwi r0, 0
/* 80343BF0 00340B30 41 82 01 74 */ beq lbl_80343D64
/* 80343BF4 00340B34 38 80 00 00 */ li r4, 0
/* 80343BF8 00340B38 90 9F 00 04 */ stw r4, 4(r31)
/* 80343BFC 00340B3C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343C00 00340B40 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80343C04 00340B44 41 82 01 2C */ beq lbl_80343D30
/* 80343C08 00340B48 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343C0C 00340B4C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80343C10 00340B50 41 82 01 14 */ beq lbl_80343D24
/* 80343C14 00340B54 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80343C18 00340B58 2C 03 00 00 */ cmpwi r3, 0
/* 80343C1C 00340B5C 41 82 01 08 */ beq lbl_80343D24
/* 80343C20 00340B60 80 BF 00 14 */ lwz r5, 0x14(r31)
/* 80343C24 00340B64 38 06 68 00 */ addi r0, r6, 0x6800
/* 80343C28 00340B68 7C C0 3A 14 */ add r6, r0, r7
/* 80343C2C 00340B6C 80 06 00 10 */ lwz r0, 0x10(r6)
/* 80343C30 00340B70 40 81 00 F4 */ ble lbl_80343D24
/* 80343C34 00340B74 38 E3 FF F8 */ addi r7, r3, -8
/* 80343C38 00340B78 2C 03 00 08 */ cmpwi r3, 8
/* 80343C3C 00340B7C 40 81 00 BC */ ble lbl_80343CF8
/* 80343C40 00340B80 38 C7 00 07 */ addi r6, r7, 7
/* 80343C44 00340B84 54 C6 E8 FE */ srwi r6, r6, 3
/* 80343C48 00340B88 7C C9 03 A6 */ mtctr r6
/* 80343C4C 00340B8C 2C 07 00 00 */ cmpwi r7, 0
/* 80343C50 00340B90 40 81 00 A8 */ ble lbl_80343CF8
lbl_80343C54:
/* 80343C54 00340B94 20 C4 00 03 */ subfic r6, r4, 3
/* 80343C58 00340B98 54 C6 18 38 */ slwi r6, r6, 3
/* 80343C5C 00340B9C 7C 06 34 30 */ srw r6, r0, r6
/* 80343C60 00340BA0 98 C5 00 00 */ stb r6, 0(r5)
/* 80343C64 00340BA4 38 C4 00 01 */ addi r6, r4, 1
/* 80343C68 00340BA8 20 C6 00 03 */ subfic r6, r6, 3
/* 80343C6C 00340BAC 54 C6 18 38 */ slwi r6, r6, 3
/* 80343C70 00340BB0 7C 06 34 30 */ srw r6, r0, r6
/* 80343C74 00340BB4 98 C5 00 01 */ stb r6, 1(r5)
/* 80343C78 00340BB8 38 C4 00 02 */ addi r6, r4, 2
/* 80343C7C 00340BBC 20 C6 00 03 */ subfic r6, r6, 3
/* 80343C80 00340BC0 54 C6 18 38 */ slwi r6, r6, 3
/* 80343C84 00340BC4 7C 06 34 30 */ srw r6, r0, r6
/* 80343C88 00340BC8 98 C5 00 02 */ stb r6, 2(r5)
/* 80343C8C 00340BCC 7C C4 00 D0 */ neg r6, r4
/* 80343C90 00340BD0 54 C6 18 38 */ slwi r6, r6, 3
/* 80343C94 00340BD4 7C 06 34 30 */ srw r6, r0, r6
/* 80343C98 00340BD8 98 C5 00 03 */ stb r6, 3(r5)
/* 80343C9C 00340BDC 38 C4 00 04 */ addi r6, r4, 4
/* 80343CA0 00340BE0 20 C6 00 03 */ subfic r6, r6, 3
/* 80343CA4 00340BE4 54 C6 18 38 */ slwi r6, r6, 3
/* 80343CA8 00340BE8 7C 06 34 30 */ srw r6, r0, r6
/* 80343CAC 00340BEC 98 C5 00 04 */ stb r6, 4(r5)
/* 80343CB0 00340BF0 38 C4 00 05 */ addi r6, r4, 5
/* 80343CB4 00340BF4 20 C6 00 03 */ subfic r6, r6, 3
/* 80343CB8 00340BF8 54 C6 18 38 */ slwi r6, r6, 3
/* 80343CBC 00340BFC 7C 06 34 30 */ srw r6, r0, r6
/* 80343CC0 00340C00 98 C5 00 05 */ stb r6, 5(r5)
/* 80343CC4 00340C04 38 C4 00 06 */ addi r6, r4, 6
/* 80343CC8 00340C08 20 C6 00 03 */ subfic r6, r6, 3
/* 80343CCC 00340C0C 54 C6 18 38 */ slwi r6, r6, 3
/* 80343CD0 00340C10 7C 06 34 30 */ srw r6, r0, r6
/* 80343CD4 00340C14 98 C5 00 06 */ stb r6, 6(r5)
/* 80343CD8 00340C18 38 C4 00 07 */ addi r6, r4, 7
/* 80343CDC 00340C1C 20 C6 00 03 */ subfic r6, r6, 3
/* 80343CE0 00340C20 54 C6 18 38 */ slwi r6, r6, 3
/* 80343CE4 00340C24 7C 06 34 30 */ srw r6, r0, r6
/* 80343CE8 00340C28 98 C5 00 07 */ stb r6, 7(r5)
/* 80343CEC 00340C2C 38 A5 00 08 */ addi r5, r5, 8
/* 80343CF0 00340C30 38 84 00 08 */ addi r4, r4, 8
/* 80343CF4 00340C34 42 00 FF 60 */ bdnz lbl_80343C54
lbl_80343CF8:
/* 80343CF8 00340C38 7C C4 18 50 */ subf r6, r4, r3
/* 80343CFC 00340C3C 7C C9 03 A6 */ mtctr r6
/* 80343D00 00340C40 7C 04 18 00 */ cmpw r4, r3
/* 80343D04 00340C44 40 80 00 20 */ bge lbl_80343D24
lbl_80343D08:
/* 80343D08 00340C48 20 64 00 03 */ subfic r3, r4, 3
/* 80343D0C 00340C4C 54 63 18 38 */ slwi r3, r3, 3
/* 80343D10 00340C50 7C 03 1C 30 */ srw r3, r0, r3
/* 80343D14 00340C54 98 65 00 00 */ stb r3, 0(r5)
/* 80343D18 00340C58 38 A5 00 01 */ addi r5, r5, 1
/* 80343D1C 00340C5C 38 84 00 01 */ addi r4, r4, 1
/* 80343D20 00340C60 42 00 FF E8 */ bdnz lbl_80343D08
lbl_80343D24:
/* 80343D24 00340C64 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80343D28 00340C68 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 80343D2C 00340C6C 90 1F 00 0C */ stw r0, 0xc(r31)
lbl_80343D30:
/* 80343D30 00340C70 38 61 00 20 */ addi r3, r1, 0x20
/* 80343D34 00340C74 4B FF 82 CD */ bl OSClearContext
/* 80343D38 00340C78 38 61 00 20 */ addi r3, r1, 0x20
/* 80343D3C 00340C7C 4B FF 80 FD */ bl OSSetCurrentContext
/* 80343D40 00340C80 38 7E 00 00 */ addi r3, r30, 0
/* 80343D44 00340C84 38 9C 00 00 */ addi r4, r28, 0
/* 80343D48 00340C88 39 9D 00 00 */ addi r12, r29, 0
/* 80343D4C 00340C8C 7D 88 03 A6 */ mtlr r12
/* 80343D50 00340C90 4E 80 00 21 */ blrl
/* 80343D54 00340C94 38 61 00 20 */ addi r3, r1, 0x20
/* 80343D58 00340C98 4B FF 82 A9 */ bl OSClearContext
/* 80343D5C 00340C9C 7F 83 E3 78 */ mr r3, r28
/* 80343D60 00340CA0 4B FF 80 D9 */ bl OSSetCurrentContext
lbl_80343D64:
/* 80343D64 00340CA4 80 01 02 FC */ lwz r0, 0x2fc(r1)
/* 80343D68 00340CA8 83 E1 02 F4 */ lwz r31, 0x2f4(r1)
/* 80343D6C 00340CAC 83 C1 02 F0 */ lwz r30, 0x2f0(r1)
/* 80343D70 00340CB0 83 A1 02 EC */ lwz r29, 0x2ec(r1)
/* 80343D74 00340CB4 83 81 02 E8 */ lwz r28, 0x2e8(r1)
/* 80343D78 00340CB8 38 21 02 F8 */ addi r1, r1, 0x2f8
/* 80343D7C 00340CBC 7C 08 03 A6 */ mtlr r0
/* 80343D80 00340CC0 4E 80 00 20 */ blr
.global EXTIntrruptHandler
EXTIntrruptHandler:
/* 80343D84 00340CC4 7C 08 02 A6 */ mflr r0
/* 80343D88 00340CC8 90 01 00 04 */ stw r0, 4(r1)
/* 80343D8C 00340CCC 94 21 FD 18 */ stwu r1, -0x2e8(r1)
/* 80343D90 00340CD0 93 E1 02 E4 */ stw r31, 0x2e4(r1)
/* 80343D94 00340CD4 93 C1 02 E0 */ stw r30, 0x2e0(r1)
/* 80343D98 00340CD8 93 A1 02 DC */ stw r29, 0x2dc(r1)
/* 80343D9C 00340CDC 93 81 02 D8 */ stw r28, 0x2d8(r1)
/* 80343DA0 00340CE0 3B E4 00 00 */ addi r31, r4, 0
/* 80343DA4 00340CE4 7C 63 07 34 */ extsh r3, r3
/* 80343DA8 00340CE8 38 03 FF F5 */ addi r0, r3, -11
/* 80343DAC 00340CEC 3C 60 55 55 */ lis r3, 0x55555556@ha
/* 80343DB0 00340CF0 38 63 55 56 */ addi r3, r3, 0x55555556@l
/* 80343DB4 00340CF4 7C 63 00 96 */ mulhw r3, r3, r0
/* 80343DB8 00340CF8 54 60 0F FE */ srwi r0, r3, 0x1f
/* 80343DBC 00340CFC 7F C3 02 14 */ add r30, r3, r0
/* 80343DC0 00340D00 3C 60 00 50 */ lis r3, 0x50
/* 80343DC4 00340D04 1C 1E 00 03 */ mulli r0, r30, 3
/* 80343DC8 00340D08 7C 63 04 30 */ srw r3, r3, r0
/* 80343DCC 00340D0C 4B FF 9C F1 */ bl __OSMaskInterrupts
/* 80343DD0 00340D10 57 C4 30 32 */ slwi r4, r30, 6
/* 80343DD4 00340D14 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80343DD8 00340D18 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80343DDC 00340D1C 7F A0 22 14 */ add r29, r0, r4
/* 80343DE0 00340D20 83 9D 00 08 */ lwz r28, 8(r29)
/* 80343DE4 00340D24 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80343DE8 00340D28 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80343DEC 00340D2C 90 1D 00 0C */ stw r0, 0xc(r29)
/* 80343DF0 00340D30 28 1C 00 00 */ cmplwi r28, 0
/* 80343DF4 00340D34 41 82 00 40 */ beq lbl_80343E34
/* 80343DF8 00340D38 38 61 00 10 */ addi r3, r1, 0x10
/* 80343DFC 00340D3C 4B FF 82 05 */ bl OSClearContext
/* 80343E00 00340D40 38 61 00 10 */ addi r3, r1, 0x10
/* 80343E04 00340D44 4B FF 80 35 */ bl OSSetCurrentContext
/* 80343E08 00340D48 38 00 00 00 */ li r0, 0
/* 80343E0C 00340D4C 90 1D 00 08 */ stw r0, 8(r29)
/* 80343E10 00340D50 38 7E 00 00 */ addi r3, r30, 0
/* 80343E14 00340D54 38 9F 00 00 */ addi r4, r31, 0
/* 80343E18 00340D58 39 9C 00 00 */ addi r12, r28, 0
/* 80343E1C 00340D5C 7D 88 03 A6 */ mtlr r12
/* 80343E20 00340D60 4E 80 00 21 */ blrl
/* 80343E24 00340D64 38 61 00 10 */ addi r3, r1, 0x10
/* 80343E28 00340D68 4B FF 81 D9 */ bl OSClearContext
/* 80343E2C 00340D6C 7F E3 FB 78 */ mr r3, r31
/* 80343E30 00340D70 4B FF 80 09 */ bl OSSetCurrentContext
lbl_80343E34:
/* 80343E34 00340D74 80 01 02 EC */ lwz r0, 0x2ec(r1)
/* 80343E38 00340D78 83 E1 02 E4 */ lwz r31, 0x2e4(r1)
/* 80343E3C 00340D7C 83 C1 02 E0 */ lwz r30, 0x2e0(r1)
/* 80343E40 00340D80 83 A1 02 DC */ lwz r29, 0x2dc(r1)
/* 80343E44 00340D84 83 81 02 D8 */ lwz r28, 0x2d8(r1)
/* 80343E48 00340D88 38 21 02 E8 */ addi r1, r1, 0x2e8
/* 80343E4C 00340D8C 7C 08 03 A6 */ mtlr r0
/* 80343E50 00340D90 4E 80 00 20 */ blr
.global EXIInit
EXIInit:
/* 80343E54 00340D94 7C 08 02 A6 */ mflr r0
/* 80343E58 00340D98 90 01 00 04 */ stw r0, 4(r1)
/* 80343E5C 00340D9C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80343E60 00340DA0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80343E64 00340DA4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80343E68 00340DA8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80343E6C 00340DAC 93 81 00 10 */ stw r28, 0x10(r1)
/* 80343E70 00340DB0 3C 60 CC 00 */ lis r3, 0xCC006800@ha
/* 80343E74 00340DB4 38 63 68 00 */ addi r3, r3, 0xCC006800@l
lbl_80343E78:
/* 80343E78 00340DB8 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80343E7C 00340DBC 54 00 07 FE */ clrlwi r0, r0, 0x1f
/* 80343E80 00340DC0 28 00 00 01 */ cmplwi r0, 1
/* 80343E84 00340DC4 41 82 FF F4 */ beq lbl_80343E78
/* 80343E88 00340DC8 80 03 00 20 */ lwz r0, 0x20(r3)
/* 80343E8C 00340DCC 54 00 07 FE */ clrlwi r0, r0, 0x1f
/* 80343E90 00340DD0 28 00 00 01 */ cmplwi r0, 1
/* 80343E94 00340DD4 41 82 FF E4 */ beq lbl_80343E78
/* 80343E98 00340DD8 80 03 00 34 */ lwz r0, 0x34(r3)
/* 80343E9C 00340DDC 54 00 07 FE */ clrlwi r0, r0, 0x1f
/* 80343EA0 00340DE0 28 00 00 01 */ cmplwi r0, 1
/* 80343EA4 00340DE4 41 82 FF D4 */ beq lbl_80343E78
/* 80343EA8 00340DE8 3C 60 00 80 */ lis r3, 0x007F8000@ha
/* 80343EAC 00340DEC 38 63 80 00 */ addi r3, r3, 0x007F8000@l
/* 80343EB0 00340DF0 4B FF 9C 0D */ bl __OSMaskInterrupts
/* 80343EB4 00340DF4 3B E0 00 00 */ li r31, 0
/* 80343EB8 00340DF8 3C 80 CC 00 */ lis r4, 0xCC006800@ha
/* 80343EBC 00340DFC 93 E4 68 00 */ stw r31, 0xCC006800@l(r4)
/* 80343EC0 00340E00 93 E4 68 14 */ stw r31, 0x6814(r4)
/* 80343EC4 00340E04 93 E4 68 28 */ stw r31, 0x6828(r4)
/* 80343EC8 00340E08 38 00 20 00 */ li r0, 0x2000
/* 80343ECC 00340E0C 90 04 68 00 */ stw r0, 0x6800(r4)
/* 80343ED0 00340E10 38 60 00 09 */ li r3, 9
.global EXIIntrruptHandler
/* 80343ED4 00340E14 3C 80 80 34 */ lis r4, EXIIntrruptHandler@ha
.global EXIIntrruptHandler
/* 80343ED8 00340E18 3B 84 3A A4 */ addi r28, r4, EXIIntrruptHandler@l
/* 80343EDC 00340E1C 38 9C 00 00 */ addi r4, r28, 0
/* 80343EE0 00340E20 4B FF 98 61 */ bl __OSSetInterruptHandler
/* 80343EE4 00340E24 38 60 00 0A */ li r3, 0xa
.global TCIntrruptHandler
/* 80343EE8 00340E28 3C 80 80 34 */ lis r4, TCIntrruptHandler@ha
.global TCIntrruptHandler
/* 80343EEC 00340E2C 3B A4 3B 6C */ addi r29, r4, TCIntrruptHandler@l
/* 80343EF0 00340E30 38 9D 00 00 */ addi r4, r29, 0
/* 80343EF4 00340E34 4B FF 98 4D */ bl __OSSetInterruptHandler
/* 80343EF8 00340E38 38 60 00 0B */ li r3, 0xb
.global EXTIntrruptHandler
/* 80343EFC 00340E3C 3C 80 80 34 */ lis r4, EXTIntrruptHandler@ha
.global EXTIntrruptHandler
/* 80343F00 00340E40 3B C4 3D 84 */ addi r30, r4, EXTIntrruptHandler@l
/* 80343F04 00340E44 38 9E 00 00 */ addi r4, r30, 0
/* 80343F08 00340E48 4B FF 98 39 */ bl __OSSetInterruptHandler
/* 80343F0C 00340E4C 38 60 00 0C */ li r3, 0xc
/* 80343F10 00340E50 38 9C 00 00 */ addi r4, r28, 0
/* 80343F14 00340E54 4B FF 98 2D */ bl __OSSetInterruptHandler
/* 80343F18 00340E58 38 60 00 0D */ li r3, 0xd
/* 80343F1C 00340E5C 38 9D 00 00 */ addi r4, r29, 0
/* 80343F20 00340E60 4B FF 98 21 */ bl __OSSetInterruptHandler
/* 80343F24 00340E64 38 60 00 0E */ li r3, 0xe
/* 80343F28 00340E68 38 9E 00 00 */ addi r4, r30, 0
/* 80343F2C 00340E6C 4B FF 98 15 */ bl __OSSetInterruptHandler
/* 80343F30 00340E70 38 60 00 0F */ li r3, 0xf
/* 80343F34 00340E74 38 9C 00 00 */ addi r4, r28, 0
/* 80343F38 00340E78 4B FF 98 09 */ bl __OSSetInterruptHandler
/* 80343F3C 00340E7C 38 60 00 10 */ li r3, 0x10
/* 80343F40 00340E80 38 9D 00 00 */ addi r4, r29, 0
/* 80343F44 00340E84 4B FF 97 FD */ bl __OSSetInterruptHandler
/* 80343F48 00340E88 38 60 00 00 */ li r3, 0
/* 80343F4C 00340E8C 38 80 00 02 */ li r4, 2
/* 80343F50 00340E90 38 AD 91 58 */ addi r5, r13, lbl_804516D8-_SDA_BASE_
/* 80343F54 00340E94 48 00 02 E5 */ bl EXIGetID
/* 80343F58 00340E98 80 0D 90 A8 */ lwz r0, lbl_80451628-_SDA_BASE_(r13)
/* 80343F5C 00340E9C 2C 00 00 00 */ cmpwi r0, 0
/* 80343F60 00340EA0 41 82 00 34 */ beq lbl_80343F94
/* 80343F64 00340EA4 3C 80 80 00 */ lis r4, 0x800030C4@ha
/* 80343F68 00340EA8 93 E4 30 C4 */ stw r31, 0x800030C4@l(r4)
/* 80343F6C 00340EAC 93 E4 30 C0 */ stw r31, 0x30c0(r4)
/* 80343F70 00340EB0 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80343F74 00340EB4 38 63 C5 70 */ addi r3, r3, lbl_8044C570@l
/* 80343F78 00340EB8 93 E3 00 60 */ stw r31, 0x60(r3)
/* 80343F7C 00340EBC 93 E3 00 20 */ stw r31, 0x20(r3)
/* 80343F80 00340EC0 38 60 00 00 */ li r3, 0
/* 80343F84 00340EC4 4B FF F4 75 */ bl __EXIProbe
/* 80343F88 00340EC8 38 60 00 01 */ li r3, 1
/* 80343F8C 00340ECC 4B FF F4 6D */ bl __EXIProbe
/* 80343F90 00340ED0 48 00 00 70 */ b lbl_80344000
lbl_80343F94:
/* 80343F94 00340ED4 38 60 00 00 */ li r3, 0
/* 80343F98 00340ED8 38 80 00 00 */ li r4, 0
/* 80343F9C 00340EDC 38 A1 00 08 */ addi r5, r1, 8
/* 80343FA0 00340EE0 48 00 02 99 */ bl EXIGetID
/* 80343FA4 00340EE4 2C 03 00 00 */ cmpwi r3, 0
/* 80343FA8 00340EE8 41 82 00 24 */ beq lbl_80343FCC
/* 80343FAC 00340EEC 80 61 00 08 */ lwz r3, 8(r1)
/* 80343FB0 00340EF0 3C 03 F8 FF */ addis r0, r3, 0xf8ff
/* 80343FB4 00340EF4 28 00 00 00 */ cmplwi r0, 0
/* 80343FB8 00340EF8 40 82 00 14 */ bne lbl_80343FCC
/* 80343FBC 00340EFC 38 60 00 01 */ li r3, 1
/* 80343FC0 00340F00 38 80 00 00 */ li r4, 0
/* 80343FC4 00340F04 48 00 07 B1 */ bl __OSEnableBarnacle
/* 80343FC8 00340F08 48 00 00 38 */ b lbl_80344000
lbl_80343FCC:
/* 80343FCC 00340F0C 38 60 00 01 */ li r3, 1
/* 80343FD0 00340F10 38 80 00 00 */ li r4, 0
/* 80343FD4 00340F14 38 A1 00 08 */ addi r5, r1, 8
/* 80343FD8 00340F18 48 00 02 61 */ bl EXIGetID
/* 80343FDC 00340F1C 2C 03 00 00 */ cmpwi r3, 0
/* 80343FE0 00340F20 41 82 00 20 */ beq lbl_80344000
/* 80343FE4 00340F24 80 61 00 08 */ lwz r3, 8(r1)
/* 80343FE8 00340F28 3C 03 F8 FF */ addis r0, r3, 0xf8ff
/* 80343FEC 00340F2C 28 00 00 00 */ cmplwi r0, 0
/* 80343FF0 00340F30 40 82 00 10 */ bne lbl_80344000
/* 80343FF4 00340F34 38 60 00 00 */ li r3, 0
/* 80343FF8 00340F38 38 80 00 02 */ li r4, 2
/* 80343FFC 00340F3C 48 00 07 79 */ bl __OSEnableBarnacle
lbl_80344000:
/* 80344000 00340F40 80 6D 84 40 */ lwz r3, lbl_804509C0-_SDA_BASE_(r13)
/* 80344004 00340F44 4B FF 68 71 */ bl OSRegisterVersion
/* 80344008 00340F48 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8034400C 00340F4C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80344010 00340F50 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80344014 00340F54 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80344018 00340F58 83 81 00 10 */ lwz r28, 0x10(r1)
/* 8034401C 00340F5C 38 21 00 20 */ addi r1, r1, 0x20
/* 80344020 00340F60 7C 08 03 A6 */ mtlr r0
/* 80344024 00340F64 4E 80 00 20 */ blr
.global EXILock
EXILock:
/* 80344028 00340F68 7C 08 02 A6 */ mflr r0
/* 8034402C 00340F6C 90 01 00 04 */ stw r0, 4(r1)
/* 80344030 00340F70 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80344034 00340F74 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 80344038 00340F78 3B 63 00 00 */ addi r27, r3, 0
/* 8034403C 00340F7C 3B E4 00 00 */ addi r31, r4, 0
/* 80344040 00340F80 3B 85 00 00 */ addi r28, r5, 0
/* 80344044 00340F84 54 64 30 32 */ slwi r4, r3, 6
/* 80344048 00340F88 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 8034404C 00340F8C 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80344050 00340F90 7F C0 22 14 */ add r30, r0, r4
/* 80344054 00340F94 4B FF 96 A1 */ bl __RAS_OSDisableInterrupts_begin
/* 80344058 00340F98 7C 7D 1B 78 */ mr r29, r3
/* 8034405C 00340F9C 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80344060 00340FA0 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80344064 00340FA4 41 82 00 7C */ beq lbl_803440E0
/* 80344068 00340FA8 28 1C 00 00 */ cmplwi r28, 0
/* 8034406C 00340FAC 41 82 00 64 */ beq lbl_803440D0
/* 80344070 00340FB0 7F C3 F3 78 */ mr r3, r30
/* 80344074 00340FB4 80 9E 00 24 */ lwz r4, 0x24(r30)
/* 80344078 00340FB8 7C 89 03 A6 */ mtctr r4
/* 8034407C 00340FBC 2C 04 00 00 */ cmpwi r4, 0
/* 80344080 00340FC0 40 81 00 28 */ ble lbl_803440A8
lbl_80344084:
/* 80344084 00340FC4 80 03 00 28 */ lwz r0, 0x28(r3)
/* 80344088 00340FC8 7C 00 F8 40 */ cmplw r0, r31
/* 8034408C 00340FCC 40 82 00 14 */ bne lbl_803440A0
/* 80344090 00340FD0 7F A3 EB 78 */ mr r3, r29
/* 80344094 00340FD4 4B FF 96 89 */ bl OSRestoreInterrupts
/* 80344098 00340FD8 38 60 00 00 */ li r3, 0
/* 8034409C 00340FDC 48 00 00 6C */ b lbl_80344108
lbl_803440A0:
/* 803440A0 00340FE0 38 63 00 08 */ addi r3, r3, 8
/* 803440A4 00340FE4 42 00 FF E0 */ bdnz lbl_80344084
lbl_803440A8:
/* 803440A8 00340FE8 54 80 18 38 */ slwi r0, r4, 3
/* 803440AC 00340FEC 7C 7E 02 14 */ add r3, r30, r0
/* 803440B0 00340FF0 93 83 00 2C */ stw r28, 0x2c(r3)
/* 803440B4 00340FF4 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 803440B8 00340FF8 54 00 18 38 */ slwi r0, r0, 3
/* 803440BC 00340FFC 7C 7E 02 14 */ add r3, r30, r0
/* 803440C0 00341000 93 E3 00 28 */ stw r31, 0x28(r3)
/* 803440C4 00341004 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 803440C8 00341008 38 03 00 01 */ addi r0, r3, 1
/* 803440CC 0034100C 90 1E 00 24 */ stw r0, 0x24(r30)
lbl_803440D0:
/* 803440D0 00341010 7F A3 EB 78 */ mr r3, r29
/* 803440D4 00341014 4B FF 96 49 */ bl OSRestoreInterrupts
/* 803440D8 00341018 38 60 00 00 */ li r3, 0
/* 803440DC 0034101C 48 00 00 2C */ b lbl_80344108
lbl_803440E0:
/* 803440E0 00341020 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 803440E4 00341024 60 00 00 10 */ ori r0, r0, 0x10
/* 803440E8 00341028 90 1E 00 0C */ stw r0, 0xc(r30)
/* 803440EC 0034102C 93 FE 00 18 */ stw r31, 0x18(r30)
/* 803440F0 00341030 38 7B 00 00 */ addi r3, r27, 0
/* 803440F4 00341034 38 9E 00 00 */ addi r4, r30, 0
/* 803440F8 00341038 4B FF EB 15 */ bl SetExiInterruptMask
/* 803440FC 0034103C 7F A3 EB 78 */ mr r3, r29
/* 80344100 00341040 4B FF 96 1D */ bl OSRestoreInterrupts
/* 80344104 00341044 38 60 00 01 */ li r3, 1
lbl_80344108:
/* 80344108 00341048 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8034410C 0034104C BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 80344110 00341050 38 21 00 30 */ addi r1, r1, 0x30
/* 80344114 00341054 7C 08 03 A6 */ mtlr r0
/* 80344118 00341058 4E 80 00 20 */ blr
.global EXIUnlock
EXIUnlock:
/* 8034411C 0034105C 7C 08 02 A6 */ mflr r0
/* 80344120 00341060 90 01 00 04 */ stw r0, 4(r1)
/* 80344124 00341064 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80344128 00341068 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8034412C 0034106C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80344130 00341070 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80344134 00341074 93 81 00 10 */ stw r28, 0x10(r1)
/* 80344138 00341078 3B 83 00 00 */ addi r28, r3, 0
/* 8034413C 0034107C 54 64 30 32 */ slwi r4, r3, 6
/* 80344140 00341080 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80344144 00341084 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80344148 00341088 7F E0 22 14 */ add r31, r0, r4
/* 8034414C 0034108C 4B FF 95 A9 */ bl __RAS_OSDisableInterrupts_begin
/* 80344150 00341090 7C 7E 1B 78 */ mr r30, r3
/* 80344154 00341094 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344158 00341098 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8034415C 0034109C 40 82 00 14 */ bne lbl_80344170
/* 80344160 003410A0 7F C3 F3 78 */ mr r3, r30
/* 80344164 003410A4 4B FF 95 B9 */ bl OSRestoreInterrupts
/* 80344168 003410A8 38 60 00 00 */ li r3, 0
/* 8034416C 003410AC 48 00 00 6C */ b lbl_803441D8
lbl_80344170:
/* 80344170 003410B0 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344174 003410B4 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a
/* 80344178 003410B8 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8034417C 003410BC 38 7C 00 00 */ addi r3, r28, 0
/* 80344180 003410C0 38 9F 00 00 */ addi r4, r31, 0
/* 80344184 003410C4 4B FF EA 89 */ bl SetExiInterruptMask
/* 80344188 003410C8 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 8034418C 003410CC 2C 03 00 00 */ cmpwi r3, 0
/* 80344190 003410D0 40 81 00 3C */ ble lbl_803441CC
/* 80344194 003410D4 83 BF 00 2C */ lwz r29, 0x2c(r31)
/* 80344198 003410D8 34 03 FF FF */ addic. r0, r3, -1
/* 8034419C 003410DC 90 1F 00 24 */ stw r0, 0x24(r31)
/* 803441A0 003410E0 40 81 00 18 */ ble lbl_803441B8
/* 803441A4 003410E4 38 7F 00 28 */ addi r3, r31, 0x28
/* 803441A8 003410E8 38 9F 00 30 */ addi r4, r31, 0x30
/* 803441AC 003410EC 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 803441B0 003410F0 54 05 18 38 */ slwi r5, r0, 3
/* 803441B4 003410F4 48 02 1F 7D */ bl memmove
lbl_803441B8:
/* 803441B8 003410F8 38 7C 00 00 */ addi r3, r28, 0
/* 803441BC 003410FC 38 80 00 00 */ li r4, 0
/* 803441C0 00341100 39 9D 00 00 */ addi r12, r29, 0
/* 803441C4 00341104 7D 88 03 A6 */ mtlr r12
/* 803441C8 00341108 4E 80 00 21 */ blrl
lbl_803441CC:
/* 803441CC 0034110C 7F C3 F3 78 */ mr r3, r30
/* 803441D0 00341110 4B FF 95 4D */ bl OSRestoreInterrupts
/* 803441D4 00341114 38 60 00 01 */ li r3, 1
lbl_803441D8:
/* 803441D8 00341118 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803441DC 0034111C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803441E0 00341120 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803441E4 00341124 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803441E8 00341128 83 81 00 10 */ lwz r28, 0x10(r1)
/* 803441EC 0034112C 38 21 00 20 */ addi r1, r1, 0x20
/* 803441F0 00341130 7C 08 03 A6 */ mtlr r0
/* 803441F4 00341134 4E 80 00 20 */ blr
.global EXIGetState
EXIGetState:
/* 803441F8 00341138 54 64 30 32 */ slwi r4, r3, 6
/* 803441FC 0034113C 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 80344200 00341140 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80344204 00341144 7C 60 22 14 */ add r3, r0, r4
/* 80344208 00341148 80 63 00 0C */ lwz r3, 0xc(r3)
/* 8034420C 0034114C 4E 80 00 20 */ blr
.global UnlockedHandler
UnlockedHandler:
/* 80344210 00341150 7C 08 02 A6 */ mflr r0
/* 80344214 00341154 90 01 00 04 */ stw r0, 4(r1)
/* 80344218 00341158 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 8034421C 0034115C 38 80 00 00 */ li r4, 0
/* 80344220 00341160 38 A1 00 10 */ addi r5, r1, 0x10
/* 80344224 00341164 48 00 00 15 */ bl EXIGetID
/* 80344228 00341168 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 8034422C 0034116C 38 21 00 18 */ addi r1, r1, 0x18
/* 80344230 00341170 7C 08 03 A6 */ mtlr r0
/* 80344234 00341174 4E 80 00 20 */ blr
.global EXIGetID
EXIGetID:
/* 80344238 00341178 7C 08 02 A6 */ mflr r0
/* 8034423C 0034117C 90 01 00 04 */ stw r0, 4(r1)
/* 80344240 00341180 94 21 FF B8 */ stwu r1, -0x48(r1)
/* 80344244 00341184 BE E1 00 24 */ stmw r23, 0x24(r1)
/* 80344248 00341188 7C 79 1B 79 */ or. r25, r3, r3
/* 8034424C 0034118C 3B 44 00 00 */ addi r26, r4, 0
/* 80344250 00341190 3B 65 00 00 */ addi r27, r5, 0
/* 80344254 00341194 54 64 30 32 */ slwi r4, r3, 6
/* 80344258 00341198 3C 60 80 45 */ lis r3, lbl_8044C570@ha
/* 8034425C 0034119C 38 03 C5 70 */ addi r0, r3, lbl_8044C570@l
/* 80344260 003411A0 7F E0 22 14 */ add r31, r0, r4
/* 80344264 003411A4 40 82 00 24 */ bne lbl_80344288
/* 80344268 003411A8 28 1A 00 02 */ cmplwi r26, 2
/* 8034426C 003411AC 40 82 00 1C */ bne lbl_80344288
/* 80344270 003411B0 80 0D 91 58 */ lwz r0, lbl_804516D8-_SDA_BASE_(r13)
/* 80344274 003411B4 28 00 00 00 */ cmplwi r0, 0
/* 80344278 003411B8 41 82 00 10 */ beq lbl_80344288
/* 8034427C 003411BC 90 1B 00 00 */ stw r0, 0(r27)
/* 80344280 003411C0 38 60 00 01 */ li r3, 1
/* 80344284 003411C4 48 00 03 50 */ b lbl_803445D4
lbl_80344288:
/* 80344288 003411C8 2C 19 00 02 */ cmpwi r25, 2
/* 8034428C 003411CC 40 80 00 E0 */ bge lbl_8034436C
/* 80344290 003411D0 28 1A 00 00 */ cmplwi r26, 0
/* 80344294 003411D4 40 82 00 D8 */ bne lbl_8034436C
/* 80344298 003411D8 7F 23 CB 78 */ mr r3, r25
/* 8034429C 003411DC 4B FF F1 5D */ bl __EXIProbe
/* 803442A0 003411E0 2C 03 00 00 */ cmpwi r3, 0
/* 803442A4 003411E4 40 82 00 0C */ bne lbl_803442B0
/* 803442A8 003411E8 38 60 00 00 */ li r3, 0
/* 803442AC 003411EC 48 00 03 28 */ b lbl_803445D4
lbl_803442B0:
/* 803442B0 003411F0 80 9F 00 20 */ lwz r4, 0x20(r31)
/* 803442B4 003411F4 57 20 10 3A */ slwi r0, r25, 2
/* 803442B8 003411F8 3C 60 80 00 */ lis r3, 0x800030C0@ha
/* 803442BC 003411FC 3B C3 30 C0 */ addi r30, r3, 0x800030C0@l
/* 803442C0 00341200 7F DE 02 14 */ add r30, r30, r0
/* 803442C4 00341204 80 1E 00 00 */ lwz r0, 0(r30)
/* 803442C8 00341208 7C 04 00 00 */ cmpw r4, r0
/* 803442CC 0034120C 40 82 00 14 */ bne lbl_803442E0
/* 803442D0 00341210 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 803442D4 00341214 90 1B 00 00 */ stw r0, 0(r27)
/* 803442D8 00341218 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 803442DC 0034121C 48 00 02 F8 */ b lbl_803445D4
lbl_803442E0:
/* 803442E0 00341220 4B FF 94 15 */ bl __RAS_OSDisableInterrupts_begin
/* 803442E4 00341224 7C 7C 1B 78 */ mr r28, r3
/* 803442E8 00341228 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 803442EC 0034122C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 803442F0 00341230 40 82 00 14 */ bne lbl_80344304
/* 803442F4 00341234 7F 23 CB 78 */ mr r3, r25
/* 803442F8 00341238 4B FF F1 01 */ bl __EXIProbe
/* 803442FC 0034123C 2C 03 00 00 */ cmpwi r3, 0
/* 80344300 00341240 40 82 00 14 */ bne lbl_80344314
lbl_80344304:
/* 80344304 00341244 7F 83 E3 78 */ mr r3, r28
/* 80344308 00341248 4B FF 94 15 */ bl OSRestoreInterrupts
/* 8034430C 0034124C 38 00 00 00 */ li r0, 0
/* 80344310 00341250 48 00 00 48 */ b lbl_80344358
lbl_80344314:
/* 80344314 00341254 38 79 00 00 */ addi r3, r25, 0
/* 80344318 00341258 38 80 00 01 */ li r4, 1
/* 8034431C 0034125C 38 A0 00 00 */ li r5, 0
/* 80344320 00341260 38 C0 00 00 */ li r6, 0
/* 80344324 00341264 4B FF F0 11 */ bl EXIClearInterrupts
/* 80344328 00341268 38 00 00 00 */ li r0, 0
/* 8034432C 0034126C 90 1F 00 08 */ stw r0, 8(r31)
/* 80344330 00341270 3C 60 00 10 */ lis r3, 0x10
/* 80344334 00341274 1C 19 00 03 */ mulli r0, r25, 3
/* 80344338 00341278 7C 63 04 30 */ srw r3, r3, r0
/* 8034433C 0034127C 4B FF 98 09 */ bl __OSUnmaskInterrupts
/* 80344340 00341280 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344344 00341284 60 00 00 08 */ ori r0, r0, 8
/* 80344348 00341288 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8034434C 0034128C 7F 83 E3 78 */ mr r3, r28
/* 80344350 00341290 4B FF 93 CD */ bl OSRestoreInterrupts
/* 80344354 00341294 38 00 00 01 */ li r0, 1
lbl_80344358:
/* 80344358 00341298 2C 00 00 00 */ cmpwi r0, 0
/* 8034435C 0034129C 40 82 00 0C */ bne lbl_80344368
/* 80344360 003412A0 38 60 00 00 */ li r3, 0
/* 80344364 003412A4 48 00 02 70 */ b lbl_803445D4
lbl_80344368:
/* 80344368 003412A8 83 BE 00 00 */ lwz r29, 0(r30)
lbl_8034436C:
/* 8034436C 003412AC 4B FF 93 89 */ bl __RAS_OSDisableInterrupts_begin
/* 80344370 003412B0 3B 83 00 00 */ addi r28, r3, 0
/* 80344374 003412B4 38 00 00 00 */ li r0, 0
/* 80344378 003412B8 2C 19 00 02 */ cmpwi r25, 2
/* 8034437C 003412BC 40 80 00 10 */ bge lbl_8034438C
/* 80344380 003412C0 28 1A 00 00 */ cmplwi r26, 0
/* 80344384 003412C4 40 82 00 08 */ bne lbl_8034438C
/* 80344388 003412C8 38 00 00 01 */ li r0, 1
lbl_8034438C:
/* 8034438C 003412CC 2C 00 00 00 */ cmpwi r0, 0
/* 80344390 003412D0 41 82 00 10 */ beq lbl_803443A0
.global UnlockedHandler
/* 80344394 003412D4 3C 60 80 34 */ lis r3, UnlockedHandler@ha
.global UnlockedHandler
/* 80344398 003412D8 38 A3 42 10 */ addi r5, r3, UnlockedHandler@l
/* 8034439C 003412DC 48 00 00 08 */ b lbl_803443A4
lbl_803443A0:
/* 803443A0 003412E0 38 A0 00 00 */ li r5, 0
lbl_803443A4:
/* 803443A4 003412E4 38 79 00 00 */ addi r3, r25, 0
/* 803443A8 003412E8 38 9A 00 00 */ addi r4, r26, 0
/* 803443AC 003412EC 4B FF FC 7D */ bl EXILock
/* 803443B0 003412F0 7C 60 00 34 */ cntlzw r0, r3
/* 803443B4 003412F4 54 00 D9 7E */ srwi r0, r0, 5
/* 803443B8 003412F8 7C 1E 03 79 */ or. r30, r0, r0
/* 803443BC 003412FC 40 82 01 34 */ bne lbl_803444F0
/* 803443C0 00341300 38 79 00 00 */ addi r3, r25, 0
/* 803443C4 00341304 38 9A 00 00 */ addi r4, r26, 0
/* 803443C8 00341308 38 A0 00 00 */ li r5, 0
/* 803443CC 0034130C 4B FF F4 9D */ bl EXISelect
/* 803443D0 00341310 7C 60 00 34 */ cntlzw r0, r3
/* 803443D4 00341314 54 00 D9 7E */ srwi r0, r0, 5
/* 803443D8 00341318 7C 1E 03 79 */ or. r30, r0, r0
/* 803443DC 0034131C 40 82 00 90 */ bne lbl_8034446C
/* 803443E0 00341320 38 00 00 00 */ li r0, 0
/* 803443E4 00341324 90 01 00 1C */ stw r0, 0x1c(r1)
/* 803443E8 00341328 38 79 00 00 */ addi r3, r25, 0
/* 803443EC 0034132C 38 81 00 1C */ addi r4, r1, 0x1c
/* 803443F0 00341330 38 A0 00 02 */ li r5, 2
/* 803443F4 00341334 38 C0 00 01 */ li r6, 1
/* 803443F8 00341338 38 E0 00 00 */ li r7, 0
/* 803443FC 0034133C 4B FF E9 05 */ bl EXIImm
/* 80344400 00341340 7C 60 00 34 */ cntlzw r0, r3
/* 80344404 00341344 54 00 D9 7E */ srwi r0, r0, 5
/* 80344408 00341348 7F DE 03 78 */ or r30, r30, r0
/* 8034440C 0034134C 38 79 00 00 */ addi r3, r25, 0
/* 80344410 00341350 4B FF EC D9 */ bl EXISync
/* 80344414 00341354 7C 60 00 34 */ cntlzw r0, r3
/* 80344418 00341358 54 00 D9 7E */ srwi r0, r0, 5
/* 8034441C 0034135C 7F DE 03 78 */ or r30, r30, r0
/* 80344420 00341360 38 79 00 00 */ addi r3, r25, 0
/* 80344424 00341364 38 9B 00 00 */ addi r4, r27, 0
/* 80344428 00341368 38 A0 00 04 */ li r5, 4
/* 8034442C 0034136C 38 C0 00 00 */ li r6, 0
/* 80344430 00341370 38 E0 00 00 */ li r7, 0
/* 80344434 00341374 4B FF E8 CD */ bl EXIImm
/* 80344438 00341378 7C 60 00 34 */ cntlzw r0, r3
/* 8034443C 0034137C 54 00 D9 7E */ srwi r0, r0, 5
/* 80344440 00341380 7F DE 03 78 */ or r30, r30, r0
/* 80344444 00341384 38 79 00 00 */ addi r3, r25, 0
/* 80344448 00341388 4B FF EC A1 */ bl EXISync
/* 8034444C 0034138C 7C 60 00 34 */ cntlzw r0, r3
/* 80344450 00341390 54 00 D9 7E */ srwi r0, r0, 5
/* 80344454 00341394 7F DE 03 78 */ or r30, r30, r0
/* 80344458 00341398 38 79 00 00 */ addi r3, r25, 0
/* 8034445C 0034139C 4B FF F5 39 */ bl EXIDeselect
/* 80344460 003413A0 7C 60 00 34 */ cntlzw r0, r3
/* 80344464 003413A4 54 00 D9 7E */ srwi r0, r0, 5
/* 80344468 003413A8 7F DE 03 78 */ or r30, r30, r0
lbl_8034446C:
/* 8034446C 003413AC 4B FF 92 89 */ bl __RAS_OSDisableInterrupts_begin
/* 80344470 003413B0 7C 77 1B 78 */ mr r23, r3
/* 80344474 003413B4 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344478 003413B8 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8034447C 003413BC 40 82 00 10 */ bne lbl_8034448C
/* 80344480 003413C0 7E E3 BB 78 */ mr r3, r23
/* 80344484 003413C4 4B FF 92 99 */ bl OSRestoreInterrupts
/* 80344488 003413C8 48 00 00 68 */ b lbl_803444F0
lbl_8034448C:
/* 8034448C 003413CC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344490 003413D0 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a
/* 80344494 003413D4 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80344498 003413D8 38 79 00 00 */ addi r3, r25, 0
/* 8034449C 003413DC 38 9F 00 00 */ addi r4, r31, 0
/* 803444A0 003413E0 4B FF E7 6D */ bl SetExiInterruptMask
/* 803444A4 003413E4 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 803444A8 003413E8 2C 03 00 00 */ cmpwi r3, 0
/* 803444AC 003413EC 40 81 00 3C */ ble lbl_803444E8
/* 803444B0 003413F0 83 1F 00 2C */ lwz r24, 0x2c(r31)
/* 803444B4 003413F4 34 03 FF FF */ addic. r0, r3, -1
/* 803444B8 003413F8 90 1F 00 24 */ stw r0, 0x24(r31)
/* 803444BC 003413FC 40 81 00 18 */ ble lbl_803444D4
/* 803444C0 00341400 38 7F 00 28 */ addi r3, r31, 0x28
/* 803444C4 00341404 38 9F 00 30 */ addi r4, r31, 0x30
/* 803444C8 00341408 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 803444CC 0034140C 54 05 18 38 */ slwi r5, r0, 3
/* 803444D0 00341410 48 02 1C 61 */ bl memmove
lbl_803444D4:
/* 803444D4 00341414 38 79 00 00 */ addi r3, r25, 0
/* 803444D8 00341418 38 80 00 00 */ li r4, 0
/* 803444DC 0034141C 39 98 00 00 */ addi r12, r24, 0
/* 803444E0 00341420 7D 88 03 A6 */ mtlr r12
/* 803444E4 00341424 4E 80 00 21 */ blrl
lbl_803444E8:
/* 803444E8 00341428 7E E3 BB 78 */ mr r3, r23
/* 803444EC 0034142C 4B FF 92 31 */ bl OSRestoreInterrupts
lbl_803444F0:
/* 803444F0 00341430 7F 83 E3 78 */ mr r3, r28
/* 803444F4 00341434 4B FF 92 29 */ bl OSRestoreInterrupts
/* 803444F8 00341438 2C 19 00 02 */ cmpwi r25, 2
/* 803444FC 0034143C 40 80 00 C4 */ bge lbl_803445C0
/* 80344500 00341440 28 1A 00 00 */ cmplwi r26, 0
/* 80344504 00341444 40 82 00 BC */ bne lbl_803445C0
/* 80344508 00341448 4B FF 91 ED */ bl __RAS_OSDisableInterrupts_begin
/* 8034450C 0034144C 7C 77 1B 78 */ mr r23, r3
/* 80344510 00341450 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344514 00341454 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80344518 00341458 40 82 00 10 */ bne lbl_80344528
/* 8034451C 0034145C 7E E3 BB 78 */ mr r3, r23
/* 80344520 00341460 4B FF 91 FD */ bl OSRestoreInterrupts
/* 80344524 00341464 48 00 00 4C */ b lbl_80344570
lbl_80344528:
/* 80344528 00341468 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8034452C 0034146C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80344530 00341470 41 82 00 1C */ beq lbl_8034454C
/* 80344534 00341474 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 80344538 00341478 28 00 00 00 */ cmplwi r0, 0
/* 8034453C 0034147C 40 82 00 10 */ bne lbl_8034454C
/* 80344540 00341480 7E E3 BB 78 */ mr r3, r23
/* 80344544 00341484 4B FF 91 D9 */ bl OSRestoreInterrupts
/* 80344548 00341488 48 00 00 28 */ b lbl_80344570
lbl_8034454C:
/* 8034454C 0034148C 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80344550 00341490 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80344554 00341494 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80344558 00341498 3C 60 00 50 */ lis r3, 0x50
/* 8034455C 0034149C 1C 19 00 03 */ mulli r0, r25, 3
/* 80344560 003414A0 7C 63 04 30 */ srw r3, r3, r0
/* 80344564 003414A4 4B FF 95 59 */ bl __OSMaskInterrupts
/* 80344568 003414A8 7E E3 BB 78 */ mr r3, r23
/* 8034456C 003414AC 4B FF 91 B1 */ bl OSRestoreInterrupts
lbl_80344570:
/* 80344570 003414B0 4B FF 91 85 */ bl __RAS_OSDisableInterrupts_begin
/* 80344574 003414B4 57 20 10 3A */ slwi r0, r25, 2
/* 80344578 003414B8 3C 80 80 00 */ lis r4, 0x800030C0@ha
/* 8034457C 003414BC 38 84 30 C0 */ addi r4, r4, 0x800030C0@l
/* 80344580 003414C0 7C 04 00 2E */ lwzx r0, r4, r0
/* 80344584 003414C4 7C 9D 00 50 */ subf r4, r29, r0
/* 80344588 003414C8 30 04 FF FF */ addic r0, r4, -1
/* 8034458C 003414CC 7C 00 21 10 */ subfe r0, r0, r4
/* 80344590 003414D0 7F DE 03 79 */ or. r30, r30, r0
/* 80344594 003414D4 40 82 00 10 */ bne lbl_803445A4
/* 80344598 003414D8 80 1B 00 00 */ lwz r0, 0(r27)
/* 8034459C 003414DC 90 1F 00 1C */ stw r0, 0x1c(r31)
/* 803445A0 003414E0 93 BF 00 20 */ stw r29, 0x20(r31)
lbl_803445A4:
/* 803445A4 003414E4 4B FF 91 79 */ bl OSRestoreInterrupts
/* 803445A8 003414E8 2C 1E 00 00 */ cmpwi r30, 0
/* 803445AC 003414EC 41 82 00 0C */ beq lbl_803445B8
/* 803445B0 003414F0 38 60 00 00 */ li r3, 0
/* 803445B4 003414F4 48 00 00 20 */ b lbl_803445D4
lbl_803445B8:
/* 803445B8 003414F8 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 803445BC 003414FC 48 00 00 18 */ b lbl_803445D4
lbl_803445C0:
/* 803445C0 00341500 2C 1E 00 00 */ cmpwi r30, 0
/* 803445C4 00341504 41 82 00 0C */ beq lbl_803445D0
/* 803445C8 00341508 38 60 00 00 */ li r3, 0
/* 803445CC 0034150C 48 00 00 08 */ b lbl_803445D4
lbl_803445D0:
/* 803445D0 00341510 38 60 00 01 */ li r3, 1
lbl_803445D4:
/* 803445D4 00341514 80 01 00 4C */ lwz r0, 0x4c(r1)
/* 803445D8 00341518 BA E1 00 24 */ lmw r23, 0x24(r1)
/* 803445DC 0034151C 38 21 00 48 */ addi r1, r1, 0x48
/* 803445E0 00341520 7C 08 03 A6 */ mtlr r0
/* 803445E4 00341524 4E 80 00 20 */ blr