function alarmhat_equip() /* entry=321 class_id=0x0561 slot=0x0A */
{
  var
    referent, /* [BP+00h] type=0x69 */
    var, /* [BP+0Ah] type=0x69 */
    item, /* [BP-02h] type=0x24 */
    npc; /* [BP-04h] type=0x24 */

  entry:
    set_info(0x0211, *(arg_06));
    process_exclude();
    if Item.getFrame(arg_06) goto block_0156;

  block_00FA:
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x3D */
    /* loopscr value_u8=0x40 */
    /* loopscr value_u8=0x25 */
    /* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */

  block_0118:
    if condition goto block_0151;

  block_011B:
    if (Item.getFrame(item) != 0) goto block_014D;

  block_012D:
    suspend;

  block_014D:
    /* loopnext  */
    goto block_0118;

  block_0151:
    goto block_0233;

  block_0156:
    if (!Intrinsic0007(arg_06)) goto block_0233;

  block_0169:
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x3D */
    /* loopscr value_u8=0x3A */
    /* loopscr value_u8=0x25 */
    /* loop current_var=0xFC string_bytes=0x6 loop_type=0x2 */

  block_0186:
    if condition goto block_01D8;

  block_0189:
    if Item.isNpc(npc) goto block_01D4;

  block_0198:
    if ((Item.getZ(npc) > (Item.getZ(arg_06) - 10)) && (Item.getZ(npc) < (Item.getZ(arg_06) + 10))) goto block_01D4;

  block_01CE:
    goto block_0233;

  block_01D4:
    /* loopnext  */
    goto block_0186;

  block_01D8:
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x3D */
    /* loopscr value_u8=0x40 */
    /* loopscr value_u8=0x25 */
    /* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */

  block_01F8:
    if condition goto block_0231;

  block_01FB:
    if (Item.getFrame(item) != 0) goto block_022D;

  block_020D:
    suspend;

  block_022D:
    /* loopnext  */
    goto block_01F8;

  block_0231:

  block_0233:
    return;

}
