papermario/asm/nonmatchings/code_20ec0_len_5040/func_80045FB4.s
2020-08-12 22:37:16 -04:00

1571 lines
74 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80045FB4
/* 0213B4 80045FB4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0213B8 80045FB8 AFBF0014 */ sw $ra, 0x14($sp)
/* 0213BC 80045FBC 0C011722 */ jal func_80045C88
/* 0213C0 80045FC0 AFB00010 */ sw $s0, 0x10($sp)
/* 0213C4 80045FC4 0040802D */ daddu $s0, $v0, $zero
/* 0213C8 80045FC8 12000015 */ beqz $s0, .L80046020
/* 0213CC 80045FCC 24042C00 */ addiu $a0, $zero, 0x2c00
/* 0213D0 80045FD0 3C028004 */ lui $v0, 0x8004
/* 0213D4 80045FD4 24426030 */ addiu $v0, $v0, 0x6030
/* 0213D8 80045FD8 AE020004 */ sw $v0, 4($s0)
/* 0213DC 80045FDC 3C028004 */ lui $v0, 0x8004
/* 0213E0 80045FE0 244265E0 */ addiu $v0, $v0, 0x65e0
/* 0213E4 80045FE4 AE000000 */ sw $zero, ($s0)
/* 0213E8 80045FE8 AE000008 */ sw $zero, 8($s0)
/* 0213EC 80045FEC 0C00AB0A */ jal general_heap_malloc
/* 0213F0 80045FF0 AE02000C */ sw $v0, 0xc($s0)
/* 0213F4 80045FF4 AE020018 */ sw $v0, 0x18($s0)
/* 0213F8 80045FF8 3C01800A */ lui $at, 0x800a
/* 0213FC 80045FFC AC220F44 */ sw $v0, 0xf44($at)
/* 021400 80046000 14400003 */ bnez $v0, .L80046010
/* 021404 80046004 2403003F */ addiu $v1, $zero, 0x3f
.L80046008:
/* 021408 80046008 08011802 */ j .L80046008
/* 02140C 8004600C 00000000 */ nop
.L80046010:
/* 021410 80046010 AC400000 */ sw $zero, ($v0)
/* 021414 80046014 2463FFFF */ addiu $v1, $v1, -1
/* 021418 80046018 0461FFFD */ bgez $v1, .L80046010
/* 02141C 8004601C 244200B0 */ addiu $v0, $v0, 0xb0
.L80046020:
/* 021420 80046020 8FBF0014 */ lw $ra, 0x14($sp)
/* 021424 80046024 8FB00010 */ lw $s0, 0x10($sp)
/* 021428 80046028 03E00008 */ jr $ra
/* 02142C 8004602C 27BD0018 */ addiu $sp, $sp, 0x18
/* 021430 80046030 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 021434 80046034 AFB40020 */ sw $s4, 0x20($sp)
/* 021438 80046038 3C14800A */ lui $s4, 0x800a
/* 02143C 8004603C 8E940F44 */ lw $s4, 0xf44($s4)
/* 021440 80046040 AFB50024 */ sw $s5, 0x24($sp)
/* 021444 80046044 0000A82D */ daddu $s5, $zero, $zero
/* 021448 80046048 AFB20018 */ sw $s2, 0x18($sp)
/* 02144C 8004604C 24120001 */ addiu $s2, $zero, 1
/* 021450 80046050 AFB3001C */ sw $s3, 0x1c($sp)
/* 021454 80046054 24130002 */ addiu $s3, $zero, 2
/* 021458 80046058 AFB60028 */ sw $s6, 0x28($sp)
/* 02145C 8004605C 24160002 */ addiu $s6, $zero, 2
/* 021460 80046060 AFB7002C */ sw $s7, 0x2c($sp)
/* 021464 80046064 24170014 */ addiu $s7, $zero, 0x14
/* 021468 80046068 AFBF0030 */ sw $ra, 0x30($sp)
/* 02146C 8004606C AFB10014 */ sw $s1, 0x14($sp)
/* 021470 80046070 AFB00010 */ sw $s0, 0x10($sp)
/* 021474 80046074 26910085 */ addiu $s1, $s4, 0x85
.L80046078:
/* 021478 80046078 8E820000 */ lw $v0, ($s4)
/* 02147C 8004607C 50400149 */ beql $v0, $zero, .L800465A4
/* 021480 80046080 26B50001 */ addiu $s5, $s5, 1
/* 021484 80046084 8222FFB5 */ lb $v0, -0x4b($s1)
/* 021488 80046088 1452003A */ bne $v0, $s2, .L80046174
/* 02148C 8004608C 00000000 */ nop
/* 021490 80046090 9222FFB3 */ lbu $v0, -0x4d($s1)
/* 021494 80046094 2442FFFD */ addiu $v0, $v0, -3
/* 021498 80046098 00021600 */ sll $v0, $v0, 0x18
/* 02149C 8004609C 00021E03 */ sra $v1, $v0, 0x18
/* 0214A0 800460A0 2C620008 */ sltiu $v0, $v1, 8
/* 0214A4 800460A4 10400026 */ beqz $v0, .L80046140
/* 0214A8 800460A8 00031080 */ sll $v0, $v1, 2
/* 0214AC 800460AC 3C01800A */ lui $at, 0x800a
/* 0214B0 800460B0 00220821 */ addu $at, $at, $v0
/* 0214B4 800460B4 8C2286C8 */ lw $v0, -0x7938($at)
/* 0214B8 800460B8 00400008 */ jr $v0
/* 0214BC 800460BC 00000000 */ nop
/* 0214C0 800460C0 3C048010 */ lui $a0, 0x8010
/* 0214C4 800460C4 24844CC4 */ addiu $a0, $a0, 0x4cc4
/* 0214C8 800460C8 08011852 */ j .L80046148
/* 0214CC 800460CC 00000000 */ nop
/* 0214D0 800460D0 3C048010 */ lui $a0, 0x8010
/* 0214D4 800460D4 2484551C */ addiu $a0, $a0, 0x551c
/* 0214D8 800460D8 08011852 */ j .L80046148
/* 0214DC 800460DC 00000000 */ nop
/* 0214E0 800460E0 3C048010 */ lui $a0, 0x8010
/* 0214E4 800460E4 24845900 */ addiu $a0, $a0, 0x5900
/* 0214E8 800460E8 08011852 */ j .L80046148
/* 0214EC 800460EC 00000000 */ nop
/* 0214F0 800460F0 3C048010 */ lui $a0, 0x8010
/* 0214F4 800460F4 248462A0 */ addiu $a0, $a0, 0x62a0
/* 0214F8 800460F8 08011852 */ j .L80046148
/* 0214FC 800460FC 00000000 */ nop
/* 021500 80046100 3C048010 */ lui $a0, 0x8010
/* 021504 80046104 24846610 */ addiu $a0, $a0, 0x6610
/* 021508 80046108 08011852 */ j .L80046148
/* 02150C 8004610C 00000000 */ nop
/* 021510 80046110 3C048010 */ lui $a0, 0x8010
/* 021514 80046114 24845C54 */ addiu $a0, $a0, 0x5c54
/* 021518 80046118 08011852 */ j .L80046148
/* 02151C 8004611C 00000000 */ nop
/* 021520 80046120 3C048010 */ lui $a0, 0x8010
/* 021524 80046124 24846964 */ addiu $a0, $a0, 0x6964
/* 021528 80046128 08011852 */ j .L80046148
/* 02152C 8004612C 00000000 */ nop
/* 021530 80046130 3C048010 */ lui $a0, 0x8010
/* 021534 80046134 24845FA8 */ addiu $a0, $a0, 0x5fa8
/* 021538 80046138 08011852 */ j .L80046148
/* 02153C 8004613C 00000000 */ nop
.L80046140:
/* 021540 80046140 3C048008 */ lui $a0, 0x8008
/* 021544 80046144 248404F0 */ addiu $a0, $a0, 0x4f0
.L80046148:
/* 021548 80046148 0C050529 */ jal create_icon
/* 02154C 8004614C 00000000 */ nop
/* 021550 80046150 AE22FFBB */ sw $v0, -0x45($s1)
/* 021554 80046154 0040802D */ daddu $s0, $v0, $zero
/* 021558 80046158 0200202D */ daddu $a0, $s0, $zero
/* 02155C 8004615C 0C051280 */ jal set_icon_flags
/* 021560 80046160 24050002 */ addiu $a1, $zero, 2
/* 021564 80046164 0200202D */ daddu $a0, $s0, $zero
/* 021568 80046168 0C051280 */ jal set_icon_flags
/* 02156C 8004616C 24050080 */ addiu $a1, $zero, 0x80
/* 021570 80046170 A233FFB5 */ sb $s3, -0x4b($s1)
.L80046174:
/* 021574 80046174 8223FFB6 */ lb $v1, -0x4a($s1)
/* 021578 80046178 10720007 */ beq $v1, $s2, .L80046198
/* 02157C 8004617C 28620002 */ slti $v0, $v1, 2
/* 021580 80046180 1440004C */ bnez $v0, .L800462B4
/* 021584 80046184 00000000 */ nop
/* 021588 80046188 10760040 */ beq $v1, $s6, .L8004628C
/* 02158C 8004618C 00000000 */ nop
/* 021590 80046190 080118AD */ j .L800462B4
/* 021594 80046194 00000000 */ nop
.L80046198:
/* 021598 80046198 9222FFB4 */ lbu $v0, -0x4c($s1)
/* 02159C 8004619C 2442FFFD */ addiu $v0, $v0, -3
/* 0215A0 800461A0 00021600 */ sll $v0, $v0, 0x18
/* 0215A4 800461A4 00021E03 */ sra $v1, $v0, 0x18
/* 0215A8 800461A8 2C620008 */ sltiu $v0, $v1, 8
/* 0215AC 800461AC 1040002E */ beqz $v0, .L80046268
/* 0215B0 800461B0 00031080 */ sll $v0, $v1, 2
/* 0215B4 800461B4 3C01800A */ lui $at, 0x800a
/* 0215B8 800461B8 00220821 */ addu $at, $at, $v0
/* 0215BC 800461BC 8C2286E8 */ lw $v0, -0x7918($at)
/* 0215C0 800461C0 00400008 */ jr $v0
/* 0215C4 800461C4 00000000 */ nop
/* 0215C8 800461C8 8E24FFBF */ lw $a0, -0x41($s1)
/* 0215CC 800461CC 3C058010 */ lui $a1, 0x8010
/* 0215D0 800461D0 24A54E64 */ addiu $a1, $a1, 0x4e64
/* 0215D4 800461D4 0801189D */ j .L80046274
/* 0215D8 800461D8 00000000 */ nop
/* 0215DC 800461DC 8E24FFBF */ lw $a0, -0x41($s1)
/* 0215E0 800461E0 3C058010 */ lui $a1, 0x8010
/* 0215E4 800461E4 24A5574C */ addiu $a1, $a1, 0x574c
/* 0215E8 800461E8 0801189D */ j .L80046274
/* 0215EC 800461EC 00000000 */ nop
/* 0215F0 800461F0 8E24FFBF */ lw $a0, -0x41($s1)
/* 0215F4 800461F4 3C058010 */ lui $a1, 0x8010
/* 0215F8 800461F8 24A55AA0 */ addiu $a1, $a1, 0x5aa0
/* 0215FC 800461FC 0801189D */ j .L80046274
/* 021600 80046200 00000000 */ nop
/* 021604 80046204 8E24FFBF */ lw $a0, -0x41($s1)
/* 021608 80046208 3C058010 */ lui $a1, 0x8010
/* 02160C 8004620C 24A562A0 */ addiu $a1, $a1, 0x62a0
/* 021610 80046210 0801189D */ j .L80046274
/* 021614 80046214 00000000 */ nop
/* 021618 80046218 8E24FFBF */ lw $a0, -0x41($s1)
/* 02161C 8004621C 3C058010 */ lui $a1, 0x8010
/* 021620 80046220 24A567B0 */ addiu $a1, $a1, 0x67b0
/* 021624 80046224 0801189D */ j .L80046274
/* 021628 80046228 00000000 */ nop
/* 02162C 8004622C 8E24FFBF */ lw $a0, -0x41($s1)
/* 021630 80046230 3C058010 */ lui $a1, 0x8010
/* 021634 80046234 24A55DF4 */ addiu $a1, $a1, 0x5df4
/* 021638 80046238 0801189D */ j .L80046274
/* 02163C 8004623C 00000000 */ nop
/* 021640 80046240 8E24FFBF */ lw $a0, -0x41($s1)
/* 021644 80046244 3C058010 */ lui $a1, 0x8010
/* 021648 80046248 24A56B04 */ addiu $a1, $a1, 0x6b04
/* 02164C 8004624C 0801189D */ j .L80046274
/* 021650 80046250 00000000 */ nop
/* 021654 80046254 8E24FFBF */ lw $a0, -0x41($s1)
/* 021658 80046258 3C058010 */ lui $a1, 0x8010
/* 02165C 8004625C 24A56148 */ addiu $a1, $a1, 0x6148
/* 021660 80046260 0801189D */ j .L80046274
/* 021664 80046264 00000000 */ nop
.L80046268:
/* 021668 80046268 8E24FFBF */ lw $a0, -0x41($s1)
/* 02166C 8004626C 3C058008 */ lui $a1, 0x8008
/* 021670 80046270 24A504F0 */ addiu $a1, $a1, 0x4f0
.L80046274:
/* 021674 80046274 0C0511FF */ jal set_menu_icon_script
/* 021678 80046278 00000000 */ nop
/* 02167C 8004627C 2402000A */ addiu $v0, $zero, 0xa
/* 021680 80046280 A222FFB8 */ sb $v0, -0x48($s1)
/* 021684 80046284 080118AD */ j .L800462B4
/* 021688 80046288 A233FFB6 */ sb $s3, -0x4a($s1)
.L8004628C:
/* 02168C 8004628C 8222FFB8 */ lb $v0, -0x48($s1)
/* 021690 80046290 9223FFB8 */ lbu $v1, -0x48($s1)
/* 021694 80046294 10400003 */ beqz $v0, .L800462A4
/* 021698 80046298 2462FFFF */ addiu $v0, $v1, -1
/* 02169C 8004629C 080118AD */ j .L800462B4
/* 0216A0 800462A0 A222FFB8 */ sb $v0, -0x48($s1)
.L800462A4:
/* 0216A4 800462A4 8E24FFBF */ lw $a0, -0x41($s1)
/* 0216A8 800462A8 0C05123D */ jal free_icon
/* 0216AC 800462AC A220FFB4 */ sb $zero, -0x4c($s1)
/* 0216B0 800462B0 A220FFB6 */ sb $zero, -0x4a($s1)
.L800462B4:
/* 0216B4 800462B4 8222FFC5 */ lb $v0, -0x3b($s1)
/* 0216B8 800462B8 14520013 */ bne $v0, $s2, .L80046308
/* 0216BC 800462BC 2402000B */ addiu $v0, $zero, 0xb
/* 0216C0 800462C0 8223FFC3 */ lb $v1, -0x3d($s1)
/* 0216C4 800462C4 3C048008 */ lui $a0, 0x8008
/* 0216C8 800462C8 248404F0 */ addiu $a0, $a0, 0x4f0
/* 0216CC 800462CC 14620003 */ bne $v1, $v0, .L800462DC
/* 0216D0 800462D0 00000000 */ nop
/* 0216D4 800462D4 3C048010 */ lui $a0, 0x8010
/* 0216D8 800462D8 248450A8 */ addiu $a0, $a0, 0x50a8
.L800462DC:
/* 0216DC 800462DC 0C050529 */ jal create_icon
/* 0216E0 800462E0 00000000 */ nop
/* 0216E4 800462E4 AE22FFCB */ sw $v0, -0x35($s1)
/* 0216E8 800462E8 0040802D */ daddu $s0, $v0, $zero
/* 0216EC 800462EC 0200202D */ daddu $a0, $s0, $zero
/* 0216F0 800462F0 0C051280 */ jal set_icon_flags
/* 0216F4 800462F4 24050002 */ addiu $a1, $zero, 2
/* 0216F8 800462F8 0200202D */ daddu $a0, $s0, $zero
/* 0216FC 800462FC 0C051280 */ jal set_icon_flags
/* 021700 80046300 24050080 */ addiu $a1, $zero, 0x80
/* 021704 80046304 A233FFC5 */ sb $s3, -0x3b($s1)
.L80046308:
/* 021708 80046308 8223FFC6 */ lb $v1, -0x3a($s1)
/* 02170C 8004630C 10720007 */ beq $v1, $s2, .L8004632C
/* 021710 80046310 28620002 */ slti $v0, $v1, 2
/* 021714 80046314 14400020 */ bnez $v0, .L80046398
/* 021718 80046318 00000000 */ nop
/* 02171C 8004631C 10760014 */ beq $v1, $s6, .L80046370
/* 021720 80046320 00000000 */ nop
/* 021724 80046324 080118E6 */ j .L80046398
/* 021728 80046328 00000000 */ nop
.L8004632C:
/* 02172C 8004632C 8223FFC4 */ lb $v1, -0x3c($s1)
/* 021730 80046330 2402000B */ addiu $v0, $zero, 0xb
/* 021734 80046334 14620006 */ bne $v1, $v0, .L80046350
/* 021738 80046338 00000000 */ nop
/* 02173C 8004633C 8E24FFCF */ lw $a0, -0x31($s1)
/* 021740 80046340 3C058010 */ lui $a1, 0x8010
/* 021744 80046344 24A552D8 */ addiu $a1, $a1, 0x52d8
/* 021748 80046348 080118D7 */ j .L8004635C
/* 02174C 8004634C 00000000 */ nop
.L80046350:
/* 021750 80046350 8E24FFCF */ lw $a0, -0x31($s1)
/* 021754 80046354 3C058008 */ lui $a1, 0x8008
/* 021758 80046358 24A504F0 */ addiu $a1, $a1, 0x4f0
.L8004635C:
/* 02175C 8004635C 0C0511FF */ jal set_menu_icon_script
/* 021760 80046360 00000000 */ nop
/* 021764 80046364 A237FFC8 */ sb $s7, -0x38($s1)
/* 021768 80046368 080118E6 */ j .L80046398
/* 02176C 8004636C A233FFC6 */ sb $s3, -0x3a($s1)
.L80046370:
/* 021770 80046370 8222FFC8 */ lb $v0, -0x38($s1)
/* 021774 80046374 9223FFC8 */ lbu $v1, -0x38($s1)
/* 021778 80046378 10400003 */ beqz $v0, .L80046388
/* 02177C 8004637C 2462FFFF */ addiu $v0, $v1, -1
/* 021780 80046380 080118E6 */ j .L80046398
/* 021784 80046384 A222FFC8 */ sb $v0, -0x38($s1)
.L80046388:
/* 021788 80046388 8E24FFCF */ lw $a0, -0x31($s1)
/* 02178C 8004638C 0C05123D */ jal free_icon
/* 021790 80046390 A220FFC4 */ sb $zero, -0x3c($s1)
/* 021794 80046394 A220FFC6 */ sb $zero, -0x3a($s1)
.L80046398:
/* 021798 80046398 8222FFD5 */ lb $v0, -0x2b($s1)
/* 02179C 8004639C 14520013 */ bne $v0, $s2, .L800463EC
/* 0217A0 800463A0 2402000E */ addiu $v0, $zero, 0xe
/* 0217A4 800463A4 8223FFD3 */ lb $v1, -0x2d($s1)
/* 0217A8 800463A8 3C048008 */ lui $a0, 0x8008
/* 0217AC 800463AC 248404F0 */ addiu $a0, $a0, 0x4f0
/* 0217B0 800463B0 14620003 */ bne $v1, $v0, .L800463C0
/* 0217B4 800463B4 00000000 */ nop
/* 0217B8 800463B8 3C048010 */ lui $a0, 0x8010
/* 0217BC 800463BC 24846CD8 */ addiu $a0, $a0, 0x6cd8
.L800463C0:
/* 0217C0 800463C0 0C050529 */ jal create_icon
/* 0217C4 800463C4 00000000 */ nop
/* 0217C8 800463C8 AE22FFDB */ sw $v0, -0x25($s1)
/* 0217CC 800463CC 0040802D */ daddu $s0, $v0, $zero
/* 0217D0 800463D0 0200202D */ daddu $a0, $s0, $zero
/* 0217D4 800463D4 0C051280 */ jal set_icon_flags
/* 0217D8 800463D8 24050002 */ addiu $a1, $zero, 2
/* 0217DC 800463DC 0200202D */ daddu $a0, $s0, $zero
/* 0217E0 800463E0 0C051280 */ jal set_icon_flags
/* 0217E4 800463E4 24050080 */ addiu $a1, $zero, 0x80
/* 0217E8 800463E8 A233FFD5 */ sb $s3, -0x2b($s1)
.L800463EC:
/* 0217EC 800463EC 8223FFD6 */ lb $v1, -0x2a($s1)
/* 0217F0 800463F0 10720007 */ beq $v1, $s2, .L80046410
/* 0217F4 800463F4 28620002 */ slti $v0, $v1, 2
/* 0217F8 800463F8 14400020 */ bnez $v0, .L8004647C
/* 0217FC 800463FC 00000000 */ nop
/* 021800 80046400 10760014 */ beq $v1, $s6, .L80046454
/* 021804 80046404 00000000 */ nop
/* 021808 80046408 0801191F */ j .L8004647C
/* 02180C 8004640C 00000000 */ nop
.L80046410:
/* 021810 80046410 8223FFD4 */ lb $v1, -0x2c($s1)
/* 021814 80046414 2402000E */ addiu $v0, $zero, 0xe
/* 021818 80046418 14620006 */ bne $v1, $v0, .L80046434
/* 02181C 8004641C 00000000 */ nop
/* 021820 80046420 8E24FFDF */ lw $a0, -0x21($s1)
/* 021824 80046424 3C058010 */ lui $a1, 0x8010
/* 021828 80046428 24A56E98 */ addiu $a1, $a1, 0x6e98
/* 02182C 8004642C 08011910 */ j .L80046440
/* 021830 80046430 00000000 */ nop
.L80046434:
/* 021834 80046434 8E24FFDF */ lw $a0, -0x21($s1)
/* 021838 80046438 3C058008 */ lui $a1, 0x8008
/* 02183C 8004643C 24A504F0 */ addiu $a1, $a1, 0x4f0
.L80046440:
/* 021840 80046440 0C0511FF */ jal set_menu_icon_script
/* 021844 80046444 00000000 */ nop
/* 021848 80046448 A237FFD8 */ sb $s7, -0x28($s1)
/* 02184C 8004644C 0801191F */ j .L8004647C
/* 021850 80046450 A233FFD6 */ sb $s3, -0x2a($s1)
.L80046454:
/* 021854 80046454 8222FFD8 */ lb $v0, -0x28($s1)
/* 021858 80046458 9223FFD8 */ lbu $v1, -0x28($s1)
/* 02185C 8004645C 10400003 */ beqz $v0, .L8004646C
/* 021860 80046460 2462FFFF */ addiu $v0, $v1, -1
/* 021864 80046464 0801191F */ j .L8004647C
/* 021868 80046468 A222FFD8 */ sb $v0, -0x28($s1)
.L8004646C:
/* 02186C 8004646C 8E24FFDF */ lw $a0, -0x21($s1)
/* 021870 80046470 0C05123D */ jal free_icon
/* 021874 80046474 A220FFD4 */ sb $zero, -0x2c($s1)
/* 021878 80046478 A220FFD6 */ sb $zero, -0x2a($s1)
.L8004647C:
/* 02187C 8004647C 8222FFE5 */ lb $v0, -0x1b($s1)
/* 021880 80046480 1452000E */ bne $v0, $s2, .L800464BC
/* 021884 80046484 00000000 */ nop
/* 021888 80046488 3C048010 */ lui $a0, 0x8010
/* 02188C 8004648C 248462DC */ addiu $a0, $a0, 0x62dc
/* 021890 80046490 0C050529 */ jal create_icon
/* 021894 80046494 00000000 */ nop
/* 021898 80046498 0040802D */ daddu $s0, $v0, $zero
/* 02189C 8004649C 0040202D */ daddu $a0, $v0, $zero
/* 0218A0 800464A0 24050002 */ addiu $a1, $zero, 2
/* 0218A4 800464A4 0C051280 */ jal set_icon_flags
/* 0218A8 800464A8 AE30FFEB */ sw $s0, -0x15($s1)
/* 0218AC 800464AC 0200202D */ daddu $a0, $s0, $zero
/* 0218B0 800464B0 0C051280 */ jal set_icon_flags
/* 0218B4 800464B4 24050080 */ addiu $a1, $zero, 0x80
/* 0218B8 800464B8 A233FFE5 */ sb $s3, -0x1b($s1)
.L800464BC:
/* 0218BC 800464BC 8223FFE6 */ lb $v1, -0x1a($s1)
/* 0218C0 800464C0 10720007 */ beq $v1, $s2, .L800464E0
/* 0218C4 800464C4 28620002 */ slti $v0, $v1, 2
/* 0218C8 800464C8 14400017 */ bnez $v0, .L80046528
/* 0218CC 800464CC 00000000 */ nop
/* 0218D0 800464D0 1076000B */ beq $v1, $s6, .L80046500
/* 0218D4 800464D4 00000000 */ nop
/* 0218D8 800464D8 0801194A */ j .L80046528
/* 0218DC 800464DC 00000000 */ nop
.L800464E0:
/* 0218E0 800464E0 8E24FFEF */ lw $a0, -0x11($s1)
/* 0218E4 800464E4 3C058010 */ lui $a1, 0x8010
/* 0218E8 800464E8 24A5645C */ addiu $a1, $a1, 0x645c
/* 0218EC 800464EC 0C0511FF */ jal set_menu_icon_script
/* 0218F0 800464F0 00000000 */ nop
/* 0218F4 800464F4 A237FFE8 */ sb $s7, -0x18($s1)
/* 0218F8 800464F8 0801194A */ j .L80046528
/* 0218FC 800464FC A233FFE6 */ sb $s3, -0x1a($s1)
.L80046500:
/* 021900 80046500 8222FFE8 */ lb $v0, -0x18($s1)
/* 021904 80046504 9223FFE8 */ lbu $v1, -0x18($s1)
/* 021908 80046508 10400003 */ beqz $v0, .L80046518
/* 02190C 8004650C 2462FFFF */ addiu $v0, $v1, -1
/* 021910 80046510 0801194A */ j .L80046528
/* 021914 80046514 A222FFE8 */ sb $v0, -0x18($s1)
.L80046518:
/* 021918 80046518 8E24FFEF */ lw $a0, -0x11($s1)
/* 02191C 8004651C 0C05123D */ jal free_icon
/* 021920 80046520 A220FFE4 */ sb $zero, -0x1c($s1)
/* 021924 80046524 A220FFE6 */ sb $zero, -0x1a($s1)
.L80046528:
/* 021928 80046528 8222FFF4 */ lb $v0, -0xc($s1)
/* 02192C 8004652C 1040000D */ beqz $v0, .L80046564
/* 021930 80046530 00000000 */ nop
/* 021934 80046534 1452000B */ bne $v0, $s2, .L80046564
/* 021938 80046538 00000000 */ nop
/* 02193C 8004653C 8E30FFFB */ lw $s0, -5($s1)
/* 021940 80046540 0C051235 */ jal get_menu_icon
/* 021944 80046544 0200202D */ daddu $a0, $s0, $zero
/* 021948 80046548 8C420000 */ lw $v0, ($v0)
/* 02194C 8004654C 30420004 */ andi $v0, $v0, 4
/* 021950 80046550 10400004 */ beqz $v0, .L80046564
/* 021954 80046554 00000000 */ nop
/* 021958 80046558 0C05123D */ jal free_icon
/* 02195C 8004655C 0200202D */ daddu $a0, $s0, $zero
/* 021960 80046560 A220FFF4 */ sb $zero, -0xc($s1)
.L80046564:
/* 021964 80046564 82220000 */ lb $v0, ($s1)
/* 021968 80046568 5040000E */ beql $v0, $zero, .L800465A4
/* 02196C 8004656C 26B50001 */ addiu $s5, $s5, 1
/* 021970 80046570 5452000C */ bnel $v0, $s2, .L800465A4
/* 021974 80046574 26B50001 */ addiu $s5, $s5, 1
/* 021978 80046578 8E300007 */ lw $s0, 7($s1)
/* 02197C 8004657C 0C051235 */ jal get_menu_icon
/* 021980 80046580 0200202D */ daddu $a0, $s0, $zero
/* 021984 80046584 8C420000 */ lw $v0, ($v0)
/* 021988 80046588 30420004 */ andi $v0, $v0, 4
/* 02198C 8004658C 50400005 */ beql $v0, $zero, .L800465A4
/* 021990 80046590 26B50001 */ addiu $s5, $s5, 1
/* 021994 80046594 0C05123D */ jal free_icon
/* 021998 80046598 0200202D */ daddu $a0, $s0, $zero
/* 02199C 8004659C A2200000 */ sb $zero, ($s1)
/* 0219A0 800465A0 26B50001 */ addiu $s5, $s5, 1
.L800465A4:
/* 0219A4 800465A4 263100B0 */ addiu $s1, $s1, 0xb0
/* 0219A8 800465A8 2AA20040 */ slti $v0, $s5, 0x40
/* 0219AC 800465AC 1440FEB2 */ bnez $v0, .L80046078
/* 0219B0 800465B0 269400B0 */ addiu $s4, $s4, 0xb0
/* 0219B4 800465B4 8FBF0030 */ lw $ra, 0x30($sp)
/* 0219B8 800465B8 8FB7002C */ lw $s7, 0x2c($sp)
/* 0219BC 800465BC 8FB60028 */ lw $s6, 0x28($sp)
/* 0219C0 800465C0 8FB50024 */ lw $s5, 0x24($sp)
/* 0219C4 800465C4 8FB40020 */ lw $s4, 0x20($sp)
/* 0219C8 800465C8 8FB3001C */ lw $s3, 0x1c($sp)
/* 0219CC 800465CC 8FB20018 */ lw $s2, 0x18($sp)
/* 0219D0 800465D0 8FB10014 */ lw $s1, 0x14($sp)
/* 0219D4 800465D4 8FB00010 */ lw $s0, 0x10($sp)
/* 0219D8 800465D8 03E00008 */ jr $ra
/* 0219DC 800465DC 27BD0038 */ addiu $sp, $sp, 0x38
/* 0219E0 800465E0 27BDFF88 */ addiu $sp, $sp, -0x78
/* 0219E4 800465E4 3C08ED03 */ lui $t0, 0xed03
/* 0219E8 800465E8 35080050 */ ori $t0, $t0, 0x50
/* 0219EC 800465EC 3C07004D */ lui $a3, 0x4d
/* 0219F0 800465F0 34E70370 */ ori $a3, $a3, 0x370
/* 0219F4 800465F4 3C09E300 */ lui $t1, 0xe300
/* 0219F8 800465F8 35290A01 */ ori $t1, $t1, 0xa01
/* 0219FC 800465FC 3C0AE300 */ lui $t2, 0xe300
/* 021A00 80046600 354A0C00 */ ori $t2, $t2, 0xc00
/* 021A04 80046604 3C0BE300 */ lui $t3, 0xe300
/* 021A08 80046608 356B0F00 */ ori $t3, $t3, 0xf00
/* 021A0C 8004660C 3C0CE300 */ lui $t4, 0xe300
/* 021A10 80046610 358C0D01 */ ori $t4, $t4, 0xd01
/* 021A14 80046614 3C0DE300 */ lui $t5, 0xe300
/* 021A18 80046618 35AD1402 */ ori $t5, $t5, 0x1402
/* 021A1C 8004661C 3C0EE300 */ lui $t6, 0xe300
/* 021A20 80046620 35CE1700 */ ori $t6, $t6, 0x1700
/* 021A24 80046624 3C0FE200 */ lui $t7, 0xe200
/* 021A28 80046628 35EF1E01 */ ori $t7, $t7, 0x1e01
/* 021A2C 8004662C AFB00040 */ sw $s0, 0x40($sp)
/* 021A30 80046630 3C10E300 */ lui $s0, 0xe300
/* 021A34 80046634 36101801 */ ori $s0, $s0, 0x1801
/* 021A38 80046638 AFB10044 */ sw $s1, 0x44($sp)
/* 021A3C 8004663C 3C11E300 */ lui $s1, 0xe300
/* 021A40 80046640 36311A01 */ ori $s1, $s1, 0x1a01
/* 021A44 80046644 AFB20048 */ sw $s2, 0x48($sp)
/* 021A48 80046648 3C12D700 */ lui $s2, 0xd700
/* 021A4C 8004664C 36520002 */ ori $s2, $s2, 2
/* 021A50 80046650 AFBE0060 */ sw $fp, 0x60($sp)
/* 021A54 80046654 241E0001 */ addiu $fp, $zero, 1
/* 021A58 80046658 AFB7005C */ sw $s7, 0x5c($sp)
/* 021A5C 8004665C 27B70028 */ addiu $s7, $sp, 0x28
/* 021A60 80046660 AFB60058 */ sw $s6, 0x58($sp)
/* 021A64 80046664 27B6002C */ addiu $s6, $sp, 0x2c
/* 021A68 80046668 AFB50054 */ sw $s5, 0x54($sp)
/* 021A6C 8004666C 27B50030 */ addiu $s5, $sp, 0x30
/* 021A70 80046670 3C05800A */ lui $a1, 0x800a
/* 021A74 80046674 24A5A66C */ addiu $a1, $a1, -0x5994
/* 021A78 80046678 3C06800B */ lui $a2, 0x800b
/* 021A7C 8004667C 24C61D80 */ addiu $a2, $a2, 0x1d80
/* 021A80 80046680 AFBF0064 */ sw $ra, 0x64($sp)
/* 021A84 80046684 AFB40050 */ sw $s4, 0x50($sp)
/* 021A88 80046688 AFB3004C */ sw $s3, 0x4c($sp)
/* 021A8C 8004668C F7B60070 */ sdc1 $f22, 0x70($sp)
/* 021A90 80046690 F7B40068 */ sdc1 $f20, 0x68($sp)
/* 021A94 80046694 AFA00038 */ sw $zero, 0x38($sp)
/* 021A98 80046698 8CA30000 */ lw $v1, ($a1)
/* 021A9C 8004669C 3C048007 */ lui $a0, 0x8007
/* 021AA0 800466A0 8C847410 */ lw $a0, 0x7410($a0)
/* 021AA4 800466A4 3C0142B4 */ lui $at, 0x42b4
/* 021AA8 800466A8 4481B000 */ mtc1 $at, $f22
/* 021AAC 800466AC 00041080 */ sll $v0, $a0, 2
/* 021AB0 800466B0 00441021 */ addu $v0, $v0, $a0
/* 021AB4 800466B4 00021080 */ sll $v0, $v0, 2
/* 021AB8 800466B8 00441023 */ subu $v0, $v0, $a0
/* 021ABC 800466BC 000220C0 */ sll $a0, $v0, 3
/* 021AC0 800466C0 00441021 */ addu $v0, $v0, $a0
/* 021AC4 800466C4 000210C0 */ sll $v0, $v0, 3
/* 021AC8 800466C8 00461021 */ addu $v0, $v0, $a2
/* 021ACC 800466CC AFA20034 */ sw $v0, 0x34($sp)
/* 021AD0 800466D0 0060102D */ daddu $v0, $v1, $zero
/* 021AD4 800466D4 24630008 */ addiu $v1, $v1, 8
/* 021AD8 800466D8 ACA30000 */ sw $v1, ($a1)
/* 021ADC 800466DC AC480000 */ sw $t0, ($v0)
/* 021AE0 800466E0 AC470004 */ sw $a3, 4($v0)
/* 021AE4 800466E4 24620008 */ addiu $v0, $v1, 8
/* 021AE8 800466E8 ACA20000 */ sw $v0, ($a1)
/* 021AEC 800466EC 3C02E700 */ lui $v0, 0xe700
/* 021AF0 800466F0 AC620000 */ sw $v0, ($v1)
/* 021AF4 800466F4 24620010 */ addiu $v0, $v1, 0x10
/* 021AF8 800466F8 AC600004 */ sw $zero, 4($v1)
/* 021AFC 800466FC ACA20000 */ sw $v0, ($a1)
/* 021B00 80046700 24620018 */ addiu $v0, $v1, 0x18
/* 021B04 80046704 AC690008 */ sw $t1, 8($v1)
/* 021B08 80046708 AC60000C */ sw $zero, 0xc($v1)
/* 021B0C 8004670C ACA20000 */ sw $v0, ($a1)
/* 021B10 80046710 24620020 */ addiu $v0, $v1, 0x20
/* 021B14 80046714 AC6A0010 */ sw $t2, 0x10($v1)
/* 021B18 80046718 AC600014 */ sw $zero, 0x14($v1)
/* 021B1C 8004671C ACA20000 */ sw $v0, ($a1)
/* 021B20 80046720 24620028 */ addiu $v0, $v1, 0x28
/* 021B24 80046724 AC6B0018 */ sw $t3, 0x18($v1)
/* 021B28 80046728 AC60001C */ sw $zero, 0x1c($v1)
/* 021B2C 8004672C ACA20000 */ sw $v0, ($a1)
/* 021B30 80046730 24620030 */ addiu $v0, $v1, 0x30
/* 021B34 80046734 AC6C0020 */ sw $t4, 0x20($v1)
/* 021B38 80046738 AC600024 */ sw $zero, 0x24($v1)
/* 021B3C 8004673C ACA20000 */ sw $v0, ($a1)
/* 021B40 80046740 24020C00 */ addiu $v0, $zero, 0xc00
/* 021B44 80046744 AC62002C */ sw $v0, 0x2c($v1)
/* 021B48 80046748 24620038 */ addiu $v0, $v1, 0x38
/* 021B4C 8004674C AC6D0028 */ sw $t5, 0x28($v1)
/* 021B50 80046750 ACA20000 */ sw $v0, ($a1)
/* 021B54 80046754 24620040 */ addiu $v0, $v1, 0x40
/* 021B58 80046758 AC6E0030 */ sw $t6, 0x30($v1)
/* 021B5C 8004675C AC600034 */ sw $zero, 0x34($v1)
/* 021B60 80046760 ACA20000 */ sw $v0, ($a1)
/* 021B64 80046764 24620048 */ addiu $v0, $v1, 0x48
/* 021B68 80046768 AC6F0038 */ sw $t7, 0x38($v1)
/* 021B6C 8004676C AC60003C */ sw $zero, 0x3c($v1)
/* 021B70 80046770 ACA20000 */ sw $v0, ($a1)
/* 021B74 80046774 24620050 */ addiu $v0, $v1, 0x50
/* 021B78 80046778 AC600040 */ sw $zero, 0x40($v1)
/* 021B7C 8004677C AC600044 */ sw $zero, 0x44($v1)
/* 021B80 80046780 ACA20000 */ sw $v0, ($a1)
/* 021B84 80046784 AC700048 */ sw $s0, 0x48($v1)
/* 021B88 80046788 3C14800A */ lui $s4, 0x800a
/* 021B8C 8004678C 8E940F44 */ lw $s4, 0xf44($s4)
/* 021B90 80046790 240200C0 */ addiu $v0, $zero, 0xc0
/* 021B94 80046794 AC62004C */ sw $v0, 0x4c($v1)
/* 021B98 80046798 24620058 */ addiu $v0, $v1, 0x58
/* 021B9C 8004679C ACA20000 */ sw $v0, ($a1)
/* 021BA0 800467A0 24020030 */ addiu $v0, $zero, 0x30
/* 021BA4 800467A4 AC620054 */ sw $v0, 0x54($v1)
/* 021BA8 800467A8 24620060 */ addiu $v0, $v1, 0x60
/* 021BAC 800467AC AC710050 */ sw $s1, 0x50($v1)
/* 021BB0 800467B0 ACA20000 */ sw $v0, ($a1)
/* 021BB4 800467B4 2402FFFF */ addiu $v0, $zero, -1
/* 021BB8 800467B8 AC720058 */ sw $s2, 0x58($v1)
/* 021BBC 800467BC AC62005C */ sw $v0, 0x5c($v1)
/* 021BC0 800467C0 269100AC */ addiu $s1, $s4, 0xac
.L800467C4:
/* 021BC4 800467C4 8E830000 */ lw $v1, ($s4)
/* 021BC8 800467C8 5060037B */ beql $v1, $zero, .L800475B8
/* 021BCC 800467CC 263100B0 */ addiu $s1, $s1, 0xb0
/* 021BD0 800467D0 0000902D */ daddu $s2, $zero, $zero
/* 021BD4 800467D4 8222FF8E */ lb $v0, -0x72($s1)
/* 021BD8 800467D8 24180002 */ addiu $t8, $zero, 2
/* 021BDC 800467DC 1458003C */ bne $v0, $t8, .L800468D0
/* 021BE0 800467E0 0240982D */ daddu $s3, $s2, $zero
/* 021BE4 800467E4 30620004 */ andi $v0, $v1, 4
/* 021BE8 800467E8 10400006 */ beqz $v0, .L80046804
/* 021BEC 800467EC 30620002 */ andi $v0, $v1, 2
/* 021BF0 800467F0 8E24FF94 */ lw $a0, -0x6c($s1)
/* 021BF4 800467F4 0C051280 */ jal set_icon_flags
/* 021BF8 800467F8 0300282D */ daddu $a1, $t8, $zero
/* 021BFC 800467FC 08011A34 */ j .L800468D0
/* 021C00 80046800 00000000 */ nop
.L80046804:
/* 021C04 80046804 14400006 */ bnez $v0, .L80046820
/* 021C08 80046808 00000000 */ nop
/* 021C0C 8004680C 3C028007 */ lui $v0, 0x8007
/* 021C10 80046810 8C42419C */ lw $v0, 0x419c($v0)
/* 021C14 80046814 80420070 */ lb $v0, 0x70($v0)
/* 021C18 80046818 105E002D */ beq $v0, $fp, .L800468D0
/* 021C1C 8004681C 00000000 */ nop
.L80046820:
/* 021C20 80046820 8E24FF94 */ lw $a0, -0x6c($s1)
/* 021C24 80046824 0C05128B */ jal clear_icon_flags
/* 021C28 80046828 24050002 */ addiu $a1, $zero, 2
/* 021C2C 8004682C C620FF68 */ lwc1 $f0, -0x98($s1)
/* 021C30 80046830 46800020 */ cvt.s.w $f0, $f0
/* 021C34 80046834 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 021C38 80046838 8FB80034 */ lw $t8, 0x34($sp)
/* 021C3C 8004683C 46001500 */ add.s $f20, $f2, $f0
/* 021C40 80046840 C622FF58 */ lwc1 $f2, -0xa8($s1)
/* 021C44 80046844 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 021C48 80046848 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 021C4C 8004684C 46166300 */ add.s $f12, $f12, $f22
/* 021C50 80046850 E7A20020 */ swc1 $f2, 0x20($sp)
/* 021C54 80046854 0C00A6C9 */ jal clamp_angle
/* 021C58 80046858 E7A00024 */ swc1 $f0, 0x24($sp)
/* 021C5C 8004685C 27A40020 */ addiu $a0, $sp, 0x20
/* 021C60 80046860 C626FF64 */ lwc1 $f6, -0x9c($s1)
/* 021C64 80046864 468031A0 */ cvt.s.w $f6, $f6
/* 021C68 80046868 44070000 */ mfc1 $a3, $f0
/* 021C6C 8004686C 44063000 */ mfc1 $a2, $f6
/* 021C70 80046870 0C00A7E7 */ jal add_vec2D_polar
/* 021C74 80046874 27A50024 */ addiu $a1, $sp, 0x24
/* 021C78 80046878 3C048007 */ lui $a0, 0x8007
/* 021C7C 8004687C 8C847410 */ lw $a0, 0x7410($a0)
/* 021C80 80046880 4406A000 */ mfc1 $a2, $f20
/* 021C84 80046884 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 021C88 80046888 C7A20024 */ lwc1 $f2, 0x24($sp)
/* 021C8C 8004688C 44050000 */ mfc1 $a1, $f0
/* 021C90 80046890 44071000 */ mfc1 $a3, $f2
/* 021C94 80046894 24120001 */ addiu $s2, $zero, 1
/* 021C98 80046898 AFB70010 */ sw $s7, 0x10($sp)
/* 021C9C 8004689C AFB60014 */ sw $s6, 0x14($sp)
/* 021CA0 800468A0 0C00B94E */ jal get_screen_coords
/* 021CA4 800468A4 AFB50018 */ sw $s5, 0x18($sp)
/* 021CA8 800468A8 0240982D */ daddu $s3, $s2, $zero
/* 021CAC 800468AC 8E30FF94 */ lw $s0, -0x6c($s1)
/* 021CB0 800468B0 8FA50028 */ lw $a1, 0x28($sp)
/* 021CB4 800468B4 8FA6002C */ lw $a2, 0x2c($sp)
/* 021CB8 800468B8 0200202D */ daddu $a0, $s0, $zero
/* 021CBC 800468BC 24A5FFF8 */ addiu $a1, $a1, -8
/* 021CC0 800468C0 0C051261 */ jal set_icon_render_pos
/* 021CC4 800468C4 24C6FFF8 */ addiu $a2, $a2, -8
/* 021CC8 800468C8 0C0511F1 */ jal draw_icon_1
/* 021CCC 800468CC 0200202D */ daddu $a0, $s0, $zero
.L800468D0:
/* 021CD0 800468D0 8222FF8F */ lb $v0, -0x71($s1)
/* 021CD4 800468D4 24180002 */ addiu $t8, $zero, 2
/* 021CD8 800468D8 14580036 */ bne $v0, $t8, .L800469B4
/* 021CDC 800468DC 00000000 */ nop
/* 021CE0 800468E0 8E820000 */ lw $v0, ($s4)
/* 021CE4 800468E4 00581024 */ and $v0, $v0, $t8
/* 021CE8 800468E8 14400006 */ bnez $v0, .L80046904
/* 021CEC 800468EC 00000000 */ nop
/* 021CF0 800468F0 3C028007 */ lui $v0, 0x8007
/* 021CF4 800468F4 8C42419C */ lw $v0, 0x419c($v0)
/* 021CF8 800468F8 80420070 */ lb $v0, 0x70($v0)
/* 021CFC 800468FC 105E002D */ beq $v0, $fp, .L800469B4
/* 021D00 80046900 00000000 */ nop
.L80046904:
/* 021D04 80046904 8E24FF98 */ lw $a0, -0x68($s1)
/* 021D08 80046908 0C05128B */ jal clear_icon_flags
/* 021D0C 8004690C 24050002 */ addiu $a1, $zero, 2
/* 021D10 80046910 52600001 */ beql $s3, $zero, .L80046918
/* 021D14 80046914 26520001 */ addiu $s2, $s2, 1
.L80046918:
/* 021D18 80046918 C620FF68 */ lwc1 $f0, -0x98($s1)
/* 021D1C 8004691C 46800020 */ cvt.s.w $f0, $f0
/* 021D20 80046920 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 021D24 80046924 8FB80034 */ lw $t8, 0x34($sp)
/* 021D28 80046928 46001500 */ add.s $f20, $f2, $f0
/* 021D2C 8004692C C622FF58 */ lwc1 $f2, -0xa8($s1)
/* 021D30 80046930 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 021D34 80046934 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 021D38 80046938 46166300 */ add.s $f12, $f12, $f22
/* 021D3C 8004693C E7A20020 */ swc1 $f2, 0x20($sp)
/* 021D40 80046940 0C00A6C9 */ jal clamp_angle
/* 021D44 80046944 E7A00024 */ swc1 $f0, 0x24($sp)
/* 021D48 80046948 27A40020 */ addiu $a0, $sp, 0x20
/* 021D4C 8004694C C626FF64 */ lwc1 $f6, -0x9c($s1)
/* 021D50 80046950 468031A0 */ cvt.s.w $f6, $f6
/* 021D54 80046954 44070000 */ mfc1 $a3, $f0
/* 021D58 80046958 44063000 */ mfc1 $a2, $f6
/* 021D5C 8004695C 0C00A7E7 */ jal add_vec2D_polar
/* 021D60 80046960 27A50024 */ addiu $a1, $sp, 0x24
/* 021D64 80046964 3C048007 */ lui $a0, 0x8007
/* 021D68 80046968 8C847410 */ lw $a0, 0x7410($a0)
/* 021D6C 8004696C 4406A000 */ mfc1 $a2, $f20
/* 021D70 80046970 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 021D74 80046974 C7A20024 */ lwc1 $f2, 0x24($sp)
/* 021D78 80046978 44050000 */ mfc1 $a1, $f0
/* 021D7C 8004697C 44071000 */ mfc1 $a3, $f2
/* 021D80 80046980 AFB70010 */ sw $s7, 0x10($sp)
/* 021D84 80046984 AFB60014 */ sw $s6, 0x14($sp)
/* 021D88 80046988 0C00B94E */ jal get_screen_coords
/* 021D8C 8004698C AFB50018 */ sw $s5, 0x18($sp)
/* 021D90 80046990 8E30FF98 */ lw $s0, -0x68($s1)
/* 021D94 80046994 8FA50028 */ lw $a1, 0x28($sp)
/* 021D98 80046998 8FA6002C */ lw $a2, 0x2c($sp)
/* 021D9C 8004699C 0200202D */ daddu $a0, $s0, $zero
/* 021DA0 800469A0 24A5FFF8 */ addiu $a1, $a1, -8
/* 021DA4 800469A4 0C051261 */ jal set_icon_render_pos
/* 021DA8 800469A8 24C6FFF8 */ addiu $a2, $a2, -8
/* 021DAC 800469AC 0C0511F1 */ jal draw_icon_1
/* 021DB0 800469B0 0200202D */ daddu $a0, $s0, $zero
.L800469B4:
/* 021DB4 800469B4 8222FF9E */ lb $v0, -0x62($s1)
/* 021DB8 800469B8 24180002 */ addiu $t8, $zero, 2
/* 021DBC 800469BC 14580044 */ bne $v0, $t8, .L80046AD0
/* 021DC0 800469C0 0000982D */ daddu $s3, $zero, $zero
/* 021DC4 800469C4 8E830000 */ lw $v1, ($s4)
/* 021DC8 800469C8 30620008 */ andi $v0, $v1, 8
/* 021DCC 800469CC 10400006 */ beqz $v0, .L800469E8
/* 021DD0 800469D0 30620002 */ andi $v0, $v1, 2
/* 021DD4 800469D4 8E24FFA4 */ lw $a0, -0x5c($s1)
/* 021DD8 800469D8 0C051280 */ jal set_icon_flags
/* 021DDC 800469DC 0300282D */ daddu $a1, $t8, $zero
/* 021DE0 800469E0 08011AB4 */ j .L80046AD0
/* 021DE4 800469E4 00000000 */ nop
.L800469E8:
/* 021DE8 800469E8 14400006 */ bnez $v0, .L80046A04
/* 021DEC 800469EC 00000000 */ nop
/* 021DF0 800469F0 3C028007 */ lui $v0, 0x8007
/* 021DF4 800469F4 8C42419C */ lw $v0, 0x419c($v0)
/* 021DF8 800469F8 80420070 */ lb $v0, 0x70($v0)
/* 021DFC 800469FC 105E0034 */ beq $v0, $fp, .L80046AD0
/* 021E00 80046A00 00000000 */ nop
.L80046A04:
/* 021E04 80046A04 8E24FFA4 */ lw $a0, -0x5c($s1)
/* 021E08 80046A08 0C05128B */ jal clear_icon_flags
/* 021E0C 80046A0C 24050002 */ addiu $a1, $zero, 2
/* 021E10 80046A10 16400002 */ bnez $s2, .L80046A1C
/* 021E14 80046A14 0000102D */ daddu $v0, $zero, $zero
/* 021E18 80046A18 2402FFEF */ addiu $v0, $zero, -0x11
.L80046A1C:
/* 021E1C 80046A1C 8FB80034 */ lw $t8, 0x34($sp)
/* 021E20 80046A20 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 021E24 80046A24 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 021E28 80046A28 E7A00020 */ swc1 $f0, 0x20($sp)
/* 021E2C 80046A2C C624FF70 */ lwc1 $f4, -0x90($s1)
/* 021E30 80046A30 46802120 */ cvt.s.w $f4, $f4
/* 021E34 80046A34 46166300 */ add.s $f12, $f12, $f22
/* 021E38 80046A38 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 021E3C 80046A3C C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 021E40 80046A40 46041080 */ add.s $f2, $f2, $f4
/* 021E44 80046A44 E7A00024 */ swc1 $f0, 0x24($sp)
/* 021E48 80046A48 44820000 */ mtc1 $v0, $f0
/* 021E4C 80046A4C 00000000 */ nop
/* 021E50 80046A50 46800020 */ cvt.s.w $f0, $f0
/* 021E54 80046A54 0C00A6C9 */ jal clamp_angle
/* 021E58 80046A58 46001500 */ add.s $f20, $f2, $f0
/* 021E5C 80046A5C 27A40020 */ addiu $a0, $sp, 0x20
/* 021E60 80046A60 C626FF6C */ lwc1 $f6, -0x94($s1)
/* 021E64 80046A64 468031A0 */ cvt.s.w $f6, $f6
/* 021E68 80046A68 44070000 */ mfc1 $a3, $f0
/* 021E6C 80046A6C 44063000 */ mfc1 $a2, $f6
/* 021E70 80046A70 0C00A7E7 */ jal add_vec2D_polar
/* 021E74 80046A74 27A50024 */ addiu $a1, $sp, 0x24
/* 021E78 80046A78 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 021E7C 80046A7C 3C048007 */ lui $a0, 0x8007
/* 021E80 80046A80 8C847410 */ lw $a0, 0x7410($a0)
/* 021E84 80046A84 44050000 */ mfc1 $a1, $f0
/* 021E88 80046A88 C7A00024 */ lwc1 $f0, 0x24($sp)
/* 021E8C 80046A8C 4406A000 */ mfc1 $a2, $f20
/* 021E90 80046A90 44070000 */ mfc1 $a3, $f0
/* 021E94 80046A94 26520001 */ addiu $s2, $s2, 1
/* 021E98 80046A98 AFB70010 */ sw $s7, 0x10($sp)
/* 021E9C 80046A9C AFB60014 */ sw $s6, 0x14($sp)
/* 021EA0 80046AA0 0C00B94E */ jal get_screen_coords
/* 021EA4 80046AA4 AFB50018 */ sw $s5, 0x18($sp)
/* 021EA8 80046AA8 24130001 */ addiu $s3, $zero, 1
/* 021EAC 80046AAC 8E30FFA4 */ lw $s0, -0x5c($s1)
/* 021EB0 80046AB0 8FA50028 */ lw $a1, 0x28($sp)
/* 021EB4 80046AB4 8FA6002C */ lw $a2, 0x2c($sp)
/* 021EB8 80046AB8 0200202D */ daddu $a0, $s0, $zero
/* 021EBC 80046ABC 24A5FFF8 */ addiu $a1, $a1, -8
/* 021EC0 80046AC0 0C051261 */ jal set_icon_render_pos
/* 021EC4 80046AC4 24C6FFF8 */ addiu $a2, $a2, -8
/* 021EC8 80046AC8 0C0511F1 */ jal draw_icon_1
/* 021ECC 80046ACC 0200202D */ daddu $a0, $s0, $zero
.L80046AD0:
/* 021ED0 80046AD0 8222FF9F */ lb $v0, -0x61($s1)
/* 021ED4 80046AD4 24180002 */ addiu $t8, $zero, 2
/* 021ED8 80046AD8 1458003D */ bne $v0, $t8, .L80046BD0
/* 021EDC 80046ADC 00000000 */ nop
/* 021EE0 80046AE0 8E820000 */ lw $v0, ($s4)
/* 021EE4 80046AE4 00581024 */ and $v0, $v0, $t8
/* 021EE8 80046AE8 14400006 */ bnez $v0, .L80046B04
/* 021EEC 80046AEC 00000000 */ nop
/* 021EF0 80046AF0 3C028007 */ lui $v0, 0x8007
/* 021EF4 80046AF4 8C42419C */ lw $v0, 0x419c($v0)
/* 021EF8 80046AF8 80420070 */ lb $v0, 0x70($v0)
/* 021EFC 80046AFC 105E0034 */ beq $v0, $fp, .L80046BD0
/* 021F00 80046B00 00000000 */ nop
.L80046B04:
/* 021F04 80046B04 8E24FFA8 */ lw $a0, -0x58($s1)
/* 021F08 80046B08 0C05128B */ jal clear_icon_flags
/* 021F0C 80046B0C 24050002 */ addiu $a1, $zero, 2
/* 021F10 80046B10 16400002 */ bnez $s2, .L80046B1C
/* 021F14 80046B14 0000102D */ daddu $v0, $zero, $zero
/* 021F18 80046B18 2402FFEF */ addiu $v0, $zero, -0x11
.L80046B1C:
/* 021F1C 80046B1C 52600001 */ beql $s3, $zero, .L80046B24
/* 021F20 80046B20 26520001 */ addiu $s2, $s2, 1
.L80046B24:
/* 021F24 80046B24 8FB80034 */ lw $t8, 0x34($sp)
/* 021F28 80046B28 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 021F2C 80046B2C C70C006C */ lwc1 $f12, 0x6c($t8)
/* 021F30 80046B30 E7A00020 */ swc1 $f0, 0x20($sp)
/* 021F34 80046B34 C624FF70 */ lwc1 $f4, -0x90($s1)
/* 021F38 80046B38 46802120 */ cvt.s.w $f4, $f4
/* 021F3C 80046B3C 46166300 */ add.s $f12, $f12, $f22
/* 021F40 80046B40 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 021F44 80046B44 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 021F48 80046B48 46041080 */ add.s $f2, $f2, $f4
/* 021F4C 80046B4C E7A00024 */ swc1 $f0, 0x24($sp)
/* 021F50 80046B50 44820000 */ mtc1 $v0, $f0
/* 021F54 80046B54 00000000 */ nop
/* 021F58 80046B58 46800020 */ cvt.s.w $f0, $f0
/* 021F5C 80046B5C 0C00A6C9 */ jal clamp_angle
/* 021F60 80046B60 46001500 */ add.s $f20, $f2, $f0
/* 021F64 80046B64 27A40020 */ addiu $a0, $sp, 0x20
/* 021F68 80046B68 C626FF6C */ lwc1 $f6, -0x94($s1)
/* 021F6C 80046B6C 468031A0 */ cvt.s.w $f6, $f6
/* 021F70 80046B70 44070000 */ mfc1 $a3, $f0
/* 021F74 80046B74 44063000 */ mfc1 $a2, $f6
/* 021F78 80046B78 0C00A7E7 */ jal add_vec2D_polar
/* 021F7C 80046B7C 27A50024 */ addiu $a1, $sp, 0x24
/* 021F80 80046B80 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 021F84 80046B84 3C048007 */ lui $a0, 0x8007
/* 021F88 80046B88 8C847410 */ lw $a0, 0x7410($a0)
/* 021F8C 80046B8C 44050000 */ mfc1 $a1, $f0
/* 021F90 80046B90 C7A00024 */ lwc1 $f0, 0x24($sp)
/* 021F94 80046B94 4406A000 */ mfc1 $a2, $f20
/* 021F98 80046B98 44070000 */ mfc1 $a3, $f0
/* 021F9C 80046B9C AFB70010 */ sw $s7, 0x10($sp)
/* 021FA0 80046BA0 AFB60014 */ sw $s6, 0x14($sp)
/* 021FA4 80046BA4 0C00B94E */ jal get_screen_coords
/* 021FA8 80046BA8 AFB50018 */ sw $s5, 0x18($sp)
/* 021FAC 80046BAC 8E30FFA8 */ lw $s0, -0x58($s1)
/* 021FB0 80046BB0 8FA50028 */ lw $a1, 0x28($sp)
/* 021FB4 80046BB4 8FA6002C */ lw $a2, 0x2c($sp)
/* 021FB8 80046BB8 0200202D */ daddu $a0, $s0, $zero
/* 021FBC 80046BBC 24A5FFF8 */ addiu $a1, $a1, -8
/* 021FC0 80046BC0 0C051261 */ jal set_icon_render_pos
/* 021FC4 80046BC4 24C6FFF8 */ addiu $a2, $a2, -8
/* 021FC8 80046BC8 0C0511F1 */ jal draw_icon_1
/* 021FCC 80046BCC 0200202D */ daddu $a0, $s0, $zero
.L80046BD0:
/* 021FD0 80046BD0 8222FFAE */ lb $v0, -0x52($s1)
/* 021FD4 80046BD4 24180002 */ addiu $t8, $zero, 2
/* 021FD8 80046BD8 14580046 */ bne $v0, $t8, .L80046CF4
/* 021FDC 80046BDC 0000982D */ daddu $s3, $zero, $zero
/* 021FE0 80046BE0 8E830000 */ lw $v1, ($s4)
/* 021FE4 80046BE4 30620010 */ andi $v0, $v1, 0x10
/* 021FE8 80046BE8 10400006 */ beqz $v0, .L80046C04
/* 021FEC 80046BEC 30620002 */ andi $v0, $v1, 2
/* 021FF0 80046BF0 8E24FFB4 */ lw $a0, -0x4c($s1)
/* 021FF4 80046BF4 0C051280 */ jal set_icon_flags
/* 021FF8 80046BF8 0300282D */ daddu $a1, $t8, $zero
/* 021FFC 80046BFC 08011B3D */ j .L80046CF4
/* 022000 80046C00 00000000 */ nop
.L80046C04:
/* 022004 80046C04 14400006 */ bnez $v0, .L80046C20
/* 022008 80046C08 00000000 */ nop
/* 02200C 80046C0C 3C028007 */ lui $v0, 0x8007
/* 022010 80046C10 8C42419C */ lw $v0, 0x419c($v0)
/* 022014 80046C14 80420070 */ lb $v0, 0x70($v0)
/* 022018 80046C18 105E0036 */ beq $v0, $fp, .L80046CF4
/* 02201C 80046C1C 00000000 */ nop
.L80046C20:
/* 022020 80046C20 8E24FFB4 */ lw $a0, -0x4c($s1)
/* 022024 80046C24 0C05128B */ jal clear_icon_flags
/* 022028 80046C28 24050002 */ addiu $a1, $zero, 2
/* 02202C 80046C2C 165E0002 */ bne $s2, $fp, .L80046C38
/* 022030 80046C30 0000102D */ daddu $v0, $zero, $zero
/* 022034 80046C34 2402FFEF */ addiu $v0, $zero, -0x11
.L80046C38:
/* 022038 80046C38 52400001 */ beql $s2, $zero, .L80046C40
/* 02203C 80046C3C 2402FFDE */ addiu $v0, $zero, -0x22
.L80046C40:
/* 022040 80046C40 8FB80034 */ lw $t8, 0x34($sp)
/* 022044 80046C44 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 022048 80046C48 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 02204C 80046C4C E7A00020 */ swc1 $f0, 0x20($sp)
/* 022050 80046C50 C624FF78 */ lwc1 $f4, -0x88($s1)
/* 022054 80046C54 46802120 */ cvt.s.w $f4, $f4
/* 022058 80046C58 46166300 */ add.s $f12, $f12, $f22
/* 02205C 80046C5C C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022060 80046C60 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 022064 80046C64 46041080 */ add.s $f2, $f2, $f4
/* 022068 80046C68 E7A00024 */ swc1 $f0, 0x24($sp)
/* 02206C 80046C6C 44820000 */ mtc1 $v0, $f0
/* 022070 80046C70 00000000 */ nop
/* 022074 80046C74 46800020 */ cvt.s.w $f0, $f0
/* 022078 80046C78 0C00A6C9 */ jal clamp_angle
/* 02207C 80046C7C 46001500 */ add.s $f20, $f2, $f0
/* 022080 80046C80 27A40020 */ addiu $a0, $sp, 0x20
/* 022084 80046C84 C626FF74 */ lwc1 $f6, -0x8c($s1)
/* 022088 80046C88 468031A0 */ cvt.s.w $f6, $f6
/* 02208C 80046C8C 44070000 */ mfc1 $a3, $f0
/* 022090 80046C90 44063000 */ mfc1 $a2, $f6
/* 022094 80046C94 0C00A7E7 */ jal add_vec2D_polar
/* 022098 80046C98 27A50024 */ addiu $a1, $sp, 0x24
/* 02209C 80046C9C C7A00020 */ lwc1 $f0, 0x20($sp)
/* 0220A0 80046CA0 3C048007 */ lui $a0, 0x8007
/* 0220A4 80046CA4 8C847410 */ lw $a0, 0x7410($a0)
/* 0220A8 80046CA8 44050000 */ mfc1 $a1, $f0
/* 0220AC 80046CAC C7A00024 */ lwc1 $f0, 0x24($sp)
/* 0220B0 80046CB0 4406A000 */ mfc1 $a2, $f20
/* 0220B4 80046CB4 44070000 */ mfc1 $a3, $f0
/* 0220B8 80046CB8 26520001 */ addiu $s2, $s2, 1
/* 0220BC 80046CBC AFB70010 */ sw $s7, 0x10($sp)
/* 0220C0 80046CC0 AFB60014 */ sw $s6, 0x14($sp)
/* 0220C4 80046CC4 0C00B94E */ jal get_screen_coords
/* 0220C8 80046CC8 AFB50018 */ sw $s5, 0x18($sp)
/* 0220CC 80046CCC 24130001 */ addiu $s3, $zero, 1
/* 0220D0 80046CD0 8E30FFB4 */ lw $s0, -0x4c($s1)
/* 0220D4 80046CD4 8FA50028 */ lw $a1, 0x28($sp)
/* 0220D8 80046CD8 8FA6002C */ lw $a2, 0x2c($sp)
/* 0220DC 80046CDC 0200202D */ daddu $a0, $s0, $zero
/* 0220E0 80046CE0 24A5FFF8 */ addiu $a1, $a1, -8
/* 0220E4 80046CE4 0C051261 */ jal set_icon_render_pos
/* 0220E8 80046CE8 24C6FFF8 */ addiu $a2, $a2, -8
/* 0220EC 80046CEC 0C0511F1 */ jal draw_icon_1
/* 0220F0 80046CF0 0200202D */ daddu $a0, $s0, $zero
.L80046CF4:
/* 0220F4 80046CF4 8222FFAF */ lb $v0, -0x51($s1)
/* 0220F8 80046CF8 24180002 */ addiu $t8, $zero, 2
/* 0220FC 80046CFC 1458003F */ bne $v0, $t8, .L80046DFC
/* 022100 80046D00 00000000 */ nop
/* 022104 80046D04 8E820000 */ lw $v0, ($s4)
/* 022108 80046D08 00581024 */ and $v0, $v0, $t8
/* 02210C 80046D0C 14400006 */ bnez $v0, .L80046D28
/* 022110 80046D10 00000000 */ nop
/* 022114 80046D14 3C028007 */ lui $v0, 0x8007
/* 022118 80046D18 8C42419C */ lw $v0, 0x419c($v0)
/* 02211C 80046D1C 80420070 */ lb $v0, 0x70($v0)
/* 022120 80046D20 105E0036 */ beq $v0, $fp, .L80046DFC
/* 022124 80046D24 00000000 */ nop
.L80046D28:
/* 022128 80046D28 8E24FFB8 */ lw $a0, -0x48($s1)
/* 02212C 80046D2C 0C05128B */ jal clear_icon_flags
/* 022130 80046D30 24050002 */ addiu $a1, $zero, 2
/* 022134 80046D34 165E0002 */ bne $s2, $fp, .L80046D40
/* 022138 80046D38 0000102D */ daddu $v0, $zero, $zero
/* 02213C 80046D3C 2402FFEF */ addiu $v0, $zero, -0x11
.L80046D40:
/* 022140 80046D40 52400001 */ beql $s2, $zero, .L80046D48
/* 022144 80046D44 2402FFDE */ addiu $v0, $zero, -0x22
.L80046D48:
/* 022148 80046D48 52600001 */ beql $s3, $zero, .L80046D50
/* 02214C 80046D4C 26520001 */ addiu $s2, $s2, 1
.L80046D50:
/* 022150 80046D50 8FB80034 */ lw $t8, 0x34($sp)
/* 022154 80046D54 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 022158 80046D58 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 02215C 80046D5C E7A00020 */ swc1 $f0, 0x20($sp)
/* 022160 80046D60 C624FF78 */ lwc1 $f4, -0x88($s1)
/* 022164 80046D64 46802120 */ cvt.s.w $f4, $f4
/* 022168 80046D68 46166300 */ add.s $f12, $f12, $f22
/* 02216C 80046D6C C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022170 80046D70 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 022174 80046D74 46041080 */ add.s $f2, $f2, $f4
/* 022178 80046D78 E7A00024 */ swc1 $f0, 0x24($sp)
/* 02217C 80046D7C 44820000 */ mtc1 $v0, $f0
/* 022180 80046D80 00000000 */ nop
/* 022184 80046D84 46800020 */ cvt.s.w $f0, $f0
/* 022188 80046D88 0C00A6C9 */ jal clamp_angle
/* 02218C 80046D8C 46001500 */ add.s $f20, $f2, $f0
/* 022190 80046D90 27A40020 */ addiu $a0, $sp, 0x20
/* 022194 80046D94 C626FF74 */ lwc1 $f6, -0x8c($s1)
/* 022198 80046D98 468031A0 */ cvt.s.w $f6, $f6
/* 02219C 80046D9C 44070000 */ mfc1 $a3, $f0
/* 0221A0 80046DA0 44063000 */ mfc1 $a2, $f6
/* 0221A4 80046DA4 0C00A7E7 */ jal add_vec2D_polar
/* 0221A8 80046DA8 27A50024 */ addiu $a1, $sp, 0x24
/* 0221AC 80046DAC C7A00020 */ lwc1 $f0, 0x20($sp)
/* 0221B0 80046DB0 3C048007 */ lui $a0, 0x8007
/* 0221B4 80046DB4 8C847410 */ lw $a0, 0x7410($a0)
/* 0221B8 80046DB8 44050000 */ mfc1 $a1, $f0
/* 0221BC 80046DBC C7A00024 */ lwc1 $f0, 0x24($sp)
/* 0221C0 80046DC0 4406A000 */ mfc1 $a2, $f20
/* 0221C4 80046DC4 44070000 */ mfc1 $a3, $f0
/* 0221C8 80046DC8 AFB70010 */ sw $s7, 0x10($sp)
/* 0221CC 80046DCC AFB60014 */ sw $s6, 0x14($sp)
/* 0221D0 80046DD0 0C00B94E */ jal get_screen_coords
/* 0221D4 80046DD4 AFB50018 */ sw $s5, 0x18($sp)
/* 0221D8 80046DD8 8E30FFB8 */ lw $s0, -0x48($s1)
/* 0221DC 80046DDC 8FA50028 */ lw $a1, 0x28($sp)
/* 0221E0 80046DE0 8FA6002C */ lw $a2, 0x2c($sp)
/* 0221E4 80046DE4 0200202D */ daddu $a0, $s0, $zero
/* 0221E8 80046DE8 24A5FFF8 */ addiu $a1, $a1, -8
/* 0221EC 80046DEC 0C051261 */ jal set_icon_render_pos
/* 0221F0 80046DF0 24C6FFF8 */ addiu $a2, $a2, -8
/* 0221F4 80046DF4 0C0511F1 */ jal draw_icon_1
/* 0221F8 80046DF8 0200202D */ daddu $a0, $s0, $zero
.L80046DFC:
/* 0221FC 80046DFC 8222FFBE */ lb $v0, -0x42($s1)
/* 022200 80046E00 24180002 */ addiu $t8, $zero, 2
/* 022204 80046E04 14580067 */ bne $v0, $t8, .L80046FA4
/* 022208 80046E08 0000982D */ daddu $s3, $zero, $zero
/* 02220C 80046E0C 8E830000 */ lw $v1, ($s4)
/* 022210 80046E10 30620020 */ andi $v0, $v1, 0x20
/* 022214 80046E14 10400024 */ beqz $v0, .L80046EA8
/* 022218 80046E18 30620002 */ andi $v0, $v1, 2
/* 02221C 80046E1C 8E24FFC4 */ lw $a0, -0x3c($s1)
/* 022220 80046E20 0C051280 */ jal set_icon_flags
/* 022224 80046E24 0300282D */ daddu $a1, $t8, $zero
/* 022228 80046E28 08011BE9 */ j .L80046FA4
/* 02222C 80046E2C 00000000 */ nop
.L80046E30:
/* 022230 80046E30 8E24FFD0 */ lw $a0, -0x30($s1)
/* 022234 80046E34 0C051280 */ jal set_icon_flags
/* 022238 80046E38 24050002 */ addiu $a1, $zero, 2
/* 02223C 80046E3C 08011C56 */ j .L80047158
/* 022240 80046E40 00000000 */ nop
.L80046E44:
/* 022244 80046E44 8E24FFDC */ lw $a0, -0x24($s1)
/* 022248 80046E48 0C051280 */ jal set_icon_flags
/* 02224C 80046E4C 24050002 */ addiu $a1, $zero, 2
/* 022250 80046E50 08011CA1 */ j .L80047284
/* 022254 80046E54 00000000 */ nop
.L80046E58:
/* 022258 80046E58 8E24FFE8 */ lw $a0, -0x18($s1)
/* 02225C 80046E5C 0C051280 */ jal set_icon_flags
/* 022260 80046E60 24050002 */ addiu $a1, $zero, 2
/* 022264 80046E64 08011CEC */ j .L800473B0
/* 022268 80046E68 00000000 */ nop
.L80046E6C:
/* 02226C 80046E6C 8E24FFF0 */ lw $a0, -0x10($s1)
/* 022270 80046E70 0C051280 */ jal set_icon_flags
/* 022274 80046E74 24050002 */ addiu $a1, $zero, 2
/* 022278 80046E78 08011D17 */ j .L8004745C
/* 02227C 80046E7C 00000000 */ nop
.L80046E80:
/* 022280 80046E80 8E24FFF8 */ lw $a0, -8($s1)
/* 022284 80046E84 0C051280 */ jal set_icon_flags
/* 022288 80046E88 24050002 */ addiu $a1, $zero, 2
/* 02228C 80046E8C 08011D42 */ j .L80047508
/* 022290 80046E90 00000000 */ nop
.L80046E94:
/* 022294 80046E94 8E240000 */ lw $a0, ($s1)
/* 022298 80046E98 0C051280 */ jal set_icon_flags
/* 02229C 80046E9C 24050002 */ addiu $a1, $zero, 2
/* 0222A0 80046EA0 08011D6E */ j .L800475B8
/* 0222A4 80046EA4 263100B0 */ addiu $s1, $s1, 0xb0
.L80046EA8:
/* 0222A8 80046EA8 14400006 */ bnez $v0, .L80046EC4
/* 0222AC 80046EAC 00000000 */ nop
/* 0222B0 80046EB0 3C028007 */ lui $v0, 0x8007
/* 0222B4 80046EB4 8C42419C */ lw $v0, 0x419c($v0)
/* 0222B8 80046EB8 80420070 */ lb $v0, 0x70($v0)
/* 0222BC 80046EBC 105E0039 */ beq $v0, $fp, .L80046FA4
/* 0222C0 80046EC0 00000000 */ nop
.L80046EC4:
/* 0222C4 80046EC4 8E24FFC4 */ lw $a0, -0x3c($s1)
/* 0222C8 80046EC8 0C05128B */ jal clear_icon_flags
/* 0222CC 80046ECC 24050002 */ addiu $a1, $zero, 2
/* 0222D0 80046ED0 24180002 */ addiu $t8, $zero, 2
/* 0222D4 80046ED4 16580002 */ bne $s2, $t8, .L80046EE0
/* 0222D8 80046ED8 0000102D */ daddu $v0, $zero, $zero
/* 0222DC 80046EDC 2402FFEF */ addiu $v0, $zero, -0x11
.L80046EE0:
/* 0222E0 80046EE0 525E0001 */ beql $s2, $fp, .L80046EE8
/* 0222E4 80046EE4 2402FFDE */ addiu $v0, $zero, -0x22
.L80046EE8:
/* 0222E8 80046EE8 52400001 */ beql $s2, $zero, .L80046EF0
/* 0222EC 80046EEC 2402FFCD */ addiu $v0, $zero, -0x33
.L80046EF0:
/* 0222F0 80046EF0 8FB80034 */ lw $t8, 0x34($sp)
/* 0222F4 80046EF4 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 0222F8 80046EF8 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 0222FC 80046EFC E7A00020 */ swc1 $f0, 0x20($sp)
/* 022300 80046F00 C624FF80 */ lwc1 $f4, -0x80($s1)
/* 022304 80046F04 46802120 */ cvt.s.w $f4, $f4
/* 022308 80046F08 46166300 */ add.s $f12, $f12, $f22
/* 02230C 80046F0C C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022310 80046F10 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 022314 80046F14 46041080 */ add.s $f2, $f2, $f4
/* 022318 80046F18 E7A00024 */ swc1 $f0, 0x24($sp)
/* 02231C 80046F1C 44820000 */ mtc1 $v0, $f0
/* 022320 80046F20 00000000 */ nop
/* 022324 80046F24 46800020 */ cvt.s.w $f0, $f0
/* 022328 80046F28 0C00A6C9 */ jal clamp_angle
/* 02232C 80046F2C 46001500 */ add.s $f20, $f2, $f0
/* 022330 80046F30 27A40020 */ addiu $a0, $sp, 0x20
/* 022334 80046F34 C626FF7C */ lwc1 $f6, -0x84($s1)
/* 022338 80046F38 468031A0 */ cvt.s.w $f6, $f6
/* 02233C 80046F3C 44070000 */ mfc1 $a3, $f0
/* 022340 80046F40 44063000 */ mfc1 $a2, $f6
/* 022344 80046F44 0C00A7E7 */ jal add_vec2D_polar
/* 022348 80046F48 27A50024 */ addiu $a1, $sp, 0x24
/* 02234C 80046F4C C7A00020 */ lwc1 $f0, 0x20($sp)
/* 022350 80046F50 3C048007 */ lui $a0, 0x8007
/* 022354 80046F54 8C847410 */ lw $a0, 0x7410($a0)
/* 022358 80046F58 44050000 */ mfc1 $a1, $f0
/* 02235C 80046F5C C7A00024 */ lwc1 $f0, 0x24($sp)
/* 022360 80046F60 4406A000 */ mfc1 $a2, $f20
/* 022364 80046F64 44070000 */ mfc1 $a3, $f0
/* 022368 80046F68 26520001 */ addiu $s2, $s2, 1
/* 02236C 80046F6C AFB70010 */ sw $s7, 0x10($sp)
/* 022370 80046F70 AFB60014 */ sw $s6, 0x14($sp)
/* 022374 80046F74 0C00B94E */ jal get_screen_coords
/* 022378 80046F78 AFB50018 */ sw $s5, 0x18($sp)
/* 02237C 80046F7C 24130001 */ addiu $s3, $zero, 1
/* 022380 80046F80 8E30FFC4 */ lw $s0, -0x3c($s1)
/* 022384 80046F84 8FA50028 */ lw $a1, 0x28($sp)
/* 022388 80046F88 8FA6002C */ lw $a2, 0x2c($sp)
/* 02238C 80046F8C 0200202D */ daddu $a0, $s0, $zero
/* 022390 80046F90 24A5FFF8 */ addiu $a1, $a1, -8
/* 022394 80046F94 0C051261 */ jal set_icon_render_pos
/* 022398 80046F98 24C6FFF8 */ addiu $a2, $a2, -8
/* 02239C 80046F9C 0C0511F1 */ jal draw_icon_1
/* 0223A0 80046FA0 0200202D */ daddu $a0, $s0, $zero
.L80046FA4:
/* 0223A4 80046FA4 8230FFBF */ lb $s0, -0x41($s1)
/* 0223A8 80046FA8 24180002 */ addiu $t8, $zero, 2
/* 0223AC 80046FAC 1618003F */ bne $s0, $t8, .L800470AC
/* 0223B0 80046FB0 00000000 */ nop
/* 0223B4 80046FB4 8E820000 */ lw $v0, ($s4)
/* 0223B8 80046FB8 00581024 */ and $v0, $v0, $t8
/* 0223BC 80046FBC 14400006 */ bnez $v0, .L80046FD8
/* 0223C0 80046FC0 00000000 */ nop
/* 0223C4 80046FC4 3C028007 */ lui $v0, 0x8007
/* 0223C8 80046FC8 8C42419C */ lw $v0, 0x419c($v0)
/* 0223CC 80046FCC 80420070 */ lb $v0, 0x70($v0)
/* 0223D0 80046FD0 105E0036 */ beq $v0, $fp, .L800470AC
/* 0223D4 80046FD4 00000000 */ nop
.L80046FD8:
/* 0223D8 80046FD8 8E24FFC8 */ lw $a0, -0x38($s1)
/* 0223DC 80046FDC 0C05128B */ jal clear_icon_flags
/* 0223E0 80046FE0 24050002 */ addiu $a1, $zero, 2
/* 0223E4 80046FE4 16500002 */ bne $s2, $s0, .L80046FF0
/* 0223E8 80046FE8 0000102D */ daddu $v0, $zero, $zero
/* 0223EC 80046FEC 2402FFEF */ addiu $v0, $zero, -0x11
.L80046FF0:
/* 0223F0 80046FF0 525E0001 */ beql $s2, $fp, .L80046FF8
/* 0223F4 80046FF4 2402FFDE */ addiu $v0, $zero, -0x22
.L80046FF8:
/* 0223F8 80046FF8 52400001 */ beql $s2, $zero, .L80047000
/* 0223FC 80046FFC 2402FFCD */ addiu $v0, $zero, -0x33
.L80047000:
/* 022400 80047000 8FB80034 */ lw $t8, 0x34($sp)
/* 022404 80047004 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 022408 80047008 C70C006C */ lwc1 $f12, 0x6c($t8)
/* 02240C 8004700C E7A00020 */ swc1 $f0, 0x20($sp)
/* 022410 80047010 C624FF80 */ lwc1 $f4, -0x80($s1)
/* 022414 80047014 46802120 */ cvt.s.w $f4, $f4
/* 022418 80047018 46166300 */ add.s $f12, $f12, $f22
/* 02241C 8004701C C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022420 80047020 C620FF60 */ lwc1 $f0, -0xa0($s1)
/* 022424 80047024 46041080 */ add.s $f2, $f2, $f4
/* 022428 80047028 E7A00024 */ swc1 $f0, 0x24($sp)
/* 02242C 8004702C 44820000 */ mtc1 $v0, $f0
/* 022430 80047030 00000000 */ nop
/* 022434 80047034 46800020 */ cvt.s.w $f0, $f0
/* 022438 80047038 0C00A6C9 */ jal clamp_angle
/* 02243C 8004703C 46001500 */ add.s $f20, $f2, $f0
/* 022440 80047040 27A40020 */ addiu $a0, $sp, 0x20
/* 022444 80047044 C626FF7C */ lwc1 $f6, -0x84($s1)
/* 022448 80047048 468031A0 */ cvt.s.w $f6, $f6
/* 02244C 8004704C 44070000 */ mfc1 $a3, $f0
/* 022450 80047050 44063000 */ mfc1 $a2, $f6
/* 022454 80047054 0C00A7E7 */ jal add_vec2D_polar
/* 022458 80047058 27A50024 */ addiu $a1, $sp, 0x24
/* 02245C 8004705C C7A00020 */ lwc1 $f0, 0x20($sp)
/* 022460 80047060 3C048007 */ lui $a0, 0x8007
/* 022464 80047064 8C847410 */ lw $a0, 0x7410($a0)
/* 022468 80047068 44050000 */ mfc1 $a1, $f0
/* 02246C 8004706C C7A00024 */ lwc1 $f0, 0x24($sp)
/* 022470 80047070 4406A000 */ mfc1 $a2, $f20
/* 022474 80047074 44070000 */ mfc1 $a3, $f0
/* 022478 80047078 AFB70010 */ sw $s7, 0x10($sp)
/* 02247C 8004707C AFB60014 */ sw $s6, 0x14($sp)
/* 022480 80047080 0C00B94E */ jal get_screen_coords
/* 022484 80047084 AFB50018 */ sw $s5, 0x18($sp)
/* 022488 80047088 8E30FFC8 */ lw $s0, -0x38($s1)
/* 02248C 8004708C 8FA50028 */ lw $a1, 0x28($sp)
/* 022490 80047090 8FA6002C */ lw $a2, 0x2c($sp)
/* 022494 80047094 0200202D */ daddu $a0, $s0, $zero
/* 022498 80047098 24A5FFF8 */ addiu $a1, $a1, -8
/* 02249C 8004709C 0C051261 */ jal set_icon_render_pos
/* 0224A0 800470A0 24C6FFF8 */ addiu $a2, $a2, -8
/* 0224A4 800470A4 0C0511F1 */ jal draw_icon_1
/* 0224A8 800470A8 0200202D */ daddu $a0, $s0, $zero
.L800470AC:
/* 0224AC 800470AC 8222FFCC */ lb $v0, -0x34($s1)
/* 0224B0 800470B0 10400029 */ beqz $v0, .L80047158
/* 0224B4 800470B4 00000000 */ nop
/* 0224B8 800470B8 8E830000 */ lw $v1, ($s4)
/* 0224BC 800470BC 30620040 */ andi $v0, $v1, 0x40
/* 0224C0 800470C0 1440FF5B */ bnez $v0, .L80046E30
/* 0224C4 800470C4 30620002 */ andi $v0, $v1, 2
/* 0224C8 800470C8 14400006 */ bnez $v0, .L800470E4
/* 0224CC 800470CC 00000000 */ nop
/* 0224D0 800470D0 3C028007 */ lui $v0, 0x8007
/* 0224D4 800470D4 8C42419C */ lw $v0, 0x419c($v0)
/* 0224D8 800470D8 80420070 */ lb $v0, 0x70($v0)
/* 0224DC 800470DC 105E001E */ beq $v0, $fp, .L80047158
/* 0224E0 800470E0 00000000 */ nop
.L800470E4:
/* 0224E4 800470E4 8E24FFD0 */ lw $a0, -0x30($s1)
/* 0224E8 800470E8 0C05128B */ jal clear_icon_flags
/* 0224EC 800470EC 24050002 */ addiu $a1, $zero, 2
/* 0224F0 800470F0 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 0224F4 800470F4 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 0224F8 800470F8 44050000 */ mfc1 $a1, $f0
/* 0224FC 800470FC 44071000 */ mfc1 $a3, $f2
/* 022500 80047100 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022504 80047104 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 022508 80047108 46800020 */ cvt.s.w $f0, $f0
/* 02250C 8004710C 46001080 */ add.s $f2, $f2, $f0
/* 022510 80047110 3C048007 */ lui $a0, 0x8007
/* 022514 80047114 8C847410 */ lw $a0, 0x7410($a0)
/* 022518 80047118 44061000 */ mfc1 $a2, $f2
/* 02251C 8004711C AFA50020 */ sw $a1, 0x20($sp)
/* 022520 80047120 AFA70024 */ sw $a3, 0x24($sp)
/* 022524 80047124 AFB70010 */ sw $s7, 0x10($sp)
/* 022528 80047128 AFB60014 */ sw $s6, 0x14($sp)
/* 02252C 8004712C 0C00B94E */ jal get_screen_coords
/* 022530 80047130 AFB50018 */ sw $s5, 0x18($sp)
/* 022534 80047134 8E30FFD0 */ lw $s0, -0x30($s1)
/* 022538 80047138 8FA50028 */ lw $a1, 0x28($sp)
/* 02253C 8004713C 8FA6002C */ lw $a2, 0x2c($sp)
/* 022540 80047140 0200202D */ daddu $a0, $s0, $zero
/* 022544 80047144 24A50002 */ addiu $a1, $a1, 2
/* 022548 80047148 0C051261 */ jal set_icon_render_pos
/* 02254C 8004714C 24C6FFF4 */ addiu $a2, $a2, -0xc
/* 022550 80047150 0C0511F1 */ jal draw_icon_1
/* 022554 80047154 0200202D */ daddu $a0, $s0, $zero
.L80047158:
/* 022558 80047158 8222FFCD */ lb $v0, -0x33($s1)
/* 02255C 8004715C 1040001E */ beqz $v0, .L800471D8
/* 022560 80047160 00000000 */ nop
/* 022564 80047164 8E24FFD4 */ lw $a0, -0x2c($s1)
/* 022568 80047168 0C05128B */ jal clear_icon_flags
/* 02256C 8004716C 24050002 */ addiu $a1, $zero, 2
/* 022570 80047170 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 022574 80047174 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 022578 80047178 44050000 */ mfc1 $a1, $f0
/* 02257C 8004717C 44071000 */ mfc1 $a3, $f2
/* 022580 80047180 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022584 80047184 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 022588 80047188 46800020 */ cvt.s.w $f0, $f0
/* 02258C 8004718C 46001080 */ add.s $f2, $f2, $f0
/* 022590 80047190 3C048007 */ lui $a0, 0x8007
/* 022594 80047194 8C847410 */ lw $a0, 0x7410($a0)
/* 022598 80047198 44061000 */ mfc1 $a2, $f2
/* 02259C 8004719C AFA50020 */ sw $a1, 0x20($sp)
/* 0225A0 800471A0 AFA70024 */ sw $a3, 0x24($sp)
/* 0225A4 800471A4 AFB70010 */ sw $s7, 0x10($sp)
/* 0225A8 800471A8 AFB60014 */ sw $s6, 0x14($sp)
/* 0225AC 800471AC 0C00B94E */ jal get_screen_coords
/* 0225B0 800471B0 AFB50018 */ sw $s5, 0x18($sp)
/* 0225B4 800471B4 8E30FFD4 */ lw $s0, -0x2c($s1)
/* 0225B8 800471B8 8FA50028 */ lw $a1, 0x28($sp)
/* 0225BC 800471BC 8FA6002C */ lw $a2, 0x2c($sp)
/* 0225C0 800471C0 0200202D */ daddu $a0, $s0, $zero
/* 0225C4 800471C4 24A50002 */ addiu $a1, $a1, 2
/* 0225C8 800471C8 0C051261 */ jal set_icon_render_pos
/* 0225CC 800471CC 24C6FFF4 */ addiu $a2, $a2, -0xc
/* 0225D0 800471D0 0C0511F1 */ jal draw_icon_1
/* 0225D4 800471D4 0200202D */ daddu $a0, $s0, $zero
.L800471D8:
/* 0225D8 800471D8 8222FFD8 */ lb $v0, -0x28($s1)
/* 0225DC 800471DC 10400029 */ beqz $v0, .L80047284
/* 0225E0 800471E0 00000000 */ nop
/* 0225E4 800471E4 8E830000 */ lw $v1, ($s4)
/* 0225E8 800471E8 30620080 */ andi $v0, $v1, 0x80
/* 0225EC 800471EC 1440FF15 */ bnez $v0, .L80046E44
/* 0225F0 800471F0 30620002 */ andi $v0, $v1, 2
/* 0225F4 800471F4 14400006 */ bnez $v0, .L80047210
/* 0225F8 800471F8 00000000 */ nop
/* 0225FC 800471FC 3C028007 */ lui $v0, 0x8007
/* 022600 80047200 8C42419C */ lw $v0, 0x419c($v0)
/* 022604 80047204 80420070 */ lb $v0, 0x70($v0)
/* 022608 80047208 105E001E */ beq $v0, $fp, .L80047284
/* 02260C 8004720C 00000000 */ nop
.L80047210:
/* 022610 80047210 8E24FFDC */ lw $a0, -0x24($s1)
/* 022614 80047214 0C05128B */ jal clear_icon_flags
/* 022618 80047218 24050002 */ addiu $a1, $zero, 2
/* 02261C 8004721C C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 022620 80047220 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 022624 80047224 44050000 */ mfc1 $a1, $f0
/* 022628 80047228 44071000 */ mfc1 $a3, $f2
/* 02262C 8004722C C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022630 80047230 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 022634 80047234 46800020 */ cvt.s.w $f0, $f0
/* 022638 80047238 46001080 */ add.s $f2, $f2, $f0
/* 02263C 8004723C 3C048007 */ lui $a0, 0x8007
/* 022640 80047240 8C847410 */ lw $a0, 0x7410($a0)
/* 022644 80047244 44061000 */ mfc1 $a2, $f2
/* 022648 80047248 AFA50020 */ sw $a1, 0x20($sp)
/* 02264C 8004724C AFA70024 */ sw $a3, 0x24($sp)
/* 022650 80047250 AFB70010 */ sw $s7, 0x10($sp)
/* 022654 80047254 AFB60014 */ sw $s6, 0x14($sp)
/* 022658 80047258 0C00B94E */ jal get_screen_coords
/* 02265C 8004725C AFB50018 */ sw $s5, 0x18($sp)
/* 022660 80047260 8E30FFDC */ lw $s0, -0x24($s1)
/* 022664 80047264 8FA50028 */ lw $a1, 0x28($sp)
/* 022668 80047268 8FA6002C */ lw $a2, 0x2c($sp)
/* 02266C 8004726C 0200202D */ daddu $a0, $s0, $zero
/* 022670 80047270 24A50002 */ addiu $a1, $a1, 2
/* 022674 80047274 0C051261 */ jal set_icon_render_pos
/* 022678 80047278 24C6FFF4 */ addiu $a2, $a2, -0xc
/* 02267C 8004727C 0C0511F1 */ jal draw_icon_1
/* 022680 80047280 0200202D */ daddu $a0, $s0, $zero
.L80047284:
/* 022684 80047284 8222FFD9 */ lb $v0, -0x27($s1)
/* 022688 80047288 1040001E */ beqz $v0, .L80047304
/* 02268C 8004728C 00000000 */ nop
/* 022690 80047290 8E24FFE0 */ lw $a0, -0x20($s1)
/* 022694 80047294 0C05128B */ jal clear_icon_flags
/* 022698 80047298 24050002 */ addiu $a1, $zero, 2
/* 02269C 8004729C C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 0226A0 800472A0 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 0226A4 800472A4 44050000 */ mfc1 $a1, $f0
/* 0226A8 800472A8 44071000 */ mfc1 $a3, $f2
/* 0226AC 800472AC C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 0226B0 800472B0 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 0226B4 800472B4 46800020 */ cvt.s.w $f0, $f0
/* 0226B8 800472B8 46001080 */ add.s $f2, $f2, $f0
/* 0226BC 800472BC 3C048007 */ lui $a0, 0x8007
/* 0226C0 800472C0 8C847410 */ lw $a0, 0x7410($a0)
/* 0226C4 800472C4 44061000 */ mfc1 $a2, $f2
/* 0226C8 800472C8 AFA50020 */ sw $a1, 0x20($sp)
/* 0226CC 800472CC AFA70024 */ sw $a3, 0x24($sp)
/* 0226D0 800472D0 AFB70010 */ sw $s7, 0x10($sp)
/* 0226D4 800472D4 AFB60014 */ sw $s6, 0x14($sp)
/* 0226D8 800472D8 0C00B94E */ jal get_screen_coords
/* 0226DC 800472DC AFB50018 */ sw $s5, 0x18($sp)
/* 0226E0 800472E0 8E30FFE0 */ lw $s0, -0x20($s1)
/* 0226E4 800472E4 8FA50028 */ lw $a1, 0x28($sp)
/* 0226E8 800472E8 8FA6002C */ lw $a2, 0x2c($sp)
/* 0226EC 800472EC 0200202D */ daddu $a0, $s0, $zero
/* 0226F0 800472F0 24A50002 */ addiu $a1, $a1, 2
/* 0226F4 800472F4 0C051261 */ jal set_icon_render_pos
/* 0226F8 800472F8 24C6FFF4 */ addiu $a2, $a2, -0xc
/* 0226FC 800472FC 0C0511F1 */ jal draw_icon_1
/* 022700 80047300 0200202D */ daddu $a0, $s0, $zero
.L80047304:
/* 022704 80047304 8222FFE4 */ lb $v0, -0x1c($s1)
/* 022708 80047308 10400029 */ beqz $v0, .L800473B0
/* 02270C 8004730C 00000000 */ nop
/* 022710 80047310 8E830000 */ lw $v1, ($s4)
/* 022714 80047314 30620100 */ andi $v0, $v1, 0x100
/* 022718 80047318 1440FECF */ bnez $v0, .L80046E58
/* 02271C 8004731C 30620002 */ andi $v0, $v1, 2
/* 022720 80047320 14400006 */ bnez $v0, .L8004733C
/* 022724 80047324 00000000 */ nop
/* 022728 80047328 3C028007 */ lui $v0, 0x8007
/* 02272C 8004732C 8C42419C */ lw $v0, 0x419c($v0)
/* 022730 80047330 80420070 */ lb $v0, 0x70($v0)
/* 022734 80047334 105E001E */ beq $v0, $fp, .L800473B0
/* 022738 80047338 00000000 */ nop
.L8004733C:
/* 02273C 8004733C 8E24FFE8 */ lw $a0, -0x18($s1)
/* 022740 80047340 0C05128B */ jal clear_icon_flags
/* 022744 80047344 24050002 */ addiu $a1, $zero, 2
/* 022748 80047348 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 02274C 8004734C C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 022750 80047350 44050000 */ mfc1 $a1, $f0
/* 022754 80047354 44071000 */ mfc1 $a3, $f2
/* 022758 80047358 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 02275C 8004735C C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 022760 80047360 46800020 */ cvt.s.w $f0, $f0
/* 022764 80047364 46001080 */ add.s $f2, $f2, $f0
/* 022768 80047368 3C048007 */ lui $a0, 0x8007
/* 02276C 8004736C 8C847410 */ lw $a0, 0x7410($a0)
/* 022770 80047370 44061000 */ mfc1 $a2, $f2
/* 022774 80047374 AFA50020 */ sw $a1, 0x20($sp)
/* 022778 80047378 AFA70024 */ sw $a3, 0x24($sp)
/* 02277C 8004737C AFB70010 */ sw $s7, 0x10($sp)
/* 022780 80047380 AFB60014 */ sw $s6, 0x14($sp)
/* 022784 80047384 0C00B94E */ jal get_screen_coords
/* 022788 80047388 AFB50018 */ sw $s5, 0x18($sp)
/* 02278C 8004738C 8E30FFE8 */ lw $s0, -0x18($s1)
/* 022790 80047390 8FA50028 */ lw $a1, 0x28($sp)
/* 022794 80047394 8FA6002C */ lw $a2, 0x2c($sp)
/* 022798 80047398 0200202D */ daddu $a0, $s0, $zero
/* 02279C 8004739C 24A50002 */ addiu $a1, $a1, 2
/* 0227A0 800473A0 0C051261 */ jal set_icon_render_pos
/* 0227A4 800473A4 24C6FFF4 */ addiu $a2, $a2, -0xc
/* 0227A8 800473A8 0C0511F1 */ jal draw_icon_1
/* 0227AC 800473AC 0200202D */ daddu $a0, $s0, $zero
.L800473B0:
/* 0227B0 800473B0 8222FFEC */ lb $v0, -0x14($s1)
/* 0227B4 800473B4 10400029 */ beqz $v0, .L8004745C
/* 0227B8 800473B8 00000000 */ nop
/* 0227BC 800473BC 8E830000 */ lw $v1, ($s4)
/* 0227C0 800473C0 30620200 */ andi $v0, $v1, 0x200
/* 0227C4 800473C4 1440FEA9 */ bnez $v0, .L80046E6C
/* 0227C8 800473C8 30620002 */ andi $v0, $v1, 2
/* 0227CC 800473CC 14400006 */ bnez $v0, .L800473E8
/* 0227D0 800473D0 00000000 */ nop
/* 0227D4 800473D4 3C028007 */ lui $v0, 0x8007
/* 0227D8 800473D8 8C42419C */ lw $v0, 0x419c($v0)
/* 0227DC 800473DC 80420070 */ lb $v0, 0x70($v0)
/* 0227E0 800473E0 105E001E */ beq $v0, $fp, .L8004745C
/* 0227E4 800473E4 00000000 */ nop
.L800473E8:
/* 0227E8 800473E8 8E24FFF0 */ lw $a0, -0x10($s1)
/* 0227EC 800473EC 0C05128B */ jal clear_icon_flags
/* 0227F0 800473F0 24050002 */ addiu $a1, $zero, 2
/* 0227F4 800473F4 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 0227F8 800473F8 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 0227FC 800473FC 44050000 */ mfc1 $a1, $f0
/* 022800 80047400 44071000 */ mfc1 $a3, $f2
/* 022804 80047404 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022808 80047408 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 02280C 8004740C 46800020 */ cvt.s.w $f0, $f0
/* 022810 80047410 46001080 */ add.s $f2, $f2, $f0
/* 022814 80047414 3C048007 */ lui $a0, 0x8007
/* 022818 80047418 8C847410 */ lw $a0, 0x7410($a0)
/* 02281C 8004741C 44061000 */ mfc1 $a2, $f2
/* 022820 80047420 AFA50020 */ sw $a1, 0x20($sp)
/* 022824 80047424 AFA70024 */ sw $a3, 0x24($sp)
/* 022828 80047428 AFB70010 */ sw $s7, 0x10($sp)
/* 02282C 8004742C AFB60014 */ sw $s6, 0x14($sp)
/* 022830 80047430 0C00B94E */ jal get_screen_coords
/* 022834 80047434 AFB50018 */ sw $s5, 0x18($sp)
/* 022838 80047438 8E30FFF0 */ lw $s0, -0x10($s1)
/* 02283C 8004743C 8FA50028 */ lw $a1, 0x28($sp)
/* 022840 80047440 8FA6002C */ lw $a2, 0x2c($sp)
/* 022844 80047444 0200202D */ daddu $a0, $s0, $zero
/* 022848 80047448 24A50002 */ addiu $a1, $a1, 2
/* 02284C 8004744C 0C051261 */ jal set_icon_render_pos
/* 022850 80047450 24C6FFF1 */ addiu $a2, $a2, -0xf
/* 022854 80047454 0C0511F1 */ jal draw_icon_1
/* 022858 80047458 0200202D */ daddu $a0, $s0, $zero
.L8004745C:
/* 02285C 8004745C 8222FFF4 */ lb $v0, -0xc($s1)
/* 022860 80047460 10400029 */ beqz $v0, .L80047508
/* 022864 80047464 00000000 */ nop
/* 022868 80047468 8E830000 */ lw $v1, ($s4)
/* 02286C 8004746C 30620400 */ andi $v0, $v1, 0x400
/* 022870 80047470 1440FE83 */ bnez $v0, .L80046E80
/* 022874 80047474 30620002 */ andi $v0, $v1, 2
/* 022878 80047478 14400006 */ bnez $v0, .L80047494
/* 02287C 8004747C 00000000 */ nop
/* 022880 80047480 3C028007 */ lui $v0, 0x8007
/* 022884 80047484 8C42419C */ lw $v0, 0x419c($v0)
/* 022888 80047488 80420070 */ lb $v0, 0x70($v0)
/* 02288C 8004748C 105E001E */ beq $v0, $fp, .L80047508
/* 022890 80047490 00000000 */ nop
.L80047494:
/* 022894 80047494 8E24FFF8 */ lw $a0, -8($s1)
/* 022898 80047498 0C05128B */ jal clear_icon_flags
/* 02289C 8004749C 24050002 */ addiu $a1, $zero, 2
/* 0228A0 800474A0 C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 0228A4 800474A4 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 0228A8 800474A8 44050000 */ mfc1 $a1, $f0
/* 0228AC 800474AC 44071000 */ mfc1 $a3, $f2
/* 0228B0 800474B0 C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 0228B4 800474B4 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 0228B8 800474B8 46800020 */ cvt.s.w $f0, $f0
/* 0228BC 800474BC 46001080 */ add.s $f2, $f2, $f0
/* 0228C0 800474C0 3C048007 */ lui $a0, 0x8007
/* 0228C4 800474C4 8C847410 */ lw $a0, 0x7410($a0)
/* 0228C8 800474C8 44061000 */ mfc1 $a2, $f2
/* 0228CC 800474CC AFA50020 */ sw $a1, 0x20($sp)
/* 0228D0 800474D0 AFA70024 */ sw $a3, 0x24($sp)
/* 0228D4 800474D4 AFB70010 */ sw $s7, 0x10($sp)
/* 0228D8 800474D8 AFB60014 */ sw $s6, 0x14($sp)
/* 0228DC 800474DC 0C00B94E */ jal get_screen_coords
/* 0228E0 800474E0 AFB50018 */ sw $s5, 0x18($sp)
/* 0228E4 800474E4 8E30FFF8 */ lw $s0, -8($s1)
/* 0228E8 800474E8 8FA50028 */ lw $a1, 0x28($sp)
/* 0228EC 800474EC 8FA6002C */ lw $a2, 0x2c($sp)
/* 0228F0 800474F0 0200202D */ daddu $a0, $s0, $zero
/* 0228F4 800474F4 24A50002 */ addiu $a1, $a1, 2
/* 0228F8 800474F8 0C051261 */ jal set_icon_render_pos
/* 0228FC 800474FC 24C6FFF0 */ addiu $a2, $a2, -0x10
/* 022900 80047500 0C0511F1 */ jal draw_icon_1
/* 022904 80047504 0200202D */ daddu $a0, $s0, $zero
.L80047508:
/* 022908 80047508 8222FFFC */ lb $v0, -4($s1)
/* 02290C 8004750C 5040002A */ beql $v0, $zero, .L800475B8
/* 022910 80047510 263100B0 */ addiu $s1, $s1, 0xb0
/* 022914 80047514 8E830000 */ lw $v1, ($s4)
/* 022918 80047518 30620800 */ andi $v0, $v1, 0x800
/* 02291C 8004751C 1440FE5D */ bnez $v0, .L80046E94
/* 022920 80047520 30620002 */ andi $v0, $v1, 2
/* 022924 80047524 14400006 */ bnez $v0, .L80047540
/* 022928 80047528 00000000 */ nop
/* 02292C 8004752C 3C028007 */ lui $v0, 0x8007
/* 022930 80047530 8C42419C */ lw $v0, 0x419c($v0)
/* 022934 80047534 80420070 */ lb $v0, 0x70($v0)
/* 022938 80047538 505E001F */ beql $v0, $fp, .L800475B8
/* 02293C 8004753C 263100B0 */ addiu $s1, $s1, 0xb0
.L80047540:
/* 022940 80047540 8E240000 */ lw $a0, ($s1)
/* 022944 80047544 0C05128B */ jal clear_icon_flags
/* 022948 80047548 24050002 */ addiu $a1, $zero, 2
/* 02294C 8004754C C620FF58 */ lwc1 $f0, -0xa8($s1)
/* 022950 80047550 C622FF60 */ lwc1 $f2, -0xa0($s1)
/* 022954 80047554 44050000 */ mfc1 $a1, $f0
/* 022958 80047558 44071000 */ mfc1 $a3, $f2
/* 02295C 8004755C C622FF5C */ lwc1 $f2, -0xa4($s1)
/* 022960 80047560 C620FF84 */ lwc1 $f0, -0x7c($s1)
/* 022964 80047564 46800020 */ cvt.s.w $f0, $f0
/* 022968 80047568 46001080 */ add.s $f2, $f2, $f0
/* 02296C 8004756C 3C048007 */ lui $a0, 0x8007
/* 022970 80047570 8C847410 */ lw $a0, 0x7410($a0)
/* 022974 80047574 44061000 */ mfc1 $a2, $f2
/* 022978 80047578 AFA50020 */ sw $a1, 0x20($sp)
/* 02297C 8004757C AFA70024 */ sw $a3, 0x24($sp)
/* 022980 80047580 AFB70010 */ sw $s7, 0x10($sp)
/* 022984 80047584 AFB60014 */ sw $s6, 0x14($sp)
/* 022988 80047588 0C00B94E */ jal get_screen_coords
/* 02298C 8004758C AFB50018 */ sw $s5, 0x18($sp)
/* 022990 80047590 8E300000 */ lw $s0, ($s1)
/* 022994 80047594 8FA50028 */ lw $a1, 0x28($sp)
/* 022998 80047598 8FA6002C */ lw $a2, 0x2c($sp)
/* 02299C 8004759C 0200202D */ daddu $a0, $s0, $zero
/* 0229A0 800475A0 24A50002 */ addiu $a1, $a1, 2
/* 0229A4 800475A4 0C051261 */ jal set_icon_render_pos
/* 0229A8 800475A8 24C6FFF0 */ addiu $a2, $a2, -0x10
/* 0229AC 800475AC 0C0511F1 */ jal draw_icon_1
/* 0229B0 800475B0 0200202D */ daddu $a0, $s0, $zero
/* 0229B4 800475B4 263100B0 */ addiu $s1, $s1, 0xb0
.L800475B8:
/* 0229B8 800475B8 8FB80038 */ lw $t8, 0x38($sp)
/* 0229BC 800475BC 269400B0 */ addiu $s4, $s4, 0xb0
/* 0229C0 800475C0 27180001 */ addiu $t8, $t8, 1
/* 0229C4 800475C4 2B020040 */ slti $v0, $t8, 0x40
/* 0229C8 800475C8 1440FC7E */ bnez $v0, .L800467C4
/* 0229CC 800475CC AFB80038 */ sw $t8, 0x38($sp)
/* 0229D0 800475D0 8FBF0064 */ lw $ra, 0x64($sp)
/* 0229D4 800475D4 8FBE0060 */ lw $fp, 0x60($sp)
/* 0229D8 800475D8 8FB7005C */ lw $s7, 0x5c($sp)
/* 0229DC 800475DC 8FB60058 */ lw $s6, 0x58($sp)
/* 0229E0 800475E0 8FB50054 */ lw $s5, 0x54($sp)
/* 0229E4 800475E4 8FB40050 */ lw $s4, 0x50($sp)
/* 0229E8 800475E8 8FB3004C */ lw $s3, 0x4c($sp)
/* 0229EC 800475EC 8FB20048 */ lw $s2, 0x48($sp)
/* 0229F0 800475F0 8FB10044 */ lw $s1, 0x44($sp)
/* 0229F4 800475F4 8FB00040 */ lw $s0, 0x40($sp)
/* 0229F8 800475F8 D7B60070 */ ldc1 $f22, 0x70($sp)
/* 0229FC 800475FC D7B40068 */ ldc1 $f20, 0x68($sp)
/* 022A00 80047600 03E00008 */ jr $ra
/* 022A04 80047604 27BD0078 */ addiu $sp, $sp, 0x78