function litewall_slot_21() /* entry=386 class_id=0x0A10 slot=0x21 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    r, /* [BP+0Ah] type=0x69 */
    stepper, /* [BP-02h] type=0x24 */
    item, /* [BP-04h] type=0x24 */
    wall, /* [BP-06h] type=0x24 */
    wallList, /* [BP-08h] type=0x6C */
    x, /* [BP-0Ah] type=0x69 */
    y, /* [BP-0Ch] type=0x69 */
    z, /* [BP-0Dh] type=0x62 */
    dist, /* [BP-0Fh] type=0x69 */
    aSet, /* [BP-11h] type=0x69 */
    aSet1, /* [BP-13h] type=0x69 */
    aSet2, /* [BP-15h] type=0x69 */
    aSet3; /* [BP-17h] type=0x69 */

  entry:
    set_info(0x0001, *(arg_06));
    if global[0x0005] goto block_02ED;

  block_02EA:
    goto block_044D;

  block_02ED:
    stepper = r;
    wall = 0;
    dist = 21;
    aSet = Item.isOn(stepper);
    aSet1 = 3;
    aSet2 = 48;
    aSet3 = 49;
    if (((Item.isOn(stepper) != 3) || (Item.isOn(stepper) != 48)) || (Item.isOn(stepper) != 49)) goto block_044D;

  block_035A:
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x44 */
    /* loop current_var=0xFC string_bytes=0xA loop_type=0x2 */

  block_0383:
    if condition goto block_03CD;

  block_0386:
    /* create_list element_size=0x2 count=0x1 */
    /* append_list  */
    /* free_local_list bp_offset=0xF8 target=[BP-08h] */
    wallList = item;
    class_0A0C_slot_29(wallList, stepper, item);
    if (retval < dist) goto block_03C9;

  block_03B1:
    class_0A0C_slot_29(stepper, item);
    dist = retval;
    wall = item;

  block_03C9:
    /* loopnext  */
    goto block_0383;

  block_03CD:
    if ((wall != 0) && (dist <= 2)) goto block_044D;

  block_03E3:
    /* pop_global global_id=0x5 size=0x1 */

  block_03F5:
    foreach_list item -> block_0412;

  block_03FA:
    spawn class_0A10_slot_20(item, arg_06);
    goto block_03F5;

  block_0412:
    spawn class_0A11_slot_2D(pid, Intrinsic00C7(wall, stepper), wall, stepper);
    suspend;

  block_044D:
    /* free_local_list bp_offset=0xF8 target=[BP-08h] */
    return;

}
