function shocker_slot_21() /* entry=464 class_id=0x0A12 slot=0x21 */
{
  entry:
    set_info(0x0205, *(arg_06));
    set_info(0x020C, *(arg_06));

  block_0266:
    suspend;
    spawn FREE.slot_3B(pid, 5, 0x00000000);
    suspend;
    /* loop_selector local_02 in nearby_items(family=6, origin=arg_06) */

  block_0295:
    if condition goto block_0310;

  block_0298:
    if (Item.isNpc(local_02) != 1) goto block_030C;

  block_02A7:
    if (!Actor.isDead(local_02)) goto block_030C;

  block_02B4:
    if ((Item.overlaps(local_02, arg_06) != 1) && (Item.getFrame(arg_06) < 6)) goto block_030C;

  block_02D2:
    FREE.slot_20(pid, 8);
    spawn NPC.slot_2F(retval, *(arg_06), local_02);
    suspend;
    spawn FREE.slot_3B(pid, 2, 0x00000000);
    suspend;
    goto block_0315;

  block_030C:
    /* loopnext  */
    goto block_0295;

  block_0310:
    goto block_0266;

  block_0315:
    return;

}
