function free_slot_45() /* entry=475 class_id=0x0A1D slot=0x45 */
{
  set_info(1, 0);
  FREE.slot_3C(0x022B, 0);
  if (Ultima8Engine.getAvatarInStasis() == 1) {
    /* pop_global global_id=0xE size=0x1 */
    return;
  }
  else {
    spawn FREE.slot_21(pid, 0x0195, 0x00000000);
    suspend;
    local_02 = UCMachine.rndRange(100, 0);
    if (local_02 >= 30) {
      spawn FREE.slot_21(pid, 0x0187, 0x00000000);
      suspend;
      local_02 = UCMachine.rndRange(100, 0);
      if (local_02 >= 50) {
        spawn FREE.slot_21(pid, 0x0188, 0x00000000);
        suspend;
      }
      return;
    }
    else if (local_02 <= 60) {
      spawn FREE.slot_21(pid, 0x0188, 0x00000000);
      suspend;
      local_02 = UCMachine.rndRange(100, 0);
      if (local_02 >= 30) {
        spawn FREE.slot_21(pid, 0x0187, 0x00000000);
        suspend;
      }
      if (local_02 <= 60) {
        spawn FREE.slot_21(pid, 0x0189, 0x00000000);
        suspend;
      }
      return;
    }
    else {
      spawn FREE.slot_21(pid, 0x018A, 0x00000000);
      suspend;
      local_02 = UCMachine.rndRange(100, 0);
      if (local_02 >= 30) {
        spawn FREE.slot_21(pid, 0x0188, 0x00000000);
        suspend;
      }
      if (local_02 <= 60) {
        spawn FREE.slot_21(pid, 0x0189, 0x00000000);
        suspend;
      }
    }
  }
  return;
}
