; LLVM IR from AF-GRILL/DISPluginForUnreal :: Source/ThirdParty/include/utils/PDUBank.ll (ZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeE)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.DIS::EntityStatePdu" = type { %"class.DIS::EntityInformationFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i8, i8, %"class.DIS::EntityType", %"class.DIS::EntityType", %"class.DIS::Vector3Float", %"class.DIS::Vector3Double", %"class.DIS::Orientation", i32, %"class.DIS::DeadReckoningParameter", %"class.DIS::Marking", i32, %"class.std::vector" }
%"class.DIS::EntityInformationFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.DIS::Pdu.base" = type <{ ptr, i8, i8, i8, i8, i32, i16, i16 }>
%"class.DIS::EntityID" = type <{ ptr, i16, i16, i16, [2 x i8] }>
%"class.DIS::EntityType" = type { ptr, i8, i8, i16, i8, i8, i8, i8 }
%"class.DIS::Vector3Float" = type <{ ptr, float, float, float, [4 x i8] }>
%"class.DIS::Vector3Double" = type { ptr, double, double, double }
%"class.DIS::Orientation" = type <{ ptr, float, float, float, [4 x i8] }>
%"class.DIS::DeadReckoningParameter" = type { ptr, i8, [15 x i8], %"class.DIS::Vector3Float", %"class.DIS::Vector3Float" }
%"class.DIS::Marking" = type <{ ptr, i8, [11 x i8], [4 x i8] }>
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::FirePdu" = type <{ %"class.DIS::WarfareFamilyPdu", %"class.DIS::EntityID", %"class.DIS::EventID", i32, [4 x i8], %"class.DIS::Vector3Double", %"class.DIS::BurstDescriptor", %"class.DIS::Vector3Float", float, [4 x i8] }>
%"class.DIS::WarfareFamilyPdu" = type { %"class.DIS::Pdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID" }
%"class.DIS::EventID" = type <{ ptr, i16, i16, i16, [2 x i8] }>
%"class.DIS::BurstDescriptor" = type { ptr, %"class.DIS::EntityType", i16, i16, i16, i16 }
%"class.DIS::DetonationPdu" = type { %"class.DIS::WarfareFamilyPdu", %"class.DIS::EntityID", %"class.DIS::EventID", %"class.DIS::Vector3Float", %"class.DIS::Vector3Double", %"class.DIS::BurstDescriptor", %"class.DIS::Vector3Float", i8, i8, i16, %"class.std::vector" }
%"class.DIS::CollisionPdu" = type { %"class.DIS::EntityInformationFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", %"class.DIS::EventID", i8, i8, [6 x i8], %"class.DIS::Vector3Float", float, [4 x i8], %"class.DIS::Vector3Float" }
%"class.DIS::ServiceRequestPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i8, i16, %"class.std::vector.0" }
%"class.DIS::LogisticsFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.std::vector.0" = type { %"struct.std::_Vector_base.1" }
%"struct.std::_Vector_base.1" = type { %"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::ResupplyOfferPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i16, i8, %"class.std::vector.0" }
%"class.DIS::ResupplyReceivedPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i16, i8, %"class.std::vector.0" }
%"class.DIS::ResupplyCancelPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID" }
%"class.DIS::RepairCompletePdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i16, i16, [4 x i8] }
%"class.DIS::RepairResponsePdu" = type <{ %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i8, i16, i8, [3 x i8] }>
%"class.DIS::CreateEntityPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, [4 x i8] }
%"class.DIS::SimulationManagementFamilyPdu" = type { %"class.DIS::Pdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID" }
%"class.DIS::RemoveEntityPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, [4 x i8] }
%"class.DIS::StartResumePdu" = type <{ %"class.DIS::SimulationManagementFamilyPdu", %"class.DIS::ClockTime", %"class.DIS::ClockTime", i32, [4 x i8] }>
%"class.DIS::ClockTime" = type { ptr, i32, i32 }
%"class.DIS::AcknowledgePdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i16, i16, i32 }
%"class.DIS::ActionRequestPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.std::vector.5" = type { %"struct.std::_Vector_base.6" }
%"struct.std::_Vector_base.6" = type { %"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.10" = type { %"struct.std::_Vector_base.11" }
%"struct.std::_Vector_base.11" = type { %"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::ActionResponsePdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::DataQueryPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::SetDataPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::EventReportPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::CommentPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::StopFreezePdu" = type { %"class.DIS::SimulationManagementFamilyPdu", %"class.DIS::ClockTime", i8, i8, i16, i32 }
%"class.DIS::ElectromagneticEmissionsPdu" = type { %"class.DIS::DistributedEmissionsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EventID", i8, i8, i16, %"class.std::vector.15" }
%"class.DIS::DistributedEmissionsFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.std::vector.15" = type { %"struct.std::_Vector_base.16" }
%"struct.std::_Vector_base.16" = type { %"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::DesignatorPdu" = type { %"class.DIS::DistributedEmissionsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i16, [6 x i8], %"class.DIS::EntityID", i16, float, float, [4 x i8], %"class.DIS::Vector3Float", %"class.DIS::Vector3Double", i8, i16, i8, [3 x i8], %"class.DIS::Vector3Float" }
%"class.DIS::TransmitterPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", %"class.DIS::RadioEntityType", i8, i8, i16, %"class.DIS::Vector3Double", %"class.DIS::Vector3Float", i16, i16, i64, float, float, %"class.DIS::ModulationType", i16, i16, i8, i16, i8, %"class.std::vector.20", %"class.std::vector.20" }
%"class.DIS::RadioCommunicationsFamilyPdu.base" = type { %"class.DIS::Pdu.base", [4 x i8], %"class.DIS::EntityID", i16 }
%"class.DIS::RadioEntityType" = type { ptr, i8, i8, i16, i8, i8, i16 }
%"class.DIS::ModulationType" = type { ptr, i16, i16, i16, i16 }
%"class.std::vector.20" = type { %"struct.std::_Vector_base.21" }
%"struct.std::_Vector_base.21" = type { %"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::SignalPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", i16, i16, i32, i16, i16, %"class.std::vector.25" }
%"class.std::vector.25" = type { %"struct.std::_Vector_base.26" }
%"struct.std::_Vector_base.26" = type { %"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::ReceiverPdu" = type <{ %"class.DIS::RadioCommunicationsFamilyPdu.base", i16, i16, [2 x i8], float, [4 x i8], %"class.DIS::EntityID", i16, [6 x i8] }>
%"class.DIS::IntercomSignalPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", [6 x i8], %"class.DIS::EntityID", i16, i16, i16, i32, i16, i16, %"class.std::vector.25" }
%"class.DIS::IntercomControlPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", i8, i8, [4 x i8], %"class.DIS::EntityID", i8, i8, i8, i8, i8, [3 x i8], %"class.DIS::EntityID", i16, i32, %"class.std::vector.30" }
%"class.std::vector.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::AggregateStatePdu" = type { %"class.DIS::EntityManagementFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i8, i8, %"class.DIS::EntityType", i32, %"class.DIS::AggregateMarking", %"class.DIS::Vector3Float", %"class.DIS::Orientation", %"class.DIS::Vector3Double", %"class.DIS::Vector3Float", i16, i16, i16, i16, %"class.std::vector.35", %"class.std::vector.40", i8, %"class.std::vector.45", %"class.std::vector.45", i32, %"class.std::vector.10" }
%"class.DIS::EntityManagementFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.DIS::AggregateMarking" = type { ptr, i8, [31 x i8] }
%"class.std::vector.35" = type { %"struct.std::_Vector_base.36" }
%"struct.std::_Vector_base.36" = type { %"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.40" = type { %"struct.std::_Vector_base.41" }
%"struct.std::_Vector_base.41" = type { %"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.45" = type { %"struct.std::_Vector_base.46" }
%"struct.std::_Vector_base.46" = type { %"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::IsGroupOfPdu" = type { %"class.DIS::EntityManagementFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i8, i8, i32, double, double, %"class.std::vector.10" }
%"class.DIS::TransferControlRequestPdu" = type { %"class.DIS::EntityManagementFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i32, i8, i8, [2 x i8], %"class.DIS::EntityID", i8, %"class.std::vector.50" }
%"class.std::vector.50" = type { %"struct.std::_Vector_base.51" }
%"struct.std::_Vector_base.51" = type { %"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl_data" = type { ptr, ptr, ptr }

@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu = external hidden global %"class.DIS::EntityStatePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu = external hidden global i64, align 8
@__dso_handle = external hidden global i8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu = external hidden global %"class.DIS::FirePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu = external hidden global %"class.DIS::DetonationPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu = external hidden global %"class.DIS::CollisionPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu = external hidden global %"class.DIS::ServiceRequestPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu = external hidden global %"class.DIS::ResupplyOfferPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu = external hidden global %"class.DIS::ResupplyReceivedPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu = external hidden global %"class.DIS::ResupplyCancelPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu = external hidden global %"class.DIS::RepairCompletePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu = external hidden global %"class.DIS::RepairResponsePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu = external hidden global %"class.DIS::CreateEntityPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu = external hidden global %"class.DIS::RemoveEntityPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu = external hidden global %"class.DIS::StartResumePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu = external hidden global %"class.DIS::AcknowledgePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu = external hidden global %"class.DIS::ActionRequestPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu = external hidden global %"class.DIS::ActionResponsePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu = external hidden global %"class.DIS::DataQueryPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu = external hidden global %"class.DIS::SetDataPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu = external hidden global %"class.DIS::EventReportPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu = external hidden global %"class.DIS::CommentPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu = external hidden global %"class.DIS::StopFreezePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu = external hidden global %"class.DIS::ElectromagneticEmissionsPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu = external hidden global %"class.DIS::DesignatorPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu = external hidden global %"class.DIS::TransmitterPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu = external hidden global %"class.DIS::SignalPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu = external hidden global %"class.DIS::ReceiverPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu = external hidden global %"class.DIS::IntercomSignalPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu = external hidden global %"class.DIS::IntercomControlPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu = external hidden global %"class.DIS::AggregateStatePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu = external hidden global %"class.DIS::IsGroupOfPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu = external hidden global %"class.DIS::TransferControlRequestPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu = external hidden global i64, align 8

; Function Attrs: mustprogress uwtable
define dso_local noundef ptr @_ZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeE(i32 noundef %0) #0 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca ptr, align 8
  %3 = alloca i32, align 4
  %4 = alloca ptr, align 8
  %5 = alloca i32, align 4
  store i32 %0, ptr %3, align 4, !tbaa !5
  %6 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu acquire, align 8
  %7 = icmp eq i8 %6, 0
  br i1 %7, label %8, label %14, !prof !9

8:                                                ; preds = %1
  %9 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu) #1
  %10 = icmp ne i32 %9, 0
  br i1 %10, label %11, label %14

11:                                               ; preds = %8
  invoke void @_ZN3DIS14EntityStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(296) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu)
          to label %12 unwind label %286

12:                                               ; preds = %11
  %13 = call i32 @__cxa_atexit(ptr @_ZN3DIS14EntityStatePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu) #1
  br label %14

14:                                               ; preds = %12, %8, %1
  %15 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu acquire, align 8
  %16 = icmp eq i8 %15, 0
  br i1 %16, label %17, label %23, !prof !9

17:                                               ; preds = %14
  %18 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu) #1
  %19 = icmp ne i32 %18, 0
  br i1 %19, label %20, label %23

20:                                               ; preds = %17
  invoke void @_ZN3DIS7FirePduC1Ev(ptr noundef nonnull align 8 dereferenceable(188) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu)
          to label %21 unwind label %290

21:                                               ; preds = %20
  %22 = call i32 @__cxa_atexit(ptr @_ZN3DIS7FirePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu) #1
  br label %23

23:                                               ; preds = %21, %17, %14
  %24 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu acquire, align 8
  %25 = icmp eq i8 %24, 0
  br i1 %25, label %26, label %32, !prof !9

26:                                               ; preds = %23
  %27 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu) #1
  %28 = icmp ne i32 %27, 0
  br i1 %28, label %29, label %32

29:                                               ; preds = %26
  invoke void @_ZN3DIS13DetonationPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu)
          to label %30 unwind label %294

30:                                               ; preds = %29
  %31 = call i32 @__cxa_atexit(ptr @_ZN3DIS13DetonationPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu) #1
  br label %32

32:                                               ; preds = %30, %26, %23
  %33 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu acquire, align 8
  %34 = icmp eq i8 %33, 0
  br i1 %34, label %35, label %41, !prof !9

35:                                               ; preds = %32
  %36 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu) #1
  %37 = icmp ne i32 %36, 0
  br i1 %37, label %38, label %41

38:                                               ; preds = %35
  invoke void @_ZN3DIS12CollisionPduC1Ev(ptr noundef nonnull align 8 dereferenceable(136) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu)
          to label %39 unwind label %298

39:                                               ; preds = %38
  %40 = call i32 @__cxa_atexit(ptr @_ZN3DIS12CollisionPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu) #1
  br label %41

41:                                               ; preds = %39, %35, %32
  %42 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu acquire, align 8
  %43 = icmp eq i8 %42, 0
  br i1 %43, label %44, label %50, !prof !9

44:                                               ; preds = %41
  %45 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu) #1
  %46 = icmp ne i32 %45, 0
  br i1 %46, label %47, label %50

47:                                               ; preds = %44
  invoke void @_ZN3DIS17ServiceRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu)
          to label %48 unwind label %302

48:                                               ; preds = %47
  %49 = call i32 @__cxa_atexit(ptr @_ZN3DIS17ServiceRequestPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu) #1
  br label %50

50:                                               ; preds = %48, %44, %41
  %51 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu acquire, align 8
  %52 = icmp eq i8 %51, 0
  br i1 %52, label %53, label %59, !prof !9

53:                                               ; preds = %50
  %54 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu) #1
  %55 = icmp ne i32 %54, 0
  br i1 %55, label %56, label %59

56:                                               ; preds = %53
  invoke void @_ZN3DIS16ResupplyOfferPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu)
          to label %57 unwind label %306

57:                                               ; preds = %56
  %58 = call i32 @__cxa_atexit(ptr @_ZN3DIS16ResupplyOfferPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu) #1
  br label %59

59:                                               ; preds = %57, %53, %50
  %60 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu acquire, align 8
  %61 = icmp eq i8 %60, 0
  br i1 %61, label %62, label %68, !prof !9

62:                                               ; preds = %59
  %63 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu) #1
  %64 = icmp ne i32 %63, 0
  br i1 %64, label %65, label %68

65:                                               ; preds = %62
  invoke void @_ZN3DIS19ResupplyReceivedPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu)
          to label %66 unwind label %310

66:                                               ; preds = %65
  %67 = call i32 @__cxa_atexit(ptr @_ZN3DIS19ResupplyReceivedPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu) #1
  br label %68

68:                                               ; preds = %66, %62, %59
  %69 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu acquire, align 8
  %70 = icmp eq i8 %69, 0
  br i1 %70, label %71, label %77, !prof !9

71:                                               ; preds = %68
  %72 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu) #1
  %73 = icmp ne i32 %72, 0
  br i1 %73, label %74, label %77

74:                                               ; preds = %71
  invoke void @_ZN3DIS17ResupplyCancelPduC1Ev(ptr noundef nonnull align 8 dereferenceable(56) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu)
          to label %75 unwind label %314

75:                                               ; preds = %74
  %76 = call i32 @__cxa_atexit(ptr @_ZN3DIS17ResupplyCancelPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu) #1
  br label %77

77:                                               ; preds = %75, %71, %68
  %78 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu acquire, align 8
  %79 = icmp eq i8 %78, 0
  br i1 %79, label %80, label %86, !prof !9

80:                                               ; preds = %77
  %81 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu) #1
  %82 = icmp ne i32 %81, 0
  br i1 %82, label %83, label %86

83:                                               ; preds = %80
  invoke void @_ZN3DIS17RepairCompletePduC1Ev(ptr noundef nonnull align 8 dereferenceable(60) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu)
          to label %84 unwind label %318

84:                                               ; preds = %83
  %85 = call i32 @__cxa_atexit(ptr @_ZN3DIS17RepairCompletePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu) #1
  br label %86

86:                                               ; preds = %84, %80, %77
  %87 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu acquire, align 8
  %88 = icmp eq i8 %87, 0
  br i1 %88, label %89, label %95, !prof !9

89:                                               ; preds = %86
  %90 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu) #1
  %91 = icmp ne i32 %90, 0
  br i1 %91, label %92, label %95

92:                                               ; preds = %89
  invoke void @_ZN3DIS17RepairResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(61) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu)
          to label %93 unwind label %322

93:                                               ; preds = %92
  %94 = call i32 @__cxa_atexit(ptr @_ZN3DIS17RepairResponsePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu) #1
  br label %95

95:                                               ; preds = %93, %89, %86
  %96 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu acquire, align 8
  %97 = icmp eq i8 %96, 0
  br i1 %97, label %98, label %104, !prof !9

98:                                               ; preds = %95
  %99 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu) #1
  %100 = icmp ne i32 %99, 0
  br i1 %100, label %101, label %104

101:                                              ; preds = %98
  invoke void @_ZN3DIS15CreateEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu)
          to label %102 unwind label %326

102:                                              ; preds = %101
  %103 = call i32 @__cxa_atexit(ptr @_ZN3DIS15CreateEntityPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu) #1
  br label %104

104:                                              ; preds = %102, %98, %95
  %105 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu acquire, align 8
  %106 = icmp eq i8 %105, 0
  br i1 %106, label %107, label %113, !prof !9

107:                                              ; preds = %104
  %108 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu) #1
  %109 = icmp ne i32 %108, 0
  br i1 %109, label %110, label %113

110:                                              ; preds = %107
  invoke void @_ZN3DIS15RemoveEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu)
          to label %111 unwind label %330

111:                                              ; preds = %110
  %112 = call i32 @__cxa_atexit(ptr @_ZN3DIS15RemoveEntityPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu) #1
  br label %113

113:                                              ; preds = %111, %107, %104
  %114 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu acquire, align 8
  %115 = icmp eq i8 %114, 0
  br i1 %115, label %116, label %122, !prof !9

116:                                              ; preds = %113
  %117 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu) #1
  %118 = icmp ne i32 %117, 0
  br i1 %118, label %119, label %122

119:                                              ; preds = %116
  invoke void @_ZN3DIS14StartResumePduC1Ev(ptr noundef nonnull align 8 dereferenceable(92) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu)
          to label %120 unwind label %334

120:                                              ; preds = %119
  %121 = call i32 @__cxa_atexit(ptr @_ZN3DIS14StartResumePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu) #1
  br label %122

122:                                              ; preds = %120, %116, %113
  %123 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu acquire, align 8
  %124 = icmp eq i8 %123, 0
  br i1 %124, label %125, label %131, !prof !9

125:                                              ; preds = %122
  %126 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu) #1
  %127 = icmp ne i32 %126, 0
  br i1 %127, label %128, label %131

128:                                              ; preds = %125
  invoke void @_ZN3DIS14AcknowledgePduC1Ev(ptr noundef nonnull align 8 dereferenceable(64) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu)
          to label %129 unwind label %338

129:                                              ; preds = %128
  %130 = call i32 @__cxa_atexit(ptr @_ZN3DIS14AcknowledgePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu) #1
  br label %131

131:                                              ; preds = %129, %125, %122
  %132 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu acquire, align 8
  %133 = icmp eq i8 %132, 0
  br i1 %133, label %134, label %140, !prof !9

134:                                              ; preds = %131
  %135 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu) #1
  %136 = icmp ne i32 %135, 0
  br i1 %136, label %137, label %140

137:                                              ; preds = %134
  invoke void @_ZN3DIS16ActionRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu)
          to label %138 unwind label %342

138:                                              ; preds = %137
  %139 = call i32 @__cxa_atexit(ptr @_ZN3DIS16ActionRequestPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu) #1
  br label %140

140:                                              ; preds = %138, %134, %131
  %141 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu acquire, align 8
  %142 = icmp eq i8 %141, 0
  br i1 %142, label %143, label %149, !prof !9

143:                                              ; preds = %140
  %144 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu) #1
  %145 = icmp ne i32 %144, 0
  br i1 %145, label %146, label %149

146:                                              ; preds = %143
  invoke void @_ZN3DIS17ActionResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu)
          to label %147 unwind label %346

147:                                              ; preds = %146
  %148 = call i32 @__cxa_atexit(ptr @_ZN3DIS17ActionResponsePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu) #1
  br label %149

149:                                              ; preds = %147, %143, %140
  %150 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu acquire, align 8
  %151 = icmp eq i8 %150, 0
  br i1 %151, label %152, label %158, !prof !9

152:                                              ; preds = %149
  %153 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu) #1
  %154 = icmp ne i32 %153, 0
  br i1 %154, label %155, label %158

155:                                              ; preds = %152
  invoke void @_ZN3DIS12DataQueryPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu)
          to label %156 unwind label %350

156:                                              ; preds = %155
  %157 = call i32 @__cxa_atexit(ptr @_ZN3DIS12DataQueryPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu) #1
  br label %158

158:                                              ; preds = %156, %152, %149
  %159 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu acquire, align 8
  %160 = icmp eq i8 %159, 0
  br i1 %160, label %161, label %167, !prof !9

161:                                              ; preds = %158
  %162 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu) #1
  %163 = icmp ne i32 %162, 0
  br i1 %163, label %164, label %167

164:                                              ; preds = %161
  invoke void @_ZN3DIS10SetDataPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu)
          to label %165 unwind label %354

165:                                              ; preds = %164
  %166 = call i32 @__cxa_atexit(ptr @_ZN3DIS10SetDataPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu) #1
  br label %167

167:                                              ; preds = %165, %161, %158
  %168 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu acquire, align 8
  %169 = icmp eq i8 %168, 0
  br i1 %169, label %170, label %176, !prof !9

170:                                              ; preds = %167
  %171 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu) #1
  %172 = icmp ne i32 %171, 0
  br i1 %172, label %173, label %176

173:                                              ; preds = %170
  invoke void @_ZN3DIS14EventReportPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu)
          to label %174 unwind label %358

174:                                              ; preds = %173
  %175 = call i32 @__cxa_atexit(ptr @_ZN3DIS14EventReportPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu) #1
  br label %176

176:                                              ; preds = %174, %170, %167
  %177 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu acquire, align 8
  %178 = icmp eq i8 %177, 0
  br i1 %178, label %179, label %185, !prof !9

179:                                              ; preds = %176
  %180 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu) #1
  %181 = icmp ne i32 %180, 0
  br i1 %181, label %182, label %185

182:                                              ; preds = %179
  invoke void @_ZN3DIS10CommentPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu)
          to label %183 unwind label %362

183:                                              ; preds = %182
  %184 = call i32 @__cxa_atexit(ptr @_ZN3DIS10CommentPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu) #1
  br label %185

185:                                              ; preds = %183, %179, %176
  %186 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu acquire, align 8
  %187 = icmp eq i8 %186, 0
  br i1 %187, label %188, label %194, !prof !9

188:                                              ; preds = %185
  %189 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu) #1
  %190 = icmp ne i32 %189, 0
  br i1 %190, label %191, label %194

191:                                              ; preds = %188
  invoke void @_ZN3DIS13StopFreezePduC1Ev(ptr noundef nonnull align 8 dereferenceable(80) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu)
          to label %192 unwind label %366

192:                                              ; preds = %191
  %193 = call i32 @__cxa_atexit(ptr @_ZN3DIS13StopFreezePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu) #1
  br label %194

194:                                              ; preds = %192, %188, %185
  %195 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu acquire, align 8
  %196 = icmp eq i8 %195, 0
  br i1 %196, label %197, label %203, !prof !9

197:                                              ; preds = %194
  %198 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu) #1
  %199 = icmp ne i32 %198, 0
  br i1 %199, label %200, label %203

200:                                              ; preds = %197
  invoke void @_ZN3DIS27ElectromagneticEmissionsPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu)
          to label %201 unwind label %370

201:                                              ; preds = %200
  %202 = call i32 @__cxa_atexit(ptr @_ZN3DIS27ElectromagneticEmissionsPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu) #1
  br label %203

203:                                              ; preds = %201, %197, %194
  %204 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu acquire, align 8
  %205 = icmp eq i8 %204, 0
  br i1 %205, label %206, label %212, !prof !9

206:                                              ; preds = %203
  %207 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu) #1
  %208 = icmp ne i32 %207, 0
  br i1 %208, label %209, label %212

209:                                              ; preds = %206
  invoke void @_ZN3DIS13DesignatorPduC1Ev(ptr noundef nonnull align 8 dereferenceable(168) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu)
          to label %210 unwind label %374

210:                                              ; preds = %209
  %211 = call i32 @__cxa_atexit(ptr @_ZN3DIS13DesignatorPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu) #1
  br label %212

212:                                              ; preds = %210, %206, %203
  %213 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu acquire, align 8
  %214 = icmp eq i8 %213, 0
  br i1 %214, label %215, label %221, !prof !9

215:                                              ; preds = %212
  %216 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu) #1
  %217 = icmp ne i32 %216, 0
  br i1 %217, label %218, label %221

218:                                              ; preds = %215
  invoke void @_ZN3DIS14TransmitterPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu)
          to label %219 unwind label %378

219:                                              ; preds = %218
  %220 = call i32 @__cxa_atexit(ptr @_ZN3DIS14TransmitterPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu) #1
  br label %221

221:                                              ; preds = %219, %215, %212
  %222 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu acquire, align 8
  %223 = icmp eq i8 %222, 0
  br i1 %223, label %224, label %230, !prof !9

224:                                              ; preds = %221
  %225 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu) #1
  %226 = icmp ne i32 %225, 0
  br i1 %226, label %227, label %230

227:                                              ; preds = %224
  invoke void @_ZN3DIS9SignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(80) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu)
          to label %228 unwind label %382

228:                                              ; preds = %227
  %229 = call i32 @__cxa_atexit(ptr @_ZN3DIS9SignalPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu) #1
  br label %230

230:                                              ; preds = %228, %224, %221
  %231 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu acquire, align 8
  %232 = icmp eq i8 %231, 0
  br i1 %232, label %233, label %239, !prof !9

233:                                              ; preds = %230
  %234 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu) #1
  %235 = icmp ne i32 %234, 0
  br i1 %235, label %236, label %239

236:                                              ; preds = %233
  invoke void @_ZN3DIS11ReceiverPduC1Ev(ptr noundef nonnull align 8 dereferenceable(74) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu)
          to label %237 unwind label %386

237:                                              ; preds = %236
  %238 = call i32 @__cxa_atexit(ptr @_ZN3DIS11ReceiverPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu) #1
  br label %239

239:                                              ; preds = %237, %233, %230
  %240 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu acquire, align 8
  %241 = icmp eq i8 %240, 0
  br i1 %241, label %242, label %248, !prof !9

242:                                              ; preds = %239
  %243 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu) #1
  %244 = icmp ne i32 %243, 0
  br i1 %244, label %245, label %248

245:                                              ; preds = %242
  invoke void @_ZN3DIS17IntercomSignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(104) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu)
          to label %246 unwind label %390

246:                                              ; preds = %245
  %247 = call i32 @__cxa_atexit(ptr @_ZN3DIS17IntercomSignalPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu) #1
  br label %248

248:                                              ; preds = %246, %242, %239
  %249 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu acquire, align 8
  %250 = icmp eq i8 %249, 0
  br i1 %250, label %251, label %257, !prof !9

251:                                              ; preds = %248
  %252 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu) #1
  %253 = icmp ne i32 %252, 0
  br i1 %253, label %254, label %257

254:                                              ; preds = %251
  invoke void @_ZN3DIS18IntercomControlPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu)
          to label %255 unwind label %394

255:                                              ; preds = %254
  %256 = call i32 @__cxa_atexit(ptr @_ZN3DIS18IntercomControlPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu) #1
  br label %257

257:                                              ; preds = %255, %251, %248
  %258 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu acquire, align 8
  %259 = icmp eq i8 %258, 0
  br i1 %259, label %260, label %266, !prof !9

260:                                              ; preds = %257
  %261 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu) #1
  %262 = icmp ne i32 %261, 0
  br i1 %262, label %263, label %266

263:                                              ; preds = %260
  invoke void @_ZN3DIS17AggregateStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(360) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu)
          to label %264 unwind label %398

264:                                              ; preds = %263
  %265 = call i32 @__cxa_atexit(ptr @_ZN3DIS17AggregateStatePduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu) #1
  br label %266

266:                                              ; preds = %264, %260, %257
  %267 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu acquire, align 8
  %268 = icmp eq i8 %267, 0
  br i1 %268, label %269, label %275, !prof !9

269:                                              ; preds = %266
  %270 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu) #1
  %271 = icmp ne i32 %270, 0
  br i1 %271, label %272, label %275

272:                                              ; preds = %269
  invoke void @_ZN3DIS12IsGroupOfPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu)
          to label %273 unwind label %402

273:                                              ; preds = %272
  %274 = call i32 @__cxa_atexit(ptr @_ZN3DIS12IsGroupOfPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu) #1
  br label %275

275:                                              ; preds = %273, %269, %266
  %276 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu acquire, align 8
  %277 = icmp eq i8 %276, 0
  br i1 %277, label %278, label %284, !prof !9

278:                                              ; preds = %275
  %279 = call i32 @__cxa_guard_acquire(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu) #1
  %280 = icmp ne i32 %279, 0
  br i1 %280, label %281, label %284

281:                                              ; preds = %278
  invoke void @_ZN3DIS25TransferControlRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu)
          to label %282 unwind label %406

282:                                              ; preds = %281
  %283 = call i32 @__cxa_atexit(ptr @_ZN3DIS25TransferControlRequestPduD1Ev, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu, ptr @__dso_handle) #1
  call void @__cxa_guard_release(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu) #1
  br label %284

284:                                              ; preds = %282, %278, %275
  %285 = load i32, ptr %3, align 4, !tbaa !5
  switch i32 %285, label %441 [
    i32 1, label %410
    i32 2, label %411
    i32 3, label %412
    i32 4, label %413
    i32 5, label %414
    i32 6, label %415
    i32 7, label %416
    i32 8, label %417
    i32 9, label %418
    i32 10, label %419
    i32 11, label %420
    i32 12, label %421
    i32 13, label %422
    i32 15, label %423
    i32 16, label %424
    i32 17, label %425
    i32 18, label %426
    i32 19, label %427
    i32 21, label %428
    i32 22, label %429
    i32 14, label %430
    i32 23, label %431
    i32 24, label %432
    i32 25, label %433
    i32 26, label %434
    i32 27, label %435
    i32 31, label %436
    i32 32, label %437
    i32 33, label %438
    i32 34, label %439
    i32 35, label %440
  ]

286:                                              ; preds = %11
  %287 = landingpad { ptr, i32 }
          cleanup
  %288 = extractvalue { ptr, i32 } %287, 0
  store ptr %288, ptr %4, align 8
  %289 = extractvalue { ptr, i32 } %287, 1
  store i32 %289, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu) #1
  br label %445

290:                                              ; preds = %20
  %291 = landingpad { ptr, i32 }
          cleanup
  %292 = extractvalue { ptr, i32 } %291, 0
  store ptr %292, ptr %4, align 8
  %293 = extractvalue { ptr, i32 } %291, 1
  store i32 %293, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu) #1
  br label %445

294:                                              ; preds = %29
  %295 = landingpad { ptr, i32 }
          cleanup
  %296 = extractvalue { ptr, i32 } %295, 0
  store ptr %296, ptr %4, align 8
  %297 = extractvalue { ptr, i32 } %295, 1
  store i32 %297, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu) #1
  br label %445

298:                                              ; preds = %38
  %299 = landingpad { ptr, i32 }
          cleanup
  %300 = extractvalue { ptr, i32 } %299, 0
  store ptr %300, ptr %4, align 8
  %301 = extractvalue { ptr, i32 } %299, 1
  store i32 %301, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu) #1
  br label %445

302:                                              ; preds = %47
  %303 = landingpad { ptr, i32 }
          cleanup
  %304 = extractvalue { ptr, i32 } %303, 0
  store ptr %304, ptr %4, align 8
  %305 = extractvalue { ptr, i32 } %303, 1
  store i32 %305, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu) #1
  br label %445

306:                                              ; preds = %56
  %307 = landingpad { ptr, i32 }
          cleanup
  %308 = extractvalue { ptr, i32 } %307, 0
  store ptr %308, ptr %4, align 8
  %309 = extractvalue { ptr, i32 } %307, 1
  store i32 %309, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu) #1
  br label %445

310:                                              ; preds = %65
  %311 = landingpad { ptr, i32 }
          cleanup
  %312 = extractvalue { ptr, i32 } %311, 0
  store ptr %312, ptr %4, align 8
  %313 = extractvalue { ptr, i32 } %311, 1
  store i32 %313, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu) #1
  br label %445

314:                                              ; preds = %74
  %315 = landingpad { ptr, i32 }
          cleanup
  %316 = extractvalue { ptr, i32 } %315, 0
  store ptr %316, ptr %4, align 8
  %317 = extractvalue { ptr, i32 } %315, 1
  store i32 %317, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu) #1
  br label %445

318:                                              ; preds = %83
  %319 = landingpad { ptr, i32 }
          cleanup
  %320 = extractvalue { ptr, i32 } %319, 0
  store ptr %320, ptr %4, align 8
  %321 = extractvalue { ptr, i32 } %319, 1
  store i32 %321, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu) #1
  br label %445

322:                                              ; preds = %92
  %323 = landingpad { ptr, i32 }
          cleanup
  %324 = extractvalue { ptr, i32 } %323, 0
  store ptr %324, ptr %4, align 8
  %325 = extractvalue { ptr, i32 } %323, 1
  store i32 %325, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu) #1
  br label %445

326:                                              ; preds = %101
  %327 = landingpad { ptr, i32 }
          cleanup
  %328 = extractvalue { ptr, i32 } %327, 0
  store ptr %328, ptr %4, align 8
  %329 = extractvalue { ptr, i32 } %327, 1
  store i32 %329, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu) #1
  br label %445

330:                                              ; preds = %110
  %331 = landingpad { ptr, i32 }
          cleanup
  %332 = extractvalue { ptr, i32 } %331, 0
  store ptr %332, ptr %4, align 8
  %333 = extractvalue { ptr, i32 } %331, 1
  store i32 %333, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu) #1
  br label %445

334:                                              ; preds = %119
  %335 = landingpad { ptr, i32 }
          cleanup
  %336 = extractvalue { ptr, i32 } %335, 0
  store ptr %336, ptr %4, align 8
  %337 = extractvalue { ptr, i32 } %335, 1
  store i32 %337, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu) #1
  br label %445

338:                                              ; preds = %128
  %339 = landingpad { ptr, i32 }
          cleanup
  %340 = extractvalue { ptr, i32 } %339, 0
  store ptr %340, ptr %4, align 8
  %341 = extractvalue { ptr, i32 } %339, 1
  store i32 %341, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu) #1
  br label %445

342:                                              ; preds = %137
  %343 = landingpad { ptr, i32 }
          cleanup
  %344 = extractvalue { ptr, i32 } %343, 0
  store ptr %344, ptr %4, align 8
  %345 = extractvalue { ptr, i32 } %343, 1
  store i32 %345, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu) #1
  br label %445

346:                                              ; preds = %146
  %347 = landingpad { ptr, i32 }
          cleanup
  %348 = extractvalue { ptr, i32 } %347, 0
  store ptr %348, ptr %4, align 8
  %349 = extractvalue { ptr, i32 } %347, 1
  store i32 %349, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu) #1
  br label %445

350:                                              ; preds = %155
  %351 = landingpad { ptr, i32 }
          cleanup
  %352 = extractvalue { ptr, i32 } %351, 0
  store ptr %352, ptr %4, align 8
  %353 = extractvalue { ptr, i32 } %351, 1
  store i32 %353, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu) #1
  br label %445

354:                                              ; preds = %164
  %355 = landingpad { ptr, i32 }
          cleanup
  %356 = extractvalue { ptr, i32 } %355, 0
  store ptr %356, ptr %4, align 8
  %357 = extractvalue { ptr, i32 } %355, 1
  store i32 %357, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu) #1
  br label %445

358:                                              ; preds = %173
  %359 = landingpad { ptr, i32 }
          cleanup
  %360 = extractvalue { ptr, i32 } %359, 0
  store ptr %360, ptr %4, align 8
  %361 = extractvalue { ptr, i32 } %359, 1
  store i32 %361, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu) #1
  br label %445

362:                                              ; preds = %182
  %363 = landingpad { ptr, i32 }
          cleanup
  %364 = extractvalue { ptr, i32 } %363, 0
  store ptr %364, ptr %4, align 8
  %365 = extractvalue { ptr, i32 } %363, 1
  store i32 %365, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu) #1
  br label %445

366:                                              ; preds = %191
  %367 = landingpad { ptr, i32 }
          cleanup
  %368 = extractvalue { ptr, i32 } %367, 0
  store ptr %368, ptr %4, align 8
  %369 = extractvalue { ptr, i32 } %367, 1
  store i32 %369, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu) #1
  br label %445

370:                                              ; preds = %200
  %371 = landingpad { ptr, i32 }
          cleanup
  %372 = extractvalue { ptr, i32 } %371, 0
  store ptr %372, ptr %4, align 8
  %373 = extractvalue { ptr, i32 } %371, 1
  store i32 %373, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu) #1
  br label %445

374:                                              ; preds = %209
  %375 = landingpad { ptr, i32 }
          cleanup
  %376 = extractvalue { ptr, i32 } %375, 0
  store ptr %376, ptr %4, align 8
  %377 = extractvalue { ptr, i32 } %375, 1
  store i32 %377, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu) #1
  br label %445

378:                                              ; preds = %218
  %379 = landingpad { ptr, i32 }
          cleanup
  %380 = extractvalue { ptr, i32 } %379, 0
  store ptr %380, ptr %4, align 8
  %381 = extractvalue { ptr, i32 } %379, 1
  store i32 %381, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu) #1
  br label %445

382:                                              ; preds = %227
  %383 = landingpad { ptr, i32 }
          cleanup
  %384 = extractvalue { ptr, i32 } %383, 0
  store ptr %384, ptr %4, align 8
  %385 = extractvalue { ptr, i32 } %383, 1
  store i32 %385, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu) #1
  br label %445

386:                                              ; preds = %236
  %387 = landingpad { ptr, i32 }
          cleanup
  %388 = extractvalue { ptr, i32 } %387, 0
  store ptr %388, ptr %4, align 8
  %389 = extractvalue { ptr, i32 } %387, 1
  store i32 %389, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu) #1
  br label %445

390:                                              ; preds = %245
  %391 = landingpad { ptr, i32 }
          cleanup
  %392 = extractvalue { ptr, i32 } %391, 0
  store ptr %392, ptr %4, align 8
  %393 = extractvalue { ptr, i32 } %391, 1
  store i32 %393, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu) #1
  br label %445

394:                                              ; preds = %254
  %395 = landingpad { ptr, i32 }
          cleanup
  %396 = extractvalue { ptr, i32 } %395, 0
  store ptr %396, ptr %4, align 8
  %397 = extractvalue { ptr, i32 } %395, 1
  store i32 %397, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu) #1
  br label %445

398:                                              ; preds = %263
  %399 = landingpad { ptr, i32 }
          cleanup
  %400 = extractvalue { ptr, i32 } %399, 0
  store ptr %400, ptr %4, align 8
  %401 = extractvalue { ptr, i32 } %399, 1
  store i32 %401, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu) #1
  br label %445

402:                                              ; preds = %272
  %403 = landingpad { ptr, i32 }
          cleanup
  %404 = extractvalue { ptr, i32 } %403, 0
  store ptr %404, ptr %4, align 8
  %405 = extractvalue { ptr, i32 } %403, 1
  store i32 %405, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu) #1
  br label %445

406:                                              ; preds = %281
  %407 = landingpad { ptr, i32 }
          cleanup
  %408 = extractvalue { ptr, i32 } %407, 0
  store ptr %408, ptr %4, align 8
  %409 = extractvalue { ptr, i32 } %407, 1
  store i32 %409, ptr %5, align 4
  call void @__cxa_guard_abort(ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu) #1
  br label %445

410:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu, ptr %2, align 8
  br label %443

411:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu, ptr %2, align 8
  br label %443

412:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu, ptr %2, align 8
  br label %443

413:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu, ptr %2, align 8
  br label %443

414:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu, ptr %2, align 8
  br label %443

415:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu, ptr %2, align 8
  br label %443

416:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu, ptr %2, align 8
  br label %443

417:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu, ptr %2, align 8
  br label %443

418:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu, ptr %2, align 8
  br label %443

419:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu, ptr %2, align 8
  br label %443

420:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu, ptr %2, align 8
  br label %443

421:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu, ptr %2, align 8
  br label %443

422:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu, ptr %2, align 8
  br label %443

423:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu, ptr %2, align 8
  br label %443

424:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu, ptr %2, align 8
  br label %443

425:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu, ptr %2, align 8
  br label %443

426:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu, ptr %2, align 8
  br label %443

427:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu, ptr %2, align 8
  br label %443

428:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu, ptr %2, align 8
  br label %443

429:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu, ptr %2, align 8
  br label %443

430:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu, ptr %2, align 8
  br label %443

431:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu, ptr %2, align 8
  br label %443

432:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu, ptr %2, align 8
  br label %443

433:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu, ptr %2, align 8
  br label %443

434:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu, ptr %2, align 8
  br label %443

435:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu, ptr %2, align 8
  br label %443

436:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu, ptr %2, align 8
  br label %443

437:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu, ptr %2, align 8
  br label %443

438:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu, ptr %2, align 8
  br label %443

439:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu, ptr %2, align 8
  br label %443

440:                                              ; preds = %284
  store ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu, ptr %2, align 8
  br label %443

441:                                              ; preds = %284
  br label %442

442:                                              ; preds = %441
  store ptr null, ptr %2, align 8
  br label %443

443:                                              ; preds = %442, %440, %439, %438, %437, %436, %435, %434, %433, %432, %431, %430, %429, %428, %427, %426, %425, %424, %423, %422, %421, %420, %419, %418, %417, %416, %415, %414, %413, %412, %411, %410
  %444 = load ptr, ptr %2, align 8
  ret ptr %444

445:                                              ; preds = %406, %402, %398, %394, %390, %386, %382, %378, %374, %370, %366, %362, %358, %354, %350, %346, %342, %338, %334, %330, %326, %322, %318, %314, %310, %306, %302, %298, %294, %290, %286
  %446 = load ptr, ptr %4, align 8
  %447 = load i32, ptr %5, align 4
  %448 = insertvalue { ptr, i32 } poison, ptr %446, 0
  %449 = insertvalue { ptr, i32 } %448, i32 %447, 1
  resume { ptr, i32 } %449
}

; Function Attrs: nounwind
declare i32 @__cxa_guard_acquire(ptr) #1

declare void @_ZN3DIS14EntityStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(296)) unnamed_addr #2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nounwind
declare void @_ZN3DIS14EntityStatePduD1Ev(ptr noundef nonnull align 8 dereferenceable(296)) unnamed_addr #3

; Function Attrs: nounwind
declare i32 @__cxa_atexit(ptr, ptr, ptr) #1

; Function Attrs: nounwind
declare void @__cxa_guard_abort(ptr) #1

; Function Attrs: nounwind
declare void @__cxa_guard_release(ptr) #1

declare void @_ZN3DIS7FirePduC1Ev(ptr noundef nonnull align 8 dereferenceable(188)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS7FirePduD1Ev(ptr noundef nonnull align 8 dereferenceable(188)) unnamed_addr #3

declare void @_ZN3DIS13DetonationPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS13DetonationPduD1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #3

declare void @_ZN3DIS12CollisionPduC1Ev(ptr noundef nonnull align 8 dereferenceable(136)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS12CollisionPduD1Ev(ptr noundef nonnull align 8 dereferenceable(136)) unnamed_addr #3

declare void @_ZN3DIS17ServiceRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17ServiceRequestPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS16ResupplyOfferPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS16ResupplyOfferPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS19ResupplyReceivedPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS19ResupplyReceivedPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS17ResupplyCancelPduC1Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17ResupplyCancelPduD1Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #3

declare void @_ZN3DIS17RepairCompletePduC1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17RepairCompletePduD1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #3

declare void @_ZN3DIS17RepairResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(61)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17RepairResponsePduD1Ev(ptr noundef nonnull align 8 dereferenceable(61)) unnamed_addr #3

declare void @_ZN3DIS15CreateEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS15CreateEntityPduD1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #3

declare void @_ZN3DIS15RemoveEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS15RemoveEntityPduD1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #3

declare void @_ZN3DIS14StartResumePduC1Ev(ptr noundef nonnull align 8 dereferenceable(92)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14StartResumePduD1Ev(ptr noundef nonnull align 8 dereferenceable(92)) unnamed_addr #3

declare void @_ZN3DIS14AcknowledgePduC1Ev(ptr noundef nonnull align 8 dereferenceable(64)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14AcknowledgePduD1Ev(ptr noundef nonnull align 8 dereferenceable(64)) unnamed_addr #3

declare void @_ZN3DIS16ActionRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS16ActionRequestPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS17ActionResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17ActionResponsePduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS12DataQueryPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS12DataQueryPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS10SetDataPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS10SetDataPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS14EventReportPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14EventReportPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS10CommentPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS10CommentPduD1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #3

declare void @_ZN3DIS13StopFreezePduC1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS13StopFreezePduD1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #3

declare void @_ZN3DIS27ElectromagneticEmissionsPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS27ElectromagneticEmissionsPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS13DesignatorPduC1Ev(ptr noundef nonnull align 8 dereferenceable(168)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS13DesignatorPduD1Ev(ptr noundef nonnull align 8 dereferenceable(168)) unnamed_addr #3

declare void @_ZN3DIS14TransmitterPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14TransmitterPduD1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #3

declare void @_ZN3DIS9SignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS9SignalPduD1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #3

declare void @_ZN3DIS11ReceiverPduC1Ev(ptr noundef nonnull align 8 dereferenceable(74)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS11ReceiverPduD1Ev(ptr noundef nonnull align 8 dereferenceable(74)) unnamed_addr #3

declare void @_ZN3DIS17IntercomSignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(104)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17IntercomSignalPduD1Ev(ptr noundef nonnull align 8 dereferenceable(104)) unnamed_addr #3

declare void @_ZN3DIS18IntercomControlPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS18IntercomControlPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS17AggregateStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17AggregateStatePduD1Ev(ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #3

declare void @_ZN3DIS12IsGroupOfPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS12IsGroupOfPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS25TransferControlRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS25TransferControlRequestPduD1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #3

attributes #0 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nounwind }
attributes #2 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"_ZTSN3DIS7PDUTypeE", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!"branch_weights", i32 1, i32 1048575}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.DIS::EntityStatePdu" = type { %"class.DIS::EntityInformationFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i8, i8, %"class.DIS::EntityType", %"class.DIS::EntityType", %"class.DIS::Vector3Float", %"class.DIS::Vector3Double", %"class.DIS::Orientation", i32, %"class.DIS::DeadReckoningParameter", %"class.DIS::Marking", i32, %"class.std::vector" }
%"class.DIS::EntityInformationFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.DIS::Pdu.base" = type <{ ptr, i8, i8, i8, i8, i32, i16, i16 }>
%"class.DIS::EntityID" = type <{ ptr, i16, i16, i16, [2 x i8] }>
%"class.DIS::EntityType" = type { ptr, i8, i8, i16, i8, i8, i8, i8 }
%"class.DIS::Vector3Float" = type <{ ptr, float, float, float, [4 x i8] }>
%"class.DIS::Vector3Double" = type { ptr, double, double, double }
%"class.DIS::Orientation" = type <{ ptr, float, float, float, [4 x i8] }>
%"class.DIS::DeadReckoningParameter" = type { ptr, i8, [15 x i8], %"class.DIS::Vector3Float", %"class.DIS::Vector3Float" }
%"class.DIS::Marking" = type <{ ptr, i8, [11 x i8], [4 x i8] }>
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::ArticulationParameter, std::allocator<DIS::ArticulationParameter>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::FirePdu" = type <{ %"class.DIS::WarfareFamilyPdu", %"class.DIS::EntityID", %"class.DIS::EventID", i32, [4 x i8], %"class.DIS::Vector3Double", %"class.DIS::BurstDescriptor", %"class.DIS::Vector3Float", float, [4 x i8] }>
%"class.DIS::WarfareFamilyPdu" = type { %"class.DIS::Pdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID" }
%"class.DIS::EventID" = type <{ ptr, i16, i16, i16, [2 x i8] }>
%"class.DIS::BurstDescriptor" = type { ptr, %"class.DIS::EntityType", i16, i16, i16, i16 }
%"class.DIS::DetonationPdu" = type { %"class.DIS::WarfareFamilyPdu", %"class.DIS::EntityID", %"class.DIS::EventID", %"class.DIS::Vector3Float", %"class.DIS::Vector3Double", %"class.DIS::BurstDescriptor", %"class.DIS::Vector3Float", i8, i8, i16, %"class.std::vector" }
%"class.DIS::CollisionPdu" = type { %"class.DIS::EntityInformationFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", %"class.DIS::EventID", i8, i8, [6 x i8], %"class.DIS::Vector3Float", float, [4 x i8], %"class.DIS::Vector3Float" }
%"class.DIS::ServiceRequestPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i8, i16, %"class.std::vector.0" }
%"class.DIS::LogisticsFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.std::vector.0" = type { %"struct.std::_Vector_base.1" }
%"struct.std::_Vector_base.1" = type { %"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::SupplyQuantity, std::allocator<DIS::SupplyQuantity>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::ResupplyOfferPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i16, i8, %"class.std::vector.0" }
%"class.DIS::ResupplyReceivedPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i16, i8, %"class.std::vector.0" }
%"class.DIS::ResupplyCancelPdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID" }
%"class.DIS::RepairCompletePdu" = type { %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i16, i16, [4 x i8] }
%"class.DIS::RepairResponsePdu" = type <{ %"class.DIS::LogisticsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i8, i8, i16, i8, [3 x i8] }>
%"class.DIS::CreateEntityPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, [4 x i8] }
%"class.DIS::SimulationManagementFamilyPdu" = type { %"class.DIS::Pdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID" }
%"class.DIS::RemoveEntityPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, [4 x i8] }
%"class.DIS::StartResumePdu" = type <{ %"class.DIS::SimulationManagementFamilyPdu", %"class.DIS::ClockTime", %"class.DIS::ClockTime", i32, [4 x i8] }>
%"class.DIS::ClockTime" = type { ptr, i32, i32 }
%"class.DIS::AcknowledgePdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i16, i16, i32 }
%"class.DIS::ActionRequestPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.std::vector.5" = type { %"struct.std::_Vector_base.6" }
%"struct.std::_Vector_base.6" = type { %"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::FixedDatum, std::allocator<DIS::FixedDatum>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.10" = type { %"struct.std::_Vector_base.11" }
%"struct.std::_Vector_base.11" = type { %"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::VariableDatum, std::allocator<DIS::VariableDatum>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::ActionResponsePdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::DataQueryPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::SetDataPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::EventReportPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::CommentPdu" = type { %"class.DIS::SimulationManagementFamilyPdu", i32, i32, %"class.std::vector.5", %"class.std::vector.10" }
%"class.DIS::StopFreezePdu" = type { %"class.DIS::SimulationManagementFamilyPdu", %"class.DIS::ClockTime", i8, i8, i16, i32 }
%"class.DIS::ElectromagneticEmissionsPdu" = type { %"class.DIS::DistributedEmissionsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EventID", i8, i8, i16, %"class.std::vector.15" }
%"class.DIS::DistributedEmissionsFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.std::vector.15" = type { %"struct.std::_Vector_base.16" }
%"struct.std::_Vector_base.16" = type { %"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::ElectromagneticEmissionSystemData, std::allocator<DIS::ElectromagneticEmissionSystemData>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::DesignatorPdu" = type { %"class.DIS::DistributedEmissionsFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i16, [6 x i8], %"class.DIS::EntityID", i16, float, float, [4 x i8], %"class.DIS::Vector3Float", %"class.DIS::Vector3Double", i8, i16, i8, [3 x i8], %"class.DIS::Vector3Float" }
%"class.DIS::TransmitterPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", %"class.DIS::RadioEntityType", i8, i8, i16, %"class.DIS::Vector3Double", %"class.DIS::Vector3Float", i16, i16, i64, float, float, %"class.DIS::ModulationType", i16, i16, i8, i16, i8, %"class.std::vector.20", %"class.std::vector.20" }
%"class.DIS::RadioCommunicationsFamilyPdu.base" = type { %"class.DIS::Pdu.base", [4 x i8], %"class.DIS::EntityID", i16 }
%"class.DIS::RadioEntityType" = type { ptr, i8, i8, i16, i8, i8, i16 }
%"class.DIS::ModulationType" = type { ptr, i16, i16, i16, i16 }
%"class.std::vector.20" = type { %"struct.std::_Vector_base.21" }
%"struct.std::_Vector_base.21" = type { %"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::Vector3Float, std::allocator<DIS::Vector3Float>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::SignalPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", i16, i16, i32, i16, i16, %"class.std::vector.25" }
%"class.std::vector.25" = type { %"struct.std::_Vector_base.26" }
%"struct.std::_Vector_base.26" = type { %"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::OneByteChunk, std::allocator<DIS::OneByteChunk>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::ReceiverPdu" = type <{ %"class.DIS::RadioCommunicationsFamilyPdu.base", i16, i16, [2 x i8], float, [4 x i8], %"class.DIS::EntityID", i16, [6 x i8] }>
%"class.DIS::IntercomSignalPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", [6 x i8], %"class.DIS::EntityID", i16, i16, i16, i32, i16, i16, %"class.std::vector.25" }
%"class.DIS::IntercomControlPdu" = type { %"class.DIS::RadioCommunicationsFamilyPdu.base", i8, i8, [4 x i8], %"class.DIS::EntityID", i8, i8, i8, i8, i8, [3 x i8], %"class.DIS::EntityID", i16, i32, %"class.std::vector.30" }
%"class.std::vector.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::IntercomCommunicationsParameters, std::allocator<DIS::IntercomCommunicationsParameters>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::AggregateStatePdu" = type { %"class.DIS::EntityManagementFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i8, i8, %"class.DIS::EntityType", i32, %"class.DIS::AggregateMarking", %"class.DIS::Vector3Float", %"class.DIS::Orientation", %"class.DIS::Vector3Double", %"class.DIS::Vector3Float", i16, i16, i16, i16, %"class.std::vector.35", %"class.std::vector.40", i8, %"class.std::vector.45", %"class.std::vector.45", i32, %"class.std::vector.10" }
%"class.DIS::EntityManagementFamilyPdu.base" = type { %"class.DIS::Pdu.base" }
%"class.DIS::AggregateMarking" = type { ptr, i8, [31 x i8] }
%"class.std::vector.35" = type { %"struct.std::_Vector_base.36" }
%"struct.std::_Vector_base.36" = type { %"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::AggregateID, std::allocator<DIS::AggregateID>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.40" = type { %"struct.std::_Vector_base.41" }
%"struct.std::_Vector_base.41" = type { %"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::EntityID, std::allocator<DIS::EntityID>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.45" = type { %"struct.std::_Vector_base.46" }
%"struct.std::_Vector_base.46" = type { %"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::EntityType, std::allocator<DIS::EntityType>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.DIS::IsGroupOfPdu" = type { %"class.DIS::EntityManagementFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", i8, i8, i32, double, double, %"class.std::vector.10" }
%"class.DIS::TransferControlRequestPdu" = type { %"class.DIS::EntityManagementFamilyPdu.base", [4 x i8], %"class.DIS::EntityID", %"class.DIS::EntityID", i32, i8, i8, [2 x i8], %"class.DIS::EntityID", i8, %"class.std::vector.50" }
%"class.std::vector.50" = type { %"struct.std::_Vector_base.51" }
%"struct.std::_Vector_base.51" = type { %"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl" }
%"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl" = type { %"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl_data" }
%"struct.std::_Vector_base<DIS::RecordSet, std::allocator<DIS::RecordSet>>::_Vector_impl_data" = type { ptr, ptr, ptr }

@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu = external hidden global %"class.DIS::EntityStatePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu = external hidden global i64, align 8
@__dso_handle = external hidden global i8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu = external hidden global %"class.DIS::FirePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu = external hidden global %"class.DIS::DetonationPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu = external hidden global %"class.DIS::CollisionPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu = external hidden global %"class.DIS::ServiceRequestPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu = external hidden global %"class.DIS::ResupplyOfferPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu = external hidden global %"class.DIS::ResupplyReceivedPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu = external hidden global %"class.DIS::ResupplyCancelPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu = external hidden global %"class.DIS::RepairCompletePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu = external hidden global %"class.DIS::RepairResponsePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu = external hidden global %"class.DIS::CreateEntityPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu = external hidden global %"class.DIS::RemoveEntityPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu = external hidden global %"class.DIS::StartResumePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu = external hidden global %"class.DIS::AcknowledgePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu = external hidden global %"class.DIS::ActionRequestPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu = external hidden global %"class.DIS::ActionResponsePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu = external hidden global %"class.DIS::DataQueryPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu = external hidden global %"class.DIS::SetDataPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu = external hidden global %"class.DIS::EventReportPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu = external hidden global %"class.DIS::CommentPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu = external hidden global %"class.DIS::StopFreezePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu = external hidden global %"class.DIS::ElectromagneticEmissionsPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu = external hidden global %"class.DIS::DesignatorPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu = external hidden global %"class.DIS::TransmitterPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu = external hidden global %"class.DIS::SignalPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu = external hidden global %"class.DIS::ReceiverPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu = external hidden global %"class.DIS::IntercomSignalPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu = external hidden global %"class.DIS::IntercomControlPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu = external hidden global %"class.DIS::AggregateStatePdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu = external hidden global %"class.DIS::IsGroupOfPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu = external hidden global i64, align 8
@_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu = external hidden global %"class.DIS::TransferControlRequestPdu", align 8
@_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu = external hidden global i64, align 8
@switch.table._ZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeE = private unnamed_addr constant [35 x ptr] [ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu, ptr null, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu, ptr null, ptr null, ptr null, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu, ptr @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu], align 8

; Function Attrs: mustprogress uwtable
define dso_local noundef ptr @_ZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeE(i32 noundef %0) local_unnamed_addr #0 align 2 personality ptr @__gxx_personality_v0 {
  %2 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu acquire, align 8
  %3 = icmp eq i8 %2, 0
  br i1 %3, label %4, label %9, !prof !5

4:                                                ; preds = %1
  %5 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu) #4
  %.not = icmp eq i32 %5, 0
  br i1 %.not, label %9, label %6

6:                                                ; preds = %4
  invoke void @_ZN3DIS14EntityStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(296) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu)
          to label %7 unwind label %251

7:                                                ; preds = %6
  %8 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS14EntityStatePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu) #4
  br label %9

9:                                                ; preds = %7, %4, %1
  %10 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu acquire, align 8
  %11 = icmp eq i8 %10, 0
  br i1 %11, label %12, label %17, !prof !5

12:                                               ; preds = %9
  %13 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu) #4
  %.not5 = icmp eq i32 %13, 0
  br i1 %.not5, label %17, label %14

14:                                               ; preds = %12
  invoke void @_ZN3DIS7FirePduC1Ev(ptr noundef nonnull align 8 dereferenceable(188) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu)
          to label %15 unwind label %253

15:                                               ; preds = %14
  %16 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS7FirePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu) #4
  br label %17

17:                                               ; preds = %15, %12, %9
  %18 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu acquire, align 8
  %19 = icmp eq i8 %18, 0
  br i1 %19, label %20, label %25, !prof !5

20:                                               ; preds = %17
  %21 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu) #4
  %.not6 = icmp eq i32 %21, 0
  br i1 %.not6, label %25, label %22

22:                                               ; preds = %20
  invoke void @_ZN3DIS13DetonationPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu)
          to label %23 unwind label %255

23:                                               ; preds = %22
  %24 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS13DetonationPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu) #4
  br label %25

25:                                               ; preds = %23, %20, %17
  %26 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu acquire, align 8
  %27 = icmp eq i8 %26, 0
  br i1 %27, label %28, label %33, !prof !5

28:                                               ; preds = %25
  %29 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu) #4
  %.not7 = icmp eq i32 %29, 0
  br i1 %.not7, label %33, label %30

30:                                               ; preds = %28
  invoke void @_ZN3DIS12CollisionPduC1Ev(ptr noundef nonnull align 8 dereferenceable(136) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu)
          to label %31 unwind label %257

31:                                               ; preds = %30
  %32 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS12CollisionPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu) #4
  br label %33

33:                                               ; preds = %31, %28, %25
  %34 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu acquire, align 8
  %35 = icmp eq i8 %34, 0
  br i1 %35, label %36, label %41, !prof !5

36:                                               ; preds = %33
  %37 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu) #4
  %.not8 = icmp eq i32 %37, 0
  br i1 %.not8, label %41, label %38

38:                                               ; preds = %36
  invoke void @_ZN3DIS17ServiceRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu)
          to label %39 unwind label %259

39:                                               ; preds = %38
  %40 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17ServiceRequestPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu) #4
  br label %41

41:                                               ; preds = %39, %36, %33
  %42 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu acquire, align 8
  %43 = icmp eq i8 %42, 0
  br i1 %43, label %44, label %49, !prof !5

44:                                               ; preds = %41
  %45 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu) #4
  %.not9 = icmp eq i32 %45, 0
  br i1 %.not9, label %49, label %46

46:                                               ; preds = %44
  invoke void @_ZN3DIS16ResupplyOfferPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu)
          to label %47 unwind label %261

47:                                               ; preds = %46
  %48 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS16ResupplyOfferPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu) #4
  br label %49

49:                                               ; preds = %47, %44, %41
  %50 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu acquire, align 8
  %51 = icmp eq i8 %50, 0
  br i1 %51, label %52, label %57, !prof !5

52:                                               ; preds = %49
  %53 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu) #4
  %.not10 = icmp eq i32 %53, 0
  br i1 %.not10, label %57, label %54

54:                                               ; preds = %52
  invoke void @_ZN3DIS19ResupplyReceivedPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu)
          to label %55 unwind label %263

55:                                               ; preds = %54
  %56 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS19ResupplyReceivedPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu) #4
  br label %57

57:                                               ; preds = %55, %52, %49
  %58 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu acquire, align 8
  %59 = icmp eq i8 %58, 0
  br i1 %59, label %60, label %65, !prof !5

60:                                               ; preds = %57
  %61 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu) #4
  %.not11 = icmp eq i32 %61, 0
  br i1 %.not11, label %65, label %62

62:                                               ; preds = %60
  invoke void @_ZN3DIS17ResupplyCancelPduC1Ev(ptr noundef nonnull align 8 dereferenceable(56) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu)
          to label %63 unwind label %265

63:                                               ; preds = %62
  %64 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17ResupplyCancelPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu) #4
  br label %65

65:                                               ; preds = %63, %60, %57
  %66 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu acquire, align 8
  %67 = icmp eq i8 %66, 0
  br i1 %67, label %68, label %73, !prof !5

68:                                               ; preds = %65
  %69 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu) #4
  %.not12 = icmp eq i32 %69, 0
  br i1 %.not12, label %73, label %70

70:                                               ; preds = %68
  invoke void @_ZN3DIS17RepairCompletePduC1Ev(ptr noundef nonnull align 8 dereferenceable(60) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu)
          to label %71 unwind label %267

71:                                               ; preds = %70
  %72 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17RepairCompletePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu) #4
  br label %73

73:                                               ; preds = %71, %68, %65
  %74 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu acquire, align 8
  %75 = icmp eq i8 %74, 0
  br i1 %75, label %76, label %81, !prof !5

76:                                               ; preds = %73
  %77 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu) #4
  %.not13 = icmp eq i32 %77, 0
  br i1 %.not13, label %81, label %78

78:                                               ; preds = %76
  invoke void @_ZN3DIS17RepairResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(61) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu)
          to label %79 unwind label %269

79:                                               ; preds = %78
  %80 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17RepairResponsePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu) #4
  br label %81

81:                                               ; preds = %79, %76, %73
  %82 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu acquire, align 8
  %83 = icmp eq i8 %82, 0
  br i1 %83, label %84, label %89, !prof !5

84:                                               ; preds = %81
  %85 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu) #4
  %.not14 = icmp eq i32 %85, 0
  br i1 %.not14, label %89, label %86

86:                                               ; preds = %84
  invoke void @_ZN3DIS15CreateEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu)
          to label %87 unwind label %271

87:                                               ; preds = %86
  %88 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS15CreateEntityPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu) #4
  br label %89

89:                                               ; preds = %87, %84, %81
  %90 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu acquire, align 8
  %91 = icmp eq i8 %90, 0
  br i1 %91, label %92, label %97, !prof !5

92:                                               ; preds = %89
  %93 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu) #4
  %.not15 = icmp eq i32 %93, 0
  br i1 %.not15, label %97, label %94

94:                                               ; preds = %92
  invoke void @_ZN3DIS15RemoveEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu)
          to label %95 unwind label %273

95:                                               ; preds = %94
  %96 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS15RemoveEntityPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu) #4
  br label %97

97:                                               ; preds = %95, %92, %89
  %98 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu acquire, align 8
  %99 = icmp eq i8 %98, 0
  br i1 %99, label %100, label %105, !prof !5

100:                                              ; preds = %97
  %101 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu) #4
  %.not16 = icmp eq i32 %101, 0
  br i1 %.not16, label %105, label %102

102:                                              ; preds = %100
  invoke void @_ZN3DIS14StartResumePduC1Ev(ptr noundef nonnull align 8 dereferenceable(92) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu)
          to label %103 unwind label %275

103:                                              ; preds = %102
  %104 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS14StartResumePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu) #4
  br label %105

105:                                              ; preds = %103, %100, %97
  %106 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu acquire, align 8
  %107 = icmp eq i8 %106, 0
  br i1 %107, label %108, label %113, !prof !5

108:                                              ; preds = %105
  %109 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu) #4
  %.not17 = icmp eq i32 %109, 0
  br i1 %.not17, label %113, label %110

110:                                              ; preds = %108
  invoke void @_ZN3DIS14AcknowledgePduC1Ev(ptr noundef nonnull align 8 dereferenceable(64) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu)
          to label %111 unwind label %277

111:                                              ; preds = %110
  %112 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS14AcknowledgePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu) #4
  br label %113

113:                                              ; preds = %111, %108, %105
  %114 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu acquire, align 8
  %115 = icmp eq i8 %114, 0
  br i1 %115, label %116, label %121, !prof !5

116:                                              ; preds = %113
  %117 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu) #4
  %.not18 = icmp eq i32 %117, 0
  br i1 %.not18, label %121, label %118

118:                                              ; preds = %116
  invoke void @_ZN3DIS16ActionRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu)
          to label %119 unwind label %279

119:                                              ; preds = %118
  %120 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS16ActionRequestPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu) #4
  br label %121

121:                                              ; preds = %119, %116, %113
  %122 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu acquire, align 8
  %123 = icmp eq i8 %122, 0
  br i1 %123, label %124, label %129, !prof !5

124:                                              ; preds = %121
  %125 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu) #4
  %.not19 = icmp eq i32 %125, 0
  br i1 %.not19, label %129, label %126

126:                                              ; preds = %124
  invoke void @_ZN3DIS17ActionResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu)
          to label %127 unwind label %281

127:                                              ; preds = %126
  %128 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17ActionResponsePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu) #4
  br label %129

129:                                              ; preds = %127, %124, %121
  %130 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu acquire, align 8
  %131 = icmp eq i8 %130, 0
  br i1 %131, label %132, label %137, !prof !5

132:                                              ; preds = %129
  %133 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu) #4
  %.not20 = icmp eq i32 %133, 0
  br i1 %.not20, label %137, label %134

134:                                              ; preds = %132
  invoke void @_ZN3DIS12DataQueryPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu)
          to label %135 unwind label %283

135:                                              ; preds = %134
  %136 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS12DataQueryPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu) #4
  br label %137

137:                                              ; preds = %135, %132, %129
  %138 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu acquire, align 8
  %139 = icmp eq i8 %138, 0
  br i1 %139, label %140, label %145, !prof !5

140:                                              ; preds = %137
  %141 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu) #4
  %.not21 = icmp eq i32 %141, 0
  br i1 %.not21, label %145, label %142

142:                                              ; preds = %140
  invoke void @_ZN3DIS10SetDataPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu)
          to label %143 unwind label %285

143:                                              ; preds = %142
  %144 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS10SetDataPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu) #4
  br label %145

145:                                              ; preds = %143, %140, %137
  %146 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu acquire, align 8
  %147 = icmp eq i8 %146, 0
  br i1 %147, label %148, label %153, !prof !5

148:                                              ; preds = %145
  %149 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu) #4
  %.not22 = icmp eq i32 %149, 0
  br i1 %.not22, label %153, label %150

150:                                              ; preds = %148
  invoke void @_ZN3DIS14EventReportPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu)
          to label %151 unwind label %287

151:                                              ; preds = %150
  %152 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS14EventReportPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu) #4
  br label %153

153:                                              ; preds = %151, %148, %145
  %154 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu acquire, align 8
  %155 = icmp eq i8 %154, 0
  br i1 %155, label %156, label %161, !prof !5

156:                                              ; preds = %153
  %157 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu) #4
  %.not23 = icmp eq i32 %157, 0
  br i1 %.not23, label %161, label %158

158:                                              ; preds = %156
  invoke void @_ZN3DIS10CommentPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu)
          to label %159 unwind label %289

159:                                              ; preds = %158
  %160 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS10CommentPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu) #4
  br label %161

161:                                              ; preds = %159, %156, %153
  %162 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu acquire, align 8
  %163 = icmp eq i8 %162, 0
  br i1 %163, label %164, label %169, !prof !5

164:                                              ; preds = %161
  %165 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu) #4
  %.not24 = icmp eq i32 %165, 0
  br i1 %.not24, label %169, label %166

166:                                              ; preds = %164
  invoke void @_ZN3DIS13StopFreezePduC1Ev(ptr noundef nonnull align 8 dereferenceable(80) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu)
          to label %167 unwind label %291

167:                                              ; preds = %166
  %168 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS13StopFreezePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu) #4
  br label %169

169:                                              ; preds = %167, %164, %161
  %170 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu acquire, align 8
  %171 = icmp eq i8 %170, 0
  br i1 %171, label %172, label %177, !prof !5

172:                                              ; preds = %169
  %173 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu) #4
  %.not25 = icmp eq i32 %173, 0
  br i1 %.not25, label %177, label %174

174:                                              ; preds = %172
  invoke void @_ZN3DIS27ElectromagneticEmissionsPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu)
          to label %175 unwind label %293

175:                                              ; preds = %174
  %176 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS27ElectromagneticEmissionsPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu) #4
  br label %177

177:                                              ; preds = %175, %172, %169
  %178 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu acquire, align 8
  %179 = icmp eq i8 %178, 0
  br i1 %179, label %180, label %185, !prof !5

180:                                              ; preds = %177
  %181 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu) #4
  %.not26 = icmp eq i32 %181, 0
  br i1 %.not26, label %185, label %182

182:                                              ; preds = %180
  invoke void @_ZN3DIS13DesignatorPduC1Ev(ptr noundef nonnull align 8 dereferenceable(168) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu)
          to label %183 unwind label %295

183:                                              ; preds = %182
  %184 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS13DesignatorPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu) #4
  br label %185

185:                                              ; preds = %183, %180, %177
  %186 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu acquire, align 8
  %187 = icmp eq i8 %186, 0
  br i1 %187, label %188, label %193, !prof !5

188:                                              ; preds = %185
  %189 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu) #4
  %.not27 = icmp eq i32 %189, 0
  br i1 %.not27, label %193, label %190

190:                                              ; preds = %188
  invoke void @_ZN3DIS14TransmitterPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu)
          to label %191 unwind label %297

191:                                              ; preds = %190
  %192 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS14TransmitterPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu) #4
  br label %193

193:                                              ; preds = %191, %188, %185
  %194 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu acquire, align 8
  %195 = icmp eq i8 %194, 0
  br i1 %195, label %196, label %201, !prof !5

196:                                              ; preds = %193
  %197 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu) #4
  %.not28 = icmp eq i32 %197, 0
  br i1 %.not28, label %201, label %198

198:                                              ; preds = %196
  invoke void @_ZN3DIS9SignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(80) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu)
          to label %199 unwind label %299

199:                                              ; preds = %198
  %200 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS9SignalPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu) #4
  br label %201

201:                                              ; preds = %199, %196, %193
  %202 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu acquire, align 8
  %203 = icmp eq i8 %202, 0
  br i1 %203, label %204, label %209, !prof !5

204:                                              ; preds = %201
  %205 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu) #4
  %.not29 = icmp eq i32 %205, 0
  br i1 %.not29, label %209, label %206

206:                                              ; preds = %204
  invoke void @_ZN3DIS11ReceiverPduC1Ev(ptr noundef nonnull align 8 dereferenceable(74) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu)
          to label %207 unwind label %301

207:                                              ; preds = %206
  %208 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS11ReceiverPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu) #4
  br label %209

209:                                              ; preds = %207, %204, %201
  %210 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu acquire, align 8
  %211 = icmp eq i8 %210, 0
  br i1 %211, label %212, label %217, !prof !5

212:                                              ; preds = %209
  %213 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu) #4
  %.not30 = icmp eq i32 %213, 0
  br i1 %.not30, label %217, label %214

214:                                              ; preds = %212
  invoke void @_ZN3DIS17IntercomSignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(104) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu)
          to label %215 unwind label %303

215:                                              ; preds = %214
  %216 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17IntercomSignalPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu) #4
  br label %217

217:                                              ; preds = %215, %212, %209
  %218 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu acquire, align 8
  %219 = icmp eq i8 %218, 0
  br i1 %219, label %220, label %225, !prof !5

220:                                              ; preds = %217
  %221 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu) #4
  %.not31 = icmp eq i32 %221, 0
  br i1 %.not31, label %225, label %222

222:                                              ; preds = %220
  invoke void @_ZN3DIS18IntercomControlPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu)
          to label %223 unwind label %305

223:                                              ; preds = %222
  %224 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS18IntercomControlPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu) #4
  br label %225

225:                                              ; preds = %223, %220, %217
  %226 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu acquire, align 8
  %227 = icmp eq i8 %226, 0
  br i1 %227, label %228, label %233, !prof !5

228:                                              ; preds = %225
  %229 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu) #4
  %.not32 = icmp eq i32 %229, 0
  br i1 %.not32, label %233, label %230

230:                                              ; preds = %228
  invoke void @_ZN3DIS17AggregateStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(360) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu)
          to label %231 unwind label %307

231:                                              ; preds = %230
  %232 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS17AggregateStatePduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu) #4
  br label %233

233:                                              ; preds = %231, %228, %225
  %234 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu acquire, align 8
  %235 = icmp eq i8 %234, 0
  br i1 %235, label %236, label %241, !prof !5

236:                                              ; preds = %233
  %237 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu) #4
  %.not33 = icmp eq i32 %237, 0
  br i1 %.not33, label %241, label %238

238:                                              ; preds = %236
  invoke void @_ZN3DIS12IsGroupOfPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu)
          to label %239 unwind label %309

239:                                              ; preds = %238
  %240 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS12IsGroupOfPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu) #4
  br label %241

241:                                              ; preds = %239, %236, %233
  %242 = load atomic i8, ptr @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu acquire, align 8
  %243 = icmp eq i8 %242, 0
  br i1 %243, label %244, label %249, !prof !5

244:                                              ; preds = %241
  %245 = tail call i32 @__cxa_guard_acquire(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu) #4
  %.not34 = icmp eq i32 %245, 0
  br i1 %.not34, label %249, label %246

246:                                              ; preds = %244
  invoke void @_ZN3DIS25TransferControlRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112) @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu)
          to label %247 unwind label %311

247:                                              ; preds = %246
  %248 = tail call i32 @__cxa_atexit(ptr nonnull @_ZN3DIS25TransferControlRequestPduD1Ev, ptr nonnull @_ZZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu, ptr nonnull @__dso_handle) #4
  tail call void @__cxa_guard_release(ptr nonnull @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu) #4
  br label %249

249:                                              ; preds = %247, %244, %241
  %switch.tableidx = add i32 %0, -1
  %250 = icmp ult i32 %switch.tableidx, 35
  br i1 %250, label %switch.lookup, label %314

251:                                              ; preds = %6
  %252 = landingpad { ptr, i32 }
          cleanup
  br label %315

253:                                              ; preds = %14
  %254 = landingpad { ptr, i32 }
          cleanup
  br label %315

255:                                              ; preds = %22
  %256 = landingpad { ptr, i32 }
          cleanup
  br label %315

257:                                              ; preds = %30
  %258 = landingpad { ptr, i32 }
          cleanup
  br label %315

259:                                              ; preds = %38
  %260 = landingpad { ptr, i32 }
          cleanup
  br label %315

261:                                              ; preds = %46
  %262 = landingpad { ptr, i32 }
          cleanup
  br label %315

263:                                              ; preds = %54
  %264 = landingpad { ptr, i32 }
          cleanup
  br label %315

265:                                              ; preds = %62
  %266 = landingpad { ptr, i32 }
          cleanup
  br label %315

267:                                              ; preds = %70
  %268 = landingpad { ptr, i32 }
          cleanup
  br label %315

269:                                              ; preds = %78
  %270 = landingpad { ptr, i32 }
          cleanup
  br label %315

271:                                              ; preds = %86
  %272 = landingpad { ptr, i32 }
          cleanup
  br label %315

273:                                              ; preds = %94
  %274 = landingpad { ptr, i32 }
          cleanup
  br label %315

275:                                              ; preds = %102
  %276 = landingpad { ptr, i32 }
          cleanup
  br label %315

277:                                              ; preds = %110
  %278 = landingpad { ptr, i32 }
          cleanup
  br label %315

279:                                              ; preds = %118
  %280 = landingpad { ptr, i32 }
          cleanup
  br label %315

281:                                              ; preds = %126
  %282 = landingpad { ptr, i32 }
          cleanup
  br label %315

283:                                              ; preds = %134
  %284 = landingpad { ptr, i32 }
          cleanup
  br label %315

285:                                              ; preds = %142
  %286 = landingpad { ptr, i32 }
          cleanup
  br label %315

287:                                              ; preds = %150
  %288 = landingpad { ptr, i32 }
          cleanup
  br label %315

289:                                              ; preds = %158
  %290 = landingpad { ptr, i32 }
          cleanup
  br label %315

291:                                              ; preds = %166
  %292 = landingpad { ptr, i32 }
          cleanup
  br label %315

293:                                              ; preds = %174
  %294 = landingpad { ptr, i32 }
          cleanup
  br label %315

295:                                              ; preds = %182
  %296 = landingpad { ptr, i32 }
          cleanup
  br label %315

297:                                              ; preds = %190
  %298 = landingpad { ptr, i32 }
          cleanup
  br label %315

299:                                              ; preds = %198
  %300 = landingpad { ptr, i32 }
          cleanup
  br label %315

301:                                              ; preds = %206
  %302 = landingpad { ptr, i32 }
          cleanup
  br label %315

303:                                              ; preds = %214
  %304 = landingpad { ptr, i32 }
          cleanup
  br label %315

305:                                              ; preds = %222
  %306 = landingpad { ptr, i32 }
          cleanup
  br label %315

307:                                              ; preds = %230
  %308 = landingpad { ptr, i32 }
          cleanup
  br label %315

309:                                              ; preds = %238
  %310 = landingpad { ptr, i32 }
          cleanup
  br label %315

311:                                              ; preds = %246
  %312 = landingpad { ptr, i32 }
          cleanup
  br label %315

switch.lookup:                                    ; preds = %249
  %313 = zext nneg i32 %switch.tableidx to i64
  %switch.gep = getelementptr inbounds [35 x ptr], ptr @switch.table._ZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeE, i64 0, i64 %313
  %switch.load = load ptr, ptr %switch.gep, align 8
  br label %314

314:                                              ; preds = %249, %switch.lookup
  %.04 = phi ptr [ %switch.load, %switch.lookup ], [ null, %249 ]
  ret ptr %.04

315:                                              ; preds = %311, %309, %307, %305, %303, %301, %299, %297, %295, %293, %291, %289, %287, %285, %283, %281, %279, %277, %275, %273, %271, %269, %267, %265, %263, %261, %259, %257, %255, %253, %251
  %_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu.sink = phi ptr [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu, %311 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12isGroupOfPdu, %309 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17aggregateStatePdu, %307 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE18intercomControlPdu, %305 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17intercomSignalPdu, %303 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE11receiverPdu, %301 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE9signalPdu, %299 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14transmitterPdu, %297 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13designatorPdu, %295 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE27electromagneticEmissionsPdu, %293 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13stopFreezePdu, %291 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10commentPdu, %289 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14eventReportPdu, %287 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE10setDataPdu, %285 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12dataQueryPdu, %283 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17actionResponsePdu, %281 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16actionRequestPdu, %279 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14acknowledgePdu, %277 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14startResumePdu, %275 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15removeEntityPdu, %273 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE15createEntityPdu, %271 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairResponsePdu, %269 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17repairCompletePdu, %267 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17resupplyCancelPdu, %265 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE19resupplyReceivedPdu, %263 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE16resupplyOfferPdu, %261 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE17ServiceRequestPdu, %259 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE12collisionPdu, %257 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE13detonationPdu, %255 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE7firePdu, %253 ], [ @_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE14entityStatePdu, %251 ]
  %.pn = phi { ptr, i32 } [ %312, %311 ], [ %310, %309 ], [ %308, %307 ], [ %306, %305 ], [ %304, %303 ], [ %302, %301 ], [ %300, %299 ], [ %298, %297 ], [ %296, %295 ], [ %294, %293 ], [ %292, %291 ], [ %290, %289 ], [ %288, %287 ], [ %286, %285 ], [ %284, %283 ], [ %282, %281 ], [ %280, %279 ], [ %278, %277 ], [ %276, %275 ], [ %274, %273 ], [ %272, %271 ], [ %270, %269 ], [ %268, %267 ], [ %266, %265 ], [ %264, %263 ], [ %262, %261 ], [ %260, %259 ], [ %258, %257 ], [ %256, %255 ], [ %254, %253 ], [ %252, %251 ]
  tail call void @__cxa_guard_abort(ptr nonnull %_ZGVZN3DIS7PduBank12GetStaticPDUENS_7PDUTypeEE20transferOwnershipPdu.sink) #4
  resume { ptr, i32 } %.pn
}

; Function Attrs: nofree nounwind
declare i32 @__cxa_guard_acquire(ptr) local_unnamed_addr #1

declare void @_ZN3DIS14EntityStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(296)) unnamed_addr #2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nounwind
declare void @_ZN3DIS14EntityStatePduD1Ev(ptr noundef nonnull align 8 dereferenceable(296)) unnamed_addr #3

; Function Attrs: nofree nounwind
declare i32 @__cxa_atexit(ptr, ptr, ptr) local_unnamed_addr #1

; Function Attrs: nofree nounwind
declare void @__cxa_guard_abort(ptr) local_unnamed_addr #1

; Function Attrs: nofree nounwind
declare void @__cxa_guard_release(ptr) local_unnamed_addr #1

declare void @_ZN3DIS7FirePduC1Ev(ptr noundef nonnull align 8 dereferenceable(188)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS7FirePduD1Ev(ptr noundef nonnull align 8 dereferenceable(188)) unnamed_addr #3

declare void @_ZN3DIS13DetonationPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS13DetonationPduD1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #3

declare void @_ZN3DIS12CollisionPduC1Ev(ptr noundef nonnull align 8 dereferenceable(136)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS12CollisionPduD1Ev(ptr noundef nonnull align 8 dereferenceable(136)) unnamed_addr #3

declare void @_ZN3DIS17ServiceRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17ServiceRequestPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS16ResupplyOfferPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS16ResupplyOfferPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS19ResupplyReceivedPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS19ResupplyReceivedPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS17ResupplyCancelPduC1Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17ResupplyCancelPduD1Ev(ptr noundef nonnull align 8 dereferenceable(56)) unnamed_addr #3

declare void @_ZN3DIS17RepairCompletePduC1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17RepairCompletePduD1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #3

declare void @_ZN3DIS17RepairResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(61)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17RepairResponsePduD1Ev(ptr noundef nonnull align 8 dereferenceable(61)) unnamed_addr #3

declare void @_ZN3DIS15CreateEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS15CreateEntityPduD1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #3

declare void @_ZN3DIS15RemoveEntityPduC1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS15RemoveEntityPduD1Ev(ptr noundef nonnull align 8 dereferenceable(60)) unnamed_addr #3

declare void @_ZN3DIS14StartResumePduC1Ev(ptr noundef nonnull align 8 dereferenceable(92)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14StartResumePduD1Ev(ptr noundef nonnull align 8 dereferenceable(92)) unnamed_addr #3

declare void @_ZN3DIS14AcknowledgePduC1Ev(ptr noundef nonnull align 8 dereferenceable(64)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14AcknowledgePduD1Ev(ptr noundef nonnull align 8 dereferenceable(64)) unnamed_addr #3

declare void @_ZN3DIS16ActionRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS16ActionRequestPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS17ActionResponsePduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17ActionResponsePduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS12DataQueryPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS12DataQueryPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS10SetDataPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS10SetDataPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS14EventReportPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14EventReportPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS10CommentPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS10CommentPduD1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #3

declare void @_ZN3DIS13StopFreezePduC1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS13StopFreezePduD1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #3

declare void @_ZN3DIS27ElectromagneticEmissionsPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS27ElectromagneticEmissionsPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS13DesignatorPduC1Ev(ptr noundef nonnull align 8 dereferenceable(168)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS13DesignatorPduD1Ev(ptr noundef nonnull align 8 dereferenceable(168)) unnamed_addr #3

declare void @_ZN3DIS14TransmitterPduC1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS14TransmitterPduD1Ev(ptr noundef nonnull align 8 dereferenceable(232)) unnamed_addr #3

declare void @_ZN3DIS9SignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS9SignalPduD1Ev(ptr noundef nonnull align 8 dereferenceable(80)) unnamed_addr #3

declare void @_ZN3DIS11ReceiverPduC1Ev(ptr noundef nonnull align 8 dereferenceable(74)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS11ReceiverPduD1Ev(ptr noundef nonnull align 8 dereferenceable(74)) unnamed_addr #3

declare void @_ZN3DIS17IntercomSignalPduC1Ev(ptr noundef nonnull align 8 dereferenceable(104)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17IntercomSignalPduD1Ev(ptr noundef nonnull align 8 dereferenceable(104)) unnamed_addr #3

declare void @_ZN3DIS18IntercomControlPduC1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS18IntercomControlPduD1Ev(ptr noundef nonnull align 8 dereferenceable(120)) unnamed_addr #3

declare void @_ZN3DIS17AggregateStatePduC1Ev(ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS17AggregateStatePduD1Ev(ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #3

declare void @_ZN3DIS12IsGroupOfPduC1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS12IsGroupOfPduD1Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #3

declare void @_ZN3DIS25TransferControlRequestPduC1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN3DIS25TransferControlRequestPduD1Ev(ptr noundef nonnull align 8 dereferenceable(112)) unnamed_addr #3

attributes #0 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nofree nounwind }
attributes #2 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!"branch_weights", i32 1, i32 1048575}


; Effective O3 passes: GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,SROAPass,SimplifyCFGPass,TailCallElimPass