function bridge_slot_25() /* entry=373 class_id=0x0A03 slot=0x25 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    start, /* [BP+0Ah] type=0x69 */
    item, /* [BP-02h] type=0x24 */
    bridgeitems, /* [BP-04h] type=0x6C */
    bridgemax, /* [BP-06h] type=0x69 */
    x, /* [BP-08h] type=0x69 */
    y, /* [BP-0Ah] type=0x69 */
    z, /* [BP-0Ch] type=0x69 */
    item2, /* [BP-0Eh] type=0x24 */
    item3; /* [BP-10h] type=0x24 */

  entry:
    set_info(0x021B, *(arg_06));
    bridgemax = 0;
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x42 */
    /* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */

  block_0843:
    if condition goto block_0877;

  block_0846:
    x = Item.getQLo(item);
    if (x != start) goto block_0873;

  block_085F:
    bridgemax = Item.getQHi(item);
    goto block_0877;

  block_0873:
    /* loopnext  */
    goto block_0843;

  block_0877:
    if (bridgemax != 0) goto block_08FD;

  block_0884:
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x42 */
    /* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */

  block_08A4:
    if condition goto block_08EA;

  block_08A7:
    if (Item.getFrame(arg_06) != 1) goto block_08E6;

  block_08B9:
    x = Item.getQLo(item);
    if (x != start) goto block_08E6;

  block_08D2:
    bridgemax = Item.getQHi(item);
    goto block_08EA;

  block_08E6:
    /* loopnext  */
    goto block_08A4;

  block_08EA:
    if (bridgemax != 0) goto block_08FD;

  block_08F7:
    goto block_0C5A;

  block_08FD:
    if (bridgemax < start) goto block_090E;

  block_0908:
    goto block_0C5A;

  block_090E:
    y = bridgemax;
    start = (start - 1);

  block_091F:
    if (y != start) goto block_0A46;

  block_092A:
    z = y;
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x42 */
    /* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */

  block_0951:
    if condition goto block_0991;

  block_0954:
    x = Item.getQLo(item);
    if (x != y) goto block_098D;

  block_096D:
    /* create_list element_size=0x2 count=0x1 */
    /* append_list  */
    /* free_local_list bp_offset=0xFC target=[BP-04h] */
    bridgeitems = item;
    y = (y - 1);
    goto block_0991;

  block_098D:
    /* loopnext  */
    goto block_0951;

  block_0991:
    if (z != y) goto block_0A43;

  block_099E:
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x42 */
    /* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */

  block_09BE:
    if condition goto block_0A10;

  block_09C1:
    if (Item.getFrame(arg_06) != 1) goto block_0A0C;

  block_09D3:
    x = Item.getQLo(item);
    if (x != y) goto block_0A0C;

  block_09EC:
    /* create_list element_size=0x2 count=0x1 */
    /* append_list  */
    /* free_local_list bp_offset=0xFC target=[BP-04h] */
    bridgeitems = item;
    y = (y - 1);
    goto block_0A10;

  block_0A0C:
    /* loopnext  */
    goto block_09BE;

  block_0A10:
    if (z != y) goto block_0A43;

  block_0A1D:
    spawn class_0A0C_slot_32(pid, 10, 0x00000000);
    suspend;

  block_0A43:
    goto block_091F;

  block_0A46:

  block_0A4F:
    foreach_list item -> block_0B63;

  block_0A54:
    if (Item.inFastArea(item) != 1) goto block_0AB6;

  block_0A66:
    class_0A03_slot_21(0x0336, item);
    spawn class_0A0C_slot_32(pid, 15, 0x00000000);
    suspend;

  block_0AB6:
    /* loopscr value_u8=0x24 */
    /* loop current_var=0xF2 string_bytes=0x1 loop_type=0x6 */

  block_0AC4:
    if condition goto block_0B5B;

  block_0AC7:
    if ((Item.getItemFamily(item2) != 6) && (Actor.isNPC(item2) != 0)) goto block_0B4C;

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

  block_0B05:
    if condition goto block_0B17;

  block_0B08:
    /* loopnext  */
    goto block_0B05;

  block_0B17:
    spawn class_0A1E_slot_28(pid, 1, 0, item2);
    suspend;
    goto block_0B57;

  block_0B4C:

  block_0B57:
    /* loopnext  */
    goto block_0AC4;

  block_0B5B:
    goto block_0A4F;

  block_0B63:

  block_0B6C:
    foreach_list item -> block_0C5A;

  block_0B71:
    if (Item.inFastArea(item) != 1) goto block_0BAD;

  block_0B83:
    class_0A03_slot_21(0x0336, item);

  block_0BAD:
    /* loopscr value_u8=0x24 */
    /* loop current_var=0xF2 string_bytes=0x1 loop_type=0x6 */

  block_0BBB:
    if condition goto block_0C52;

  block_0BBE:
    if ((Item.getItemFamily(item2) != 6) && (Actor.isNPC(item2) != 0)) goto block_0C43;

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

  block_0BFC:
    if condition goto block_0C0E;

  block_0BFF:
    /* loopnext  */
    goto block_0BFC;

  block_0C0E:
    spawn class_0A1E_slot_28(pid, 1, 0, item2);
    suspend;
    goto block_0C4E;

  block_0C43:

  block_0C4E:
    /* loopnext  */
    goto block_0BBB;

  block_0C52:
    goto block_0B6C;

  block_0C5A:
    /* free_local_list bp_offset=0xFC target=[BP-04h] */
    return;

}
