function wallgun_slot_35() /* entry=471 class_id=0x0A19 slot=0x35 */
{
  entry:
    set_info(0x0001, *(arg_06));
    local_09 = 1;
    WALLGUN.slot_29(arg_06);
    local_0A = retval;
    if (local_0A != 1) goto block_12EF;

  block_12E0:
    local_06 = 1;
    local_02 = 0;
    local_04 = 15;
    goto block_1317;

  block_12EF:
    WALLGUN.slot_2B(arg_06);
    if retval goto block_130B;

  block_12FC:
    local_06 = 1;
    local_02 = 0;
    local_04 = 8;
    goto block_1317;

  block_130B:
    local_06 = -1;
    local_02 = 8;
    local_04 = 0;

  block_1317:
    WALLGUN.slot_20(arg_06);
    local_0C = (retval * 5);

  block_1326:
    if 1 goto block_1404;

  block_132B:
    local_08 = Item.getFrame(arg_06);
    if (local_0A != 1) goto block_1363;

  block_133E:
    if (local_08 > 19) goto block_1360;

  block_1346:
    spawn FREE.slot_3B(pid, 10, 0x00000000);
    suspend;
    goto block_1326;

  block_1360:
    goto block_1388;

  block_1363:
    if (local_08 > 8) goto block_1388;

  block_136B:
    spawn FREE.slot_3B(pid, 10, 0x00000000);
    suspend;
    goto block_1326;

  block_1385:
    goto block_1388;

  block_1388:
    if (local_09 != 1) goto block_13AC;

  block_1390:
    if (local_08 != local_02) goto block_13A2;

  block_1398:
    local_09 = 0;
    goto block_1326;

  block_139F:
    goto block_13A9;

  block_13A2:
    local_08 = (local_08 - local_06);

  block_13A9:
    goto block_13D3;

  block_13AC:
    if (local_0A != 1) goto block_13BB;

  block_13B4:
    local_08 = local_04;
    goto block_13D3;

  block_13BB:
    if ((local_08 == 4) && (local_08 != local_02)) {
      local_08 = (local_08 - local_06);
    }

  block_13D3:
    spawn FREE.slot_3B(pid, local_0C, 0x00000000);
    suspend;
    goto block_1404;

  block_1401:
    goto block_1326;

  block_1404:
    return;

}
