function watchew_slot_20() /* entry=284 class_id=0x04DE slot=0x20 */
{
  entry:
    set_info(0x021B, 0);
    local_0A = Item.getQLo(arg_06);
    if (Item.getMapNum(arg_06) != 0) goto block_034D;

  block_0292:
    for local_04 in nearby_items(shape=0x0510, origin=arg_06) {
      if ((Item.getQLo(local_04) == local_0A) || (local_0A != 0)) {
        if (!Item.getQHi(local_04)) {
          TEXTFILE.slot_21(Item.getQHi(local_04), Item.getQLo(local_04), arg_06);
          /* free_local_string bp_offset=0xFE target=[BP-02h] */
          local_02 = retval;
          spawn TEXTFILE.slot_20(pid, local_02, arg_06);
          /* free_stack_string value_u8=0x0 target=[SP+00h] */
          suspend;
        }
      }
      /* loopnext  */
    }

  block_0308:
    spawn TRIGGER.slot_20(pid, 0, *(arg_06), arg_06);
    suspend;
    spawn WATCHEW.slot_21(pid, arg_06);
    suspend;
    spawn TRIGGER.slot_20(pid, 1, *(arg_06), arg_06);
    suspend;
    goto block_0413;

  block_034D:
    local_0B = 0;
    if Item.getQHi(arg_06) goto block_0403;

  block_035D:
    /* loop_selector local_06 in nearby_items(shape=0x0251, origin=arg_06) */

  block_0375:
    if condition goto block_03A1;

  block_0378:
    if (Item.getQLo(local_06) != local_0A) goto block_039D;

  block_0387:
    VALBOX.slot_20(local_06);
    local_08 = retval;
    local_0B = (1 + local_0B);
    goto block_03A1;

  block_039D:
    /* loopnext  */
    goto block_0375;

  block_03A1:
    if local_0B goto block_03CD;

  block_03A8:
    TEXTFILE.slot_23(local_08, Item.getQHi(arg_06), Item.getQLo(arg_06), arg_06);
    /* free_local_string bp_offset=0xFE target=[BP-02h] */
    local_02 = retval;
    goto block_03ED;

  block_03CD:
    TEXTFILE.slot_21(Item.getQHi(arg_06), Item.getQLo(arg_06), arg_06);
    /* free_local_string bp_offset=0xFE target=[BP-02h] */
    local_02 = retval;

  block_03ED:
    spawn TEXTFILE.slot_20(pid, local_02, arg_06);
    /* free_stack_string value_u8=0x0 target=[SP+00h] */
    suspend;

  block_0403:
    spawn WATCHEW.slot_21(pid, arg_06);
    suspend;

  block_0413:
    /* bit_not  */
    /* free_local_string bp_offset=0xFE target=[BP-02h] */
    return;

}
