### RAW ASSEMBLY INSTRUCTIONS:

glabel draw_all_status_icons
/* 219E0 800465E0 27BDFF88 */  addiu     $sp, $sp, -0x78
/* 219E4 800465E4 3C08ED03 */  lui       $t0, (0xED030050 >> 16)
/* 219E8 800465E8 35080050 */  ori       $t0, $t0, (0xED030050 & 0xFFFF)
/* 219EC 800465EC 3C07004D */  lui       $a3, (0x4D0370 >> 16)
/* 219F0 800465F0 34E70370 */  ori       $a3, $a3, (0x4D0370 & 0xFFFF)
/* 219F4 800465F4 3C09E300 */  lui       $t1, (0xE3000A01 >> 16)
/* 219F8 800465F8 35290A01 */  ori       $t1, $t1, (0xE3000A01 & 0xFFFF)
/* 219FC 800465FC 3C0AE300 */  lui       $t2, (0xE3000C00 >> 16)
/* 21A00 80046600 354A0C00 */  ori       $t2, $t2, (0xE3000C00 & 0xFFFF)
/* 21A04 80046604 3C0BE300 */  lui       $t3, (0xE3000F00 >> 16)
/* 21A08 80046608 356B0F00 */  ori       $t3, $t3, (0xE3000F00 & 0xFFFF)
/* 21A0C 8004660C 3C0CE300 */  lui       $t4, (0xE3000D01 >> 16)
/* 21A10 80046610 358C0D01 */  ori       $t4, $t4, (0xE3000D01 & 0xFFFF)
/* 21A14 80046614 3C0DE300 */  lui       $t5, (0xE3001402 >> 16)
/* 21A18 80046618 35AD1402 */  ori       $t5, $t5, (0xE3001402 & 0xFFFF)
/* 21A1C 8004661C 3C0EE300 */  lui       $t6, (0xE3001700 >> 16)
/* 21A20 80046620 35CE1700 */  ori       $t6, $t6, (0xE3001700 & 0xFFFF)
/* 21A24 80046624 3C0FE200 */  lui       $t7, (0xE2001E01 >> 16)
/* 21A28 80046628 35EF1E01 */  ori       $t7, $t7, (0xE2001E01 & 0xFFFF)
/* 21A2C 8004662C AFB00040 */  sw        $s0, 0x40($sp)
/* 21A30 80046630 3C10E300 */  lui       $s0, (0xE3001801 >> 16)
/* 21A34 80046634 36101801 */  ori       $s0, $s0, (0xE3001801 & 0xFFFF)
/* 21A38 80046638 AFB10044 */  sw        $s1, 0x44($sp)
/* 21A3C 8004663C 3C11E300 */  lui       $s1, (0xE3001A01 >> 16)
/* 21A40 80046640 36311A01 */  ori       $s1, $s1, (0xE3001A01 & 0xFFFF)
/* 21A44 80046644 AFB20048 */  sw        $s2, 0x48($sp)
/* 21A48 80046648 3C12D700 */  lui       $s2, (0xD7000002 >> 16)
/* 21A4C 8004664C 36520002 */  ori       $s2, $s2, (0xD7000002 & 0xFFFF)
/* 21A50 80046650 AFBE0060 */  sw        $fp, 0x60($sp)
/* 21A54 80046654 241E0001 */  addiu     $fp, $zero, 0x1
/* 21A58 80046658 AFB7005C */  sw        $s7, 0x5C($sp)
/* 21A5C 8004665C 27B70028 */  addiu     $s7, $sp, 0x28
/* 21A60 80046660 AFB60058 */  sw        $s6, 0x58($sp)
/* 21A64 80046664 27B6002C */  addiu     $s6, $sp, 0x2C
/* 21A68 80046668 AFB50054 */  sw        $s5, 0x54($sp)
/* 21A6C 8004666C 27B50030 */  addiu     $s5, $sp, 0x30
/* 21A70 80046670 3C05800A */  lui       $a1, %hi(gMainGfxPos)
/* 21A74 80046674 24A5A66C */  addiu     $a1, $a1, %lo(gMainGfxPos)
/* 21A78 80046678 3C06800B */  lui       $a2, %hi(gCameras)
/* 21A7C 8004667C 24C61D80 */  addiu     $a2, $a2, %lo(gCameras)
/* 21A80 80046680 AFBF0064 */  sw        $ra, 0x64($sp)
/* 21A84 80046684 AFB40050 */  sw        $s4, 0x50($sp)
/* 21A88 80046688 AFB3004C */  sw        $s3, 0x4C($sp)
/* 21A8C 8004668C F7B60070 */  sdc1      $f22, 0x70($sp)
/* 21A90 80046690 F7B40068 */  sdc1      $f20, 0x68($sp)
/* 21A94 80046694 AFA00038 */  sw        $zero, 0x38($sp)
/* 21A98 80046698 8CA30000 */  lw        $v1, 0x0($a1)
/* 21A9C 8004669C 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 21AA0 800466A0 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 21AA4 800466A4 3C0142B4 */  lui       $at, (0x42B40000 >> 16)
/* 21AA8 800466A8 4481B000 */  mtc1      $at, $f22
/* 21AAC 800466AC 00041080 */  sll       $v0, $a0, 2
/* 21AB0 800466B0 00441021 */  addu      $v0, $v0, $a0
/* 21AB4 800466B4 00021080 */  sll       $v0, $v0, 2
/* 21AB8 800466B8 00441023 */  subu      $v0, $v0, $a0
/* 21ABC 800466BC 000220C0 */  sll       $a0, $v0, 3
/* 21AC0 800466C0 00441021 */  addu      $v0, $v0, $a0
/* 21AC4 800466C4 000210C0 */  sll       $v0, $v0, 3
/* 21AC8 800466C8 00461021 */  addu      $v0, $v0, $a2
/* 21ACC 800466CC AFA20034 */  sw        $v0, 0x34($sp)
/* 21AD0 800466D0 0060102D */  daddu     $v0, $v1, $zero
/* 21AD4 800466D4 24630008 */  addiu     $v1, $v1, 0x8
/* 21AD8 800466D8 ACA30000 */  sw        $v1, 0x0($a1)
/* 21ADC 800466DC AC480000 */  sw        $t0, 0x0($v0)
/* 21AE0 800466E0 AC470004 */  sw        $a3, 0x4($v0)
/* 21AE4 800466E4 24620008 */  addiu     $v0, $v1, 0x8
/* 21AE8 800466E8 ACA20000 */  sw        $v0, 0x0($a1)
/* 21AEC 800466EC 3C02E700 */  lui       $v0, (0xE7000000 >> 16)
/* 21AF0 800466F0 AC620000 */  sw        $v0, 0x0($v1)
/* 21AF4 800466F4 24620010 */  addiu     $v0, $v1, 0x10
/* 21AF8 800466F8 AC600004 */  sw        $zero, 0x4($v1)
/* 21AFC 800466FC ACA20000 */  sw        $v0, 0x0($a1)
/* 21B00 80046700 24620018 */  addiu     $v0, $v1, 0x18
/* 21B04 80046704 AC690008 */  sw        $t1, 0x8($v1)
/* 21B08 80046708 AC60000C */  sw        $zero, 0xC($v1)
/* 21B0C 8004670C ACA20000 */  sw        $v0, 0x0($a1)
/* 21B10 80046710 24620020 */  addiu     $v0, $v1, 0x20
/* 21B14 80046714 AC6A0010 */  sw        $t2, 0x10($v1)
/* 21B18 80046718 AC600014 */  sw        $zero, 0x14($v1)
/* 21B1C 8004671C ACA20000 */  sw        $v0, 0x0($a1)
/* 21B20 80046720 24620028 */  addiu     $v0, $v1, 0x28
/* 21B24 80046724 AC6B0018 */  sw        $t3, 0x18($v1)
/* 21B28 80046728 AC60001C */  sw        $zero, 0x1C($v1)
/* 21B2C 8004672C ACA20000 */  sw        $v0, 0x0($a1)
/* 21B30 80046730 24620030 */  addiu     $v0, $v1, 0x30
/* 21B34 80046734 AC6C0020 */  sw        $t4, 0x20($v1)
/* 21B38 80046738 AC600024 */  sw        $zero, 0x24($v1)
/* 21B3C 8004673C ACA20000 */  sw        $v0, 0x0($a1)
/* 21B40 80046740 24020C00 */  addiu     $v0, $zero, 0xC00
/* 21B44 80046744 AC62002C */  sw        $v0, 0x2C($v1)
/* 21B48 80046748 24620038 */  addiu     $v0, $v1, 0x38
/* 21B4C 8004674C AC6D0028 */  sw        $t5, 0x28($v1)
/* 21B50 80046750 ACA20000 */  sw        $v0, 0x0($a1)
/* 21B54 80046754 24620040 */  addiu     $v0, $v1, 0x40
/* 21B58 80046758 AC6E0030 */  sw        $t6, 0x30($v1)
/* 21B5C 8004675C AC600034 */  sw        $zero, 0x34($v1)
/* 21B60 80046760 ACA20000 */  sw        $v0, 0x0($a1)
/* 21B64 80046764 24620048 */  addiu     $v0, $v1, 0x48
/* 21B68 80046768 AC6F0038 */  sw        $t7, 0x38($v1)
/* 21B6C 8004676C AC60003C */  sw        $zero, 0x3C($v1)
/* 21B70 80046770 ACA20000 */  sw        $v0, 0x0($a1)
/* 21B74 80046774 24620050 */  addiu     $v0, $v1, 0x50
/* 21B78 80046778 AC600040 */  sw        $zero, 0x40($v1)
/* 21B7C 8004677C AC600044 */  sw        $zero, 0x44($v1)
/* 21B80 80046780 ACA20000 */  sw        $v0, 0x0($a1)
/* 21B84 80046784 AC700048 */  sw        $s0, 0x48($v1)
/* 21B88 80046788 3C14800A */  lui       $s4, %hi(D_800A0F44)
/* 21B8C 8004678C 8E940F44 */  lw        $s4, %lo(D_800A0F44)($s4)
/* 21B90 80046790 240200C0 */  addiu     $v0, $zero, 0xC0
/* 21B94 80046794 AC62004C */  sw        $v0, 0x4C($v1)
/* 21B98 80046798 24620058 */  addiu     $v0, $v1, 0x58
/* 21B9C 8004679C ACA20000 */  sw        $v0, 0x0($a1)
/* 21BA0 800467A0 24020030 */  addiu     $v0, $zero, 0x30
/* 21BA4 800467A4 AC620054 */  sw        $v0, 0x54($v1)
/* 21BA8 800467A8 24620060 */  addiu     $v0, $v1, 0x60
/* 21BAC 800467AC AC710050 */  sw        $s1, 0x50($v1)
/* 21BB0 800467B0 ACA20000 */  sw        $v0, 0x0($a1)
/* 21BB4 800467B4 2402FFFF */  addiu     $v0, $zero, -0x1
/* 21BB8 800467B8 AC720058 */  sw        $s2, 0x58($v1)
/* 21BBC 800467BC AC62005C */  sw        $v0, 0x5C($v1)
/* 21BC0 800467C0 269100AC */  addiu     $s1, $s4, 0xAC
.L800467C4:
/* 21BC4 800467C4 8E830000 */  lw        $v1, 0x0($s4)
/* 21BC8 800467C8 5060037B */  beql      $v1, $zero, .L800475B8
/* 21BCC 800467CC 263100B0 */   addiu    $s1, $s1, 0xB0
/* 21BD0 800467D0 0000902D */  daddu     $s2, $zero, $zero
/* 21BD4 800467D4 8222FF8E */  lb        $v0, -0x72($s1)
/* 21BD8 800467D8 24180002 */  addiu     $t8, $zero, 0x2
/* 21BDC 800467DC 1458003C */  bne       $v0, $t8, .L800468D0
/* 21BE0 800467E0 0240982D */   daddu    $s3, $s2, $zero
/* 21BE4 800467E4 30620004 */  andi      $v0, $v1, 0x4
/* 21BE8 800467E8 10400006 */  beqz      $v0, .L80046804
/* 21BEC 800467EC 30620002 */   andi     $v0, $v1, 0x2
/* 21BF0 800467F0 8E24FF94 */  lw        $a0, -0x6C($s1)
/* 21BF4 800467F4 0C051280 */  jal       hud_element_set_flags
/* 21BF8 800467F8 0300282D */   daddu    $a1, $t8, $zero
/* 21BFC 800467FC 08011A34 */  j         .L800468D0
/* 21C00 80046800 00000000 */   nop
.L80046804:
/* 21C04 80046804 14400006 */  bnez      $v0, .L80046820
/* 21C08 80046808 00000000 */   nop
/* 21C0C 8004680C 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 21C10 80046810 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 21C14 80046814 80420070 */  lb        $v0, 0x70($v0)
/* 21C18 80046818 105E002D */  beq       $v0, $fp, .L800468D0
/* 21C1C 8004681C 00000000 */   nop
.L80046820:
/* 21C20 80046820 8E24FF94 */  lw        $a0, -0x6C($s1)
/* 21C24 80046824 0C05128B */  jal       hud_element_clear_flags
/* 21C28 80046828 24050002 */   addiu    $a1, $zero, 0x2
/* 21C2C 8004682C C620FF68 */  lwc1      $f0, -0x98($s1)
/* 21C30 80046830 46800020 */  cvt.s.w   $f0, $f0
/* 21C34 80046834 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 21C38 80046838 8FB80034 */  lw        $t8, 0x34($sp)
/* 21C3C 8004683C 46001500 */  add.s     $f20, $f2, $f0
/* 21C40 80046840 C622FF58 */  lwc1      $f2, -0xA8($s1)
/* 21C44 80046844 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 21C48 80046848 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 21C4C 8004684C 46166300 */  add.s     $f12, $f12, $f22
/* 21C50 80046850 E7A20020 */  swc1      $f2, 0x20($sp)
/* 21C54 80046854 0C00A6C9 */  jal       clamp_angle
/* 21C58 80046858 E7A00024 */   swc1     $f0, 0x24($sp)
/* 21C5C 8004685C 27A40020 */  addiu     $a0, $sp, 0x20
/* 21C60 80046860 C626FF64 */  lwc1      $f6, -0x9C($s1)
/* 21C64 80046864 468031A0 */  cvt.s.w   $f6, $f6
/* 21C68 80046868 44070000 */  mfc1      $a3, $f0
/* 21C6C 8004686C 44063000 */  mfc1      $a2, $f6
/* 21C70 80046870 0C00A7E7 */  jal       add_vec2D_polar
/* 21C74 80046874 27A50024 */   addiu    $a1, $sp, 0x24
/* 21C78 80046878 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 21C7C 8004687C 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 21C80 80046880 4406A000 */  mfc1      $a2, $f20
/* 21C84 80046884 C7A00020 */  lwc1      $f0, 0x20($sp)
/* 21C88 80046888 C7A20024 */  lwc1      $f2, 0x24($sp)
/* 21C8C 8004688C 44050000 */  mfc1      $a1, $f0
/* 21C90 80046890 44071000 */  mfc1      $a3, $f2
/* 21C94 80046894 24120001 */  addiu     $s2, $zero, 0x1
/* 21C98 80046898 AFB70010 */  sw        $s7, 0x10($sp)
/* 21C9C 8004689C AFB60014 */  sw        $s6, 0x14($sp)
/* 21CA0 800468A0 0C00B94E */  jal       get_screen_coords
/* 21CA4 800468A4 AFB50018 */   sw       $s5, 0x18($sp)
/* 21CA8 800468A8 0240982D */  daddu     $s3, $s2, $zero
/* 21CAC 800468AC 8E30FF94 */  lw        $s0, -0x6C($s1)
/* 21CB0 800468B0 8FA50028 */  lw        $a1, 0x28($sp)
/* 21CB4 800468B4 8FA6002C */  lw        $a2, 0x2C($sp)
/* 21CB8 800468B8 0200202D */  daddu     $a0, $s0, $zero
/* 21CBC 800468BC 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 21CC0 800468C0 0C051261 */  jal       hud_element_set_render_pos
/* 21CC4 800468C4 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 21CC8 800468C8 0C0511F1 */  jal       hud_element_draw_next
/* 21CCC 800468CC 0200202D */   daddu    $a0, $s0, $zero
.L800468D0:
/* 21CD0 800468D0 8222FF8F */  lb        $v0, -0x71($s1)
/* 21CD4 800468D4 24180002 */  addiu     $t8, $zero, 0x2
/* 21CD8 800468D8 14580036 */  bne       $v0, $t8, .L800469B4
/* 21CDC 800468DC 00000000 */   nop
/* 21CE0 800468E0 8E820000 */  lw        $v0, 0x0($s4)
/* 21CE4 800468E4 00581024 */  and       $v0, $v0, $t8
/* 21CE8 800468E8 14400006 */  bnez      $v0, .L80046904
/* 21CEC 800468EC 00000000 */   nop
/* 21CF0 800468F0 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 21CF4 800468F4 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 21CF8 800468F8 80420070 */  lb        $v0, 0x70($v0)
/* 21CFC 800468FC 105E002D */  beq       $v0, $fp, .L800469B4
/* 21D00 80046900 00000000 */   nop
.L80046904:
/* 21D04 80046904 8E24FF98 */  lw        $a0, -0x68($s1)
/* 21D08 80046908 0C05128B */  jal       hud_element_clear_flags
/* 21D0C 8004690C 24050002 */   addiu    $a1, $zero, 0x2
/* 21D10 80046910 52600001 */  beql      $s3, $zero, .L80046918
/* 21D14 80046914 26520001 */   addiu    $s2, $s2, 0x1
.L80046918:
/* 21D18 80046918 C620FF68 */  lwc1      $f0, -0x98($s1)
/* 21D1C 8004691C 46800020 */  cvt.s.w   $f0, $f0
/* 21D20 80046920 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 21D24 80046924 8FB80034 */  lw        $t8, 0x34($sp)
/* 21D28 80046928 46001500 */  add.s     $f20, $f2, $f0
/* 21D2C 8004692C C622FF58 */  lwc1      $f2, -0xA8($s1)
/* 21D30 80046930 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 21D34 80046934 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 21D38 80046938 46166300 */  add.s     $f12, $f12, $f22
/* 21D3C 8004693C E7A20020 */  swc1      $f2, 0x20($sp)
/* 21D40 80046940 0C00A6C9 */  jal       clamp_angle
/* 21D44 80046944 E7A00024 */   swc1     $f0, 0x24($sp)
/* 21D48 80046948 27A40020 */  addiu     $a0, $sp, 0x20
/* 21D4C 8004694C C626FF64 */  lwc1      $f6, -0x9C($s1)
/* 21D50 80046950 468031A0 */  cvt.s.w   $f6, $f6
/* 21D54 80046954 44070000 */  mfc1      $a3, $f0
/* 21D58 80046958 44063000 */  mfc1      $a2, $f6
/* 21D5C 8004695C 0C00A7E7 */  jal       add_vec2D_polar
/* 21D60 80046960 27A50024 */   addiu    $a1, $sp, 0x24
/* 21D64 80046964 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 21D68 80046968 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 21D6C 8004696C 4406A000 */  mfc1      $a2, $f20
/* 21D70 80046970 C7A00020 */  lwc1      $f0, 0x20($sp)
/* 21D74 80046974 C7A20024 */  lwc1      $f2, 0x24($sp)
/* 21D78 80046978 44050000 */  mfc1      $a1, $f0
/* 21D7C 8004697C 44071000 */  mfc1      $a3, $f2
/* 21D80 80046980 AFB70010 */  sw        $s7, 0x10($sp)
/* 21D84 80046984 AFB60014 */  sw        $s6, 0x14($sp)
/* 21D88 80046988 0C00B94E */  jal       get_screen_coords
/* 21D8C 8004698C AFB50018 */   sw       $s5, 0x18($sp)
/* 21D90 80046990 8E30FF98 */  lw        $s0, -0x68($s1)
/* 21D94 80046994 8FA50028 */  lw        $a1, 0x28($sp)
/* 21D98 80046998 8FA6002C */  lw        $a2, 0x2C($sp)
/* 21D9C 8004699C 0200202D */  daddu     $a0, $s0, $zero
/* 21DA0 800469A0 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 21DA4 800469A4 0C051261 */  jal       hud_element_set_render_pos
/* 21DA8 800469A8 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 21DAC 800469AC 0C0511F1 */  jal       hud_element_draw_next
/* 21DB0 800469B0 0200202D */   daddu    $a0, $s0, $zero
.L800469B4:
/* 21DB4 800469B4 8222FF9E */  lb        $v0, -0x62($s1)
/* 21DB8 800469B8 24180002 */  addiu     $t8, $zero, 0x2
/* 21DBC 800469BC 14580044 */  bne       $v0, $t8, .L80046AD0
/* 21DC0 800469C0 0000982D */   daddu    $s3, $zero, $zero
/* 21DC4 800469C4 8E830000 */  lw        $v1, 0x0($s4)
/* 21DC8 800469C8 30620008 */  andi      $v0, $v1, 0x8
/* 21DCC 800469CC 10400006 */  beqz      $v0, .L800469E8
/* 21DD0 800469D0 30620002 */   andi     $v0, $v1, 0x2
/* 21DD4 800469D4 8E24FFA4 */  lw        $a0, -0x5C($s1)
/* 21DD8 800469D8 0C051280 */  jal       hud_element_set_flags
/* 21DDC 800469DC 0300282D */   daddu    $a1, $t8, $zero
/* 21DE0 800469E0 08011AB4 */  j         .L80046AD0
/* 21DE4 800469E4 00000000 */   nop
.L800469E8:
/* 21DE8 800469E8 14400006 */  bnez      $v0, .L80046A04
/* 21DEC 800469EC 00000000 */   nop
/* 21DF0 800469F0 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 21DF4 800469F4 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 21DF8 800469F8 80420070 */  lb        $v0, 0x70($v0)
/* 21DFC 800469FC 105E0034 */  beq       $v0, $fp, .L80046AD0
/* 21E00 80046A00 00000000 */   nop
.L80046A04:
/* 21E04 80046A04 8E24FFA4 */  lw        $a0, -0x5C($s1)
/* 21E08 80046A08 0C05128B */  jal       hud_element_clear_flags
/* 21E0C 80046A0C 24050002 */   addiu    $a1, $zero, 0x2
/* 21E10 80046A10 16400002 */  bnez      $s2, .L80046A1C
/* 21E14 80046A14 0000102D */   daddu    $v0, $zero, $zero
/* 21E18 80046A18 2402FFEF */  addiu     $v0, $zero, -0x11
.L80046A1C:
/* 21E1C 80046A1C 8FB80034 */  lw        $t8, 0x34($sp)
/* 21E20 80046A20 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 21E24 80046A24 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 21E28 80046A28 E7A00020 */  swc1      $f0, 0x20($sp)
/* 21E2C 80046A2C C624FF70 */  lwc1      $f4, -0x90($s1)
/* 21E30 80046A30 46802120 */  cvt.s.w   $f4, $f4
/* 21E34 80046A34 46166300 */  add.s     $f12, $f12, $f22
/* 21E38 80046A38 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 21E3C 80046A3C C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 21E40 80046A40 46041080 */  add.s     $f2, $f2, $f4
/* 21E44 80046A44 E7A00024 */  swc1      $f0, 0x24($sp)
/* 21E48 80046A48 44820000 */  mtc1      $v0, $f0
/* 21E4C 80046A4C 00000000 */  nop
/* 21E50 80046A50 46800020 */  cvt.s.w   $f0, $f0
/* 21E54 80046A54 0C00A6C9 */  jal       clamp_angle
/* 21E58 80046A58 46001500 */   add.s    $f20, $f2, $f0
/* 21E5C 80046A5C 27A40020 */  addiu     $a0, $sp, 0x20
/* 21E60 80046A60 C626FF6C */  lwc1      $f6, -0x94($s1)
/* 21E64 80046A64 468031A0 */  cvt.s.w   $f6, $f6
/* 21E68 80046A68 44070000 */  mfc1      $a3, $f0
/* 21E6C 80046A6C 44063000 */  mfc1      $a2, $f6
/* 21E70 80046A70 0C00A7E7 */  jal       add_vec2D_polar
/* 21E74 80046A74 27A50024 */   addiu    $a1, $sp, 0x24
/* 21E78 80046A78 C7A00020 */  lwc1      $f0, 0x20($sp)
/* 21E7C 80046A7C 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 21E80 80046A80 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 21E84 80046A84 44050000 */  mfc1      $a1, $f0
/* 21E88 80046A88 C7A00024 */  lwc1      $f0, 0x24($sp)
/* 21E8C 80046A8C 4406A000 */  mfc1      $a2, $f20
/* 21E90 80046A90 44070000 */  mfc1      $a3, $f0
/* 21E94 80046A94 26520001 */  addiu     $s2, $s2, 0x1
/* 21E98 80046A98 AFB70010 */  sw        $s7, 0x10($sp)
/* 21E9C 80046A9C AFB60014 */  sw        $s6, 0x14($sp)
/* 21EA0 80046AA0 0C00B94E */  jal       get_screen_coords
/* 21EA4 80046AA4 AFB50018 */   sw       $s5, 0x18($sp)
/* 21EA8 80046AA8 24130001 */  addiu     $s3, $zero, 0x1
/* 21EAC 80046AAC 8E30FFA4 */  lw        $s0, -0x5C($s1)
/* 21EB0 80046AB0 8FA50028 */  lw        $a1, 0x28($sp)
/* 21EB4 80046AB4 8FA6002C */  lw        $a2, 0x2C($sp)
/* 21EB8 80046AB8 0200202D */  daddu     $a0, $s0, $zero
/* 21EBC 80046ABC 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 21EC0 80046AC0 0C051261 */  jal       hud_element_set_render_pos
/* 21EC4 80046AC4 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 21EC8 80046AC8 0C0511F1 */  jal       hud_element_draw_next
/* 21ECC 80046ACC 0200202D */   daddu    $a0, $s0, $zero
.L80046AD0:
/* 21ED0 80046AD0 8222FF9F */  lb        $v0, -0x61($s1)
/* 21ED4 80046AD4 24180002 */  addiu     $t8, $zero, 0x2
/* 21ED8 80046AD8 1458003D */  bne       $v0, $t8, .L80046BD0
/* 21EDC 80046ADC 00000000 */   nop
/* 21EE0 80046AE0 8E820000 */  lw        $v0, 0x0($s4)
/* 21EE4 80046AE4 00581024 */  and       $v0, $v0, $t8
/* 21EE8 80046AE8 14400006 */  bnez      $v0, .L80046B04
/* 21EEC 80046AEC 00000000 */   nop
/* 21EF0 80046AF0 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 21EF4 80046AF4 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 21EF8 80046AF8 80420070 */  lb        $v0, 0x70($v0)
/* 21EFC 80046AFC 105E0034 */  beq       $v0, $fp, .L80046BD0
/* 21F00 80046B00 00000000 */   nop
.L80046B04:
/* 21F04 80046B04 8E24FFA8 */  lw        $a0, -0x58($s1)
/* 21F08 80046B08 0C05128B */  jal       hud_element_clear_flags
/* 21F0C 80046B0C 24050002 */   addiu    $a1, $zero, 0x2
/* 21F10 80046B10 16400002 */  bnez      $s2, .L80046B1C
/* 21F14 80046B14 0000102D */   daddu    $v0, $zero, $zero
/* 21F18 80046B18 2402FFEF */  addiu     $v0, $zero, -0x11
.L80046B1C:
/* 21F1C 80046B1C 52600001 */  beql      $s3, $zero, .L80046B24
/* 21F20 80046B20 26520001 */   addiu    $s2, $s2, 0x1
.L80046B24:
/* 21F24 80046B24 8FB80034 */  lw        $t8, 0x34($sp)
/* 21F28 80046B28 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 21F2C 80046B2C C70C006C */  lwc1      $f12, 0x6C($t8)
/* 21F30 80046B30 E7A00020 */  swc1      $f0, 0x20($sp)
/* 21F34 80046B34 C624FF70 */  lwc1      $f4, -0x90($s1)
/* 21F38 80046B38 46802120 */  cvt.s.w   $f4, $f4
/* 21F3C 80046B3C 46166300 */  add.s     $f12, $f12, $f22
/* 21F40 80046B40 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 21F44 80046B44 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 21F48 80046B48 46041080 */  add.s     $f2, $f2, $f4
/* 21F4C 80046B4C E7A00024 */  swc1      $f0, 0x24($sp)
/* 21F50 80046B50 44820000 */  mtc1      $v0, $f0
/* 21F54 80046B54 00000000 */  nop
/* 21F58 80046B58 46800020 */  cvt.s.w   $f0, $f0
/* 21F5C 80046B5C 0C00A6C9 */  jal       clamp_angle
/* 21F60 80046B60 46001500 */   add.s    $f20, $f2, $f0
/* 21F64 80046B64 27A40020 */  addiu     $a0, $sp, 0x20
/* 21F68 80046B68 C626FF6C */  lwc1      $f6, -0x94($s1)
/* 21F6C 80046B6C 468031A0 */  cvt.s.w   $f6, $f6
/* 21F70 80046B70 44070000 */  mfc1      $a3, $f0
/* 21F74 80046B74 44063000 */  mfc1      $a2, $f6
/* 21F78 80046B78 0C00A7E7 */  jal       add_vec2D_polar
/* 21F7C 80046B7C 27A50024 */   addiu    $a1, $sp, 0x24
/* 21F80 80046B80 C7A00020 */  lwc1      $f0, 0x20($sp)
/* 21F84 80046B84 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 21F88 80046B88 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 21F8C 80046B8C 44050000 */  mfc1      $a1, $f0
/* 21F90 80046B90 C7A00024 */  lwc1      $f0, 0x24($sp)
/* 21F94 80046B94 4406A000 */  mfc1      $a2, $f20
/* 21F98 80046B98 44070000 */  mfc1      $a3, $f0
/* 21F9C 80046B9C AFB70010 */  sw        $s7, 0x10($sp)
/* 21FA0 80046BA0 AFB60014 */  sw        $s6, 0x14($sp)
/* 21FA4 80046BA4 0C00B94E */  jal       get_screen_coords
/* 21FA8 80046BA8 AFB50018 */   sw       $s5, 0x18($sp)
/* 21FAC 80046BAC 8E30FFA8 */  lw        $s0, -0x58($s1)
/* 21FB0 80046BB0 8FA50028 */  lw        $a1, 0x28($sp)
/* 21FB4 80046BB4 8FA6002C */  lw        $a2, 0x2C($sp)
/* 21FB8 80046BB8 0200202D */  daddu     $a0, $s0, $zero
/* 21FBC 80046BBC 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 21FC0 80046BC0 0C051261 */  jal       hud_element_set_render_pos
/* 21FC4 80046BC4 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 21FC8 80046BC8 0C0511F1 */  jal       hud_element_draw_next
/* 21FCC 80046BCC 0200202D */   daddu    $a0, $s0, $zero
.L80046BD0:
/* 21FD0 80046BD0 8222FFAE */  lb        $v0, -0x52($s1)
/* 21FD4 80046BD4 24180002 */  addiu     $t8, $zero, 0x2
/* 21FD8 80046BD8 14580046 */  bne       $v0, $t8, .L80046CF4
/* 21FDC 80046BDC 0000982D */   daddu    $s3, $zero, $zero
/* 21FE0 80046BE0 8E830000 */  lw        $v1, 0x0($s4)
/* 21FE4 80046BE4 30620010 */  andi      $v0, $v1, 0x10
/* 21FE8 80046BE8 10400006 */  beqz      $v0, .L80046C04
/* 21FEC 80046BEC 30620002 */   andi     $v0, $v1, 0x2
/* 21FF0 80046BF0 8E24FFB4 */  lw        $a0, -0x4C($s1)
/* 21FF4 80046BF4 0C051280 */  jal       hud_element_set_flags
/* 21FF8 80046BF8 0300282D */   daddu    $a1, $t8, $zero
/* 21FFC 80046BFC 08011B3D */  j         .L80046CF4
/* 22000 80046C00 00000000 */   nop
.L80046C04:
/* 22004 80046C04 14400006 */  bnez      $v0, .L80046C20
/* 22008 80046C08 00000000 */   nop
/* 2200C 80046C0C 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 22010 80046C10 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 22014 80046C14 80420070 */  lb        $v0, 0x70($v0)
/* 22018 80046C18 105E0036 */  beq       $v0, $fp, .L80046CF4
/* 2201C 80046C1C 00000000 */   nop
.L80046C20:
/* 22020 80046C20 8E24FFB4 */  lw        $a0, -0x4C($s1)
/* 22024 80046C24 0C05128B */  jal       hud_element_clear_flags
/* 22028 80046C28 24050002 */   addiu    $a1, $zero, 0x2
/* 2202C 80046C2C 165E0002 */  bne       $s2, $fp, .L80046C38
/* 22030 80046C30 0000102D */   daddu    $v0, $zero, $zero
/* 22034 80046C34 2402FFEF */  addiu     $v0, $zero, -0x11
.L80046C38:
/* 22038 80046C38 52400001 */  beql      $s2, $zero, .L80046C40
/* 2203C 80046C3C 2402FFDE */   addiu    $v0, $zero, -0x22
.L80046C40:
/* 22040 80046C40 8FB80034 */  lw        $t8, 0x34($sp)
/* 22044 80046C44 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 22048 80046C48 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 2204C 80046C4C E7A00020 */  swc1      $f0, 0x20($sp)
/* 22050 80046C50 C624FF78 */  lwc1      $f4, -0x88($s1)
/* 22054 80046C54 46802120 */  cvt.s.w   $f4, $f4
/* 22058 80046C58 46166300 */  add.s     $f12, $f12, $f22
/* 2205C 80046C5C C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22060 80046C60 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 22064 80046C64 46041080 */  add.s     $f2, $f2, $f4
/* 22068 80046C68 E7A00024 */  swc1      $f0, 0x24($sp)
/* 2206C 80046C6C 44820000 */  mtc1      $v0, $f0
/* 22070 80046C70 00000000 */  nop
/* 22074 80046C74 46800020 */  cvt.s.w   $f0, $f0
/* 22078 80046C78 0C00A6C9 */  jal       clamp_angle
/* 2207C 80046C7C 46001500 */   add.s    $f20, $f2, $f0
/* 22080 80046C80 27A40020 */  addiu     $a0, $sp, 0x20
/* 22084 80046C84 C626FF74 */  lwc1      $f6, -0x8C($s1)
/* 22088 80046C88 468031A0 */  cvt.s.w   $f6, $f6
/* 2208C 80046C8C 44070000 */  mfc1      $a3, $f0
/* 22090 80046C90 44063000 */  mfc1      $a2, $f6
/* 22094 80046C94 0C00A7E7 */  jal       add_vec2D_polar
/* 22098 80046C98 27A50024 */   addiu    $a1, $sp, 0x24
/* 2209C 80046C9C C7A00020 */  lwc1      $f0, 0x20($sp)
/* 220A0 80046CA0 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 220A4 80046CA4 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 220A8 80046CA8 44050000 */  mfc1      $a1, $f0
/* 220AC 80046CAC C7A00024 */  lwc1      $f0, 0x24($sp)
/* 220B0 80046CB0 4406A000 */  mfc1      $a2, $f20
/* 220B4 80046CB4 44070000 */  mfc1      $a3, $f0
/* 220B8 80046CB8 26520001 */  addiu     $s2, $s2, 0x1
/* 220BC 80046CBC AFB70010 */  sw        $s7, 0x10($sp)
/* 220C0 80046CC0 AFB60014 */  sw        $s6, 0x14($sp)
/* 220C4 80046CC4 0C00B94E */  jal       get_screen_coords
/* 220C8 80046CC8 AFB50018 */   sw       $s5, 0x18($sp)
/* 220CC 80046CCC 24130001 */  addiu     $s3, $zero, 0x1
/* 220D0 80046CD0 8E30FFB4 */  lw        $s0, -0x4C($s1)
/* 220D4 80046CD4 8FA50028 */  lw        $a1, 0x28($sp)
/* 220D8 80046CD8 8FA6002C */  lw        $a2, 0x2C($sp)
/* 220DC 80046CDC 0200202D */  daddu     $a0, $s0, $zero
/* 220E0 80046CE0 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 220E4 80046CE4 0C051261 */  jal       hud_element_set_render_pos
/* 220E8 80046CE8 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 220EC 80046CEC 0C0511F1 */  jal       hud_element_draw_next
/* 220F0 80046CF0 0200202D */   daddu    $a0, $s0, $zero
.L80046CF4:
/* 220F4 80046CF4 8222FFAF */  lb        $v0, -0x51($s1)
/* 220F8 80046CF8 24180002 */  addiu     $t8, $zero, 0x2
/* 220FC 80046CFC 1458003F */  bne       $v0, $t8, .L80046DFC
/* 22100 80046D00 00000000 */   nop
/* 22104 80046D04 8E820000 */  lw        $v0, 0x0($s4)
/* 22108 80046D08 00581024 */  and       $v0, $v0, $t8
/* 2210C 80046D0C 14400006 */  bnez      $v0, .L80046D28
/* 22110 80046D10 00000000 */   nop
/* 22114 80046D14 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 22118 80046D18 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 2211C 80046D1C 80420070 */  lb        $v0, 0x70($v0)
/* 22120 80046D20 105E0036 */  beq       $v0, $fp, .L80046DFC
/* 22124 80046D24 00000000 */   nop
.L80046D28:
/* 22128 80046D28 8E24FFB8 */  lw        $a0, -0x48($s1)
/* 2212C 80046D2C 0C05128B */  jal       hud_element_clear_flags
/* 22130 80046D30 24050002 */   addiu    $a1, $zero, 0x2
/* 22134 80046D34 165E0002 */  bne       $s2, $fp, .L80046D40
/* 22138 80046D38 0000102D */   daddu    $v0, $zero, $zero
/* 2213C 80046D3C 2402FFEF */  addiu     $v0, $zero, -0x11
.L80046D40:
/* 22140 80046D40 52400001 */  beql      $s2, $zero, .L80046D48
/* 22144 80046D44 2402FFDE */   addiu    $v0, $zero, -0x22
.L80046D48:
/* 22148 80046D48 52600001 */  beql      $s3, $zero, .L80046D50
/* 2214C 80046D4C 26520001 */   addiu    $s2, $s2, 0x1
.L80046D50:
/* 22150 80046D50 8FB80034 */  lw        $t8, 0x34($sp)
/* 22154 80046D54 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 22158 80046D58 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 2215C 80046D5C E7A00020 */  swc1      $f0, 0x20($sp)
/* 22160 80046D60 C624FF78 */  lwc1      $f4, -0x88($s1)
/* 22164 80046D64 46802120 */  cvt.s.w   $f4, $f4
/* 22168 80046D68 46166300 */  add.s     $f12, $f12, $f22
/* 2216C 80046D6C C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22170 80046D70 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 22174 80046D74 46041080 */  add.s     $f2, $f2, $f4
/* 22178 80046D78 E7A00024 */  swc1      $f0, 0x24($sp)
/* 2217C 80046D7C 44820000 */  mtc1      $v0, $f0
/* 22180 80046D80 00000000 */  nop
/* 22184 80046D84 46800020 */  cvt.s.w   $f0, $f0
/* 22188 80046D88 0C00A6C9 */  jal       clamp_angle
/* 2218C 80046D8C 46001500 */   add.s    $f20, $f2, $f0
/* 22190 80046D90 27A40020 */  addiu     $a0, $sp, 0x20
/* 22194 80046D94 C626FF74 */  lwc1      $f6, -0x8C($s1)
/* 22198 80046D98 468031A0 */  cvt.s.w   $f6, $f6
/* 2219C 80046D9C 44070000 */  mfc1      $a3, $f0
/* 221A0 80046DA0 44063000 */  mfc1      $a2, $f6
/* 221A4 80046DA4 0C00A7E7 */  jal       add_vec2D_polar
/* 221A8 80046DA8 27A50024 */   addiu    $a1, $sp, 0x24
/* 221AC 80046DAC C7A00020 */  lwc1      $f0, 0x20($sp)
/* 221B0 80046DB0 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 221B4 80046DB4 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 221B8 80046DB8 44050000 */  mfc1      $a1, $f0
/* 221BC 80046DBC C7A00024 */  lwc1      $f0, 0x24($sp)
/* 221C0 80046DC0 4406A000 */  mfc1      $a2, $f20
/* 221C4 80046DC4 44070000 */  mfc1      $a3, $f0
/* 221C8 80046DC8 AFB70010 */  sw        $s7, 0x10($sp)
/* 221CC 80046DCC AFB60014 */  sw        $s6, 0x14($sp)
/* 221D0 80046DD0 0C00B94E */  jal       get_screen_coords
/* 221D4 80046DD4 AFB50018 */   sw       $s5, 0x18($sp)
/* 221D8 80046DD8 8E30FFB8 */  lw        $s0, -0x48($s1)
/* 221DC 80046DDC 8FA50028 */  lw        $a1, 0x28($sp)
/* 221E0 80046DE0 8FA6002C */  lw        $a2, 0x2C($sp)
/* 221E4 80046DE4 0200202D */  daddu     $a0, $s0, $zero
/* 221E8 80046DE8 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 221EC 80046DEC 0C051261 */  jal       hud_element_set_render_pos
/* 221F0 80046DF0 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 221F4 80046DF4 0C0511F1 */  jal       hud_element_draw_next
/* 221F8 80046DF8 0200202D */   daddu    $a0, $s0, $zero
.L80046DFC:
/* 221FC 80046DFC 8222FFBE */  lb        $v0, -0x42($s1)
/* 22200 80046E00 24180002 */  addiu     $t8, $zero, 0x2
/* 22204 80046E04 14580067 */  bne       $v0, $t8, .L80046FA4
/* 22208 80046E08 0000982D */   daddu    $s3, $zero, $zero
/* 2220C 80046E0C 8E830000 */  lw        $v1, 0x0($s4)
/* 22210 80046E10 30620020 */  andi      $v0, $v1, 0x20
/* 22214 80046E14 10400024 */  beqz      $v0, .L80046EA8
/* 22218 80046E18 30620002 */   andi     $v0, $v1, 0x2
/* 2221C 80046E1C 8E24FFC4 */  lw        $a0, -0x3C($s1)
/* 22220 80046E20 0C051280 */  jal       hud_element_set_flags
/* 22224 80046E24 0300282D */   daddu    $a1, $t8, $zero
/* 22228 80046E28 08011BE9 */  j         .L80046FA4
/* 2222C 80046E2C 00000000 */   nop
.L80046E30:
/* 22230 80046E30 8E24FFD0 */  lw        $a0, -0x30($s1)
/* 22234 80046E34 0C051280 */  jal       hud_element_set_flags
/* 22238 80046E38 24050002 */   addiu    $a1, $zero, 0x2
/* 2223C 80046E3C 08011C56 */  j         .L80047158
/* 22240 80046E40 00000000 */   nop
.L80046E44:
/* 22244 80046E44 8E24FFDC */  lw        $a0, -0x24($s1)
/* 22248 80046E48 0C051280 */  jal       hud_element_set_flags
/* 2224C 80046E4C 24050002 */   addiu    $a1, $zero, 0x2
/* 22250 80046E50 08011CA1 */  j         .L80047284
/* 22254 80046E54 00000000 */   nop
.L80046E58:
/* 22258 80046E58 8E24FFE8 */  lw        $a0, -0x18($s1)
/* 2225C 80046E5C 0C051280 */  jal       hud_element_set_flags
/* 22260 80046E60 24050002 */   addiu    $a1, $zero, 0x2
/* 22264 80046E64 08011CEC */  j         .L800473B0
/* 22268 80046E68 00000000 */   nop
.L80046E6C:
/* 2226C 80046E6C 8E24FFF0 */  lw        $a0, -0x10($s1)
/* 22270 80046E70 0C051280 */  jal       hud_element_set_flags
/* 22274 80046E74 24050002 */   addiu    $a1, $zero, 0x2
/* 22278 80046E78 08011D17 */  j         .L8004745C
/* 2227C 80046E7C 00000000 */   nop
.L80046E80:
/* 22280 80046E80 8E24FFF8 */  lw        $a0, -0x8($s1)
/* 22284 80046E84 0C051280 */  jal       hud_element_set_flags
/* 22288 80046E88 24050002 */   addiu    $a1, $zero, 0x2
/* 2228C 80046E8C 08011D42 */  j         .L80047508
/* 22290 80046E90 00000000 */   nop
.L80046E94:
/* 22294 80046E94 8E240000 */  lw        $a0, 0x0($s1)
/* 22298 80046E98 0C051280 */  jal       hud_element_set_flags
/* 2229C 80046E9C 24050002 */   addiu    $a1, $zero, 0x2
/* 222A0 80046EA0 08011D6E */  j         .L800475B8
/* 222A4 80046EA4 263100B0 */   addiu    $s1, $s1, 0xB0
.L80046EA8:
/* 222A8 80046EA8 14400006 */  bnez      $v0, .L80046EC4
/* 222AC 80046EAC 00000000 */   nop
/* 222B0 80046EB0 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 222B4 80046EB4 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 222B8 80046EB8 80420070 */  lb        $v0, 0x70($v0)
/* 222BC 80046EBC 105E0039 */  beq       $v0, $fp, .L80046FA4
/* 222C0 80046EC0 00000000 */   nop
.L80046EC4:
/* 222C4 80046EC4 8E24FFC4 */  lw        $a0, -0x3C($s1)
/* 222C8 80046EC8 0C05128B */  jal       hud_element_clear_flags
/* 222CC 80046ECC 24050002 */   addiu    $a1, $zero, 0x2
/* 222D0 80046ED0 24180002 */  addiu     $t8, $zero, 0x2
/* 222D4 80046ED4 16580002 */  bne       $s2, $t8, .L80046EE0
/* 222D8 80046ED8 0000102D */   daddu    $v0, $zero, $zero
/* 222DC 80046EDC 2402FFEF */  addiu     $v0, $zero, -0x11
.L80046EE0:
/* 222E0 80046EE0 525E0001 */  beql      $s2, $fp, .L80046EE8
/* 222E4 80046EE4 2402FFDE */   addiu    $v0, $zero, -0x22
.L80046EE8:
/* 222E8 80046EE8 52400001 */  beql      $s2, $zero, .L80046EF0
/* 222EC 80046EEC 2402FFCD */   addiu    $v0, $zero, -0x33
.L80046EF0:
/* 222F0 80046EF0 8FB80034 */  lw        $t8, 0x34($sp)
/* 222F4 80046EF4 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 222F8 80046EF8 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 222FC 80046EFC E7A00020 */  swc1      $f0, 0x20($sp)
/* 22300 80046F00 C624FF80 */  lwc1      $f4, -0x80($s1)
/* 22304 80046F04 46802120 */  cvt.s.w   $f4, $f4
/* 22308 80046F08 46166300 */  add.s     $f12, $f12, $f22
/* 2230C 80046F0C C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22310 80046F10 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 22314 80046F14 46041080 */  add.s     $f2, $f2, $f4
/* 22318 80046F18 E7A00024 */  swc1      $f0, 0x24($sp)
/* 2231C 80046F1C 44820000 */  mtc1      $v0, $f0
/* 22320 80046F20 00000000 */  nop
/* 22324 80046F24 46800020 */  cvt.s.w   $f0, $f0
/* 22328 80046F28 0C00A6C9 */  jal       clamp_angle
/* 2232C 80046F2C 46001500 */   add.s    $f20, $f2, $f0
/* 22330 80046F30 27A40020 */  addiu     $a0, $sp, 0x20
/* 22334 80046F34 C626FF7C */  lwc1      $f6, -0x84($s1)
/* 22338 80046F38 468031A0 */  cvt.s.w   $f6, $f6
/* 2233C 80046F3C 44070000 */  mfc1      $a3, $f0
/* 22340 80046F40 44063000 */  mfc1      $a2, $f6
/* 22344 80046F44 0C00A7E7 */  jal       add_vec2D_polar
/* 22348 80046F48 27A50024 */   addiu    $a1, $sp, 0x24
/* 2234C 80046F4C C7A00020 */  lwc1      $f0, 0x20($sp)
/* 22350 80046F50 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22354 80046F54 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22358 80046F58 44050000 */  mfc1      $a1, $f0
/* 2235C 80046F5C C7A00024 */  lwc1      $f0, 0x24($sp)
/* 22360 80046F60 4406A000 */  mfc1      $a2, $f20
/* 22364 80046F64 44070000 */  mfc1      $a3, $f0
/* 22368 80046F68 26520001 */  addiu     $s2, $s2, 0x1
/* 2236C 80046F6C AFB70010 */  sw        $s7, 0x10($sp)
/* 22370 80046F70 AFB60014 */  sw        $s6, 0x14($sp)
/* 22374 80046F74 0C00B94E */  jal       get_screen_coords
/* 22378 80046F78 AFB50018 */   sw       $s5, 0x18($sp)
/* 2237C 80046F7C 24130001 */  addiu     $s3, $zero, 0x1
/* 22380 80046F80 8E30FFC4 */  lw        $s0, -0x3C($s1)
/* 22384 80046F84 8FA50028 */  lw        $a1, 0x28($sp)
/* 22388 80046F88 8FA6002C */  lw        $a2, 0x2C($sp)
/* 2238C 80046F8C 0200202D */  daddu     $a0, $s0, $zero
/* 22390 80046F90 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 22394 80046F94 0C051261 */  jal       hud_element_set_render_pos
/* 22398 80046F98 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 2239C 80046F9C 0C0511F1 */  jal       hud_element_draw_next
/* 223A0 80046FA0 0200202D */   daddu    $a0, $s0, $zero
.L80046FA4:
/* 223A4 80046FA4 8230FFBF */  lb        $s0, -0x41($s1)
/* 223A8 80046FA8 24180002 */  addiu     $t8, $zero, 0x2
/* 223AC 80046FAC 1618003F */  bne       $s0, $t8, .L800470AC
/* 223B0 80046FB0 00000000 */   nop
/* 223B4 80046FB4 8E820000 */  lw        $v0, 0x0($s4)
/* 223B8 80046FB8 00581024 */  and       $v0, $v0, $t8
/* 223BC 80046FBC 14400006 */  bnez      $v0, .L80046FD8
/* 223C0 80046FC0 00000000 */   nop
/* 223C4 80046FC4 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 223C8 80046FC8 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 223CC 80046FCC 80420070 */  lb        $v0, 0x70($v0)
/* 223D0 80046FD0 105E0036 */  beq       $v0, $fp, .L800470AC
/* 223D4 80046FD4 00000000 */   nop
.L80046FD8:
/* 223D8 80046FD8 8E24FFC8 */  lw        $a0, -0x38($s1)
/* 223DC 80046FDC 0C05128B */  jal       hud_element_clear_flags
/* 223E0 80046FE0 24050002 */   addiu    $a1, $zero, 0x2
/* 223E4 80046FE4 16500002 */  bne       $s2, $s0, .L80046FF0
/* 223E8 80046FE8 0000102D */   daddu    $v0, $zero, $zero
/* 223EC 80046FEC 2402FFEF */  addiu     $v0, $zero, -0x11
.L80046FF0:
/* 223F0 80046FF0 525E0001 */  beql      $s2, $fp, .L80046FF8
/* 223F4 80046FF4 2402FFDE */   addiu    $v0, $zero, -0x22
.L80046FF8:
/* 223F8 80046FF8 52400001 */  beql      $s2, $zero, .L80047000
/* 223FC 80046FFC 2402FFCD */   addiu    $v0, $zero, -0x33
.L80047000:
/* 22400 80047000 8FB80034 */  lw        $t8, 0x34($sp)
/* 22404 80047004 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 22408 80047008 C70C006C */  lwc1      $f12, 0x6C($t8)
/* 2240C 8004700C E7A00020 */  swc1      $f0, 0x20($sp)
/* 22410 80047010 C624FF80 */  lwc1      $f4, -0x80($s1)
/* 22414 80047014 46802120 */  cvt.s.w   $f4, $f4
/* 22418 80047018 46166300 */  add.s     $f12, $f12, $f22
/* 2241C 8004701C C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22420 80047020 C620FF60 */  lwc1      $f0, -0xA0($s1)
/* 22424 80047024 46041080 */  add.s     $f2, $f2, $f4
/* 22428 80047028 E7A00024 */  swc1      $f0, 0x24($sp)
/* 2242C 8004702C 44820000 */  mtc1      $v0, $f0
/* 22430 80047030 00000000 */  nop
/* 22434 80047034 46800020 */  cvt.s.w   $f0, $f0
/* 22438 80047038 0C00A6C9 */  jal       clamp_angle
/* 2243C 8004703C 46001500 */   add.s    $f20, $f2, $f0
/* 22440 80047040 27A40020 */  addiu     $a0, $sp, 0x20
/* 22444 80047044 C626FF7C */  lwc1      $f6, -0x84($s1)
/* 22448 80047048 468031A0 */  cvt.s.w   $f6, $f6
/* 2244C 8004704C 44070000 */  mfc1      $a3, $f0
/* 22450 80047050 44063000 */  mfc1      $a2, $f6
/* 22454 80047054 0C00A7E7 */  jal       add_vec2D_polar
/* 22458 80047058 27A50024 */   addiu    $a1, $sp, 0x24
/* 2245C 8004705C C7A00020 */  lwc1      $f0, 0x20($sp)
/* 22460 80047060 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22464 80047064 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22468 80047068 44050000 */  mfc1      $a1, $f0
/* 2246C 8004706C C7A00024 */  lwc1      $f0, 0x24($sp)
/* 22470 80047070 4406A000 */  mfc1      $a2, $f20
/* 22474 80047074 44070000 */  mfc1      $a3, $f0
/* 22478 80047078 AFB70010 */  sw        $s7, 0x10($sp)
/* 2247C 8004707C AFB60014 */  sw        $s6, 0x14($sp)
/* 22480 80047080 0C00B94E */  jal       get_screen_coords
/* 22484 80047084 AFB50018 */   sw       $s5, 0x18($sp)
/* 22488 80047088 8E30FFC8 */  lw        $s0, -0x38($s1)
/* 2248C 8004708C 8FA50028 */  lw        $a1, 0x28($sp)
/* 22490 80047090 8FA6002C */  lw        $a2, 0x2C($sp)
/* 22494 80047094 0200202D */  daddu     $a0, $s0, $zero
/* 22498 80047098 24A5FFF8 */  addiu     $a1, $a1, -0x8
/* 2249C 8004709C 0C051261 */  jal       hud_element_set_render_pos
/* 224A0 800470A0 24C6FFF8 */   addiu    $a2, $a2, -0x8
/* 224A4 800470A4 0C0511F1 */  jal       hud_element_draw_next
/* 224A8 800470A8 0200202D */   daddu    $a0, $s0, $zero
.L800470AC:
/* 224AC 800470AC 8222FFCC */  lb        $v0, -0x34($s1)
/* 224B0 800470B0 10400029 */  beqz      $v0, .L80047158
/* 224B4 800470B4 00000000 */   nop
/* 224B8 800470B8 8E830000 */  lw        $v1, 0x0($s4)
/* 224BC 800470BC 30620040 */  andi      $v0, $v1, 0x40
/* 224C0 800470C0 1440FF5B */  bnez      $v0, .L80046E30
/* 224C4 800470C4 30620002 */   andi     $v0, $v1, 0x2
/* 224C8 800470C8 14400006 */  bnez      $v0, .L800470E4
/* 224CC 800470CC 00000000 */   nop
/* 224D0 800470D0 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 224D4 800470D4 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 224D8 800470D8 80420070 */  lb        $v0, 0x70($v0)
/* 224DC 800470DC 105E001E */  beq       $v0, $fp, .L80047158
/* 224E0 800470E0 00000000 */   nop
.L800470E4:
/* 224E4 800470E4 8E24FFD0 */  lw        $a0, -0x30($s1)
/* 224E8 800470E8 0C05128B */  jal       hud_element_clear_flags
/* 224EC 800470EC 24050002 */   addiu    $a1, $zero, 0x2
/* 224F0 800470F0 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 224F4 800470F4 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 224F8 800470F8 44050000 */  mfc1      $a1, $f0
/* 224FC 800470FC 44071000 */  mfc1      $a3, $f2
/* 22500 80047100 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22504 80047104 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 22508 80047108 46800020 */  cvt.s.w   $f0, $f0
/* 2250C 8004710C 46001080 */  add.s     $f2, $f2, $f0
/* 22510 80047110 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22514 80047114 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22518 80047118 44061000 */  mfc1      $a2, $f2
/* 2251C 8004711C AFA50020 */  sw        $a1, 0x20($sp)
/* 22520 80047120 AFA70024 */  sw        $a3, 0x24($sp)
/* 22524 80047124 AFB70010 */  sw        $s7, 0x10($sp)
/* 22528 80047128 AFB60014 */  sw        $s6, 0x14($sp)
/* 2252C 8004712C 0C00B94E */  jal       get_screen_coords
/* 22530 80047130 AFB50018 */   sw       $s5, 0x18($sp)
/* 22534 80047134 8E30FFD0 */  lw        $s0, -0x30($s1)
/* 22538 80047138 8FA50028 */  lw        $a1, 0x28($sp)
/* 2253C 8004713C 8FA6002C */  lw        $a2, 0x2C($sp)
/* 22540 80047140 0200202D */  daddu     $a0, $s0, $zero
/* 22544 80047144 24A50002 */  addiu     $a1, $a1, 0x2
/* 22548 80047148 0C051261 */  jal       hud_element_set_render_pos
/* 2254C 8004714C 24C6FFF4 */   addiu    $a2, $a2, -0xC
/* 22550 80047150 0C0511F1 */  jal       hud_element_draw_next
/* 22554 80047154 0200202D */   daddu    $a0, $s0, $zero
.L80047158:
/* 22558 80047158 8222FFCD */  lb        $v0, -0x33($s1)
/* 2255C 8004715C 1040001E */  beqz      $v0, .L800471D8
/* 22560 80047160 00000000 */   nop
/* 22564 80047164 8E24FFD4 */  lw        $a0, -0x2C($s1)
/* 22568 80047168 0C05128B */  jal       hud_element_clear_flags
/* 2256C 8004716C 24050002 */   addiu    $a1, $zero, 0x2
/* 22570 80047170 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 22574 80047174 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 22578 80047178 44050000 */  mfc1      $a1, $f0
/* 2257C 8004717C 44071000 */  mfc1      $a3, $f2
/* 22580 80047180 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22584 80047184 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 22588 80047188 46800020 */  cvt.s.w   $f0, $f0
/* 2258C 8004718C 46001080 */  add.s     $f2, $f2, $f0
/* 22590 80047190 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22594 80047194 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22598 80047198 44061000 */  mfc1      $a2, $f2
/* 2259C 8004719C AFA50020 */  sw        $a1, 0x20($sp)
/* 225A0 800471A0 AFA70024 */  sw        $a3, 0x24($sp)
/* 225A4 800471A4 AFB70010 */  sw        $s7, 0x10($sp)
/* 225A8 800471A8 AFB60014 */  sw        $s6, 0x14($sp)
/* 225AC 800471AC 0C00B94E */  jal       get_screen_coords
/* 225B0 800471B0 AFB50018 */   sw       $s5, 0x18($sp)
/* 225B4 800471B4 8E30FFD4 */  lw        $s0, -0x2C($s1)
/* 225B8 800471B8 8FA50028 */  lw        $a1, 0x28($sp)
/* 225BC 800471BC 8FA6002C */  lw        $a2, 0x2C($sp)
/* 225C0 800471C0 0200202D */  daddu     $a0, $s0, $zero
/* 225C4 800471C4 24A50002 */  addiu     $a1, $a1, 0x2
/* 225C8 800471C8 0C051261 */  jal       hud_element_set_render_pos
/* 225CC 800471CC 24C6FFF4 */   addiu    $a2, $a2, -0xC
/* 225D0 800471D0 0C0511F1 */  jal       hud_element_draw_next
/* 225D4 800471D4 0200202D */   daddu    $a0, $s0, $zero
.L800471D8:
/* 225D8 800471D8 8222FFD8 */  lb        $v0, -0x28($s1)
/* 225DC 800471DC 10400029 */  beqz      $v0, .L80047284
/* 225E0 800471E0 00000000 */   nop
/* 225E4 800471E4 8E830000 */  lw        $v1, 0x0($s4)
/* 225E8 800471E8 30620080 */  andi      $v0, $v1, 0x80
/* 225EC 800471EC 1440FF15 */  bnez      $v0, .L80046E44
/* 225F0 800471F0 30620002 */   andi     $v0, $v1, 0x2
/* 225F4 800471F4 14400006 */  bnez      $v0, .L80047210
/* 225F8 800471F8 00000000 */   nop
/* 225FC 800471FC 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 22600 80047200 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 22604 80047204 80420070 */  lb        $v0, 0x70($v0)
/* 22608 80047208 105E001E */  beq       $v0, $fp, .L80047284
/* 2260C 8004720C 00000000 */   nop
.L80047210:
/* 22610 80047210 8E24FFDC */  lw        $a0, -0x24($s1)
/* 22614 80047214 0C05128B */  jal       hud_element_clear_flags
/* 22618 80047218 24050002 */   addiu    $a1, $zero, 0x2
/* 2261C 8004721C C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 22620 80047220 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 22624 80047224 44050000 */  mfc1      $a1, $f0
/* 22628 80047228 44071000 */  mfc1      $a3, $f2
/* 2262C 8004722C C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22630 80047230 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 22634 80047234 46800020 */  cvt.s.w   $f0, $f0
/* 22638 80047238 46001080 */  add.s     $f2, $f2, $f0
/* 2263C 8004723C 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22640 80047240 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22644 80047244 44061000 */  mfc1      $a2, $f2
/* 22648 80047248 AFA50020 */  sw        $a1, 0x20($sp)
/* 2264C 8004724C AFA70024 */  sw        $a3, 0x24($sp)
/* 22650 80047250 AFB70010 */  sw        $s7, 0x10($sp)
/* 22654 80047254 AFB60014 */  sw        $s6, 0x14($sp)
/* 22658 80047258 0C00B94E */  jal       get_screen_coords
/* 2265C 8004725C AFB50018 */   sw       $s5, 0x18($sp)
/* 22660 80047260 8E30FFDC */  lw        $s0, -0x24($s1)
/* 22664 80047264 8FA50028 */  lw        $a1, 0x28($sp)
/* 22668 80047268 8FA6002C */  lw        $a2, 0x2C($sp)
/* 2266C 8004726C 0200202D */  daddu     $a0, $s0, $zero
/* 22670 80047270 24A50002 */  addiu     $a1, $a1, 0x2
/* 22674 80047274 0C051261 */  jal       hud_element_set_render_pos
/* 22678 80047278 24C6FFF4 */   addiu    $a2, $a2, -0xC
/* 2267C 8004727C 0C0511F1 */  jal       hud_element_draw_next
/* 22680 80047280 0200202D */   daddu    $a0, $s0, $zero
.L80047284:
/* 22684 80047284 8222FFD9 */  lb        $v0, -0x27($s1)
/* 22688 80047288 1040001E */  beqz      $v0, .L80047304
/* 2268C 8004728C 00000000 */   nop
/* 22690 80047290 8E24FFE0 */  lw        $a0, -0x20($s1)
/* 22694 80047294 0C05128B */  jal       hud_element_clear_flags
/* 22698 80047298 24050002 */   addiu    $a1, $zero, 0x2
/* 2269C 8004729C C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 226A0 800472A0 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 226A4 800472A4 44050000 */  mfc1      $a1, $f0
/* 226A8 800472A8 44071000 */  mfc1      $a3, $f2
/* 226AC 800472AC C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 226B0 800472B0 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 226B4 800472B4 46800020 */  cvt.s.w   $f0, $f0
/* 226B8 800472B8 46001080 */  add.s     $f2, $f2, $f0
/* 226BC 800472BC 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 226C0 800472C0 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 226C4 800472C4 44061000 */  mfc1      $a2, $f2
/* 226C8 800472C8 AFA50020 */  sw        $a1, 0x20($sp)
/* 226CC 800472CC AFA70024 */  sw        $a3, 0x24($sp)
/* 226D0 800472D0 AFB70010 */  sw        $s7, 0x10($sp)
/* 226D4 800472D4 AFB60014 */  sw        $s6, 0x14($sp)
/* 226D8 800472D8 0C00B94E */  jal       get_screen_coords
/* 226DC 800472DC AFB50018 */   sw       $s5, 0x18($sp)
/* 226E0 800472E0 8E30FFE0 */  lw        $s0, -0x20($s1)
/* 226E4 800472E4 8FA50028 */  lw        $a1, 0x28($sp)
/* 226E8 800472E8 8FA6002C */  lw        $a2, 0x2C($sp)
/* 226EC 800472EC 0200202D */  daddu     $a0, $s0, $zero
/* 226F0 800472F0 24A50002 */  addiu     $a1, $a1, 0x2
/* 226F4 800472F4 0C051261 */  jal       hud_element_set_render_pos
/* 226F8 800472F8 24C6FFF4 */   addiu    $a2, $a2, -0xC
/* 226FC 800472FC 0C0511F1 */  jal       hud_element_draw_next
/* 22700 80047300 0200202D */   daddu    $a0, $s0, $zero
.L80047304:
/* 22704 80047304 8222FFE4 */  lb        $v0, -0x1C($s1)
/* 22708 80047308 10400029 */  beqz      $v0, .L800473B0
/* 2270C 8004730C 00000000 */   nop
/* 22710 80047310 8E830000 */  lw        $v1, 0x0($s4)
/* 22714 80047314 30620100 */  andi      $v0, $v1, 0x100
/* 22718 80047318 1440FECF */  bnez      $v0, .L80046E58
/* 2271C 8004731C 30620002 */   andi     $v0, $v1, 0x2
/* 22720 80047320 14400006 */  bnez      $v0, .L8004733C
/* 22724 80047324 00000000 */   nop
/* 22728 80047328 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 2272C 8004732C 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 22730 80047330 80420070 */  lb        $v0, 0x70($v0)
/* 22734 80047334 105E001E */  beq       $v0, $fp, .L800473B0
/* 22738 80047338 00000000 */   nop
.L8004733C:
/* 2273C 8004733C 8E24FFE8 */  lw        $a0, -0x18($s1)
/* 22740 80047340 0C05128B */  jal       hud_element_clear_flags
/* 22744 80047344 24050002 */   addiu    $a1, $zero, 0x2
/* 22748 80047348 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 2274C 8004734C C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 22750 80047350 44050000 */  mfc1      $a1, $f0
/* 22754 80047354 44071000 */  mfc1      $a3, $f2
/* 22758 80047358 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 2275C 8004735C C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 22760 80047360 46800020 */  cvt.s.w   $f0, $f0
/* 22764 80047364 46001080 */  add.s     $f2, $f2, $f0
/* 22768 80047368 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 2276C 8004736C 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22770 80047370 44061000 */  mfc1      $a2, $f2
/* 22774 80047374 AFA50020 */  sw        $a1, 0x20($sp)
/* 22778 80047378 AFA70024 */  sw        $a3, 0x24($sp)
/* 2277C 8004737C AFB70010 */  sw        $s7, 0x10($sp)
/* 22780 80047380 AFB60014 */  sw        $s6, 0x14($sp)
/* 22784 80047384 0C00B94E */  jal       get_screen_coords
/* 22788 80047388 AFB50018 */   sw       $s5, 0x18($sp)
/* 2278C 8004738C 8E30FFE8 */  lw        $s0, -0x18($s1)
/* 22790 80047390 8FA50028 */  lw        $a1, 0x28($sp)
/* 22794 80047394 8FA6002C */  lw        $a2, 0x2C($sp)
/* 22798 80047398 0200202D */  daddu     $a0, $s0, $zero
/* 2279C 8004739C 24A50002 */  addiu     $a1, $a1, 0x2
/* 227A0 800473A0 0C051261 */  jal       hud_element_set_render_pos
/* 227A4 800473A4 24C6FFF4 */   addiu    $a2, $a2, -0xC
/* 227A8 800473A8 0C0511F1 */  jal       hud_element_draw_next
/* 227AC 800473AC 0200202D */   daddu    $a0, $s0, $zero
.L800473B0:
/* 227B0 800473B0 8222FFEC */  lb        $v0, -0x14($s1)
/* 227B4 800473B4 10400029 */  beqz      $v0, .L8004745C
/* 227B8 800473B8 00000000 */   nop
/* 227BC 800473BC 8E830000 */  lw        $v1, 0x0($s4)
/* 227C0 800473C0 30620200 */  andi      $v0, $v1, 0x200
/* 227C4 800473C4 1440FEA9 */  bnez      $v0, .L80046E6C
/* 227C8 800473C8 30620002 */   andi     $v0, $v1, 0x2
/* 227CC 800473CC 14400006 */  bnez      $v0, .L800473E8
/* 227D0 800473D0 00000000 */   nop
/* 227D4 800473D4 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 227D8 800473D8 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 227DC 800473DC 80420070 */  lb        $v0, 0x70($v0)
/* 227E0 800473E0 105E001E */  beq       $v0, $fp, .L8004745C
/* 227E4 800473E4 00000000 */   nop
.L800473E8:
/* 227E8 800473E8 8E24FFF0 */  lw        $a0, -0x10($s1)
/* 227EC 800473EC 0C05128B */  jal       hud_element_clear_flags
/* 227F0 800473F0 24050002 */   addiu    $a1, $zero, 0x2
/* 227F4 800473F4 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 227F8 800473F8 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 227FC 800473FC 44050000 */  mfc1      $a1, $f0
/* 22800 80047400 44071000 */  mfc1      $a3, $f2
/* 22804 80047404 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22808 80047408 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 2280C 8004740C 46800020 */  cvt.s.w   $f0, $f0
/* 22810 80047410 46001080 */  add.s     $f2, $f2, $f0
/* 22814 80047414 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22818 80047418 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 2281C 8004741C 44061000 */  mfc1      $a2, $f2
/* 22820 80047420 AFA50020 */  sw        $a1, 0x20($sp)
/* 22824 80047424 AFA70024 */  sw        $a3, 0x24($sp)
/* 22828 80047428 AFB70010 */  sw        $s7, 0x10($sp)
/* 2282C 8004742C AFB60014 */  sw        $s6, 0x14($sp)
/* 22830 80047430 0C00B94E */  jal       get_screen_coords
/* 22834 80047434 AFB50018 */   sw       $s5, 0x18($sp)
/* 22838 80047438 8E30FFF0 */  lw        $s0, -0x10($s1)
/* 2283C 8004743C 8FA50028 */  lw        $a1, 0x28($sp)
/* 22840 80047440 8FA6002C */  lw        $a2, 0x2C($sp)
/* 22844 80047444 0200202D */  daddu     $a0, $s0, $zero
/* 22848 80047448 24A50002 */  addiu     $a1, $a1, 0x2
/* 2284C 8004744C 0C051261 */  jal       hud_element_set_render_pos
/* 22850 80047450 24C6FFF1 */   addiu    $a2, $a2, -0xF
/* 22854 80047454 0C0511F1 */  jal       hud_element_draw_next
/* 22858 80047458 0200202D */   daddu    $a0, $s0, $zero
.L8004745C:
/* 2285C 8004745C 8222FFF4 */  lb        $v0, -0xC($s1)
/* 22860 80047460 10400029 */  beqz      $v0, .L80047508
/* 22864 80047464 00000000 */   nop
/* 22868 80047468 8E830000 */  lw        $v1, 0x0($s4)
/* 2286C 8004746C 30620400 */  andi      $v0, $v1, 0x400
/* 22870 80047470 1440FE83 */  bnez      $v0, .L80046E80
/* 22874 80047474 30620002 */   andi     $v0, $v1, 0x2
/* 22878 80047478 14400006 */  bnez      $v0, .L80047494
/* 2287C 8004747C 00000000 */   nop
/* 22880 80047480 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 22884 80047484 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 22888 80047488 80420070 */  lb        $v0, 0x70($v0)
/* 2288C 8004748C 105E001E */  beq       $v0, $fp, .L80047508
/* 22890 80047490 00000000 */   nop
.L80047494:
/* 22894 80047494 8E24FFF8 */  lw        $a0, -0x8($s1)
/* 22898 80047498 0C05128B */  jal       hud_element_clear_flags
/* 2289C 8004749C 24050002 */   addiu    $a1, $zero, 0x2
/* 228A0 800474A0 C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 228A4 800474A4 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 228A8 800474A8 44050000 */  mfc1      $a1, $f0
/* 228AC 800474AC 44071000 */  mfc1      $a3, $f2
/* 228B0 800474B0 C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 228B4 800474B4 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 228B8 800474B8 46800020 */  cvt.s.w   $f0, $f0
/* 228BC 800474BC 46001080 */  add.s     $f2, $f2, $f0
/* 228C0 800474C0 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 228C4 800474C4 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 228C8 800474C8 44061000 */  mfc1      $a2, $f2
/* 228CC 800474CC AFA50020 */  sw        $a1, 0x20($sp)
/* 228D0 800474D0 AFA70024 */  sw        $a3, 0x24($sp)
/* 228D4 800474D4 AFB70010 */  sw        $s7, 0x10($sp)
/* 228D8 800474D8 AFB60014 */  sw        $s6, 0x14($sp)
/* 228DC 800474DC 0C00B94E */  jal       get_screen_coords
/* 228E0 800474E0 AFB50018 */   sw       $s5, 0x18($sp)
/* 228E4 800474E4 8E30FFF8 */  lw        $s0, -0x8($s1)
/* 228E8 800474E8 8FA50028 */  lw        $a1, 0x28($sp)
/* 228EC 800474EC 8FA6002C */  lw        $a2, 0x2C($sp)
/* 228F0 800474F0 0200202D */  daddu     $a0, $s0, $zero
/* 228F4 800474F4 24A50002 */  addiu     $a1, $a1, 0x2
/* 228F8 800474F8 0C051261 */  jal       hud_element_set_render_pos
/* 228FC 800474FC 24C6FFF0 */   addiu    $a2, $a2, -0x10
/* 22900 80047500 0C0511F1 */  jal       hud_element_draw_next
/* 22904 80047504 0200202D */   daddu    $a0, $s0, $zero
.L80047508:
/* 22908 80047508 8222FFFC */  lb        $v0, -0x4($s1)
/* 2290C 8004750C 5040002A */  beql      $v0, $zero, .L800475B8
/* 22910 80047510 263100B0 */   addiu    $s1, $s1, 0xB0
/* 22914 80047514 8E830000 */  lw        $v1, 0x0($s4)
/* 22918 80047518 30620800 */  andi      $v0, $v1, 0x800
/* 2291C 8004751C 1440FE5D */  bnez      $v0, .L80046E94
/* 22920 80047520 30620002 */   andi     $v0, $v1, 0x2
/* 22924 80047524 14400006 */  bnez      $v0, .L80047540
/* 22928 80047528 00000000 */   nop
/* 2292C 8004752C 3C028007 */  lui       $v0, %hi(gGameStatusPtr)
/* 22930 80047530 8C42419C */  lw        $v0, %lo(gGameStatusPtr)($v0)
/* 22934 80047534 80420070 */  lb        $v0, 0x70($v0)
/* 22938 80047538 505E001F */  beql      $v0, $fp, .L800475B8
/* 2293C 8004753C 263100B0 */   addiu    $s1, $s1, 0xB0
.L80047540:
/* 22940 80047540 8E240000 */  lw        $a0, 0x0($s1)
/* 22944 80047544 0C05128B */  jal       hud_element_clear_flags
/* 22948 80047548 24050002 */   addiu    $a1, $zero, 0x2
/* 2294C 8004754C C620FF58 */  lwc1      $f0, -0xA8($s1)
/* 22950 80047550 C622FF60 */  lwc1      $f2, -0xA0($s1)
/* 22954 80047554 44050000 */  mfc1      $a1, $f0
/* 22958 80047558 44071000 */  mfc1      $a3, $f2
/* 2295C 8004755C C622FF5C */  lwc1      $f2, -0xA4($s1)
/* 22960 80047560 C620FF84 */  lwc1      $f0, -0x7C($s1)
/* 22964 80047564 46800020 */  cvt.s.w   $f0, $f0
/* 22968 80047568 46001080 */  add.s     $f2, $f2, $f0
/* 2296C 8004756C 3C048007 */  lui       $a0, %hi(gCurrentCameraID)
/* 22970 80047570 8C847410 */  lw        $a0, %lo(gCurrentCameraID)($a0)
/* 22974 80047574 44061000 */  mfc1      $a2, $f2
/* 22978 80047578 AFA50020 */  sw        $a1, 0x20($sp)
/* 2297C 8004757C AFA70024 */  sw        $a3, 0x24($sp)
/* 22980 80047580 AFB70010 */  sw        $s7, 0x10($sp)
/* 22984 80047584 AFB60014 */  sw        $s6, 0x14($sp)
/* 22988 80047588 0C00B94E */  jal       get_screen_coords
/* 2298C 8004758C AFB50018 */   sw       $s5, 0x18($sp)
/* 22990 80047590 8E300000 */  lw        $s0, 0x0($s1)
/* 22994 80047594 8FA50028 */  lw        $a1, 0x28($sp)
/* 22998 80047598 8FA6002C */  lw        $a2, 0x2C($sp)
/* 2299C 8004759C 0200202D */  daddu     $a0, $s0, $zero
/* 229A0 800475A0 24A50002 */  addiu     $a1, $a1, 0x2
/* 229A4 800475A4 0C051261 */  jal       hud_element_set_render_pos
/* 229A8 800475A8 24C6FFF0 */   addiu    $a2, $a2, -0x10
/* 229AC 800475AC 0C0511F1 */  jal       hud_element_draw_next
/* 229B0 800475B0 0200202D */   daddu    $a0, $s0, $zero
/* 229B4 800475B4 263100B0 */  addiu     $s1, $s1, 0xB0
.L800475B8:
/* 229B8 800475B8 8FB80038 */  lw        $t8, 0x38($sp)
/* 229BC 800475BC 269400B0 */  addiu     $s4, $s4, 0xB0
/* 229C0 800475C0 27180001 */  addiu     $t8, $t8, 0x1
/* 229C4 800475C4 2B020040 */  slti      $v0, $t8, 0x40
/* 229C8 800475C8 1440FC7E */  bnez      $v0, .L800467C4
/* 229CC 800475CC AFB80038 */   sw       $t8, 0x38($sp)
/* 229D0 800475D0 8FBF0064 */  lw        $ra, 0x64($sp)
/* 229D4 800475D4 8FBE0060 */  lw        $fp, 0x60($sp)
/* 229D8 800475D8 8FB7005C */  lw        $s7, 0x5C($sp)
/* 229DC 800475DC 8FB60058 */  lw        $s6, 0x58($sp)
/* 229E0 800475E0 8FB50054 */  lw        $s5, 0x54($sp)
/* 229E4 800475E4 8FB40050 */  lw        $s4, 0x50($sp)
/* 229E8 800475E8 8FB3004C */  lw        $s3, 0x4C($sp)
/* 229EC 800475EC 8FB20048 */  lw        $s2, 0x48($sp)
/* 229F0 800475F0 8FB10044 */  lw        $s1, 0x44($sp)
/* 229F4 800475F4 8FB00040 */  lw        $s0, 0x40($sp)
/* 229F8 800475F8 D7B60070 */  ldc1      $f22, 0x70($sp)
/* 229FC 800475FC D7B40068 */  ldc1      $f20, 0x68($sp)
/* 22A00 80047600 03E00008 */  jr        $ra
/* 22A04 80047604 27BD0078 */   addiu    $sp, $sp, 0x78

### DECOMPILED C INSTRUCTIONS:

void draw_all_status_icons(void* data) {
    PopupMessage* popup = data;
    HudStatusIcon* icon;
    s32 elementId;
    f32 x, y, z;
    s32 screenX, screenY, screenZ;
    s32 isActiveDrawn, iconCounter;
    s32 offsetY;
    Camera* camera = &gCameras[gCurrentCameraID];
    int i;

    gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, 12, 20, SCREEN_WIDTH - 12, SCREEN_HEIGHT - 20);
    gDPPipeSync(gMainGfxPos++);
    gDPSetCycleType(gMainGfxPos++, G_CYC_1CYCLE);
    gDPSetTexturePersp(gMainGfxPos++, G_TP_NONE);
    gDPSetTextureLOD(gMainGfxPos++, G_TL_TILE);
    gDPSetTextureDetail(gMainGfxPos++, G_TD_CLAMP);
    gDPSetTextureConvert(gMainGfxPos++, G_TC_FILT);
    gDPSetCombineKey(gMainGfxPos++, G_CK_NONE);
    gDPSetAlphaCompare(gMainGfxPos++, G_AC_NONE);
    gDPNoOp(gMainGfxPos++);
    gDPSetColorDither(gMainGfxPos++, G_CD_DISABLE);
    gDPSetAlphaDither(gMainGfxPos++, G_AD_DISABLE);
    gSPTexture(gMainGfxPos++, -1, -1, 0, G_TX_RENDERTILE, G_ON);

    for (i = 0, icon = D_800A0F44; i < MAX_ICONS; i++, icon++) {
        if (icon->flags == 0) {
            continue;
        }

        iconCounter = 0;
        isActiveDrawn = 0;
        if (icon->status1.activeTask == STATUS_ICON_TASK_DRAW) {
            if (icon->flags & STATUS_ICON_FLAG_DEBUFF) {
                hud_element_set_flags(icon->status1.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
            } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                hud_element_clear_flags(icon->status1.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                x = icon->worldPos.x;
                y = icon->worldPos.y + icon->status1OffsetY;
                z = icon->worldPos.z;

                add_vec2D_polar(&x, &z, icon->status1Radius, clamp_angle(camera->currentYaw + 90));
                get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
                elementId = icon->status1.activeElementID;
                hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
                hud_element_draw_next(elementId);
                iconCounter = 1;
                isActiveDrawn = 1;
            }
        }

        if (icon->status1.removingTask == STATUS_ICON_TASK_DRAW && (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1)) {
            hud_element_clear_flags(icon->status1.removingElementID, HUD_ELEMENT_FLAG_DISABLED);

            if (isActiveDrawn == 0) {
                iconCounter++;
            }

            x = icon->worldPos.x;
            y = icon->worldPos.y + icon->status1OffsetY;
            z = icon->worldPos.z;

            add_vec2D_polar(&x, &z, icon->status1Radius, clamp_angle(camera->currentYaw + 90));
            get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
            elementId = icon->status1.removingElementID;
            hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
            hud_element_draw_next(elementId);
        }

        isActiveDrawn = 0;
        if (icon->status2.activeTask == STATUS_ICON_TASK_DRAW) {
            if (icon->flags & STATUS_ICON_FLAG_STATIC) {
                hud_element_set_flags(icon->status2.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
            } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                hud_element_clear_flags(icon->status2.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                offsetY = 0;
                if (iconCounter == 0) {
                    offsetY = -17;
                }

                x = icon->worldPos.x;
                y = icon->worldPos.y + icon->status2OffsetY + offsetY;
                z = icon->worldPos.z;

                add_vec2D_polar(&x, &z, icon->status2Radius, clamp_angle(camera->currentYaw + 90));
                get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
                elementId = icon->status2.activeElementID;
                hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
                hud_element_draw_next(elementId);

                iconCounter++;
                isActiveDrawn = 1;
            }
        }

        if (icon->status2.removingTask == STATUS_ICON_TASK_DRAW && (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1)) {
            hud_element_clear_flags(icon->status2.removingElementID, HUD_ELEMENT_FLAG_DISABLED);

            offsetY = 0;
            if (iconCounter == 0) {
                offsetY = -17;
            }
            if (isActiveDrawn == 0) {
                iconCounter++;
            }

            x = icon->worldPos.x;
            y = icon->worldPos.y + icon->status2OffsetY + offsetY;
            z = icon->worldPos.z;

            add_vec2D_polar(&x, &z, icon->status2Radius, clamp_angle(camera->currentYaw + 90));
            get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
            elementId = icon->status2.removingElementID;
            hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
            hud_element_draw_next(elementId);
        }

        isActiveDrawn = 0;
        if (icon->status3.activeTask == STATUS_ICON_TASK_DRAW) {
            if (icon->flags & STATUS_ICON_FLAG_TRANSPARENT) {
                hud_element_set_flags(icon->status3.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
            } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                hud_element_clear_flags(icon->status3.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                offsetY = 0;
                if (iconCounter == 1) {
                    offsetY = -17;
                } if (iconCounter == 0) {
                    offsetY = -34;
                }

                x = icon->worldPos.x;
                y = icon->worldPos.y + icon->status3OffsetY + offsetY;
                z = icon->worldPos.z;

                add_vec2D_polar(&x, &z, icon->status3Radius, clamp_angle(camera->currentYaw + 90));
                get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
                elementId = icon->status3.activeElementID;
                hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
                hud_element_draw_next(elementId);
                iconCounter++;
                isActiveDrawn = 1;
            }
        }

        if (icon->status3.removingTask == STATUS_ICON_TASK_DRAW && (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1)) {
            hud_element_clear_flags(icon->status3.removingElementID, HUD_ELEMENT_FLAG_DISABLED);

            offsetY = 0;
            if (iconCounter == 1) {
                offsetY = -17;
            }
            if (iconCounter == 0) {
                offsetY = -34;
            }
            if (isActiveDrawn == 0) {
                iconCounter++;
            }

            x = icon->worldPos.x;
            y = icon->worldPos.y + icon->status3OffsetY + offsetY;
            z = icon->worldPos.z;

            add_vec2D_polar(&x, &z, icon->status3Radius, clamp_angle(camera->currentYaw + 90));
            get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
            elementId = icon->status3.removingElementID;
            hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
            hud_element_draw_next(elementId);
        }

        isActiveDrawn = 0;
        if (icon->status4.activeTask == STATUS_ICON_TASK_DRAW) {
            if (icon->flags & STATUS_ICON_FLAG_STATUS_CHILL_OUT) {
                hud_element_set_flags(icon->status4.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
            } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                hud_element_clear_flags(icon->status4.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                offsetY = 0;
                if (iconCounter == 2) {
                    offsetY = -17;
                }
                if (iconCounter == 1) {
                    offsetY = -34;
                }
                if (iconCounter == 0) {
                    offsetY = -51;
                }

                x = icon->worldPos.x;
                y = icon->worldPos.y + icon->status4OffsetY + offsetY;
                z = icon->worldPos.z;

                add_vec2D_polar(&x, &z, icon->status4Radius, clamp_angle(camera->currentYaw + 90));
                get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
                elementId = icon->status4.activeElementID;
                hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
                hud_element_draw_next(elementId);
                iconCounter++;
                isActiveDrawn = 1;
            }
        }

        if (icon->status4.removingTask == STATUS_ICON_TASK_DRAW && (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1)) {
            hud_element_clear_flags(icon->status4.removingElementID, HUD_ELEMENT_FLAG_DISABLED);

            offsetY = 0;
            if (iconCounter == 2) {
                offsetY = -17;
            }
            if (iconCounter == 1) {
                offsetY = -34;
            }
            if (iconCounter == 0) {
                offsetY = -51;
            }
            if (isActiveDrawn == 0) {
                iconCounter++;
            }

            x = icon->worldPos.x;
            y = icon->worldPos.y + icon->status4OffsetY + offsetY;
            z = icon->worldPos.z;

            add_vec2D_polar(&x, &z, icon->status4Radius, clamp_angle(camera->currentYaw + 90));
            get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
            elementId = icon->status4.removingElementID;
            hud_element_set_render_pos(elementId, screenX - 8, screenY - 8);
            hud_element_draw_next(elementId);
        }

        do {
            if (icon->boostJump.active) {
                if (icon->flags & STATUS_ICON_FLAG_BOOST_JUMP) {
                    hud_element_set_flags(icon->boostJump.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
                } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                    hud_element_clear_flags(icon->boostJump.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                    x = icon->worldPos.x;
                    z = icon->worldPos.z;

                    get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
                    elementId = icon->boostJump.activeElementID;
                    hud_element_set_render_pos(elementId, screenX + 2, screenY - 12);
                    hud_element_draw_next(elementId);
                }
            }
        } while (0);

        if (icon->boostJump.removing) {
            hud_element_clear_flags(icon->prevIndexBoostJump, HUD_ELEMENT_FLAG_DISABLED);

            x = icon->worldPos.x;
            z = icon->worldPos.z;

            get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
            elementId = icon->prevIndexBoostJump;
            hud_element_set_render_pos(elementId, screenX + 2, screenY - 12);
            hud_element_draw_next(elementId);
        }

        do {
            if (icon->boostHammer.active) {
                if (icon->flags & STATUS_ICON_FLAG_BOOST_HAMMER) {
                    hud_element_set_flags(icon->boostHammer.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
                } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                    hud_element_clear_flags(icon->boostHammer.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                    x = icon->worldPos.x;
                    z = icon->worldPos.z;

                    get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
                    elementId = icon->boostHammer.activeElementID;
                    hud_element_set_render_pos(elementId, screenX + 2, screenY - 12);
                    hud_element_draw_next(elementId);
                }
            }
        } while (0);

        if (icon->boostHammer.removing) {
            hud_element_clear_flags(icon->prevIndexBoostHammer, HUD_ELEMENT_FLAG_DISABLED);

            x = icon->worldPos.x;
            z = icon->worldPos.z;

            get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
            elementId = icon->prevIndexBoostHammer;
            hud_element_set_render_pos(elementId, screenX + 2, screenY - 12);
            hud_element_draw_next(elementId);
        }

        do {
            if (icon->boostPartner.active) {
                if (icon->flags & STATUS_ICON_FLAG_BOOST_PARTNER) {
                    hud_element_set_flags(icon->boostPartner.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
                } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                    hud_element_clear_flags(icon->boostPartner.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                    x = icon->worldPos.x;
                    z = icon->worldPos.z;

                    get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
                    elementId = icon->boostPartner.activeElementID;
                    hud_element_set_render_pos(elementId, screenX + 2, screenY - 12);
                    hud_element_draw_next(elementId);
                }
            }
        } while (0);

        do {
            if (icon->surprise.active) {
                if (icon->flags & STATUS_ICON_FLAG_SURPRISE) {
                    hud_element_set_flags(icon->surprise.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
                } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                    hud_element_clear_flags(icon->surprise.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                    x = icon->worldPos.x;
                    z = icon->worldPos.z;

                    get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
                    elementId = icon->surprise.activeElementID;
                    hud_element_set_render_pos(elementId, screenX + 2, screenY - 15);
                    hud_element_draw_next(elementId);
                }
            }
        } while (0);

        do {
            if (icon->peril.active) {
                if (icon->flags & STATUS_ICON_FLAG_PERIL) {
                    hud_element_set_flags(icon->peril.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
                } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                    hud_element_clear_flags(icon->peril.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                    x = icon->worldPos.x;
                    z = icon->worldPos.z;

                    get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
                    elementId = icon->peril.activeElementID;
                    hud_element_set_render_pos(elementId, screenX + 2, screenY - 16);
                    hud_element_draw_next(elementId);
                }
            }
        } while (0);

        do {
            if (icon->danger.active) {
                if (icon->flags & STATUS_ICON_FLAG_DANGER) {
                    hud_element_set_flags(icon->danger.activeElementID, HUD_ELEMENT_FLAG_DISABLED);
                } else if (icon->flags & STATUS_ICON_FLAG_BATTLE || gGameStatusPtr->isBattle != 1) {
                    hud_element_clear_flags(icon->danger.activeElementID, HUD_ELEMENT_FLAG_DISABLED);

                    x = icon->worldPos.x;
                    z = icon->worldPos.z;

                    get_screen_coords(gCurrentCameraID, x, icon->worldPos.y + icon->offsetY, z, &screenX, &screenY, &screenZ);
                    elementId = icon->danger.activeElementID;
                    hud_element_set_render_pos(elementId, screenX + 2, screenY - 16);
                    hud_element_draw_next(elementId);
                }
            }
        } while (0);
    }
}