function flame_slot_20() /* entry=381 class_id=0x0A0B slot=0x20 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    item, /* [BP-02h] type=0x24 */
    detect, /* [BP-03h] type=0x62 */
    n; /* [BP-05h] type=0x24 */

  entry:
    set_info(0x0001, *(arg_06));

  block_00F6:
    suspend;
    detect = 0;
    /* loop_selector item in nearby_items(family=6, origin=arg_06) */

  block_0127:
    if condition goto block_018E;

  block_012A:
    if Actor.isNPC(item) goto block_018A;

  block_0139:
    if Item.overlaps(*(arg_06), item) goto block_018A;

  block_014C:
    n = item;
    NPC.slot_2B(n);
    if (!retval) goto block_0183;

  block_0167:

  block_0183:
    detect = 1;

  block_018A:
    /* loopnext  */
    goto block_0127;

  block_018E:
    spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
    suspend;
    if (!detect) goto block_01D3;

  block_01BF:
    ITEM.slot_24(4, arg_06);
    goto block_01D6;

  block_01D3:
    goto block_00F6;

  block_01D6:
    return;

}
