	.file	"661143.c"
	.intel_syntax noprefix
	.text
	.globl	outputs
	.bss
	.align 32
	.type	outputs, @object
	.size	outputs, 6496
outputs:
	.zero	6496
	.globl	channelTable
	.align 8
	.type	channelTable, @object
	.size	channelTable, 8
channelTable:
	.zero	8
	.globl	STARTING_SIZE
	.section	.rodata
	.align 4
	.type	STARTING_SIZE, @object
	.size	STARTING_SIZE, 4
STARTING_SIZE:
	.long	511
	.local	eventHeap
	.comm	eventHeap,24,16
	.local	sim_ticks
	.comm	sim_ticks,8,8
	.local	current_node
	.comm	current_node,8,8
	.local	sim_seed
	.comm	sim_seed,4,4
	.globl	simTimeBuf
	.bss
	.align 32
	.type	simTimeBuf, @object
	.size	simTimeBuf, 128
simTimeBuf:
	.zero	128
	.globl	csmaInitHigh
	.data
	.align 4
	.type	csmaInitHigh, @object
	.size	csmaInitHigh, 4
csmaInitHigh:
	.long	640
	.globl	csmaInitLow
	.align 4
	.type	csmaInitLow, @object
	.size	csmaInitLow, 4
csmaInitLow:
	.long	20
	.globl	csmaHigh
	.align 4
	.type	csmaHigh, @object
	.size	csmaHigh, 4
csmaHigh:
	.long	160
	.globl	csmaLow
	.align 4
	.type	csmaLow, @object
	.size	csmaLow, 4
csmaLow:
	.long	20
	.globl	csmaSymbolsPerSec
	.align 4
	.type	csmaSymbolsPerSec, @object
	.size	csmaSymbolsPerSec, 4
csmaSymbolsPerSec:
	.long	65536
	.globl	csmaBitsPerSymbol
	.align 4
	.type	csmaBitsPerSymbol, @object
	.size	csmaBitsPerSymbol, 4
csmaBitsPerSymbol:
	.long	4
	.globl	csmaPreambleLength
	.align 4
	.type	csmaPreambleLength, @object
	.size	csmaPreambleLength, 4
csmaPreambleLength:
	.long	12
	.globl	csmaExponentBase
	.align 4
	.type	csmaExponentBase, @object
	.size	csmaExponentBase, 4
csmaExponentBase:
	.long	1
	.globl	csmaMaxIterations
	.bss
	.align 4
	.type	csmaMaxIterations, @object
	.size	csmaMaxIterations, 4
csmaMaxIterations:
	.zero	4
	.globl	csmaMinFreeSamples
	.data
	.align 4
	.type	csmaMinFreeSamples, @object
	.size	csmaMinFreeSamples, 4
csmaMinFreeSamples:
	.long	1
	.globl	csmaRxTxDelay
	.align 4
	.type	csmaRxTxDelay, @object
	.size	csmaRxTxDelay, 4
csmaRxTxDelay:
	.long	11
	.globl	csmaAckTime
	.align 4
	.type	csmaAckTime, @object
	.size	csmaAckTime, 4
csmaAckTime:
	.long	34
	.globl	connectivity
	.bss
	.align 32
	.type	connectivity, @object
	.size	connectivity, 8008
connectivity:
	.zero	8008
	.globl	localNoise
	.align 32
	.type	localNoise, @object
	.size	localNoise, 16016
localNoise:
	.zero	16016
	.globl	sensitivity
	.data
	.align 8
	.type	sensitivity, @object
	.size	sensitivity, 8
sensitivity:
	.long	0
	.long	1074790400
	.local	randU
	.comm	randU,776,32
	.local	randC
	.comm	randC,8,8
	.local	randCD
	.comm	randCD,8,8
	.local	randCM
	.comm	randCM,8,8
	.local	i97
	.comm	i97,4,4
	.local	j97
	.comm	j97,4,4
	.local	test
	.comm	test,4,4
	.globl	numCase1
	.bss
	.align 4
	.type	numCase1, @object
	.size	numCase1, 4
numCase1:
	.zero	4
	.globl	numCase2
	.align 4
	.type	numCase2, @object
	.size	numCase2, 4
numCase2:
	.zero	4
	.globl	numTotal
	.align 4
	.type	numTotal, @object
	.size	numTotal, 4
numTotal:
	.zero	4
	.globl	FreqKeyNum
	.align 8
	.type	FreqKeyNum, @object
	.size	FreqKeyNum, 8
FreqKeyNum:
	.zero	8
	.globl	noiseData
	.align 32
	.type	noiseData, @object
	.size	noiseData, 96000
noiseData:
	.zero	96000
	.globl	dummy
	.align 4
	.type	dummy, @object
	.size	dummy, 4
dummy:
	.zero	4
	.globl	atm128RegFile
	.align 32
	.type	atm128RegFile, @object
	.size	atm128RegFile, 160000
atm128RegFile:
	.zero	160000
	.globl	SimSchedulerBasicP$m_head
	.align 32
	.type	SimSchedulerBasicP$m_head, @object
	.size	SimSchedulerBasicP$m_head, 1000
SimSchedulerBasicP$m_head:
	.zero	1000
	.globl	SimSchedulerBasicP$m_tail
	.align 32
	.type	SimSchedulerBasicP$m_tail, @object
	.size	SimSchedulerBasicP$m_tail, 1000
SimSchedulerBasicP$m_tail:
	.zero	1000
	.globl	SimSchedulerBasicP$m_next
	.align 32
	.type	SimSchedulerBasicP$m_next, @object
	.size	SimSchedulerBasicP$m_next, 11000
SimSchedulerBasicP$m_next:
	.zero	11000
	.globl	SimSchedulerBasicP$sim_scheduler_event_pending
	.align 32
	.type	SimSchedulerBasicP$sim_scheduler_event_pending, @object
	.size	SimSchedulerBasicP$sim_scheduler_event_pending, 1000
SimSchedulerBasicP$sim_scheduler_event_pending:
	.zero	1000
	.globl	SimSchedulerBasicP$sim_scheduler_event
	.align 32
	.type	SimSchedulerBasicP$sim_scheduler_event, @object
	.size	SimSchedulerBasicP$sim_scheduler_event, 48000
SimSchedulerBasicP$sim_scheduler_event:
	.zero	48000
	.globl	SimMoteP$euid
	.align 32
	.type	SimMoteP$euid, @object
	.size	SimMoteP$euid, 8000
SimMoteP$euid:
	.zero	8000
	.globl	SimMoteP$startTime
	.align 32
	.type	SimMoteP$startTime, @object
	.size	SimMoteP$startTime, 8000
SimMoteP$startTime:
	.zero	8000
	.globl	SimMoteP$isOn
	.align 32
	.type	SimMoteP$isOn, @object
	.size	SimMoteP$isOn, 1000
SimMoteP$isOn:
	.zero	1000
	.globl	SimMoteP$bootEvent
	.align 32
	.type	SimMoteP$bootEvent, @object
	.size	SimMoteP$bootEvent, 8000
SimMoteP$bootEvent:
	.zero	8000
	.globl	TossimActiveMessageC$buffer
	.align 32
	.type	TossimActiveMessageC$buffer, @object
	.size	TossimActiveMessageC$buffer, 49000
TossimActiveMessageC$buffer:
	.zero	49000
	.globl	TossimActiveMessageC$bufferPointer
	.align 32
	.type	TossimActiveMessageC$bufferPointer, @object
	.size	TossimActiveMessageC$bufferPointer, 8000
TossimActiveMessageC$bufferPointer:
	.zero	8000
	.globl	TestDsrP$pktNum
	.align 32
	.type	TestDsrP$pktNum, @object
	.size	TestDsrP$pktNum, 2000
TestDsrP$pktNum:
	.zero	2000
	.globl	TestDsrP$dest
	.align 32
	.type	TestDsrP$dest, @object
	.size	TestDsrP$dest, 2000
TestDsrP$dest:
	.zero	2000
	.globl	TestDsrP$numPkts
	.align 32
	.type	TestDsrP$numPkts, @object
	.size	TestDsrP$numPkts, 4000
TestDsrP$numPkts:
	.zero	4000
	.globl	PacketEngineP$msgBuffer
	.align 32
	.type	PacketEngineP$msgBuffer, @object
	.size	PacketEngineP$msgBuffer, 640000
PacketEngineP$msgBuffer:
	.zero	640000
	.globl	PacketEngineP$nextFreePkt
	.align 32
	.type	PacketEngineP$nextFreePkt, @object
	.size	PacketEngineP$nextFreePkt, 1000
PacketEngineP$nextFreePkt:
	.zero	1000
	.globl	PacketEngineP$nextAddedPkt
	.align 32
	.type	PacketEngineP$nextAddedPkt, @object
	.size	PacketEngineP$nextAddedPkt, 1000
PacketEngineP$nextAddedPkt:
	.zero	1000
	.globl	PacketEngineP$nextWaitPkt
	.align 32
	.type	PacketEngineP$nextWaitPkt, @object
	.size	PacketEngineP$nextWaitPkt, 1000
PacketEngineP$nextWaitPkt:
	.zero	1000
	.globl	PacketEngineP$nextActionPkt
	.align 32
	.type	PacketEngineP$nextActionPkt, @object
	.size	PacketEngineP$nextActionPkt, 1000
PacketEngineP$nextActionPkt:
	.zero	1000
	.globl	PacketEngineP$running
	.align 32
	.type	PacketEngineP$running, @object
	.size	PacketEngineP$running, 1000
PacketEngineP$running:
	.zero	1000
	.globl	PacketEngineP$radioOn
	.align 32
	.type	PacketEngineP$radioOn, @object
	.size	PacketEngineP$radioOn, 1000
PacketEngineP$radioOn:
	.zero	1000
	.globl	LruDataCacheP$0$cache
	.align 32
	.type	LruDataCacheP$0$cache, @object
	.size	LruDataCacheP$0$cache, 40000
LruDataCacheP$0$cache:
	.zero	40000
	.globl	LruDataCacheP$0$first
	.align 32
	.type	LruDataCacheP$0$first, @object
	.size	LruDataCacheP$0$first, 1000
LruDataCacheP$0$first:
	.zero	1000
	.globl	LruDataCacheP$0$count
	.align 32
	.type	LruDataCacheP$0$count, @object
	.size	LruDataCacheP$0$count, 1000
LruDataCacheP$0$count:
	.zero	1000
	.globl	PoolP$0$free
	.align 32
	.type	PoolP$0$free, @object
	.size	PoolP$0$free, 1000
PoolP$0$free:
	.zero	1000
	.globl	PoolP$0$index
	.align 32
	.type	PoolP$0$index, @object
	.size	PoolP$0$index, 1000
PoolP$0$index:
	.zero	1000
	.globl	PoolP$0$queue
	.align 32
	.type	PoolP$0$queue, @object
	.size	PoolP$0$queue, 160000
PoolP$0$queue:
	.zero	160000
	.globl	PoolP$0$pool
	.align 32
	.type	PoolP$0$pool, @object
	.size	PoolP$0$pool, 980000
PoolP$0$pool:
	.zero	980000
	.globl	PoolP$1$free
	.align 32
	.type	PoolP$1$free, @object
	.size	PoolP$1$free, 1000
PoolP$1$free:
	.zero	1000
	.globl	PoolP$1$index
	.align 32
	.type	PoolP$1$index, @object
	.size	PoolP$1$index, 1000
PoolP$1$index:
	.zero	1000
	.globl	PoolP$1$queue
	.align 32
	.type	PoolP$1$queue, @object
	.size	PoolP$1$queue, 160000
PoolP$1$queue:
	.zero	160000
	.globl	PoolP$1$pool
	.align 32
	.type	PoolP$1$pool, @object
	.size	PoolP$1$pool, 980000
PoolP$1$pool:
	.zero	980000
	.globl	StateImplP$state
	.align 32
	.type	StateImplP$state, @object
	.size	StateImplP$state, 1000
StateImplP$state:
	.zero	1000
	.globl	RandomMlcgP$seed
	.align 32
	.type	RandomMlcgP$seed, @object
	.size	RandomMlcgP$seed, 8000
RandomMlcgP$seed:
	.zero	8000
	.globl	Atm128AlarmAsyncP$0$set
	.align 32
	.type	Atm128AlarmAsyncP$0$set, @object
	.size	Atm128AlarmAsyncP$0$set, 1000
Atm128AlarmAsyncP$0$set:
	.zero	1000
	.globl	Atm128AlarmAsyncP$0$t0
	.align 32
	.type	Atm128AlarmAsyncP$0$t0, @object
	.size	Atm128AlarmAsyncP$0$t0, 8000
Atm128AlarmAsyncP$0$t0:
	.zero	8000
	.globl	Atm128AlarmAsyncP$0$dt
	.align 32
	.type	Atm128AlarmAsyncP$0$dt, @object
	.size	Atm128AlarmAsyncP$0$dt, 8000
Atm128AlarmAsyncP$0$dt:
	.zero	8000
	.globl	Atm128AlarmAsyncP$0$base
	.align 32
	.type	Atm128AlarmAsyncP$0$base, @object
	.size	Atm128AlarmAsyncP$0$base, 8000
Atm128AlarmAsyncP$0$base:
	.zero	8000
	.globl	HplAtm128Timer0AsyncP$inOverflow
	.align 32
	.type	HplAtm128Timer0AsyncP$inOverflow, @object
	.size	HplAtm128Timer0AsyncP$inOverflow, 1000
HplAtm128Timer0AsyncP$inOverflow:
	.zero	1000
	.globl	HplAtm128Timer0AsyncP$lastZero
	.align 32
	.type	HplAtm128Timer0AsyncP$lastZero, @object
	.size	HplAtm128Timer0AsyncP$lastZero, 8000
HplAtm128Timer0AsyncP$lastZero:
	.zero	8000
	.globl	HplAtm128Timer0AsyncP$oldScale
	.align 32
	.type	HplAtm128Timer0AsyncP$oldScale, @object
	.size	HplAtm128Timer0AsyncP$oldScale, 1000
HplAtm128Timer0AsyncP$oldScale:
	.zero	1000
	.globl	HplAtm128Timer0AsyncP$compare
	.align 32
	.type	HplAtm128Timer0AsyncP$compare, @object
	.size	HplAtm128Timer0AsyncP$compare, 8000
HplAtm128Timer0AsyncP$compare:
	.zero	8000
	.globl	HplAtm128Timer0AsyncP$overflow
	.align 32
	.type	HplAtm128Timer0AsyncP$overflow, @object
	.size	HplAtm128Timer0AsyncP$overflow, 8000
HplAtm128Timer0AsyncP$overflow:
	.zero	8000
	.globl	AlarmToTimerC$0$m_dt
	.align 32
	.type	AlarmToTimerC$0$m_dt, @object
	.size	AlarmToTimerC$0$m_dt, 8000
AlarmToTimerC$0$m_dt:
	.zero	8000
	.globl	AlarmToTimerC$0$m_oneshot
	.align 32
	.type	AlarmToTimerC$0$m_oneshot, @object
	.size	AlarmToTimerC$0$m_oneshot, 1000
AlarmToTimerC$0$m_oneshot:
	.zero	1000
	.globl	VirtualizeTimerC$0$m_timers
	.align 32
	.type	VirtualizeTimerC$0$m_timers, @object
	.size	VirtualizeTimerC$0$m_timers, 72000
VirtualizeTimerC$0$m_timers:
	.zero	72000
	.globl	TossimPacketModelC$initialized
	.align 32
	.type	TossimPacketModelC$initialized, @object
	.size	TossimPacketModelC$initialized, 1000
TossimPacketModelC$initialized:
	.zero	1000
	.globl	TossimPacketModelC$running
	.align 32
	.type	TossimPacketModelC$running, @object
	.size	TossimPacketModelC$running, 1000
TossimPacketModelC$running:
	.zero	1000
	.globl	TossimPacketModelC$backoffCount
	.align 32
	.type	TossimPacketModelC$backoffCount, @object
	.size	TossimPacketModelC$backoffCount, 1000
TossimPacketModelC$backoffCount:
	.zero	1000
	.globl	TossimPacketModelC$neededFreeSamples
	.align 32
	.type	TossimPacketModelC$neededFreeSamples, @object
	.size	TossimPacketModelC$neededFreeSamples, 1000
TossimPacketModelC$neededFreeSamples:
	.zero	1000
	.globl	TossimPacketModelC$sending
	.align 32
	.type	TossimPacketModelC$sending, @object
	.size	TossimPacketModelC$sending, 8000
TossimPacketModelC$sending:
	.zero	8000
	.globl	TossimPacketModelC$transmitting
	.align 32
	.type	TossimPacketModelC$transmitting, @object
	.size	TossimPacketModelC$transmitting, 1000
TossimPacketModelC$transmitting:
	.zero	1000
	.globl	TossimPacketModelC$sendingLength
	.align 32
	.type	TossimPacketModelC$sendingLength, @object
	.size	TossimPacketModelC$sendingLength, 1000
TossimPacketModelC$sendingLength:
	.zero	1000
	.globl	TossimPacketModelC$destNode
	.align 32
	.type	TossimPacketModelC$destNode, @object
	.size	TossimPacketModelC$destNode, 4000
TossimPacketModelC$destNode:
	.zero	4000
	.globl	TossimPacketModelC$sendEvent
	.align 32
	.type	TossimPacketModelC$sendEvent, @object
	.size	TossimPacketModelC$sendEvent, 48000
TossimPacketModelC$sendEvent:
	.zero	48000
	.globl	TossimPacketModelC$error
	.align 32
	.type	TossimPacketModelC$error, @object
	.size	TossimPacketModelC$error, 1000
TossimPacketModelC$error:
	.zero	1000
	.globl	CpmModelC$outgoing
	.align 32
	.type	CpmModelC$outgoing, @object
	.size	CpmModelC$outgoing, 8000
CpmModelC$outgoing:
	.zero	8000
	.globl	CpmModelC$requestAck
	.align 32
	.type	CpmModelC$requestAck, @object
	.size	CpmModelC$requestAck, 1000
CpmModelC$requestAck:
	.zero	1000
	.globl	CpmModelC$receiving
	.align 32
	.type	CpmModelC$receiving, @object
	.size	CpmModelC$receiving, 1000
CpmModelC$receiving:
	.zero	1000
	.globl	CpmModelC$outstandingReceptionHead
	.align 32
	.type	CpmModelC$outstandingReceptionHead, @object
	.size	CpmModelC$outstandingReceptionHead, 8000
CpmModelC$outstandingReceptionHead:
	.zero	8000
	.globl	CpmModelC$clearThreshold
	.align 32
	.type	CpmModelC$clearThreshold, @object
	.size	CpmModelC$clearThreshold, 8000
CpmModelC$clearThreshold:
	.zero	8000
	.globl	ActiveMessageAddressC$set
	.align 32
	.type	ActiveMessageAddressC$set, @object
	.size	ActiveMessageAddressC$set, 1000
ActiveMessageAddressC$set:
	.zero	1000
	.globl	ActiveMessageAddressC$addr
	.align 32
	.type	ActiveMessageAddressC$addr, @object
	.size	ActiveMessageAddressC$addr, 2000
ActiveMessageAddressC$addr:
	.zero	2000
	.globl	DsrControlP$0$nextIdent
	.align 32
	.type	DsrControlP$0$nextIdent, @object
	.size	DsrControlP$0$nextIdent, 1000
DsrControlP$0$nextIdent:
	.zero	1000
	.globl	DsrControlP$0$retriesLeft
	.align 32
	.type	DsrControlP$0$retriesLeft, @object
	.size	DsrControlP$0$retriesLeft, 40000
DsrControlP$0$retriesLeft:
	.zero	40000
	.globl	BitVectorC$4$m_bits
	.align 32
	.type	BitVectorC$4$m_bits, @object
	.size	BitVectorC$4$m_bits, 32000
BitVectorC$4$m_bits:
	.zero	32000
	.globl	IndexedAllocBitsP$0$free
	.align 32
	.type	IndexedAllocBitsP$0$free, @object
	.size	IndexedAllocBitsP$0$free, 1000
IndexedAllocBitsP$0$free:
	.zero	1000
	.globl	IndexedAllocBitsP$0$size
	.align 32
	.type	IndexedAllocBitsP$0$size, @object
	.size	IndexedAllocBitsP$0$size, 1000
IndexedAllocBitsP$0$size:
	.zero	1000
	.globl	GraphSparseP$0$vSize
	.align 32
	.type	GraphSparseP$0$vSize, @object
	.size	GraphSparseP$0$vSize, 1000
GraphSparseP$0$vSize:
	.zero	1000
	.globl	GraphSparseP$0$v
	.align 32
	.type	GraphSparseP$0$v, @object
	.size	GraphSparseP$0$v, 20000
GraphSparseP$0$v:
	.zero	20000
	.globl	GraphSparseP$0$e
	.align 32
	.type	GraphSparseP$0$e, @object
	.size	GraphSparseP$0$e, 500000
GraphSparseP$0$e:
	.zero	500000
	.globl	PriorityQueueP$0$size
	.align 32
	.type	PriorityQueueP$0$size, @object
	.size	PriorityQueueP$0$size, 1000
PriorityQueueP$0$size:
	.zero	1000
	.globl	PriorityQueueP$0$ai
	.align 32
	.type	PriorityQueueP$0$ai, @object
	.size	PriorityQueueP$0$ai, 20000
PriorityQueueP$0$ai:
	.zero	20000
	.globl	PriorityQueueP$0$hp
	.align 32
	.type	PriorityQueueP$0$hp, @object
	.size	PriorityQueueP$0$hp, 20000
PriorityQueueP$0$hp:
	.zero	20000
	.globl	SourceShortestPathP$0$spt
	.align 32
	.type	SourceShortestPathP$0$spt, @object
	.size	SourceShortestPathP$0$spt, 20000
SourceShortestPathP$0$spt:
	.zero	20000
	.globl	SourceShortestPathP$0$fringe
	.align 32
	.type	SourceShortestPathP$0$fringe, @object
	.size	SourceShortestPathP$0$fringe, 20000
SourceShortestPathP$0$fringe:
	.zero	20000
	.globl	SourceShortestPathP$0$weight
	.align 32
	.type	SourceShortestPathP$0$weight, @object
	.size	SourceShortestPathP$0$weight, 20000
SourceShortestPathP$0$weight:
	.zero	20000
	.globl	SourceShortestPathP$0$lastSrc
	.align 32
	.type	SourceShortestPathP$0$lastSrc, @object
	.size	SourceShortestPathP$0$lastSrc, 1000
SourceShortestPathP$0$lastSrc:
	.zero	1000
	.globl	SourceShortestPathP$0$rebuildNeeded
	.align 32
	.type	SourceShortestPathP$0$rebuildNeeded, @object
	.size	SourceShortestPathP$0$rebuildNeeded, 1000
SourceShortestPathP$0$rebuildNeeded:
	.zero	1000
	.globl	SourceShortestPathP$0$lastDest
	.align 32
	.type	SourceShortestPathP$0$lastDest, @object
	.size	SourceShortestPathP$0$lastDest, 1000
SourceShortestPathP$0$lastDest:
	.zero	1000
	.globl	SourceShortestPathP$0$foundDest
	.align 32
	.type	SourceShortestPathP$0$foundDest, @object
	.size	SourceShortestPathP$0$foundDest, 1000
SourceShortestPathP$0$foundDest:
	.zero	1000
	.globl	SourceShortestPathP$0$buildingTree
	.align 32
	.type	SourceShortestPathP$0$buildingTree, @object
	.size	SourceShortestPathP$0$buildingTree, 1000
SourceShortestPathP$0$buildingTree:
	.zero	1000
	.globl	BitVectorC$2$m_bits
	.align 32
	.type	BitVectorC$2$m_bits, @object
	.size	BitVectorC$2$m_bits, 3000
BitVectorC$2$m_bits:
	.zero	3000
	.globl	BitVectorC$3$m_bits
	.align 32
	.type	BitVectorC$3$m_bits, @object
	.size	BitVectorC$3$m_bits, 3000
BitVectorC$3$m_bits:
	.zero	3000
	.globl	LruDataCacheP$1$cache
	.align 32
	.type	LruDataCacheP$1$cache, @object
	.size	LruDataCacheP$1$cache, 128000
LruDataCacheP$1$cache:
	.zero	128000
	.globl	LruDataCacheP$1$first
	.align 32
	.type	LruDataCacheP$1$first, @object
	.size	LruDataCacheP$1$first, 1000
LruDataCacheP$1$first:
	.zero	1000
	.globl	LruDataCacheP$1$count
	.align 32
	.type	LruDataCacheP$1$count, @object
	.size	LruDataCacheP$1$count, 1000
LruDataCacheP$1$count:
	.zero	1000
	.globl	LruDataCacheP$2$cache
	.align 32
	.type	LruDataCacheP$2$cache, @object
	.size	LruDataCacheP$2$cache, 32000
LruDataCacheP$2$cache:
	.zero	32000
	.globl	LruDataCacheP$2$first
	.align 32
	.type	LruDataCacheP$2$first, @object
	.size	LruDataCacheP$2$first, 1000
LruDataCacheP$2$first:
	.zero	1000
	.globl	LruDataCacheP$2$count
	.align 32
	.type	LruDataCacheP$2$count, @object
	.size	LruDataCacheP$2$count, 1000
LruDataCacheP$2$count:
	.zero	1000
	.globl	DataTimerP$0$data
	.align 32
	.type	DataTimerP$0$data, @object
	.size	DataTimerP$0$data, 16000
DataTimerP$0$data:
	.zero	16000
	.globl	DataTimerP$0$delay
	.align 32
	.type	DataTimerP$0$delay, @object
	.size	DataTimerP$0$delay, 16000
DataTimerP$0$delay:
	.zero	16000
	.globl	DataTimerP$0$size
	.align 32
	.type	DataTimerP$0$size, @object
	.size	DataTimerP$0$size, 1000
DataTimerP$0$size:
	.zero	1000
	.globl	DataTimerP$0$startTime
	.align 32
	.type	DataTimerP$0$startTime, @object
	.size	DataTimerP$0$startTime, 8000
DataTimerP$0$startTime:
	.zero	8000
	.globl	BitVectorC$0$m_bits
	.align 32
	.type	BitVectorC$0$m_bits, @object
	.size	BitVectorC$0$m_bits, 5000
BitVectorC$0$m_bits:
	.zero	5000
	.globl	BitVectorC$1$m_bits
	.align 32
	.type	BitVectorC$1$m_bits, @object
	.size	BitVectorC$1$m_bits, 5000
BitVectorC$1$m_bits:
	.zero	5000
	.globl	AMQueueImplP$0$current
	.align 32
	.type	AMQueueImplP$0$current, @object
	.size	AMQueueImplP$0$current, 1000
AMQueueImplP$0$current:
	.zero	1000
	.globl	AMQueueImplP$0$queue
	.align 32
	.type	AMQueueImplP$0$queue, @object
	.size	AMQueueImplP$0$queue, 16000
AMQueueImplP$0$queue:
	.zero	16000
	.globl	AMQueueImplP$0$cancelMask
	.align 32
	.type	AMQueueImplP$0$cancelMask, @object
	.size	AMQueueImplP$0$cancelMask, 1000
AMQueueImplP$0$cancelMask:
	.zero	1000
	.text
	.type	init_heap, @function
init_heap:
.LFB0:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 0
	mov	edx, 511
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR 16[rax], edx
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 16[rax]
	cdqe
	sal	eax, 4
	mov	edi, eax
	call	malloc@PLT
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rdx], rax
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	init_heap, .-init_heap
	.type	expand_heap, @function
expand_heap:
.LFB1:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	add	eax, eax
	add	eax, 1
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	eax, 4
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	cdqe
	sal	eax, 4
	mov	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -12[rbp]
	mov	DWORD PTR 16[rax], edx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE1:
	.size	expand_heap, .-expand_heap
	.type	heap_insert, @function
heap_insert:
.LFB2:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 16[rax]
	cmp	DWORD PTR -4[rbp], eax
	jne	.L4
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	expand_heap
.L4:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rdx], rax
	mov	edx, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	up_heap
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE2:
	.size	heap_insert, .-heap_insert
	.type	is_empty, @function
is_empty:
.LFB3:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	sete	al
	movzx	eax, al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE3:
	.size	is_empty, .-is_empty
	.type	heap_is_empty, @function
heap_is_empty:
.LFB4:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	is_empty
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE4:
	.size	heap_is_empty, .-heap_is_empty
	.type	heap_get_min_key, @function
heap_get_min_key:
.LFB5:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	is_empty
	test	eax, eax
	je	.L10
	mov	rax, -1
	jmp	.L11
.L10:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rax, QWORD PTR 8[rax]
.L11:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE5:
	.size	heap_get_min_key, .-heap_get_min_key
	.type	sim_log_eq, @function
sim_log_eq:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	sete	al
	movzx	eax, al
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	sim_log_eq, .-sim_log_eq
	.type	sim_log_hash, @function
sim_log_hash:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -16[rbp], 0
	jmp	.L15
.L16:
	mov	eax, DWORD PTR -16[rbp]
	sal	eax, 6
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	add	edx, eax
	mov	eax, DWORD PTR -16[rbp]
	sal	eax, 16
	add	eax, edx
	sub	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -16[rbp], eax
.L15:
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 1[rax]
	mov	QWORD PTR -8[rbp], rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	jne	.L16
	mov	eax, DWORD PTR -16[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	sim_log_hash, .-sim_log_hash
	.section	.rodata
.LC0:
	.string	"w"
	.text
	.type	sim_log_init, @function
sim_log_init:
.LFB8:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	lea	rdx, sim_log_eq[rip]
	lea	rsi, sim_log_hash[rip]
	mov	edi, 128
	call	create_hashtable@PLT
	mov	QWORD PTR channelTable[rip], rax
	mov	DWORD PTR -20[rbp], 0
	jmp	.L19
.L20:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	DWORD PTR [rdx+rax], 1
	mov	edi, 8
	call	malloc@PLT
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	mov	rcx, rdx
	sal	rcx, 4
	lea	rdx, outputs[rip+8]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rbx, QWORD PTR [rdx+rax]
	lea	rsi, .LC0[rip]
	mov	edi, 1
	call	fdopen@PLT
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -20[rbp], 1
.L19:
	cmp	DWORD PTR -20[rbp], 405
	jle	.L20
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	sim_log_init, .-sim_log_init
	.type	sim_noise_hash, @function
sim_noise_hash:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -16[rbp], 0
	mov	DWORD PTR -12[rbp], 0
	jmp	.L22
.L23:
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	edx, al
	mov	eax, DWORD PTR -16[rbp]
	sal	eax, 6
	add	edx, eax
	mov	eax, DWORD PTR -16[rbp]
	sal	eax, 16
	add	eax, edx
	sub	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -16[rbp], eax
	add	DWORD PTR -12[rbp], 1
.L22:
	cmp	DWORD PTR -12[rbp], 19
	jle	.L23
	mov	eax, DWORD PTR -16[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	sim_noise_hash, .-sim_noise_hash
	.type	sim_noise_eq, @function
sim_noise_eq:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 20
	mov	rsi, rcx
	mov	rdi, rax
	call	memcmp@PLT
	test	eax, eax
	sete	al
	movzx	eax, al
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	sim_noise_eq, .-sim_noise_eq
	.type	SimMoteP$SimMote$isOn, @function
SimMoteP$SimMote$isOn:
.LFB11:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, SimMoteP$isOn[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	SimMoteP$SimMote$isOn, .-SimMoteP$SimMote$isOn
	.type	sim_log_add_channel, @function
sim_log_add_channel:
.LFB12:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR channelTable[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L30
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	eax, 1
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	strlen@PLT
	mov	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	mov	edi, 24
	call	malloc@PLT
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 8[rax], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 12[rax], 8
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 12[rax]
	cdqe
	sal	eax, 3
	mov	edi, eax
	call	malloc@PLT
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR 16[rdx], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 12[rax]
	cdqe
	lea	edx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	rax, QWORD PTR channelTable[rip]
	mov	rdx, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	hashtable_insert@PLT
.L30:
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 12[rax]
	cmp	edx, eax
	jne	.L31
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 12[rax]
	add	eax, eax
	mov	DWORD PTR -28[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	eax, 3
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 12[rax]
	cdqe
	lea	edx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -28[rbp]
	mov	DWORD PTR 12[rax], edx
.L31:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 8[rax]
	cdqe
	sal	rax, 3
	add	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 8[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR 8[rax], edx
	call	sim_log_commit_change
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	sim_log_add_channel, .-sim_log_add_channel
	.type	sim_log_remove_channel, @function
sim_log_remove_channel:
.LFB13:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR channelTable[rip]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 0
	jne	.L33
	mov	eax, 0
	jmp	.L34
.L33:
	mov	DWORD PTR -20[rbp], 0
	jmp	.L35
.L37:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	jne	.L36
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR 8[rax]
	mov	edx, DWORD PTR -20[rbp]
	add	edx, 1
	sub	eax, edx
	mov	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	rcx, QWORD PTR 16[rax]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	add	rax, 1
	sal	rax, 3
	add	rcx, rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, QWORD PTR 16[rax]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 3
	add	rax, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR 8[rax]
	cdqe
	sal	rax, 3
	sub	rax, 8
	add	rax, rdx
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR 8[rax]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR 8[rax], edx
.L36:
	add	DWORD PTR -20[rbp], 1
.L35:
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR 8[rax]
	cmp	DWORD PTR -20[rbp], eax
	jl	.L37
	mov	eax, 1
.L34:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	sim_log_remove_channel, .-sim_log_remove_channel
	.type	sim_gain_allocate_link, @function
sim_gain_allocate_link:
.LFB14:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	edi, 24
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC1[rip]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	sim_gain_allocate_link, .-sim_gain_allocate_link
	.type	RandomInitialise, @function
RandomInitialise:
.LFB15:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -52[rbp], edi
	mov	DWORD PTR -56[rbp], esi
	cmp	DWORD PTR -52[rbp], 0
	js	.L41
	cmp	DWORD PTR -52[rbp], 31328
	jg	.L41
	cmp	DWORD PTR -56[rbp], 0
	js	.L41
	cmp	DWORD PTR -56[rbp], 30081
	jle	.L42
.L41:
	mov	DWORD PTR -52[rbp], 1802
	mov	DWORD PTR -56[rbp], 9373
.L42:
	mov	eax, DWORD PTR -52[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -1189002245
	shr	rdx, 32
	add	edx, eax
	sar	edx, 7
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	movsx	rdx, eax
	imul	rdx, rdx, -1189002245
	shr	rdx, 32
	add	edx, eax
	sar	edx, 7
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	ecx, edx, 177
	sub	eax, ecx
	mov	edx, eax
	lea	eax, 2[rdx]
	mov	DWORD PTR -40[rbp], eax
	mov	eax, DWORD PTR -52[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -1189002245
	shr	rdx, 32
	add	edx, eax
	sar	edx, 7
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	ecx, edx, 177
	sub	eax, ecx
	mov	edx, eax
	lea	eax, 2[rdx]
	mov	DWORD PTR -36[rbp], eax
	mov	eax, DWORD PTR -56[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, 1626496491
	shr	rdx, 32
	sar	edx, 6
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	movsx	rdx, eax
	imul	rdx, rdx, -1206451487
	shr	rdx, 32
	add	edx, eax
	sar	edx, 7
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	ecx, edx, 178
	sub	eax, ecx
	mov	edx, eax
	lea	eax, 1[rdx]
	mov	DWORD PTR -32[rbp], eax
	mov	eax, DWORD PTR -56[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, 1626496491
	shr	rdx, 32
	sar	edx, 6
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 169
	sub	eax, edx
	mov	DWORD PTR -28[rbp], eax
	mov	DWORD PTR -44[rbp], 0
	jmp	.L43
.L47:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC3[rip]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -24[rbp], 0
	jmp	.L44
.L46:
	mov	eax, DWORD PTR -40[rbp]
	imul	eax, DWORD PTR -36[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -1223705765
	shr	rdx, 32
	add	edx, eax
	sar	edx, 7
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	ecx, edx, 179
	sub	eax, ecx
	mov	edx, eax
	mov	eax, edx
	imul	eax, DWORD PTR -32[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -1223705765
	shr	rdx, 32
	add	edx, eax
	sar	edx, 7
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	mov	DWORD PTR -20[rbp], edx
	mov	edx, DWORD PTR -20[rbp]
	imul	edx, edx, 179
	sub	eax, edx
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -36[rbp]
	mov	DWORD PTR -40[rbp], eax
	mov	eax, DWORD PTR -32[rbp]
	mov	DWORD PTR -36[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	mov	DWORD PTR -32[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	imul	eax, eax, 53
	add	eax, 1
	movsx	rdx, eax
	imul	rdx, rdx, 1626496491
	shr	rdx, 32
	sar	edx, 6
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	mov	DWORD PTR -28[rbp], edx
	mov	edx, DWORD PTR -28[rbp]
	imul	edx, edx, 169
	sub	eax, edx
	mov	DWORD PTR -28[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	imul	eax, DWORD PTR -20[rbp]
	cdq
	shr	edx, 26
	add	eax, edx
	and	eax, 63
	sub	eax, edx
	cmp	eax, 31
	jle	.L45
	movsd	xmm0, QWORD PTR -16[rbp]
	addsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -16[rbp], xmm0
.L45:
	movsd	xmm1, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -24[rbp], 1
.L44:
	cmp	DWORD PTR -24[rbp], 23
	jle	.L46
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, randU[rip]
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -44[rbp], 1
.L43:
	cmp	DWORD PTR -44[rbp], 96
	jle	.L47
	movsd	xmm0, QWORD PTR .LC4[rip]
	movsd	QWORD PTR randC[rip], xmm0
	movsd	xmm0, QWORD PTR .LC5[rip]
	movsd	QWORD PTR randCD[rip], xmm0
	movsd	xmm0, QWORD PTR .LC6[rip]
	movsd	QWORD PTR randCM[rip], xmm0
	mov	DWORD PTR i97[rip], 97
	mov	DWORD PTR j97[rip], 33
	mov	DWORD PTR test[rip], 1
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	RandomInitialise, .-RandomInitialise
	.type	sim_noise_alarm, @function
sim_noise_alarm:
.LFB16:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR dummy[rip], 5
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	sim_noise_alarm, .-sim_noise_alarm
	.type	getHeader, @function
getHeader:
.LFB17:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 7
	sub	rax, 7
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	getHeader, .-getHeader
	.section	.rodata
	.align 8
.LC7:
	.string	"Delivering packet to %i at %s\n"
.LC8:
	.string	"Packet"
	.text
	.type	TossimActiveMessageC$active_message_deliver_handle, @function
TossimActiveMessageC$active_message_deliver_handle:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	QWORD PTR -24[rbp], rax
	call	sim_time_string
	mov	rbx, rax
	call	sim_node
	mov	r8, rbx
	mov	ecx, eax
	lea	rdx, .LC7[rip]
	lea	rsi, .LC8[rip]
	mov	edi, 109
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Model$receive
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	TossimActiveMessageC$active_message_deliver_handle, .-TossimActiveMessageC$active_message_deliver_handle
	.type	TossimActiveMessageC$allocate_deliver_event, @function
TossimActiveMessageC$allocate_deliver_event:
.LFB19:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	edi, 48
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, TossimActiveMessageC$active_message_deliver_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, sim_queue_cleanup_event[rip]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 17[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 16[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR 24[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	TossimActiveMessageC$allocate_deliver_event, .-TossimActiveMessageC$allocate_deliver_event
	.type	TossimActiveMessageC$Receive$default$receive, @function
TossimActiveMessageC$Receive$default$receive:
.LFB20:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	TossimActiveMessageC$Receive$default$receive, .-TossimActiveMessageC$Receive$default$receive
	.type	TossimActiveMessageC$Receive$receive, @function
TossimActiveMessageC$Receive$receive:
.LFB21:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 4
	je	.L57
	cmp	eax, 48
	je	.L58
	jmp	.L62
.L57:
	movzx	ecx, BYTE PTR -24[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 4
	call	PacketEngineP$SubReceive$receive
	mov	QWORD PTR -8[rbp], rax
	jmp	.L60
.L58:
	movzx	ecx, BYTE PTR -24[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 48
	call	PacketEngineP$SubReceive$receive
	mov	QWORD PTR -8[rbp], rax
	jmp	.L60
.L62:
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	edi, eax
	call	TossimActiveMessageC$Receive$default$receive
	mov	QWORD PTR -8[rbp], rax
	nop
.L60:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	TossimActiveMessageC$Receive$receive, .-TossimActiveMessageC$Receive$receive
	.type	PoolP$0$Pool$empty, @function
PoolP$0$Pool$empty:
.LFB22:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	PoolP$0$Pool$empty, .-PoolP$0$Pool$empty
	.type	PacketEngineP$ReceivePool$empty, @function
PacketEngineP$ReceivePool$empty:
.LFB23:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PoolP$0$Pool$empty
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	PacketEngineP$ReceivePool$empty, .-PacketEngineP$ReceivePool$empty
	.type	PoolP$0$Pool$get, @function
PoolP$0$Pool$get:
.LFB24:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L68
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, PoolP$0$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -24[rbp], rax
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, PoolP$0$queue[rip]
	mov	QWORD PTR [rdx+rax], 0
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, PoolP$0$free[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, PoolP$0$index[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	jne	.L69
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	mov	BYTE PTR [rax+rdx], 0
.L69:
	mov	rax, QWORD PTR -24[rbp]
	jmp	.L70
.L68:
	mov	eax, 0
.L70:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	PoolP$0$Pool$get, .-PoolP$0$Pool$get
	.type	PacketEngineP$ReceivePool$get, @function
PacketEngineP$ReceivePool$get:
.LFB25:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PoolP$0$Pool$get
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	PacketEngineP$ReceivePool$get, .-PacketEngineP$ReceivePool$get
	.type	LruDataCacheP$0$DataCache$size, @function
LruDataCacheP$0$DataCache$size:
.LFB26:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	LruDataCacheP$0$DataCache$size, .-LruDataCacheP$0$DataCache$size
	.type	PacketEngineP$SendQueue$size, @function
PacketEngineP$SendQueue$size:
.LFB27:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	LruDataCacheP$0$DataCache$size
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	PacketEngineP$SendQueue$size, .-PacketEngineP$SendQueue$size
	.type	PoolP$0$Pool$size, @function
PoolP$0$Pool$size:
.LFB28:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	PoolP$0$Pool$size, .-PoolP$0$Pool$size
	.type	PacketEngineP$ReceivePool$size, @function
PacketEngineP$ReceivePool$size:
.LFB29:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PoolP$0$Pool$size
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	PacketEngineP$ReceivePool$size, .-PacketEngineP$ReceivePool$size
	.type	PacketEngineP$moveFreeIndex, @function
PacketEngineP$moveFreeIndex:
.LFB30:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	add	rax, rdx
	mov	esi, 1
	mov	rdi, rax
	call	PacketEngineP$moveIndex
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	PacketEngineP$moveFreeIndex, .-PacketEngineP$moveFreeIndex
	.type	SimSchedulerBasicP$isWaiting, @function
SimSchedulerBasicP$isWaiting:
.LFB31:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, [rax+rcx]
	lea	rax, SimSchedulerBasicP$m_next[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, -1
	jne	.L83
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_tail[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -4[rbp], al
	jne	.L84
.L83:
	mov	eax, 1
	jmp	.L85
.L84:
	mov	eax, 0
.L85:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	SimSchedulerBasicP$isWaiting, .-SimSchedulerBasicP$isWaiting
	.type	SimSchedulerBasicP$pushTask, @function
SimSchedulerBasicP$pushTask:
.LFB32:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SimSchedulerBasicP$isWaiting
	test	al, al
	jne	.L88
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, -1
	jne	.L89
	call	sim_node
	lea	rcx, SimSchedulerBasicP$m_head[rip]
	movzx	edx, BYTE PTR -20[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rcx, SimSchedulerBasicP$m_tail[rip]
	movzx	edx, BYTE PTR -20[rbp]
	mov	BYTE PTR [rax+rcx], dl
	jmp	.L90
.L89:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_tail[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rdx, rax
	lea	rax, SimSchedulerBasicP$m_next[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	BYTE PTR [rdx], al
	call	sim_node
	lea	rcx, SimSchedulerBasicP$m_tail[rip]
	movzx	edx, BYTE PTR -20[rbp]
	mov	BYTE PTR [rax+rcx], dl
.L90:
	mov	eax, 1
	jmp	.L91
.L88:
	mov	eax, 0
.L91:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	SimSchedulerBasicP$pushTask, .-SimSchedulerBasicP$pushTask
	.type	SimSchedulerBasicP$sim_config_task_latency, @function
SimSchedulerBasicP$sim_config_task_latency:
.LFB33:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 100
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	SimSchedulerBasicP$sim_config_task_latency, .-SimSchedulerBasicP$sim_config_task_latency
	.type	TossimActiveMessageC$Snoop$default$receive, @function
TossimActiveMessageC$Snoop$default$receive:
.LFB34:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	TossimActiveMessageC$Snoop$default$receive, .-TossimActiveMessageC$Snoop$default$receive
	.type	TossimActiveMessageC$Snoop$receive, @function
TossimActiveMessageC$Snoop$receive:
.LFB35:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 4
	je	.L97
	cmp	eax, 48
	je	.L98
	jmp	.L102
.L97:
	movzx	ecx, BYTE PTR -24[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 4
	call	PacketEngineP$SubReceive$receive
	mov	QWORD PTR -8[rbp], rax
	jmp	.L100
.L98:
	movzx	ecx, BYTE PTR -24[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 48
	call	PacketEngineP$SubReceive$receive
	mov	QWORD PTR -8[rbp], rax
	jmp	.L100
.L102:
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	edi, eax
	call	TossimActiveMessageC$Snoop$default$receive
	mov	QWORD PTR -8[rbp], rax
	nop
.L100:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	TossimActiveMessageC$Snoop$receive, .-TossimActiveMessageC$Snoop$receive
	.type	SimSchedulerBasicP$sim_scheduler_event_handle, @function
SimSchedulerBasicP$sim_scheduler_event_handle:
.LFB39:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	sim_node
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_pending[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	SimSchedulerBasicP$Scheduler$runNextTask
	test	al, al
	je	.L105
	call	SimSchedulerBasicP$sim_scheduler_submit_event
.L105:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE39:
	.size	SimSchedulerBasicP$sim_scheduler_event_handle, .-SimSchedulerBasicP$sim_scheduler_event_handle
	.type	SimSchedulerBasicP$sim_scheduler_event_init, @function
SimSchedulerBasicP$sim_scheduler_event_init:
.LFB40:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	sim_node
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 16[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 24[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, sim_queue_cleanup_none[rip]
	mov	QWORD PTR 40[rax], rdx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE40:
	.size	SimSchedulerBasicP$sim_scheduler_event_init, .-SimSchedulerBasicP$sim_scheduler_event_init
	.section	.rodata
.LC9:
	.string	"Initializing scheduler.\n"
.LC10:
	.string	"Scheduler"
	.text
	.type	SimSchedulerBasicP$Scheduler$init, @function
SimSchedulerBasicP$Scheduler$init:
.LFB41:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdx, .LC9[rip]
	lea	rsi, .LC10[rip]
	mov	edi, 96
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, SimSchedulerBasicP$m_next[rip]
	add	rax, rdx
	mov	edx, 11
	mov	esi, 255
	mov	rdi, rax
	call	memset@PLT
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	mov	BYTE PTR [rax+rdx], -1
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_tail[rip]
	mov	BYTE PTR [rax+rdx], -1
	call	sim_node
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_pending[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event[rip]
	add	rax, rdx
	mov	rdi, rax
	call	SimSchedulerBasicP$sim_scheduler_event_init
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE41:
	.size	SimSchedulerBasicP$Scheduler$init, .-SimSchedulerBasicP$Scheduler$init
	.type	SimMainP$Scheduler$init, @function
SimMainP$Scheduler$init:
.LFB42:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	SimSchedulerBasicP$Scheduler$init
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE42:
	.size	SimMainP$Scheduler$init, .-SimMainP$Scheduler$init
	.type	SimSchedulerBasicP$popTask, @function
SimSchedulerBasicP$popTask:
.LFB43:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, -1
	je	.L110
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	r12d, al
	call	sim_node
	mov	rdx, rax
	movsx	rcx, r12d
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, SimSchedulerBasicP$m_next[rip]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	lea	rcx, SimSchedulerBasicP$m_head[rip]
	mov	BYTE PTR [rdx+rcx], al
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, -1
	jne	.L111
	call	sim_node
	lea	rdx, SimSchedulerBasicP$m_tail[rip]
	mov	BYTE PTR [rax+rdx], -1
.L111:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, [rax+rcx]
	lea	rax, SimSchedulerBasicP$m_next[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], -1
	movzx	eax, BYTE PTR -17[rbp]
	jmp	.L112
.L110:
	mov	eax, -1
.L112:
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE43:
	.size	SimSchedulerBasicP$popTask, .-SimSchedulerBasicP$popTask
	.type	PacketEngineP$msgAdded$postTask, @function
PacketEngineP$msgAdded$postTask:
.LFB44:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 0
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE44:
	.size	PacketEngineP$msgAdded$postTask, .-PacketEngineP$msgAdded$postTask
	.type	PacketEngineP$moveAddedIndex, @function
PacketEngineP$moveAddedIndex:
.LFB45:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	add	rax, rdx
	mov	esi, 2
	mov	rdi, rax
	call	PacketEngineP$moveIndex
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE45:
	.size	PacketEngineP$moveAddedIndex, .-PacketEngineP$moveAddedIndex
	.type	PacketEngineP$AMPacket$type, @function
PacketEngineP$AMPacket$type:
.LFB46:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE46:
	.size	PacketEngineP$AMPacket$type, .-PacketEngineP$AMPacket$type
	.type	PacketEngineP$lid, @function
PacketEngineP$lid:
.LFB47:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	PacketEngineP$AMPacket$type
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE47:
	.size	PacketEngineP$lid, .-PacketEngineP$lid
	.section	.rodata
.LC11:
	.string	"DSR: Pkt %u: Single snooped!\n"
.LC12:
	.string	"DsrControlP"
	.text
	.type	DsrControlP$0$SinglePacketEngine$snoopAdded, @function
DsrControlP$0$SinglePacketEngine$snoopAdded:
.LFB48:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC11[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 263
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$receiveAdded
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE48:
	.size	DsrControlP$0$SinglePacketEngine$snoopAdded, .-DsrControlP$0$SinglePacketEngine$snoopAdded
	.type	DsrControlP$0$SingleDsrPacketEngine$snoopAdded, @function
DsrControlP$0$SingleDsrPacketEngine$snoopAdded:
.LFB49:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE49:
	.size	DsrControlP$0$SingleDsrPacketEngine$snoopAdded, .-DsrControlP$0$SingleDsrPacketEngine$snoopAdded
	.section	.rodata
.LC13:
	.string	"DSR: Pkt %u: DSR snooped!\n"
	.text
	.type	DsrControlP$0$DsrPacketEngine$snoopAdded, @function
DsrControlP$0$DsrPacketEngine$snoopAdded:
.LFB50:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC13[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 288
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$receiveAdded
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE50:
	.size	DsrControlP$0$DsrPacketEngine$snoopAdded, .-DsrControlP$0$DsrPacketEngine$snoopAdded
	.section	.rodata
	.align 8
.LC14:
	.string	"PE: Trying to use invalid lower AM type %hhu!\n"
.LC15:
	.string	"PacketEngineP"
	.text
	.type	PacketEngineP$PacketEngine$default$snoopAdded, @function
PacketEngineP$PacketEngine$default$snoopAdded:
.LFB51:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 138
	mov	eax, 0
	call	sim_log_error
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$drop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE51:
	.size	PacketEngineP$PacketEngine$default$snoopAdded, .-PacketEngineP$PacketEngine$default$snoopAdded
	.type	PacketEngineP$PacketEngine$snoopAdded, @function
PacketEngineP$PacketEngine$snoopAdded:
.LFB52:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	eax, 4
	je	.L125
	cmp	eax, 48
	je	.L126
	jmp	.L129
.L125:
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$snoopAdded
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$snoopAdded
	jmp	.L128
.L126:
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$snoopAdded
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$snoopAdded
	jmp	.L128
.L129:
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$default$snoopAdded
	nop
.L128:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE52:
	.size	PacketEngineP$PacketEngine$snoopAdded, .-PacketEngineP$PacketEngine$snoopAdded
	.type	DsrControlP$0$SingleDsrPacketEngine$receiveAdded, @function
DsrControlP$0$SingleDsrPacketEngine$receiveAdded:
.LFB53:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE53:
	.size	DsrControlP$0$SingleDsrPacketEngine$receiveAdded, .-DsrControlP$0$SingleDsrPacketEngine$receiveAdded
	.type	PacketEngineP$PacketEngine$default$receiveAdded, @function
PacketEngineP$PacketEngine$default$receiveAdded:
.LFB54:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 137
	mov	eax, 0
	call	sim_log_error
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$drop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE54:
	.size	PacketEngineP$PacketEngine$default$receiveAdded, .-PacketEngineP$PacketEngine$default$receiveAdded
	.type	PacketEngineP$PacketEngine$receiveAdded, @function
PacketEngineP$PacketEngine$receiveAdded:
.LFB55:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	eax, 4
	je	.L133
	cmp	eax, 48
	je	.L134
	jmp	.L137
.L133:
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$receiveAdded
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$receiveAdded
	jmp	.L136
.L134:
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$receiveAdded
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$receiveAdded
	jmp	.L136
.L137:
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$default$receiveAdded
	nop
.L136:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE55:
	.size	PacketEngineP$PacketEngine$receiveAdded, .-PacketEngineP$PacketEngine$receiveAdded
	.type	PacketEngineP$AMPacket$isForMe, @function
PacketEngineP$AMPacket$isForMe:
.LFB56:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$isForMe
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE56:
	.size	PacketEngineP$AMPacket$isForMe, .-PacketEngineP$AMPacket$isForMe
	.type	__nesc_ntoh_uint16, @function
__nesc_ntoh_uint16:
.LFB57:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	sal	eax, 8
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	or	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE57:
	.size	__nesc_ntoh_uint16, .-__nesc_ntoh_uint16
	.type	SinglePacketP$SubPacket$getPayload, @function
SinglePacketP$SubPacket$getPayload:
.LFB58:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$getPayload
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE58:
	.size	SinglePacketP$SubPacket$getPayload, .-SinglePacketP$SubPacket$getPayload
	.type	SinglePacketP$SinglePacket$destination, @function
SinglePacketP$SinglePacket$destination:
.LFB59:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, 4
	mov	rdi, rax
	call	SinglePacketP$SubPacket$getPayload
	add	rax, 2
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE59:
	.size	SinglePacketP$SinglePacket$destination, .-SinglePacketP$SinglePacket$destination
	.type	DsrControlP$0$SinglePacket$destination, @function
DsrControlP$0$SinglePacket$destination:
.LFB60:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$destination
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE60:
	.size	DsrControlP$0$SinglePacket$destination, .-DsrControlP$0$SinglePacket$destination
	.type	TossimActiveMessageC$amAddress, @function
TossimActiveMessageC$amAddress:
.LFB61:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	ActiveMessageAddressC$amAddress
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE61:
	.size	TossimActiveMessageC$amAddress, .-TossimActiveMessageC$amAddress
	.type	TossimActiveMessageC$AMPacket$address, @function
TossimActiveMessageC$AMPacket$address:
.LFB62:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	TossimActiveMessageC$amAddress
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE62:
	.size	TossimActiveMessageC$AMPacket$address, .-TossimActiveMessageC$AMPacket$address
	.type	DsrControlP$0$AMPacket$address, @function
DsrControlP$0$AMPacket$address:
.LFB63:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	TossimActiveMessageC$AMPacket$address
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE63:
	.size	DsrControlP$0$AMPacket$address, .-DsrControlP$0$AMPacket$address
	.type	DsrControlP$0$RouteCache$trackRoute, @function
DsrControlP$0$RouteCache$trackRoute:
.LFB64:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$trackRoute
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE64:
	.size	DsrControlP$0$RouteCache$trackRoute, .-DsrControlP$0$RouteCache$trackRoute
	.type	DsrControlP$0$SinglePacketEngine$send, @function
DsrControlP$0$SinglePacketEngine$send:
.LFB65:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE65:
	.size	DsrControlP$0$SinglePacketEngine$send, .-DsrControlP$0$SinglePacketEngine$send
	.type	DsrControlP$0$AMPacket$setDestination, @function
DsrControlP$0$AMPacket$setDestination:
.LFB66:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -12[rbp], ax
	movzx	edx, WORD PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setDestination
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE66:
	.size	DsrControlP$0$AMPacket$setDestination, .-DsrControlP$0$AMPacket$setDestination
	.section	.rodata
	.align 8
.LC16:
	.string	"DSR: Pkt %u: Single broadcast send packet added!\n"
	.align 8
.LC17:
	.string	"DSR: Pkt %u: Single unicast send packet added!\n"
	.align 8
.LC18:
	.string	"DSR: Pkt %u: Looking for route to %u\n"
	.text
	.type	DsrControlP$0$SinglePacketEngine$sendAdded, @function
DsrControlP$0$SinglePacketEngine$sendAdded:
.LFB67:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	cmp	ax, -1
	jne	.L159
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC16[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 258
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, 65535
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$send
	jmp	.L161
.L159:
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC17[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 259
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	edx, ax
	movzx	eax, BYTE PTR -20[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC18[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 260
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	ebx, al
	call	DsrControlP$0$AMPacket$address
	movzx	eax, al
	mov	esi, ebx
	mov	edi, eax
	call	DsrControlP$0$RouteCache$trackRoute
.L161:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE67:
	.size	DsrControlP$0$SinglePacketEngine$sendAdded, .-DsrControlP$0$SinglePacketEngine$sendAdded
	.type	DsrControlP$0$SingleDsrPacketEngine$sendAdded, @function
DsrControlP$0$SingleDsrPacketEngine$sendAdded:
.LFB68:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE68:
	.size	DsrControlP$0$SingleDsrPacketEngine$sendAdded, .-DsrControlP$0$SingleDsrPacketEngine$sendAdded
	.type	DsrControlP$0$DsrPacketEngine$send, @function
DsrControlP$0$DsrPacketEngine$send:
.LFB69:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE69:
	.size	DsrControlP$0$DsrPacketEngine$send, .-DsrControlP$0$DsrPacketEngine$send
	.type	DsrControlP$0$SourceRoute$length, @function
DsrControlP$0$SourceRoute$length:
.LFB70:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 96
	call	TlvPacketP$0$TlvSinglePacket$length
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE70:
	.size	DsrControlP$0$SourceRoute$length, .-DsrControlP$0$SourceRoute$length
	.type	pamidCombine, @function
pamidCombine:
.LFB71:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -4[rbp], -1
	jne	.L168
	movzx	eax, BYTE PTR -8[rbp]
	jmp	.L169
.L168:
	movzx	eax, BYTE PTR -4[rbp]
.L169:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE71:
	.size	pamidCombine, .-pamidCombine
	.type	DsrControlP$0$SingleDsrPacketEngine$upperType, @function
DsrControlP$0$SingleDsrPacketEngine$upperType:
.LFB72:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$upperType
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$upperType
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	pamidCombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE72:
	.size	DsrControlP$0$SingleDsrPacketEngine$upperType, .-DsrControlP$0$SingleDsrPacketEngine$upperType
	.type	PacketEngineP$PacketEngine$setUpperType, @function
PacketEngineP$PacketEngine$setUpperType:
.LFB73:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -24[rbp], dl
	mov	BYTE PTR -28[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -20[rbp], al
	jne	.L175
	movzx	ebx, BYTE PTR -28[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	esi, ebx
	mov	rdi, rax
	call	PacketEngineP$setUid
	jmp	.L172
.L175:
	nop
.L172:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE73:
	.size	PacketEngineP$PacketEngine$setUpperType, .-PacketEngineP$PacketEngine$setUpperType
	.type	DsrControlP$0$DsrPacketEngine$setUpperType, @function
DsrControlP$0$DsrPacketEngine$setUpperType:
.LFB74:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$setUpperType
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE74:
	.size	DsrControlP$0$DsrPacketEngine$setUpperType, .-DsrControlP$0$DsrPacketEngine$setUpperType
	.type	iteratorEndCombine, @function
iteratorEndCombine:
.LFB75:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	je	.L178
	cmp	BYTE PTR -8[rbp], 0
	je	.L178
	mov	eax, 1
	jmp	.L179
.L178:
	mov	eax, 0
.L179:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE75:
	.size	iteratorEndCombine, .-iteratorEndCombine
	.type	PacketEngineP$PacketWaitList$end, @function
PacketEngineP$PacketWaitList$end:
.LFB76:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -8[rbp], 40
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE76:
	.size	PacketEngineP$PacketWaitList$end, .-PacketEngineP$PacketWaitList$end
	.type	DsrControlP$0$SingleDsrPacketWaitList$end, @function
DsrControlP$0$SingleDsrPacketWaitList$end:
.LFB77:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketWaitList$end
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketWaitList$end
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	iteratorEndCombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE77:
	.size	DsrControlP$0$SingleDsrPacketWaitList$end, .-DsrControlP$0$SingleDsrPacketWaitList$end
	.type	DsrControlP$0$RouteRequest$length, @function
DsrControlP$0$RouteRequest$length:
.LFB78:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	TlvPacketP$0$TlvSinglePacket$length
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE78:
	.size	DsrControlP$0$RouteRequest$length, .-DsrControlP$0$RouteRequest$length
	.section	.rodata
	.align 8
.LC19:
	.string	"DSR: Pkt %u: Recovered upper layer AM type from pkt %u\n"
	.align 8
.LC20:
	.string	"DSR: Pkt %u: Looking for pkt that originated route request to %u, but no packets are waiting!\n"
	.align 8
.LC21:
	.string	"DSR: Pkt %u: DSR send packet added, waiting for route\n"
	.align 8
.LC22:
	.string	"DSR: Pkt %u: DSR send packet added, sending!\n"
	.text
	.type	DsrControlP$0$DsrPacketEngine$sendAdded, @function
DsrControlP$0$DsrPacketEngine$sendAdded:
.LFB79:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	eax, edi
	mov	QWORD PTR -48[rbp], rsi
	mov	BYTE PTR -36[rbp], al
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	mov	WORD PTR -18[rbp], ax
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$length
	test	al, al
	je	.L188
	movzx	eax, WORD PTR -18[rbp]
	mov	edi, eax
	call	DsrControlP$0$findSingleDsrPktTo
	mov	BYTE PTR -19[rbp], al
	movzx	eax, BYTE PTR -19[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$end
	test	al, al
	jne	.L189
	movzx	eax, BYTE PTR -19[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$upperType
	movzx	edx, al
	movzx	eax, BYTE PTR -36[rbp]
	mov	esi, edx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$setUpperType
	movzx	edx, BYTE PTR -19[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC19[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 264
	mov	eax, 0
	call	sim_log_debug
	jmp	.L190
.L189:
	movzx	edx, WORD PTR -18[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC20[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 265
	mov	eax, 0
	call	sim_log_error
	jmp	.L190
.L188:
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$length
	test	al, al
	jne	.L190
	movzx	eax, BYTE PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC21[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 266
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, WORD PTR -18[rbp]
	movzx	ebx, al
	call	DsrControlP$0$AMPacket$address
	movzx	eax, al
	mov	esi, ebx
	mov	edi, eax
	call	DsrControlP$0$RouteCache$trackRoute
	jmp	.L187
.L190:
	movzx	eax, BYTE PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC22[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 267
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, [rax+rcx]
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 2
	movzx	eax, BYTE PTR -36[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$send
.L187:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE79:
	.size	DsrControlP$0$DsrPacketEngine$sendAdded, .-DsrControlP$0$DsrPacketEngine$sendAdded
	.type	PacketEngineP$PacketEngine$default$sendAdded, @function
PacketEngineP$PacketEngine$default$sendAdded:
.LFB80:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 136
	mov	eax, 0
	call	sim_log_error
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$drop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE80:
	.size	PacketEngineP$PacketEngine$default$sendAdded, .-PacketEngineP$PacketEngine$default$sendAdded
	.type	PacketEngineP$PacketEngine$sendAdded, @function
PacketEngineP$PacketEngine$sendAdded:
.LFB81:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	eax, 4
	je	.L194
	cmp	eax, 48
	je	.L195
	jmp	.L198
.L194:
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$sendAdded
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$sendAdded
	jmp	.L197
.L195:
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$sendAdded
	movzx	eax, BYTE PTR -8[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$sendAdded
	jmp	.L197
.L198:
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$default$sendAdded
	nop
.L197:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE81:
	.size	PacketEngineP$PacketEngine$sendAdded, .-PacketEngineP$PacketEngine$sendAdded
	.section	.rodata
	.align 8
.LC23:
	.string	"PE: msgAdded posted, but nextAddedPkt is invalid!\n"
.LC24:
	.string	"PE: Processing added pkt %u\n"
.LC25:
	.string	"PE: Moved nextWaitPkt from %u"
.LC26:
	.string	" to %u\n"
	.align 8
.LC27:
	.string	"PE: Notify about send added at index %u\n"
	.align 8
.LC28:
	.string	"PE: Notify about receive added at index %u\n"
	.align 8
.LC29:
	.string	"PE: Notify about snoop added at index %u\n"
	.align 8
.LC30:
	.string	"PE: msgAdded posted, but nextAddedPkt is in state %hhu!\n"
.LC31:
	.string	"PE: No more added packets\n"
	.text
	.type	PacketEngineP$msgAdded$runTask, @function
PacketEngineP$msgAdded$runTask:
.LFB82:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, PacketEngineP$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L209
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 40
	jne	.L202
	lea	rdx, .LC23[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 145
	mov	eax, 0
	call	sim_log_error
	jmp	.L199
.L202:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 2
	jne	.L203
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -24[rbp], rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC24[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 146
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, 4
	mov	BYTE PTR [rdx+rax], cl
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 40
	jne	.L204
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC25[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 147
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	edx, BYTE PTR [rbx+rdx]
	lea	rcx, PacketEngineP$nextWaitPkt[rip]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC26[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 148
	mov	eax, 0
	call	sim_log_debug_clear
	call	PacketEngineP$printIndices
.L204:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	shr	al, 5
	and	eax, 1
	test	al, al
	jne	.L205
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC27[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 149
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	esi, ebx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$sendAdded
	jmp	.L206
.L205:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$AMPacket$isForMe
	test	al, al
	je	.L207
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC28[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 150
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	esi, ebx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$receiveAdded
	jmp	.L206
.L207:
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC29[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 151
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	esi, ebx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$snoopAdded
	jmp	.L206
.L203:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC30[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 152
	mov	eax, 0
	call	sim_log_error
.L206:
	call	PacketEngineP$moveAddedIndex
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L208
	call	PacketEngineP$msgAdded$postTask
	jmp	.L199
.L208:
	lea	rdx, .LC31[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 153
	mov	eax, 0
	call	sim_log_debug
	jmp	.L199
.L209:
	nop
.L199:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE82:
	.size	PacketEngineP$msgAdded$runTask, .-PacketEngineP$msgAdded$runTask
	.type	PacketEngineP$msgAction$postTask, @function
PacketEngineP$msgAction$postTask:
.LFB83:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 1
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE83:
	.size	PacketEngineP$msgAction$postTask, .-PacketEngineP$msgAction$postTask
	.type	PacketEngineP$moveActionIndex, @function
PacketEngineP$moveActionIndex:
.LFB84:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	add	rax, rdx
	mov	esi, 24
	mov	rdi, rax
	call	PacketEngineP$moveIndex
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE84:
	.size	PacketEngineP$moveActionIndex, .-PacketEngineP$moveActionIndex
	.type	PacketEngineP$Packet$maxPayloadLength, @function
PacketEngineP$Packet$maxPayloadLength:
.LFB85:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 36
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE85:
	.size	PacketEngineP$Packet$maxPayloadLength, .-PacketEngineP$Packet$maxPayloadLength
	.type	StateImplP$State$toIdle, @function
StateImplP$State$toIdle:
.LFB86:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -1[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	cdqe
	add	rdx, rax
	lea	rax, StateImplP$state[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE86:
	.size	StateImplP$State$toIdle, .-StateImplP$State$toIdle
	.type	PacketEngineP$SendState$toIdle, @function
PacketEngineP$SendState$toIdle:
.LFB87:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edi, 0
	call	StateImplP$State$toIdle
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE87:
	.size	PacketEngineP$SendState$toIdle, .-PacketEngineP$SendState$toIdle
	.type	__nesc_ntoh_uint8, @function
__nesc_ntoh_uint8:
.LFB88:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE88:
	.size	__nesc_ntoh_uint8, .-__nesc_ntoh_uint8
	.type	TossimActiveMessageC$getHeader, @function
TossimActiveMessageC$getHeader:
.LFB89:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 7
	sub	rax, 7
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE89:
	.size	TossimActiveMessageC$getHeader, .-TossimActiveMessageC$getHeader
	.type	TossimActiveMessageC$Packet$payloadLength, @function
TossimActiveMessageC$Packet$payloadLength:
.LFB90:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	add	rax, 4
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE90:
	.size	TossimActiveMessageC$Packet$payloadLength, .-TossimActiveMessageC$Packet$payloadLength
	.type	PacketEngineP$SubSendPacket$payloadLength, @function
PacketEngineP$SubSendPacket$payloadLength:
.LFB91:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE91:
	.size	PacketEngineP$SubSendPacket$payloadLength, .-PacketEngineP$SubSendPacket$payloadLength
	.type	PacketEngineP$AMPacket$destination, @function
PacketEngineP$AMPacket$destination:
.LFB92:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$destination
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE92:
	.size	PacketEngineP$AMPacket$destination, .-PacketEngineP$AMPacket$destination
	.type	AMQueueEntryP$0$Send$send, @function
AMQueueEntryP$0$Send$send:
.LFB93:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 0
	call	AMQueueImplP$0$Send$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE93:
	.size	AMQueueEntryP$0$Send$send, .-AMQueueEntryP$0$Send$send
	.type	AMQueueEntryP$0$AMPacket$setType, @function
AMQueueEntryP$0$AMPacket$setType:
.LFB94:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setType
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE94:
	.size	AMQueueEntryP$0$AMPacket$setType, .-AMQueueEntryP$0$AMPacket$setType
	.type	AMQueueEntryP$0$AMPacket$setDestination, @function
AMQueueEntryP$0$AMPacket$setDestination:
.LFB95:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -12[rbp], ax
	movzx	edx, WORD PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setDestination
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE95:
	.size	AMQueueEntryP$0$AMPacket$setDestination, .-AMQueueEntryP$0$AMPacket$setDestination
	.type	AMQueueEntryP$0$AMSend$send, @function
AMQueueEntryP$0$AMSend$send:
.LFB96:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	WORD PTR -4[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -8[rbp], al
	movzx	edx, WORD PTR -4[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$0$AMPacket$setDestination
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, 48
	mov	rdi, rax
	call	AMQueueEntryP$0$AMPacket$setType
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$0$Send$send
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE96:
	.size	AMQueueEntryP$0$AMSend$send, .-AMQueueEntryP$0$AMSend$send
	.type	AMQueueEntryP$1$Send$send, @function
AMQueueEntryP$1$Send$send:
.LFB97:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	AMQueueImplP$0$Send$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE97:
	.size	AMQueueEntryP$1$Send$send, .-AMQueueEntryP$1$Send$send
	.type	AMQueueEntryP$1$AMPacket$setType, @function
AMQueueEntryP$1$AMPacket$setType:
.LFB98:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setType
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE98:
	.size	AMQueueEntryP$1$AMPacket$setType, .-AMQueueEntryP$1$AMPacket$setType
	.type	AMQueueEntryP$1$AMPacket$setDestination, @function
AMQueueEntryP$1$AMPacket$setDestination:
.LFB99:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -12[rbp], ax
	movzx	edx, WORD PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setDestination
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE99:
	.size	AMQueueEntryP$1$AMPacket$setDestination, .-AMQueueEntryP$1$AMPacket$setDestination
	.type	AMQueueEntryP$1$AMSend$send, @function
AMQueueEntryP$1$AMSend$send:
.LFB100:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	WORD PTR -4[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -8[rbp], al
	movzx	edx, WORD PTR -4[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$1$AMPacket$setDestination
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, 4
	mov	rdi, rax
	call	AMQueueEntryP$1$AMPacket$setType
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$1$Send$send
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE100:
	.size	AMQueueEntryP$1$AMSend$send, .-AMQueueEntryP$1$AMSend$send
	.type	PacketEngineP$SubSend$default$send, @function
PacketEngineP$SubSend$default$send:
.LFB101:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -4[rbp], cl
	mov	WORD PTR -8[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -20[rbp], al
	mov	eax, 1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE101:
	.size	PacketEngineP$SubSend$default$send, .-PacketEngineP$SubSend$default$send
	.type	PacketEngineP$SubSend$send, @function
PacketEngineP$SubSend$send:
.LFB102:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, esi
	mov	QWORD PTR -32[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	WORD PTR -24[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 4
	je	.L242
	cmp	eax, 48
	je	.L243
	jmp	.L247
.L242:
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, WORD PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueEntryP$1$AMSend$send
	mov	BYTE PTR -1[rbp], al
	jmp	.L245
.L243:
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, WORD PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueEntryP$0$AMSend$send
	mov	BYTE PTR -1[rbp], al
	jmp	.L245
.L247:
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	esi, WORD PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	edi, eax
	call	PacketEngineP$SubSend$default$send
	mov	BYTE PTR -1[rbp], al
	nop
.L245:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE102:
	.size	PacketEngineP$SubSend$send, .-PacketEngineP$SubSend$send
	.type	StateImplP$State$requestState, @function
StateImplP$State$requestState:
.LFB103:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	mov	BYTE PTR -2[rbp], 1
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -1[rbp], al
	cmp	BYTE PTR -24[rbp], 0
	je	.L249
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	cdqe
	add	rdx, rax
	lea	rax, StateImplP$state[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	test	al, al
	jne	.L250
.L249:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	cdqe
	add	rdx, rax
	lea	rax, StateImplP$state[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -24[rbp]
	mov	BYTE PTR [rdx], al
	mov	BYTE PTR -2[rbp], 0
.L250:
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	movzx	eax, BYTE PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE103:
	.size	StateImplP$State$requestState, .-StateImplP$State$requestState
	.type	PacketEngineP$SendState$requestState, @function
PacketEngineP$SendState$requestState:
.LFB104:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 0
	call	StateImplP$State$requestState
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE104:
	.size	PacketEngineP$SendState$requestState, .-PacketEngineP$SendState$requestState
	.type	PacketEngineP$Intercept$default$forward, @function
PacketEngineP$Intercept$default$forward:
.LFB105:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	WORD PTR -8[rbp], ax
	mov	eax, 1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE105:
	.size	PacketEngineP$Intercept$default$forward, .-PacketEngineP$Intercept$default$forward
	.type	PacketEngineP$Intercept$forward, @function
PacketEngineP$Intercept$forward:
.LFB106:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 40
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	WORD PTR -24[rbp], ax
	movzx	ecx, WORD PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	edi, eax
	call	PacketEngineP$Intercept$default$forward
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE106:
	.size	PacketEngineP$Intercept$forward, .-PacketEngineP$Intercept$forward
	.section	.rodata
	.align 8
.LC32:
	.string	"PE: msgAction posted, but nextActionPkt is invalid!\n"
.LC33:
	.string	"PE: Processing action pkt %u\n"
	.align 8
.LC34:
	.string	"PE: Upper layer intercepted, dropping pkt %u\n"
	.align 8
.LC35:
	.string	"PE: Radio currently off, waiting\n"
	.align 8
.LC36:
	.string	"PE: Already sending or during backoff, waiting\n"
	.align 8
.LC37:
	.string	"PE: SubSend successful, waiting for result\n"
	.align 8
.LC38:
	.string	"PE: Unsupported lower AM type %hhu!\n"
	.align 8
.LC39:
	.string	"PE: No hops left, dropping packet!\n"
	.align 8
.LC40:
	.string	"PE: SubSend busy! Waiting for result\n"
	.align 8
.LC41:
	.string	"PE: Radio is off, not notified!\n"
	.align 8
.LC42:
	.string	"PE: Length of pkt %u too long! Forcing max length\n"
	.align 8
.LC43:
	.string	"PE: msgAction posted, but nextActionPkt is in state %hhu!\n"
.LC44:
	.string	"PE: No more action packets\n"
	.text
	.type	PacketEngineP$msgAction$runTask, @function
PacketEngineP$msgAction$runTask:
.LFB107:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	call	sim_node
	lea	rdx, PacketEngineP$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L277
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 40
	jne	.L261
	lea	rdx, .LC32[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 154
	mov	eax, 0
	call	sim_log_error
	jmp	.L258
.L261:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	movzx	eax, al
	and	eax, 24
	test	eax, eax
	je	.L262
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$Packet$payloadLength
	mov	BYTE PTR -33[rbp], al
	movzx	edx, BYTE PTR -33[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$getPayload
	mov	QWORD PTR -24[rbp], rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC33[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 155
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	movzx	eax, al
	cmp	eax, 8
	je	.L263
	cmp	eax, 16
	jne	.L275
	movzx	ebx, BYTE PTR -33[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$uid
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	ecx, ebx
	mov	edi, eax
	call	PacketEngineP$Intercept$forward
	test	al, al
	jne	.L263
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC34[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 156
	mov	eax, 0
	call	sim_log_debug
	jmp	.L275
.L263:
	call	sim_node
	lea	rdx, PacketEngineP$radioOn[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L265
	lea	rdx, .LC35[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 157
	mov	eax, 0
	call	sim_log_debug
	jmp	.L258
.L265:
	mov	edi, 1
	call	PacketEngineP$SendState$requestState
	cmp	al, 1
	jne	.L266
	lea	rdx, .LC36[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 158
	mov	eax, 0
	call	sim_log_debug
	jmp	.L258
.L266:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$SubSendPacket$payloadLength
	movzx	r12d, al
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$AMPacket$destination
	movzx	ebx, ax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rdx, QWORD PTR -32[rbp]
	mov	ecx, r12d
	mov	esi, ebx
	mov	edi, eax
	call	PacketEngineP$SubSend$send
	movzx	eax, al
	cmp	eax, 6
	ja	.L278
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L269[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L269[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L269:
	.long	.L274-.L269
	.long	.L273-.L269
	.long	.L272-.L269
	.long	.L278-.L269
	.long	.L271-.L269
	.long	.L270-.L269
	.long	.L268-.L269
	.text
.L274:
	lea	rdx, .LC37[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 159
	mov	eax, 0
	call	sim_log_debug
	jmp	.L258
.L273:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC38[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 160
	mov	eax, 0
	call	sim_log_debug
	call	PacketEngineP$SendState$toIdle
	jmp	.L267
.L268:
	lea	rdx, .LC39[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 161
	mov	eax, 0
	call	sim_log_debug
	call	PacketEngineP$SendState$toIdle
	jmp	.L267
.L270:
	lea	rdx, .LC40[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 162
	mov	eax, 0
	call	sim_log_error
	call	PacketEngineP$SendState$toIdle
	jmp	.L258
.L271:
	lea	rdx, .LC41[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 163
	mov	eax, 0
	call	sim_log_error
	call	sim_node
	lea	rdx, PacketEngineP$radioOn[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	PacketEngineP$SendState$toIdle
	jmp	.L258
.L272:
	lea	rdx, .LC42[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 164
	mov	eax, 0
	call	sim_log_error
	call	PacketEngineP$SendState$toIdle
	call	PacketEngineP$Packet$maxPayloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$setPayloadLength
	call	PacketEngineP$msgAction$postTask
	jmp	.L258
.L267:
	jmp	.L278
.L262:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC43[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 165
	mov	eax, 0
	call	sim_log_error
	jmp	.L275
.L278:
	nop
.L275:
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edi, eax
	call	PacketEngineP$removePacket
	call	PacketEngineP$moveActionIndex
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L276
	call	PacketEngineP$msgAction$postTask
	jmp	.L258
.L276:
	lea	rdx, .LC44[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 166
	mov	eax, 0
	call	sim_log_debug
	jmp	.L258
.L277:
	nop
.L258:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE107:
	.size	PacketEngineP$msgAction$runTask, .-PacketEngineP$msgAction$runTask
	.type	Atm128AlarmAsyncP$0$Alarm$getNow, @function
Atm128AlarmAsyncP$0$Alarm$getNow:
.LFB108:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	Atm128AlarmAsyncP$0$Counter$get
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE108:
	.size	Atm128AlarmAsyncP$0$Alarm$getNow, .-Atm128AlarmAsyncP$0$Alarm$getNow
	.type	AlarmToTimerC$0$Alarm$getNow, @function
AlarmToTimerC$0$Alarm$getNow:
.LFB109:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	Atm128AlarmAsyncP$0$Alarm$getNow
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE109:
	.size	AlarmToTimerC$0$Alarm$getNow, .-AlarmToTimerC$0$Alarm$getNow
	.type	AlarmToTimerC$0$Timer$getNow, @function
AlarmToTimerC$0$Timer$getNow:
.LFB110:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	AlarmToTimerC$0$Alarm$getNow
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE110:
	.size	AlarmToTimerC$0$Timer$getNow, .-AlarmToTimerC$0$Timer$getNow
	.type	VirtualizeTimerC$0$TimerFrom$getNow, @function
VirtualizeTimerC$0$TimerFrom$getNow:
.LFB111:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	AlarmToTimerC$0$Timer$getNow
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE111:
	.size	VirtualizeTimerC$0$TimerFrom$getNow, .-VirtualizeTimerC$0$TimerFrom$getNow
	.type	VirtualizeTimerC$0$TimerFrom$fired, @function
VirtualizeTimerC$0$TimerFrom$fired:
.LFB112:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	VirtualizeTimerC$0$TimerFrom$getNow
	mov	rdi, rax
	call	VirtualizeTimerC$0$fireTimers
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE112:
	.size	VirtualizeTimerC$0$TimerFrom$fired, .-VirtualizeTimerC$0$TimerFrom$fired
	.type	AlarmToTimerC$0$Timer$fired, @function
AlarmToTimerC$0$Timer$fired:
.LFB113:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	VirtualizeTimerC$0$TimerFrom$fired
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE113:
	.size	AlarmToTimerC$0$Timer$fired, .-AlarmToTimerC$0$Timer$fired
	.type	Atm128AlarmAsyncP$0$Alarm$getAlarm, @function
Atm128AlarmAsyncP$0$Alarm$getAlarm:
.LFB114:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -25[rbp], al
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$t0[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$dt[rip]
	mov	rax, QWORD PTR [rdx+rax]
	add	rax, rbx
	mov	QWORD PTR -24[rbp], rax
	movzx	eax, BYTE PTR -25[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE114:
	.size	Atm128AlarmAsyncP$0$Alarm$getAlarm, .-Atm128AlarmAsyncP$0$Alarm$getAlarm
	.type	AlarmToTimerC$0$Alarm$getAlarm, @function
AlarmToTimerC$0$Alarm$getAlarm:
.LFB115:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	Atm128AlarmAsyncP$0$Alarm$getAlarm
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE115:
	.size	AlarmToTimerC$0$Alarm$getAlarm, .-AlarmToTimerC$0$Alarm$getAlarm
	.type	AlarmToTimerC$0$Alarm$startAt, @function
AlarmToTimerC$0$Alarm$startAt:
.LFB116:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	Atm128AlarmAsyncP$0$Alarm$startAt
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE116:
	.size	AlarmToTimerC$0$Alarm$startAt, .-AlarmToTimerC$0$Alarm$startAt
	.type	AlarmToTimerC$0$start, @function
AlarmToTimerC$0$start:
.LFB117:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	BYTE PTR -20[rbp], al
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, AlarmToTimerC$0$m_dt[rip]
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rcx, AlarmToTimerC$0$m_oneshot[rip]
	movzx	edx, BYTE PTR -20[rbp]
	mov	BYTE PTR [rax+rcx], dl
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	AlarmToTimerC$0$Alarm$startAt
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE117:
	.size	AlarmToTimerC$0$start, .-AlarmToTimerC$0$start
	.type	AlarmToTimerC$0$fired$runTask, @function
AlarmToTimerC$0$fired$runTask:
.LFB118:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, AlarmToTimerC$0$m_oneshot[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L296
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, AlarmToTimerC$0$m_dt[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	AlarmToTimerC$0$Alarm$getAlarm
	mov	edx, 0
	mov	rsi, rbx
	mov	rdi, rax
	call	AlarmToTimerC$0$start
.L296:
	call	AlarmToTimerC$0$Timer$fired
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE118:
	.size	AlarmToTimerC$0$fired$runTask, .-AlarmToTimerC$0$fired$runTask
	.type	AlarmToTimerC$0$Timer$startOneShotAt, @function
AlarmToTimerC$0$Timer$startOneShotAt:
.LFB119:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	rdi, rax
	call	AlarmToTimerC$0$start
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE119:
	.size	AlarmToTimerC$0$Timer$startOneShotAt, .-AlarmToTimerC$0$Timer$startOneShotAt
	.type	VirtualizeTimerC$0$TimerFrom$startOneShotAt, @function
VirtualizeTimerC$0$TimerFrom$startOneShotAt:
.LFB120:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	AlarmToTimerC$0$Timer$startOneShotAt
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE120:
	.size	VirtualizeTimerC$0$TimerFrom$startOneShotAt, .-VirtualizeTimerC$0$TimerFrom$startOneShotAt
	.type	Atm128AlarmAsyncP$0$Alarm$stop, @function
Atm128AlarmAsyncP$0$Alarm$stop:
.LFB121:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -1[rbp], al
	call	sim_node
	lea	rdx, Atm128AlarmAsyncP$0$set[rip]
	mov	BYTE PTR [rax+rdx], 0
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE121:
	.size	Atm128AlarmAsyncP$0$Alarm$stop, .-Atm128AlarmAsyncP$0$Alarm$stop
	.type	AlarmToTimerC$0$Alarm$stop, @function
AlarmToTimerC$0$Alarm$stop:
.LFB122:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	Atm128AlarmAsyncP$0$Alarm$stop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE122:
	.size	AlarmToTimerC$0$Alarm$stop, .-AlarmToTimerC$0$Alarm$stop
	.type	AlarmToTimerC$0$Timer$stop, @function
AlarmToTimerC$0$Timer$stop:
.LFB123:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	AlarmToTimerC$0$Alarm$stop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE123:
	.size	AlarmToTimerC$0$Timer$stop, .-AlarmToTimerC$0$Timer$stop
	.type	VirtualizeTimerC$0$TimerFrom$stop, @function
VirtualizeTimerC$0$TimerFrom$stop:
.LFB124:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	AlarmToTimerC$0$Timer$stop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE124:
	.size	VirtualizeTimerC$0$TimerFrom$stop, .-VirtualizeTimerC$0$TimerFrom$stop
	.type	VirtualizeTimerC$0$updateFromTimer$runTask, @function
VirtualizeTimerC$0$updateFromTimer$runTask:
.LFB125:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	call	VirtualizeTimerC$0$TimerFrom$getNow
	mov	QWORD PTR -32[rbp], rax
	mov	QWORD PTR -40[rbp], 2147483647
	mov	BYTE PTR -42[rbp], 0
	call	VirtualizeTimerC$0$TimerFrom$stop
	mov	BYTE PTR -41[rbp], 0
	jmp	.L304
.L306:
	call	sim_node
	mov	rcx, rax
	movzx	eax, BYTE PTR -41[rbp]
	cdqe
	mov	rdx, rax
	add	rdx, rdx
	add	rdx, rax
	lea	rax, 0[0+rdx*8]
	mov	rdx, rax
	mov	rax, rcx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 3
	add	rdx, rax
	lea	rax, VirtualizeTimerC$0$m_timers[rip]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	movzx	eax, BYTE PTR 16[rax]
	and	eax, 2
	test	al, al
	je	.L305
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	sub	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	sub	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	cmp	rax, QWORD PTR -40[rbp]
	jge	.L305
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR -40[rbp], rax
	mov	BYTE PTR -42[rbp], 1
.L305:
	movzx	eax, BYTE PTR -41[rbp]
	add	eax, 1
	mov	BYTE PTR -41[rbp], al
.L304:
	cmp	BYTE PTR -41[rbp], 2
	jbe	.L306
	cmp	BYTE PTR -42[rbp], 0
	je	.L309
	cmp	QWORD PTR -40[rbp], 0
	jg	.L308
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	VirtualizeTimerC$0$fireTimers
	jmp	.L309
.L308:
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	VirtualizeTimerC$0$TimerFrom$startOneShotAt
.L309:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE125:
	.size	VirtualizeTimerC$0$updateFromTimer$runTask, .-VirtualizeTimerC$0$updateFromTimer$runTask
	.type	TestDsrP$PEControl$start, @function
TestDsrP$PEControl$start:
.LFB126:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PacketEngineP$StdControl$start
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE126:
	.size	TestDsrP$PEControl$start, .-TestDsrP$PEControl$start
	.type	TestDsrP$AMControl$startDone, @function
TestDsrP$AMControl$startDone:
.LFB127:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L315
	call	TestDsrP$PEControl$start
	mov	edi, 10240
	call	TestDsrP$Timer$startOneShot
	jmp	.L312
.L315:
	nop
.L312:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE127:
	.size	TestDsrP$AMControl$startDone, .-TestDsrP$AMControl$startDone
	.type	PacketEngineP$RadioControl$startDone, @function
PacketEngineP$RadioControl$startDone:
.LFB128:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L318
	call	sim_node
	lea	rdx, PacketEngineP$radioOn[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	PacketEngineP$StdControl$start
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L318
	call	PacketEngineP$msgAction$postTask
.L318:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE128:
	.size	PacketEngineP$RadioControl$startDone, .-PacketEngineP$RadioControl$startDone
	.type	TossimPacketModelC$Control$startDone, @function
TossimPacketModelC$Control$startDone:
.LFB129:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	PacketEngineP$RadioControl$startDone
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	TestDsrP$AMControl$startDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE129:
	.size	TossimPacketModelC$Control$startDone, .-TossimPacketModelC$Control$startDone
	.type	TossimPacketModelC$startDoneTask$runTask, @function
TossimPacketModelC$startDoneTask$runTask:
.LFB130:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, TossimPacketModelC$running[rip]
	mov	BYTE PTR [rax+rdx], 1
	mov	edi, 0
	call	TossimPacketModelC$Control$startDone
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE130:
	.size	TossimPacketModelC$startDoneTask$runTask, .-TossimPacketModelC$startDoneTask$runTask
	.type	TestDsrP$AMControl$stopDone, @function
TestDsrP$AMControl$stopDone:
.LFB131:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE131:
	.size	TestDsrP$AMControl$stopDone, .-TestDsrP$AMControl$stopDone
	.type	PacketEngineP$RadioControl$stopDone, @function
PacketEngineP$RadioControl$stopDone:
.LFB132:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L324
	call	sim_node
	lea	rdx, PacketEngineP$radioOn[rip]
	mov	BYTE PTR [rax+rdx], 0
.L324:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE132:
	.size	PacketEngineP$RadioControl$stopDone, .-PacketEngineP$RadioControl$stopDone
	.type	TossimPacketModelC$Control$stopDone, @function
TossimPacketModelC$Control$stopDone:
.LFB133:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	PacketEngineP$RadioControl$stopDone
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	TestDsrP$AMControl$stopDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE133:
	.size	TossimPacketModelC$Control$stopDone, .-TossimPacketModelC$Control$stopDone
	.type	TossimPacketModelC$stopDoneTask$runTask, @function
TossimPacketModelC$stopDoneTask$runTask:
.LFB134:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, TossimPacketModelC$running[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	edi, 0
	call	TossimPacketModelC$Control$stopDone
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE134:
	.size	TossimPacketModelC$stopDoneTask$runTask, .-TossimPacketModelC$stopDoneTask$runTask
	.type	__nesc_hton_uint16, @function
__nesc_hton_uint16:
.LFB135:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	movzx	edx, WORD PTR -28[rbp]
	mov	BYTE PTR [rax], dl
	movzx	eax, WORD PTR -28[rbp]
	shr	ax, 8
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR [rax], dl
	movzx	eax, WORD PTR -28[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE135:
	.size	__nesc_hton_uint16, .-__nesc_hton_uint16
	.type	__nesc_hton_uint8, @function
__nesc_hton_uint8:
.LFB136:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	movzx	edx, BYTE PTR -28[rbp]
	mov	BYTE PTR [rax], dl
	movzx	eax, BYTE PTR -28[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE136:
	.size	__nesc_hton_uint8, .-__nesc_hton_uint8
	.type	__nesc_hton_int8, @function
__nesc_hton_int8:
.LFB137:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	eax, BYTE PTR -12[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint8
	movzx	eax, BYTE PTR -12[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE137:
	.size	__nesc_hton_int8, .-__nesc_hton_int8
	.type	TossimActiveMessageC$AMSend$sendDone, @function
TossimActiveMessageC$AMSend$sendDone:
.LFB138:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueImplP$0$AMSend$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE138:
	.size	TossimActiveMessageC$AMSend$sendDone, .-TossimActiveMessageC$AMSend$sendDone
	.type	TossimActiveMessageC$Model$sendDone, @function
TossimActiveMessageC$Model$sendDone:
.LFB139:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	ebx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	movzx	eax, al
	mov	rcx, QWORD PTR -24[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	TossimActiveMessageC$AMSend$sendDone
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE139:
	.size	TossimActiveMessageC$Model$sendDone, .-TossimActiveMessageC$Model$sendDone
	.type	TossimPacketModelC$Packet$sendDone, @function
TossimPacketModelC$Packet$sendDone:
.LFB140:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$Model$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE140:
	.size	TossimPacketModelC$Packet$sendDone, .-TossimPacketModelC$Packet$sendDone
	.type	TossimPacketModelC$getMetadata, @function
TossimPacketModelC$getMetadata:
.LFB141:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 45
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE141:
	.size	TossimPacketModelC$getMetadata, .-TossimPacketModelC$getMetadata
	.type	TossimPacketModelC$sendDoneTask$runTask, @function
TossimPacketModelC$sendDoneTask$runTask:
.LFB142:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$getMetadata
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_hton_uint8
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_hton_int8
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_hton_uint16
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	QWORD PTR [rdx+rax], 0
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	TossimPacketModelC$Packet$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE142:
	.size	TossimPacketModelC$sendDoneTask$runTask, .-TossimPacketModelC$sendDoneTask$runTask
	.type	__nesc_bf_decode8, @function
__nesc_bf_decode8:
.LFB143:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	eax, edx
	mov	BYTE PTR -32[rbp], al
	mov	BYTE PTR -9[rbp], 0
	mov	eax, DWORD PTR -28[rbp]
	shr	eax, 3
	mov	DWORD PTR -8[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	and	eax, 7
	mov	DWORD PTR -4[rbp], eax
	movzx	edx, BYTE PTR -32[rbp]
	mov	eax, DWORD PTR -4[rbp]
	add	eax, edx
	cmp	eax, 8
	ja	.L340
	mov	edx, DWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	movzx	ecx, BYTE PTR -32[rbp]
	mov	eax, DWORD PTR -4[rbp]
	add	ecx, eax
	mov	eax, 8
	sub	eax, ecx
	mov	ecx, eax
	sar	edx, cl
	mov	eax, edx
	mov	esi, eax
	movzx	eax, BYTE PTR -32[rbp]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	and	eax, esi
	jmp	.L341
.L340:
	cmp	DWORD PTR -4[rbp], 0
	je	.L343
	mov	eax, DWORD PTR -4[rbp]
	mov	edx, eax
	movzx	eax, BYTE PTR -32[rbp]
	add	eax, edx
	sub	eax, 8
	mov	BYTE PTR -32[rbp], al
	mov	edx, DWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	esi, eax
	mov	eax, 8
	sub	eax, DWORD PTR -4[rbp]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	and	eax, esi
	movzx	edx, al
	movzx	eax, BYTE PTR -32[rbp]
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	mov	BYTE PTR -9[rbp], al
	add	DWORD PTR -8[rbp], 1
	jmp	.L343
.L344:
	sub	BYTE PTR -32[rbp], 8
	mov	eax, DWORD PTR -8[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -8[rbp], edx
	mov	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	movzx	eax, BYTE PTR -32[rbp]
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	mov	edx, eax
	movzx	eax, BYTE PTR -9[rbp]
	or	eax, edx
	mov	BYTE PTR -9[rbp], al
.L343:
	cmp	BYTE PTR -32[rbp], 7
	ja	.L344
	cmp	BYTE PTR -32[rbp], 0
	je	.L345
	mov	edx, DWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	movzx	ecx, BYTE PTR -32[rbp]
	mov	eax, 8
	sub	eax, ecx
	mov	ecx, eax
	sar	edx, cl
	mov	eax, edx
	mov	edx, eax
	movzx	eax, BYTE PTR -9[rbp]
	or	eax, edx
	mov	BYTE PTR -9[rbp], al
.L345:
	movzx	eax, BYTE PTR -9[rbp]
.L341:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE143:
	.size	__nesc_bf_decode8, .-__nesc_bf_decode8
	.type	__nesc_ntohbf_uint8, @function
__nesc_ntohbf_uint8:
.LFB144:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	eax, edx
	mov	BYTE PTR -16[rbp], al
	movzx	edx, BYTE PTR -16[rbp]
	mov	ecx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	__nesc_bf_decode8
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE144:
	.size	__nesc_ntohbf_uint8, .-__nesc_ntohbf_uint8
	.type	__nesc_bf_encode8, @function
__nesc_bf_encode8:
.LFB145:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	eax, ecx
	mov	BYTE PTR -48[rbp], dl
	mov	BYTE PTR -52[rbp], al
	mov	eax, DWORD PTR -44[rbp]
	shr	eax, 3
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -44[rbp]
	and	eax, 7
	mov	DWORD PTR -16[rbp], eax
	movzx	eax, BYTE PTR -48[rbp]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	mov	edx, eax
	movzx	eax, BYTE PTR -52[rbp]
	and	eax, edx
	mov	BYTE PTR -52[rbp], al
	movzx	edx, BYTE PTR -48[rbp]
	mov	eax, DWORD PTR -16[rbp]
	add	eax, edx
	cmp	eax, 8
	ja	.L349
	movzx	eax, BYTE PTR -48[rbp]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	lea	edx, -1[rax]
	movzx	ecx, BYTE PTR -48[rbp]
	mov	eax, DWORD PTR -16[rbp]
	add	ecx, eax
	mov	eax, 8
	sub	eax, ecx
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	mov	DWORD PTR -4[rbp], eax
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	edx, DWORD PTR -4[rbp]
	not	edx
	and	eax, edx
	mov	esi, eax
	movzx	edx, BYTE PTR -52[rbp]
	movzx	ecx, BYTE PTR -48[rbp]
	mov	eax, DWORD PTR -16[rbp]
	add	ecx, eax
	mov	eax, 8
	sub	eax, ecx
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	mov	ecx, eax
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	or	esi, ecx
	mov	edx, esi
	mov	BYTE PTR [rax], dl
	jmp	.L348
.L349:
	cmp	DWORD PTR -16[rbp], 0
	je	.L352
	mov	eax, 8
	sub	eax, DWORD PTR -16[rbp]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	mov	edx, eax
	movzx	eax, BYTE PTR -48[rbp]
	add	eax, edx
	sub	eax, 8
	mov	BYTE PTR -48[rbp], al
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	edx, DWORD PTR -12[rbp]
	not	edx
	and	eax, edx
	mov	esi, eax
	movzx	edx, BYTE PTR -52[rbp]
	movzx	eax, BYTE PTR -48[rbp]
	mov	ecx, eax
	sar	edx, cl
	mov	eax, edx
	mov	ecx, eax
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	or	esi, ecx
	mov	edx, esi
	mov	BYTE PTR [rax], dl
	add	DWORD PTR -20[rbp], 1
	jmp	.L352
.L353:
	sub	BYTE PTR -48[rbp], 8
	movzx	edx, BYTE PTR -52[rbp]
	movzx	eax, BYTE PTR -48[rbp]
	mov	ecx, eax
	sar	edx, cl
	mov	ecx, edx
	mov	eax, DWORD PTR -20[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -20[rbp], edx
	mov	edx, eax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	edx, ecx
	mov	BYTE PTR [rax], dl
.L352:
	cmp	BYTE PTR -48[rbp], 7
	ja	.L353
	cmp	BYTE PTR -48[rbp], 0
	je	.L348
	movzx	edx, BYTE PTR -48[rbp]
	mov	eax, 8
	sub	eax, edx
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	mov	DWORD PTR -8[rbp], eax
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	edx, DWORD PTR -8[rbp]
	and	eax, edx
	mov	esi, eax
	movzx	edx, BYTE PTR -52[rbp]
	movzx	ecx, BYTE PTR -48[rbp]
	mov	eax, 8
	sub	eax, ecx
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	mov	ecx, eax
	mov	edx, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	or	esi, ecx
	mov	edx, esi
	mov	BYTE PTR [rax], dl
.L348:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE145:
	.size	__nesc_bf_encode8, .-__nesc_bf_encode8
	.type	__nesc_htonbf_uint8, @function
__nesc_htonbf_uint8:
.LFB146:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	mov	eax, ecx
	mov	BYTE PTR -16[rbp], dl
	mov	BYTE PTR -20[rbp], al
	movzx	ecx, BYTE PTR -20[rbp]
	movzx	edx, BYTE PTR -16[rbp]
	mov	esi, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_bf_encode8
	movzx	eax, BYTE PTR -20[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE146:
	.size	__nesc_htonbf_uint8, .-__nesc_htonbf_uint8
	.type	DsrControlP$0$RouteRequest$remove, @function
DsrControlP$0$RouteRequest$remove:
.LFB147:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	TlvPacketP$0$TlvSinglePacket$remove
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE147:
	.size	DsrControlP$0$RouteRequest$remove, .-DsrControlP$0$RouteRequest$remove
	.type	DsrControlP$0$SinglePacket$isForMe, @function
DsrControlP$0$SinglePacket$isForMe:
.LFB148:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$isForMe
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE148:
	.size	DsrControlP$0$SinglePacket$isForMe, .-DsrControlP$0$SinglePacket$isForMe
	.type	DsrControlP$0$AMPacket$type, @function
DsrControlP$0$AMPacket$type:
.LFB149:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE149:
	.size	DsrControlP$0$AMPacket$type, .-DsrControlP$0$AMPacket$type
	.type	DsrControlP$0$composePkt$postTask, @function
DsrControlP$0$composePkt$postTask:
.LFB150:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 7
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE150:
	.size	DsrControlP$0$composePkt$postTask, .-DsrControlP$0$composePkt$postTask
	.type	DsrControlP$0$Compose$clear, @function
DsrControlP$0$Compose$clear:
.LFB151:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$0$BitVector$clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE151:
	.size	DsrControlP$0$Compose$clear, .-DsrControlP$0$Compose$clear
	.type	SinglePacketP$SubPacket$payloadLength, @function
SinglePacketP$SubPacket$payloadLength:
.LFB152:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE152:
	.size	SinglePacketP$SubPacket$payloadLength, .-SinglePacketP$SubPacket$payloadLength
	.type	SinglePacketP$Packet$payloadLength, @function
SinglePacketP$Packet$payloadLength:
.LFB153:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	SinglePacketP$SubPacket$payloadLength
	sub	eax, 4
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE153:
	.size	SinglePacketP$Packet$payloadLength, .-SinglePacketP$Packet$payloadLength
	.type	DsrControlP$0$ComposePacket$payloadLength, @function
DsrControlP$0$ComposePacket$payloadLength:
.LFB154:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	SinglePacketP$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE154:
	.size	DsrControlP$0$ComposePacket$payloadLength, .-DsrControlP$0$ComposePacket$payloadLength
	.type	DsrControlP$0$Send$send, @function
DsrControlP$0$Send$send:
.LFB155:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	WORD PTR -20[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, WORD PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	esi, eax
	mov	edi, 1
	call	SinglePacketP$Send$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE155:
	.size	DsrControlP$0$Send$send, .-DsrControlP$0$Send$send
	.type	DsrControlP$0$Compose$get, @function
DsrControlP$0$Compose$get:
.LFB156:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$0$BitVector$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE156:
	.size	DsrControlP$0$Compose$get, .-DsrControlP$0$Compose$get
	.type	pidCombine, @function
pidCombine:
.LFB157:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PacketEngineP$pidCombineInternal
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE157:
	.size	pidCombine, .-pidCombine
	.type	DsrControlP$0$SingleDsrPacketEngine$waitList, @function
DsrControlP$0$SingleDsrPacketEngine$waitList:
.LFB158:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 4
	call	PacketEngineP$PacketEngine$waitList
	mov	BYTE PTR -1[rbp], al
	mov	edi, 48
	call	PacketEngineP$PacketEngine$waitList
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	pidCombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE158:
	.size	DsrControlP$0$SingleDsrPacketEngine$waitList, .-DsrControlP$0$SingleDsrPacketEngine$waitList
	.type	DsrControlP$0$SinglePacketEngine$packet, @function
DsrControlP$0$SinglePacketEngine$packet:
.LFB159:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$packet
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE159:
	.size	DsrControlP$0$SinglePacketEngine$packet, .-DsrControlP$0$SinglePacketEngine$packet
	.type	DsrControlP$0$DsrPacketEngine$drop, @function
DsrControlP$0$DsrPacketEngine$drop:
.LFB160:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$drop
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE160:
	.size	DsrControlP$0$DsrPacketEngine$drop, .-DsrControlP$0$DsrPacketEngine$drop
	.type	DsrControlP$0$DsrPacketEngine$upperSendDone, @function
DsrControlP$0$DsrPacketEngine$upperSendDone:
.LFB161:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$upperSendDone
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE161:
	.size	DsrControlP$0$DsrPacketEngine$upperSendDone, .-DsrControlP$0$DsrPacketEngine$upperSendDone
	.type	DsrControlP$0$SalvageRouteCache$checkRoute, @function
DsrControlP$0$SalvageRouteCache$checkRoute:
.LFB162:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$checkRoute
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE162:
	.size	DsrControlP$0$SalvageRouteCache$checkRoute, .-DsrControlP$0$SalvageRouteCache$checkRoute
	.type	BitVectorC$1$getMask, @function
BitVectorC$1$getMask:
.LFB163:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	and	eax, 7
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE163:
	.size	BitVectorC$1$getMask, .-BitVectorC$1$getMask
	.type	BitVectorC$1$getIndex, @function
BitVectorC$1$getIndex:
.LFB164:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	shr	ax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE164:
	.size	BitVectorC$1$getIndex, .-BitVectorC$1$getIndex
	.type	BitVectorC$1$BitVector$set, @function
BitVectorC$1$BitVector$set:
.LFB165:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$getMask
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$1$m_bits[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	mov	esi, r12d
	movzx	eax, dx
	mov	edx, ecx
	or	edx, esi
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$1$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE165:
	.size	BitVectorC$1$BitVector$set, .-BitVectorC$1$BitVector$set
	.type	DsrControlP$0$Salvage$set, @function
DsrControlP$0$Salvage$set:
.LFB166:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$1$BitVector$set
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE166:
	.size	DsrControlP$0$Salvage$set, .-DsrControlP$0$Salvage$set
	.type	DsrControlP$0$AMPacket$destination, @function
DsrControlP$0$AMPacket$destination:
.LFB167:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$destination
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE167:
	.size	DsrControlP$0$AMPacket$destination, .-DsrControlP$0$AMPacket$destination
	.type	DsrControlP$0$RouteError$value, @function
DsrControlP$0$RouteError$value:
.LFB168:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 3
	call	TlvPacketP$0$TlvMultiplePacket$value
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE168:
	.size	DsrControlP$0$RouteError$value, .-DsrControlP$0$RouteError$value
	.type	TossimActiveMessageC$Packet$maxPayloadLength, @function
TossimActiveMessageC$Packet$maxPayloadLength:
.LFB169:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 36
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE169:
	.size	TossimActiveMessageC$Packet$maxPayloadLength, .-TossimActiveMessageC$Packet$maxPayloadLength
	.type	TlvPacketP$0$SubPacket$maxPayloadLength, @function
TlvPacketP$0$SubPacket$maxPayloadLength:
.LFB170:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	TossimActiveMessageC$Packet$maxPayloadLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE170:
	.size	TlvPacketP$0$SubPacket$maxPayloadLength, .-TlvPacketP$0$SubPacket$maxPayloadLength
	.type	TlvPacketP$0$maxLen, @function
TlvPacketP$0$maxLen:
.LFB171:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	TlvPacketP$0$SubPacket$maxPayloadLength
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE171:
	.size	TlvPacketP$0$maxLen, .-TlvPacketP$0$maxLen
	.type	TlvPacketP$0$TlvMultiple$add, @function
TlvPacketP$0$TlvMultiple$add:
.LFB172:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	esi, r8d
	mov	ecx, r9d
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	mov	eax, esi
	mov	BYTE PTR -44[rbp], al
	mov	eax, ecx
	mov	BYTE PTR -48[rbp], al
	movzx	r8d, BYTE PTR -48[rbp]
	movzx	edi, BYTE PTR -44[rbp]
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	edi, eax
	call	TlvP$TlvMultiple$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE172:
	.size	TlvPacketP$0$TlvMultiple$add, .-TlvPacketP$0$TlvMultiple$add
	.type	TlvPacketP$0$TlvMultiplePacket$add, @function
TlvPacketP$0$TlvMultiplePacket$add:
.LFB173:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -48[rbp], rsi
	mov	QWORD PTR -56[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -18[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	TlvPacketP$0$preLengthChange
	mov	QWORD PTR -16[rbp], rax
	call	TlvPacketP$0$maxLen
	movzx	r8d, al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	edi, al
	movzx	ecx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	rdx, QWORD PTR -56[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	edi, eax
	call	TlvPacketP$0$TlvMultiple$add
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	edx, al
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	TlvPacketP$0$postLengthChange
	movzx	eax, BYTE PTR -17[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L406
	call	__stack_chk_fail@PLT
.L406:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE173:
	.size	TlvPacketP$0$TlvMultiplePacket$add, .-TlvPacketP$0$TlvMultiplePacket$add
	.type	DsrControlP$0$RouteError$add, @function
DsrControlP$0$RouteError$add:
.LFB174:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	BYTE PTR -36[rbp], al
	movzx	ecx, BYTE PTR -36[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 3
	call	TlvPacketP$0$TlvMultiplePacket$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE174:
	.size	DsrControlP$0$RouteError$add, .-DsrControlP$0$RouteError$add
	.type	DsrControlP$0$RouteError$length, @function
DsrControlP$0$RouteError$length:
.LFB175:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 3
	call	TlvPacketP$0$TlvMultiplePacket$length
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE175:
	.size	DsrControlP$0$RouteError$length, .-DsrControlP$0$RouteError$length
	.type	DsrControlP$0$RouteErrorList$next, @function
DsrControlP$0$RouteErrorList$next:
.LFB176:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 3
	call	TlvPacketP$0$TlvListPacket$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE176:
	.size	DsrControlP$0$RouteErrorList$next, .-DsrControlP$0$RouteErrorList$next
	.type	DsrControlP$0$RouteErrorList$end, @function
DsrControlP$0$RouteErrorList$end:
.LFB177:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 3
	call	TlvPacketP$0$TlvListPacket$end
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE177:
	.size	DsrControlP$0$RouteErrorList$end, .-DsrControlP$0$RouteErrorList$end
	.type	DsrControlP$0$RouteError$list, @function
DsrControlP$0$RouteError$list:
.LFB178:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 3
	call	TlvPacketP$0$TlvMultiplePacket$list
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE178:
	.size	DsrControlP$0$RouteError$list, .-DsrControlP$0$RouteError$list
	.type	SinglePacketP$SinglePacket$source, @function
SinglePacketP$SinglePacket$source:
.LFB179:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, 4
	mov	rdi, rax
	call	SinglePacketP$SubPacket$getPayload
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE179:
	.size	SinglePacketP$SinglePacket$source, .-SinglePacketP$SinglePacket$source
	.type	DsrControlP$0$SinglePacket$source, @function
DsrControlP$0$SinglePacket$source:
.LFB180:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$source
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE180:
	.size	DsrControlP$0$SinglePacket$source, .-DsrControlP$0$SinglePacket$source
	.type	DsrControlP$0$SourceRoute$value, @function
DsrControlP$0$SourceRoute$value:
.LFB181:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 96
	call	TlvPacketP$0$TlvSinglePacket$value
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE181:
	.size	DsrControlP$0$SourceRoute$value, .-DsrControlP$0$SourceRoute$value
	.type	DsrControlP$0$Acks$requestAck, @function
DsrControlP$0$Acks$requestAck:
.LFB182:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$PacketAcknowledgements$requestAck
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE182:
	.size	DsrControlP$0$Acks$requestAck, .-DsrControlP$0$Acks$requestAck
	.type	DsrControlP$0$SourceRoute$add, @function
DsrControlP$0$SourceRoute$add:
.LFB183:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 96
	call	TlvPacketP$0$TlvSinglePacket$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE183:
	.size	DsrControlP$0$SourceRoute$add, .-DsrControlP$0$SourceRoute$add
	.type	DsrControlP$0$RouteRequest$value, @function
DsrControlP$0$RouteRequest$value:
.LFB184:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	TlvPacketP$0$TlvSinglePacket$value
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE184:
	.size	DsrControlP$0$RouteRequest$value, .-DsrControlP$0$RouteRequest$value
	.type	DsrControlP$0$DsrPacketEngine$packet, @function
DsrControlP$0$DsrPacketEngine$packet:
.LFB185:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$packet
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE185:
	.size	DsrControlP$0$DsrPacketEngine$packet, .-DsrControlP$0$DsrPacketEngine$packet
	.type	DsrControlP$0$SingleDsrPacketWaitList$next, @function
DsrControlP$0$SingleDsrPacketWaitList$next:
.LFB186:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketWaitList$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketWaitList$next
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	pidCombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE186:
	.size	DsrControlP$0$SingleDsrPacketWaitList$next, .-DsrControlP$0$SingleDsrPacketWaitList$next
	.type	SinglePacketP$SubPacket$setPayloadLength, @function
SinglePacketP$SubPacket$setPayloadLength:
.LFB187:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE187:
	.size	SinglePacketP$SubPacket$setPayloadLength, .-SinglePacketP$SubPacket$setPayloadLength
	.type	SinglePacketP$Packet$setPayloadLength, @function
SinglePacketP$Packet$setPayloadLength:
.LFB188:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	eax, BYTE PTR -12[rbp]
	add	eax, 4
	movzx	edx, al
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$SubPacket$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE188:
	.size	SinglePacketP$Packet$setPayloadLength, .-SinglePacketP$Packet$setPayloadLength
	.type	DsrControlP$0$ComposePacket$setPayloadLength, @function
DsrControlP$0$ComposePacket$setPayloadLength:
.LFB189:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$Packet$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE189:
	.size	DsrControlP$0$ComposePacket$setPayloadLength, .-DsrControlP$0$ComposePacket$setPayloadLength
	.type	DsrControlP$0$AMPacket$setType, @function
DsrControlP$0$AMPacket$setType:
.LFB190:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setType
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE190:
	.size	DsrControlP$0$AMPacket$setType, .-DsrControlP$0$AMPacket$setType
	.section	.rodata
	.align 8
.LC45:
	.string	"DSR: Pkt %u: Not destined for this node, can't compose route reply!\n"
	.align 8
.LC46:
	.string	"DSR: Pkt %u: Target node composing route reply\n"
	.align 8
.LC47:
	.string	"DSR: Pkt %u: Outgoing route reply to %u\n"
	.align 8
.LC48:
	.string	"DSR: Pkt %u: Already has source route or not enough room!\n"
	.align 8
.LC49:
	.string	"DSR: Pkt %u: Can't find the source route option just added!\n"
	.align 8
.LC50:
	.string	"DSR: Pkt %u: Sending route reply to %u along the way to %u\n"
	.align 8
.LC51:
	.string	"DSR: Pkt %u: Composing route error to %u\n"
	.align 8
.LC52:
	.string	"DSR: Pkt %u: Base packet already has route error\n"
	.align 8
.LC53:
	.string	"DSR: Pkt %u: Route error's source is this node\n"
	.align 8
.LC54:
	.string	"DSR: Pkt %u: Not enough room for route error!\n"
	.align 8
.LC55:
	.string	"DSR: Pkt %u: Can't find the route error option just added!\n"
	.align 8
.LC56:
	.string	"DSR: Pkt %u: Finding route for route error to %u\n"
	.align 8
.LC57:
	.string	"DSR: Pkt %u: Attempting to salvage base packet\n"
	.align 8
.LC58:
	.string	"DSR: Pkt %u: Base packet has route reply, dropping!\n"
	.align 8
.LC59:
	.string	"DSR: Pkt %u: Base packet salvaged too many times, dropping!\n"
	.align 8
.LC60:
	.string	"DSR: Pkt %u: Finding route for salvaged packet to %u\n"
	.align 8
.LC61:
	.string	"DSR: Pkt %u: Base packet's source is this node, dropping!\n"
	.align 8
.LC62:
	.string	"DSR: Pkt %u: Composing route request to %u for DSR\n"
	.align 8
.LC63:
	.string	"DSR: Pkt %u: Unable to compose route request!\n"
	.align 8
.LC64:
	.string	"DSR: Pkt %u: Sending route request to %u\n"
	.align 8
.LC65:
	.string	"DSR: Pkt %u: Composing route request to %u for Single\n"
	.align 8
.LC66:
	.string	"DSR: Pkt %u: Unknown type waiting for compose!\n"
	.align 8
.LC67:
	.string	"DSR: Pkt %u: Compose bit cleared prior to send!\n"
	.align 8
.LC68:
	.string	"DSR: Pkt %u: Outgoing send successful, waiting for result\n"
	.align 8
.LC69:
	.string	"DSR: Pkt %u: Outgoing send busy! Waiting for result\n"
	.align 8
.LC70:
	.string	"DSR: Pkt %u: Packet engine is off, currently unhandled!\n"
	.align 8
.LC71:
	.string	"DSR: Pkt %u: Length of msg %u too long, dropping!\n"
	.text
	.type	DsrControlP$0$composePkt$runTask, @function
DsrControlP$0$composePkt$runTask:
.LFB191:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 152
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	lea	rax, -80[rbp]
	mov	QWORD PTR -136[rbp], rax
	call	DsrControlP$0$AMPacket$address
	mov	WORD PTR -148[rbp], ax
	mov	BYTE PTR -152[rbp], 0
	mov	rax, QWORD PTR -136[rbp]
	mov	esi, 4
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setType
	mov	rax, QWORD PTR -136[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	DsrControlP$0$ComposePacket$setPayloadLength
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L471:
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$get
	test	al, al
	jne	.L439
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L439:
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$packet
	mov	QWORD PTR -144[rbp], rax
	cmp	QWORD PTR -144[rbp], 0
	je	.L440
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$length
	mov	BYTE PTR -150[rbp], al
	cmp	BYTE PTR -150[rbp], 0
	je	.L441
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$isForMe
	test	al, al
	jne	.L442
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC45[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 310
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L442:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$value
	mov	QWORD PTR -96[rbp], rax
	movzx	eax, BYTE PTR -150[rbp]
	sub	rax, 1
	shr	rax
	mov	BYTE PTR -149[rbp], al
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC46[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 311
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$source
	mov	WORD PTR -148[rbp], ax
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC47[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 312
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -153[rbp]
	mov	rdx, QWORD PTR -136[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$addDsrHeader
	cmp	al, 1
	jne	.L443
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L443:
	movzx	eax, BYTE PTR -149[rbp]
	add	eax, eax
	add	eax, 1
	movzx	edx, al
	mov	rax, QWORD PTR -136[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$add
	test	al, al
	je	.L444
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC48[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 313
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L444:
	mov	rax, QWORD PTR -136[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$value
	mov	QWORD PTR -88[rbp], rax
	cmp	QWORD PTR -88[rbp], 0
	jne	.L445
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC49[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 314
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L445:
	mov	rax, QWORD PTR -88[rbp]
	mov	ecx, 1
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	mov	rax, QWORD PTR -88[rbp]
	mov	ecx, 0
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	movzx	edx, BYTE PTR -149[rbp]
	mov	rax, QWORD PTR -88[rbp]
	mov	ecx, edx
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	mov	BYTE PTR -151[rbp], 0
	jmp	.L446
.L447:
	movzx	eax, BYTE PTR -149[rbp]
	movzx	edx, BYTE PTR -151[rbp]
	sub	eax, edx
	sub	eax, 1
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	eax, ax
	movzx	edx, BYTE PTR -151[rbp]
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	mov	rdx, QWORD PTR -88[rbp]
	add	rdx, rcx
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	eax, BYTE PTR -151[rbp]
	add	eax, 1
	mov	BYTE PTR -151[rbp], al
.L446:
	movzx	eax, BYTE PTR -151[rbp]
	cmp	al, BYTE PTR -149[rbp]
	jb	.L447
	cmp	BYTE PTR -149[rbp], 0
	je	.L448
	mov	rax, QWORD PTR -88[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	edx, ax
	mov	rax, QWORD PTR -136[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
	jmp	.L449
.L448:
	movzx	edx, WORD PTR -148[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
.L449:
	movzx	ebx, WORD PTR -148[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	edx, ax
	movzx	eax, BYTE PTR -153[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC50[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 315
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -136[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$requestAck
	mov	BYTE PTR -152[rbp], 1
	jmp	.L450
.L441:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$length
	mov	BYTE PTR -150[rbp], al
	cmp	BYTE PTR -150[rbp], 0
	je	.L451
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$value
	mov	QWORD PTR -128[rbp], rax
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	jne	.L452
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$source
	mov	WORD PTR -146[rbp], ax
	jmp	.L453
.L452:
	mov	rax, QWORD PTR -128[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	mov	WORD PTR -146[rbp], ax
.L453:
	call	DsrControlP$0$AMPacket$address
	cmp	WORD PTR -146[rbp], ax
	je	.L454
	movzx	eax, WORD PTR -146[rbp]
	mov	WORD PTR -148[rbp], ax
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC51[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 316
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -153[rbp]
	mov	rdx, QWORD PTR -136[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$addDsrHeader
	cmp	al, 1
	jne	.L455
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L455:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteError$list
	movzx	edx, al
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteErrorList$end
	test	al, al
	jne	.L457
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC52[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 317
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteError$list
	mov	BYTE PTR -154[rbp], al
	jmp	.L458
.L460:
	movzx	eax, BYTE PTR -154[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteError$length
	mov	BYTE PTR -150[rbp], al
	cmp	BYTE PTR -150[rbp], 0
	je	.L459
	movzx	eax, BYTE PTR -154[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteError$value
	mov	QWORD PTR -120[rbp], rax
	mov	rax, QWORD PTR -120[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	mov	ebx, eax
	call	DsrControlP$0$AMPacket$address
	cmp	bx, ax
	jne	.L459
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC53[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 318
	mov	eax, 0
	call	sim_log_debug
	jmp	.L457
.L459:
	movzx	eax, BYTE PTR -154[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteErrorList$next
	mov	BYTE PTR -154[rbp], al
.L458:
	movzx	eax, BYTE PTR -154[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteErrorList$end
	test	al, al
	je	.L460
.L457:
	lea	rcx, -154[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	edx, 7
	mov	rsi, rcx
	mov	rdi, rax
	call	DsrControlP$0$RouteError$add
	test	al, al
	je	.L461
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC54[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 319
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L461:
	movzx	eax, BYTE PTR -154[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -136[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteError$value
	mov	QWORD PTR -112[rbp], rax
	cmp	QWORD PTR -112[rbp], 0
	jne	.L462
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC55[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 320
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L462:
	mov	rax, QWORD PTR -112[rbp]
	add	rax, 5
	mov	QWORD PTR -104[rbp], rax
	mov	rax, QWORD PTR -112[rbp]
	mov	ecx, 1
	mov	edx, 4
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	movzx	edx, al
	mov	rax, QWORD PTR -112[rbp]
	mov	ecx, edx
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	edx, ax
	mov	rax, QWORD PTR -104[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint16
	call	DsrControlP$0$AMPacket$address
	movzx	eax, ax
	mov	rdx, QWORD PTR -112[rbp]
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	eax, WORD PTR -148[rbp]
	mov	rdx, QWORD PTR -112[rbp]
	add	rdx, 3
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC56[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 321
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -152[rbp], 1
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC57[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 322
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	je	.L463
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC58[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 323
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -153[rbp]
	mov	esi, 1
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$upperSendDone
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L464
.L463:
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	cmp	al, 15
	jbe	.L465
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC59[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 324
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -153[rbp]
	mov	esi, 1
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$upperSendDone
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L464
.L465:
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Salvage$set
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	edx, ax
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC60[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 325
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	ebx, al
	call	DsrControlP$0$AMPacket$address
	movzx	eax, al
	mov	esi, ebx
	mov	edi, eax
	call	DsrControlP$0$SalvageRouteCache$checkRoute
	jmp	.L464
.L454:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC61[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 326
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -153[rbp]
	mov	esi, 1
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$upperSendDone
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
.L464:
	cmp	BYTE PTR -152[rbp], 0
	jne	.L482
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L451:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	mov	WORD PTR -148[rbp], ax
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC62[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 327
	mov	eax, 0
	call	sim_log_debug
	mov	rcx, QWORD PTR -144[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	edx, 49
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	rcx, QWORD PTR -136[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$addRouteRequest
	cmp	al, 1
	jne	.L467
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC63[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 328
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L467:
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC64[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 329
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -152[rbp], 1
	jmp	.L450
.L440:
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$packet
	mov	QWORD PTR -144[rbp], rax
	cmp	QWORD PTR -144[rbp], 0
	je	.L468
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	mov	WORD PTR -148[rbp], ax
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC65[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 330
	mov	eax, 0
	call	sim_log_debug
	mov	rcx, QWORD PTR -144[rbp]
	mov	rax, QWORD PTR -136[rbp]
	mov	edx, 49
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	movzx	eax, BYTE PTR -153[rbp]
	mov	rdx, QWORD PTR -136[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$addDsrHeader
	cmp	al, 1
	je	.L469
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	rcx, QWORD PTR -136[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$addRouteRequest
	cmp	al, 1
	jne	.L470
.L469:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC63[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 331
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$drop
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	jmp	.L438
.L470:
	movzx	edx, WORD PTR -148[rbp]
	movzx	eax, BYTE PTR -153[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC64[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 332
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -152[rbp], 1
	jmp	.L450
.L468:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC66[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 333
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -153[rbp], al
	nop
.L438:
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$end
	test	al, al
	je	.L471
	jmp	.L450
.L482:
	nop
.L450:
	cmp	BYTE PTR -152[rbp], 0
	je	.L437
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$get
	test	al, al
	jne	.L473
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC67[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 334
	mov	eax, 0
	call	sim_log_error
.L473:
	lea	rax, -80[rbp]
	mov	rdi, rax
	call	DsrControlP$0$ComposePacket$payloadLength
	movzx	edx, al
	movzx	eax, WORD PTR -148[rbp]
	lea	rcx, -80[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$Send$send
	movzx	eax, al
	cmp	eax, 5
	je	.L474
	cmp	eax, 5
	jg	.L475
	cmp	eax, 4
	je	.L476
	cmp	eax, 4
	jg	.L475
	test	eax, eax
	je	.L477
	cmp	eax, 2
	je	.L478
	jmp	.L475
.L477:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC68[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 335
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	jmp	.L475
.L474:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC69[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 336
	mov	eax, 0
	call	sim_log_error
	jmp	.L437
.L476:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC70[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 337
	mov	eax, 0
	call	sim_log_error
	jmp	.L437
.L478:
	movzx	eax, BYTE PTR -153[rbp]
	mov	ecx, eax
	lea	rdx, .LC71[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 338
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$clear
	movzx	eax, BYTE PTR -153[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$drop
	call	DsrControlP$0$composePkt$postTask
	jmp	.L437
.L475:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$type
	cmp	al, 48
	jne	.L437
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$length
	mov	BYTE PTR -150[rbp], al
	cmp	BYTE PTR -150[rbp], 0
	je	.L437
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$isForMe
	test	al, al
	je	.L437
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$remove
	movzx	eax, BYTE PTR -153[rbp]
	mov	rdx, QWORD PTR -144[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$receiveAdded
.L437:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L481
	call	__stack_chk_fail@PLT
.L481:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE191:
	.size	DsrControlP$0$composePkt$runTask, .-DsrControlP$0$composePkt$runTask
	.type	SourceShortestPathP$0$buildTreeTask$postTask, @function
SourceShortestPathP$0$buildTreeTask$postTask:
.LFB192:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 8
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE192:
	.size	SourceShortestPathP$0$buildTreeTask$postTask, .-SourceShortestPathP$0$buildTreeTask$postTask
	.type	PriorityQueueP$0$PriorityQueue$moveUp, @function
PriorityQueueP$0$PriorityQueue$moveUp:
.LFB193:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	edi, eax
	call	PriorityQueueP$0$moveUpPos
	call	PriorityQueueP$0$printTree
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE193:
	.size	PriorityQueueP$0$PriorityQueue$moveUp, .-PriorityQueueP$0$PriorityQueue$moveUp
	.type	SourceShortestPathP$0$PriorityQueue$moveUp, @function
SourceShortestPathP$0$PriorityQueue$moveUp:
.LFB194:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	PriorityQueueP$0$PriorityQueue$moveUp
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE194:
	.size	SourceShortestPathP$0$PriorityQueue$moveUp, .-SourceShortestPathP$0$PriorityQueue$moveUp
	.type	SourceShortestPathP$0$PriorityQueue$insert, @function
SourceShortestPathP$0$PriorityQueue$insert:
.LFB195:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	PriorityQueueP$0$PriorityQueue$insert
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE195:
	.size	SourceShortestPathP$0$PriorityQueue$insert, .-SourceShortestPathP$0$PriorityQueue$insert
	.type	GraphEdgeUnitWeightC$GraphEdgeWeight$weight, @function
GraphEdgeUnitWeightC$GraphEdgeWeight$weight:
.LFB196:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	mov	eax, 1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE196:
	.size	GraphEdgeUnitWeightC$GraphEdgeWeight$weight, .-GraphEdgeUnitWeightC$GraphEdgeWeight$weight
	.type	SourceShortestPathP$0$GraphEdgeWeight$weight, @function
SourceShortestPathP$0$GraphEdgeWeight$weight:
.LFB197:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	GraphEdgeUnitWeightC$GraphEdgeWeight$weight
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE197:
	.size	SourceShortestPathP$0$GraphEdgeWeight$weight, .-SourceShortestPathP$0$GraphEdgeWeight$weight
	.type	GraphSparseP$0$GraphEdge$dest, @function
GraphSparseP$0$GraphEdge$dest:
.LFB198:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	movzx	edx, BYTE PTR -4[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE198:
	.size	GraphSparseP$0$GraphEdge$dest, .-GraphSparseP$0$GraphEdge$dest
	.type	SourceShortestPathP$0$GraphEdge$dest, @function
SourceShortestPathP$0$GraphEdge$dest:
.LFB199:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	GraphSparseP$0$GraphEdge$dest
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE199:
	.size	SourceShortestPathP$0$GraphEdge$dest, .-SourceShortestPathP$0$GraphEdge$dest
	.type	GraphSparseP$0$GraphEdgeList$next, @function
GraphSparseP$0$GraphEdgeList$next:
.LFB200:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	movzx	edx, BYTE PTR -4[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip+1]
	movzx	eax, BYTE PTR [rdx+rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE200:
	.size	GraphSparseP$0$GraphEdgeList$next, .-GraphSparseP$0$GraphEdgeList$next
	.type	SourceShortestPathP$0$GraphEdgeList$next, @function
SourceShortestPathP$0$GraphEdgeList$next:
.LFB201:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	GraphSparseP$0$GraphEdgeList$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE201:
	.size	SourceShortestPathP$0$GraphEdgeList$next, .-SourceShortestPathP$0$GraphEdgeList$next
	.type	GraphSparseP$0$GraphEdgeList$end, @function
GraphSparseP$0$GraphEdgeList$end:
.LFB202:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], -6
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE202:
	.size	GraphSparseP$0$GraphEdgeList$end, .-GraphSparseP$0$GraphEdgeList$end
	.type	SourceShortestPathP$0$GraphEdgeList$end, @function
SourceShortestPathP$0$GraphEdgeList$end:
.LFB203:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	GraphSparseP$0$GraphEdgeList$end
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE203:
	.size	SourceShortestPathP$0$GraphEdgeList$end, .-SourceShortestPathP$0$GraphEdgeList$end
	.type	GraphSparseP$0$Graph$edgeList, @function
GraphSparseP$0$Graph$edgeList:
.LFB204:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE204:
	.size	GraphSparseP$0$Graph$edgeList, .-GraphSparseP$0$Graph$edgeList
	.type	SourceShortestPathP$0$Graph$edgeList, @function
SourceShortestPathP$0$Graph$edgeList:
.LFB205:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	GraphSparseP$0$Graph$edgeList
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE205:
	.size	SourceShortestPathP$0$Graph$edgeList, .-SourceShortestPathP$0$Graph$edgeList
	.type	PriorityQueueP$0$PriorityQueue$clear, @function
PriorityQueueP$0$PriorityQueue$clear:
.LFB206:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	PriorityQueueP$0$clearData
	call	PriorityQueueP$0$printTree
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE206:
	.size	PriorityQueueP$0$PriorityQueue$clear, .-PriorityQueueP$0$PriorityQueue$clear
	.type	SourceShortestPathP$0$PriorityQueue$clear, @function
SourceShortestPathP$0$PriorityQueue$clear:
.LFB207:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	PriorityQueueP$0$PriorityQueue$clear
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE207:
	.size	SourceShortestPathP$0$PriorityQueue$clear, .-SourceShortestPathP$0$PriorityQueue$clear
	.type	SourceShortestPathP$0$Compare$test, @function
SourceShortestPathP$0$Compare$test:
.LFB208:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -24[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	eax, ebx
	sub	eax, edx
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE208:
	.size	SourceShortestPathP$0$Compare$test, .-SourceShortestPathP$0$Compare$test
	.type	PriorityQueueP$0$Compare$test, @function
PriorityQueueP$0$Compare$test:
.LFB209:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	SourceShortestPathP$0$Compare$test
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE209:
	.size	PriorityQueueP$0$Compare$test, .-PriorityQueueP$0$Compare$test
	.section	.rodata
	.align 8
.LC72:
	.string	"PQ: Moving heap position %hhu down if needed\n"
.LC73:
	.string	"PriorityQueueC"
	.text
	.type	PriorityQueueP$0$moveDownPos, @function
PriorityQueueP$0$moveDownPos:
.LFB210:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	movzx	eax, BYTE PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC72[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 361
	mov	eax, 0
	call	sim_log_debug
	jmp	.L516
.L520:
	movzx	eax, BYTE PTR -17[rbp]
	lea	edx, 1[rax]
	movzx	eax, BYTE PTR -40[rbp]
	cmp	edx, eax
	jge	.L517
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	esi, ebx
	mov	edi, eax
	call	PriorityQueueP$0$Compare$test
	test	ax, ax
	jle	.L517
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L517:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	esi, ebx
	mov	edi, eax
	call	PriorityQueueP$0$Compare$test
	test	ax, ax
	jg	.L521
	movzx	edx, BYTE PTR -17[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PriorityQueueP$0$flip
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR -36[rbp], al
.L516:
	movzx	eax, BYTE PTR -36[rbp]
	add	eax, eax
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -17[rbp]
	cmp	al, BYTE PTR -40[rbp]
	jb	.L520
	jmp	.L522
.L521:
	nop
.L522:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE210:
	.size	PriorityQueueP$0$moveDownPos, .-PriorityQueueP$0$moveDownPos
	.section	.rodata
	.align 8
.LC74:
	.string	"PQ: Removing best, index %hhu\n"
	.text
	.type	PriorityQueueP$0$PriorityQueue$removeBest, @function
PriorityQueueP$0$PriorityQueue$removeBest:
.LFB211:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, PriorityQueueP$0$size[rip]
	mov	BYTE PTR [rax+rdx], cl
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	esi, eax
	mov	edi, 0
	call	PriorityQueueP$0$flip
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	esi, eax
	mov	edi, 0
	call	PriorityQueueP$0$moveDownPos
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC74[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 359
	mov	eax, 0
	call	sim_log_debug
	call	PriorityQueueP$0$printTree
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	r12, rax
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, r12
	sal	rax, 2
	add	rax, r12
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 20
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE211:
	.size	PriorityQueueP$0$PriorityQueue$removeBest, .-PriorityQueueP$0$PriorityQueue$removeBest
	.type	SourceShortestPathP$0$PriorityQueue$removeBest, @function
SourceShortestPathP$0$PriorityQueue$removeBest:
.LFB212:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PriorityQueueP$0$PriorityQueue$removeBest
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE212:
	.size	SourceShortestPathP$0$PriorityQueue$removeBest, .-SourceShortestPathP$0$PriorityQueue$removeBest
	.type	SourceShortestPathP$0$SourceShortestPath$buildTree, @function
SourceShortestPathP$0$SourceShortestPath$buildTree:
.LFB213:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, 20
	mov	edi, eax
	call	SourceShortestPathP$0$SourceShortestPath$buildTreeTo
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE213:
	.size	SourceShortestPathP$0$SourceShortestPath$buildTree, .-SourceShortestPathP$0$SourceShortestPath$buildTree
	.type	SimpleLinkCacheP$SourceShortestPath$buildTree, @function
SimpleLinkCacheP$SourceShortestPath$buildTree:
.LFB214:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$SourceShortestPath$buildTree
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE214:
	.size	SimpleLinkCacheP$SourceShortestPath$buildTree, .-SimpleLinkCacheP$SourceShortestPath$buildTree
	.type	SourceShortestPathP$0$SourceShortestPath$rebuildNeeded, @function
SourceShortestPathP$0$SourceShortestPath$rebuildNeeded:
.LFB215:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L532
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -4[rbp], al
	je	.L533
.L532:
	mov	eax, 1
	jmp	.L534
.L533:
	mov	eax, 0
.L534:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE215:
	.size	SourceShortestPathP$0$SourceShortestPath$rebuildNeeded, .-SourceShortestPathP$0$SourceShortestPath$rebuildNeeded
	.type	SimpleLinkCacheP$SourceShortestPath$rebuildNeeded, @function
SimpleLinkCacheP$SourceShortestPath$rebuildNeeded:
.LFB216:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$SourceShortestPath$rebuildNeeded
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE216:
	.size	SimpleLinkCacheP$SourceShortestPath$rebuildNeeded, .-SimpleLinkCacheP$SourceShortestPath$rebuildNeeded
	.type	SimpleLinkCacheP$RouteCache$routeUpdate, @function
SimpleLinkCacheP$RouteCache$routeUpdate:
.LFB217:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	DsrControlP$0$RouteCache$routeUpdate
	movzx	edx, BYTE PTR -12[rbp]
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	DsrControlP$0$SalvageRouteCache$routeUpdate
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE217:
	.size	SimpleLinkCacheP$RouteCache$routeUpdate, .-SimpleLinkCacheP$RouteCache$routeUpdate
	.type	BitVectorC$2$getMask, @function
BitVectorC$2$getMask:
.LFB218:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	and	eax, 7
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE218:
	.size	BitVectorC$2$getMask, .-BitVectorC$2$getMask
	.type	BitVectorC$2$getIndex, @function
BitVectorC$2$getIndex:
.LFB219:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	shr	ax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE219:
	.size	BitVectorC$2$getIndex, .-BitVectorC$2$getIndex
	.type	BitVectorC$2$BitVector$clear, @function
BitVectorC$2$BitVector$clear:
.LFB220:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$2$getMask
	movzx	eax, ax
	not	eax
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$2$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$2$m_bits[rip]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	mov	ecx, eax
	mov	eax, r12d
	and	ecx, eax
	movzx	eax, dx
	mov	edx, ecx
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$2$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE220:
	.size	BitVectorC$2$BitVector$clear, .-BitVectorC$2$BitVector$clear
	.type	SimpleLinkCacheP$Track$clear, @function
SimpleLinkCacheP$Track$clear:
.LFB221:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$2$BitVector$clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE221:
	.size	SimpleLinkCacheP$Track$clear, .-SimpleLinkCacheP$Track$clear
	.type	SimpleLinkCacheP$SourceShortestPath$edgeCount, @function
SimpleLinkCacheP$SourceShortestPath$edgeCount:
.LFB222:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$SourceShortestPath$edgeCount
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE222:
	.size	SimpleLinkCacheP$SourceShortestPath$edgeCount, .-SimpleLinkCacheP$SourceShortestPath$edgeCount
	.type	SimpleLinkCacheP$Track$get, @function
SimpleLinkCacheP$Track$get:
.LFB223:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$2$BitVector$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE223:
	.size	SimpleLinkCacheP$Track$get, .-SimpleLinkCacheP$Track$get
	.type	BitVectorC$3$getMask, @function
BitVectorC$3$getMask:
.LFB224:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	and	eax, 7
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE224:
	.size	BitVectorC$3$getMask, .-BitVectorC$3$getMask
	.type	BitVectorC$3$getIndex, @function
BitVectorC$3$getIndex:
.LFB225:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	shr	ax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE225:
	.size	BitVectorC$3$getIndex, .-BitVectorC$3$getIndex
	.type	BitVectorC$3$BitVector$clear, @function
BitVectorC$3$BitVector$clear:
.LFB226:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$3$getMask
	movzx	eax, ax
	not	eax
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$3$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$3$m_bits[rip]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	mov	ecx, eax
	mov	eax, r12d
	and	ecx, eax
	movzx	eax, dx
	mov	edx, ecx
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$3$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE226:
	.size	BitVectorC$3$BitVector$clear, .-BitVectorC$3$BitVector$clear
	.type	SimpleLinkCacheP$Initial$clear, @function
SimpleLinkCacheP$Initial$clear:
.LFB227:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$3$BitVector$clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE227:
	.size	SimpleLinkCacheP$Initial$clear, .-SimpleLinkCacheP$Initial$clear
	.type	SimpleLinkCacheP$Initial$get, @function
SimpleLinkCacheP$Initial$get:
.LFB228:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$3$BitVector$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE228:
	.size	SimpleLinkCacheP$Initial$get, .-SimpleLinkCacheP$Initial$get
	.type	BitVectorC$2$BitVector$size, @function
BitVectorC$2$BitVector$size:
.LFB229:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 20
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE229:
	.size	BitVectorC$2$BitVector$size, .-BitVectorC$2$BitVector$size
	.type	SimpleLinkCacheP$Track$size, @function
SimpleLinkCacheP$Track$size:
.LFB230:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	BitVectorC$2$BitVector$size
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE230:
	.size	SimpleLinkCacheP$Track$size, .-SimpleLinkCacheP$Track$size
	.type	SimpleLinkCacheP$SourceShortestPath$builtTree, @function
SimpleLinkCacheP$SourceShortestPath$builtTree:
.LFB231:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	eax, edi
	mov	BYTE PTR -36[rbp], al
	mov	BYTE PTR -18[rbp], 0
	jmp	.L562
.L566:
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Initial$get
	test	al, al
	je	.L563
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Initial$clear
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$edgeCount
	mov	BYTE PTR -17[rbp], al
	cmp	BYTE PTR -17[rbp], 0
	je	.L564
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Track$clear
.L564:
	movzx	edx, BYTE PTR -17[rbp]
	movzx	ecx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$routeUpdate
	jmp	.L565
.L563:
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Track$get
	test	al, al
	je	.L565
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$edgeCount
	mov	BYTE PTR -17[rbp], al
	cmp	BYTE PTR -17[rbp], 0
	je	.L565
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Track$clear
	movzx	edx, BYTE PTR -17[rbp]
	movzx	ecx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$routeUpdate
.L565:
	movzx	eax, BYTE PTR -18[rbp]
	add	eax, 1
	mov	BYTE PTR -18[rbp], al
.L562:
	movzx	ebx, BYTE PTR -18[rbp]
	call	SimpleLinkCacheP$Track$size
	cmp	bx, ax
	jb	.L566
	movzx	eax, BYTE PTR -36[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$rebuildNeeded
	test	al, al
	je	.L568
	movzx	eax, BYTE PTR -36[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$buildTree
.L568:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE231:
	.size	SimpleLinkCacheP$SourceShortestPath$builtTree, .-SimpleLinkCacheP$SourceShortestPath$builtTree
	.type	SourceShortestPathP$0$SourceShortestPath$builtTree, @function
SourceShortestPathP$0$SourceShortestPath$builtTree:
.LFB232:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$builtTree
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE232:
	.size	SourceShortestPathP$0$SourceShortestPath$builtTree, .-SourceShortestPathP$0$SourceShortestPath$builtTree
	.type	SimpleLinkCacheP$SourceShortestPath$builtTreeTo, @function
SimpleLinkCacheP$SourceShortestPath$builtTreeTo:
.LFB233:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -12[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE233:
	.size	SimpleLinkCacheP$SourceShortestPath$builtTreeTo, .-SimpleLinkCacheP$SourceShortestPath$builtTreeTo
	.type	SourceShortestPathP$0$SourceShortestPath$builtTreeTo, @function
SourceShortestPathP$0$SourceShortestPath$builtTreeTo:
.LFB234:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$builtTreeTo
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE234:
	.size	SourceShortestPathP$0$SourceShortestPath$builtTreeTo, .-SourceShortestPathP$0$SourceShortestPath$builtTreeTo
	.section	.rodata
.LC75:
	.string	"SSP: Current SPT:\n"
.LC76:
	.string	"SourceShortestPathP"
.LC77:
	.string	"Dest %u: "
.LC78:
	.string	"X\n"
.LC79:
	.string	"%s, Cost: %u\n"
	.text
	.type	SourceShortestPathP$0$printPaths, @function
SourceShortestPathP$0$printPaths:
.LFB235:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 112
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, .LC75[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 378
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -97[rbp], 0
	jmp	.L573
.L576:
	movzx	eax, BYTE PTR -97[rbp]
	mov	ecx, eax
	lea	rdx, .LC77[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 379
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -97[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 20
	jne	.L574
	lea	rdx, .LC78[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 380
	mov	eax, 0
	call	sim_log_debug_clear
	jmp	.L575
.L574:
	mov	QWORD PTR -96[rbp], 0
	mov	QWORD PTR -88[rbp], 0
	mov	QWORD PTR -80[rbp], 0
	mov	QWORD PTR -72[rbp], 0
	mov	QWORD PTR -64[rbp], 0
	mov	QWORD PTR -48[rbp], 0
	mov	QWORD PTR -40[rbp], 0
	mov	QWORD PTR -32[rbp], 0
	mov	QWORD PTR -24[rbp], 0
	mov	QWORD PTR -16[rbp], 0
	movzx	eax, BYTE PTR -97[rbp]
	lea	rdx, -48[rbp]
	lea	rcx, -96[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	SourceShortestPathP$0$printPathLink
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -97[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	lea	rax, -96[rbp]
	mov	r8d, edx
	mov	rcx, rax
	lea	rdx, .LC79[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 381
	mov	eax, 0
	call	sim_log_debug_clear
.L575:
	movzx	eax, BYTE PTR -97[rbp]
	add	eax, 1
	mov	BYTE PTR -97[rbp], al
.L573:
	cmp	BYTE PTR -97[rbp], 19
	jbe	.L576
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L577
	call	__stack_chk_fail@PLT
.L577:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE235:
	.size	SourceShortestPathP$0$printPaths, .-SourceShortestPathP$0$printPaths
	.type	PriorityQueueP$0$PriorityQueue$empty, @function
PriorityQueueP$0$PriorityQueue$empty:
.LFB236:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE236:
	.size	PriorityQueueP$0$PriorityQueue$empty, .-PriorityQueueP$0$PriorityQueue$empty
	.type	SourceShortestPathP$0$PriorityQueue$empty, @function
SourceShortestPathP$0$PriorityQueue$empty:
.LFB237:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PriorityQueueP$0$PriorityQueue$empty
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE237:
	.size	SourceShortestPathP$0$PriorityQueue$empty, .-SourceShortestPathP$0$PriorityQueue$empty
	.section	.rodata
	.align 8
.LC80:
	.string	"SSP: Destination vertex %u added to SPT, stopping build early.\n"
	.align 8
.LC81:
	.string	"SSP: No path was found to destination %u!\n"
	.align 8
.LC82:
	.string	"SSP: Added edge %u -> %u to SPT\n"
	.align 8
.LC83:
	.string	"SSP: Adding edge %u -> %u (%u) to PQ\n"
	.align 8
.LC84:
	.string	"SSP: Edge %u -> %u (%u) replacing %u -> %u (%u) in PQ\n"
	.text
	.type	SourceShortestPathP$0$buildTreeTask$runTask, @function
SourceShortestPathP$0$buildTreeTask$runTask:
.LFB238:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	call	SourceShortestPathP$0$PriorityQueue$empty
	test	al, al
	je	.L583
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	je	.L584
	call	sim_node
	lea	rdx, SourceShortestPathP$0$foundDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L585
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC80[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 373
	mov	eax, 0
	call	sim_log_debug
	jmp	.L584
.L585:
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC81[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 374
	mov	eax, 0
	call	sim_log_debug
.L584:
	call	sim_node
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	SourceShortestPathP$0$printPaths
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	je	.L586
	call	sim_node
	lea	rdx, SourceShortestPathP$0$foundDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	r12d, al
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edx, r12d
	mov	esi, ebx
	mov	edi, eax
	call	SourceShortestPathP$0$SourceShortestPath$builtTreeTo
	jmp	.L593
.L586:
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edi, eax
	call	SourceShortestPathP$0$SourceShortestPath$builtTree
	jmp	.L593
.L583:
	call	SourceShortestPathP$0$PriorityQueue$removeBest
	mov	BYTE PTR -19[rbp], al
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -19[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	esi, BYTE PTR -19[rbp]
	movsx	rcx, r12d
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rcx, rax
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rsi]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -19[rbp], al
	jne	.L588
	call	sim_node
	lea	rdx, SourceShortestPathP$0$foundDest[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	SourceShortestPathP$0$PriorityQueue$clear
	call	SourceShortestPathP$0$buildTreeTask$postTask
.L588:
	movzx	ebx, BYTE PTR -19[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -19[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	r8d, ebx
	mov	ecx, eax
	lea	rdx, .LC82[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 375
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -19[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$Graph$edgeList
	mov	BYTE PTR -20[rbp], al
	jmp	.L589
.L592:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$GraphEdge$dest
	mov	BYTE PTR -18[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -19[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	movzx	ebx, BYTE PTR [rax]
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$GraphEdgeWeight$weight
	add	eax, ebx
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 20
	jne	.L590
	movzx	ecx, BYTE PTR -17[rbp]
	movzx	edx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -19[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC83[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 376
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR [rdx], al
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$PriorityQueue$insert
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -19[rbp]
	mov	BYTE PTR [rdx], al
	jmp	.L591
.L590:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 20
	jne	.L591
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	BYTE PTR -17[rbp], al
	jnb	.L591
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	r12d, al
	movzx	ebx, BYTE PTR -18[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	movzx	esi, BYTE PTR -17[rbp]
	movzx	ecx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -19[rbp]
	sub	rsp, 8
	push	r12
	push	rbx
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, .LC84[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 377
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 32
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR [rdx], al
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$PriorityQueue$moveUp
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -19[rbp]
	mov	BYTE PTR [rdx], al
.L591:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$GraphEdgeList$next
	mov	BYTE PTR -20[rbp], al
.L589:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$GraphEdgeList$end
	test	al, al
	je	.L592
	call	SourceShortestPathP$0$buildTreeTask$postTask
.L593:
	nop
	lea	rsp, -16[rbp]
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE238:
	.size	SourceShortestPathP$0$buildTreeTask$runTask, .-SourceShortestPathP$0$buildTreeTask$runTask
	.type	AMQueueImplP$0$errorTask$runTask, @function
AMQueueImplP$0$errorTask$runTask:
.LFB239:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, [rbx+rbx]
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edx, 1
	mov	rsi, rbx
	mov	edi, eax
	call	AMQueueImplP$0$sendDone
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE239:
	.size	AMQueueImplP$0$errorTask$runTask, .-AMQueueImplP$0$errorTask$runTask
	.type	AMQueueEntryP$0$AMSend$sendDone, @function
AMQueueEntryP$0$AMSend$sendDone:
.LFB240:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	mov	edi, 48
	call	PacketEngineP$SubSend$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE240:
	.size	AMQueueEntryP$0$AMSend$sendDone, .-AMQueueEntryP$0$AMSend$sendDone
	.type	AMQueueEntryP$0$Send$sendDone, @function
AMQueueEntryP$0$Send$sendDone:
.LFB241:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$0$AMSend$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE241:
	.size	AMQueueEntryP$0$Send$sendDone, .-AMQueueEntryP$0$Send$sendDone
	.type	AMQueueEntryP$1$AMSend$sendDone, @function
AMQueueEntryP$1$AMSend$sendDone:
.LFB242:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	mov	edi, 4
	call	PacketEngineP$SubSend$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE242:
	.size	AMQueueEntryP$1$AMSend$sendDone, .-AMQueueEntryP$1$AMSend$sendDone
	.type	AMQueueEntryP$1$Send$sendDone, @function
AMQueueEntryP$1$Send$sendDone:
.LFB243:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$1$AMSend$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE243:
	.size	AMQueueEntryP$1$Send$sendDone, .-AMQueueEntryP$1$Send$sendDone
	.type	AMQueueImplP$0$Send$default$sendDone, @function
AMQueueImplP$0$Send$default$sendDone:
.LFB244:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE244:
	.size	AMQueueImplP$0$Send$default$sendDone, .-AMQueueImplP$0$Send$default$sendDone
	.type	AMQueueImplP$0$Send$sendDone, @function
AMQueueImplP$0$Send$sendDone:
.LFB245:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	test	eax, eax
	je	.L601
	cmp	eax, 1
	je	.L602
	jmp	.L605
.L601:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$0$Send$sendDone
	jmp	.L604
.L602:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueEntryP$1$Send$sendDone
	jmp	.L604
.L605:
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueImplP$0$Send$default$sendDone
	nop
.L604:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE245:
	.size	AMQueueImplP$0$Send$sendDone, .-AMQueueImplP$0$Send$sendDone
	.type	AMQueueImplP$0$CancelTask$runTask, @function
AMQueueImplP$0$CancelTask$runTask:
.LFB246:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	BYTE PTR -12[rbp], 0
	jmp	.L607
.L612:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -12[rbp]
	cdqe
	add	rdx, rax
	lea	rax, AMQueueImplP$0$cancelMask[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L608
	mov	BYTE PTR -10[rbp], 1
	mov	BYTE PTR -11[rbp], 0
	jmp	.L609
.L611:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -12[rbp]
	cdqe
	add	rdx, rax
	lea	rax, AMQueueImplP$0$cancelMask[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	and	al, BYTE PTR -10[rbp]
	test	al, al
	je	.L610
	movzx	eax, BYTE PTR -12[rbp]
	lea	edx, 0[0+rax*8]
	movzx	eax, BYTE PTR -11[rbp]
	add	eax, edx
	mov	BYTE PTR -9[rbp], al
	call	sim_node
	movzx	edx, BYTE PTR -9[rbp]
	movsx	rdx, edx
	add	rax, rax
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -8[rbp], rax
	call	sim_node
	movzx	edx, BYTE PTR -9[rbp]
	movsx	rdx, edx
	add	rax, rax
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	QWORD PTR [rdx+rax], 0
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -12[rbp]
	cdqe
	lea	rcx, [rdx+rax]
	lea	rax, AMQueueImplP$0$cancelMask[rip]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	mov	ecx, eax
	movzx	eax, BYTE PTR -10[rbp]
	not	eax
	and	ecx, eax
	movzx	eax, BYTE PTR -12[rbp]
	cdqe
	add	rdx, rax
	lea	rax, AMQueueImplP$0$cancelMask[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	movzx	eax, BYTE PTR -9[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	edx, 3
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueImplP$0$Send$sendDone
.L610:
	sal	BYTE PTR -10[rbp]
	movzx	eax, BYTE PTR -11[rbp]
	add	eax, 1
	mov	BYTE PTR -11[rbp], al
.L609:
	cmp	BYTE PTR -11[rbp], 7
	jbe	.L611
.L608:
	movzx	eax, BYTE PTR -12[rbp]
	add	eax, 1
	mov	BYTE PTR -12[rbp], al
.L607:
	cmp	BYTE PTR -12[rbp], 0
	je	.L612
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE246:
	.size	AMQueueImplP$0$CancelTask$runTask, .-AMQueueImplP$0$CancelTask$runTask
	.type	SimSchedulerBasicP$TaskBasic$default$runTask, @function
SimSchedulerBasicP$TaskBasic$default$runTask:
.LFB247:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE247:
	.size	SimSchedulerBasicP$TaskBasic$default$runTask, .-SimSchedulerBasicP$TaskBasic$default$runTask
	.type	SimSchedulerBasicP$TaskBasic$runTask, @function
SimSchedulerBasicP$TaskBasic$runTask:
.LFB248:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	eax, 10
	ja	.L615
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L617[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L617[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L617:
	.long	.L627-.L617
	.long	.L626-.L617
	.long	.L625-.L617
	.long	.L624-.L617
	.long	.L623-.L617
	.long	.L622-.L617
	.long	.L621-.L617
	.long	.L620-.L617
	.long	.L619-.L617
	.long	.L618-.L617
	.long	.L616-.L617
	.text
.L627:
	call	PacketEngineP$msgAdded$runTask
	jmp	.L628
.L626:
	call	PacketEngineP$msgAction$runTask
	jmp	.L628
.L625:
	call	AlarmToTimerC$0$fired$runTask
	jmp	.L628
.L624:
	call	VirtualizeTimerC$0$updateFromTimer$runTask
	jmp	.L628
.L623:
	call	TossimPacketModelC$startDoneTask$runTask
	jmp	.L628
.L622:
	call	TossimPacketModelC$stopDoneTask$runTask
	jmp	.L628
.L621:
	call	TossimPacketModelC$sendDoneTask$runTask
	jmp	.L628
.L620:
	call	DsrControlP$0$composePkt$runTask
	jmp	.L628
.L619:
	call	SourceShortestPathP$0$buildTreeTask$runTask
	jmp	.L628
.L618:
	call	AMQueueImplP$0$CancelTask$runTask
	jmp	.L628
.L616:
	call	AMQueueImplP$0$errorTask$runTask
	jmp	.L628
.L615:
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SimSchedulerBasicP$TaskBasic$default$runTask
	nop
.L628:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE248:
	.size	SimSchedulerBasicP$TaskBasic$runTask, .-SimSchedulerBasicP$TaskBasic$runTask
	.section	.rodata
	.align 8
.LC85:
	.string	"PE: Forced send action to done due to bad combine!\n"
	.text
	.type	pktSendActionCombine, @function
pktSendActionCombine:
.LFB249:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	al, BYTE PTR -8[rbp]
	jne	.L630
	movzx	eax, BYTE PTR -4[rbp]
	jmp	.L631
.L630:
	cmp	BYTE PTR -4[rbp], 3
	jne	.L632
	movzx	eax, BYTE PTR -8[rbp]
	jmp	.L631
.L632:
	cmp	BYTE PTR -8[rbp], 3
	jne	.L633
	movzx	eax, BYTE PTR -4[rbp]
	jmp	.L631
.L633:
	lea	rdx, .LC85[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 46
	mov	eax, 0
	call	sim_log_error
	mov	eax, 0
.L631:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE249:
	.size	pktSendActionCombine, .-pktSendActionCombine
	.type	DsrControlP$0$SinglePacketEngine$sendDone, @function
DsrControlP$0$SinglePacketEngine$sendDone:
.LFB250:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	mov	eax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE250:
	.size	DsrControlP$0$SinglePacketEngine$sendDone, .-DsrControlP$0$SinglePacketEngine$sendDone
	.type	DsrControlP$0$DsrPacketEngine$sendDone, @function
DsrControlP$0$DsrPacketEngine$sendDone:
.LFB251:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	mov	eax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE251:
	.size	DsrControlP$0$DsrPacketEngine$sendDone, .-DsrControlP$0$DsrPacketEngine$sendDone
	.type	PacketEngineP$PacketEngine$default$sendDone, @function
PacketEngineP$PacketEngine$default$sendDone:
.LFB252:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -16[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	edx, esi
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 140
	mov	eax, 0
	call	sim_log_error
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE252:
	.size	PacketEngineP$PacketEngine$default$sendDone, .-PacketEngineP$PacketEngine$default$sendDone
	.type	PacketEngineP$PacketEngine$sendDone, @function
PacketEngineP$PacketEngine$sendDone:
.LFB253:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	edx, esi
	mov	BYTE PTR -24[rbp], dl
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 4
	je	.L641
	cmp	eax, 48
	je	.L642
	jmp	.L646
.L641:
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, BYTE PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$sendDone
	mov	BYTE PTR -1[rbp], al
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, BYTE PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$sendDone
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	pktSendActionCombine
	mov	BYTE PTR -1[rbp], al
	jmp	.L644
.L642:
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, BYTE PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$sendDone
	mov	BYTE PTR -1[rbp], al
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, BYTE PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$sendDone
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	pktSendActionCombine
	mov	BYTE PTR -1[rbp], al
	jmp	.L644
.L646:
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	esi, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngine$default$sendDone
	mov	BYTE PTR -1[rbp], al
	nop
.L644:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE253:
	.size	PacketEngineP$PacketEngine$sendDone, .-PacketEngineP$PacketEngine$sendDone
	.type	TossimPacketModelC$PacketAcknowledgements$wasAcked, @function
TossimPacketModelC$PacketAcknowledgements$wasAcked:
.LFB254:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$getMetadata
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE254:
	.size	TossimPacketModelC$PacketAcknowledgements$wasAcked, .-TossimPacketModelC$PacketAcknowledgements$wasAcked
	.type	DsrControlP$0$Acks$wasAcked, @function
DsrControlP$0$Acks$wasAcked:
.LFB255:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$PacketAcknowledgements$wasAcked
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE255:
	.size	DsrControlP$0$Acks$wasAcked, .-DsrControlP$0$Acks$wasAcked
	.type	DsrControlP$0$RouteCache$removeLink, @function
DsrControlP$0$RouteCache$removeLink:
.LFB256:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$removeLink
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE256:
	.size	DsrControlP$0$RouteCache$removeLink, .-DsrControlP$0$RouteCache$removeLink
	.type	SimpleLinkCacheP$Graph$remove, @function
SimpleLinkCacheP$Graph$remove:
.LFB257:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	GraphSparseP$0$Graph$remove
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE257:
	.size	SimpleLinkCacheP$Graph$remove, .-SimpleLinkCacheP$Graph$remove
	.type	GraphSparseP$0$IndexedAlloc$free, @function
GraphSparseP$0$IndexedAlloc$free:
.LFB258:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	IndexedAllocBitsP$0$IndexedAlloc$free
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE258:
	.size	GraphSparseP$0$IndexedAlloc$free, .-GraphSparseP$0$IndexedAlloc$free
	.type	BitVectorC$4$getMask, @function
BitVectorC$4$getMask:
.LFB259:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	and	eax, 7
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE259:
	.size	BitVectorC$4$getMask, .-BitVectorC$4$getMask
	.type	BitVectorC$4$getIndex, @function
BitVectorC$4$getIndex:
.LFB260:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	shr	ax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE260:
	.size	BitVectorC$4$getIndex, .-BitVectorC$4$getIndex
	.type	BitVectorC$4$BitVector$clear, @function
BitVectorC$4$BitVector$clear:
.LFB261:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$4$getMask
	movzx	eax, ax
	not	eax
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$4$getIndex
	movzx	edx, ax
	movsx	rdx, edx
	mov	rcx, rbx
	sal	rcx, 5
	add	rcx, rdx
	lea	rdx, BitVectorC$4$m_bits[rip]
	add	rdx, rcx
	movzx	edx, BYTE PTR [rdx]
	mov	ecx, edx
	mov	edx, r12d
	and	edx, ecx
	movzx	eax, ax
	cdqe
	sal	rbx, 5
	mov	rcx, rbx
	add	rcx, rax
	lea	rax, BitVectorC$4$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE261:
	.size	BitVectorC$4$BitVector$clear, .-BitVectorC$4$BitVector$clear
	.type	IndexedAllocBitsP$0$BitVector$clear, @function
IndexedAllocBitsP$0$BitVector$clear:
.LFB262:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$4$BitVector$clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE262:
	.size	IndexedAllocBitsP$0$BitVector$clear, .-IndexedAllocBitsP$0$BitVector$clear
	.type	SimpleLinkCacheP$Graph$removed, @function
SimpleLinkCacheP$Graph$removed:
.LFB263:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE263:
	.size	SimpleLinkCacheP$Graph$removed, .-SimpleLinkCacheP$Graph$removed
	.type	SourceShortestPathP$0$Graph$removed, @function
SourceShortestPathP$0$Graph$removed:
.LFB264:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	mov	BYTE PTR [rax+rdx], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE264:
	.size	SourceShortestPathP$0$Graph$removed, .-SourceShortestPathP$0$Graph$removed
	.type	GraphSparseP$0$Graph$removed, @function
GraphSparseP$0$Graph$removed:
.LFB265:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$Graph$removed
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Graph$removed
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE265:
	.size	GraphSparseP$0$Graph$removed, .-GraphSparseP$0$Graph$removed
	.type	BitVectorC$0$getMask, @function
BitVectorC$0$getMask:
.LFB266:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	and	eax, 7
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE266:
	.size	BitVectorC$0$getMask, .-BitVectorC$0$getMask
	.type	BitVectorC$0$getIndex, @function
BitVectorC$0$getIndex:
.LFB267:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	shr	ax, 3
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE267:
	.size	BitVectorC$0$getIndex, .-BitVectorC$0$getIndex
	.type	BitVectorC$0$BitVector$set, @function
BitVectorC$0$BitVector$set:
.LFB268:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$0$getMask
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$0$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$0$m_bits[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	mov	esi, r12d
	movzx	eax, dx
	mov	edx, ecx
	or	edx, esi
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$0$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE268:
	.size	BitVectorC$0$BitVector$set, .-BitVectorC$0$BitVector$set
	.type	DsrControlP$0$Compose$set, @function
DsrControlP$0$Compose$set:
.LFB269:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$0$BitVector$set
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE269:
	.size	DsrControlP$0$Compose$set, .-DsrControlP$0$Compose$set
	.type	ecombine, @function
ecombine:
.LFB270:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	al, BYTE PTR -8[rbp]
	jne	.L672
	movzx	eax, BYTE PTR -4[rbp]
	jmp	.L674
.L672:
	mov	eax, 1
.L674:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE270:
	.size	ecombine, .-ecombine
	.type	DsrControlP$0$SingleDsrPacketEngine$upperSendDone, @function
DsrControlP$0$SingleDsrPacketEngine$upperSendDone:
.LFB271:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$upperSendDone
	mov	BYTE PTR -1[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$upperSendDone
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE271:
	.size	DsrControlP$0$SingleDsrPacketEngine$upperSendDone, .-DsrControlP$0$SingleDsrPacketEngine$upperSendDone
	.type	LruDataCacheP$0$DataCache$lookup, @function
LruDataCacheP$0$DataCache$lookup:
.LFB272:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	LruDataCacheP$0$lookup
	mov	BYTE PTR -17[rbp], al
	call	LruDataCacheP$0$printCache
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jne	.L678
	mov	eax, 0
	jmp	.L679
.L678:
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -17[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	lea	ecx, [r12+rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	add	rax, rdx
.L679:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE272:
	.size	LruDataCacheP$0$DataCache$lookup, .-LruDataCacheP$0$DataCache$lookup
	.type	PacketEngineP$SendQueue$lookup, @function
PacketEngineP$SendQueue$lookup:
.LFB273:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$0$DataCache$lookup
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE273:
	.size	PacketEngineP$SendQueue$lookup, .-PacketEngineP$SendQueue$lookup
	.type	PacketEngineP$SendQueueEqual$test, @function
PacketEngineP$SendQueueEqual$test:
.LFB274:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -8[rbp]
	movzx	edx, BYTE PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR [rax]
	cmp	dl, al
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE274:
	.size	PacketEngineP$SendQueueEqual$test, .-PacketEngineP$SendQueueEqual$test
	.type	LruDataCacheP$0$Equal$test, @function
LruDataCacheP$0$Equal$test:
.LFB275:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	PacketEngineP$SendQueueEqual$test
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE275:
	.size	LruDataCacheP$0$Equal$test, .-LruDataCacheP$0$Equal$test
	.section	.rodata
.LC86:
	.string	"Send done with result %hhu\n"
.LC87:
	.string	"TestDsrP"
	.text
	.type	TestDsrP$Send$sendDone, @function
TestDsrP$Send$sendDone:
.LFB276:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	eax, BYTE PTR -12[rbp]
	mov	ecx, eax
	lea	rdx, .LC86[rip]
	lea	rsi, .LC87[rip]
	mov	edi, 111
	mov	eax, 0
	call	sim_log_debug
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE276:
	.size	TestDsrP$Send$sendDone, .-TestDsrP$Send$sendDone
	.section	.rodata
	.align 8
.LC88:
	.string	"SP: Trying to use invalid client id %hhu!\n"
.LC89:
	.string	"SinglePacketP"
	.text
	.type	SinglePacketP$Send$default$sendDone, @function
SinglePacketP$Send$default$sendDone:
.LFB277:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC88[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 399
	mov	eax, 0
	call	sim_log_error
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE277:
	.size	SinglePacketP$Send$default$sendDone, .-SinglePacketP$Send$default$sendDone
	.type	SinglePacketP$Send$sendDone, @function
SinglePacketP$Send$sendDone:
.LFB278:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	test	eax, eax
	je	.L689
	cmp	eax, 1
	je	.L690
	jmp	.L693
.L689:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TestDsrP$Send$sendDone
	jmp	.L692
.L690:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$Send$sendDone
	jmp	.L692
.L693:
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	SinglePacketP$Send$default$sendDone
	nop
.L692:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE278:
	.size	SinglePacketP$Send$sendDone, .-SinglePacketP$Send$sendDone
	.type	SinglePacketP$SubSend$sendDone, @function
SinglePacketP$SubSend$sendDone:
.LFB279:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	SinglePacketP$Send$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE279:
	.size	SinglePacketP$SubSend$sendDone, .-SinglePacketP$SubSend$sendDone
	.section	.rodata
	.align 8
.LC90:
	.string	"PE: Trying to use invalid client id %hhu!\n"
	.text
	.type	PacketEngineP$Send$default$sendDone, @function
PacketEngineP$Send$default$sendDone:
.LFB280:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC90[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 117
	mov	eax, 0
	call	sim_log_error
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE280:
	.size	PacketEngineP$Send$default$sendDone, .-PacketEngineP$Send$default$sendDone
	.type	PacketEngineP$Send$sendDone, @function
PacketEngineP$Send$sendDone:
.LFB281:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	test	eax, eax
	je	.L697
	cmp	eax, 1
	je	.L698
	jmp	.L701
.L697:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rax
	mov	edi, 0
	call	SinglePacketP$SubSend$sendDone
	jmp	.L700
.L698:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	SinglePacketP$SubSend$sendDone
	jmp	.L700
.L701:
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$Send$default$sendDone
	nop
.L700:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE281:
	.size	PacketEngineP$Send$sendDone, .-PacketEngineP$Send$sendDone
	.type	RandomMlcgP$Random$rand16, @function
RandomMlcgP$Random$rand16:
.LFB282:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	RandomMlcgP$Random$rand32
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE282:
	.size	RandomMlcgP$Random$rand16, .-RandomMlcgP$Random$rand16
	.type	PacketEngineP$Random$rand16, @function
PacketEngineP$Random$rand16:
.LFB283:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	RandomMlcgP$Random$rand16
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE283:
	.size	PacketEngineP$Random$rand16, .-PacketEngineP$Random$rand16
	.type	VirtualizeTimerC$0$Timer$startOneShot, @function
VirtualizeTimerC$0$Timer$startOneShot:
.LFB284:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	call	VirtualizeTimerC$0$TimerFrom$getNow
	mov	rsi, rax
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	ecx, 1
	mov	edi, eax
	call	VirtualizeTimerC$0$startTimer
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE284:
	.size	VirtualizeTimerC$0$Timer$startOneShot, .-VirtualizeTimerC$0$Timer$startOneShot
	.type	PacketEngineP$SendBackoff$startOneShot, @function
PacketEngineP$SendBackoff$startOneShot:
.LFB285:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	mov	edi, 0
	call	VirtualizeTimerC$0$Timer$startOneShot
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE285:
	.size	PacketEngineP$SendBackoff$startOneShot, .-PacketEngineP$SendBackoff$startOneShot
	.type	VirtualizeTimerC$0$updateFromTimer$postTask, @function
VirtualizeTimerC$0$updateFromTimer$postTask:
.LFB286:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 3
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE286:
	.size	VirtualizeTimerC$0$updateFromTimer$postTask, .-VirtualizeTimerC$0$updateFromTimer$postTask
	.type	SimMoteP$SimMote$getStartTime, @function
SimMoteP$SimMote$getStartTime:
.LFB287:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$startTime[rip]
	mov	rax, QWORD PTR [rdx+rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE287:
	.size	SimMoteP$SimMote$getStartTime, .-SimMoteP$SimMote$getStartTime
	.type	HplAtm128Timer0AsyncP$notify_clockTicksPerSec, @function
HplAtm128Timer0AsyncP$notify_clockTicksPerSec:
.LFB288:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 32768
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE288:
	.size	HplAtm128Timer0AsyncP$notify_clockTicksPerSec, .-HplAtm128Timer0AsyncP$notify_clockTicksPerSec
	.type	HplAtm128Timer0AsyncP$sim_to_clock, @function
HplAtm128Timer0AsyncP$sim_to_clock:
.LFB289:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	HplAtm128Timer0AsyncP$notify_clockTicksPerSec
	mov	rdx, QWORD PTR -8[rbp]
	imul	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	call	sim_ticks_per_sec
	mov	rcx, rax
	mov	rax, QWORD PTR -8[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE289:
	.size	HplAtm128Timer0AsyncP$sim_to_clock, .-HplAtm128Timer0AsyncP$sim_to_clock
	.type	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag, @function
Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag:
.LFB290:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE290:
	.size	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag, .-Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag
	.type	StateImplP$State$forceState, @function
StateImplP$State$forceState:
.LFB291:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -1[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	cdqe
	add	rdx, rax
	lea	rax, StateImplP$state[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -24[rbp]
	mov	BYTE PTR [rdx], al
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE291:
	.size	StateImplP$State$forceState, .-StateImplP$State$forceState
	.type	PacketEngineP$SendState$forceState, @function
PacketEngineP$SendState$forceState:
.LFB292:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, eax
	mov	edi, 0
	call	StateImplP$State$forceState
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE292:
	.size	PacketEngineP$SendState$forceState, .-PacketEngineP$SendState$forceState
	.type	PoolP$0$Pool$put, @function
PoolP$0$Pool$put:
.LFB293:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 19
	jbe	.L721
	mov	eax, 1
	jmp	.L722
.L721:
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	movzx	ebx, BYTE PTR [rax+rdx]
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	add	eax, ebx
	mov	BYTE PTR -17[rbp], al
	cmp	BYTE PTR -17[rbp], 19
	jbe	.L723
	sub	BYTE PTR -17[rbp], 20
.L723:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rcx
	lea	rcx, 0[0+rax*8]
	lea	rdx, PoolP$0$queue[rip]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, PoolP$0$free[rip]
	mov	BYTE PTR [rax+rdx], cl
	mov	eax, 0
.L722:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE293:
	.size	PoolP$0$Pool$put, .-PoolP$0$Pool$put
	.type	PacketEngineP$ReceivePool$put, @function
PacketEngineP$ReceivePool$put:
.LFB294:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PoolP$0$Pool$put
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE294:
	.size	PacketEngineP$ReceivePool$put, .-PacketEngineP$ReceivePool$put
	.type	LruDataCacheP$0$DataCache$remove, @function
LruDataCacheP$0$DataCache$remove:
.LFB295:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$0$lookup
	mov	BYTE PTR -1[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jne	.L727
	mov	eax, 6
	jmp	.L728
.L727:
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	LruDataCacheP$0$remove
	call	LruDataCacheP$0$printCache
	mov	eax, 0
.L728:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE295:
	.size	LruDataCacheP$0$DataCache$remove, .-LruDataCacheP$0$DataCache$remove
	.type	PacketEngineP$SendQueue$remove, @function
PacketEngineP$SendQueue$remove:
.LFB296:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$0$DataCache$remove
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE296:
	.size	PacketEngineP$SendQueue$remove, .-PacketEngineP$SendQueue$remove
	.type	AMQueueImplP$0$errorTask$postTask, @function
AMQueueImplP$0$errorTask$postTask:
.LFB297:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 10
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE297:
	.size	AMQueueImplP$0$errorTask$postTask, .-AMQueueImplP$0$errorTask$postTask
	.type	AMQueueImplP$0$AMSend$send, @function
AMQueueImplP$0$AMSend$send:
.LFB298:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, esi
	mov	QWORD PTR -32[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	WORD PTR -24[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -36[rbp], al
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	esi, WORD PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	edi, eax
	call	TossimActiveMessageC$AMSend$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE298:
	.size	AMQueueImplP$0$AMSend$send, .-AMQueueImplP$0$AMSend$send
	.type	AMQueueImplP$0$Packet$payloadLength, @function
AMQueueImplP$0$Packet$payloadLength:
.LFB299:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE299:
	.size	AMQueueImplP$0$Packet$payloadLength, .-AMQueueImplP$0$Packet$payloadLength
	.type	AMQueueImplP$0$AMPacket$destination, @function
AMQueueImplP$0$AMPacket$destination:
.LFB300:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$destination
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE300:
	.size	AMQueueImplP$0$AMPacket$destination, .-AMQueueImplP$0$AMPacket$destination
	.type	AMQueueImplP$0$AMPacket$type, @function
AMQueueImplP$0$AMPacket$type:
.LFB301:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE301:
	.size	AMQueueImplP$0$AMPacket$type, .-AMQueueImplP$0$AMPacket$type
	.type	AMQueueImplP$0$nextPacket, @function
AMQueueImplP$0$nextPacket:
.LFB302:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, 1
	cdq
	shr	edx, 31
	add	eax, edx
	and	eax, 1
	sub	eax, edx
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, AMQueueImplP$0$current[rip]
	mov	BYTE PTR [rax+rdx], cl
	mov	BYTE PTR -17[rbp], 0
	jmp	.L742
.L745:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, [rbx+rbx]
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L743
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	shr	al, 3
	movzx	eax, al
	cdqe
	lea	rdx, [rbx+rax]
	lea	rax, AMQueueImplP$0$cancelMask[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	and	eax, 7
	mov	ecx, eax
	sar	ebx, cl
	mov	eax, ebx
	and	eax, 1
	test	eax, eax
	je	.L744
.L743:
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, 1
	cdq
	shr	edx, 31
	add	eax, edx
	and	eax, 1
	sub	eax, edx
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, AMQueueImplP$0$current[rip]
	mov	BYTE PTR [rax+rdx], cl
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L742:
	cmp	BYTE PTR -17[rbp], 1
	jbe	.L745
.L744:
	cmp	BYTE PTR -17[rbp], 1
	jbe	.L747
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	mov	BYTE PTR [rax+rdx], 2
.L747:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE302:
	.size	AMQueueImplP$0$nextPacket, .-AMQueueImplP$0$nextPacket
	.type	AMQueueImplP$0$tryToSend, @function
AMQueueImplP$0$tryToSend:
.LFB303:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	AMQueueImplP$0$nextPacket
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 1
	ja	.L750
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, [rbx+rbx]
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	AMQueueImplP$0$AMPacket$type
	mov	BYTE PTR -29[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	AMQueueImplP$0$AMPacket$destination
	mov	WORD PTR -26[rbp], ax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	AMQueueImplP$0$Packet$payloadLength
	mov	BYTE PTR -28[rbp], al
	movzx	ecx, BYTE PTR -28[rbp]
	movzx	esi, WORD PTR -26[rbp]
	movzx	eax, BYTE PTR -29[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	edi, eax
	call	AMQueueImplP$0$AMSend$send
	mov	BYTE PTR -27[rbp], al
	cmp	BYTE PTR -27[rbp], 0
	je	.L750
	call	AMQueueImplP$0$errorTask$postTask
.L750:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE303:
	.size	AMQueueImplP$0$tryToSend, .-AMQueueImplP$0$tryToSend
	.type	CpmModelC$free_receive_message, @function
CpmModelC$free_receive_message:
.LFB304:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE304:
	.size	CpmModelC$free_receive_message, .-CpmModelC$free_receive_message
	.type	CpmModelC$Model$shouldAck, @function
CpmModelC$Model$shouldAck:
.LFB305:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$GainRadioModel$shouldAck
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE305:
	.size	CpmModelC$Model$shouldAck, .-CpmModelC$Model$shouldAck
	.type	TossimPacketModelC$Packet$receive, @function
TossimPacketModelC$Packet$receive:
.LFB306:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Model$receive
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE306:
	.size	TossimPacketModelC$Packet$receive, .-TossimPacketModelC$Packet$receive
	.type	TossimPacketModelC$GainRadioModel$receive, @function
TossimPacketModelC$GainRadioModel$receive:
.LFB307:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	sim_node
	lea	rdx, TossimPacketModelC$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L757
	call	sim_node
	lea	rdx, TossimPacketModelC$transmitting[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L757
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$Packet$receive
.L757:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE307:
	.size	TossimPacketModelC$GainRadioModel$receive, .-TossimPacketModelC$GainRadioModel$receive
	.type	CpmModelC$Model$receive, @function
CpmModelC$Model$receive:
.LFB308:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$GainRadioModel$receive
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE308:
	.size	CpmModelC$Model$receive, .-CpmModelC$Model$receive
	.type	CpmModelC$checkReceive, @function
CpmModelC$checkReceive:
.LFB309:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	call	CpmModelC$noise_hash_generation
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -8[rbp], rax
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	jmp	.L760
.L762:
	mov	rax, QWORD PTR -8[rbp]
	cmp	rax, QWORD PTR -24[rbp]
	je	.L761
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movsd	xmm1, QWORD PTR -16[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
.L761:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 56[rax]
	mov	QWORD PTR -8[rbp], rax
.L760:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L762
	mov	rax, QWORD PTR -16[rbp]
	movq	xmm0, rax
	call	log@PLT
	movsd	xmm1, QWORD PTR .LC91[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC92[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	subsd	xmm0, QWORD PTR -16[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	call	CpmModelC$shouldReceive
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE309:
	.size	CpmModelC$checkReceive, .-CpmModelC$checkReceive
	.section	.rodata
	.align 8
.LC93:
	.string	"Handling reception event @ %s.\n"
.LC94:
	.string	"CpmModelC"
	.align 8
.LC95:
	.string	"Incoming packet list structure is corrupted: entry is not the head and no entry points to it.\n"
.LC96:
	.string	"Packet from %i to %i\n"
.LC97:
	.string	"CpmModelC,SNRLoss"
	.align 8
.LC98:
	.string	" - lost packet from %i as SNR was too low.\n"
.LC99:
	.string	"  -signaling reception\n"
.LC100:
	.string	" acknowledgment requested, "
	.align 8
.LC101:
	.string	" no acknowledgment requested.\n"
.LC102:
	.string	" scheduling ack.\n"
	.align 8
.LC104:
	.string	"Packet was technically lost, but TOSSIM introduces an ack false positive rate.\n"
.LC105:
	.string	"  -packet was lost.\n"
	.text
	.type	CpmModelC$sim_gain_receive_handle, @function
CpmModelC$sim_gain_receive_handle:
.LFB310:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	QWORD PTR -16[rbp], rax
	mov	QWORD PTR -32[rbp], 0
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -24[rbp], rax
	call	sim_time_string
	mov	rcx, rax
	lea	rdx, .LC93[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 231
	mov	eax, 0
	call	sim_log_debug
	jmp	.L765
.L767:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 56[rax]
	cmp	QWORD PTR -16[rbp], rax
	jne	.L766
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -32[rbp], rax
.L766:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 56[rax]
	mov	QWORD PTR -24[rbp], rax
.L765:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L767
	cmp	QWORD PTR -32[rbp], 0
	je	.L768
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR 56[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR 56[rax], rdx
	jmp	.L769
.L768:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	QWORD PTR -16[rbp], rax
	jne	.L770
	call	sim_node
	mov	rdx, rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 56[rax]
	lea	rcx, 0[0+rdx*8]
	lea	rdx, CpmModelC$outstandingReceptionHead[rip]
	mov	QWORD PTR [rcx+rdx], rax
	jmp	.L769
.L770:
	lea	rdx, .LC95[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 232
	mov	eax, 0
	call	sim_log_error
.L769:
	call	sim_node
	mov	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC96[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 233
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	CpmModelC$checkReceive
	test	al, al
	jne	.L771
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	mov	ecx, eax
	lea	rdx, .LC98[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 234
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -16[rbp]
	mov	BYTE PTR 41[rax], 1
.L771:
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 41[rax]
	test	al, al
	jne	.L772
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 48[rax]
	add	rax, 45
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 40[rax]
	movsx	edx, al
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_int8
	lea	rdx, .LC99[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 235
	mov	eax, 0
	call	sim_log_debug_clear
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 48[rax]
	mov	rdi, rax
	call	CpmModelC$Model$receive
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 42[rax]
	test	al, al
	je	.L773
	lea	rdx, .LC100[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 236
	mov	eax, 0
	call	sim_log_debug_clear
	jmp	.L774
.L773:
	lea	rdx, .LC101[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 237
	mov	eax, 0
	call	sim_log_debug_clear
.L774:
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 42[rax]
	test	al, al
	je	.L775
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 48[rax]
	mov	rdi, rax
	call	CpmModelC$Model$shouldAck
	test	al, al
	je	.L775
	lea	rdx, .LC102[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 238
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_time
	lea	rcx, 1[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	CpmModelC$sim_gain_schedule_ack
	jmp	.L776
.L775:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	CpmModelC$free_receive_message
.L776:
	call	sim_node
	lea	rdx, CpmModelC$receiving[rip]
	mov	BYTE PTR [rax+rdx], 0
	jmp	.L785
.L772:
	call	RandomUniform
	movsd	xmm1, QWORD PTR .LC103[rip]
	comisd	xmm1, xmm0
	jbe	.L784
	lea	rdx, .LC104[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 239
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 42[rax]
	test	al, al
	je	.L780
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 48[rax]
	mov	rdi, rax
	call	CpmModelC$Model$shouldAck
	test	al, al
	je	.L780
	lea	rdx, .LC102[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 240
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_time
	lea	rcx, 1[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	CpmModelC$sim_gain_schedule_ack
	jmp	.L782
.L780:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	CpmModelC$free_receive_message
	jmp	.L782
.L784:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	CpmModelC$free_receive_message
.L782:
	call	sim_node
	lea	rdx, CpmModelC$receiving[rip]
	mov	BYTE PTR [rax+rdx], 0
	lea	rdx, .LC105[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 241
	mov	eax, 0
	call	sim_log_debug_clear
.L785:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE310:
	.size	CpmModelC$sim_gain_receive_handle, .-CpmModelC$sim_gain_receive_handle
	.type	CpmModelC$allocate_receive_event, @function
CpmModelC$allocate_receive_event:
.LFB311:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	edi, 48
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	call	sim_node
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, CpmModelC$sim_gain_receive_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, sim_queue_cleanup_event[rip]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 17[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 16[rax], 1
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR 24[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE311:
	.size	CpmModelC$allocate_receive_event, .-CpmModelC$allocate_receive_event
	.type	CpmModelC$allocate_receive_message, @function
CpmModelC$allocate_receive_message:
.LFB312:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edi, 64
	call	malloc@PLT
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE312:
	.size	CpmModelC$allocate_receive_message, .-CpmModelC$allocate_receive_message
	.section	.rodata
	.align 8
.LC106:
	.string	"Lost packet from %i due to %i being off\n"
	.align 8
.LC107:
	.string	"Lost packet from %i to %i due to SNR being too low (%i)\n"
	.align 8
.LC108:
	.string	"Lost packet from %i due to %i being mid-reception\n"
	.align 8
.LC109:
	.string	"Going to lose packet from %i with signal %lf as am receiving a packet from %i with signal %lf\n"
.LC110:
	.string	"Gain,SNRLoss"
	.text
	.type	CpmModelC$enqueue_receive_event, @function
CpmModelC$enqueue_receive_event:
.LFB313:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 88
	.cfi_offset 3, -24
	mov	DWORD PTR -52[rbp], edi
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	eax, ecx
	movsd	QWORD PTR -80[rbp], xmm0
	movsd	QWORD PTR -88[rbp], xmm1
	mov	BYTE PTR -56[rbp], al
	call	CpmModelC$allocate_receive_message
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	CpmModelC$packetNoise
	movq	rax, xmm0
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR -52[rbp]
	mov	DWORD PTR [rax], edx
	call	sim_time
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -64[rbp]
	mov	QWORD PTR 16[rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR -80[rbp]
	movsd	QWORD PTR 24[rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR -88[rbp]
	movsd	QWORD PTR 32[rax], xmm0
	movsd	xmm0, QWORD PTR -80[rbp]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movsd	QWORD PTR -96[rbp], xmm0
	movsd	xmm0, QWORD PTR -32[rbp]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movapd	xmm2, xmm0
	addsd	xmm2, QWORD PTR -96[rbp]
	movq	rax, xmm2
	movq	xmm0, rax
	call	log@PLT
	movsd	xmm1, QWORD PTR .LC91[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC92[rip]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	floor@PLT
	cvttsd2si	eax, xmm0
	mov	edx, eax
	mov	rax, QWORD PTR -40[rbp]
	mov	BYTE PTR 40[rax], dl
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -72[rbp]
	mov	QWORD PTR 48[rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	BYTE PTR 41[rax], 0
	mov	rax, QWORD PTR -40[rbp]
	movzx	edx, BYTE PTR -56[rbp]
	mov	BYTE PTR 42[rax], dl
	call	sim_node
	mov	edi, eax
	call	sim_mote_is_on
	test	al, al
	jne	.L791
	call	sim_node
	mov	rdx, rax
	mov	eax, DWORD PTR -52[rbp]
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, .LC106[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 242
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	mov	BYTE PTR 41[rax], 1
	jmp	.L792
.L791:
	movsd	xmm0, QWORD PTR -80[rbp]
	subsd	xmm0, QWORD PTR -32[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	call	CpmModelC$shouldReceive
	test	al, al
	jne	.L793
	movsd	xmm0, QWORD PTR -80[rbp]
	subsd	xmm0, QWORD PTR -32[rbp]
	cvttsd2si	ebx, xmm0
	call	sim_node
	mov	rdx, rax
	mov	eax, DWORD PTR -52[rbp]
	mov	r9d, ebx
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, .LC107[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 243
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	mov	BYTE PTR 41[rax], 1
	jmp	.L792
.L793:
	call	sim_node
	lea	rdx, CpmModelC$receiving[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L794
	call	sim_node
	mov	rdx, rax
	mov	eax, DWORD PTR -52[rbp]
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, .LC108[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 244
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	mov	BYTE PTR 41[rax], 1
	jmp	.L792
.L794:
	call	sim_node
	lea	rdx, CpmModelC$receiving[rip]
	mov	BYTE PTR [rax+rdx], 1
.L792:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -48[rbp], rax
	jmp	.L795
.L797:
	mov	rax, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR 24[rax]
	subsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	CpmModelC$shouldReceive
	test	al, al
	jne	.L796
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	rdx, QWORD PTR 24[rax]
	mov	rax, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR [rax]
	mov	ecx, DWORD PTR -52[rbp]
	movapd	xmm1, xmm0
	mov	r8d, ecx
	movq	xmm0, rdx
	mov	ecx, eax
	lea	rdx, .LC109[rip]
	lea	rsi, .LC110[rip]
	mov	edi, 245
	mov	eax, 2
	call	sim_log_debug
	mov	rax, QWORD PTR -48[rbp]
	mov	BYTE PTR 41[rax], 1
.L796:
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR 56[rax]
	mov	QWORD PTR -48[rbp], rax
.L795:
	cmp	QWORD PTR -48[rbp], 0
	jne	.L797
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR 56[rax], rdx
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, CpmModelC$outstandingReceptionHead[rip]
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -64[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	CpmModelC$allocate_receive_event
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE313:
	.size	CpmModelC$enqueue_receive_event, .-CpmModelC$enqueue_receive_event
	.section	.rodata
	.align 8
.LC111:
	.string	"Enqueing reception event for %i at %llu with power %lf.\n"
	.text
	.type	CpmModelC$sim_gain_put, @function
CpmModelC$sim_gain_put:
.LFB314:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	QWORD PTR -56[rbp], xmm1
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	mov	DWORD PTR -4[rbp], eax
	mov	rdx, QWORD PTR -48[rbp]
	mov	rcx, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movq	xmm0, rdx
	mov	r8, rcx
	mov	ecx, eax
	lea	rdx, .LC111[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 246
	mov	eax, 1
	call	sim_log_debug
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	movzx	ecx, BYTE PTR -24[rbp]
	movsd	xmm0, QWORD PTR -56[rbp]
	mov	rdi, QWORD PTR -48[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR -4[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rdi
	mov	edi, eax
	call	CpmModelC$enqueue_receive_event
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE314:
	.size	CpmModelC$sim_gain_put, .-CpmModelC$sim_gain_put
	.section	.rodata
	.align 8
.LC112:
	.string	"Node %i transmitting to %i, finishes at %llu.\n"
	.text
	.type	CpmModelC$Model$putOnAirTo, @function
CpmModelC$Model$putOnAirTo:
.LFB315:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	QWORD PTR -40[rbp], rcx
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	QWORD PTR -56[rbp], xmm1
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	mov	edi, eax
	call	sim_gain_first
	mov	QWORD PTR -8[rbp], rax
	call	sim_node
	lea	rcx, CpmModelC$requestAck[rip]
	movzx	edx, BYTE PTR -24[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, CpmModelC$outgoing[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	mov	rcx, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	r9, rcx
	mov	r8d, edx
	mov	rcx, rax
	lea	rdx, .LC112[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 247
	mov	eax, 0
	call	sim_log_debug
	jmp	.L800
.L803:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -12[rbp], eax
	call	sim_node
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, edx
	mov	edi, eax
	call	sim_gain_value
	movq	rax, xmm0
	movq	xmm2, rax
	addsd	xmm2, QWORD PTR -56[rbp]
	movsd	QWORD PTR -64[rbp], xmm2
	call	sim_node
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	mov	esi, eax
	mov	edi, edx
	call	sim_gain_value
	movq	rax, xmm0
	movq	xmm3, rax
	addsd	xmm3, QWORD PTR -48[rbp]
	movq	rdi, xmm3
	cmp	BYTE PTR -24[rbp], 0
	je	.L801
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jne	.L801
	mov	eax, 1
	jmp	.L802
.L801:
	mov	eax, 0
.L802:
	movzx	ecx, al
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -12[rbp]
	movsd	xmm1, QWORD PTR -64[rbp]
	movq	xmm0, rdi
	mov	edi, eax
	call	CpmModelC$sim_gain_put
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	sim_gain_next
	mov	QWORD PTR -8[rbp], rax
.L800:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L803
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE315:
	.size	CpmModelC$Model$putOnAirTo, .-CpmModelC$Model$putOnAirTo
	.type	TossimPacketModelC$GainRadioModel$putOnAirTo, @function
TossimPacketModelC$GainRadioModel$putOnAirTo:
.LFB316:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -4[rbp], edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	QWORD PTR -24[rbp], rcx
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	QWORD PTR -40[rbp], xmm1
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movsd	xmm0, QWORD PTR -40[rbp]
	mov	rdi, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR -4[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rdi
	mov	edi, eax
	call	CpmModelC$Model$putOnAirTo
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE316:
	.size	TossimPacketModelC$GainRadioModel$putOnAirTo, .-TossimPacketModelC$GainRadioModel$putOnAirTo
	.section	.rodata
	.align 8
.LC113:
	.string	"PACKET: Signaling send done at %llu.\n"
.LC114:
	.string	"TossimPacketModelC"
	.text
	.type	TossimPacketModelC$send_transmit_done, @function
TossimPacketModelC$send_transmit_done:
.LFB317:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -8[rbp], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	QWORD PTR [rdx+rax], 0
	call	sim_node
	lea	rdx, TossimPacketModelC$transmitting[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_time
	mov	rcx, rax
	lea	rdx, .LC113[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 223
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	TossimPacketModelC$Packet$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE317:
	.size	TossimPacketModelC$send_transmit_done, .-TossimPacketModelC$send_transmit_done
	.type	TossimPacketModelC$sim_packet_header_length, @function
TossimPacketModelC$sim_packet_header_length:
.LFB318:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 7
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE318:
	.size	TossimPacketModelC$sim_packet_header_length, .-TossimPacketModelC$sim_packet_header_length
	.section	.rodata
	.align 8
.LC115:
	.string	"PACKET: Broadcasting packet to everyone.\n"
.LC116:
	.string	"PACKET: Send done at %llu.\n"
	.text
	.type	TossimPacketModelC$send_transmit, @function
TossimPacketModelC$send_transmit:
.LFB319:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	push	rbx
	sub	rsp, 40
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	.cfi_offset 3, -40
	mov	QWORD PTR -56[rbp], rdi
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimPacketModelC$getMetadata
	mov	QWORD PTR -40[rbp], rax
	call	sim_node
	lea	rdx, TossimPacketModelC$sendingLength[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	call	TossimPacketModelC$sim_packet_header_length
	add	eax, ebx
	sal	eax, 3
	cdqe
	mov	QWORD PTR -48[rbp], rax
	call	sim_csma_bits_per_symbol
	movsx	rcx, eax
	mov	rax, QWORD PTR -48[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -48[rbp], rax
	call	sim_csma_preamble_length
	cdqe
	add	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	test	al, al
	je	.L809
	call	sim_csma_ack_time
	cdqe
	add	QWORD PTR -48[rbp], rax
.L809:
	call	sim_ticks_per_sec
	mov	rbx, rax
	call	sim_csma_symbols_per_sec
	movsx	rcx, eax
	mov	rax, rbx
	cqo
	idiv	rcx
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	imul	rax, rdx
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -56[rbp]
	lea	rdx, TossimPacketModelC$send_transmit_done[rip]
	mov	QWORD PTR 32[rax], rdx
	lea	rdx, .LC115[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 221
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -56[rbp]
	mov	r13, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	r12d, al
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, 0[0+rax*4]
	lea	rax, TossimPacketModelC$destNode[rip]
	mov	eax, DWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	pxor	xmm0, xmm0
	mov	rcx, r13
	mov	edx, r12d
	mov	rsi, rbx
	mov	edi, eax
	call	TossimPacketModelC$GainRadioModel$putOnAirTo
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_hton_uint8
	call	sim_csma_rxtx_delay
	movsx	r12, eax
	call	sim_ticks_per_sec
	mov	rbx, rax
	call	sim_csma_symbols_per_sec
	movsx	rsi, eax
	mov	rax, rbx
	cqo
	idiv	rsi
	mov	rdx, r12
	imul	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	add	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rcx, rax
	lea	rdx, .LC116[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 222
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	nop
	add	rsp, 40
	pop	rbx
	pop	r12
	pop	r13
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE319:
	.size	TossimPacketModelC$send_transmit, .-TossimPacketModelC$send_transmit
	.section	.rodata
	.align 8
.LC117:
	.string	"Checking clear channel @ %s: %f <= %f \n"
	.text
	.type	CpmModelC$Model$clearChannel, @function
CpmModelC$Model$clearChannel:
.LFB320:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$clearThreshold[rip]
	movsd	xmm2, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -24[rbp], xmm2
	mov	edi, 0
	call	CpmModelC$packetNoise
	movq	rbx, xmm0
	call	sim_time_string
	movsd	xmm1, QWORD PTR -24[rbp]
	movq	xmm0, rbx
	mov	rcx, rax
	lea	rdx, .LC117[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 229
	mov	eax, 2
	call	sim_log_debug
	mov	edi, 0
	call	CpmModelC$packetNoise
	movsd	QWORD PTR -24[rbp], xmm0
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$clearThreshold[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	comisd	xmm0, QWORD PTR -24[rbp]
	seta	al
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE320:
	.size	CpmModelC$Model$clearChannel, .-CpmModelC$Model$clearChannel
	.type	TossimPacketModelC$GainRadioModel$clearChannel, @function
TossimPacketModelC$GainRadioModel$clearChannel:
.LFB321:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	CpmModelC$Model$clearChannel
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE321:
	.size	TossimPacketModelC$GainRadioModel$clearChannel, .-TossimPacketModelC$GainRadioModel$clearChannel
	.section	.rodata
	.align 8
.LC118:
	.string	"PACKET: Failed to send packet due to busy channel.\n"
	.text
	.type	TossimPacketModelC$send_backoff, @function
TossimPacketModelC$send_backoff:
.LFB322:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	QWORD PTR -56[rbp], rdi
	call	sim_node
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	TossimPacketModelC$GainRadioModel$clearChannel
	test	al, al
	je	.L815
	call	sim_node
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L816
.L815:
	call	sim_csma_min_free_samples
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	mov	BYTE PTR [rax+rdx], cl
.L816:
	call	sim_node
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L817
	call	sim_csma_rxtx_delay
	cdqe
	mov	QWORD PTR -24[rbp], rax
	call	sim_ticks_per_sec
	mov	rbx, rax
	call	sim_csma_symbols_per_sec
	movsx	rsi, eax
	mov	rax, rbx
	cqo
	idiv	rsi
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	imul	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR [rax], rdx
	call	sim_node
	lea	rdx, TossimPacketModelC$transmitting[rip]
	mov	BYTE PTR [rax+rdx], 1
	mov	rax, QWORD PTR -56[rbp]
	lea	rdx, TossimPacketModelC$send_transmit[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	jmp	.L821
.L817:
	call	sim_csma_max_iterations
	test	eax, eax
	je	.L819
	call	sim_node
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	call	sim_csma_max_iterations
	cmp	ebx, eax
	jg	.L820
.L819:
	call	sim_random
	cdqe
	mov	QWORD PTR -40[rbp], rax
	call	sim_csma_high
	mov	ebx, eax
	call	sim_csma_low
	mov	edx, eax
	mov	eax, ebx
	sub	eax, edx
	cdqe
	mov	QWORD PTR -32[rbp], rax
	call	sim_node
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	pxor	xmm2, xmm2
	cvtsi2sd	xmm2, eax
	movsd	QWORD PTR -64[rbp], xmm2
	call	sim_csma_exponent_base
	pxor	xmm3, xmm3
	cvtsi2sd	xmm3, eax
	movq	rax, xmm3
	movsd	xmm1, QWORD PTR -64[rbp]
	movq	xmm0, rax
	call	pow@PLT
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, QWORD PTR -32[rbp]
	mulsd	xmm0, xmm1
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	cqo
	idiv	QWORD PTR -32[rbp]
	mov	QWORD PTR -40[rbp], rdx
	call	sim_csma_init_low
	cdqe
	add	QWORD PTR -40[rbp], rax
	call	sim_ticks_per_sec
	mov	rbx, rax
	call	sim_csma_symbols_per_sec
	movsx	rsi, eax
	mov	rax, rbx
	cqo
	idiv	rsi
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	imul	rax, rdx
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	nop
	jmp	.L821
.L820:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -48[rbp], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	QWORD PTR [rdx+rax], 0
	lea	rdx, .LC118[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 220
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, 5
	mov	rdi, rax
	call	TossimPacketModelC$Packet$sendDone
.L821:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE322:
	.size	TossimPacketModelC$send_backoff, .-TossimPacketModelC$send_backoff
	.section	.rodata
.LC119:
	.string	"Starting CMSA with %lli.\n"
	.text
	.type	TossimPacketModelC$start_csma, @function
TossimPacketModelC$start_csma:
.LFB323:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_random
	cdqe
	mov	QWORD PTR -32[rbp], rax
	call	sim_csma_init_high
	mov	ebx, eax
	call	sim_csma_init_low
	mov	edx, eax
	mov	eax, ebx
	sub	eax, edx
	movsx	rcx, eax
	mov	rax, QWORD PTR -32[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -32[rbp], rdx
	call	sim_csma_init_low
	cdqe
	add	QWORD PTR -32[rbp], rax
	call	sim_ticks_per_sec
	mov	rbx, rax
	call	sim_csma_symbols_per_sec
	movsx	rsi, eax
	mov	rax, rbx
	cqo
	idiv	rsi
	mov	rdx, rax
	mov	rax, QWORD PTR -32[rbp]
	imul	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, rax
	lea	rdx, .LC119[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 219
	mov	eax, 0
	call	sim_log_debug
	call	sim_time
	mov	rdx, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rdx, rax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	sal	rax, 4
	mov	rcx, rax
	lea	rax, TossimPacketModelC$sendEvent[rip+8]
	mov	QWORD PTR [rcx+rax], rdx
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rcx, rax
	lea	rdx, TossimPacketModelC$sendEvent[rip]
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, TossimPacketModelC$sendEvent[rip+16]
	mov	BYTE PTR [rdx+rax], 0
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, TossimPacketModelC$sendEvent[rip+17]
	mov	BYTE PTR [rdx+rax], 0
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rcx, rax
	lea	rax, TossimPacketModelC$sendEvent[rip+32]
	lea	rdx, TossimPacketModelC$send_backoff[rip]
	mov	QWORD PTR [rcx+rax], rdx
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rcx, rax
	lea	rax, TossimPacketModelC$sendEvent[rip+40]
	lea	rdx, sim_queue_cleanup_none[rip]
	mov	QWORD PTR [rcx+rax], rdx
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, TossimPacketModelC$sendEvent[rip]
	add	rax, rdx
	mov	rdi, rax
	call	sim_queue_insert
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE323:
	.size	TossimPacketModelC$start_csma, .-TossimPacketModelC$start_csma
	.section	.rodata
	.align 8
.LC120:
	.string	"TossimPacketModelC: Send.send() called, but not initialized!\n"
	.align 8
.LC121:
	.string	"TossimPacketModelC: Send.send() called, but not running!\n"
	.text
	.type	TossimPacketModelC$Packet$send, @function
TossimPacketModelC$Packet$send:
.LFB324:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	lea	rdx, TossimPacketModelC$initialized[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L824
	lea	rdx, .LC120[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 217
	mov	eax, 0
	call	sim_log_error
	mov	eax, 4
	jmp	.L825
.L824:
	call	sim_node
	lea	rdx, TossimPacketModelC$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L826
	lea	rdx, .LC121[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 218
	mov	eax, 0
	call	sim_log_error
	mov	eax, 4
	jmp	.L825
.L826:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L827
	mov	eax, 5
	jmp	.L825
.L827:
	call	sim_node
	lea	rcx, TossimPacketModelC$sendingLength[rip]
	movzx	edx, BYTE PTR -24[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rcx, 0[0+rax*4]
	lea	rdx, TossimPacketModelC$destNode[rip]
	mov	eax, DWORD PTR -20[rbp]
	mov	DWORD PTR [rcx+rdx], eax
	call	sim_node
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_csma_min_free_samples
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	TossimPacketModelC$start_csma
	mov	eax, 0
.L825:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE324:
	.size	TossimPacketModelC$Packet$send, .-TossimPacketModelC$Packet$send
	.type	TossimActiveMessageC$Model$send, @function
TossimActiveMessageC$Model$send:
.LFB325:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -20[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TossimPacketModelC$Packet$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE325:
	.size	TossimActiveMessageC$Model$send, .-TossimActiveMessageC$Model$send
	.type	CpmModelC$timeInMs, @function
CpmModelC$timeInMs:
.LFB326:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	call	sim_time
	mov	QWORD PTR -16[rbp], rax
	call	sim_ticks_per_sec
	mov	rcx, rax
	mov	rax, QWORD PTR -16[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -24[rbp], rdx
	call	sim_ticks_per_sec
	cmp	rax, 1000000000
	jle	.L831
	call	sim_ticks_per_sec
	mov	rcx, rax
	movabs	rdx, 1237940039285380275
	mov	rax, rcx
	imul	rdx
	mov	rax, rdx
	sar	rax, 26
	sar	rcx, 63
	sub	rax, rcx
	mov	rdi, rax
	mov	rax, QWORD PTR -24[rbp]
	cqo
	idiv	rdi
	mov	QWORD PTR -24[rbp], rax
	jmp	.L832
.L831:
	call	sim_ticks_per_sec
	mov	rdi, rax
	mov	eax, 1000000000
	cqo
	idiv	rdi
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	imul	rax, rdx
	mov	QWORD PTR -24[rbp], rax
.L832:
	mov	rcx, QWORD PTR -24[rbp]
	movabs	rdx, 3777893186295716171
	mov	rax, rcx
	imul	rdx
	mov	rax, rdx
	sar	rax, 11
	sar	rcx, 63
	mov	rdx, rcx
	sub	rax, rdx
	mov	DWORD PTR -40[rbp], eax
	mov	ecx, DWORD PTR -40[rbp]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 2
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	sub	ecx, eax
	mov	edx, ecx
	cmp	edx, 4
	jle	.L833
	mov	edx, DWORD PTR -40[rbp]
	movsx	rax, edx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 2
	mov	esi, edx
	sar	esi, 31
	sub	eax, esi
	mov	ecx, eax
	mov	eax, ecx
	sal	eax, 2
	add	eax, ecx
	add	eax, eax
	mov	ecx, edx
	sub	ecx, eax
	mov	eax, 10
	sub	eax, ecx
	add	DWORD PTR -40[rbp], eax
	jmp	.L834
.L833:
	mov	ecx, DWORD PTR -40[rbp]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 2
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	sub	ecx, eax
	mov	edx, ecx
	sub	DWORD PTR -40[rbp], edx
.L834:
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -40[rbp]
	movsd	xmm1, QWORD PTR .LC122[rip]
	divsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	call	sim_ticks_per_sec
	mov	rdi, rax
	mov	rax, QWORD PTR -16[rbp]
	cqo
	idiv	rdi
	mov	DWORD PTR -36[rbp], eax
	mov	eax, DWORD PTR -36[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -32[rbp], eax
	mov	eax, DWORD PTR -32[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -28[rbp], eax
	mov	eax, DWORD PTR -36[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 60
	sub	eax, edx
	mov	DWORD PTR -36[rbp], eax
	mov	eax, DWORD PTR -32[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 60
	sub	eax, edx
	mov	DWORD PTR -32[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	imul	edx, eax, 3600
	mov	eax, DWORD PTR -32[rbp]
	imul	eax, eax, 60
	add	edx, eax
	mov	eax, DWORD PTR -36[rbp]
	add	eax, edx
	imul	eax, eax, 1000
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE326:
	.size	CpmModelC$timeInMs, .-CpmModelC$timeInMs
	.section	.rodata
.LC129:
	.string	"SNR is %lf, PRR is %lf\n"
.LC130:
	.string	"CpmModelC,SNR"
	.text
	.type	CpmModelC$prr_estimate_from_snr, @function
CpmModelC$prr_estimate_from_snr:
.LFB327:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	movsd	QWORD PTR -56[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC123[rip]
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC124[rip]
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -56[rbp]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, QWORD PTR -32[rbp]
	movq	xmm1, QWORD PTR .LC125[rip]
	andpd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC126[rip]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	movq	xmm2, rax
	mulsd	xmm2, QWORD PTR -40[rbp]
	movq	rax, xmm2
	movq	xmm0, rax
	call	erfc@PLT
	movsd	xmm1, QWORD PTR .LC3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC127[rip]
	subsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movsd	xmm0, QWORD PTR .LC128[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	mov	QWORD PTR -48[rbp], rax
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdx, .LC129[rip]
	lea	rsi, .LC130[rip]
	mov	edi, 230
	mov	eax, 2
	call	sim_log_debug
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC127[rip]
	comisd	xmm0, xmm1
	jbe	.L844
	movsd	xmm0, QWORD PTR .LC127[rip]
	movsd	QWORD PTR -48[rbp], xmm0
	jmp	.L839
.L844:
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -48[rbp]
	jbe	.L839
	pxor	xmm0, xmm0
	movsd	QWORD PTR -48[rbp], xmm0
.L839:
	movsd	xmm0, QWORD PTR -48[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE327:
	.size	CpmModelC$prr_estimate_from_snr, .-CpmModelC$prr_estimate_from_snr
	.section	.rodata
	.align 8
.LC131:
	.string	"Received packet addressed to me so ack it\n"
.LC132:
	.string	"Acks"
	.text
	.type	TossimActiveMessageC$Model$shouldAck, @function
TossimActiveMessageC$Model$shouldAck:
.LFB328:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	mov	ebx, eax
	call	TossimActiveMessageC$amAddress
	cmp	bx, ax
	jne	.L846
	lea	rdx, .LC131[rip]
	lea	rsi, .LC132[rip]
	mov	edi, 108
	mov	eax, 0
	call	sim_log_debug
	mov	eax, 1
	jmp	.L847
.L846:
	mov	eax, 0
.L847:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE328:
	.size	TossimActiveMessageC$Model$shouldAck, .-TossimActiveMessageC$Model$shouldAck
	.type	TossimPacketModelC$Packet$shouldAck, @function
TossimPacketModelC$Packet$shouldAck:
.LFB329:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Model$shouldAck
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE329:
	.size	TossimPacketModelC$Packet$shouldAck, .-TossimPacketModelC$Packet$shouldAck
	.section	.rodata
	.align 8
.LC133:
	.string	"Requested ack for 0x%x, but outgoing packet is 0x%x.\n"
	.text
	.type	TossimPacketModelC$GainRadioModel$acked, @function
TossimPacketModelC$GainRadioModel$acked:
.LFB330:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	call	sim_node
	lea	rdx, TossimPacketModelC$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L852
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimPacketModelC$getMetadata
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_hton_uint8
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	QWORD PTR -24[rbp], rax
	je	.L852
	call	sim_node
	lea	rdx, TossimPacketModelC$error[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC133[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 224
	mov	eax, 0
	call	sim_log_debug
.L852:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE330:
	.size	TossimPacketModelC$GainRadioModel$acked, .-TossimPacketModelC$GainRadioModel$acked
	.type	CpmModelC$Model$acked, @function
CpmModelC$Model$acked:
.LFB331:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$GainRadioModel$acked
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE331:
	.size	CpmModelC$Model$acked, .-CpmModelC$Model$acked
	.section	.rodata
.LC134:
	.string	"SNR is %lf, ARR is %lf\n"
	.text
	.type	CpmModelC$arr_estimate_from_snr, @function
CpmModelC$arr_estimate_from_snr:
.LFB332:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	movsd	QWORD PTR -56[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC123[rip]
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC124[rip]
	movsd	QWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR -56[rbp]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, QWORD PTR -32[rbp]
	movq	xmm1, QWORD PTR .LC125[rip]
	andpd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC126[rip]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	movq	xmm2, rax
	mulsd	xmm2, QWORD PTR -40[rbp]
	movq	rax, xmm2
	movq	xmm0, rax
	call	erfc@PLT
	movsd	xmm1, QWORD PTR .LC3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC127[rip]
	subsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movsd	xmm0, QWORD PTR .LC128[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	mov	QWORD PTR -48[rbp], rax
	movsd	xmm0, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdx, .LC134[rip]
	lea	rsi, .LC97[rip]
	mov	edi, 227
	mov	eax, 2
	call	sim_log_debug
	movsd	xmm0, QWORD PTR -48[rbp]
	movsd	xmm1, QWORD PTR .LC127[rip]
	comisd	xmm0, xmm1
	jbe	.L862
	movsd	xmm0, QWORD PTR .LC127[rip]
	movsd	QWORD PTR -48[rbp], xmm0
	jmp	.L857
.L862:
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -48[rbp]
	jbe	.L857
	pxor	xmm0, xmm0
	movsd	QWORD PTR -48[rbp], xmm0
.L857:
	movsd	xmm0, QWORD PTR -48[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE332:
	.size	CpmModelC$arr_estimate_from_snr, .-CpmModelC$arr_estimate_from_snr
	.type	CpmModelC$shouldAckReceive, @function
CpmModelC$shouldAckReceive:
.LFB333:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	movsd	QWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movq	xmm0, rax
	call	CpmModelC$arr_estimate_from_snr
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	call	RandomUniform
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -16[rbp]
	jp	.L870
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -16[rbp]
	je	.L864
.L870:
	movsd	xmm0, QWORD PTR .LC127[rip]
	ucomisd	xmm0, QWORD PTR -16[rbp]
	jp	.L871
	movsd	xmm0, QWORD PTR .LC127[rip]
	comisd	xmm0, QWORD PTR -16[rbp]
	je	.L864
.L871:
	movsd	xmm0, QWORD PTR -16[rbp]
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L873
	movsd	xmm0, QWORD PTR .LC127[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	jmp	.L864
.L873:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
.L864:
	movsd	xmm0, QWORD PTR -16[rbp]
	cvttsd2si	eax, xmm0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE333:
	.size	CpmModelC$shouldAckReceive, .-CpmModelC$shouldAckReceive
	.type	CpmModelC$sim_gain_ack_handle, @function
CpmModelC$sim_gain_ack_handle:
.LFB334:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	call	sim_node
	lea	rdx, CpmModelC$requestAck[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L875
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outgoing[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L875
	call	sim_node
	mov	edi, eax
	call	sim_mote_is_on
	test	al, al
	je	.L875
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR 32[rax]
	movsd	QWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	CpmModelC$packetNoise
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	CpmModelC$shouldAckReceive
	test	eax, eax
	je	.L875
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outgoing[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	CpmModelC$Model$acked
.L875:
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rdi, rax
	call	CpmModelC$free_receive_message
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE334:
	.size	CpmModelC$sim_gain_ack_handle, .-CpmModelC$sim_gain_ack_handle
	.type	SourceShortestPathP$0$PathEdgeList$end, @function
SourceShortestPathP$0$PathEdgeList$end:
.LFB335:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 20
	je	.L877
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	BYTE PTR -4[rbp], al
	jne	.L878
.L877:
	mov	eax, 1
	jmp	.L879
.L878:
	mov	eax, 0
.L879:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE335:
	.size	SourceShortestPathP$0$PathEdgeList$end, .-SourceShortestPathP$0$PathEdgeList$end
	.type	DataTimerP$0$startTimer, @function
DataTimerP$0$startTimer:
.LFB336:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$delay[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movzx	eax, ax
	mov	rdi, rax
	call	DataTimerP$0$Timer$startOneShot
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE336:
	.size	DataTimerP$0$startTimer, .-DataTimerP$0$startTimer
	.type	DataTimerP$0$DataTimer$stop, @function
DataTimerP$0$DataTimer$stop:
.LFB337:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	mov	BYTE PTR -1[rbp], 0
	jmp	.L883
.L887:
	call	sim_node
	movzx	edx, BYTE PTR -1[rbp]
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, DataTimerP$0$data[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cmp	WORD PTR -20[rbp], ax
	jne	.L884
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	DataTimerP$0$removeTimer
	cmp	BYTE PTR -1[rbp], 0
	jne	.L885
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L885
	call	DataTimerP$0$adjustTimer
	call	DataTimerP$0$startTimer
.L885:
	mov	eax, 0
	jmp	.L886
.L884:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L883:
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jb	.L887
	mov	eax, 6
.L886:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE337:
	.size	DataTimerP$0$DataTimer$stop, .-DataTimerP$0$DataTimer$stop
	.type	DsrControlP$0$RouteRequestOutTimer$stop, @function
DsrControlP$0$RouteRequestOutTimer$stop:
.LFB338:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	DataTimerP$0$DataTimer$stop
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE338:
	.size	DsrControlP$0$RouteRequestOutTimer$stop, .-DsrControlP$0$RouteRequestOutTimer$stop
	.type	DsrControlP$0$RouteRequestOutCache$lookup, @function
DsrControlP$0$RouteRequestOutCache$lookup:
.LFB339:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$2$DataCache$lookup
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE339:
	.size	DsrControlP$0$RouteRequestOutCache$lookup, .-DsrControlP$0$RouteRequestOutCache$lookup
	.section	.rodata
	.align 8
.LC135:
	.string	"DSR: Route request out timer for %u reset\n"
	.text
	.type	DsrControlP$0$resetRouteRequestOutCache, @function
DsrControlP$0$resetRouteRequestOutCache:
.LFB340:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, edi
	mov	WORD PTR -36[rbp], ax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	movzx	eax, WORD PTR -36[rbp]
	mov	WORD PTR -20[rbp], ax
	mov	BYTE PTR -18[rbp], -1
	mov	BYTE PTR -17[rbp], 0
	lea	rax, -20[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestOutCache$lookup
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 0
	je	.L895
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 3[rax]
	test	al, al
	je	.L895
	mov	rax, QWORD PTR -16[rbp]
	mov	BYTE PTR 3[rax], 0
	movzx	eax, WORD PTR -36[rbp]
	mov	edi, eax
	call	DsrControlP$0$RouteRequestOutTimer$stop
	movzx	eax, WORD PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC135[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 345
	mov	eax, 0
	call	sim_log_debug
.L895:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L894
	call	__stack_chk_fail@PLT
.L894:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE340:
	.size	DsrControlP$0$resetRouteRequestOutCache, .-DsrControlP$0$resetRouteRequestOutCache
	.type	DsrControlP$0$RouteRequestOutEqual$test, @function
DsrControlP$0$RouteRequestOutEqual$test:
.LFB341:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -8[rbp]
	movzx	edx, WORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, WORD PTR [rax]
	cmp	dx, ax
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE341:
	.size	DsrControlP$0$RouteRequestOutEqual$test, .-DsrControlP$0$RouteRequestOutEqual$test
	.type	LruDataCacheP$2$Equal$test, @function
LruDataCacheP$2$Equal$test:
.LFB342:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestOutEqual$test
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE342:
	.size	LruDataCacheP$2$Equal$test, .-LruDataCacheP$2$Equal$test
	.type	VirtualizeTimerC$0$Timer$getNow, @function
VirtualizeTimerC$0$Timer$getNow:
.LFB343:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	VirtualizeTimerC$0$TimerFrom$getNow
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE343:
	.size	VirtualizeTimerC$0$Timer$getNow, .-VirtualizeTimerC$0$Timer$getNow
	.type	DataTimerP$0$Timer$getNow, @function
DataTimerP$0$Timer$getNow:
.LFB344:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 1
	call	VirtualizeTimerC$0$Timer$getNow
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE344:
	.size	DataTimerP$0$Timer$getNow, .-DataTimerP$0$Timer$getNow
	.type	VirtualizeTimerC$0$Timer$stop, @function
VirtualizeTimerC$0$Timer$stop:
.LFB345:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	mov	rcx, rax
	movzx	eax, BYTE PTR -4[rbp]
	cdqe
	mov	rdx, rax
	add	rdx, rdx
	add	rdx, rax
	lea	rax, 0[0+rdx*8]
	mov	rdx, rax
	mov	rax, rcx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 3
	add	rdx, rax
	lea	rax, VirtualizeTimerC$0$m_timers[rip+16]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	and	edx, -3
	mov	BYTE PTR [rax], dl
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE345:
	.size	VirtualizeTimerC$0$Timer$stop, .-VirtualizeTimerC$0$Timer$stop
	.type	DataTimerP$0$Timer$stop, @function
DataTimerP$0$Timer$stop:
.LFB346:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edi, 1
	call	VirtualizeTimerC$0$Timer$stop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE346:
	.size	DataTimerP$0$Timer$stop, .-DataTimerP$0$Timer$stop
	.type	TlvP$TlvList$end, @function
TlvP$TlvList$end:
.LFB347:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	cmp	BYTE PTR -24[rbp], al
	setnb	al
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE347:
	.size	TlvP$TlvList$end, .-TlvP$TlvList$end
	.type	TlvP$TlvSingle$length, @function
TlvP$TlvSingle$length:
.LFB348:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	edx, 255
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	mov	BYTE PTR -1[rbp], al
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	je	.L909
	mov	eax, 0
	jmp	.L910
.L909:
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvMultiple$length
.L910:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE348:
	.size	TlvP$TlvSingle$length, .-TlvP$TlvSingle$length
	.type	TlvPacketP$0$TlvSingle$length, @function
TlvPacketP$0$TlvSingle$length:
.LFB349:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	TlvP$TlvSingle$length
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE349:
	.size	TlvPacketP$0$TlvSingle$length, .-TlvPacketP$0$TlvSingle$length
	.type	TlvP$tlvAt, @function
TlvP$tlvAt:
.LFB350:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	eax, BYTE PTR -12[rbp]
	lea	rdx, 1[rax]
	mov	rax, QWORD PTR -8[rbp]
	add	rax, rdx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE350:
	.size	TlvP$tlvAt, .-TlvP$tlvAt
	.type	TossimActiveMessageC$Packet$getPayload, @function
TossimActiveMessageC$Packet$getPayload:
.LFB351:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	cmp	BYTE PTR -12[rbp], 36
	ja	.L916
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 7
	jmp	.L917
.L916:
	mov	eax, 0
.L917:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE351:
	.size	TossimActiveMessageC$Packet$getPayload, .-TossimActiveMessageC$Packet$getPayload
	.type	TlvPacketP$0$SubPacket$getPayload, @function
TlvPacketP$0$SubPacket$getPayload:
.LFB352:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$getPayload
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE352:
	.size	TlvPacketP$0$SubPacket$getPayload, .-TlvPacketP$0$SubPacket$getPayload
	.type	TlvP$TlvBlock$length, @function
TlvP$TlvBlock$length:
.LFB353:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	add	eax, 1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE353:
	.size	TlvP$TlvBlock$length, .-TlvP$TlvBlock$length
	.type	TlvPacketP$0$TlvBlock$length, @function
TlvPacketP$0$TlvBlock$length:
.LFB354:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvP$TlvBlock$length
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE354:
	.size	TlvPacketP$0$TlvBlock$length, .-TlvPacketP$0$TlvBlock$length
	.type	TlvPacketP$0$Packet$getPayload, @function
TlvPacketP$0$Packet$getPayload:
.LFB355:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L925
	mov	eax, 0
	jmp	.L926
.L925:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlock$length
	mov	BYTE PTR -9[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	movzx	eax, BYTE PTR -9[rbp]
	add	eax, edx
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L927
	movzx	eax, BYTE PTR -9[rbp]
	add	QWORD PTR -8[rbp], rax
.L927:
	mov	rax, QWORD PTR -8[rbp]
.L926:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE355:
	.size	TlvPacketP$0$Packet$getPayload, .-TlvPacketP$0$Packet$getPayload
	.type	LruDataCacheP$2$remove, @function
LruDataCacheP$2$remove:
.LFB356:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	BYTE PTR -36[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -36[rbp], al
	jnb	.L935
	cmp	BYTE PTR -36[rbp], 0
	jne	.L931
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, 1
	cdq
	shr	edx, 29
	add	eax, edx
	and	eax, 7
	sub	eax, edx
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, LruDataCacheP$2$first[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L932
.L931:
	movzx	eax, BYTE PTR -36[rbp]
	mov	BYTE PTR -17[rbp], al
	jmp	.L933
.L934:
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -17[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, r12d
	add	eax, 1
	cdq
	shr	edx, 29
	add	eax, edx
	and	eax, 7
	sub	eax, edx
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	lea	rbx, [rdx+rax]
	call	sim_node
	mov	r12, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+r12*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
	mov	edx, 4
	mov	rsi, rbx
	mov	rdi, rax
	call	memcpy@PLT
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L933:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jb	.L934
.L932:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, LruDataCacheP$2$count[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L928
.L935:
	nop
.L928:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE356:
	.size	LruDataCacheP$2$remove, .-LruDataCacheP$2$remove
	.type	DsrControlP$0$RouteRequestOutCache$evicted, @function
DsrControlP$0$RouteRequestOutCache$evicted:
.LFB357:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE357:
	.size	DsrControlP$0$RouteRequestOutCache$evicted, .-DsrControlP$0$RouteRequestOutCache$evicted
	.type	LruDataCacheP$2$DataCache$evicted, @function
LruDataCacheP$2$DataCache$evicted:
.LFB358:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestOutCache$evicted
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE358:
	.size	LruDataCacheP$2$DataCache$evicted, .-LruDataCacheP$2$DataCache$evicted
	.type	LruDataCacheP$2$DataCache$insert, @function
LruDataCacheP$2$DataCache$insert:
.LFB359:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	LruDataCacheP$2$lookup
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	je	.L939
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	lea	rcx, [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, 4
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	jmp	.L940
.L939:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 8
	jne	.L940
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
	mov	rdi, rax
	call	LruDataCacheP$2$DataCache$evicted
.L940:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 8
	je	.L941
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	je	.L942
.L941:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	div	dl
	movzx	eax, ah
	movzx	eax, al
	mov	edi, eax
	call	LruDataCacheP$2$remove
.L942:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	r12d, BYTE PTR [rax+rdx]
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	add	eax, r12d
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	lea	rcx, [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, 4
	mov	rsi, rax
	mov	rdi, rcx
	call	memcpy@PLT
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	r12d, BYTE PTR [rax+rdx]
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rsi, LruDataCacheP$2$count[rip]
	mov	BYTE PTR [rax+rsi], cl
	lea	eax, [r12+rdx]
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
	mov	QWORD PTR -40[rbp], rax
	call	LruDataCacheP$2$printCache
	mov	rax, QWORD PTR -40[rbp]
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE359:
	.size	LruDataCacheP$2$DataCache$insert, .-LruDataCacheP$2$DataCache$insert
	.type	DsrControlP$0$RouteRequestOutCache$insert, @function
DsrControlP$0$RouteRequestOutCache$insert:
.LFB360:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$2$DataCache$insert
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE360:
	.size	DsrControlP$0$RouteRequestOutCache$insert, .-DsrControlP$0$RouteRequestOutCache$insert
	.section	.rodata
	.align 8
.LC136:
	.string	"DT: Added new delay of %u at position %u\n"
.LC137:
	.string	"DataTimerP"
	.text
	.type	DataTimerP$0$DataTimer$start, @function
DataTimerP$0$DataTimer$start:
.LFB361:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	edx, edi
	mov	eax, esi
	mov	WORD PTR -36[rbp], dx
	mov	WORD PTR -40[rbp], ax
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 8
	jne	.L947
	mov	eax, 1
	jmp	.L948
.L947:
	call	DataTimerP$0$adjustTimer
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -17[rbp], al
	jmp	.L949
.L953:
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	sub	edx, 1
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, DataTimerP$0$delay[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cmp	WORD PTR -40[rbp], ax
	jnb	.L954
	call	sim_node
	mov	rbx, rax
	movzx	eax, BYTE PTR -17[rbp]
	lea	r12d, -1[rax]
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -17[rbp]
	movsx	rax, r12d
	lea	rsi, 0[0+rbx*8]
	add	rax, rsi
	lea	rsi, [rax+rax]
	lea	rax, DataTimerP$0$data[rip]
	movzx	eax, WORD PTR [rsi+rax]
	movsx	rcx, ecx
	sal	rdx, 3
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, DataTimerP$0$data[rip]
	mov	WORD PTR [rcx+rdx], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, BYTE PTR -17[rbp]
	lea	r12d, -1[rax]
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -17[rbp]
	movsx	rax, r12d
	lea	rsi, 0[0+rbx*8]
	add	rax, rsi
	lea	rsi, [rax+rax]
	lea	rax, DataTimerP$0$delay[rip]
	movzx	eax, WORD PTR [rsi+rax]
	movsx	rcx, ecx
	sal	rdx, 3
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, DataTimerP$0$delay[rip]
	mov	WORD PTR [rcx+rdx], ax
	movzx	eax, BYTE PTR -17[rbp]
	sub	eax, 1
	mov	BYTE PTR -17[rbp], al
.L949:
	cmp	BYTE PTR -17[rbp], 0
	jne	.L953
	jmp	.L952
.L954:
	nop
.L952:
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	lea	rcx, [rax+rax]
	lea	rdx, DataTimerP$0$data[rip]
	movzx	eax, WORD PTR -36[rbp]
	mov	WORD PTR [rcx+rdx], ax
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	lea	rcx, [rax+rax]
	lea	rdx, DataTimerP$0$delay[rip]
	movzx	eax, WORD PTR -40[rbp]
	mov	WORD PTR [rcx+rdx], ax
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, DataTimerP$0$size[rip]
	mov	BYTE PTR [rax+rdx], cl
	movzx	edx, BYTE PTR -17[rbp]
	movzx	eax, WORD PTR -40[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC136[rip]
	lea	rsi, .LC137[rip]
	mov	edi, 390
	mov	eax, 0
	call	sim_log_debug
	call	DataTimerP$0$startTimer
	mov	eax, 0
.L948:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE361:
	.size	DataTimerP$0$DataTimer$start, .-DataTimerP$0$DataTimer$start
	.type	DsrControlP$0$RouteRequestOutTimer$start, @function
DsrControlP$0$RouteRequestOutTimer$start:
.LFB362:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	WORD PTR -20[rbp], dx
	mov	WORD PTR -24[rbp], ax
	movzx	edx, WORD PTR -24[rbp]
	movzx	eax, WORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	DataTimerP$0$DataTimer$start
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE362:
	.size	DsrControlP$0$RouteRequestOutTimer$start, .-DsrControlP$0$RouteRequestOutTimer$start
	.section	.rodata
	.align 8
.LC138:
	.string	"DSR: Route request out timer for %u set to %u ms\n"
	.text
	.type	DsrControlP$0$updateRouteRequestOutTimer, @function
DsrControlP$0$updateRouteRequestOutTimer:
.LFB363:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	edx, esi
	mov	WORD PTR -20[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	mov	edx, 512
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	cmp	eax, 10240
	jle	.L958
	mov	WORD PTR -2[rbp], 10240
	jmp	.L959
.L958:
	movzx	eax, BYTE PTR -24[rbp]
	mov	edx, 512
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	mov	WORD PTR -2[rbp], ax
.L959:
	movzx	edx, WORD PTR -2[rbp]
	movzx	eax, WORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	DsrControlP$0$RouteRequestOutTimer$start
	movzx	edx, WORD PTR -2[rbp]
	movzx	eax, WORD PTR -20[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC138[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 344
	mov	eax, 0
	call	sim_log_debug
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE363:
	.size	DsrControlP$0$updateRouteRequestOutTimer, .-DsrControlP$0$updateRouteRequestOutTimer
	.section	.rodata
	.align 8
.LC139:
	.string	"TLV: Not enough room to add TLV block!\n"
.LC140:
	.string	"TlvP"
	.text
	.type	TlvP$TlvBlock$add, @function
TlvP$TlvBlock$add:
.LFB364:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	ecx, esi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -28[rbp], dl
	mov	BYTE PTR -32[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	BYTE PTR -9[rbp], 1
	movzx	edx, BYTE PTR -28[rbp]
	movzx	eax, BYTE PTR -9[rbp]
	add	edx, eax
	movzx	eax, BYTE PTR -32[rbp]
	cmp	edx, eax
	jle	.L961
	lea	rdx, .LC139[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 248
	mov	eax, 0
	call	sim_log_error
	mov	eax, 2
	jmp	.L962
.L961:
	movzx	edx, BYTE PTR -28[rbp]
	movzx	ecx, BYTE PTR -9[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rcx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	rdi, rcx
	call	memmove@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_hton_uint8
	mov	eax, 0
.L962:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE364:
	.size	TlvP$TlvBlock$add, .-TlvP$TlvBlock$add
	.type	TlvPacketP$0$TlvBlock$add, @function
TlvPacketP$0$TlvBlock$add:
.LFB365:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	ecx, esi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -28[rbp], dl
	mov	BYTE PTR -32[rbp], al
	movzx	edx, BYTE PTR -32[rbp]
	movzx	ecx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	TlvP$TlvBlock$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE365:
	.size	TlvPacketP$0$TlvBlock$add, .-TlvPacketP$0$TlvBlock$add
	.type	TlvPacketP$0$TlvBlockPacket$add, @function
TlvPacketP$0$TlvBlockPacket$add:
.LFB366:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	mov	BYTE PTR -10[rbp], al
	movzx	edx, BYTE PTR -10[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	call	TlvPacketP$0$maxLen
	movzx	edx, al
	movzx	ecx, BYTE PTR -10[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlock$add
	mov	BYTE PTR -9[rbp], al
	cmp	BYTE PTR -9[rbp], 0
	je	.L966
	movzx	eax, BYTE PTR -9[rbp]
	jmp	.L967
.L966:
	movzx	edx, BYTE PTR -10[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	TlvPacketP$0$postLengthChange
	mov	eax, 0
.L967:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE366:
	.size	TlvPacketP$0$TlvBlockPacket$add, .-TlvPacketP$0$TlvBlockPacket$add
	.type	DsrControlP$0$DsrHeader$add, @function
DsrControlP$0$DsrHeader$add:
.LFB367:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlockPacket$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE367:
	.size	DsrControlP$0$DsrHeader$add, .-DsrControlP$0$DsrHeader$add
	.type	TlvP$TlvSingle$add, @function
TlvP$TlvSingle$add:
.LFB368:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, ecx
	mov	esi, r8d
	mov	ecx, edi
	mov	BYTE PTR -4[rbp], cl
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -20[rbp], al
	mov	eax, esi
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	edx, 255
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	movzx	edx, al
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	jne	.L971
	mov	eax, 9
	jmp	.L972
.L971:
	movzx	edi, BYTE PTR -24[rbp]
	movzx	ecx, BYTE PTR -20[rbp]
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	r9d, edi
	mov	r8d, ecx
	mov	ecx, edx
	mov	edx, 0
	mov	edi, eax
	call	TlvP$TlvMultiple$add
.L972:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE368:
	.size	TlvP$TlvSingle$add, .-TlvP$TlvSingle$add
	.type	TlvPacketP$0$TlvSingle$add, @function
TlvPacketP$0$TlvSingle$add:
.LFB369:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, ecx
	mov	esi, r8d
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	BYTE PTR -24[rbp], dl
	mov	BYTE PTR -36[rbp], al
	mov	eax, esi
	mov	BYTE PTR -40[rbp], al
	movzx	edi, BYTE PTR -40[rbp]
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	r8d, edi
	mov	edi, eax
	call	TlvP$TlvSingle$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE369:
	.size	TlvPacketP$0$TlvSingle$add, .-TlvPacketP$0$TlvSingle$add
	.type	TlvP$TlvSingle$value, @function
TlvP$TlvSingle$value:
.LFB370:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	edx, 255
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	mov	BYTE PTR -1[rbp], al
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	je	.L976
	mov	eax, 0
	jmp	.L977
.L976:
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvMultiple$value
.L977:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE370:
	.size	TlvP$TlvSingle$value, .-TlvP$TlvSingle$value
	.type	TlvPacketP$0$TlvSingle$value, @function
TlvPacketP$0$TlvSingle$value:
.LFB371:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	TlvP$TlvSingle$value
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE371:
	.size	TlvPacketP$0$TlvSingle$value, .-TlvPacketP$0$TlvSingle$value
	.type	SourceShortestPathP$0$PathEdgeList$next, @function
SourceShortestPathP$0$PathEdgeList$next:
.LFB372:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 19
	jbe	.L981
	mov	eax, 20
	jmp	.L982
.L981:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
.L982:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE372:
	.size	SourceShortestPathP$0$PathEdgeList$next, .-SourceShortestPathP$0$PathEdgeList$next
	.type	DsrControlP$0$RouteNodeList$next, @function
DsrControlP$0$RouteNodeList$next:
.LFB373:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$PathEdgeList$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE373:
	.size	DsrControlP$0$RouteNodeList$next, .-DsrControlP$0$RouteNodeList$next
	.type	PacketEngineP$moveWaitIndex, @function
PacketEngineP$moveWaitIndex:
.LFB374:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	add	rax, rdx
	mov	esi, 4
	mov	rdi, rax
	call	PacketEngineP$moveIndex
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE374:
	.size	PacketEngineP$moveWaitIndex, .-PacketEngineP$moveWaitIndex
	.section	.rodata
	.align 8
.LC141:
	.string	"PE: Moved nextActionPkt from %u"
	.text
	.type	PacketEngineP$markPacket, @function
PacketEngineP$markPacket:
.LFB375:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movzx	ecx, BYTE PTR -8[rbp]
	and	ecx, 31
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rsi
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	mov	esi, ecx
	and	esi, 31
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, esi
	mov	BYTE PTR [rdx+rax], cl
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 40
	jne	.L987
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC141[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 174
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rcx, PacketEngineP$nextActionPkt[rip]
	movzx	edx, BYTE PTR -4[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC26[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 175
	mov	eax, 0
	call	sim_log_debug_clear
	call	PacketEngineP$printIndices
.L987:
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -4[rbp], al
	jne	.L988
	call	PacketEngineP$moveWaitIndex
.L988:
	call	PacketEngineP$msgAction$postTask
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE375:
	.size	PacketEngineP$markPacket, .-PacketEngineP$markPacket
	.type	DsrControlP$0$DsrPacketEngine$waitList, @function
DsrControlP$0$DsrPacketEngine$waitList:
.LFB376:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 48
	call	PacketEngineP$PacketEngine$waitList
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE376:
	.size	DsrControlP$0$DsrPacketEngine$waitList, .-DsrControlP$0$DsrPacketEngine$waitList
	.type	DsrControlP$0$DsrPacketWaitList$end, @function
DsrControlP$0$DsrPacketWaitList$end:
.LFB377:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketWaitList$end
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE377:
	.size	DsrControlP$0$DsrPacketWaitList$end, .-DsrControlP$0$DsrPacketWaitList$end
	.type	BitVectorC$1$BitVector$get, @function
BitVectorC$1$BitVector$get:
.LFB378:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$getIndex
	movzx	eax, ax
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rdx, rax
	lea	rax, BitVectorC$1$m_bits[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$getMask
	movzx	eax, ax
	and	eax, ebx
	test	eax, eax
	setne	al
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE378:
	.size	BitVectorC$1$BitVector$get, .-BitVectorC$1$BitVector$get
	.type	DsrControlP$0$Salvage$get, @function
DsrControlP$0$Salvage$get:
.LFB379:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$BitVector$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE379:
	.size	DsrControlP$0$Salvage$get, .-DsrControlP$0$Salvage$get
	.type	DsrControlP$0$DsrPacketWaitList$next, @function
DsrControlP$0$DsrPacketWaitList$next:
.LFB380:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketWaitList$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE380:
	.size	DsrControlP$0$DsrPacketWaitList$next, .-DsrControlP$0$DsrPacketWaitList$next
	.type	DsrControlP$0$Salvage$clear, @function
DsrControlP$0$Salvage$clear:
.LFB381:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$1$BitVector$clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE381:
	.size	DsrControlP$0$Salvage$clear, .-DsrControlP$0$Salvage$clear
	.type	DsrControlP$0$SourceRoute$setLength, @function
DsrControlP$0$SourceRoute$setLength:
.LFB382:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 96
	call	TlvPacketP$0$TlvSinglePacket$setLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE382:
	.size	DsrControlP$0$SourceRoute$setLength, .-DsrControlP$0$SourceRoute$setLength
	.type	TlvP$TlvSingle$setLength, @function
TlvP$TlvSingle$setLength:
.LFB383:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, ecx
	mov	esi, r8d
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	BYTE PTR -24[rbp], dl
	mov	BYTE PTR -36[rbp], al
	mov	eax, esi
	mov	BYTE PTR -40[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	edx, 255
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	mov	BYTE PTR -1[rbp], al
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	je	.L1003
	mov	eax, 6
	jmp	.L1004
.L1003:
	movzx	r8d, BYTE PTR -40[rbp]
	movzx	edi, BYTE PTR -36[rbp]
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	edi, eax
	call	TlvP$TlvMultiple$setLength
.L1004:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE383:
	.size	TlvP$TlvSingle$setLength, .-TlvP$TlvSingle$setLength
	.type	TlvPacketP$0$TlvSingle$setLength, @function
TlvPacketP$0$TlvSingle$setLength:
.LFB384:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, ecx
	mov	esi, r8d
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	BYTE PTR -24[rbp], dl
	mov	BYTE PTR -36[rbp], al
	mov	eax, esi
	mov	BYTE PTR -40[rbp], al
	movzx	edi, BYTE PTR -40[rbp]
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	r8d, edi
	mov	edi, eax
	call	TlvP$TlvSingle$setLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE384:
	.size	TlvPacketP$0$TlvSingle$setLength, .-TlvPacketP$0$TlvSingle$setLength
	.type	TossimActiveMessageC$Packet$setPayloadLength, @function
TossimActiveMessageC$Packet$setPayloadLength:
.LFB385:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 16
	.cfi_offset 3, -24
	mov	QWORD PTR -16[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], al
	movzx	ebx, BYTE PTR -20[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	add	rax, 4
	mov	esi, ebx
	mov	rdi, rax
	call	__nesc_hton_uint8
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE385:
	.size	TossimActiveMessageC$Packet$setPayloadLength, .-TossimActiveMessageC$Packet$setPayloadLength
	.type	TlvPacketP$0$SubPacket$setPayloadLength, @function
TlvPacketP$0$SubPacket$setPayloadLength:
.LFB386:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE386:
	.size	TlvPacketP$0$SubPacket$setPayloadLength, .-TlvPacketP$0$SubPacket$setPayloadLength
	.type	TlvPacketP$0$Packet$setPayloadLength, @function
TlvPacketP$0$Packet$setPayloadLength:
.LFB387:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlock$length
	movzx	edx, BYTE PTR -28[rbp]
	add	eax, edx
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE387:
	.size	TlvPacketP$0$Packet$setPayloadLength, .-TlvPacketP$0$Packet$setPayloadLength
	.type	PacketEngineP$SubPacket$default$setPayloadLength, @function
PacketEngineP$SubPacket$default$setPayloadLength:
.LFB388:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 134
	mov	eax, 0
	call	sim_log_error
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE388:
	.size	PacketEngineP$SubPacket$default$setPayloadLength, .-PacketEngineP$SubPacket$default$setPayloadLength
	.type	PacketEngineP$SubPacket$setPayloadLength, @function
PacketEngineP$SubPacket$setPayloadLength:
.LFB389:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	eax, 4
	je	.L1012
	cmp	eax, 48
	je	.L1013
	jmp	.L1016
.L1012:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$setPayloadLength
	jmp	.L1015
.L1013:
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$Packet$setPayloadLength
	jmp	.L1015
.L1016:
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$SubPacket$default$setPayloadLength
	nop
.L1015:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE389:
	.size	PacketEngineP$SubPacket$setPayloadLength, .-PacketEngineP$SubPacket$setPayloadLength
	.type	SinglePacketP$AMPacket$address, @function
SinglePacketP$AMPacket$address:
.LFB390:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	TossimActiveMessageC$AMPacket$address
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE390:
	.size	SinglePacketP$AMPacket$address, .-SinglePacketP$AMPacket$address
	.type	TlvPacketP$0$TlvList$end, @function
TlvPacketP$0$TlvList$end:
.LFB391:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE391:
	.size	TlvPacketP$0$TlvList$end, .-TlvPacketP$0$TlvList$end
	.type	TlvP$TlvMultiple$list, @function
TlvP$TlvMultiple$list:
.LFB392:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	edx, 255
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE392:
	.size	TlvP$TlvMultiple$list, .-TlvP$TlvMultiple$list
	.type	TlvPacketP$0$TlvMultiple$list, @function
TlvPacketP$0$TlvMultiple$list:
.LFB393:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	TlvP$TlvMultiple$list
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE393:
	.size	TlvPacketP$0$TlvMultiple$list, .-TlvPacketP$0$TlvMultiple$list
	.type	TlvPacketP$0$TlvList$next, @function
TlvPacketP$0$TlvList$next:
.LFB394:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE394:
	.size	TlvPacketP$0$TlvList$next, .-TlvPacketP$0$TlvList$next
	.type	TlvPacketP$0$TlvMultiple$length, @function
TlvPacketP$0$TlvMultiple$length:
.LFB395:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvMultiple$length
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE395:
	.size	TlvPacketP$0$TlvMultiple$length, .-TlvPacketP$0$TlvMultiple$length
	.type	TlvPacketP$0$TlvMultiple$value, @function
TlvPacketP$0$TlvMultiple$value:
.LFB396:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvMultiple$value
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE396:
	.size	TlvPacketP$0$TlvMultiple$value, .-TlvPacketP$0$TlvMultiple$value
	.type	SourceShortestPathP$0$SourceShortestPath$buildingTree, @function
SourceShortestPathP$0$SourceShortestPath$buildingTree:
.LFB397:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE397:
	.size	SourceShortestPathP$0$SourceShortestPath$buildingTree, .-SourceShortestPathP$0$SourceShortestPath$buildingTree
	.type	SimpleLinkCacheP$SourceShortestPath$buildingTree, @function
SimpleLinkCacheP$SourceShortestPath$buildingTree:
.LFB398:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	SourceShortestPathP$0$SourceShortestPath$buildingTree
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE398:
	.size	SimpleLinkCacheP$SourceShortestPath$buildingTree, .-SimpleLinkCacheP$SourceShortestPath$buildingTree
	.type	BitVectorC$3$BitVector$set, @function
BitVectorC$3$BitVector$set:
.LFB399:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$3$getMask
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$3$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$3$m_bits[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	mov	esi, r12d
	movzx	eax, dx
	mov	edx, ecx
	or	edx, esi
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$3$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE399:
	.size	BitVectorC$3$BitVector$set, .-BitVectorC$3$BitVector$set
	.type	SimpleLinkCacheP$Initial$set, @function
SimpleLinkCacheP$Initial$set:
.LFB400:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$3$BitVector$set
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE400:
	.size	SimpleLinkCacheP$Initial$set, .-SimpleLinkCacheP$Initial$set
	.type	DsrControlP$0$RouteRequest$add, @function
DsrControlP$0$RouteRequest$add:
.LFB401:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	TlvPacketP$0$TlvSinglePacket$add
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE401:
	.size	DsrControlP$0$RouteRequest$add, .-DsrControlP$0$RouteRequest$add
	.type	DsrControlP$0$Acks$noAck, @function
DsrControlP$0$Acks$noAck:
.LFB402:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$PacketAcknowledgements$noAck
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE402:
	.size	DsrControlP$0$Acks$noAck, .-DsrControlP$0$Acks$noAck
	.type	SinglePacketP$SinglePacket$setSource, @function
SinglePacketP$SinglePacket$setSource:
.LFB403:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	movzx	ebx, WORD PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 4
	mov	rdi, rax
	call	SinglePacketP$SubPacket$getPayload
	mov	esi, ebx
	mov	rdi, rax
	call	__nesc_hton_uint16
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE403:
	.size	SinglePacketP$SinglePacket$setSource, .-SinglePacketP$SinglePacket$setSource
	.type	SinglePacketP$SinglePacket$setDestination, @function
SinglePacketP$SinglePacket$setDestination:
.LFB404:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	movzx	ebx, WORD PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 4
	mov	rdi, rax
	call	SinglePacketP$SubPacket$getPayload
	add	rax, 2
	mov	esi, ebx
	mov	rdi, rax
	call	__nesc_hton_uint16
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE404:
	.size	SinglePacketP$SinglePacket$setDestination, .-SinglePacketP$SinglePacket$setDestination
	.type	SinglePacketP$SubSend$default$send, @function
SinglePacketP$SubSend$default$send:
.LFB405:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, esi
	mov	QWORD PTR -16[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -4[rbp], cl
	mov	WORD PTR -8[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC88[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 400
	mov	eax, 0
	call	sim_log_error
	mov	eax, 1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE405:
	.size	SinglePacketP$SubSend$default$send, .-SinglePacketP$SubSend$default$send
	.type	SinglePacketP$SubSend$send, @function
SinglePacketP$SubSend$send:
.LFB406:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, esi
	mov	QWORD PTR -32[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	WORD PTR -24[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	test	eax, eax
	je	.L1046
	cmp	eax, 1
	je	.L1047
	jmp	.L1051
.L1046:
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	eax, WORD PTR -24[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	esi, eax
	mov	edi, 0
	call	PacketEngineP$Send$send
	mov	BYTE PTR -1[rbp], al
	jmp	.L1049
.L1047:
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	eax, WORD PTR -24[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	esi, eax
	mov	edi, 1
	call	PacketEngineP$Send$send
	mov	BYTE PTR -1[rbp], al
	jmp	.L1049
.L1051:
	movzx	ecx, BYTE PTR -36[rbp]
	movzx	esi, WORD PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	edi, eax
	call	SinglePacketP$SubSend$default$send
	mov	BYTE PTR -1[rbp], al
	nop
.L1049:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE406:
	.size	SinglePacketP$SubSend$send, .-SinglePacketP$SubSend$send
	.type	PacketEngineP$SendPool$put, @function
PacketEngineP$SendPool$put:
.LFB407:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PoolP$1$Pool$put
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE407:
	.size	PacketEngineP$SendPool$put, .-PacketEngineP$SendPool$put
	.section	.rodata
	.align 8
.LC142:
	.string	"PE: Send queue overflow, evicting pkt %hhu!\n"
	.align 8
.LC143:
	.string	"PE: Send pool already full, leaking packet!\n"
	.text
	.type	PacketEngineP$SendQueue$evicted, @function
PacketEngineP$SendQueue$evicted:
.LFB408:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -17[rbp]
	mov	ecx, eax
	lea	rdx, .LC142[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 120
	mov	eax, 0
	call	sim_log_error
	movzx	ebx, BYTE PTR -17[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	edx, 5
	mov	esi, ebx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$upperSendDone
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$SendPool$put
	cmp	al, 1
	jne	.L1055
	lea	rdx, .LC143[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 121
	mov	eax, 0
	call	sim_log_error
.L1055:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, 1
	mov	BYTE PTR [rdx+rax], cl
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jne	.L1057
	call	PacketEngineP$moveWaitIndex
.L1057:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE408:
	.size	PacketEngineP$SendQueue$evicted, .-PacketEngineP$SendQueue$evicted
	.type	LruDataCacheP$0$DataCache$evicted, @function
LruDataCacheP$0$DataCache$evicted:
.LFB409:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	PacketEngineP$SendQueue$evicted
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE409:
	.size	LruDataCacheP$0$DataCache$evicted, .-LruDataCacheP$0$DataCache$evicted
	.type	LruDataCacheP$0$DataCache$insert, @function
LruDataCacheP$0$DataCache$insert:
.LFB410:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	LruDataCacheP$0$lookup
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	je	.L1060
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -17[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	lea	ecx, [r12+rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	lea	rcx, [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, 2
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	jmp	.L1061
.L1060:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	jne	.L1061
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	add	rax, rdx
	mov	rdi, rax
	call	LruDataCacheP$0$DataCache$evicted
.L1061:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	je	.L1062
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	je	.L1063
.L1062:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	div	dl
	movzx	eax, ah
	movzx	eax, al
	mov	edi, eax
	call	LruDataCacheP$0$remove
.L1063:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	r12d, al
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	lea	ecx, [r12+rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	lea	rcx, [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, 2
	mov	rsi, rax
	mov	rdi, rcx
	call	memcpy@PLT
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	r12d, al
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rsi, LruDataCacheP$0$count[rip]
	mov	BYTE PTR [rax+rsi], cl
	movzx	eax, dl
	lea	ecx, [r12+rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	add	rax, rdx
	mov	QWORD PTR -40[rbp], rax
	call	LruDataCacheP$0$printCache
	mov	rax, QWORD PTR -40[rbp]
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE410:
	.size	LruDataCacheP$0$DataCache$insert, .-LruDataCacheP$0$DataCache$insert
	.type	PacketEngineP$SendQueue$insert, @function
PacketEngineP$SendQueue$insert:
.LFB411:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$0$DataCache$insert
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE411:
	.size	PacketEngineP$SendQueue$insert, .-PacketEngineP$SendQueue$insert
	.type	PoolP$1$Pool$empty, @function
PoolP$1$Pool$empty:
.LFB412:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE412:
	.size	PoolP$1$Pool$empty, .-PoolP$1$Pool$empty
	.type	PacketEngineP$SendPool$empty, @function
PacketEngineP$SendPool$empty:
.LFB413:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PoolP$1$Pool$empty
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE413:
	.size	PacketEngineP$SendPool$empty, .-PacketEngineP$SendPool$empty
	.type	PoolP$1$Pool$get, @function
PoolP$1$Pool$get:
.LFB414:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L1072
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, PoolP$1$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -24[rbp], rax
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, PoolP$1$queue[rip]
	mov	QWORD PTR [rdx+rax], 0
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, PoolP$1$free[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, PoolP$1$index[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	jne	.L1073
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	mov	BYTE PTR [rax+rdx], 0
.L1073:
	mov	rax, QWORD PTR -24[rbp]
	jmp	.L1074
.L1072:
	mov	eax, 0
.L1074:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE414:
	.size	PoolP$1$Pool$get, .-PoolP$1$Pool$get
	.type	PacketEngineP$SendPool$get, @function
PacketEngineP$SendPool$get:
.LFB415:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PoolP$1$Pool$get
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE415:
	.size	PacketEngineP$SendPool$get, .-PacketEngineP$SendPool$get
	.type	PacketEngineClientP$0$PacketEngineClient$upperType, @function
PacketEngineClientP$0$PacketEngineClient$upperType:
.LFB416:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE416:
	.size	PacketEngineClientP$0$PacketEngineClient$upperType, .-PacketEngineClientP$0$PacketEngineClient$upperType
	.type	PacketEngineClientP$1$PacketEngineClient$upperType, @function
PacketEngineClientP$1$PacketEngineClient$upperType:
.LFB417:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 23
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE417:
	.size	PacketEngineClientP$1$PacketEngineClient$upperType, .-PacketEngineClientP$1$PacketEngineClient$upperType
	.type	PacketEngineP$PacketEngineClient$default$upperType, @function
PacketEngineP$PacketEngineClient$default$upperType:
.LFB418:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC90[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 118
	mov	eax, 0
	call	sim_log_error
	mov	eax, -1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE418:
	.size	PacketEngineP$PacketEngineClient$default$upperType, .-PacketEngineP$PacketEngineClient$default$upperType
	.type	PacketEngineP$PacketEngineClient$upperType, @function
PacketEngineP$PacketEngineClient$upperType:
.LFB419:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	test	eax, eax
	je	.L1084
	cmp	eax, 1
	je	.L1085
	jmp	.L1089
.L1084:
	call	PacketEngineClientP$1$PacketEngineClient$upperType
	mov	BYTE PTR -1[rbp], al
	jmp	.L1087
.L1085:
	call	PacketEngineClientP$0$PacketEngineClient$upperType
	mov	BYTE PTR -1[rbp], al
	jmp	.L1087
.L1089:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngineClient$default$upperType
	mov	BYTE PTR -1[rbp], al
	nop
.L1087:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE419:
	.size	PacketEngineP$PacketEngineClient$upperType, .-PacketEngineP$PacketEngineClient$upperType
	.type	PacketEngineP$AMPacket$setType, @function
PacketEngineP$AMPacket$setType:
.LFB420:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$setType
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE420:
	.size	PacketEngineP$AMPacket$setType, .-PacketEngineP$AMPacket$setType
	.type	PacketEngineP$setLid, @function
PacketEngineP$setLid:
.LFB421:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$AMPacket$setType
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE421:
	.size	PacketEngineP$setLid, .-PacketEngineP$setLid
	.type	PacketEngineClientP$0$PacketEngineClient$defaultLowerType, @function
PacketEngineClientP$0$PacketEngineClient$defaultLowerType:
.LFB422:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 48
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE422:
	.size	PacketEngineClientP$0$PacketEngineClient$defaultLowerType, .-PacketEngineClientP$0$PacketEngineClient$defaultLowerType
	.type	PacketEngineClientP$1$PacketEngineClient$defaultLowerType, @function
PacketEngineClientP$1$PacketEngineClient$defaultLowerType:
.LFB423:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 4
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE423:
	.size	PacketEngineClientP$1$PacketEngineClient$defaultLowerType, .-PacketEngineClientP$1$PacketEngineClient$defaultLowerType
	.type	PacketEngineP$PacketEngineClient$default$defaultLowerType, @function
PacketEngineP$PacketEngineClient$default$defaultLowerType:
.LFB424:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC90[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 119
	mov	eax, 0
	call	sim_log_error
	mov	eax, -1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE424:
	.size	PacketEngineP$PacketEngineClient$default$defaultLowerType, .-PacketEngineP$PacketEngineClient$default$defaultLowerType
	.type	PacketEngineP$PacketEngineClient$defaultLowerType, @function
PacketEngineP$PacketEngineClient$defaultLowerType:
.LFB425:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	test	eax, eax
	je	.L1099
	cmp	eax, 1
	je	.L1100
	jmp	.L1104
.L1099:
	call	PacketEngineClientP$1$PacketEngineClient$defaultLowerType
	mov	BYTE PTR -1[rbp], al
	jmp	.L1102
.L1100:
	call	PacketEngineClientP$0$PacketEngineClient$defaultLowerType
	mov	BYTE PTR -1[rbp], al
	jmp	.L1102
.L1104:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngineClient$default$defaultLowerType
	mov	BYTE PTR -1[rbp], al
	nop
.L1102:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE425:
	.size	PacketEngineP$PacketEngineClient$defaultLowerType, .-PacketEngineP$PacketEngineClient$defaultLowerType
	.type	TlvPacketP$0$Packet$payloadLength, @function
TlvPacketP$0$Packet$payloadLength:
.LFB426:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	mov	BYTE PTR -9[rbp], al
	movzx	edx, BYTE PTR -9[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlock$length
	mov	edx, eax
	movzx	eax, BYTE PTR -9[rbp]
	sub	eax, edx
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE426:
	.size	TlvPacketP$0$Packet$payloadLength, .-TlvPacketP$0$Packet$payloadLength
	.type	PacketEngineP$SubPacket$default$payloadLength, @function
PacketEngineP$SubPacket$default$payloadLength:
.LFB427:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 133
	mov	eax, 0
	call	sim_log_error
	mov	eax, -1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE427:
	.size	PacketEngineP$SubPacket$default$payloadLength, .-PacketEngineP$SubPacket$default$payloadLength
	.type	PacketEngineP$SubPacket$payloadLength, @function
PacketEngineP$SubPacket$payloadLength:
.LFB428:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 4
	je	.L1110
	cmp	eax, 48
	je	.L1111
	jmp	.L1115
.L1110:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	jmp	.L1113
.L1111:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	jmp	.L1113
.L1115:
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	PacketEngineP$SubPacket$default$payloadLength
	mov	BYTE PTR -1[rbp], al
	nop
.L1113:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE428:
	.size	PacketEngineP$SubPacket$payloadLength, .-PacketEngineP$SubPacket$payloadLength
	.type	TlvP$TlvMultiple$remove, @function
TlvP$TlvMultiple$remove:
.LFB429:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, ecx
	mov	ecx, edi
	mov	BYTE PTR -4[rbp], cl
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -20[rbp], al
	movzx	ecx, BYTE PTR -20[rbp]
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	r9d, 0
	mov	r8d, ecx
	mov	ecx, 0
	mov	edi, eax
	call	TlvP$TlvMultiple$setLength
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE429:
	.size	TlvP$TlvMultiple$remove, .-TlvP$TlvMultiple$remove
	.type	TlvP$TlvSingle$remove, @function
TlvP$TlvSingle$remove:
.LFB430:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	ebx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	edx, 255
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$next
	movzx	edx, al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	ecx, ebx
	mov	edi, eax
	call	TlvP$TlvMultiple$remove
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE430:
	.size	TlvP$TlvSingle$remove, .-TlvP$TlvSingle$remove
	.type	TlvPacketP$0$TlvSingle$remove, @function
TlvPacketP$0$TlvSingle$remove:
.LFB431:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvSingle$remove
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE431:
	.size	TlvPacketP$0$TlvSingle$remove, .-TlvPacketP$0$TlvSingle$remove
	.type	SimpleLinkCacheP$AMPacket$address, @function
SimpleLinkCacheP$AMPacket$address:
.LFB432:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	TossimActiveMessageC$AMPacket$address
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE432:
	.size	SimpleLinkCacheP$AMPacket$address, .-SimpleLinkCacheP$AMPacket$address
	.type	SimpleLinkCacheP$Graph$insert, @function
SimpleLinkCacheP$Graph$insert:
.LFB433:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	GraphSparseP$0$Graph$insert
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE433:
	.size	SimpleLinkCacheP$Graph$insert, .-SimpleLinkCacheP$Graph$insert
	.type	SimpleLinkCacheP$RouteCache$addPath, @function
SimpleLinkCacheP$RouteCache$addPath:
.LFB434:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	ecx, esi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -28[rbp], dl
	mov	BYTE PTR -32[rbp], al
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1127
.L1129:
	movzx	eax, BYTE PTR -1[rbp]
	lea	rdx, 1[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	movzx	ecx, BYTE PTR -1[rbp]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$Graph$insert
	cmp	BYTE PTR -32[rbp], 0
	je	.L1128
	movzx	eax, BYTE PTR -28[rbp]
	movzx	edx, BYTE PTR -1[rbp]
	sub	eax, edx
	cdqe
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	movzx	eax, BYTE PTR -28[rbp]
	movzx	ecx, BYTE PTR -1[rbp]
	sub	eax, ecx
	movsx	rcx, eax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$Graph$insert
.L1128:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1127:
	movzx	eax, BYTE PTR -1[rbp]
	cmp	al, BYTE PTR -28[rbp]
	jb	.L1129
	call	SimpleLinkCacheP$AMPacket$address
	movzx	eax, al
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$buildTree
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE434:
	.size	SimpleLinkCacheP$RouteCache$addPath, .-SimpleLinkCacheP$RouteCache$addPath
	.type	DsrControlP$0$RouteCache$addPath, @function
DsrControlP$0$RouteCache$addPath:
.LFB435:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	ecx, esi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -12[rbp], dl
	mov	BYTE PTR -16[rbp], al
	movzx	edx, BYTE PTR -16[rbp]
	movzx	ecx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	SimpleLinkCacheP$RouteCache$addPath
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE435:
	.size	DsrControlP$0$RouteCache$addPath, .-DsrControlP$0$RouteCache$addPath
	.type	GraphSparseP$0$Graph$edge, @function
GraphSparseP$0$Graph$edge:
.LFB436:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -1[rbp], al
	jmp	.L1132
.L1135:
	call	sim_node
	movzx	edx, BYTE PTR -1[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	cmp	BYTE PTR -24[rbp], al
	jne	.L1133
	movzx	eax, BYTE PTR -1[rbp]
	jmp	.L1134
.L1133:
	call	sim_node
	movzx	edx, BYTE PTR -1[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip+1]
	movzx	eax, BYTE PTR [rdx+rax]
	mov	BYTE PTR -1[rbp], al
.L1132:
	cmp	BYTE PTR -1[rbp], -6
	jne	.L1135
	mov	eax, -6
.L1134:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE436:
	.size	GraphSparseP$0$Graph$edge, .-GraphSparseP$0$Graph$edge
	.type	IndexedAllocBitsP$0$BitVector$get, @function
IndexedAllocBitsP$0$BitVector$get:
.LFB437:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$4$BitVector$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE437:
	.size	IndexedAllocBitsP$0$BitVector$get, .-IndexedAllocBitsP$0$BitVector$get
	.type	IndexedAllocBitsP$0$findFree, @function
IndexedAllocBitsP$0$findFree:
.LFB438:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, -6
	je	.L1143
	jmp	.L1141
.L1142:
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	sim_node
	mov	rcx, rax
	lea	rax, IndexedAllocBitsP$0$free[rip]
	movzx	esi, BYTE PTR [rcx+rax]
	cmp	sil, -6
	setnb	al
	mov	edx, eax
	sal	eax, 2
	sub	edx, eax
	lea	eax, [rdx+rdx]
	mov	edx, eax
	mov	eax, esi
	sub	eax, edx
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	mov	BYTE PTR [rcx+rdx], al
.L1141:
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edi, eax
	call	IndexedAllocBitsP$0$BitVector$get
	test	al, al
	jne	.L1142
	jmp	.L1138
.L1143:
	nop
.L1138:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE438:
	.size	IndexedAllocBitsP$0$findFree, .-IndexedAllocBitsP$0$findFree
	.type	BitVectorC$4$BitVector$set, @function
BitVectorC$4$BitVector$set:
.LFB439:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$4$getMask
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$4$getIndex
	movzx	edx, ax
	movsx	rdx, edx
	mov	rcx, rbx
	sal	rcx, 5
	add	rcx, rdx
	lea	rdx, BitVectorC$4$m_bits[rip]
	add	rdx, rcx
	movzx	edx, BYTE PTR [rdx]
	mov	ecx, r12d
	movzx	eax, ax
	or	edx, ecx
	cdqe
	sal	rbx, 5
	mov	rcx, rbx
	add	rcx, rax
	lea	rax, BitVectorC$4$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE439:
	.size	BitVectorC$4$BitVector$set, .-BitVectorC$4$BitVector$set
	.type	IndexedAllocBitsP$0$BitVector$set, @function
IndexedAllocBitsP$0$BitVector$set:
.LFB440:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$4$BitVector$set
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE440:
	.size	IndexedAllocBitsP$0$BitVector$set, .-IndexedAllocBitsP$0$BitVector$set
	.type	IndexedAllocBitsP$0$IndexedAlloc$alloc, @function
IndexedAllocBitsP$0$IndexedAlloc$alloc:
.LFB441:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, -6
	jne	.L1147
	mov	eax, -6
	jmp	.L1148
.L1147:
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edi, eax
	call	IndexedAllocBitsP$0$BitVector$set
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -1[rbp], al
	call	IndexedAllocBitsP$0$findFree
	movzx	eax, BYTE PTR -1[rbp]
.L1148:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE441:
	.size	IndexedAllocBitsP$0$IndexedAlloc$alloc, .-IndexedAllocBitsP$0$IndexedAlloc$alloc
	.type	GraphSparseP$0$IndexedAlloc$alloc, @function
GraphSparseP$0$IndexedAlloc$alloc:
.LFB442:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	IndexedAllocBitsP$0$IndexedAlloc$alloc
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE442:
	.size	GraphSparseP$0$IndexedAlloc$alloc, .-GraphSparseP$0$IndexedAlloc$alloc
	.type	SimpleLinkCacheP$Graph$inserted, @function
SimpleLinkCacheP$Graph$inserted:
.LFB443:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE443:
	.size	SimpleLinkCacheP$Graph$inserted, .-SimpleLinkCacheP$Graph$inserted
	.type	SourceShortestPathP$0$Graph$inserted, @function
SourceShortestPathP$0$Graph$inserted:
.LFB444:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	call	sim_node
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	mov	BYTE PTR [rax+rdx], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE444:
	.size	SourceShortestPathP$0$Graph$inserted, .-SourceShortestPathP$0$Graph$inserted
	.type	GraphSparseP$0$Graph$inserted, @function
GraphSparseP$0$Graph$inserted:
.LFB445:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$Graph$inserted
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Graph$inserted
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE445:
	.size	GraphSparseP$0$Graph$inserted, .-GraphSparseP$0$Graph$inserted
	.section	.rodata
.LC144:
	.string	"LRUDC:"
.LC145:
	.string	"LruDataCacheP"
.LC146:
	.string	" %08x"
.LC147:
	.string	"*"
.LC148:
	.string	"\n"
	.text
	.type	LruDataCacheP$1$printCache, @function
LruDataCacheP$1$printCache:
.LFB446:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	lea	rdx, .LC144[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 382
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1155
.L1157:
	call	sim_node
	movzx	edx, BYTE PTR -1[rbp]
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	mov	rcx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR 8[rdx+rax]
	mov	r8, rax
	lea	rdx, .LC146[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 383
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jne	.L1156
	lea	rdx, .LC147[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 384
	mov	eax, 0
	call	sim_log_debug_clear
.L1156:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1155:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jb	.L1157
	lea	rdx, .LC148[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 385
	mov	eax, 0
	call	sim_log_debug_clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE446:
	.size	LruDataCacheP$1$printCache, .-LruDataCacheP$1$printCache
	.type	LruDataCacheP$1$remove, @function
LruDataCacheP$1$remove:
.LFB447:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	BYTE PTR -36[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -36[rbp], al
	jnb	.L1165
	cmp	BYTE PTR -36[rbp], 0
	jne	.L1161
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, 1
	cdq
	shr	edx, 29
	add	eax, edx
	and	eax, 7
	sub	eax, edx
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, LruDataCacheP$1$first[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L1162
.L1161:
	movzx	eax, BYTE PTR -36[rbp]
	mov	BYTE PTR -17[rbp], al
	jmp	.L1163
.L1164:
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -17[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, r12d
	add	eax, 1
	cdq
	shr	edx, 29
	add	eax, edx
	and	eax, 7
	sub	eax, edx
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	lea	rbx, [rdx+rax]
	call	sim_node
	mov	r12, rax
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+r12*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	add	rax, rdx
	mov	edx, 16
	mov	rsi, rbx
	mov	rdi, rax
	call	memcpy@PLT
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L1163:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jb	.L1164
.L1162:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, LruDataCacheP$1$count[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L1158
.L1165:
	nop
.L1158:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE447:
	.size	LruDataCacheP$1$remove, .-LruDataCacheP$1$remove
	.type	DsrControlP$0$RouteRequestInCache$evicted, @function
DsrControlP$0$RouteRequestInCache$evicted:
.LFB448:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE448:
	.size	DsrControlP$0$RouteRequestInCache$evicted, .-DsrControlP$0$RouteRequestInCache$evicted
	.type	LruDataCacheP$1$DataCache$evicted, @function
LruDataCacheP$1$DataCache$evicted:
.LFB449:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestInCache$evicted
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE449:
	.size	LruDataCacheP$1$DataCache$evicted, .-LruDataCacheP$1$DataCache$evicted
	.type	DsrControlP$0$RouteRequestInEqual$test, @function
DsrControlP$0$RouteRequestInEqual$test:
.LFB450:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -8[rbp]
	movzx	edx, WORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, WORD PTR [rax]
	cmp	dx, ax
	sete	al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE450:
	.size	DsrControlP$0$RouteRequestInEqual$test, .-DsrControlP$0$RouteRequestInEqual$test
	.type	LruDataCacheP$1$Equal$test, @function
LruDataCacheP$1$Equal$test:
.LFB451:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestInEqual$test
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE451:
	.size	LruDataCacheP$1$Equal$test, .-LruDataCacheP$1$Equal$test
	.type	LruDataCacheP$1$lookup, @function
LruDataCacheP$1$lookup:
.LFB452:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	BYTE PTR -25[rbp], 0
	jmp	.L1173
.L1176:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -25[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	LruDataCacheP$1$Equal$test
	test	al, al
	jne	.L1178
	movzx	eax, BYTE PTR -25[rbp]
	add	eax, 1
	mov	BYTE PTR -25[rbp], al
.L1173:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -25[rbp], al
	jb	.L1176
	jmp	.L1175
.L1178:
	nop
.L1175:
	movzx	eax, BYTE PTR -25[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE452:
	.size	LruDataCacheP$1$lookup, .-LruDataCacheP$1$lookup
	.type	LruDataCacheP$1$DataCache$insert, @function
LruDataCacheP$1$DataCache$insert:
.LFB453:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	LruDataCacheP$1$lookup
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	je	.L1180
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	lea	rcx, [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, 16
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	jmp	.L1181
.L1180:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 8
	jne	.L1181
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	add	rax, rdx
	mov	rdi, rax
	call	LruDataCacheP$1$DataCache$evicted
.L1181:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 8
	je	.L1182
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	je	.L1183
.L1182:
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	div	dl
	movzx	eax, ah
	movzx	eax, al
	mov	edi, eax
	call	LruDataCacheP$1$remove
.L1183:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	r12d, BYTE PTR [rax+rdx]
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	add	eax, r12d
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	lea	rcx, [rdx+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, 16
	mov	rsi, rax
	mov	rdi, rcx
	call	memcpy@PLT
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	movzx	r12d, BYTE PTR [rax+rdx]
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rsi, LruDataCacheP$1$count[rip]
	mov	BYTE PTR [rax+rsi], cl
	lea	eax, [r12+rdx]
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	add	rax, rdx
	mov	QWORD PTR -40[rbp], rax
	call	LruDataCacheP$1$printCache
	mov	rax, QWORD PTR -40[rbp]
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE453:
	.size	LruDataCacheP$1$DataCache$insert, .-LruDataCacheP$1$DataCache$insert
	.type	DsrControlP$0$RouteRequestInCache$insert, @function
DsrControlP$0$RouteRequestInCache$insert:
.LFB454:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	LruDataCacheP$1$DataCache$insert
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE454:
	.size	DsrControlP$0$RouteRequestInCache$insert, .-DsrControlP$0$RouteRequestInCache$insert
	.type	DsrControlP$0$RouteRequest$setLength, @function
DsrControlP$0$RouteRequest$setLength:
.LFB455:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	TlvPacketP$0$TlvSinglePacket$setLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE455:
	.size	DsrControlP$0$RouteRequest$setLength, .-DsrControlP$0$RouteRequest$setLength
	.type	DsrControlP$0$AMPacket$isForMe, @function
DsrControlP$0$AMPacket$isForMe:
.LFB456:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$isForMe
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE456:
	.size	DsrControlP$0$AMPacket$isForMe, .-DsrControlP$0$AMPacket$isForMe
	.type	DsrControlP$0$SinglePacketWaitList$next, @function
DsrControlP$0$SinglePacketWaitList$next:
.LFB457:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketWaitList$next
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE457:
	.size	DsrControlP$0$SinglePacketWaitList$next, .-DsrControlP$0$SinglePacketWaitList$next
	.type	DsrControlP$0$SinglePacketWaitList$end, @function
DsrControlP$0$SinglePacketWaitList$end:
.LFB458:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketWaitList$end
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE458:
	.size	DsrControlP$0$SinglePacketWaitList$end, .-DsrControlP$0$SinglePacketWaitList$end
	.type	DsrControlP$0$SinglePacketEngine$waitList, @function
DsrControlP$0$SinglePacketEngine$waitList:
.LFB459:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 4
	call	PacketEngineP$PacketEngine$waitList
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE459:
	.size	DsrControlP$0$SinglePacketEngine$waitList, .-DsrControlP$0$SinglePacketEngine$waitList
	.type	DsrControlP$0$findSinglePktTo, @function
DsrControlP$0$findSinglePktTo:
.LFB460:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	call	DsrControlP$0$SinglePacketEngine$waitList
	mov	BYTE PTR -1[rbp], al
	jmp	.L1198
.L1201:
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$packet
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	cmp	WORD PTR -20[rbp], ax
	jne	.L1199
	movzx	eax, BYTE PTR -1[rbp]
	jmp	.L1200
.L1199:
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketWaitList$next
	mov	BYTE PTR -1[rbp], al
.L1198:
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketWaitList$end
	test	al, al
	je	.L1201
	movzx	eax, BYTE PTR -1[rbp]
.L1200:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE460:
	.size	DsrControlP$0$findSinglePktTo, .-DsrControlP$0$findSinglePktTo
	.type	DsrControlP$0$SinglePacketEngine$upperSendDone, @function
DsrControlP$0$SinglePacketEngine$upperSendDone:
.LFB461:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$upperSendDone
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE461:
	.size	DsrControlP$0$SinglePacketEngine$upperSendDone, .-DsrControlP$0$SinglePacketEngine$upperSendDone
	.type	DsrControlP$0$SinglePacketEngine$drop, @function
DsrControlP$0$SinglePacketEngine$drop:
.LFB462:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$drop
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE462:
	.size	DsrControlP$0$SinglePacketEngine$drop, .-DsrControlP$0$SinglePacketEngine$drop
	.type	DsrControlP$0$SourceRoute$remove, @function
DsrControlP$0$SourceRoute$remove:
.LFB463:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 96
	call	TlvPacketP$0$TlvSinglePacket$remove
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE463:
	.size	DsrControlP$0$SourceRoute$remove, .-DsrControlP$0$SourceRoute$remove
	.type	DsrControlP$0$DsrPacketEngine$receive, @function
DsrControlP$0$DsrPacketEngine$receive:
.LFB464:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$receive
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE464:
	.size	DsrControlP$0$DsrPacketEngine$receive, .-DsrControlP$0$DsrPacketEngine$receive
	.section	.rodata
	.align 8
.LC149:
	.string	"SP: No snoop connected for upper id %hhu!\n"
	.text
	.type	SinglePacketP$Snoop$default$receive, @function
SinglePacketP$Snoop$default$receive:
.LFB465:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC149[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 403
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE465:
	.size	SinglePacketP$Snoop$default$receive, .-SinglePacketP$Snoop$default$receive
	.type	SinglePacketP$Snoop$receive, @function
SinglePacketP$Snoop$receive:
.LFB466:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	edi, eax
	call	SinglePacketP$Snoop$default$receive
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE466:
	.size	SinglePacketP$Snoop$receive, .-SinglePacketP$Snoop$receive
	.section	.rodata
	.align 8
.LC150:
	.string	"Received Data: %s Payload Length: %hhu\n"
	.text
	.type	TestDsrP$Receive$receive, @function
TestDsrP$Receive$receive:
.LFB467:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	BYTE PTR -20[rbp], al
	movzx	edx, BYTE PTR -20[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	r8d, edx
	mov	rcx, rax
	lea	rdx, .LC150[rip]
	lea	rsi, .LC87[rip]
	mov	edi, 112
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE467:
	.size	TestDsrP$Receive$receive, .-TestDsrP$Receive$receive
	.section	.rodata
	.align 8
.LC151:
	.string	"SP: No receive connected for upper id %hhu!\n"
	.text
	.type	SinglePacketP$Receive$default$receive, @function
SinglePacketP$Receive$default$receive:
.LFB468:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC151[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 402
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE468:
	.size	SinglePacketP$Receive$default$receive, .-SinglePacketP$Receive$default$receive
	.type	SinglePacketP$Receive$receive, @function
SinglePacketP$Receive$receive:
.LFB469:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 23
	jne	.L1219
	movzx	edx, BYTE PTR -24[rbp]
	mov	rcx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	TestDsrP$Receive$receive
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1220
.L1219:
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	edi, eax
	call	SinglePacketP$Receive$default$receive
	mov	QWORD PTR -8[rbp], rax
	nop
.L1220:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE469:
	.size	SinglePacketP$Receive$receive, .-SinglePacketP$Receive$receive
	.section	.rodata
	.align 8
.LC152:
	.string	"SP: Received pkt from %u to %u\n"
	.align 8
.LC153:
	.string	"SP: Snooped pkt from %u to %u\n"
	.text
	.type	SinglePacketP$SubReceive$receive, @function
SinglePacketP$SubReceive$receive:
.LFB470:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$Packet$payloadLength
	mov	BYTE PTR -24[rbp], al
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$isForMe
	test	al, al
	je	.L1223
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$destination
	movzx	ebx, ax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$source
	movzx	eax, ax
	mov	r8d, ebx
	mov	ecx, eax
	lea	rdx, .LC152[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 404
	mov	eax, 0
	call	sim_log_debug
	movzx	ebx, BYTE PTR -24[rbp]
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$Packet$getPayload
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	ecx, ebx
	mov	edi, eax
	call	SinglePacketP$Receive$receive
	jmp	.L1224
.L1223:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$destination
	movzx	ebx, ax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$source
	movzx	eax, ax
	mov	r8d, ebx
	mov	ecx, eax
	lea	rdx, .LC153[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 405
	mov	eax, 0
	call	sim_log_debug
	movzx	ebx, BYTE PTR -24[rbp]
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$Packet$getPayload
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	ecx, ebx
	mov	edi, eax
	call	SinglePacketP$Snoop$receive
.L1224:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE470:
	.size	SinglePacketP$SubReceive$receive, .-SinglePacketP$SubReceive$receive
	.section	.rodata
	.align 8
.LC154:
	.string	"PE: Trying to use invalid upper AM type %hhu!\n"
	.text
	.type	PacketEngineP$Receive$default$receive, @function
PacketEngineP$Receive$default$receive:
.LFB471:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC154[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 122
	mov	eax, 0
	call	sim_log_error
	mov	rax, QWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE471:
	.size	PacketEngineP$Receive$default$receive, .-PacketEngineP$Receive$default$receive
	.type	PacketEngineP$Receive$receive, @function
PacketEngineP$Receive$receive:
.LFB472:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 23
	jne	.L1228
	movzx	ecx, BYTE PTR -24[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 23
	call	SinglePacketP$SubReceive$receive
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1229
.L1228:
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rsi, QWORD PTR -32[rbp]
	mov	edi, eax
	call	PacketEngineP$Receive$default$receive
	mov	QWORD PTR -8[rbp], rax
	nop
.L1229:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE472:
	.size	PacketEngineP$Receive$receive, .-PacketEngineP$Receive$receive
	.type	PacketEngineP$SendBackoff$fired, @function
PacketEngineP$SendBackoff$fired:
.LFB473:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	PacketEngineP$SendState$toIdle
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L1233
	call	PacketEngineP$msgAction$postTask
.L1233:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE473:
	.size	PacketEngineP$SendBackoff$fired, .-PacketEngineP$SendBackoff$fired
	.type	DataTimerP$0$DataTimer$expired, @function
DataTimerP$0$DataTimer$expired:
.LFB474:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	DsrControlP$0$RouteRequestOutTimer$expired
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE474:
	.size	DataTimerP$0$DataTimer$expired, .-DataTimerP$0$DataTimer$expired
	.section	.rodata
.LC155:
	.string	"DT: Timer expired!\n"
	.text
	.type	DataTimerP$0$Timer$fired, @function
DataTimerP$0$Timer$fired:
.LFB475:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	DataTimerP$0$adjustTimer
	jmp	.L1236
.L1238:
	call	sim_node
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$data[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movzx	eax, ax
	mov	edi, eax
	call	DataTimerP$0$DataTimer$expired
	lea	rdx, .LC155[rip]
	lea	rsi, .LC137[rip]
	mov	edi, 391
	mov	eax, 0
	call	sim_log_debug
	mov	edi, 0
	call	DataTimerP$0$removeTimer
.L1236:
	call	sim_node
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$delay[rip]
	movzx	eax, WORD PTR [rdx+rax]
	test	ax, ax
	jne	.L1237
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1238
.L1237:
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L1240
	call	DataTimerP$0$startTimer
.L1240:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE475:
	.size	DataTimerP$0$Timer$fired, .-DataTimerP$0$Timer$fired
	.type	TestDsrP$AMPacket$address, @function
TestDsrP$AMPacket$address:
.LFB476:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	TossimActiveMessageC$AMPacket$address
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE476:
	.size	TestDsrP$AMPacket$address, .-TestDsrP$AMPacket$address
	.type	TestDsrP$Send$send, @function
TestDsrP$Send$send:
.LFB477:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	WORD PTR -20[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, WORD PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	esi, eax
	mov	edi, 0
	call	SinglePacketP$Send$send
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE477:
	.size	TestDsrP$Send$send, .-TestDsrP$Send$send
	.type	PacketEngineP$Send$getPayload, @function
PacketEngineP$Send$getPayload:
.LFB478:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -4[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$setIds
	movzx	edx, BYTE PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$getPayload
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE478:
	.size	PacketEngineP$Send$getPayload, .-PacketEngineP$Send$getPayload
	.type	SinglePacketP$SubSend$default$getPayload, @function
SinglePacketP$SubSend$default$getPayload:
.LFB479:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC88[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 401
	mov	eax, 0
	call	sim_log_error
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE479:
	.size	SinglePacketP$SubSend$default$getPayload, .-SinglePacketP$SubSend$default$getPayload
	.type	SinglePacketP$SubSend$getPayload, @function
SinglePacketP$SubSend$getPayload:
.LFB480:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	test	eax, eax
	je	.L1250
	cmp	eax, 1
	je	.L1251
	jmp	.L1255
.L1250:
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 0
	call	PacketEngineP$Send$getPayload
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1253
.L1251:
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	PacketEngineP$Send$getPayload
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1253
.L1255:
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	SinglePacketP$SubSend$default$getPayload
	mov	QWORD PTR -8[rbp], rax
	nop
.L1253:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE480:
	.size	SinglePacketP$SubSend$getPayload, .-SinglePacketP$SubSend$getPayload
	.type	SinglePacketP$Send$getPayload, @function
SinglePacketP$Send$getPayload:
.LFB481:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	add	eax, 4
	movzx	edx, al
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	SinglePacketP$SubSend$getPayload
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L1257
	add	QWORD PTR -8[rbp], 4
.L1257:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE481:
	.size	SinglePacketP$Send$getPayload, .-SinglePacketP$Send$getPayload
	.type	TestDsrP$Send$getPayload, @function
TestDsrP$Send$getPayload:
.LFB482:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	mov	edi, 0
	call	SinglePacketP$Send$getPayload
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE482:
	.size	TestDsrP$Send$getPayload, .-TestDsrP$Send$getPayload
	.section	.rodata
.LC156:
	.string	"Pkt %u"
	.align 8
.LC157:
	.string	"Sending Data: %s Payload Length: %hhu\n"
	.text
	.type	TestDsrP$Timer$fired, @function
TestDsrP$Timer$fired:
.LFB483:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 104
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	lea	rax, -96[rbp]
	mov	QWORD PTR -104[rbp], rax
	call	sim_node
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$pktNum[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movzx	edx, ax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	mov	ebx, eax
	call	TestDsrP$AMPacket$address
	movzx	eax, ax
	lea	edx, [rbx+rax]
	lea	rax, -34[rbp]
	lea	rsi, .LC156[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	mov	rax, QWORD PTR -104[rbp]
	mov	esi, 10
	mov	rdi, rax
	call	TestDsrP$Send$getPayload
	mov	rdx, rax
	lea	rax, -34[rbp]
	mov	rsi, rax
	mov	rdi, rdx
	call	strcpy@PLT
	lea	rax, -34[rbp]
	mov	rdi, rax
	call	strlen@PLT
	lea	edx, 1[rax]
	lea	rax, -34[rbp]
	mov	r8d, edx
	mov	rcx, rax
	lea	rdx, .LC157[rip]
	lea	rsi, .LC87[rip]
	mov	edi, 110
	mov	eax, 0
	call	sim_log_debug
	lea	rax, -34[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	eax, 1
	movzx	ebx, al
	call	sim_node
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$dest[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movzx	eax, ax
	mov	rcx, QWORD PTR -104[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	TestDsrP$Send$send
	call	sim_node
	lea	rdx, [rax+rax]
	lea	rcx, TestDsrP$pktNum[rip]
	movzx	edx, WORD PTR [rdx+rcx]
	lea	esi, 1[rdx]
	lea	rdx, [rax+rax]
	lea	rcx, TestDsrP$pktNum[rip]
	mov	WORD PTR [rdx+rcx], si
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$pktNum[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movzx	ebx, ax
	call	sim_node
	lea	rdx, 0[0+rax*4]
	lea	rax, TestDsrP$numPkts[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cmp	ebx, eax
	jge	.L1262
	mov	edi, 30720
	call	TestDsrP$Timer$startOneShot
	jmp	.L1265
.L1262:
	call	TestDsrP$AMPacket$address
	test	ax, ax
	jne	.L1265
	call	cleanup@PLT
.L1265:
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1264
	call	__stack_chk_fail@PLT
.L1264:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE483:
	.size	TestDsrP$Timer$fired, .-TestDsrP$Timer$fired
	.type	VirtualizeTimerC$0$Timer$default$fired, @function
VirtualizeTimerC$0$Timer$default$fired:
.LFB484:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE484:
	.size	VirtualizeTimerC$0$Timer$default$fired, .-VirtualizeTimerC$0$Timer$default$fired
	.type	VirtualizeTimerC$0$Timer$fired, @function
VirtualizeTimerC$0$Timer$fired:
.LFB485:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	cmp	eax, 2
	je	.L1268
	cmp	eax, 2
	jg	.L1269
	test	eax, eax
	je	.L1270
	cmp	eax, 1
	je	.L1271
	jmp	.L1269
.L1270:
	call	PacketEngineP$SendBackoff$fired
	jmp	.L1272
.L1271:
	call	DataTimerP$0$Timer$fired
	jmp	.L1272
.L1268:
	call	TestDsrP$Timer$fired
	jmp	.L1272
.L1269:
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	VirtualizeTimerC$0$Timer$default$fired
	nop
.L1272:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE485:
	.size	VirtualizeTimerC$0$Timer$fired, .-VirtualizeTimerC$0$Timer$fired
	.type	Atm128AlarmAsyncP$0$Compare$set, @function
Atm128AlarmAsyncP$0$Compare$set:
.LFB486:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	HplAtm128Timer0AsyncP$Compare$set
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE486:
	.size	Atm128AlarmAsyncP$0$Compare$set, .-Atm128AlarmAsyncP$0$Compare$set
	.type	Atm128AlarmAsyncP$0$Timer$get, @function
Atm128AlarmAsyncP$0$Timer$get:
.LFB487:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	HplAtm128Timer0AsyncP$Timer0$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE487:
	.size	Atm128AlarmAsyncP$0$Timer$get, .-Atm128AlarmAsyncP$0$Timer$get
	.type	HplAtm128Timer0AsyncP$TimerAsync$compareBusy, @function
HplAtm128Timer0AsyncP$TimerAsync$compareBusy:
.LFB488:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 48[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	and	eax, 2
	test	eax, eax
	setne	al
	movzx	eax, al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE488:
	.size	HplAtm128Timer0AsyncP$TimerAsync$compareBusy, .-HplAtm128Timer0AsyncP$TimerAsync$compareBusy
	.type	Atm128AlarmAsyncP$0$TimerAsync$compareBusy, @function
Atm128AlarmAsyncP$0$TimerAsync$compareBusy:
.LFB489:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	HplAtm128Timer0AsyncP$TimerAsync$compareBusy
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE489:
	.size	Atm128AlarmAsyncP$0$TimerAsync$compareBusy, .-Atm128AlarmAsyncP$0$TimerAsync$compareBusy
	.type	Atm128AlarmAsyncP$0$setOcr0, @function
Atm128AlarmAsyncP$0$setOcr0:
.LFB490:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	nop
.L1281:
	call	Atm128AlarmAsyncP$0$TimerAsync$compareBusy
	test	eax, eax
	jne	.L1281
	call	Atm128AlarmAsyncP$0$Timer$get
	cmp	BYTE PTR -20[rbp], al
	jne	.L1282
	movzx	eax, BYTE PTR -20[rbp]
	add	eax, 1
	mov	BYTE PTR -20[rbp], al
.L1282:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	movzx	eax, BYTE PTR -20[rbp]
	add	rax, rdx
	lea	rbx, 1[rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	rbx, rax
	jnb	.L1283
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rax, QWORD PTR [rdx+rax]
	not	eax
	mov	BYTE PTR -20[rbp], al
.L1283:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	Atm128AlarmAsyncP$0$Compare$set
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE490:
	.size	Atm128AlarmAsyncP$0$setOcr0, .-Atm128AlarmAsyncP$0$setOcr0
	.section	.rodata
.LC158:
	.string	"Cancelling compare at 0x%p\n"
.LC159:
	.string	"HplAtm128CompareC"
	.text
	.type	HplAtm128Timer0AsyncP$cancel_compare, @function
HplAtm128Timer0AsyncP$cancel_compare:
.LFB491:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rcx, rax
	lea	rdx, .LC158[rip]
	lea	rsi, .LC159[rip]
	mov	edi, 211
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L1286
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	BYTE PTR 17[rax], 1
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rdx, sim_queue_cleanup_total[rip]
	mov	QWORD PTR 40[rax], rdx
.L1286:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE491:
	.size	HplAtm128Timer0AsyncP$cancel_compare, .-HplAtm128Timer0AsyncP$cancel_compare
	.type	HplAtm128Timer0AsyncP$notify_changed, @function
HplAtm128Timer0AsyncP$notify_changed:
.LFB492:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	HplAtm128Timer0AsyncP$Timer0$getScale
	mov	BYTE PTR -17[rbp], al
	cmp	BYTE PTR -17[rbp], 0
	je	.L1288
	call	sim_node
	lea	rdx, HplAtm128Timer0AsyncP$oldScale[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1288
	call	sim_node
	mov	rbx, rax
	call	sim_time
	lea	rcx, 0[0+rbx*8]
	lea	rdx, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	QWORD PTR [rcx+rdx], rax
.L1288:
	call	sim_node
	lea	rcx, HplAtm128Timer0AsyncP$oldScale[rip]
	movzx	edx, BYTE PTR -17[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	HplAtm128Timer0AsyncP$schedule_new_compare
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE492:
	.size	HplAtm128Timer0AsyncP$notify_changed, .-HplAtm128Timer0AsyncP$notify_changed
	.section	.rodata
.LC160:
	.string	"Cancelling overflow %p.\n"
.LC161:
	.string	"HplAtm128Timer0AsyncP"
	.text
	.type	HplAtm128Timer0AsyncP$cancel_overflow, @function
HplAtm128Timer0AsyncP$cancel_overflow:
.LFB493:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L1291
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	BYTE PTR 17[rax], 1
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rcx, rax
	lea	rdx, .LC160[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 210
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rdx, sim_queue_cleanup_total[rip]
	mov	QWORD PTR 40[rax], rdx
.L1291:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE493:
	.size	HplAtm128Timer0AsyncP$cancel_overflow, .-HplAtm128Timer0AsyncP$cancel_overflow
	.section	.rodata
.LC162:
	.string	"Overflow interrupt at %s\n"
.LC163:
	.string	"Setting overflow bit at %s\n"
	.text
	.type	HplAtm128Timer0AsyncP$timer0_overflow_handle, @function
HplAtm128Timer0AsyncP$timer0_overflow_handle:
.LFB494:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR 17[rax]
	test	al, al
	jne	.L1297
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+55]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	and	eax, 1
	test	eax, eax
	je	.L1295
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+54]
	movzx	eax, BYTE PTR [rcx+rax]
	and	eax, -2
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+54]
	mov	BYTE PTR [rdx+rax], cl
	call	sim_time_string
	mov	rcx, rax
	lea	rdx, .LC162[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 207
	mov	eax, 0
	call	sim_log_debug
	call	INTERRUPT_16
	jmp	.L1296
.L1295:
	call	sim_time_string
	mov	rcx, rax
	lea	rdx, .LC163[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 208
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+54]
	movzx	eax, BYTE PTR [rcx+rax]
	or	eax, 1
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+54]
	mov	BYTE PTR [rdx+rax], cl
.L1296:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$configure_overflow
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	jmp	.L1292
.L1297:
	nop
.L1292:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE494:
	.size	HplAtm128Timer0AsyncP$timer0_overflow_handle, .-HplAtm128Timer0AsyncP$timer0_overflow_handle
	.type	HplAtm128Timer0AsyncP$allocate_overflow, @function
HplAtm128Timer0AsyncP$allocate_overflow:
.LFB495:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_queue_allocate_event
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, HplAtm128Timer0AsyncP$timer0_overflow_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, sim_queue_cleanup_none[rip]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE495:
	.size	HplAtm128Timer0AsyncP$allocate_overflow, .-HplAtm128Timer0AsyncP$allocate_overflow
	.type	HplAtm128Timer0AsyncP$schedule_new_overflow, @function
HplAtm128Timer0AsyncP$schedule_new_overflow:
.LFB496:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	HplAtm128Timer0AsyncP$allocate_overflow
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$configure_overflow
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L1301
	call	HplAtm128Timer0AsyncP$cancel_overflow
.L1301:
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, HplAtm128Timer0AsyncP$overflow[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE496:
	.size	HplAtm128Timer0AsyncP$schedule_new_overflow, .-HplAtm128Timer0AsyncP$schedule_new_overflow
	.type	HplAtm128Timer0AsyncP$clock_to_sim, @function
HplAtm128Timer0AsyncP$clock_to_sim:
.LFB497:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	sim_ticks_per_sec
	mov	rdx, QWORD PTR -8[rbp]
	imul	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	call	HplAtm128Timer0AsyncP$notify_clockTicksPerSec
	mov	rcx, rax
	mov	rax, QWORD PTR -8[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE497:
	.size	HplAtm128Timer0AsyncP$clock_to_sim, .-HplAtm128Timer0AsyncP$clock_to_sim
	.section	.rodata
	.align 8
.LC164:
	.string	"HplAtm128Timer0AsyncP: Setting timer: %hhu\n"
	.text
	.type	HplAtm128Timer0AsyncP$Timer0$set, @function
HplAtm128Timer0AsyncP$Timer0$set:
.LFB498:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	call	HplAtm128Timer0AsyncP$Timer0$get
	mov	BYTE PTR -9[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC164[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 200
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -20[rbp]
	cmp	al, BYTE PTR -9[rbp]
	je	.L1309
	movzx	eax, BYTE PTR -9[rbp]
	movzx	edx, BYTE PTR -20[rbp]
	sub	eax, edx
	cdqe
	mov	QWORD PTR -8[rbp], rax
	call	HplAtm128Timer0AsyncP$shiftFromScale
	movzx	eax, ax
	mov	ecx, eax
	sal	QWORD PTR -8[rbp], cl
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$clock_to_sim
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, BYTE PTR -20[rbp]
	cmp	al, BYTE PTR -9[rbp]
	jnb	.L1307
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rcx, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	rcx, QWORD PTR [rdx+rcx]
	mov	rdx, QWORD PTR -8[rbp]
	add	rcx, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	QWORD PTR [rdx+rax], rcx
	jmp	.L1308
.L1307:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rcx, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	rdx, QWORD PTR [rdx+rcx]
	sub	rdx, QWORD PTR -8[rbp]
	lea	rcx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	QWORD PTR [rcx+rax], rdx
.L1308:
	call	HplAtm128Timer0AsyncP$schedule_new_overflow
	call	HplAtm128Timer0AsyncP$notify_changed
	jmp	.L1304
.L1309:
	nop
.L1304:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE498:
	.size	HplAtm128Timer0AsyncP$Timer0$set, .-HplAtm128Timer0AsyncP$Timer0$set
	.section	.rodata
.LC165:
	.string	"Beginning compare 0x%p at %s\n"
	.align 8
.LC166:
	.string	"Handling compare at 0x%p @ %s\n"
.LC167:
	.string	"%s: CTC is set, clear timer.\n"
.LC168:
	.string	"%s: TCCR is 0x%hhx, %i, %i\n"
.LC169:
	.string	"TIFR is %hhx\n"
.LC170:
	.string	"Compare interrupt @ %s\n"
	.text
	.type	HplAtm128Timer0AsyncP$timer0_compare_handle, @function
HplAtm128Timer0AsyncP$timer0_compare_handle:
.LFB499:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 160
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -168[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	call	sim_time_string
	mov	rdx, rax
	mov	rax, QWORD PTR -168[rbp]
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC165[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 190
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -168[rbp]
	movzx	eax, BYTE PTR 17[rax]
	test	al, al
	jne	.L1319
	lea	rax, -160[rbp]
	mov	esi, 128
	mov	rdi, rax
	call	sim_print_now
	call	sim_time_string
	mov	rdx, rax
	mov	rax, QWORD PTR -168[rbp]
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC166[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 191
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+51]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	and	eax, 8
	test	eax, eax
	je	.L1313
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+51]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	and	eax, 64
	test	eax, eax
	jne	.L1313
	lea	rcx, __FUNCTION__.1[rip]
	lea	rdx, .LC167[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 192
	mov	eax, 0
	call	sim_log_debug
	mov	edi, 0
	call	HplAtm128Timer0AsyncP$Timer0$set
	jmp	.L1314
.L1313:
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+51]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	and	eax, 64
	test	eax, eax
	setne	al
	movzx	ebx, al
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+51]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	and	eax, 8
	test	eax, eax
	setne	al
	movzx	r12d, al
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 51[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	sub	rsp, 8
	push	rbx
	mov	r9d, r12d
	mov	r8d, eax
	lea	rcx, __FUNCTION__.1[rip]
	lea	rdx, .LC168[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 193
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
.L1314:
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+55]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	and	eax, 2
	test	eax, eax
	je	.L1315
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 54[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC169[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 194
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+54]
	movzx	eax, BYTE PTR [rcx+rax]
	and	eax, -3
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+54]
	mov	BYTE PTR [rdx+rax], cl
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 54[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC169[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 195
	mov	eax, 0
	call	sim_log_debug
	lea	rax, -160[rbp]
	mov	rcx, rax
	lea	rdx, .LC170[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 196
	mov	eax, 0
	call	sim_log_debug
	call	INTERRUPT_15
	jmp	.L1316
.L1315:
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+54]
	movzx	eax, BYTE PTR [rcx+rax]
	or	eax, 2
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+54]
	mov	BYTE PTR [rdx+rax], cl
.L1316:
	mov	rax, QWORD PTR -168[rbp]
	movzx	eax, BYTE PTR 17[rax]
	test	al, al
	jne	.L1310
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$configure_compare
	mov	rax, QWORD PTR -168[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	jmp	.L1310
.L1319:
	nop
.L1310:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1318
	call	__stack_chk_fail@PLT
.L1318:
	lea	rsp, -16[rbp]
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE499:
	.size	HplAtm128Timer0AsyncP$timer0_compare_handle, .-HplAtm128Timer0AsyncP$timer0_compare_handle
	.section	.rodata
.LC171:
	.string	"Allocated compare at 0x%p\n"
	.text
	.type	HplAtm128Timer0AsyncP$allocate_compare, @function
HplAtm128Timer0AsyncP$allocate_compare:
.LFB500:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_queue_allocate_event
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, rax
	lea	rdx, .LC171[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 197
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, HplAtm128Timer0AsyncP$timer0_compare_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, sim_queue_cleanup_none[rip]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE500:
	.size	HplAtm128Timer0AsyncP$allocate_compare, .-HplAtm128Timer0AsyncP$allocate_compare
	.type	Atm128AlarmAsyncP$0$Timer$overflow, @function
Atm128AlarmAsyncP$0$Timer$overflow:
.LFB501:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE501:
	.size	Atm128AlarmAsyncP$0$Timer$overflow, .-Atm128AlarmAsyncP$0$Timer$overflow
	.type	HplAtm128Timer0AsyncP$Timer0$overflow, @function
HplAtm128Timer0AsyncP$Timer0$overflow:
.LFB502:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	Atm128AlarmAsyncP$0$Timer$overflow
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE502:
	.size	HplAtm128Timer0AsyncP$Timer0$overflow, .-HplAtm128Timer0AsyncP$Timer0$overflow
	.type	CounterToLocalTimeC$0$Counter$overflow, @function
CounterToLocalTimeC$0$Counter$overflow:
.LFB503:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE503:
	.size	CounterToLocalTimeC$0$Counter$overflow, .-CounterToLocalTimeC$0$Counter$overflow
	.type	Atm128AlarmAsyncP$0$Counter$overflow, @function
Atm128AlarmAsyncP$0$Counter$overflow:
.LFB504:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	CounterToLocalTimeC$0$Counter$overflow
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE504:
	.size	Atm128AlarmAsyncP$0$Counter$overflow, .-Atm128AlarmAsyncP$0$Counter$overflow
	.type	__nesc_enable_interrupt, @function
__nesc_enable_interrupt:
.LFB505:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 63[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	movzx	eax, dl
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 5
	add	rcx, rax
	lea	rax, atm128RegFile[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	movzx	eax, dl
	mov	edx, ecx
	or	edx, -128
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 5
	add	rcx, rax
	lea	rax, atm128RegFile[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE505:
	.size	__nesc_enable_interrupt, .-__nesc_enable_interrupt
	.type	Atm128AlarmAsyncP$0$Compare$get, @function
Atm128AlarmAsyncP$0$Compare$get:
.LFB506:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	HplAtm128Timer0AsyncP$Compare$get
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE506:
	.size	Atm128AlarmAsyncP$0$Compare$get, .-Atm128AlarmAsyncP$0$Compare$get
	.type	Atm128AlarmAsyncP$0$Compare$fired, @function
Atm128AlarmAsyncP$0$Compare$fired:
.LFB507:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	Atm128AlarmAsyncP$0$Compare$get
	movzx	eax, al
	lea	ebx, 1[rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rcx, Atm128AlarmAsyncP$0$base[rip]
	mov	rdx, QWORD PTR [rdx+rcx]
	mov	ecx, ebx
	add	rcx, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	QWORD PTR [rdx+rax], rcx
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	sete	al
	movzx	eax, al
	mov	DWORD PTR -20[rbp], eax
	call	__nesc_enable_interrupt
	call	Atm128AlarmAsyncP$0$setInterrupt
	cmp	DWORD PTR -20[rbp], 0
	je	.L1331
	call	Atm128AlarmAsyncP$0$Counter$overflow
.L1331:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE507:
	.size	Atm128AlarmAsyncP$0$Compare$fired, .-Atm128AlarmAsyncP$0$Compare$fired
	.type	HplAtm128Timer0AsyncP$Compare$fired, @function
HplAtm128Timer0AsyncP$Compare$fired:
.LFB508:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	Atm128AlarmAsyncP$0$Compare$fired
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE508:
	.size	HplAtm128Timer0AsyncP$Compare$fired, .-HplAtm128Timer0AsyncP$Compare$fired
	.type	AlarmToTimerC$0$fired$postTask, @function
AlarmToTimerC$0$fired$postTask:
.LFB509:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 2
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE509:
	.size	AlarmToTimerC$0$fired$postTask, .-AlarmToTimerC$0$fired$postTask
	.type	AlarmToTimerC$0$Alarm$fired, @function
AlarmToTimerC$0$Alarm$fired:
.LFB510:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	AlarmToTimerC$0$fired$postTask
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE510:
	.size	AlarmToTimerC$0$Alarm$fired, .-AlarmToTimerC$0$Alarm$fired
	.type	Atm128AlarmAsyncP$0$Alarm$fired, @function
Atm128AlarmAsyncP$0$Alarm$fired:
.LFB511:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	AlarmToTimerC$0$Alarm$fired
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE511:
	.size	Atm128AlarmAsyncP$0$Alarm$fired, .-Atm128AlarmAsyncP$0$Alarm$fired
	.type	AMQueueImplP$0$Packet$setPayloadLength, @function
AMQueueImplP$0$Packet$setPayloadLength:
.LFB512:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE512:
	.size	AMQueueImplP$0$Packet$setPayloadLength, .-AMQueueImplP$0$Packet$setPayloadLength
	.type	BitVectorC$2$BitVector$set, @function
BitVectorC$2$BitVector$set:
.LFB513:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$2$getMask
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$2$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$2$m_bits[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	mov	esi, r12d
	movzx	eax, dx
	mov	edx, ecx
	or	edx, esi
	movsx	rcx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$2$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE513:
	.size	BitVectorC$2$BitVector$set, .-BitVectorC$2$BitVector$set
	.type	SimpleLinkCacheP$Track$set, @function
SimpleLinkCacheP$Track$set:
.LFB514:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	BitVectorC$2$BitVector$set
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE514:
	.size	SimpleLinkCacheP$Track$set, .-SimpleLinkCacheP$Track$set
	.type	DsrControlP$0$SinglePacketEngine$receive, @function
DsrControlP$0$SinglePacketEngine$receive:
.LFB515:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$receive
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE515:
	.size	DsrControlP$0$SinglePacketEngine$receive, .-DsrControlP$0$SinglePacketEngine$receive
	.type	PlatformP$power_init, @function
PlatformP$power_init:
.LFB516:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 53[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 32
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE516:
	.size	PlatformP$power_init, .-PlatformP$power_init
	.type	MotePlatformP$SubInit$default$init, @function
MotePlatformP$SubInit$default$init:
.LFB517:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE517:
	.size	MotePlatformP$SubInit$default$init, .-MotePlatformP$SubInit$default$init
	.type	MotePlatformP$SubInit$init, @function
MotePlatformP$SubInit$init:
.LFB518:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	MotePlatformP$SubInit$default$init
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE518:
	.size	MotePlatformP$SubInit$init, .-MotePlatformP$SubInit$init
	.type	HplAtm128GeneralIOPinP$4$IO$clr, @function
HplAtm128GeneralIOPinP$4$IO$clr:
.LFB519:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+27]
	movzx	eax, BYTE PTR [rcx+rax]
	and	eax, -17
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+27]
	mov	BYTE PTR [rdx+rax], cl
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE519:
	.size	HplAtm128GeneralIOPinP$4$IO$clr, .-HplAtm128GeneralIOPinP$4$IO$clr
	.type	MotePlatformP$SerialIdPin$clr, @function
MotePlatformP$SerialIdPin$clr:
.LFB520:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	HplAtm128GeneralIOPinP$4$IO$clr
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE520:
	.size	MotePlatformP$SerialIdPin$clr, .-MotePlatformP$SerialIdPin$clr
	.type	HplAtm128GeneralIOPinP$4$IO$makeInput, @function
HplAtm128GeneralIOPinP$4$IO$makeInput:
.LFB521:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+26]
	movzx	eax, BYTE PTR [rcx+rax]
	and	eax, -17
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+26]
	mov	BYTE PTR [rdx+rax], cl
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE521:
	.size	HplAtm128GeneralIOPinP$4$IO$makeInput, .-HplAtm128GeneralIOPinP$4$IO$makeInput
	.type	MotePlatformP$SerialIdPin$makeInput, @function
MotePlatformP$SerialIdPin$makeInput:
.LFB522:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	HplAtm128GeneralIOPinP$4$IO$makeInput
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE522:
	.size	MotePlatformP$SerialIdPin$makeInput, .-MotePlatformP$SerialIdPin$makeInput
	.type	MotePlatformP$PlatformInit$init, @function
MotePlatformP$PlatformInit$init:
.LFB523:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 21[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 20[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], -1
	call	MotePlatformP$SerialIdPin$makeInput
	call	MotePlatformP$SerialIdPin$clr
	call	MotePlatformP$SubInit$init
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE523:
	.size	MotePlatformP$PlatformInit$init, .-MotePlatformP$PlatformInit$init
	.type	PlatformP$MoteInit$init, @function
PlatformP$MoteInit$init:
.LFB524:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	MotePlatformP$PlatformInit$init
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE524:
	.size	PlatformP$MoteInit$init, .-PlatformP$MoteInit$init
	.type	MeasureClockC$Init$init, @function
MeasureClockC$Init$init:
.LFB525:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE525:
	.size	MeasureClockC$Init$init, .-MeasureClockC$Init$init
	.type	PlatformP$MeasureClock$init, @function
PlatformP$MeasureClock$init:
.LFB526:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	MeasureClockC$Init$init
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE526:
	.size	PlatformP$MeasureClock$init, .-PlatformP$MeasureClock$init
	.type	PlatformP$Init$init, @function
PlatformP$Init$init:
.LFB527:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PlatformP$MeasureClock$init
	mov	BYTE PTR -1[rbp], al
	call	PlatformP$MoteInit$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	cmp	BYTE PTR -1[rbp], 0
	je	.L1360
	movzx	eax, BYTE PTR -1[rbp]
	jmp	.L1361
.L1360:
	call	PlatformP$power_init
	mov	eax, 0
.L1361:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE527:
	.size	PlatformP$Init$init, .-PlatformP$Init$init
	.type	SimMainP$PlatformInit$init, @function
SimMainP$PlatformInit$init:
.LFB528:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	PlatformP$Init$init
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE528:
	.size	SimMainP$PlatformInit$init, .-SimMainP$PlatformInit$init
	.type	SimMainP$Scheduler$runNextTask, @function
SimMainP$Scheduler$runNextTask:
.LFB529:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	SimSchedulerBasicP$Scheduler$runNextTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE529:
	.size	SimMainP$Scheduler$runNextTask, .-SimMainP$Scheduler$runNextTask
	.type	PacketEngineP$Init$init, @function
PacketEngineP$Init$init:
.LFB530:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1367
.L1368:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, 1
	mov	BYTE PTR [rdx+rax], cl
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1367:
	cmp	BYTE PTR -1[rbp], 39
	jbe	.L1368
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	mov	BYTE PTR [rax+rdx], 40
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	mov	BYTE PTR [rax+rdx], 40
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	mov	BYTE PTR [rax+rdx], 40
	call	sim_node
	lea	rdx, PacketEngineP$running[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE530:
	.size	PacketEngineP$Init$init, .-PacketEngineP$Init$init
	.type	LruDataCacheP$0$Init$init, @function
LruDataCacheP$0$Init$init:
.LFB531:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE531:
	.size	LruDataCacheP$0$Init$init, .-LruDataCacheP$0$Init$init
	.type	PoolP$0$Init$init, @function
PoolP$0$Init$init:
.LFB532:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	DWORD PTR -20[rbp], 0
	jmp	.L1373
.L1374:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rcx, rax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rdx
	imul	rdx, rbx, 980
	add	rdx, rax
	lea	rax, PoolP$0$pool[rip]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, PoolP$0$queue[rip]
	mov	QWORD PTR [rdx+rax], rsi
	add	DWORD PTR -20[rbp], 1
.L1373:
	cmp	DWORD PTR -20[rbp], 19
	jle	.L1374
	call	sim_node
	lea	rdx, PoolP$0$free[rip]
	mov	BYTE PTR [rax+rdx], 20
	call	sim_node
	lea	rdx, PoolP$0$index[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE532:
	.size	PoolP$0$Init$init, .-PoolP$0$Init$init
	.type	PoolP$1$Init$init, @function
PoolP$1$Init$init:
.LFB533:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	DWORD PTR -20[rbp], 0
	jmp	.L1377
.L1378:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rcx, rax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rdx
	imul	rdx, rbx, 980
	add	rdx, rax
	lea	rax, PoolP$1$pool[rip]
	lea	rsi, [rdx+rax]
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rcx
	sal	rax, 2
	add	rax, rcx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, PoolP$1$queue[rip]
	mov	QWORD PTR [rdx+rax], rsi
	add	DWORD PTR -20[rbp], 1
.L1377:
	cmp	DWORD PTR -20[rbp], 19
	jle	.L1378
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	mov	BYTE PTR [rax+rdx], 20
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE533:
	.size	PoolP$1$Init$init, .-PoolP$1$Init$init
	.type	StateImplP$Init$init, @function
StateImplP$Init$init:
.LFB534:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], 0
	jmp	.L1381
.L1382:
	call	sim_node
	mov	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rdx, rax
	lea	rax, StateImplP$state[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	add	DWORD PTR -4[rbp], 1
.L1381:
	cmp	DWORD PTR -4[rbp], 0
	je	.L1382
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE534:
	.size	StateImplP$Init$init, .-StateImplP$Init$init
	.type	RandomMlcgP$Init$init, @function
RandomMlcgP$Init$init:
.LFB535:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	movzx	eax, WORD PTR TOS_NODE_ID[rip]
	movzx	eax, ax
	lea	ebx, 1[rax]
	call	sim_node
	mov	rdx, rax
	movsx	rax, ebx
	lea	rcx, 0[0+rdx*8]
	lea	rdx, RandomMlcgP$seed[rip]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, 0
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE535:
	.size	RandomMlcgP$Init$init, .-RandomMlcgP$Init$init
	.type	HplAtm128Timer0AsyncP$Compare$start, @function
HplAtm128Timer0AsyncP$Compare$start:
.LFB536:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, atm128RegFile[rip+55]
	movzx	eax, BYTE PTR [rcx+rax]
	or	eax, 2
	mov	ecx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+55]
	mov	BYTE PTR [rdx+rax], cl
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE536:
	.size	HplAtm128Timer0AsyncP$Compare$start, .-HplAtm128Timer0AsyncP$Compare$start
	.type	Atm128AlarmAsyncP$0$Compare$start, @function
Atm128AlarmAsyncP$0$Compare$start:
.LFB537:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	HplAtm128Timer0AsyncP$Compare$start
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE537:
	.size	Atm128AlarmAsyncP$0$Compare$start, .-Atm128AlarmAsyncP$0$Compare$start
	.section	.rodata
.LC172:
	.string	"Setting control to be 0x%hhx\n"
	.text
	.type	HplAtm128Timer0AsyncP$Timer0Ctrl$setControl, @function
HplAtm128Timer0AsyncP$Timer0Ctrl$setControl:
.LFB538:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	BYTE PTR -1[rbp], dil
	movzx	eax, BYTE PTR -1[rbp]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC172[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 202
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 51[rax]
	lea	rax, atm128RegFile[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	mov	BYTE PTR [rdx], al
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE538:
	.size	HplAtm128Timer0AsyncP$Timer0Ctrl$setControl, .-HplAtm128Timer0AsyncP$Timer0Ctrl$setControl
	.type	Atm128AlarmAsyncP$0$TimerCtrl$setControl, @function
Atm128AlarmAsyncP$0$TimerCtrl$setControl:
.LFB539:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	BYTE PTR -1[rbp], dil
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	HplAtm128Timer0AsyncP$Timer0Ctrl$setControl
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE539:
	.size	Atm128AlarmAsyncP$0$TimerCtrl$setControl, .-Atm128AlarmAsyncP$0$TimerCtrl$setControl
	.type	HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous, @function
HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous:
.LFB540:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 48[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	edx, BYTE PTR [rax]
	or	edx, 8
	mov	BYTE PTR [rax], dl
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE540:
	.size	HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous, .-HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous
	.type	Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous, @function
Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous:
.LFB541:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE541:
	.size	Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous, .-Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous
	.type	Atm128AlarmAsyncP$0$Init$init, @function
Atm128AlarmAsyncP$0$Init$init:
.LFB542:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous
	mov	BYTE PTR -1[rbp], 0
	movzx	eax, BYTE PTR -1[rbp]
	and	eax, -8
	or	eax, 3
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	or	eax, 8
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	Atm128AlarmAsyncP$0$TimerCtrl$setControl
	mov	edi, 230
	call	Atm128AlarmAsyncP$0$Compare$set
	call	Atm128AlarmAsyncP$0$Compare$start
	call	Atm128AlarmAsyncP$0$setInterrupt
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE542:
	.size	Atm128AlarmAsyncP$0$Init$init, .-Atm128AlarmAsyncP$0$Init$init
	.section	.rodata
	.align 8
.LC173:
	.string	"TossimPacketModelC: Init.init() called\n"
	.text
	.type	TossimPacketModelC$Init$init, @function
TossimPacketModelC$Init$init:
.LFB543:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdx, .LC173[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 212
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, TossimPacketModelC$initialized[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, TossimPacketModelC$sendEvent[rip+17]
	mov	BYTE PTR [rdx+rax], 1
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE543:
	.size	TossimPacketModelC$Init$init, .-TossimPacketModelC$Init$init
	.type	GraphSparseP$0$Init$init, @function
GraphSparseP$0$Init$init:
.LFB544:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_node
	lea	rdx, GraphSparseP$0$vSize[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1397
.L1398:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], -6
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1397:
	cmp	BYTE PTR -1[rbp], 19
	jbe	.L1398
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE544:
	.size	GraphSparseP$0$Init$init, .-GraphSparseP$0$Init$init
	.type	BitVectorC$4$BitVector$clearAll, @function
BitVectorC$4$BitVector$clearAll:
.LFB545:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	sal	rax, 5
	mov	rdx, rax
	lea	rax, BitVectorC$4$m_bits[rip]
	add	rax, rdx
	mov	edx, 32
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE545:
	.size	BitVectorC$4$BitVector$clearAll, .-BitVectorC$4$BitVector$clearAll
	.type	BitVectorC$4$Init$init, @function
BitVectorC$4$Init$init:
.LFB546:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	BitVectorC$4$BitVector$clearAll
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE546:
	.size	BitVectorC$4$Init$init, .-BitVectorC$4$Init$init
	.type	SourceShortestPathP$0$Init$init, @function
SourceShortestPathP$0$Init$init:
.LFB547:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	mov	BYTE PTR [rax+rdx], 20
	call	sim_node
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	SourceShortestPathP$0$initTree
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE547:
	.size	SourceShortestPathP$0$Init$init, .-SourceShortestPathP$0$Init$init
	.type	PriorityQueueP$0$Init$init, @function
PriorityQueueP$0$Init$init:
.LFB548:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	PriorityQueueP$0$clearData
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE548:
	.size	PriorityQueueP$0$Init$init, .-PriorityQueueP$0$Init$init
	.type	LruDataCacheP$1$Init$init, @function
LruDataCacheP$1$Init$init:
.LFB549:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, LruDataCacheP$1$first[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_node
	lea	rdx, LruDataCacheP$1$count[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE549:
	.size	LruDataCacheP$1$Init$init, .-LruDataCacheP$1$Init$init
	.type	LruDataCacheP$2$Init$init, @function
LruDataCacheP$2$Init$init:
.LFB550:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE550:
	.size	LruDataCacheP$2$Init$init, .-LruDataCacheP$2$Init$init
	.type	DataTimerP$0$Init$init, @function
DataTimerP$0$Init$init:
.LFB551:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE551:
	.size	DataTimerP$0$Init$init, .-DataTimerP$0$Init$init
	.type	SimMainP$SoftwareInit$init, @function
SimMainP$SoftwareInit$init:
.LFB552:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	DataTimerP$0$Init$init
	mov	BYTE PTR -1[rbp], al
	call	LruDataCacheP$2$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	LruDataCacheP$1$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	PriorityQueueP$0$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	SourceShortestPathP$0$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	BitVectorC$4$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	GraphSparseP$0$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	TossimPacketModelC$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	Atm128AlarmAsyncP$0$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	RandomMlcgP$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	StateImplP$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	PoolP$1$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	PoolP$0$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	LruDataCacheP$0$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	call	PacketEngineP$Init$init
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE552:
	.size	SimMainP$SoftwareInit$init, .-SimMainP$SoftwareInit$init
	.type	TestDsrP$Random$rand16, @function
TestDsrP$Random$rand16:
.LFB553:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	RandomMlcgP$Random$rand16
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE553:
	.size	TestDsrP$Random$rand16, .-TestDsrP$Random$rand16
	.type	TossimPacketModelC$startDoneTask$postTask, @function
TossimPacketModelC$startDoneTask$postTask:
.LFB554:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 4
	call	SimSchedulerBasicP$TaskBasic$postTask
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE554:
	.size	TossimPacketModelC$startDoneTask$postTask, .-TossimPacketModelC$startDoneTask$postTask
	.section	.rodata
	.align 8
.LC174:
	.string	"TossimPacketModelC: Control.start() called before initialization!\n"
	.align 8
.LC175:
	.string	"TossimPacketModelC: Control.start() called.\n"
	.text
	.type	TossimPacketModelC$Control$start, @function
TossimPacketModelC$Control$start:
.LFB555:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, TossimPacketModelC$initialized[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1420
	lea	rdx, .LC174[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 213
	mov	eax, 0
	call	sim_log_error
	mov	eax, 1
	jmp	.L1421
.L1420:
	lea	rdx, .LC175[rip]
	lea	rsi, .LC114[rip]
	mov	edi, 214
	mov	eax, 0
	call	sim_log_debug
	call	TossimPacketModelC$startDoneTask$postTask
	mov	eax, 0
.L1421:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE555:
	.size	TossimPacketModelC$Control$start, .-TossimPacketModelC$Control$start
	.type	TestDsrP$AMControl$start, @function
TestDsrP$AMControl$start:
.LFB556:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	TossimPacketModelC$Control$start
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE556:
	.size	TestDsrP$AMControl$start, .-TestDsrP$AMControl$start
	.type	TestDsrP$Boot$booted, @function
TestDsrP$Boot$booted:
.LFB557:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	mov	rax, QWORD PTR current_node[rip]
	mov	edi, eax
	call	setVars@PLT
	call	TestDsrP$AMControl$start
	call	TestDsrP$Random$rand16
	mov	ebx, eax
	call	sim_node
	mov	rcx, rax
	movzx	eax, bx
	imul	eax, eax, 55189
	shr	eax, 16
	mov	edx, eax
	shr	dx, 4
	mov	eax, edx
	sal	eax, 3
	add	eax, edx
	add	eax, eax
	add	eax, edx
	sub	ebx, eax
	mov	edx, ebx
	add	rcx, rcx
	lea	rax, TestDsrP$dest[rip]
	mov	WORD PTR [rcx+rax], dx
	call	sim_node
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$dest[rip]
	movzx	ebx, WORD PTR [rdx+rax]
	call	TestDsrP$AMPacket$address
	cmp	bx, ax
	jb	.L1426
	call	sim_node
	lea	rdx, [rax+rax]
	lea	rcx, TestDsrP$dest[rip]
	movzx	edx, WORD PTR [rdx+rcx]
	lea	ecx, 1[rdx]
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$dest[rip]
	mov	WORD PTR [rdx+rax], cx
.L1426:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE557:
	.size	TestDsrP$Boot$booted, .-TestDsrP$Boot$booted
	.type	BitVectorC$1$BitVector$clearAll, @function
BitVectorC$1$BitVector$clearAll:
.LFB558:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, BitVectorC$1$m_bits[rip]
	add	rax, rdx
	mov	edx, 5
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE558:
	.size	BitVectorC$1$BitVector$clearAll, .-BitVectorC$1$BitVector$clearAll
	.type	DsrControlP$0$Salvage$clearAll, @function
DsrControlP$0$Salvage$clearAll:
.LFB559:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	BitVectorC$1$BitVector$clearAll
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE559:
	.size	DsrControlP$0$Salvage$clearAll, .-DsrControlP$0$Salvage$clearAll
	.type	BitVectorC$0$BitVector$clearAll, @function
BitVectorC$0$BitVector$clearAll:
.LFB560:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, BitVectorC$0$m_bits[rip]
	add	rax, rdx
	mov	edx, 5
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE560:
	.size	BitVectorC$0$BitVector$clearAll, .-BitVectorC$0$BitVector$clearAll
	.type	DsrControlP$0$Compose$clearAll, @function
DsrControlP$0$Compose$clearAll:
.LFB561:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	BitVectorC$0$BitVector$clearAll
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE561:
	.size	DsrControlP$0$Compose$clearAll, .-DsrControlP$0$Compose$clearAll
	.type	DsrControlP$0$Random$rand16, @function
DsrControlP$0$Random$rand16:
.LFB562:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	RandomMlcgP$Random$rand16
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE562:
	.size	DsrControlP$0$Random$rand16, .-DsrControlP$0$Random$rand16
	.type	DsrControlP$0$Boot$booted, @function
DsrControlP$0$Boot$booted:
.LFB563:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	call	DsrControlP$0$Random$rand16
	mov	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, DsrControlP$0$nextIdent[rip]
	mov	BYTE PTR [rax+rdx], cl
	call	DsrControlP$0$Compose$clearAll
	call	DsrControlP$0$Salvage$clearAll
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE563:
	.size	DsrControlP$0$Boot$booted, .-DsrControlP$0$Boot$booted
	.type	IndexedAllocBitsP$0$BitVector$clearAll, @function
IndexedAllocBitsP$0$BitVector$clearAll:
.LFB564:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	BitVectorC$4$BitVector$clearAll
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE564:
	.size	IndexedAllocBitsP$0$BitVector$clearAll, .-IndexedAllocBitsP$0$BitVector$clearAll
	.type	IndexedAllocBitsP$0$Boot$booted, @function
IndexedAllocBitsP$0$Boot$booted:
.LFB565:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	IndexedAllocBitsP$0$BitVector$clearAll
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE565:
	.size	IndexedAllocBitsP$0$Boot$booted, .-IndexedAllocBitsP$0$Boot$booted
	.type	SimMainP$Boot$booted, @function
SimMainP$Boot$booted:
.LFB566:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	IndexedAllocBitsP$0$Boot$booted
	call	DsrControlP$0$Boot$booted
	call	TestDsrP$Boot$booted
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE566:
	.size	SimMainP$Boot$booted, .-SimMainP$Boot$booted
	.type	SimMoteP$SimMote$getEuid, @function
SimMoteP$SimMote$getEuid:
.LFB567:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$euid[rip]
	mov	rax, QWORD PTR [rdx+rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE567:
	.size	SimMoteP$SimMote$getEuid, .-SimMoteP$SimMote$getEuid
	.type	SimMoteP$SimMote$setEuid, @function
SimMoteP$SimMote$setEuid:
.LFB568:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, SimMoteP$euid[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE568:
	.size	SimMoteP$SimMote$setEuid, .-SimMoteP$SimMote$setEuid
	.type	SimMoteP$SimMote$getVariableInfo, @function
SimMoteP$SimMote$getVariableInfo:
.LFB569:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	call	sim_node
	mov	edi, eax
	mov	rcx, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	call	__nesc_nido_resolve
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE569:
	.size	SimMoteP$SimMote$getVariableInfo, .-SimMoteP$SimMote$getVariableInfo
	.type	SimMoteP$SimMote$turnOff, @function
SimMoteP$SimMote$turnOff:
.LFB570:
	.cfi_startproc
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, SimMoteP$isOn[rip]
	mov	BYTE PTR [rax+rdx], 0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE570:
	.size	SimMoteP$SimMote$turnOff, .-SimMoteP$SimMote$turnOff
	.section	.rodata
	.align 8
.LC176:
	.string	"Turning on mote %i at time %s.\n"
.LC177:
	.string	"SimMoteP"
	.text
	.type	SimMoteP$sim_mote_boot_handle, @function
SimMoteP$sim_mote_boot_handle:
.LFB571:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 160
	mov	QWORD PTR -152[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -144[rbp]
	mov	esi, 128
	mov	rdi, rax
	call	sim_print_now
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	QWORD PTR [rdx+rax], 0
	call	sim_node
	mov	edx, eax
	lea	rax, -144[rbp]
	mov	r8, rax
	mov	ecx, edx
	lea	rdx, .LC176[rip]
	lea	rsi, .LC177[rip]
	mov	edi, 104
	mov	eax, 0
	call	sim_log_debug
	call	SimMoteP$SimMote$turnOn
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1444
	call	__stack_chk_fail@PLT
.L1444:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE571:
	.size	SimMoteP$sim_mote_boot_handle, .-SimMoteP$sim_mote_boot_handle
	.globl	sim_queue_init
	.type	sim_queue_init, @function
sim_queue_init:
.LFB572:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdi, eventHeap[rip]
	call	init_heap
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE572:
	.size	sim_queue_init, .-sim_queue_init
	.section	.rodata
.LC178:
	.string	"Inserting 0x%p\n"
.LC179:
	.string	"Queue"
	.text
	.globl	sim_queue_insert
	.type	sim_queue_insert, @function
sim_queue_insert:
.LFB573:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, rax
	lea	rdx, .LC178[rip]
	lea	rsi, .LC179[rip]
	mov	edi, 0
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, eventHeap[rip]
	call	heap_insert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE573:
	.size	sim_queue_insert, .-sim_queue_insert
	.section	.rodata
.LC180:
	.string	"DEBUG (%i): "
	.text
	.type	sim_log_debug, @function
sim_log_debug:
.LFB574:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 256
	mov	QWORD PTR -240[rbp], rsi
	mov	QWORD PTR -248[rbp], rdx
	mov	QWORD PTR -152[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L1448
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L1448:
	mov	eax, edi
	mov	WORD PTR -228[rbp], ax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	jne	.L1449
	movzx	eax, WORD PTR -228[rbp]
	mov	rdx, QWORD PTR -240[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	fillInOutput
.L1449:
	mov	DWORD PTR -220[rbp], 0
	jmp	.L1450
.L1451:
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -216[rbp], rax
	mov	DWORD PTR -208[rbp], 24
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	call	sim_node
	mov	edx, eax
	mov	rax, QWORD PTR -216[rbp]
	lea	rsi, .LC180[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	lea	rdx, -208[rbp]
	mov	rcx, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	vfprintf@PLT
	mov	rax, QWORD PTR -216[rbp]
	mov	rdi, rax
	call	fflush@PLT
	add	DWORD PTR -220[rbp], 1
.L1450:
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cmp	DWORD PTR -220[rbp], eax
	jl	.L1451
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1452
	call	__stack_chk_fail@PLT
.L1452:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE574:
	.size	sim_log_debug, .-sim_log_debug
	.type	fillInOutput, @function
fillInOutput:
.LFB575:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 88
	.cfi_offset 3, -24
	mov	DWORD PTR -84[rbp], edi
	mov	QWORD PTR -96[rbp], rsi
	mov	rax, QWORD PTR -96[rbp]
	mov	QWORD PTR -56[rbp], rax
	mov	rax, QWORD PTR -96[rbp]
	mov	QWORD PTR -48[rbp], rax
	mov	DWORD PTR -76[rbp], 0
	mov	rax, QWORD PTR -96[rbp]
	mov	rdi, rax
	call	strlen@PLT
	add	eax, 1
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -96[rbp]
	mov	rdi, rax
	call	strlen@PLT
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	jmp	.L1454
.L1458:
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, 44
	mov	rdi, rax
	call	strrchr@PLT
	mov	QWORD PTR -56[rbp], rax
	cmp	QWORD PTR -56[rbp], 0
	jne	.L1455
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	jmp	.L1456
.L1455:
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR -48[rbp]
	mov	edx, eax
	mov	rcx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR -48[rbp]
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
.L1456:
	mov	rax, QWORD PTR channelTable[rip]
	mov	rdx, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	je	.L1457
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR 8[rax]
	add	DWORD PTR -76[rbp], eax
.L1457:
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 1
	mov	QWORD PTR -48[rbp], rax
.L1454:
	cmp	QWORD PTR -56[rbp], 0
	jne	.L1458
	mov	rax, QWORD PTR -96[rbp]
	mov	QWORD PTR -56[rbp], rax
	mov	rax, QWORD PTR -96[rbp]
	mov	QWORD PTR -48[rbp], rax
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	sal	eax, 3
	mov	edi, eax
	call	malloc@PLT
	mov	edx, DWORD PTR -84[rbp]
	movsx	rdx, edx
	mov	rcx, rdx
	sal	rcx, 4
	lea	rdx, outputs[rip+8]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	DWORD PTR [rdx+rax], 0
	jmp	.L1459
.L1469:
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, 44
	mov	rdi, rax
	call	strrchr@PLT
	mov	QWORD PTR -56[rbp], rax
	cmp	QWORD PTR -56[rbp], 0
	jne	.L1460
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	jmp	.L1461
.L1460:
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR -48[rbp]
	mov	edx, eax
	mov	rcx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR -48[rbp]
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
.L1461:
	mov	rax, QWORD PTR channelTable[rip]
	mov	rdx, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -32[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	je	.L1462
	mov	DWORD PTR -72[rbp], 0
	jmp	.L1463
.L1468:
	mov	DWORD PTR -64[rbp], 0
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	DWORD PTR -60[rbp], eax
	mov	DWORD PTR -68[rbp], 0
	jmp	.L1464
.L1466:
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -68[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	fileno@PLT
	mov	ebx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	fileno@PLT
	cmp	ebx, eax
	jne	.L1465
	mov	DWORD PTR -64[rbp], 1
	mov	eax, DWORD PTR -60[rbp]
	mov	DWORD PTR -68[rbp], eax
.L1465:
	add	DWORD PTR -68[rbp], 1
.L1464:
	mov	eax, DWORD PTR -68[rbp]
	cmp	eax, DWORD PTR -60[rbp]
	jl	.L1466
	cmp	DWORD PTR -64[rbp], 0
	jne	.L1467
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	edx, DWORD PTR -84[rbp]
	movsx	rdx, edx
	mov	rcx, rdx
	sal	rcx, 4
	lea	rdx, outputs[rip+8]
	mov	rcx, QWORD PTR [rcx+rdx]
	mov	edx, DWORD PTR -60[rbp]
	movsx	rdx, edx
	sal	rdx, 3
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	eax, DWORD PTR [rdx+rax]
	lea	ecx, 1[rax]
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	DWORD PTR [rdx+rax], ecx
.L1467:
	add	DWORD PTR -72[rbp], 1
.L1463:
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 8[rax]
	cmp	DWORD PTR -72[rbp], eax
	jl	.L1468
.L1462:
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 1
	mov	QWORD PTR -48[rbp], rax
.L1459:
	cmp	QWORD PTR -56[rbp], 0
	jne	.L1469
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE575:
	.size	fillInOutput, .-fillInOutput
	.globl	sim_node
	.type	sim_node, @function
sim_node:
.LFB576:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR current_node[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE576:
	.size	sim_node, .-sim_node
	.type	up_heap, @function
up_heap:
.LFB577:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	cmp	DWORD PTR -28[rbp], 0
	je	.L1475
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, 1
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	mov	rax, QWORD PTR 8[rax]
	cmp	rdx, rax
	jle	.L1472
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	swap
	mov	edx, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	up_heap
	jmp	.L1472
.L1475:
	nop
.L1472:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE577:
	.size	up_heap, .-up_heap
	.type	swap, @function
swap:
.LFB578:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], rdx
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE578:
	.size	swap, .-swap
	.globl	sim_queue_pop
	.type	sim_queue_pop, @function
sim_queue_pop:
.LFB579:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rax, -16[rbp]
	mov	rsi, rax
	lea	rdi, eventHeap[rip]
	call	heap_pop_min_data
	mov	rdx, QWORD PTR -8[rbp]
	sub	rdx, QWORD PTR fs:40
	je	.L1479
	call	__stack_chk_fail@PLT
.L1479:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE579:
	.size	sim_queue_pop, .-sim_queue_pop
	.type	heap_pop_min_data, @function
heap_pop_min_data:
.LFB580:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	je	.L1481
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], rdx
.L1481:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdx, QWORD PTR [rdx]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdx, QWORD PTR 8[rdx]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	down_heap
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE580:
	.size	heap_pop_min_data, .-heap_pop_min_data
	.type	down_heap, @function
down_heap:
.LFB581:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -56[rbp], rdi
	mov	DWORD PTR -60[rbp], esi
	mov	eax, DWORD PTR -60[rbp]
	add	eax, 1
	add	eax, eax
	mov	DWORD PTR -36[rbp], eax
	mov	eax, DWORD PTR -60[rbp]
	add	eax, eax
	add	eax, 1
	mov	DWORD PTR -32[rbp], eax
	mov	rax, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -36[rbp], eax
	jge	.L1484
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	cmp	rax, QWORD PTR -8[rbp]
	jge	.L1485
	mov	eax, DWORD PTR -32[rbp]
	jmp	.L1486
.L1485:
	mov	eax, DWORD PTR -36[rbp]
.L1486:
	mov	DWORD PTR -28[rbp], eax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	rdx, QWORD PTR 8[rax]
	mov	rax, QWORD PTR -56[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	mov	rax, QWORD PTR 8[rax]
	cmp	rdx, rax
	jge	.L1483
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	swap
	mov	edx, DWORD PTR -28[rbp]
	mov	rax, QWORD PTR -56[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	down_heap
	jmp	.L1483
.L1484:
	mov	rax, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -32[rbp], eax
	jge	.L1489
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	rax, QWORD PTR 8[rax]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	sal	rax, 4
	add	rax, rdx
	mov	rax, QWORD PTR 8[rax]
	cmp	QWORD PTR -24[rbp], rax
	jge	.L1483
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	sal	rax, 4
	add	rax, rcx
	mov	rsi, rdx
	mov	rdi, rax
	call	swap
	jmp	.L1483
.L1489:
	nop
.L1483:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE581:
	.size	down_heap, .-down_heap
	.globl	sim_queue_is_empty
	.type	sim_queue_is_empty, @function
sim_queue_is_empty:
.LFB582:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdi, eventHeap[rip]
	call	heap_is_empty
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE582:
	.size	sim_queue_is_empty, .-sim_queue_is_empty
	.globl	sim_queue_peek_time
	.type	sim_queue_peek_time, @function
sim_queue_peek_time:
.LFB583:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdi, eventHeap[rip]
	call	heap_is_empty
	test	eax, eax
	je	.L1493
	mov	rax, -1
	jmp	.L1494
.L1493:
	lea	rdi, eventHeap[rip]
	call	heap_get_min_key
.L1494:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE583:
	.size	sim_queue_peek_time, .-sim_queue_peek_time
	.section	.rodata
.LC181:
	.string	"cleanup_none: 0x%p\n"
	.text
	.globl	sim_queue_cleanup_none
	.type	sim_queue_cleanup_none, @function
sim_queue_cleanup_none:
.LFB584:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, rax
	lea	rdx, .LC181[rip]
	lea	rsi, .LC179[rip]
	mov	edi, 1
	mov	eax, 0
	call	sim_log_debug
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE584:
	.size	sim_queue_cleanup_none, .-sim_queue_cleanup_none
	.section	.rodata
.LC182:
	.string	"cleanup_event: 0x%p\n"
	.text
	.globl	sim_queue_cleanup_event
	.type	sim_queue_cleanup_event, @function
sim_queue_cleanup_event:
.LFB585:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, rax
	lea	rdx, .LC182[rip]
	lea	rsi, .LC179[rip]
	mov	edi, 2
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE585:
	.size	sim_queue_cleanup_event, .-sim_queue_cleanup_event
	.section	.rodata
.LC183:
	.string	"cleanup_data: 0x%p\n"
	.text
	.globl	sim_queue_cleanup_data
	.type	sim_queue_cleanup_data, @function
sim_queue_cleanup_data:
.LFB586:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, rax
	lea	rdx, .LC183[rip]
	lea	rsi, .LC179[rip]
	mov	edi, 3
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 24[rax], 0
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE586:
	.size	sim_queue_cleanup_data, .-sim_queue_cleanup_data
	.section	.rodata
.LC184:
	.string	"cleanup_total: 0x%p\n"
	.text
	.globl	sim_queue_cleanup_total
	.type	sim_queue_cleanup_total, @function
sim_queue_cleanup_total:
.LFB587:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rcx, rax
	lea	rdx, .LC184[rip]
	lea	rsi, .LC179[rip]
	mov	edi, 4
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 24[rax]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 24[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE587:
	.size	sim_queue_cleanup_total, .-sim_queue_cleanup_total
	.globl	sim_init
	.type	sim_init, @function
sim_init:
.LFB588:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	call	sim_queue_init
	call	sim_log_init
	call	sim_log_commit_change
	call	sim_noise_init
	lea	rax, -32[rbp]
	mov	esi, 0
	mov	rdi, rax
	call	gettimeofday@PLT
	mov	rax, QWORD PTR -24[rbp]
	test	rax, rax
	je	.L1500
	mov	rax, QWORD PTR -24[rbp]
	mov	edi, eax
	call	sim_random_seed
	jmp	.L1503
.L1500:
	mov	rax, QWORD PTR -32[rbp]
	mov	edi, eax
	call	sim_random_seed
.L1503:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1502
	call	__stack_chk_fail@PLT
.L1502:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE588:
	.size	sim_init, .-sim_init
	.type	sim_log_commit_change, @function
sim_log_commit_change:
.LFB589:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], 0
	jmp	.L1505
.L1507:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L1506
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	DWORD PTR [rdx+rax], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	free@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	QWORD PTR [rdx+rax], 0
.L1506:
	add	DWORD PTR -4[rbp], 1
.L1505:
	cmp	DWORD PTR -4[rbp], 405
	jle	.L1507
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE589:
	.size	sim_log_commit_change, .-sim_log_commit_change
	.globl	sim_noise_init
	.type	sim_noise_init, @function
sim_noise_init:
.LFB590:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], 0
	jmp	.L1509
.L1510:
	lea	rdx, sim_noise_eq[rip]
	lea	rsi, sim_noise_hash[rip]
	mov	edi, 128
	call	create_hashtable@PLT
	mov	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	add	rax, rax
	add	rax, rcx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, noiseData[rip+56]
	mov	QWORD PTR [rcx+rax], rdx
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+48]
	mov	QWORD PTR [rdx+rax], 0
	mov	edi, 128
	call	malloc@PLT
	mov	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rcx
	add	rax, rax
	add	rax, rcx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, noiseData[rip+64]
	mov	QWORD PTR [rcx+rax], rdx
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+72]
	mov	QWORD PTR [rdx+rax], 128
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	QWORD PTR [rdx+rax], 0
	add	DWORD PTR -4[rbp], 1
.L1509:
	cmp	DWORD PTR -4[rbp], 999
	jle	.L1510
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE590:
	.size	sim_noise_init, .-sim_noise_init
	.globl	sim_random_seed
	.type	sim_random_seed, @function
sim_random_seed:
.LFB591:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	jne	.L1512
	mov	DWORD PTR -4[rbp], 1
.L1512:
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR sim_seed[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE591:
	.size	sim_random_seed, .-sim_random_seed
	.globl	sim_end
	.type	sim_end, @function
sim_end:
.LFB592:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_queue_init
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE592:
	.size	sim_end, .-sim_end
	.globl	sim_random
	.type	sim_random, @function
sim_random:
.LFB593:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR sim_seed[rip]
	cdqe
	imul	rax, rax, 33614
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	shr	QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	shr	rax, 32
	mov	QWORD PTR -8[rbp], rax
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	and	eax, 2147483648
	test	rax, rax
	je	.L1515
	and	QWORD PTR -32[rbp], 2147483647
	add	QWORD PTR -32[rbp], 1
.L1515:
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR sim_seed[rip], eax
	mov	rax, QWORD PTR -32[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE593:
	.size	sim_random, .-sim_random
	.globl	sim_time
	.type	sim_time, @function
sim_time:
.LFB594:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR sim_ticks[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE594:
	.size	sim_time, .-sim_time
	.globl	sim_set_time
	.type	sim_set_time, @function
sim_set_time:
.LFB595:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR sim_ticks[rip], rax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE595:
	.size	sim_set_time, .-sim_set_time
	.globl	sim_ticks_per_sec
	.type	sim_ticks_per_sec, @function
sim_ticks_per_sec:
.LFB596:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movabs	rax, 10000000000
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE596:
	.size	sim_ticks_per_sec, .-sim_ticks_per_sec
	.globl	sim_set_node
	.type	sim_set_node, @function
sim_set_node:
.LFB597:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR current_node[rip], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	WORD PTR TOS_NODE_ID[rip], ax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE597:
	.size	sim_set_node, .-sim_set_node
	.section	.rodata
	.align 8
.LC185:
	.string	"CORE: popping event 0x%p for %i at %llu with handler %p... "
.LC186:
	.string	"Tossim"
	.align 8
.LC187:
	.string	" mote is on (or forced event), run it.\n"
	.text
	.globl	sim_run_next_event
	.type	sim_run_next_event, @function
sim_run_next_event:
.LFB598:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	BYTE PTR -25[rbp], 0
	call	sim_queue_is_empty
	test	al, al
	jne	.L1524
	call	sim_queue_pop
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	sim_set_time
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rdi, rax
	call	sim_set_node
	mov	rax, QWORD PTR -24[rbp]
	mov	rbx, QWORD PTR 32[rax]
	call	sim_time
	mov	r12, rax
	call	sim_node
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	sub	rsp, 8
	push	rbx
	mov	r9, r12
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC185[rip]
	lea	rsi, .LC186[rip]
	mov	edi, 5
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	edi, eax
	call	sim_mote_is_on
	test	al, al
	jne	.L1525
	mov	rax, QWORD PTR -24[rbp]
	movzx	eax, BYTE PTR 16[rax]
	test	al, al
	je	.L1526
.L1525:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 32[rax]
	test	rax, rax
	je	.L1526
	mov	BYTE PTR -25[rbp], 1
	lea	rdx, .LC187[rip]
	lea	rsi, .LC186[rip]
	mov	edi, 6
	mov	eax, 0
	call	sim_log_debug_clear
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	rdx
	jmp	.L1527
.L1526:
	lea	rdx, .LC148[rip]
	lea	rsi, .LC186[rip]
	mov	edi, 7
	mov	eax, 0
	call	sim_log_debug_clear
.L1527:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 40[rax]
	test	rax, rax
	je	.L1524
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 40[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	rdx
.L1524:
	movzx	eax, BYTE PTR -25[rbp]
	lea	rsp, -16[rbp]
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE598:
	.size	sim_run_next_event, .-sim_run_next_event
	.globl	sim_mote_is_on
	.type	sim_mote_is_on, @function
sim_mote_is_on:
.LFB599:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	call	sim_node
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	SimMoteP$SimMote$isOn
	mov	BYTE PTR -5[rbp], al
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	movzx	eax, BYTE PTR -5[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE599:
	.size	sim_mote_is_on, .-sim_mote_is_on
	.type	sim_log_debug_clear, @function
sim_log_debug_clear:
.LFB600:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 256
	mov	QWORD PTR -240[rbp], rsi
	mov	QWORD PTR -248[rbp], rdx
	mov	QWORD PTR -152[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L1532
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L1532:
	mov	eax, edi
	mov	WORD PTR -228[rbp], ax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	jne	.L1533
	movzx	eax, WORD PTR -228[rbp]
	mov	rdx, QWORD PTR -240[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	fillInOutput
.L1533:
	mov	DWORD PTR -220[rbp], 0
	jmp	.L1534
.L1535:
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -216[rbp], rax
	mov	DWORD PTR -208[rbp], 24
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	lea	rdx, -208[rbp]
	mov	rcx, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	vfprintf@PLT
	mov	rax, QWORD PTR -216[rbp]
	mov	rdi, rax
	call	fflush@PLT
	add	DWORD PTR -220[rbp], 1
.L1534:
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cmp	DWORD PTR -220[rbp], eax
	jl	.L1535
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1536
	call	__stack_chk_fail@PLT
.L1536:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE600:
	.size	sim_log_debug_clear, .-sim_log_debug_clear
	.section	.rodata
.LC188:
	.string	"%i:%i:%i.%09llu"
	.text
	.globl	sim_print_time
	.type	sim_print_time, @function
sim_print_time:
.LFB601:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	QWORD PTR -56[rbp], rdx
	call	sim_ticks_per_sec
	mov	rcx, rax
	mov	rax, QWORD PTR -56[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -8[rbp], rdx
	call	sim_ticks_per_sec
	cmp	rax, 1000000000
	jle	.L1538
	call	sim_ticks_per_sec
	mov	rcx, rax
	movabs	rdx, 1237940039285380275
	mov	rax, rcx
	imul	rdx
	mov	rax, rdx
	sar	rax, 26
	sar	rcx, 63
	sub	rax, rcx
	mov	rsi, rax
	mov	rax, QWORD PTR -8[rbp]
	cqo
	idiv	rsi
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1539
.L1538:
	call	sim_ticks_per_sec
	mov	rsi, rax
	mov	eax, 1000000000
	cqo
	idiv	rsi
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	imul	rax, rdx
	mov	QWORD PTR -8[rbp], rax
.L1539:
	call	sim_ticks_per_sec
	mov	rdi, rax
	mov	rax, QWORD PTR -56[rbp]
	cqo
	idiv	rdi
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 60
	sub	eax, edx
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -16[rbp]
	movsx	rdx, eax
	imul	rdx, rdx, -2004318071
	shr	rdx, 32
	add	edx, eax
	sar	edx, 5
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	edx, edx, 60
	sub	eax, edx
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, 1
	mov	edi, eax
	mov	esi, DWORD PTR -20[rbp]
	mov	ecx, DWORD PTR -16[rbp]
	mov	edx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -40[rbp]
	sub	rsp, 8
	push	QWORD PTR -8[rbp]
	mov	r9d, esi
	mov	r8d, ecx
	mov	ecx, edx
	lea	rdx, .LC188[rip]
	mov	esi, edi
	mov	rdi, rax
	mov	eax, 0
	call	snprintf@PLT
	add	rsp, 16
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE601:
	.size	sim_print_time, .-sim_print_time
	.globl	sim_print_now
	.type	sim_print_now, @function
sim_print_now:
.LFB602:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	DWORD PTR -12[rbp], esi
	call	sim_time
	mov	rdx, rax
	mov	ecx, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	sim_print_time
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE602:
	.size	sim_print_now, .-sim_print_now
	.globl	sim_time_string
	.type	sim_time_string, @function
sim_time_string:
.LFB603:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	esi, 128
	lea	rdi, simTimeBuf[rip]
	call	sim_print_now
	lea	rax, simTimeBuf[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE603:
	.size	sim_time_string, .-sim_time_string
	.globl	sim_add_channel
	.type	sim_add_channel, @function
sim_add_channel:
.LFB604:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	sim_log_add_channel
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE604:
	.size	sim_add_channel, .-sim_add_channel
	.globl	sim_remove_channel
	.type	sim_remove_channel, @function
sim_remove_channel:
.LFB605:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	sim_log_remove_channel
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE605:
	.size	sim_remove_channel, .-sim_remove_channel
	.globl	sim_csma_init_high
	.type	sim_csma_init_high, @function
sim_csma_init_high:
.LFB606:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaInitHigh[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE606:
	.size	sim_csma_init_high, .-sim_csma_init_high
	.globl	sim_csma_init_low
	.type	sim_csma_init_low, @function
sim_csma_init_low:
.LFB607:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaInitLow[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE607:
	.size	sim_csma_init_low, .-sim_csma_init_low
	.globl	sim_csma_high
	.type	sim_csma_high, @function
sim_csma_high:
.LFB608:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaHigh[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE608:
	.size	sim_csma_high, .-sim_csma_high
	.globl	sim_csma_low
	.type	sim_csma_low, @function
sim_csma_low:
.LFB609:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaLow[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE609:
	.size	sim_csma_low, .-sim_csma_low
	.globl	sim_csma_symbols_per_sec
	.type	sim_csma_symbols_per_sec, @function
sim_csma_symbols_per_sec:
.LFB610:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaSymbolsPerSec[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE610:
	.size	sim_csma_symbols_per_sec, .-sim_csma_symbols_per_sec
	.globl	sim_csma_bits_per_symbol
	.type	sim_csma_bits_per_symbol, @function
sim_csma_bits_per_symbol:
.LFB611:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaBitsPerSymbol[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE611:
	.size	sim_csma_bits_per_symbol, .-sim_csma_bits_per_symbol
	.globl	sim_csma_preamble_length
	.type	sim_csma_preamble_length, @function
sim_csma_preamble_length:
.LFB612:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaPreambleLength[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE612:
	.size	sim_csma_preamble_length, .-sim_csma_preamble_length
	.globl	sim_csma_exponent_base
	.type	sim_csma_exponent_base, @function
sim_csma_exponent_base:
.LFB613:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaExponentBase[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE613:
	.size	sim_csma_exponent_base, .-sim_csma_exponent_base
	.globl	sim_csma_max_iterations
	.type	sim_csma_max_iterations, @function
sim_csma_max_iterations:
.LFB614:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaMaxIterations[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE614:
	.size	sim_csma_max_iterations, .-sim_csma_max_iterations
	.globl	sim_csma_min_free_samples
	.type	sim_csma_min_free_samples, @function
sim_csma_min_free_samples:
.LFB615:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaMinFreeSamples[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE615:
	.size	sim_csma_min_free_samples, .-sim_csma_min_free_samples
	.globl	sim_csma_rxtx_delay
	.type	sim_csma_rxtx_delay, @function
sim_csma_rxtx_delay:
.LFB616:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaRxTxDelay[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE616:
	.size	sim_csma_rxtx_delay, .-sim_csma_rxtx_delay
	.globl	sim_csma_ack_time
	.type	sim_csma_ack_time, @function
sim_csma_ack_time:
.LFB617:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR csmaAckTime[rip]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE617:
	.size	sim_csma_ack_time, .-sim_csma_ack_time
	.globl	sim_csma_set_init_high
	.type	sim_csma_set_init_high, @function
sim_csma_set_init_high:
.LFB618:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaInitHigh[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE618:
	.size	sim_csma_set_init_high, .-sim_csma_set_init_high
	.globl	sim_csma_set_init_low
	.type	sim_csma_set_init_low, @function
sim_csma_set_init_low:
.LFB619:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaInitLow[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE619:
	.size	sim_csma_set_init_low, .-sim_csma_set_init_low
	.globl	sim_csma_set_high
	.type	sim_csma_set_high, @function
sim_csma_set_high:
.LFB620:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaHigh[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE620:
	.size	sim_csma_set_high, .-sim_csma_set_high
	.globl	sim_csma_set_low
	.type	sim_csma_set_low, @function
sim_csma_set_low:
.LFB621:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaLow[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE621:
	.size	sim_csma_set_low, .-sim_csma_set_low
	.globl	sim_csma_set_symbols_per_sec
	.type	sim_csma_set_symbols_per_sec, @function
sim_csma_set_symbols_per_sec:
.LFB622:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaSymbolsPerSec[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE622:
	.size	sim_csma_set_symbols_per_sec, .-sim_csma_set_symbols_per_sec
	.globl	sim_csma_set_bits_per_symbol
	.type	sim_csma_set_bits_per_symbol, @function
sim_csma_set_bits_per_symbol:
.LFB623:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaBitsPerSymbol[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE623:
	.size	sim_csma_set_bits_per_symbol, .-sim_csma_set_bits_per_symbol
	.globl	sim_csma_set_preamble_length
	.type	sim_csma_set_preamble_length, @function
sim_csma_set_preamble_length:
.LFB624:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaPreambleLength[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE624:
	.size	sim_csma_set_preamble_length, .-sim_csma_set_preamble_length
	.globl	sim_csma_set_exponent_base
	.type	sim_csma_set_exponent_base, @function
sim_csma_set_exponent_base:
.LFB625:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaExponentBase[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE625:
	.size	sim_csma_set_exponent_base, .-sim_csma_set_exponent_base
	.globl	sim_csma_set_max_iterations
	.type	sim_csma_set_max_iterations, @function
sim_csma_set_max_iterations:
.LFB626:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaMaxIterations[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE626:
	.size	sim_csma_set_max_iterations, .-sim_csma_set_max_iterations
	.globl	sim_csma_set_min_free_samples
	.type	sim_csma_set_min_free_samples, @function
sim_csma_set_min_free_samples:
.LFB627:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaMinFreeSamples[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE627:
	.size	sim_csma_set_min_free_samples, .-sim_csma_set_min_free_samples
	.globl	sim_csma_set_rxtx_delay
	.type	sim_csma_set_rxtx_delay, @function
sim_csma_set_rxtx_delay:
.LFB628:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaRxTxDelay[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE628:
	.size	sim_csma_set_rxtx_delay, .-sim_csma_set_rxtx_delay
	.globl	sim_csma_set_ack_time
	.type	sim_csma_set_ack_time, @function
sim_csma_set_ack_time:
.LFB629:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR csmaAckTime[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE629:
	.size	sim_csma_set_ack_time, .-sim_csma_set_ack_time
	.globl	sim_gain_first
	.type	sim_gain_first, @function
sim_gain_first:
.LFB630:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 1000
	jle	.L1585
	mov	rax, QWORD PTR connectivity[rip+8000]
	jmp	.L1586
.L1585:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, connectivity[rip]
	mov	rax, QWORD PTR [rdx+rax]
.L1586:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE630:
	.size	sim_gain_first, .-sim_gain_first
	.globl	sim_gain_next
	.type	sim_gain_next, @function
sim_gain_next:
.LFB631:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 16[rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE631:
	.size	sim_gain_next, .-sim_gain_next
	.section	.rodata
	.align 8
.LC189:
	.string	"Adding link from %i to %i with gain %f\n"
.LC190:
	.string	"Gain"
	.text
	.globl	sim_gain_add
	.type	sim_gain_add, @function
sim_gain_add:
.LFB632:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	movsd	QWORD PTR -32[rbp], xmm0
	call	sim_node
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -20[rbp], 1000
	jle	.L1590
	mov	DWORD PTR -20[rbp], 1000
.L1590:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	sim_gain_first
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1591
.L1594:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -24[rbp], eax
	jne	.L1592
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	jmp	.L1593
.L1592:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -8[rbp], rax
.L1591:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L1594
.L1593:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L1595
	mov	eax, DWORD PTR -24[rbp]
	mov	edi, eax
	call	sim_gain_allocate_link
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, connectivity[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 16[rax], rdx
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	lea	rdx, connectivity[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rcx+rdx], rax
.L1595:
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR -32[rbp]
	movsd	QWORD PTR 8[rax], xmm0
	mov	rdx, QWORD PTR -32[rbp]
	mov	ecx, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movq	xmm0, rdx
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, .LC189[rip]
	lea	rsi, .LC190[rip]
	mov	edi, 8
	mov	eax, 1
	call	sim_log_debug
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE632:
	.size	sim_gain_add, .-sim_gain_add
	.section	.rodata
	.align 8
.LC191:
	.string	"Getting link from %i to %i with gain %f\n"
	.align 8
.LC192:
	.string	"Getting default link from %i to %i with gain %f\n"
	.text
	.globl	sim_gain_value
	.type	sim_gain_value, @function
sim_gain_value:
.LFB633:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	call	sim_node
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	sim_gain_first
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1597
.L1600:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -24[rbp], eax
	jne	.L1598
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	ecx, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movq	xmm0, rdx
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, .LC191[rip]
	lea	rsi, .LC190[rip]
	mov	edi, 9
	mov	eax, 1
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR 8[rax]
	jmp	.L1599
.L1598:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -8[rbp], rax
.L1597:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L1600
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	rdx, QWORD PTR .LC127[rip]
	mov	ecx, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -20[rbp]
	movq	xmm0, rdx
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, .LC192[rip]
	lea	rsi, .LC190[rip]
	mov	edi, 10
	mov	eax, 1
	call	sim_log_debug
	movsd	xmm0, QWORD PTR .LC127[rip]
.L1599:
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE633:
	.size	sim_gain_value, .-sim_gain_value
	.globl	sim_gain_connected
	.type	sim_gain_connected, @function
sim_gain_connected:
.LFB634:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	call	sim_node
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, DWORD PTR -20[rbp]
	mov	edi, eax
	call	sim_gain_first
	mov	QWORD PTR -8[rbp], rax
	jmp	.L1602
.L1605:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -24[rbp], eax
	jne	.L1603
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, 1
	jmp	.L1604
.L1603:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -8[rbp], rax
.L1602:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L1605
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, 0
.L1604:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE634:
	.size	sim_gain_connected, .-sim_gain_connected
	.globl	sim_gain_remove
	.type	sim_gain_remove, @function
sim_gain_remove:
.LFB635:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -36[rbp], edi
	mov	DWORD PTR -40[rbp], esi
	call	sim_node
	mov	DWORD PTR -28[rbp], eax
	cmp	DWORD PTR -36[rbp], 1000
	jle	.L1607
	mov	DWORD PTR -36[rbp], 1000
.L1607:
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, DWORD PTR -36[rbp]
	mov	edi, eax
	call	sim_gain_first
	mov	QWORD PTR -24[rbp], rax
	mov	QWORD PTR -16[rbp], 0
	jmp	.L1608
.L1612:
	mov	rax, QWORD PTR -24[rbp]
	mov	eax, DWORD PTR [rax]
	cmp	DWORD PTR -40[rbp], eax
	jne	.L1609
	cmp	QWORD PTR -16[rbp], 0
	jne	.L1610
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	edx, DWORD PTR -36[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	lea	rdx, connectivity[rip]
	mov	QWORD PTR [rcx+rdx], rax
	jmp	.L1611
.L1610:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR 16[rax], rdx
.L1611:
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	sim_gain_deallocate_link
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR -24[rbp], rax
	jmp	.L1608
.L1609:
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR -24[rbp], rax
.L1608:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L1612
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE635:
	.size	sim_gain_remove, .-sim_gain_remove
	.globl	sim_gain_deallocate_link
	.type	sim_gain_deallocate_link, @function
sim_gain_deallocate_link:
.LFB636:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE636:
	.size	sim_gain_deallocate_link, .-sim_gain_deallocate_link
	.globl	sim_gain_set_noise_floor
	.type	sim_gain_set_noise_floor, @function
sim_gain_set_noise_floor:
.LFB637:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	QWORD PTR -24[rbp], xmm1
	cmp	DWORD PTR -4[rbp], 1000
	jle	.L1615
	mov	DWORD PTR -4[rbp], 1000
.L1615:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, localNoise[rip]
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, localNoise[rip+8]
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rdx+rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE637:
	.size	sim_gain_set_noise_floor, .-sim_gain_set_noise_floor
	.globl	sim_gain_sample_noise
	.type	sim_gain_sample_noise, @function
sim_gain_sample_noise:
.LFB638:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	DWORD PTR -20[rbp], edi
	cmp	DWORD PTR -20[rbp], 1000
	jle	.L1617
	mov	DWORD PTR -20[rbp], 1000
.L1617:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, localNoise[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	QWORD PTR -16[rbp], xmm0
	call	sim_random
	movsx	rdx, eax
	imul	rdx, rdx, 1125899907
	shr	rdx, 32
	sar	edx, 19
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	imul	ecx, edx, 2000000
	sub	eax, ecx
	mov	edx, eax
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, edx
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC193[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC127[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, localNoise[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR -8[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	addsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE638:
	.size	sim_gain_sample_noise, .-sim_gain_sample_noise
	.globl	sim_gain_set_sensitivity
	.type	sim_gain_set_sensitivity, @function
sim_gain_set_sensitivity:
.LFB639:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR sensitivity[rip], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE639:
	.size	sim_gain_set_sensitivity, .-sim_gain_set_sensitivity
	.globl	sim_gain_sensitivity
	.type	sim_gain_sensitivity, @function
sim_gain_sensitivity:
.LFB640:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	xmm0, QWORD PTR sensitivity[rip]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE640:
	.size	sim_gain_sensitivity, .-sim_gain_sensitivity
	.globl	sim_noise_create_model
	.type	sim_noise_create_model, @function
sim_noise_create_model:
.LFB641:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	WORD PTR -4[rbp], ax
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	makeNoiseModel
	movzx	eax, WORD PTR -4[rbp]
	mov	edi, eax
	call	makePmfDistr
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE641:
	.size	sim_noise_create_model, .-sim_noise_create_model
	.section	.rodata
.LC194:
	.string	"Setting history %i to be %i\n"
.LC195:
	.string	"Insert"
	.text
	.globl	makeNoiseModel
	.type	makeNoiseModel, @function
makeNoiseModel:
.LFB642:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	mov	DWORD PTR -4[rbp], 0
	jmp	.L1624
.L1625:
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	search_bin_num
	mov	edx, eax
	movzx	eax, WORD PTR -20[rbp]
	mov	ecx, edx
	mov	edx, DWORD PTR -4[rbp]
	movsx	rsi, edx
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, [rax+rsi]
	lea	rax, noiseData[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	movzx	eax, WORD PTR -20[rbp]
	mov	edx, DWORD PTR -4[rbp]
	movsx	rcx, edx
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, [rax+rcx]
	lea	rax, noiseData[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	edx, al
	mov	eax, DWORD PTR -4[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC194[rip]
	lea	rsi, .LC195[rip]
	mov	edi, 44
	mov	eax, 0
	call	sim_log_debug
	add	DWORD PTR -4[rbp], 1
.L1624:
	cmp	DWORD PTR -4[rbp], 19
	jle	.L1625
	mov	DWORD PTR -4[rbp], 20
	jmp	.L1626
.L1627:
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	edx, al
	movzx	eax, WORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	sim_noise_add
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	arrangeKey
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	search_bin_num
	mov	edx, eax
	movzx	eax, WORD PTR -20[rbp]
	mov	ecx, edx
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+19]
	mov	BYTE PTR [rdx+rax], cl
	add	DWORD PTR -4[rbp], 1
.L1626:
	mov	eax, DWORD PTR -4[rbp]
	movsx	rcx, eax
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	rcx, rax
	jb	.L1627
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+88]
	mov	BYTE PTR [rdx+rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE642:
	.size	makeNoiseModel, .-makeNoiseModel
	.globl	search_bin_num
	.type	search_bin_num, @function
search_bin_num:
.LFB643:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	cmp	BYTE PTR -20[rbp], -4
	jge	.L1629
	cmp	BYTE PTR -20[rbp], -115
	jge	.L1630
.L1629:
	mov	BYTE PTR -20[rbp], -115
.L1630:
	movsx	eax, BYTE PTR -20[rbp]
	add	eax, 115
	movsx	rdx, eax
	imul	rdx, rdx, 1717986919
	shr	rdx, 32
	sar	edx
	sar	eax, 31
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE643:
	.size	search_bin_num, .-search_bin_num
	.section	.rodata
.LC196:
	.string	"Adding noise value %hhi\n"
	.align 8
.LC198:
	.string	"Inserting %p into table %p with key "
.LC199:
	.string	"%0.3hhi "
	.text
	.globl	sim_noise_add
	.type	sim_noise_add, @function
sim_noise_add:
.LFB644:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	eax, edi
	mov	edx, esi
	mov	WORD PTR -52[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -56[rbp], al
	movzx	eax, WORD PTR -52[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+56]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -24[rbp], rax
	movzx	eax, WORD PTR -52[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, noiseData[rip]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -32[rbp], rax
	movsx	eax, BYTE PTR -56[rbp]
	mov	ecx, eax
	lea	rdx, .LC196[rip]
	lea	rsi, .LC195[rip]
	mov	edi, 13
	mov	eax, 0
	call	sim_log_debug
	cmp	QWORD PTR -32[rbp], 0
	jne	.L1633
	mov	edi, 488
	call	malloc@PLT
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	edx, 20
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR 20[rax], 0
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR 24[rax], 8
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	edi, eax
	call	malloc@PLT
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR 32[rdx], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	edx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 32[rax]
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	rax, QWORD PTR -32[rbp]
	mov	BYTE PTR 40[rax], 0
	mov	DWORD PTR -44[rbp], 0
	jmp	.L1634
.L1635:
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -44[rbp]
	movsx	rdx, edx
	add	rdx, 8
	pxor	xmm0, xmm0
	movss	DWORD PTR 12[rax+rdx*4], xmm0
	add	DWORD PTR -44[rbp], 1
.L1634:
	cmp	DWORD PTR -44[rbp], 110
	jle	.L1635
	mov	rdx, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	hashtable_insert@PLT
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC198[rip]
	lea	rsi, .LC195[rip]
	mov	edi, 14
	mov	eax, 0
	call	sim_log_debug
	mov	DWORD PTR -40[rbp], 0
	jmp	.L1636
.L1637:
	mov	eax, DWORD PTR -40[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	ecx, eax
	lea	rdx, .LC199[rip]
	lea	rsi, .LC195[rip]
	mov	edi, 15
	mov	eax, 0
	call	sim_log_debug_clear
	add	DWORD PTR -40[rbp], 1
.L1636:
	cmp	DWORD PTR -40[rbp], 19
	jle	.L1637
	lea	rdx, .LC148[rip]
	lea	rsi, .LC195[rip]
	mov	edi, 16
	mov	eax, 0
	call	sim_log_debug_clear
.L1633:
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR 20[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	cmp	edx, eax
	jne	.L1638
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	add	eax, eax
	mov	DWORD PTR -36[rbp], eax
	mov	eax, DWORD PTR -36[rbp]
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 24[rax]
	mov	edx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR 32[rax]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -36[rbp]
	mov	DWORD PTR 24[rax], edx
.L1638:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR 32[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 20[rax]
	cdqe
	add	rdx, rax
	movzx	eax, BYTE PTR -56[rbp]
	mov	BYTE PTR [rdx], al
	mov	rax, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR 20[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR 20[rax], edx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE644:
	.size	sim_noise_add, .-sim_noise_add
	.globl	arrangeKey
	.type	arrangeKey, @function
arrangeKey:
.LFB645:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, noiseData[rip]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	lea	rcx, 1[rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 19
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE645:
	.size	arrangeKey, .-arrangeKey
	.section	.rodata
.LC200:
	.string	"FreqKey = "
.LC201:
	.string	"HASH"
.LC202:
	.string	"%d,"
	.text
	.globl	makePmfDistr
	.type	makePmfDistr, @function
makePmfDistr:
.LFB646:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, edi
	mov	WORD PTR -36[rbp], ax
	movzx	eax, WORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, noiseData[rip]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	movzx	eax, WORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 16[rax]
	lea	rax, noiseData[rip]
	add	rax, rdx
	add	rax, 4
	mov	QWORD PTR -8[rbp], rax
	mov	QWORD PTR FreqKeyNum[rip], 0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L1641
.L1642:
	movzx	eax, WORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	search_bin_num
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	add	DWORD PTR -20[rbp], 1
.L1641:
	cmp	DWORD PTR -20[rbp], 19
	jle	.L1642
	mov	DWORD PTR -20[rbp], 20
	jmp	.L1643
.L1644:
	movzx	eax, WORD PTR -36[rbp]
	mov	edi, eax
	call	sim_noise_dist
	movzx	eax, WORD PTR -36[rbp]
	mov	edi, eax
	call	arrangeKey
	movzx	eax, WORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	search_bin_num
	mov	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 19
	mov	BYTE PTR [rax], dl
	add	DWORD PTR -20[rbp], 1
.L1643:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rcx, eax
	movzx	eax, WORD PTR -36[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	rcx, rax
	jb	.L1644
	lea	rdx, .LC200[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 21
	mov	eax, 0
	call	sim_log_debug_clear
	mov	DWORD PTR -20[rbp], 0
	jmp	.L1645
.L1646:
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	ecx, eax
	lea	rdx, .LC202[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 22
	mov	eax, 0
	call	sim_log_debug_clear
	add	DWORD PTR -20[rbp], 1
.L1645:
	cmp	DWORD PTR -20[rbp], 19
	jle	.L1646
	lea	rdx, .LC148[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 23
	mov	eax, 0
	call	sim_log_debug_clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE646:
	.size	makePmfDistr, .-makePmfDistr
	.section	.rodata
.LC203:
	.string	"Noise is found to be %i\n"
.LC204:
	.string	"Noise_output"
	.align 8
.LC206:
	.string	"Setting most frequent key (%i): "
.LC207:
	.string	"HashZeroDebug"
.LC208:
	.string	"[%hhu] "
	.text
	.globl	sim_noise_dist
	.type	sim_noise_dist, @function
sim_noise_dist:
.LFB647:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	eax, edi
	mov	WORD PTR -68[rbp], ax
	pxor	xmm0, xmm0
	movss	DWORD PTR -44[rbp], xmm0
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+56]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -32[rbp], rax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, noiseData[rip]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 16[rax]
	lea	rax, noiseData[rip]
	add	rax, rdx
	add	rax, 4
	mov	QWORD PTR -16[rbp], rax
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR 40[rax]
	cmp	al, 1
	je	.L1658
	mov	DWORD PTR -48[rbp], 0
	jmp	.L1650
.L1651:
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	pxor	xmm0, xmm0
	movss	DWORD PTR 12[rax+rdx*4], xmm0
	add	DWORD PTR -48[rbp], 1
.L1650:
	cmp	DWORD PTR -48[rbp], 110
	jle	.L1651
	mov	DWORD PTR -48[rbp], 0
	jmp	.L1652
.L1653:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 32[rax]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	ecx, eax
	lea	rdx, .LC203[rip]
	lea	rsi, .LC204[rip]
	mov	edi, 17
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR 32[rax]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	add	eax, 115
	mov	BYTE PTR -49[rbp], al
	movzx	edx, BYTE PTR -49[rbp]
	mov	rax, QWORD PTR -8[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR 12[rax+rdx*4]
	movss	DWORD PTR -36[rbp], xmm0
	movss	xmm1, DWORD PTR -36[rbp]
	movss	xmm0, DWORD PTR .LC205[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR -36[rbp], xmm0
	movzx	edx, BYTE PTR -49[rbp]
	mov	rax, QWORD PTR -8[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR -36[rbp]
	movss	DWORD PTR 12[rax+rdx*4], xmm0
	add	DWORD PTR -48[rbp], 1
.L1652:
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 20[rax]
	cmp	DWORD PTR -48[rbp], eax
	jl	.L1653
	mov	DWORD PTR -48[rbp], 0
	jmp	.L1654
.L1655:
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR 12[rax+rdx*4]
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 20[rax]
	pxor	xmm1, xmm1
	cvtsi2ss	xmm1, eax
	divss	xmm0, xmm1
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	DWORD PTR 12[rax+rdx*4], xmm0
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR 12[rax+rdx*4]
	movss	xmm1, DWORD PTR -44[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR -44[rbp]
	movss	DWORD PTR 12[rax+rdx*4], xmm0
	add	DWORD PTR -48[rbp], 1
.L1654:
	cmp	DWORD PTR -48[rbp], 110
	jle	.L1655
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 40[rax], 1
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 20[rax]
	movsx	rdx, eax
	mov	rax, QWORD PTR FreqKeyNum[rip]
	cmp	rdx, rax
	jbe	.L1647
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR 20[rax]
	cdqe
	mov	QWORD PTR FreqKeyNum[rip], rax
	mov	rcx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	edx, 20
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rax, QWORD PTR FreqKeyNum[rip]
	mov	ecx, eax
	lea	rdx, .LC206[rip]
	lea	rsi, .LC207[rip]
	mov	edi, 18
	mov	eax, 0
	call	sim_log_debug
	mov	DWORD PTR -40[rbp], 0
	jmp	.L1656
.L1657:
	mov	eax, DWORD PTR -40[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	ecx, eax
	lea	rdx, .LC208[rip]
	lea	rsi, .LC207[rip]
	mov	edi, 19
	mov	eax, 0
	call	sim_log_debug_clear
	add	DWORD PTR -40[rbp], 1
.L1656:
	cmp	DWORD PTR -40[rbp], 19
	jle	.L1657
	lea	rdx, .LC148[rip]
	lea	rsi, .LC207[rip]
	mov	edi, 20
	mov	eax, 0
	call	sim_log_debug_clear
	jmp	.L1647
.L1658:
	nop
.L1647:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE647:
	.size	sim_noise_dist, .-sim_noise_dist
	.section	.rodata
	.align 8
.LC209:
	.string	"Adding noise value %i for %i of %i\n"
	.text
	.globl	sim_noise_trace_add
	.type	sim_noise_trace_add, @function
sim_noise_trace_add:
.LFB648:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	edx, esi
	mov	WORD PTR -20[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	rcx, QWORD PTR [rdx+rax]
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+72]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	rcx, rax
	jne	.L1660
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+72]
	mov	rax, QWORD PTR [rdx+rax]
	add	eax, eax
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+72]
	mov	rax, QWORD PTR [rdx+rax]
	mov	esi, eax
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rcx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, esi
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	free@PLT
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+72]
	mov	rdx, QWORD PTR [rdx+rax]
	movzx	eax, WORD PTR -20[rbp]
	lea	rcx, [rdx+rdx]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+72]
	mov	QWORD PTR [rdx+rax], rcx
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rdx, noiseData[rip+64]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rcx+rdx], rax
.L1660:
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rcx, QWORD PTR [rdx+rax]
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rdx, [rcx+rax]
	movzx	eax, BYTE PTR -24[rbp]
	mov	BYTE PTR [rdx], al
	movzx	edx, WORD PTR -20[rbp]
	movsx	rcx, edx
	mov	rax, rcx
	add	rax, rax
	add	rax, rcx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, noiseData[rip+80]
	mov	rax, QWORD PTR [rcx+rax]
	lea	rcx, 1[rax]
	movsx	rdx, edx
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	QWORD PTR [rdx+rax], rcx
	movsx	esi, BYTE PTR -24[rbp]
	movzx	ecx, WORD PTR -20[rbp]
	movzx	eax, WORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+80]
	mov	rax, QWORD PTR [rdx+rax]
	mov	r9d, esi
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, .LC209[rip]
	lea	rsi, .LC195[rip]
	mov	edi, 12
	mov	eax, 0
	call	sim_log_debug
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE648:
	.size	sim_noise_trace_add, .-sim_noise_trace_add
	.globl	search_noise_from_bin_num
	.type	search_noise_from_bin_num, @function
search_noise_from_bin_num:
.LFB649:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -20[rbp], edi
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sub	eax, 115
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE649:
	.size	search_noise_from_bin_num, .-search_noise_from_bin_num
	.section	.rodata
.LC210:
	.string	"Did not pattern match"
.LC211:
	.string	"Noise_c"
.LC212:
	.string	"(N)Noise\n"
.LC213:
	.string	"Defaulting to common hash.\n"
.LC214:
	.string	"Key = "
.LC215:
	.string	"Printing Key\n"
.LC216:
	.string	"noise_hash->numElements=%d\n"
.LC217:
	.string	"(E)Noise = %d\n"
.LC218:
	.string	"In case 1: %i of %i\n"
.LC219:
	.string	"Noise: %i\n"
.LC220:
	.string	"NoiseAudit"
.LC221:
	.string	"In case 2: %i of %i\n"
.LC222:
	.string	"IN:for i=%d\n"
.LC223:
	.string	"Selected Bin = %d -> "
.LC224:
	.string	"OUT:for i=%d\n"
	.text
	.globl	sim_noise_gen
	.type	sim_noise_gen, @function
sim_noise_gen:
.LFB650:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	eax, edi
	mov	WORD PTR -68[rbp], ax
	mov	DWORD PTR -44[rbp], 0
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+56]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -32[rbp], rax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, noiseData[rip]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 16[rax]
	lea	rax, noiseData[rip]
	add	rax, rdx
	add	rax, 4
	mov	QWORD PTR -16[rbp], rax
	call	RandomUniform
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -40[rbp], rax
	cmp	QWORD PTR -40[rbp], 0
	jne	.L1664
	lea	rdx, .LC210[rip]
	lea	rsi, .LC211[rip]
	mov	edi, 24
	mov	eax, 0
	call	sim_log_debug
	call	sim_noise_alarm
	mov	BYTE PTR -49[rbp], 0
	lea	rdx, .LC212[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 25
	mov	eax, 0
	call	sim_log_debug_clear
	lea	rdx, .LC213[rip]
	lea	rsi, .LC207[rip]
	mov	edi, 26
	mov	eax, 0
	call	sim_log_debug
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, 20
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	hashtable_search@PLT
	mov	QWORD PTR -40[rbp], rax
.L1664:
	lea	rdx, .LC214[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 27
	mov	eax, 0
	call	sim_log_debug_clear
	mov	DWORD PTR -48[rbp], 0
	jmp	.L1665
.L1666:
	mov	eax, DWORD PTR -48[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	ecx, eax
	lea	rdx, .LC202[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 28
	mov	eax, 0
	call	sim_log_debug_clear
	add	DWORD PTR -48[rbp], 1
.L1665:
	cmp	DWORD PTR -48[rbp], 19
	jle	.L1666
	lea	rdx, .LC148[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 29
	mov	eax, 0
	call	sim_log_debug_clear
	lea	rdx, .LC215[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 30
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR 20[rax]
	mov	ecx, eax
	lea	rdx, .LC216[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 31
	mov	eax, 0
	call	sim_log_debug
	mov	eax, DWORD PTR numTotal[rip]
	add	eax, 1
	mov	DWORD PTR numTotal[rip], eax
	mov	rax, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR 20[rax]
	cmp	eax, 1
	jne	.L1667
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 32[rax]
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -49[rbp], al
	movsx	eax, BYTE PTR -49[rbp]
	mov	ecx, eax
	lea	rdx, .LC217[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 32
	mov	eax, 0
	call	sim_log_debug_clear
	mov	eax, DWORD PTR numCase1[rip]
	add	eax, 1
	mov	DWORD PTR numCase1[rip], eax
	mov	edx, DWORD PTR numTotal[rip]
	mov	eax, DWORD PTR numCase1[rip]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC218[rip]
	lea	rsi, .LC211[rip]
	mov	edi, 33
	mov	eax, 0
	call	sim_log_debug
	movsx	eax, BYTE PTR -49[rbp]
	mov	ecx, eax
	lea	rdx, .LC219[rip]
	lea	rsi, .LC220[rip]
	mov	edi, 34
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -49[rbp]
	jmp	.L1668
.L1667:
	mov	eax, DWORD PTR numCase2[rip]
	add	eax, 1
	mov	DWORD PTR numCase2[rip], eax
	mov	edx, DWORD PTR numTotal[rip]
	mov	eax, DWORD PTR numCase2[rip]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC221[rip]
	lea	rsi, .LC211[rip]
	mov	edi, 35
	mov	eax, 0
	call	sim_log_debug
	mov	DWORD PTR -48[rbp], 0
	jmp	.L1669
.L1676:
	mov	eax, DWORD PTR -48[rbp]
	mov	ecx, eax
	lea	rdx, .LC222[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 36
	mov	eax, 0
	call	sim_log_debug
	cmp	DWORD PTR -48[rbp], 0
	jne	.L1670
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR 12[rax+rdx*4]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	jb	.L1671
	mov	eax, DWORD PTR -48[rbp]
	mov	DWORD PTR -44[rbp], eax
	mov	eax, DWORD PTR -48[rbp]
	add	eax, 1
	mov	ecx, eax
	lea	rdx, .LC223[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 37
	mov	eax, 0
	call	sim_log_debug_clear
	jmp	.L1673
.L1670:
	mov	eax, DWORD PTR -48[rbp]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -40[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR 12[rax+rdx*4]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	comisd	xmm0, xmm1
	jbe	.L1671
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	add	rdx, 8
	movss	xmm0, DWORD PTR 12[rax+rdx*4]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	jb	.L1671
	mov	eax, DWORD PTR -48[rbp]
	mov	DWORD PTR -44[rbp], eax
	mov	eax, DWORD PTR -48[rbp]
	add	eax, 1
	mov	ecx, eax
	lea	rdx, .LC223[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 38
	mov	eax, 0
	call	sim_log_debug_clear
	jmp	.L1673
.L1671:
	add	DWORD PTR -48[rbp], 1
.L1669:
	cmp	DWORD PTR -48[rbp], 109
	jle	.L1676
.L1673:
	mov	eax, DWORD PTR -48[rbp]
	mov	ecx, eax
	lea	rdx, .LC224[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 39
	mov	eax, 0
	call	sim_log_debug
	mov	eax, DWORD PTR -48[rbp]
	sub	eax, 115
	mov	BYTE PTR -49[rbp], al
	movsx	eax, BYTE PTR -49[rbp]
	mov	ecx, eax
	lea	rdx, .LC219[rip]
	lea	rsi, .LC220[rip]
	mov	edi, 40
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -49[rbp]
.L1668:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE650:
	.size	sim_noise_gen, .-sim_noise_gen
	.type	RandomUniform, @function
RandomUniform:
.LFB651:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, DWORD PTR test[rip]
	test	eax, eax
	jne	.L1681
	call	sim_random
	movsx	rdx, eax
	imul	rdx, rdx, -2048845677
	shr	rdx, 32
	add	edx, eax
	sar	edx, 14
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	mov	DWORD PTR -16[rbp], edx
	mov	edx, DWORD PTR -16[rbp]
	imul	edx, edx, 31329
	sub	eax, edx
	mov	DWORD PTR -16[rbp], eax
	call	sim_random
	movsx	rdx, eax
	imul	rdx, rdx, -1955736387
	shr	rdx, 32
	add	edx, eax
	sar	edx, 14
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	mov	DWORD PTR -12[rbp], edx
	mov	edx, DWORD PTR -12[rbp]
	imul	edx, edx, 30082
	sub	eax, edx
	mov	DWORD PTR -12[rbp], eax
	mov	edx, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR -16[rbp]
	mov	esi, edx
	mov	edi, eax
	call	RandomInitialise
.L1681:
	mov	eax, DWORD PTR i97[rip]
	sub	eax, 1
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, randU[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR j97[rip]
	sub	eax, 1
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, randU[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	jb	.L1682
	movsd	xmm1, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC127[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
.L1682:
	mov	eax, DWORD PTR i97[rip]
	sub	eax, 1
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, randU[rip]
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR i97[rip]
	sub	eax, 1
	mov	DWORD PTR i97[rip], eax
	mov	eax, DWORD PTR i97[rip]
	test	eax, eax
	jne	.L1684
	mov	DWORD PTR i97[rip], 97
.L1684:
	mov	eax, DWORD PTR j97[rip]
	sub	eax, 1
	mov	DWORD PTR j97[rip], eax
	mov	eax, DWORD PTR j97[rip]
	test	eax, eax
	jne	.L1685
	mov	DWORD PTR j97[rip], 97
.L1685:
	movsd	xmm0, QWORD PTR randC[rip]
	movsd	xmm1, QWORD PTR randCD[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR randC[rip], xmm0
	movsd	xmm1, QWORD PTR randC[rip]
	pxor	xmm0, xmm0
	comisd	xmm0, xmm1
	jbe	.L1686
	movsd	xmm1, QWORD PTR randC[rip]
	movsd	xmm0, QWORD PTR randCM[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR randC[rip], xmm0
.L1686:
	movsd	xmm1, QWORD PTR randC[rip]
	movsd	xmm0, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L1688
	movsd	xmm1, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC127[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
.L1688:
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE651:
	.size	RandomUniform, .-RandomUniform
	.section	.rodata
	.align 8
.LC225:
	.string	"Tried to generate noise from an uninitialized radio model of node %hu.\n"
.LC226:
	.string	"TOSSIM"
.LC227:
	.string	"delta_t = %d\n"
.LC228:
	.string	"Generated noise of zero.\n"
	.text
	.globl	sim_noise_generate
	.type	sim_noise_generate, @function
sim_noise_generate:
.LFB652:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	eax, edi
	mov	QWORD PTR -80[rbp], rsi
	mov	WORD PTR -68[rbp], ax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+48]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -32[rbp], rax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+88]
	movzx	eax, BYTE PTR [rdx+rax]
	test	al, al
	jne	.L1695
	movzx	eax, WORD PTR -68[rbp]
	mov	ecx, eax
	lea	rdx, .LC225[rip]
	lea	rsi, .LC226[rip]
	mov	edi, 41
	mov	eax, 0
	call	sim_log_error
	mov	eax, 127
	jmp	.L1696
.L1695:
	cmp	QWORD PTR -80[rbp], 19
	ja	.L1697
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rdx, noiseData[rip+48]
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	search_bin_num
	mov	edx, eax
	movzx	eax, WORD PTR -68[rbp]
	mov	ecx, edx
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, QWORD PTR -80[rbp]
	add	rdx, rax
	lea	rax, noiseData[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rdx, rax
	movzx	eax, WORD PTR -68[rbp]
	movzx	edx, BYTE PTR [rdx]
	movsx	rcx, eax
	mov	rax, rcx
	add	rax, rax
	add	rax, rcx
	sal	rax, 5
	mov	rcx, rax
	lea	rax, noiseData[rip+40]
	mov	BYTE PTR [rcx+rax], dl
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+64]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	jmp	.L1696
.L1697:
	cmp	QWORD PTR -32[rbp], 0
	jne	.L1698
	mov	rax, QWORD PTR -80[rbp]
	sub	rax, 19
	mov	QWORD PTR -40[rbp], rax
	jmp	.L1699
.L1698:
	mov	rax, QWORD PTR -80[rbp]
	sub	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -40[rbp], rax
.L1699:
	mov	rax, QWORD PTR -40[rbp]
	mov	rcx, rax
	lea	rdx, .LC227[rip]
	lea	rsi, .LC201[rip]
	mov	edi, 42
	mov	eax, 0
	call	sim_log_debug_clear
	cmp	QWORD PTR -40[rbp], 0
	jne	.L1700
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+40]
	movzx	eax, BYTE PTR [rdx+rax]
	mov	BYTE PTR -49[rbp], al
	jmp	.L1701
.L1700:
	mov	rax, QWORD PTR -40[rbp]
	mov	edi, eax
	call	malloc@PLT
	mov	QWORD PTR -24[rbp], rax
	mov	QWORD PTR -48[rbp], 0
	jmp	.L1702
.L1703:
	movzx	eax, WORD PTR -68[rbp]
	mov	rcx, QWORD PTR -24[rbp]
	mov	rdx, QWORD PTR -48[rbp]
	lea	rbx, [rcx+rdx]
	mov	edi, eax
	call	sim_noise_gen
	mov	BYTE PTR [rbx], al
	movzx	eax, WORD PTR -68[rbp]
	mov	edi, eax
	call	arrangeKey
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	mov	edi, eax
	call	search_bin_num
	mov	edx, eax
	movzx	eax, WORD PTR -68[rbp]
	mov	ecx, edx
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, noiseData[rip+19]
	mov	BYTE PTR [rdx+rax], cl
	add	QWORD PTR -48[rbp], 1
.L1702:
	mov	rax, QWORD PTR -48[rbp]
	cmp	rax, QWORD PTR -40[rbp]
	jb	.L1703
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, -1[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -49[rbp], al
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rdx, noiseData[rip+40]
	movzx	eax, BYTE PTR -49[rbp]
	mov	BYTE PTR [rcx+rdx], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	free@PLT
.L1701:
	movzx	eax, WORD PTR -68[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 5
	mov	rcx, rax
	lea	rdx, noiseData[rip+48]
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	cmp	BYTE PTR -49[rbp], 0
	jne	.L1704
	lea	rdx, .LC228[rip]
	lea	rsi, .LC207[rip]
	mov	edi, 43
	mov	eax, 0
	call	sim_log_debug
.L1704:
	movzx	eax, BYTE PTR -49[rbp]
.L1696:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE652:
	.size	sim_noise_generate, .-sim_noise_generate
	.section	.rodata
.LC229:
	.string	"ERROR (%i): "
	.text
	.type	sim_log_error, @function
sim_log_error:
.LFB653:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 256
	mov	QWORD PTR -240[rbp], rsi
	mov	QWORD PTR -248[rbp], rdx
	mov	QWORD PTR -152[rbp], rcx
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -136[rbp], r9
	test	al, al
	je	.L1706
	movaps	XMMWORD PTR -128[rbp], xmm0
	movaps	XMMWORD PTR -112[rbp], xmm1
	movaps	XMMWORD PTR -96[rbp], xmm2
	movaps	XMMWORD PTR -80[rbp], xmm3
	movaps	XMMWORD PTR -64[rbp], xmm4
	movaps	XMMWORD PTR -48[rbp], xmm5
	movaps	XMMWORD PTR -32[rbp], xmm6
	movaps	XMMWORD PTR -16[rbp], xmm7
.L1706:
	mov	eax, edi
	mov	WORD PTR -228[rbp], ax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -184[rbp], rax
	xor	eax, eax
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	jne	.L1707
	movzx	eax, WORD PTR -228[rbp]
	mov	rdx, QWORD PTR -240[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	fillInOutput
.L1707:
	mov	DWORD PTR -220[rbp], 0
	jmp	.L1708
.L1709:
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip+8]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -220[rbp]
	cdqe
	sal	rax, 3
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -216[rbp], rax
	mov	DWORD PTR -208[rbp], 24
	mov	DWORD PTR -204[rbp], 48
	lea	rax, 16[rbp]
	mov	QWORD PTR -200[rbp], rax
	lea	rax, -176[rbp]
	mov	QWORD PTR -192[rbp], rax
	call	sim_node
	mov	edx, eax
	mov	rax, QWORD PTR -216[rbp]
	lea	rsi, .LC229[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	lea	rdx, -208[rbp]
	mov	rcx, QWORD PTR -248[rbp]
	mov	rax, QWORD PTR -216[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	vfprintf@PLT
	mov	rax, QWORD PTR -216[rbp]
	mov	rdi, rax
	call	fflush@PLT
	add	DWORD PTR -220[rbp], 1
.L1708:
	movzx	eax, WORD PTR -228[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, outputs[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cmp	DWORD PTR -220[rbp], eax
	jl	.L1709
	nop
	mov	rax, QWORD PTR -184[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1710
	call	__stack_chk_fail@PLT
.L1710:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE653:
	.size	sim_log_error, .-sim_log_error
	.globl	sim_packet_set_source
	.type	sim_packet_set_source, @function
sim_packet_set_source:
.LFB654:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, WORD PTR -28[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 2
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE654:
	.size	sim_packet_set_source, .-sim_packet_set_source
	.globl	sim_packet_source
	.type	sim_packet_source, @function
sim_packet_source:
.LFB655:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE655:
	.size	sim_packet_source, .-sim_packet_source
	.globl	sim_packet_set_destination
	.type	sim_packet_set_destination, @function
sim_packet_set_destination:
.LFB656:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	edx, WORD PTR -28[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint16
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE656:
	.size	sim_packet_set_destination, .-sim_packet_set_destination
	.globl	sim_packet_destination
	.type	sim_packet_destination, @function
sim_packet_destination:
.LFB657:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE657:
	.size	sim_packet_destination, .-sim_packet_destination
	.globl	sim_packet_set_length
	.type	sim_packet_set_length, @function
sim_packet_set_length:
.LFB658:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, BYTE PTR -28[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 4
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE658:
	.size	sim_packet_set_length, .-sim_packet_set_length
	.globl	sim_packet_length
	.type	sim_packet_length, @function
sim_packet_length:
.LFB659:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 4
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	eax, al
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE659:
	.size	sim_packet_length, .-sim_packet_length
	.globl	sim_packet_set_type
	.type	sim_packet_set_type, @function
sim_packet_set_type:
.LFB660:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, BYTE PTR -28[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 6
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE660:
	.size	sim_packet_set_type, .-sim_packet_set_type
	.globl	sim_packet_type
	.type	sim_packet_type, @function
sim_packet_type:
.LFB661:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getHeader
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 6
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE661:
	.size	sim_packet_type, .-sim_packet_type
	.globl	sim_packet_data
	.type	sim_packet_data, @function
sim_packet_data:
.LFB662:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 7
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE662:
	.size	sim_packet_data, .-sim_packet_data
	.globl	sim_packet_set_strength
	.type	sim_packet_set_strength, @function
sim_packet_set_strength:
.LFB663:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	add	rax, 45
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, WORD PTR -28[rbp]
	movsx	edx, al
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_int8
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE663:
	.size	sim_packet_set_strength, .-sim_packet_set_strength
	.section	.rodata
	.align 8
.LC230:
	.string	"sim_packet.c: Delivering packet %p to %i at %llu\n"
	.text
	.globl	sim_packet_deliver
	.type	sim_packet_deliver, @function
sim_packet_deliver:
.LFB664:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -4[rbp], edi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	call	sim_time
	cmp	QWORD PTR -24[rbp], rax
	jge	.L1727
	call	sim_time
	mov	QWORD PTR -24[rbp], rax
.L1727:
	mov	rcx, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -4[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	r9, rcx
	mov	r8d, edx
	mov	rcx, rax
	lea	rdx, .LC230[rip]
	lea	rsi, .LC8[rip]
	mov	edi, 45
	mov	eax, 0
	call	sim_log_debug
	mov	rdx, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR -4[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	active_message_deliver
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE664:
	.size	sim_packet_deliver, .-sim_packet_deliver
	.globl	active_message_deliver
	.type	active_message_deliver, @function
active_message_deliver:
.LFB665:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	rdx, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -20[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TossimActiveMessageC$allocate_deliver_event
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE665:
	.size	active_message_deliver, .-active_message_deliver
	.section	.rodata
	.align 8
.LC231:
	.string	"Received active message (%p) of type %hhu and length %hhu for me @ %s.\n"
.LC232:
	.string	"AM"
	.align 8
.LC233:
	.string	"Snooped on active message of type %hhu and length %hhu for %hu @ %s.\n"
	.text
	.type	TossimActiveMessageC$Model$receive, @function
TossimActiveMessageC$Model$receive:
.LFB666:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 14, -24
	.cfi_offset 13, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	QWORD PTR -56[rbp], rdi
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rcx, QWORD PTR -56[rbp]
	mov	edx, 49
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$payloadLength
	mov	BYTE PTR -41[rbp], al
	call	TossimActiveMessageC$Packet$maxPayloadLength
	movzx	ebx, al
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	esi, ebx
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$getPayload
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$isForMe
	test	al, al
	je	.L1730
	call	sim_time_string
	mov	rbx, rax
	movzx	r13d, BYTE PTR -41[rbp]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	movzx	r12d, al
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	sub	rsp, 8
	push	rbx
	mov	r9d, r13d
	mov	r8d, r12d
	mov	rcx, rax
	lea	rdx, .LC231[rip]
	lea	rsi, .LC232[rip]
	mov	edi, 106
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	movzx	r13d, BYTE PTR -41[rbp]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	r12, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	movzx	ebx, al
	call	sim_node
	mov	r14, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	ecx, r13d
	mov	rdx, rax
	mov	rsi, r12
	mov	edi, ebx
	call	TossimActiveMessageC$Receive$receive
	lea	rcx, 0[0+r14*8]
	lea	rdx, TossimActiveMessageC$bufferPointer[rip]
	mov	QWORD PTR [rcx+rdx], rax
	jmp	.L1732
.L1730:
	call	sim_time_string
	mov	rbx, rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$destination
	movzx	r13d, ax
	movzx	r12d, BYTE PTR -41[rbp]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	movzx	eax, al
	sub	rsp, 8
	push	rbx
	mov	r9d, r13d
	mov	r8d, r12d
	mov	ecx, eax
	lea	rdx, .LC233[rip]
	lea	rsi, .LC232[rip]
	mov	edi, 107
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	movzx	r13d, BYTE PTR -41[rbp]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	r12, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$type
	movzx	ebx, al
	call	sim_node
	mov	r14, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	ecx, r13d
	mov	rdx, rax
	mov	rsi, r12
	mov	edi, ebx
	call	TossimActiveMessageC$Snoop$receive
	lea	rcx, 0[0+r14*8]
	lea	rdx, TossimActiveMessageC$bufferPointer[rip]
	mov	QWORD PTR [rcx+rdx], rax
.L1732:
	nop
	lea	rsp, -32[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE666:
	.size	TossimActiveMessageC$Model$receive, .-TossimActiveMessageC$Model$receive
	.type	TossimActiveMessageC$AMPacket$isForMe, @function
TossimActiveMessageC$AMPacket$isForMe:
.LFB667:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$destination
	mov	ebx, eax
	call	TossimActiveMessageC$AMPacket$address
	cmp	bx, ax
	je	.L1734
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$AMPacket$destination
	cmp	ax, -1
	jne	.L1735
.L1734:
	mov	eax, 1
	jmp	.L1736
.L1735:
	mov	eax, 0
.L1736:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE667:
	.size	TossimActiveMessageC$AMPacket$isForMe, .-TossimActiveMessageC$AMPacket$isForMe
	.type	TossimActiveMessageC$AMPacket$destination, @function
TossimActiveMessageC$AMPacket$destination:
.LFB668:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE668:
	.size	TossimActiveMessageC$AMPacket$destination, .-TossimActiveMessageC$AMPacket$destination
	.type	ActiveMessageAddressC$amAddress, @function
ActiveMessageAddressC$amAddress:
.LFB669:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, ActiveMessageAddressC$set[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1741
	call	sim_node
	mov	rdx, rax
	movzx	eax, WORD PTR TOS_NODE_ID[rip]
	lea	rcx, [rdx+rdx]
	lea	rdx, ActiveMessageAddressC$addr[rip]
	mov	WORD PTR [rcx+rdx], ax
	call	sim_node
	lea	rdx, ActiveMessageAddressC$set[rip]
	mov	BYTE PTR [rax+rdx], 1
.L1741:
	call	sim_node
	lea	rdx, [rax+rax]
	lea	rax, ActiveMessageAddressC$addr[rip]
	movzx	eax, WORD PTR [rdx+rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE669:
	.size	ActiveMessageAddressC$amAddress, .-ActiveMessageAddressC$amAddress
	.type	TossimActiveMessageC$AMPacket$type, @function
TossimActiveMessageC$AMPacket$type:
.LFB670:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 6
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE670:
	.size	TossimActiveMessageC$AMPacket$type, .-TossimActiveMessageC$AMPacket$type
	.section	.rodata
	.align 8
.LC234:
	.string	"PE: Can't add receive/snoop packet, buffer is full!\n"
	.align 8
.LC235:
	.string	"PE: Can't add receive/snoop packet, pool is empty!\n"
	.align 8
.LC236:
	.string	"PE: Free packet at %u wasn't free!\n"
	.align 8
.LC237:
	.string	"PE: Adding receive/snoop packet at index %u\n"
	.text
	.type	PacketEngineP$SubReceive$receive, @function
PacketEngineP$SubReceive$receive:
.LFB671:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	QWORD PTR -48[rbp], rsi
	mov	QWORD PTR -56[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	call	sim_node
	lea	rdx, PacketEngineP$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1746
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L1747
.L1746:
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 40
	jne	.L1748
	lea	rdx, .LC234[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 123
	mov	eax, 0
	call	sim_log_error
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L1747
.L1748:
	call	PacketEngineP$ReceivePool$empty
	test	al, al
	je	.L1749
	lea	rdx, .LC235[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 124
	mov	eax, 0
	call	sim_log_error
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L1747
.L1749:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 1
	je	.L1750
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC236[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 125
	mov	eax, 0
	call	sim_log_error
	mov	rax, QWORD PTR -48[rbp]
	jmp	.L1747
.L1750:
	call	PacketEngineP$ReceivePool$get
	mov	QWORD PTR -24[rbp], rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC237[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 126
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	or	ecx, 32
	mov	BYTE PTR [rdx+rax], cl
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	PacketEngineP$addPacket
	mov	rax, QWORD PTR -24[rbp]
.L1747:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE671:
	.size	PacketEngineP$SubReceive$receive, .-PacketEngineP$SubReceive$receive
	.section	.rodata
	.align 8
.LC238:
	.string	"PE: Moved nextAddedPkt from %u"
	.text
	.type	PacketEngineP$addPacket, @function
PacketEngineP$addPacket:
.LFB672:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rcx, rax
	lea	rdx, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, 2
	mov	BYTE PTR [rdx+rax], cl
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 40
	jne	.L1752
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC238[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 172
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	edx, BYTE PTR [rbx+rdx]
	lea	rcx, PacketEngineP$nextAddedPkt[rip]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC26[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 173
	mov	eax, 0
	call	sim_log_debug_clear
	call	PacketEngineP$printIndices
.L1752:
	call	PacketEngineP$moveFreeIndex
	call	PacketEngineP$msgAdded$postTask
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE672:
	.size	PacketEngineP$addPacket, .-PacketEngineP$addPacket
	.section	.rodata
	.align 8
.LC239:
	.string	"PE: Free: %u, Added: %u, Wait: %u, Action: %u\n"
	.align 8
.LC240:
	.string	"PEBS: Send Buffer: %hhu of %hhu\n"
.LC241:
	.string	"PEBufferSize"
	.align 8
.LC242:
	.string	"PEBS: Receive Buffer: %hhu of %hhu\n"
	.text
	.type	PacketEngineP$printIndices, @function
PacketEngineP$printIndices:
.LFB673:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	push	rbx
	sub	rsp, 8
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	.cfi_offset 3, -40
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	ebx, al
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	r13d, al
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	r12d, al
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	sub	rsp, 8
	push	rbx
	mov	r9d, r13d
	mov	r8d, r12d
	mov	ecx, eax
	lea	rdx, .LC239[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 169
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	call	PacketEngineP$SendQueue$size
	movzx	eax, al
	mov	r8d, 20
	mov	ecx, eax
	lea	rdx, .LC240[rip]
	lea	rsi, .LC241[rip]
	mov	edi, 170
	mov	eax, 0
	call	sim_log_debug
	call	PacketEngineP$ReceivePool$size
	movzx	edx, al
	mov	eax, 20
	sub	eax, edx
	mov	r8d, 20
	mov	ecx, eax
	lea	rdx, .LC242[rip]
	lea	rsi, .LC241[rip]
	mov	edi, 171
	mov	eax, 0
	call	sim_log_debug
	nop
	lea	rsp, -24[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE673:
	.size	PacketEngineP$printIndices, .-PacketEngineP$printIndices
	.section	.rodata
.LC243:
	.string	"PE: Index updated\n"
	.align 8
.LC244:
	.string	"PE: No packets with state %hhu found\n"
	.text
	.type	PacketEngineP$moveIndex, @function
PacketEngineP$moveIndex:
.LFB674:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -1[rbp], al
	mov	BYTE PTR -2[rbp], 0
	jmp	.L1755
.L1758:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
	movzx	ecx, BYTE PTR -1[rbp]
	movzx	edx, cl
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 3
	add	eax, edx
	lea	edx, 0[0+rax*4]
	add	eax, edx
	shr	ax, 8
	mov	edx, eax
	shr	dl, 5
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 3
	sub	ecx, eax
	mov	edx, ecx
	mov	BYTE PTR -1[rbp], dl
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	movzx	edx, al
	movzx	eax, BYTE PTR -28[rbp]
	and	eax, edx
	test	eax, eax
	je	.L1756
	lea	rdx, .LC243[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 167
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -24[rbp]
	movzx	edx, BYTE PTR -1[rbp]
	mov	BYTE PTR [rax], dl
	call	PacketEngineP$printIndices
	jmp	.L1754
.L1756:
	movzx	eax, BYTE PTR -2[rbp]
	add	eax, 1
	mov	BYTE PTR -2[rbp], al
.L1755:
	cmp	BYTE PTR -2[rbp], 39
	jbe	.L1758
	movzx	eax, BYTE PTR -28[rbp]
	mov	ecx, eax
	lea	rdx, .LC244[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 168
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR [rax], 40
	call	PacketEngineP$printIndices
.L1754:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE674:
	.size	PacketEngineP$moveIndex, .-PacketEngineP$moveIndex
	.section	.rodata
.LC245:
	.string	"Posting task %hhu.\n"
	.align 8
.LC246:
	.string	"Posting task %hhu, but already posted.\n"
	.text
	.type	SimSchedulerBasicP$TaskBasic$postTask, @function
SimSchedulerBasicP$TaskBasic$postTask:
.LFB675:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -2[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SimSchedulerBasicP$pushTask
	test	al, al
	je	.L1760
	mov	eax, 0
	jmp	.L1761
.L1760:
	mov	eax, 5
.L1761:
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -2[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	cmp	BYTE PTR -1[rbp], 0
	jne	.L1762
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC245[rip]
	lea	rsi, .LC10[rip]
	mov	edi, 99
	mov	eax, 0
	call	sim_log_debug
	call	SimSchedulerBasicP$sim_scheduler_submit_event
	jmp	.L1763
.L1762:
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC246[rip]
	lea	rsi, .LC10[rip]
	mov	edi, 100
	mov	eax, 0
	call	sim_log_debug
.L1763:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE675:
	.size	SimSchedulerBasicP$TaskBasic$postTask, .-SimSchedulerBasicP$TaskBasic$postTask
	.type	SimSchedulerBasicP$sim_scheduler_submit_event, @function
SimSchedulerBasicP$sim_scheduler_submit_event:
.LFB676:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	call	sim_node
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_pending[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1767
	call	sim_time
	mov	rbx, rax
	call	SimSchedulerBasicP$sim_config_task_latency
	movsx	r12, eax
	call	sim_node
	mov	rdx, rax
	lea	rcx, [rbx+r12]
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, SimSchedulerBasicP$sim_scheduler_event[rip]
	mov	QWORD PTR [rdx+rax], rcx
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event[rip]
	add	rax, rdx
	mov	rdi, rax
	call	sim_queue_insert
	call	sim_node
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_pending[rip]
	mov	BYTE PTR [rax+rdx], 1
.L1767:
	nop
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE676:
	.size	SimSchedulerBasicP$sim_scheduler_submit_event, .-SimSchedulerBasicP$sim_scheduler_submit_event
	.globl	sim_packet_max_length
	.type	sim_packet_max_length, @function
sim_packet_max_length:
.LFB677:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, 36
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE677:
	.size	sim_packet_max_length, .-sim_packet_max_length
	.globl	sim_packet_allocate
	.type	sim_packet_allocate, @function
sim_packet_allocate:
.LFB678:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edi, 49
	call	malloc@PLT
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE678:
	.size	sim_packet_allocate, .-sim_packet_allocate
	.section	.rodata
	.align 8
.LC247:
	.string	"sim_packet.c: Freeing packet %p\n"
	.text
	.globl	sim_packet_free
	.type	sim_packet_free, @function
sim_packet_free:
.LFB679:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	lea	rdi, .LC247[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	free@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE679:
	.size	sim_packet_free, .-sim_packet_free
	.section	.rodata
	.align 8
.LC248:
	.string	"Mote %li signaling boot at time %s.\n"
.LC249:
	.string	"SimMainP"
	.text
	.globl	sim_main_start_mote
	.type	sim_main_start_mote, @function
sim_main_start_mote:
.LFB680:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 160
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -145[rbp], al
	call	SimMainP$Scheduler$init
	call	SimMainP$PlatformInit$init
	nop
.L1774:
	call	SimMainP$Scheduler$runNextTask
	test	al, al
	jne	.L1774
	call	SimMainP$SoftwareInit$init
	nop
.L1775:
	call	SimMainP$Scheduler$runNextTask
	test	al, al
	jne	.L1775
	movzx	eax, BYTE PTR -145[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	call	__nesc_enable_interrupt
	lea	rax, -144[rbp]
	mov	esi, 128
	mov	rdi, rax
	call	sim_print_now
	call	sim_node
	lea	rdx, -144[rbp]
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC248[rip]
	lea	rsi, .LC249[rip]
	mov	edi, 95
	mov	eax, 0
	call	sim_log_debug
	call	SimMainP$Boot$booted
	mov	eax, 0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L1777
	call	__stack_chk_fail@PLT
.L1777:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE680:
	.size	sim_main_start_mote, .-sim_main_start_mote
	.section	.rodata
	.align 8
.LC250:
	.string	"Told to run next task, but no task to run.\n"
.LC251:
	.string	"Running task %hhu.\n"
	.text
	.type	SimSchedulerBasicP$Scheduler$runNextTask, @function
SimSchedulerBasicP$Scheduler$runNextTask:
.LFB681:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -3[rbp], al
	call	SimSchedulerBasicP$popTask
	mov	BYTE PTR -2[rbp], al
	cmp	BYTE PTR -2[rbp], -1
	jne	.L1779
	lea	rdx, .LC250[rip]
	lea	rsi, .LC10[rip]
	mov	edi, 97
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -1[rbp], 0
	movzx	eax, BYTE PTR -3[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	movzx	eax, BYTE PTR -1[rbp]
	jmp	.L1780
.L1779:
	movzx	eax, BYTE PTR -3[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	movzx	eax, BYTE PTR -2[rbp]
	mov	ecx, eax
	lea	rdx, .LC251[rip]
	lea	rsi, .LC10[rip]
	mov	edi, 98
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -2[rbp]
	mov	edi, eax
	call	SimSchedulerBasicP$TaskBasic$runTask
	mov	eax, 1
.L1780:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE681:
	.size	SimSchedulerBasicP$Scheduler$runNextTask, .-SimSchedulerBasicP$Scheduler$runNextTask
	.section	.rodata
.LC252:
	.string	"PE: Retrying send for pkt %u\n"
.LC253:
	.string	"PE: Send done for pkt %u\n"
	.align 8
.LC254:
	.string	"PE: Send moving to wait for pkt %u\n"
	.text
	.type	PacketEngineP$SubSend$sendDone, @function
PacketEngineP$SubSend$sendDone:
.LFB682:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -48[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	movzx	ebx, BYTE PTR -40[rbp]
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	esi, al
	movzx	eax, BYTE PTR -36[rbp]
	mov	rdx, QWORD PTR -48[rbp]
	mov	ecx, ebx
	mov	edi, eax
	call	PacketEngineP$PacketEngine$sendDone
	mov	BYTE PTR -17[rbp], al
	call	PacketEngineP$SendState$toIdle
	cmp	BYTE PTR -17[rbp], 1
	jne	.L1782
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC252[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 127
	mov	eax, 0
	call	sim_log_debug
	mov	esi, 8
	mov	edi, 7
	call	PacketEngineP$startSendBackoff
	jmp	.L1787
.L1782:
	cmp	BYTE PTR -17[rbp], 0
	jne	.L1784
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC253[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 128
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edi, eax
	call	PacketEngineP$removePacket
	jmp	.L1785
.L1784:
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC254[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 129
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, 4
	mov	BYTE PTR [rdx+rax], cl
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC25[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 130
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	edx, BYTE PTR [rbx+rdx]
	lea	rcx, PacketEngineP$nextWaitPkt[rip]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC26[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 131
	mov	eax, 0
	call	sim_log_debug_clear
	call	PacketEngineP$printIndices
.L1785:
	mov	esi, 16
	mov	edi, 15
	call	PacketEngineP$startSendBackoff
	call	PacketEngineP$moveActionIndex
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L1786
	call	PacketEngineP$msgAction$postTask
	jmp	.L1787
.L1786:
	lea	rdx, .LC44[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 132
	mov	eax, 0
	call	sim_log_debug
.L1787:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE682:
	.size	PacketEngineP$SubSend$sendDone, .-PacketEngineP$SubSend$sendDone
	.section	.rodata
	.align 8
.LC255:
	.string	"DSR: Pkt %u: Engine send failed, unknown error!\n"
	.align 8
.LC256:
	.string	"DSR: Pkt %u: Unicast send wasn't acked, "
.LC257:
	.string	"retrying!\n"
.LC258:
	.string	"route error!\n"
	.align 8
.LC259:
	.string	"DSR: Pkt %u: Removing broken link %u -> %u\n"
	.align 8
.LC260:
	.string	"DSR: Pkt %u: Unicast send successful\n"
	.text
	.type	DsrControlP$0$SingleDsrPacketEngine$sendDone, @function
DsrControlP$0$SingleDsrPacketEngine$sendDone:
.LFB683:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	cmp	BYTE PTR -24[rbp], 1
	jne	.L1789
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC255[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 289
	mov	eax, 0
	call	sim_log_error
	jmp	.L1790
.L1789:
	cmp	BYTE PTR -24[rbp], 0
	jne	.L1790
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	cmp	ax, -1
	je	.L1790
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$wasAcked
	test	al, al
	jne	.L1790
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC256[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 290
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, [rax+rcx]
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	test	al, al
	je	.L1791
	lea	rdx, .LC257[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 291
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -20[rbp]
	movsx	rsi, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rsi, rax
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rsi
	movzx	eax, BYTE PTR [rax]
	lea	esi, -1[rax]
	movsx	rcx, ecx
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, [rax+rcx]
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], sil
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$requestAck
	mov	eax, 1
	jmp	.L1792
.L1791:
	lea	rdx, .LC258[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 292
	mov	eax, 0
	call	sim_log_debug_clear
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	ebx, ax
	call	DsrControlP$0$AMPacket$address
	movzx	edx, ax
	movzx	eax, BYTE PTR -20[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC259[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 293
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	ebx, al
	call	DsrControlP$0$AMPacket$address
	movzx	eax, al
	mov	edx, 1
	mov	esi, ebx
	mov	edi, eax
	call	DsrControlP$0$RouteCache$removeLink
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$type
	cmp	al, 48
	jne	.L1790
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$set
	call	DsrControlP$0$composePkt$postTask
	mov	eax, 2
	jmp	.L1792
.L1790:
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC260[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 294
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, 0
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$upperSendDone
	mov	eax, 0
.L1792:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE683:
	.size	DsrControlP$0$SingleDsrPacketEngine$sendDone, .-DsrControlP$0$SingleDsrPacketEngine$sendDone
	.type	TossimPacketModelC$PacketAcknowledgements$requestAck, @function
TossimPacketModelC$PacketAcknowledgements$requestAck:
.LFB684:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$getMetadata
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_hton_uint8
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE684:
	.size	TossimPacketModelC$PacketAcknowledgements$requestAck, .-TossimPacketModelC$PacketAcknowledgements$requestAck
	.type	SimpleLinkCacheP$RouteCache$removeLink, @function
SimpleLinkCacheP$RouteCache$removeLink:
.LFB685:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -4[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$Graph$remove
	cmp	BYTE PTR -12[rbp], 0
	je	.L1796
	movzx	edx, BYTE PTR -4[rbp]
	movzx	eax, BYTE PTR -8[rbp]
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$Graph$remove
.L1796:
	call	SimpleLinkCacheP$AMPacket$address
	movzx	eax, al
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$buildTree
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE685:
	.size	SimpleLinkCacheP$RouteCache$removeLink, .-SimpleLinkCacheP$RouteCache$removeLink
	.section	.rodata
.LC261:
	.string	"GS: Removing edge %u -> %u\n"
.LC262:
	.string	"GraphSparseP"
	.align 8
.LC263:
	.string	"GS: At least one vertex too large!\n"
.LC264:
	.string	"GS: Edge not found!\n"
	.text
	.type	GraphSparseP$0$Graph$remove, @function
GraphSparseP$0$Graph$remove:
.LFB686:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC261[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 349
	mov	eax, 0
	call	sim_log_debug
	cmp	BYTE PTR -36[rbp], 19
	ja	.L1798
	cmp	BYTE PTR -40[rbp], 19
	jbe	.L1799
.L1798:
	lea	rdx, .LC263[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 350
	mov	eax, 0
	call	sim_log_error
	mov	eax, 2
	jmp	.L1800
.L1799:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -18[rbp], al
	cmp	BYTE PTR -18[rbp], -6
	je	.L1801
	call	sim_node
	movzx	edx, BYTE PTR -18[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	cmp	BYTE PTR -40[rbp], al
	jne	.L1804
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -18[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, r12d
	imul	rsi, rbx, 250
	add	rcx, rsi
	lea	rsi, [rcx+rcx]
	lea	rcx, GraphSparseP$0$e[rip+1]
	movzx	ecx, BYTE PTR [rsi+rcx]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rsi]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	GraphSparseP$0$IndexedAlloc$free
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, -6
	jne	.L1803
	call	sim_node
	lea	rdx, GraphSparseP$0$vSize[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, GraphSparseP$0$vSize[rip]
	mov	BYTE PTR [rax+rdx], cl
.L1803:
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	call	GraphSparseP$0$Graph$removed
	call	GraphSparseP$0$printGraph
	mov	eax, 0
	jmp	.L1800
.L1806:
	call	sim_node
	movzx	edx, BYTE PTR -18[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip+1]
	movzx	eax, BYTE PTR [rdx+rax]
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	cmp	BYTE PTR -40[rbp], al
	jne	.L1805
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -17[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -18[rbp]
	movsx	rax, r12d
	imul	rsi, rbx, 250
	add	rax, rsi
	lea	rsi, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip+1]
	movzx	eax, BYTE PTR [rsi+rax]
	movsx	rcx, ecx
	imul	rdx, rdx, 250
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, GraphSparseP$0$e[rip+1]
	mov	BYTE PTR [rcx+rdx], al
	movzx	eax, BYTE PTR -17[rbp]
	mov	edi, eax
	call	GraphSparseP$0$IndexedAlloc$free
	movzx	eax, BYTE PTR -17[rbp]
	mov	edi, eax
	call	GraphSparseP$0$Graph$removed
	call	GraphSparseP$0$printGraph
	mov	eax, 0
	jmp	.L1800
.L1805:
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR -18[rbp], al
.L1804:
	call	sim_node
	movzx	edx, BYTE PTR -18[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip+1]
	movzx	eax, BYTE PTR [rdx+rax]
	cmp	al, -6
	jne	.L1806
.L1801:
	lea	rdx, .LC264[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 351
	mov	eax, 0
	call	sim_log_debug
	mov	eax, 6
.L1800:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE686:
	.size	GraphSparseP$0$Graph$remove, .-GraphSparseP$0$Graph$remove
	.type	IndexedAllocBitsP$0$IndexedAlloc$free, @function
IndexedAllocBitsP$0$IndexedAlloc$free:
.LFB687:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], -7
	jbe	.L1808
	mov	eax, 2
	jmp	.L1809
.L1808:
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	IndexedAllocBitsP$0$BitVector$get
	test	al, al
	jne	.L1810
	mov	eax, 9
	jmp	.L1809
.L1810:
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	IndexedAllocBitsP$0$BitVector$clear
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	edi, eax
	call	IndexedAllocBitsP$0$BitVector$get
	test	al, al
	je	.L1811
	call	sim_node
	lea	rcx, IndexedAllocBitsP$0$free[rip]
	movzx	edx, BYTE PTR -4[rbp]
	mov	BYTE PTR [rax+rcx], dl
.L1811:
	call	sim_node
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	mov	BYTE PTR [rax+rdx], cl
	mov	eax, 0
.L1809:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE687:
	.size	IndexedAllocBitsP$0$IndexedAlloc$free, .-IndexedAllocBitsP$0$IndexedAlloc$free
	.type	BitVectorC$4$BitVector$get, @function
BitVectorC$4$BitVector$get:
.LFB688:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	mov	eax, edi
	mov	WORD PTR -12[rbp], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$4$getIndex
	movzx	eax, ax
	cdqe
	mov	rdx, rbx
	sal	rdx, 5
	add	rdx, rax
	lea	rax, BitVectorC$4$m_bits[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$4$getMask
	movzx	eax, ax
	and	eax, ebx
	test	eax, eax
	setne	al
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE688:
	.size	BitVectorC$4$BitVector$get, .-BitVectorC$4$BitVector$get
	.section	.rodata
.LC265:
	.string	"GS: Current Graph:\n"
.LC266:
	.string	"%u: "
.LC267:
	.string	"%u(%u)-"
.LC268:
	.string	"|\n"
	.text
	.type	GraphSparseP$0$printGraph, @function
GraphSparseP$0$printGraph:
.LFB689:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	lea	rdx, .LC265[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 352
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -18[rbp], 0
	jmp	.L1815
.L1818:
	movzx	eax, BYTE PTR -18[rbp]
	mov	ecx, eax
	lea	rdx, .LC266[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 353
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -18[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -17[rbp], al
	jmp	.L1816
.L1817:
	movzx	ebx, BYTE PTR -17[rbp]
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	mov	r8d, ebx
	mov	ecx, eax
	lea	rdx, .LC267[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 354
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, GraphSparseP$0$e[rip+1]
	movzx	eax, BYTE PTR [rdx+rax]
	mov	BYTE PTR -17[rbp], al
.L1816:
	cmp	BYTE PTR -17[rbp], -6
	jne	.L1817
	lea	rdx, .LC268[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 355
	mov	eax, 0
	call	sim_log_debug_clear
	movzx	eax, BYTE PTR -18[rbp]
	add	eax, 1
	mov	BYTE PTR -18[rbp], al
.L1815:
	cmp	BYTE PTR -18[rbp], 19
	jbe	.L1818
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE689:
	.size	GraphSparseP$0$printGraph, .-GraphSparseP$0$printGraph
	.section	.rodata
	.align 8
.LC269:
	.string	"SSP: SPT for %u already built!\n"
.LC270:
	.string	"SSP: Building SPT for %u\n"
	.text
	.type	SourceShortestPathP$0$SourceShortestPath$buildTreeTo, @function
SourceShortestPathP$0$SourceShortestPath$buildTreeTo:
.LFB690:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -4[rbp], 19
	ja	.L1820
	cmp	BYTE PTR -8[rbp], 20
	jbe	.L1821
.L1820:
	mov	eax, 2
	jmp	.L1822
.L1821:
	call	sim_node
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L1823
	mov	eax, 5
	jmp	.L1822
.L1823:
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -4[rbp], al
	jne	.L1824
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -8[rbp], al
	jne	.L1824
	call	sim_node
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1824
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC269[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 371
	mov	eax, 0
	call	sim_log_debug
	call	SourceShortestPathP$0$buildTreeTask$postTask
	mov	eax, 0
	jmp	.L1822
.L1824:
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC270[rip]
	lea	rsi, .LC76[rip]
	mov	edi, 372
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	sim_node
	lea	rcx, SourceShortestPathP$0$lastSrc[rip]
	movzx	edx, BYTE PTR -4[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rcx, SourceShortestPathP$0$lastDest[rip]
	movzx	edx, BYTE PTR -8[rbp]
	mov	BYTE PTR [rax+rcx], dl
	call	sim_node
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	mov	BYTE PTR [rax+rdx], 0
	call	SourceShortestPathP$0$initTree
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 0
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$PriorityQueue$insert
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	mov	BYTE PTR [rdx], al
	call	SourceShortestPathP$0$buildTreeTask$postTask
	mov	eax, 0
.L1822:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE690:
	.size	SourceShortestPathP$0$SourceShortestPath$buildTreeTo, .-SourceShortestPathP$0$SourceShortestPath$buildTreeTo
	.type	SourceShortestPathP$0$initTree, @function
SourceShortestPathP$0$initTree:
.LFB691:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1826
.L1827:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 20
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$fringe[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 20
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1826:
	cmp	BYTE PTR -1[rbp], 19
	jbe	.L1827
	call	SourceShortestPathP$0$PriorityQueue$clear
	call	sim_node
	lea	rdx, SourceShortestPathP$0$foundDest[rip]
	mov	BYTE PTR [rax+rdx], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE691:
	.size	SourceShortestPathP$0$initTree, .-SourceShortestPathP$0$initTree
	.type	PriorityQueueP$0$clearData, @function
PriorityQueueP$0$clearData:
.LFB692:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1829
.L1830:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 20
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1829:
	cmp	BYTE PTR -1[rbp], 19
	jbe	.L1830
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE692:
	.size	PriorityQueueP$0$clearData, .-PriorityQueueP$0$clearData
	.section	.rodata
.LC271:
	.string	"Current Tree:\n"
.LC272:
	.string	"Empty!\n"
.LC273:
	.string	"%hhu\n"
.LC274:
	.string	"| "
.LC275:
	.string	"  "
	.text
	.type	PriorityQueueP$0$printTree, @function
PriorityQueueP$0$printTree:
.LFB693:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdx, .LC271[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 363
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1832
	lea	rdx, .LC272[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 364
	mov	eax, 0
	call	sim_log_debug_clear
	jmp	.L1831
.L1832:
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	mov	rdx, rax
	lea	rax, PriorityQueueP$0$ai[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC273[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 365
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 1
	jbe	.L1834
	lea	rsi, .LC274[rip]
	mov	edi, 1
	call	PriorityQueueP$0$printTreeChild
	lea	rdx, .LC148[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 366
	mov	eax, 0
	call	sim_log_debug_clear
.L1834:
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 2
	jbe	.L1831
	lea	rsi, .LC275[rip]
	mov	edi, 2
	call	PriorityQueueP$0$printTreeChild
	lea	rdx, .LC148[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 367
	mov	eax, 0
	call	sim_log_debug_clear
.L1831:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE693:
	.size	PriorityQueueP$0$printTree, .-PriorityQueueP$0$printTree
	.section	.rodata
.LC276:
	.string	"|_"
.LC277:
	.string	"%s%hhu"
.LC278:
	.string	"\n%s"
.LC279:
	.string	"%s%s"
	.text
	.type	PriorityQueueP$0$printTreeChild, @function
PriorityQueueP$0$printTreeChild:
.LFB694:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	eax, edi
	mov	QWORD PTR -64[rbp], rsi
	mov	BYTE PTR -52[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -52[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	r8d, eax
	lea	rcx, .LC276[rip]
	lea	rdx, .LC277[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 368
	mov	eax, 0
	call	sim_log_debug_clear
	movzx	eax, BYTE PTR -52[rbp]
	add	eax, eax
	lea	ebx, 1[rax]
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cmp	ebx, eax
	jge	.L1836
	mov	rax, QWORD PTR -64[rbp]
	mov	rcx, rax
	lea	rdx, .LC278[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 369
	mov	eax, 0
	call	sim_log_debug_clear
	mov	rdx, QWORD PTR -64[rbp]
	lea	rax, -34[rbp]
	lea	rcx, .LC274[rip]
	lea	rsi, .LC279[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	movzx	eax, BYTE PTR -52[rbp]
	add	eax, eax
	add	eax, 1
	movzx	eax, al
	lea	rdx, -34[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	PriorityQueueP$0$printTreeChild
.L1836:
	movzx	eax, BYTE PTR -52[rbp]
	add	eax, 1
	lea	ebx, [rax+rax]
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cmp	ebx, eax
	jge	.L1839
	mov	rax, QWORD PTR -64[rbp]
	mov	rcx, rax
	lea	rdx, .LC278[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 370
	mov	eax, 0
	call	sim_log_debug_clear
	mov	rdx, QWORD PTR -64[rbp]
	lea	rax, -34[rbp]
	lea	rcx, .LC275[rip]
	lea	rsi, .LC279[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	movzx	eax, BYTE PTR -52[rbp]
	add	eax, 1
	add	eax, eax
	movzx	eax, al
	lea	rdx, -34[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	PriorityQueueP$0$printTreeChild
.L1839:
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1838
	call	__stack_chk_fail@PLT
.L1838:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE694:
	.size	PriorityQueueP$0$printTreeChild, .-PriorityQueueP$0$printTreeChild
	.section	.rodata
	.align 8
.LC280:
	.string	"PQ: Can't insert index %hhu, already full!\n"
.LC281:
	.string	"PQ: Inserting index %hhu\n"
	.text
	.type	PriorityQueueP$0$PriorityQueue$insert, @function
PriorityQueueP$0$PriorityQueue$insert:
.LFB695:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	cmp	BYTE PTR -20[rbp], 19
	jbe	.L1841
	mov	eax, 2
	jmp	.L1842
.L1841:
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 20
	jne	.L1843
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC280[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 356
	mov	eax, 0
	call	sim_log_error
	mov	eax, 1
	jmp	.L1842
.L1843:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 20
	je	.L1844
	mov	eax, 9
	jmp	.L1842
.L1844:
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC281[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 357
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	BYTE PTR [rdx], al
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	lea	rcx, PriorityQueueP$0$size[rip]
	movzx	ecx, BYTE PTR [rbx+rcx]
	movsx	rsi, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rsi]
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	call	sim_node
	lea	rdx, PriorityQueueP$0$size[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rsi, PriorityQueueP$0$size[rip]
	mov	BYTE PTR [rax+rsi], cl
	movzx	eax, dl
	mov	edi, eax
	call	PriorityQueueP$0$moveUpPos
	call	PriorityQueueP$0$printTree
	mov	eax, 0
.L1842:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE695:
	.size	PriorityQueueP$0$PriorityQueue$insert, .-PriorityQueueP$0$PriorityQueue$insert
	.section	.rodata
	.align 8
.LC282:
	.string	"PQ: Moving heap position %hhu up if needed\n"
	.text
	.type	PriorityQueueP$0$moveUpPos, @function
PriorityQueueP$0$moveUpPos:
.LFB696:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	eax, edi
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC282[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 360
	mov	eax, 0
	call	sim_log_debug
	jmp	.L1846
.L1848:
	movzx	edx, BYTE PTR -17[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PriorityQueueP$0$flip
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR -36[rbp], al
.L1846:
	cmp	BYTE PTR -36[rbp], 0
	je	.L1849
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	sub	eax, 1
	mov	ecx, eax
	shr	ecx, 31
	add	eax, ecx
	sar	eax
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -17[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	esi, ebx
	mov	edi, eax
	call	PriorityQueueP$0$Compare$test
	test	ax, ax
	jg	.L1848
.L1849:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE696:
	.size	PriorityQueueP$0$moveUpPos, .-PriorityQueueP$0$moveUpPos
	.section	.rodata
	.align 8
.LC283:
	.string	"PQ: Flipped heap positions %hhu and %hhu\n"
	.text
	.type	PriorityQueueP$0$flip, @function
PriorityQueueP$0$flip:
.LFB697:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	mov	BYTE PTR -17[rbp], al
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -40[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	esi, BYTE PTR -36[rbp]
	movsx	rcx, r12d
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rcx, rax
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rcx
	movzx	ecx, BYTE PTR [rax]
	movsx	rsi, esi
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rsi]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], cl
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -40[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR [rdx], al
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	mov	BYTE PTR [rdx], al
	call	sim_node
	mov	rbx, rax
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -40[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rdx, rax
	lea	rax, PriorityQueueP$0$hp[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -40[rbp]
	mov	BYTE PTR [rdx], al
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC283[rip]
	lea	rsi, .LC73[rip]
	mov	edi, 362
	mov	eax, 0
	call	sim_log_debug
	nop
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE697:
	.size	PriorityQueueP$0$flip, .-PriorityQueueP$0$flip
	.section	.rodata
	.align 8
.LC284:
	.string	"PE: Couldn't find client ID for pkt %u!\n"
	.text
	.type	PacketEngineP$PacketEngine$upperSendDone, @function
PacketEngineP$PacketEngine$upperSendDone:
.LFB698:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -52[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -56[rbp], dl
	mov	BYTE PTR -60[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	movzx	eax, BYTE PTR -56[rbp]
	mov	BYTE PTR -34[rbp], al
	mov	BYTE PTR -33[rbp], 2
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -56[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -52[rbp], al
	jne	.L1852
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -56[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	shr	al, 5
	and	eax, 1
	test	al, al
	je	.L1853
.L1852:
	mov	eax, 6
	jmp	.L1856
.L1853:
	lea	rax, -34[rbp]
	mov	rdi, rax
	call	PacketEngineP$SendQueue$lookup
	mov	QWORD PTR -32[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	je	.L1855
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR 1[rax]
	cmp	al, 2
	je	.L1855
	movzx	ebx, BYTE PTR -60[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -56[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rcx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR 1[rax]
	movzx	eax, al
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$Send$sendDone
	mov	eax, 0
	jmp	.L1856
.L1855:
	movzx	eax, BYTE PTR -56[rbp]
	mov	ecx, eax
	lea	rdx, .LC284[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 144
	mov	eax, 0
	call	sim_log_error
	mov	eax, 1
.L1856:
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1857
	call	__stack_chk_fail@PLT
.L1857:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE698:
	.size	PacketEngineP$PacketEngine$upperSendDone, .-PacketEngineP$PacketEngine$upperSendDone
	.type	LruDataCacheP$0$lookup, @function
LruDataCacheP$0$lookup:
.LFB699:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 24
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	QWORD PTR -40[rbp], rdi
	mov	BYTE PTR -25[rbp], 0
	jmp	.L1859
.L1862:
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -25[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	lea	ecx, [r12+rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	LruDataCacheP$0$Equal$test
	test	al, al
	jne	.L1864
	movzx	eax, BYTE PTR -25[rbp]
	add	eax, 1
	mov	BYTE PTR -25[rbp], al
.L1859:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -25[rbp], al
	jb	.L1862
	jmp	.L1861
.L1864:
	nop
.L1861:
	movzx	eax, BYTE PTR -25[rbp]
	add	rsp, 24
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE699:
	.size	LruDataCacheP$0$lookup, .-LruDataCacheP$0$lookup
	.type	LruDataCacheP$0$printCache, @function
LruDataCacheP$0$printCache:
.LFB700:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	lea	rdx, .LC144[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 181
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1866
.L1868:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rcx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	movzx	eax, WORD PTR [rdx+rax]
	mov	ecx, eax
	lea	rdx, .LC146[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 182
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jne	.L1867
	lea	rdx, .LC147[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 183
	mov	eax, 0
	call	sim_log_debug_clear
.L1867:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1866:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jb	.L1868
	lea	rdx, .LC148[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 184
	mov	eax, 0
	call	sim_log_debug_clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE700:
	.size	LruDataCacheP$0$printCache, .-LruDataCacheP$0$printCache
	.section	.rodata
.LC285:
	.string	"DSR: Internal send failed!\n"
	.align 8
.LC286:
	.string	"DSR: Checking for another response to send\n"
	.text
	.type	DsrControlP$0$Send$sendDone, @function
DsrControlP$0$Send$sendDone:
.LFB701:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	cmp	BYTE PTR -12[rbp], 1
	jne	.L1870
	lea	rdx, .LC285[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 308
	mov	eax, 0
	call	sim_log_debug
.L1870:
	lea	rdx, .LC286[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 309
	mov	eax, 0
	call	sim_log_debug
	call	DsrControlP$0$composePkt$postTask
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE701:
	.size	DsrControlP$0$Send$sendDone, .-DsrControlP$0$Send$sendDone
	.section	.rodata
.LC287:
	.string	"PE: Send backoff for %hu ms\n"
	.text
	.type	PacketEngineP$startSendBackoff, @function
PacketEngineP$startSendBackoff:
.LFB702:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	WORD PTR -20[rbp], dx
	mov	WORD PTR -24[rbp], ax
	call	PacketEngineP$Random$rand16
	mov	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	and	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -24[rbp]
	add	WORD PTR -2[rbp], ax
	movzx	eax, WORD PTR -2[rbp]
	mov	rdi, rax
	call	PacketEngineP$SendBackoff$startOneShot
	mov	edi, 2
	call	PacketEngineP$SendState$forceState
	movzx	eax, WORD PTR -2[rbp]
	mov	ecx, eax
	lea	rdx, .LC287[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 180
	mov	eax, 0
	call	sim_log_debug
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE702:
	.size	PacketEngineP$startSendBackoff, .-PacketEngineP$startSendBackoff
	.type	RandomMlcgP$Random$rand32, @function
RandomMlcgP$Random$rand32:
.LFB703:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -33[rbp], al
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, RandomMlcgP$seed[rip]
	mov	rax, QWORD PTR [rdx+rax]
	imul	rax, rax, 33614
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -16[rbp], rax
	shr	QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	shr	rax, 32
	mov	QWORD PTR -8[rbp], rax
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	and	eax, 2147483648
	test	rax, rax
	je	.L1873
	and	QWORD PTR -32[rbp], 2147483647
	add	QWORD PTR -32[rbp], 1
.L1873:
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, RandomMlcgP$seed[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	movzx	eax, BYTE PTR -33[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	mov	rax, QWORD PTR -32[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE703:
	.size	RandomMlcgP$Random$rand32, .-RandomMlcgP$Random$rand32
	.type	VirtualizeTimerC$0$startTimer, @function
VirtualizeTimerC$0$startTimer:
.LFB704:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	eax, ecx
	mov	edx, edi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	mov	rcx, rax
	movzx	eax, BYTE PTR -20[rbp]
	cdqe
	mov	rdx, rax
	add	rdx, rdx
	add	rdx, rax
	lea	rax, 0[0+rdx*8]
	mov	rdx, rax
	mov	rax, rcx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 3
	add	rdx, rax
	lea	rax, VirtualizeTimerC$0$m_timers[rip]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR 8[rax], rdx
	movzx	eax, BYTE PTR -24[rbp]
	and	eax, 1
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	ecx, edx
	and	ecx, 1
	movzx	edx, BYTE PTR 16[rax]
	and	edx, -2
	or	edx, ecx
	mov	BYTE PTR 16[rax], dl
	mov	rax, QWORD PTR -8[rbp]
	movzx	edx, BYTE PTR 16[rax]
	or	edx, 2
	mov	BYTE PTR 16[rax], dl
	call	VirtualizeTimerC$0$updateFromTimer$postTask
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE704:
	.size	VirtualizeTimerC$0$startTimer, .-VirtualizeTimerC$0$startTimer
	.type	Atm128AlarmAsyncP$0$Counter$get, @function
Atm128AlarmAsyncP$0$Counter$get:
.LFB705:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -26[rbp], al
	call	Atm128AlarmAsyncP$0$Timer$get
	mov	BYTE PTR -25[rbp], al
	call	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag
	and	eax, 2
	test	al, al
	je	.L1877
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	Atm128AlarmAsyncP$0$Compare$get
	movzx	eax, al
	add	rbx, rax
	call	Atm128AlarmAsyncP$0$Timer$get
	movzx	eax, al
	add	rax, rbx
	add	rax, 1
	mov	QWORD PTR -24[rbp], rax
	jmp	.L1878
.L1877:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	movzx	eax, BYTE PTR -25[rbp]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
.L1878:
	movzx	eax, BYTE PTR -26[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	mov	rax, QWORD PTR -24[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE705:
	.size	Atm128AlarmAsyncP$0$Counter$get, .-Atm128AlarmAsyncP$0$Counter$get
	.section	.rodata
	.align 8
.LC288:
	.string	"HplAtm128Timer0AsyncP: Getting timer: %hhu\n"
	.text
	.type	HplAtm128Timer0AsyncP$Timer0$get, @function
HplAtm128Timer0AsyncP$Timer0$get:
.LFB706:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	call	sim_time
	mov	rbx, rax
	call	HplAtm128Timer0AsyncP$last_zero
	mov	rdx, rax
	mov	rax, rbx
	sub	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$sim_to_clock
	mov	QWORD PTR -24[rbp], rax
	call	HplAtm128Timer0AsyncP$shiftFromScale
	movzx	eax, ax
	mov	ecx, eax
	sar	QWORD PTR -24[rbp], cl
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR -25[rbp], al
	movzx	eax, BYTE PTR -25[rbp]
	mov	ecx, eax
	lea	rdx, .LC288[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 199
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -25[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE706:
	.size	HplAtm128Timer0AsyncP$Timer0$get, .-HplAtm128Timer0AsyncP$Timer0$get
	.type	HplAtm128Timer0AsyncP$last_zero, @function
HplAtm128Timer0AsyncP$last_zero:
.LFB707:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	jne	.L1883
	call	sim_node
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	mov	edi, r12d
	call	sim_mote_start_time
	lea	rcx, 0[0+rbx*8]
	lea	rdx, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	QWORD PTR [rcx+rdx], rax
.L1883:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	rax, QWORD PTR [rdx+rax]
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE707:
	.size	HplAtm128Timer0AsyncP$last_zero, .-HplAtm128Timer0AsyncP$last_zero
	.globl	sim_mote_start_time
	.type	sim_mote_start_time, @function
sim_mote_start_time:
.LFB708:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	call	sim_node
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	SimMoteP$SimMote$getStartTime
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE708:
	.size	sim_mote_start_time, .-sim_mote_start_time
	.type	HplAtm128Timer0AsyncP$shiftFromScale, @function
HplAtm128Timer0AsyncP$shiftFromScale:
.LFB709:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	HplAtm128Timer0AsyncP$Timer0$getScale
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	cmp	eax, 7
	ja	.L1888
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L1890[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L1890[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L1890:
	.long	.L1897-.L1890
	.long	.L1896-.L1890
	.long	.L1895-.L1890
	.long	.L1894-.L1890
	.long	.L1893-.L1890
	.long	.L1892-.L1890
	.long	.L1891-.L1890
	.long	.L1889-.L1890
	.text
.L1897:
	mov	eax, 0
	jmp	.L1898
.L1896:
	mov	eax, 0
	jmp	.L1898
.L1895:
	mov	eax, 3
	jmp	.L1898
.L1894:
	mov	eax, 5
	jmp	.L1898
.L1893:
	mov	eax, 6
	jmp	.L1898
.L1892:
	mov	eax, 7
	jmp	.L1898
.L1891:
	mov	eax, 8
	jmp	.L1898
.L1889:
	mov	eax, 10
	jmp	.L1898
.L1888:
	mov	eax, 255
.L1898:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE709:
	.size	HplAtm128Timer0AsyncP$shiftFromScale, .-HplAtm128Timer0AsyncP$shiftFromScale
	.type	HplAtm128Timer0AsyncP$Timer0$getScale, @function
HplAtm128Timer0AsyncP$Timer0$getScale:
.LFB710:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 51[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	and	eax, 7
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE710:
	.size	HplAtm128Timer0AsyncP$Timer0$getScale, .-HplAtm128Timer0AsyncP$Timer0$getScale
	.type	HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag, @function
HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag:
.LFB711:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, atm128RegFile[rip+54]
	movzx	eax, BYTE PTR [rdx+rax]
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE711:
	.size	HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag, .-HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag
	.section	.rodata
	.align 8
.LC289:
	.string	"HplAtm128Timer0AsyncP: Getting compare: %hhu\n"
	.text
	.type	HplAtm128Timer0AsyncP$Compare$get, @function
HplAtm128Timer0AsyncP$Compare$get:
.LFB712:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 49[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC289[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 205
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 49[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE712:
	.size	HplAtm128Timer0AsyncP$Compare$get, .-HplAtm128Timer0AsyncP$Compare$get
	.section	.rodata
	.align 8
.LC290:
	.string	"PE: Removing pkt %u from the buffer\n"
	.align 8
.LC291:
	.string	"PE: Receive pool already full, leaking packet!\n"
	.align 8
.LC292:
	.string	"PE: Unable to remove send queue entry for pkt %u!\n"
	.text
	.type	PacketEngineP$removePacket, @function
PacketEngineP$removePacket:
.LFB713:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC290[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 176
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	shr	al, 5
	and	eax, 1
	cmp	al, 1
	jne	.L1906
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$ReceivePool$put
	cmp	al, 1
	jne	.L1907
	lea	rdx, .LC291[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 177
	mov	eax, 0
	call	sim_log_error
	jmp	.L1907
.L1906:
	movzx	eax, BYTE PTR -20[rbp]
	mov	BYTE PTR -10[rbp], al
	mov	BYTE PTR -9[rbp], 2
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$SendPool$put
	cmp	al, 1
	jne	.L1908
	lea	rdx, .LC143[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 178
	mov	eax, 0
	call	sim_log_error
.L1908:
	lea	rax, -10[rbp]
	mov	rdi, rax
	call	PacketEngineP$SendQueue$remove
	test	al, al
	je	.L1907
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC292[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 179
	mov	eax, 0
	call	sim_log_error
.L1907:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -32
	or	ecx, 1
	mov	BYTE PTR [rdx+rax], cl
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1910
	call	__stack_chk_fail@PLT
.L1910:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE713:
	.size	PacketEngineP$removePacket, .-PacketEngineP$removePacket
	.type	PoolP$1$Pool$put, @function
PoolP$1$Pool$put:
.LFB714:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rdi
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 19
	jbe	.L1912
	mov	eax, 1
	jmp	.L1913
.L1912:
	call	sim_node
	lea	rdx, PoolP$1$index[rip]
	movzx	ebx, BYTE PTR [rax+rdx]
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	add	eax, ebx
	mov	BYTE PTR -9[rbp], al
	cmp	BYTE PTR -9[rbp], 19
	jbe	.L1914
	sub	BYTE PTR -9[rbp], 20
.L1914:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -9[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	add	rax, rcx
	lea	rcx, 0[0+rax*8]
	lea	rdx, PoolP$1$queue[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rdx, PoolP$1$free[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, PoolP$1$free[rip]
	mov	BYTE PTR [rax+rdx], cl
	mov	eax, 0
.L1913:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE714:
	.size	PoolP$1$Pool$put, .-PoolP$1$Pool$put
	.type	LruDataCacheP$0$remove, @function
LruDataCacheP$0$remove:
.LFB715:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	push	rbx
	sub	rsp, 40
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	.cfi_offset 3, -40
	mov	eax, edi
	mov	BYTE PTR -52[rbp], al
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -52[rbp], al
	jnb	.L1922
	cmp	BYTE PTR -52[rbp], 0
	jne	.L1918
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	lea	edx, 1[rax]
	movsx	rax, edx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	ecx, edx
	sar	ecx, 31
	sub	eax, ecx
	mov	ebx, eax
	mov	eax, ebx
	sal	eax, 2
	add	eax, ebx
	sal	eax, 2
	mov	ebx, edx
	sub	ebx, eax
	call	sim_node
	mov	ecx, ebx
	lea	rdx, LruDataCacheP$0$first[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L1919
.L1918:
	movzx	eax, BYTE PTR -52[rbp]
	mov	BYTE PTR -33[rbp], al
	jmp	.L1920
.L1921:
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -33[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	add	eax, r12d
	lea	ecx, 1[rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	lea	r12, [rdx+rax]
	call	sim_node
	mov	rbx, rax
	movzx	r13d, BYTE PTR -33[rbp]
	call	sim_node
	lea	rdx, LruDataCacheP$0$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	lea	ecx, 0[r13+rax]
	movsx	rax, ecx
	imul	rax, rax, 1717986919
	shr	rax, 32
	sar	eax, 3
	mov	esi, ecx
	sar	esi, 31
	sub	eax, esi
	mov	edx, eax
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	sub	ecx, eax
	mov	edx, ecx
	movsx	rdx, edx
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, LruDataCacheP$0$cache[rip]
	add	rax, rdx
	mov	edx, 2
	mov	rsi, r12
	mov	rdi, rax
	call	memcpy@PLT
	movzx	eax, BYTE PTR -33[rbp]
	add	eax, 1
	mov	BYTE PTR -33[rbp], al
.L1920:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -33[rbp], al
	jb	.L1921
.L1919:
	call	sim_node
	lea	rdx, LruDataCacheP$0$count[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, LruDataCacheP$0$count[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L1915
.L1922:
	nop
.L1915:
	add	rsp, 40
	pop	rbx
	pop	r12
	pop	r13
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE715:
	.size	LruDataCacheP$0$remove, .-LruDataCacheP$0$remove
	.type	AMQueueImplP$0$sendDone, @function
AMQueueImplP$0$sendDone:
.LFB716:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	call	sim_node
	movzx	edx, BYTE PTR -4[rbp]
	movsx	rdx, edx
	add	rax, rax
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	QWORD PTR [rdx+rax], 0
	call	AMQueueImplP$0$tryToSend
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueImplP$0$Send$sendDone
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE716:
	.size	AMQueueImplP$0$sendDone, .-AMQueueImplP$0$sendDone
	.section	.rodata
	.align 8
.LC293:
	.string	"AM: Sending packet (id=%hhu, len=%hhu) to %hu\n"
	.text
	.type	TossimActiveMessageC$AMSend$send, @function
TossimActiveMessageC$AMSend$send:
.LFB717:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, esi
	mov	QWORD PTR -32[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	WORD PTR -24[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -36[rbp], al
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	ecx, WORD PTR -24[rbp]
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC293[rip]
	lea	rsi, .LC232[rip]
	mov	edi, 105
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 6
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
	movzx	edx, WORD PTR -24[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint16
	call	TossimActiveMessageC$AMPacket$address
	movzx	eax, ax
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 2
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	eax, BYTE PTR -36[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 4
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
	movzx	eax, BYTE PTR -36[rbp]
	add	eax, 7
	movzx	edx, al
	movzx	eax, WORD PTR -24[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TossimActiveMessageC$Model$send
	mov	BYTE PTR -9[rbp], al
	movzx	eax, BYTE PTR -9[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE717:
	.size	TossimActiveMessageC$AMSend$send, .-TossimActiveMessageC$AMSend$send
	.type	CpmModelC$packetNoise, @function
CpmModelC$packetNoise:
.LFB718:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	call	CpmModelC$noise_hash_generation
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -8[rbp], rax
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	jmp	.L1927
.L1929:
	mov	rax, QWORD PTR -8[rbp]
	cmp	rax, QWORD PTR -24[rbp]
	je	.L1928
	mov	rax, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR 24[rax]
	movsd	xmm1, QWORD PTR .LC91[rip]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC91[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	pow@PLT
	movsd	xmm1, QWORD PTR -16[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
.L1928:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 56[rax]
	mov	QWORD PTR -8[rbp], rax
.L1927:
	cmp	QWORD PTR -8[rbp], 0
	jne	.L1929
	mov	rax, QWORD PTR -16[rbp]
	movq	xmm0, rax
	call	log@PLT
	movsd	xmm1, QWORD PTR .LC91[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC92[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE718:
	.size	CpmModelC$packetNoise, .-CpmModelC$packetNoise
	.section	.rodata
.LC294:
	.string	"IN: noise_hash_generation()\n"
	.align 8
.LC295:
	.string	"%s: OUT: noise_hash_generation(): %lf\n"
.LC296:
	.string	"CpmModelC,Tal"
	.text
	.type	CpmModelC$noise_hash_generation, @function
CpmModelC$noise_hash_generation:
.LFB719:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	call	CpmModelC$timeInMs
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	movsd	xmm1, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR .LC91[rip]
	mulsd	xmm0, xmm1
	cvttsd2si	rcx, xmm0
	movabs	rdx, 7378697629483820647
	mov	rax, rcx
	imul	rdx
	mov	rax, rdx
	sar	rax, 2
	sar	rcx, 63
	mov	rdx, rcx
	sub	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	movsd	xmm1, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR .LC91[rip]
	mulsd	xmm0, xmm1
	cvttsd2si	rcx, xmm0
	movabs	rdx, 7378697629483820647
	mov	rax, rcx
	imul	rdx
	mov	rax, rdx
	sar	rax, 2
	mov	rsi, rcx
	sar	rsi, 63
	sub	rax, rsi
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	sub	rcx, rax
	mov	rdx, rcx
	mov	BYTE PTR -27[rbp], dl
	call	sim_node
	mov	WORD PTR -26[rbp], ax
	lea	rdx, .LC294[rip]
	lea	rsi, .LC94[rip]
	mov	edi, 225
	mov	eax, 0
	call	sim_log_debug
	cmp	BYTE PTR -27[rbp], 4
	jbe	.L1932
	cmp	BYTE PTR -27[rbp], 9
	ja	.L1932
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 1[rax]
	movzx	eax, WORD PTR -26[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	sim_noise_generate
	movsx	eax, al
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -24[rbp], xmm0
	jmp	.L1933
.L1932:
	movzx	eax, WORD PTR -26[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	sim_noise_generate
	movsx	eax, al
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -24[rbp], xmm0
.L1933:
	call	sim_time_string
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	movq	xmm0, rax
	mov	rcx, rdx
	lea	rdx, .LC295[rip]
	lea	rsi, .LC296[rip]
	mov	edi, 226
	mov	eax, 1
	call	sim_log_debug
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE719:
	.size	CpmModelC$noise_hash_generation, .-CpmModelC$noise_hash_generation
	.section	.rodata
	.align 8
.LC297:
	.string	"%s received send done for %p, signaling for %p.\n"
.LC298:
	.string	"PointerBug"
	.text
	.type	AMQueueImplP$0$AMSend$sendDone, @function
AMQueueImplP$0$AMSend$sendDone:
.LFB720:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 1
	ja	.L1939
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, [rbx+rbx]
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	QWORD PTR -32[rbp], rax
	jne	.L1938
	movzx	ebx, BYTE PTR -24[rbp]
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	rcx, QWORD PTR -32[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	AMQueueImplP$0$sendDone
	jmp	.L1935
.L1938:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	cdqe
	lea	rdx, [rbx+rbx]
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	r9, rdx
	mov	r8, rax
	lea	rcx, __FUNCTION__.2[rip]
	lea	rdx, .LC297[rip]
	lea	rsi, .LC298[rip]
	mov	edi, 397
	mov	eax, 0
	call	sim_log_debug
	jmp	.L1935
.L1939:
	nop
.L1935:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE720:
	.size	AMQueueImplP$0$AMSend$sendDone, .-AMQueueImplP$0$AMSend$sendDone
	.type	CpmModelC$shouldReceive, @function
CpmModelC$shouldReceive:
.LFB721:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	movsd	QWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -24[rbp]
	movq	xmm0, rax
	call	CpmModelC$prr_estimate_from_snr
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	call	RandomUniform
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -16[rbp]
	jp	.L1947
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -16[rbp]
	je	.L1941
.L1947:
	movsd	xmm0, QWORD PTR .LC127[rip]
	ucomisd	xmm0, QWORD PTR -16[rbp]
	jp	.L1948
	movsd	xmm0, QWORD PTR .LC127[rip]
	comisd	xmm0, QWORD PTR -16[rbp]
	je	.L1941
.L1948:
	movsd	xmm0, QWORD PTR -16[rbp]
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L1950
	movsd	xmm0, QWORD PTR .LC127[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	jmp	.L1941
.L1950:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
.L1941:
	cvttsd2si	eax, QWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE721:
	.size	CpmModelC$shouldReceive, .-CpmModelC$shouldReceive
	.type	TossimPacketModelC$GainRadioModel$shouldAck, @function
TossimPacketModelC$GainRadioModel$shouldAck:
.LFB722:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	call	sim_node
	lea	rdx, TossimPacketModelC$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	je	.L1952
	call	sim_node
	lea	rdx, TossimPacketModelC$transmitting[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L1952
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$Packet$shouldAck
	jmp	.L1953
.L1952:
	mov	eax, 0
.L1953:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE722:
	.size	TossimPacketModelC$GainRadioModel$shouldAck, .-TossimPacketModelC$GainRadioModel$shouldAck
	.type	CpmModelC$sim_gain_schedule_ack, @function
CpmModelC$sim_gain_schedule_ack:
.LFB723:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	edi, 48
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 16[rax], 1
	mov	rax, QWORD PTR -8[rbp]
	mov	BYTE PTR 17[rax], 0
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, CpmModelC$sim_gain_ack_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, sim_queue_cleanup_event[rip]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR 24[rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	sim_queue_insert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE723:
	.size	CpmModelC$sim_gain_schedule_ack, .-CpmModelC$sim_gain_schedule_ack
	.section	.rodata
.LC299:
	.string	"%u%s"
.LC300:
	.string	"-%u%s"
	.text
	.type	SourceShortestPathP$0$printPathLink, @function
SourceShortestPathP$0$printPathLink:
.LFB724:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	BYTE PTR -4[rbp], al
	mov	rdx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	strcpy@PLT
	call	sim_node
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -4[rbp], al
	jne	.L1956
	movzx	edx, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC299[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	jmp	.L1958
.L1956:
	movzx	edx, BYTE PTR -4[rbp]
	mov	rcx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC300[rip]
	mov	rdi, rax
	mov	eax, 0
	call	sprintf@PLT
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	eax, al
	mov	rdx, QWORD PTR -24[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	SourceShortestPathP$0$printPathLink
.L1958:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE724:
	.size	SourceShortestPathP$0$printPathLink, .-SourceShortestPathP$0$printPathLink
	.type	BitVectorC$3$BitVector$get, @function
BitVectorC$3$BitVector$get:
.LFB725:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	mov	eax, edi
	mov	WORD PTR -12[rbp], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$3$getIndex
	movzx	eax, ax
	movsx	rdx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rdx, rax
	lea	rax, BitVectorC$3$m_bits[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$3$getMask
	movzx	eax, ax
	and	eax, ebx
	test	eax, eax
	setne	al
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE725:
	.size	BitVectorC$3$BitVector$get, .-BitVectorC$3$BitVector$get
	.type	SourceShortestPathP$0$SourceShortestPath$edgeCount, @function
SourceShortestPathP$0$SourceShortestPath$edgeCount:
.LFB726:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	cmp	BYTE PTR -20[rbp], 19
	ja	.L1962
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -20[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, 20
	jne	.L1963
.L1962:
	mov	eax, 0
	jmp	.L1964
.L1963:
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1965
.L1966:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$PathEdgeList$next
	mov	BYTE PTR -20[rbp], al
.L1965:
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	SourceShortestPathP$0$PathEdgeList$end
	test	al, al
	je	.L1966
	movzx	eax, BYTE PTR -1[rbp]
.L1964:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE726:
	.size	SourceShortestPathP$0$SourceShortestPath$edgeCount, .-SourceShortestPathP$0$SourceShortestPath$edgeCount
	.section	.rodata
	.align 8
.LC301:
	.string	"DSR: Pkt %u: Dest %u already in route request out cache\n"
	.align 8
.LC302:
	.string	"DSR: Pkt %u: Adding source route to %u\n"
	.align 8
.LC303:
	.string	"DSR: Pkt %u: Sending to %u along the way to %u\n"
	.text
	.type	DsrControlP$0$RouteCache$routeUpdate, @function
DsrControlP$0$RouteCache$routeUpdate:
.LFB727:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -68[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -72[rbp], dl
	mov	BYTE PTR -76[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	movzx	eax, BYTE PTR -72[rbp]
	mov	WORD PTR -52[rbp], ax
	mov	BYTE PTR -50[rbp], -1
	mov	BYTE PTR -49[rbp], 0
	cmp	BYTE PTR -76[rbp], 0
	je	.L1968
	movzx	eax, BYTE PTR -72[rbp]
	mov	edi, eax
	call	DsrControlP$0$resetRouteRequestOutCache
.L1968:
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -55[rbp], al
	jmp	.L1969
.L1983:
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$packet
	mov	QWORD PTR -48[rbp], rax
	cmp	QWORD PTR -48[rbp], 0
	jne	.L1970
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$packet
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$length
	test	al, al
	je	.L1970
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	BYTE PTR -55[rbp], al
	jmp	.L1969
.L1970:
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	edx, BYTE PTR -72[rbp]
	cmp	ax, dx
	je	.L1971
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	BYTE PTR -55[rbp], al
	jmp	.L1969
.L1971:
	cmp	BYTE PTR -76[rbp], 0
	jne	.L1972
	lea	rax, -52[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestOutCache$insert
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR 3[rax]
	test	al, al
	je	.L1973
	movzx	edx, BYTE PTR -72[rbp]
	movzx	eax, BYTE PTR -55[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC301[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 295
	mov	eax, 0
	call	sim_log_debug
	jmp	.L1967
.L1973:
	movzx	eax, BYTE PTR -72[rbp]
	mov	edi, eax
	call	DsrControlP$0$RouteRequestOutTimer$expired
	jmp	.L1967
.L1972:
	movzx	eax, BYTE PTR -76[rbp]
	sub	eax, 1
	mov	BYTE PTR -53[rbp], al
	movzx	edx, BYTE PTR -72[rbp]
	movzx	eax, BYTE PTR -55[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC302[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 296
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$type
	cmp	al, 48
	je	.L1975
	movzx	eax, BYTE PTR -55[rbp]
	mov	rdx, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	DsrControlP$0$addDsrHeader
	cmp	al, 1
	jne	.L1975
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -55[rbp], al
	jmp	.L1969
.L1975:
	movzx	eax, BYTE PTR -53[rbp]
	add	eax, eax
	add	eax, 1
	movzx	edx, al
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$add
	test	al, al
	je	.L1976
	movzx	eax, BYTE PTR -55[rbp]
	mov	ecx, eax
	lea	rdx, .LC48[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 297
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -55[rbp], al
	jmp	.L1969
.L1976:
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$value
	mov	QWORD PTR -40[rbp], rax
	cmp	QWORD PTR -40[rbp], 0
	jne	.L1977
	movzx	eax, BYTE PTR -55[rbp]
	mov	ecx, eax
	lea	rdx, .LC49[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 298
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -55[rbp], al
	jmp	.L1969
.L1977:
	mov	rax, QWORD PTR -40[rbp]
	mov	ecx, 0
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	mov	rax, QWORD PTR -40[rbp]
	mov	ecx, 0
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	movzx	edx, BYTE PTR -53[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	ecx, edx
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	cmp	BYTE PTR -53[rbp], 0
	je	.L1978
	movzx	eax, BYTE PTR -53[rbp]
	mov	BYTE PTR -54[rbp], al
	movzx	eax, BYTE PTR -72[rbp]
	mov	edi, eax
	call	DsrControlP$0$RouteNodeList$next
	movzx	eax, al
	sub	BYTE PTR -54[rbp], 1
	movzx	edx, BYTE PTR -54[rbp]
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	mov	rdx, QWORD PTR -40[rbp]
	add	rdx, rcx
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	jmp	.L1979
.L1980:
	movzx	eax, BYTE PTR -54[rbp]
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	eax, al
	mov	edi, eax
	call	DsrControlP$0$RouteNodeList$next
	movzx	eax, al
	movzx	edx, BYTE PTR -54[rbp]
	sub	edx, 1
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	mov	rdx, QWORD PTR -40[rbp]
	add	rdx, rcx
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	eax, BYTE PTR -54[rbp]
	sub	eax, 1
	mov	BYTE PTR -54[rbp], al
.L1979:
	cmp	BYTE PTR -54[rbp], 0
	jne	.L1980
.L1978:
	cmp	BYTE PTR -53[rbp], 0
	je	.L1981
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	edx, ax
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
	jmp	.L1982
.L1981:
	movzx	edx, BYTE PTR -72[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
.L1982:
	movzx	ebx, BYTE PTR -72[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	edx, ax
	movzx	eax, BYTE PTR -55[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC303[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 299
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$requestAck
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -55[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, [rax+rcx]
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 2
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$send
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -55[rbp], al
.L1969:
	movzx	eax, BYTE PTR -55[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$end
	test	al, al
	je	.L1983
.L1967:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1985
	call	__stack_chk_fail@PLT
.L1985:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE727:
	.size	DsrControlP$0$RouteCache$routeUpdate, .-DsrControlP$0$RouteCache$routeUpdate
	.type	LruDataCacheP$2$DataCache$lookup, @function
LruDataCacheP$2$DataCache$lookup:
.LFB728:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	LruDataCacheP$2$lookup
	mov	BYTE PTR -17[rbp], al
	call	LruDataCacheP$2$printCache
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jne	.L1987
	mov	eax, 0
	jmp	.L1988
.L1987:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
.L1988:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE728:
	.size	LruDataCacheP$2$DataCache$lookup, .-LruDataCacheP$2$DataCache$lookup
	.type	LruDataCacheP$2$lookup, @function
LruDataCacheP$2$lookup:
.LFB729:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rdi
	mov	BYTE PTR -17[rbp], 0
	jmp	.L1990
.L1993:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, edx
	movzx	eax, al
	and	eax, 7
	cdqe
	lea	rdx, 0[0+rbx*8]
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	LruDataCacheP$2$Equal$test
	test	al, al
	jne	.L1995
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L1990:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jb	.L1993
	jmp	.L1992
.L1995:
	nop
.L1992:
	movzx	eax, BYTE PTR -17[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE729:
	.size	LruDataCacheP$2$lookup, .-LruDataCacheP$2$lookup
	.type	LruDataCacheP$2$printCache, @function
LruDataCacheP$2$printCache:
.LFB730:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	lea	rdx, .LC144[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 386
	mov	eax, 0
	call	sim_log_debug
	mov	BYTE PTR -1[rbp], 0
	jmp	.L1997
.L1999:
	call	sim_node
	movzx	edx, BYTE PTR -1[rbp]
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	lea	rdx, 0[0+rax*4]
	lea	rax, LruDataCacheP$2$cache[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	ecx, eax
	lea	rdx, .LC146[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 387
	mov	eax, 0
	call	sim_log_debug_clear
	call	sim_node
	lea	rdx, LruDataCacheP$2$first[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jne	.L1998
	lea	rdx, .LC147[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 388
	mov	eax, 0
	call	sim_log_debug_clear
.L1998:
	movzx	eax, BYTE PTR -1[rbp]
	add	eax, 1
	mov	BYTE PTR -1[rbp], al
.L1997:
	call	sim_node
	lea	rdx, LruDataCacheP$2$count[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -1[rbp], al
	jb	.L1999
	lea	rdx, .LC148[rip]
	lea	rsi, .LC145[rip]
	mov	edi, 389
	mov	eax, 0
	call	sim_log_debug_clear
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE730:
	.size	LruDataCacheP$2$printCache, .-LruDataCacheP$2$printCache
	.section	.rodata
.LC304:
	.string	"DT: Removed position %u\n"
	.text
	.type	DataTimerP$0$removeTimer, @function
DataTimerP$0$removeTimer:
.LFB731:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 16
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -20[rbp], al
	jnb	.L2005
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC304[rip]
	lea	rsi, .LC137[rip]
	mov	edi, 392
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, -1[rdx]
	lea	rdx, DataTimerP$0$size[rip]
	mov	BYTE PTR [rax+rdx], cl
	jmp	.L2003
.L2004:
	call	sim_node
	mov	rbx, rax
	movzx	eax, BYTE PTR -20[rbp]
	lea	r12d, 1[rax]
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -20[rbp]
	movsx	rax, r12d
	lea	rsi, 0[0+rbx*8]
	add	rax, rsi
	lea	rsi, [rax+rax]
	lea	rax, DataTimerP$0$data[rip]
	movzx	eax, WORD PTR [rsi+rax]
	movsx	rcx, ecx
	sal	rdx, 3
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, DataTimerP$0$data[rip]
	mov	WORD PTR [rcx+rdx], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, BYTE PTR -20[rbp]
	lea	r12d, 1[rax]
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -20[rbp]
	movsx	rax, r12d
	lea	rsi, 0[0+rbx*8]
	add	rax, rsi
	lea	rsi, [rax+rax]
	lea	rax, DataTimerP$0$delay[rip]
	movzx	eax, WORD PTR [rsi+rax]
	movsx	rcx, ecx
	sal	rdx, 3
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, DataTimerP$0$delay[rip]
	mov	WORD PTR [rcx+rdx], ax
	movzx	eax, BYTE PTR -20[rbp]
	add	eax, 1
	mov	BYTE PTR -20[rbp], al
.L2003:
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -20[rbp], al
	jb	.L2004
	jmp	.L2000
.L2005:
	nop
.L2000:
	add	rsp, 16
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE731:
	.size	DataTimerP$0$removeTimer, .-DataTimerP$0$removeTimer
	.type	DataTimerP$0$adjustTimer, @function
DataTimerP$0$adjustTimer:
.LFB732:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	call	DataTimerP$0$Timer$getNow
	mov	QWORD PTR -16[rbp], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, DataTimerP$0$startTime[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -16[rbp]
	sub	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	call	DataTimerP$0$Timer$stop
	mov	BYTE PTR -17[rbp], 0
	jmp	.L2007
.L2008:
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rax*8]
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, DataTimerP$0$delay[rip]
	movzx	ecx, WORD PTR [rcx+rdx]
	mov	rdx, QWORD PTR -8[rbp]
	mov	esi, edx
	movzx	edx, BYTE PTR -17[rbp]
	sub	ecx, esi
	movsx	rdx, edx
	sal	rax, 3
	add	rax, rdx
	lea	rdx, [rax+rax]
	lea	rax, DataTimerP$0$delay[rip]
	mov	WORD PTR [rdx+rax], cx
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L2007:
	call	sim_node
	lea	rdx, DataTimerP$0$size[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -17[rbp], al
	jb	.L2008
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, DataTimerP$0$startTime[rip]
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE732:
	.size	DataTimerP$0$adjustTimer, .-DataTimerP$0$adjustTimer
	.type	DataTimerP$0$Timer$startOneShot, @function
DataTimerP$0$Timer$startOneShot:
.LFB733:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	mov	edi, 1
	call	VirtualizeTimerC$0$Timer$startOneShot
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE733:
	.size	DataTimerP$0$Timer$startOneShot, .-DataTimerP$0$Timer$startOneShot
	.type	PacketEngineP$PacketEngine$waitList, @function
PacketEngineP$PacketEngine$waitList:
.LFB734:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -1[rbp], al
	cmp	BYTE PTR -1[rbp], 39
	ja	.L2011
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -1[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -20[rbp], al
	je	.L2011
	movzx	edx, BYTE PTR -1[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	PacketEngineP$PacketWaitList$next
	mov	BYTE PTR -1[rbp], al
.L2011:
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE734:
	.size	PacketEngineP$PacketEngine$waitList, .-PacketEngineP$PacketEngine$waitList
	.type	PacketEngineP$PacketWaitList$next, @function
PacketEngineP$PacketWaitList$next:
.LFB735:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -8[rbp], 39
	ja	.L2014
	add	BYTE PTR -8[rbp], 1
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	edx, cl
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 3
	add	eax, edx
	lea	edx, 0[0+rax*4]
	add	eax, edx
	shr	ax, 8
	mov	edx, eax
	shr	dl, 5
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 3
	sub	ecx, eax
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
	jmp	.L2015
.L2018:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 4
	jne	.L2016
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -4[rbp], al
	jne	.L2016
	movzx	eax, BYTE PTR -8[rbp]
	jmp	.L2017
.L2016:
	add	BYTE PTR -8[rbp], 1
	movzx	ecx, BYTE PTR -8[rbp]
	movzx	edx, cl
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 3
	add	eax, edx
	lea	edx, 0[0+rax*4]
	add	eax, edx
	shr	ax, 8
	mov	edx, eax
	shr	dl, 5
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 3
	sub	ecx, eax
	mov	edx, ecx
	mov	BYTE PTR -8[rbp], dl
.L2015:
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -8[rbp], al
	jne	.L2018
.L2014:
	mov	eax, 40
.L2017:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE735:
	.size	PacketEngineP$PacketWaitList$next, .-PacketEngineP$PacketWaitList$next
	.type	PacketEngineP$pidCombineInternal, @function
PacketEngineP$pidCombineInternal:
.LFB736:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -20[rbp], al
	jnb	.L2020
	movzx	eax, BYTE PTR -20[rbp]
	add	eax, 40
	jmp	.L2021
.L2020:
	movzx	eax, BYTE PTR -20[rbp]
.L2021:
	mov	BYTE PTR -2[rbp], al
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -24[rbp], al
	jnb	.L2022
	movzx	eax, BYTE PTR -24[rbp]
	add	eax, 40
	jmp	.L2023
.L2022:
	movzx	eax, BYTE PTR -24[rbp]
.L2023:
	mov	BYTE PTR -1[rbp], al
	cmp	BYTE PTR -20[rbp], 40
	jne	.L2024
	movzx	eax, BYTE PTR -24[rbp]
	jmp	.L2025
.L2024:
	cmp	BYTE PTR -24[rbp], 40
	jne	.L2026
	movzx	eax, BYTE PTR -20[rbp]
	jmp	.L2025
.L2026:
	movzx	eax, BYTE PTR -2[rbp]
	cmp	al, BYTE PTR -1[rbp]
	jnb	.L2027
	movzx	eax, BYTE PTR -20[rbp]
	jmp	.L2025
.L2027:
	movzx	eax, BYTE PTR -24[rbp]
.L2025:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE736:
	.size	PacketEngineP$pidCombineInternal, .-PacketEngineP$pidCombineInternal
	.type	PacketEngineP$PacketEngine$packet, @function
PacketEngineP$PacketEngine$packet:
.LFB737:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -8[rbp], 39
	ja	.L2030
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 1
	je	.L2030
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -4[rbp], al
	je	.L2031
.L2030:
	mov	eax, 0
	jmp	.L2032
.L2031:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
.L2032:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE737:
	.size	PacketEngineP$PacketEngine$packet, .-PacketEngineP$PacketEngine$packet
	.type	TlvPacketP$0$TlvSinglePacket$length, @function
TlvPacketP$0$TlvSinglePacket$length:
.LFB738:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	TlvPacketP$0$TlvSingle$length
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE738:
	.size	TlvPacketP$0$TlvSinglePacket$length, .-TlvPacketP$0$TlvSinglePacket$length
	.section	.rodata
	.align 8
.LC305:
	.string	"TLV: Type %hhu found at byte %hhu\n"
.LC306:
	.string	"TLV: Type %hhu not found\n"
	.text
	.type	TlvP$TlvList$next, @function
TlvP$TlvList$next:
.LFB739:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	cmp	BYTE PTR -24[rbp], -1
	jne	.L2036
	mov	BYTE PTR -24[rbp], 0
	jmp	.L2038
.L2036:
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvP$tlvAt
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	eax, al
	add	rax, 2
	add	BYTE PTR -24[rbp], al
	jmp	.L2038
.L2041:
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvP$tlvAt
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	cmp	BYTE PTR -20[rbp], al
	jne	.L2039
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC305[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 256
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -24[rbp]
	jmp	.L2040
.L2039:
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	eax, al
	add	rax, 2
	add	BYTE PTR -24[rbp], al
.L2038:
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	je	.L2041
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC306[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 257
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -24[rbp]
.L2040:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE739:
	.size	TlvP$TlvList$next, .-TlvP$TlvList$next
	.section	.rodata
	.align 8
.LC307:
	.string	"TLV: Key too large or type doesn't match!\n"
	.text
	.type	TlvP$TlvMultiple$length, @function
TlvP$TlvMultiple$length:
.LFB740:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvP$tlvAt
	mov	QWORD PTR -8[rbp], rax
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	jne	.L2043
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	cmp	BYTE PTR -20[rbp], al
	je	.L2044
.L2043:
	lea	rdx, .LC307[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 249
	mov	eax, 0
	call	sim_log_error
	mov	eax, 0
	jmp	.L2045
.L2044:
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
.L2045:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE740:
	.size	TlvP$TlvMultiple$length, .-TlvP$TlvMultiple$length
	.type	TlvPacketP$0$SubPacket$payloadLength, @function
TlvPacketP$0$SubPacket$payloadLength:
.LFB741:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$payloadLength
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE741:
	.size	TlvPacketP$0$SubPacket$payloadLength, .-TlvPacketP$0$SubPacket$payloadLength
	.type	PacketEngineP$Packet$getPayload, @function
PacketEngineP$Packet$getPayload:
.LFB742:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -44[rbp], al
	movzx	eax, BYTE PTR -44[rbp]
	add	eax, 1
	movzx	ebx, al
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rcx, QWORD PTR -40[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$SubPacket$getPayload
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	je	.L2049
	add	QWORD PTR -24[rbp], 1
.L2049:
	mov	rax, QWORD PTR -24[rbp]
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE742:
	.size	PacketEngineP$Packet$getPayload, .-PacketEngineP$Packet$getPayload
	.type	PacketEngineP$SubPacket$default$getPayload, @function
PacketEngineP$SubPacket$default$getPayload:
.LFB743:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	ecx, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC14[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 135
	mov	eax, 0
	call	sim_log_error
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE743:
	.size	PacketEngineP$SubPacket$default$getPayload, .-PacketEngineP$SubPacket$default$getPayload
	.type	PacketEngineP$SubPacket$getPayload, @function
PacketEngineP$SubPacket$getPayload:
.LFB744:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	cmp	eax, 4
	je	.L2054
	cmp	eax, 48
	je	.L2055
	jmp	.L2059
.L2054:
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TossimActiveMessageC$Packet$getPayload
	mov	QWORD PTR -8[rbp], rax
	jmp	.L2057
.L2055:
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$Packet$getPayload
	mov	QWORD PTR -8[rbp], rax
	jmp	.L2057
.L2059:
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$SubPacket$default$getPayload
	mov	QWORD PTR -8[rbp], rax
	nop
.L2057:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE744:
	.size	PacketEngineP$SubPacket$getPayload, .-PacketEngineP$SubPacket$getPayload
	.section	.rodata
	.align 8
.LC308:
	.string	"DSR: Pkt %u: Route request out cache for %u already gone!\n"
	.align 8
.LC309:
	.string	"DSR: Route request out timer fired for %u, but no packets are waiting!\n"
	.align 8
.LC310:
	.string	"DSR: Pkt %u: Sending route request #%hhu to %u\n"
	.align 8
.LC311:
	.string	"DSR: Sent max route requests for %u, dropping all packets!\n"
	.text
	.type	DsrControlP$0$RouteRequestOutTimer$expired, @function
DsrControlP$0$RouteRequestOutTimer$expired:
.LFB745:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, edi
	mov	WORD PTR -36[rbp], ax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	movzx	eax, WORD PTR -36[rbp]
	mov	edi, eax
	call	DsrControlP$0$findSingleDsrPktTo
	mov	BYTE PTR -21[rbp], al
	movzx	eax, WORD PTR -36[rbp]
	mov	WORD PTR -20[rbp], ax
	mov	BYTE PTR -18[rbp], -1
	mov	BYTE PTR -17[rbp], 0
	lea	rax, -20[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestOutCache$lookup
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 0
	jne	.L2061
	movzx	edx, WORD PTR -36[rbp]
	movzx	eax, BYTE PTR -21[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC308[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 304
	mov	eax, 0
	call	sim_log_error
	jmp	.L2060
.L2061:
	movzx	eax, BYTE PTR -21[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$end
	test	al, al
	je	.L2063
	movzx	eax, WORD PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC309[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 305
	mov	eax, 0
	call	sim_log_error
	jmp	.L2060
.L2063:
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 3[rax]
	cmp	al, 15
	ja	.L2064
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 3[rax]
	movzx	edx, al
	movzx	eax, WORD PTR -36[rbp]
	mov	esi, edx
	mov	edi, eax
	call	DsrControlP$0$updateRouteRequestOutTimer
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 3[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	BYTE PTR 3[rax], dl
	movzx	ecx, WORD PTR -36[rbp]
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 3[rax]
	movzx	edx, al
	movzx	eax, BYTE PTR -21[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC310[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 306
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -21[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$set
	call	DsrControlP$0$composePkt$postTask
	jmp	.L2060
.L2064:
	movzx	eax, WORD PTR -36[rbp]
	mov	ecx, eax
	lea	rdx, .LC311[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 307
	mov	eax, 0
	call	sim_log_error
	mov	rax, QWORD PTR -16[rbp]
	mov	BYTE PTR 3[rax], 0
	jmp	.L2066
.L2067:
	movzx	eax, BYTE PTR -21[rbp]
	mov	esi, 1
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$upperSendDone
	movzx	eax, BYTE PTR -21[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketEngine$drop
	movzx	eax, WORD PTR -36[rbp]
	mov	edi, eax
	call	DsrControlP$0$findSingleDsrPktTo
	mov	BYTE PTR -21[rbp], al
.L2066:
	movzx	eax, BYTE PTR -21[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$end
	test	al, al
	je	.L2067
.L2060:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L2069
	call	__stack_chk_fail@PLT
.L2069:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE745:
	.size	DsrControlP$0$RouteRequestOutTimer$expired, .-DsrControlP$0$RouteRequestOutTimer$expired
	.type	DsrControlP$0$findSingleDsrPktTo, @function
DsrControlP$0$findSingleDsrPktTo:
.LFB746:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	call	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	BYTE PTR -9[rbp], al
	jmp	.L2071
.L2075:
	movzx	eax, BYTE PTR -9[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$packet
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L2072
	movzx	eax, BYTE PTR -9[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$packet
	mov	QWORD PTR -8[rbp], rax
.L2072:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	cmp	WORD PTR -20[rbp], ax
	jne	.L2073
	movzx	eax, BYTE PTR -9[rbp]
	jmp	.L2074
.L2073:
	movzx	eax, BYTE PTR -9[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	BYTE PTR -9[rbp], al
.L2071:
	movzx	eax, BYTE PTR -9[rbp]
	mov	edi, eax
	call	DsrControlP$0$SingleDsrPacketWaitList$end
	test	al, al
	je	.L2075
	movzx	eax, BYTE PTR -9[rbp]
.L2074:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE746:
	.size	DsrControlP$0$findSingleDsrPktTo, .-DsrControlP$0$findSingleDsrPktTo
	.type	DsrControlP$0$SingleDsrPacketEngine$drop, @function
DsrControlP$0$SingleDsrPacketEngine$drop:
.LFB747:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 4
	call	PacketEngineP$PacketEngine$drop
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	mov	edi, 48
	call	PacketEngineP$PacketEngine$drop
	movzx	edx, al
	movzx	eax, BYTE PTR -1[rbp]
	mov	esi, edx
	mov	edi, eax
	call	ecombine
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -1[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE747:
	.size	DsrControlP$0$SingleDsrPacketEngine$drop, .-DsrControlP$0$SingleDsrPacketEngine$drop
	.section	.rodata
	.align 8
.LC312:
	.string	"PE: Dropping pkt %u from the buffer\n"
	.text
	.type	PacketEngineP$PacketEngine$drop, @function
PacketEngineP$PacketEngine$drop:
.LFB748:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -8[rbp], 39
	ja	.L2079
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 4
	jne	.L2079
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -4[rbp], al
	je	.L2080
.L2079:
	mov	eax, 6
	jmp	.L2081
.L2080:
	movzx	eax, BYTE PTR -8[rbp]
	mov	ecx, eax
	lea	rdx, .LC312[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 143
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -8[rbp]
	mov	edi, eax
	call	PacketEngineP$removePacket
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -8[rbp], al
	jne	.L2082
	call	PacketEngineP$moveWaitIndex
.L2082:
	mov	eax, 0
.L2081:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE748:
	.size	PacketEngineP$PacketEngine$drop, .-PacketEngineP$PacketEngine$drop
	.section	.rodata
	.align 8
.LC313:
	.string	"DSR: Pkt %u: DSR header already present!\n"
	.align 8
.LC314:
	.string	"DSR: Pkt %u: Adding DSR header failed!\n"
	.text
	.type	DsrControlP$0$addDsrHeader, @function
DsrControlP$0$addDsrHeader:
.LFB749:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$type
	cmp	al, 48
	jne	.L2084
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC313[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 342
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	mov	eax, 1
	jmp	.L2085
.L2084:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	DsrControlP$0$DsrHeader$add
	test	al, al
	je	.L2086
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC314[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 343
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	mov	eax, 1
	jmp	.L2085
.L2086:
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, 48
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setType
	mov	eax, 0
.L2085:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE749:
	.size	DsrControlP$0$addDsrHeader, .-DsrControlP$0$addDsrHeader
	.type	TlvPacketP$0$postLengthChange, @function
TlvPacketP$0$postLengthChange:
.LFB750:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	eax, edx
	mov	BYTE PTR -20[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlock$length
	movzx	edx, BYTE PTR -20[rbp]
	add	eax, edx
	movzx	edx, al
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$setPayloadLength
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE750:
	.size	TlvPacketP$0$postLengthChange, .-TlvPacketP$0$postLengthChange
	.type	TossimActiveMessageC$AMPacket$setType, @function
TossimActiveMessageC$AMPacket$setType:
.LFB751:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	eax, BYTE PTR -28[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	add	rdx, 6
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE751:
	.size	TossimActiveMessageC$AMPacket$setType, .-TossimActiveMessageC$AMPacket$setType
	.type	TlvPacketP$0$TlvSinglePacket$add, @function
TlvPacketP$0$TlvSinglePacket$add:
.LFB752:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	ecx, edi
	mov	QWORD PTR -48[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -18[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	TlvPacketP$0$preLengthChange
	mov	QWORD PTR -16[rbp], rax
	call	TlvPacketP$0$maxLen
	movzx	edi, al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	ecx, al
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	r8d, edi
	mov	edi, eax
	call	TlvPacketP$0$TlvSingle$add
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	edx, al
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	TlvPacketP$0$postLengthChange
	movzx	eax, BYTE PTR -17[rbp]
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L2091
	call	__stack_chk_fail@PLT
.L2091:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE752:
	.size	TlvPacketP$0$TlvSinglePacket$add, .-TlvPacketP$0$TlvSinglePacket$add
	.type	TlvPacketP$0$preLengthChange, @function
TlvPacketP$0$preLengthChange:
.LFB753:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	mov	rdx, QWORD PTR -32[rbp]
	mov	BYTE PTR [rdx], al
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$TlvBlock$length
	mov	ecx, eax
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	sub	eax, ecx
	mov	edx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	BYTE PTR [rax], dl
	mov	rax, QWORD PTR -32[rbp]
	movzx	eax, BYTE PTR [rax]
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$setPayloadLength
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE753:
	.size	TlvPacketP$0$preLengthChange, .-TlvPacketP$0$preLengthChange
	.section	.rodata
	.align 8
.LC315:
	.string	"TLV: Not enough room to add type %hhu!\n"
	.align 8
.LC316:
	.string	"TLV: Adding type %hhu with length %hhu\n"
	.text
	.type	TlvP$TlvMultiple$add, @function
TlvP$TlvMultiple$add:
.LFB754:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	eax, ecx
	mov	esi, r8d
	mov	ecx, r9d
	mov	edx, edi
	mov	BYTE PTR -52[rbp], dl
	mov	BYTE PTR -56[rbp], al
	mov	eax, esi
	mov	BYTE PTR -76[rbp], al
	mov	eax, ecx
	mov	BYTE PTR -80[rbp], al
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -40[rbp], rax
	movzx	eax, BYTE PTR -56[rbp]
	add	eax, 2
	mov	BYTE PTR -41[rbp], al
	mov	rax, QWORD PTR -64[rbp]
	mov	rdi, rax
	call	TlvP$TlvBlock$length
	movzx	edx, al
	movzx	eax, BYTE PTR -41[rbp]
	add	edx, eax
	movzx	eax, BYTE PTR -80[rbp]
	cmp	edx, eax
	jle	.L2095
	movzx	eax, BYTE PTR -52[rbp]
	mov	ecx, eax
	lea	rdx, .LC315[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 254
	mov	eax, 0
	call	sim_log_error
	mov	eax, 2
	jmp	.L2096
.L2095:
	movzx	edx, BYTE PTR -56[rbp]
	movzx	eax, BYTE PTR -52[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC316[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 255
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	lea	rbx, 1[rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	eax, al
	add	rax, rbx
	mov	QWORD PTR -32[rbp], rax
	movzx	edx, BYTE PTR -76[rbp]
	movzx	ecx, BYTE PTR -41[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rcx, rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	rdi, rcx
	call	memmove@PLT
	cmp	QWORD PTR -72[rbp], 0
	je	.L2097
	cmp	BYTE PTR -56[rbp], 0
	je	.L2097
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	mov	rdx, QWORD PTR -72[rbp]
	mov	BYTE PTR [rdx], al
.L2097:
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	edx, BYTE PTR -41[rbp]
	add	eax, edx
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint8
	movzx	edx, BYTE PTR -52[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint8
	movzx	eax, BYTE PTR -56[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
	mov	eax, 0
.L2096:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE754:
	.size	TlvP$TlvMultiple$add, .-TlvP$TlvMultiple$add
	.type	TlvPacketP$0$TlvSinglePacket$value, @function
TlvPacketP$0$TlvSinglePacket$value:
.LFB755:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	TlvPacketP$0$TlvSingle$value
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE755:
	.size	TlvPacketP$0$TlvSinglePacket$value, .-TlvPacketP$0$TlvSinglePacket$value
	.type	TlvP$TlvMultiple$value, @function
TlvP$TlvMultiple$value:
.LFB756:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvP$tlvAt
	mov	QWORD PTR -8[rbp], rax
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	jne	.L2101
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	cmp	BYTE PTR -20[rbp], al
	je	.L2102
.L2101:
	lea	rdx, .LC307[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 253
	mov	eax, 0
	call	sim_log_error
	mov	eax, 0
	jmp	.L2103
.L2102:
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 2
.L2103:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE756:
	.size	TlvP$TlvMultiple$value, .-TlvP$TlvMultiple$value
	.type	TossimActiveMessageC$AMPacket$setDestination, @function
TossimActiveMessageC$AMPacket$setDestination:
.LFB757:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	WORD PTR -28[rbp], ax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimActiveMessageC$getHeader
	mov	QWORD PTR -8[rbp], rax
	movzx	edx, WORD PTR -28[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint16
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE757:
	.size	TossimActiveMessageC$AMPacket$setDestination, .-TossimActiveMessageC$AMPacket$setDestination
	.section	.rodata
	.align 8
.LC317:
	.string	"PE: Marking pkt %u to be sent\n"
	.text
	.type	PacketEngineP$PacketEngine$send, @function
PacketEngineP$PacketEngine$send:
.LFB758:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	cmp	BYTE PTR -8[rbp], 39
	ja	.L2106
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 4
	jne	.L2106
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -4[rbp], al
	je	.L2107
.L2106:
	mov	eax, 6
	jmp	.L2108
.L2107:
	movzx	eax, BYTE PTR -8[rbp]
	mov	ecx, eax
	lea	rdx, .LC317[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 139
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -8[rbp]
	mov	esi, 8
	mov	edi, eax
	call	PacketEngineP$markPacket
	mov	eax, 0
.L2108:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE758:
	.size	PacketEngineP$PacketEngine$send, .-PacketEngineP$PacketEngine$send
	.section	.rodata
	.align 8
.LC318:
	.string	"DSR: Pkt %u: No route found to %u, dropping salvaged packet!\n"
	.align 8
.LC319:
	.string	"DSR: Pkt %u: Route found to %u, modifying salvaged packet\n"
	.align 8
.LC320:
	.string	"DSR: Pkt %u: Not enough room to extend source route, dropping!\n"
	.align 8
.LC321:
	.string	"DSR: Pkt %u: Sending salvaged to %u along the way to %u\n"
	.text
	.type	DsrControlP$0$SalvageRouteCache$routeUpdate, @function
DsrControlP$0$SalvageRouteCache$routeUpdate:
.LFB759:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	ecx, esi
	mov	eax, edx
	mov	edx, edi
	mov	BYTE PTR -52[rbp], dl
	mov	edx, ecx
	mov	BYTE PTR -56[rbp], dl
	mov	BYTE PTR -60[rbp], al
	call	DsrControlP$0$DsrPacketEngine$waitList
	mov	BYTE PTR -44[rbp], al
	jmp	.L2110
.L2120:
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$Salvage$get
	test	al, al
	jne	.L2111
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketWaitList$next
	mov	BYTE PTR -44[rbp], al
	jmp	.L2110
.L2111:
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$packet
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	edx, BYTE PTR -56[rbp]
	cmp	ax, dx
	je	.L2112
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketWaitList$next
	mov	BYTE PTR -44[rbp], al
	jmp	.L2110
.L2112:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$length
	test	al, al
	jne	.L2113
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketWaitList$next
	mov	BYTE PTR -44[rbp], al
	jmp	.L2110
.L2113:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$value
	mov	QWORD PTR -32[rbp], rax
	cmp	BYTE PTR -60[rbp], 0
	jne	.L2114
	movzx	edx, BYTE PTR -56[rbp]
	movzx	eax, BYTE PTR -44[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC318[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 300
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -44[rbp]
	mov	esi, 1
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$upperSendDone
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$Salvage$clear
	call	DsrControlP$0$DsrPacketEngine$waitList
	mov	BYTE PTR -44[rbp], al
	jmp	.L2110
.L2114:
	movzx	eax, BYTE PTR -60[rbp]
	mov	BYTE PTR -42[rbp], al
	movzx	edx, BYTE PTR -56[rbp]
	movzx	eax, BYTE PTR -44[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC319[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 301
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -42[rbp]
	add	eax, eax
	add	eax, 1
	movzx	edx, al
	mov	rax, QWORD PTR -40[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$setLength
	test	al, al
	je	.L2115
	movzx	eax, BYTE PTR -44[rbp]
	mov	ecx, eax
	lea	rdx, .LC320[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 302
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -44[rbp]
	mov	esi, 1
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$upperSendDone
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$Salvage$clear
	call	DsrControlP$0$DsrPacketEngine$waitList
	mov	BYTE PTR -44[rbp], al
	jmp	.L2110
.L2115:
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	mov	BYTE PTR -41[rbp], al
	movzx	eax, BYTE PTR -41[rbp]
	add	eax, 1
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, edx
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	movzx	eax, BYTE PTR -42[rbp]
	sub	eax, 1
	movzx	edx, al
	mov	rax, QWORD PTR -32[rbp]
	mov	ecx, edx
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	movzx	eax, BYTE PTR -42[rbp]
	sub	eax, 1
	mov	BYTE PTR -43[rbp], al
	movzx	eax, BYTE PTR -56[rbp]
	mov	edi, eax
	call	DsrControlP$0$RouteNodeList$next
	movzx	eax, al
	movzx	edx, BYTE PTR -43[rbp]
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	mov	rdx, QWORD PTR -32[rbp]
	add	rdx, rcx
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	jmp	.L2116
.L2117:
	movzx	eax, BYTE PTR -43[rbp]
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	eax, al
	mov	edi, eax
	call	DsrControlP$0$RouteNodeList$next
	movzx	eax, al
	movzx	edx, BYTE PTR -43[rbp]
	sub	edx, 1
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	mov	rdx, QWORD PTR -32[rbp]
	add	rdx, rcx
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	eax, BYTE PTR -43[rbp]
	sub	eax, 1
	mov	BYTE PTR -43[rbp], al
.L2116:
	cmp	BYTE PTR -43[rbp], 0
	jne	.L2117
	cmp	BYTE PTR -42[rbp], 1
	jbe	.L2118
	mov	rax, QWORD PTR -32[rbp]
	add	rax, 3
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	edx, ax
	mov	rax, QWORD PTR -40[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
	jmp	.L2119
.L2118:
	movzx	edx, BYTE PTR -56[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
.L2119:
	movzx	ebx, BYTE PTR -56[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	edx, ax
	movzx	eax, BYTE PTR -44[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC321[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 303
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$requestAck
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -44[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, [rax+rcx]
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 2
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$Salvage$clear
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$send
	call	DsrControlP$0$DsrPacketEngine$waitList
	mov	BYTE PTR -44[rbp], al
.L2110:
	movzx	eax, BYTE PTR -44[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketWaitList$end
	test	al, al
	je	.L2120
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE759:
	.size	DsrControlP$0$SalvageRouteCache$routeUpdate, .-DsrControlP$0$SalvageRouteCache$routeUpdate
	.type	BitVectorC$1$BitVector$clear, @function
BitVectorC$1$BitVector$clear:
.LFB760:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 8
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$getMask
	movzx	eax, ax
	not	eax
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$1$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$1$m_bits[rip]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	mov	ecx, eax
	mov	eax, r12d
	and	ecx, eax
	movzx	eax, dx
	mov	edx, ecx
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$1$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 8
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE760:
	.size	BitVectorC$1$BitVector$clear, .-BitVectorC$1$BitVector$clear
	.type	TlvPacketP$0$TlvSinglePacket$setLength, @function
TlvPacketP$0$TlvSinglePacket$setLength:
.LFB761:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	ecx, edi
	mov	QWORD PTR -48[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -18[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	TlvPacketP$0$preLengthChange
	mov	QWORD PTR -16[rbp], rax
	call	TlvPacketP$0$maxLen
	movzx	edi, al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	ecx, al
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	r8d, edi
	mov	edi, eax
	call	TlvPacketP$0$TlvSingle$setLength
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	edx, al
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	TlvPacketP$0$postLengthChange
	movzx	eax, BYTE PTR -17[rbp]
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L2124
	call	__stack_chk_fail@PLT
.L2124:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE761:
	.size	TlvPacketP$0$TlvSinglePacket$setLength, .-TlvPacketP$0$TlvSinglePacket$setLength
	.section	.rodata
	.align 8
.LC322:
	.string	"TLV: Not enough room to set length of type %hhu to %hhu!\n"
	.align 8
.LC323:
	.string	"TLV: Setting length of type %hhu to %hhu\n"
	.text
	.type	TlvP$TlvMultiple$setLength, @function
TlvP$TlvMultiple$setLength:
.LFB762:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 88
	.cfi_offset 3, -24
	mov	QWORD PTR -80[rbp], rsi
	mov	eax, ecx
	mov	esi, r9d
	mov	ecx, edi
	mov	BYTE PTR -68[rbp], cl
	mov	BYTE PTR -72[rbp], dl
	mov	BYTE PTR -84[rbp], al
	mov	eax, r8d
	mov	BYTE PTR -88[rbp], al
	mov	eax, esi
	mov	BYTE PTR -92[rbp], al
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -48[rbp], rax
	movzx	edx, BYTE PTR -72[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvP$tlvAt
	mov	QWORD PTR -40[rbp], rax
	movzx	edx, BYTE PTR -72[rbp]
	movzx	eax, BYTE PTR -68[rbp]
	mov	rcx, QWORD PTR -80[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvP$TlvList$end
	test	al, al
	jne	.L2126
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	cmp	BYTE PTR -68[rbp], al
	je	.L2127
.L2126:
	lea	rdx, .LC307[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 250
	mov	eax, 0
	call	sim_log_error
	mov	eax, 6
	jmp	.L2128
.L2127:
	movzx	ebx, BYTE PTR -84[rbp]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	edx, al
	mov	eax, ebx
	sub	eax, edx
	mov	WORD PTR -50[rbp], ax
	mov	rax, QWORD PTR -40[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	eax, al
	lea	rdx, 2[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	rdi, rax
	call	TlvP$TlvBlock$length
	mov	rdx, QWORD PTR -32[rbp]
	sub	rdx, QWORD PTR -80[rbp]
	mov	ecx, edx
	sub	eax, ecx
	mov	edx, eax
	movzx	eax, BYTE PTR -88[rbp]
	add	eax, edx
	mov	BYTE PTR -51[rbp], al
	cmp	BYTE PTR -84[rbp], 0
	jne	.L2129
	movzx	eax, WORD PTR -50[rbp]
	sub	eax, 2
	mov	WORD PTR -50[rbp], ax
.L2129:
	cmp	WORD PTR -50[rbp], 0
	jle	.L2130
	mov	rax, QWORD PTR -80[rbp]
	mov	rdi, rax
	call	TlvP$TlvBlock$length
	movzx	edx, al
	movsx	eax, WORD PTR -50[rbp]
	add	edx, eax
	movzx	eax, BYTE PTR -88[rbp]
	add	edx, eax
	movzx	eax, BYTE PTR -92[rbp]
	cmp	edx, eax
	jle	.L2130
	movzx	edx, BYTE PTR -84[rbp]
	movzx	eax, BYTE PTR -68[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC322[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 251
	mov	eax, 0
	call	sim_log_error
	mov	eax, 2
	jmp	.L2128
.L2130:
	movzx	edx, BYTE PTR -84[rbp]
	movzx	eax, BYTE PTR -68[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC323[rip]
	lea	rsi, .LC140[rip]
	mov	edi, 252
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -48[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	edx, WORD PTR -50[rbp]
	add	eax, edx
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint8
	movzx	edx, BYTE PTR -51[rbp]
	movsx	rcx, WORD PTR -50[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rcx, rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rax
	mov	rdi, rcx
	call	memmove@PLT
	cmp	BYTE PTR -84[rbp], 0
	je	.L2131
	movzx	eax, BYTE PTR -84[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint8
.L2131:
	mov	eax, 0
.L2128:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE762:
	.size	TlvP$TlvMultiple$setLength, .-TlvP$TlvMultiple$setLength
	.type	BitVectorC$2$BitVector$get, @function
BitVectorC$2$BitVector$get:
.LFB763:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	mov	eax, edi
	mov	WORD PTR -12[rbp], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$2$getIndex
	movzx	eax, ax
	movsx	rdx, eax
	mov	rax, rbx
	add	rax, rax
	add	rax, rbx
	add	rdx, rax
	lea	rax, BitVectorC$2$m_bits[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$2$getMask
	movzx	eax, ax
	and	eax, ebx
	test	eax, eax
	setne	al
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE763:
	.size	BitVectorC$2$BitVector$get, .-BitVectorC$2$BitVector$get
	.type	PacketEngineP$Packet$setPayloadLength, @function
PacketEngineP$Packet$setPayloadLength:
.LFB764:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	add	eax, 1
	movzx	ebx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rcx, QWORD PTR -24[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$SubPacket$setPayloadLength
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE764:
	.size	PacketEngineP$Packet$setPayloadLength, .-PacketEngineP$Packet$setPayloadLength
	.type	BitVectorC$0$BitVector$get, @function
BitVectorC$0$BitVector$get:
.LFB765:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	mov	eax, edi
	mov	WORD PTR -12[rbp], ax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$0$getIndex
	movzx	eax, ax
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rdx, rax
	lea	rax, BitVectorC$0$m_bits[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	movzx	ebx, al
	movzx	eax, WORD PTR -12[rbp]
	mov	edi, eax
	call	BitVectorC$0$getMask
	movzx	eax, ax
	and	eax, ebx
	test	eax, eax
	setne	al
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE765:
	.size	BitVectorC$0$BitVector$get, .-BitVectorC$0$BitVector$get
	.type	SinglePacketP$SinglePacket$isForMe, @function
SinglePacketP$SinglePacket$isForMe:
.LFB766:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$destination
	mov	ebx, eax
	call	SinglePacketP$AMPacket$address
	cmp	bx, ax
	je	.L2138
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$destination
	cmp	ax, -1
	jne	.L2139
.L2138:
	mov	eax, 1
	jmp	.L2140
.L2139:
	mov	eax, 0
.L2140:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE766:
	.size	SinglePacketP$SinglePacket$isForMe, .-SinglePacketP$SinglePacket$isForMe
	.type	BitVectorC$0$BitVector$clear, @function
BitVectorC$0$BitVector$clear:
.LFB767:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 8
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	eax, edi
	mov	WORD PTR -20[rbp], ax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$0$getMask
	movzx	eax, ax
	not	eax
	mov	r12d, eax
	call	sim_node
	mov	rbx, rax
	movzx	eax, WORD PTR -20[rbp]
	mov	edi, eax
	call	BitVectorC$0$getIndex
	mov	edx, eax
	movzx	eax, dx
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$0$m_bits[rip]
	add	rax, rcx
	movzx	eax, BYTE PTR [rax]
	mov	ecx, eax
	mov	eax, r12d
	and	ecx, eax
	movzx	eax, dx
	mov	edx, ecx
	movsx	rcx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	add	rcx, rax
	lea	rax, BitVectorC$0$m_bits[rip]
	add	rax, rcx
	mov	BYTE PTR [rax], dl
	nop
	add	rsp, 8
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE767:
	.size	BitVectorC$0$BitVector$clear, .-BitVectorC$0$BitVector$clear
	.type	TlvPacketP$0$TlvListPacket$end, @function
TlvPacketP$0$TlvListPacket$end:
.LFB768:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 16
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -24[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -12[rbp], dl
	mov	BYTE PTR -16[rbp], al
	movzx	ebx, BYTE PTR -16[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rcx, rax
	movzx	eax, BYTE PTR -12[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	TlvPacketP$0$TlvList$end
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE768:
	.size	TlvPacketP$0$TlvListPacket$end, .-TlvPacketP$0$TlvListPacket$end
	.type	TlvPacketP$0$TlvMultiplePacket$list, @function
TlvPacketP$0$TlvMultiplePacket$list:
.LFB769:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -16[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	TlvPacketP$0$TlvMultiple$list
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE769:
	.size	TlvPacketP$0$TlvMultiplePacket$list, .-TlvPacketP$0$TlvMultiplePacket$list
	.type	TlvPacketP$0$TlvListPacket$next, @function
TlvPacketP$0$TlvListPacket$next:
.LFB770:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	ebx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rcx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	TlvPacketP$0$TlvList$next
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE770:
	.size	TlvPacketP$0$TlvListPacket$next, .-TlvPacketP$0$TlvListPacket$next
	.type	TlvPacketP$0$TlvMultiplePacket$length, @function
TlvPacketP$0$TlvMultiplePacket$length:
.LFB771:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	ebx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rcx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	TlvPacketP$0$TlvMultiple$length
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE771:
	.size	TlvPacketP$0$TlvMultiplePacket$length, .-TlvPacketP$0$TlvMultiplePacket$length
	.type	TlvPacketP$0$TlvMultiplePacket$value, @function
TlvPacketP$0$TlvMultiplePacket$value:
.LFB772:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	ebx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$payloadLength
	movzx	edx, al
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	TlvPacketP$0$SubPacket$getPayload
	mov	rcx, rax
	movzx	eax, BYTE PTR -20[rbp]
	mov	edx, ebx
	mov	rsi, rcx
	mov	edi, eax
	call	TlvPacketP$0$TlvMultiple$value
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE772:
	.size	TlvPacketP$0$TlvMultiplePacket$value, .-TlvPacketP$0$TlvMultiplePacket$value
	.type	SimpleLinkCacheP$RouteCache$checkRoute, @function
SimpleLinkCacheP$RouteCache$checkRoute:
.LFB773:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Initial$get
	test	al, al
	jne	.L2158
	call	SimpleLinkCacheP$SourceShortestPath$buildingTree
	test	al, al
	je	.L2156
	movzx	eax, BYTE PTR -24[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Initial$set
	jmp	.L2153
.L2156:
	movzx	eax, BYTE PTR -24[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$SourceShortestPath$edgeCount
	mov	BYTE PTR -1[rbp], al
	cmp	BYTE PTR -1[rbp], 0
	je	.L2157
	movzx	eax, BYTE PTR -24[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Track$clear
.L2157:
	movzx	edx, BYTE PTR -1[rbp]
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, ecx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$routeUpdate
	jmp	.L2153
.L2158:
	nop
.L2153:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE773:
	.size	SimpleLinkCacheP$RouteCache$checkRoute, .-SimpleLinkCacheP$RouteCache$checkRoute
	.section	.rodata
	.align 8
.LC324:
	.string	"DSR: Pkt %u: Already has route request or not enough room!\n"
	.align 8
.LC325:
	.string	"DSR: Pkt %u: Can't find the route request option just added!\n"
	.text
	.type	DsrControlP$0$addRouteRequest, @function
DsrControlP$0$addRouteRequest:
.LFB774:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	WORD PTR -24[rbp], ax
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, 1
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$add
	test	al, al
	je	.L2160
	lea	rdx, .LC324[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 340
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	mov	eax, 1
	jmp	.L2161
.L2160:
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$value
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L2162
	lea	rdx, .LC325[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 341
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	mov	eax, 1
	jmp	.L2161
.L2162:
	call	sim_node
	lea	rdx, DsrControlP$0$nextIdent[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rsi, DsrControlP$0$nextIdent[rip]
	mov	BYTE PTR [rax+rsi], cl
	movzx	edx, dl
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	__nesc_hton_uint8
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, 65535
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$noAck
	mov	eax, 0
.L2161:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE774:
	.size	DsrControlP$0$addRouteRequest, .-DsrControlP$0$addRouteRequest
	.type	TossimPacketModelC$PacketAcknowledgements$noAck, @function
TossimPacketModelC$PacketAcknowledgements$noAck:
.LFB775:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	TossimPacketModelC$getMetadata
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	add	rax, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_hton_uint8
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE775:
	.size	TossimPacketModelC$PacketAcknowledgements$noAck, .-TossimPacketModelC$PacketAcknowledgements$noAck
	.section	.rodata
	.align 8
.LC326:
	.string	"SP: Sending pkt from %u to %u\n"
	.text
	.type	SinglePacketP$Send$send, @function
SinglePacketP$Send$send:
.LFB776:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	eax, esi
	mov	QWORD PTR -32[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -20[rbp], cl
	mov	WORD PTR -24[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -36[rbp], al
	movzx	ebx, WORD PTR -24[rbp]
	call	SinglePacketP$AMPacket$address
	movzx	eax, ax
	mov	r8d, ebx
	mov	ecx, eax
	lea	rdx, .LC326[rip]
	lea	rsi, .LC89[rip]
	mov	edi, 398
	mov	eax, 0
	call	sim_log_debug
	call	SinglePacketP$AMPacket$address
	movzx	edx, ax
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$setSource
	movzx	edx, WORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$SinglePacket$setDestination
	movzx	edx, BYTE PTR -36[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$Packet$setPayloadLength
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SinglePacketP$SubPacket$payloadLength
	movzx	ecx, al
	movzx	esi, WORD PTR -24[rbp]
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	edi, eax
	call	SinglePacketP$SubSend$send
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE776:
	.size	SinglePacketP$Send$send, .-SinglePacketP$Send$send
	.section	.rodata
	.align 8
.LC327:
	.string	"PE: Can't add send packet, length too long!\n"
	.align 8
.LC328:
	.string	"PE: Can't add send packet, pool is empty!\n"
	.align 8
.LC329:
	.string	"PE: Adding send packet at index %u\n"
	.text
	.type	PacketEngineP$Send$send, @function
PacketEngineP$Send$send:
.LFB777:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	eax, esi
	mov	QWORD PTR -64[rbp], rdx
	mov	edx, ecx
	mov	ecx, edi
	mov	BYTE PTR -52[rbp], cl
	mov	WORD PTR -56[rbp], ax
	mov	eax, edx
	mov	BYTE PTR -68[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -42[rbp], 40
	movzx	eax, BYTE PTR -52[rbp]
	mov	BYTE PTR -41[rbp], al
	call	sim_node
	lea	rdx, PacketEngineP$running[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L2168
	mov	eax, 4
	jmp	.L2173
.L2168:
	call	PacketEngineP$Packet$maxPayloadLength
	cmp	BYTE PTR -68[rbp], al
	jbe	.L2170
	lea	rdx, .LC327[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 113
	mov	eax, 0
	call	sim_log_error
	mov	eax, 2
	jmp	.L2173
.L2170:
	lea	rax, -42[rbp]
	mov	rdi, rax
	call	PacketEngineP$SendQueue$insert
	mov	QWORD PTR -40[rbp], rax
	call	PacketEngineP$SendPool$empty
	test	al, al
	je	.L2171
	lea	rdx, .LC328[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 114
	mov	eax, 0
	call	sim_log_error
	mov	eax, 5
	jmp	.L2173
.L2171:
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 1
	je	.L2172
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC236[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 115
	mov	eax, 0
	call	sim_log_error
	mov	eax, 5
	jmp	.L2173
.L2172:
	call	PacketEngineP$SendPool$get
	mov	QWORD PTR -32[rbp], rax
	mov	rcx, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, 49
	mov	rsi, rcx
	mov	rdi, rax
	call	memcpy@PLT
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	mov	rax, QWORD PTR -40[rbp]
	mov	BYTE PTR [rax], dl
	movzx	edx, BYTE PTR -68[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$setPayloadLength
	movzx	edx, BYTE PTR -52[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$setIds
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	mov	ecx, eax
	lea	rdx, .LC329[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 116
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	movzx	eax, al
	movsx	rdx, eax
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	ecx, BYTE PTR [rdx+rax]
	and	ecx, -33
	mov	BYTE PTR [rdx+rax], cl
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	PacketEngineP$addPacket
	mov	eax, 0
.L2173:
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L2174
	call	__stack_chk_fail@PLT
.L2174:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE777:
	.size	PacketEngineP$Send$send, .-PacketEngineP$Send$send
	.type	PacketEngineP$setIds, @function
PacketEngineP$setIds:
.LFB778:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngineClient$upperType
	cmp	al, -2
	jne	.L2176
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	mov	BYTE PTR -1[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngineClient$defaultLowerType
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$setLid
	movzx	edx, BYTE PTR -1[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$setUid
	jmp	.L2178
.L2176:
	movzx	eax, BYTE PTR -28[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngineClient$defaultLowerType
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$setLid
	movzx	eax, BYTE PTR -28[rbp]
	mov	edi, eax
	call	PacketEngineP$PacketEngineClient$upperType
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$setUid
.L2178:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE778:
	.size	PacketEngineP$setIds, .-PacketEngineP$setIds
	.type	PacketEngineP$setUid, @function
PacketEngineP$setUid:
.LFB779:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -12[rbp], al
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rcx, QWORD PTR -8[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$SubPacket$getPayload
	movzx	edx, BYTE PTR -12[rbp]
	mov	BYTE PTR [rax], dl
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE779:
	.size	PacketEngineP$setUid, .-PacketEngineP$setUid
	.type	PacketEngineP$Packet$payloadLength, @function
PacketEngineP$Packet$payloadLength:
.LFB780:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rdx, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	edi, eax
	call	PacketEngineP$SubPacket$payloadLength
	sub	eax, 1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE780:
	.size	PacketEngineP$Packet$payloadLength, .-PacketEngineP$Packet$payloadLength
	.type	TlvPacketP$0$TlvSinglePacket$remove, @function
TlvPacketP$0$TlvSinglePacket$remove:
.LFB781:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	eax, edi
	mov	QWORD PTR -48[rbp], rsi
	mov	BYTE PTR -36[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rdx, -18[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	TlvPacketP$0$preLengthChange
	mov	QWORD PTR -16[rbp], rax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	edx, al
	movzx	eax, BYTE PTR -36[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	TlvPacketP$0$TlvSingle$remove
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -18[rbp]
	movzx	edx, al
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	TlvPacketP$0$postLengthChange
	movzx	eax, BYTE PTR -17[rbp]
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L2184
	call	__stack_chk_fail@PLT
.L2184:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE781:
	.size	TlvPacketP$0$TlvSinglePacket$remove, .-TlvPacketP$0$TlvSinglePacket$remove
	.section	.rodata
	.align 8
.LC330:
	.string	"DSR: Pkt %u: DSR receive/snoop packet added!\n"
	.align 8
.LC331:
	.string	"DSR: Pkt %u: Found route request option from %u to %u\n"
	.align 8
.LC332:
	.string	"DSR: Pkt %u: Route request reached target node\n"
	.align 8
.LC333:
	.string	"DSR: Pkt %u: Address already in route request to %u, dropping!\n"
	.align 8
.LC334:
	.string	"DSR: Pkt %u: Route request to %u (ID %hhu) found in cache, dropping!\n"
	.align 8
.LC335:
	.string	"DSR: Pkt %u: Route request to %u (ID %hhu) is new\n"
	.align 8
.LC336:
	.string	"DSR: Pkt %u: Not enough room to extend route request, dropping!\n"
	.align 8
.LC337:
	.string	"DSR: Pkt %u: Sending route request to %u further\n"
	.align 8
.LC338:
	.string	"DSR: Pkt %u: Found route error option at %u from %u to %u\n"
	.align 8
.LC339:
	.string	"DSR: Pkt %u: Found source route option from %u to %u\n"
	.align 8
.LC340:
	.string	"DSR: Pkt %u: Found route reply option from %u to %u\n"
	.align 8
.LC341:
	.string	"DSR: Pkt %u: Too many segments left (%u > %u), dropping!\n"
	.align 8
.LC342:
	.string	"DSR: Pkt %u: No segments left, removing source route\n"
	.align 8
.LC343:
	.string	"DSR: Pkt %u: Pkt that originated route request to %u no longer here\n"
	.align 8
.LC344:
	.string	"DSR: Pkt %u: Pkt %u received successfully, dropping\n"
	.align 8
.LC345:
	.string	"DSR: Pkt %u: Destination is also intermediate node, dropping!\n"
	.align 8
.LC346:
	.string	"DSR: Pkt %u: Passing to upper layer if not already sent\n"
	.text
	.type	DsrControlP$0$DsrPacketEngine$receiveAdded, @function
DsrControlP$0$DsrPacketEngine$receiveAdded:
.LFB782:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 136
	.cfi_offset 3, -24
	mov	eax, edi
	mov	QWORD PTR -144[rbp], rsi
	mov	BYTE PTR -132[rbp], al
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$source
	mov	WORD PTR -100[rbp], ax
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	mov	WORD PTR -98[rbp], ax
	movzx	eax, BYTE PTR -132[rbp]
	mov	ecx, eax
	lea	rdx, .LC330[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 268
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$length
	mov	BYTE PTR -110[rbp], al
	cmp	BYTE PTR -110[rbp], 0
	je	.L2186
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$value
	mov	QWORD PTR -96[rbp], rax
	movzx	eax, BYTE PTR -110[rbp]
	sub	rax, 1
	shr	rax
	mov	BYTE PTR -109[rbp], al
	movzx	ecx, WORD PTR -98[rbp]
	movzx	edx, WORD PTR -100[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC331[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 269
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$isForMe
	test	al, al
	je	.L2187
	movzx	eax, BYTE PTR -132[rbp]
	mov	ecx, eax
	lea	rdx, .LC332[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 270
	mov	eax, 0
	call	sim_log_debug
	call	DsrControlP$0$AMPacket$address
	movzx	ecx, ax
	movzx	edx, BYTE PTR -109[rbp]
	mov	rax, QWORD PTR -96[rbp]
	lea	rsi, 1[rax]
	movzx	eax, WORD PTR -100[rbp]
	mov	edi, eax
	call	DsrControlP$0$addPath
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$Compose$set
	call	DsrControlP$0$composePkt$postTask
	jmp	.L2185
.L2187:
	mov	QWORD PTR -48[rbp], 0
	mov	QWORD PTR -40[rbp], 0
	movzx	eax, WORD PTR -100[rbp]
	mov	WORD PTR -48[rbp], ax
	call	DsrControlP$0$AMPacket$address
	cmp	WORD PTR -100[rbp], ax
	jne	.L2189
	movzx	edx, WORD PTR -98[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC333[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 271
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2189:
	mov	BYTE PTR -112[rbp], 0
	jmp	.L2191
.L2193:
	movzx	eax, BYTE PTR -112[rbp]
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	mov	ebx, eax
	call	DsrControlP$0$AMPacket$address
	cmp	bx, ax
	jne	.L2192
	movzx	edx, WORD PTR -98[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC333[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 272
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2192:
	movzx	eax, BYTE PTR -112[rbp]
	add	eax, 1
	mov	BYTE PTR -112[rbp], al
.L2191:
	movzx	eax, BYTE PTR -112[rbp]
	cmp	al, BYTE PTR -109[rbp]
	jb	.L2193
	call	DsrControlP$0$AMPacket$address
	movzx	ecx, ax
	movzx	edx, BYTE PTR -109[rbp]
	mov	rax, QWORD PTR -96[rbp]
	lea	rsi, 1[rax]
	movzx	eax, WORD PTR -100[rbp]
	mov	edi, eax
	call	DsrControlP$0$addPath
	mov	BYTE PTR -112[rbp], 0
	jmp	.L2194
.L2195:
	movzx	eax, BYTE PTR -112[rbp]
	cdqe
	mov	WORD PTR -40[rbp+rax*2], -1
	movzx	eax, BYTE PTR -112[rbp]
	add	eax, 1
	mov	BYTE PTR -112[rbp], al
.L2194:
	cmp	BYTE PTR -112[rbp], 3
	jbe	.L2195
	lea	rax, -48[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequestInCache$insert
	mov	QWORD PTR -88[rbp], rax
	mov	BYTE PTR -112[rbp], 0
	jmp	.L2196
.L2198:
	movzx	eax, BYTE PTR -112[rbp]
	mov	rdx, QWORD PTR -88[rbp]
	cdqe
	movzx	ebx, BYTE PTR 3[rdx+rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	cmp	bl, al
	jne	.L2197
	movzx	edx, BYTE PTR -112[rbp]
	mov	rax, QWORD PTR -88[rbp]
	movsx	rdx, edx
	movzx	eax, WORD PTR 8[rax+rdx*2]
	cmp	WORD PTR -98[rbp], ax
	jne	.L2197
	mov	rax, QWORD PTR -96[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	ecx, al
	movzx	edx, WORD PTR -98[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC334[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 273
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2197:
	movzx	eax, BYTE PTR -112[rbp]
	add	eax, 1
	mov	BYTE PTR -112[rbp], al
.L2196:
	cmp	BYTE PTR -112[rbp], 3
	jbe	.L2198
	mov	rax, QWORD PTR -96[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	movzx	ecx, al
	movzx	edx, WORD PTR -98[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC335[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 274
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -96[rbp]
	mov	rdx, QWORD PTR -88[rbp]
	movzx	edx, BYTE PTR 2[rdx]
	movzx	ebx, dl
	mov	rdi, rax
	call	__nesc_ntoh_uint8
	mov	rcx, QWORD PTR -88[rbp]
	movsx	rdx, ebx
	mov	BYTE PTR 3[rcx+rdx], al
	mov	rax, QWORD PTR -88[rbp]
	movzx	eax, BYTE PTR 2[rax]
	movzx	edx, al
	mov	rax, QWORD PTR -88[rbp]
	movsx	rdx, edx
	movzx	ecx, WORD PTR -98[rbp]
	mov	WORD PTR 8[rax+rdx*2], cx
	mov	rax, QWORD PTR -88[rbp]
	movzx	eax, BYTE PTR 2[rax]
	lea	edx, 1[rax]
	mov	rax, QWORD PTR -88[rbp]
	mov	BYTE PTR 2[rax], dl
	mov	rax, QWORD PTR -88[rbp]
	movzx	eax, BYTE PTR 2[rax]
	and	eax, 3
	mov	edx, eax
	mov	rax, QWORD PTR -88[rbp]
	mov	BYTE PTR 2[rax], dl
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$length
	add	eax, 2
	movzx	edx, al
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteRequest$setLength
	test	al, al
	je	.L2199
	movzx	eax, BYTE PTR -132[rbp]
	mov	ecx, eax
	lea	rdx, .LC336[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 275
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2199:
	call	DsrControlP$0$AMPacket$address
	movzx	eax, ax
	movzx	edx, BYTE PTR -109[rbp]
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	mov	rdx, QWORD PTR -96[rbp]
	add	rdx, rcx
	add	rdx, 1
	mov	esi, eax
	mov	rdi, rdx
	call	__nesc_hton_uint16
	movzx	edx, WORD PTR -98[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC337[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 276
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$noAck
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$send
.L2186:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$RouteError$list
	mov	BYTE PTR -113[rbp], al
	jmp	.L2200
.L2202:
	movzx	edx, BYTE PTR -113[rbp]
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteError$length
	mov	BYTE PTR -110[rbp], al
	cmp	BYTE PTR -110[rbp], 0
	je	.L2201
	movzx	edx, BYTE PTR -113[rbp]
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteError$value
	mov	QWORD PTR -64[rbp], rax
	movzx	edx, WORD PTR -98[rbp]
	movzx	esi, WORD PTR -100[rbp]
	movzx	ecx, BYTE PTR -113[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	sub	rsp, 8
	push	rdx
	mov	r9d, esi
	mov	r8d, ecx
	mov	ecx, eax
	lea	rdx, .LC338[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 277
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, 4
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	cmp	al, 1
	jne	.L2201
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 5
	mov	QWORD PTR -56[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	ebx, ax
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	edx, ax
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC259[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 278
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -56[rbp]
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	ebx, al
	mov	rax, QWORD PTR -64[rbp]
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	eax, al
	mov	edx, 1
	mov	esi, ebx
	mov	edi, eax
	call	DsrControlP$0$RouteCache$removeLink
.L2201:
	movzx	edx, BYTE PTR -113[rbp]
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteErrorList$next
	mov	BYTE PTR -113[rbp], al
.L2200:
	movzx	edx, BYTE PTR -113[rbp]
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$RouteErrorList$end
	test	al, al
	je	.L2202
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$length
	mov	BYTE PTR -110[rbp], al
	cmp	BYTE PTR -110[rbp], 0
	je	.L2203
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$value
	mov	QWORD PTR -80[rbp], rax
	movzx	eax, BYTE PTR -110[rbp]
	sub	rax, 1
	shr	rax
	mov	BYTE PTR -108[rbp], al
	movzx	eax, WORD PTR -100[rbp]
	mov	WORD PTR -104[rbp], ax
	movzx	eax, WORD PTR -98[rbp]
	mov	WORD PTR -102[rbp], ax
	movzx	eax, BYTE PTR -108[rbp]
	mov	BYTE PTR -111[rbp], al
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	jne	.L2204
	movzx	ecx, WORD PTR -102[rbp]
	movzx	edx, WORD PTR -104[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC339[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 279
	mov	eax, 0
	call	sim_log_debug
	jmp	.L2205
.L2204:
	movzx	ecx, WORD PTR -102[rbp]
	movzx	edx, WORD PTR -104[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC340[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 280
	mov	eax, 0
	call	sim_log_debug
.L2205:
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	cmp	BYTE PTR -108[rbp], al
	jnb	.L2206
	movzx	ebx, BYTE PTR -108[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	movzx	edx, al
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC341[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 281
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2206:
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 3
	mov	esi, 1
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	je	.L2207
	mov	WORD PTR -104[rbp], -1
.L2207:
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	je	.L2208
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	je	.L2208
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	mov	edx, eax
	movzx	eax, BYTE PTR -108[rbp]
	sub	eax, edx
	add	eax, 1
	mov	BYTE PTR -111[rbp], al
	mov	WORD PTR -102[rbp], -1
.L2208:
	movzx	ecx, WORD PTR -102[rbp]
	movzx	edx, BYTE PTR -111[rbp]
	mov	rax, QWORD PTR -80[rbp]
	lea	rsi, 1[rax]
	movzx	eax, WORD PTR -104[rbp]
	mov	edi, eax
	call	DsrControlP$0$addPath
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$isForMe
	test	al, al
	je	.L2203
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	jne	.L2209
	movzx	eax, BYTE PTR -132[rbp]
	mov	ecx, eax
	lea	rdx, .LC342[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 282
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	test	al, al
	je	.L2210
	movzx	eax, WORD PTR -100[rbp]
	mov	edi, eax
	call	DsrControlP$0$findSinglePktTo
	mov	BYTE PTR -105[rbp], al
	movzx	eax, BYTE PTR -105[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketWaitList$end
	test	al, al
	je	.L2211
	movzx	edx, WORD PTR -100[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC343[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 283
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2211:
	movzx	edx, BYTE PTR -105[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC344[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 284
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -105[rbp]
	mov	esi, 0
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$upperSendDone
	movzx	eax, BYTE PTR -105[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$drop
.L2210:
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SourceRoute$remove
	jmp	.L2203
.L2209:
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -72[rbp], rax
	mov	rax, QWORD PTR -72[rbp]
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_ntohbf_uint8
	sub	eax, 1
	mov	BYTE PTR -107[rbp], al
	movzx	edx, BYTE PTR -107[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	ecx, edx
	mov	edx, 4
	mov	esi, 4
	mov	rdi, rax
	call	__nesc_htonbf_uint8
	movzx	eax, BYTE PTR -108[rbp]
	sub	al, BYTE PTR -107[rbp]
	mov	BYTE PTR -106[rbp], al
	movzx	eax, BYTE PTR -106[rbp]
	cmp	al, BYTE PTR -108[rbp]
	jnb	.L2212
	movzx	eax, BYTE PTR -106[rbp]
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	cmp	WORD PTR -98[rbp], ax
	jne	.L2213
	movzx	eax, BYTE PTR -132[rbp]
	mov	ecx, eax
	lea	rdx, .LC345[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 285
	mov	eax, 0
	call	sim_log_error
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$drop
	jmp	.L2185
.L2213:
	movzx	eax, BYTE PTR -106[rbp]
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	add	rax, 1
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	movzx	edx, ax
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
	jmp	.L2214
.L2212:
	movzx	edx, WORD PTR -98[rbp]
	mov	rax, QWORD PTR -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$setDestination
.L2214:
	movzx	ebx, WORD PTR -98[rbp]
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$AMPacket$destination
	movzx	edx, ax
	movzx	eax, BYTE PTR -132[rbp]
	mov	r9d, ebx
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC303[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 286
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -144[rbp]
	mov	rdi, rax
	call	DsrControlP$0$Acks$requestAck
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -132[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, [rax+rcx]
	lea	rax, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	BYTE PTR [rax], 2
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$send
	jmp	.L2185
.L2203:
	movzx	eax, BYTE PTR -132[rbp]
	mov	ecx, eax
	lea	rdx, .LC346[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 287
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -132[rbp]
	mov	edi, eax
	call	DsrControlP$0$DsrPacketEngine$receive
.L2185:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L2215
	call	__stack_chk_fail@PLT
.L2215:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE782:
	.size	DsrControlP$0$DsrPacketEngine$receiveAdded, .-DsrControlP$0$DsrPacketEngine$receiveAdded
	.section	.rodata
	.align 8
.LC347:
	.string	"DSR: Adding path with %u links\n"
	.text
	.type	DsrControlP$0$addPath, @function
DsrControlP$0$addPath:
.LFB783:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	QWORD PTR -64[rbp], rsi
	mov	eax, ecx
	mov	ecx, edi
	mov	WORD PTR -52[rbp], cx
	mov	BYTE PTR -56[rbp], dl
	mov	WORD PTR -68[rbp], ax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	movzx	eax, BYTE PTR -56[rbp]
	mov	BYTE PTR -42[rbp], al
	mov	BYTE PTR -43[rbp], 0
	movzx	eax, BYTE PTR -56[rbp]
	add	eax, 2
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -40[rbp], rdx
	movsx	rdx, eax
	mov	r10, rdx
	mov	r11d, 0
	movsx	rdx, eax
	mov	r8, rdx
	mov	r9d, 0
	cdqe
	mov	edx, 16
	sub	rdx, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L2217:
	cmp	rsp, rdx
	je	.L2218
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L2217
.L2218:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L2219
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L2219:
	mov	rax, rsp
	add	rax, 0
	mov	QWORD PTR -32[rbp], rax
	cmp	WORD PTR -52[rbp], -1
	je	.L2220
	movzx	eax, WORD PTR -52[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	BYTE PTR [rax], dl
	mov	BYTE PTR -43[rbp], 1
	movzx	eax, BYTE PTR -42[rbp]
	add	eax, 1
	mov	BYTE PTR -42[rbp], al
.L2220:
	cmp	WORD PTR -68[rbp], -1
	je	.L2221
	movzx	eax, BYTE PTR -42[rbp]
	lea	edx, 1[rax]
	mov	BYTE PTR -42[rbp], dl
	movzx	eax, al
	movzx	edx, WORD PTR -68[rbp]
	mov	ecx, edx
	mov	rdx, QWORD PTR -32[rbp]
	cdqe
	mov	BYTE PTR [rdx+rax], cl
.L2221:
	mov	BYTE PTR -41[rbp], 0
	jmp	.L2222
.L2223:
	movzx	eax, BYTE PTR -41[rbp]
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	rdi, rax
	call	__nesc_ntoh_uint16
	mov	edx, eax
	movzx	ecx, BYTE PTR -41[rbp]
	movzx	eax, BYTE PTR -43[rbp]
	add	eax, ecx
	mov	ecx, edx
	mov	rdx, QWORD PTR -32[rbp]
	cdqe
	mov	BYTE PTR [rdx+rax], cl
	movzx	eax, BYTE PTR -41[rbp]
	add	eax, 1
	mov	BYTE PTR -41[rbp], al
.L2222:
	movzx	eax, BYTE PTR -41[rbp]
	cmp	al, BYTE PTR -56[rbp]
	jb	.L2223
	movzx	eax, BYTE PTR -42[rbp]
	sub	eax, 1
	mov	ecx, eax
	lea	rdx, .LC347[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 339
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -42[rbp]
	sub	eax, 1
	movzx	ecx, al
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, 1
	mov	esi, ecx
	mov	rdi, rax
	call	DsrControlP$0$RouteCache$addPath
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L2224
	call	__stack_chk_fail@PLT
.L2224:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE783:
	.size	DsrControlP$0$addPath, .-DsrControlP$0$addPath
	.section	.rodata
.LC348:
	.string	"GS: Inserting edge %u -> %u\n"
	.align 8
.LC349:
	.string	"GS: Can't hold any more edges!\n"
	.text
	.type	GraphSparseP$0$Graph$insert, @function
GraphSparseP$0$Graph$insert:
.LFB784:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r12
	push	rbx
	sub	rsp, 32
	.cfi_offset 12, -24
	.cfi_offset 3, -32
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -36[rbp], dl
	mov	BYTE PTR -40[rbp], al
	cmp	BYTE PTR -36[rbp], 19
	ja	.L2226
	cmp	BYTE PTR -40[rbp], 19
	jbe	.L2227
.L2226:
	lea	rdx, .LC263[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 346
	mov	eax, 0
	call	sim_log_error
	mov	eax, -6
	jmp	.L2228
.L2227:
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	esi, edx
	mov	edi, eax
	call	GraphSparseP$0$Graph$edge
	cmp	al, -6
	je	.L2229
	mov	eax, -6
	jmp	.L2228
.L2229:
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	mov	r8d, edx
	mov	ecx, eax
	lea	rdx, .LC348[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 347
	mov	eax, 0
	call	sim_log_debug
	call	GraphSparseP$0$IndexedAlloc$alloc
	mov	BYTE PTR -17[rbp], al
	cmp	BYTE PTR -17[rbp], -6
	jne	.L2230
	lea	rdx, .LC349[rip]
	lea	rsi, .LC262[rip]
	mov	edi, 348
	mov	eax, 0
	call	sim_log_error
	mov	eax, -6
	jmp	.L2228
.L2230:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	al, -6
	jne	.L2231
	call	sim_node
	lea	rdx, GraphSparseP$0$vSize[rip]
	movzx	edx, BYTE PTR [rax+rdx]
	lea	ecx, 1[rdx]
	lea	rdx, GraphSparseP$0$vSize[rip]
	mov	BYTE PTR [rax+rdx], cl
.L2231:
	call	sim_node
	mov	rbx, rax
	movzx	r12d, BYTE PTR -36[rbp]
	call	sim_node
	mov	rdx, rax
	movzx	ecx, BYTE PTR -17[rbp]
	movsx	rsi, r12d
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 2
	add	rsi, rax
	lea	rax, GraphSparseP$0$v[rip]
	add	rax, rsi
	movzx	eax, BYTE PTR [rax]
	movsx	rcx, ecx
	imul	rdx, rdx, 250
	add	rdx, rcx
	lea	rcx, [rdx+rdx]
	lea	rdx, GraphSparseP$0$e[rip+1]
	mov	BYTE PTR [rcx+rdx], al
	call	sim_node
	movzx	edx, BYTE PTR -17[rbp]
	movsx	rdx, edx
	imul	rax, rax, 250
	add	rax, rdx
	lea	rcx, [rax+rax]
	lea	rdx, GraphSparseP$0$e[rip]
	movzx	eax, BYTE PTR -40[rbp]
	mov	BYTE PTR [rcx+rdx], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -36[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, [rax+rcx]
	lea	rax, GraphSparseP$0$v[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -17[rbp]
	mov	BYTE PTR [rdx], al
	movzx	eax, BYTE PTR -17[rbp]
	mov	edi, eax
	call	GraphSparseP$0$Graph$inserted
	call	GraphSparseP$0$printGraph
	movzx	eax, BYTE PTR -17[rbp]
.L2228:
	add	rsp, 32
	pop	rbx
	pop	r12
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE784:
	.size	GraphSparseP$0$Graph$insert, .-GraphSparseP$0$Graph$insert
	.section	.rodata
	.align 8
.LC350:
	.string	"PE: Passing pkt %u to upper layer\n"
	.text
	.type	PacketEngineP$PacketEngine$receive, @function
PacketEngineP$PacketEngine$receive:
.LFB785:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 48
	.cfi_offset 14, -24
	.cfi_offset 13, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -68[rbp], dl
	mov	BYTE PTR -72[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -72[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -48[rbp], rax
	cmp	BYTE PTR -72[rbp], 39
	ja	.L2233
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -72[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip]
	movzx	eax, BYTE PTR [rdx+rax]
	and	eax, 31
	cmp	al, 4
	jne	.L2233
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -68[rbp], al
	je	.L2234
.L2233:
	mov	eax, 6
	jmp	.L2235
.L2234:
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	PacketEngineP$uid
	test	al, al
	je	.L2236
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	PacketEngineP$Packet$payloadLength
	mov	BYTE PTR -49[rbp], al
	movzx	edx, BYTE PTR -49[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	PacketEngineP$Packet$getPayload
	mov	QWORD PTR -40[rbp], rax
	movzx	eax, BYTE PTR -72[rbp]
	mov	ecx, eax
	lea	rdx, .LC350[rip]
	lea	rsi, .LC15[rip]
	mov	edi, 142
	mov	eax, 0
	call	sim_log_debug
	movzx	r13d, BYTE PTR -49[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rdi, rax
	call	PacketEngineP$uid
	movzx	r12d, al
	call	sim_node
	mov	rbx, rax
	movzx	r14d, BYTE PTR -72[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	ecx, r13d
	mov	rsi, rax
	mov	edi, r12d
	call	PacketEngineP$Receive$receive
	mov	rdx, rax
	movsx	rcx, r14d
	mov	rax, rbx
	sal	rax, 2
	add	rax, rbx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rcx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	QWORD PTR [rcx+rax], rdx
.L2236:
	movzx	eax, BYTE PTR -72[rbp]
	mov	edi, eax
	call	PacketEngineP$removePacket
	call	sim_node
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	BYTE PTR -72[rbp], al
	jne	.L2237
	call	PacketEngineP$moveWaitIndex
.L2237:
	mov	eax, 0
.L2235:
	add	rsp, 48
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE785:
	.size	PacketEngineP$PacketEngine$receive, .-PacketEngineP$PacketEngine$receive
	.type	PacketEngineP$uid, @function
PacketEngineP$uid:
.LFB786:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	PacketEngineP$lid
	movzx	eax, al
	mov	rcx, QWORD PTR -8[rbp]
	mov	edx, 1
	mov	rsi, rcx
	mov	edi, eax
	call	PacketEngineP$SubPacket$getPayload
	movzx	eax, BYTE PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE786:
	.size	PacketEngineP$uid, .-PacketEngineP$uid
	.type	SinglePacketP$Packet$getPayload, @function
SinglePacketP$Packet$getPayload:
.LFB787:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, esi
	mov	BYTE PTR -28[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	add	eax, 4
	movzx	edx, al
	mov	rax, QWORD PTR -24[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	SinglePacketP$SubPacket$getPayload
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	je	.L2241
	add	QWORD PTR -8[rbp], 4
.L2241:
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE787:
	.size	SinglePacketP$Packet$getPayload, .-SinglePacketP$Packet$getPayload
	.type	PacketEngineP$StdControl$start, @function
PacketEngineP$StdControl$start:
.LFB788:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, PacketEngineP$running[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	sim_node
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L2244
	call	PacketEngineP$msgAdded$postTask
.L2244:
	call	sim_node
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 39
	ja	.L2245
	call	PacketEngineP$msgAction$postTask
.L2245:
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE788:
	.size	PacketEngineP$StdControl$start, .-PacketEngineP$StdControl$start
	.type	TestDsrP$Timer$startOneShot, @function
TestDsrP$Timer$startOneShot:
.LFB789:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rax
	mov	edi, 2
	call	VirtualizeTimerC$0$Timer$startOneShot
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE789:
	.size	TestDsrP$Timer$startOneShot, .-TestDsrP$Timer$startOneShot
	.type	VirtualizeTimerC$0$fireTimers, @function
VirtualizeTimerC$0$fireTimers:
.LFB790:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	BYTE PTR -17[rbp], 0
	jmp	.L2249
.L2253:
	call	sim_node
	mov	rcx, rax
	movzx	eax, BYTE PTR -17[rbp]
	cdqe
	mov	rdx, rax
	add	rdx, rdx
	add	rdx, rax
	lea	rax, 0[0+rdx*8]
	mov	rdx, rax
	mov	rax, rcx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 3
	add	rdx, rax
	lea	rax, VirtualizeTimerC$0$m_timers[rip]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 16[rax]
	and	eax, 2
	test	al, al
	je	.L2250
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	sub	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	cmp	QWORD PTR -8[rbp], rax
	jb	.L2250
	mov	rax, QWORD PTR -16[rbp]
	movzx	eax, BYTE PTR 16[rax]
	and	eax, 1
	test	al, al
	je	.L2251
	mov	rax, QWORD PTR -16[rbp]
	movzx	edx, BYTE PTR 16[rax]
	and	edx, -3
	mov	BYTE PTR 16[rax], dl
	jmp	.L2252
.L2251:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR 8[rax]
	add	rdx, rax
	mov	rax, QWORD PTR -16[rbp]
	mov	QWORD PTR [rax], rdx
.L2252:
	movzx	eax, BYTE PTR -17[rbp]
	mov	edi, eax
	call	VirtualizeTimerC$0$Timer$fired
.L2250:
	movzx	eax, BYTE PTR -17[rbp]
	add	eax, 1
	mov	BYTE PTR -17[rbp], al
.L2249:
	cmp	BYTE PTR -17[rbp], 2
	jbe	.L2253
	call	VirtualizeTimerC$0$updateFromTimer$postTask
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE790:
	.size	VirtualizeTimerC$0$fireTimers, .-VirtualizeTimerC$0$fireTimers
	.type	Atm128AlarmAsyncP$0$Alarm$startAt, @function
Atm128AlarmAsyncP$0$Alarm$startAt:
.LFB791:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -1[rbp], al
	call	sim_node
	lea	rdx, Atm128AlarmAsyncP$0$set[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, Atm128AlarmAsyncP$0$t0[rip]
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, Atm128AlarmAsyncP$0$dt[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	movzx	eax, BYTE PTR -1[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	call	Atm128AlarmAsyncP$0$setInterrupt
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE791:
	.size	Atm128AlarmAsyncP$0$Alarm$startAt, .-Atm128AlarmAsyncP$0$Alarm$startAt
	.section	.rodata
	.align 8
.LC351:
	.string	"Atm128AlarmAsyncP: TIFR is %hhx\n"
.LC352:
	.string	"Atm128AlarmAsyncP"
	.align 8
.LC353:
	.string	"Atm128AlarmAsyncP: under min: %hhu.\n"
.LC354:
	.string	"Atm128AlarmAsyncP: OCF set.\n"
	.align 8
.LC355:
	.string	"Atm128AlarmAsyncP: no alarm set, set at max.\n"
	.align 8
.LC356:
	.string	"Atm128AlarmAsyncP: now-t0 = %llu, dt = %llu\n"
	.text
	.type	Atm128AlarmAsyncP$0$setInterrupt, @function
Atm128AlarmAsyncP$0$setInterrupt:
.LFB792:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	BYTE PTR -37[rbp], 0
	call	__nesc_atomic_start@PLT
	mov	BYTE PTR -35[rbp], al
	call	Atm128AlarmAsyncP$0$Compare$get
	mov	ebx, eax
	call	Atm128AlarmAsyncP$0$Timer$get
	mov	edx, eax
	mov	eax, ebx
	sub	eax, edx
	add	eax, 1
	mov	BYTE PTR -34[rbp], al
	call	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag
	mov	BYTE PTR -33[rbp], al
	movzx	eax, BYTE PTR -33[rbp]
	mov	ecx, eax
	lea	rdx, .LC351[rip]
	lea	rsi, .LC352[rip]
	mov	edi, 185
	mov	eax, 0
	call	sim_log_debug
	cmp	BYTE PTR -34[rbp], 0
	je	.L2256
	cmp	BYTE PTR -34[rbp], 1
	jbe	.L2257
.L2256:
	movzx	eax, BYTE PTR -33[rbp]
	and	eax, 2
	test	eax, eax
	je	.L2258
.L2257:
	cmp	BYTE PTR -34[rbp], 1
	ja	.L2259
	movzx	eax, BYTE PTR -34[rbp]
	mov	ecx, eax
	lea	rdx, .LC353[rip]
	lea	rsi, .LC352[rip]
	mov	edi, 186
	mov	eax, 0
	call	sim_log_debug
	jmp	.L2260
.L2259:
	lea	rdx, .LC354[rip]
	lea	rsi, .LC352[rip]
	mov	edi, 187
	mov	eax, 0
	call	sim_log_debug
.L2260:
	movzx	eax, BYTE PTR -35[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	jmp	.L2255
.L2258:
	call	sim_node
	lea	rdx, Atm128AlarmAsyncP$0$set[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L2262
	mov	BYTE PTR -36[rbp], -26
	lea	rdx, .LC355[rip]
	lea	rsi, .LC352[rip]
	mov	edi, 188
	mov	eax, 0
	call	sim_log_debug
	jmp	.L2263
.L2262:
	call	Atm128AlarmAsyncP$0$Counter$get
	mov	QWORD PTR -32[rbp], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$dt[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$t0[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -32[rbp]
	sub	rax, rdx
	mov	r8, rbx
	mov	rcx, rax
	lea	rdx, .LC356[rip]
	lea	rsi, .LC352[rip]
	mov	edi, 189
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$t0[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, QWORD PTR -32[rbp]
	sub	rax, rdx
	mov	rbx, rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$dt[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	rbx, rax
	jb	.L2264
	call	sim_node
	lea	rdx, Atm128AlarmAsyncP$0$set[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	BYTE PTR -37[rbp], 1
	mov	BYTE PTR -36[rbp], -26
	jmp	.L2263
.L2264:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$t0[rip]
	mov	rbx, QWORD PTR [rdx+rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$dt[rip]
	mov	rax, QWORD PTR [rdx+rax]
	add	rbx, rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	rax, rbx
	sub	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 230
	jbe	.L2265
	mov	BYTE PTR -36[rbp], -26
	jmp	.L2263
.L2265:
	mov	rax, QWORD PTR -24[rbp]
	cmp	al, 1
	ja	.L2266
	mov	BYTE PTR -36[rbp], 2
	jmp	.L2263
.L2266:
	mov	rax, QWORD PTR -24[rbp]
	mov	BYTE PTR -36[rbp], al
.L2263:
	movzx	eax, BYTE PTR -36[rbp]
	sub	eax, 1
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -36[rbp]
	mov	edi, eax
	call	Atm128AlarmAsyncP$0$setOcr0
	movzx	eax, BYTE PTR -35[rbp]
	mov	edi, eax
	call	__nesc_atomic_end@PLT
	cmp	BYTE PTR -37[rbp], 0
	je	.L2255
	call	Atm128AlarmAsyncP$0$Alarm$fired
.L2255:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE792:
	.size	Atm128AlarmAsyncP$0$setInterrupt, .-Atm128AlarmAsyncP$0$setInterrupt
	.section	.rodata
	.align 8
.LC357:
	.string	"HplAtm128Timer0AsyncP: Setting compare: %hhu\n"
	.text
	.type	HplAtm128Timer0AsyncP$Compare$set, @function
HplAtm128Timer0AsyncP$Compare$set:
.LFB793:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	ecx, eax
	lea	rdx, .LC357[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 206
	mov	eax, 0
	call	sim_log_debug
	cmp	BYTE PTR -4[rbp], 0
	je	.L2268
	cmp	BYTE PTR -4[rbp], -3
	jbe	.L2269
.L2268:
	mov	BYTE PTR -4[rbp], 1
.L2269:
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 49[rax]
	lea	rax, atm128RegFile[rip]
	add	rax, rdx
	movzx	eax, BYTE PTR [rax]
	cmp	BYTE PTR -4[rbp], al
	je	.L2271
	call	sim_node
	mov	rdx, rax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, 49[rax]
	lea	rax, atm128RegFile[rip]
	add	rdx, rax
	movzx	eax, BYTE PTR -4[rbp]
	mov	BYTE PTR [rdx], al
	call	HplAtm128Timer0AsyncP$schedule_new_compare
.L2271:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE793:
	.size	HplAtm128Timer0AsyncP$Compare$set, .-HplAtm128Timer0AsyncP$Compare$set
	.type	HplAtm128Timer0AsyncP$schedule_new_compare, @function
HplAtm128Timer0AsyncP$schedule_new_compare:
.LFB794:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L2273
	call	HplAtm128Timer0AsyncP$cancel_compare
.L2273:
	call	HplAtm128Timer0AsyncP$Timer0$getScale
	test	al, al
	je	.L2275
	call	HplAtm128Timer0AsyncP$allocate_compare
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$configure_compare
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, HplAtm128Timer0AsyncP$compare[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	sim_queue_insert
.L2275:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE794:
	.size	HplAtm128Timer0AsyncP$schedule_new_compare, .-HplAtm128Timer0AsyncP$schedule_new_compare
	.type	sim_queue_allocate_event, @function
sim_queue_allocate_event:
.LFB795:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 48
	call	malloc@PLT
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, 48
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	call	sim_node
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 8[rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE795:
	.size	sim_queue_allocate_event, .-sim_queue_allocate_event
	.globl	INTERRUPT_16
	.type	INTERRUPT_16, @function
INTERRUPT_16:
.LFB796:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	sim_node
	lea	rdx, HplAtm128Timer0AsyncP$inOverflow[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	HplAtm128Timer0AsyncP$Timer0$overflow
	call	sim_node
	lea	rdx, HplAtm128Timer0AsyncP$inOverflow[rip]
	mov	BYTE PTR [rax+rdx], 0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE796:
	.size	INTERRUPT_16, .-INTERRUPT_16
	.section	.rodata
	.align 8
.LC358:
	.string	"Scheduling new overflow for %i at time %llu\n"
	.text
	.type	HplAtm128Timer0AsyncP$configure_overflow, @function
HplAtm128Timer0AsyncP$configure_overflow:
.LFB797:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -40[rbp], rdi
	mov	QWORD PTR -24[rbp], 0
	call	HplAtm128Timer0AsyncP$Timer0$get
	mov	BYTE PTR -26[rbp], al
	mov	BYTE PTR -25[rbp], 0
	movzx	eax, BYTE PTR -25[rbp]
	sub	al, BYTE PTR -26[rbp]
	movzx	eax, al
	mov	QWORD PTR -24[rbp], rax
	cmp	QWORD PTR -24[rbp], 0
	jne	.L2280
	mov	QWORD PTR -24[rbp], 256
.L2280:
	call	HplAtm128Timer0AsyncP$shiftFromScale
	movzx	eax, ax
	mov	ecx, eax
	sal	QWORD PTR -24[rbp], cl
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$clock_to_sim
	mov	QWORD PTR -24[rbp], rax
	call	sim_time
	add	QWORD PTR -24[rbp], rax
	call	sim_time
	mov	rbx, rax
	call	HplAtm128Timer0AsyncP$last_zero
	sub	rbx, rax
	call	HplAtm128Timer0AsyncP$shiftFromScale
	movzx	eax, ax
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	movsx	rcx, eax
	mov	rax, rbx
	cqo
	idiv	rcx
	mov	rax, rdx
	sub	QWORD PTR -24[rbp], rax
	call	sim_node
	mov	rdx, QWORD PTR -24[rbp]
	mov	r8, rdx
	mov	rcx, rax
	lea	rdx, .LC358[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 209
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE797:
	.size	HplAtm128Timer0AsyncP$configure_overflow, .-HplAtm128Timer0AsyncP$configure_overflow
	.globl	INTERRUPT_15
	.type	INTERRUPT_15, @function
INTERRUPT_15:
.LFB798:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	HplAtm128Timer0AsyncP$Compare$fired
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE798:
	.size	INTERRUPT_15, .-INTERRUPT_15
	.section	.rodata
	.align 8
.LC359:
	.string	"Configuring new compare of %i for %i at time %llu  (@ %llu)\n"
	.text
	.type	HplAtm128Timer0AsyncP$configure_compare, @function
HplAtm128Timer0AsyncP$configure_compare:
.LFB799:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -32[rbp], 0
	mov	QWORD PTR -24[rbp], 0
	call	HplAtm128Timer0AsyncP$Timer0$get
	mov	BYTE PTR -34[rbp], al
	call	HplAtm128Timer0AsyncP$Compare$get
	mov	BYTE PTR -33[rbp], al
	movzx	eax, BYTE PTR -33[rbp]
	sub	al, BYTE PTR -34[rbp]
	movzx	eax, al
	mov	QWORD PTR -32[rbp], rax
	cmp	QWORD PTR -32[rbp], 0
	jne	.L2283
	mov	QWORD PTR -32[rbp], 256
.L2283:
	mov	rax, QWORD PTR -32[rbp]
	lea	rbx, 1[rax]
	call	HplAtm128Timer0AsyncP$shiftFromScale
	movzx	eax, ax
	mov	ecx, eax
	sal	rbx, cl
	mov	rax, rbx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$clock_to_sim
	mov	QWORD PTR -32[rbp], rax
	call	sim_time
	add	QWORD PTR -32[rbp], rax
	call	sim_time
	mov	QWORD PTR -24[rbp], rax
	call	HplAtm128Timer0AsyncP$last_zero
	sub	QWORD PTR -24[rbp], rax
	call	HplAtm128Timer0AsyncP$shiftFromScale
	movzx	eax, ax
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	cdqe
	mov	rdi, rax
	call	HplAtm128Timer0AsyncP$clock_to_sim
	mov	rcx, rax
	mov	rax, QWORD PTR -24[rbp]
	cqo
	idiv	rcx
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR -24[rbp]
	sub	QWORD PTR -32[rbp], rax
	call	sim_time
	mov	rbx, rax
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -33[rbp]
	mov	rcx, QWORD PTR -32[rbp]
	sub	rsp, 8
	push	rbx
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, .LC359[rip]
	lea	rsi, .LC161[rip]
	mov	edi, 198
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	mov	rax, QWORD PTR -56[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	QWORD PTR [rax], rdx
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE799:
	.size	HplAtm128Timer0AsyncP$configure_compare, .-HplAtm128Timer0AsyncP$configure_compare
	.section	.rodata
	.align 8
.LC360:
	.string	"AMQueue: request to send from %hhu (%p): passed checks\n"
.LC361:
	.string	"AMQueue"
	.align 8
.LC362:
	.string	"%s: request to send from %hhu (%p): queue empty\n"
.LC363:
	.string	"%s: underlying send failed.\n"
	.align 8
.LC364:
	.string	"AMQueue: request to send from %hhu (%p): queue not empty\n"
	.text
	.type	AMQueueImplP$0$Send$send, @function
AMQueueImplP$0$Send$send:
.LFB800:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	ecx, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	eax, edx
	mov	edx, ecx
	mov	BYTE PTR -20[rbp], dl
	mov	BYTE PTR -24[rbp], al
	cmp	BYTE PTR -20[rbp], 1
	jbe	.L2285
	mov	eax, 1
	jmp	.L2286
.L2285:
	call	sim_node
	movzx	edx, BYTE PTR -20[rbp]
	movsx	rdx, edx
	add	rax, rax
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L2287
	mov	eax, 5
	jmp	.L2286
.L2287:
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, .LC360[rip]
	lea	rsi, .LC361[rip]
	mov	edi, 393
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	movzx	edx, BYTE PTR -20[rbp]
	movsx	rdx, edx
	add	rax, rax
	add	rax, rdx
	lea	rcx, 0[0+rax*8]
	lea	rdx, AMQueueImplP$0$queue[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	movzx	edx, BYTE PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	AMQueueImplP$0$Packet$setPayloadLength
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	cmp	al, 1
	jbe	.L2288
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	AMQueueImplP$0$AMPacket$type
	mov	BYTE PTR -4[rbp], al
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	AMQueueImplP$0$AMPacket$destination
	mov	WORD PTR -2[rbp], ax
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	r9, rdx
	mov	r8d, eax
	lea	rcx, __FUNCTION__.0[rip]
	lea	rdx, .LC362[rip]
	lea	rsi, .LC361[rip]
	mov	edi, 394
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rcx, AMQueueImplP$0$current[rip]
	movzx	edx, BYTE PTR -20[rbp]
	mov	BYTE PTR [rax+rcx], dl
	movzx	ecx, BYTE PTR -24[rbp]
	movzx	esi, WORD PTR -2[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	edi, eax
	call	AMQueueImplP$0$AMSend$send
	mov	BYTE PTR -3[rbp], al
	cmp	BYTE PTR -3[rbp], 0
	je	.L2289
	lea	rcx, __FUNCTION__.0[rip]
	lea	rdx, .LC363[rip]
	lea	rsi, .LC361[rip]
	mov	edi, 395
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, AMQueueImplP$0$current[rip]
	mov	BYTE PTR [rax+rdx], 2
	call	sim_node
	movzx	edx, BYTE PTR -20[rbp]
	movsx	rdx, edx
	add	rax, rax
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, AMQueueImplP$0$queue[rip]
	mov	QWORD PTR [rdx+rax], 0
.L2289:
	movzx	eax, BYTE PTR -3[rbp]
	jmp	.L2286
.L2288:
	movzx	eax, BYTE PTR -20[rbp]
	mov	rdx, QWORD PTR -32[rbp]
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, .LC364[rip]
	lea	rsi, .LC361[rip]
	mov	edi, 396
	mov	eax, 0
	call	sim_log_debug
	mov	eax, 0
.L2286:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE800:
	.size	AMQueueImplP$0$Send$send, .-AMQueueImplP$0$Send$send
	.type	PacketEngineP$PacketEngine$upperType, @function
PacketEngineP$PacketEngine$upperType:
.LFB801:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$lid
	cmp	BYTE PTR -4[rbp], al
	je	.L2291
	mov	eax, -1
	jmp	.L2292
.L2291:
	call	sim_node
	mov	rdx, rax
	movzx	eax, BYTE PTR -8[rbp]
	movsx	rcx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	add	rax, rcx
	sal	rax, 4
	mov	rdx, rax
	lea	rax, PacketEngineP$msgBuffer[rip+8]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	PacketEngineP$uid
.L2292:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE801:
	.size	PacketEngineP$PacketEngine$upperType, .-PacketEngineP$PacketEngine$upperType
	.type	SimpleLinkCacheP$RouteCache$trackRoute, @function
SimpleLinkCacheP$RouteCache$trackRoute:
.LFB802:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edx, edi
	mov	eax, esi
	mov	BYTE PTR -4[rbp], dl
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -8[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Track$get
	test	al, al
	jne	.L2296
	movzx	eax, BYTE PTR -8[rbp]
	mov	edi, eax
	call	SimpleLinkCacheP$Track$set
	movzx	edx, BYTE PTR -8[rbp]
	movzx	eax, BYTE PTR -4[rbp]
	mov	esi, edx
	mov	edi, eax
	call	SimpleLinkCacheP$RouteCache$checkRoute
	jmp	.L2293
.L2296:
	nop
.L2293:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE802:
	.size	SimpleLinkCacheP$RouteCache$trackRoute, .-SimpleLinkCacheP$RouteCache$trackRoute
	.section	.rodata
	.align 8
.LC365:
	.string	"DSR: Pkt %u: Single receive/snoop packet added!\n"
	.align 8
.LC366:
	.string	"DSR: Pkt %u: Passing to upper layer\n"
	.text
	.type	DsrControlP$0$SinglePacketEngine$receiveAdded, @function
DsrControlP$0$SinglePacketEngine$receiveAdded:
.LFB803:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 24
	.cfi_offset 3, -24
	mov	eax, edi
	mov	QWORD PTR -32[rbp], rsi
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC365[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 261
	mov	eax, 0
	call	sim_log_debug
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$destination
	movzx	ebx, ax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	DsrControlP$0$SinglePacket$source
	movzx	eax, ax
	mov	ecx, ebx
	mov	edx, 0
	mov	esi, 0
	mov	edi, eax
	call	DsrControlP$0$addPath
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	lea	rdx, .LC366[rip]
	lea	rsi, .LC12[rip]
	mov	edi, 262
	mov	eax, 0
	call	sim_log_debug
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	DsrControlP$0$SinglePacketEngine$receive
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE803:
	.size	DsrControlP$0$SinglePacketEngine$receiveAdded, .-DsrControlP$0$SinglePacketEngine$receiveAdded
	.globl	sim_mote_euid
	.type	sim_mote_euid, @function
sim_mote_euid:
.LFB804:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	call	sim_node
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	SimMoteP$SimMote$getEuid
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE804:
	.size	sim_mote_euid, .-sim_mote_euid
	.globl	sim_mote_set_euid
	.type	sim_mote_set_euid, @function
sim_mote_set_euid:
.LFB805:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	call	sim_node
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	SimMoteP$SimMote$setEuid
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE805:
	.size	sim_mote_set_euid, .-sim_mote_set_euid
	.section	.rodata
	.align 8
.LC367:
	.string	"Fetched %s of %i to be %p with len %i (result %i)\n"
	.text
	.globl	sim_mote_get_variable_info
	.type	sim_mote_get_variable_info, @function
sim_mote_get_variable_info:
.LFB806:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	call	sim_node
	mov	DWORD PTR -8[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	rdx, QWORD PTR -48[rbp]
	mov	rcx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	SimMoteP$SimMote$getVariableInfo
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, QWORD PTR [rax]
	mov	esi, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	ecx, DWORD PTR -4[rbp]
	push	rcx
	push	rdx
	mov	r9, rdi
	mov	r8d, esi
	mov	rcx, rax
	lea	rdx, .LC367[rip]
	lea	rsi, .LC177[rip]
	mov	edi, 102
	mov	eax, 0
	call	sim_log_debug
	add	rsp, 16
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	mov	eax, DWORD PTR -4[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE806:
	.size	sim_mote_get_variable_info, .-sim_mote_get_variable_info
	.section	.rodata
.LC368:
	.string	"Setting start time to %llu\n"
	.text
	.globl	sim_mote_set_start_time
	.type	sim_mote_set_start_time, @function
sim_mote_set_start_time:
.LFB807:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	mov	QWORD PTR -32[rbp], rsi
	call	sim_node
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	sim_node
	lea	rcx, 0[0+rax*8]
	lea	rdx, SimMoteP$startTime[rip]
	mov	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$startTime[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rcx, rax
	lea	rdx, .LC368[rip]
	lea	rsi, .LC177[rip]
	mov	edi, 103
	mov	eax, 0
	call	sim_log_debug
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE807:
	.size	sim_mote_set_start_time, .-sim_mote_set_start_time
	.globl	sim_mote_turn_on
	.type	sim_mote_turn_on, @function
sim_mote_turn_on:
.LFB808:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	call	sim_node
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	SimMoteP$SimMote$turnOn
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE808:
	.size	sim_mote_turn_on, .-sim_mote_turn_on
	.type	SimMoteP$SimMote$turnOn, @function
SimMoteP$SimMote$turnOn:
.LFB809:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 8
	.cfi_offset 3, -24
	call	sim_node
	lea	rdx, SimMoteP$isOn[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	test	al, al
	jne	.L2309
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L2308
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	BYTE PTR 17[rax], 1
.L2308:
	call	sim_node
	mov	edi, eax
	call	__nesc_nido_initialise
	call	sim_node
	mov	rbx, rax
	call	sim_time
	lea	rcx, 0[0+rbx*8]
	lea	rdx, SimMoteP$startTime[rip]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$startTime[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rcx, rax
	lea	rdx, .LC368[rip]
	lea	rsi, .LC177[rip]
	mov	edi, 101
	mov	eax, 0
	call	sim_log_debug
	call	sim_node
	lea	rdx, SimMoteP$isOn[rip]
	mov	BYTE PTR [rax+rdx], 1
	call	sim_main_start_mote
.L2309:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE809:
	.size	SimMoteP$SimMote$turnOn, .-SimMoteP$SimMote$turnOn
	.globl	sim_mote_turn_off
	.type	sim_mote_turn_off, @function
sim_mote_turn_off:
.LFB810:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -20[rbp], edi
	call	sim_node
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	SimMoteP$SimMote$turnOff
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE810:
	.size	sim_mote_turn_off, .-sim_mote_turn_off
	.globl	sim_mote_enqueue_boot_event
	.type	sim_mote_enqueue_boot_event, @function
sim_mote_enqueue_boot_event:
.LFB811:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	DWORD PTR -36[rbp], edi
	call	sim_node
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	test	rax, rax
	je	.L2312
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rbx, QWORD PTR [rax]
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$startTime[rip]
	mov	rax, QWORD PTR [rdx+rax]
	cmp	rbx, rax
	jne	.L2313
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	BYTE PTR 17[rax], 0
	jmp	.L2311
.L2313:
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	BYTE PTR 17[rax], 1
.L2312:
	call	sim_node
	mov	rbx, rax
	mov	edi, 48
	call	malloc@PLT
	lea	rcx, 0[0+rbx*8]
	lea	rdx, SimMoteP$bootEvent[rip]
	mov	QWORD PTR [rcx+rdx], rax
	call	sim_node
	mov	rbx, rax
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rcx, 0[0+rbx*8]
	lea	rdx, SimMoteP$startTime[rip]
	mov	rdx, QWORD PTR [rcx+rdx]
	mov	QWORD PTR [rax], rdx
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	edx, DWORD PTR -36[rbp]
	movsx	rdx, edx
	mov	QWORD PTR 8[rax], rdx
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	BYTE PTR 16[rax], 1
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR 24[rax], 0
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rdx, SimMoteP$sim_mote_boot_handle[rip]
	mov	QWORD PTR 32[rax], rdx
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	lea	rdx, sim_queue_cleanup_event[rip]
	mov	QWORD PTR 40[rax], rdx
	call	sim_node
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	rdi, rax
	call	sim_queue_insert
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	mov	rdi, rax
	call	sim_set_node
.L2311:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE811:
	.size	sim_mote_enqueue_boot_event, .-sim_mote_enqueue_boot_event
	.section	.rodata
.LC369:
	.string	"SimSchedulerBasicP$m_head"
.LC370:
	.string	"SimSchedulerBasicP$m_tail"
.LC371:
	.string	"SimSchedulerBasicP$m_next"
	.align 8
.LC372:
	.string	"SimSchedulerBasicP$sim_scheduler_event_pending"
	.align 8
.LC373:
	.string	"SimSchedulerBasicP$sim_scheduler_event"
.LC374:
	.string	"SimMoteP$euid"
.LC375:
	.string	"SimMoteP$startTime"
.LC376:
	.string	"SimMoteP$isOn"
.LC377:
	.string	"SimMoteP$bootEvent"
.LC378:
	.string	"TossimActiveMessageC$buffer"
	.align 8
.LC379:
	.string	"TossimActiveMessageC$bufferPointer"
.LC380:
	.string	"TestDsrP$pktNum"
.LC381:
	.string	"TestDsrP$dest"
.LC382:
	.string	"TestDsrP$numPkts"
.LC383:
	.string	"PacketEngineP$msgBuffer"
.LC384:
	.string	"PacketEngineP$nextFreePkt"
.LC385:
	.string	"PacketEngineP$nextAddedPkt"
.LC386:
	.string	"PacketEngineP$nextWaitPkt"
.LC387:
	.string	"PacketEngineP$nextActionPkt"
.LC388:
	.string	"PacketEngineP$running"
.LC389:
	.string	"PacketEngineP$radioOn"
	.align 8
.LC390:
	.string	"/*PacketEngineC.SendQueueC.CacheP*/LruDataCacheP$0$cache"
	.align 8
.LC391:
	.string	"/*PacketEngineC.SendQueueC.CacheP*/LruDataCacheP$0$first"
	.align 8
.LC392:
	.string	"/*PacketEngineC.SendQueueC.CacheP*/LruDataCacheP$0$count"
	.align 8
.LC393:
	.string	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$free"
	.align 8
.LC394:
	.string	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$index"
	.align 8
.LC395:
	.string	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$queue"
	.align 8
.LC396:
	.string	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$pool"
	.align 8
.LC397:
	.string	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$free"
	.align 8
.LC398:
	.string	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$index"
	.align 8
.LC399:
	.string	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$queue"
	.align 8
.LC400:
	.string	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$pool"
.LC401:
	.string	"StateImplP$state"
.LC402:
	.string	"RandomMlcgP$seed"
	.align 8
.LC403:
	.string	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmAsyncP*/Atm128AlarmAsyncP$0$set"
	.align 8
.LC404:
	.string	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmAsyncP*/Atm128AlarmAsyncP$0$t0"
	.align 8
.LC405:
	.string	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmAsyncP*/Atm128AlarmAsyncP$0$dt"
	.align 8
.LC406:
	.string	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmAsyncP*/Atm128AlarmAsyncP$0$base"
	.align 8
.LC407:
	.string	"HplAtm128Timer0AsyncP$inOverflow"
	.align 8
.LC408:
	.string	"HplAtm128Timer0AsyncP$lastZero"
	.align 8
.LC409:
	.string	"HplAtm128Timer0AsyncP$oldScale"
.LC410:
	.string	"HplAtm128Timer0AsyncP$compare"
	.align 8
.LC411:
	.string	"HplAtm128Timer0AsyncP$overflow"
	.align 8
.LC412:
	.string	"/*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$m_dt"
	.align 8
.LC413:
	.string	"/*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$m_oneshot"
	.align 8
.LC414:
	.string	"/*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC$0$m_timers"
	.align 8
.LC415:
	.string	"TossimPacketModelC$initialized"
.LC416:
	.string	"TossimPacketModelC$running"
	.align 8
.LC417:
	.string	"TossimPacketModelC$backoffCount"
	.align 8
.LC418:
	.string	"TossimPacketModelC$neededFreeSamples"
.LC419:
	.string	"TossimPacketModelC$sending"
	.align 8
.LC420:
	.string	"TossimPacketModelC$transmitting"
	.align 8
.LC421:
	.string	"TossimPacketModelC$sendingLength"
.LC422:
	.string	"TossimPacketModelC$destNode"
.LC423:
	.string	"TossimPacketModelC$sendEvent"
.LC424:
	.string	"TossimPacketModelC$error"
.LC425:
	.string	"CpmModelC$outgoing"
.LC426:
	.string	"CpmModelC$requestAck"
.LC427:
	.string	"CpmModelC$receiving"
	.align 8
.LC428:
	.string	"CpmModelC$outstandingReceptionHead"
.LC429:
	.string	"CpmModelC$clearThreshold"
.LC430:
	.string	"ActiveMessageAddressC$set"
.LC431:
	.string	"ActiveMessageAddressC$addr"
	.align 8
.LC432:
	.string	"/*DsrP.DsrControlP*/DsrControlP$0$nextIdent"
	.align 8
.LC433:
	.string	"/*DsrP.DsrControlP*/DsrControlP$0$retriesLeft"
	.align 8
.LC434:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.GraphSparseC.IndexedAllocC.IndexedBits.Bits*/BitVectorC$4$m_bits"
	.align 8
.LC435:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.GraphSparseC.IndexedAllocC.IndexedBits.IndexedBits*/IndexedAllocBitsP$0$free"
	.align 8
.LC436:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.GraphSparseC.IndexedAllocC.IndexedBits.IndexedBits*/IndexedAllocBitsP$0$size"
	.align 8
.LC437:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.GraphSparseC.GraphSparseP*/GraphSparseP$0$vSize"
	.align 8
.LC438:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.GraphSparseC.GraphSparseP*/GraphSparseP$0$v"
	.align 8
.LC439:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.GraphSparseC.GraphSparseP*/GraphSparseP$0$e"
	.align 8
.LC440:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.PriorityQueueC.PriorityQueueP*/PriorityQueueP$0$size"
	.align 8
.LC441:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.PriorityQueueC.PriorityQueueP*/PriorityQueueP$0$ai"
	.align 8
.LC442:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.PriorityQueueC.PriorityQueueP*/PriorityQueueP$0$hp"
	.align 8
.LC443:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$spt"
	.align 8
.LC444:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$fringe"
	.align 8
.LC445:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$weight"
	.align 8
.LC446:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$lastSrc"
	.align 8
.LC447:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$rebuildNeeded"
	.align 8
.LC448:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$lastDest"
	.align 8
.LC449:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$foundDest"
	.align 8
.LC450:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeightedC.SourceShortestPathC.SourceShortestPathP*/SourceShortestPathP$0$buildingTree"
	.align 8
.LC451:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.TrackC*/BitVectorC$2$m_bits"
	.align 8
.LC452:
	.string	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.InitialC*/BitVectorC$3$m_bits"
	.align 8
.LC453:
	.string	"/*DsrP.RouteRequestInCacheC.CacheP*/LruDataCacheP$1$cache"
	.align 8
.LC454:
	.string	"/*DsrP.RouteRequestInCacheC.CacheP*/LruDataCacheP$1$first"
	.align 8
.LC455:
	.string	"/*DsrP.RouteRequestInCacheC.CacheP*/LruDataCacheP$1$count"
	.align 8
.LC456:
	.string	"/*DsrP.RouteRequestOutCacheC.CacheP*/LruDataCacheP$2$cache"
	.align 8
.LC457:
	.string	"/*DsrP.RouteRequestOutCacheC.CacheP*/LruDataCacheP$2$first"
	.align 8
.LC458:
	.string	"/*DsrP.RouteRequestOutCacheC.CacheP*/LruDataCacheP$2$count"
	.align 8
.LC459:
	.string	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP$0$data"
	.align 8
.LC460:
	.string	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP$0$delay"
	.align 8
.LC461:
	.string	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP$0$size"
	.align 8
.LC462:
	.string	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP$0$startTime"
	.align 8
.LC463:
	.string	"/*DsrP.ComposeC*/BitVectorC$0$m_bits"
	.align 8
.LC464:
	.string	"/*DsrP.SalvageC*/BitVectorC$1$m_bits"
	.align 8
.LC465:
	.string	"/*AMQueueP.AMQueueImplP*/AMQueueImplP$0$current"
	.align 8
.LC466:
	.string	"/*AMQueueP.AMQueueImplP*/AMQueueImplP$0$queue"
	.align 8
.LC467:
	.string	"/*AMQueueP.AMQueueImplP*/AMQueueImplP$0$cancelMask"
	.text
	.type	__nesc_nido_resolve, @function
__nesc_nido_resolve:
.LFB812:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	DWORD PTR -4[rbp], edi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	QWORD PTR -32[rbp], rcx
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC369[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2316
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2316:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC370[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2318
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimSchedulerBasicP$m_tail[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2318:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC371[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2319
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, SimSchedulerBasicP$m_next[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 11
	mov	eax, 0
	jmp	.L2317
.L2319:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC372[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2320
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_pending[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2320:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC373[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2321
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 48
	mov	eax, 0
	jmp	.L2317
.L2321:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC374[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2322
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$euid[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2322:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC375[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2323
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$startTime[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2323:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC376[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2324
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimMoteP$isOn[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2324:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC377[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2325
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2325:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC378[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2326
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rdx
	lea	rdx, TossimActiveMessageC$buffer[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 49
	mov	eax, 0
	jmp	.L2317
.L2326:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC379[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2327
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2327:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC380[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2328
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$pktNum[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 2
	mov	eax, 0
	jmp	.L2317
.L2328:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC381[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2329
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$dest[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 2
	mov	eax, 0
	jmp	.L2317
.L2329:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC382[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2330
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, TestDsrP$numPkts[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 4
	mov	eax, 0
	jmp	.L2317
.L2330:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC383[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2331
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 7
	lea	rdx, PacketEngineP$msgBuffer[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 640
	mov	eax, 0
	jmp	.L2317
.L2331:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC384[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2332
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2332:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC385[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2333
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2333:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC386[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2334
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2334:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC387[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2335
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2335:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC388[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2336
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$running[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2336:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC389[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2337
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$radioOn[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2337:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC390[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2338
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, LruDataCacheP$0$cache[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 40
	mov	eax, 0
	jmp	.L2317
.L2338:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC391[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2339
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$0$first[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2339:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC392[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2340
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$0$count[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2340:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC393[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2341
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$0$free[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2341:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC394[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2342
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$0$index[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2342:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC395[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2343
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, PoolP$0$queue[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 160
	mov	eax, 0
	jmp	.L2317
.L2343:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC396[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2344
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 980
	lea	rdx, PoolP$0$pool[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 980
	mov	eax, 0
	jmp	.L2317
.L2344:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC397[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2345
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$1$free[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2345:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC398[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2346
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$1$index[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2346:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC399[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2347
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, PoolP$1$queue[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 160
	mov	eax, 0
	jmp	.L2317
.L2347:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC400[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2348
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 980
	lea	rdx, PoolP$1$pool[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 980
	mov	eax, 0
	jmp	.L2317
.L2348:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC401[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2349
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, StateImplP$state[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2349:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC402[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2350
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, RandomMlcgP$seed[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2350:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC403[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2351
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, Atm128AlarmAsyncP$0$set[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2351:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC404[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2352
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$t0[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2352:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC405[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2353
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$dt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2353:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC406[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2354
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2354:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC407[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2355
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, HplAtm128Timer0AsyncP$inOverflow[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2355:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC408[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2356
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$lastZero[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2356:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC409[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2357
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, HplAtm128Timer0AsyncP$oldScale[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2357:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC410[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2358
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2358:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC411[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2359
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2359:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC412[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2360
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, AlarmToTimerC$0$m_dt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2360:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC413[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2361
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, AlarmToTimerC$0$m_oneshot[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2361:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC414[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2362
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 3
	lea	rdx, VirtualizeTimerC$0$m_timers[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 72
	mov	eax, 0
	jmp	.L2317
.L2362:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC415[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2363
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$initialized[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2363:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC416[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2364
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$running[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2364:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC417[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2365
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2365:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC418[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2366
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2366:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC419[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2367
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2367:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC420[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2368
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$transmitting[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2368:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC421[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2369
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$sendingLength[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2369:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC422[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2370
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, TossimPacketModelC$destNode[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 4
	mov	eax, 0
	jmp	.L2317
.L2370:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC423[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2371
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, TossimPacketModelC$sendEvent[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 48
	mov	eax, 0
	jmp	.L2317
.L2371:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC424[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2372
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$error[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2372:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC425[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2373
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outgoing[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2373:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC426[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2374
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, CpmModelC$requestAck[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2374:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC427[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2375
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, CpmModelC$receiving[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2375:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC428[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2376
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2376:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC429[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2377
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$clearThreshold[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2377:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC430[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2378
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, ActiveMessageAddressC$set[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2378:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC431[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2379
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, ActiveMessageAddressC$addr[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 2
	mov	eax, 0
	jmp	.L2317
.L2379:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC432[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2380
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, DsrControlP$0$nextIdent[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2380:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC433[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2381
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 40
	mov	eax, 0
	jmp	.L2317
.L2381:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC434[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2382
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	lea	rax, BitVectorC$4$m_bits[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 32
	mov	eax, 0
	jmp	.L2317
.L2382:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC435[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2383
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2383:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC436[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2384
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2384:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC437[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2385
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, GraphSparseP$0$vSize[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2385:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC438[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2386
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, GraphSparseP$0$v[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 20
	mov	eax, 0
	jmp	.L2317
.L2386:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC439[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2387
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 500
	lea	rdx, GraphSparseP$0$e[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 500
	mov	eax, 0
	jmp	.L2317
.L2387:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC440[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2388
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PriorityQueueP$0$size[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2388:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC441[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2389
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 20
	mov	eax, 0
	jmp	.L2317
.L2389:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC442[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2390
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 20
	mov	eax, 0
	jmp	.L2317
.L2390:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC443[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2391
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 20
	mov	eax, 0
	jmp	.L2317
.L2391:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC444[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2392
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, SourceShortestPathP$0$fringe[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 20
	mov	eax, 0
	jmp	.L2317
.L2392:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC445[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2393
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 20
	mov	eax, 0
	jmp	.L2317
.L2393:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC446[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2394
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2394:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC447[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2395
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2395:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC448[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2396
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2396:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC449[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2397
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$foundDest[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2397:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC450[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2398
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2398:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC451[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2399
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, BitVectorC$2$m_bits[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 3
	mov	eax, 0
	jmp	.L2317
.L2399:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC452[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2400
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, BitVectorC$3$m_bits[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 3
	mov	eax, 0
	jmp	.L2317
.L2400:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC453[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2401
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 7
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 128
	mov	eax, 0
	jmp	.L2317
.L2401:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC454[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2402
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$1$first[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2402:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC455[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2403
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$1$count[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2403:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC456[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2404
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 32
	mov	eax, 0
	jmp	.L2317
.L2404:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC457[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2405
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$2$first[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2405:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC458[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2406
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$2$count[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2406:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC459[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2407
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$data[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 16
	mov	eax, 0
	jmp	.L2317
.L2407:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC460[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2408
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$delay[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 16
	mov	eax, 0
	jmp	.L2317
.L2408:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC461[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2409
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, DataTimerP$0$size[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2409:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC462[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2410
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, DataTimerP$0$startTime[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 8
	mov	eax, 0
	jmp	.L2317
.L2410:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC463[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2411
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, BitVectorC$0$m_bits[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 5
	mov	eax, 0
	jmp	.L2317
.L2411:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC464[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2412
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, BitVectorC$1$m_bits[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 5
	mov	eax, 0
	jmp	.L2317
.L2412:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC465[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2413
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, AMQueueImplP$0$current[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2413:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC466[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2414
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, AMQueueImplP$0$queue[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 16
	mov	eax, 0
	jmp	.L2317
.L2414:
	mov	rax, QWORD PTR -16[rbp]
	lea	rsi, .LC467[rip]
	mov	rdi, rax
	call	strcmp@PLT
	test	eax, eax
	jne	.L2415
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, AMQueueImplP$0$cancelMask[rip]
	add	rax, rdx
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], 1
	mov	eax, 0
	jmp	.L2317
.L2415:
	mov	eax, -1
.L2317:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE812:
	.size	__nesc_nido_resolve, .-__nesc_nido_resolve
	.type	__nesc_nido_initialise, @function
__nesc_nido_initialise:
.LFB813:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimSchedulerBasicP$m_head[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimSchedulerBasicP$m_tail[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, SimSchedulerBasicP$m_next[rip]
	add	rax, rdx
	mov	edx, 11
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event_pending[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, SimSchedulerBasicP$sim_scheduler_event[rip]
	add	rax, rdx
	mov	edx, 48
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$euid[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$startTime[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SimMoteP$isOn[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, SimMoteP$bootEvent[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rdx
	lea	rdx, TossimActiveMessageC$buffer[rip]
	add	rax, rdx
	mov	edx, 49
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	add	rax, rdx
	lea	rdx, TossimActiveMessageC$buffer[rip]
	lea	rcx, [rax+rdx]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimActiveMessageC$bufferPointer[rip]
	mov	QWORD PTR [rdx+rax], rcx
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$pktNum[rip]
	mov	WORD PTR [rdx+rax], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, TestDsrP$dest[rip]
	add	rax, rdx
	mov	edx, 2
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, TestDsrP$numPkts[rip]
	add	rax, rdx
	mov	edx, 4
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 7
	lea	rdx, PacketEngineP$msgBuffer[rip]
	add	rax, rdx
	mov	edx, 640
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextFreePkt[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextAddedPkt[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextWaitPkt[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$nextActionPkt[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$running[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PacketEngineP$radioOn[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, LruDataCacheP$0$cache[rip]
	add	rax, rdx
	mov	edx, 40
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$0$first[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$0$count[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$0$free[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$0$index[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, PoolP$0$queue[rip]
	add	rax, rdx
	mov	edx, 160
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 980
	lea	rdx, PoolP$0$pool[rip]
	add	rax, rdx
	mov	edx, 980
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$1$free[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PoolP$1$index[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 5
	lea	rdx, PoolP$1$queue[rip]
	add	rax, rdx
	mov	edx, 160
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 980
	lea	rdx, PoolP$1$pool[rip]
	add	rax, rdx
	mov	edx, 980
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, StateImplP$state[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, RandomMlcgP$seed[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, Atm128AlarmAsyncP$0$set[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$t0[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$dt[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, Atm128AlarmAsyncP$0$base[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, HplAtm128Timer0AsyncP$inOverflow[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$lastZero[rip]
	mov	QWORD PTR [rdx+rax], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, HplAtm128Timer0AsyncP$oldScale[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$compare[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, HplAtm128Timer0AsyncP$overflow[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, AlarmToTimerC$0$m_dt[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, AlarmToTimerC$0$m_oneshot[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 3
	add	rax, rdx
	sal	rax, 3
	lea	rdx, VirtualizeTimerC$0$m_timers[rip]
	add	rax, rdx
	mov	edx, 72
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$initialized[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$running[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$backoffCount[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$neededFreeSamples[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, TossimPacketModelC$sending[rip]
	mov	QWORD PTR [rdx+rax], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$transmitting[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$sendingLength[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, TossimPacketModelC$destNode[rip]
	add	rax, rdx
	mov	edx, 4
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	sal	rax, 4
	lea	rdx, TossimPacketModelC$sendEvent[rip]
	add	rax, rdx
	mov	edx, 48
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, TossimPacketModelC$error[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outgoing[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, CpmModelC$requestAck[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, CpmModelC$receiving[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$outstandingReceptionHead[rip]
	mov	QWORD PTR [rdx+rax], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, CpmModelC$clearThreshold[rip]
	movsd	xmm0, QWORD PTR .LC468[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, ActiveMessageAddressC$set[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, ActiveMessageAddressC$addr[rip]
	add	rax, rdx
	mov	edx, 2
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, DsrControlP$0$nextIdent[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 3
	lea	rdx, DsrControlP$0$retriesLeft[rip]
	add	rax, rdx
	mov	edx, 40
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	lea	rax, BitVectorC$4$m_bits[rip]
	add	rax, rdx
	mov	edx, 32
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, IndexedAllocBitsP$0$free[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, IndexedAllocBitsP$0$size[rip]
	mov	BYTE PTR [rax+rdx], 0
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, GraphSparseP$0$vSize[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, GraphSparseP$0$v[rip]
	add	rax, rdx
	mov	edx, 20
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	imul	rax, rax, 500
	lea	rdx, GraphSparseP$0$e[rip]
	add	rax, rdx
	mov	edx, 500
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, PriorityQueueP$0$size[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, PriorityQueueP$0$ai[rip]
	add	rax, rdx
	mov	edx, 20
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, PriorityQueueP$0$hp[rip]
	add	rax, rdx
	mov	edx, 20
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, SourceShortestPathP$0$spt[rip]
	add	rax, rdx
	mov	edx, 20
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, SourceShortestPathP$0$fringe[rip]
	add	rax, rdx
	mov	edx, 20
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	sal	rax, 2
	lea	rdx, SourceShortestPathP$0$weight[rip]
	add	rax, rdx
	mov	edx, 20
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$lastSrc[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$rebuildNeeded[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$lastDest[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$foundDest[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, SourceShortestPathP$0$buildingTree[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, BitVectorC$2$m_bits[rip]
	add	rax, rdx
	mov	edx, 3
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	add	rax, rax
	add	rax, rdx
	lea	rdx, BitVectorC$3$m_bits[rip]
	add	rax, rdx
	mov	edx, 3
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 7
	mov	rdx, rax
	lea	rax, LruDataCacheP$1$cache[rip]
	add	rax, rdx
	mov	edx, 128
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$1$first[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$1$count[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	lea	rax, LruDataCacheP$2$cache[rip]
	add	rax, rdx
	mov	edx, 32
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$2$first[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, LruDataCacheP$2$count[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$data[rip]
	add	rax, rdx
	mov	edx, 16
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, DataTimerP$0$delay[rip]
	add	rax, rdx
	mov	edx, 16
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, DataTimerP$0$size[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, DataTimerP$0$startTime[rip]
	add	rax, rdx
	mov	edx, 8
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, BitVectorC$0$m_bits[rip]
	add	rax, rdx
	mov	edx, 5
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	movsx	rdx, eax
	mov	rax, rdx
	sal	rax, 2
	add	rax, rdx
	lea	rdx, BitVectorC$1$m_bits[rip]
	add	rax, rdx
	mov	edx, 5
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, AMQueueImplP$0$current[rip]
	mov	BYTE PTR [rax+rdx], 2
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 4
	mov	rdx, rax
	lea	rax, AMQueueImplP$0$queue[rip]
	add	rax, rdx
	mov	edx, 16
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, AMQueueImplP$0$cancelMask[rip]
	add	rax, rdx
	mov	edx, 1
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE813:
	.size	__nesc_nido_initialise, .-__nesc_nido_initialise
	.section	.rodata
	.align 16
	.type	__FUNCTION__.2, @object
	.size	__FUNCTION__.2, 31
__FUNCTION__.2:
	.string	"AMQueueImplP$0$AMSend$sendDone"
	.align 32
	.type	__FUNCTION__.1, @object
	.size	__FUNCTION__.1, 44
__FUNCTION__.1:
	.string	"HplAtm128Timer0AsyncP$timer0_compare_handle"
	.align 16
	.type	__FUNCTION__.0, @object
	.size	__FUNCTION__.0, 25
__FUNCTION__.0:
	.string	"AMQueueImplP$0$Send$send"
	.align 8
.LC1:
	.long	0
	.long	-1050471728
	.align 8
.LC3:
	.long	0
	.long	1071644672
	.align 8
.LC4:
	.long	0
	.long	1066802960
	.align 8
.LC5:
	.long	1073741824
	.long	1071461100
	.align 8
.LC6:
	.long	-1610612736
	.long	1072693247
	.align 8
.LC91:
	.long	0
	.long	1076101120
	.align 8
.LC92:
	.long	-1145744106
	.long	1073900465
	.align 8
.LC103:
	.long	-755914244
	.long	1062232653
	.align 8
.LC122:
	.long	0
	.long	1079574528
	.align 8
.LC123:
	.long	-123695058
	.long	1073079857
	.align 8
.LC124:
	.long	-1965377035
	.long	1072522749
	.align 16
.LC125:
	.long	-1
	.long	2147483647
	.long	0
	.long	0
	.align 8
.LC126:
	.long	0
	.long	1073741824
	.align 8
.LC127:
	.long	0
	.long	1072693248
	.align 8
.LC128:
	.long	0
	.long	1078394880
	.align 8
.LC193:
	.long	0
	.long	1093567616
	.align 4
.LC205:
	.long	1065353216
	.align 8
.LC468:
	.long	0
	.long	-1068367872
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"661143.c"
	.text
	.comm	outputs,3248,4
	.global	channelTable
	.bss
	.align	2
	.type	channelTable, %object
	.size	channelTable, 4
channelTable:
	.space	4
	.global	STARTING_SIZE
	.section	.rodata
	.align	2
	.type	STARTING_SIZE, %object
	.size	STARTING_SIZE, 4
STARTING_SIZE:
	.word	511
	.local	eventHeap
	.comm	eventHeap,12,4
	.local	sim_ticks
	.comm	sim_ticks,8,8
	.local	current_node
	.comm	current_node,4,4
	.local	sim_seed
	.comm	sim_seed,4,4
	.comm	simTimeBuf,128,4
	.global	csmaInitHigh
	.data
	.align	2
	.type	csmaInitHigh, %object
	.size	csmaInitHigh, 4
csmaInitHigh:
	.word	640
	.global	csmaInitLow
	.align	2
	.type	csmaInitLow, %object
	.size	csmaInitLow, 4
csmaInitLow:
	.word	20
	.global	csmaHigh
	.align	2
	.type	csmaHigh, %object
	.size	csmaHigh, 4
csmaHigh:
	.word	160
	.global	csmaLow
	.align	2
	.type	csmaLow, %object
	.size	csmaLow, 4
csmaLow:
	.word	20
	.global	csmaSymbolsPerSec
	.align	2
	.type	csmaSymbolsPerSec, %object
	.size	csmaSymbolsPerSec, 4
csmaSymbolsPerSec:
	.word	65536
	.global	csmaBitsPerSymbol
	.align	2
	.type	csmaBitsPerSymbol, %object
	.size	csmaBitsPerSymbol, 4
csmaBitsPerSymbol:
	.word	4
	.global	csmaPreambleLength
	.align	2
	.type	csmaPreambleLength, %object
	.size	csmaPreambleLength, 4
csmaPreambleLength:
	.word	12
	.global	csmaExponentBase
	.align	2
	.type	csmaExponentBase, %object
	.size	csmaExponentBase, 4
csmaExponentBase:
	.word	1
	.global	csmaMaxIterations
	.bss
	.align	2
	.type	csmaMaxIterations, %object
	.size	csmaMaxIterations, 4
csmaMaxIterations:
	.space	4
	.global	csmaMinFreeSamples
	.data
	.align	2
	.type	csmaMinFreeSamples, %object
	.size	csmaMinFreeSamples, 4
csmaMinFreeSamples:
	.word	1
	.global	csmaRxTxDelay
	.align	2
	.type	csmaRxTxDelay, %object
	.size	csmaRxTxDelay, 4
csmaRxTxDelay:
	.word	11
	.global	csmaAckTime
	.align	2
	.type	csmaAckTime, %object
	.size	csmaAckTime, 4
csmaAckTime:
	.word	34
	.comm	connectivity,4004,4
	.comm	localNoise,16016,8
	.global	sensitivity
	.align	3
	.type	sensitivity, %object
	.size	sensitivity, 8
sensitivity:
	.word	0
	.word	1074790400
	.local	randU
	.comm	randU,776,8
	.local	randC
	.comm	randC,8,8
	.local	randCD
	.comm	randCD,8,8
	.local	randCM
	.comm	randCM,8,8
	.local	i97
	.comm	i97,4,4
	.local	j97
	.comm	j97,4,4
	.local	test
	.comm	test,4,4
	.global	numCase1
	.bss
	.align	2
	.type	numCase1, %object
	.size	numCase1, 4
numCase1:
	.space	4
	.global	numCase2
	.align	2
	.type	numCase2, %object
	.size	numCase2, 4
numCase2:
	.space	4
	.global	numTotal
	.align	2
	.type	numTotal, %object
	.size	numTotal, 4
numTotal:
	.space	4
	.global	FreqKeyNum
	.align	2
	.type	FreqKeyNum, %object
	.size	FreqKeyNum, 4
FreqKeyNum:
	.space	4
	.comm	noiseData,68000,4
	.comm	dummy,4,4
	.comm	atm128RegFile,160000,4
	.comm	SimSchedulerBasicP$m_head,1000,4
	.comm	SimSchedulerBasicP$m_tail,1000,4
	.comm	SimSchedulerBasicP$m_next,11000,4
	.comm	SimSchedulerBasicP$sim_scheduler_event_pending,1000,4
	.comm	SimSchedulerBasicP$sim_scheduler_event,32000,8
	.comm	SimMoteP$euid,8000,8
	.comm	SimMoteP$startTime,8000,8
	.comm	SimMoteP$isOn,1000,4
	.comm	SimMoteP$bootEvent,4000,4
	.comm	TossimActiveMessageC$buffer,49000,4
	.comm	TossimActiveMessageC$bufferPointer,4000,4
	.comm	TestDsrP$pktNum,2000,4
	.comm	TestDsrP$dest,2000,4
	.comm	TestDsrP$numPkts,4000,4
	.comm	PacketEngineP$msgBuffer,320000,4
	.comm	PacketEngineP$nextFreePkt,1000,4
	.comm	PacketEngineP$nextAddedPkt,1000,4
	.comm	PacketEngineP$nextWaitPkt,1000,4
	.comm	PacketEngineP$nextActionPkt,1000,4
	.comm	PacketEngineP$running,1000,4
	.comm	PacketEngineP$radioOn,1000,4
	.comm	LruDataCacheP$0$cache,40000,4
	.comm	LruDataCacheP$0$first,1000,4
	.comm	LruDataCacheP$0$count,1000,4
	.comm	PoolP$0$free,1000,4
	.comm	PoolP$0$index,1000,4
	.comm	PoolP$0$queue,80000,4
	.comm	PoolP$0$pool,980000,4
	.comm	PoolP$1$free,1000,4
	.comm	PoolP$1$index,1000,4
	.comm	PoolP$1$queue,80000,4
	.comm	PoolP$1$pool,980000,4
	.comm	StateImplP$state,1000,4
	.comm	RandomMlcgP$seed,4000,4
	.comm	Atm128AlarmAsyncP$0$set,1000,4
	.comm	Atm128AlarmAsyncP$0$t0,4000,4
	.comm	Atm128AlarmAsyncP$0$dt,4000,4
	.comm	Atm128AlarmAsyncP$0$base,4000,4
	.comm	HplAtm128Timer0AsyncP$inOverflow,1000,4
	.comm	HplAtm128Timer0AsyncP$lastZero,8000,8
	.comm	HplAtm128Timer0AsyncP$oldScale,1000,4
	.comm	HplAtm128Timer0AsyncP$compare,4000,4
	.comm	HplAtm128Timer0AsyncP$overflow,4000,4
	.comm	AlarmToTimerC$0$m_dt,4000,4
	.comm	AlarmToTimerC$0$m_oneshot,1000,4
	.comm	VirtualizeTimerC$0$m_timers,36000,4
	.comm	TossimPacketModelC$initialized,1000,4
	.comm	TossimPacketModelC$running,1000,4
	.comm	TossimPacketModelC$backoffCount,1000,4
	.comm	TossimPacketModelC$neededFreeSamples,1000,4
	.comm	TossimPacketModelC$sending,4000,4
	.comm	TossimPacketModelC$transmitting,1000,4
	.comm	TossimPacketModelC$sendingLength,1000,4
	.comm	TossimPacketModelC$destNode,4000,4
	.comm	TossimPacketModelC$sendEvent,32000,8
	.comm	TossimPacketModelC$error,1000,4
	.comm	CpmModelC$outgoing,4000,4
	.comm	CpmModelC$requestAck,1000,4
	.comm	CpmModelC$receiving,1000,4
	.comm	CpmModelC$outstandingReceptionHead,4000,4
	.comm	CpmModelC$clearThreshold,8000,8
	.comm	ActiveMessageAddressC$set,1000,4
	.comm	ActiveMessageAddressC$addr,2000,4
	.comm	DsrControlP$0$nextIdent,1000,4
	.comm	DsrControlP$0$retriesLeft,40000,4
	.comm	BitVectorC$4$m_bits,32000,4
	.comm	IndexedAllocBitsP$0$free,1000,4
	.comm	IndexedAllocBitsP$0$size,1000,4
	.comm	GraphSparseP$0$vSize,1000,4
	.comm	GraphSparseP$0$v,20000,4
	.comm	GraphSparseP$0$e,500000,4
	.comm	PriorityQueueP$0$size,1000,4
	.comm	PriorityQueueP$0$ai,20000,4
	.comm	PriorityQueueP$0$hp,20000,4
	.comm	SourceShortestPathP$0$spt,20000,4
	.comm	SourceShortestPathP$0$fringe,20000,4
	.comm	SourceShortestPathP$0$weight,20000,4
	.comm	SourceShortestPathP$0$lastSrc,1000,4
	.comm	SourceShortestPathP$0$rebuildNeeded,1000,4
	.comm	SourceShortestPathP$0$lastDest,1000,4
	.comm	SourceShortestPathP$0$foundDest,1000,4
	.comm	SourceShortestPathP$0$buildingTree,1000,4
	.comm	BitVectorC$2$m_bits,3000,4
	.comm	BitVectorC$3$m_bits,3000,4
	.comm	LruDataCacheP$1$cache,128000,4
	.comm	LruDataCacheP$1$first,1000,4
	.comm	LruDataCacheP$1$count,1000,4
	.comm	LruDataCacheP$2$cache,32000,4
	.comm	LruDataCacheP$2$first,1000,4
	.comm	LruDataCacheP$2$count,1000,4
	.comm	DataTimerP$0$data,16000,4
	.comm	DataTimerP$0$delay,16000,4
	.comm	DataTimerP$0$size,1000,4
	.comm	DataTimerP$0$startTime,4000,4
	.comm	BitVectorC$0$m_bits,5000,4
	.comm	BitVectorC$1$m_bits,5000,4
	.comm	AMQueueImplP$0$current,1000,4
	.comm	AMQueueImplP$0$queue,8000,4
	.comm	AMQueueImplP$0$cancelMask,1000,4
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	init_heap, %function
init_heap:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3]
	ldr	r2, .L2
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #4
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3, #4]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L3:
	.align	2
.L2:
	.word	511
	.size	init_heap, .-init_heap
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	expand_heap, %function
expand_heap:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #1
	add	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #4
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r1, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r0, [fp, #-8]
	bl	memcpy
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	free
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #8]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	expand_heap, .-expand_heap
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	heap_insert, %function
heap_insert:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	bne	.L6
	ldr	r0, [fp, #-16]
	bl	expand_heap
.L6:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	add	r1, r2, r3
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r2, [fp, #-20]
	str	r2, [r3]
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-16]
	bl	up_heap
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	add	r2, r3, #1
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	heap_insert, .-heap_insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	is_empty, %function
is_empty:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	is_empty, .-is_empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	heap_is_empty, %function
heap_is_empty:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	is_empty
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	heap_is_empty, .-heap_is_empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	heap_get_min_key, %function
heap_get_min_key:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	is_empty
	mov	r3, r0
	cmp	r3, #0
	beq	.L12
	mvn	r2, #0
	mvn	r3, #0
	b	.L13
.L12:
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #4]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
.L13:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	heap_get_min_key, .-heap_get_min_key
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_eq, %function
sim_log_eq:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_log_eq, .-sim_log_eq
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_hash, %function
sim_log_hash:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L17
.L18:
	ldr	r3, [fp, #-12]
	lsl	r2, r3, #6
	ldr	r3, [fp, #-8]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #16
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	sub	r3, r2, r3
	str	r3, [fp, #-12]
.L17:
	ldr	r3, [fp, #-16]
	add	r2, r3, #1
	str	r2, [fp, #-16]
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L18
	ldr	r3, [fp, #-12]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	sim_log_hash, .-sim_log_hash
	.section	.rodata
	.align	2
.LC0:
	.ascii	"w\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_init, %function
sim_log_init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	ldr	r2, .L23
	ldr	r1, .L23+4
	mov	r0, #128
	bl	create_hashtable
	mov	r3, r0
	ldr	r2, .L23+8
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L21
.L22:
	ldr	r2, .L23+12
	ldr	r3, [fp, #-16]
	mov	r1, #1
	str	r1, [r2, r3, lsl #3]
	mov	r0, #4
	bl	malloc
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L23+12
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	str	r1, [r3, #4]
	ldr	r2, .L23+12
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r4, [r3, #4]
	ldr	r1, .L23+16
	mov	r0, #1
	bl	fdopen
	mov	r3, r0
	str	r3, [r4]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L21:
	ldr	r3, [fp, #-16]
	ldr	r2, .L23+20
	cmp	r3, r2
	ble	.L22
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L24:
	.align	2
.L23:
	.word	sim_log_eq
	.word	sim_log_hash
	.word	channelTable
	.word	outputs
	.word	.LC0
	.word	405
	.size	sim_log_init, .-sim_log_init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_hash, %function
sim_noise_hash:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L26
.L27:
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-8]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #6
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #16
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L26:
	ldr	r3, [fp, #-12]
	cmp	r3, #19
	ble	.L27
	ldr	r3, [fp, #-16]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	sim_noise_hash, .-sim_noise_hash
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_eq, %function
sim_noise_eq:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r2, #20
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	memcmp
	mov	r3, r0
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_noise_eq, .-sim_noise_eq
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$isOn, %function
SimMoteP$SimMote$isOn:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L33
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	pop	{fp, pc}
.L34:
	.align	2
.L33:
	.word	SimMoteP$isOn
	.size	SimMoteP$SimMote$isOn, .-SimMoteP$SimMote$isOn
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_add_channel, %function
sim_log_add_channel:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, .L38
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	hashtable_search
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L36
	ldr	r0, [fp, #-24]
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	strcpy
	ldr	r0, [fp, #-24]
	bl	strlen
	mov	r2, r0
	ldr	r3, [fp, #-16]
	add	r3, r3, r2
	mov	r2, #0
	strb	r2, [r3]
	mov	r0, #16
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #0
	str	r2, [r3, #4]
	ldr	r3, [fp, #-20]
	mov	r2, #8
	str	r2, [r3, #8]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-20]
	str	r2, [r3, #12]
	ldr	r3, [fp, #-20]
	ldr	r0, [r3, #12]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #2
	mov	r2, r3
	mov	r1, #0
	bl	memset
	ldr	r3, .L38
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	hashtable_insert
.L36:
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #8]
	cmp	r2, r3
	bne	.L37
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	ldr	r1, [r3, #12]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #8]
	lsl	r3, r3, #2
	mov	r2, r3
	ldr	r0, [fp, #-8]
	bl	memcpy
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #12]
	mov	r0, r3
	bl	free
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #12]
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #8]
.L37:
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #4]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, [fp, #-28]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #4]
	add	r2, r3, #1
	ldr	r3, [fp, #-20]
	str	r2, [r3, #4]
	bl	sim_log_commit_change
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L39:
	.align	2
.L38:
	.word	channelTable
	.size	sim_log_add_channel, .-sim_log_add_channel
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_remove_channel, %function
sim_log_remove_channel:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, .L46
	ldr	r3, [r3]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	hashtable_search
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L41
	mov	r3, #0
	b	.L42
.L41:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L43
.L45:
	ldr	r3, [fp, #-12]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-8]
	cmp	r2, r3
	bne	.L44
	ldr	r3, [fp, #-12]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r0, r2, r3
	ldr	r3, [fp, #-12]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	lsl	r3, r3, #2
	add	r1, r2, r3
	ldr	r3, [fp, #-12]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	sub	r3, r2, r3
	mov	r2, r3
	bl	memcpy
	ldr	r3, [fp, #-12]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	sub	r2, r3, #1
	ldr	r3, [fp, #-12]
	str	r2, [r3, #4]
.L44:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L43:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L45
	mov	r3, #1
.L42:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L47:
	.align	2
.L46:
	.word	channelTable
	.size	sim_log_remove_channel, .-sim_log_remove_channel
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_allocate_link, %function
sim_gain_allocate_link:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r0, #24
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #16]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r1, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L50
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L51:
	.align	2
.L50:
	.word	-1050471728
	.size	sim_gain_allocate_link, .-sim_gain_allocate_link
	.global	__aeabi_dadd
	.global	__aeabi_dmul
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	RandomInitialise, %function
RandomInitialise:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	ldr	r3, [fp, #-56]
	cmp	r3, #0
	blt	.L53
	ldr	r3, [fp, #-56]
	ldr	r2, .L60
	cmp	r3, r2
	bgt	.L53
	ldr	r3, [fp, #-60]
	cmp	r3, #0
	blt	.L53
	ldr	r3, [fp, #-60]
	ldr	r2, .L60+4
	cmp	r3, r2
	ble	.L54
.L53:
	ldr	r3, .L60+8
	str	r3, [fp, #-56]
	ldr	r3, .L60+12
	str	r3, [fp, #-60]
.L54:
	ldr	r3, [fp, #-56]
	ldr	r2, .L60+16
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #7
	asr	r3, r3, #31
	sub	r1, r2, r3
	ldr	r3, .L60+16
	smull	r2, r3, r1, r3
	add	r3, r3, r1
	asr	r2, r3, #7
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #2
	sub	r3, r3, r2
	lsl	r2, r3, #2
	sub	r2, r2, r3
	sub	r2, r1, r2
	add	r3, r2, #2
	str	r3, [fp, #-44]
	ldr	r1, [fp, #-56]
	ldr	r3, .L60+16
	smull	r2, r3, r1, r3
	add	r3, r3, r1
	asr	r2, r3, #7
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #2
	sub	r3, r3, r2
	lsl	r2, r3, #2
	sub	r2, r2, r3
	sub	r2, r1, r2
	add	r3, r2, #2
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-60]
	ldr	r2, .L60+20
	smull	r1, r2, r3, r2
	asr	r2, r2, #6
	asr	r3, r3, #31
	sub	r3, r2, r3
	ldr	r2, .L60+24
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r1, r2, #7
	asr	r2, r3, #31
	sub	r2, r1, r2
	mov	r1, #178
	mul	r2, r1, r2
	sub	r2, r3, r2
	add	r3, r2, #1
	str	r3, [fp, #-36]
	ldr	r1, [fp, #-60]
	ldr	r3, .L60+20
	smull	r2, r3, r1, r3
	asr	r2, r3, #6
	asr	r3, r1, #31
	sub	r0, r2, r3
	mov	r2, r0
	lsl	r2, r2, #1
	add	r2, r2, r0
	lsl	r3, r2, #3
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r0
	sub	r3, r1, r3
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-48]
	b	.L55
.L59:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r2, #0
	ldr	r3, .L60+28
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L56
.L58:
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-40]
	mul	r0, r2, r3
	ldr	r3, .L60+32
	smull	r2, r3, r0, r3
	add	r3, r3, r0
	asr	r2, r3, #7
	asr	r3, r0, #31
	sub	r1, r2, r3
	mov	r2, r1
	lsl	r2, r2, #1
	add	r2, r2, r1
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #2
	sub	r3, r3, r1
	sub	r1, r0, r3
	ldr	r3, [fp, #-36]
	mul	r1, r3, r1
	ldr	r3, .L60+32
	smull	r2, r3, r1, r3
	add	r3, r3, r1
	asr	r2, r3, #7
	asr	r3, r1, #31
	sub	r0, r2, r3
	mov	r2, r0
	lsl	r2, r2, #1
	add	r2, r2, r0
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #2
	sub	r3, r3, r0
	sub	r3, r1, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-36]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-36]
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r1, r3, #1
	ldr	r3, .L60+20
	smull	r2, r3, r1, r3
	asr	r2, r3, #6
	asr	r3, r1, #31
	sub	r0, r2, r3
	mov	r2, r0
	lsl	r2, r2, #1
	add	r2, r2, r0
	lsl	r3, r2, #3
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r0
	sub	r3, r1, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-32]
	ldr	r2, [fp, #-24]
	mul	r3, r2, r3
	rsbs	r2, r3, #0
	and	r3, r3, #63
	and	r2, r2, #63
	rsbpl	r3, r2, #0
	cmp	r3, #31
	ble	.L57
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
.L57:
	mov	r2, #0
	ldr	r3, .L60+28
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L56:
	ldr	r3, [fp, #-28]
	cmp	r3, #23
	ble	.L58
	ldr	r2, .L60+36
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #3
	add	r1, r2, r3
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L55:
	ldr	r3, [fp, #-48]
	cmp	r3, #96
	ble	.L59
	ldr	r1, .L60+40
	mov	r2, #0
	ldr	r3, .L60+44
	stm	r1, {r2-r3}
	ldr	r1, .L60+48
	mov	r2, #1073741824
	ldr	r3, .L60+52
	stm	r1, {r2-r3}
	ldr	r1, .L60+56
	mov	r2, #-1610612736
	ldr	r3, .L60+60
	stm	r1, {r2-r3}
	ldr	r3, .L60+64
	mov	r2, #97
	str	r2, [r3]
	ldr	r3, .L60+68
	mov	r2, #33
	str	r2, [r3]
	ldr	r3, .L60+72
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L61:
	.align	2
.L60:
	.word	31328
	.word	30081
	.word	1802
	.word	9373
	.word	-1189002245
	.word	1626496491
	.word	-1206451487
	.word	1071644672
	.word	-1223705765
	.word	randU
	.word	randC
	.word	1066802960
	.word	randCD
	.word	1071461100
	.word	randCM
	.word	1072693247
	.word	i97
	.word	j97
	.word	test
	.size	RandomInitialise, .-RandomInitialise
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_alarm, %function
sim_noise_alarm:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L63
	mov	r2, #5
	str	r2, [r3]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L64:
	.align	2
.L63:
	.word	dummy
	.size	sim_noise_alarm, .-sim_noise_alarm
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	getHeader, %function
getHeader:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #7
	sub	r3, r3, #7
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	getHeader, .-getHeader
	.section	.rodata
	.align	2
.LC1:
	.ascii	"Delivering packet to %i at %s\012\000"
	.align	2
.LC2:
	.ascii	"Packet\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$active_message_deliver_handle, %function
TossimActiveMessageC$active_message_deliver_handle:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	mov	r4, r3
	bl	sim_time_string
	mov	r3, r0
	str	r3, [sp]
	mov	r3, r4
	ldr	r2, .L68
	ldr	r1, .L68+4
	mov	r0, #109
	bl	sim_log_debug
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$Model$receive
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L69:
	.align	2
.L68:
	.word	.LC1
	.word	.LC2
	.size	TossimActiveMessageC$active_message_deliver_handle, .-TossimActiveMessageC$active_message_deliver_handle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$allocate_deliver_event, %function
TossimActiveMessageC$allocate_deliver_event:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r0, #32
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r1, [fp, #-8]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-8]
	ldr	r2, .L72
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	ldr	r2, .L72+4
	str	r2, [r3, #24]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3, #13]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3, #12]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-20]
	str	r2, [r3, #16]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L73:
	.align	2
.L72:
	.word	TossimActiveMessageC$active_message_deliver_handle
	.word	sim_queue_cleanup_event
	.size	TossimActiveMessageC$allocate_deliver_event, .-TossimActiveMessageC$allocate_deliver_event
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Receive$default$receive, %function
TossimActiveMessageC$Receive$default$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldr	r3, [fp, #-12]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimActiveMessageC$Receive$default$receive, .-TossimActiveMessageC$Receive$default$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Receive$receive, %function
TossimActiveMessageC$Receive$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L77
	cmp	r3, #48
	beq	.L78
	b	.L82
.L77:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	mov	r0, #4
	bl	PacketEngineP$SubReceive$receive
	str	r0, [fp, #-8]
	b	.L80
.L78:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	mov	r0, #48
	bl	PacketEngineP$SubReceive$receive
	str	r0, [fp, #-8]
	b	.L80
.L82:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	TossimActiveMessageC$Receive$default$receive
	str	r0, [fp, #-8]
	nop
.L80:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$Receive$receive, .-TossimActiveMessageC$Receive$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$0$Pool$empty, %function
PoolP$0$Pool$empty:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L85
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L86:
	.align	2
.L85:
	.word	PoolP$0$free
	.size	PoolP$0$Pool$empty, .-PoolP$0$Pool$empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$ReceivePool$empty, %function
PacketEngineP$ReceivePool$empty:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PoolP$0$Pool$empty
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$ReceivePool$empty, .-PacketEngineP$ReceivePool$empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$0$Pool$get, %function
PoolP$0$Pool$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L90
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L93+8
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-16]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L93+8
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r1
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L93
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L93+4
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L91
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L93+4
	mov	r1, #0
	strb	r1, [r2, r3]
.L91:
	ldr	r3, [fp, #-16]
	b	.L92
.L90:
	mov	r3, #0
.L92:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L94:
	.align	2
.L93:
	.word	PoolP$0$free
	.word	PoolP$0$index
	.word	PoolP$0$queue
	.size	PoolP$0$Pool$get, .-PoolP$0$Pool$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$ReceivePool$get, %function
PacketEngineP$ReceivePool$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PoolP$0$Pool$get
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$ReceivePool$get, .-PacketEngineP$ReceivePool$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$DataCache$size, %function
LruDataCacheP$0$DataCache$size:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L99
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	pop	{fp, pc}
.L100:
	.align	2
.L99:
	.word	LruDataCacheP$0$count
	.size	LruDataCacheP$0$DataCache$size, .-LruDataCacheP$0$DataCache$size
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendQueue$size, %function
PacketEngineP$SendQueue$size:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	LruDataCacheP$0$DataCache$size
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendQueue$size, .-PacketEngineP$SendQueue$size
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$0$Pool$size, %function
PoolP$0$Pool$size:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L105
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	pop	{fp, pc}
.L106:
	.align	2
.L105:
	.word	PoolP$0$free
	.size	PoolP$0$Pool$size, .-PoolP$0$Pool$size
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$ReceivePool$size, %function
PacketEngineP$ReceivePool$size:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PoolP$0$Pool$size
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$ReceivePool$size, .-PacketEngineP$ReceivePool$size
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$moveFreeIndex, %function
PacketEngineP$moveFreeIndex:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L110
	add	r3, r3, r2
	mov	r1, #1
	mov	r0, r3
	bl	PacketEngineP$moveIndex
	nop
	pop	{fp, pc}
.L111:
	.align	2
.L110:
	.word	PacketEngineP$nextFreePkt
	.size	PacketEngineP$moveFreeIndex, .-PacketEngineP$moveFreeIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$isWaiting, %function
SimSchedulerBasicP$isWaiting:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L117
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r3, r0, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #255
	bne	.L113
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L117+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L114
.L113:
	mov	r3, #1
	b	.L115
.L114:
	mov	r3, #0
.L115:
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L118:
	.align	2
.L117:
	.word	SimSchedulerBasicP$m_next
	.word	SimSchedulerBasicP$m_tail
	.size	SimSchedulerBasicP$isWaiting, .-SimSchedulerBasicP$isWaiting
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$pushTask, %function
SimSchedulerBasicP$pushTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimSchedulerBasicP$isWaiting
	mov	r3, r0
	cmp	r3, #0
	bne	.L120
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L124
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #255
	bne	.L121
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L124
	ldrb	r3, [fp, #-13]
	strb	r3, [r1, r2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L124+4
	ldrb	r3, [fp, #-13]
	strb	r3, [r1, r2]
	b	.L122
.L121:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L124+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L124+8
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [fp, #-13]
	strb	r2, [r3]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L124+4
	ldrb	r3, [fp, #-13]
	strb	r3, [r1, r2]
.L122:
	mov	r3, #1
	b	.L123
.L120:
	mov	r3, #0
.L123:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L125:
	.align	2
.L124:
	.word	SimSchedulerBasicP$m_head
	.word	SimSchedulerBasicP$m_tail
	.word	SimSchedulerBasicP$m_next
	.size	SimSchedulerBasicP$pushTask, .-SimSchedulerBasicP$pushTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$sim_config_task_latency, %function
SimSchedulerBasicP$sim_config_task_latency:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #100
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	SimSchedulerBasicP$sim_config_task_latency, .-SimSchedulerBasicP$sim_config_task_latency
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Snoop$default$receive, %function
TossimActiveMessageC$Snoop$default$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldr	r3, [fp, #-12]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimActiveMessageC$Snoop$default$receive, .-TossimActiveMessageC$Snoop$default$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Snoop$receive, %function
TossimActiveMessageC$Snoop$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L131
	cmp	r3, #48
	beq	.L132
	b	.L136
.L131:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	mov	r0, #4
	bl	PacketEngineP$SubReceive$receive
	str	r0, [fp, #-8]
	b	.L134
.L132:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	mov	r0, #48
	bl	PacketEngineP$SubReceive$receive
	str	r0, [fp, #-8]
	b	.L134
.L136:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	TossimActiveMessageC$Snoop$default$receive
	str	r0, [fp, #-8]
	nop
.L134:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$Snoop$receive, .-TossimActiveMessageC$Snoop$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$sim_scheduler_event_handle, %function
SimSchedulerBasicP$sim_scheduler_event_handle:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L140
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	SimSchedulerBasicP$Scheduler$runNextTask
	mov	r3, r0
	cmp	r3, #0
	beq	.L139
	bl	SimSchedulerBasicP$sim_scheduler_submit_event
.L139:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L141:
	.align	2
.L140:
	.word	SimSchedulerBasicP$sim_scheduler_event_pending
	.size	SimSchedulerBasicP$sim_scheduler_event_handle, .-SimSchedulerBasicP$sim_scheduler_event_handle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$sim_scheduler_event_init, %function
SimSchedulerBasicP$sim_scheduler_event_init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	sim_node
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3, #12]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #16]
	ldr	r3, [fp, #-8]
	ldr	r2, .L143
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	ldr	r2, .L143+4
	str	r2, [r3, #24]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L144:
	.align	2
.L143:
	.word	SimSchedulerBasicP$sim_scheduler_event_handle
	.word	sim_queue_cleanup_none
	.size	SimSchedulerBasicP$sim_scheduler_event_init, .-SimSchedulerBasicP$sim_scheduler_event_init
	.section	.rodata
	.align	2
.LC3:
	.ascii	"Initializing scheduler.\012\000"
	.align	2
.LC4:
	.ascii	"Scheduler\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$Scheduler$init, %function
SimSchedulerBasicP$Scheduler$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r2, .L146
	ldr	r1, .L146+4
	mov	r0, #96
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L146+8
	add	r3, r3, r2
	mov	r2, #11
	mov	r1, #255
	mov	r0, r3
	bl	memset
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L146+12
	mvn	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L146+16
	mvn	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L146+20
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	lsl	r3, r3, #5
	ldr	r2, .L146+24
	add	r3, r3, r2
	mov	r0, r3
	bl	SimSchedulerBasicP$sim_scheduler_event_init
	nop
	pop	{fp, pc}
.L147:
	.align	2
.L146:
	.word	.LC3
	.word	.LC4
	.word	SimSchedulerBasicP$m_next
	.word	SimSchedulerBasicP$m_head
	.word	SimSchedulerBasicP$m_tail
	.word	SimSchedulerBasicP$sim_scheduler_event_pending
	.word	SimSchedulerBasicP$sim_scheduler_event
	.size	SimSchedulerBasicP$Scheduler$init, .-SimSchedulerBasicP$Scheduler$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMainP$Scheduler$init, %function
SimMainP$Scheduler$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	SimSchedulerBasicP$Scheduler$init
	nop
	pop	{fp, pc}
	.size	SimMainP$Scheduler$init, .-SimMainP$Scheduler$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$popTask, %function
SimSchedulerBasicP$popTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L153
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #255
	beq	.L150
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L153
	ldrb	r3, [r2, r3]
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L153
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r5, r3
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L153+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r1, r3
	add	r3, r3, r5
	ldrb	r1, [r3]	@ zero_extendqisi2
	ldr	r3, .L153
	strb	r1, [r3, r2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L153
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #255
	bne	.L151
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L153+8
	mvn	r1, #0
	strb	r1, [r2, r3]
.L151:
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L153+4
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r3, r0, r3
	add	r3, r3, r1
	mvn	r2, #0
	strb	r2, [r3]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	b	.L152
.L150:
	mov	r3, #255
.L152:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L154:
	.align	2
.L153:
	.word	SimSchedulerBasicP$m_head
	.word	SimSchedulerBasicP$m_next
	.word	SimSchedulerBasicP$m_tail
	.size	SimSchedulerBasicP$popTask, .-SimSchedulerBasicP$popTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$msgAdded$postTask, %function
PacketEngineP$msgAdded$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #0
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$msgAdded$postTask, .-PacketEngineP$msgAdded$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$moveAddedIndex, %function
PacketEngineP$moveAddedIndex:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L158
	add	r3, r3, r2
	mov	r1, #2
	mov	r0, r3
	bl	PacketEngineP$moveIndex
	nop
	pop	{fp, pc}
.L159:
	.align	2
.L158:
	.word	PacketEngineP$nextAddedPkt
	.size	PacketEngineP$moveAddedIndex, .-PacketEngineP$moveAddedIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$AMPacket$type, %function
PacketEngineP$AMPacket$type:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$AMPacket$type, .-PacketEngineP$AMPacket$type
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$lid, %function
PacketEngineP$lid:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$AMPacket$type
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$lid, .-PacketEngineP$lid
	.section	.rodata
	.align	2
.LC5:
	.ascii	"DSR: Pkt %u: Single snooped!\012\000"
	.align	2
.LC6:
	.ascii	"DsrControlP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$snoopAdded, %function
DsrControlP$0$SinglePacketEngine$snoopAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L165
	ldr	r1, .L165+4
	ldr	r0, .L165+8
	bl	sim_log_debug
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$receiveAdded
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L166:
	.align	2
.L165:
	.word	.LC5
	.word	.LC6
	.word	263
	.size	DsrControlP$0$SinglePacketEngine$snoopAdded, .-DsrControlP$0$SinglePacketEngine$snoopAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$snoopAdded, %function
DsrControlP$0$SingleDsrPacketEngine$snoopAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$SingleDsrPacketEngine$snoopAdded, .-DsrControlP$0$SingleDsrPacketEngine$snoopAdded
	.section	.rodata
	.align	2
.LC7:
	.ascii	"DSR: Pkt %u: DSR snooped!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$snoopAdded, %function
DsrControlP$0$DsrPacketEngine$snoopAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L169
	ldr	r1, .L169+4
	mov	r0, #288
	bl	sim_log_debug
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$receiveAdded
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L170:
	.align	2
.L169:
	.word	.LC7
	.word	.LC6
	.size	DsrControlP$0$DsrPacketEngine$snoopAdded, .-DsrControlP$0$DsrPacketEngine$snoopAdded
	.section	.rodata
	.align	2
.LC8:
	.ascii	"PE: Trying to use invalid lower AM type %hhu!\012\000"
	.align	2
.LC9:
	.ascii	"PacketEngineP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$default$snoopAdded, %function
PacketEngineP$PacketEngine$default$snoopAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r2, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L172
	ldr	r1, .L172+4
	mov	r0, #138
	bl	sim_log_error
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PacketEngineP$PacketEngine$drop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L173:
	.align	2
.L172:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$PacketEngine$default$snoopAdded, .-PacketEngineP$PacketEngine$default$snoopAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$snoopAdded, %function
PacketEngineP$PacketEngine$snoopAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r2, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L175
	cmp	r3, #48
	beq	.L176
	b	.L179
.L175:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$snoopAdded
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$snoopAdded
	b	.L178
.L176:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$snoopAdded
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$snoopAdded
	b	.L178
.L179:
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, [fp, #-12]
	mov	r0, r3
	bl	PacketEngineP$PacketEngine$default$snoopAdded
	nop
.L178:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$PacketEngine$snoopAdded, .-PacketEngineP$PacketEngine$snoopAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$receiveAdded, %function
DsrControlP$0$SingleDsrPacketEngine$receiveAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$SingleDsrPacketEngine$receiveAdded, .-DsrControlP$0$SingleDsrPacketEngine$receiveAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$default$receiveAdded, %function
PacketEngineP$PacketEngine$default$receiveAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r2, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L182
	ldr	r1, .L182+4
	mov	r0, #137
	bl	sim_log_error
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PacketEngineP$PacketEngine$drop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L183:
	.align	2
.L182:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$PacketEngine$default$receiveAdded, .-PacketEngineP$PacketEngine$default$receiveAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$receiveAdded, %function
PacketEngineP$PacketEngine$receiveAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r2, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L185
	cmp	r3, #48
	beq	.L186
	b	.L189
.L185:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$receiveAdded
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$receiveAdded
	b	.L188
.L186:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$receiveAdded
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$receiveAdded
	b	.L188
.L189:
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, [fp, #-12]
	mov	r0, r3
	bl	PacketEngineP$PacketEngine$default$receiveAdded
	nop
.L188:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$PacketEngine$receiveAdded, .-PacketEngineP$PacketEngine$receiveAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$AMPacket$isForMe, %function
PacketEngineP$AMPacket$isForMe:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$isForMe
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$AMPacket$isForMe, .-PacketEngineP$AMPacket$isForMe
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_ntoh_uint16, %function
__nesc_ntoh_uint16:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #8
	lsl	r3, r3, #16
	asr	r2, r3, #16
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #16
	asr	r3, r3, #16
	orr	r3, r2, r3
	lsl	r3, r3, #16
	asr	r3, r3, #16
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	__nesc_ntoh_uint16, .-__nesc_ntoh_uint16
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubPacket$getPayload, %function
SinglePacketP$SubPacket$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$Packet$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SubPacket$getPayload, .-SinglePacketP$SubPacket$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SinglePacket$destination, %function
SinglePacketP$SinglePacket$destination:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r1, #4
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$SubPacket$getPayload
	mov	r3, r0
	add	r3, r3, #2
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SinglePacket$destination, .-SinglePacketP$SinglePacket$destination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacket$destination, %function
DsrControlP$0$SinglePacket$destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$SinglePacket$destination
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacket$destination, .-DsrControlP$0$SinglePacket$destination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$amAddress, %function
TossimActiveMessageC$amAddress:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	ActiveMessageAddressC$amAddress
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$amAddress, .-TossimActiveMessageC$amAddress
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMPacket$address, %function
TossimActiveMessageC$AMPacket$address:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	TossimActiveMessageC$amAddress
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
	.size	TossimActiveMessageC$AMPacket$address, .-TossimActiveMessageC$AMPacket$address
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$AMPacket$address, %function
DsrControlP$0$AMPacket$address:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	TossimActiveMessageC$AMPacket$address
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$AMPacket$address, .-DsrControlP$0$AMPacket$address
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteCache$trackRoute, %function
DsrControlP$0$RouteCache$trackRoute:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$trackRoute
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteCache$trackRoute, .-DsrControlP$0$RouteCache$trackRoute
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$send, %function
DsrControlP$0$SinglePacketEngine$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketEngine$send, .-DsrControlP$0$SinglePacketEngine$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$AMPacket$setDestination, %function
DsrControlP$0$AMPacket$setDestination:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strh	r3, [fp, #-10]	@ movhi
	ldrh	r3, [fp, #-10]
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setDestination
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$AMPacket$setDestination, .-DsrControlP$0$AMPacket$setDestination
	.section	.rodata
	.align	2
.LC10:
	.ascii	"DSR: Pkt %u: Single broadcast send packet added!\012"
	.ascii	"\000"
	.align	2
.LC11:
	.ascii	"DSR: Pkt %u: Single unicast send packet added!\012\000"
	.align	2
.LC12:
	.ascii	"DSR: Pkt %u: Looking for route to %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$sendAdded, %function
DsrControlP$0$SinglePacketEngine$sendAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L214
	cmp	r2, r3
	bne	.L211
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L214+4
	ldr	r1, .L214+8
	ldr	r0, .L214+12
	bl	sim_log_debug
	ldr	r1, .L214
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$AMPacket$setDestination
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$send
	b	.L213
.L211:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L214+16
	ldr	r1, .L214+8
	ldr	r0, .L214+20
	bl	sim_log_debug
	ldrb	r4, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	str	r3, [sp]
	mov	r3, r4
	ldr	r2, .L214+24
	ldr	r1, .L214+8
	mov	r0, #260
	bl	sim_log_debug
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	and	r4, r3, #255
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	and	r3, r3, #255
	mov	r1, r3
	mov	r0, r4
	bl	DsrControlP$0$RouteCache$trackRoute
.L213:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L215:
	.align	2
.L214:
	.word	65535
	.word	.LC10
	.word	.LC6
	.word	258
	.word	.LC11
	.word	259
	.word	.LC12
	.size	DsrControlP$0$SinglePacketEngine$sendAdded, .-DsrControlP$0$SinglePacketEngine$sendAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$sendAdded, %function
DsrControlP$0$SingleDsrPacketEngine$sendAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$SingleDsrPacketEngine$sendAdded, .-DsrControlP$0$SingleDsrPacketEngine$sendAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$send, %function
DsrControlP$0$DsrPacketEngine$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$send, .-DsrControlP$0$DsrPacketEngine$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SourceRoute$length, %function
DsrControlP$0$SourceRoute$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #96
	bl	TlvPacketP$0$TlvSinglePacket$length
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SourceRoute$length, .-DsrControlP$0$SourceRoute$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	pamidCombine, %function
pamidCombine:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #255
	bne	.L222
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	b	.L223
.L222:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
.L223:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	pamidCombine, .-pamidCombine
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$upperType, %function
DsrControlP$0$SingleDsrPacketEngine$upperType:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$upperType
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$upperType
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	pamidCombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SingleDsrPacketEngine$upperType, .-DsrControlP$0$SingleDsrPacketEngine$upperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$setUpperType, %function
PacketEngineP$PacketEngine$setUpperType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L230
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, r2
	bne	.L229
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L230
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	ldrb	r2, [fp, #-7]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PacketEngineP$setUid
	b	.L226
.L229:
	nop
.L226:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L231:
	.align	2
.L230:
	.word	PacketEngineP$msgBuffer
	.size	PacketEngineP$PacketEngine$setUpperType, .-PacketEngineP$PacketEngine$setUpperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$setUpperType, %function
DsrControlP$0$DsrPacketEngine$setUpperType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$setUpperType
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$setUpperType, .-DsrControlP$0$DsrPacketEngine$setUpperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	iteratorEndCombine, %function
iteratorEndCombine:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L234
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L234
	mov	r3, #1
	b	.L235
.L234:
	mov	r3, #0
.L235:
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	iteratorEndCombine, .-iteratorEndCombine
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketWaitList$end, %function
PacketEngineP$PacketWaitList$end:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #40
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineP$PacketWaitList$end, .-PacketEngineP$PacketWaitList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketWaitList$end, %function
DsrControlP$0$SingleDsrPacketWaitList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketWaitList$end
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketWaitList$end
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	iteratorEndCombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SingleDsrPacketWaitList$end, .-DsrControlP$0$SingleDsrPacketWaitList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequest$length, %function
DsrControlP$0$RouteRequest$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	TlvPacketP$0$TlvSinglePacket$length
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequest$length, .-DsrControlP$0$RouteRequest$length
	.section	.rodata
	.align	2
.LC13:
	.ascii	"DSR: Pkt %u: Recovered upper layer AM type from pkt"
	.ascii	" %u\012\000"
	.align	2
.LC14:
	.ascii	"DSR: Pkt %u: Looking for pkt that originated route "
	.ascii	"request to %u, but no packets are waiting!\012\000"
	.align	2
.LC15:
	.ascii	"DSR: Pkt %u: DSR send packet added, waiting for rou"
	.ascii	"te\012\000"
	.align	2
.LC16:
	.ascii	"DSR: Pkt %u: DSR send packet added, sending!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$sendAdded, %function
DsrControlP$0$DsrPacketEngine$sendAdded:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$RouteRequest$length
	mov	r3, r0
	cmp	r3, #0
	beq	.L244
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	DsrControlP$0$findSingleDsrPktTo
	mov	r3, r0
	strb	r3, [fp, #-7]
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	bne	.L245
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$upperType
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$setUpperType
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L248
	ldr	r1, .L248+4
	mov	r0, #264
	bl	sim_log_debug
	b	.L246
.L245:
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrh	r3, [fp, #-6]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L248+8
	ldr	r1, .L248+4
	ldr	r0, .L248+12
	bl	sim_log_error
	b	.L246
.L244:
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SourceRoute$length
	mov	r3, r0
	cmp	r3, #0
	bne	.L246
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L248+16
	ldr	r1, .L248+4
	ldr	r0, .L248+20
	bl	sim_log_debug
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	and	r2, r3, #255
	ldrh	r3, [fp, #-6]	@ movhi
	and	r3, r3, #255
	mov	r1, r3
	mov	r0, r2
	bl	DsrControlP$0$RouteCache$trackRoute
	b	.L243
.L246:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L248+24
	ldr	r1, .L248+4
	ldr	r0, .L248+28
	bl	sim_log_debug
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L248+32
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #2
	strb	r2, [r3]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$send
.L243:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L249:
	.align	2
.L248:
	.word	.LC13
	.word	.LC6
	.word	.LC14
	.word	265
	.word	.LC15
	.word	266
	.word	.LC16
	.word	267
	.word	DsrControlP$0$retriesLeft
	.size	DsrControlP$0$DsrPacketEngine$sendAdded, .-DsrControlP$0$DsrPacketEngine$sendAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$default$sendAdded, %function
PacketEngineP$PacketEngine$default$sendAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r2, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L251
	ldr	r1, .L251+4
	mov	r0, #136
	bl	sim_log_error
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PacketEngineP$PacketEngine$drop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L252:
	.align	2
.L251:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$PacketEngine$default$sendAdded, .-PacketEngineP$PacketEngine$default$sendAdded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$sendAdded, %function
PacketEngineP$PacketEngine$sendAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r2, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L254
	cmp	r3, #48
	beq	.L255
	b	.L258
.L254:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$sendAdded
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$sendAdded
	b	.L257
.L255:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$sendAdded
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$sendAdded
	b	.L257
.L258:
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, [fp, #-12]
	mov	r0, r3
	bl	PacketEngineP$PacketEngine$default$sendAdded
	nop
.L257:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$PacketEngine$sendAdded, .-PacketEngineP$PacketEngine$sendAdded
	.section	.rodata
	.align	2
.LC17:
	.ascii	"PE: msgAdded posted, but nextAddedPkt is invalid!\012"
	.ascii	"\000"
	.align	2
.LC18:
	.ascii	"PE: Processing added pkt %u\012\000"
	.align	2
.LC19:
	.ascii	"PE: Moved nextWaitPkt from %u\000"
	.align	2
.LC20:
	.ascii	" to %u\012\000"
	.align	2
.LC21:
	.ascii	"PE: Notify about send added at index %u\012\000"
	.align	2
.LC22:
	.ascii	"PE: Notify about receive added at index %u\012\000"
	.align	2
.LC23:
	.ascii	"PE: Notify about snoop added at index %u\012\000"
	.align	2
.LC24:
	.ascii	"PE: msgAdded posted, but nextAddedPkt is in state %"
	.ascii	"hhu!\012\000"
	.align	2
.LC25:
	.ascii	"PE: No more added packets\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$msgAdded$runTask, %function
PacketEngineP$msgAdded$runTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L269
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L262
	ldr	r2, .L270+8
	ldr	r1, .L270+12
	mov	r0, #145
	bl	sim_log_error
	b	.L259
.L262:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L270+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #2
	bne	.L263
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L270+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	str	r3, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L270+20
	ldr	r1, .L270+12
	mov	r0, #146
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L270+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #27
	orr	r3, r3, #4
	strb	r3, [r1, r2, lsl #3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L264
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L270+28
	ldr	r1, .L270+12
	mov	r0, #147
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r1, [r2, r4]	@ zero_extendqisi2
	ldr	r2, .L270+24
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L270+32
	ldr	r1, .L270+12
	mov	r0, #148
	bl	sim_log_debug_clear
	bl	PacketEngineP$printIndices
.L264:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L270+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]	@ zero_extendqisi2
	lsr	r3, r3, #5
	and	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	bne	.L265
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L270+36
	ldr	r1, .L270+12
	mov	r0, #149
	bl	sim_log_debug
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	mov	r1, r3
	mov	r0, r4
	bl	PacketEngineP$PacketEngine$sendAdded
	b	.L266
.L265:
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$AMPacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	beq	.L267
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L270+40
	ldr	r1, .L270+12
	mov	r0, #150
	bl	sim_log_debug
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	mov	r1, r3
	mov	r0, r4
	bl	PacketEngineP$PacketEngine$receiveAdded
	b	.L266
.L267:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L270+44
	ldr	r1, .L270+12
	mov	r0, #151
	bl	sim_log_debug
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	mov	r1, r3
	mov	r0, r4
	bl	PacketEngineP$PacketEngine$snoopAdded
	b	.L266
.L263:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L270+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	ldr	r2, .L270+48
	ldr	r1, .L270+12
	mov	r0, #152
	bl	sim_log_error
.L266:
	bl	PacketEngineP$moveAddedIndex
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L270+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L268
	bl	PacketEngineP$msgAdded$postTask
	b	.L259
.L268:
	ldr	r2, .L270+52
	ldr	r1, .L270+12
	mov	r0, #153
	bl	sim_log_debug
	b	.L259
.L269:
	nop
.L259:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L271:
	.align	2
.L270:
	.word	PacketEngineP$running
	.word	PacketEngineP$nextAddedPkt
	.word	.LC17
	.word	.LC9
	.word	PacketEngineP$msgBuffer
	.word	.LC18
	.word	PacketEngineP$nextWaitPkt
	.word	.LC19
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.word	.LC24
	.word	.LC25
	.size	PacketEngineP$msgAdded$runTask, .-PacketEngineP$msgAdded$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$msgAction$postTask, %function
PacketEngineP$msgAction$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #1
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$msgAction$postTask, .-PacketEngineP$msgAction$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$moveActionIndex, %function
PacketEngineP$moveActionIndex:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L275
	add	r3, r3, r2
	mov	r1, #24
	mov	r0, r3
	bl	PacketEngineP$moveIndex
	nop
	pop	{fp, pc}
.L276:
	.align	2
.L275:
	.word	PacketEngineP$nextActionPkt
	.size	PacketEngineP$moveActionIndex, .-PacketEngineP$moveActionIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Packet$maxPayloadLength, %function
PacketEngineP$Packet$maxPayloadLength:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #36
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineP$Packet$maxPayloadLength, .-PacketEngineP$Packet$maxPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	StateImplP$State$toIdle, %function
StateImplP$State$toIdle:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L280
	add	r2, r1, r2
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L281:
	.align	2
.L280:
	.word	StateImplP$state
	.size	StateImplP$State$toIdle, .-StateImplP$State$toIdle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendState$toIdle, %function
PacketEngineP$SendState$toIdle:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	mov	r0, #0
	bl	StateImplP$State$toIdle
	nop
	pop	{fp, pc}
	.size	PacketEngineP$SendState$toIdle, .-PacketEngineP$SendState$toIdle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_ntoh_uint8, %function
__nesc_ntoh_uint8:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	__nesc_ntoh_uint8, .-__nesc_ntoh_uint8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$getHeader, %function
TossimActiveMessageC$getHeader:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #7
	sub	r3, r3, #7
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimActiveMessageC$getHeader, .-TossimActiveMessageC$getHeader
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Packet$payloadLength, %function
TossimActiveMessageC$Packet$payloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$getHeader
	mov	r3, r0
	add	r3, r3, #4
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$Packet$payloadLength, .-TossimActiveMessageC$Packet$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubSendPacket$payloadLength, %function
PacketEngineP$SubSendPacket$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SubSendPacket$payloadLength, .-PacketEngineP$SubSendPacket$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$AMPacket$destination, %function
PacketEngineP$AMPacket$destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$destination
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$AMPacket$destination, .-PacketEngineP$AMPacket$destination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$0$Send$send, %function
AMQueueEntryP$0$Send$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #0
	bl	AMQueueImplP$0$Send$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$0$Send$send, .-AMQueueEntryP$0$Send$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$0$AMPacket$setType, %function
AMQueueEntryP$0$AMPacket$setType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setType
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$0$AMPacket$setType, .-AMQueueEntryP$0$AMPacket$setType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$0$AMPacket$setDestination, %function
AMQueueEntryP$0$AMPacket$setDestination:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strh	r3, [fp, #-10]	@ movhi
	ldrh	r3, [fp, #-10]
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setDestination
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$0$AMPacket$setDestination, .-AMQueueEntryP$0$AMPacket$setDestination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$0$AMSend$send, %function
AMQueueEntryP$0$AMSend$send:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strh	r3, [fp, #-6]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrh	r3, [fp, #-6]
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$0$AMPacket$setDestination
	mov	r1, #48
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$0$AMPacket$setType
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$0$Send$send
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$0$AMSend$send, .-AMQueueEntryP$0$AMSend$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$1$Send$send, %function
AMQueueEntryP$1$Send$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	AMQueueImplP$0$Send$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$1$Send$send, .-AMQueueEntryP$1$Send$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$1$AMPacket$setType, %function
AMQueueEntryP$1$AMPacket$setType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setType
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$1$AMPacket$setType, .-AMQueueEntryP$1$AMPacket$setType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$1$AMPacket$setDestination, %function
AMQueueEntryP$1$AMPacket$setDestination:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strh	r3, [fp, #-10]	@ movhi
	ldrh	r3, [fp, #-10]
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setDestination
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$1$AMPacket$setDestination, .-AMQueueEntryP$1$AMPacket$setDestination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$1$AMSend$send, %function
AMQueueEntryP$1$AMSend$send:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strh	r3, [fp, #-6]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrh	r3, [fp, #-6]
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$1$AMPacket$setDestination
	mov	r1, #4
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$1$AMPacket$setType
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$1$Send$send
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$1$AMSend$send, .-AMQueueEntryP$1$AMSend$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubSend$default$send, %function
PacketEngineP$SubSend$default$send:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r2, [fp, #-12]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-8]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-6]
	mov	r3, #1
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineP$SubSend$default$send, .-PacketEngineP$SubSend$default$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubSend$send, %function
PacketEngineP$SubSend$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r2, [fp, #-20]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L308
	cmp	r3, #48
	beq	.L309
	b	.L313
.L308:
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrh	r3, [fp, #-16]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	AMQueueEntryP$1$AMSend$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L311
.L309:
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrh	r3, [fp, #-16]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	AMQueueEntryP$0$AMSend$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L311
.L313:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrh	r1, [fp, #-16]
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	bl	PacketEngineP$SubSend$default$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
.L311:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SubSend$send, .-PacketEngineP$SubSend$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	StateImplP$State$requestState, %function
StateImplP$State$requestState:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	mov	r3, #1
	strb	r3, [fp, #-6]
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L315
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L318
	add	r2, r1, r2
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L316
.L315:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L318
	add	r2, r1, r2
	add	r3, r2, r3
	ldrb	r2, [fp, #-14]
	strb	r2, [r3]
	mov	r3, #0
	strb	r3, [fp, #-6]
.L316:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L319:
	.align	2
.L318:
	.word	StateImplP$state
	.size	StateImplP$State$requestState, .-StateImplP$State$requestState
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendState$requestState, %function
PacketEngineP$SendState$requestState:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #0
	bl	StateImplP$State$requestState
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendState$requestState, .-PacketEngineP$SendState$requestState
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Intercept$default$forward, %function
PacketEngineP$Intercept$default$forward:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-8]	@ movhi
	mov	r3, #1
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineP$Intercept$default$forward, .-PacketEngineP$Intercept$default$forward
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Intercept$forward, %function
PacketEngineP$Intercept$forward:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	ldrh	r3, [fp, #-16]
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	PacketEngineP$Intercept$default$forward
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Intercept$forward, .-PacketEngineP$Intercept$forward
	.section	.rodata
	.align	2
.LC26:
	.ascii	"PE: msgAction posted, but nextActionPkt is invalid!"
	.ascii	"\012\000"
	.align	2
.LC27:
	.ascii	"PE: Processing action pkt %u\012\000"
	.align	2
.LC28:
	.ascii	"PE: Upper layer intercepted, dropping pkt %u\012\000"
	.align	2
.LC29:
	.ascii	"PE: Radio currently off, waiting\012\000"
	.align	2
.LC30:
	.ascii	"PE: Already sending or during backoff, waiting\012\000"
	.align	2
.LC31:
	.ascii	"PE: SubSend successful, waiting for result\012\000"
	.align	2
.LC32:
	.ascii	"PE: Unsupported lower AM type %hhu!\012\000"
	.align	2
.LC33:
	.ascii	"PE: No hops left, dropping packet!\012\000"
	.align	2
.LC34:
	.ascii	"PE: SubSend busy! Waiting for result\012\000"
	.align	2
.LC35:
	.ascii	"PE: Radio is off, not notified!\012\000"
	.align	2
.LC36:
	.ascii	"PE: Length of pkt %u too long! Forcing max length\012"
	.ascii	"\000"
	.align	2
.LC37:
	.ascii	"PE: msgAction posted, but nextActionPkt is in state"
	.ascii	" %hhu!\012\000"
	.align	2
.LC38:
	.ascii	"PE: No more action packets\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$msgAction$runTask, %function
PacketEngineP$msgAction$runTask:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L345
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L329
	ldr	r2, .L347+8
	ldr	r1, .L347+12
	mov	r0, #154
	bl	sim_log_error
	b	.L326
.L329:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L347+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	and	r3, r3, #24
	cmp	r3, #0
	beq	.L330
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L347+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	str	r3, [fp, #-20]
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$Packet$getPayload
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L347+20
	ldr	r1, .L347+12
	mov	r0, #155
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L347+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #8
	beq	.L331
	cmp	r3, #16
	bne	.L343
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$uid
	mov	r3, r0
	mov	r0, r3
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-20]
	bl	PacketEngineP$Intercept$forward
	mov	r3, r0
	cmp	r3, #0
	bne	.L331
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L347+24
	ldr	r1, .L347+12
	mov	r0, #156
	bl	sim_log_debug
	b	.L343
.L331:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+28
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L333
	ldr	r2, .L347+32
	ldr	r1, .L347+12
	mov	r0, #157
	bl	sim_log_debug
	b	.L326
.L333:
	mov	r0, #1
	bl	PacketEngineP$SendState$requestState
	mov	r3, r0
	cmp	r3, #1
	bne	.L334
	ldr	r2, .L347+36
	ldr	r1, .L347+12
	mov	r0, #158
	bl	sim_log_debug
	b	.L326
.L334:
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$AMPacket$destination
	mov	r3, r0
	mov	r5, r3
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$SubSendPacket$payloadLength
	mov	r3, r0
	ldr	r2, [fp, #-20]
	mov	r1, r5
	mov	r0, r4
	bl	PacketEngineP$SubSend$send
	mov	r3, r0
	cmp	r3, #6
	ldrls	pc, [pc, r3, asl #2]
	b	.L346
.L337:
	.word	.L342
	.word	.L341
	.word	.L340
	.word	.L346
	.word	.L339
	.word	.L338
	.word	.L336
.L342:
	ldr	r2, .L347+40
	ldr	r1, .L347+12
	mov	r0, #159
	bl	sim_log_debug
	b	.L326
.L341:
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$lid
	mov	r3, r0
	ldr	r2, .L347+44
	ldr	r1, .L347+12
	mov	r0, #160
	bl	sim_log_debug
	bl	PacketEngineP$SendState$toIdle
	b	.L335
.L336:
	ldr	r2, .L347+48
	ldr	r1, .L347+12
	mov	r0, #161
	bl	sim_log_debug
	bl	PacketEngineP$SendState$toIdle
	b	.L335
.L338:
	ldr	r2, .L347+52
	ldr	r1, .L347+12
	mov	r0, #162
	bl	sim_log_error
	bl	PacketEngineP$SendState$toIdle
	b	.L326
.L339:
	ldr	r2, .L347+56
	ldr	r1, .L347+12
	mov	r0, #163
	bl	sim_log_error
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+28
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	PacketEngineP$SendState$toIdle
	b	.L326
.L340:
	ldr	r2, .L347+60
	ldr	r1, .L347+12
	mov	r0, #164
	bl	sim_log_error
	bl	PacketEngineP$SendState$toIdle
	bl	PacketEngineP$Packet$maxPayloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$Packet$setPayloadLength
	bl	PacketEngineP$msgAction$postTask
	b	.L326
.L335:
	b	.L346
.L330:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L347+16
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	ldr	r2, .L347+64
	ldr	r1, .L347+12
	mov	r0, #165
	bl	sim_log_error
	b	.L343
.L346:
	nop
.L343:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$removePacket
	bl	PacketEngineP$moveActionIndex
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L347+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L344
	bl	PacketEngineP$msgAction$postTask
	b	.L326
.L344:
	ldr	r2, .L347+68
	ldr	r1, .L347+12
	mov	r0, #166
	bl	sim_log_debug
	b	.L326
.L345:
	nop
.L326:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L348:
	.align	2
.L347:
	.word	PacketEngineP$running
	.word	PacketEngineP$nextActionPkt
	.word	.LC26
	.word	.LC9
	.word	PacketEngineP$msgBuffer
	.word	.LC27
	.word	.LC28
	.word	PacketEngineP$radioOn
	.word	.LC29
	.word	.LC30
	.word	.LC31
	.word	.LC32
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.word	.LC36
	.word	.LC37
	.word	.LC38
	.size	PacketEngineP$msgAction$runTask, .-PacketEngineP$msgAction$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Alarm$getNow, %function
Atm128AlarmAsyncP$0$Alarm$getNow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	Atm128AlarmAsyncP$0$Counter$get
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Alarm$getNow, .-Atm128AlarmAsyncP$0$Alarm$getNow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Alarm$getNow, %function
AlarmToTimerC$0$Alarm$getNow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	Atm128AlarmAsyncP$0$Alarm$getNow
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Alarm$getNow, .-AlarmToTimerC$0$Alarm$getNow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Timer$getNow, %function
AlarmToTimerC$0$Timer$getNow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	AlarmToTimerC$0$Alarm$getNow
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Timer$getNow, .-AlarmToTimerC$0$Timer$getNow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$TimerFrom$getNow, %function
VirtualizeTimerC$0$TimerFrom$getNow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	AlarmToTimerC$0$Timer$getNow
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$TimerFrom$getNow, .-VirtualizeTimerC$0$TimerFrom$getNow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$TimerFrom$fired, %function
VirtualizeTimerC$0$TimerFrom$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	VirtualizeTimerC$0$TimerFrom$getNow
	mov	r3, r0
	mov	r0, r3
	bl	VirtualizeTimerC$0$fireTimers
	nop
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$TimerFrom$fired, .-VirtualizeTimerC$0$TimerFrom$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Timer$fired, %function
AlarmToTimerC$0$Timer$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	VirtualizeTimerC$0$TimerFrom$fired
	nop
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Timer$fired, .-AlarmToTimerC$0$Timer$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Alarm$getAlarm, %function
Atm128AlarmAsyncP$0$Alarm$getAlarm:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-17]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L361
	ldr	r4, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L361+4
	ldr	r3, [r2, r3, lsl #2]
	add	r3, r4, r3
	str	r3, [fp, #-16]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L362:
	.align	2
.L361:
	.word	Atm128AlarmAsyncP$0$t0
	.word	Atm128AlarmAsyncP$0$dt
	.size	Atm128AlarmAsyncP$0$Alarm$getAlarm, .-Atm128AlarmAsyncP$0$Alarm$getAlarm
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Alarm$getAlarm, %function
AlarmToTimerC$0$Alarm$getAlarm:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	Atm128AlarmAsyncP$0$Alarm$getAlarm
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Alarm$getAlarm, .-AlarmToTimerC$0$Alarm$getAlarm
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Alarm$startAt, %function
AlarmToTimerC$0$Alarm$startAt:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	Atm128AlarmAsyncP$0$Alarm$startAt
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Alarm$startAt, .-AlarmToTimerC$0$Alarm$startAt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$start, %function
AlarmToTimerC$0$start:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r3, r2
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L367
	ldr	r3, [fp, #-12]
	str	r3, [r1, r2, lsl #2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L367+4
	ldrb	r3, [fp, #-13]
	strb	r3, [r1, r2]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	AlarmToTimerC$0$Alarm$startAt
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L368:
	.align	2
.L367:
	.word	AlarmToTimerC$0$m_dt
	.word	AlarmToTimerC$0$m_oneshot
	.size	AlarmToTimerC$0$start, .-AlarmToTimerC$0$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$fired$runTask, %function
AlarmToTimerC$0$fired$runTask:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L371
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L370
	bl	AlarmToTimerC$0$Alarm$getAlarm
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L371+4
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #0
	mov	r1, r3
	mov	r0, r4
	bl	AlarmToTimerC$0$start
.L370:
	bl	AlarmToTimerC$0$Timer$fired
	nop
	pop	{r4, r5, fp, pc}
.L372:
	.align	2
.L371:
	.word	AlarmToTimerC$0$m_oneshot
	.word	AlarmToTimerC$0$m_dt
	.size	AlarmToTimerC$0$fired$runTask, .-AlarmToTimerC$0$fired$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Timer$startOneShotAt, %function
AlarmToTimerC$0$Timer$startOneShotAt:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r2, #1
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	AlarmToTimerC$0$start
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Timer$startOneShotAt, .-AlarmToTimerC$0$Timer$startOneShotAt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$TimerFrom$startOneShotAt, %function
VirtualizeTimerC$0$TimerFrom$startOneShotAt:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	AlarmToTimerC$0$Timer$startOneShotAt
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$TimerFrom$startOneShotAt, .-VirtualizeTimerC$0$TimerFrom$startOneShotAt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Alarm$stop, %function
Atm128AlarmAsyncP$0$Alarm$stop:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L376
	mov	r1, #0
	strb	r1, [r2, r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L377:
	.align	2
.L376:
	.word	Atm128AlarmAsyncP$0$set
	.size	Atm128AlarmAsyncP$0$Alarm$stop, .-Atm128AlarmAsyncP$0$Alarm$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Alarm$stop, %function
AlarmToTimerC$0$Alarm$stop:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	Atm128AlarmAsyncP$0$Alarm$stop
	nop
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Alarm$stop, .-AlarmToTimerC$0$Alarm$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Timer$stop, %function
AlarmToTimerC$0$Timer$stop:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	AlarmToTimerC$0$Alarm$stop
	nop
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Timer$stop, .-AlarmToTimerC$0$Timer$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$TimerFrom$stop, %function
VirtualizeTimerC$0$TimerFrom$stop:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	AlarmToTimerC$0$Timer$stop
	nop
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$TimerFrom$stop, .-VirtualizeTimerC$0$TimerFrom$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$updateFromTimer$runTask, %function
VirtualizeTimerC$0$updateFromTimer$runTask:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	bl	VirtualizeTimerC$0$TimerFrom$getNow
	str	r0, [fp, #-20]
	mvn	r3, #-2147483648
	str	r3, [fp, #-24]
	mov	r3, #0
	strb	r3, [fp, #-26]
	bl	VirtualizeTimerC$0$TimerFrom$stop
	mov	r3, #0
	strb	r3, [fp, #-25]
	b	.L382
.L384:
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	mov	r2, r3
	lsl	r2, r2, #1
	add	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, .L388
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3, #8]	@ zero_extendqisi2
	and	r3, r3, #2
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L383
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	sub	r3, r2, r3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	sub	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bge	.L383
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-24]
	mov	r3, #1
	strb	r3, [fp, #-26]
.L383:
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-25]
.L382:
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	cmp	r3, #2
	bls	.L384
	ldrb	r3, [fp, #-26]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L387
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bgt	.L386
	ldr	r0, [fp, #-20]
	bl	VirtualizeTimerC$0$fireTimers
	b	.L387
.L386:
	ldr	r3, [fp, #-24]
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	VirtualizeTimerC$0$TimerFrom$startOneShotAt
.L387:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L389:
	.align	2
.L388:
	.word	VirtualizeTimerC$0$m_timers
	.size	VirtualizeTimerC$0$updateFromTimer$runTask, .-VirtualizeTimerC$0$updateFromTimer$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$PEControl$start, %function
TestDsrP$PEControl$start:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PacketEngineP$StdControl$start
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$PEControl$start, .-TestDsrP$PEControl$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$AMControl$startDone, %function
TestDsrP$AMControl$startDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L395
	bl	TestDsrP$PEControl$start
	mov	r0, #10240
	bl	TestDsrP$Timer$startOneShot
	b	.L392
.L395:
	nop
.L392:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$AMControl$startDone, .-TestDsrP$AMControl$startDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$RadioControl$startDone, %function
PacketEngineP$RadioControl$startDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L398
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L399
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	PacketEngineP$StdControl$start
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L399+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L398
	bl	PacketEngineP$msgAction$postTask
.L398:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L400:
	.align	2
.L399:
	.word	PacketEngineP$radioOn
	.word	PacketEngineP$nextActionPkt
	.size	PacketEngineP$RadioControl$startDone, .-PacketEngineP$RadioControl$startDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Control$startDone, %function
TossimPacketModelC$Control$startDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$RadioControl$startDone
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	TestDsrP$AMControl$startDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$Control$startDone, .-TossimPacketModelC$Control$startDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$startDoneTask$runTask, %function
TossimPacketModelC$startDoneTask$runTask:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L403
	mov	r1, #1
	strb	r1, [r2, r3]
	mov	r0, #0
	bl	TossimPacketModelC$Control$startDone
	nop
	pop	{fp, pc}
.L404:
	.align	2
.L403:
	.word	TossimPacketModelC$running
	.size	TossimPacketModelC$startDoneTask$runTask, .-TossimPacketModelC$startDoneTask$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$AMControl$stopDone, %function
TestDsrP$AMControl$stopDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TestDsrP$AMControl$stopDone, .-TestDsrP$AMControl$stopDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$RadioControl$stopDone, %function
PacketEngineP$RadioControl$stopDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L408
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L409
	mov	r1, #0
	strb	r1, [r2, r3]
.L408:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L410:
	.align	2
.L409:
	.word	PacketEngineP$radioOn
	.size	PacketEngineP$RadioControl$stopDone, .-PacketEngineP$RadioControl$stopDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Control$stopDone, %function
TossimPacketModelC$Control$stopDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$RadioControl$stopDone
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	TestDsrP$AMControl$stopDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$Control$stopDone, .-TossimPacketModelC$Control$stopDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$stopDoneTask$runTask, %function
TossimPacketModelC$stopDoneTask$runTask:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L413
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r0, #0
	bl	TossimPacketModelC$Control$stopDone
	nop
	pop	{fp, pc}
.L414:
	.align	2
.L413:
	.word	TossimPacketModelC$running
	.size	TossimPacketModelC$stopDoneTask$runTask, .-TossimPacketModelC$stopDoneTask$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_hton_uint16, %function
__nesc_hton_uint16:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	mov	r3, r1
	strh	r3, [fp, #-18]	@ movhi
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	ldrh	r2, [fp, #-18]	@ movhi
	and	r2, r2, #255
	strb	r2, [r3]
	ldrh	r3, [fp, #-18]
	lsr	r3, r3, #8
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	and	r2, r3, #255
	ldr	r3, [fp, #-8]
	strb	r2, [r3]
	ldrh	r3, [fp, #-18]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	__nesc_hton_uint16, .-__nesc_hton_uint16
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_hton_uint8, %function
__nesc_hton_uint8:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrb	r2, [fp, #-17]
	strb	r2, [r3]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	__nesc_hton_uint8, .-__nesc_hton_uint8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_hton_int8, %function
__nesc_hton_int8:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	__nesc_hton_uint8
	ldrsb	r3, [fp, #-9]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	__nesc_hton_int8, .-__nesc_hton_int8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMSend$sendDone, %function
TossimActiveMessageC$AMSend$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	AMQueueImplP$0$AMSend$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$AMSend$sendDone, .-TossimActiveMessageC$AMSend$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Model$sendDone, %function
TossimActiveMessageC$Model$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	mov	r0, r3
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-8]
	bl	TossimActiveMessageC$AMSend$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$Model$sendDone, .-TossimActiveMessageC$Model$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Packet$sendDone, %function
TossimPacketModelC$Packet$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$Model$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$Packet$sendDone, .-TossimPacketModelC$Packet$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$getMetadata, %function
TossimPacketModelC$getMetadata:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #45
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimPacketModelC$getMetadata, .-TossimPacketModelC$getMetadata
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$sendDoneTask$runTask, %function
TossimPacketModelC$sendDoneTask$runTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L427
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-12]
	ldr	r0, [fp, #-12]
	bl	TossimPacketModelC$getMetadata
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r1, #0
	mov	r0, r3
	bl	__nesc_hton_uint8
	ldr	r3, [fp, #-8]
	mov	r1, #0
	mov	r0, r3
	bl	__nesc_hton_int8
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	mov	r1, #0
	mov	r0, r3
	bl	__nesc_hton_uint16
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L427
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	mov	r1, #0
	ldr	r0, [fp, #-12]
	bl	TossimPacketModelC$Packet$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L428:
	.align	2
.L427:
	.word	TossimPacketModelC$sending
	.size	TossimPacketModelC$sendDoneTask$runTask, .-TossimPacketModelC$sendDoneTask$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_bf_decode8, %function
__nesc_bf_decode8:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	mov	r3, r2
	strb	r3, [fp, #-29]
	mov	r3, #0
	strb	r3, [fp, #-13]
	ldr	r3, [fp, #-28]
	lsr	r3, r3, #3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-28]
	and	r3, r3, #7
	str	r3, [fp, #-8]
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	cmp	r3, #8
	bhi	.L430
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	rsb	r3, r3, #8
	asr	r3, r1, r3
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	mov	r1, #1
	lsl	r3, r1, r3
	and	r3, r3, #255
	sub	r3, r3, #1
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	b	.L431
.L430:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L433
	ldr	r3, [fp, #-8]
	and	r2, r3, #255
	ldrb	r3, [fp, #-29]
	add	r3, r2, r3
	and	r3, r3, #255
	sub	r3, r3, #8
	strb	r3, [fp, #-29]
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldr	r3, [fp, #-8]
	rsb	r3, r3, #8
	mov	r1, #1
	lsl	r3, r1, r3
	and	r3, r3, #255
	sub	r3, r3, #1
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	mov	r2, r3
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r2, r3
	strb	r3, [fp, #-13]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
	b	.L433
.L434:
	ldrb	r3, [fp, #-29]
	sub	r3, r3, #8
	strb	r3, [fp, #-29]
	ldr	r3, [fp, #-12]
	add	r2, r3, #1
	str	r2, [fp, #-12]
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r2, r3
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrsb	r3, [fp, #-13]
	orr	r3, r2, r3
	lsl	r3, r3, #24
	asr	r3, r3, #24
	strb	r3, [fp, #-13]
.L433:
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, #7
	bhi	.L434
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L435
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	rsb	r3, r3, #8
	asr	r3, r2, r3
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrsb	r3, [fp, #-13]
	orr	r3, r2, r3
	lsl	r3, r3, #24
	asr	r3, r3, #24
	strb	r3, [fp, #-13]
.L435:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
.L431:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	__nesc_bf_decode8, .-__nesc_bf_decode8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_ntohbf_uint8, %function
__nesc_ntohbf_uint8:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r3, r2
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	__nesc_bf_decode8
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	__nesc_ntohbf_uint8, .-__nesc_ntohbf_uint8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_bf_encode8, %function
__nesc_bf_encode8:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #44
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r1
	strb	r3, [fp, #-37]
	mov	r3, r2
	strb	r3, [fp, #-38]
	ldr	r3, [fp, #-36]
	lsr	r3, r3, #3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-36]
	and	r3, r3, #7
	str	r3, [fp, #-20]
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	mov	r2, #1
	lsl	r3, r2, r3
	and	r3, r3, #255
	sub	r3, r3, #1
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrsb	r3, [fp, #-38]
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	strb	r3, [fp, #-38]
	ldrb	r2, [fp, #-37]	@ zero_extendqisi2
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	cmp	r3, #8
	bhi	.L439
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	mov	r2, #1
	lsl	r3, r2, r3
	sub	r2, r3, #1
	ldrb	r1, [fp, #-37]	@ zero_extendqisi2
	ldr	r3, [fp, #-20]
	add	r3, r1, r3
	rsb	r3, r3, #8
	lsl	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-8]
	and	r3, r3, #255
	mvn	r3, r3
	and	r3, r3, #255
	and	r3, r3, r2
	and	r1, r3, #255
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldrb	r0, [fp, #-37]	@ zero_extendqisi2
	ldr	r3, [fp, #-20]
	add	r3, r0, r3
	rsb	r3, r3, #8
	lsl	r3, r2, r3
	and	r2, r3, #255
	ldr	r0, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r0, r3
	orr	r2, r1, r2
	and	r2, r2, #255
	strb	r2, [r3]
	b	.L438
.L439:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L442
	ldr	r3, [fp, #-20]
	rsb	r3, r3, #8
	mov	r2, #1
	lsl	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-20]
	and	r2, r3, #255
	ldrb	r3, [fp, #-37]
	add	r3, r2, r3
	and	r3, r3, #255
	sub	r3, r3, #8
	strb	r3, [fp, #-37]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-16]
	and	r3, r3, #255
	mvn	r3, r3
	and	r3, r3, #255
	and	r3, r3, r2
	and	r1, r3, #255
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	asr	r3, r2, r3
	and	r2, r3, #255
	ldr	r0, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r0, r3
	orr	r2, r1, r2
	and	r2, r2, #255
	strb	r2, [r3]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
	b	.L442
.L443:
	ldrb	r3, [fp, #-37]
	sub	r3, r3, #8
	strb	r3, [fp, #-37]
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	asr	r2, r2, r3
	ldr	r3, [fp, #-24]
	add	r1, r3, #1
	str	r1, [fp, #-24]
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	and	r2, r2, #255
	strb	r2, [r3]
.L442:
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r3, #7
	bhi	.L443
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L438
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	rsb	r3, r3, #8
	mov	r2, #1
	lsl	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-12]
	and	r3, r3, #255
	and	r3, r3, r2
	and	r1, r3, #255
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	rsb	r3, r3, #8
	lsl	r3, r2, r3
	and	r2, r3, #255
	ldr	r0, [fp, #-32]
	ldr	r3, [fp, #-24]
	add	r3, r0, r3
	orr	r2, r1, r2
	and	r2, r2, #255
	strb	r2, [r3]
.L438:
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	__nesc_bf_encode8, .-__nesc_bf_encode8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_htonbf_uint8, %function
__nesc_htonbf_uint8:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	__nesc_bf_encode8
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	__nesc_htonbf_uint8, .-__nesc_htonbf_uint8
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequest$remove, %function
DsrControlP$0$RouteRequest$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	TlvPacketP$0$TlvSinglePacket$remove
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequest$remove, .-DsrControlP$0$RouteRequest$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacket$isForMe, %function
DsrControlP$0$SinglePacket$isForMe:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$SinglePacket$isForMe
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacket$isForMe, .-DsrControlP$0$SinglePacket$isForMe
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$AMPacket$type, %function
DsrControlP$0$AMPacket$type:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$AMPacket$type, .-DsrControlP$0$AMPacket$type
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$composePkt$postTask, %function
DsrControlP$0$composePkt$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #7
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$composePkt$postTask, .-DsrControlP$0$composePkt$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Compose$clear, %function
DsrControlP$0$Compose$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$0$BitVector$clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Compose$clear, .-DsrControlP$0$Compose$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubPacket$payloadLength, %function
SinglePacketP$SubPacket$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SubPacket$payloadLength, .-SinglePacketP$SubPacket$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Packet$payloadLength, %function
SinglePacketP$Packet$payloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$SubPacket$payloadLength
	mov	r3, r0
	sub	r3, r3, #4
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Packet$payloadLength, .-SinglePacketP$Packet$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$ComposePacket$payloadLength, %function
DsrControlP$0$ComposePacket$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$ComposePacket$payloadLength, .-DsrControlP$0$ComposePacket$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Send$send, %function
DsrControlP$0$Send$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r3, [fp, #-15]	@ zero_extendqisi2
	ldrh	r1, [fp, #-14]
	ldr	r2, [fp, #-20]
	mov	r0, #1
	bl	SinglePacketP$Send$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Send$send, .-DsrControlP$0$Send$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Compose$get, %function
DsrControlP$0$Compose$get:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$BitVector$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Compose$get, .-DsrControlP$0$Compose$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	pidCombine, %function
pidCombine:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PacketEngineP$pidCombineInternal
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	pidCombine, .-pidCombine
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$waitList, %function
DsrControlP$0$SingleDsrPacketEngine$waitList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$waitList
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	pidCombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SingleDsrPacketEngine$waitList, .-DsrControlP$0$SingleDsrPacketEngine$waitList
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$packet, %function
DsrControlP$0$SinglePacketEngine$packet:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$packet
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketEngine$packet, .-DsrControlP$0$SinglePacketEngine$packet
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$drop, %function
DsrControlP$0$DsrPacketEngine$drop:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$drop
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$drop, .-DsrControlP$0$DsrPacketEngine$drop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$upperSendDone, %function
DsrControlP$0$DsrPacketEngine$upperSendDone:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$upperSendDone
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$upperSendDone, .-DsrControlP$0$DsrPacketEngine$upperSendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SalvageRouteCache$checkRoute, %function
DsrControlP$0$SalvageRouteCache$checkRoute:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$checkRoute
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SalvageRouteCache$checkRoute, .-DsrControlP$0$SalvageRouteCache$checkRoute
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$1$getMask, %function
BitVectorC$1$getMask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	and	r3, r3, #7
	mov	r2, #1
	lsl	r3, r2, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$1$getMask, .-BitVectorC$1$getMask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$1$getIndex, %function
BitVectorC$1$getIndex:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	lsr	r3, r3, #3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$1$getIndex, .-BitVectorC$1$getIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$1$BitVector$set, %function
BitVectorC$1$BitVector$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$getMask
	mov	r3, r0
	mov	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L481
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [r3]	@ zero_extendqisi2
	and	r3, r5, #255
	orr	r3, r2, r3
	and	r1, r3, #255
	ldr	r2, .L481
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L482:
	.align	2
.L481:
	.word	BitVectorC$1$m_bits
	.size	BitVectorC$1$BitVector$set, .-BitVectorC$1$BitVector$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Salvage$set, %function
DsrControlP$0$Salvage$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$1$BitVector$set
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Salvage$set, .-DsrControlP$0$Salvage$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$AMPacket$destination, %function
DsrControlP$0$AMPacket$destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$destination
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$AMPacket$destination, .-DsrControlP$0$AMPacket$destination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteError$value, %function
DsrControlP$0$RouteError$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #3
	bl	TlvPacketP$0$TlvMultiplePacket$value
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteError$value, .-DsrControlP$0$RouteError$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Packet$maxPayloadLength, %function
TossimActiveMessageC$Packet$maxPayloadLength:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #36
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimActiveMessageC$Packet$maxPayloadLength, .-TossimActiveMessageC$Packet$maxPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$SubPacket$maxPayloadLength, %function
TlvPacketP$0$SubPacket$maxPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	TossimActiveMessageC$Packet$maxPayloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$SubPacket$maxPayloadLength, .-TlvPacketP$0$SubPacket$maxPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$maxLen, %function
TlvPacketP$0$maxLen:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	TlvPacketP$0$SubPacket$maxPayloadLength
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
	.size	TlvPacketP$0$maxLen, .-TlvPacketP$0$maxLen
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiple$add, %function
TlvPacketP$0$TlvMultiple$add:
	@ args = 8, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	str	r3, [sp, #4]
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	TlvP$TlvMultiple$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiple$add, .-TlvPacketP$0$TlvMultiple$add
	.section	.rodata
	.align	2
.LC39:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiplePacket$add, %function
TlvPacketP$0$TlvMultiplePacket$add:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-29]
	mov	r3, r2
	strb	r3, [fp, #-30]
	ldr	r3, .L499
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #22
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	TlvPacketP$0$preLengthChange
	str	r0, [fp, #-20]
	ldrb	r4, [fp, #-22]	@ zero_extendqisi2
	bl	TlvPacketP$0$maxLen
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	ldrb	r0, [fp, #-29]	@ zero_extendqisi2
	str	r2, [sp, #4]
	str	r4, [sp]
	ldr	r2, [fp, #-40]
	ldr	r1, [fp, #-20]
	bl	TlvPacketP$0$TlvMultiple$add
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-36]
	bl	TlvPacketP$0$postLengthChange
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, .L499
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L498
	bl	__stack_chk_fail
.L498:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L500:
	.align	2
.L499:
	.word	.LC39
	.size	TlvPacketP$0$TlvMultiplePacket$add, .-TlvPacketP$0$TlvMultiplePacket$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteError$add, %function
DsrControlP$0$RouteError$add:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r3, r2
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-16]
	mov	r0, #3
	bl	TlvPacketP$0$TlvMultiplePacket$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteError$add, .-DsrControlP$0$RouteError$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteError$length, %function
DsrControlP$0$RouteError$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #3
	bl	TlvPacketP$0$TlvMultiplePacket$length
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteError$length, .-DsrControlP$0$RouteError$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteErrorList$next, %function
DsrControlP$0$RouteErrorList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #3
	bl	TlvPacketP$0$TlvListPacket$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteErrorList$next, .-DsrControlP$0$RouteErrorList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteErrorList$end, %function
DsrControlP$0$RouteErrorList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #3
	bl	TlvPacketP$0$TlvListPacket$end
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteErrorList$end, .-DsrControlP$0$RouteErrorList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteError$list, %function
DsrControlP$0$RouteError$list:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #3
	bl	TlvPacketP$0$TlvMultiplePacket$list
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteError$list, .-DsrControlP$0$RouteError$list
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SinglePacket$source, %function
SinglePacketP$SinglePacket$source:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r1, #4
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$SubPacket$getPayload
	mov	r3, r0
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SinglePacket$source, .-SinglePacketP$SinglePacket$source
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacket$source, %function
DsrControlP$0$SinglePacket$source:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$SinglePacket$source
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacket$source, .-DsrControlP$0$SinglePacket$source
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SourceRoute$value, %function
DsrControlP$0$SourceRoute$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #96
	bl	TlvPacketP$0$TlvSinglePacket$value
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SourceRoute$value, .-DsrControlP$0$SourceRoute$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Acks$requestAck, %function
DsrControlP$0$Acks$requestAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$PacketAcknowledgements$requestAck
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Acks$requestAck, .-DsrControlP$0$Acks$requestAck
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SourceRoute$add, %function
DsrControlP$0$SourceRoute$add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #96
	bl	TlvPacketP$0$TlvSinglePacket$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SourceRoute$add, .-DsrControlP$0$SourceRoute$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequest$value, %function
DsrControlP$0$RouteRequest$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	TlvPacketP$0$TlvSinglePacket$value
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequest$value, .-DsrControlP$0$RouteRequest$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$packet, %function
DsrControlP$0$DsrPacketEngine$packet:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$packet
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$packet, .-DsrControlP$0$DsrPacketEngine$packet
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketWaitList$next, %function
DsrControlP$0$SingleDsrPacketWaitList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketWaitList$next
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	pidCombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SingleDsrPacketWaitList$next, .-DsrControlP$0$SingleDsrPacketWaitList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubPacket$setPayloadLength, %function
SinglePacketP$SubPacket$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$Packet$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SubPacket$setPayloadLength, .-SinglePacketP$SubPacket$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Packet$setPayloadLength, %function
SinglePacketP$Packet$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]
	add	r3, r3, #4
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$SubPacket$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Packet$setPayloadLength, .-SinglePacketP$Packet$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$ComposePacket$setPayloadLength, %function
DsrControlP$0$ComposePacket$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$Packet$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$ComposePacket$setPayloadLength, .-DsrControlP$0$ComposePacket$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$AMPacket$setType, %function
DsrControlP$0$AMPacket$setType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setType
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$AMPacket$setType, .-DsrControlP$0$AMPacket$setType
	.section	.rodata
	.align	2
.LC40:
	.ascii	"DSR: Pkt %u: Not destined for this node, can't comp"
	.ascii	"ose route reply!\012\000"
	.align	2
.LC41:
	.ascii	"DSR: Pkt %u: Target node composing route reply\012\000"
	.align	2
.LC42:
	.ascii	"DSR: Pkt %u: Outgoing route reply to %u\012\000"
	.align	2
.LC43:
	.ascii	"DSR: Pkt %u: Already has source route or not enough"
	.ascii	" room!\012\000"
	.align	2
.LC44:
	.ascii	"DSR: Pkt %u: Can't find the source route option jus"
	.ascii	"t added!\012\000"
	.align	2
.LC45:
	.ascii	"DSR: Pkt %u: Sending route reply to %u along the wa"
	.ascii	"y to %u\012\000"
	.align	2
.LC46:
	.ascii	"DSR: Pkt %u: Composing route error to %u\012\000"
	.align	2
.LC47:
	.ascii	"DSR: Pkt %u: Base packet already has route error\012"
	.ascii	"\000"
	.align	2
.LC48:
	.ascii	"DSR: Pkt %u: Route error's source is this node\012\000"
	.align	2
.LC49:
	.ascii	"DSR: Pkt %u: Not enough room for route error!\012\000"
	.align	2
.LC50:
	.ascii	"DSR: Pkt %u: Can't find the route error option just"
	.ascii	" added!\012\000"
	.align	2
.LC51:
	.ascii	"DSR: Pkt %u: Finding route for route error to %u\012"
	.ascii	"\000"
	.align	2
.LC52:
	.ascii	"DSR: Pkt %u: Attempting to salvage base packet\012\000"
	.align	2
.LC53:
	.ascii	"DSR: Pkt %u: Base packet has route reply, dropping!"
	.ascii	"\012\000"
	.align	2
.LC54:
	.ascii	"DSR: Pkt %u: Base packet salvaged too many times, d"
	.ascii	"ropping!\012\000"
	.align	2
.LC55:
	.ascii	"DSR: Pkt %u: Finding route for salvaged packet to %"
	.ascii	"u\012\000"
	.align	2
.LC56:
	.ascii	"DSR: Pkt %u: Base packet's source is this node, dro"
	.ascii	"pping!\012\000"
	.align	2
.LC57:
	.ascii	"DSR: Pkt %u: Composing route request to %u for DSR\012"
	.ascii	"\000"
	.align	2
.LC58:
	.ascii	"DSR: Pkt %u: Unable to compose route request!\012\000"
	.align	2
.LC59:
	.ascii	"DSR: Pkt %u: Sending route request to %u\012\000"
	.align	2
.LC60:
	.ascii	"DSR: Pkt %u: Composing route request to %u for Sing"
	.ascii	"le\012\000"
	.align	2
.LC61:
	.ascii	"DSR: Pkt %u: Unknown type waiting for compose!\012\000"
	.align	2
.LC62:
	.ascii	"DSR: Pkt %u: Compose bit cleared prior to send!\012"
	.ascii	"\000"
	.align	2
.LC63:
	.ascii	"DSR: Pkt %u: Outgoing send successful, waiting for "
	.ascii	"result\012\000"
	.align	2
.LC64:
	.ascii	"DSR: Pkt %u: Outgoing send busy! Waiting for result"
	.ascii	"\012\000"
	.align	2
.LC65:
	.ascii	"DSR: Pkt %u: Packet engine is off, currently unhand"
	.ascii	"led!\012\000"
	.align	2
.LC66:
	.ascii	"DSR: Pkt %u: Length of msg %u too long, dropping!\012"
	.ascii	"\000"
	.align	2
.LC67:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$composePkt$runTask, %function
DsrControlP$0$composePkt$runTask:
	@ args = 0, pretend = 0, frame = 104
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #116
	ldr	r3, .L578
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #68
	str	r3, [fp, #-96]
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	strh	r3, [fp, #-104]	@ movhi
	mov	r3, #0
	strb	r3, [fp, #-108]
	mov	r1, #4
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$AMPacket$setType
	mov	r1, #0
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$ComposePacket$setPayloadLength
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L565:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$get
	mov	r3, r0
	cmp	r3, #0
	bne	.L533
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L533:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$packet
	str	r0, [fp, #-100]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	beq	.L534
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteRequest$length
	mov	r3, r0
	strb	r3, [fp, #-106]
	ldrb	r3, [fp, #-106]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L535
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	bne	.L536
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+4
	ldr	r1, .L578+8
	ldr	r0, .L578+12
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L536:
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteRequest$value
	str	r0, [fp, #-76]
	ldrb	r3, [fp, #-106]	@ zero_extendqisi2
	sub	r3, r3, #1
	lsr	r3, r3, #1
	strb	r3, [fp, #-105]
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+16
	ldr	r1, .L578+8
	ldr	r0, .L578+20
	bl	sim_log_debug
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$source
	mov	r3, r0
	strh	r3, [fp, #-104]	@ movhi
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+24
	ldr	r1, .L578+8
	mov	r0, #312
	bl	sim_log_debug
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r1, [fp, #-96]
	mov	r0, r3
	bl	DsrControlP$0$addDsrHeader
	mov	r3, r0
	cmp	r3, #1
	bne	.L537
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L537:
	ldrb	r3, [fp, #-105]
	lsl	r3, r3, #1
	and	r3, r3, #255
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$SourceRoute$add
	mov	r3, r0
	cmp	r3, #0
	beq	.L538
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+28
	ldr	r1, .L578+8
	ldr	r0, .L578+32
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L538:
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$SourceRoute$value
	str	r0, [fp, #-72]
	ldr	r3, [fp, #-72]
	cmp	r3, #0
	bne	.L539
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+36
	ldr	r1, .L578+8
	ldr	r0, .L578+40
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L539:
	mov	r3, #1
	mov	r2, #1
	mov	r1, #0
	ldr	r0, [fp, #-72]
	bl	__nesc_htonbf_uint8
	mov	r3, #0
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-72]
	bl	__nesc_htonbf_uint8
	ldrb	r3, [fp, #-105]	@ zero_extendqisi2
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-72]
	bl	__nesc_htonbf_uint8
	mov	r3, #0
	strb	r3, [fp, #-107]
	b	.L540
.L541:
	ldrb	r3, [fp, #-107]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-72]
	add	r3, r2, r3
	add	r4, r3, #1
	ldrb	r2, [fp, #-105]	@ zero_extendqisi2
	ldrb	r3, [fp, #-107]	@ zero_extendqisi2
	sub	r3, r2, r3
	sub	r3, r3, #1
	lsl	r3, r3, #1
	ldr	r2, [fp, #-76]
	add	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldrb	r3, [fp, #-107]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-107]
.L540:
	ldrb	r2, [fp, #-107]	@ zero_extendqisi2
	ldrb	r3, [fp, #-105]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L541
	ldrb	r3, [fp, #-105]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L542
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$AMPacket$setDestination
	b	.L543
.L542:
	ldrh	r3, [fp, #-104]
	mov	r1, r3
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$AMPacket$setDestination
.L543:
	ldrb	r4, [fp, #-109]	@ zero_extendqisi2
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-104]
	str	r3, [sp, #4]
	str	r2, [sp]
	mov	r3, r4
	ldr	r2, .L578+44
	ldr	r1, .L578+8
	ldr	r0, .L578+48
	bl	sim_log_debug
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$Acks$requestAck
	mov	r3, #1
	strb	r3, [fp, #-108]
	b	.L544
.L535:
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SourceRoute$length
	mov	r3, r0
	strb	r3, [fp, #-106]
	ldrb	r3, [fp, #-106]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L545
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SourceRoute$value
	str	r0, [fp, #-92]
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-92]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	bne	.L546
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$source
	mov	r3, r0
	strh	r3, [fp, #-102]	@ movhi
	b	.L547
.L546:
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	strh	r3, [fp, #-102]	@ movhi
.L547:
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-102]
	cmp	r3, r2
	beq	.L548
	ldrh	r3, [fp, #-102]	@ movhi
	strh	r3, [fp, #-104]	@ movhi
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+52
	ldr	r1, .L578+8
	mov	r0, #316
	bl	sim_log_debug
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r1, [fp, #-96]
	mov	r0, r3
	bl	DsrControlP$0$addDsrHeader
	mov	r3, r0
	cmp	r3, #1
	bne	.L549
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L549:
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteError$list
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteErrorList$end
	mov	r3, r0
	cmp	r3, #0
	bne	.L551
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+56
	ldr	r1, .L578+8
	ldr	r0, .L578+60
	bl	sim_log_debug
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteError$list
	mov	r3, r0
	strb	r3, [fp, #-110]
	b	.L552
.L554:
	ldrb	r3, [fp, #-110]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteError$length
	mov	r3, r0
	strb	r3, [fp, #-106]
	ldrb	r3, [fp, #-106]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L553
	ldrb	r3, [fp, #-110]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteError$value
	str	r0, [fp, #-88]
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r4, r3
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	cmp	r4, r3
	bne	.L553
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+64
	ldr	r1, .L578+8
	ldr	r0, .L578+68
	bl	sim_log_debug
	b	.L551
.L553:
	ldrb	r3, [fp, #-110]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteErrorList$next
	mov	r3, r0
	strb	r3, [fp, #-110]
.L552:
	ldrb	r3, [fp, #-110]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteErrorList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L554
.L551:
	sub	r3, fp, #110
	mov	r2, #7
	mov	r1, r3
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$RouteError$add
	mov	r3, r0
	cmp	r3, #0
	beq	.L555
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+72
	ldr	r1, .L578+8
	ldr	r0, .L578+76
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L555:
	ldrb	r3, [fp, #-110]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-96]
	bl	DsrControlP$0$RouteError$value
	str	r0, [fp, #-84]
	ldr	r3, [fp, #-84]
	cmp	r3, #0
	bne	.L556
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+80
	ldr	r1, .L578+8
	mov	r0, #320
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L556:
	ldr	r3, [fp, #-84]
	add	r3, r3, #5
	str	r3, [fp, #-80]
	mov	r3, #1
	mov	r2, #4
	mov	r1, #0
	ldr	r0, [fp, #-84]
	bl	__nesc_htonbf_uint8
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-92]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-84]
	bl	__nesc_htonbf_uint8
	ldr	r4, [fp, #-80]
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldr	r3, [fp, #-84]
	add	r4, r3, #1
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldr	r3, [fp, #-84]
	add	r3, r3, #3
	ldrh	r2, [fp, #-104]
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint16
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+84
	ldr	r1, .L578+8
	ldr	r0, .L578+88
	bl	sim_log_debug
	mov	r3, #1
	strb	r3, [fp, #-108]
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+92
	ldr	r1, .L578+8
	ldr	r0, .L578+96
	bl	sim_log_debug
	mov	r2, #1
	mov	r1, #0
	ldr	r0, [fp, #-92]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	beq	.L557
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+100
	ldr	r1, .L578+8
	ldr	r0, .L578+104
	bl	sim_log_debug
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r1, #1
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$upperSendDone
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L558
.L557:
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-92]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #15
	bls	.L559
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+108
	ldr	r1, .L578+8
	mov	r0, #324
	bl	sim_log_debug
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r1, #1
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$upperSendDone
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L558
.L559:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Salvage$set
	ldrb	r4, [fp, #-109]	@ zero_extendqisi2
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	str	r3, [sp]
	mov	r3, r4
	ldr	r2, .L578+112
	ldr	r1, .L578+8
	ldr	r0, .L578+116
	bl	sim_log_debug
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	and	r4, r3, #255
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	and	r3, r3, #255
	mov	r1, r3
	mov	r0, r4
	bl	DsrControlP$0$SalvageRouteCache$checkRoute
	b	.L558
.L548:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+120
	ldr	r1, .L578+8
	ldr	r0, .L578+124
	bl	sim_log_debug
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r1, #1
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$upperSendDone
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
.L558:
	ldrb	r3, [fp, #-108]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L577
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L545:
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	strh	r3, [fp, #-104]	@ movhi
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+128
	ldr	r1, .L578+8
	ldr	r0, .L578+132
	bl	sim_log_debug
	mov	r2, #49
	ldr	r1, [fp, #-100]
	ldr	r0, [fp, #-96]
	bl	memcpy
	ldrh	r2, [fp, #-104]
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r1, [fp, #-96]
	mov	r0, r3
	bl	DsrControlP$0$addRouteRequest
	mov	r3, r0
	cmp	r3, #1
	bne	.L561
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+136
	ldr	r1, .L578+8
	mov	r0, #328
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L561:
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+140
	ldr	r1, .L578+8
	ldr	r0, .L578+144
	bl	sim_log_debug
	mov	r3, #1
	strb	r3, [fp, #-108]
	b	.L544
.L534:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$packet
	str	r0, [fp, #-100]
	ldr	r3, [fp, #-100]
	cmp	r3, #0
	beq	.L562
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	strh	r3, [fp, #-104]	@ movhi
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+148
	ldr	r1, .L578+8
	ldr	r0, .L578+152
	bl	sim_log_debug
	mov	r2, #49
	ldr	r1, [fp, #-100]
	ldr	r0, [fp, #-96]
	bl	memcpy
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r1, [fp, #-96]
	mov	r0, r3
	bl	DsrControlP$0$addDsrHeader
	mov	r3, r0
	cmp	r3, #1
	beq	.L563
	ldrh	r2, [fp, #-104]
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r1, [fp, #-96]
	mov	r0, r3
	bl	DsrControlP$0$addRouteRequest
	mov	r3, r0
	cmp	r3, #1
	bne	.L564
.L563:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+136
	ldr	r1, .L578+8
	ldr	r0, .L578+156
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$drop
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	b	.L532
.L564:
	ldrb	r2, [fp, #-109]	@ zero_extendqisi2
	ldrh	r3, [fp, #-104]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L578+140
	ldr	r1, .L578+8
	mov	r0, #332
	bl	sim_log_debug
	mov	r3, #1
	strb	r3, [fp, #-108]
	b	.L544
.L562:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+160
	ldr	r1, .L578+8
	ldr	r0, .L578+164
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-109]
	nop
.L532:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L565
	b	.L544
.L577:
	nop
.L544:
	ldrb	r3, [fp, #-108]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L531
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$get
	mov	r3, r0
	cmp	r3, #0
	bne	.L567
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+168
	ldr	r1, .L578+8
	ldr	r0, .L578+172
	bl	sim_log_error
.L567:
	sub	r3, fp, #68
	mov	r0, r3
	bl	DsrControlP$0$ComposePacket$payloadLength
	mov	r3, r0
	mov	r2, r3
	sub	r1, fp, #68
	ldrh	r3, [fp, #-104]
	mov	r0, r3
	bl	DsrControlP$0$Send$send
	mov	r3, r0
	cmp	r3, #5
	ldrls	pc, [pc, r3, asl #2]
	b	.L568
.L570:
	.word	.L573
	.word	.L568
	.word	.L572
	.word	.L568
	.word	.L571
	.word	.L569
.L573:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+176
	ldr	r1, .L578+8
	ldr	r0, .L578+180
	bl	sim_log_debug
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	b	.L568
.L569:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+184
	ldr	r1, .L578+8
	mov	r0, #336
	bl	sim_log_error
	b	.L531
.L571:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+188
	ldr	r1, .L578+8
	ldr	r0, .L578+192
	bl	sim_log_error
	b	.L531
.L572:
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r2, .L578+196
	ldr	r1, .L578+8
	ldr	r0, .L578+200
	bl	sim_log_error
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$clear
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$drop
	bl	DsrControlP$0$composePkt$postTask
	b	.L531
.L568:
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$AMPacket$type
	mov	r3, r0
	cmp	r3, #48
	bne	.L531
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteRequest$length
	mov	r3, r0
	strb	r3, [fp, #-106]
	ldrb	r3, [fp, #-106]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L531
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$SinglePacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	beq	.L531
	ldr	r0, [fp, #-100]
	bl	DsrControlP$0$RouteRequest$remove
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	ldr	r1, [fp, #-100]
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$receiveAdded
.L531:
	ldr	r3, .L578
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L576
	bl	__stack_chk_fail
.L576:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L579:
	.align	2
.L578:
	.word	.LC67
	.word	.LC40
	.word	.LC6
	.word	310
	.word	.LC41
	.word	311
	.word	.LC42
	.word	.LC43
	.word	313
	.word	.LC44
	.word	314
	.word	.LC45
	.word	315
	.word	.LC46
	.word	.LC47
	.word	317
	.word	.LC48
	.word	318
	.word	.LC49
	.word	319
	.word	.LC50
	.word	.LC51
	.word	321
	.word	.LC52
	.word	322
	.word	.LC53
	.word	323
	.word	.LC54
	.word	.LC55
	.word	325
	.word	.LC56
	.word	326
	.word	.LC57
	.word	327
	.word	.LC58
	.word	.LC59
	.word	329
	.word	.LC60
	.word	330
	.word	331
	.word	.LC61
	.word	333
	.word	.LC62
	.word	334
	.word	.LC63
	.word	335
	.word	.LC64
	.word	.LC65
	.word	337
	.word	.LC66
	.word	338
	.size	DsrControlP$0$composePkt$runTask, .-DsrControlP$0$composePkt$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$buildTreeTask$postTask, %function
SourceShortestPathP$0$buildTreeTask$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #8
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$buildTreeTask$postTask, .-SourceShortestPathP$0$buildTreeTask$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$PriorityQueue$moveUp, %function
PriorityQueueP$0$PriorityQueue$moveUp:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L583
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	PriorityQueueP$0$moveUpPos
	bl	PriorityQueueP$0$printTree
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L584:
	.align	2
.L583:
	.word	PriorityQueueP$0$hp
	.size	PriorityQueueP$0$PriorityQueue$moveUp, .-PriorityQueueP$0$PriorityQueue$moveUp
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PriorityQueue$moveUp, %function
SourceShortestPathP$0$PriorityQueue$moveUp:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	PriorityQueueP$0$PriorityQueue$moveUp
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$PriorityQueue$moveUp, .-SourceShortestPathP$0$PriorityQueue$moveUp
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PriorityQueue$insert, %function
SourceShortestPathP$0$PriorityQueue$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	PriorityQueueP$0$PriorityQueue$insert
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$PriorityQueue$insert, .-SourceShortestPathP$0$PriorityQueue$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphEdgeUnitWeightC$GraphEdgeWeight$weight, %function
GraphEdgeUnitWeightC$GraphEdgeWeight$weight:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, #1
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	GraphEdgeUnitWeightC$GraphEdgeWeight$weight, .-GraphEdgeUnitWeightC$GraphEdgeWeight$weight
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$GraphEdgeWeight$weight, %function
SourceShortestPathP$0$GraphEdgeWeight$weight:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphEdgeUnitWeightC$GraphEdgeWeight$weight
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$GraphEdgeWeight$weight, .-SourceShortestPathP$0$GraphEdgeWeight$weight
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$GraphEdge$dest, %function
GraphSparseP$0$GraphEdge$dest:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L594
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	ldrb	r3, [r0, r3, lsl #1]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L595:
	.align	2
.L594:
	.word	GraphSparseP$0$e
	.size	GraphSparseP$0$GraphEdge$dest, .-GraphSparseP$0$GraphEdge$dest
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$GraphEdge$dest, %function
SourceShortestPathP$0$GraphEdge$dest:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$GraphEdge$dest
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$GraphEdge$dest, .-SourceShortestPathP$0$GraphEdge$dest
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$GraphEdgeList$next, %function
GraphSparseP$0$GraphEdgeList$next:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L600
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	r3, [r3, #1]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L601:
	.align	2
.L600:
	.word	GraphSparseP$0$e
	.size	GraphSparseP$0$GraphEdgeList$next, .-GraphSparseP$0$GraphEdgeList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$GraphEdgeList$next, %function
SourceShortestPathP$0$GraphEdgeList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$GraphEdgeList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$GraphEdgeList$next, .-SourceShortestPathP$0$GraphEdgeList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$GraphEdgeList$end, %function
GraphSparseP$0$GraphEdgeList$end:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #250
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	GraphSparseP$0$GraphEdgeList$end, .-GraphSparseP$0$GraphEdgeList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$GraphEdgeList$end, %function
SourceShortestPathP$0$GraphEdgeList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$GraphEdgeList$end
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$GraphEdgeList$end, .-SourceShortestPathP$0$GraphEdgeList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Graph$edgeList, %function
GraphSparseP$0$Graph$edgeList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L610
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L611:
	.align	2
.L610:
	.word	GraphSparseP$0$v
	.size	GraphSparseP$0$Graph$edgeList, .-GraphSparseP$0$Graph$edgeList
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$Graph$edgeList, %function
SourceShortestPathP$0$Graph$edgeList:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$edgeList
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$Graph$edgeList, .-SourceShortestPathP$0$Graph$edgeList
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$PriorityQueue$clear, %function
PriorityQueueP$0$PriorityQueue$clear:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	PriorityQueueP$0$clearData
	bl	PriorityQueueP$0$printTree
	nop
	pop	{fp, pc}
	.size	PriorityQueueP$0$PriorityQueue$clear, .-PriorityQueueP$0$PriorityQueue$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PriorityQueue$clear, %function
SourceShortestPathP$0$PriorityQueue$clear:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	PriorityQueueP$0$PriorityQueue$clear
	nop
	pop	{fp, pc}
	.size	SourceShortestPathP$0$PriorityQueue$clear, .-SourceShortestPathP$0$PriorityQueue$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$Compare$test, %function
SourceShortestPathP$0$Compare$test:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldr	r0, .L618
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r4, r3, #16
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L618
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	sub	r3, r4, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	lsl	r3, r3, #16
	asr	r3, r3, #16
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L619:
	.align	2
.L618:
	.word	SourceShortestPathP$0$weight
	.size	SourceShortestPathP$0$Compare$test, .-SourceShortestPathP$0$Compare$test
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$Compare$test, %function
PriorityQueueP$0$Compare$test:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	SourceShortestPathP$0$Compare$test
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrsh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PriorityQueueP$0$Compare$test, .-PriorityQueueP$0$Compare$test
	.section	.rodata
	.align	2
.LC68:
	.ascii	"PQ: Moving heap position %hhu down if needed\012\000"
	.align	2
.LC69:
	.ascii	"PriorityQueueC\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$moveDownPos, %function
PriorityQueueP$0$moveDownPos:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-21]
	mov	r3, r2
	strb	r3, [fp, #-22]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, .L630
	ldr	r1, .L630+4
	ldr	r0, .L630+8
	bl	sim_log_debug
	b	.L623
.L627:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r2, r3, #1
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r2, r3
	bge	.L624
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r2, r3, #1
	ldr	r0, .L630+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r4, [r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L630+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, r4
	bl	PriorityQueueP$0$Compare$test
	mov	r3, r0
	cmp	r3, #0
	ble	.L624
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L624:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L630+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r4, [r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L630+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, r4
	bl	PriorityQueueP$0$Compare$test
	mov	r3, r0
	cmp	r3, #0
	bgt	.L628
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PriorityQueueP$0$flip
	ldrb	r3, [fp, #-13]
	strb	r3, [fp, #-21]
.L623:
	ldrb	r3, [fp, #-21]
	lsl	r3, r3, #1
	and	r3, r3, #255
	add	r3, r3, #1
	strb	r3, [fp, #-13]
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L627
	b	.L629
.L628:
	nop
.L629:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L631:
	.align	2
.L630:
	.word	.LC68
	.word	.LC69
	.word	361
	.word	PriorityQueueP$0$ai
	.size	PriorityQueueP$0$moveDownPos, .-PriorityQueueP$0$moveDownPos
	.section	.rodata
	.align	2
.LC70:
	.ascii	"PQ: Removing best, index %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$PriorityQueue$removeBest, %function
PriorityQueueP$0$PriorityQueue$removeBest:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L634
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L634
	strb	r1, [r2, r3]
	ldr	r2, .L634
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #0
	bl	PriorityQueueP$0$flip
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L634
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #0
	bl	PriorityQueueP$0$moveDownPos
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L634
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L634+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L634+8
	ldr	r1, .L634+12
	ldr	r0, .L634+16
	bl	sim_log_debug
	bl	PriorityQueueP$0$printTree
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r5, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L634
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L634+4
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L634+20
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	mov	r2, #20
	strb	r2, [r3]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L634
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L634+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	pop	{r4, r5, fp, pc}
.L635:
	.align	2
.L634:
	.word	PriorityQueueP$0$size
	.word	PriorityQueueP$0$ai
	.word	.LC70
	.word	.LC69
	.word	359
	.word	PriorityQueueP$0$hp
	.size	PriorityQueueP$0$PriorityQueue$removeBest, .-PriorityQueueP$0$PriorityQueue$removeBest
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PriorityQueue$removeBest, %function
SourceShortestPathP$0$PriorityQueue$removeBest:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PriorityQueueP$0$PriorityQueue$removeBest
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$PriorityQueue$removeBest, .-SourceShortestPathP$0$PriorityQueue$removeBest
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$buildTree, %function
SourceShortestPathP$0$SourceShortestPath$buildTree:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, #20
	mov	r0, r3
	bl	SourceShortestPathP$0$SourceShortestPath$buildTreeTo
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$SourceShortestPath$buildTree, .-SourceShortestPathP$0$SourceShortestPath$buildTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$SourceShortestPath$buildTree, %function
SimpleLinkCacheP$SourceShortestPath$buildTree:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$SourceShortestPath$buildTree
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$SourceShortestPath$buildTree, .-SimpleLinkCacheP$SourceShortestPath$buildTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$rebuildNeeded, %function
SourceShortestPathP$0$SourceShortestPath$rebuildNeeded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L647
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L643
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L647+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L644
.L643:
	mov	r3, #1
	b	.L645
.L644:
	mov	r3, #0
.L645:
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L648:
	.align	2
.L647:
	.word	SourceShortestPathP$0$rebuildNeeded
	.word	SourceShortestPathP$0$lastSrc
	.size	SourceShortestPathP$0$SourceShortestPath$rebuildNeeded, .-SourceShortestPathP$0$SourceShortestPath$rebuildNeeded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$SourceShortestPath$rebuildNeeded, %function
SimpleLinkCacheP$SourceShortestPath$rebuildNeeded:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$SourceShortestPath$rebuildNeeded
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$SourceShortestPath$rebuildNeeded, .-SimpleLinkCacheP$SourceShortestPath$rebuildNeeded
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$RouteCache$routeUpdate, %function
SimpleLinkCacheP$RouteCache$routeUpdate:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-7]	@ zero_extendqisi2
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$RouteCache$routeUpdate
	ldrb	r2, [fp, #-7]	@ zero_extendqisi2
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SalvageRouteCache$routeUpdate
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$RouteCache$routeUpdate, .-SimpleLinkCacheP$RouteCache$routeUpdate
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$2$getMask, %function
BitVectorC$2$getMask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	and	r3, r3, #7
	mov	r2, #1
	lsl	r3, r2, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$2$getMask, .-BitVectorC$2$getMask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$2$getIndex, %function
BitVectorC$2$getIndex:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	lsr	r3, r3, #3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$2$getIndex, .-BitVectorC$2$getIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$2$BitVector$clear, %function
BitVectorC$2$BitVector$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$getMask
	mov	r3, r0
	mvn	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L657
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	lsl	r3, r5, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r1, r3, #255
	ldr	r2, .L657
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L658:
	.align	2
.L657:
	.word	BitVectorC$2$m_bits
	.size	BitVectorC$2$BitVector$clear, .-BitVectorC$2$BitVector$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Track$clear, %function
SimpleLinkCacheP$Track$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$2$BitVector$clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Track$clear, .-SimpleLinkCacheP$Track$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$SourceShortestPath$edgeCount, %function
SimpleLinkCacheP$SourceShortestPath$edgeCount:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$SourceShortestPath$edgeCount
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$SourceShortestPath$edgeCount, .-SimpleLinkCacheP$SourceShortestPath$edgeCount
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Track$get, %function
SimpleLinkCacheP$Track$get:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$BitVector$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Track$get, .-SimpleLinkCacheP$Track$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$3$getMask, %function
BitVectorC$3$getMask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	and	r3, r3, #7
	mov	r2, #1
	lsl	r3, r2, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$3$getMask, .-BitVectorC$3$getMask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$3$getIndex, %function
BitVectorC$3$getIndex:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	lsr	r3, r3, #3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$3$getIndex, .-BitVectorC$3$getIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$3$BitVector$clear, %function
BitVectorC$3$BitVector$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$getMask
	mov	r3, r0
	mvn	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L669
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	lsl	r3, r5, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r1, r3, #255
	ldr	r2, .L669
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L670:
	.align	2
.L669:
	.word	BitVectorC$3$m_bits
	.size	BitVectorC$3$BitVector$clear, .-BitVectorC$3$BitVector$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Initial$clear, %function
SimpleLinkCacheP$Initial$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$3$BitVector$clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Initial$clear, .-SimpleLinkCacheP$Initial$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Initial$get, %function
SimpleLinkCacheP$Initial$get:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$BitVector$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Initial$get, .-SimpleLinkCacheP$Initial$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$2$BitVector$size, %function
BitVectorC$2$BitVector$size:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #20
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$2$BitVector$size, .-BitVectorC$2$BitVector$size
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Track$size, %function
SimpleLinkCacheP$Track$size:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	BitVectorC$2$BitVector$size
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Track$size, .-SimpleLinkCacheP$Track$size
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$SourceShortestPath$builtTree, %function
SimpleLinkCacheP$SourceShortestPath$builtTree:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	strb	r3, [fp, #-21]
	mov	r3, #0
	strb	r3, [fp, #-14]
	b	.L679
.L683:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Initial$get
	mov	r3, r0
	cmp	r3, #0
	beq	.L680
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Initial$clear
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$edgeCount
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L681
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Track$clear
.L681:
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$routeUpdate
	b	.L682
.L680:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Track$get
	mov	r3, r0
	cmp	r3, #0
	beq	.L682
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$edgeCount
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L682
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Track$clear
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$routeUpdate
.L682:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-14]
.L679:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r4, r3, #16
	bl	SimpleLinkCacheP$Track$size
	mov	r3, r0
	cmp	r4, r3
	bcc	.L683
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$rebuildNeeded
	mov	r3, r0
	cmp	r3, #0
	beq	.L685
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$buildTree
.L685:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	SimpleLinkCacheP$SourceShortestPath$builtTree, .-SimpleLinkCacheP$SourceShortestPath$builtTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$builtTree, %function
SourceShortestPathP$0$SourceShortestPath$builtTree:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$builtTree
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$SourceShortestPath$builtTree, .-SourceShortestPathP$0$SourceShortestPath$builtTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$SourceShortestPath$builtTreeTo, %function
SimpleLinkCacheP$SourceShortestPath$builtTreeTo:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	SimpleLinkCacheP$SourceShortestPath$builtTreeTo, .-SimpleLinkCacheP$SourceShortestPath$builtTreeTo
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$builtTreeTo, %function
SourceShortestPathP$0$SourceShortestPath$builtTreeTo:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-7]	@ zero_extendqisi2
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$builtTreeTo
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$SourceShortestPath$builtTreeTo, .-SourceShortestPathP$0$SourceShortestPath$builtTreeTo
	.section	.rodata
	.align	2
.LC71:
	.ascii	"SSP: Current SPT:\012\000"
	.align	2
.LC72:
	.ascii	"SourceShortestPathP\000"
	.align	2
.LC73:
	.ascii	"Dest %u: \000"
	.align	2
.LC74:
	.ascii	"X\012\000"
	.align	2
.LC75:
	.ascii	"%s, Cost: %u\012\000"
	.align	2
.LC76:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$printPaths, %function
SourceShortestPathP$0$printPaths:
	@ args = 0, pretend = 0, frame = 88
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #96
	ldr	r3, .L695
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r2, .L695+4
	ldr	r1, .L695+8
	ldr	r0, .L695+12
	bl	sim_log_debug
	mov	r3, #0
	strb	r3, [fp, #-89]
	b	.L690
.L693:
	ldrb	r3, [fp, #-89]	@ zero_extendqisi2
	ldr	r2, .L695+16
	ldr	r1, .L695+8
	ldr	r0, .L695+20
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-89]	@ zero_extendqisi2
	ldr	r0, .L695+24
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L691
	ldr	r2, .L695+28
	ldr	r1, .L695+8
	mov	r0, #380
	bl	sim_log_debug_clear
	b	.L692
.L691:
	mov	r3, #0
	str	r3, [fp, #-88]
	sub	r3, fp, #84
	mov	r2, #36
	mov	r1, #0
	mov	r0, r3
	bl	memset
	mov	r3, #0
	str	r3, [fp, #-48]
	sub	r3, fp, #44
	mov	r2, #36
	mov	r1, #0
	mov	r0, r3
	bl	memset
	sub	r2, fp, #48
	sub	r1, fp, #88
	ldrb	r3, [fp, #-89]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$printPathLink
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-89]	@ zero_extendqisi2
	ldr	r0, .L695+32
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	sub	r3, fp, #88
	str	r2, [sp]
	ldr	r2, .L695+36
	ldr	r1, .L695+8
	ldr	r0, .L695+40
	bl	sim_log_debug_clear
.L692:
	ldrb	r3, [fp, #-89]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-89]
.L690:
	ldrb	r3, [fp, #-89]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L693
	nop
	ldr	r3, .L695
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L694
	bl	__stack_chk_fail
.L694:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L696:
	.align	2
.L695:
	.word	.LC76
	.word	.LC71
	.word	.LC72
	.word	378
	.word	.LC73
	.word	379
	.word	SourceShortestPathP$0$spt
	.word	.LC74
	.word	SourceShortestPathP$0$weight
	.word	.LC75
	.word	381
	.size	SourceShortestPathP$0$printPaths, .-SourceShortestPathP$0$printPaths
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$PriorityQueue$empty, %function
PriorityQueueP$0$PriorityQueue$empty:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L699
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L700:
	.align	2
.L699:
	.word	PriorityQueueP$0$size
	.size	PriorityQueueP$0$PriorityQueue$empty, .-PriorityQueueP$0$PriorityQueue$empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PriorityQueue$empty, %function
SourceShortestPathP$0$PriorityQueue$empty:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PriorityQueueP$0$PriorityQueue$empty
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SourceShortestPathP$0$PriorityQueue$empty, .-SourceShortestPathP$0$PriorityQueue$empty
	.section	.rodata
	.align	2
.LC77:
	.ascii	"SSP: Destination vertex %u added to SPT, stopping b"
	.ascii	"uild early.\012\000"
	.align	2
.LC78:
	.ascii	"SSP: No path was found to destination %u!\012\000"
	.align	2
.LC79:
	.ascii	"SSP: Added edge %u -> %u to SPT\012\000"
	.align	2
.LC80:
	.ascii	"SSP: Adding edge %u -> %u (%u) to PQ\012\000"
	.align	2
.LC81:
	.ascii	"SSP: Edge %u -> %u (%u) replacing %u -> %u (%u) in "
	.ascii	"PQ\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$buildTreeTask$runTask, %function
SourceShortestPathP$0$buildTreeTask$runTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #36
	bl	SourceShortestPathP$0$PriorityQueue$empty
	mov	r3, r0
	cmp	r3, #0
	beq	.L704
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	beq	.L705
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L706
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L715+8
	ldr	r1, .L715+12
	ldr	r0, .L715+16
	bl	sim_log_debug
	b	.L705
.L706:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L715+20
	ldr	r1, .L715+12
	ldr	r0, .L715+24
	bl	sim_log_debug
.L705:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715+28
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	SourceShortestPathP$0$printPaths
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	beq	.L707
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715+32
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715
	ldrb	r5, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	mov	r1, r5
	mov	r0, r4
	bl	SourceShortestPathP$0$SourceShortestPath$builtTreeTo
	b	.L714
.L707:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715+32
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$SourceShortestPath$builtTree
	b	.L714
.L704:
	bl	SourceShortestPathP$0$PriorityQueue$removeBest
	mov	r3, r0
	strb	r3, [fp, #-31]
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-31]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldr	r0, .L715+36
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r4
	ldrb	ip, [r3]	@ zero_extendqisi2
	ldr	r0, .L715+40
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, ip
	strb	r2, [r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L709
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L715+4
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	SourceShortestPathP$0$PriorityQueue$clear
	bl	SourceShortestPathP$0$buildTreeTask$postTask
.L709:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldr	r0, .L715+40
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r2, r3
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L715+44
	ldr	r1, .L715+12
	ldr	r0, .L715+48
	bl	sim_log_debug
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$Graph$edgeList
	mov	r3, r0
	strb	r3, [fp, #-32]
	b	.L710
.L713:
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$GraphEdge$dest
	mov	r3, r0
	strb	r3, [fp, #-30]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldr	r0, .L715+52
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r4, [r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$GraphEdgeWeight$weight
	mov	r3, r0
	add	r3, r4, r3
	strb	r3, [fp, #-29]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+36
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L711
	ldrb	r1, [fp, #-31]	@ zero_extendqisi2
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L715+56
	ldr	r1, .L715+12
	mov	r0, #376
	bl	sim_log_debug
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+52
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-29]
	strb	r2, [r3]
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$PriorityQueue$insert
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+36
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-31]
	strb	r2, [r3]
	b	.L712
.L711:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+40
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L712
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+52
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L712
	ldrb	r7, [fp, #-31]	@ zero_extendqisi2
	ldrb	r4, [fp, #-30]	@ zero_extendqisi2
	ldrb	r5, [fp, #-29]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+36
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r8, r3
	ldrb	r6, [fp, #-30]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+52
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [sp, #16]
	str	r6, [sp, #12]
	str	r8, [sp, #8]
	str	r5, [sp, #4]
	str	r4, [sp]
	mov	r3, r7
	ldr	r2, .L715+60
	ldr	r1, .L715+12
	ldr	r0, .L715+64
	bl	sim_log_debug
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+52
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-29]
	strb	r2, [r3]
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$PriorityQueue$moveUp
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L715+36
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-31]
	strb	r2, [r3]
.L712:
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$GraphEdgeList$next
	mov	r3, r0
	strb	r3, [fp, #-32]
.L710:
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$GraphEdgeList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L713
	bl	SourceShortestPathP$0$buildTreeTask$postTask
.L714:
	nop
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, fp, pc}
.L716:
	.align	2
.L715:
	.word	SourceShortestPathP$0$lastDest
	.word	SourceShortestPathP$0$foundDest
	.word	.LC77
	.word	.LC72
	.word	373
	.word	.LC78
	.word	374
	.word	SourceShortestPathP$0$buildingTree
	.word	SourceShortestPathP$0$lastSrc
	.word	SourceShortestPathP$0$fringe
	.word	SourceShortestPathP$0$spt
	.word	.LC79
	.word	375
	.word	SourceShortestPathP$0$weight
	.word	.LC80
	.word	.LC81
	.word	377
	.size	SourceShortestPathP$0$buildTreeTask$runTask, .-SourceShortestPathP$0$buildTreeTask$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$errorTask$runTask, %function
AMQueueImplP$0$errorTask$runTask:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L718
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r5, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L718
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L718+4
	lsl	r3, r5, #1
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #1
	mov	r1, r3
	mov	r0, r4
	bl	AMQueueImplP$0$sendDone
	nop
	pop	{r4, r5, fp, pc}
.L719:
	.align	2
.L718:
	.word	AMQueueImplP$0$current
	.word	AMQueueImplP$0$queue
	.size	AMQueueImplP$0$errorTask$runTask, .-AMQueueImplP$0$errorTask$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$0$AMSend$sendDone, %function
AMQueueEntryP$0$AMSend$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-8]
	mov	r0, #48
	bl	PacketEngineP$SubSend$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$0$AMSend$sendDone, .-AMQueueEntryP$0$AMSend$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$0$Send$sendDone, %function
AMQueueEntryP$0$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	AMQueueEntryP$0$AMSend$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$0$Send$sendDone, .-AMQueueEntryP$0$Send$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$1$AMSend$sendDone, %function
AMQueueEntryP$1$AMSend$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-8]
	mov	r0, #4
	bl	PacketEngineP$SubSend$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$1$AMSend$sendDone, .-AMQueueEntryP$1$AMSend$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueEntryP$1$Send$sendDone, %function
AMQueueEntryP$1$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	AMQueueEntryP$1$AMSend$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueEntryP$1$Send$sendDone, .-AMQueueEntryP$1$Send$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$Send$default$sendDone, %function
AMQueueImplP$0$Send$default$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	AMQueueImplP$0$Send$default$sendDone, .-AMQueueImplP$0$Send$default$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$Send$sendDone, %function
AMQueueImplP$0$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L726
	cmp	r3, #1
	beq	.L727
	b	.L730
.L726:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$0$Send$sendDone
	b	.L729
.L727:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	AMQueueEntryP$1$Send$sendDone
	b	.L729
.L730:
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	AMQueueImplP$0$Send$default$sendDone
	nop
.L729:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$Send$sendDone, .-AMQueueImplP$0$Send$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$CancelTask$runTask, %function
AMQueueImplP$0$CancelTask$runTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	strb	r3, [fp, #-12]
	b	.L732
.L737:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-12]	@ zero_extendqisi2
	ldr	r1, .L738
	add	r2, r1, r2
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L733
	mov	r3, #1
	strb	r3, [fp, #-10]
	mov	r3, #0
	strb	r3, [fp, #-11]
	b	.L734
.L736:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-12]	@ zero_extendqisi2
	ldr	r1, .L738
	add	r2, r1, r2
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-10]
	and	r3, r3, r2
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L735
	ldrb	r3, [fp, #-12]
	lsl	r3, r3, #3
	and	r2, r3, #255
	ldrb	r3, [fp, #-11]
	add	r3, r2, r3
	strb	r3, [fp, #-9]
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	ldr	r1, .L738+4
	lsl	r2, r2, #1
	add	r3, r2, r3
	ldr	r3, [r1, r3, lsl #2]
	str	r3, [fp, #-8]
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	ldr	r1, .L738+4
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r1, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldrb	r2, [fp, #-12]	@ zero_extendqisi2
	ldr	r1, .L738
	add	r2, r1, r2
	add	r2, r2, r3
	ldrb	r2, [r2]	@ zero_extendqisi2
	lsl	r2, r2, #24
	asr	r1, r2, #24
	ldrsb	r2, [fp, #-10]
	mvn	r2, r2
	lsl	r2, r2, #24
	asr	r2, r2, #24
	and	r2, r2, r1
	lsl	r2, r2, #24
	asr	r1, r2, #24
	ldrb	r2, [fp, #-12]	@ zero_extendqisi2
	and	r0, r1, #255
	ldr	r1, .L738
	add	r2, r1, r2
	add	r3, r2, r3
	mov	r2, r0
	strb	r2, [r3]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r2, #3
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	AMQueueImplP$0$Send$sendDone
.L735:
	ldrb	r3, [fp, #-10]
	lsl	r3, r3, #1
	strb	r3, [fp, #-10]
	ldrb	r3, [fp, #-11]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-11]
.L734:
	ldrb	r3, [fp, #-11]	@ zero_extendqisi2
	cmp	r3, #7
	bls	.L736
.L733:
	ldrb	r3, [fp, #-12]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-12]
.L732:
	ldrb	r3, [fp, #-12]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L737
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L739:
	.align	2
.L738:
	.word	AMQueueImplP$0$cancelMask
	.word	AMQueueImplP$0$queue
	.size	AMQueueImplP$0$CancelTask$runTask, .-AMQueueImplP$0$CancelTask$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$TaskBasic$default$runTask, %function
SimSchedulerBasicP$TaskBasic$default$runTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	SimSchedulerBasicP$TaskBasic$default$runTask, .-SimSchedulerBasicP$TaskBasic$default$runTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$TaskBasic$runTask, %function
SimSchedulerBasicP$TaskBasic$runTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #10
	ldrls	pc, [pc, r3, asl #2]
	b	.L742
.L744:
	.word	.L754
	.word	.L753
	.word	.L752
	.word	.L751
	.word	.L750
	.word	.L749
	.word	.L748
	.word	.L747
	.word	.L746
	.word	.L745
	.word	.L743
.L754:
	bl	PacketEngineP$msgAdded$runTask
	b	.L755
.L753:
	bl	PacketEngineP$msgAction$runTask
	b	.L755
.L752:
	bl	AlarmToTimerC$0$fired$runTask
	b	.L755
.L751:
	bl	VirtualizeTimerC$0$updateFromTimer$runTask
	b	.L755
.L750:
	bl	TossimPacketModelC$startDoneTask$runTask
	b	.L755
.L749:
	bl	TossimPacketModelC$stopDoneTask$runTask
	b	.L755
.L748:
	bl	TossimPacketModelC$sendDoneTask$runTask
	b	.L755
.L747:
	bl	DsrControlP$0$composePkt$runTask
	b	.L755
.L746:
	bl	SourceShortestPathP$0$buildTreeTask$runTask
	b	.L755
.L745:
	bl	AMQueueImplP$0$CancelTask$runTask
	b	.L755
.L743:
	bl	AMQueueImplP$0$errorTask$runTask
	b	.L755
.L742:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimSchedulerBasicP$TaskBasic$default$runTask
	nop
.L755:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimSchedulerBasicP$TaskBasic$runTask, .-SimSchedulerBasicP$TaskBasic$runTask
	.section	.rodata
	.align	2
.LC82:
	.ascii	"PE: Forced send action to done due to bad combine!\012"
	.ascii	"\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	pktSendActionCombine, %function
pktSendActionCombine:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L757
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L758
.L757:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #3
	bne	.L759
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	b	.L758
.L759:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #3
	bne	.L760
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L758
.L760:
	ldr	r2, .L761
	ldr	r1, .L761+4
	mov	r0, #46
	bl	sim_log_error
	mov	r3, #0
.L758:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L762:
	.align	2
.L761:
	.word	.LC82
	.word	.LC9
	.size	pktSendActionCombine, .-pktSendActionCombine
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$sendDone, %function
DsrControlP$0$SinglePacketEngine$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	mov	r3, #3
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$SinglePacketEngine$sendDone, .-DsrControlP$0$SinglePacketEngine$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$sendDone, %function
DsrControlP$0$DsrPacketEngine$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	mov	r3, #3
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$DsrPacketEngine$sendDone, .-DsrControlP$0$DsrPacketEngine$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$default$sendDone, %function
PacketEngineP$PacketEngine$default$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r2, [fp, #-12]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L769
	ldr	r1, .L769+4
	mov	r0, #140
	bl	sim_log_error
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L770:
	.align	2
.L769:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$PacketEngine$default$sendDone, .-PacketEngineP$PacketEngine$default$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$sendDone, %function
PacketEngineP$PacketEngine$sendDone:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r2, [fp, #-20]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1
	strb	r3, [fp, #-14]
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L772
	cmp	r3, #48
	beq	.L773
	b	.L777
.L772:
	ldrb	r2, [fp, #-15]	@ zero_extendqisi2
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$sendDone
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-15]	@ zero_extendqisi2
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$sendDone
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	pktSendActionCombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L775
.L773:
	ldrb	r2, [fp, #-15]	@ zero_extendqisi2
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$sendDone
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-15]	@ zero_extendqisi2
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$sendDone
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	pktSendActionCombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L775
.L777:
	ldrb	r3, [fp, #-15]	@ zero_extendqisi2
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	bl	PacketEngineP$PacketEngine$default$sendDone
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
.L775:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$PacketEngine$sendDone, .-PacketEngineP$PacketEngine$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$PacketAcknowledgements$wasAcked, %function
TossimPacketModelC$PacketAcknowledgements$wasAcked:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$getMetadata
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$PacketAcknowledgements$wasAcked, .-TossimPacketModelC$PacketAcknowledgements$wasAcked
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Acks$wasAcked, %function
DsrControlP$0$Acks$wasAcked:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$PacketAcknowledgements$wasAcked
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Acks$wasAcked, .-DsrControlP$0$Acks$wasAcked
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteCache$removeLink, %function
DsrControlP$0$RouteCache$removeLink:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-7]	@ zero_extendqisi2
	ldrb	r1, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$removeLink
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteCache$removeLink, .-DsrControlP$0$RouteCache$removeLink
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Graph$remove, %function
SimpleLinkCacheP$Graph$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$remove
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Graph$remove, .-SimpleLinkCacheP$Graph$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$IndexedAlloc$free, %function
GraphSparseP$0$IndexedAlloc$free:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	IndexedAllocBitsP$0$IndexedAlloc$free
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	GraphSparseP$0$IndexedAlloc$free, .-GraphSparseP$0$IndexedAlloc$free
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$getMask, %function
BitVectorC$4$getMask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	and	r3, r3, #7
	mov	r2, #1
	lsl	r3, r2, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$4$getMask, .-BitVectorC$4$getMask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$getIndex, %function
BitVectorC$4$getIndex:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	lsr	r3, r3, #3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$4$getIndex, .-BitVectorC$4$getIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$BitVector$clear, %function
BitVectorC$4$BitVector$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$getMask
	mov	r3, r0
	mvn	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L792
	lsl	r3, r4, #5
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	lsl	r3, r5, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r1, r3, #255
	ldr	r2, .L792
	lsl	r3, r4, #5
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L793:
	.align	2
.L792:
	.word	BitVectorC$4$m_bits
	.size	BitVectorC$4$BitVector$clear, .-BitVectorC$4$BitVector$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$BitVector$clear, %function
IndexedAllocBitsP$0$BitVector$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$4$BitVector$clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	IndexedAllocBitsP$0$BitVector$clear, .-IndexedAllocBitsP$0$BitVector$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Graph$removed, %function
SimpleLinkCacheP$Graph$removed:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	SimpleLinkCacheP$Graph$removed, .-SimpleLinkCacheP$Graph$removed
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$Graph$removed, %function
SourceShortestPathP$0$Graph$removed:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L797
	mov	r1, #1
	strb	r1, [r2, r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L798:
	.align	2
.L797:
	.word	SourceShortestPathP$0$rebuildNeeded
	.size	SourceShortestPathP$0$Graph$removed, .-SourceShortestPathP$0$Graph$removed
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Graph$removed, %function
GraphSparseP$0$Graph$removed:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$Graph$removed
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$Graph$removed
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	GraphSparseP$0$Graph$removed, .-GraphSparseP$0$Graph$removed
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$0$getMask, %function
BitVectorC$0$getMask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	and	r3, r3, #7
	mov	r2, #1
	lsl	r3, r2, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$0$getMask, .-BitVectorC$0$getMask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$0$getIndex, %function
BitVectorC$0$getIndex:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	lsr	r3, r3, #3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	BitVectorC$0$getIndex, .-BitVectorC$0$getIndex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$0$BitVector$set, %function
BitVectorC$0$BitVector$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$getMask
	mov	r3, r0
	mov	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L805
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [r3]	@ zero_extendqisi2
	and	r3, r5, #255
	orr	r3, r2, r3
	and	r1, r3, #255
	ldr	r2, .L805
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L806:
	.align	2
.L805:
	.word	BitVectorC$0$m_bits
	.size	BitVectorC$0$BitVector$set, .-BitVectorC$0$BitVector$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Compose$set, %function
DsrControlP$0$Compose$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$0$BitVector$set
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Compose$set, .-DsrControlP$0$Compose$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	ecombine, %function
ecombine:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L809
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L810
.L809:
	mov	r3, #1
.L810:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	ecombine, .-ecombine
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$upperSendDone, %function
DsrControlP$0$SingleDsrPacketEngine$upperSendDone:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$upperSendDone
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$upperSendDone
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SingleDsrPacketEngine$upperSendDone, .-DsrControlP$0$SingleDsrPacketEngine$upperSendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$DataCache$lookup, %function
LruDataCacheP$0$DataCache$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	LruDataCacheP$0$lookup
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	LruDataCacheP$0$printCache
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L817
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L815
	mov	r3, #0
	b	.L816
.L815:
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-13]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L817+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r1, r4, r3
	ldr	r3, .L817+8
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L817+12
	add	r3, r3, r2
.L816:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L818:
	.align	2
.L817:
	.word	LruDataCacheP$0$count
	.word	LruDataCacheP$0$first
	.word	1717986919
	.word	LruDataCacheP$0$cache
	.size	LruDataCacheP$0$DataCache$lookup, .-LruDataCacheP$0$DataCache$lookup
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendQueue$lookup, %function
PacketEngineP$SendQueue$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$0$DataCache$lookup
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendQueue$lookup, .-PacketEngineP$SendQueue$lookup
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendQueueEqual$test, %function
PacketEngineP$SendQueueEqual$test:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-8]
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r2, r3
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineP$SendQueueEqual$test, .-PacketEngineP$SendQueueEqual$test
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$Equal$test, %function
LruDataCacheP$0$Equal$test:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$SendQueueEqual$test
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	LruDataCacheP$0$Equal$test, .-LruDataCacheP$0$Equal$test
	.section	.rodata
	.align	2
.LC83:
	.ascii	"Send done with result %hhu\012\000"
	.align	2
.LC84:
	.ascii	"TestDsrP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Send$sendDone, %function
TestDsrP$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	ldr	r2, .L826
	ldr	r1, .L826+4
	mov	r0, #111
	bl	sim_log_debug
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L827:
	.align	2
.L826:
	.word	.LC83
	.word	.LC84
	.size	TestDsrP$Send$sendDone, .-TestDsrP$Send$sendDone
	.section	.rodata
	.align	2
.LC85:
	.ascii	"SP: Trying to use invalid client id %hhu!\012\000"
	.align	2
.LC86:
	.ascii	"SinglePacketP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Send$default$sendDone, %function
SinglePacketP$Send$default$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L829
	ldr	r1, .L829+4
	ldr	r0, .L829+8
	bl	sim_log_error
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L830:
	.align	2
.L829:
	.word	.LC85
	.word	.LC86
	.word	399
	.size	SinglePacketP$Send$default$sendDone, .-SinglePacketP$Send$default$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Send$sendDone, %function
SinglePacketP$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L832
	cmp	r3, #1
	beq	.L833
	b	.L836
.L832:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TestDsrP$Send$sendDone
	b	.L835
.L833:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	DsrControlP$0$Send$sendDone
	b	.L835
.L836:
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	SinglePacketP$Send$default$sendDone
	nop
.L835:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Send$sendDone, .-SinglePacketP$Send$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubSend$sendDone, %function
SinglePacketP$SubSend$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	SinglePacketP$Send$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SubSend$sendDone, .-SinglePacketP$SubSend$sendDone
	.section	.rodata
	.align	2
.LC87:
	.ascii	"PE: Trying to use invalid client id %hhu!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Send$default$sendDone, %function
PacketEngineP$Send$default$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L839
	ldr	r1, .L839+4
	mov	r0, #117
	bl	sim_log_error
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L840:
	.align	2
.L839:
	.word	.LC87
	.word	.LC9
	.size	PacketEngineP$Send$default$sendDone, .-PacketEngineP$Send$default$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Send$sendDone, %function
PacketEngineP$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L842
	cmp	r3, #1
	beq	.L843
	b	.L846
.L842:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-12]
	mov	r0, #0
	bl	SinglePacketP$SubSend$sendDone
	b	.L845
.L843:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-12]
	mov	r0, #1
	bl	SinglePacketP$SubSend$sendDone
	b	.L845
.L846:
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	PacketEngineP$Send$default$sendDone
	nop
.L845:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Send$sendDone, .-PacketEngineP$Send$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	RandomMlcgP$Random$rand16, %function
RandomMlcgP$Random$rand16:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	RandomMlcgP$Random$rand32
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	pop	{fp, pc}
	.size	RandomMlcgP$Random$rand16, .-RandomMlcgP$Random$rand16
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Random$rand16, %function
PacketEngineP$Random$rand16:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	RandomMlcgP$Random$rand16
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Random$rand16, .-PacketEngineP$Random$rand16
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$Timer$startOneShot, %function
VirtualizeTimerC$0$Timer$startOneShot:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	bl	VirtualizeTimerC$0$TimerFrom$getNow
	mov	r1, r0
	ldrb	r0, [fp, #-5]	@ zero_extendqisi2
	mov	r3, #1
	ldr	r2, [fp, #-12]
	bl	VirtualizeTimerC$0$startTimer
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$Timer$startOneShot, .-VirtualizeTimerC$0$Timer$startOneShot
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendBackoff$startOneShot, %function
PacketEngineP$SendBackoff$startOneShot:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r1, [fp, #-8]
	mov	r0, #0
	bl	VirtualizeTimerC$0$Timer$startOneShot
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendBackoff$startOneShot, .-PacketEngineP$SendBackoff$startOneShot
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$updateFromTimer$postTask, %function
VirtualizeTimerC$0$updateFromTimer$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #3
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$updateFromTimer$postTask, .-VirtualizeTimerC$0$updateFromTimer$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$getStartTime, %function
SimMoteP$SimMote$getStartTime:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L857
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	pop	{fp, pc}
.L858:
	.align	2
.L857:
	.word	SimMoteP$startTime
	.size	SimMoteP$SimMote$getStartTime, .-SimMoteP$SimMote$getStartTime
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$notify_clockTicksPerSec, %function
HplAtm128Timer0AsyncP$notify_clockTicksPerSec:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r2, #32768
	mov	r3, #0
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	HplAtm128Timer0AsyncP$notify_clockTicksPerSec, .-HplAtm128Timer0AsyncP$notify_clockTicksPerSec
	.global	__aeabi_ldivmod
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$sim_to_clock, %function
HplAtm128Timer0AsyncP$sim_to_clock:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	bl	HplAtm128Timer0AsyncP$notify_clockTicksPerSec
	ldr	r3, [fp, #-8]
	mul	r2, r0, r3
	ldr	r3, [fp, #-12]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-12]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	HplAtm128Timer0AsyncP$sim_to_clock, .-HplAtm128Timer0AsyncP$sim_to_clock
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag, %function
Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag
	mov	r3, r0
	strb	r3, [fp, #-8]
	ldrb	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag, .-Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	StateImplP$State$forceState, %function
StateImplP$State$forceState:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L866
	add	r2, r1, r2
	add	r3, r2, r3
	ldrb	r2, [fp, #-14]
	strb	r2, [r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L867:
	.align	2
.L866:
	.word	StateImplP$state
	.size	StateImplP$State$forceState, .-StateImplP$State$forceState
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendState$forceState, %function
PacketEngineP$SendState$forceState:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #0
	bl	StateImplP$State$forceState
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendState$forceState, .-PacketEngineP$SendState$forceState
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$0$Pool$put, %function
PoolP$0$Pool$put:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L873
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L870
	mov	r3, #1
	b	.L871
.L870:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L873+4
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L873
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L872
	ldrb	r3, [fp, #-13]
	sub	r3, r3, #20
	strb	r3, [fp, #-13]
.L872:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L873+8
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-24]
	str	r2, [r0, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L873
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L873
	strb	r1, [r2, r3]
	mov	r3, #0
.L871:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L874:
	.align	2
.L873:
	.word	PoolP$0$free
	.word	PoolP$0$index
	.word	PoolP$0$queue
	.size	PoolP$0$Pool$put, .-PoolP$0$Pool$put
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$ReceivePool$put, %function
PacketEngineP$ReceivePool$put:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	PoolP$0$Pool$put
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$ReceivePool$put, .-PacketEngineP$ReceivePool$put
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$DataCache$remove, %function
LruDataCacheP$0$DataCache$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$0$lookup
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L880
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L878
	mov	r3, #6
	b	.L879
.L878:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	LruDataCacheP$0$remove
	bl	LruDataCacheP$0$printCache
	mov	r3, #0
.L879:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L881:
	.align	2
.L880:
	.word	LruDataCacheP$0$count
	.size	LruDataCacheP$0$DataCache$remove, .-LruDataCacheP$0$DataCache$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendQueue$remove, %function
PacketEngineP$SendQueue$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$0$DataCache$remove
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendQueue$remove, .-PacketEngineP$SendQueue$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$errorTask$postTask, %function
AMQueueImplP$0$errorTask$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #10
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$errorTask$postTask, .-AMQueueImplP$0$errorTask$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$AMSend$send, %function
AMQueueImplP$0$AMSend$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r2, [fp, #-20]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrh	r1, [fp, #-16]
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	bl	TossimActiveMessageC$AMSend$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$AMSend$send, .-AMQueueImplP$0$AMSend$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$Packet$payloadLength, %function
AMQueueImplP$0$Packet$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$Packet$payloadLength, .-AMQueueImplP$0$Packet$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$AMPacket$destination, %function
AMQueueImplP$0$AMPacket$destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$destination
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$AMPacket$destination, .-AMQueueImplP$0$AMPacket$destination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$AMPacket$type, %function
AMQueueImplP$0$AMPacket$type:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$AMPacket$type, .-AMQueueImplP$0$AMPacket$type
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$nextPacket, %function
AMQueueImplP$0$nextPacket:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L901
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r3, #1
	cmp	r3, #0
	and	r3, r3, #1
	rsblt	r3, r3, #0
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L901
	strb	r1, [r2, r3]
	mov	r3, #0
	strb	r3, [fp, #-13]
	b	.L895
.L898:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L901
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L901+4
	lsl	r3, r4, #1
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L896
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L901
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	lsr	r3, r3, #3
	and	r3, r3, #255
	mov	r2, r3
	ldr	r3, .L901+8
	add	r3, r3, r4
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L901
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	and	r3, r3, #7
	asr	r3, r4, r3
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L897
.L896:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L901
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r3, #1
	cmp	r3, #0
	and	r3, r3, #1
	rsblt	r3, r3, #0
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L901
	strb	r1, [r2, r3]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L895:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L898
.L897:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L900
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L901
	mov	r1, #2
	strb	r1, [r2, r3]
.L900:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L902:
	.align	2
.L901:
	.word	AMQueueImplP$0$current
	.word	AMQueueImplP$0$queue
	.word	AMQueueImplP$0$cancelMask
	.size	AMQueueImplP$0$nextPacket, .-AMQueueImplP$0$nextPacket
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$tryToSend, %function
AMQueueImplP$0$tryToSend:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	bl	AMQueueImplP$0$nextPacket
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L906
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #1
	bhi	.L905
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L906
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L906+4
	lsl	r3, r4, #1
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	AMQueueImplP$0$AMPacket$type
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldr	r0, [fp, #-16]
	bl	AMQueueImplP$0$AMPacket$destination
	mov	r3, r0
	strh	r3, [fp, #-18]	@ movhi
	ldr	r0, [fp, #-16]
	bl	AMQueueImplP$0$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-20]
	ldrb	r3, [fp, #-20]	@ zero_extendqisi2
	ldrh	r1, [fp, #-18]
	ldrb	r0, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	bl	AMQueueImplP$0$AMSend$send
	mov	r3, r0
	strb	r3, [fp, #-19]
	ldrb	r3, [fp, #-19]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L905
	bl	AMQueueImplP$0$errorTask$postTask
.L905:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L907:
	.align	2
.L906:
	.word	AMQueueImplP$0$current
	.word	AMQueueImplP$0$queue
	.size	AMQueueImplP$0$tryToSend, .-AMQueueImplP$0$tryToSend
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$free_receive_message, %function
CpmModelC$free_receive_message:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	free
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	CpmModelC$free_receive_message, .-CpmModelC$free_receive_message
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$Model$shouldAck, %function
CpmModelC$Model$shouldAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$GainRadioModel$shouldAck
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	CpmModelC$Model$shouldAck, .-CpmModelC$Model$shouldAck
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Packet$receive, %function
TossimPacketModelC$Packet$receive:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$Model$receive
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$Packet$receive, .-TossimPacketModelC$Packet$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$GainRadioModel$receive, %function
TossimPacketModelC$GainRadioModel$receive:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L915
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L914
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L915+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L914
	ldr	r0, [fp, #-8]
	bl	TossimPacketModelC$Packet$receive
.L914:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L916:
	.align	2
.L915:
	.word	TossimPacketModelC$running
	.word	TossimPacketModelC$transmitting
	.size	TossimPacketModelC$GainRadioModel$receive, .-TossimPacketModelC$GainRadioModel$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$Model$receive, %function
CpmModelC$Model$receive:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TossimPacketModelC$GainRadioModel$receive
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	CpmModelC$Model$receive, .-CpmModelC$Model$receive
	.global	__aeabi_ddiv
	.global	__aeabi_dsub
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$checkReceive, %function
CpmModelC$checkReceive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	bl	CpmModelC$noise_hash_generation
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L923
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-16]
	mov	r2, #0
	ldr	r3, .L923+4
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L923+4
	bl	pow
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	b	.L919
.L921:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	beq	.L920
	ldr	r3, [fp, #-16]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L923+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L923+4
	bl	pow
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L920:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #48]
	str	r3, [fp, #-16]
.L919:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L921
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	log
	mov	r2, #0
	ldr	r3, .L923+4
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L923+8
	ldr	r3, .L923+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-24]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	CpmModelC$shouldReceive
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L924:
	.align	2
.L923:
	.word	CpmModelC$outstandingReceptionHead
	.word	1076101120
	.word	-1145744106
	.word	1073900465
	.size	CpmModelC$checkReceive, .-CpmModelC$checkReceive
	.section	.rodata
	.align	2
.LC88:
	.ascii	"Handling reception event @ %s.\012\000"
	.align	2
.LC89:
	.ascii	"CpmModelC\000"
	.align	2
.LC90:
	.ascii	"Incoming packet list structure is corrupted: entry "
	.ascii	"is not the head and no entry points to it.\012\000"
	.align	2
.LC91:
	.ascii	"Packet from %i to %i\012\000"
	.align	2
.LC92:
	.ascii	"CpmModelC,SNRLoss\000"
	.align	2
.LC93:
	.ascii	" - lost packet from %i as SNR was too low.\012\000"
	.align	2
.LC94:
	.ascii	"  -signaling reception\012\000"
	.align	2
.LC95:
	.ascii	" acknowledgment requested, \000"
	.align	2
.LC96:
	.ascii	" no acknowledgment requested.\012\000"
	.align	2
.LC97:
	.ascii	" scheduling ack.\012\000"
	.global	__aeabi_dcmplt
	.align	2
.LC98:
	.ascii	"Packet was technically lost, but TOSSIM introduces "
	.ascii	"an ack false positive rate.\012\000"
	.align	2
.LC99:
	.ascii	"  -packet was lost.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$sim_gain_receive_handle, %function
CpmModelC$sim_gain_receive_handle:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #36
	str	r0, [fp, #-48]
	ldr	r3, [fp, #-48]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-44]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L947
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-40]
	bl	sim_time_string
	mov	r3, r0
	ldr	r2, .L947+4
	ldr	r1, .L947+8
	mov	r0, #231
	bl	sim_log_debug
	b	.L926
.L928:
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #48]
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bne	.L927
	ldr	r3, [fp, #-40]
	str	r3, [fp, #-44]
.L927:
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #48]
	str	r3, [fp, #-40]
.L926:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	bne	.L928
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	beq	.L929
	ldr	r3, [fp, #-36]
	ldr	r2, [r3, #48]
	ldr	r3, [fp, #-44]
	str	r2, [r3, #48]
	b	.L930
.L929:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L947
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bne	.L931
	bl	sim_node
	mov	r2, r0
	ldr	r3, [fp, #-36]
	ldr	r3, [r3, #48]
	ldr	r1, .L947
	str	r3, [r1, r2, lsl #2]
	b	.L930
.L931:
	ldr	r2, .L947+12
	ldr	r1, .L947+8
	mov	r0, #232
	bl	sim_log_error
.L930:
	ldr	r3, [fp, #-36]
	ldr	r8, [r3]
	bl	sim_node
	mov	r3, r0
	str	r3, [sp]
	mov	r3, r8
	ldr	r2, .L947+16
	ldr	r1, .L947+20
	mov	r0, #233
	bl	sim_log_debug
	ldr	r0, [fp, #-36]
	bl	CpmModelC$checkReceive
	mov	r3, r0
	cmp	r3, #0
	bne	.L932
	ldr	r3, [fp, #-36]
	ldr	r3, [r3]
	ldr	r2, .L947+24
	ldr	r1, .L947+20
	mov	r0, #234
	bl	sim_log_debug
	ldr	r3, [fp, #-36]
	mov	r2, #1
	strb	r2, [r3, #41]
.L932:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3, #41]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L933
	ldr	r3, [fp, #-36]
	ldr	r3, [r3, #44]
	add	r3, r3, #45
	str	r3, [fp, #-32]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-36]
	ldrsb	r3, [r3, #40]
	mov	r1, r3
	mov	r0, r2
	bl	__nesc_hton_int8
	ldr	r2, .L947+28
	ldr	r1, .L947+20
	mov	r0, #235
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-36]
	ldr	r3, [r3, #44]
	mov	r0, r3
	bl	CpmModelC$Model$receive
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3, #42]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L934
	ldr	r2, .L947+32
	ldr	r1, .L947+8
	mov	r0, #236
	bl	sim_log_debug_clear
	b	.L935
.L934:
	ldr	r2, .L947+36
	ldr	r1, .L947+8
	mov	r0, #237
	bl	sim_log_debug_clear
.L935:
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3, #42]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L936
	ldr	r3, [fp, #-36]
	ldr	r3, [r3, #44]
	mov	r0, r3
	bl	CpmModelC$Model$shouldAck
	mov	r3, r0
	cmp	r3, #0
	beq	.L936
	ldr	r2, .L947+40
	ldr	r1, .L947+8
	mov	r0, #238
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-36]
	ldr	r4, [r3]
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	adds	r6, r2, #1
	adc	r7, r3, #0
	ldr	r3, [fp, #-36]
	str	r3, [sp]
	mov	r2, r6
	mov	r3, r7
	mov	r0, r4
	bl	CpmModelC$sim_gain_schedule_ack
	b	.L937
.L936:
	ldr	r0, [fp, #-36]
	bl	CpmModelC$free_receive_message
.L937:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L947+44
	mov	r1, #0
	strb	r1, [r2, r3]
	b	.L946
.L933:
	bl	RandomUniform
	ldr	r2, .L947+48
	ldr	r3, .L947+52
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L945
	ldr	r2, .L947+56
	ldr	r1, .L947+20
	mov	r0, #239
	bl	sim_log_debug
	ldr	r3, [fp, #-36]
	ldrb	r3, [r3, #42]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L941
	ldr	r3, [fp, #-36]
	ldr	r3, [r3, #44]
	mov	r0, r3
	bl	CpmModelC$Model$shouldAck
	mov	r3, r0
	cmp	r3, #0
	beq	.L941
	ldr	r2, .L947+40
	ldr	r1, .L947+8
	mov	r0, #240
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-36]
	ldr	r6, [r3]
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	adds	r4, r2, #1
	adc	r5, r3, #0
	ldr	r3, [fp, #-36]
	str	r3, [sp]
	mov	r2, r4
	mov	r3, r5
	mov	r0, r6
	bl	CpmModelC$sim_gain_schedule_ack
	b	.L943
.L941:
	ldr	r0, [fp, #-36]
	bl	CpmModelC$free_receive_message
	b	.L943
.L945:
	ldr	r0, [fp, #-36]
	bl	CpmModelC$free_receive_message
.L943:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L947+44
	mov	r1, #0
	strb	r1, [r2, r3]
	ldr	r2, .L947+60
	ldr	r1, .L947+20
	mov	r0, #241
	bl	sim_log_debug_clear
.L946:
	nop
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, fp, pc}
.L948:
	.align	2
.L947:
	.word	CpmModelC$outstandingReceptionHead
	.word	.LC88
	.word	.LC89
	.word	.LC90
	.word	.LC91
	.word	.LC92
	.word	.LC93
	.word	.LC94
	.word	.LC95
	.word	.LC96
	.word	.LC97
	.word	CpmModelC$receiving
	.word	-755914244
	.word	1062232653
	.word	.LC98
	.word	.LC99
	.size	CpmModelC$sim_gain_receive_handle, .-CpmModelC$sim_gain_receive_handle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$allocate_receive_event, %function
CpmModelC$allocate_receive_event:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	str	r2, [fp, #-24]
	mov	r0, #32
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	bl	sim_node
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r1, [fp, #-8]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-8]
	ldr	r2, .L951
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	ldr	r2, .L951+4
	str	r2, [r3, #24]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3, #13]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	strb	r2, [r3, #12]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-24]
	str	r2, [r3, #16]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L952:
	.align	2
.L951:
	.word	CpmModelC$sim_gain_receive_handle
	.word	sim_queue_cleanup_event
	.size	CpmModelC$allocate_receive_event, .-CpmModelC$allocate_receive_event
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$allocate_receive_message, %function
CpmModelC$allocate_receive_message:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	mov	r0, #56
	bl	malloc
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
	.size	CpmModelC$allocate_receive_message, .-CpmModelC$allocate_receive_message
	.global	__aeabi_d2iz
	.section	.rodata
	.align	2
.LC100:
	.ascii	"Lost packet from %i due to %i being off\012\000"
	.align	2
.LC101:
	.ascii	"Lost packet from %i to %i due to SNR being too low "
	.ascii	"(%i)\012\000"
	.align	2
.LC102:
	.ascii	"Lost packet from %i due to %i being mid-reception\012"
	.ascii	"\000"
	.align	2
.LC103:
	.ascii	"Going to lose packet from %i with signal %lf as am "
	.ascii	"receiving a packet from %i with signal %lf\012\000"
	.align	2
.LC104:
	.ascii	"Gain,SNRLoss\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$enqueue_receive_event, %function
CpmModelC$enqueue_receive_event:
	@ args = 24, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #64
	str	r0, [fp, #-40]
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	bl	CpmModelC$allocate_receive_message
	str	r0, [fp, #-28]
	ldr	r0, [fp, #-28]
	bl	CpmModelC$packetNoise
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-40]
	str	r2, [r3]
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-28]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r1, [fp, #-28]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [r1, #16]
	str	r3, [r1, #20]
	ldr	r1, [fp, #-28]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [r1, #24]
	str	r3, [r1, #28]
	ldr	r1, [fp, #-28]
	add	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [r1, #32]
	str	r3, [r1, #36]
	mov	r2, #0
	ldr	r3, .L963
	add	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L963
	bl	pow
	mov	r4, r0
	mov	r5, r1
	mov	r2, #0
	ldr	r3, .L963
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L963
	bl	pow
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	log
	mov	r2, #0
	ldr	r3, .L963
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L963+4
	ldr	r3, .L963+8
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	floor
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldr	r3, [fp, #-28]
	strb	r2, [r3, #40]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #4]
	str	r2, [r3, #44]
	ldr	r3, [fp, #-28]
	mov	r2, #0
	strb	r2, [r3, #41]
	ldr	r3, [fp, #-28]
	ldrb	r2, [fp, #8]
	strb	r2, [r3, #42]
	bl	sim_node
	mov	r3, r0
	mov	r0, r3
	bl	sim_mote_is_on
	mov	r3, r0
	cmp	r3, #0
	bne	.L956
	bl	sim_node
	mov	r3, r0
	str	r3, [sp]
	ldr	r3, [fp, #-40]
	ldr	r2, .L963+12
	ldr	r1, .L963+16
	mov	r0, #242
	bl	sim_log_debug
	ldr	r3, [fp, #-28]
	mov	r2, #1
	strb	r2, [r3, #41]
	b	.L957
.L956:
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	add	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	CpmModelC$shouldReceive
	mov	r3, r0
	cmp	r3, #0
	bne	.L958
	bl	sim_node
	mov	r4, r0
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	add	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [sp, #4]
	str	r4, [sp]
	ldr	r3, [fp, #-40]
	ldr	r2, .L963+20
	ldr	r1, .L963+24
	mov	r0, #243
	bl	sim_log_debug
	ldr	r3, [fp, #-28]
	mov	r2, #1
	strb	r2, [r3, #41]
	b	.L957
.L958:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L963+28
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L959
	bl	sim_node
	mov	r3, r0
	str	r3, [sp]
	ldr	r3, [fp, #-40]
	ldr	r2, .L963+32
	ldr	r1, .L963+24
	mov	r0, #244
	bl	sim_log_debug
	ldr	r3, [fp, #-28]
	mov	r2, #1
	strb	r2, [r3, #41]
	b	.L957
.L959:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L963+28
	mov	r1, #1
	strb	r1, [r2, r3]
.L957:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L963+36
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-32]
	b	.L960
.L962:
	ldr	r3, [fp, #-32]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-28]
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	CpmModelC$shouldReceive
	mov	r3, r0
	cmp	r3, #0
	bne	.L961
	ldr	r3, [fp, #-32]
	ldr	ip, [r3]
	ldr	r3, [fp, #-32]
	add	r3, r3, #24
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-28]
	add	r1, r1, #24
	ldmia	r1, {r0-r1}
	str	r0, [sp, #16]
	str	r1, [sp, #20]
	ldr	r1, [fp, #-40]
	str	r1, [sp, #8]
	stm	sp, {r2-r3}
	mov	r3, ip
	ldr	r2, .L963+40
	ldr	r1, .L963+44
	mov	r0, #245
	bl	sim_log_debug
	ldr	r3, [fp, #-32]
	mov	r2, #1
	strb	r2, [r3, #41]
.L961:
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #48]
	str	r3, [fp, #-32]
.L960:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L962
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L963+36
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-28]
	str	r2, [r3, #48]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L963+36
	ldr	r3, [fp, #-28]
	str	r3, [r1, r2, lsl #2]
	ldr	r2, [fp, #-28]
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	CpmModelC$allocate_receive_event
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	sim_queue_insert
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L964:
	.align	2
.L963:
	.word	1076101120
	.word	-1145744106
	.word	1073900465
	.word	.LC100
	.word	.LC89
	.word	.LC101
	.word	.LC92
	.word	CpmModelC$receiving
	.word	.LC102
	.word	CpmModelC$outstandingReceptionHead
	.word	.LC103
	.word	.LC104
	.size	CpmModelC$enqueue_receive_event, .-CpmModelC$enqueue_receive_event
	.section	.rodata
	.align	2
.LC105:
	.ascii	"Enqueing reception event for %i at %llu with power "
	.ascii	"%lf.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$sim_gain_put, %function
CpmModelC$sim_gain_put:
	@ args = 24, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r3, [fp, #-16]
	ldr	r2, .L966
	ldr	r1, .L966+4
	mov	r0, #246
	bl	sim_log_debug
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	add	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-8]
	bl	CpmModelC$enqueue_receive_event
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L967:
	.align	2
.L966:
	.word	.LC105
	.word	.LC89
	.size	CpmModelC$sim_gain_put, .-CpmModelC$sim_gain_put
	.section	.rodata
	.align	2
.LC106:
	.ascii	"Node %i transmitting to %i, finishes at %llu.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$Model$putOnAirTo, %function
CpmModelC$Model$putOnAirTo:
	@ args = 24, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #52
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	mov	r3, r2
	strb	r3, [fp, #-37]
	bl	sim_node
	mov	r3, r0
	mov	r0, r3
	bl	sim_gain_first
	str	r0, [fp, #-28]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L973
	ldrb	r3, [fp, #-37]
	strb	r3, [r1, r2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L973+4
	ldr	r3, [fp, #-36]
	str	r3, [r1, r2, lsl #2]
	bl	sim_node
	mov	r1, r0
	ldmib	fp, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldr	r3, [fp, #-32]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L973+8
	ldr	r1, .L973+12
	mov	r0, #247
	bl	sim_log_debug
	b	.L969
.L972:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L970
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	bne	.L970
	mov	r3, #1
	b	.L971
.L970:
	mov	r3, #0
.L971:
	and	r6, r3, #255
	bl	sim_node
	mov	r3, r0
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	sim_gain_value
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	bl	sim_node
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	sim_gain_value
	add	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	str	r4, [sp, #8]
	str	r5, [sp, #12]
	str	r6, [sp]
	ldmib	fp, {r2-r3}
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-24]
	bl	CpmModelC$sim_gain_put
	ldr	r0, [fp, #-28]
	bl	sim_gain_next
	str	r0, [fp, #-28]
.L969:
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	bne	.L972
	nop
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L974:
	.align	2
.L973:
	.word	CpmModelC$requestAck
	.word	CpmModelC$outgoing
	.word	.LC106
	.word	.LC89
	.size	CpmModelC$Model$putOnAirTo, .-CpmModelC$Model$putOnAirTo
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$GainRadioModel$putOnAirTo, %function
TossimPacketModelC$GainRadioModel$putOnAirTo:
	@ args = 24, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r3, r2
	strb	r3, [fp, #-13]
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	add	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldmib	fp, {r2-r3}
	stm	sp, {r2-r3}
	mov	r2, r1
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	CpmModelC$Model$putOnAirTo
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$GainRadioModel$putOnAirTo, .-TossimPacketModelC$GainRadioModel$putOnAirTo
	.section	.rodata
	.align	2
.LC107:
	.ascii	"PACKET: Signaling send done at %llu.\012\000"
	.align	2
.LC108:
	.ascii	"TossimPacketModelC\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$send_transmit_done, %function
TossimPacketModelC$send_transmit_done:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L977
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L977
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L977+4
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	stm	sp, {r2-r3}
	ldr	r2, .L977+8
	ldr	r1, .L977+12
	mov	r0, #223
	bl	sim_log_debug
	mov	r1, #0
	ldr	r0, [fp, #-8]
	bl	TossimPacketModelC$Packet$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L978:
	.align	2
.L977:
	.word	TossimPacketModelC$sending
	.word	TossimPacketModelC$transmitting
	.word	.LC107
	.word	.LC108
	.size	TossimPacketModelC$send_transmit_done, .-TossimPacketModelC$send_transmit_done
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$sim_packet_header_length, %function
TossimPacketModelC$sim_packet_header_length:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #7
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimPacketModelC$sim_packet_header_length, .-TossimPacketModelC$sim_packet_header_length
	.section	.rodata
	.align	2
.LC109:
	.ascii	"PACKET: Broadcasting packet to everyone.\012\000"
	.align	2
.LC110:
	.ascii	"PACKET: Send done at %llu.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$send_transmit, %function
TossimPacketModelC$send_transmit:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #60
	str	r0, [fp, #-56]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L983
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimPacketModelC$getMetadata
	str	r0, [fp, #-48]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L983+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r10, r3
	bl	TossimPacketModelC$sim_packet_header_length
	mov	r3, r0
	add	r3, r10, r3
	lsl	r3, r3, #3
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	bl	sim_csma_bits_per_symbol
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	bl	sim_csma_preamble_length
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	adds	ip, r0, r2
	str	ip, [fp, #-68]
	adc	r3, r1, r3
	str	r3, [fp, #-64]
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	cmp	r3, #0
	beq	.L982
	bl	sim_csma_ack_time
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	adds	r8, r0, r2
	adc	r9, r1, r3
	str	r8, [fp, #-44]
	str	r9, [fp, #-40]
.L982:
	bl	sim_ticks_per_sec
	mov	r8, r0
	mov	r9, r1
	bl	sim_csma_symbols_per_sec
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	mul	r2, r0, r3
	ldr	r3, [fp, #-44]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-44]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-56]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	adds	r4, r0, r2
	adc	r5, r1, r3
	ldr	r3, [fp, #-56]
	stm	r3, {r4-r5}
	ldr	r3, [fp, #-56]
	ldr	r2, .L983+8
	str	r2, [r3, #20]
	ldr	r2, .L983+12
	ldr	r1, .L983+16
	mov	r0, #221
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L983+20
	ldr	r4, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L983
	ldr	r5, [r2, r3, lsl #2]
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	ip, r3
	ldr	r3, [fp, #-56]
	ldmia	r3, {r2-r3}
	mov	r0, #0
	mov	r1, #0
	str	r0, [sp, #16]
	str	r1, [sp, #20]
	mov	r0, #0
	mov	r1, #0
	str	r0, [sp, #8]
	str	r1, [sp, #12]
	stm	sp, {r2-r3}
	mov	r2, ip
	mov	r1, r5
	mov	r0, r4
	bl	TossimPacketModelC$GainRadioModel$putOnAirTo
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	mov	r1, #0
	mov	r0, r3
	bl	__nesc_hton_uint8
	bl	sim_csma_rxtx_delay
	mov	r3, r0
	mov	r4, r3
	asr	r5, r4, #31
	bl	sim_ticks_per_sec
	mov	r8, r0
	mov	r9, r1
	bl	sim_csma_symbols_per_sec
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mul	r2, r0, r5
	mul	r3, r4, r1
	add	ip, r2, r3
	umull	r2, r3, r4, r0
	add	r1, ip, r3
	mov	r3, r1
	ldr	r1, [fp, #-56]
	ldmia	r1, {r0-r1}
	adds	r6, r2, r0
	adc	r7, r3, r1
	ldr	r3, [fp, #-56]
	stm	r3, {r6-r7}
	ldr	r3, [fp, #-56]
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, .L983+24
	ldr	r1, .L983+16
	mov	r0, #222
	bl	sim_log_debug
	ldr	r0, [fp, #-56]
	bl	sim_queue_insert
	nop
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L984:
	.align	2
.L983:
	.word	TossimPacketModelC$sending
	.word	TossimPacketModelC$sendingLength
	.word	TossimPacketModelC$send_transmit_done
	.word	.LC109
	.word	.LC108
	.word	TossimPacketModelC$destNode
	.word	.LC110
	.size	TossimPacketModelC$send_transmit, .-TossimPacketModelC$send_transmit
	.section	.rodata
	.align	2
.LC111:
	.ascii	"Checking clear channel @ %s: %f <= %f \012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$Model$clearChannel, %function
CpmModelC$Model$clearChannel:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #20
	bl	sim_time_string
	mov	r6, r0
	mov	r0, #0
	bl	CpmModelC$packetNoise
	mov	r4, r0
	mov	r5, r1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L988
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	stm	sp, {r4-r5}
	mov	r3, r6
	ldr	r2, .L988+4
	ldr	r1, .L988+8
	mov	r0, #229
	bl	sim_log_debug
	mov	r0, #0
	bl	CpmModelC$packetNoise
	mov	r4, r0
	mov	r5, r1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L988
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L986
	mov	r3, #0
	mov	r6, r3
.L986:
	and	r3, r6, #255
	mov	r0, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L989:
	.align	2
.L988:
	.word	CpmModelC$clearThreshold
	.word	.LC111
	.word	.LC89
	.size	CpmModelC$Model$clearChannel, .-CpmModelC$Model$clearChannel
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$GainRadioModel$clearChannel, %function
TossimPacketModelC$GainRadioModel$clearChannel:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	CpmModelC$Model$clearChannel
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$GainRadioModel$clearChannel, .-TossimPacketModelC$GainRadioModel$clearChannel
	.global	__aeabi_i2d
	.global	__aeabi_ui2d
	.global	__aeabi_l2d
	.global	__aeabi_d2lz
	.section	.rodata
	.align	2
.LC112:
	.ascii	"PACKET: Failed to send packet due to busy channel.\012"
	.ascii	"\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$send_backoff, %function
TossimPacketModelC$send_backoff:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #44
	str	r0, [fp, #-72]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1000
	strb	r1, [r2, r3]
	bl	TossimPacketModelC$GainRadioModel$clearChannel
	mov	r3, r0
	cmp	r3, #0
	beq	.L993
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1000+4
	strb	r1, [r2, r3]
	b	.L994
.L993:
	bl	sim_csma_min_free_samples
	mov	r10, r0
	bl	sim_node
	mov	r3, r0
	and	r1, r10, #255
	ldr	r2, .L1000+4
	strb	r1, [r2, r3]
.L994:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L995
	bl	sim_csma_rxtx_delay
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	bl	sim_ticks_per_sec
	mov	r4, r0
	mov	r5, r1
	bl	sim_csma_symbols_per_sec
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	mul	r2, r0, r3
	ldr	r3, [fp, #-44]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-44]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-72]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	adds	r8, r0, r2
	adc	r9, r1, r3
	ldr	r3, [fp, #-72]
	stm	r3, {r8-r9}
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000+8
	mov	r1, #1
	strb	r1, [r2, r3]
	ldr	r3, [fp, #-72]
	ldr	r2, .L1000+12
	str	r2, [r3, #20]
	ldr	r0, [fp, #-72]
	bl	sim_queue_insert
	b	.L999
.L995:
	bl	sim_csma_max_iterations
	mov	r3, r0
	cmp	r3, #0
	beq	.L997
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r8, r3
	bl	sim_csma_max_iterations
	mov	r3, r0
	cmp	r8, r3
	bgt	.L998
.L997:
	bl	sim_random
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	bl	sim_csma_high
	mov	r8, r0
	bl	sim_csma_low
	mov	r3, r0
	sub	r3, r8, r3
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	bl	sim_csma_exponent_base
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r8, r0
	mov	r9, r1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	__aeabi_ui2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	pow
	mov	r8, r0
	mov	r9, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_l2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2lz
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	bl	sim_csma_init_low
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	adds	r6, r0, r2
	adc	r7, r1, r3
	str	r6, [fp, #-60]
	str	r7, [fp, #-56]
	bl	sim_ticks_per_sec
	mov	r6, r0
	mov	r7, r1
	bl	sim_csma_symbols_per_sec
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-56]
	mul	r2, r0, r3
	ldr	r3, [fp, #-60]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-60]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #-72]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	adds	r4, r0, r2
	adc	r5, r1, r3
	ldr	r3, [fp, #-72]
	stm	r3, {r4-r5}
	ldr	r0, [fp, #-72]
	bl	sim_queue_insert
	nop
	b	.L999
.L998:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000+16
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-64]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1000+16
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	ldr	r2, .L1000+20
	ldr	r1, .L1000+24
	mov	r0, #220
	bl	sim_log_debug
	mov	r1, #5
	ldr	r0, [fp, #-64]
	bl	TossimPacketModelC$Packet$sendDone
.L999:
	nop
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L1001:
	.align	2
.L1000:
	.word	TossimPacketModelC$backoffCount
	.word	TossimPacketModelC$neededFreeSamples
	.word	TossimPacketModelC$transmitting
	.word	TossimPacketModelC$send_transmit
	.word	TossimPacketModelC$sending
	.word	.LC112
	.word	.LC108
	.size	TossimPacketModelC$send_backoff, .-TossimPacketModelC$send_backoff
	.section	.rodata
	.align	2
.LC113:
	.ascii	"Starting CMSA with %lli.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$start_csma, %function
TossimPacketModelC$start_csma:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #28
	bl	sim_random
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	bl	sim_csma_init_high
	mov	r8, r0
	bl	sim_csma_init_low
	mov	r3, r0
	sub	r3, r8, r3
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	bl	sim_csma_init_low
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	adds	r6, r0, r2
	adc	r7, r1, r3
	str	r6, [fp, #-44]
	str	r7, [fp, #-40]
	bl	sim_ticks_per_sec
	mov	r6, r0
	mov	r7, r1
	bl	sim_csma_symbols_per_sec
	mov	r3, r0
	mov	r2, r3
	asr	r3, r2, #31
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	mul	r2, r0, r3
	ldr	r3, [fp, #-44]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-44]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, .L1003
	ldr	r1, .L1003+4
	mov	r0, #219
	bl	sim_log_debug
	bl	sim_time
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	adds	r4, r2, r0
	adc	r5, r3, r1
	str	r4, [fp, #-36]
	str	r5, [fp, #-32]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1003+8
	lsl	r3, r4, #5
	add	r3, r1, r3
	str	r2, [r3, #8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1003+8
	lsl	r3, r3, #5
	add	r1, r2, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1003+8
	lsl	r3, r3, #5
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #12]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1003+8
	lsl	r3, r3, #5
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3, #13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1003+8
	lsl	r3, r3, #5
	add	r3, r2, r3
	ldr	r2, .L1003+12
	str	r2, [r3, #20]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1003+8
	lsl	r3, r3, #5
	add	r3, r2, r3
	ldr	r2, .L1003+16
	str	r2, [r3, #24]
	bl	sim_node
	mov	r3, r0
	lsl	r3, r3, #5
	ldr	r2, .L1003+8
	add	r3, r3, r2
	mov	r0, r3
	bl	sim_queue_insert
	nop
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, fp, pc}
.L1004:
	.align	2
.L1003:
	.word	.LC113
	.word	.LC108
	.word	TossimPacketModelC$sendEvent
	.word	TossimPacketModelC$send_backoff
	.word	sim_queue_cleanup_none
	.size	TossimPacketModelC$start_csma, .-TossimPacketModelC$start_csma
	.section	.rodata
	.align	2
.LC114:
	.ascii	"TossimPacketModelC: Send.send() called, but not ini"
	.ascii	"tialized!\012\000"
	.align	2
.LC115:
	.ascii	"TossimPacketModelC: Send.send() called, but not run"
	.ascii	"ning!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Packet$send, %function
TossimPacketModelC$Packet$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r3, r2
	strb	r3, [fp, #-21]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1010
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1006
	ldr	r2, .L1010+4
	ldr	r1, .L1010+8
	mov	r0, #217
	bl	sim_log_error
	mov	r3, #4
	b	.L1007
.L1006:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1010+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1008
	ldr	r2, .L1010+16
	ldr	r1, .L1010+8
	mov	r0, #218
	bl	sim_log_error
	mov	r3, #4
	b	.L1007
.L1008:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1010+20
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L1009
	mov	r3, #5
	b	.L1007
.L1009:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1010+24
	ldrb	r3, [fp, #-21]
	strb	r3, [r1, r2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1010+20
	ldr	r3, [fp, #-20]
	str	r3, [r1, r2, lsl #2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1010+28
	ldr	r3, [fp, #-16]
	str	r3, [r1, r2, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1010+32
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_csma_min_free_samples
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L1010+36
	strb	r1, [r2, r3]
	bl	TossimPacketModelC$start_csma
	mov	r3, #0
.L1007:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1011:
	.align	2
.L1010:
	.word	TossimPacketModelC$initialized
	.word	.LC114
	.word	.LC108
	.word	TossimPacketModelC$running
	.word	.LC115
	.word	TossimPacketModelC$sending
	.word	TossimPacketModelC$sendingLength
	.word	TossimPacketModelC$destNode
	.word	TossimPacketModelC$backoffCount
	.word	TossimPacketModelC$neededFreeSamples
	.size	TossimPacketModelC$Packet$send, .-TossimPacketModelC$Packet$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Model$send, %function
TossimActiveMessageC$Model$send:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r3, r2
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$Packet$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$Model$send, .-TossimActiveMessageC$Model$send
	.global	__aeabi_d2f
	.global	__aeabi_f2d
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$timeInMs, %function
CpmModelC$timeInMs:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	bl	sim_time
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	adr	r1, .L1020
	ldmia	r1, {r0-r1}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L1015
	bl	sim_ticks_per_sec
	adr	r3, .L1020
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	b	.L1016
.L1015:
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	adr	r1, .L1020
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-24]
	mul	r2, r0, r3
	ldr	r3, [fp, #-28]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-28]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
.L1016:
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	ldr	r2, .L1020+8
	mov	r3, #0
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r3, r2
	str	r3, [fp, #-44]
	ldr	r1, [fp, #-44]
	ldr	r3, .L1020+12
	smull	r2, r3, r1, r3
	asr	r2, r3, #2
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	sub	r2, r1, r3
	cmp	r2, #4
	ble	.L1017
	ldr	r1, [fp, #-44]
	ldr	r3, .L1020+12
	smull	r2, r3, r1, r3
	asr	r2, r3, #2
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	sub	r2, r1, r3
	rsb	r3, r2, #10
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-44]
	b	.L1018
.L1017:
	ldr	r1, [fp, #-44]
	ldr	r3, .L1020+12
	smull	r2, r3, r1, r3
	asr	r2, r3, #2
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	sub	r2, r1, r3
	ldr	r3, [fp, #-44]
	sub	r3, r3, r2
	str	r3, [fp, #-44]
.L1018:
	ldr	r0, [fp, #-44]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L1020+16
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r3, r2
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-40]
	ldr	r2, .L1020+20
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-36]
	ldr	r2, .L1020+20
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r2, [fp, #-40]
	ldr	r3, .L1020+20
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #5
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #2
	sub	r3, r2, r3
	str	r3, [fp, #-40]
	ldr	r2, [fp, #-36]
	ldr	r3, .L1020+20
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #5
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #2
	sub	r3, r2, r3
	str	r3, [fp, #-36]
	ldr	r2, [fp, #-32]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r2, r3, #4
	sub	r2, r2, r3
	lsl	r3, r2, #4
	mov	r2, r3
	mov	r1, r2
	ldr	r2, [fp, #-36]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r2, r1, r3
	ldr	r3, [fp, #-40]
	add	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1021:
	.align	3
.L1020:
	.word	1000000000
	.word	0
	.word	10000
	.word	1717986919
	.word	1079574528
	.word	-2004318071
	.size	CpmModelC$timeInMs, .-CpmModelC$timeInMs
	.section	.rodata
	.align	2
.LC116:
	.ascii	"SNR is %lf, PRR is %lf\012\000"
	.align	2
.LC117:
	.ascii	"CpmModelC,SNR\000"
	.global	__aeabi_dcmpgt
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$prr_estimate_from_snr, %function
CpmModelC$prr_estimate_from_snr:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #72
	str	r0, [fp, #-60]
	str	r1, [fp, #-56]
	ldr	r2, .L1031
	ldr	r3, .L1031+4
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r2, .L1031+8
	ldr	r3, .L1031+12
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L1031+16
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L1031+16
	bl	pow
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r1, r2
	str	r1, [fp, #-20]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-16]
	mov	r2, #0
	mov	r3, #1073741824
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	erfc
	mov	r2, #0
	ldr	r3, .L1031+20
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L1031+24
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L1031+28
	bl	pow
	str	r0, [fp, #-52]
	str	r1, [fp, #-48]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, .L1031+32
	ldr	r1, .L1031+36
	mov	r0, #230
	bl	sim_log_debug
	mov	r2, #0
	ldr	r3, .L1031+24
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1030
	mov	r2, #0
	ldr	r3, .L1031+24
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	b	.L1025
.L1030:
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1025
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
.L1025:
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1032:
	.align	2
.L1031:
	.word	-123695058
	.word	1073079857
	.word	-1965377035
	.word	1072522749
	.word	1076101120
	.word	1071644672
	.word	1072693248
	.word	1078394880
	.word	.LC116
	.word	.LC117
	.size	CpmModelC$prr_estimate_from_snr, .-CpmModelC$prr_estimate_from_snr
	.section	.rodata
	.align	2
.LC118:
	.ascii	"Received packet addressed to me so ack it\012\000"
	.align	2
.LC119:
	.ascii	"Acks\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Model$shouldAck, %function
TossimActiveMessageC$Model$shouldAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	TossimActiveMessageC$getHeader
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r4, r3
	bl	TossimActiveMessageC$amAddress
	mov	r3, r0
	cmp	r4, r3
	bne	.L1034
	ldr	r2, .L1036
	ldr	r1, .L1036+4
	mov	r0, #108
	bl	sim_log_debug
	mov	r3, #1
	b	.L1035
.L1034:
	mov	r3, #0
.L1035:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1037:
	.align	2
.L1036:
	.word	.LC118
	.word	.LC119
	.size	TossimActiveMessageC$Model$shouldAck, .-TossimActiveMessageC$Model$shouldAck
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Packet$shouldAck, %function
TossimPacketModelC$Packet$shouldAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$Model$shouldAck
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$Packet$shouldAck, .-TossimPacketModelC$Packet$shouldAck
	.section	.rodata
	.align	2
.LC120:
	.ascii	"Requested ack for 0x%x, but outgoing packet is 0x%x"
	.ascii	".\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$GainRadioModel$acked, %function
TossimPacketModelC$GainRadioModel$acked:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1043
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1042
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1043+4
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimPacketModelC$getMetadata
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r1, #1
	mov	r0, r3
	bl	__nesc_hton_uint8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1043+4
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	beq	.L1042
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1043+8
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1043+4
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L1043+12
	ldr	r1, .L1043+16
	mov	r0, #224
	bl	sim_log_debug
.L1042:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1044:
	.align	2
.L1043:
	.word	TossimPacketModelC$running
	.word	TossimPacketModelC$sending
	.word	TossimPacketModelC$error
	.word	.LC120
	.word	.LC108
	.size	TossimPacketModelC$GainRadioModel$acked, .-TossimPacketModelC$GainRadioModel$acked
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$Model$acked, %function
CpmModelC$Model$acked:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TossimPacketModelC$GainRadioModel$acked
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	CpmModelC$Model$acked, .-CpmModelC$Model$acked
	.section	.rodata
	.align	2
.LC121:
	.ascii	"SNR is %lf, ARR is %lf\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$arr_estimate_from_snr, %function
CpmModelC$arr_estimate_from_snr:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #72
	str	r0, [fp, #-60]
	str	r1, [fp, #-56]
	ldr	r2, .L1055
	ldr	r3, .L1055+4
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r2, .L1055+8
	ldr	r3, .L1055+12
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L1055+16
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L1055+16
	bl	pow
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r1, r2
	str	r1, [fp, #-20]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-16]
	mov	r2, #0
	mov	r3, #1073741824
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	erfc
	mov	r2, #0
	ldr	r3, .L1055+20
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L1055+24
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L1055+28
	bl	pow
	str	r0, [fp, #-52]
	str	r1, [fp, #-48]
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, .L1055+32
	ldr	r1, .L1055+36
	mov	r0, #227
	bl	sim_log_debug
	mov	r2, #0
	ldr	r3, .L1055+24
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1054
	mov	r2, #0
	ldr	r3, .L1055+24
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	b	.L1049
.L1054:
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1049
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
.L1049:
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1056:
	.align	2
.L1055:
	.word	-123695058
	.word	1073079857
	.word	-1965377035
	.word	1072522749
	.word	1076101120
	.word	1071644672
	.word	1072693248
	.word	1078394880
	.word	.LC121
	.word	.LC92
	.size	CpmModelC$arr_estimate_from_snr, .-CpmModelC$arr_estimate_from_snr
	.global	__aeabi_dcmpeq
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$shouldAckReceive, %function
CpmModelC$shouldAckReceive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	CpmModelC$arr_estimate_from_snr
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	bl	RandomUniform
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L1058
	mov	r2, #0
	ldr	r3, .L1068
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L1058
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1067
	mov	r2, #0
	ldr	r3, .L1068
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	b	.L1058
.L1067:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
.L1058:
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1069:
	.align	2
.L1068:
	.word	1072693248
	.size	CpmModelC$shouldAckReceive, .-CpmModelC$shouldAckReceive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$sim_gain_ack_handle, %function
CpmModelC$sim_gain_ack_handle:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1072
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1071
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1072+4
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L1071
	bl	sim_node
	mov	r3, r0
	mov	r0, r3
	bl	sim_mote_is_on
	mov	r3, r0
	cmp	r3, #0
	beq	.L1071
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-32]
	add	r3, r3, #32
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r0, [fp, #-32]
	bl	CpmModelC$packetNoise
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	CpmModelC$shouldAckReceive
	mov	r3, r0
	cmp	r3, #0
	beq	.L1071
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1072+4
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	CpmModelC$Model$acked
.L1071:
	ldr	r3, [fp, #-40]
	ldr	r3, [r3, #16]
	mov	r0, r3
	bl	CpmModelC$free_receive_message
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1073:
	.align	2
.L1072:
	.word	CpmModelC$requestAck
	.word	CpmModelC$outgoing
	.size	CpmModelC$sim_gain_ack_handle, .-CpmModelC$sim_gain_ack_handle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PathEdgeList$end, %function
SourceShortestPathP$0$PathEdgeList$end:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1079
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #20
	beq	.L1075
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1079
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L1076
.L1075:
	mov	r3, #1
	b	.L1077
.L1076:
	mov	r3, #0
.L1077:
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1080:
	.align	2
.L1079:
	.word	SourceShortestPathP$0$spt
	.size	SourceShortestPathP$0$PathEdgeList$end, .-SourceShortestPathP$0$PathEdgeList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$startTimer, %function
DataTimerP$0$startTimer:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1082
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldrh	r3, [r3]
	mov	r0, r3
	bl	DataTimerP$0$Timer$startOneShot
	nop
	pop	{fp, pc}
.L1083:
	.align	2
.L1082:
	.word	DataTimerP$0$delay
	.size	DataTimerP$0$startTimer, .-DataTimerP$0$startTimer
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$DataTimer$stop, %function
DataTimerP$0$DataTimer$stop:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L1085
.L1089:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, .L1090
	lsl	r2, r2, #3
	add	r3, r2, r3
	lsl	r3, r3, #1
	add	r3, r1, r3
	ldrh	r3, [r3]
	ldrh	r2, [fp, #-14]
	cmp	r2, r3
	bne	.L1086
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DataTimerP$0$removeTimer
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1087
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1090+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1087
	bl	DataTimerP$0$adjustTimer
	bl	DataTimerP$0$startTimer
.L1087:
	mov	r3, #0
	b	.L1088
.L1086:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L1085:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1090+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L1089
	mov	r3, #6
.L1088:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1091:
	.align	2
.L1090:
	.word	DataTimerP$0$data
	.word	DataTimerP$0$size
	.size	DataTimerP$0$DataTimer$stop, .-DataTimerP$0$DataTimer$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutTimer$stop, %function
DsrControlP$0$RouteRequestOutTimer$stop:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	DataTimerP$0$DataTimer$stop
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequestOutTimer$stop, .-DsrControlP$0$RouteRequestOutTimer$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutCache$lookup, %function
DsrControlP$0$RouteRequestOutCache$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$2$DataCache$lookup
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequestOutCache$lookup, .-DsrControlP$0$RouteRequestOutCache$lookup
	.section	.rodata
	.align	2
.LC122:
	.ascii	"DSR: Route request out timer for %u reset\012\000"
	.align	2
.LC123:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$resetRouteRequestOutCache, %function
DsrControlP$0$resetRouteRequestOutCache:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	strh	r3, [fp, #-22]	@ movhi
	ldr	r3, .L1100
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldrh	r3, [fp, #-22]	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	mvn	r3, #0
	strb	r3, [fp, #-14]
	mov	r3, #0
	strb	r3, [fp, #-13]
	sub	r3, fp, #16
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutCache$lookup
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L1099
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1099
	ldr	r3, [fp, #-12]
	mov	r2, #0
	strb	r2, [r3, #3]
	ldrh	r3, [fp, #-22]
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutTimer$stop
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1100+4
	ldr	r1, .L1100+8
	ldr	r0, .L1100+12
	bl	sim_log_debug
.L1099:
	nop
	ldr	r3, .L1100
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1098
	bl	__stack_chk_fail
.L1098:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1101:
	.align	2
.L1100:
	.word	.LC123
	.word	.LC122
	.word	.LC6
	.word	345
	.size	DsrControlP$0$resetRouteRequestOutCache, .-DsrControlP$0$resetRouteRequestOutCache
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutEqual$test, %function
DsrControlP$0$RouteRequestOutEqual$test:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-8]
	ldrh	r2, [r3]
	ldr	r3, [fp, #-12]
	ldrh	r3, [r3]
	cmp	r2, r3
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$RouteRequestOutEqual$test, .-DsrControlP$0$RouteRequestOutEqual$test
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$Equal$test, %function
LruDataCacheP$2$Equal$test:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	DsrControlP$0$RouteRequestOutEqual$test
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	LruDataCacheP$2$Equal$test, .-LruDataCacheP$2$Equal$test
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$Timer$getNow, %function
VirtualizeTimerC$0$Timer$getNow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	VirtualizeTimerC$0$TimerFrom$getNow
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$Timer$getNow, .-VirtualizeTimerC$0$Timer$getNow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$Timer$getNow, %function
DataTimerP$0$Timer$getNow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #1
	bl	VirtualizeTimerC$0$Timer$getNow
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DataTimerP$0$Timer$getNow, .-DataTimerP$0$Timer$getNow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$Timer$stop, %function
VirtualizeTimerC$0$Timer$stop:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1111
	mov	r2, r3
	lsl	r2, r2, #1
	add	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r0, r3
	add	r2, r3, #8
	ldrb	r3, [r2]
	bic	r3, r3, #2
	strb	r3, [r2]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1112:
	.align	2
.L1111:
	.word	VirtualizeTimerC$0$m_timers
	.size	VirtualizeTimerC$0$Timer$stop, .-VirtualizeTimerC$0$Timer$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$Timer$stop, %function
DataTimerP$0$Timer$stop:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	mov	r0, #1
	bl	VirtualizeTimerC$0$Timer$stop
	nop
	pop	{fp, pc}
	.size	DataTimerP$0$Timer$stop, .-DataTimerP$0$Timer$stop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvList$end, %function
TlvP$TlvList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, r2
	movcs	r3, #1
	movcc	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvList$end, .-TlvP$TlvList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvSingle$length, %function
TlvP$TlvSingle$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r2, #255
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L1117
	mov	r3, #0
	b	.L1118
.L1117:
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvMultiple$length
	mov	r3, r0
.L1118:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvSingle$length, .-TlvP$TlvSingle$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSingle$length, %function
TlvPacketP$0$TlvSingle$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvSingle$length
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSingle$length, .-TlvPacketP$0$TlvSingle$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$tlvAt, %function
TlvP$tlvAt:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	add	r3, r3, #1
	ldr	r2, [fp, #-8]
	add	r3, r2, r3
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TlvP$tlvAt, .-TlvP$tlvAt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Packet$getPayload, %function
TossimActiveMessageC$Packet$getPayload:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	cmp	r3, #36
	bhi	.L1124
	ldr	r3, [fp, #-8]
	add	r3, r3, #7
	b	.L1125
.L1124:
	mov	r3, #0
.L1125:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	TossimActiveMessageC$Packet$getPayload, .-TossimActiveMessageC$Packet$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$SubPacket$getPayload, %function
TlvPacketP$0$SubPacket$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$Packet$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$SubPacket$getPayload, .-TlvPacketP$0$SubPacket$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvBlock$length, %function
TlvP$TlvBlock$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvBlock$length, .-TlvP$TlvBlock$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvBlock$length, %function
TlvPacketP$0$TlvBlock$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TlvP$TlvBlock$length
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvBlock$length, .-TlvPacketP$0$TlvBlock$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$Packet$getPayload, %function
TlvPacketP$0$Packet$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L1133
	mov	r3, #0
	b	.L1134
.L1133:
	ldr	r0, [fp, #-8]
	bl	TlvPacketP$0$TlvBlock$length
	mov	r3, r0
	strb	r3, [fp, #-9]
	ldrb	r2, [fp, #-17]
	ldrb	r3, [fp, #-9]
	add	r3, r2, r3
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L1135
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	ldr	r2, [fp, #-8]
	add	r3, r2, r3
	str	r3, [fp, #-8]
.L1135:
	ldr	r3, [fp, #-8]
.L1134:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$Packet$getPayload, .-TlvPacketP$0$Packet$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$remove, %function
LruDataCacheP$2$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #20
	mov	r3, r0
	strb	r3, [fp, #-29]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1144
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L1143
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1139
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1144+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r3, #1
	rsbs	r2, r3, #0
	and	r4, r3, #7
	and	r3, r2, #7
	rsbpl	r4, r3, #0
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L1144+4
	strb	r1, [r2, r3]
	b	.L1140
.L1139:
	ldrb	r3, [fp, #-29]
	strb	r3, [fp, #-21]
	b	.L1141
.L1142:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1144+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L1144+8
	add	r5, r3, r2
	bl	sim_node
	mov	r6, r0
	ldrb	r4, [fp, #-21]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1144+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	add	r3, r3, #1
	rsbs	r2, r3, #0
	and	r3, r3, #7
	and	r2, r2, #7
	rsbpl	r3, r2, #0
	lsl	r2, r6, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L1144+8
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, r3
	mov	r0, r5
	bl	memcpy
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-21]
.L1141:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1144
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L1142
.L1140:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1144
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1144
	strb	r1, [r2, r3]
	b	.L1136
.L1143:
	nop
.L1136:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L1145:
	.align	2
.L1144:
	.word	LruDataCacheP$2$count
	.word	LruDataCacheP$2$first
	.word	LruDataCacheP$2$cache
	.size	LruDataCacheP$2$remove, .-LruDataCacheP$2$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutCache$evicted, %function
DsrControlP$0$RouteRequestOutCache$evicted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$RouteRequestOutCache$evicted, .-DsrControlP$0$RouteRequestOutCache$evicted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$DataCache$evicted, %function
LruDataCacheP$2$DataCache$evicted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	DsrControlP$0$RouteRequestOutCache$evicted
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	LruDataCacheP$2$DataCache$evicted, .-LruDataCacheP$2$DataCache$evicted
	.global	__aeabi_uidivmod
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$DataCache$insert, %function
LruDataCacheP$2$DataCache$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	LruDataCacheP$2$lookup
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1149
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L1154+8
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	memcpy
	b	.L1150
.L1149:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #8
	bne	.L1150
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	lsl	r3, r4, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L1154+8
	add	r3, r3, r2
	mov	r0, r3
	bl	LruDataCacheP$2$DataCache$evicted
.L1150:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #8
	beq	.L1151
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1152
.L1151:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_uidivmod
	mov	r3, r1
	and	r3, r3, #255
	mov	r0, r3
	bl	LruDataCacheP$2$remove
.L1152:
	bl	sim_node
	mov	r5, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154+4
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r5, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L1154+8
	add	r3, r3, r2
	mov	r2, #4
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	memcpy
	bl	sim_node
	mov	r5, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1154+4
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r2, r0
	ldr	r3, .L1154
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	add	r1, r3, #1
	and	r0, r1, #255
	ldr	r1, .L1154
	strb	r0, [r1, r2]
	add	r3, r4, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r5, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L1154+8
	add	r3, r3, r2
	str	r3, [fp, #-24]
	bl	LruDataCacheP$2$printCache
	ldr	r3, [fp, #-24]
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1155:
	.align	2
.L1154:
	.word	LruDataCacheP$2$count
	.word	LruDataCacheP$2$first
	.word	LruDataCacheP$2$cache
	.size	LruDataCacheP$2$DataCache$insert, .-LruDataCacheP$2$DataCache$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutCache$insert, %function
DsrControlP$0$RouteRequestOutCache$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$2$DataCache$insert
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequestOutCache$insert, .-DsrControlP$0$RouteRequestOutCache$insert
	.section	.rodata
	.align	2
.LC124:
	.ascii	"DT: Added new delay of %u at position %u\012\000"
	.align	2
.LC125:
	.ascii	"DataTimerP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$DataTimer$start, %function
DataTimerP$0$DataTimer$start:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #24
	mov	r3, r0
	mov	r2, r1
	strh	r3, [fp, #-22]	@ movhi
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-24]	@ movhi
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1167
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #8
	bne	.L1159
	mov	r3, #1
	b	.L1160
.L1159:
	bl	DataTimerP$0$adjustTimer
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1167
	ldrb	r3, [r2, r3]
	strb	r3, [fp, #-13]
	b	.L1161
.L1165:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	sub	r3, r3, #1
	ldr	r1, .L1167+4
	lsl	r2, r2, #3
	add	r3, r2, r3
	lsl	r3, r3, #1
	add	r3, r1, r3
	ldrh	r3, [r3]
	ldrh	r2, [fp, #-24]
	cmp	r2, r3
	bcs	.L1166
	bl	sim_node
	mov	r5, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	sub	r4, r3, #1
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L1167+8
	lsl	r2, r5, #3
	add	r2, r2, r4
	lsl	r2, r2, #1
	add	r2, r0, r2
	ldrh	r2, [r2]
	ldr	r0, .L1167+8
	lsl	r1, r1, #3
	add	r3, r1, r3
	lsl	r3, r3, #1
	add	r3, r0, r3
	strh	r2, [r3]	@ movhi
	bl	sim_node
	mov	r5, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	sub	r4, r3, #1
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L1167+4
	lsl	r2, r5, #3
	add	r2, r2, r4
	lsl	r2, r2, #1
	add	r2, r0, r2
	ldrh	r2, [r2]
	ldr	r0, .L1167+4
	lsl	r1, r1, #3
	add	r3, r1, r3
	lsl	r3, r3, #1
	add	r3, r0, r3
	strh	r2, [r3]	@ movhi
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	sub	r3, r3, #1
	strb	r3, [fp, #-13]
.L1161:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1165
	b	.L1164
.L1166:
	nop
.L1164:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L1167+8
	lsl	r2, r2, #3
	add	r3, r2, r3
	lsl	r3, r3, #1
	add	r3, r1, r3
	ldrh	r2, [fp, #-22]	@ movhi
	strh	r2, [r3]	@ movhi
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L1167+4
	lsl	r2, r2, #3
	add	r3, r2, r3
	lsl	r3, r3, #1
	add	r3, r1, r3
	ldrh	r2, [fp, #-24]	@ movhi
	strh	r2, [r3]	@ movhi
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1167
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1167
	strb	r1, [r2, r3]
	ldrh	r2, [fp, #-24]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1167+12
	ldr	r1, .L1167+16
	ldr	r0, .L1167+20
	bl	sim_log_debug
	bl	DataTimerP$0$startTimer
	mov	r3, #0
.L1160:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1168:
	.align	2
.L1167:
	.word	DataTimerP$0$size
	.word	DataTimerP$0$delay
	.word	DataTimerP$0$data
	.word	.LC124
	.word	.LC125
	.word	390
	.size	DataTimerP$0$DataTimer$start, .-DataTimerP$0$DataTimer$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutTimer$start, %function
DsrControlP$0$RouteRequestOutTimer$start:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	ldrh	r2, [fp, #-16]
	ldrh	r3, [fp, #-14]
	mov	r1, r2
	mov	r0, r3
	bl	DataTimerP$0$DataTimer$start
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequestOutTimer$start, .-DsrControlP$0$RouteRequestOutTimer$start
	.section	.rodata
	.align	2
.LC126:
	.ascii	"DSR: Route request out timer for %u set to %u ms\012"
	.ascii	"\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$updateRouteRequestOutTimer, %function
DsrControlP$0$updateRouteRequestOutTimer:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	mov	r2, r1
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r3, [fp, #-15]	@ zero_extendqisi2
	mov	r2, #512
	lsl	r3, r2, r3
	cmp	r3, #10240
	ble	.L1172
	mov	r3, #10240
	strh	r3, [fp, #-6]	@ movhi
	b	.L1173
.L1172:
	ldrb	r3, [fp, #-15]	@ zero_extendqisi2
	mov	r2, #512
	lsl	r3, r2, r3
	strh	r3, [fp, #-6]	@ movhi
.L1173:
	ldrh	r2, [fp, #-6]
	ldrh	r3, [fp, #-14]
	mov	r1, r2
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutTimer$start
	ldrh	r2, [fp, #-14]
	ldrh	r3, [fp, #-6]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1174
	ldr	r1, .L1174+4
	mov	r0, #344
	bl	sim_log_debug
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1175:
	.align	2
.L1174:
	.word	.LC126
	.word	.LC6
	.size	DsrControlP$0$updateRouteRequestOutTimer, .-DsrControlP$0$updateRouteRequestOutTimer
	.section	.rodata
	.align	2
.LC127:
	.ascii	"TLV: Not enough room to add TLV block!\012\000"
	.align	2
.LC128:
	.ascii	"TlvP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvBlock$add, %function
TlvP$TlvBlock$add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	mov	r3, r2
	strb	r3, [fp, #-18]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	mov	r3, #1
	strb	r3, [fp, #-9]
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	add	r2, r2, r3
	ldrb	r3, [fp, #-18]	@ zero_extendqisi2
	cmp	r2, r3
	ble	.L1177
	ldr	r2, .L1179
	ldr	r1, .L1179+4
	mov	r0, #248
	bl	sim_log_error
	mov	r3, #2
	b	.L1178
.L1177:
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	memmove
	ldr	r3, [fp, #-8]
	mov	r1, #0
	mov	r0, r3
	bl	__nesc_hton_uint8
	mov	r3, #0
.L1178:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1180:
	.align	2
.L1179:
	.word	.LC127
	.word	.LC128
	.size	TlvP$TlvBlock$add, .-TlvP$TlvBlock$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvBlock$add, %function
TlvPacketP$0$TlvBlock$add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	mov	r3, r2
	strb	r3, [fp, #-18]
	ldrb	r2, [fp, #-18]	@ zero_extendqisi2
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvP$TlvBlock$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvBlock$add, .-TlvPacketP$0$TlvBlock$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvBlockPacket$add, %function
TlvPacketP$0$TlvBlockPacket$add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-10]
	ldrb	r3, [fp, #-10]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$getPayload
	str	r0, [fp, #-8]
	bl	TlvPacketP$0$maxLen
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-10]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TlvPacketP$0$TlvBlock$add
	mov	r3, r0
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1184
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	b	.L1185
.L1184:
	ldrb	r3, [fp, #-10]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$postLengthChange
	mov	r3, #0
.L1185:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvBlockPacket$add, .-TlvPacketP$0$TlvBlockPacket$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrHeader$add, %function
DsrControlP$0$DsrHeader$add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$TlvBlockPacket$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrHeader$add, .-DsrControlP$0$DsrHeader$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvSingle$add, %function
TlvP$TlvSingle$add:
	@ args = 4, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r1, [fp, #-12]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r2, #255
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	bne	.L1189
	mov	r3, #9
	b	.L1190
.L1189:
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r0, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	str	r3, [sp, #4]
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	mov	r2, #0
	ldr	r1, [fp, #-12]
	bl	TlvP$TlvMultiple$add
	mov	r3, r0
.L1190:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvSingle$add, .-TlvP$TlvSingle$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSingle$add, %function
TlvPacketP$0$TlvSingle$add:
	@ args = 4, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1
	strb	r3, [fp, #-14]
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r1, [fp, #-15]	@ zero_extendqisi2
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r1
	ldr	r1, [fp, #-20]
	bl	TlvP$TlvSingle$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSingle$add, .-TlvPacketP$0$TlvSingle$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvSingle$value, %function
TlvP$TlvSingle$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r2, #255
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L1194
	mov	r3, #0
	b	.L1195
.L1194:
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvMultiple$value
	mov	r3, r0
.L1195:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvSingle$value, .-TlvP$TlvSingle$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSingle$value, %function
TlvPacketP$0$TlvSingle$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvSingle$value
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSingle$value, .-TlvPacketP$0$TlvSingle$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$PathEdgeList$next, %function
SourceShortestPathP$0$PathEdgeList$next:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L1199
	mov	r3, #20
	b	.L1200
.L1199:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1201
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
.L1200:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1202:
	.align	2
.L1201:
	.word	SourceShortestPathP$0$spt
	.size	SourceShortestPathP$0$PathEdgeList$next, .-SourceShortestPathP$0$PathEdgeList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteNodeList$next, %function
DsrControlP$0$RouteNodeList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$PathEdgeList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteNodeList$next, .-DsrControlP$0$RouteNodeList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$moveWaitIndex, %function
PacketEngineP$moveWaitIndex:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1206
	add	r3, r3, r2
	mov	r1, #4
	mov	r0, r3
	bl	PacketEngineP$moveIndex
	nop
	pop	{fp, pc}
.L1207:
	.align	2
.L1206:
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$moveWaitIndex, .-PacketEngineP$moveWaitIndex
	.section	.rodata
	.align	2
.LC129:
	.ascii	"PE: Moved nextActionPkt from %u\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$markPacket, %function
PacketEngineP$markPacket:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	bl	sim_node
	mov	ip, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-6]
	and	r3, r3, #31
	and	r0, r3, #255
	ldr	r1, .L1211
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, ip
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	and	r0, r0, #31
	bic	r3, r3, #31
	orr	r3, r0, r3
	strb	r3, [r1, r2, lsl #3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1211+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L1209
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1211+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L1211+8
	ldr	r1, .L1211+12
	mov	r0, #174
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1211+4
	ldrb	r3, [fp, #-5]
	strb	r3, [r1, r2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1211+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L1211+16
	ldr	r1, .L1211+12
	mov	r0, #175
	bl	sim_log_debug_clear
	bl	PacketEngineP$printIndices
.L1209:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1211+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L1210
	bl	PacketEngineP$moveWaitIndex
.L1210:
	bl	PacketEngineP$msgAction$postTask
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1212:
	.align	2
.L1211:
	.word	PacketEngineP$msgBuffer
	.word	PacketEngineP$nextActionPkt
	.word	.LC129
	.word	.LC9
	.word	.LC20
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$markPacket, .-PacketEngineP$markPacket
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$waitList, %function
DsrControlP$0$DsrPacketEngine$waitList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$waitList, .-DsrControlP$0$DsrPacketEngine$waitList
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketWaitList$end, %function
DsrControlP$0$DsrPacketWaitList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketWaitList$end
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketWaitList$end, .-DsrControlP$0$DsrPacketWaitList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$1$BitVector$get, %function
BitVectorC$1$BitVector$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$getIndex
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L1219
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r4, r3
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$getMask
	mov	r3, r0
	and	r3, r3, r4
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1220:
	.align	2
.L1219:
	.word	BitVectorC$1$m_bits
	.size	BitVectorC$1$BitVector$get, .-BitVectorC$1$BitVector$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Salvage$get, %function
DsrControlP$0$Salvage$get:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$BitVector$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Salvage$get, .-DsrControlP$0$Salvage$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketWaitList$next, %function
DsrControlP$0$DsrPacketWaitList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketWaitList$next, .-DsrControlP$0$DsrPacketWaitList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Salvage$clear, %function
DsrControlP$0$Salvage$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$1$BitVector$clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Salvage$clear, .-DsrControlP$0$Salvage$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SourceRoute$setLength, %function
DsrControlP$0$SourceRoute$setLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #96
	bl	TlvPacketP$0$TlvSinglePacket$setLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SourceRoute$setLength, .-DsrControlP$0$SourceRoute$setLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvSingle$setLength, %function
TlvP$TlvSingle$setLength:
	@ args = 4, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1
	strb	r3, [fp, #-14]
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r2, #255
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L1229
	mov	r3, #6
	b	.L1230
.L1229:
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	str	r3, [sp, #4]
	ldrb	r3, [fp, #-15]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r1
	ldr	r1, [fp, #-20]
	bl	TlvP$TlvMultiple$setLength
	mov	r3, r0
.L1230:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvSingle$setLength, .-TlvP$TlvSingle$setLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSingle$setLength, %function
TlvPacketP$0$TlvSingle$setLength:
	@ args = 4, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1
	strb	r3, [fp, #-14]
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r1, [fp, #-15]	@ zero_extendqisi2
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r1
	ldr	r1, [fp, #-20]
	bl	TlvP$TlvSingle$setLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSingle$setLength, .-TlvPacketP$0$TlvSingle$setLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Packet$setPayloadLength, %function
TossimActiveMessageC$Packet$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$getHeader
	mov	r3, r0
	add	r3, r3, #4
	ldrb	r2, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$Packet$setPayloadLength, .-TossimActiveMessageC$Packet$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$SubPacket$setPayloadLength, %function
TlvPacketP$0$SubPacket$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$Packet$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$SubPacket$setPayloadLength, .-TlvPacketP$0$SubPacket$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$Packet$setPayloadLength, %function
TlvPacketP$0$Packet$setPayloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TlvPacketP$0$TlvBlock$length
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-17]
	add	r3, r2, r3
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$Packet$setPayloadLength, .-TlvPacketP$0$Packet$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubPacket$default$setPayloadLength, %function
PacketEngineP$SubPacket$default$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1237
	ldr	r1, .L1237+4
	mov	r0, #134
	bl	sim_log_error
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1238:
	.align	2
.L1237:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$SubPacket$default$setPayloadLength, .-PacketEngineP$SubPacket$default$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubPacket$setPayloadLength, %function
PacketEngineP$SubPacket$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L1240
	cmp	r3, #48
	beq	.L1241
	b	.L1244
.L1240:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TossimActiveMessageC$Packet$setPayloadLength
	b	.L1243
.L1241:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$Packet$setPayloadLength
	b	.L1243
.L1244:
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	PacketEngineP$SubPacket$default$setPayloadLength
	nop
.L1243:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SubPacket$setPayloadLength, .-PacketEngineP$SubPacket$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$AMPacket$address, %function
SinglePacketP$AMPacket$address:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	TossimActiveMessageC$AMPacket$address
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$AMPacket$address, .-SinglePacketP$AMPacket$address
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvList$end, %function
TlvPacketP$0$TlvList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvList$end, .-TlvPacketP$0$TlvList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvMultiple$list, %function
TlvP$TlvMultiple$list:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r2, #255
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvMultiple$list, .-TlvP$TlvMultiple$list
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiple$list, %function
TlvPacketP$0$TlvMultiple$list:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvMultiple$list
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiple$list, .-TlvPacketP$0$TlvMultiple$list
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvList$next, %function
TlvPacketP$0$TlvList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvList$next, .-TlvPacketP$0$TlvList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiple$length, %function
TlvPacketP$0$TlvMultiple$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvMultiple$length
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiple$length, .-TlvPacketP$0$TlvMultiple$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiple$value, %function
TlvPacketP$0$TlvMultiple$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvMultiple$value
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiple$value, .-TlvPacketP$0$TlvMultiple$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$buildingTree, %function
SourceShortestPathP$0$SourceShortestPath$buildingTree:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1261
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	pop	{fp, pc}
.L1262:
	.align	2
.L1261:
	.word	SourceShortestPathP$0$buildingTree
	.size	SourceShortestPathP$0$SourceShortestPath$buildingTree, .-SourceShortestPathP$0$SourceShortestPath$buildingTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$SourceShortestPath$buildingTree, %function
SimpleLinkCacheP$SourceShortestPath$buildingTree:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	SourceShortestPathP$0$SourceShortestPath$buildingTree
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$SourceShortestPath$buildingTree, .-SimpleLinkCacheP$SourceShortestPath$buildingTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$3$BitVector$set, %function
BitVectorC$3$BitVector$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$getMask
	mov	r3, r0
	mov	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L1266
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [r3]	@ zero_extendqisi2
	and	r3, r5, #255
	orr	r3, r2, r3
	and	r1, r3, #255
	ldr	r2, .L1266
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1267:
	.align	2
.L1266:
	.word	BitVectorC$3$m_bits
	.size	BitVectorC$3$BitVector$set, .-BitVectorC$3$BitVector$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Initial$set, %function
SimpleLinkCacheP$Initial$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$3$BitVector$set
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Initial$set, .-SimpleLinkCacheP$Initial$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequest$add, %function
DsrControlP$0$RouteRequest$add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	TlvPacketP$0$TlvSinglePacket$add
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequest$add, .-DsrControlP$0$RouteRequest$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Acks$noAck, %function
DsrControlP$0$Acks$noAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$PacketAcknowledgements$noAck
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Acks$noAck, .-DsrControlP$0$Acks$noAck
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SinglePacket$setSource, %function
SinglePacketP$SinglePacket$setSource:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strh	r3, [fp, #-10]	@ movhi
	mov	r1, #4
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$SubPacket$getPayload
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-10]
	mov	r1, r3
	mov	r0, r2
	bl	__nesc_hton_uint16
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SinglePacket$setSource, .-SinglePacketP$SinglePacket$setSource
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SinglePacket$setDestination, %function
SinglePacketP$SinglePacket$setDestination:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strh	r3, [fp, #-10]	@ movhi
	mov	r1, #4
	ldr	r0, [fp, #-8]
	bl	SinglePacketP$SubPacket$getPayload
	mov	r3, r0
	add	r3, r3, #2
	ldrh	r2, [fp, #-10]
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint16
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SinglePacket$setDestination, .-SinglePacketP$SinglePacket$setDestination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubSend$default$send, %function
SinglePacketP$SubSend$default$send:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r2, [fp, #-12]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-8]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1277
	ldr	r1, .L1277+4
	mov	r0, #400
	bl	sim_log_error
	mov	r3, #1
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1278:
	.align	2
.L1277:
	.word	.LC85
	.word	.LC86
	.size	SinglePacketP$SubSend$default$send, .-SinglePacketP$SubSend$default$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubSend$send, %function
SinglePacketP$SubSend$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r2, [fp, #-20]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1280
	cmp	r3, #1
	beq	.L1281
	b	.L1285
.L1280:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrh	r1, [fp, #-16]
	ldr	r2, [fp, #-20]
	mov	r0, #0
	bl	PacketEngineP$Send$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1283
.L1281:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrh	r1, [fp, #-16]
	ldr	r2, [fp, #-20]
	mov	r0, #1
	bl	PacketEngineP$Send$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1283
.L1285:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrh	r1, [fp, #-16]
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	bl	SinglePacketP$SubSend$default$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
.L1283:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SubSend$send, .-SinglePacketP$SubSend$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendPool$put, %function
PacketEngineP$SendPool$put:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	PoolP$1$Pool$put
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendPool$put, .-PacketEngineP$SendPool$put
	.section	.rodata
	.align	2
.LC130:
	.ascii	"PE: Send queue overflow, evicting pkt %hhu!\012\000"
	.align	2
.LC131:
	.ascii	"PE: Send pool already full, leaking packet!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendQueue$evicted, %function
PacketEngineP$SendQueue$evicted:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1292
	ldr	r1, .L1292+4
	mov	r0, #120
	bl	sim_log_error
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1292+8
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r0, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r2, #5
	mov	r1, r3
	bl	PacketEngineP$PacketEngine$upperSendDone
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1292+8
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$SendPool$put
	mov	r3, r0
	cmp	r3, #1
	bne	.L1289
	ldr	r2, .L1292+12
	ldr	r1, .L1292+4
	mov	r0, #121
	bl	sim_log_error
.L1289:
	bl	sim_node
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, .L1292+8
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #30
	orr	r3, r3, #1
	strb	r3, [r1, r2, lsl #3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1292+16
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L1291
	bl	PacketEngineP$moveWaitIndex
.L1291:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1293:
	.align	2
.L1292:
	.word	.LC130
	.word	.LC9
	.word	PacketEngineP$msgBuffer
	.word	.LC131
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$SendQueue$evicted, .-PacketEngineP$SendQueue$evicted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$DataCache$evicted, %function
LruDataCacheP$0$DataCache$evicted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$SendQueue$evicted
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	LruDataCacheP$0$DataCache$evicted, .-LruDataCacheP$0$DataCache$evicted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$DataCache$insert, %function
LruDataCacheP$0$DataCache$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	LruDataCacheP$0$lookup
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1296
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-13]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r1, r4, r3
	ldr	r3, .L1301+8
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L1301+12
	add	r3, r3, r2
	mov	r2, #2
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	memcpy
	b	.L1297
.L1296:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L1297
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L1301+12
	add	r3, r3, r2
	mov	r0, r3
	bl	LruDataCacheP$0$DataCache$evicted
.L1297:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	beq	.L1298
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1299
.L1298:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_uidivmod
	mov	r3, r1
	and	r3, r3, #255
	mov	r0, r3
	bl	LruDataCacheP$0$remove
.L1299:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r5, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r1, r5, r3
	ldr	r3, .L1301+8
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L1301+12
	add	r3, r3, r2
	mov	r2, #2
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	memcpy
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r5, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1301
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r1, r2, #1
	and	r0, r1, #255
	ldr	r1, .L1301
	strb	r0, [r1, r3]
	mov	r3, r2
	add	r1, r5, r3
	ldr	r3, .L1301+8
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L1301+12
	add	r3, r3, r2
	str	r3, [fp, #-24]
	bl	LruDataCacheP$0$printCache
	ldr	r3, [fp, #-24]
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1302:
	.align	2
.L1301:
	.word	LruDataCacheP$0$count
	.word	LruDataCacheP$0$first
	.word	1717986919
	.word	LruDataCacheP$0$cache
	.size	LruDataCacheP$0$DataCache$insert, .-LruDataCacheP$0$DataCache$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendQueue$insert, %function
PacketEngineP$SendQueue$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$0$DataCache$insert
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendQueue$insert, .-PacketEngineP$SendQueue$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$1$Pool$empty, %function
PoolP$1$Pool$empty:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1307
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L1308:
	.align	2
.L1307:
	.word	PoolP$1$free
	.size	PoolP$1$Pool$empty, .-PoolP$1$Pool$empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendPool$empty, %function
PacketEngineP$SendPool$empty:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PoolP$1$Pool$empty
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendPool$empty, .-PacketEngineP$SendPool$empty
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$1$Pool$get, %function
PoolP$1$Pool$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1312
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L1315+8
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-16]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L1315+8
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r1
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1315
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1315+4
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L1313
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1315+4
	mov	r1, #0
	strb	r1, [r2, r3]
.L1313:
	ldr	r3, [fp, #-16]
	b	.L1314
.L1312:
	mov	r3, #0
.L1314:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1316:
	.align	2
.L1315:
	.word	PoolP$1$free
	.word	PoolP$1$index
	.word	PoolP$1$queue
	.size	PoolP$1$Pool$get, .-PoolP$1$Pool$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendPool$get, %function
PacketEngineP$SendPool$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PoolP$1$Pool$get
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SendPool$get, .-PacketEngineP$SendPool$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineClientP$0$PacketEngineClient$upperType, %function
PacketEngineClientP$0$PacketEngineClient$upperType:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineClientP$0$PacketEngineClient$upperType, .-PacketEngineClientP$0$PacketEngineClient$upperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineClientP$1$PacketEngineClient$upperType, %function
PacketEngineClientP$1$PacketEngineClient$upperType:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #23
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineClientP$1$PacketEngineClient$upperType, .-PacketEngineClientP$1$PacketEngineClient$upperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngineClient$default$upperType, %function
PacketEngineP$PacketEngineClient$default$upperType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1325
	ldr	r1, .L1325+4
	mov	r0, #118
	bl	sim_log_error
	mov	r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1326:
	.align	2
.L1325:
	.word	.LC87
	.word	.LC9
	.size	PacketEngineP$PacketEngineClient$default$upperType, .-PacketEngineP$PacketEngineClient$default$upperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngineClient$upperType, %function
PacketEngineP$PacketEngineClient$upperType:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1328
	cmp	r3, #1
	beq	.L1329
	b	.L1333
.L1328:
	bl	PacketEngineClientP$1$PacketEngineClient$upperType
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1331
.L1329:
	bl	PacketEngineClientP$0$PacketEngineClient$upperType
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1331
.L1333:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$PacketEngineClient$default$upperType
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
.L1331:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$PacketEngineClient$upperType, .-PacketEngineP$PacketEngineClient$upperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$AMPacket$setType, %function
PacketEngineP$AMPacket$setType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$AMPacket$setType
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$AMPacket$setType, .-PacketEngineP$AMPacket$setType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$setLid, %function
PacketEngineP$setLid:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$AMPacket$setType
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$setLid, .-PacketEngineP$setLid
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineClientP$0$PacketEngineClient$defaultLowerType, %function
PacketEngineClientP$0$PacketEngineClient$defaultLowerType:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #48
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineClientP$0$PacketEngineClient$defaultLowerType, .-PacketEngineClientP$0$PacketEngineClient$defaultLowerType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineClientP$1$PacketEngineClient$defaultLowerType, %function
PacketEngineClientP$1$PacketEngineClient$defaultLowerType:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #4
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	PacketEngineClientP$1$PacketEngineClient$defaultLowerType, .-PacketEngineClientP$1$PacketEngineClient$defaultLowerType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngineClient$default$defaultLowerType, %function
PacketEngineP$PacketEngineClient$default$defaultLowerType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1342
	ldr	r1, .L1342+4
	mov	r0, #119
	bl	sim_log_error
	mov	r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1343:
	.align	2
.L1342:
	.word	.LC87
	.word	.LC9
	.size	PacketEngineP$PacketEngineClient$default$defaultLowerType, .-PacketEngineP$PacketEngineClient$default$defaultLowerType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngineClient$defaultLowerType, %function
PacketEngineP$PacketEngineClient$defaultLowerType:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1345
	cmp	r3, #1
	beq	.L1346
	b	.L1350
.L1345:
	bl	PacketEngineClientP$1$PacketEngineClient$defaultLowerType
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1348
.L1346:
	bl	PacketEngineClientP$0$PacketEngineClient$defaultLowerType
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1348
.L1350:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$PacketEngineClient$default$defaultLowerType
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
.L1348:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$PacketEngineClient$defaultLowerType, .-PacketEngineP$PacketEngineClient$defaultLowerType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$Packet$payloadLength, %function
TlvPacketP$0$Packet$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TlvPacketP$0$TlvBlock$length
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-9]
	sub	r3, r3, r2
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$Packet$payloadLength, .-TlvPacketP$0$Packet$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubPacket$default$payloadLength, %function
PacketEngineP$SubPacket$default$payloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1355
	ldr	r1, .L1355+4
	mov	r0, #133
	bl	sim_log_error
	mov	r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1356:
	.align	2
.L1355:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$SubPacket$default$payloadLength, .-PacketEngineP$SubPacket$default$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubPacket$payloadLength, %function
PacketEngineP$SubPacket$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L1358
	cmp	r3, #48
	beq	.L1359
	b	.L1363
.L1358:
	ldr	r0, [fp, #-20]
	bl	TossimActiveMessageC$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1361
.L1359:
	ldr	r0, [fp, #-20]
	bl	TlvPacketP$0$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1361
.L1363:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	PacketEngineP$SubPacket$default$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
.L1361:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SubPacket$payloadLength, .-PacketEngineP$SubPacket$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvMultiple$remove, %function
TlvP$TlvMultiple$remove:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r1, [fp, #-12]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r0, [fp, #-5]	@ zero_extendqisi2
	mov	r3, #0
	str	r3, [sp, #4]
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, #0
	ldr	r1, [fp, #-12]
	bl	TlvP$TlvMultiple$setLength
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvMultiple$remove, .-TlvP$TlvMultiple$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvSingle$remove, %function
TlvP$TlvSingle$remove:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r2, #255
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	TlvP$TlvList$next
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldrb	r0, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	bl	TlvP$TlvMultiple$remove
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvP$TlvSingle$remove, .-TlvP$TlvSingle$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSingle$remove, %function
TlvPacketP$0$TlvSingle$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvSingle$remove
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSingle$remove, .-TlvPacketP$0$TlvSingle$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$AMPacket$address, %function
SimpleLinkCacheP$AMPacket$address:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	TossimActiveMessageC$AMPacket$address
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$AMPacket$address, .-SimpleLinkCacheP$AMPacket$address
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Graph$insert, %function
SimpleLinkCacheP$Graph$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$insert
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Graph$insert, .-SimpleLinkCacheP$Graph$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$RouteCache$addPath, %function
SimpleLinkCacheP$RouteCache$addPath:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	mov	r3, r2
	strb	r3, [fp, #-18]
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L1375
.L1377:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r0, [r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	bl	SimpleLinkCacheP$Graph$insert
	ldrb	r3, [fp, #-18]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1376
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r3, [fp, #-16]
	add	r3, r3, r2
	ldrb	r0, [r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	sub	r3, r2, r3
	sub	r3, r3, #1
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	bl	SimpleLinkCacheP$Graph$insert
.L1376:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L1375:
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L1377
	bl	SimpleLinkCacheP$AMPacket$address
	mov	r3, r0
	and	r3, r3, #255
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$buildTree
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$RouteCache$addPath, .-SimpleLinkCacheP$RouteCache$addPath
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteCache$addPath, %function
DsrControlP$0$RouteCache$addPath:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	mov	r3, r2
	strb	r3, [fp, #-10]
	ldrb	r2, [fp, #-10]	@ zero_extendqisi2
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	SimpleLinkCacheP$RouteCache$addPath
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteCache$addPath, .-DsrControlP$0$RouteCache$addPath
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Graph$edge, %function
GraphSparseP$0$Graph$edge:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L1384
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]
	strb	r3, [fp, #-5]
	b	.L1380
.L1383:
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1384+4
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	ldrb	r3, [r0, r3, lsl #1]	@ zero_extendqisi2
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L1381
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L1382
.L1381:
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1384+4
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	r3, [r3, #1]
	strb	r3, [fp, #-5]
.L1380:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L1383
	mov	r3, #250
.L1382:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1385:
	.align	2
.L1384:
	.word	GraphSparseP$0$v
	.word	GraphSparseP$0$e
	.size	GraphSparseP$0$Graph$edge, .-GraphSparseP$0$Graph$edge
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$BitVector$get, %function
IndexedAllocBitsP$0$BitVector$get:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$BitVector$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	IndexedAllocBitsP$0$BitVector$get, .-IndexedAllocBitsP$0$BitVector$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$findFree, %function
IndexedAllocBitsP$0$findFree:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1395
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #250
	beq	.L1393
	b	.L1391
.L1392:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1395+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1395+4
	strb	r1, [r2, r3]
	bl	sim_node
	ldr	r3, .L1395+4
	ldrb	r1, [r3, r0]	@ zero_extendqisi2
	ldr	r3, .L1395+8
	umull	r2, r3, r1, r3
	lsr	r2, r3, #4
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	sub	r3, r1, r3
	and	r2, r3, #255
	ldr	r3, .L1395+4
	strb	r2, [r3, r0]
.L1391:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1395+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	IndexedAllocBitsP$0$BitVector$get
	mov	r3, r0
	cmp	r3, #0
	popeq	{fp, pc}
	b	.L1392
.L1393:
	nop
	pop	{fp, pc}
.L1396:
	.align	2
.L1395:
	.word	IndexedAllocBitsP$0$size
	.word	IndexedAllocBitsP$0$free
	.word	274877907
	.size	IndexedAllocBitsP$0$findFree, .-IndexedAllocBitsP$0$findFree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$BitVector$set, %function
BitVectorC$4$BitVector$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$getMask
	mov	r3, r0
	mov	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L1398
	lsl	r3, r4, #5
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [r3]	@ zero_extendqisi2
	and	r3, r5, #255
	orr	r3, r2, r3
	and	r1, r3, #255
	ldr	r2, .L1398
	lsl	r3, r4, #5
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1399:
	.align	2
.L1398:
	.word	BitVectorC$4$m_bits
	.size	BitVectorC$4$BitVector$set, .-BitVectorC$4$BitVector$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$BitVector$set, %function
IndexedAllocBitsP$0$BitVector$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$4$BitVector$set
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	IndexedAllocBitsP$0$BitVector$set, .-IndexedAllocBitsP$0$BitVector$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$IndexedAlloc$alloc, %function
IndexedAllocBitsP$0$IndexedAlloc$alloc:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1404
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L1402
	mov	r3, #250
	b	.L1403
.L1402:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1404+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	IndexedAllocBitsP$0$BitVector$set
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1404
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1404
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1404+4
	ldrb	r3, [r2, r3]
	strb	r3, [fp, #-5]
	bl	IndexedAllocBitsP$0$findFree
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
.L1403:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1405:
	.align	2
.L1404:
	.word	IndexedAllocBitsP$0$size
	.word	IndexedAllocBitsP$0$free
	.size	IndexedAllocBitsP$0$IndexedAlloc$alloc, .-IndexedAllocBitsP$0$IndexedAlloc$alloc
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$IndexedAlloc$alloc, %function
GraphSparseP$0$IndexedAlloc$alloc:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	IndexedAllocBitsP$0$IndexedAlloc$alloc
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	GraphSparseP$0$IndexedAlloc$alloc, .-GraphSparseP$0$IndexedAlloc$alloc
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Graph$inserted, %function
SimpleLinkCacheP$Graph$inserted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	SimpleLinkCacheP$Graph$inserted, .-SimpleLinkCacheP$Graph$inserted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$Graph$inserted, %function
SourceShortestPathP$0$Graph$inserted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1410
	mov	r1, #1
	strb	r1, [r2, r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1411:
	.align	2
.L1410:
	.word	SourceShortestPathP$0$rebuildNeeded
	.size	SourceShortestPathP$0$Graph$inserted, .-SourceShortestPathP$0$Graph$inserted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Graph$inserted, %function
GraphSparseP$0$Graph$inserted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$Graph$inserted
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$Graph$inserted
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	GraphSparseP$0$Graph$inserted, .-GraphSparseP$0$Graph$inserted
	.section	.rodata
	.align	2
.LC132:
	.ascii	"LRUDC:\000"
	.align	2
.LC133:
	.ascii	"LruDataCacheP\000"
	.align	2
.LC134:
	.ascii	" %08x\000"
	.align	2
.LC135:
	.ascii	"*\000"
	.align	2
.LC136:
	.ascii	"\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$printCache, %function
LruDataCacheP$1$printCache:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	ldr	r2, .L1417
	ldr	r1, .L1417+4
	ldr	r0, .L1417+8
	bl	sim_log_debug
	mov	r3, #0
	strb	r3, [fp, #-13]
	b	.L1414
.L1416:
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L1417+12
	lsl	r1, r1, #3
	add	r3, r1, r3
	lsl	r1, r3, #4
	add	r1, r2, r1
	ldrh	r1, [r1]
	lsl	r0, r3, #4
	add	r0, r2, r0
	add	r0, r0, #2
	ldrh	r0, [r0]
	lsl	r0, r0, #16
	orr	r1, r0, r1
	mov	r4, #0
	mov	r4, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	mov	r0, sp
	add	r3, r3, #4
	mov	r2, #12
	mov	r1, r3
	bl	memcpy
	mov	r3, r4
	ldr	r2, .L1417+16
	ldr	r1, .L1417+4
	ldr	r0, .L1417+20
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1417+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L1415
	ldr	r2, .L1417+28
	ldr	r1, .L1417+4
	mov	r0, #384
	bl	sim_log_debug_clear
.L1415:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L1414:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1417+32
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L1416
	ldr	r2, .L1417+36
	ldr	r1, .L1417+4
	ldr	r0, .L1417+40
	bl	sim_log_debug_clear
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1418:
	.align	2
.L1417:
	.word	.LC132
	.word	.LC133
	.word	382
	.word	LruDataCacheP$1$cache
	.word	.LC134
	.word	383
	.word	LruDataCacheP$1$first
	.word	.LC135
	.word	LruDataCacheP$1$count
	.word	.LC136
	.word	385
	.size	LruDataCacheP$1$printCache, .-LruDataCacheP$1$printCache
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$remove, %function
LruDataCacheP$1$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #20
	mov	r3, r0
	strb	r3, [fp, #-29]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1427
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L1426
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1422
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1427+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r3, #1
	rsbs	r2, r3, #0
	and	r4, r3, #7
	and	r3, r2, #7
	rsbpl	r4, r3, #0
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L1427+4
	strb	r1, [r2, r3]
	b	.L1423
.L1422:
	ldrb	r3, [fp, #-29]
	strb	r3, [fp, #-21]
	b	.L1424
.L1425:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1427+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L1427+8
	add	r5, r3, r2
	bl	sim_node
	mov	r6, r0
	ldrb	r4, [fp, #-21]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1427+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	add	r3, r3, #1
	rsbs	r2, r3, #0
	and	r3, r3, #7
	and	r2, r2, #7
	rsbpl	r3, r2, #0
	lsl	r2, r6, #3
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L1427+8
	add	r3, r3, r2
	mov	r2, #16
	mov	r1, r3
	mov	r0, r5
	bl	memcpy
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-21]
.L1424:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1427
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L1425
.L1423:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1427
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L1427
	strb	r1, [r2, r3]
	b	.L1419
.L1426:
	nop
.L1419:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L1428:
	.align	2
.L1427:
	.word	LruDataCacheP$1$count
	.word	LruDataCacheP$1$first
	.word	LruDataCacheP$1$cache
	.size	LruDataCacheP$1$remove, .-LruDataCacheP$1$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestInCache$evicted, %function
DsrControlP$0$RouteRequestInCache$evicted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$RouteRequestInCache$evicted, .-DsrControlP$0$RouteRequestInCache$evicted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$DataCache$evicted, %function
LruDataCacheP$1$DataCache$evicted:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	DsrControlP$0$RouteRequestInCache$evicted
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	LruDataCacheP$1$DataCache$evicted, .-LruDataCacheP$1$DataCache$evicted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestInEqual$test, %function
DsrControlP$0$RouteRequestInEqual$test:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-8]
	ldrh	r2, [r3]
	ldr	r3, [fp, #-12]
	ldrh	r3, [r3]
	cmp	r2, r3
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	DsrControlP$0$RouteRequestInEqual$test, .-DsrControlP$0$RouteRequestInEqual$test
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$Equal$test, %function
LruDataCacheP$1$Equal$test:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	DsrControlP$0$RouteRequestInEqual$test
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	LruDataCacheP$1$Equal$test, .-LruDataCacheP$1$Equal$test
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$lookup, %function
LruDataCacheP$1$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	mov	r3, #0
	strb	r3, [fp, #-17]
	b	.L1436
.L1439:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1442
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-17]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L1442+4
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$1$Equal$test
	mov	r3, r0
	cmp	r3, #0
	bne	.L1441
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-17]
.L1436:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1442+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L1439
	b	.L1438
.L1441:
	nop
.L1438:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1443:
	.align	2
.L1442:
	.word	LruDataCacheP$1$first
	.word	LruDataCacheP$1$cache
	.word	LruDataCacheP$1$count
	.size	LruDataCacheP$1$lookup, .-LruDataCacheP$1$lookup
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$DataCache$insert, %function
LruDataCacheP$1$DataCache$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	LruDataCacheP$1$lookup
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1445
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L1450+8
	add	r3, r3, r2
	mov	r2, #16
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	memcpy
	b	.L1446
.L1445:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #8
	bne	.L1446
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	lsl	r3, r4, #3
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L1450+8
	add	r3, r3, r2
	mov	r0, r3
	bl	LruDataCacheP$1$DataCache$evicted
.L1446:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #8
	beq	.L1447
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1448
.L1447:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_uidivmod
	mov	r3, r1
	and	r3, r3, #255
	mov	r0, r3
	bl	LruDataCacheP$1$remove
.L1448:
	bl	sim_node
	mov	r5, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450+4
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r5, #3
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L1450+8
	add	r3, r3, r2
	mov	r2, #16
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	memcpy
	bl	sim_node
	mov	r5, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1450+4
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r2, r0
	ldr	r3, .L1450
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	add	r1, r3, #1
	and	r0, r1, #255
	ldr	r1, .L1450
	strb	r0, [r1, r2]
	add	r3, r4, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r5, #3
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L1450+8
	add	r3, r3, r2
	str	r3, [fp, #-24]
	bl	LruDataCacheP$1$printCache
	ldr	r3, [fp, #-24]
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1451:
	.align	2
.L1450:
	.word	LruDataCacheP$1$count
	.word	LruDataCacheP$1$first
	.word	LruDataCacheP$1$cache
	.size	LruDataCacheP$1$DataCache$insert, .-LruDataCacheP$1$DataCache$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestInCache$insert, %function
DsrControlP$0$RouteRequestInCache$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$1$DataCache$insert
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequestInCache$insert, .-DsrControlP$0$RouteRequestInCache$insert
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequest$setLength, %function
DsrControlP$0$RouteRequest$setLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #1
	bl	TlvPacketP$0$TlvSinglePacket$setLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$RouteRequest$setLength, .-DsrControlP$0$RouteRequest$setLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$AMPacket$isForMe, %function
DsrControlP$0$AMPacket$isForMe:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$isForMe
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$AMPacket$isForMe, .-DsrControlP$0$AMPacket$isForMe
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketWaitList$next, %function
DsrControlP$0$SinglePacketWaitList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketWaitList$next, .-DsrControlP$0$SinglePacketWaitList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketWaitList$end, %function
DsrControlP$0$SinglePacketWaitList$end:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketWaitList$end
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketWaitList$end, .-DsrControlP$0$SinglePacketWaitList$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$waitList, %function
DsrControlP$0$SinglePacketEngine$waitList:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketEngine$waitList, .-DsrControlP$0$SinglePacketEngine$waitList
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$findSinglePktTo, %function
DsrControlP$0$findSinglePktTo:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	DsrControlP$0$SinglePacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-5]
	b	.L1465
.L1468:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$packet
	mov	r3, r0
	mov	r0, r3
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-14]
	cmp	r3, r2
	bne	.L1466
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L1467
.L1466:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
.L1465:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L1468
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
.L1467:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$findSinglePktTo, .-DsrControlP$0$findSinglePktTo
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$upperSendDone, %function
DsrControlP$0$SinglePacketEngine$upperSendDone:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$upperSendDone
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketEngine$upperSendDone, .-DsrControlP$0$SinglePacketEngine$upperSendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$drop, %function
DsrControlP$0$SinglePacketEngine$drop:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$drop
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketEngine$drop, .-DsrControlP$0$SinglePacketEngine$drop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SourceRoute$remove, %function
DsrControlP$0$SourceRoute$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r1, [fp, #-16]
	mov	r0, #96
	bl	TlvPacketP$0$TlvSinglePacket$remove
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SourceRoute$remove, .-DsrControlP$0$SourceRoute$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$receive, %function
DsrControlP$0$DsrPacketEngine$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$receive
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$DsrPacketEngine$receive, .-DsrControlP$0$DsrPacketEngine$receive
	.section	.rodata
	.align	2
.LC137:
	.ascii	"SP: No snoop connected for upper id %hhu!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Snoop$default$receive, %function
SinglePacketP$Snoop$default$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1479
	ldr	r1, .L1479+4
	ldr	r0, .L1479+8
	bl	sim_log_debug
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1480:
	.align	2
.L1479:
	.word	.LC137
	.word	.LC86
	.word	403
	.size	SinglePacketP$Snoop$default$receive, .-SinglePacketP$Snoop$default$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Snoop$receive, %function
SinglePacketP$Snoop$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	SinglePacketP$Snoop$default$receive
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Snoop$receive, .-SinglePacketP$Snoop$receive
	.section	.rodata
	.align	2
.LC138:
	.ascii	"Received Data: %s Payload Length: %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Receive$receive, %function
TestDsrP$Receive$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r3, r2
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	str	r3, [sp]
	ldr	r3, [fp, #-12]
	ldr	r2, .L1485
	ldr	r1, .L1485+4
	mov	r0, #112
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1486:
	.align	2
.L1485:
	.word	.LC138
	.word	.LC84
	.size	TestDsrP$Receive$receive, .-TestDsrP$Receive$receive
	.section	.rodata
	.align	2
.LC139:
	.ascii	"SP: No receive connected for upper id %hhu!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Receive$default$receive, %function
SinglePacketP$Receive$default$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1489
	ldr	r1, .L1489+4
	ldr	r0, .L1489+8
	bl	sim_log_debug
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1490:
	.align	2
.L1489:
	.word	.LC139
	.word	.LC86
	.word	402
	.size	SinglePacketP$Receive$default$receive, .-SinglePacketP$Receive$default$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Receive$receive, %function
SinglePacketP$Receive$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #23
	bne	.L1492
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-20]
	bl	TestDsrP$Receive$receive
	str	r0, [fp, #-8]
	b	.L1493
.L1492:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	SinglePacketP$Receive$default$receive
	str	r0, [fp, #-8]
	nop
.L1493:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Receive$receive, .-SinglePacketP$Receive$receive
	.section	.rodata
	.align	2
.LC140:
	.ascii	"SP: Received pkt from %u to %u\012\000"
	.align	2
.LC141:
	.ascii	"SP: Snooped pkt from %u to %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubReceive$receive, %function
SinglePacketP$SubReceive$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-14]
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$SinglePacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	beq	.L1496
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$SinglePacket$source
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$SinglePacket$destination
	mov	r3, r0
	str	r3, [sp]
	mov	r3, r4
	ldr	r2, .L1498
	ldr	r1, .L1498+4
	mov	r0, #404
	bl	sim_log_debug
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$Packet$getPayload
	mov	r2, r0
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	bl	SinglePacketP$Receive$receive
	mov	r3, r0
	b	.L1497
.L1496:
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$SinglePacket$source
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$SinglePacket$destination
	mov	r3, r0
	str	r3, [sp]
	mov	r3, r4
	ldr	r2, .L1498+8
	ldr	r1, .L1498+4
	ldr	r0, .L1498+12
	bl	sim_log_debug
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	SinglePacketP$Packet$getPayload
	mov	r2, r0
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	bl	SinglePacketP$Snoop$receive
	mov	r3, r0
.L1497:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1499:
	.align	2
.L1498:
	.word	.LC140
	.word	.LC86
	.word	.LC141
	.word	405
	.size	SinglePacketP$SubReceive$receive, .-SinglePacketP$SubReceive$receive
	.section	.rodata
	.align	2
.LC142:
	.ascii	"PE: Trying to use invalid upper AM type %hhu!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Receive$default$receive, %function
PacketEngineP$Receive$default$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1502
	ldr	r1, .L1502+4
	mov	r0, #122
	bl	sim_log_error
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1503:
	.align	2
.L1502:
	.word	.LC142
	.word	.LC9
	.size	PacketEngineP$Receive$default$receive, .-PacketEngineP$Receive$default$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Receive$receive, %function
PacketEngineP$Receive$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #23
	bne	.L1505
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	mov	r0, #23
	bl	SinglePacketP$SubReceive$receive
	str	r0, [fp, #-8]
	b	.L1506
.L1505:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrb	r0, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-20]
	bl	PacketEngineP$Receive$default$receive
	str	r0, [fp, #-8]
	nop
.L1506:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Receive$receive, .-PacketEngineP$Receive$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SendBackoff$fired, %function
PacketEngineP$SendBackoff$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	PacketEngineP$SendState$toIdle
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1511
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L1510
	bl	PacketEngineP$msgAction$postTask
.L1510:
	nop
	pop	{fp, pc}
.L1512:
	.align	2
.L1511:
	.word	PacketEngineP$nextActionPkt
	.size	PacketEngineP$SendBackoff$fired, .-PacketEngineP$SendBackoff$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$DataTimer$expired, %function
DataTimerP$0$DataTimer$expired:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutTimer$expired
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DataTimerP$0$DataTimer$expired, .-DataTimerP$0$DataTimer$expired
	.section	.rodata
	.align	2
.LC143:
	.ascii	"DT: Timer expired!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$Timer$fired, %function
DataTimerP$0$Timer$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	DataTimerP$0$adjustTimer
	b	.L1515
.L1517:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1520
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldrh	r3, [r3]
	mov	r0, r3
	bl	DataTimerP$0$DataTimer$expired
	ldr	r2, .L1520+4
	ldr	r1, .L1520+8
	ldr	r0, .L1520+12
	bl	sim_log_debug
	mov	r0, #0
	bl	DataTimerP$0$removeTimer
.L1515:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1520+16
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldrh	r3, [r3]
	cmp	r3, #0
	bne	.L1516
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1520+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1517
.L1516:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1520+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1519
	bl	DataTimerP$0$startTimer
.L1519:
	nop
	pop	{fp, pc}
.L1521:
	.align	2
.L1520:
	.word	DataTimerP$0$data
	.word	.LC143
	.word	.LC125
	.word	391
	.word	DataTimerP$0$delay
	.word	DataTimerP$0$size
	.size	DataTimerP$0$Timer$fired, .-DataTimerP$0$Timer$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$AMPacket$address, %function
TestDsrP$AMPacket$address:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	TossimActiveMessageC$AMPacket$address
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$AMPacket$address, .-TestDsrP$AMPacket$address
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Send$send, %function
TestDsrP$Send$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrb	r3, [fp, #-15]	@ zero_extendqisi2
	ldrh	r1, [fp, #-14]
	ldr	r2, [fp, #-20]
	mov	r0, #0
	bl	SinglePacketP$Send$send
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$Send$send, .-TestDsrP$Send$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Send$getPayload, %function
PacketEngineP$Send$getPayload:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	PacketEngineP$setIds
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	PacketEngineP$Packet$getPayload
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Send$getPayload, .-PacketEngineP$Send$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubSend$default$getPayload, %function
SinglePacketP$SubSend$default$getPayload:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L1530
	ldr	r1, .L1530+4
	ldr	r0, .L1530+8
	bl	sim_log_error
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1531:
	.align	2
.L1530:
	.word	.LC85
	.word	.LC86
	.word	401
	.size	SinglePacketP$SubSend$default$getPayload, .-SinglePacketP$SubSend$default$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SubSend$getPayload, %function
SinglePacketP$SubSend$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1533
	cmp	r3, #1
	beq	.L1534
	b	.L1538
.L1533:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-20]
	mov	r0, #0
	bl	PacketEngineP$Send$getPayload
	str	r0, [fp, #-8]
	b	.L1536
.L1534:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-20]
	mov	r0, #1
	bl	PacketEngineP$Send$getPayload
	str	r0, [fp, #-8]
	b	.L1536
.L1538:
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	SinglePacketP$SubSend$default$getPayload
	str	r0, [fp, #-8]
	nop
.L1536:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$SubSend$getPayload, .-SinglePacketP$SubSend$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Send$getPayload, %function
SinglePacketP$Send$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]
	add	r3, r3, #4
	and	r2, r3, #255
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	SinglePacketP$SubSend$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L1540
	ldr	r3, [fp, #-8]
	add	r3, r3, #4
	str	r3, [fp, #-8]
.L1540:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Send$getPayload, .-SinglePacketP$Send$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Send$getPayload, %function
TestDsrP$Send$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-16]
	mov	r0, #0
	bl	SinglePacketP$Send$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$Send$getPayload, .-TestDsrP$Send$getPayload
	.section	.rodata
	.align	2
.LC144:
	.ascii	"Pkt %u\000"
	.align	2
.LC145:
	.ascii	"Sending Data: %s Payload Length: %hhu\012\000"
	.align	2
.LC146:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Timer$fired, %function
TestDsrP$Timer$fired:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #84
	ldr	r3, .L1549
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #80
	str	r3, [fp, #-84]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1549+4
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	mov	r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r4, r3
	bl	TestDsrP$AMPacket$address
	mov	r3, r0
	add	r2, r4, r3
	sub	r3, fp, #28
	ldr	r1, .L1549+8
	mov	r0, r3
	bl	sprintf
	mov	r1, #10
	ldr	r0, [fp, #-84]
	bl	TestDsrP$Send$getPayload
	mov	r2, r0
	sub	r3, fp, #28
	mov	r1, r3
	mov	r0, r2
	bl	strcpy
	sub	r3, fp, #28
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	sub	r2, fp, #28
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1549+12
	ldr	r1, .L1549+16
	mov	r0, #110
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1549+20
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r4, [r3]
	sub	r3, fp, #28
	mov	r0, r3
	bl	strlen
	mov	r3, r0
	and	r3, r3, #255
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	ldr	r1, [fp, #-84]
	mov	r0, r4
	bl	TestDsrP$Send$send
	bl	sim_node
	mov	r3, r0
	ldr	r1, .L1549+4
	lsl	r2, r3, #1
	add	r2, r1, r2
	ldrh	r2, [r2]
	add	r2, r2, #1
	lsl	r2, r2, #16
	lsr	r1, r2, #16
	ldr	r0, .L1549+4
	lsl	r2, r3, #1
	add	r2, r0, r2
	strh	r1, [r2]	@ movhi
	ldr	r2, .L1549+4
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1549+24
	ldr	r3, [r2, r3, lsl #2]
	cmp	r4, r3
	bge	.L1545
	mov	r0, #30720
	bl	TestDsrP$Timer$startOneShot
	b	.L1548
.L1545:
	bl	TestDsrP$AMPacket$address
	mov	r3, r0
	cmp	r3, #0
	bne	.L1548
	bl	cleanup
.L1548:
	nop
	ldr	r3, .L1549
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1547
	bl	__stack_chk_fail
.L1547:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1550:
	.align	2
.L1549:
	.word	.LC146
	.word	TestDsrP$pktNum
	.word	.LC144
	.word	.LC145
	.word	.LC84
	.word	TestDsrP$dest
	.word	TestDsrP$numPkts
	.size	TestDsrP$Timer$fired, .-TestDsrP$Timer$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$Timer$default$fired, %function
VirtualizeTimerC$0$Timer$default$fired:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-5]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	VirtualizeTimerC$0$Timer$default$fired, .-VirtualizeTimerC$0$Timer$default$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$Timer$fired, %function
VirtualizeTimerC$0$Timer$fired:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #2
	beq	.L1553
	cmp	r3, #2
	bgt	.L1554
	cmp	r3, #0
	beq	.L1555
	cmp	r3, #1
	beq	.L1556
	b	.L1554
.L1555:
	bl	PacketEngineP$SendBackoff$fired
	b	.L1557
.L1556:
	bl	DataTimerP$0$Timer$fired
	b	.L1557
.L1553:
	bl	TestDsrP$Timer$fired
	b	.L1557
.L1554:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	VirtualizeTimerC$0$Timer$default$fired
	nop
.L1557:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	VirtualizeTimerC$0$Timer$fired, .-VirtualizeTimerC$0$Timer$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Compare$set, %function
Atm128AlarmAsyncP$0$Compare$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	HplAtm128Timer0AsyncP$Compare$set
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Compare$set, .-Atm128AlarmAsyncP$0$Compare$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Timer$get, %function
Atm128AlarmAsyncP$0$Timer$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	HplAtm128Timer0AsyncP$Timer0$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Timer$get, .-Atm128AlarmAsyncP$0$Timer$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$TimerAsync$compareBusy, %function
HplAtm128Timer0AsyncP$TimerAsync$compareBusy:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #48
	ldr	r2, .L1563
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	and	r3, r3, #2
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L1564:
	.align	2
.L1563:
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$TimerAsync$compareBusy, .-HplAtm128Timer0AsyncP$TimerAsync$compareBusy
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$TimerAsync$compareBusy, %function
Atm128AlarmAsyncP$0$TimerAsync$compareBusy:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	HplAtm128Timer0AsyncP$TimerAsync$compareBusy
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$TimerAsync$compareBusy, .-Atm128AlarmAsyncP$0$TimerAsync$compareBusy
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$setOcr0, %function
Atm128AlarmAsyncP$0$setOcr0:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-13]
	nop
.L1568:
	bl	Atm128AlarmAsyncP$0$TimerAsync$compareBusy
	mov	r3, r0
	cmp	r3, #0
	bne	.L1568
	bl	Atm128AlarmAsyncP$0$Timer$get
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, r2
	bne	.L1569
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L1569:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1571
	ldr	r2, [r2, r3, lsl #2]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r2, r3
	add	r4, r3, #1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1571
	ldr	r3, [r2, r3, lsl #2]
	cmp	r4, r3
	bcs	.L1570
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1571
	ldr	r3, [r2, r3, lsl #2]
	and	r3, r3, #255
	mvn	r3, r3
	strb	r3, [fp, #-13]
.L1570:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	Atm128AlarmAsyncP$0$Compare$set
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1572:
	.align	2
.L1571:
	.word	Atm128AlarmAsyncP$0$base
	.size	Atm128AlarmAsyncP$0$setOcr0, .-Atm128AlarmAsyncP$0$setOcr0
	.section	.rodata
	.align	2
.LC147:
	.ascii	"Cancelling compare at 0x%p\012\000"
	.align	2
.LC148:
	.ascii	"HplAtm128CompareC\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$cancel_compare, %function
HplAtm128Timer0AsyncP$cancel_compare:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1576
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L1576+4
	ldr	r1, .L1576+8
	mov	r0, #211
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1576
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L1575
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1576
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #1
	strb	r2, [r3, #13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1576
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L1576+12
	str	r2, [r3, #24]
.L1575:
	nop
	pop	{fp, pc}
.L1577:
	.align	2
.L1576:
	.word	HplAtm128Timer0AsyncP$compare
	.word	.LC147
	.word	.LC148
	.word	sim_queue_cleanup_total
	.size	HplAtm128Timer0AsyncP$cancel_compare, .-HplAtm128Timer0AsyncP$cancel_compare
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$notify_changed, %function
HplAtm128Timer0AsyncP$notify_changed:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	HplAtm128Timer0AsyncP$Timer0$getScale
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1579
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1580
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1579
	bl	sim_node
	mov	r4, r0
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1580+4
	lsl	r1, r4, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
.L1579:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1580
	ldrb	r3, [fp, #-13]
	strb	r3, [r1, r2]
	bl	HplAtm128Timer0AsyncP$schedule_new_compare
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1581:
	.align	2
.L1580:
	.word	HplAtm128Timer0AsyncP$oldScale
	.word	HplAtm128Timer0AsyncP$lastZero
	.size	HplAtm128Timer0AsyncP$notify_changed, .-HplAtm128Timer0AsyncP$notify_changed
	.section	.rodata
	.align	2
.LC149:
	.ascii	"Cancelling overflow %p.\012\000"
	.align	2
.LC150:
	.ascii	"HplAtm128Timer0AsyncP\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$cancel_overflow, %function
HplAtm128Timer0AsyncP$cancel_overflow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1585
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L1584
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1585
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #1
	strb	r2, [r3, #13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1585
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L1585+4
	ldr	r1, .L1585+8
	mov	r0, #210
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1585
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L1585+12
	str	r2, [r3, #24]
.L1584:
	nop
	pop	{fp, pc}
.L1586:
	.align	2
.L1585:
	.word	HplAtm128Timer0AsyncP$overflow
	.word	.LC149
	.word	.LC150
	.word	sim_queue_cleanup_total
	.size	HplAtm128Timer0AsyncP$cancel_overflow, .-HplAtm128Timer0AsyncP$cancel_overflow
	.section	.rodata
	.align	2
.LC151:
	.ascii	"Overflow interrupt at %s\012\000"
	.align	2
.LC152:
	.ascii	"Setting overflow bit at %s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$timer0_overflow_handle, %function
HplAtm128Timer0AsyncP$timer0_overflow_handle:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3, #13]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1592
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1593
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #55
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L1590
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1593
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	ldrb	r3, [r3]	@ zero_extendqisi2
	bic	r3, r3, #1
	and	r0, r3, #255
	ldr	r1, .L1593
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	mov	r2, r0
	strb	r2, [r3]
	bl	sim_time_string
	mov	r3, r0
	ldr	r2, .L1593+4
	ldr	r1, .L1593+8
	mov	r0, #207
	bl	sim_log_debug
	bl	INTERRUPT_16
	b	.L1591
.L1590:
	bl	sim_time_string
	mov	r3, r0
	ldr	r2, .L1593+12
	ldr	r1, .L1593+8
	mov	r0, #208
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1593
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	ldrb	r3, [r3]	@ zero_extendqisi2
	orr	r3, r3, #1
	and	r0, r3, #255
	ldr	r1, .L1593
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	mov	r2, r0
	strb	r2, [r3]
.L1591:
	ldr	r0, [fp, #-8]
	bl	HplAtm128Timer0AsyncP$configure_overflow
	ldr	r0, [fp, #-8]
	bl	sim_queue_insert
	b	.L1587
.L1592:
	nop
.L1587:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1594:
	.align	2
.L1593:
	.word	atm128RegFile
	.word	.LC151
	.word	.LC150
	.word	.LC152
	.size	HplAtm128Timer0AsyncP$timer0_overflow_handle, .-HplAtm128Timer0AsyncP$timer0_overflow_handle
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$allocate_overflow, %function
HplAtm128Timer0AsyncP$allocate_overflow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_queue_allocate_event
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1597
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1597+4
	str	r2, [r3, #24]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1598:
	.align	2
.L1597:
	.word	HplAtm128Timer0AsyncP$timer0_overflow_handle
	.word	sim_queue_cleanup_none
	.size	HplAtm128Timer0AsyncP$allocate_overflow, .-HplAtm128Timer0AsyncP$allocate_overflow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$schedule_new_overflow, %function
HplAtm128Timer0AsyncP$schedule_new_overflow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	HplAtm128Timer0AsyncP$allocate_overflow
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	HplAtm128Timer0AsyncP$configure_overflow
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1601
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L1600
	bl	HplAtm128Timer0AsyncP$cancel_overflow
.L1600:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1601
	ldr	r3, [fp, #-8]
	str	r3, [r1, r2, lsl #2]
	ldr	r0, [fp, #-8]
	bl	sim_queue_insert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1602:
	.align	2
.L1601:
	.word	HplAtm128Timer0AsyncP$overflow
	.size	HplAtm128Timer0AsyncP$schedule_new_overflow, .-HplAtm128Timer0AsyncP$schedule_new_overflow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$clock_to_sim, %function
HplAtm128Timer0AsyncP$clock_to_sim:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	bl	sim_ticks_per_sec
	ldr	r3, [fp, #-8]
	mul	r2, r0, r3
	ldr	r3, [fp, #-12]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-12]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	bl	HplAtm128Timer0AsyncP$notify_clockTicksPerSec
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	HplAtm128Timer0AsyncP$clock_to_sim, .-HplAtm128Timer0AsyncP$clock_to_sim
	.section	.rodata
	.align	2
.LC153:
	.ascii	"HplAtm128Timer0AsyncP: Setting timer: %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Timer0$set, %function
HplAtm128Timer0AsyncP$Timer0$set:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #24
	mov	r3, r0
	strb	r3, [fp, #-45]
	bl	HplAtm128Timer0AsyncP$Timer0$get
	mov	r3, r0
	strb	r3, [fp, #-37]
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	ldr	r2, .L1611
	ldr	r1, .L1611+4
	mov	r0, #200
	bl	sim_log_debug
	ldrb	r2, [fp, #-45]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L1610
	ldrb	r2, [fp, #-37]	@ zero_extendqisi2
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	sub	r3, r2, r3
	mov	r2, r3
	asr	r3, r2, #31
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	bl	HplAtm128Timer0AsyncP$shiftFromScale
	mov	r3, r0
	mov	r1, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	ip, r1, #32
	rsb	r0, r1, #32
	lsl	r5, r3, r1
	orr	r5, r5, r2, lsl ip
	orr	r5, r5, r2, lsr r0
	lsl	r4, r2, r1
	str	r4, [fp, #-36]
	str	r5, [fp, #-32]
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	HplAtm128Timer0AsyncP$clock_to_sim
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	ldrb	r2, [fp, #-45]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L1608
	bl	sim_node
	mov	ip, r0
	ldr	r2, .L1611+8
	lsl	r3, ip, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r8, r0, r2
	adc	r9, r1, r3
	ldr	r2, .L1611+8
	lsl	r3, ip, #3
	add	r3, r2, r3
	stm	r3, {r8-r9}
	b	.L1609
.L1608:
	bl	sim_node
	mov	ip, r0
	ldr	r2, .L1611+8
	lsl	r3, ip, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	subs	r6, r0, r2
	sbc	r7, r1, r3
	ldr	r2, .L1611+8
	lsl	r3, ip, #3
	add	r3, r2, r3
	stm	r3, {r6-r7}
.L1609:
	bl	HplAtm128Timer0AsyncP$schedule_new_overflow
	bl	HplAtm128Timer0AsyncP$notify_changed
	b	.L1605
.L1610:
	nop
.L1605:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L1612:
	.align	2
.L1611:
	.word	.LC153
	.word	.LC150
	.word	HplAtm128Timer0AsyncP$lastZero
	.size	HplAtm128Timer0AsyncP$Timer0$set, .-HplAtm128Timer0AsyncP$Timer0$set
	.section	.rodata
	.align	2
.LC154:
	.ascii	"Beginning compare 0x%p at %s\012\000"
	.align	2
.LC155:
	.ascii	"Handling compare at 0x%p @ %s\012\000"
	.align	2
.LC156:
	.ascii	"%s: CTC is set, clear timer.\012\000"
	.align	2
.LC157:
	.ascii	"%s: TCCR is 0x%hhx, %i, %i\012\000"
	.align	2
.LC158:
	.ascii	"TIFR is %hhx\012\000"
	.align	2
.LC159:
	.ascii	"Compare interrupt @ %s\012\000"
	.align	2
.LC160:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$timer0_compare_handle, %function
HplAtm128Timer0AsyncP$timer0_compare_handle:
	@ args = 0, pretend = 0, frame = 144
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #160
	str	r0, [fp, #-152]
	ldr	r3, .L1623
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	bl	sim_time_string
	mov	r3, r0
	str	r3, [sp]
	ldr	r3, [fp, #-152]
	ldr	r2, .L1623+4
	ldr	r1, .L1623+8
	mov	r0, #190
	bl	sim_log_debug
	ldr	r3, [fp, #-152]
	ldrb	r3, [r3, #13]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1622
	sub	r3, fp, #144
	mov	r1, #128
	mov	r0, r3
	bl	sim_print_now
	bl	sim_time_string
	mov	r3, r0
	str	r3, [sp]
	ldr	r3, [fp, #-152]
	ldr	r2, .L1623+12
	ldr	r1, .L1623+8
	mov	r0, #191
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #51
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #8
	cmp	r3, #0
	beq	.L1616
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #51
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #64
	cmp	r3, #0
	bne	.L1616
	ldr	r3, .L1623+20
	ldr	r2, .L1623+24
	ldr	r1, .L1623+8
	mov	r0, #192
	bl	sim_log_debug
	mov	r0, #0
	bl	HplAtm128Timer0AsyncP$Timer0$set
	b	.L1617
.L1616:
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #51
	ldr	r2, .L1623+16
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	mov	r4, r3
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #51
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #8
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r5, r3
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #51
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #64
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	str	r3, [sp, #8]
	str	r5, [sp, #4]
	str	r4, [sp]
	ldr	r3, .L1623+20
	ldr	r2, .L1623+28
	ldr	r1, .L1623+8
	mov	r0, #193
	bl	sim_log_debug
.L1617:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #55
	ldrb	r3, [r3]	@ zero_extendqisi2
	and	r3, r3, #2
	cmp	r3, #0
	beq	.L1618
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #54
	ldr	r2, .L1623+16
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	ldr	r2, .L1623+32
	ldr	r1, .L1623+8
	mov	r0, #194
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	ldrb	r3, [r3]	@ zero_extendqisi2
	bic	r3, r3, #2
	and	r0, r3, #255
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	mov	r2, r0
	strb	r2, [r3]
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #54
	ldr	r2, .L1623+16
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	ldr	r2, .L1623+32
	ldr	r1, .L1623+8
	mov	r0, #195
	bl	sim_log_debug
	sub	r3, fp, #144
	ldr	r2, .L1623+36
	ldr	r1, .L1623+8
	mov	r0, #196
	bl	sim_log_debug
	bl	INTERRUPT_15
	b	.L1619
.L1618:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	ldrb	r3, [r3]	@ zero_extendqisi2
	orr	r3, r3, #2
	and	r0, r3, #255
	ldr	r1, .L1623+16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	mov	r2, r0
	strb	r2, [r3]
.L1619:
	ldr	r3, [fp, #-152]
	ldrb	r3, [r3, #13]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1613
	ldr	r0, [fp, #-152]
	bl	HplAtm128Timer0AsyncP$configure_compare
	ldr	r0, [fp, #-152]
	bl	sim_queue_insert
	b	.L1613
.L1622:
	nop
.L1613:
	ldr	r3, .L1623
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1621
	bl	__stack_chk_fail
.L1621:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1624:
	.align	2
.L1623:
	.word	.LC160
	.word	.LC154
	.word	.LC150
	.word	.LC155
	.word	atm128RegFile
	.word	__FUNCTION__.12677
	.word	.LC156
	.word	.LC157
	.word	.LC158
	.word	.LC159
	.size	HplAtm128Timer0AsyncP$timer0_compare_handle, .-HplAtm128Timer0AsyncP$timer0_compare_handle
	.section	.rodata
	.align	2
.LC161:
	.ascii	"Allocated compare at 0x%p\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$allocate_compare, %function
HplAtm128Timer0AsyncP$allocate_compare:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_queue_allocate_event
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1627
	ldr	r1, .L1627+4
	mov	r0, #197
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	ldr	r2, .L1627+8
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1627+12
	str	r2, [r3, #24]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1628:
	.align	2
.L1627:
	.word	.LC161
	.word	.LC150
	.word	HplAtm128Timer0AsyncP$timer0_compare_handle
	.word	sim_queue_cleanup_none
	.size	HplAtm128Timer0AsyncP$allocate_compare, .-HplAtm128Timer0AsyncP$allocate_compare
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Timer$overflow, %function
Atm128AlarmAsyncP$0$Timer$overflow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	Atm128AlarmAsyncP$0$Timer$overflow, .-Atm128AlarmAsyncP$0$Timer$overflow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Timer0$overflow, %function
HplAtm128Timer0AsyncP$Timer0$overflow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	Atm128AlarmAsyncP$0$Timer$overflow
	nop
	pop	{fp, pc}
	.size	HplAtm128Timer0AsyncP$Timer0$overflow, .-HplAtm128Timer0AsyncP$Timer0$overflow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CounterToLocalTimeC$0$Counter$overflow, %function
CounterToLocalTimeC$0$Counter$overflow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	CounterToLocalTimeC$0$Counter$overflow, .-CounterToLocalTimeC$0$Counter$overflow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Counter$overflow, %function
Atm128AlarmAsyncP$0$Counter$overflow:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	CounterToLocalTimeC$0$Counter$overflow
	nop
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Counter$overflow, .-Atm128AlarmAsyncP$0$Counter$overflow
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_enable_interrupt, %function
__nesc_enable_interrupt:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #63
	ldr	r2, .L1634
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r1, r3, #255
	mov	r0, r1
	ldr	r2, .L1634
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #5
	add	r3, r2, r3
	add	r3, r3, r0
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r1
	mvn	r3, r3, lsl #25
	mvn	r3, r3, lsr #25
	and	r1, r3, #255
	ldr	r2, .L1634
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #5
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	pop	{r4, r5, fp, pc}
.L1635:
	.align	2
.L1634:
	.word	atm128RegFile
	.size	__nesc_enable_interrupt, .-__nesc_enable_interrupt
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Compare$get, %function
Atm128AlarmAsyncP$0$Compare$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	HplAtm128Timer0AsyncP$Compare$get
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Compare$get, .-Atm128AlarmAsyncP$0$Compare$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Compare$fired, %function
Atm128AlarmAsyncP$0$Compare$fired:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	Atm128AlarmAsyncP$0$Compare$get
	mov	r3, r0
	add	r4, r3, #1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1641
	ldr	r2, [r2, r3, lsl #2]
	add	r2, r4, r2
	ldr	r1, .L1641
	str	r2, [r1, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1641
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	str	r3, [fp, #-16]
	bl	__nesc_enable_interrupt
	bl	Atm128AlarmAsyncP$0$setInterrupt
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L1640
	bl	Atm128AlarmAsyncP$0$Counter$overflow
.L1640:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1642:
	.align	2
.L1641:
	.word	Atm128AlarmAsyncP$0$base
	.size	Atm128AlarmAsyncP$0$Compare$fired, .-Atm128AlarmAsyncP$0$Compare$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Compare$fired, %function
HplAtm128Timer0AsyncP$Compare$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	Atm128AlarmAsyncP$0$Compare$fired
	nop
	pop	{fp, pc}
	.size	HplAtm128Timer0AsyncP$Compare$fired, .-HplAtm128Timer0AsyncP$Compare$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$fired$postTask, %function
AlarmToTimerC$0$fired$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #2
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AlarmToTimerC$0$fired$postTask, .-AlarmToTimerC$0$fired$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AlarmToTimerC$0$Alarm$fired, %function
AlarmToTimerC$0$Alarm$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	AlarmToTimerC$0$fired$postTask
	nop
	pop	{fp, pc}
	.size	AlarmToTimerC$0$Alarm$fired, .-AlarmToTimerC$0$Alarm$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Alarm$fired, %function
Atm128AlarmAsyncP$0$Alarm$fired:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	AlarmToTimerC$0$Alarm$fired
	nop
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Alarm$fired, .-Atm128AlarmAsyncP$0$Alarm$fired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$Packet$setPayloadLength, %function
AMQueueImplP$0$Packet$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TossimActiveMessageC$Packet$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	AMQueueImplP$0$Packet$setPayloadLength, .-AMQueueImplP$0$Packet$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$2$BitVector$set, %function
BitVectorC$2$BitVector$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$getMask
	mov	r3, r0
	mov	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L1650
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [r3]	@ zero_extendqisi2
	and	r3, r5, #255
	orr	r3, r2, r3
	and	r1, r3, #255
	ldr	r2, .L1650
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1651:
	.align	2
.L1650:
	.word	BitVectorC$2$m_bits
	.size	BitVectorC$2$BitVector$set, .-BitVectorC$2$BitVector$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$Track$set, %function
SimpleLinkCacheP$Track$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	BitVectorC$2$BitVector$set
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$Track$set, .-SimpleLinkCacheP$Track$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$receive, %function
DsrControlP$0$SinglePacketEngine$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$receive
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SinglePacketEngine$receive, .-DsrControlP$0$SinglePacketEngine$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PlatformP$power_init, %function
PlatformP$power_init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #53
	ldr	r2, .L1656
	add	r3, r3, r2
	mov	r2, #32
	strb	r2, [r3]
	nop
	pop	{fp, pc}
.L1657:
	.align	2
.L1656:
	.word	atm128RegFile
	.size	PlatformP$power_init, .-PlatformP$power_init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	MotePlatformP$SubInit$default$init, %function
MotePlatformP$SubInit$default$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	MotePlatformP$SubInit$default$init, .-MotePlatformP$SubInit$default$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	MotePlatformP$SubInit$init, %function
MotePlatformP$SubInit$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	MotePlatformP$SubInit$default$init
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	MotePlatformP$SubInit$init, .-MotePlatformP$SubInit$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128GeneralIOPinP$4$IO$clr, %function
HplAtm128GeneralIOPinP$4$IO$clr:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1663
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #27
	ldrb	r3, [r3]	@ zero_extendqisi2
	bic	r3, r3, #16
	and	r0, r3, #255
	ldr	r1, .L1663
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #27
	mov	r2, r0
	strb	r2, [r3]
	nop
	pop	{fp, pc}
.L1664:
	.align	2
.L1663:
	.word	atm128RegFile
	.size	HplAtm128GeneralIOPinP$4$IO$clr, .-HplAtm128GeneralIOPinP$4$IO$clr
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	MotePlatformP$SerialIdPin$clr, %function
MotePlatformP$SerialIdPin$clr:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	HplAtm128GeneralIOPinP$4$IO$clr
	nop
	pop	{fp, pc}
	.size	MotePlatformP$SerialIdPin$clr, .-MotePlatformP$SerialIdPin$clr
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128GeneralIOPinP$4$IO$makeInput, %function
HplAtm128GeneralIOPinP$4$IO$makeInput:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1667
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #26
	ldrb	r3, [r3]	@ zero_extendqisi2
	bic	r3, r3, #16
	and	r0, r3, #255
	ldr	r1, .L1667
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #26
	mov	r2, r0
	strb	r2, [r3]
	nop
	pop	{fp, pc}
.L1668:
	.align	2
.L1667:
	.word	atm128RegFile
	.size	HplAtm128GeneralIOPinP$4$IO$makeInput, .-HplAtm128GeneralIOPinP$4$IO$makeInput
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	MotePlatformP$SerialIdPin$makeInput, %function
MotePlatformP$SerialIdPin$makeInput:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	HplAtm128GeneralIOPinP$4$IO$makeInput
	nop
	pop	{fp, pc}
	.size	MotePlatformP$SerialIdPin$makeInput, .-MotePlatformP$SerialIdPin$makeInput
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	MotePlatformP$PlatformInit$init, %function
MotePlatformP$PlatformInit$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #21
	ldr	r2, .L1672
	add	r3, r3, r2
	mov	r2, #0
	strb	r2, [r3]
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #20
	ldr	r2, .L1672
	add	r3, r3, r2
	mvn	r2, #0
	strb	r2, [r3]
	bl	MotePlatformP$SerialIdPin$makeInput
	bl	MotePlatformP$SerialIdPin$clr
	bl	MotePlatformP$SubInit$init
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
.L1673:
	.align	2
.L1672:
	.word	atm128RegFile
	.size	MotePlatformP$PlatformInit$init, .-MotePlatformP$PlatformInit$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PlatformP$MoteInit$init, %function
PlatformP$MoteInit$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	MotePlatformP$PlatformInit$init
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PlatformP$MoteInit$init, .-PlatformP$MoteInit$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	MeasureClockC$Init$init, %function
MeasureClockC$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	MeasureClockC$Init$init, .-MeasureClockC$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PlatformP$MeasureClock$init, %function
PlatformP$MeasureClock$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	MeasureClockC$Init$init
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PlatformP$MeasureClock$init, .-PlatformP$MeasureClock$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PlatformP$Init$init, %function
PlatformP$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PlatformP$MeasureClock$init
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	PlatformP$MoteInit$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1681
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L1682
.L1681:
	bl	PlatformP$power_init
	mov	r3, #0
.L1682:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PlatformP$Init$init, .-PlatformP$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMainP$PlatformInit$init, %function
SimMainP$PlatformInit$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	PlatformP$Init$init
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimMainP$PlatformInit$init, .-SimMainP$PlatformInit$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMainP$Scheduler$runNextTask, %function
SimMainP$Scheduler$runNextTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	SimSchedulerBasicP$Scheduler$runNextTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimMainP$Scheduler$runNextTask, .-SimMainP$Scheduler$runNextTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Init$init, %function
PacketEngineP$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L1688
.L1689:
	bl	sim_node
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, .L1691
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #30
	orr	r3, r3, #1
	strb	r3, [r1, r2, lsl #3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L1688:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #39
	bls	.L1689
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1691+4
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1691+8
	mov	r1, #40
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1691+12
	mov	r1, #40
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1691+16
	mov	r1, #40
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1691+20
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1692:
	.align	2
.L1691:
	.word	PacketEngineP$msgBuffer
	.word	PacketEngineP$nextFreePkt
	.word	PacketEngineP$nextAddedPkt
	.word	PacketEngineP$nextWaitPkt
	.word	PacketEngineP$nextActionPkt
	.word	PacketEngineP$running
	.size	PacketEngineP$Init$init, .-PacketEngineP$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$Init$init, %function
LruDataCacheP$0$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1695
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1695+4
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1696:
	.align	2
.L1695:
	.word	LruDataCacheP$0$first
	.word	LruDataCacheP$0$count
	.size	LruDataCacheP$0$Init$init, .-LruDataCacheP$0$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$0$Init$init, %function
PoolP$0$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L1698
.L1699:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r1, r0
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	mov	r3, #980
	mul	r3, r4, r3
	add	r3, r2, r3
	ldr	r2, .L1701
	add	r2, r3, r2
	ldr	r0, .L1701+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	ldr	r1, [fp, #-16]
	add	r3, r3, r1
	str	r2, [r0, r3, lsl #2]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L1698:
	ldr	r3, [fp, #-16]
	cmp	r3, #19
	ble	.L1699
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1701+8
	mov	r1, #20
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1701+12
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1702:
	.align	2
.L1701:
	.word	PoolP$0$pool
	.word	PoolP$0$queue
	.word	PoolP$0$free
	.word	PoolP$0$index
	.size	PoolP$0$Init$init, .-PoolP$0$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$1$Init$init, %function
PoolP$1$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L1704
.L1705:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r1, r0
	ldr	r2, [fp, #-16]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	mov	r3, #980
	mul	r3, r4, r3
	add	r3, r2, r3
	ldr	r2, .L1707
	add	r2, r3, r2
	ldr	r0, .L1707+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	ldr	r1, [fp, #-16]
	add	r3, r3, r1
	str	r2, [r0, r3, lsl #2]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L1704:
	ldr	r3, [fp, #-16]
	cmp	r3, #19
	ble	.L1705
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1707+8
	mov	r1, #20
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1707+12
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1708:
	.align	2
.L1707:
	.word	PoolP$1$pool
	.word	PoolP$1$queue
	.word	PoolP$1$free
	.word	PoolP$1$index
	.size	PoolP$1$Init$init, .-PoolP$1$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	StateImplP$Init$init, %function
StateImplP$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L1710
.L1711:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1713
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L1710:
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L1711
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1714:
	.align	2
.L1713:
	.word	StateImplP$state
	.size	StateImplP$Init$init, .-StateImplP$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	RandomMlcgP$Init$init, %function
RandomMlcgP$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	ldr	r3, .L1717
	ldrh	r3, [r3]
	add	r4, r3, #1
	bl	sim_node
	mov	r3, r0
	mov	r1, r4
	ldr	r2, .L1717+4
	str	r1, [r2, r3, lsl #2]
	mov	r3, #0
	mov	r0, r3
	pop	{r4, r5, fp, pc}
.L1718:
	.align	2
.L1717:
	.word	TOS_NODE_ID
	.word	RandomMlcgP$seed
	.size	RandomMlcgP$Init$init, .-RandomMlcgP$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Compare$start, %function
HplAtm128Timer0AsyncP$Compare$start:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L1720
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #55
	ldrb	r3, [r3]	@ zero_extendqisi2
	orr	r3, r3, #2
	and	r0, r3, #255
	ldr	r1, .L1720
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #55
	mov	r2, r0
	strb	r2, [r3]
	nop
	pop	{fp, pc}
.L1721:
	.align	2
.L1720:
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$Compare$start, .-HplAtm128Timer0AsyncP$Compare$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Compare$start, %function
Atm128AlarmAsyncP$0$Compare$start:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	HplAtm128Timer0AsyncP$Compare$start
	nop
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Compare$start, .-Atm128AlarmAsyncP$0$Compare$start
	.section	.rodata
	.align	2
.LC162:
	.ascii	"Setting control to be 0x%hhx\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Timer0Ctrl$setControl, %function
HplAtm128Timer0AsyncP$Timer0Ctrl$setControl:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	strb	r0, [fp, #-8]
	ldrb	r3, [fp, #-8]	@ zero_extendqisi2
	ldr	r2, .L1724
	ldr	r1, .L1724+4
	mov	r0, #202
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #51
	ldr	r2, .L1724+8
	add	r3, r3, r2
	ldrb	r2, [fp, #-8]	@ zero_extendqisi2
	strb	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1725:
	.align	2
.L1724:
	.word	.LC162
	.word	.LC150
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$Timer0Ctrl$setControl, .-HplAtm128Timer0AsyncP$Timer0Ctrl$setControl
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$TimerCtrl$setControl, %function
Atm128AlarmAsyncP$0$TimerCtrl$setControl:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	strb	r0, [fp, #-8]
	ldrb	r0, [fp, #-8]
	bl	HplAtm128Timer0AsyncP$Timer0Ctrl$setControl
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$TimerCtrl$setControl, .-Atm128AlarmAsyncP$0$TimerCtrl$setControl
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous, %function
HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #48
	ldr	r2, .L1728
	add	r3, r3, r2
	ldrb	r2, [r3]
	and	r2, r2, #255
	orr	r2, r2, #8
	and	r2, r2, #255
	strb	r2, [r3]
	nop
	pop	{fp, pc}
.L1729:
	.align	2
.L1728:
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous, .-HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous, %function
Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	HplAtm128Timer0AsyncP$TimerAsync$setTimer0Asynchronous
	nop
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous, .-Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Init$init, %function
Atm128AlarmAsyncP$0$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	Atm128AlarmAsyncP$0$TimerAsync$setTimer0Asynchronous
	mov	r3, #0
	strb	r3, [fp, #-8]
	ldrb	r3, [fp, #-8]
	bic	r3, r3, #4
	orr	r3, r3, #3
	strb	r3, [fp, #-8]
	ldrb	r3, [fp, #-8]
	orr	r3, r3, #8
	strb	r3, [fp, #-8]
	ldrb	r0, [fp, #-8]
	bl	Atm128AlarmAsyncP$0$TimerCtrl$setControl
	mov	r0, #230
	bl	Atm128AlarmAsyncP$0$Compare$set
	bl	Atm128AlarmAsyncP$0$Compare$start
	bl	Atm128AlarmAsyncP$0$setInterrupt
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	Atm128AlarmAsyncP$0$Init$init, .-Atm128AlarmAsyncP$0$Init$init
	.section	.rodata
	.align	2
.LC163:
	.ascii	"TossimPacketModelC: Init.init() called\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Init$init, %function
TossimPacketModelC$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r2, .L1735
	ldr	r1, .L1735+4
	mov	r0, #212
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1735+8
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1735+12
	lsl	r3, r3, #5
	add	r3, r2, r3
	mov	r2, #1
	strb	r2, [r3, #13]
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1736:
	.align	2
.L1735:
	.word	.LC163
	.word	.LC108
	.word	TossimPacketModelC$initialized
	.word	TossimPacketModelC$sendEvent
	.size	TossimPacketModelC$Init$init, .-TossimPacketModelC$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Init$init, %function
GraphSparseP$0$Init$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1741
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L1738
.L1739:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L1741+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mvn	r2, #5
	strb	r2, [r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L1738:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L1739
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1742:
	.align	2
.L1741:
	.word	GraphSparseP$0$vSize
	.word	GraphSparseP$0$v
	.size	GraphSparseP$0$Init$init, .-GraphSparseP$0$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$BitVector$clearAll, %function
BitVectorC$4$BitVector$clearAll:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	lsl	r3, r3, #5
	ldr	r2, .L1744
	add	r3, r3, r2
	mov	r2, #32
	mov	r1, #0
	mov	r0, r3
	bl	memset
	nop
	pop	{fp, pc}
.L1745:
	.align	2
.L1744:
	.word	BitVectorC$4$m_bits
	.size	BitVectorC$4$BitVector$clearAll, .-BitVectorC$4$BitVector$clearAll
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$Init$init, %function
BitVectorC$4$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	BitVectorC$4$BitVector$clearAll
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
	.size	BitVectorC$4$Init$init, .-BitVectorC$4$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$Init$init, %function
SourceShortestPathP$0$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1750
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1750+4
	mov	r1, #20
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1750+8
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	SourceShortestPathP$0$initTree
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1751:
	.align	2
.L1750:
	.word	SourceShortestPathP$0$buildingTree
	.word	SourceShortestPathP$0$lastSrc
	.word	SourceShortestPathP$0$rebuildNeeded
	.size	SourceShortestPathP$0$Init$init, .-SourceShortestPathP$0$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$Init$init, %function
PriorityQueueP$0$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	PriorityQueueP$0$clearData
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
	.size	PriorityQueueP$0$Init$init, .-PriorityQueueP$0$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$1$Init$init, %function
LruDataCacheP$1$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1756
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1756+4
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1757:
	.align	2
.L1756:
	.word	LruDataCacheP$1$first
	.word	LruDataCacheP$1$count
	.size	LruDataCacheP$1$Init$init, .-LruDataCacheP$1$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$Init$init, %function
LruDataCacheP$2$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1760
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1760+4
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1761:
	.align	2
.L1760:
	.word	LruDataCacheP$2$first
	.word	LruDataCacheP$2$count
	.size	LruDataCacheP$2$Init$init, .-LruDataCacheP$2$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$Init$init, %function
DataTimerP$0$Init$init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1764
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1765:
	.align	2
.L1764:
	.word	DataTimerP$0$size
	.size	DataTimerP$0$Init$init, .-DataTimerP$0$Init$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMainP$SoftwareInit$init, %function
SimMainP$SoftwareInit$init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	DataTimerP$0$Init$init
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	LruDataCacheP$2$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	LruDataCacheP$1$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	PriorityQueueP$0$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	SourceShortestPathP$0$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	BitVectorC$4$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	GraphSparseP$0$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	TossimPacketModelC$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	Atm128AlarmAsyncP$0$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	RandomMlcgP$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	StateImplP$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	PoolP$1$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	PoolP$0$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	LruDataCacheP$0$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	PacketEngineP$Init$init
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimMainP$SoftwareInit$init, .-SimMainP$SoftwareInit$init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Random$rand16, %function
TestDsrP$Random$rand16:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	RandomMlcgP$Random$rand16
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$Random$rand16, .-TestDsrP$Random$rand16
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$startDoneTask$postTask, %function
TossimPacketModelC$startDoneTask$postTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #4
	bl	SimSchedulerBasicP$TaskBasic$postTask
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$startDoneTask$postTask, .-TossimPacketModelC$startDoneTask$postTask
	.section	.rodata
	.align	2
.LC164:
	.ascii	"TossimPacketModelC: Control.start() called before i"
	.ascii	"nitialization!\012\000"
	.align	2
.LC165:
	.ascii	"TossimPacketModelC: Control.start() called.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$Control$start, %function
TossimPacketModelC$Control$start:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1775
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1773
	ldr	r2, .L1775+4
	ldr	r1, .L1775+8
	mov	r0, #213
	bl	sim_log_error
	mov	r3, #1
	b	.L1774
.L1773:
	ldr	r2, .L1775+12
	ldr	r1, .L1775+8
	mov	r0, #214
	bl	sim_log_debug
	bl	TossimPacketModelC$startDoneTask$postTask
	mov	r3, #0
.L1774:
	mov	r0, r3
	pop	{fp, pc}
.L1776:
	.align	2
.L1775:
	.word	TossimPacketModelC$initialized
	.word	.LC164
	.word	.LC108
	.word	.LC165
	.size	TossimPacketModelC$Control$start, .-TossimPacketModelC$Control$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$AMControl$start, %function
TestDsrP$AMControl$start:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	TossimPacketModelC$Control$start
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$AMControl$start, .-TestDsrP$AMControl$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Boot$booted, %function
TestDsrP$Boot$booted:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	ldr	r3, .L1782
	ldr	r3, [r3]
	mov	r0, r3
	bl	setVars
	bl	TestDsrP$AMControl$start
	bl	TestDsrP$Random$rand16
	mov	r3, r0
	mov	r4, r3
	bl	sim_node
	mov	r1, r0
	ldr	r3, .L1782+4
	umull	r2, r3, r4, r3
	sub	r2, r4, r3
	lsr	r2, r2, #1
	add	r3, r3, r2
	lsr	r2, r3, #4
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	sub	r3, r4, r3
	lsl	r3, r3, #16
	lsr	r2, r3, #16
	ldr	r0, .L1782+8
	lsl	r3, r1, #1
	add	r3, r0, r3
	strh	r2, [r3]	@ movhi
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1782+8
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r4, [r3]
	bl	TestDsrP$AMPacket$address
	mov	r3, r0
	cmp	r4, r3
	bcc	.L1781
	bl	sim_node
	mov	r3, r0
	ldr	r1, .L1782+8
	lsl	r2, r3, #1
	add	r2, r1, r2
	ldrh	r2, [r2]
	add	r2, r2, #1
	lsl	r2, r2, #16
	lsr	r2, r2, #16
	ldr	r1, .L1782+8
	lsl	r3, r3, #1
	add	r3, r1, r3
	strh	r2, [r3]	@ movhi
.L1781:
	nop
	pop	{r4, r5, fp, pc}
.L1783:
	.align	2
.L1782:
	.word	current_node
	.word	-1356305461
	.word	TestDsrP$dest
	.size	TestDsrP$Boot$booted, .-TestDsrP$Boot$booted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$1$BitVector$clearAll, %function
BitVectorC$1$BitVector$clearAll:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, .L1785
	add	r3, r3, r2
	mov	r2, #5
	mov	r1, #0
	mov	r0, r3
	bl	memset
	nop
	pop	{fp, pc}
.L1786:
	.align	2
.L1785:
	.word	BitVectorC$1$m_bits
	.size	BitVectorC$1$BitVector$clearAll, .-BitVectorC$1$BitVector$clearAll
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Salvage$clearAll, %function
DsrControlP$0$Salvage$clearAll:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	BitVectorC$1$BitVector$clearAll
	nop
	pop	{fp, pc}
	.size	DsrControlP$0$Salvage$clearAll, .-DsrControlP$0$Salvage$clearAll
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$0$BitVector$clearAll, %function
BitVectorC$0$BitVector$clearAll:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, .L1789
	add	r3, r3, r2
	mov	r2, #5
	mov	r1, #0
	mov	r0, r3
	bl	memset
	nop
	pop	{fp, pc}
.L1790:
	.align	2
.L1789:
	.word	BitVectorC$0$m_bits
	.size	BitVectorC$0$BitVector$clearAll, .-BitVectorC$0$BitVector$clearAll
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Compose$clearAll, %function
DsrControlP$0$Compose$clearAll:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	BitVectorC$0$BitVector$clearAll
	nop
	pop	{fp, pc}
	.size	DsrControlP$0$Compose$clearAll, .-DsrControlP$0$Compose$clearAll
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Random$rand16, %function
DsrControlP$0$Random$rand16:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	RandomMlcgP$Random$rand16
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$Random$rand16, .-DsrControlP$0$Random$rand16
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Boot$booted, %function
DsrControlP$0$Boot$booted:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	bl	DsrControlP$0$Random$rand16
	mov	r3, r0
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L1795
	strb	r1, [r2, r3]
	bl	DsrControlP$0$Compose$clearAll
	bl	DsrControlP$0$Salvage$clearAll
	nop
	pop	{r4, r5, fp, pc}
.L1796:
	.align	2
.L1795:
	.word	DsrControlP$0$nextIdent
	.size	DsrControlP$0$Boot$booted, .-DsrControlP$0$Boot$booted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$BitVector$clearAll, %function
IndexedAllocBitsP$0$BitVector$clearAll:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	BitVectorC$4$BitVector$clearAll
	nop
	pop	{fp, pc}
	.size	IndexedAllocBitsP$0$BitVector$clearAll, .-IndexedAllocBitsP$0$BitVector$clearAll
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$Boot$booted, %function
IndexedAllocBitsP$0$Boot$booted:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	IndexedAllocBitsP$0$BitVector$clearAll
	nop
	pop	{fp, pc}
	.size	IndexedAllocBitsP$0$Boot$booted, .-IndexedAllocBitsP$0$Boot$booted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMainP$Boot$booted, %function
SimMainP$Boot$booted:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	IndexedAllocBitsP$0$Boot$booted
	bl	DsrControlP$0$Boot$booted
	bl	TestDsrP$Boot$booted
	nop
	pop	{fp, pc}
	.size	SimMainP$Boot$booted, .-SimMainP$Boot$booted
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$getEuid, %function
SimMoteP$SimMote$getEuid:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1802
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	pop	{fp, pc}
.L1803:
	.align	2
.L1802:
	.word	SimMoteP$euid
	.size	SimMoteP$SimMote$getEuid, .-SimMoteP$SimMote$getEuid
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$setEuid, %function
SimMoteP$SimMote$setEuid:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1805
	lsl	r3, r3, #3
	add	r1, r2, r3
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1806:
	.align	2
.L1805:
	.word	SimMoteP$euid
	.size	SimMoteP$SimMote$setEuid, .-SimMoteP$SimMote$setEuid
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$getVariableInfo, %function
SimMoteP$SimMote$getVariableInfo:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	mov	r0, r3
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	ldr	r1, [fp, #-8]
	bl	__nesc_nido_resolve
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimMoteP$SimMote$getVariableInfo, .-SimMoteP$SimMote$getVariableInfo
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$turnOff, %function
SimMoteP$SimMote$turnOff:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1810
	mov	r1, #0
	strb	r1, [r2, r3]
	nop
	pop	{fp, pc}
.L1811:
	.align	2
.L1810:
	.word	SimMoteP$isOn
	.size	SimMoteP$SimMote$turnOff, .-SimMoteP$SimMote$turnOff
	.section	.rodata
	.align	2
.LC166:
	.ascii	"Turning on mote %i at time %s.\012\000"
	.align	2
.LC167:
	.ascii	"SimMoteP\000"
	.align	2
.LC168:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$sim_mote_boot_handle, %function
SimMoteP$sim_mote_boot_handle:
	@ args = 0, pretend = 0, frame = 144
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #152
	str	r0, [fp, #-144]
	ldr	r3, .L1814
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #136
	mov	r1, #128
	mov	r0, r3
	bl	sim_print_now
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L1814+4
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	mov	r2, r3
	sub	r3, fp, #136
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1814+8
	ldr	r1, .L1814+12
	mov	r0, #104
	bl	sim_log_debug
	bl	SimMoteP$SimMote$turnOn
	nop
	ldr	r3, .L1814
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1813
	bl	__stack_chk_fail
.L1813:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1815:
	.align	2
.L1814:
	.word	.LC168
	.word	SimMoteP$bootEvent
	.word	.LC166
	.word	.LC167
	.size	SimMoteP$sim_mote_boot_handle, .-SimMoteP$sim_mote_boot_handle
	.align	2
	.global	sim_queue_init
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_init, %function
sim_queue_init:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r0, .L1817
	bl	init_heap
	nop
	pop	{fp, pc}
.L1818:
	.align	2
.L1817:
	.word	eventHeap
	.size	sim_queue_init, .-sim_queue_init
	.section	.rodata
	.align	2
.LC169:
	.ascii	"Inserting 0x%p\012\000"
	.align	2
.LC170:
	.ascii	"Queue\000"
	.text
	.align	2
	.global	sim_queue_insert
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_insert, %function
sim_queue_insert:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1820
	ldr	r1, .L1820+4
	mov	r0, #0
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-8]
	ldr	r0, .L1820+8
	bl	heap_insert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1821:
	.align	2
.L1820:
	.word	.LC169
	.word	.LC170
	.word	eventHeap
	.size	sim_queue_insert, .-sim_queue_insert
	.section	.rodata
	.align	2
.LC171:
	.ascii	"DEBUG (%i): \000"
	.align	2
.LC172:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_debug, %function
sim_log_debug:
	@ args = 4, pretend = 8, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 1
	push	{r2, r3}
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	mov	r3, r0
	str	r1, [fp, #-28]
	strh	r3, [fp, #-22]	@ movhi
	ldr	r3, [fp, #4]
	str	r3, [fp, #-32]
	ldr	r3, .L1827
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1827+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L1823
	ldrh	r3, [fp, #-22]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	fillInOutput
.L1823:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L1824
.L1825:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1827+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	add	r3, fp, #8
	str	r3, [fp, #-20]
	bl	sim_node
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L1827+8
	ldr	r0, [fp, #-12]
	bl	fprintf
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-32]
	ldr	r0, [fp, #-12]
	bl	vfprintf
	ldr	r0, [fp, #-12]
	bl	fflush
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L1824:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1827+4
	ldr	r3, [r2, r3, lsl #3]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L1825
	nop
	ldr	r3, .L1827
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1826
	bl	__stack_chk_fail
.L1826:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #8
	bx	lr
.L1828:
	.align	2
.L1827:
	.word	.LC172
	.word	outputs
	.word	.LC171
	.size	sim_log_debug, .-sim_log_debug
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fillInOutput, %function
fillInOutput:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #52
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-44]
	ldr	r0, [fp, #-60]
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-28]
	ldr	r0, [fp, #-60]
	bl	strlen
	mov	r3, r0
	add	r3, r3, #1
	mov	r2, r3
	mov	r1, #0
	ldr	r0, [fp, #-28]
	bl	memset
	b	.L1830
.L1834:
	mov	r1, #44
	ldr	r0, [fp, #-48]
	bl	strrchr
	str	r0, [fp, #-52]
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	bne	.L1831
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-28]
	bl	strcpy
	b	.L1832
.L1831:
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-28]
	bl	memcpy
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r3, [fp, #-28]
	add	r3, r3, r2
	mov	r2, #0
	strb	r2, [r3]
.L1832:
	ldr	r3, .L1846
	ldr	r3, [r3]
	ldr	r1, [fp, #-48]
	mov	r0, r3
	bl	hashtable_search
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L1833
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-44]
.L1833:
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L1830:
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	bne	.L1834
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L1846+4
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #3
	add	r3, r2, r3
	str	r1, [r3, #4]
	ldr	r2, .L1846+4
	ldr	r3, [fp, #-56]
	mov	r1, #0
	str	r1, [r2, r3, lsl #3]
	b	.L1835
.L1845:
	mov	r1, #44
	ldr	r0, [fp, #-48]
	bl	strrchr
	str	r0, [fp, #-52]
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	bne	.L1836
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-28]
	bl	strcpy
	b	.L1837
.L1836:
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-28]
	bl	memcpy
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	mov	r2, r3
	ldr	r3, [fp, #-28]
	add	r3, r3, r2
	mov	r2, #0
	strb	r2, [r3]
.L1837:
	ldr	r3, .L1846
	ldr	r3, [r3]
	ldr	r1, [fp, #-48]
	mov	r0, r3
	bl	hashtable_search
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L1838
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L1839
.L1844:
	mov	r3, #0
	str	r3, [fp, #-32]
	ldr	r2, .L1846+4
	ldr	r3, [fp, #-56]
	ldr	r3, [r2, r3, lsl #3]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L1840
.L1842:
	ldr	r2, .L1846+4
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	fileno
	mov	r4, r0
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	fileno
	mov	r3, r0
	cmp	r4, r3
	bne	.L1841
	mov	r3, #1
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-36]
.L1841:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L1840:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L1842
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L1843
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #12]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r1, .L1846+4
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldr	r1, [r3, #4]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r2, .L1846+4
	ldr	r3, [fp, #-56]
	ldr	r3, [r2, r3, lsl #3]
	add	r2, r3, #1
	ldr	r1, .L1846+4
	ldr	r3, [fp, #-56]
	str	r2, [r1, r3, lsl #3]
.L1843:
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L1839:
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-40]
	cmp	r2, r3
	blt	.L1844
.L1838:
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L1835:
	ldr	r3, [fp, #-52]
	cmp	r3, #0
	bne	.L1845
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1847:
	.align	2
.L1846:
	.word	channelTable
	.word	outputs
	.size	fillInOutput, .-fillInOutput
	.align	2
	.global	sim_node
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_node, %function
sim_node:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1850
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1851:
	.align	2
.L1850:
	.word	current_node
	.size	sim_node, .-sim_node
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	up_heap, %function
up_heap:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L1855
	ldr	r3, [fp, #-20]
	sub	r3, r3, #1
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-16]
	ldr	r0, [r1, #4]
	ldr	r1, [fp, #-20]
	lsl	r1, r1, #4
	add	r1, r0, r1
	add	r1, r1, #8
	ldmia	r1, {r0-r1}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L1852
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	add	r0, r2, r3
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	add	r3, r2, r3
	mov	r1, r3
	bl	swap
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-16]
	bl	up_heap
	b	.L1852
.L1855:
	nop
.L1852:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	up_heap, .-up_heap
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	swap, %function
swap:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, [fp, #-24]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-28]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-24]
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r1, [fp, #-28]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	str	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	swap, .-swap
	.section	.rodata
	.align	2
.LC173:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	sim_queue_pop
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_pop, %function
sim_queue_pop:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L1860
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #20
	mov	r1, r3
	ldr	r0, .L1860+4
	bl	heap_pop_min_data
	mov	r3, r0
	ldr	r2, .L1860
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1859
	bl	__stack_chk_fail
.L1859:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1861:
	.align	2
.L1860:
	.word	.LC173
	.word	eventHeap
	.size	sim_queue_pop, .-sim_queue_pop
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	heap_pop_min_data, %function
heap_pop_min_data:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	sub	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L1863
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-20]
	stm	r1, {r2-r3}
.L1863:
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #4
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	ldr	r1, [r2, #4]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	sub	r2, r3, #1
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	mov	r1, #0
	ldr	r0, [fp, #-16]
	bl	down_heap
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	heap_pop_min_data, .-heap_pop_min_data
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	down_heap, %function
down_heap:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	lsl	r3, r3, #1
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #1
	add	r3, r3, #1
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]
	ldr	r2, [fp, #-40]
	cmp	r2, r3
	bge	.L1866
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L1867
	ldr	r3, [fp, #-36]
	b	.L1868
.L1867:
	ldr	r3, [fp, #-40]
.L1868:
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L1865
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #4
	add	r0, r2, r3
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #4
	add	r3, r2, r3
	mov	r1, r3
	bl	swap
	ldr	r1, [fp, #-32]
	ldr	r0, [fp, #-48]
	bl	down_heap
	b	.L1865
.L1866:
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L1871
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L1865
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #4
	add	r0, r2, r3
	ldr	r3, [fp, #-48]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #4
	add	r3, r2, r3
	mov	r1, r3
	bl	swap
	b	.L1865
.L1871:
	nop
.L1865:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	down_heap, .-down_heap
	.align	2
	.global	sim_queue_is_empty
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_is_empty, %function
sim_queue_is_empty:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r0, .L1874
	bl	heap_is_empty
	mov	r3, r0
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L1875:
	.align	2
.L1874:
	.word	eventHeap
	.size	sim_queue_is_empty, .-sim_queue_is_empty
	.align	2
	.global	sim_queue_peek_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_peek_time, %function
sim_queue_peek_time:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r0, .L1879
	bl	heap_is_empty
	mov	r3, r0
	cmp	r3, #0
	beq	.L1877
	mvn	r2, #0
	mvn	r3, #0
	b	.L1878
.L1877:
	ldr	r0, .L1879
	bl	heap_get_min_key
	mov	r2, r0
	mov	r3, r1
.L1878:
	mov	r0, r2
	mov	r1, r3
	pop	{fp, pc}
.L1880:
	.align	2
.L1879:
	.word	eventHeap
	.size	sim_queue_peek_time, .-sim_queue_peek_time
	.section	.rodata
	.align	2
.LC174:
	.ascii	"cleanup_none: 0x%p\012\000"
	.text
	.align	2
	.global	sim_queue_cleanup_none
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_cleanup_none, %function
sim_queue_cleanup_none:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1882
	ldr	r1, .L1882+4
	mov	r0, #1
	bl	sim_log_debug
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1883:
	.align	2
.L1882:
	.word	.LC174
	.word	.LC170
	.size	sim_queue_cleanup_none, .-sim_queue_cleanup_none
	.section	.rodata
	.align	2
.LC175:
	.ascii	"cleanup_event: 0x%p\012\000"
	.text
	.align	2
	.global	sim_queue_cleanup_event
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_cleanup_event, %function
sim_queue_cleanup_event:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1885
	ldr	r1, .L1885+4
	mov	r0, #2
	bl	sim_log_debug
	ldr	r0, [fp, #-8]
	bl	free
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1886:
	.align	2
.L1885:
	.word	.LC175
	.word	.LC170
	.size	sim_queue_cleanup_event, .-sim_queue_cleanup_event
	.section	.rodata
	.align	2
.LC176:
	.ascii	"cleanup_data: 0x%p\012\000"
	.text
	.align	2
	.global	sim_queue_cleanup_data
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_cleanup_data, %function
sim_queue_cleanup_data:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1888
	ldr	r1, .L1888+4
	mov	r0, #3
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #16]
	mov	r0, r3
	bl	free
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #16]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1889:
	.align	2
.L1888:
	.word	.LC176
	.word	.LC170
	.size	sim_queue_cleanup_data, .-sim_queue_cleanup_data
	.section	.rodata
	.align	2
.LC177:
	.ascii	"cleanup_total: 0x%p\012\000"
	.text
	.align	2
	.global	sim_queue_cleanup_total
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_cleanup_total, %function
sim_queue_cleanup_total:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L1891
	ldr	r1, .L1891+4
	mov	r0, #4
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #16]
	mov	r0, r3
	bl	free
	ldr	r3, [fp, #-8]
	mov	r2, #0
	str	r2, [r3, #16]
	ldr	r0, [fp, #-8]
	bl	free
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1892:
	.align	2
.L1891:
	.word	.LC177
	.word	.LC170
	.size	sim_queue_cleanup_total, .-sim_queue_cleanup_total
	.section	.rodata
	.align	2
.LC178:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	sim_init
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_init, %function
sim_init:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L1898
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	bl	sim_queue_init
	bl	sim_log_init
	bl	sim_log_commit_change
	bl	sim_noise_init
	sub	r3, fp, #16
	mov	r1, #0
	mov	r0, r3
	bl	gettimeofday
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	beq	.L1894
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	sim_random_seed
	b	.L1897
.L1894:
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_random_seed
.L1897:
	nop
	ldr	r3, .L1898
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1896
	bl	__stack_chk_fail
.L1896:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1899:
	.align	2
.L1898:
	.word	.LC178
	.size	sim_init, .-sim_init
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_commit_change, %function
sim_log_commit_change:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L1901
.L1903:
	ldr	r2, .L1904
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	cmp	r3, #0
	beq	.L1902
	ldr	r2, .L1904
	ldr	r3, [fp, #-8]
	mov	r1, #0
	str	r1, [r2, r3, lsl #3]
	ldr	r2, .L1904
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	free
	ldr	r2, .L1904
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]
.L1902:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L1901:
	ldr	r3, [fp, #-8]
	ldr	r2, .L1904+4
	cmp	r3, r2
	ble	.L1903
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1905:
	.align	2
.L1904:
	.word	outputs
	.word	405
	.size	sim_log_commit_change, .-sim_log_commit_change
	.align	2
	.global	sim_noise_init
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_init, %function
sim_noise_init:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L1907
.L1908:
	ldr	r2, .L1909
	ldr	r1, .L1909+4
	mov	r0, #128
	bl	create_hashtable
	mov	r1, r0
	ldr	r0, .L1909+8
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, #48
	str	r1, [r3]
	ldr	r1, .L1909+8
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #44
	mov	r2, #0
	str	r2, [r3]
	mov	r0, #128
	bl	malloc
	mov	r3, r0
	mov	r0, r3
	ldr	r1, .L1909+8
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	str	r0, [r3]
	ldr	r1, .L1909+8
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #56
	mov	r2, #128
	str	r2, [r3]
	ldr	r1, .L1909+8
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #60
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L1907:
	ldr	r3, [fp, #-8]
	cmp	r3, #1000
	blt	.L1908
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1910:
	.align	2
.L1909:
	.word	sim_noise_eq
	.word	sim_noise_hash
	.word	noiseData
	.size	sim_noise_init, .-sim_noise_init
	.align	2
	.global	sim_random_seed
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_random_seed, %function
sim_random_seed:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L1912
	mov	r3, #1
	str	r3, [fp, #-8]
.L1912:
	ldr	r2, .L1913
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1914:
	.align	2
.L1913:
	.word	sim_seed
	.size	sim_random_seed, .-sim_random_seed
	.align	2
	.global	sim_end
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_end, %function
sim_end:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_queue_init
	nop
	pop	{fp, pc}
	.size	sim_end, .-sim_end
	.align	2
	.global	sim_random
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_random, %function
sim_random:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	ldr	r3, .L1919
	ldr	r3, [r3]
	mov	r0, r3
	asr	r1, r0, #31
	ldr	r3, .L1919+4
	mul	r2, r3, r1
	mov	r3, #0
	mul	r3, r0, r3
	add	ip, r2, r3
	ldr	lr, .L1919+4
	umull	r2, r3, r0, lr
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	lsr	r3, r3, #1
	str	r3, [fp, #-20]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	mov	r2, r1
	mov	r3, #0
	mov	r3, r2
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bge	.L1917
	ldr	r3, [fp, #-24]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L1917:
	ldr	r3, [fp, #-24]
	ldr	r2, .L1919
	str	r3, [r2]
	ldr	r3, [fp, #-24]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1920:
	.align	2
.L1919:
	.word	sim_seed
	.word	33614
	.size	sim_random, .-sim_random
	.align	2
	.global	sim_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_time, %function
sim_time:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1923
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1924:
	.align	2
.L1923:
	.word	sim_ticks
	.size	sim_time, .-sim_time
	.align	2
	.global	sim_set_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_set_time, %function
sim_set_time:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	ldr	r1, .L1926
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1927:
	.align	2
.L1926:
	.word	sim_ticks
	.size	sim_set_time, .-sim_set_time
	.align	2
	.global	sim_ticks_per_sec
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_ticks_per_sec, %function
sim_ticks_per_sec:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	adr	r3, .L1930
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1931:
	.align	3
.L1930:
	.word	1410065408
	.word	2
	.size	sim_ticks_per_sec, .-sim_ticks_per_sec
	.align	2
	.global	sim_set_node
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_set_node, %function
sim_set_node:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L1933
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	ldr	r2, .L1933+4
	strh	r3, [r2]	@ movhi
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1934:
	.align	2
.L1933:
	.word	current_node
	.word	TOS_NODE_ID
	.size	sim_set_node, .-sim_set_node
	.section	.rodata
	.align	2
.LC179:
	.ascii	"CORE: popping event 0x%p for %i at %llu with handle"
	.ascii	"r %p... \000"
	.align	2
.LC180:
	.ascii	"Tossim\000"
	.align	2
.LC181:
	.ascii	" mote is on (or forced event), run it.\012\000"
	.text
	.align	2
	.global	sim_run_next_event
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_run_next_event, %function
sim_run_next_event:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	mov	r3, #0
	strb	r3, [fp, #-17]
	bl	sim_queue_is_empty
	mov	r3, r0
	cmp	r3, #0
	bne	.L1936
	bl	sim_queue_pop
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	sim_set_time
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	mov	r0, r3
	bl	sim_set_node
	bl	sim_node
	mov	r4, r0
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-16]
	ldr	r1, [r1, #20]
	str	r1, [sp, #16]
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	str	r4, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L1941
	ldr	r1, .L1941+4
	mov	r0, #5
	bl	sim_log_debug
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #8]
	mov	r0, r3
	bl	sim_mote_is_on
	mov	r3, r0
	cmp	r3, #0
	bne	.L1937
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3, #12]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L1938
.L1937:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #20]
	cmp	r3, #0
	beq	.L1938
	mov	r3, #1
	strb	r3, [fp, #-17]
	ldr	r2, .L1941+8
	ldr	r1, .L1941+4
	mov	r0, #6
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #20]
	ldr	r0, [fp, #-16]
	blx	r3
	b	.L1939
.L1938:
	ldr	r2, .L1941+12
	ldr	r1, .L1941+4
	mov	r0, #7
	bl	sim_log_debug_clear
.L1939:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #24]
	cmp	r3, #0
	beq	.L1936
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #24]
	ldr	r0, [fp, #-16]
	blx	r3
.L1936:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1942:
	.align	2
.L1941:
	.word	.LC179
	.word	.LC180
	.word	.LC181
	.word	.LC136
	.size	sim_run_next_event, .-sim_run_next_event
	.align	2
	.global	sim_mote_is_on
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_is_on, %function
sim_mote_is_on:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	bl	SimMoteP$SimMote$isOn
	mov	r3, r0
	strb	r3, [fp, #-9]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_mote_is_on, .-sim_mote_is_on
	.section	.rodata
	.align	2
.LC182:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_debug_clear, %function
sim_log_debug_clear:
	@ args = 4, pretend = 8, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 1
	push	{r2, r3}
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	mov	r3, r0
	str	r1, [fp, #-28]
	strh	r3, [fp, #-22]	@ movhi
	ldr	r3, [fp, #4]
	str	r3, [fp, #-32]
	ldr	r3, .L1950
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1950+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L1946
	ldrh	r3, [fp, #-22]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	fillInOutput
.L1946:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L1947
.L1948:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1950+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	add	r3, fp, #8
	str	r3, [fp, #-20]
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-32]
	ldr	r0, [fp, #-12]
	bl	vfprintf
	ldr	r0, [fp, #-12]
	bl	fflush
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L1947:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L1950+4
	ldr	r3, [r2, r3, lsl #3]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L1948
	nop
	ldr	r3, .L1950
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1949
	bl	__stack_chk_fail
.L1949:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #8
	bx	lr
.L1951:
	.align	2
.L1950:
	.word	.LC182
	.word	outputs
	.size	sim_log_debug_clear, .-sim_log_debug_clear
	.section	.rodata
	.align	2
.LC183:
	.ascii	"%i:%i:%i.%09llu\000"
	.text
	.align	2
	.global	sim_print_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_print_time, %function
sim_print_time:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	adr	r1, .L1956
	ldmia	r1, {r0-r1}
	cmp	r0, r2
	sbcs	r3, r1, r3
	bge	.L1953
	bl	sim_ticks_per_sec
	adr	r3, .L1956
	ldmia	r3, {r2-r3}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	b	.L1954
.L1953:
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	adr	r1, .L1956
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-8]
	mul	r2, r0, r3
	ldr	r3, [fp, #-12]
	mul	r3, r1, r3
	add	ip, r2, r3
	ldr	lr, [fp, #-12]
	umull	r2, r3, lr, r0
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L1954:
	bl	sim_ticks_per_sec
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r3, r2
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r2, .L1956+8
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldr	r2, .L1956+8
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r2, r2, #5
	asr	r3, r3, #31
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-24]
	ldr	r3, .L1956+8
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #5
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #2
	sub	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r2, [fp, #-20]
	ldr	r3, .L1956+8
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #5
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #2
	sub	r3, r2, r3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	mov	r1, r3
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldr	r3, [fp, #-24]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L1956+12
	ldr	r0, [fp, #-32]
	bl	snprintf
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1957:
	.align	3
.L1956:
	.word	1000000000
	.word	0
	.word	-2004318071
	.word	.LC183
	.size	sim_print_time, .-sim_print_time
	.align	2
	.global	sim_print_now
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_print_now, %function
sim_print_now:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	sim_print_time
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_print_now, .-sim_print_now
	.align	2
	.global	sim_time_string
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_time_string, %function
sim_time_string:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	mov	r1, #128
	ldr	r0, .L1962
	bl	sim_print_now
	ldr	r3, .L1962
	mov	r0, r3
	pop	{fp, pc}
.L1963:
	.align	2
.L1962:
	.word	simTimeBuf
	.size	sim_time_string, .-sim_time_string
	.align	2
	.global	sim_add_channel
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_add_channel, %function
sim_add_channel:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	sim_log_add_channel
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_add_channel, .-sim_add_channel
	.align	2
	.global	sim_remove_channel
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_remove_channel, %function
sim_remove_channel:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	sim_log_remove_channel
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_remove_channel, .-sim_remove_channel
	.align	2
	.global	sim_csma_init_high
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_init_high, %function
sim_csma_init_high:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1969
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1970:
	.align	2
.L1969:
	.word	csmaInitHigh
	.size	sim_csma_init_high, .-sim_csma_init_high
	.align	2
	.global	sim_csma_init_low
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_init_low, %function
sim_csma_init_low:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1973
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1974:
	.align	2
.L1973:
	.word	csmaInitLow
	.size	sim_csma_init_low, .-sim_csma_init_low
	.align	2
	.global	sim_csma_high
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_high, %function
sim_csma_high:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1977
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1978:
	.align	2
.L1977:
	.word	csmaHigh
	.size	sim_csma_high, .-sim_csma_high
	.align	2
	.global	sim_csma_low
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_low, %function
sim_csma_low:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1981
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1982:
	.align	2
.L1981:
	.word	csmaLow
	.size	sim_csma_low, .-sim_csma_low
	.align	2
	.global	sim_csma_symbols_per_sec
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_symbols_per_sec, %function
sim_csma_symbols_per_sec:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1985
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1986:
	.align	2
.L1985:
	.word	csmaSymbolsPerSec
	.size	sim_csma_symbols_per_sec, .-sim_csma_symbols_per_sec
	.align	2
	.global	sim_csma_bits_per_symbol
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_bits_per_symbol, %function
sim_csma_bits_per_symbol:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1989
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1990:
	.align	2
.L1989:
	.word	csmaBitsPerSymbol
	.size	sim_csma_bits_per_symbol, .-sim_csma_bits_per_symbol
	.align	2
	.global	sim_csma_preamble_length
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_preamble_length, %function
sim_csma_preamble_length:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1993
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1994:
	.align	2
.L1993:
	.word	csmaPreambleLength
	.size	sim_csma_preamble_length, .-sim_csma_preamble_length
	.align	2
	.global	sim_csma_exponent_base
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_exponent_base, %function
sim_csma_exponent_base:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L1997
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L1998:
	.align	2
.L1997:
	.word	csmaExponentBase
	.size	sim_csma_exponent_base, .-sim_csma_exponent_base
	.align	2
	.global	sim_csma_max_iterations
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_max_iterations, %function
sim_csma_max_iterations:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L2001
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2002:
	.align	2
.L2001:
	.word	csmaMaxIterations
	.size	sim_csma_max_iterations, .-sim_csma_max_iterations
	.align	2
	.global	sim_csma_min_free_samples
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_min_free_samples, %function
sim_csma_min_free_samples:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L2005
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2006:
	.align	2
.L2005:
	.word	csmaMinFreeSamples
	.size	sim_csma_min_free_samples, .-sim_csma_min_free_samples
	.align	2
	.global	sim_csma_rxtx_delay
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_rxtx_delay, %function
sim_csma_rxtx_delay:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L2009
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2010:
	.align	2
.L2009:
	.word	csmaRxTxDelay
	.size	sim_csma_rxtx_delay, .-sim_csma_rxtx_delay
	.align	2
	.global	sim_csma_ack_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_ack_time, %function
sim_csma_ack_time:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L2013
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2014:
	.align	2
.L2013:
	.word	csmaAckTime
	.size	sim_csma_ack_time, .-sim_csma_ack_time
	.align	2
	.global	sim_csma_set_init_high
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_init_high, %function
sim_csma_set_init_high:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2016
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2017:
	.align	2
.L2016:
	.word	csmaInitHigh
	.size	sim_csma_set_init_high, .-sim_csma_set_init_high
	.align	2
	.global	sim_csma_set_init_low
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_init_low, %function
sim_csma_set_init_low:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2019
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2020:
	.align	2
.L2019:
	.word	csmaInitLow
	.size	sim_csma_set_init_low, .-sim_csma_set_init_low
	.align	2
	.global	sim_csma_set_high
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_high, %function
sim_csma_set_high:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2022
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2023:
	.align	2
.L2022:
	.word	csmaHigh
	.size	sim_csma_set_high, .-sim_csma_set_high
	.align	2
	.global	sim_csma_set_low
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_low, %function
sim_csma_set_low:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2025
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2026:
	.align	2
.L2025:
	.word	csmaLow
	.size	sim_csma_set_low, .-sim_csma_set_low
	.align	2
	.global	sim_csma_set_symbols_per_sec
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_symbols_per_sec, %function
sim_csma_set_symbols_per_sec:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2028
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2029:
	.align	2
.L2028:
	.word	csmaSymbolsPerSec
	.size	sim_csma_set_symbols_per_sec, .-sim_csma_set_symbols_per_sec
	.align	2
	.global	sim_csma_set_bits_per_symbol
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_bits_per_symbol, %function
sim_csma_set_bits_per_symbol:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2031
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2032:
	.align	2
.L2031:
	.word	csmaBitsPerSymbol
	.size	sim_csma_set_bits_per_symbol, .-sim_csma_set_bits_per_symbol
	.align	2
	.global	sim_csma_set_preamble_length
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_preamble_length, %function
sim_csma_set_preamble_length:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2034
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2035:
	.align	2
.L2034:
	.word	csmaPreambleLength
	.size	sim_csma_set_preamble_length, .-sim_csma_set_preamble_length
	.align	2
	.global	sim_csma_set_exponent_base
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_exponent_base, %function
sim_csma_set_exponent_base:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2037
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2038:
	.align	2
.L2037:
	.word	csmaExponentBase
	.size	sim_csma_set_exponent_base, .-sim_csma_set_exponent_base
	.align	2
	.global	sim_csma_set_max_iterations
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_max_iterations, %function
sim_csma_set_max_iterations:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2040
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2041:
	.align	2
.L2040:
	.word	csmaMaxIterations
	.size	sim_csma_set_max_iterations, .-sim_csma_set_max_iterations
	.align	2
	.global	sim_csma_set_min_free_samples
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_min_free_samples, %function
sim_csma_set_min_free_samples:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2043
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2044:
	.align	2
.L2043:
	.word	csmaMinFreeSamples
	.size	sim_csma_set_min_free_samples, .-sim_csma_set_min_free_samples
	.align	2
	.global	sim_csma_set_rxtx_delay
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_rxtx_delay, %function
sim_csma_set_rxtx_delay:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2046
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2047:
	.align	2
.L2046:
	.word	csmaRxTxDelay
	.size	sim_csma_set_rxtx_delay, .-sim_csma_set_rxtx_delay
	.align	2
	.global	sim_csma_set_ack_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_csma_set_ack_time, %function
sim_csma_set_ack_time:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L2049
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2050:
	.align	2
.L2049:
	.word	csmaAckTime
	.size	sim_csma_set_ack_time, .-sim_csma_set_ack_time
	.align	2
	.global	sim_gain_first
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_first, %function
sim_gain_first:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #1000
	ble	.L2052
	ldr	r3, .L2054
	ldr	r3, [r3, #4000]
	b	.L2053
.L2052:
	ldr	r2, .L2054
	ldr	r3, [fp, #-8]
	ldr	r3, [r2, r3, lsl #2]
.L2053:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2055:
	.align	2
.L2054:
	.word	connectivity
	.size	sim_gain_first, .-sim_gain_first
	.align	2
	.global	sim_gain_next
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_next, %function
sim_gain_next:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, #16]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	sim_gain_next, .-sim_gain_next
	.section	.rodata
	.align	2
.LC184:
	.ascii	"Adding link from %i to %i with gain %f\012\000"
	.align	2
.LC185:
	.ascii	"Gain\000"
	.text
	.align	2
	.global	sim_gain_add
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_add, %function
sim_gain_add:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	cmp	r3, #1000
	ble	.L2059
	mov	r3, #1000
	str	r3, [fp, #-16]
.L2059:
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	ldr	r0, [fp, #-16]
	bl	sim_gain_first
	str	r0, [fp, #-12]
	b	.L2060
.L2063:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L2061
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	b	.L2062
.L2061:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-12]
.L2060:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L2063
.L2062:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L2064
	ldr	r0, [fp, #-20]
	bl	sim_gain_allocate_link
	str	r0, [fp, #-12]
	ldr	r2, .L2065
	ldr	r3, [fp, #-16]
	ldr	r2, [r2, r3, lsl #2]
	ldr	r3, [fp, #-12]
	str	r2, [r3, #16]
	ldr	r1, .L2065
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	str	r2, [r1, r3, lsl #2]
.L2064:
	ldr	r3, [fp, #-12]
	ldr	r2, [fp, #-20]
	str	r2, [r3]
	ldr	r1, [fp, #-12]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L2065+4
	ldr	r1, .L2065+8
	mov	r0, #8
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2066:
	.align	2
.L2065:
	.word	connectivity
	.word	.LC184
	.word	.LC185
	.size	sim_gain_add, .-sim_gain_add
	.section	.rodata
	.align	2
.LC186:
	.ascii	"Getting link from %i to %i with gain %f\012\000"
	.align	2
.LC187:
	.ascii	"Getting default link from %i to %i with gain %f\012"
	.ascii	"\000"
	.text
	.align	2
	.global	sim_gain_value
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_value, %function
sim_gain_value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	ldr	r0, [fp, #-16]
	bl	sim_gain_first
	str	r0, [fp, #-12]
	b	.L2068
.L2071:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L2069
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	ldr	r3, [fp, #-12]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L2072
	ldr	r1, .L2072+4
	mov	r0, #9
	bl	sim_log_debug
	ldr	r3, [fp, #-12]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	b	.L2070
.L2069:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-12]
.L2068:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L2071
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	mov	r2, #0
	ldr	r3, .L2072+8
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L2072+12
	ldr	r1, .L2072+4
	mov	r0, #10
	bl	sim_log_debug
	mov	r2, #0
	ldr	r3, .L2072+8
.L2070:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2073:
	.align	2
.L2072:
	.word	.LC186
	.word	.LC185
	.word	1072693248
	.word	.LC187
	.size	sim_gain_value, .-sim_gain_value
	.align	2
	.global	sim_gain_connected
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_connected, %function
sim_gain_connected:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	ldr	r0, [fp, #-16]
	bl	sim_gain_first
	str	r0, [fp, #-12]
	b	.L2075
.L2078:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L2076
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	mov	r3, #1
	b	.L2077
.L2076:
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-12]
.L2075:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L2078
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	mov	r3, #0
.L2077:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_gain_connected, .-sim_gain_connected
	.align	2
	.global	sim_gain_remove
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_remove, %function
sim_gain_remove:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-24]
	cmp	r3, #1000
	ble	.L2080
	mov	r3, #1000
	str	r3, [fp, #-24]
.L2080:
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	sim_set_node
	ldr	r0, [fp, #-24]
	bl	sim_gain_first
	str	r0, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L2081
.L2085:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	cmp	r2, r3
	bne	.L2082
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L2083
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #16]
	ldr	r1, .L2086
	ldr	r3, [fp, #-24]
	str	r2, [r1, r3, lsl #2]
	b	.L2084
.L2083:
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #16]
	ldr	r3, [fp, #-16]
	str	r2, [r3, #16]
.L2084:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-20]
	bl	sim_gain_deallocate_link
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-20]
	b	.L2081
.L2082:
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #16]
	str	r3, [fp, #-20]
.L2081:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L2085
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2087:
	.align	2
.L2086:
	.word	connectivity
	.size	sim_gain_remove, .-sim_gain_remove
	.align	2
	.global	sim_gain_deallocate_link
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_deallocate_link, %function
sim_gain_deallocate_link:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	free
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_gain_deallocate_link, .-sim_gain_deallocate_link
	.align	2
	.global	sim_gain_set_noise_floor
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_set_noise_floor, %function
sim_gain_set_noise_floor:
	@ args = 8, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-8]
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-8]
	cmp	r3, #1000
	ble	.L2090
	mov	r3, #1000
	str	r3, [fp, #-8]
.L2090:
	ldr	r2, .L2091
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	add	r1, r2, r3
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r2, .L2091
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r1, r3, #8
	ldmib	fp, {r2-r3}
	stm	r1, {r2-r3}
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2092:
	.align	2
.L2091:
	.word	localNoise
	.size	sim_gain_set_noise_floor, .-sim_gain_set_noise_floor
	.align	2
	.global	sim_gain_sample_noise
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_sample_noise, %function
sim_gain_sample_noise:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #1000
	ble	.L2094
	mov	r3, #1000
	str	r3, [fp, #-24]
.L2094:
	ldr	r2, .L2096
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	bl	sim_random
	ldr	r3, .L2096+4
	smull	r2, r3, r0, r3
	asr	r2, r3, #19
	asr	r3, r0, #31
	sub	r1, r2, r3
	mov	r2, r1
	lsl	r2, r2, #5
	sub	r2, r2, r1
	lsl	r3, r2, #6
	sub	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #7
	sub	r1, r0, r3
	mov	r0, r1
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L2096+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L2096+12
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r2, .L2096
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #4
	add	r3, r2, r3
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2097:
	.align	2
.L2096:
	.word	localNoise
	.word	1125899907
	.word	1093567616
	.word	1072693248
	.size	sim_gain_sample_noise, .-sim_gain_sample_noise
	.align	2
	.global	sim_gain_set_sensitivity
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_set_sensitivity, %function
sim_gain_set_sensitivity:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	ldr	r1, .L2099
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2100:
	.align	2
.L2099:
	.word	sensitivity
	.size	sim_gain_set_sensitivity, .-sim_gain_set_sensitivity
	.align	2
	.global	sim_gain_sensitivity
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_gain_sensitivity, %function
sim_gain_sensitivity:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L2103
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2104:
	.align	2
.L2103:
	.word	sensitivity
	.size	sim_gain_sensitivity, .-sim_gain_sensitivity
	.align	2
	.global	sim_noise_create_model
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_create_model, %function
sim_noise_create_model:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	makeNoiseModel
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	makePmfDistr
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_noise_create_model, .-sim_noise_create_model
	.section	.rodata
	.align	2
.LC188:
	.ascii	"Setting history %i to be %i\012\000"
	.align	2
.LC189:
	.ascii	"Insert\000"
	.text
	.align	2
	.global	makeNoiseModel
	.syntax unified
	.arm
	.fpu softvfp
	.type	makeNoiseModel, %function
makeNoiseModel:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	mov	r3, r0
	strh	r3, [fp, #-22]	@ movhi
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L2107
.L2108:
	ldrh	r2, [fp, #-22]
	ldr	r1, .L2111
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrh	r4, [fp, #-22]
	mov	r0, r3
	bl	search_bin_num
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2111
	mov	r3, r4
	lsl	r3, r3, #4
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	mov	r2, r1
	strb	r2, [r3]
	ldrh	r2, [fp, #-22]
	ldr	r1, .L2111
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r2, r1, r3
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, .L2111+4
	ldr	r1, .L2111+8
	mov	r0, #44
	bl	sim_log_debug
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L2107:
	ldr	r3, [fp, #-16]
	cmp	r3, #19
	ble	.L2108
	mov	r3, #20
	str	r3, [fp, #-16]
	b	.L2109
.L2110:
	ldrh	r2, [fp, #-22]
	ldr	r1, .L2111
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldrh	r3, [fp, #-22]
	mov	r1, r2
	mov	r0, r3
	bl	sim_noise_add
	ldrh	r3, [fp, #-22]
	mov	r0, r3
	bl	arrangeKey
	ldrh	r2, [fp, #-22]
	ldr	r1, .L2111
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrh	r4, [fp, #-22]
	mov	r0, r3
	bl	search_bin_num
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2111
	mov	r3, r4
	lsl	r3, r3, #4
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, #19
	mov	r2, r1
	strb	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L2109:
	ldrh	r2, [fp, #-22]
	ldr	r1, .L2111
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #60
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	cmp	r2, r3
	bhi	.L2110
	ldrh	r2, [fp, #-22]
	ldr	r1, .L2111
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #64
	mov	r2, #1
	strb	r2, [r3]
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2112:
	.align	2
.L2111:
	.word	noiseData
	.word	.LC188
	.word	.LC189
	.size	makeNoiseModel, .-makeNoiseModel
	.align	2
	.global	search_bin_num
	.syntax unified
	.arm
	.fpu softvfp
	.type	search_bin_num, %function
search_bin_num:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	mov	r3, r0
	strb	r3, [fp, #-13]
	mvn	r3, #114
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #115
	ldr	r2, .L2115
	smull	r1, r2, r3, r2
	asr	r2, r2, #1
	asr	r3, r3, #31
	sub	r3, r2, r3
	and	r3, r3, #255
	add	r3, r3, #1
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L2116:
	.align	2
.L2115:
	.word	1717986919
	.size	search_bin_num, .-search_bin_num
	.section	.rodata
	.align	2
.LC190:
	.ascii	"Adding noise value %hhi\012\000"
	.align	2
.LC191:
	.ascii	"Inserting %p into table %p with key \000"
	.align	2
.LC192:
	.ascii	"%0.3hhi \000"
	.text
	.align	2
	.global	sim_noise_add
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_add, %function
sim_noise_add:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	mov	r3, r0
	mov	r2, r1
	strh	r3, [fp, #-38]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-39]
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2124
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #48
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldrh	r2, [fp, #-38]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L2124
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	hashtable_search
	str	r0, [fp, #-28]
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	ldr	r2, .L2124+4
	ldr	r1, .L2124+8
	mov	r0, #13
	bl	sim_log_debug
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	bne	.L2118
	mov	r0, #480
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-28]
	mov	r2, #20
	ldr	r1, [fp, #-16]
	mov	r0, r3
	bl	memcpy
	ldr	r3, [fp, #-28]
	mov	r2, #0
	str	r2, [r3, #20]
	ldr	r3, [fp, #-28]
	mov	r2, #8
	str	r2, [r3, #24]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #24]
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-28]
	str	r2, [r3, #28]
	ldr	r3, [fp, #-28]
	ldr	r0, [r3, #28]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #24]
	mov	r2, r3
	mov	r1, #0
	bl	memset
	ldr	r3, [fp, #-28]
	mov	r2, #0
	strb	r2, [r3, #32]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L2119
.L2120:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-32]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L2119:
	ldr	r3, [fp, #-32]
	cmp	r3, #110
	ble	.L2120
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	hashtable_insert
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #-28]
	ldr	r2, .L2124+12
	ldr	r1, .L2124+8
	mov	r0, #14
	bl	sim_log_debug
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L2121
.L2122:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L2124+16
	ldr	r1, .L2124+8
	mov	r0, #15
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L2121:
	ldr	r3, [fp, #-24]
	cmp	r3, #19
	ble	.L2122
	ldr	r2, .L2124+20
	ldr	r1, .L2124+8
	mov	r0, #16
	bl	sim_log_debug_clear
.L2118:
	ldr	r3, [fp, #-28]
	ldr	r2, [r3, #20]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #24]
	cmp	r2, r3
	bne	.L2123
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #24]
	lsl	r3, r3, #1
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-28]
	ldr	r1, [r3, #28]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #24]
	mov	r2, r3
	ldr	r0, [fp, #-8]
	bl	memcpy
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #28]
	mov	r0, r3
	bl	free
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #28]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #24]
.L2123:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #28]
	ldr	r2, [fp, #-28]
	ldr	r2, [r2, #20]
	add	r3, r3, r2
	ldrb	r2, [fp, #-39]
	strb	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3, #20]
	add	r2, r3, #1
	ldr	r3, [fp, #-28]
	str	r2, [r3, #20]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2125:
	.align	2
.L2124:
	.word	noiseData
	.word	.LC190
	.word	.LC189
	.word	.LC191
	.word	.LC192
	.word	.LC136
	.size	sim_noise_add, .-sim_noise_add
	.align	2
	.global	arrangeKey
	.syntax unified
	.arm
	.fpu softvfp
	.type	arrangeKey, %function
arrangeKey:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r2, [fp, #-14]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L2127
	add	r3, r3, r2
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r2, #19
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	memcpy
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2128:
	.align	2
.L2127:
	.word	noiseData
	.size	arrangeKey, .-arrangeKey
	.section	.rodata
	.align	2
.LC193:
	.ascii	"FreqKey = \000"
	.align	2
.LC194:
	.ascii	"HASH\000"
	.align	2
.LC195:
	.ascii	"%d,\000"
	.text
	.align	2
	.global	makePmfDistr
	.syntax unified
	.arm
	.fpu softvfp
	.type	makePmfDistr, %function
makePmfDistr:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	mov	r3, r0
	strh	r3, [fp, #-30]	@ movhi
	ldrh	r2, [fp, #-30]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L2136
	add	r3, r3, r2
	str	r3, [fp, #-20]
	ldrh	r2, [fp, #-30]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, #16
	ldr	r2, .L2136
	add	r3, r3, r2
	add	r3, r3, #4
	str	r3, [fp, #-16]
	ldr	r3, .L2136+4
	mov	r2, #0
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L2130
.L2131:
	ldrh	r2, [fp, #-30]
	ldr	r1, .L2136
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r1, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-20]
	add	r4, r2, r3
	mov	r0, r1
	bl	search_bin_num
	mov	r3, r0
	strb	r3, [r4]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L2130:
	ldr	r3, [fp, #-24]
	cmp	r3, #19
	ble	.L2131
	mov	r3, #20
	str	r3, [fp, #-24]
	b	.L2132
.L2133:
	ldrh	r3, [fp, #-30]
	mov	r0, r3
	bl	sim_noise_dist
	ldrh	r3, [fp, #-30]
	mov	r0, r3
	bl	arrangeKey
	ldrh	r2, [fp, #-30]
	ldr	r1, .L2136
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	add	r3, r2, r3
	ldrb	r2, [r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-20]
	add	r4, r3, #19
	mov	r0, r2
	bl	search_bin_num
	mov	r3, r0
	strb	r3, [r4]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L2132:
	ldrh	r2, [fp, #-30]
	ldr	r1, .L2136
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #60
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bhi	.L2133
	ldr	r2, .L2136+8
	ldr	r1, .L2136+12
	mov	r0, #21
	bl	sim_log_debug_clear
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L2134
.L2135:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L2136+16
	ldr	r1, .L2136+12
	mov	r0, #22
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L2134:
	ldr	r3, [fp, #-24]
	cmp	r3, #19
	ble	.L2135
	ldr	r2, .L2136+20
	ldr	r1, .L2136+12
	mov	r0, #23
	bl	sim_log_debug_clear
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2137:
	.align	2
.L2136:
	.word	noiseData
	.word	FreqKeyNum
	.word	.LC193
	.word	.LC194
	.word	.LC195
	.word	.LC136
	.size	makePmfDistr, .-makePmfDistr
	.section	.rodata
	.align	2
.LC196:
	.ascii	"Noise is found to be %i\012\000"
	.align	2
.LC197:
	.ascii	"Noise_output\000"
	.global	__aeabi_fadd
	.global	__aeabi_i2f
	.global	__aeabi_fdiv
	.align	2
.LC198:
	.ascii	"Setting most frequent key (%i): \000"
	.align	2
.LC199:
	.ascii	"HashZeroDebug\000"
	.align	2
.LC200:
	.ascii	"[%hhu] \000"
	.text
	.align	2
	.global	sim_noise_dist
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_dist, %function
sim_noise_dist:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #52
	mov	r3, r0
	strh	r3, [fp, #-54]	@ movhi
	mov	r3, #0
	str	r3, [fp, #-40]	@ float
	ldrh	r2, [fp, #-54]
	ldr	r1, .L2150
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #48
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	ldrh	r2, [fp, #-54]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L2150
	add	r3, r3, r2
	str	r3, [fp, #-28]
	ldrh	r2, [fp, #-54]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, #16
	ldr	r2, .L2150
	add	r3, r3, r2
	add	r3, r3, #4
	str	r3, [fp, #-24]
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-32]
	bl	hashtable_search
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3, #32]	@ zero_extendqisi2
	cmp	r3, #1
	beq	.L2149
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L2141
.L2142:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L2141:
	ldr	r3, [fp, #-44]
	cmp	r3, #110
	ble	.L2142
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L2143
.L2144:
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #28]
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L2150+4
	ldr	r1, .L2150+8
	mov	r0, #17
	bl	sim_log_debug
	ldr	r3, [fp, #-20]
	ldr	r2, [r3, #28]
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	add	r3, r3, #115
	strb	r3, [fp, #-45]
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	str	r3, [fp, #-16]	@ float
	mov	r1, #1065353216
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L2143:
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #20]
	ldr	r2, [fp, #-44]
	cmp	r2, r3
	blt	.L2144
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L2145
.L2146:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r4, [r3, #4]	@ float
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #20]
	mov	r0, r3
	bl	__aeabi_i2f
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r1, r3
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	str	r1, [r3, #4]	@ float
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-40]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-40]	@ float
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, [fp, #-40]	@ float
	str	r2, [r3, #4]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L2145:
	ldr	r3, [fp, #-44]
	cmp	r3, #110
	ble	.L2146
	ldr	r3, [fp, #-20]
	mov	r2, #1
	strb	r2, [r3, #32]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #20]
	mov	r2, r3
	ldr	r3, .L2150+12
	ldr	r3, [r3]
	cmp	r2, r3
	bls	.L2138
	ldr	r3, [fp, #-20]
	ldr	r3, [r3, #20]
	mov	r2, r3
	ldr	r3, .L2150+12
	str	r2, [r3]
	mov	r2, #20
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	memcpy
	ldr	r3, .L2150+12
	ldr	r3, [r3]
	ldr	r2, .L2150+16
	ldr	r1, .L2150+20
	mov	r0, #18
	bl	sim_log_debug
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L2147
.L2148:
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L2150+24
	ldr	r1, .L2150+20
	mov	r0, #19
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L2147:
	ldr	r3, [fp, #-36]
	cmp	r3, #19
	ble	.L2148
	ldr	r2, .L2150+28
	ldr	r1, .L2150+20
	mov	r0, #20
	bl	sim_log_debug_clear
	b	.L2138
.L2149:
	nop
.L2138:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2151:
	.align	2
.L2150:
	.word	noiseData
	.word	.LC196
	.word	.LC197
	.word	FreqKeyNum
	.word	.LC198
	.word	.LC199
	.word	.LC200
	.word	.LC136
	.size	sim_noise_dist, .-sim_noise_dist
	.section	.rodata
	.align	2
.LC201:
	.ascii	"Adding noise value %i for %i of %i\012\000"
	.text
	.align	2
	.global	sim_noise_trace_add
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_trace_add, %function
sim_noise_trace_add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	mov	r2, r1
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-15]
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #60
	ldr	r1, [r3]
	ldrh	r2, [fp, #-14]
	ldr	r0, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, #56
	ldr	r3, [r3]
	cmp	r1, r3
	bne	.L2153
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #56
	ldr	r3, [r3]
	lsl	r3, r3, #1
	mov	r0, r3
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r1, [r3]
	ldrh	r2, [fp, #-14]
	ldr	r0, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, #56
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r0, [fp, #-8]
	bl	memcpy
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r3, [r3]
	mov	r0, r3
	bl	free
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #56
	ldr	r3, [r3]
	ldrh	r2, [fp, #-14]
	lsl	r1, r3, #1
	ldr	r0, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, #56
	str	r1, [r3]
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [fp, #-8]
	str	r2, [r3]
.L2153:
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r1, [r3]
	ldrh	r2, [fp, #-14]
	ldr	r0, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, #60
	ldr	r3, [r3]
	add	r3, r1, r3
	ldrb	r2, [fp, #-15]
	strb	r2, [r3]
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #60
	ldr	r3, [r3]
	add	r1, r3, #1
	ldr	r0, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, #60
	str	r1, [r3]
	ldrh	r2, [fp, #-14]
	ldr	r1, .L2154
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #60
	ldr	r3, [r3]
	mov	r1, r3
	ldrh	r3, [fp, #-14]
	ldrb	r2, [fp, #-15]	@ zero_extendqisi2
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L2154+4
	ldr	r1, .L2154+8
	mov	r0, #12
	bl	sim_log_debug
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2155:
	.align	2
.L2154:
	.word	noiseData
	.word	.LC201
	.word	.LC189
	.size	sim_noise_trace_add, .-sim_noise_trace_add
	.align	2
	.global	search_noise_from_bin_num
	.syntax unified
	.arm
	.fpu softvfp
	.type	search_noise_from_bin_num, %function
search_noise_from_bin_num:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #2
	add	r3, r2, r3
	and	r3, r3, #255
	sub	r3, r3, #115
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	search_noise_from_bin_num, .-search_noise_from_bin_num
	.section	.rodata
	.align	2
.LC202:
	.ascii	"Did not pattern match\000"
	.align	2
.LC203:
	.ascii	"Noise_c\000"
	.align	2
.LC204:
	.ascii	"(N)Noise\012\000"
	.align	2
.LC205:
	.ascii	"Defaulting to common hash.\012\000"
	.align	2
.LC206:
	.ascii	"Key = \000"
	.align	2
.LC207:
	.ascii	"Printing Key\012\000"
	.align	2
.LC208:
	.ascii	"noise_hash->numElements=%d\012\000"
	.align	2
.LC209:
	.ascii	"(E)Noise = %d\012\000"
	.align	2
.LC210:
	.ascii	"In case 1: %i of %i\012\000"
	.align	2
.LC211:
	.ascii	"Noise: %i\012\000"
	.align	2
.LC212:
	.ascii	"NoiseAudit\000"
	.align	2
.LC213:
	.ascii	"In case 2: %i of %i\012\000"
	.align	2
.LC214:
	.ascii	"IN:for i=%d\012\000"
	.global	__aeabi_dcmple
	.align	2
.LC215:
	.ascii	"Selected Bin = %d -> \000"
	.align	2
.LC216:
	.ascii	"OUT:for i=%d\012\000"
	.text
	.align	2
	.global	sim_noise_gen
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_gen, %function
sim_noise_gen:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #56
	mov	r3, r0
	strh	r3, [fp, #-46]	@ movhi
	mov	r3, #0
	str	r3, [fp, #-28]
	ldrh	r2, [fp, #-46]
	ldr	r1, .L2175
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #48
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	ldrh	r2, [fp, #-46]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L2175
	add	r3, r3, r2
	str	r3, [fp, #-20]
	ldrh	r2, [fp, #-46]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, #16
	ldr	r2, .L2175
	add	r3, r3, r2
	add	r3, r3, #4
	str	r3, [fp, #-16]
	bl	RandomUniform
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-24]
	bl	hashtable_search
	str	r0, [fp, #-32]
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bne	.L2159
	ldr	r2, .L2175+4
	ldr	r1, .L2175+8
	mov	r0, #24
	bl	sim_log_debug
	bl	sim_noise_alarm
	mov	r3, #0
	strb	r3, [fp, #-37]
	ldr	r2, .L2175+12
	ldr	r1, .L2175+16
	mov	r0, #25
	bl	sim_log_debug_clear
	ldr	r2, .L2175+20
	ldr	r1, .L2175+24
	mov	r0, #26
	bl	sim_log_debug
	mov	r2, #20
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	memcpy
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-24]
	bl	hashtable_search
	str	r0, [fp, #-32]
.L2159:
	ldr	r2, .L2175+28
	ldr	r1, .L2175+16
	mov	r0, #27
	bl	sim_log_debug_clear
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L2160
.L2161:
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L2175+32
	ldr	r1, .L2175+16
	mov	r0, #28
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L2160:
	ldr	r3, [fp, #-36]
	cmp	r3, #19
	ble	.L2161
	ldr	r2, .L2175+36
	ldr	r1, .L2175+16
	mov	r0, #29
	bl	sim_log_debug_clear
	ldr	r2, .L2175+40
	ldr	r1, .L2175+16
	mov	r0, #30
	bl	sim_log_debug
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #20]
	ldr	r2, .L2175+44
	ldr	r1, .L2175+16
	mov	r0, #31
	bl	sim_log_debug
	ldr	r3, .L2175+48
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L2175+48
	str	r3, [r2]
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #20]
	cmp	r3, #1
	bne	.L2162
	ldr	r3, [fp, #-32]
	ldr	r3, [r3, #28]
	ldrb	r3, [r3]
	strb	r3, [fp, #-37]
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	ldr	r2, .L2175+52
	ldr	r1, .L2175+16
	mov	r0, #32
	bl	sim_log_debug_clear
	ldr	r3, .L2175+56
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L2175+56
	str	r3, [r2]
	ldr	r3, .L2175+56
	ldr	r2, [r3]
	ldr	r3, .L2175+48
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2175+60
	ldr	r1, .L2175+8
	mov	r0, #33
	bl	sim_log_debug
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	ldr	r2, .L2175+64
	ldr	r1, .L2175+68
	mov	r0, #34
	bl	sim_log_debug
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	b	.L2163
.L2162:
	ldr	r3, .L2175+72
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L2175+72
	str	r3, [r2]
	ldr	r3, .L2175+72
	ldr	r2, [r3]
	ldr	r3, .L2175+48
	ldr	r3, [r3]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2175+76
	ldr	r1, .L2175+8
	mov	r0, #35
	bl	sim_log_debug
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L2164
.L2171:
	ldr	r3, [fp, #-36]
	ldr	r2, .L2175+80
	ldr	r1, .L2175+16
	mov	r0, #36
	bl	sim_log_debug
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L2165
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-36]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L2166
	ldr	r3, [fp, #-36]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	ldr	r2, .L2175+84
	ldr	r1, .L2175+16
	mov	r0, #37
	bl	sim_log_debug_clear
	b	.L2168
.L2165:
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	ldr	r2, [fp, #-32]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L2166
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-36]
	add	r3, r3, #8
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L2166
	ldr	r3, [fp, #-36]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	ldr	r2, .L2175+84
	ldr	r1, .L2175+16
	mov	r0, #38
	bl	sim_log_debug_clear
	b	.L2168
.L2166:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L2164:
	ldr	r3, [fp, #-36]
	cmp	r3, #109
	ble	.L2171
.L2168:
	ldr	r3, [fp, #-36]
	ldr	r2, .L2175+88
	ldr	r1, .L2175+16
	mov	r0, #39
	bl	sim_log_debug
	ldr	r3, [fp, #-36]
	and	r3, r3, #255
	sub	r3, r3, #115
	strb	r3, [fp, #-37]
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	ldr	r2, .L2175+64
	ldr	r1, .L2175+68
	mov	r0, #40
	bl	sim_log_debug
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
.L2163:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2176:
	.align	2
.L2175:
	.word	noiseData
	.word	.LC202
	.word	.LC203
	.word	.LC204
	.word	.LC194
	.word	.LC205
	.word	.LC199
	.word	.LC206
	.word	.LC195
	.word	.LC136
	.word	.LC207
	.word	.LC208
	.word	numTotal
	.word	.LC209
	.word	numCase1
	.word	.LC210
	.word	.LC211
	.word	.LC212
	.word	numCase2
	.word	.LC213
	.word	.LC214
	.word	.LC215
	.word	.LC216
	.size	sim_noise_gen, .-sim_noise_gen
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	RandomUniform, %function
RandomUniform:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r3, .L2191
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L2178
	bl	sim_random
	mov	r2, r0
	ldr	r3, .L2191+4
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #14
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #4
	sub	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r3, r1
	lsl	r0, r3, #6
	add	r3, r3, r0
	lsl	r3, r3, #1
	sub	r3, r3, r1
	sub	r3, r2, r3
	str	r3, [fp, #-20]
	bl	sim_random
	mov	r3, r0
	ldr	r2, .L2191+8
	smull	r1, r2, r3, r2
	add	r2, r2, r3
	asr	r1, r2, #14
	asr	r2, r3, #31
	sub	r2, r1, r2
	ldr	r1, .L2191+12
	mul	r2, r1, r2
	sub	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	RandomInitialise
.L2178:
	ldr	r3, .L2191+16
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L2191+20
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L2191+24
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L2191+20
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L2179
	mov	r2, #0
	ldr	r3, .L2191+28
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L2179:
	ldr	r3, .L2191+16
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L2191+20
	lsl	r3, r3, #3
	add	r1, r2, r3
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, .L2191+16
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L2191+16
	str	r3, [r2]
	ldr	r3, .L2191+16
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L2181
	ldr	r3, .L2191+16
	mov	r2, #97
	str	r2, [r3]
.L2181:
	ldr	r3, .L2191+24
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L2191+24
	str	r3, [r2]
	ldr	r3, .L2191+24
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L2182
	ldr	r3, .L2191+24
	mov	r2, #97
	str	r2, [r3]
.L2182:
	ldr	r3, .L2191+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L2191+36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L2191+32
	stm	r1, {r2-r3}
	ldr	r3, .L2191+32
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L2183
	ldr	r3, .L2191+32
	ldmia	r3, {r0-r1}
	ldr	r3, .L2191+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L2191+32
	stm	r1, {r2-r3}
.L2183:
	ldr	r3, .L2191+32
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L2185
	mov	r2, #0
	ldr	r3, .L2191+28
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L2185:
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2192:
	.align	2
.L2191:
	.word	test
	.word	-2048845677
	.word	-1955736387
	.word	30082
	.word	i97
	.word	randU
	.word	j97
	.word	1072693248
	.word	randC
	.word	randCD
	.word	randCM
	.size	RandomUniform, .-RandomUniform
	.section	.rodata
	.align	2
.LC217:
	.ascii	"Tried to generate noise from an uninitialized radio"
	.ascii	" model of node %hu.\012\000"
	.align	2
.LC218:
	.ascii	"TOSSIM\000"
	.align	2
.LC219:
	.ascii	"delta_t = %d\012\000"
	.align	2
.LC220:
	.ascii	"Generated noise of zero.\012\000"
	.text
	.align	2
	.global	sim_noise_generate
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_noise_generate, %function
sim_noise_generate:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	mov	r3, r0
	str	r1, [fp, #-44]
	strh	r3, [fp, #-38]	@ movhi
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #44
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #64
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2194
	ldrh	r3, [fp, #-38]
	ldr	r2, .L2204+4
	ldr	r1, .L2204+8
	mov	r0, #41
	bl	sim_log_error
	mov	r3, #127
	b	.L2195
.L2194:
	ldr	r3, [fp, #-44]
	cmp	r3, #19
	bhi	.L2196
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #44
	ldr	r2, [fp, #-44]
	str	r2, [r3]
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrh	r4, [fp, #-38]
	mov	r0, r3
	bl	search_bin_num
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2204
	mov	r3, r4
	lsl	r3, r3, #4
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	mov	r2, r1
	strb	r2, [r3]
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	ldrh	r2, [fp, #-38]
	ldrb	r0, [r3]	@ zero_extendqisi2
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #40
	mov	r2, r0
	strb	r2, [r3]
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #52
	ldr	r2, [r3]
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	b	.L2195
.L2196:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L2197
	ldr	r3, [fp, #-44]
	sub	r3, r3, #19
	str	r3, [fp, #-24]
	b	.L2198
.L2197:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-20]
	sub	r3, r2, r3
	str	r3, [fp, #-24]
.L2198:
	ldr	r3, [fp, #-24]
	ldr	r2, .L2204+12
	ldr	r1, .L2204+16
	mov	r0, #42
	bl	sim_log_debug_clear
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L2199
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #40
	ldrb	r3, [r3]
	strb	r3, [fp, #-29]
	b	.L2200
.L2199:
	ldr	r0, [fp, #-24]
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L2201
.L2202:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r4, r2, r3
	ldrh	r3, [fp, #-38]
	mov	r0, r3
	bl	sim_noise_gen
	mov	r3, r0
	strb	r3, [r4]
	ldrh	r3, [fp, #-38]
	mov	r0, r3
	bl	arrangeKey
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r3, r2, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldrh	r4, [fp, #-38]
	mov	r0, r3
	bl	search_bin_num
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2204
	mov	r3, r4
	lsl	r3, r3, #4
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, #19
	mov	r2, r1
	strb	r2, [r3]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L2201:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bcc	.L2202
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldrb	r3, [r3]
	strb	r3, [fp, #-29]
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #40
	ldrb	r2, [fp, #-29]
	strb	r2, [r3]
	ldr	r0, [fp, #-16]
	bl	free
.L2200:
	ldrh	r2, [fp, #-38]
	ldr	r1, .L2204
	mov	r3, r2
	lsl	r3, r3, #4
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #44
	ldr	r2, [fp, #-44]
	str	r2, [r3]
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2203
	ldr	r2, .L2204+20
	ldr	r1, .L2204+24
	mov	r0, #43
	bl	sim_log_debug
.L2203:
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
.L2195:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2205:
	.align	2
.L2204:
	.word	noiseData
	.word	.LC217
	.word	.LC218
	.word	.LC219
	.word	.LC194
	.word	.LC220
	.word	.LC199
	.size	sim_noise_generate, .-sim_noise_generate
	.section	.rodata
	.align	2
.LC221:
	.ascii	"ERROR (%i): \000"
	.align	2
.LC222:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_log_error, %function
sim_log_error:
	@ args = 4, pretend = 8, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 1
	push	{r2, r3}
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	mov	r3, r0
	str	r1, [fp, #-28]
	strh	r3, [fp, #-22]	@ movhi
	ldr	r3, [fp, #4]
	str	r3, [fp, #-32]
	ldr	r3, .L2211
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldrh	r3, [fp, #-22]
	ldr	r2, .L2211+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L2207
	ldrh	r3, [fp, #-22]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	fillInOutput
.L2207:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L2208
.L2209:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L2211+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	add	r3, fp, #8
	str	r3, [fp, #-20]
	bl	sim_node
	mov	r3, r0
	mov	r2, r3
	ldr	r1, .L2211+8
	ldr	r0, [fp, #-12]
	bl	fprintf
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-32]
	ldr	r0, [fp, #-12]
	bl	vfprintf
	ldr	r0, [fp, #-12]
	bl	fflush
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L2208:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L2211+4
	ldr	r3, [r2, r3, lsl #3]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L2209
	nop
	ldr	r3, .L2211
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2210
	bl	__stack_chk_fail
.L2210:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #8
	bx	lr
.L2212:
	.align	2
.L2211:
	.word	.LC222
	.word	outputs
	.word	.LC221
	.size	sim_log_error, .-sim_log_error
	.align	2
	.global	sim_packet_set_source
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_set_source, %function
sim_packet_set_source:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strh	r3, [fp, #-18]	@ movhi
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	ldrh	r2, [fp, #-18]
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint16
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_set_source, .-sim_packet_set_source
	.align	2
	.global	sim_packet_source
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_source, %function
sim_packet_source:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_source, .-sim_packet_source
	.align	2
	.global	sim_packet_set_destination
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_set_destination, %function
sim_packet_set_destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strh	r3, [fp, #-18]	@ movhi
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrh	r2, [fp, #-18]
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint16
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_set_destination, .-sim_packet_set_destination
	.align	2
	.global	sim_packet_destination
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_destination, %function
sim_packet_destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_destination, .-sim_packet_destination
	.align	2
	.global	sim_packet_set_length
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_set_length, %function
sim_packet_set_length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #4
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_set_length, .-sim_packet_set_length
	.align	2
	.global	sim_packet_length
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_length, %function
sim_packet_length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #4
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_length, .-sim_packet_length
	.align	2
	.global	sim_packet_set_type
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_set_type, %function
sim_packet_set_type:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #6
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_set_type, .-sim_packet_set_type
	.align	2
	.global	sim_packet_type
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_type, %function
sim_packet_type:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #6
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_type, .-sim_packet_type
	.align	2
	.global	sim_packet_data
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_data, %function
sim_packet_data:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #7
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	sim_packet_data, .-sim_packet_data
	.align	2
	.global	sim_packet_set_strength
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_set_strength, %function
sim_packet_set_strength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strh	r3, [fp, #-18]	@ movhi
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	add	r3, r3, #45
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-8]
	ldrh	r3, [fp, #-18]	@ movhi
	lsl	r3, r3, #24
	asr	r3, r3, #24
	mov	r1, r3
	mov	r0, r2
	bl	__nesc_hton_int8
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_packet_set_strength, .-sim_packet_set_strength
	.section	.rodata
	.align	2
.LC223:
	.ascii	"sim_packet.c: Delivering packet %p to %i at %llu\012"
	.ascii	"\000"
	.text
	.align	2
	.global	sim_packet_deliver
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_deliver, %function
sim_packet_deliver:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	bl	sim_time
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	cmp	r2, r0
	sbcs	r3, r3, r1
	bge	.L2229
	bl	sim_time
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
.L2229:
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	ldr	r3, [fp, #-8]
	str	r3, [sp]
	ldr	r3, [fp, #-12]
	ldr	r2, .L2230
	ldr	r1, .L2230+4
	mov	r0, #45
	bl	sim_log_debug
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	active_message_deliver
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2231:
	.align	2
.L2230:
	.word	.LC223
	.word	.LC2
	.size	sim_packet_deliver, .-sim_packet_deliver
	.align	2
	.global	active_message_deliver
	.syntax unified
	.arm
	.fpu softvfp
	.type	active_message_deliver, %function
active_message_deliver:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$allocate_deliver_event
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	sim_queue_insert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	active_message_deliver, .-active_message_deliver
	.section	.rodata
	.align	2
.LC224:
	.ascii	"Received active message (%p) of type %hhu and lengt"
	.ascii	"h %hhu for me @ %s.\012\000"
	.align	2
.LC225:
	.ascii	"AM\000"
	.align	2
.LC226:
	.ascii	"Snooped on active message of type %hhu and length %"
	.ascii	"hhu for %hu @ %s.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$Model$receive, %function
TossimActiveMessageC$Model$receive:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #36
	str	r0, [fp, #-32]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #49
	ldr	r1, [fp, #-32]
	mov	r0, r3
	bl	memcpy
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimActiveMessageC$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-25]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r4, [r2, r3, lsl #2]
	bl	TossimActiveMessageC$Packet$maxPayloadLength
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	TossimActiveMessageC$Packet$getPayload
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-32]
	bl	TossimActiveMessageC$AMPacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	beq	.L2234
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r5, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	mov	r6, r3
	ldrb	r4, [fp, #-25]	@ zero_extendqisi2
	bl	sim_time_string
	mov	r3, r0
	str	r3, [sp, #8]
	str	r4, [sp, #4]
	str	r6, [sp]
	mov	r3, r5
	ldr	r2, .L2237+4
	ldr	r1, .L2237+8
	mov	r0, #106
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	mov	r6, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r5, [r2, r3, lsl #2]
	bl	sim_node
	mov	r4, r0
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	mov	r1, r5
	mov	r0, r6
	bl	TossimActiveMessageC$Receive$receive
	mov	r3, r0
	ldr	r2, .L2237
	str	r3, [r2, r4, lsl #2]
	b	.L2236
.L2234:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	mov	r6, r3
	ldrb	r4, [fp, #-25]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimActiveMessageC$AMPacket$destination
	mov	r3, r0
	mov	r5, r3
	bl	sim_time_string
	mov	r3, r0
	str	r3, [sp, #8]
	str	r5, [sp, #4]
	str	r4, [sp]
	mov	r3, r6
	ldr	r2, .L2237+12
	ldr	r1, .L2237+8
	mov	r0, #107
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	TossimActiveMessageC$AMPacket$type
	mov	r3, r0
	mov	r6, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2237
	ldr	r5, [r2, r3, lsl #2]
	bl	sim_node
	mov	r4, r0
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	mov	r1, r5
	mov	r0, r6
	bl	TossimActiveMessageC$Snoop$receive
	mov	r3, r0
	ldr	r2, .L2237
	str	r3, [r2, r4, lsl #2]
.L2236:
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L2238:
	.align	2
.L2237:
	.word	TossimActiveMessageC$bufferPointer
	.word	.LC224
	.word	.LC225
	.word	.LC226
	.size	TossimActiveMessageC$Model$receive, .-TossimActiveMessageC$Model$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMPacket$isForMe, %function
TossimActiveMessageC$AMPacket$isForMe:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$destination
	mov	r3, r0
	mov	r4, r3
	bl	TossimActiveMessageC$AMPacket$address
	mov	r3, r0
	cmp	r4, r3
	beq	.L2240
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$AMPacket$destination
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L2244
	cmp	r2, r3
	bne	.L2241
.L2240:
	mov	r3, #1
	b	.L2242
.L2241:
	mov	r3, #0
.L2242:
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2245:
	.align	2
.L2244:
	.word	65535
	.size	TossimActiveMessageC$AMPacket$isForMe, .-TossimActiveMessageC$AMPacket$isForMe
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMPacket$destination, %function
TossimActiveMessageC$AMPacket$destination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$AMPacket$destination, .-TossimActiveMessageC$AMPacket$destination
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	ActiveMessageAddressC$amAddress, %function
ActiveMessageAddressC$amAddress:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2251
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2249
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2251+4
	ldrh	r2, [r2]
	ldr	r1, .L2251+8
	lsl	r3, r3, #1
	add	r3, r1, r3
	strh	r2, [r3]	@ movhi
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2251
	mov	r1, #1
	strb	r1, [r2, r3]
.L2249:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2251+8
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	mov	r0, r3
	pop	{fp, pc}
.L2252:
	.align	2
.L2251:
	.word	ActiveMessageAddressC$set
	.word	TOS_NODE_ID
	.word	ActiveMessageAddressC$addr
	.size	ActiveMessageAddressC$amAddress, .-ActiveMessageAddressC$amAddress
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMPacket$type, %function
TossimActiveMessageC$AMPacket$type:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #6
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$AMPacket$type, .-TossimActiveMessageC$AMPacket$type
	.section	.rodata
	.align	2
.LC227:
	.ascii	"PE: Can't add receive/snoop packet, buffer is full!"
	.ascii	"\012\000"
	.align	2
.LC228:
	.ascii	"PE: Can't add receive/snoop packet, pool is empty!\012"
	.ascii	"\000"
	.align	2
.LC229:
	.ascii	"PE: Free packet at %u wasn't free!\012\000"
	.align	2
.LC230:
	.ascii	"PE: Adding receive/snoop packet at index %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubReceive$receive, %function
PacketEngineP$SubReceive$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-21]
	mov	r3, r2
	strb	r3, [fp, #-22]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2261
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2256
	ldr	r3, [fp, #-28]
	b	.L2257
.L2256:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2261+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L2258
	ldr	r2, .L2261+8
	ldr	r1, .L2261+12
	mov	r0, #123
	bl	sim_log_error
	ldr	r3, [fp, #-28]
	b	.L2257
.L2258:
	bl	PacketEngineP$ReceivePool$empty
	mov	r3, r0
	cmp	r3, #0
	beq	.L2259
	ldr	r2, .L2261+16
	ldr	r1, .L2261+12
	mov	r0, #124
	bl	sim_log_error
	ldr	r3, [fp, #-28]
	b	.L2257
.L2259:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2261+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2261+20
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #1
	beq	.L2260
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2261+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2261+24
	ldr	r1, .L2261+12
	mov	r0, #125
	bl	sim_log_error
	ldr	r3, [fp, #-28]
	b	.L2257
.L2260:
	bl	PacketEngineP$ReceivePool$get
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2261+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2261+28
	ldr	r1, .L2261+12
	mov	r0, #126
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2261+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L2261+20
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	orr	r3, r3, #32
	strb	r3, [r1, r2, lsl #3]
	ldr	r0, [fp, #-28]
	bl	PacketEngineP$addPacket
	ldr	r3, [fp, #-16]
.L2257:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2262:
	.align	2
.L2261:
	.word	PacketEngineP$running
	.word	PacketEngineP$nextFreePkt
	.word	.LC227
	.word	.LC9
	.word	.LC228
	.word	PacketEngineP$msgBuffer
	.word	.LC229
	.word	.LC230
	.size	PacketEngineP$SubReceive$receive, .-PacketEngineP$SubReceive$receive
	.section	.rodata
	.align	2
.LC231:
	.ascii	"PE: Moved nextAddedPkt from %u\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$addPacket, %function
PacketEngineP$addPacket:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2265
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2265+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	str	r2, [r3, #4]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2265
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L2265+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #29
	orr	r3, r3, #2
	strb	r3, [r1, r2, lsl #3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2265+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L2264
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2265+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2265+12
	ldr	r1, .L2265+16
	mov	r0, #172
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2265
	ldrb	r1, [r2, r4]	@ zero_extendqisi2
	ldr	r2, .L2265+8
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2265+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2265+20
	ldr	r1, .L2265+16
	mov	r0, #173
	bl	sim_log_debug_clear
	bl	PacketEngineP$printIndices
.L2264:
	bl	PacketEngineP$moveFreeIndex
	bl	PacketEngineP$msgAdded$postTask
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2266:
	.align	2
.L2265:
	.word	PacketEngineP$nextFreePkt
	.word	PacketEngineP$msgBuffer
	.word	PacketEngineP$nextAddedPkt
	.word	.LC231
	.word	.LC9
	.word	.LC20
	.size	PacketEngineP$addPacket, .-PacketEngineP$addPacket
	.section	.rodata
	.align	2
.LC232:
	.ascii	"PE: Free: %u, Added: %u, Wait: %u, Action: %u\012\000"
	.align	2
.LC233:
	.ascii	"PEBS: Send Buffer: %hhu of %hhu\012\000"
	.align	2
.LC234:
	.ascii	"PEBufferSize\000"
	.align	2
.LC235:
	.ascii	"PEBS: Receive Buffer: %hhu of %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$printIndices, %function
PacketEngineP$printIndices:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #20
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2268
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r6, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2268+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2268+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r5, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2268+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	str	r3, [sp, #8]
	str	r5, [sp, #4]
	str	r4, [sp]
	mov	r3, r6
	ldr	r2, .L2268+16
	ldr	r1, .L2268+20
	mov	r0, #169
	bl	sim_log_debug
	bl	PacketEngineP$SendQueue$size
	mov	r3, r0
	mov	r2, r3
	mov	r3, #20
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2268+24
	ldr	r1, .L2268+28
	mov	r0, #170
	bl	sim_log_debug
	bl	PacketEngineP$ReceivePool$size
	mov	r3, r0
	rsb	r3, r3, #20
	mov	r2, #20
	str	r2, [sp]
	ldr	r2, .L2268+32
	ldr	r1, .L2268+28
	mov	r0, #171
	bl	sim_log_debug
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L2269:
	.align	2
.L2268:
	.word	PacketEngineP$nextFreePkt
	.word	PacketEngineP$nextAddedPkt
	.word	PacketEngineP$nextWaitPkt
	.word	PacketEngineP$nextActionPkt
	.word	.LC232
	.word	.LC9
	.word	.LC233
	.word	.LC234
	.word	.LC235
	.size	PacketEngineP$printIndices, .-PacketEngineP$printIndices
	.section	.rodata
	.align	2
.LC236:
	.ascii	"PE: Index updated\012\000"
	.align	2
.LC237:
	.ascii	"PE: No packets with state %hhu found\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$moveIndex, %function
PacketEngineP$moveIndex:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r3, [fp, #-16]
	ldrb	r3, [r3]
	strb	r3, [fp, #-5]
	mov	r3, #0
	strb	r3, [fp, #-6]
	b	.L2271
.L2274:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r3, .L2275
	umull	r1, r3, r2, r3
	lsr	r1, r3, #5
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	sub	r3, r2, r3
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2275+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	mov	r2, r3
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	and	r3, r3, r2
	cmp	r3, #0
	beq	.L2272
	ldr	r2, .L2275+8
	ldr	r1, .L2275+12
	mov	r0, #167
	bl	sim_log_debug
	ldr	r3, [fp, #-16]
	ldrb	r2, [fp, #-5]
	strb	r2, [r3]
	bl	PacketEngineP$printIndices
	b	.L2270
.L2272:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-6]
.L2271:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #39
	bls	.L2274
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	ldr	r2, .L2275+16
	ldr	r1, .L2275+12
	mov	r0, #168
	bl	sim_log_debug
	ldr	r3, [fp, #-16]
	mov	r2, #40
	strb	r2, [r3]
	bl	PacketEngineP$printIndices
.L2270:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2276:
	.align	2
.L2275:
	.word	-858993459
	.word	PacketEngineP$msgBuffer
	.word	.LC236
	.word	.LC9
	.word	.LC237
	.size	PacketEngineP$moveIndex, .-PacketEngineP$moveIndex
	.section	.rodata
	.align	2
.LC238:
	.ascii	"Posting task %hhu.\012\000"
	.align	2
.LC239:
	.ascii	"Posting task %hhu, but already posted.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$TaskBasic$postTask, %function
SimSchedulerBasicP$TaskBasic$postTask:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimSchedulerBasicP$pushTask
	mov	r3, r0
	cmp	r3, #0
	beq	.L2278
	mov	r3, #0
	b	.L2279
.L2278:
	mov	r3, #5
.L2279:
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2280
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2283
	ldr	r1, .L2283+4
	mov	r0, #99
	bl	sim_log_debug
	bl	SimSchedulerBasicP$sim_scheduler_submit_event
	b	.L2281
.L2280:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2283+8
	ldr	r1, .L2283+4
	mov	r0, #100
	bl	sim_log_debug
.L2281:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2284:
	.align	2
.L2283:
	.word	.LC238
	.word	.LC4
	.word	.LC239
	.size	SimSchedulerBasicP$TaskBasic$postTask, .-SimSchedulerBasicP$TaskBasic$postTask
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$sim_scheduler_submit_event, %function
SimSchedulerBasicP$sim_scheduler_submit_event:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2288
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2287
	bl	sim_time
	mov	r6, r0
	mov	r7, r1
	bl	SimSchedulerBasicP$sim_config_task_latency
	mov	r3, r0
	mov	r4, r3
	asr	r5, r4, #31
	bl	sim_node
	mov	r3, r0
	adds	r8, r6, r4
	adc	r9, r7, r5
	ldr	r2, .L2288+4
	lsl	r3, r3, #5
	add	r3, r2, r3
	stm	r3, {r8-r9}
	bl	sim_node
	mov	r3, r0
	lsl	r3, r3, #5
	ldr	r2, .L2288+4
	add	r3, r3, r2
	mov	r0, r3
	bl	sim_queue_insert
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2288
	mov	r1, #1
	strb	r1, [r2, r3]
.L2287:
	nop
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L2289:
	.align	2
.L2288:
	.word	SimSchedulerBasicP$sim_scheduler_event_pending
	.word	SimSchedulerBasicP$sim_scheduler_event
	.size	SimSchedulerBasicP$sim_scheduler_submit_event, .-SimSchedulerBasicP$sim_scheduler_submit_event
	.align	2
	.global	sim_packet_max_length
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_max_length, %function
sim_packet_max_length:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	mov	r3, #36
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	sim_packet_max_length, .-sim_packet_max_length
	.align	2
	.global	sim_packet_allocate
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_allocate, %function
sim_packet_allocate:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	mov	r0, #49
	bl	malloc
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
	.size	sim_packet_allocate, .-sim_packet_allocate
	.section	.rodata
	.align	2
.LC240:
	.ascii	"sim_packet.c: Freeing packet %p\012\000"
	.text
	.align	2
	.global	sim_packet_free
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_packet_free, %function
sim_packet_free:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r1, [fp, #-8]
	ldr	r0, .L2295
	bl	printf
	ldr	r0, [fp, #-8]
	bl	free
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2296:
	.align	2
.L2295:
	.word	.LC240
	.size	sim_packet_free, .-sim_packet_free
	.section	.rodata
	.align	2
.LC241:
	.ascii	"Mote %li signaling boot at time %s.\012\000"
	.align	2
.LC242:
	.ascii	"SimMainP\000"
	.align	2
.LC243:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	sim_main_start_mote
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_main_start_mote, %function
sim_main_start_mote:
	@ args = 0, pretend = 0, frame = 136
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #144
	ldr	r3, .L2302
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-137]
	bl	SimMainP$Scheduler$init
	bl	SimMainP$PlatformInit$init
	nop
.L2298:
	bl	SimMainP$Scheduler$runNextTask
	mov	r3, r0
	cmp	r3, #0
	bne	.L2298
	bl	SimMainP$SoftwareInit$init
	nop
.L2299:
	bl	SimMainP$Scheduler$runNextTask
	mov	r3, r0
	cmp	r3, #0
	bne	.L2299
	ldrb	r3, [fp, #-137]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	bl	__nesc_enable_interrupt
	sub	r3, fp, #136
	mov	r1, #128
	mov	r0, r3
	bl	sim_print_now
	bl	sim_node
	mov	r2, r0
	sub	r3, fp, #136
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2302+4
	ldr	r1, .L2302+8
	mov	r0, #95
	bl	sim_log_debug
	bl	SimMainP$Boot$booted
	mov	r3, #0
	ldr	r2, .L2302
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L2301
	bl	__stack_chk_fail
.L2301:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2303:
	.align	2
.L2302:
	.word	.LC243
	.word	.LC241
	.word	.LC242
	.size	sim_main_start_mote, .-sim_main_start_mote
	.section	.rodata
	.align	2
.LC244:
	.ascii	"Told to run next task, but no task to run.\012\000"
	.align	2
.LC245:
	.ascii	"Running task %hhu.\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimSchedulerBasicP$Scheduler$runNextTask, %function
SimSchedulerBasicP$Scheduler$runNextTask:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-7]
	bl	SimSchedulerBasicP$popTask
	mov	r3, r0
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #255
	bne	.L2305
	ldr	r2, .L2307
	ldr	r1, .L2307+4
	mov	r0, #97
	bl	sim_log_debug
	mov	r3, #0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	b	.L2306
.L2305:
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r2, .L2307+8
	ldr	r1, .L2307+4
	mov	r0, #98
	bl	sim_log_debug
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimSchedulerBasicP$TaskBasic$runTask
	mov	r3, #1
.L2306:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2308:
	.align	2
.L2307:
	.word	.LC244
	.word	.LC4
	.word	.LC245
	.size	SimSchedulerBasicP$Scheduler$runNextTask, .-SimSchedulerBasicP$Scheduler$runNextTask
	.section	.rodata
	.align	2
.LC246:
	.ascii	"PE: Retrying send for pkt %u\012\000"
	.align	2
.LC247:
	.ascii	"PE: Send done for pkt %u\012\000"
	.align	2
.LC248:
	.ascii	"PE: Send moving to wait for pkt %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubSend$sendDone, %function
PacketEngineP$SubSend$sendDone:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	str	r1, [fp, #-28]
	strb	r3, [fp, #-21]
	mov	r3, r2
	strb	r3, [fp, #-22]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r1, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	ldrb	r0, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, [fp, #-28]
	bl	PacketEngineP$PacketEngine$sendDone
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	PacketEngineP$SendState$toIdle
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L2310
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2316+4
	ldr	r1, .L2316+8
	mov	r0, #127
	bl	sim_log_debug
	mov	r1, #8
	mov	r0, #7
	bl	PacketEngineP$startSendBackoff
	b	.L2315
.L2310:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2312
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2316+12
	ldr	r1, .L2316+8
	mov	r0, #128
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$removePacket
	b	.L2313
.L2312:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2316+16
	ldr	r1, .L2316+8
	mov	r0, #129
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L2316+20
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #27
	orr	r3, r3, #4
	strb	r3, [r1, r2, lsl #3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2316+28
	ldr	r1, .L2316+8
	mov	r0, #130
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r1, [r2, r4]	@ zero_extendqisi2
	ldr	r2, .L2316+24
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2316+32
	ldr	r1, .L2316+8
	mov	r0, #131
	bl	sim_log_debug_clear
	bl	PacketEngineP$printIndices
.L2313:
	mov	r1, #16
	mov	r0, #15
	bl	PacketEngineP$startSendBackoff
	bl	PacketEngineP$moveActionIndex
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2316
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2314
	bl	PacketEngineP$msgAction$postTask
	b	.L2315
.L2314:
	ldr	r2, .L2316+36
	ldr	r1, .L2316+8
	mov	r0, #132
	bl	sim_log_debug
.L2315:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2317:
	.align	2
.L2316:
	.word	PacketEngineP$nextActionPkt
	.word	.LC246
	.word	.LC9
	.word	.LC247
	.word	.LC248
	.word	PacketEngineP$msgBuffer
	.word	PacketEngineP$nextWaitPkt
	.word	.LC19
	.word	.LC20
	.word	.LC38
	.size	PacketEngineP$SubSend$sendDone, .-PacketEngineP$SubSend$sendDone
	.section	.rodata
	.align	2
.LC249:
	.ascii	"DSR: Pkt %u: Engine send failed, unknown error!\012"
	.ascii	"\000"
	.align	2
.LC250:
	.ascii	"DSR: Pkt %u: Unicast send wasn't acked, \000"
	.align	2
.LC251:
	.ascii	"retrying!\012\000"
	.align	2
.LC252:
	.ascii	"route error!\012\000"
	.align	2
.LC253:
	.ascii	"DSR: Pkt %u: Removing broken link %u -> %u\012\000"
	.align	2
.LC254:
	.ascii	"DSR: Pkt %u: Unicast send successful\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$sendDone, %function
DsrControlP$0$SingleDsrPacketEngine$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L2319
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2323
	ldr	r1, .L2323+4
	ldr	r0, .L2323+8
	bl	sim_log_error
	b	.L2320
.L2319:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2320
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L2323+12
	cmp	r2, r3
	beq	.L2320
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$Acks$wasAcked
	mov	r3, r0
	cmp	r3, #0
	bne	.L2320
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2323+16
	ldr	r1, .L2323+4
	ldr	r0, .L2323+20
	bl	sim_log_debug
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2323+24
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2321
	ldr	r2, .L2323+28
	ldr	r1, .L2323+4
	ldr	r0, .L2323+32
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2323+24
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	sub	r3, r3, #1
	and	ip, r3, #255
	ldr	r0, .L2323+24
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r1
	mov	r2, ip
	strb	r2, [r3]
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$Acks$requestAck
	mov	r3, #1
	b	.L2322
.L2321:
	ldr	r2, .L2323+36
	ldr	r1, .L2323+4
	mov	r0, #292
	bl	sim_log_debug_clear
	ldrb	r4, [fp, #-13]	@ zero_extendqisi2
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	mov	r5, r3
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	str	r3, [sp, #4]
	str	r5, [sp]
	mov	r3, r4
	ldr	r2, .L2323+40
	ldr	r1, .L2323+4
	ldr	r0, .L2323+44
	bl	sim_log_debug
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	and	r4, r3, #255
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	and	r3, r3, #255
	mov	r2, #1
	mov	r1, r3
	mov	r0, r4
	bl	DsrControlP$0$RouteCache$removeLink
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$AMPacket$type
	mov	r3, r0
	cmp	r3, #48
	bne	.L2320
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$set
	bl	DsrControlP$0$composePkt$postTask
	mov	r3, #2
	b	.L2322
.L2320:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2323+48
	ldr	r1, .L2323+4
	ldr	r0, .L2323+52
	bl	sim_log_debug
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, #0
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$upperSendDone
	mov	r3, #0
.L2322:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2324:
	.align	2
.L2323:
	.word	.LC249
	.word	.LC6
	.word	289
	.word	65535
	.word	.LC250
	.word	290
	.word	DsrControlP$0$retriesLeft
	.word	.LC251
	.word	291
	.word	.LC252
	.word	.LC253
	.word	293
	.word	.LC254
	.word	294
	.size	DsrControlP$0$SingleDsrPacketEngine$sendDone, .-DsrControlP$0$SingleDsrPacketEngine$sendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$PacketAcknowledgements$requestAck, %function
TossimPacketModelC$PacketAcknowledgements$requestAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$getMetadata
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r1, #1
	mov	r0, r3
	bl	__nesc_hton_uint8
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$PacketAcknowledgements$requestAck, .-TossimPacketModelC$PacketAcknowledgements$requestAck
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$RouteCache$removeLink, %function
SimpleLinkCacheP$RouteCache$removeLink:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1
	strb	r3, [fp, #-6]
	mov	r3, r2
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	SimpleLinkCacheP$Graph$remove
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2328
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	SimpleLinkCacheP$Graph$remove
.L2328:
	bl	SimpleLinkCacheP$AMPacket$address
	mov	r3, r0
	and	r3, r3, #255
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$buildTree
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$RouteCache$removeLink, .-SimpleLinkCacheP$RouteCache$removeLink
	.section	.rodata
	.align	2
.LC255:
	.ascii	"GS: Removing edge %u -> %u\012\000"
	.align	2
.LC256:
	.ascii	"GraphSparseP\000"
	.align	2
.LC257:
	.ascii	"GS: At least one vertex too large!\012\000"
	.align	2
.LC258:
	.ascii	"GS: Edge not found!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Graph$remove, %function
GraphSparseP$0$Graph$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #24
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-21]
	mov	r3, r2
	strb	r3, [fp, #-22]
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2339
	ldr	r1, .L2339+4
	ldr	r0, .L2339+8
	bl	sim_log_debug
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	cmp	r3, #19
	bhi	.L2330
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2331
.L2330:
	ldr	r2, .L2339+12
	ldr	r1, .L2339+4
	ldr	r0, .L2339+16
	bl	sim_log_error
	mov	r3, #2
	b	.L2332
.L2331:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2339+20
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, #250
	beq	.L2333
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	ldrb	r3, [r0, r3, lsl #1]	@ zero_extendqisi2
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2336
	bl	sim_node
	mov	r4, r0
	ldrb	r5, [fp, #-14]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r4
	lsl	r3, r3, #5
	sub	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r5
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	ip, [r3, #1]	@ zero_extendqisi2
	ldr	r0, .L2339+20
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, ip
	strb	r2, [r3]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$IndexedAlloc$free
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2339+20
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L2335
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2339+28
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L2339+28
	strb	r1, [r2, r3]
.L2335:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$removed
	bl	GraphSparseP$0$printGraph
	mov	r3, #0
	b	.L2332
.L2338:
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	r3, [r3, #1]
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	ldrb	r3, [r0, r3, lsl #1]	@ zero_extendqisi2
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2337
	bl	sim_node
	mov	r4, r0
	ldrb	r5, [fp, #-13]	@ zero_extendqisi2
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r4
	lsl	r3, r3, #5
	sub	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r5
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	ip, [r3, #1]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	mov	r2, ip
	strb	r2, [r3, #1]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$IndexedAlloc$free
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$removed
	bl	GraphSparseP$0$printGraph
	mov	r3, #0
	b	.L2332
.L2337:
	ldrb	r3, [fp, #-13]
	strb	r3, [fp, #-14]
.L2336:
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldr	r0, .L2339+24
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	r3, [r3, #1]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L2338
.L2333:
	ldr	r2, .L2339+32
	ldr	r1, .L2339+4
	ldr	r0, .L2339+36
	bl	sim_log_debug
	mov	r3, #6
.L2332:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2340:
	.align	2
.L2339:
	.word	.LC255
	.word	.LC256
	.word	349
	.word	.LC257
	.word	350
	.word	GraphSparseP$0$v
	.word	GraphSparseP$0$e
	.word	GraphSparseP$0$vSize
	.word	.LC258
	.word	351
	.size	GraphSparseP$0$Graph$remove, .-GraphSparseP$0$Graph$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	IndexedAllocBitsP$0$IndexedAlloc$free, %function
IndexedAllocBitsP$0$IndexedAlloc$free:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #249
	bls	.L2342
	mov	r3, #2
	b	.L2343
.L2342:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	IndexedAllocBitsP$0$BitVector$get
	mov	r3, r0
	cmp	r3, #0
	bne	.L2344
	mov	r3, #9
	b	.L2343
.L2344:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	IndexedAllocBitsP$0$BitVector$clear
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2346
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	IndexedAllocBitsP$0$BitVector$get
	mov	r3, r0
	cmp	r3, #0
	beq	.L2345
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2346
	ldrb	r3, [fp, #-5]
	strb	r3, [r1, r2]
.L2345:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2346+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L2346+4
	strb	r1, [r2, r3]
	mov	r3, #0
.L2343:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2347:
	.align	2
.L2346:
	.word	IndexedAllocBitsP$0$free
	.word	IndexedAllocBitsP$0$size
	.size	IndexedAllocBitsP$0$IndexedAlloc$free, .-IndexedAllocBitsP$0$IndexedAlloc$free
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$4$BitVector$get, %function
BitVectorC$4$BitVector$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$getIndex
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2350
	lsl	r3, r4, #5
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r4, r3
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$4$getMask
	mov	r3, r0
	and	r3, r3, r4
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2351:
	.align	2
.L2350:
	.word	BitVectorC$4$m_bits
	.size	BitVectorC$4$BitVector$get, .-BitVectorC$4$BitVector$get
	.section	.rodata
	.align	2
.LC259:
	.ascii	"GS: Current Graph:\012\000"
	.align	2
.LC260:
	.ascii	"%u: \000"
	.align	2
.LC261:
	.ascii	"%u(%u)-\000"
	.align	2
.LC262:
	.ascii	"|\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$printGraph, %function
GraphSparseP$0$printGraph:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	ldr	r2, .L2357
	ldr	r1, .L2357+4
	mov	r0, #352
	bl	sim_log_debug
	mov	r3, #0
	strb	r3, [fp, #-6]
	b	.L2353
.L2356:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r2, .L2357+8
	ldr	r1, .L2357+4
	ldr	r0, .L2357+12
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2357+16
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]
	strb	r3, [fp, #-5]
	b	.L2354
.L2355:
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2357+20
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	ldrb	r3, [r0, r3, lsl #1]	@ zero_extendqisi2
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2357+24
	ldr	r1, .L2357+4
	ldr	r0, .L2357+28
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2357+20
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	ldrb	r3, [r3, #1]
	strb	r3, [fp, #-5]
.L2354:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L2355
	ldr	r2, .L2357+32
	ldr	r1, .L2357+4
	ldr	r0, .L2357+36
	bl	sim_log_debug_clear
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-6]
.L2353:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2356
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2358:
	.align	2
.L2357:
	.word	.LC259
	.word	.LC256
	.word	.LC260
	.word	353
	.word	GraphSparseP$0$v
	.word	GraphSparseP$0$e
	.word	.LC261
	.word	354
	.word	.LC262
	.word	355
	.size	GraphSparseP$0$printGraph, .-GraphSparseP$0$printGraph
	.section	.rodata
	.align	2
.LC263:
	.ascii	"SSP: SPT for %u already built!\012\000"
	.align	2
.LC264:
	.ascii	"SSP: Building SPT for %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$buildTreeTo, %function
SourceShortestPathP$0$SourceShortestPath$buildTreeTo:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #19
	bhi	.L2360
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #20
	bls	.L2361
.L2360:
	mov	r3, #2
	b	.L2362
.L2361:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2365
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2363
	mov	r3, #5
	b	.L2362
.L2363:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2365+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2364
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2365+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2364
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2365+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2364
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2365+16
	ldr	r1, .L2365+20
	ldr	r0, .L2365+24
	bl	sim_log_debug
	bl	SourceShortestPathP$0$buildTreeTask$postTask
	mov	r3, #0
	b	.L2362
.L2364:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2365+28
	ldr	r1, .L2365+20
	mov	r0, #372
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2365
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2365+4
	ldrb	r3, [fp, #-5]
	strb	r3, [r1, r2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2365+8
	ldrb	r3, [fp, #-6]
	strb	r3, [r1, r2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2365+12
	mov	r1, #0
	strb	r1, [r2, r3]
	bl	SourceShortestPathP$0$initTree
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2365+32
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #0
	strb	r2, [r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$PriorityQueue$insert
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2365+36
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-5]
	strb	r2, [r3]
	bl	SourceShortestPathP$0$buildTreeTask$postTask
	mov	r3, #0
.L2362:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2366:
	.align	2
.L2365:
	.word	SourceShortestPathP$0$buildingTree
	.word	SourceShortestPathP$0$lastSrc
	.word	SourceShortestPathP$0$lastDest
	.word	SourceShortestPathP$0$rebuildNeeded
	.word	.LC263
	.word	.LC72
	.word	371
	.word	.LC264
	.word	SourceShortestPathP$0$weight
	.word	SourceShortestPathP$0$fringe
	.size	SourceShortestPathP$0$SourceShortestPath$buildTreeTo, .-SourceShortestPathP$0$SourceShortestPath$buildTreeTo
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$initTree, %function
SourceShortestPathP$0$initTree:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L2368
.L2369:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2370
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #20
	strb	r2, [r3]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2370+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #20
	strb	r2, [r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L2368:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2369
	bl	SourceShortestPathP$0$PriorityQueue$clear
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2370+8
	mov	r1, #1
	strb	r1, [r2, r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2371:
	.align	2
.L2370:
	.word	SourceShortestPathP$0$spt
	.word	SourceShortestPathP$0$fringe
	.word	SourceShortestPathP$0$foundDest
	.size	SourceShortestPathP$0$initTree, .-SourceShortestPathP$0$initTree
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$clearData, %function
PriorityQueueP$0$clearData:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2375
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L2373
.L2374:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2375+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #20
	strb	r2, [r3]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L2373:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2374
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2376:
	.align	2
.L2375:
	.word	PriorityQueueP$0$size
	.word	PriorityQueueP$0$hp
	.size	PriorityQueueP$0$clearData, .-PriorityQueueP$0$clearData
	.section	.rodata
	.align	2
.LC265:
	.ascii	"Current Tree:\012\000"
	.align	2
.LC266:
	.ascii	"Empty!\012\000"
	.align	2
.LC267:
	.ascii	"%hhu\012\000"
	.align	2
.LC268:
	.ascii	"| \000"
	.align	2
.LC269:
	.ascii	"  \000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$printTree, %function
PriorityQueueP$0$printTree:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r2, .L2381
	ldr	r1, .L2381+4
	ldr	r0, .L2381+8
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2381+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2378
	ldr	r2, .L2381+16
	ldr	r1, .L2381+4
	mov	r0, #364
	bl	sim_log_debug_clear
	pop	{fp, pc}
.L2378:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2381+20
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r1, r3
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, .L2381+24
	ldr	r1, .L2381+4
	ldr	r0, .L2381+28
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2381+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L2380
	ldr	r1, .L2381+32
	mov	r0, #1
	bl	PriorityQueueP$0$printTreeChild
	ldr	r2, .L2381+36
	ldr	r1, .L2381+4
	ldr	r0, .L2381+40
	bl	sim_log_debug_clear
.L2380:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2381+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #2
	popls	{fp, pc}
	ldr	r1, .L2381+44
	mov	r0, #2
	bl	PriorityQueueP$0$printTreeChild
	ldr	r2, .L2381+36
	ldr	r1, .L2381+4
	ldr	r0, .L2381+48
	bl	sim_log_debug_clear
	pop	{fp, pc}
.L2382:
	.align	2
.L2381:
	.word	.LC265
	.word	.LC69
	.word	363
	.word	PriorityQueueP$0$size
	.word	.LC266
	.word	PriorityQueueP$0$ai
	.word	.LC267
	.word	365
	.word	.LC268
	.word	.LC136
	.word	366
	.word	.LC269
	.word	367
	.size	PriorityQueueP$0$printTree, .-PriorityQueueP$0$printTree
	.section	.rodata
	.align	2
.LC270:
	.ascii	"|_\000"
	.align	2
.LC271:
	.ascii	"%s%hhu\000"
	.align	2
.LC272:
	.ascii	"\012%s\000"
	.align	2
.LC273:
	.ascii	"%s%s\000"
	.align	2
.LC274:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$printTreeChild, %function
PriorityQueueP$0$printTreeChild:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	mov	r3, r0
	str	r1, [fp, #-36]
	strb	r3, [fp, #-29]
	ldr	r3, .L2388
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldr	r0, .L2388+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	str	r3, [sp]
	ldr	r3, .L2388+8
	ldr	r2, .L2388+12
	ldr	r1, .L2388+16
	mov	r0, #368
	bl	sim_log_debug_clear
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r4, r3, #1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2388+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r4, r3
	bge	.L2384
	ldr	r3, [fp, #-36]
	ldr	r2, .L2388+24
	ldr	r1, .L2388+16
	ldr	r0, .L2388+28
	bl	sim_log_debug_clear
	sub	r0, fp, #28
	ldr	r3, .L2388+32
	ldr	r2, [fp, #-36]
	ldr	r1, .L2388+36
	bl	sprintf
	ldrb	r3, [fp, #-29]
	lsl	r3, r3, #1
	and	r3, r3, #255
	add	r3, r3, #1
	and	r3, r3, #255
	sub	r2, fp, #28
	mov	r1, r2
	mov	r0, r3
	bl	PriorityQueueP$0$printTreeChild
.L2384:
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	add	r3, r3, #1
	lsl	r4, r3, #1
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2388+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r4, r3
	bge	.L2387
	ldr	r3, [fp, #-36]
	ldr	r2, .L2388+24
	ldr	r1, .L2388+16
	ldr	r0, .L2388+40
	bl	sim_log_debug_clear
	sub	r0, fp, #28
	ldr	r3, .L2388+44
	ldr	r2, [fp, #-36]
	ldr	r1, .L2388+36
	bl	sprintf
	ldrb	r3, [fp, #-29]
	add	r3, r3, #1
	and	r3, r3, #255
	lsl	r3, r3, #1
	and	r3, r3, #255
	sub	r2, fp, #28
	mov	r1, r2
	mov	r0, r3
	bl	PriorityQueueP$0$printTreeChild
.L2387:
	nop
	ldr	r3, .L2388
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2386
	bl	__stack_chk_fail
.L2386:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2389:
	.align	2
.L2388:
	.word	.LC274
	.word	PriorityQueueP$0$ai
	.word	.LC270
	.word	.LC271
	.word	.LC69
	.word	PriorityQueueP$0$size
	.word	.LC272
	.word	369
	.word	.LC268
	.word	.LC273
	.word	370
	.word	.LC269
	.size	PriorityQueueP$0$printTreeChild, .-PriorityQueueP$0$printTreeChild
	.section	.rodata
	.align	2
.LC275:
	.ascii	"PQ: Can't insert index %hhu, already full!\012\000"
	.align	2
.LC276:
	.ascii	"PQ: Inserting index %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$PriorityQueue$insert, %function
PriorityQueueP$0$PriorityQueue$insert:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2391
	mov	r3, #2
	b	.L2392
.L2391:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2395
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L2393
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2395+4
	ldr	r1, .L2395+8
	mov	r0, #356
	bl	sim_log_error
	mov	r3, #1
	b	.L2392
.L2393:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2395+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #20
	beq	.L2394
	mov	r3, #9
	b	.L2392
.L2394:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2395+16
	ldr	r1, .L2395+8
	ldr	r0, .L2395+20
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2395
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2395+24
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [fp, #-13]
	strb	r2, [r3]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r3, .L2395
	ldrb	ip, [r3, r4]	@ zero_extendqisi2
	ldr	r0, .L2395+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, ip
	strb	r2, [r3]
	bl	sim_node
	mov	r2, r0
	ldr	r3, .L2395
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	add	r1, r3, #1
	and	r0, r1, #255
	ldr	r1, .L2395
	strb	r0, [r1, r2]
	mov	r0, r3
	bl	PriorityQueueP$0$moveUpPos
	bl	PriorityQueueP$0$printTree
	mov	r3, #0
.L2392:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2396:
	.align	2
.L2395:
	.word	PriorityQueueP$0$size
	.word	.LC275
	.word	.LC69
	.word	PriorityQueueP$0$hp
	.word	.LC276
	.word	357
	.word	PriorityQueueP$0$ai
	.size	PriorityQueueP$0$PriorityQueue$insert, .-PriorityQueueP$0$PriorityQueue$insert
	.section	.rodata
	.align	2
.LC277:
	.ascii	"PQ: Moving heap position %hhu up if needed\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$moveUpPos, %function
PriorityQueueP$0$moveUpPos:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, .L2402
	ldr	r1, .L2402+4
	mov	r0, #360
	bl	sim_log_debug
	b	.L2398
.L2400:
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PriorityQueueP$0$flip
	ldrb	r3, [fp, #-13]
	strb	r3, [fp, #-21]
.L2398:
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2401
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2402+8
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r4, [r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	sub	r3, r3, #1
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	strb	r3, [fp, #-13]
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2402+8
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, r4
	bl	PriorityQueueP$0$Compare$test
	mov	r3, r0
	cmp	r3, #0
	bgt	.L2400
.L2401:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2403:
	.align	2
.L2402:
	.word	.LC277
	.word	.LC69
	.word	PriorityQueueP$0$ai
	.size	PriorityQueueP$0$moveUpPos, .-PriorityQueueP$0$moveUpPos
	.section	.rodata
	.align	2
.LC278:
	.ascii	"PQ: Flipped heap positions %hhu and %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PriorityQueueP$0$flip, %function
PriorityQueueP$0$flip:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #24
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-21]
	mov	r3, r2
	strb	r3, [fp, #-22]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2405
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-22]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2405
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r4
	ldrb	ip, [r3]	@ zero_extendqisi2
	ldr	r0, .L2405
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, ip
	strb	r2, [r3]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	ldr	r0, .L2405
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-13]
	strb	r2, [r3]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2405
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2405+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [fp, #-21]
	strb	r2, [r3]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	ldr	r0, .L2405
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2405+4
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r2, [fp, #-22]
	strb	r2, [r3]
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2405+8
	ldr	r1, .L2405+12
	ldr	r0, .L2405+16
	bl	sim_log_debug
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2406:
	.align	2
.L2405:
	.word	PriorityQueueP$0$ai
	.word	PriorityQueueP$0$hp
	.word	.LC278
	.word	.LC69
	.word	362
	.size	PriorityQueueP$0$flip, .-PriorityQueueP$0$flip
	.section	.rodata
	.align	2
.LC279:
	.ascii	"PE: Couldn't find client ID for pkt %u!\012\000"
	.align	2
.LC280:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$upperSendDone, %function
PacketEngineP$PacketEngine$upperSendDone:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	mov	r3, r0
	strb	r3, [fp, #-29]
	mov	r3, r1
	strb	r3, [fp, #-30]
	mov	r3, r2
	strb	r3, [fp, #-31]
	ldr	r3, .L2414
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldrb	r3, [fp, #-30]
	strb	r3, [fp, #-24]
	mov	r3, #2
	strb	r3, [fp, #-23]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L2414+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, r2
	bne	.L2408
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L2414+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]	@ zero_extendqisi2
	lsr	r3, r3, #5
	and	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L2409
.L2408:
	mov	r3, #6
	b	.L2412
.L2409:
	sub	r3, fp, #24
	mov	r0, r3
	bl	PacketEngineP$SendQueue$lookup
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	beq	.L2411
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3, #1]	@ zero_extendqisi2
	cmp	r3, #2
	beq	.L2411
	ldr	r3, [fp, #-20]
	ldrb	r4, [r3, #1]	@ zero_extendqisi2
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldr	r0, .L2414+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, r4
	bl	PacketEngineP$Send$sendDone
	mov	r3, #0
	b	.L2412
.L2411:
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	ldr	r2, .L2414+8
	ldr	r1, .L2414+12
	mov	r0, #144
	bl	sim_log_error
	mov	r3, #1
.L2412:
	ldr	r2, .L2414
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L2413
	bl	__stack_chk_fail
.L2413:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2415:
	.align	2
.L2414:
	.word	.LC280
	.word	PacketEngineP$msgBuffer
	.word	.LC279
	.word	.LC9
	.size	PacketEngineP$PacketEngine$upperSendDone, .-PacketEngineP$PacketEngine$upperSendDone
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$lookup, %function
LruDataCacheP$0$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	mov	r3, #0
	strb	r3, [fp, #-17]
	b	.L2417
.L2420:
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-17]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2423
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r1, r4, r3
	ldr	r3, .L2423+4
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L2423+8
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$0$Equal$test
	mov	r3, r0
	cmp	r3, #0
	bne	.L2422
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-17]
.L2417:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2423+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2420
	b	.L2419
.L2422:
	nop
.L2419:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2424:
	.align	2
.L2423:
	.word	LruDataCacheP$0$first
	.word	1717986919
	.word	LruDataCacheP$0$cache
	.word	LruDataCacheP$0$count
	.size	LruDataCacheP$0$lookup, .-LruDataCacheP$0$lookup
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$printCache, %function
LruDataCacheP$0$printCache:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	ldr	r2, .L2429
	ldr	r1, .L2429+4
	mov	r0, #181
	bl	sim_log_debug
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L2426
.L2428:
	bl	sim_node
	ldrb	r1, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2429+8
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r1
	ldrb	r1, [r2, r3, lsl #1]	@ zero_extendqisi2
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrb	r3, [r3, #1]	@ zero_extendqisi2
	lsl	r3, r3, #8
	orr	r2, r3, r1
	mov	r3, #0
	lsl	r2, r2, #16
	lsr	r3, r3, #16
	orr	r3, r3, r2
	ror	r3, r3, #16
	ldr	r2, .L2429+12
	ldr	r1, .L2429+4
	mov	r0, #182
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2429+16
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2427
	ldr	r2, .L2429+20
	ldr	r1, .L2429+4
	mov	r0, #183
	bl	sim_log_debug_clear
.L2427:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L2426:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2429+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2428
	ldr	r2, .L2429+28
	ldr	r1, .L2429+4
	mov	r0, #184
	bl	sim_log_debug_clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2430:
	.align	2
.L2429:
	.word	.LC132
	.word	.LC133
	.word	LruDataCacheP$0$cache
	.word	.LC134
	.word	LruDataCacheP$0$first
	.word	.LC135
	.word	LruDataCacheP$0$count
	.word	.LC136
	.size	LruDataCacheP$0$printCache, .-LruDataCacheP$0$printCache
	.section	.rodata
	.align	2
.LC281:
	.ascii	"DSR: Internal send failed!\012\000"
	.align	2
.LC282:
	.ascii	"DSR: Checking for another response to send\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$Send$sendDone, %function
DsrControlP$0$Send$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	cmp	r3, #1
	bne	.L2432
	ldr	r2, .L2433
	ldr	r1, .L2433+4
	mov	r0, #308
	bl	sim_log_debug
.L2432:
	ldr	r2, .L2433+8
	ldr	r1, .L2433+4
	ldr	r0, .L2433+12
	bl	sim_log_debug
	bl	DsrControlP$0$composePkt$postTask
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2434:
	.align	2
.L2433:
	.word	.LC281
	.word	.LC6
	.word	.LC282
	.word	309
	.size	DsrControlP$0$Send$sendDone, .-DsrControlP$0$Send$sendDone
	.section	.rodata
	.align	2
.LC283:
	.ascii	"PE: Send backoff for %hu ms\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$startSendBackoff, %function
PacketEngineP$startSendBackoff:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strh	r3, [fp, #-14]	@ movhi
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	bl	PacketEngineP$Random$rand16
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r2, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-14]	@ movhi
	and	r3, r3, r2
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r2, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-16]	@ movhi
	add	r3, r2, r3
	strh	r3, [fp, #-6]	@ movhi
	ldrh	r3, [fp, #-6]
	mov	r0, r3
	bl	PacketEngineP$SendBackoff$startOneShot
	mov	r0, #2
	bl	PacketEngineP$SendState$forceState
	ldrh	r3, [fp, #-6]
	ldr	r2, .L2436
	ldr	r1, .L2436+4
	mov	r0, #180
	bl	sim_log_debug
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2437:
	.align	2
.L2436:
	.word	.LC283
	.word	.LC9
	.size	PacketEngineP$startSendBackoff, .-PacketEngineP$startSendBackoff
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	RandomMlcgP$Random$rand32, %function
RandomMlcgP$Random$rand32:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-25]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2441
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	mov	r1, #0
	ldr	r3, .L2441+4
	mul	r2, r3, r1
	mov	r3, #0
	mul	r3, r0, r3
	add	ip, r2, r3
	ldr	lr, .L2441+4
	umull	r2, r3, r0, lr
	add	r1, ip, r3
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	lsr	r3, r3, #1
	str	r3, [fp, #-20]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	mov	r2, r1
	mov	r3, #0
	mov	r3, r2
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bge	.L2439
	ldr	r3, [fp, #-24]
	bic	r3, r3, #-2147483648
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L2439:
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2441
	ldr	r3, [fp, #-24]
	str	r3, [r1, r2, lsl #2]
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldr	r3, [fp, #-24]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2442:
	.align	2
.L2441:
	.word	RandomMlcgP$seed
	.word	33614
	.size	RandomMlcgP$Random$rand32, .-RandomMlcgP$Random$rand32
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$startTimer, %function
VirtualizeTimerC$0$startTimer:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r2, r3
	lsl	r2, r2, #1
	add	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, .L2444
	add	r3, r3, r2
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-20]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-24]
	str	r2, [r3, #4]
	ldrb	r3, [fp, #-14]
	and	r3, r3, #1
	and	r1, r3, #255
	ldr	r2, [fp, #-8]
	ldrb	r3, [r2, #8]
	and	r1, r1, #1
	bic	r3, r3, #1
	orr	r3, r1, r3
	strb	r3, [r2, #8]
	ldr	r2, [fp, #-8]
	ldrb	r3, [r2, #8]
	orr	r3, r3, #2
	strb	r3, [r2, #8]
	bl	VirtualizeTimerC$0$updateFromTimer$postTask
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2445:
	.align	2
.L2444:
	.word	VirtualizeTimerC$0$m_timers
	.size	VirtualizeTimerC$0$startTimer, .-VirtualizeTimerC$0$startTimer
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Counter$get, %function
Atm128AlarmAsyncP$0$Counter$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-18]
	bl	Atm128AlarmAsyncP$0$Timer$get
	mov	r3, r0
	strb	r3, [fp, #-17]
	bl	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag
	mov	r3, r0
	and	r3, r3, #255
	and	r3, r3, #2
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L2447
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2450
	ldr	r4, [r2, r3, lsl #2]
	bl	Atm128AlarmAsyncP$0$Compare$get
	mov	r3, r0
	add	r4, r4, r3
	bl	Atm128AlarmAsyncP$0$Timer$get
	mov	r3, r0
	add	r3, r4, r3
	add	r3, r3, #1
	str	r3, [fp, #-16]
	b	.L2448
.L2447:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2450
	ldr	r2, [r2, r3, lsl #2]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	add	r3, r2, r3
	str	r3, [fp, #-16]
.L2448:
	ldrb	r3, [fp, #-18]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2451:
	.align	2
.L2450:
	.word	Atm128AlarmAsyncP$0$base
	.size	Atm128AlarmAsyncP$0$Counter$get, .-Atm128AlarmAsyncP$0$Counter$get
	.section	.rodata
	.align	2
.LC284:
	.ascii	"HplAtm128Timer0AsyncP: Getting timer: %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Timer0$get, %function
HplAtm128Timer0AsyncP$Timer0$get:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #16
	bl	sim_time
	mov	r6, r0
	mov	r7, r1
	bl	HplAtm128Timer0AsyncP$last_zero
	mov	r2, r0
	mov	r3, r1
	subs	r8, r6, r2
	sbc	r9, r7, r3
	str	r8, [fp, #-36]
	str	r9, [fp, #-32]
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	HplAtm128Timer0AsyncP$sim_to_clock
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	bl	HplAtm128Timer0AsyncP$shiftFromScale
	mov	r3, r0
	mov	r1, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	rsb	ip, r1, #32
	subs	r0, r1, #32
	lsr	r4, r2, r1
	orr	r4, r4, r3, lsl ip
	bmi	.L2453
	orr	r4, r4, r3, asr r0
.L2453:
	asr	r5, r3, r1
	str	r4, [fp, #-36]
	str	r5, [fp, #-32]
	ldr	r3, [fp, #-36]
	strb	r3, [fp, #-37]
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	ldr	r2, .L2455
	ldr	r1, .L2455+4
	mov	r0, #199
	bl	sim_log_debug
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L2456:
	.align	2
.L2455:
	.word	.LC284
	.word	.LC150
	.size	HplAtm128Timer0AsyncP$Timer0$get, .-HplAtm128Timer0AsyncP$Timer0$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$last_zero, %function
HplAtm128Timer0AsyncP$last_zero:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2460
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	orrs	r3, r2, r3
	bne	.L2458
	bl	sim_node
	mov	r3, r0
	mov	r5, r3
	bl	sim_node
	mov	r4, r0
	mov	r0, r5
	bl	sim_mote_start_time
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L2460
	lsl	r1, r4, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
.L2458:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2460
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	pop	{r4, r5, fp, pc}
.L2461:
	.align	2
.L2460:
	.word	HplAtm128Timer0AsyncP$lastZero
	.size	HplAtm128Timer0AsyncP$last_zero, .-HplAtm128Timer0AsyncP$last_zero
	.align	2
	.global	sim_mote_start_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_start_time, %function
sim_mote_start_time:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	sim_set_node
	bl	SimMoteP$SimMote$getStartTime
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_mote_start_time, .-sim_mote_start_time
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$shiftFromScale, %function
HplAtm128Timer0AsyncP$shiftFromScale:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	HplAtm128Timer0AsyncP$Timer0$getScale
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #7
	ldrls	pc, [pc, r3, asl #2]
	b	.L2465
.L2467:
	.word	.L2474
	.word	.L2473
	.word	.L2472
	.word	.L2471
	.word	.L2470
	.word	.L2469
	.word	.L2468
	.word	.L2466
.L2474:
	mov	r3, #0
	b	.L2475
.L2473:
	mov	r3, #0
	b	.L2475
.L2472:
	mov	r3, #3
	b	.L2475
.L2471:
	mov	r3, #5
	b	.L2475
.L2470:
	mov	r3, #6
	b	.L2475
.L2469:
	mov	r3, #7
	b	.L2475
.L2468:
	mov	r3, #8
	b	.L2475
.L2466:
	mov	r3, #10
	b	.L2475
.L2465:
	mov	r3, #255
.L2475:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	HplAtm128Timer0AsyncP$shiftFromScale, .-HplAtm128Timer0AsyncP$shiftFromScale
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Timer0$getScale, %function
HplAtm128Timer0AsyncP$Timer0$getScale:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #51
	ldr	r2, .L2478
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	and	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L2479:
	.align	2
.L2478:
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$Timer0$getScale, .-HplAtm128Timer0AsyncP$Timer0$getScale
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag, %function
HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2482
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r1, r3
	add	r3, r3, #54
	ldrb	r3, [r3]
	and	r3, r3, #255
	strb	r3, [fp, #-8]
	ldrb	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2483:
	.align	2
.L2482:
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag, .-HplAtm128Timer0AsyncP$Timer0Ctrl$getInterruptFlag
	.section	.rodata
	.align	2
.LC285:
	.ascii	"HplAtm128Timer0AsyncP: Getting compare: %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Compare$get, %function
HplAtm128Timer0AsyncP$Compare$get:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #49
	ldr	r2, .L2486
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	ldr	r2, .L2486+4
	ldr	r1, .L2486+8
	mov	r0, #205
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #49
	ldr	r2, .L2486
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	mov	r0, r3
	pop	{fp, pc}
.L2487:
	.align	2
.L2486:
	.word	atm128RegFile
	.word	.LC285
	.word	.LC150
	.size	HplAtm128Timer0AsyncP$Compare$get, .-HplAtm128Timer0AsyncP$Compare$get
	.section	.rodata
	.align	2
.LC286:
	.ascii	"PE: Removing pkt %u from the buffer\012\000"
	.align	2
.LC287:
	.ascii	"PE: Receive pool already full, leaking packet!\012\000"
	.align	2
.LC288:
	.ascii	"PE: Unable to remove send queue entry for pkt %u!\012"
	.ascii	"\000"
	.align	2
.LC289:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$removePacket, %function
PacketEngineP$removePacket:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldr	r3, .L2494
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2494+4
	ldr	r1, .L2494+8
	mov	r0, #176
	bl	sim_log_debug
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2494+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]	@ zero_extendqisi2
	lsr	r3, r3, #5
	and	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #1
	bne	.L2489
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2494+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$ReceivePool$put
	mov	r3, r0
	cmp	r3, #1
	bne	.L2490
	ldr	r2, .L2494+16
	ldr	r1, .L2494+8
	mov	r0, #177
	bl	sim_log_error
	b	.L2490
.L2489:
	ldrb	r3, [fp, #-13]
	strb	r3, [fp, #-12]
	mov	r3, #2
	strb	r3, [fp, #-11]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2494+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$SendPool$put
	mov	r3, r0
	cmp	r3, #1
	bne	.L2491
	ldr	r2, .L2494+20
	ldr	r1, .L2494+8
	mov	r0, #178
	bl	sim_log_error
.L2491:
	sub	r3, fp, #12
	mov	r0, r3
	bl	PacketEngineP$SendQueue$remove
	mov	r3, r0
	cmp	r3, #0
	beq	.L2490
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2494+24
	ldr	r1, .L2494+8
	mov	r0, #179
	bl	sim_log_error
.L2490:
	bl	sim_node
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L2494+12
	mov	r3, r0
	lsl	r3, r3, #2
	add	r3, r3, r0
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #30
	orr	r3, r3, #1
	strb	r3, [r1, r2, lsl #3]
	nop
	ldr	r3, .L2494
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2493
	bl	__stack_chk_fail
.L2493:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2495:
	.align	2
.L2494:
	.word	.LC289
	.word	.LC286
	.word	.LC9
	.word	PacketEngineP$msgBuffer
	.word	.LC287
	.word	.LC131
	.word	.LC288
	.size	PacketEngineP$removePacket, .-PacketEngineP$removePacket
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PoolP$1$Pool$put, %function
PoolP$1$Pool$put:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2500
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2497
	mov	r3, #1
	b	.L2498
.L2497:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2500+4
	ldrb	r4, [r2, r3]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2500
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2499
	ldrb	r3, [fp, #-13]
	sub	r3, r3, #20
	strb	r3, [fp, #-13]
.L2499:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2500+8
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, [fp, #-24]
	str	r2, [r0, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2500
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L2500
	strb	r1, [r2, r3]
	mov	r3, #0
.L2498:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2501:
	.align	2
.L2500:
	.word	PoolP$1$free
	.word	PoolP$1$index
	.word	PoolP$1$queue
	.size	PoolP$1$Pool$put, .-PoolP$1$Pool$put
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$0$remove, %function
LruDataCacheP$0$remove:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #20
	mov	r3, r0
	strb	r3, [fp, #-29]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2510
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L2509
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2505
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2510+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r2, r3, #1
	ldr	r3, .L2510+8
	smull	r1, r3, r2, r3
	asr	r1, r3, #3
	asr	r3, r2, #31
	sub	r4, r1, r3
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #2
	sub	r4, r2, r3
	bl	sim_node
	mov	r3, r0
	and	r1, r4, #255
	ldr	r2, .L2510+4
	strb	r1, [r2, r3]
	b	.L2506
.L2505:
	ldrb	r3, [fp, #-29]
	strb	r3, [fp, #-21]
	b	.L2507
.L2508:
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-21]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2510+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r1, r4, r3
	ldr	r3, .L2510+8
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L2510+12
	add	r6, r3, r2
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-21]	@ zero_extendqisi2
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2510+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	add	r3, r4, r3
	add	r1, r3, #1
	ldr	r3, .L2510+8
	smull	r2, r3, r1, r3
	asr	r2, r3, #3
	asr	r3, r1, #31
	sub	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	sub	r2, r1, r3
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	ldr	r2, .L2510+12
	add	r3, r3, r2
	mov	r2, #2
	mov	r1, r3
	mov	r0, r6
	bl	memcpy
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-21]
.L2507:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2510
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2508
.L2506:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2510
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L2510
	strb	r1, [r2, r3]
	b	.L2502
.L2509:
	nop
.L2502:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L2511:
	.align	2
.L2510:
	.word	LruDataCacheP$0$count
	.word	LruDataCacheP$0$first
	.word	1717986919
	.word	LruDataCacheP$0$cache
	.size	LruDataCacheP$0$remove, .-LruDataCacheP$0$remove
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$sendDone, %function
AMQueueImplP$0$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, .L2513
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r1, r3, lsl #2]
	bl	AMQueueImplP$0$tryToSend
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	AMQueueImplP$0$Send$sendDone
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2514:
	.align	2
.L2513:
	.word	AMQueueImplP$0$queue
	.size	AMQueueImplP$0$sendDone, .-AMQueueImplP$0$sendDone
	.section	.rodata
	.align	2
.LC290:
	.ascii	"AM: Sending packet (id=%hhu, len=%hhu) to %hu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMSend$send, %function
TossimActiveMessageC$AMSend$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r2, [fp, #-28]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-21]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-24]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-22]
	ldr	r0, [fp, #-28]
	bl	TossimActiveMessageC$getHeader
	str	r0, [fp, #-16]
	ldrb	r1, [fp, #-21]	@ zero_extendqisi2
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	ldrh	r2, [fp, #-24]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L2517
	ldr	r1, .L2517+4
	mov	r0, #105
	bl	sim_log_debug
	ldr	r3, [fp, #-16]
	add	r3, r3, #6
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	ldr	r3, [fp, #-16]
	ldrh	r2, [fp, #-24]
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint16
	ldr	r3, [fp, #-16]
	add	r4, r3, #2
	bl	TossimActiveMessageC$AMPacket$address
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldr	r3, [fp, #-16]
	add	r3, r3, #4
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	ldrh	r0, [fp, #-24]
	ldrb	r3, [fp, #-22]
	add	r3, r3, #7
	and	r3, r3, #255
	mov	r2, r3
	ldr	r1, [fp, #-28]
	bl	TossimActiveMessageC$Model$send
	mov	r3, r0
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2518:
	.align	2
.L2517:
	.word	.LC290
	.word	.LC225
	.size	TossimActiveMessageC$AMSend$send, .-TossimActiveMessageC$AMSend$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$packetNoise, %function
CpmModelC$packetNoise:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	bl	CpmModelC$noise_hash_generation
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2524
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [fp, #-16]
	mov	r2, #0
	ldr	r3, .L2524+4
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L2524+4
	bl	pow
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	b	.L2520
.L2522:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	beq	.L2521
	ldr	r3, [fp, #-16]
	add	r1, r3, #24
	ldmia	r1, {r0-r1}
	mov	r2, #0
	ldr	r3, .L2524+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L2524+4
	bl	pow
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L2521:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #48]
	str	r3, [fp, #-16]
.L2520:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L2522
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	log
	mov	r2, #0
	ldr	r3, .L2524+4
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L2524+8
	ldr	r3, .L2524+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2525:
	.align	2
.L2524:
	.word	CpmModelC$outstandingReceptionHead
	.word	1076101120
	.word	-1145744106
	.word	1073900465
	.size	CpmModelC$packetNoise, .-CpmModelC$packetNoise
	.section	.rodata
	.align	2
.LC291:
	.ascii	"IN: noise_hash_generation()\012\000"
	.align	2
.LC292:
	.ascii	"%s: OUT: noise_hash_generation(): %lf\012\000"
	.align	2
.LC293:
	.ascii	"CpmModelC,Tal\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$noise_hash_generation, %function
CpmModelC$noise_hash_generation:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	bl	CpmModelC$timeInMs
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L2530
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2lz
	mov	r2, #10
	mov	r3, #0
	bl	__aeabi_ldivmod
	mov	r2, r0
	mov	r3, r1
	mov	r3, r2
	str	r3, [fp, #-24]
	mov	r2, #0
	ldr	r3, .L2530
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2lz
	mov	r2, #10
	mov	r3, #0
	bl	__aeabi_ldivmod
	mov	r3, r2
	strb	r3, [fp, #-27]
	bl	sim_node
	mov	r3, r0
	strh	r3, [fp, #-26]	@ movhi
	ldr	r2, .L2530+4
	ldr	r1, .L2530+8
	mov	r0, #225
	bl	sim_log_debug
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	cmp	r3, #4
	bls	.L2527
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	cmp	r3, #9
	bhi	.L2527
	ldr	r3, [fp, #-24]
	add	r2, r3, #1
	ldrh	r3, [fp, #-26]
	mov	r1, r2
	mov	r0, r3
	bl	sim_noise_generate
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_ui2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	b	.L2528
.L2527:
	ldrh	r3, [fp, #-26]
	ldr	r1, [fp, #-24]
	mov	r0, r3
	bl	sim_noise_generate
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_ui2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
.L2528:
	bl	sim_time_string
	mov	r1, r0
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r3, r1
	ldr	r2, .L2530+12
	ldr	r1, .L2530+16
	mov	r0, #226
	bl	sim_log_debug
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2531:
	.align	2
.L2530:
	.word	1076101120
	.word	.LC291
	.word	.LC89
	.word	.LC292
	.word	.LC293
	.size	CpmModelC$noise_hash_generation, .-CpmModelC$noise_hash_generation
	.section	.rodata
	.align	2
.LC294:
	.ascii	"%s received send done for %p, signaling for %p.\012"
	.ascii	"\000"
	.align	2
.LC295:
	.ascii	"PointerBug\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$AMSend$sendDone, %function
AMQueueImplP$0$AMSend$sendDone:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2537
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #1
	bhi	.L2536
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2537
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2537+4
	lsl	r3, r4, #1
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-20]
	cmp	r2, r3
	bne	.L2535
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2537
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	AMQueueImplP$0$sendDone
	b	.L2532
.L2535:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2537
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2537+4
	lsl	r3, r4, #1
	add	r3, r3, r1
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, .L2537+8
	ldr	r2, .L2537+12
	ldr	r1, .L2537+16
	ldr	r0, .L2537+20
	bl	sim_log_debug
	b	.L2532
.L2536:
	nop
.L2532:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2538:
	.align	2
.L2537:
	.word	AMQueueImplP$0$current
	.word	AMQueueImplP$0$queue
	.word	__FUNCTION__.13742
	.word	.LC294
	.word	.LC295
	.word	397
	.size	AMQueueImplP$0$AMSend$sendDone, .-AMQueueImplP$0$AMSend$sendDone
	.global	__aeabi_d2uiz
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$shouldReceive, %function
CpmModelC$shouldReceive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	CpmModelC$prr_estimate_from_snr
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	bl	RandomUniform
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L2540
	mov	r2, #0
	ldr	r3, .L2550
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L2540
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L2549
	mov	r2, #0
	ldr	r3, .L2550
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	b	.L2540
.L2549:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
.L2540:
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2uiz
	mov	r3, r0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2551:
	.align	2
.L2550:
	.word	1072693248
	.size	CpmModelC$shouldReceive, .-CpmModelC$shouldReceive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$GainRadioModel$shouldAck, %function
TossimPacketModelC$GainRadioModel$shouldAck:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2555
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2553
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2555+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2553
	ldr	r0, [fp, #-8]
	bl	TossimPacketModelC$Packet$shouldAck
	mov	r3, r0
	b	.L2554
.L2553:
	mov	r3, #0
.L2554:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2556:
	.align	2
.L2555:
	.word	TossimPacketModelC$running
	.word	TossimPacketModelC$transmitting
	.size	TossimPacketModelC$GainRadioModel$shouldAck, .-TossimPacketModelC$GainRadioModel$shouldAck
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	CpmModelC$sim_gain_schedule_ack, %function
CpmModelC$sim_gain_schedule_ack:
	@ args = 4, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r0, #32
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	strb	r2, [r3, #12]
	ldr	r3, [fp, #-8]
	mov	r2, #0
	strb	r2, [r3, #13]
	ldr	r1, [fp, #-8]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-8]
	ldr	r2, .L2558
	str	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	ldr	r2, .L2558+4
	str	r2, [r3, #24]
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #4]
	str	r2, [r3, #16]
	ldr	r0, [fp, #-8]
	bl	sim_queue_insert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2559:
	.align	2
.L2558:
	.word	CpmModelC$sim_gain_ack_handle
	.word	sim_queue_cleanup_event
	.size	CpmModelC$sim_gain_schedule_ack, .-CpmModelC$sim_gain_schedule_ack
	.section	.rodata
	.align	2
.LC296:
	.ascii	"%u%s\000"
	.align	2
.LC297:
	.ascii	"-%u%s\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$printPathLink, %function
SourceShortestPathP$0$printPathLink:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	strb	r3, [fp, #-5]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-16]
	bl	strcpy
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2564
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2561
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r3, [fp, #-16]
	ldr	r1, .L2564+4
	ldr	r0, [fp, #-12]
	bl	sprintf
	b	.L2563
.L2561:
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r3, [fp, #-16]
	ldr	r1, .L2564+8
	ldr	r0, [fp, #-12]
	bl	sprintf
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2564+12
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	SourceShortestPathP$0$printPathLink
.L2563:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2565:
	.align	2
.L2564:
	.word	SourceShortestPathP$0$lastSrc
	.word	.LC296
	.word	.LC297
	.word	SourceShortestPathP$0$spt
	.size	SourceShortestPathP$0$printPathLink, .-SourceShortestPathP$0$printPathLink
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$3$BitVector$get, %function
BitVectorC$3$BitVector$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$getIndex
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2568
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r4, r3
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$3$getMask
	mov	r3, r0
	and	r3, r3, r4
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2569:
	.align	2
.L2568:
	.word	BitVectorC$3$m_bits
	.size	BitVectorC$3$BitVector$get, .-BitVectorC$3$BitVector$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SourceShortestPathP$0$SourceShortestPath$edgeCount, %function
SourceShortestPathP$0$SourceShortestPath$edgeCount:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #19
	bhi	.L2571
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2576
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #20
	bne	.L2572
.L2571:
	mov	r3, #0
	b	.L2573
.L2572:
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L2574
.L2575:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$PathEdgeList$next
	mov	r3, r0
	strb	r3, [fp, #-13]
.L2574:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SourceShortestPathP$0$PathEdgeList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2575
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
.L2573:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2577:
	.align	2
.L2576:
	.word	SourceShortestPathP$0$spt
	.size	SourceShortestPathP$0$SourceShortestPath$edgeCount, .-SourceShortestPathP$0$SourceShortestPath$edgeCount
	.section	.rodata
	.align	2
.LC298:
	.ascii	"DSR: Pkt %u: Dest %u already in route request out c"
	.ascii	"ache\012\000"
	.align	2
.LC299:
	.ascii	"DSR: Pkt %u: Adding source route to %u\012\000"
	.align	2
.LC300:
	.ascii	"DSR: Pkt %u: Sending to %u along the way to %u\012\000"
	.align	2
.LC301:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteCache$routeUpdate, %function
DsrControlP$0$RouteCache$routeUpdate:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	mov	r3, r0
	strb	r3, [fp, #-37]
	mov	r3, r1
	strb	r3, [fp, #-38]
	mov	r3, r2
	strb	r3, [fp, #-39]
	ldr	r3, .L2597
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-32]	@ movhi
	mvn	r3, #0
	strb	r3, [fp, #-30]
	mov	r3, #0
	strb	r3, [fp, #-29]
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2579
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$resetRouteRequestOutCache
.L2579:
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-35]
	b	.L2580
.L2594:
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$packet
	str	r0, [fp, #-28]
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	bne	.L2581
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$packet
	str	r0, [fp, #-28]
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$SourceRoute$length
	mov	r3, r0
	cmp	r3, #0
	beq	.L2581
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-35]
	b	.L2580
.L2581:
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	cmp	r2, r3
	beq	.L2582
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-35]
	b	.L2580
.L2582:
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2583
	sub	r3, fp, #32
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutCache$insert
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3, #3]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2584
	ldrb	r2, [fp, #-35]	@ zero_extendqisi2
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2597+4
	ldr	r1, .L2597+8
	ldr	r0, .L2597+12
	bl	sim_log_debug
	b	.L2578
.L2584:
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutTimer$expired
	b	.L2578
.L2583:
	ldrb	r3, [fp, #-39]
	sub	r3, r3, #1
	strb	r3, [fp, #-33]
	ldrb	r2, [fp, #-35]	@ zero_extendqisi2
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2597+16
	ldr	r1, .L2597+8
	mov	r0, #296
	bl	sim_log_debug
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$AMPacket$type
	mov	r3, r0
	cmp	r3, #48
	beq	.L2586
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	DsrControlP$0$addDsrHeader
	mov	r3, r0
	cmp	r3, #1
	bne	.L2586
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-35]
	b	.L2580
.L2586:
	ldrb	r3, [fp, #-33]
	lsl	r3, r3, #1
	and	r3, r3, #255
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$SourceRoute$add
	mov	r3, r0
	cmp	r3, #0
	beq	.L2587
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	ldr	r2, .L2597+20
	ldr	r1, .L2597+8
	ldr	r0, .L2597+24
	bl	sim_log_error
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-35]
	b	.L2580
.L2587:
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$SourceRoute$value
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L2588
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	ldr	r2, .L2597+28
	ldr	r1, .L2597+8
	ldr	r0, .L2597+32
	bl	sim_log_error
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-35]
	b	.L2580
.L2588:
	mov	r3, #0
	mov	r2, #1
	mov	r1, #0
	ldr	r0, [fp, #-24]
	bl	__nesc_htonbf_uint8
	mov	r3, #0
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-24]
	bl	__nesc_htonbf_uint8
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-24]
	bl	__nesc_htonbf_uint8
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2589
	ldrb	r3, [fp, #-33]
	strb	r3, [fp, #-34]
	ldrb	r3, [fp, #-34]
	sub	r3, r3, #1
	strb	r3, [fp, #-34]
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	add	r4, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$RouteNodeList$next
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	b	.L2590
.L2591:
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	sub	r3, r3, #1
	lsl	r3, r3, #1
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	add	r4, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	and	r3, r3, #255
	mov	r0, r3
	bl	DsrControlP$0$RouteNodeList$next
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	sub	r3, r3, #1
	strb	r3, [fp, #-34]
.L2590:
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2591
.L2589:
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2592
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$AMPacket$setDestination
	b	.L2593
.L2592:
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r1, r3
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$AMPacket$setDestination
.L2593:
	ldrb	r4, [fp, #-35]	@ zero_extendqisi2
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	str	r3, [sp, #4]
	str	r2, [sp]
	mov	r3, r4
	ldr	r2, .L2597+36
	ldr	r1, .L2597+8
	ldr	r0, .L2597+40
	bl	sim_log_debug
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$Acks$requestAck
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-35]	@ zero_extendqisi2
	ldr	r0, .L2597+44
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #2
	strb	r2, [r3]
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$send
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-35]
.L2580:
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2594
.L2578:
	ldr	r3, .L2597
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2596
	bl	__stack_chk_fail
.L2596:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2598:
	.align	2
.L2597:
	.word	.LC301
	.word	.LC298
	.word	.LC6
	.word	295
	.word	.LC299
	.word	.LC43
	.word	297
	.word	.LC44
	.word	298
	.word	.LC300
	.word	299
	.word	DsrControlP$0$retriesLeft
	.size	DsrControlP$0$RouteCache$routeUpdate, .-DsrControlP$0$RouteCache$routeUpdate
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$DataCache$lookup, %function
LruDataCacheP$2$DataCache$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	LruDataCacheP$2$lookup
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	LruDataCacheP$2$printCache
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2602
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2600
	mov	r3, #0
	b	.L2601
.L2600:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2602+4
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L2602+8
	add	r3, r3, r2
.L2601:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2603:
	.align	2
.L2602:
	.word	LruDataCacheP$2$count
	.word	LruDataCacheP$2$first
	.word	LruDataCacheP$2$cache
	.size	LruDataCacheP$2$DataCache$lookup, .-LruDataCacheP$2$DataCache$lookup
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$lookup, %function
LruDataCacheP$2$lookup:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	mov	r3, #0
	strb	r3, [fp, #-17]
	b	.L2605
.L2608:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2611
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldrb	r3, [fp, #-17]
	add	r3, r2, r3
	and	r3, r3, #255
	and	r3, r3, #7
	lsl	r2, r4, #3
	add	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, .L2611+4
	add	r3, r3, r2
	str	r3, [fp, #-16]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-16]
	bl	LruDataCacheP$2$Equal$test
	mov	r3, r0
	cmp	r3, #0
	bne	.L2610
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-17]
.L2605:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2611+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2608
	b	.L2607
.L2610:
	nop
.L2607:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2612:
	.align	2
.L2611:
	.word	LruDataCacheP$2$first
	.word	LruDataCacheP$2$cache
	.word	LruDataCacheP$2$count
	.size	LruDataCacheP$2$lookup, .-LruDataCacheP$2$lookup
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	LruDataCacheP$2$printCache, %function
LruDataCacheP$2$printCache:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	ldr	r2, .L2617
	ldr	r1, .L2617+4
	ldr	r0, .L2617+8
	bl	sim_log_debug
	mov	r3, #0
	strb	r3, [fp, #-5]
	b	.L2614
.L2616:
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2617+12
	lsl	r1, r1, #3
	add	r3, r1, r3
	lsl	r1, r3, #2
	add	r1, r2, r1
	ldrh	r1, [r1]
	lsl	r3, r3, #2
	add	r3, r2, r3
	add	r3, r3, #2
	ldrh	r3, [r3]
	lsl	r3, r3, #16
	orr	r2, r3, r1
	mov	r3, #0
	mov	r3, r2
	ldr	r2, .L2617+16
	ldr	r1, .L2617+4
	ldr	r0, .L2617+20
	bl	sim_log_debug_clear
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2617+24
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2615
	ldr	r2, .L2617+28
	ldr	r1, .L2617+4
	mov	r0, #388
	bl	sim_log_debug_clear
.L2615:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-5]
.L2614:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2617+32
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2616
	ldr	r2, .L2617+36
	ldr	r1, .L2617+4
	ldr	r0, .L2617+40
	bl	sim_log_debug_clear
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2618:
	.align	2
.L2617:
	.word	.LC132
	.word	.LC133
	.word	386
	.word	LruDataCacheP$2$cache
	.word	.LC134
	.word	387
	.word	LruDataCacheP$2$first
	.word	.LC135
	.word	LruDataCacheP$2$count
	.word	.LC136
	.word	389
	.size	LruDataCacheP$2$printCache, .-LruDataCacheP$2$printCache
	.section	.rodata
	.align	2
.LC302:
	.ascii	"DT: Removed position %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$removeTimer, %function
DataTimerP$0$removeTimer:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2625
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L2624
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2625+4
	ldr	r1, .L2625+8
	mov	r0, #392
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2625
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	sub	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L2625
	strb	r1, [r2, r3]
	b	.L2622
.L2623:
	bl	sim_node
	mov	r5, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r4, r3, #1
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2625+12
	lsl	r2, r5, #3
	add	r2, r2, r4
	lsl	r2, r2, #1
	add	r2, r0, r2
	ldrh	r2, [r2]
	ldr	r0, .L2625+12
	lsl	r1, r1, #3
	add	r3, r1, r3
	lsl	r3, r3, #1
	add	r3, r0, r3
	strh	r2, [r3]	@ movhi
	bl	sim_node
	mov	r5, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r4, r3, #1
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2625+16
	lsl	r2, r5, #3
	add	r2, r2, r4
	lsl	r2, r2, #1
	add	r2, r0, r2
	ldrh	r2, [r2]
	ldr	r0, .L2625+16
	lsl	r1, r1, #3
	add	r3, r1, r3
	lsl	r3, r3, #1
	add	r3, r0, r3
	strh	r2, [r3]	@ movhi
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L2622:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2625
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2623
	b	.L2619
.L2624:
	nop
.L2619:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2626:
	.align	2
.L2625:
	.word	DataTimerP$0$size
	.word	.LC302
	.word	.LC125
	.word	DataTimerP$0$data
	.word	DataTimerP$0$delay
	.size	DataTimerP$0$removeTimer, .-DataTimerP$0$removeTimer
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$adjustTimer, %function
DataTimerP$0$adjustTimer:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	bl	DataTimerP$0$Timer$getNow
	str	r0, [fp, #-12]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2630
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-12]
	sub	r3, r2, r3
	str	r3, [fp, #-8]
	bl	DataTimerP$0$Timer$stop
	mov	r3, #0
	strb	r3, [fp, #-13]
	b	.L2628
.L2629:
	bl	sim_node
	mov	r3, r0
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2630+4
	lsl	r1, r3, #3
	add	r2, r1, r2
	lsl	r2, r2, #1
	add	r2, r0, r2
	ldrh	r0, [r2]
	ldr	r2, [fp, #-8]
	lsl	r2, r2, #16
	lsr	r2, r2, #16
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	sub	r2, r0, r2
	lsl	r2, r2, #16
	lsr	r2, r2, #16
	ldr	r0, .L2630+4
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	strh	r2, [r3]	@ movhi
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L2628:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2630+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2629
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2630
	ldr	r3, [fp, #-12]
	str	r3, [r1, r2, lsl #2]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2631:
	.align	2
.L2630:
	.word	DataTimerP$0$startTime
	.word	DataTimerP$0$delay
	.word	DataTimerP$0$size
	.size	DataTimerP$0$adjustTimer, .-DataTimerP$0$adjustTimer
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DataTimerP$0$Timer$startOneShot, %function
DataTimerP$0$Timer$startOneShot:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r1, [fp, #-8]
	mov	r0, #1
	bl	VirtualizeTimerC$0$Timer$startOneShot
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DataTimerP$0$Timer$startOneShot, .-DataTimerP$0$Timer$startOneShot
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$waitList, %function
PacketEngineP$PacketEngine$waitList:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2636
	ldrb	r3, [r2, r3]
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2634
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldr	r0, .L2636+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2634
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	PacketEngineP$PacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-5]
.L2634:
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2637:
	.align	2
.L2636:
	.word	PacketEngineP$nextWaitPkt
	.word	PacketEngineP$msgBuffer
	.size	PacketEngineP$PacketEngine$waitList, .-PacketEngineP$PacketEngine$waitList
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketWaitList$next, %function
PacketEngineP$PacketWaitList$next:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2639
	ldrb	r3, [fp, #-6]
	add	r3, r3, #1
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r3, .L2644
	umull	r1, r3, r2, r3
	lsr	r1, r3, #5
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	sub	r3, r2, r3
	strb	r3, [fp, #-6]
	b	.L2640
.L2643:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2644+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #4
	bne	.L2641
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2644+4
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, r2
	bne	.L2641
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	b	.L2642
.L2641:
	ldrb	r3, [fp, #-6]
	add	r3, r3, #1
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r3, .L2644
	umull	r1, r3, r2, r3
	lsr	r1, r3, #5
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	sub	r3, r2, r3
	strb	r3, [fp, #-6]
.L2640:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2644+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2643
.L2639:
	mov	r3, #40
.L2642:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2645:
	.align	2
.L2644:
	.word	-858993459
	.word	PacketEngineP$msgBuffer
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$PacketWaitList$next, .-PacketEngineP$PacketWaitList$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$pidCombineInternal, %function
PacketEngineP$pidCombineInternal:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2656
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L2647
	ldrb	r3, [fp, #-13]
	add	r3, r3, #40
	and	r3, r3, #255
	b	.L2648
.L2647:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
.L2648:
	strb	r3, [fp, #-6]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2656
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L2649
	ldrb	r3, [fp, #-14]
	add	r3, r3, #40
	and	r3, r3, #255
	b	.L2650
.L2649:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
.L2650:
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L2651
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	b	.L2652
.L2651:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, #40
	bne	.L2653
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	b	.L2652
.L2653:
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L2654
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	b	.L2652
.L2654:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
.L2652:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2657:
	.align	2
.L2656:
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$pidCombineInternal, .-PacketEngineP$pidCombineInternal
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$packet, %function
PacketEngineP$PacketEngine$packet:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2659
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2662
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #1
	beq	.L2659
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2662
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2660
.L2659:
	mov	r3, #0
	b	.L2661
.L2660:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2662
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
.L2661:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2663:
	.align	2
.L2662:
	.word	PacketEngineP$msgBuffer
	.size	PacketEngineP$PacketEngine$packet, .-PacketEngineP$PacketEngine$packet
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSinglePacket$length, %function
TlvPacketP$0$TlvSinglePacket$length:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r2, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	TlvPacketP$0$TlvSingle$length
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSinglePacket$length, .-TlvPacketP$0$TlvSinglePacket$length
	.section	.rodata
	.align	2
.LC303:
	.ascii	"TLV: Type %hhu found at byte %hhu\012\000"
	.align	2
.LC304:
	.ascii	"TLV: Type %hhu not found\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvList$next, %function
TlvP$TlvList$next:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	cmp	r3, #255
	bne	.L2667
	mov	r3, #0
	strb	r3, [fp, #-14]
	b	.L2669
.L2667:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	TlvP$tlvAt
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	add	r3, r3, #2
	and	r2, r3, #255
	ldrb	r3, [fp, #-14]
	add	r3, r2, r3
	strb	r3, [fp, #-14]
	b	.L2669
.L2672:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	TlvP$tlvAt
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, r2
	bne	.L2670
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2673
	ldr	r1, .L2673+4
	mov	r0, #256
	bl	sim_log_debug
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	b	.L2671
.L2670:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	add	r3, r3, #2
	and	r2, r3, #255
	ldrb	r3, [fp, #-14]
	add	r3, r2, r3
	strb	r3, [fp, #-14]
.L2669:
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2672
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2673+8
	ldr	r1, .L2673+4
	ldr	r0, .L2673+12
	bl	sim_log_debug
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
.L2671:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2674:
	.align	2
.L2673:
	.word	.LC303
	.word	.LC128
	.word	.LC304
	.word	257
	.size	TlvP$TlvList$next, .-TlvP$TlvList$next
	.section	.rodata
	.align	2
.LC305:
	.ascii	"TLV: Key too large or type doesn't match!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvMultiple$length, %function
TlvP$TlvMultiple$length:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	TlvP$tlvAt
	str	r0, [fp, #-8]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	bne	.L2676
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2677
.L2676:
	ldr	r2, .L2679
	ldr	r1, .L2679+4
	mov	r0, #249
	bl	sim_log_error
	mov	r3, #0
	b	.L2678
.L2677:
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
.L2678:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2680:
	.align	2
.L2679:
	.word	.LC305
	.word	.LC128
	.size	TlvP$TlvMultiple$length, .-TlvP$TlvMultiple$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$SubPacket$payloadLength, %function
TlvPacketP$0$SubPacket$payloadLength:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$SubPacket$payloadLength, .-TlvPacketP$0$SubPacket$payloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Packet$getPayload, %function
PacketEngineP$Packet$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r0, r3
	ldrb	r3, [fp, #-17]
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	ldr	r1, [fp, #-16]
	bl	PacketEngineP$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L2684
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L2684:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Packet$getPayload, .-PacketEngineP$Packet$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubPacket$default$getPayload, %function
PacketEngineP$SubPacket$default$getPayload:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2688
	ldr	r1, .L2688+4
	mov	r0, #135
	bl	sim_log_error
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2689:
	.align	2
.L2688:
	.word	.LC8
	.word	.LC9
	.size	PacketEngineP$SubPacket$default$getPayload, .-PacketEngineP$SubPacket$default$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$SubPacket$getPayload, %function
PacketEngineP$SubPacket$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #4
	beq	.L2691
	cmp	r3, #48
	beq	.L2692
	b	.L2696
.L2691:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	TossimActiveMessageC$Packet$getPayload
	str	r0, [fp, #-8]
	b	.L2694
.L2692:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	TlvPacketP$0$Packet$getPayload
	str	r0, [fp, #-8]
	b	.L2694
.L2696:
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	PacketEngineP$SubPacket$default$getPayload
	str	r0, [fp, #-8]
	nop
.L2694:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$SubPacket$getPayload, .-PacketEngineP$SubPacket$getPayload
	.section	.rodata
	.align	2
.LC306:
	.ascii	"DSR: Pkt %u: Route request out cache for %u already"
	.ascii	" gone!\012\000"
	.align	2
.LC307:
	.ascii	"DSR: Route request out timer fired for %u, but no p"
	.ascii	"ackets are waiting!\012\000"
	.align	2
.LC308:
	.ascii	"DSR: Pkt %u: Sending route request #%hhu to %u\012\000"
	.align	2
.LC309:
	.ascii	"DSR: Sent max route requests for %u, dropping all p"
	.ascii	"ackets!\012\000"
	.align	2
.LC310:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$RouteRequestOutTimer$expired, %function
DsrControlP$0$RouteRequestOutTimer$expired:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	mov	r3, r0
	strh	r3, [fp, #-22]	@ movhi
	ldr	r3, .L2707
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldrh	r3, [fp, #-22]
	mov	r0, r3
	bl	DsrControlP$0$findSingleDsrPktTo
	mov	r3, r0
	strb	r3, [fp, #-17]
	ldrh	r3, [fp, #-22]	@ movhi
	strh	r3, [fp, #-16]	@ movhi
	mvn	r3, #0
	strb	r3, [fp, #-14]
	mov	r3, #0
	strb	r3, [fp, #-13]
	sub	r3, fp, #16
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestOutCache$lookup
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L2698
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	ldrh	r3, [fp, #-22]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2707+4
	ldr	r1, .L2707+8
	mov	r0, #304
	bl	sim_log_error
	b	.L2697
.L2698:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2700
	ldrh	r3, [fp, #-22]
	ldr	r2, .L2707+12
	ldr	r1, .L2707+8
	ldr	r0, .L2707+16
	bl	sim_log_error
	b	.L2697
.L2700:
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #3]	@ zero_extendqisi2
	cmp	r3, #15
	bhi	.L2701
	ldr	r3, [fp, #-12]
	ldrb	r2, [r3, #3]	@ zero_extendqisi2
	ldrh	r3, [fp, #-22]
	mov	r1, r2
	mov	r0, r3
	bl	DsrControlP$0$updateRouteRequestOutTimer
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #3]	@ zero_extendqisi2
	add	r3, r3, #1
	and	r2, r3, #255
	ldr	r3, [fp, #-12]
	strb	r2, [r3, #3]
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #3]	@ zero_extendqisi2
	mov	r1, r3
	ldrh	r3, [fp, #-22]
	str	r3, [sp, #4]
	str	r1, [sp]
	mov	r3, r2
	ldr	r2, .L2707+20
	ldr	r1, .L2707+8
	ldr	r0, .L2707+24
	bl	sim_log_debug
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$set
	bl	DsrControlP$0$composePkt$postTask
	b	.L2697
.L2701:
	ldrh	r3, [fp, #-22]
	ldr	r2, .L2707+28
	ldr	r1, .L2707+8
	ldr	r0, .L2707+32
	bl	sim_log_error
	ldr	r3, [fp, #-12]
	mov	r2, #0
	strb	r2, [r3, #3]
	b	.L2703
.L2704:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r1, #1
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$upperSendDone
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketEngine$drop
	ldrh	r3, [fp, #-22]
	mov	r0, r3
	bl	DsrControlP$0$findSingleDsrPktTo
	mov	r3, r0
	strb	r3, [fp, #-17]
.L2703:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2704
.L2697:
	ldr	r3, .L2707
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2706
	bl	__stack_chk_fail
.L2706:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2708:
	.align	2
.L2707:
	.word	.LC310
	.word	.LC306
	.word	.LC6
	.word	.LC307
	.word	305
	.word	.LC308
	.word	306
	.word	.LC309
	.word	307
	.size	DsrControlP$0$RouteRequestOutTimer$expired, .-DsrControlP$0$RouteRequestOutTimer$expired
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$findSingleDsrPktTo, %function
DsrControlP$0$findSingleDsrPktTo:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	DsrControlP$0$SingleDsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-9]
	b	.L2710
.L2714:
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$packet
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L2711
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$packet
	str	r0, [fp, #-8]
.L2711:
	ldr	r0, [fp, #-8]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-14]
	cmp	r3, r2
	bne	.L2712
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	b	.L2713
.L2712:
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-9]
.L2710:
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SingleDsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2714
	ldrb	r3, [fp, #-9]	@ zero_extendqisi2
.L2713:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$findSingleDsrPktTo, .-DsrControlP$0$findSingleDsrPktTo
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SingleDsrPacketEngine$drop, %function
DsrControlP$0$SingleDsrPacketEngine$drop:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #4
	bl	PacketEngineP$PacketEngine$drop
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r1, r3
	mov	r0, #48
	bl	PacketEngineP$PacketEngine$drop
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	ecombine
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	DsrControlP$0$SingleDsrPacketEngine$drop, .-DsrControlP$0$SingleDsrPacketEngine$drop
	.section	.rodata
	.align	2
.LC311:
	.ascii	"PE: Dropping pkt %u from the buffer\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$drop, %function
PacketEngineP$PacketEngine$drop:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2718
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2722
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #4
	bne	.L2718
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2722
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2719
.L2718:
	mov	r3, #6
	b	.L2720
.L2719:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r2, .L2722+4
	ldr	r1, .L2722+8
	mov	r0, #143
	bl	sim_log_debug
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$removePacket
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2722+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2721
	bl	PacketEngineP$moveWaitIndex
.L2721:
	mov	r3, #0
.L2720:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2723:
	.align	2
.L2722:
	.word	PacketEngineP$msgBuffer
	.word	.LC311
	.word	.LC9
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$PacketEngine$drop, .-PacketEngineP$PacketEngine$drop
	.section	.rodata
	.align	2
.LC312:
	.ascii	"DSR: Pkt %u: DSR header already present!\012\000"
	.align	2
.LC313:
	.ascii	"DSR: Pkt %u: Adding DSR header failed!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$addDsrHeader, %function
DsrControlP$0$addDsrHeader:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldr	r0, [fp, #-12]
	bl	DsrControlP$0$AMPacket$type
	mov	r3, r0
	cmp	r3, #48
	bne	.L2725
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2728
	ldr	r1, .L2728+4
	ldr	r0, .L2728+8
	bl	sim_log_error
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	mov	r3, #1
	b	.L2726
.L2725:
	ldr	r0, [fp, #-12]
	bl	DsrControlP$0$DsrHeader$add
	mov	r3, r0
	cmp	r3, #0
	beq	.L2727
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2728+12
	ldr	r1, .L2728+4
	ldr	r0, .L2728+16
	bl	sim_log_error
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	mov	r3, #1
	b	.L2726
.L2727:
	mov	r1, #48
	ldr	r0, [fp, #-12]
	bl	DsrControlP$0$AMPacket$setType
	mov	r3, #0
.L2726:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2729:
	.align	2
.L2728:
	.word	.LC312
	.word	.LC6
	.word	342
	.word	.LC313
	.word	343
	.size	DsrControlP$0$addDsrHeader, .-DsrControlP$0$addDsrHeader
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$postLengthChange, %function
TlvPacketP$0$postLengthChange:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	mov	r3, r2
	strb	r3, [fp, #-13]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$TlvBlock$length
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]
	add	r3, r2, r3
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	TlvPacketP$0$SubPacket$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$postLengthChange, .-TlvPacketP$0$postLengthChange
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMPacket$setType, %function
TossimActiveMessageC$AMPacket$setType:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #6
	ldrb	r2, [fp, #-17]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$AMPacket$setType, .-TossimActiveMessageC$AMPacket$setType
	.section	.rodata
	.align	2
.LC314:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSinglePacket$add, %function
TlvPacketP$0$TlvSinglePacket$add:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	mov	r3, r0
	str	r1, [fp, #-36]
	strb	r3, [fp, #-29]
	mov	r3, r2
	strb	r3, [fp, #-30]
	ldr	r3, .L2735
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #22
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	TlvPacketP$0$preLengthChange
	str	r0, [fp, #-20]
	ldrb	r4, [fp, #-22]	@ zero_extendqisi2
	bl	TlvPacketP$0$maxLen
	mov	r3, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldrb	r0, [fp, #-29]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r4
	ldr	r1, [fp, #-20]
	bl	TlvPacketP$0$TlvSingle$add
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-36]
	bl	TlvPacketP$0$postLengthChange
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, .L2735
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L2734
	bl	__stack_chk_fail
.L2734:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2736:
	.align	2
.L2735:
	.word	.LC314
	.size	TlvPacketP$0$TlvSinglePacket$add, .-TlvPacketP$0$TlvSinglePacket$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$preLengthChange, %function
TlvPacketP$0$preLengthChange:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-20]
	strb	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	TlvPacketP$0$TlvBlock$length
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	sub	r3, r3, r2
	and	r2, r3, #255
	ldr	r3, [fp, #-20]
	strb	r2, [r3]
	ldr	r3, [fp, #-20]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	TlvPacketP$0$SubPacket$setPayloadLength
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$preLengthChange, .-TlvPacketP$0$preLengthChange
	.section	.rodata
	.align	2
.LC315:
	.ascii	"TLV: Not enough room to add type %hhu!\012\000"
	.align	2
.LC316:
	.ascii	"TLV: Adding type %hhu with length %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvMultiple$add, %function
TlvP$TlvMultiple$add:
	@ args = 8, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-29]
	mov	r3, r2
	strb	r3, [fp, #-30]
	ldr	r3, [fp, #-36]
	str	r3, [fp, #-24]
	ldrb	r3, [fp, #-30]
	add	r3, r3, #2
	strb	r3, [fp, #-25]
	ldr	r0, [fp, #-36]
	bl	TlvP$TlvBlock$length
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	add	r2, r2, r3
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	cmp	r2, r3
	ble	.L2740
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	ldr	r2, .L2743
	ldr	r1, .L2743+4
	mov	r0, #254
	bl	sim_log_error
	mov	r3, #2
	b	.L2741
.L2740:
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2743+8
	ldr	r1, .L2743+4
	mov	r0, #255
	bl	sim_log_debug
	ldr	r3, [fp, #-24]
	add	r4, r3, #1
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	add	r3, r4, r3
	str	r3, [fp, #-20]
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldrb	r2, [fp, #4]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	memmove
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	beq	.L2742
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2742
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-40]
	strb	r2, [r3]
.L2742:
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-25]
	add	r3, r2, r3
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	__nesc_hton_uint8
	ldr	r3, [fp, #-20]
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
	mov	r3, #0
.L2741:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2744:
	.align	2
.L2743:
	.word	.LC315
	.word	.LC128
	.word	.LC316
	.size	TlvP$TlvMultiple$add, .-TlvP$TlvMultiple$add
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSinglePacket$value, %function
TlvPacketP$0$TlvSinglePacket$value:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r2, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	TlvPacketP$0$TlvSingle$value
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvSinglePacket$value, .-TlvPacketP$0$TlvSinglePacket$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvMultiple$value, %function
TlvP$TlvMultiple$value:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	TlvP$tlvAt
	str	r0, [fp, #-8]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	bne	.L2748
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2749
.L2748:
	ldr	r2, .L2751
	ldr	r1, .L2751+4
	mov	r0, #253
	bl	sim_log_error
	mov	r3, #0
	b	.L2750
.L2749:
	ldr	r3, [fp, #-8]
	add	r3, r3, #2
.L2750:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2752:
	.align	2
.L2751:
	.word	.LC305
	.word	.LC128
	.size	TlvP$TlvMultiple$value, .-TlvP$TlvMultiple$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimActiveMessageC$AMPacket$setDestination, %function
TossimActiveMessageC$AMPacket$setDestination:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strh	r3, [fp, #-18]	@ movhi
	ldr	r0, [fp, #-16]
	bl	TossimActiveMessageC$getHeader
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrh	r2, [fp, #-18]
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint16
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimActiveMessageC$AMPacket$setDestination, .-TossimActiveMessageC$AMPacket$setDestination
	.section	.rodata
	.align	2
.LC317:
	.ascii	"PE: Marking pkt %u to be sent\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$send, %function
PacketEngineP$PacketEngine$send:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2755
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2758
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #4
	bne	.L2755
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2758
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2756
.L2755:
	mov	r3, #6
	b	.L2757
.L2756:
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	ldr	r2, .L2758+4
	ldr	r1, .L2758+8
	mov	r0, #139
	bl	sim_log_debug
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, #8
	mov	r0, r3
	bl	PacketEngineP$markPacket
	mov	r3, #0
.L2757:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2759:
	.align	2
.L2758:
	.word	PacketEngineP$msgBuffer
	.word	.LC317
	.word	.LC9
	.size	PacketEngineP$PacketEngine$send, .-PacketEngineP$PacketEngine$send
	.section	.rodata
	.align	2
.LC318:
	.ascii	"DSR: Pkt %u: No route found to %u, dropping salvage"
	.ascii	"d packet!\012\000"
	.align	2
.LC319:
	.ascii	"DSR: Pkt %u: Route found to %u, modifying salvaged "
	.ascii	"packet\012\000"
	.align	2
.LC320:
	.ascii	"DSR: Pkt %u: Not enough room to extend source route"
	.ascii	", dropping!\012\000"
	.align	2
.LC321:
	.ascii	"DSR: Pkt %u: Sending salvaged to %u along the way t"
	.ascii	"o %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SalvageRouteCache$routeUpdate, %function
DsrControlP$0$SalvageRouteCache$routeUpdate:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	mov	r3, r0
	strb	r3, [fp, #-29]
	mov	r3, r1
	strb	r3, [fp, #-30]
	mov	r3, r2
	strb	r3, [fp, #-31]
	bl	DsrControlP$0$DsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-28]
	b	.L2761
.L2771:
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Salvage$get
	mov	r3, r0
	cmp	r3, #0
	bne	.L2762
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-28]
	b	.L2761
.L2762:
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$packet
	str	r0, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	cmp	r2, r3
	beq	.L2763
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-28]
	b	.L2761
.L2763:
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$SourceRoute$length
	mov	r3, r0
	cmp	r3, #0
	bne	.L2764
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketWaitList$next
	mov	r3, r0
	strb	r3, [fp, #-28]
	b	.L2761
.L2764:
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$SourceRoute$value
	str	r0, [fp, #-20]
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2765
	ldrb	r2, [fp, #-28]	@ zero_extendqisi2
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2772
	ldr	r1, .L2772+4
	mov	r0, #300
	bl	sim_log_debug
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r1, #1
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$upperSendDone
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Salvage$clear
	bl	DsrControlP$0$DsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-28]
	b	.L2761
.L2765:
	ldrb	r3, [fp, #-31]
	strb	r3, [fp, #-26]
	ldrb	r2, [fp, #-28]	@ zero_extendqisi2
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2772+8
	ldr	r1, .L2772+4
	ldr	r0, .L2772+12
	bl	sim_log_debug
	ldrb	r3, [fp, #-26]
	lsl	r3, r3, #1
	and	r3, r3, #255
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$SourceRoute$setLength
	mov	r3, r0
	cmp	r3, #0
	beq	.L2766
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	ldr	r2, .L2772+16
	ldr	r1, .L2772+4
	ldr	r0, .L2772+20
	bl	sim_log_error
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r1, #1
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$upperSendDone
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Salvage$clear
	bl	DsrControlP$0$DsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-28]
	b	.L2761
.L2766:
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-16]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	strb	r3, [fp, #-25]
	ldrb	r3, [fp, #-25]
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-16]
	bl	__nesc_htonbf_uint8
	ldrb	r3, [fp, #-26]
	sub	r3, r3, #1
	and	r3, r3, #255
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-20]
	bl	__nesc_htonbf_uint8
	ldrb	r3, [fp, #-26]
	sub	r3, r3, #1
	strb	r3, [fp, #-27]
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	add	r4, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$RouteNodeList$next
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	b	.L2767
.L2768:
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	sub	r3, r3, #1
	lsl	r3, r3, #1
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	add	r4, r3, #1
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	and	r3, r3, #255
	mov	r0, r3
	bl	DsrControlP$0$RouteNodeList$next
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	sub	r3, r3, #1
	strb	r3, [fp, #-27]
.L2767:
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2768
	ldrb	r3, [fp, #-26]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L2769
	ldr	r3, [fp, #-20]
	add	r3, r3, #3
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$AMPacket$setDestination
	b	.L2770
.L2769:
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$AMPacket$setDestination
.L2770:
	ldrb	r4, [fp, #-28]	@ zero_extendqisi2
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	str	r3, [sp, #4]
	str	r2, [sp]
	mov	r3, r4
	ldr	r2, .L2772+24
	ldr	r1, .L2772+4
	ldr	r0, .L2772+28
	bl	sim_log_debug
	ldr	r0, [fp, #-24]
	bl	DsrControlP$0$Acks$requestAck
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-28]	@ zero_extendqisi2
	ldr	r0, .L2772+32
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #2
	strb	r2, [r3]
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Salvage$clear
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$send
	bl	DsrControlP$0$DsrPacketEngine$waitList
	mov	r3, r0
	strb	r3, [fp, #-28]
.L2761:
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2771
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2773:
	.align	2
.L2772:
	.word	.LC318
	.word	.LC6
	.word	.LC319
	.word	301
	.word	.LC320
	.word	302
	.word	.LC321
	.word	303
	.word	DsrControlP$0$retriesLeft
	.size	DsrControlP$0$SalvageRouteCache$routeUpdate, .-DsrControlP$0$SalvageRouteCache$routeUpdate
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$1$BitVector$clear, %function
BitVectorC$1$BitVector$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$getMask
	mov	r3, r0
	mvn	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$1$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L2775
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	lsl	r3, r5, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r1, r3, #255
	ldr	r2, .L2775
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2776:
	.align	2
.L2775:
	.word	BitVectorC$1$m_bits
	.size	BitVectorC$1$BitVector$clear, .-BitVectorC$1$BitVector$clear
	.section	.rodata
	.align	2
.LC322:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSinglePacket$setLength, %function
TlvPacketP$0$TlvSinglePacket$setLength:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	mov	r3, r0
	str	r1, [fp, #-36]
	strb	r3, [fp, #-29]
	mov	r3, r2
	strb	r3, [fp, #-30]
	ldr	r3, .L2780
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	sub	r3, fp, #22
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	TlvPacketP$0$preLengthChange
	str	r0, [fp, #-20]
	ldrb	r4, [fp, #-22]	@ zero_extendqisi2
	bl	TlvPacketP$0$maxLen
	mov	r3, r0
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldrb	r0, [fp, #-29]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r4
	ldr	r1, [fp, #-20]
	bl	TlvPacketP$0$TlvSingle$setLength
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-36]
	bl	TlvPacketP$0$postLengthChange
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, .L2780
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L2779
	bl	__stack_chk_fail
.L2779:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2781:
	.align	2
.L2780:
	.word	.LC322
	.size	TlvPacketP$0$TlvSinglePacket$setLength, .-TlvPacketP$0$TlvSinglePacket$setLength
	.section	.rodata
	.align	2
.LC323:
	.ascii	"TLV: Not enough room to set length of type %hhu to "
	.ascii	"%hhu!\012\000"
	.align	2
.LC324:
	.ascii	"TLV: Setting length of type %hhu to %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvP$TlvMultiple$setLength, %function
TlvP$TlvMultiple$setLength:
	@ args = 8, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	str	r1, [fp, #-44]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-37]
	mov	r3, r1
	strb	r3, [fp, #-38]
	mov	r3, r2
	strb	r3, [fp, #-39]
	ldr	r3, [fp, #-44]
	str	r3, [fp, #-28]
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-44]
	bl	TlvP$tlvAt
	str	r0, [fp, #-24]
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	TlvP$TlvList$end
	mov	r3, r0
	cmp	r3, #0
	bne	.L2783
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2784
.L2783:
	ldr	r2, .L2789
	ldr	r1, .L2789+4
	mov	r0, #250
	bl	sim_log_error
	mov	r3, #6
	b	.L2785
.L2784:
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r4, r3, #16
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	sub	r3, r4, r3
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-30]	@ movhi
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	add	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	str	r3, [fp, #-20]
	ldr	r0, [fp, #-44]
	bl	TlvP$TlvBlock$length
	mov	r3, r0
	mov	r1, r3
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	sub	r3, r2, r3
	and	r3, r3, #255
	sub	r3, r1, r3
	and	r2, r3, #255
	ldrb	r3, [fp, #4]
	add	r3, r2, r3
	strb	r3, [fp, #-31]
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2786
	ldrh	r3, [fp, #-30]
	sub	r3, r3, #2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	strh	r3, [fp, #-30]	@ movhi
.L2786:
	ldrsh	r3, [fp, #-30]
	cmp	r3, #0
	ble	.L2787
	ldr	r0, [fp, #-44]
	bl	TlvP$TlvBlock$length
	mov	r3, r0
	mov	r2, r3
	ldrsh	r3, [fp, #-30]
	add	r2, r2, r3
	ldrb	r3, [fp, #4]	@ zero_extendqisi2
	add	r2, r2, r3
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	cmp	r2, r3
	ble	.L2787
	ldrb	r2, [fp, #-37]	@ zero_extendqisi2
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2789+8
	ldr	r1, .L2789+4
	mov	r0, #251
	bl	sim_log_error
	mov	r3, #2
	b	.L2785
.L2787:
	ldrb	r2, [fp, #-37]	@ zero_extendqisi2
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2789+12
	ldr	r1, .L2789+4
	mov	r0, #252
	bl	sim_log_debug
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-30]	@ movhi
	and	r3, r3, #255
	add	r3, r2, r3
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	__nesc_hton_uint8
	ldrsh	r3, [fp, #-30]
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	memmove
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2788
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	ldrb	r2, [fp, #-39]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	__nesc_hton_uint8
.L2788:
	mov	r3, #0
.L2785:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2790:
	.align	2
.L2789:
	.word	.LC305
	.word	.LC128
	.word	.LC323
	.word	.LC324
	.size	TlvP$TlvMultiple$setLength, .-TlvP$TlvMultiple$setLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$2$BitVector$get, %function
BitVectorC$2$BitVector$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$getIndex
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2793
	mov	r3, r4
	lsl	r3, r3, #1
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r4, r3
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$2$getMask
	mov	r3, r0
	and	r3, r3, r4
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2794:
	.align	2
.L2793:
	.word	BitVectorC$2$m_bits
	.size	BitVectorC$2$BitVector$get, .-BitVectorC$2$BitVector$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Packet$setPayloadLength, %function
PacketEngineP$Packet$setPayloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r0, r3
	ldrb	r3, [fp, #-9]
	add	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	ldr	r1, [fp, #-8]
	bl	PacketEngineP$SubPacket$setPayloadLength
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Packet$setPayloadLength, .-PacketEngineP$Packet$setPayloadLength
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$0$BitVector$get, %function
BitVectorC$0$BitVector$get:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$getIndex
	mov	r3, r0
	mov	r1, r3
	ldr	r2, .L2798
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r4, r3
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$getMask
	mov	r3, r0
	and	r3, r3, r4
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2799:
	.align	2
.L2798:
	.word	BitVectorC$0$m_bits
	.size	BitVectorC$0$BitVector$get, .-BitVectorC$0$BitVector$get
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$SinglePacket$isForMe, %function
SinglePacketP$SinglePacket$isForMe:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$SinglePacket$destination
	mov	r3, r0
	mov	r4, r3
	bl	SinglePacketP$AMPacket$address
	mov	r3, r0
	cmp	r4, r3
	beq	.L2801
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$SinglePacket$destination
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L2805
	cmp	r2, r3
	bne	.L2802
.L2801:
	mov	r3, #1
	b	.L2803
.L2802:
	mov	r3, #0
.L2803:
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2806:
	.align	2
.L2805:
	.word	65535
	.size	SinglePacketP$SinglePacket$isForMe, .-SinglePacketP$SinglePacket$isForMe
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	BitVectorC$0$BitVector$clear, %function
BitVectorC$0$BitVector$clear:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	mov	r3, r0
	strh	r3, [fp, #-14]	@ movhi
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$getMask
	mov	r3, r0
	mvn	r5, r3
	bl	sim_node
	mov	r4, r0
	ldrh	r3, [fp, #-14]
	mov	r0, r3
	bl	BitVectorC$0$getIndex
	mov	r3, r0
	mov	r0, r3
	mov	r1, r0
	ldr	r2, .L2808
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r1
	ldrb	r3, [r3]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	lsl	r3, r5, #24
	asr	r3, r3, #24
	and	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r1, r3, #255
	ldr	r2, .L2808
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	add	r3, r2, r3
	add	r3, r3, r0
	mov	r2, r1
	strb	r2, [r3]
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2809:
	.align	2
.L2808:
	.word	BitVectorC$0$m_bits
	.size	BitVectorC$0$BitVector$clear, .-BitVectorC$0$BitVector$clear
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvListPacket$end, %function
TlvPacketP$0$TlvListPacket$end:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	TlvPacketP$0$TlvList$end
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvListPacket$end, .-TlvPacketP$0$TlvListPacket$end
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiplePacket$list, %function
TlvPacketP$0$TlvMultiplePacket$list:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r2, r0
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	TlvPacketP$0$TlvMultiple$list
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiplePacket$list, .-TlvPacketP$0$TlvMultiplePacket$list
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvListPacket$next, %function
TlvPacketP$0$TlvListPacket$next:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	TlvPacketP$0$TlvList$next
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvListPacket$next, .-TlvPacketP$0$TlvListPacket$next
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiplePacket$length, %function
TlvPacketP$0$TlvMultiplePacket$length:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	TlvPacketP$0$TlvMultiple$length
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiplePacket$length, .-TlvPacketP$0$TlvMultiplePacket$length
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvMultiplePacket$value, %function
TlvPacketP$0$TlvMultiplePacket$value:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$payloadLength
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	TlvPacketP$0$SubPacket$getPayload
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	TlvPacketP$0$TlvMultiple$value
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TlvPacketP$0$TlvMultiplePacket$value, .-TlvPacketP$0$TlvMultiplePacket$value
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$RouteCache$checkRoute, %function
SimpleLinkCacheP$RouteCache$checkRoute:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Initial$get
	mov	r3, r0
	cmp	r3, #0
	bne	.L2825
	bl	SimpleLinkCacheP$SourceShortestPath$buildingTree
	mov	r3, r0
	cmp	r3, #0
	beq	.L2823
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Initial$set
	b	.L2820
.L2823:
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$SourceShortestPath$edgeCount
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2824
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Track$clear
.L2824:
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	ldrb	r1, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$routeUpdate
	b	.L2820
.L2825:
	nop
.L2820:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$RouteCache$checkRoute, .-SimpleLinkCacheP$RouteCache$checkRoute
	.section	.rodata
	.align	2
.LC325:
	.ascii	"DSR: Pkt %u: Already has route request or not enoug"
	.ascii	"h room!\012\000"
	.align	2
.LC326:
	.ascii	"DSR: Pkt %u: Can't find the route request option ju"
	.ascii	"st added!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$addRouteRequest, %function
DsrControlP$0$addRouteRequest:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	mov	r3, r0
	str	r1, [fp, #-28]
	strb	r3, [fp, #-21]
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-24]	@ movhi
	mov	r1, #1
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$RouteRequest$add
	mov	r3, r0
	cmp	r3, #0
	beq	.L2827
	ldr	r2, .L2830
	ldr	r1, .L2830+4
	mov	r0, #340
	bl	sim_log_error
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	mov	r3, #1
	b	.L2828
.L2827:
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$RouteRequest$value
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L2829
	ldr	r2, .L2830+8
	ldr	r1, .L2830+4
	ldr	r0, .L2830+12
	bl	sim_log_error
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	mov	r3, #1
	b	.L2828
.L2829:
	ldr	r4, [fp, #-16]
	bl	sim_node
	mov	r2, r0
	ldr	r3, .L2830+16
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	add	r1, r3, #1
	and	r0, r1, #255
	ldr	r1, .L2830+16
	strb	r0, [r1, r2]
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint8
	ldr	r1, .L2830+20
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$AMPacket$setDestination
	ldr	r0, [fp, #-28]
	bl	DsrControlP$0$Acks$noAck
	mov	r3, #0
.L2828:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2831:
	.align	2
.L2830:
	.word	.LC325
	.word	.LC6
	.word	.LC326
	.word	341
	.word	DsrControlP$0$nextIdent
	.word	65535
	.size	DsrControlP$0$addRouteRequest, .-DsrControlP$0$addRouteRequest
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TossimPacketModelC$PacketAcknowledgements$noAck, %function
TossimPacketModelC$PacketAcknowledgements$noAck:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	TossimPacketModelC$getMetadata
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	mov	r1, #0
	mov	r0, r3
	bl	__nesc_hton_uint8
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TossimPacketModelC$PacketAcknowledgements$noAck, .-TossimPacketModelC$PacketAcknowledgements$noAck
	.section	.rodata
	.align	2
.LC327:
	.ascii	"SP: Sending pkt from %u to %u\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Send$send, %function
SinglePacketP$Send$send:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r2, [fp, #-12]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-5]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-8]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-6]
	bl	SinglePacketP$AMPacket$address
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-8]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2836
	ldr	r1, .L2836+4
	ldr	r0, .L2836+8
	bl	sim_log_debug
	bl	SinglePacketP$AMPacket$address
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	SinglePacketP$SinglePacket$setSource
	ldrh	r3, [fp, #-8]
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	SinglePacketP$SinglePacket$setDestination
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-12]
	bl	SinglePacketP$Packet$setPayloadLength
	ldr	r0, [fp, #-12]
	bl	SinglePacketP$SubPacket$payloadLength
	mov	r3, r0
	ldrh	r1, [fp, #-8]
	ldrb	r0, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, [fp, #-12]
	bl	SinglePacketP$SubSend$send
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2837:
	.align	2
.L2836:
	.word	.LC327
	.word	.LC86
	.word	398
	.size	SinglePacketP$Send$send, .-SinglePacketP$Send$send
	.section	.rodata
	.align	2
.LC328:
	.ascii	"PE: Can't add send packet, length too long!\012\000"
	.align	2
.LC329:
	.ascii	"PE: Can't add send packet, pool is empty!\012\000"
	.align	2
.LC330:
	.ascii	"PE: Adding send packet at index %u\012\000"
	.align	2
.LC331:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Send$send, %function
PacketEngineP$Send$send:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	str	r2, [fp, #-36]
	mov	r2, r3
	mov	r3, r0
	strb	r3, [fp, #-29]
	mov	r3, r1	@ movhi
	strh	r3, [fp, #-32]	@ movhi
	mov	r3, r2
	strb	r3, [fp, #-30]
	ldr	r3, .L2846
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #40
	strb	r3, [fp, #-28]
	ldrb	r3, [fp, #-29]
	strb	r3, [fp, #-27]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2846+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2839
	mov	r3, #4
	b	.L2844
.L2839:
	bl	PacketEngineP$Packet$maxPayloadLength
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	cmp	r3, r2
	bls	.L2841
	ldr	r2, .L2846+8
	ldr	r1, .L2846+12
	mov	r0, #113
	bl	sim_log_error
	mov	r3, #2
	b	.L2844
.L2841:
	sub	r3, fp, #28
	mov	r0, r3
	bl	PacketEngineP$SendQueue$insert
	str	r0, [fp, #-24]
	bl	PacketEngineP$SendPool$empty
	mov	r3, r0
	cmp	r3, #0
	beq	.L2842
	ldr	r2, .L2846+16
	ldr	r1, .L2846+12
	mov	r0, #114
	bl	sim_log_error
	mov	r3, #5
	b	.L2844
.L2842:
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2846+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r2, .L2846+24
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r3, r1
	ldrb	r3, [r2, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #1
	beq	.L2843
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2846+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2846+28
	ldr	r1, .L2846+12
	mov	r0, #115
	bl	sim_log_error
	mov	r3, #5
	b	.L2844
.L2843:
	bl	PacketEngineP$SendPool$get
	str	r0, [fp, #-20]
	mov	r2, #49
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-20]
	bl	memcpy
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2846+20
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	ldr	r3, [fp, #-24]
	strb	r2, [r3]
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$Packet$setPayloadLength
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$setIds
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2846+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldr	r2, .L2846+32
	ldr	r1, .L2846+12
	mov	r0, #116
	bl	sim_log_debug
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2846+20
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, .L2846+24
	mov	r3, r4
	lsl	r3, r3, #2
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r2, r3, r2
	ldrb	r3, [r1, r2, lsl #3]
	bic	r3, r3, #32
	strb	r3, [r1, r2, lsl #3]
	ldr	r0, [fp, #-20]
	bl	PacketEngineP$addPacket
	mov	r3, #0
.L2844:
	ldr	r2, .L2846
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L2845
	bl	__stack_chk_fail
.L2845:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2847:
	.align	2
.L2846:
	.word	.LC331
	.word	PacketEngineP$running
	.word	.LC328
	.word	.LC9
	.word	.LC329
	.word	PacketEngineP$nextFreePkt
	.word	PacketEngineP$msgBuffer
	.word	.LC229
	.word	.LC330
	.size	PacketEngineP$Send$send, .-PacketEngineP$Send$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$setIds, %function
PacketEngineP$setIds:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$PacketEngineClient$upperType
	mov	r3, r0
	cmp	r3, #254
	bne	.L2849
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$lid
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$PacketEngineClient$defaultLowerType
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$setLid
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$setUid
	b	.L2851
.L2849:
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$PacketEngineClient$defaultLowerType
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$setLid
	ldrb	r3, [fp, #-17]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$PacketEngineClient$upperType
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	PacketEngineP$setUid
.L2851:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$setIds, .-PacketEngineP$setIds
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$setUid, %function
PacketEngineP$setUid:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	mov	r3, r1
	strb	r3, [fp, #-9]
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, #1
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	PacketEngineP$SubPacket$getPayload
	mov	r2, r0
	ldrb	r3, [fp, #-9]
	strb	r3, [r2]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$setUid, .-PacketEngineP$setUid
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$Packet$payloadLength, %function
PacketEngineP$Packet$payloadLength:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$lid
	mov	r3, r0
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	PacketEngineP$SubPacket$payloadLength
	mov	r3, r0
	sub	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$Packet$payloadLength, .-PacketEngineP$Packet$payloadLength
	.section	.rodata
	.align	2
.LC332:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TlvPacketP$0$TlvSinglePacket$remove, %function
TlvPacketP$0$TlvSinglePacket$remove:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	str	r1, [fp, #-28]
	strb	r3, [fp, #-21]
	ldr	r3, .L2858
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #14
	mov	r1, r3
	ldr	r0, [fp, #-28]
	bl	TlvPacketP$0$preLengthChange
	str	r0, [fp, #-12]
	ldrb	r2, [fp, #-14]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	TlvPacketP$0$TlvSingle$remove
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-28]
	bl	TlvPacketP$0$postLengthChange
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L2858
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L2857
	bl	__stack_chk_fail
.L2857:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2859:
	.align	2
.L2858:
	.word	.LC332
	.size	TlvPacketP$0$TlvSinglePacket$remove, .-TlvPacketP$0$TlvSinglePacket$remove
	.section	.rodata
	.align	2
.LC333:
	.ascii	"DSR: Pkt %u: DSR receive/snoop packet added!\012\000"
	.align	2
.LC334:
	.ascii	"DSR: Pkt %u: Found route request option from %u to "
	.ascii	"%u\012\000"
	.align	2
.LC335:
	.ascii	"DSR: Pkt %u: Route request reached target node\012\000"
	.align	2
.LC336:
	.ascii	"DSR: Pkt %u: Address already in route request to %u"
	.ascii	", dropping!\012\000"
	.align	2
.LC337:
	.ascii	"DSR: Pkt %u: Route request to %u (ID %hhu) found in"
	.ascii	" cache, dropping!\012\000"
	.align	2
.LC338:
	.ascii	"DSR: Pkt %u: Route request to %u (ID %hhu) is new\012"
	.ascii	"\000"
	.align	2
.LC339:
	.ascii	"DSR: Pkt %u: Not enough room to extend route reques"
	.ascii	"t, dropping!\012\000"
	.align	2
.LC340:
	.ascii	"DSR: Pkt %u: Sending route request to %u further\012"
	.ascii	"\000"
	.align	2
.LC341:
	.ascii	"DSR: Pkt %u: Found route error option at %u from %u"
	.ascii	" to %u\012\000"
	.align	2
.LC342:
	.ascii	"DSR: Pkt %u: Found source route option from %u to %"
	.ascii	"u\012\000"
	.align	2
.LC343:
	.ascii	"DSR: Pkt %u: Found route reply option from %u to %u"
	.ascii	"\012\000"
	.align	2
.LC344:
	.ascii	"DSR: Pkt %u: Too many segments left (%u > %u), drop"
	.ascii	"ping!\012\000"
	.align	2
.LC345:
	.ascii	"DSR: Pkt %u: No segments left, removing source rout"
	.ascii	"e\012\000"
	.align	2
.LC346:
	.ascii	"DSR: Pkt %u: Pkt that originated route request to %"
	.ascii	"u no longer here\012\000"
	.align	2
.LC347:
	.ascii	"DSR: Pkt %u: Pkt %u received successfully, dropping"
	.ascii	"\012\000"
	.align	2
.LC348:
	.ascii	"DSR: Pkt %u: Destination is also intermediate node,"
	.ascii	" dropping!\012\000"
	.align	2
.LC349:
	.ascii	"DSR: Pkt %u: Passing to upper layer if not already "
	.ascii	"sent\012\000"
	.align	2
.LC350:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$DsrPacketEngine$receiveAdded, %function
DsrControlP$0$DsrPacketEngine$receiveAdded:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #88
	mov	r3, r0
	str	r1, [fp, #-84]
	strb	r3, [fp, #-77]
	ldr	r3, .L2891
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$SinglePacket$source
	mov	r3, r0
	strh	r3, [fp, #-60]	@ movhi
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	strh	r3, [fp, #-58]	@ movhi
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	ldr	r2, .L2891+4
	ldr	r1, .L2891+8
	mov	r0, #268
	bl	sim_log_debug
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteRequest$length
	mov	r3, r0
	strb	r3, [fp, #-70]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2861
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteRequest$value
	str	r0, [fp, #-56]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	sub	r3, r3, #1
	lsr	r3, r3, #1
	strb	r3, [fp, #-69]
	ldrb	r1, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-60]
	ldrh	r2, [fp, #-58]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L2891+12
	ldr	r1, .L2891+8
	ldr	r0, .L2891+16
	bl	sim_log_debug
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$SinglePacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	beq	.L2862
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	ldr	r2, .L2891+20
	ldr	r1, .L2891+8
	ldr	r0, .L2891+24
	bl	sim_log_debug
	ldr	r3, [fp, #-56]
	add	r4, r3, #1
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	ldrb	r2, [fp, #-69]	@ zero_extendqisi2
	ldrh	r0, [fp, #-60]
	mov	r1, r4
	bl	DsrControlP$0$addPath
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	DsrControlP$0$Compose$set
	bl	DsrControlP$0$composePkt$postTask
	b	.L2860
.L2862:
	sub	r3, fp, #32
	mov	r2, #0
	str	r2, [r3]
	str	r2, [r3, #4]
	str	r2, [r3, #8]
	str	r2, [r3, #12]
	ldrh	r3, [fp, #-60]	@ movhi
	strh	r3, [fp, #-32]	@ movhi
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-60]
	cmp	r3, r2
	bne	.L2864
	ldrb	r2, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-58]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2891+28
	ldr	r1, .L2891+8
	ldr	r0, .L2891+32
	bl	sim_log_debug
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2864:
	mov	r3, #0
	strb	r3, [fp, #-72]
	b	.L2866
.L2868:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r4, r3
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	cmp	r4, r3
	bne	.L2867
	ldrb	r2, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-58]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2891+28
	ldr	r1, .L2891+8
	mov	r0, #272
	bl	sim_log_debug
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2867:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-72]
.L2866:
	ldrb	r2, [fp, #-72]	@ zero_extendqisi2
	ldrb	r3, [fp, #-69]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2868
	ldr	r3, [fp, #-56]
	add	r4, r3, #1
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	ldrb	r2, [fp, #-69]	@ zero_extendqisi2
	ldrh	r0, [fp, #-60]
	mov	r1, r4
	bl	DsrControlP$0$addPath
	mov	r3, #0
	strb	r3, [fp, #-72]
	b	.L2869
.L2870:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	add	r3, r3, #4
	lsl	r3, r3, #1
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #20
	mvn	r2, #0
	strh	r2, [r3]	@ movhi
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-72]
.L2869:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	cmp	r3, #3
	bls	.L2870
	sub	r3, fp, #32
	mov	r0, r3
	bl	DsrControlP$0$RouteRequestInCache$insert
	str	r0, [fp, #-52]
	mov	r3, #0
	strb	r3, [fp, #-72]
	b	.L2871
.L2873:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	ldrb	r4, [r3, #3]	@ zero_extendqisi2
	ldr	r3, [fp, #-56]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	cmp	r4, r3
	bne	.L2872
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	ldr	r2, [fp, #-52]
	add	r3, r3, #4
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	ldrh	r2, [fp, #-58]
	cmp	r2, r3
	bne	.L2872
	ldrb	r5, [fp, #-77]	@ zero_extendqisi2
	ldrh	r4, [fp, #-58]
	ldr	r3, [fp, #-56]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	str	r3, [sp, #4]
	str	r4, [sp]
	mov	r3, r5
	ldr	r2, .L2891+36
	ldr	r1, .L2891+8
	ldr	r0, .L2891+40
	bl	sim_log_debug
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2872:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-72]
.L2871:
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	cmp	r3, #3
	bls	.L2873
	ldrb	r5, [fp, #-77]	@ zero_extendqisi2
	ldrh	r4, [fp, #-58]
	ldr	r3, [fp, #-56]
	mov	r0, r3
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	str	r3, [sp, #4]
	str	r4, [sp]
	mov	r3, r5
	ldr	r2, .L2891+44
	ldr	r1, .L2891+8
	ldr	r0, .L2891+48
	bl	sim_log_debug
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-52]
	ldrb	r3, [r3, #2]	@ zero_extendqisi2
	mov	r4, r3
	mov	r0, r2
	bl	__nesc_ntoh_uint8
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-52]
	add	r3, r3, r4
	strb	r2, [r3, #3]
	ldr	r3, [fp, #-52]
	ldrb	r3, [r3, #2]	@ zero_extendqisi2
	ldr	r2, [fp, #-52]
	add	r3, r3, #4
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r2, [fp, #-58]	@ movhi
	strh	r2, [r3]	@ movhi
	ldr	r3, [fp, #-52]
	ldrb	r3, [r3, #2]	@ zero_extendqisi2
	add	r3, r3, #1
	and	r2, r3, #255
	ldr	r3, [fp, #-52]
	strb	r2, [r3, #2]
	ldr	r3, [fp, #-52]
	ldrb	r3, [r3, #2]	@ zero_extendqisi2
	and	r3, r3, #3
	and	r2, r3, #255
	ldr	r3, [fp, #-52]
	strb	r2, [r3, #2]
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteRequest$length
	mov	r3, r0
	add	r3, r3, #2
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteRequest$setLength
	mov	r3, r0
	cmp	r3, #0
	beq	.L2874
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	ldr	r2, .L2891+52
	ldr	r1, .L2891+8
	ldr	r0, .L2891+56
	bl	sim_log_error
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2874:
	ldrb	r3, [fp, #-69]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	add	r4, r3, #1
	bl	DsrControlP$0$AMPacket$address
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__nesc_hton_uint16
	ldrb	r2, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-58]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2891+60
	ldr	r1, .L2891+8
	mov	r0, #276
	bl	sim_log_debug
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$Acks$noAck
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$send
.L2861:
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteError$list
	mov	r3, r0
	strb	r3, [fp, #-73]
	b	.L2875
.L2877:
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteError$length
	mov	r3, r0
	strb	r3, [fp, #-70]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2876
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteError$value
	str	r0, [fp, #-40]
	ldrb	r0, [fp, #-77]	@ zero_extendqisi2
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	ldrh	r2, [fp, #-60]
	ldrh	r1, [fp, #-58]
	str	r1, [sp, #8]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r0
	ldr	r2, .L2891+64
	ldr	r1, .L2891+8
	ldr	r0, .L2891+68
	bl	sim_log_debug
	mov	r2, #4
	mov	r1, #0
	ldr	r0, [fp, #-40]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #1
	bne	.L2876
	ldr	r3, [fp, #-40]
	add	r3, r3, #5
	str	r3, [fp, #-36]
	ldrb	r4, [fp, #-77]	@ zero_extendqisi2
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r5, r3
	ldr	r3, [fp, #-36]
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	str	r3, [sp, #4]
	str	r5, [sp]
	mov	r3, r4
	ldr	r2, .L2891+72
	ldr	r1, .L2891+8
	ldr	r0, .L2891+76
	bl	sim_log_debug
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	and	r4, r3, #255
	ldr	r3, [fp, #-36]
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	and	r3, r3, #255
	mov	r2, #1
	mov	r1, r3
	mov	r0, r4
	bl	DsrControlP$0$RouteCache$removeLink
.L2876:
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteErrorList$next
	mov	r3, r0
	strb	r3, [fp, #-73]
.L2875:
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$RouteErrorList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2877
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$SourceRoute$length
	mov	r3, r0
	strb	r3, [fp, #-70]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2878
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$SourceRoute$value
	str	r0, [fp, #-48]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	sub	r3, r3, #1
	lsr	r3, r3, #1
	strb	r3, [fp, #-68]
	ldrh	r3, [fp, #-60]	@ movhi
	strh	r3, [fp, #-64]	@ movhi
	ldrh	r3, [fp, #-58]	@ movhi
	strh	r3, [fp, #-62]	@ movhi
	ldrb	r3, [fp, #-68]
	strb	r3, [fp, #-71]
	mov	r2, #1
	mov	r1, #0
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	bne	.L2879
	ldrb	r1, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-64]
	ldrh	r2, [fp, #-62]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L2891+80
	ldr	r1, .L2891+8
	ldr	r0, .L2891+84
	bl	sim_log_debug
	b	.L2880
.L2879:
	ldrb	r1, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-64]
	ldrh	r2, [fp, #-62]
	str	r2, [sp, #4]
	str	r3, [sp]
	mov	r3, r1
	ldr	r2, .L2891+88
	ldr	r1, .L2891+8
	mov	r0, #280
	bl	sim_log_debug
.L2880:
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-68]	@ zero_extendqisi2
	cmp	r3, r2
	bcs	.L2881
	ldrb	r4, [fp, #-77]	@ zero_extendqisi2
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-68]	@ zero_extendqisi2
	str	r3, [sp, #4]
	str	r2, [sp]
	mov	r3, r4
	ldr	r2, .L2891+92
	ldr	r1, .L2891+8
	ldr	r0, .L2891+96
	bl	sim_log_error
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2881:
	mov	r2, #3
	mov	r1, #1
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	beq	.L2882
	mvn	r3, #0
	strh	r3, [fp, #-64]	@ movhi
.L2882:
	mov	r2, #1
	mov	r1, #0
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	beq	.L2883
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	beq	.L2883
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-68]
	sub	r3, r3, r2
	and	r3, r3, #255
	add	r3, r3, #1
	strb	r3, [fp, #-71]
	mvn	r3, #0
	strh	r3, [fp, #-62]	@ movhi
.L2883:
	ldr	r3, [fp, #-48]
	add	r1, r3, #1
	ldrh	r3, [fp, #-62]
	ldrb	r2, [fp, #-71]	@ zero_extendqisi2
	ldrh	r0, [fp, #-64]
	bl	DsrControlP$0$addPath
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$AMPacket$isForMe
	mov	r3, r0
	cmp	r3, #0
	beq	.L2878
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	bne	.L2884
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	ldr	r2, .L2891+100
	ldr	r1, .L2891+8
	ldr	r0, .L2891+104
	bl	sim_log_debug
	mov	r2, #1
	mov	r1, #0
	ldr	r0, [fp, #-48]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	cmp	r3, #0
	beq	.L2885
	ldrh	r3, [fp, #-60]
	mov	r0, r3
	bl	DsrControlP$0$findSinglePktTo
	mov	r3, r0
	strb	r3, [fp, #-65]
	ldrb	r3, [fp, #-65]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketWaitList$end
	mov	r3, r0
	cmp	r3, #0
	beq	.L2886
	ldrb	r2, [fp, #-77]	@ zero_extendqisi2
	ldrh	r3, [fp, #-60]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2891+108
	ldr	r1, .L2891+8
	ldr	r0, .L2891+112
	bl	sim_log_debug
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2886:
	ldrb	r2, [fp, #-77]	@ zero_extendqisi2
	ldrb	r3, [fp, #-65]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2891+116
	ldr	r1, .L2891+8
	mov	r0, #284
	bl	sim_log_debug
	ldrb	r3, [fp, #-65]	@ zero_extendqisi2
	mov	r1, #0
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$upperSendDone
	ldrb	r3, [fp, #-65]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$drop
.L2885:
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$SourceRoute$remove
	b	.L2878
.L2884:
	ldr	r3, [fp, #-48]
	str	r3, [fp, #-44]
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-44]
	bl	__nesc_ntohbf_uint8
	mov	r3, r0
	sub	r3, r3, #1
	strb	r3, [fp, #-67]
	ldrb	r3, [fp, #-67]	@ zero_extendqisi2
	mov	r2, #4
	mov	r1, #4
	ldr	r0, [fp, #-44]
	bl	__nesc_htonbf_uint8
	ldrb	r2, [fp, #-68]
	ldrb	r3, [fp, #-67]
	sub	r3, r2, r3
	strb	r3, [fp, #-66]
	ldrb	r2, [fp, #-66]	@ zero_extendqisi2
	ldrb	r3, [fp, #-68]	@ zero_extendqisi2
	cmp	r2, r3
	bcs	.L2887
	ldrb	r3, [fp, #-66]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-58]
	cmp	r3, r2
	bne	.L2888
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	ldr	r2, .L2891+120
	ldr	r1, .L2891+8
	ldr	r0, .L2891+124
	bl	sim_log_error
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$drop
	b	.L2860
.L2888:
	ldrb	r3, [fp, #-66]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	add	r3, r3, #1
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$AMPacket$setDestination
	b	.L2889
.L2887:
	ldrh	r3, [fp, #-58]
	mov	r1, r3
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$AMPacket$setDestination
.L2889:
	ldrb	r4, [fp, #-77]	@ zero_extendqisi2
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$AMPacket$destination
	mov	r3, r0
	mov	r2, r3
	ldrh	r3, [fp, #-58]
	str	r3, [sp, #4]
	str	r2, [sp]
	mov	r3, r4
	ldr	r2, .L2891+128
	ldr	r1, .L2891+8
	ldr	r0, .L2891+132
	bl	sim_log_debug
	ldr	r0, [fp, #-84]
	bl	DsrControlP$0$Acks$requestAck
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-77]	@ zero_extendqisi2
	ldr	r0, .L2891+136
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r0, r3
	add	r3, r3, r2
	mov	r2, #2
	strb	r2, [r3]
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$send
	b	.L2860
.L2878:
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	ldr	r2, .L2891+140
	ldr	r1, .L2891+8
	ldr	r0, .L2891+144
	bl	sim_log_debug
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$DsrPacketEngine$receive
.L2860:
	ldr	r3, .L2891
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2890
	bl	__stack_chk_fail
.L2890:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2892:
	.align	2
.L2891:
	.word	.LC350
	.word	.LC333
	.word	.LC6
	.word	.LC334
	.word	269
	.word	.LC335
	.word	270
	.word	.LC336
	.word	271
	.word	.LC337
	.word	273
	.word	.LC338
	.word	274
	.word	.LC339
	.word	275
	.word	.LC340
	.word	.LC341
	.word	277
	.word	.LC253
	.word	278
	.word	.LC342
	.word	279
	.word	.LC343
	.word	.LC344
	.word	281
	.word	.LC345
	.word	282
	.word	.LC346
	.word	283
	.word	.LC347
	.word	.LC348
	.word	285
	.word	.LC300
	.word	286
	.word	DsrControlP$0$retriesLeft
	.word	.LC349
	.word	287
	.size	DsrControlP$0$DsrPacketEngine$receiveAdded, .-DsrControlP$0$DsrPacketEngine$receiveAdded
	.section	.rodata
	.align	2
.LC351:
	.ascii	"DSR: Adding path with %u links\012\000"
	.align	2
.LC352:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$addPath, %function
DsrControlP$0$addPath:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #36
	str	r1, [fp, #-36]
	mov	r1, r2
	mov	r2, r3
	mov	r3, r0	@ movhi
	strh	r3, [fp, #-30]	@ movhi
	mov	r3, r1
	strb	r3, [fp, #-31]
	mov	r3, r2	@ movhi
	strh	r3, [fp, #-38]	@ movhi
	ldr	r3, .L2899
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldrb	r3, [fp, #-31]
	strb	r3, [fp, #-26]
	mov	r3, #0
	strb	r3, [fp, #-27]
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	add	ip, r3, #2
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #3
	orr	r3, r3, r0, lsr #29
	lsl	r2, r0, #3
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #3
	orr	r3, r3, r0, lsr #29
	lsl	r2, r0, #3
	mov	r3, ip
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #0
	str	r3, [fp, #-20]
	ldrh	r3, [fp, #-30]
	ldr	r2, .L2899+4
	cmp	r3, r2
	beq	.L2894
	ldrh	r3, [fp, #-30]	@ movhi
	and	r2, r3, #255
	ldr	r3, [fp, #-20]
	strb	r2, [r3]
	mov	r3, #1
	strb	r3, [fp, #-27]
	ldrb	r3, [fp, #-26]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-26]
.L2894:
	ldrh	r3, [fp, #-38]
	ldr	r2, .L2899+4
	cmp	r3, r2
	beq	.L2895
	ldrb	r3, [fp, #-26]	@ zero_extendqisi2
	add	r2, r3, #1
	strb	r2, [fp, #-26]
	mov	r2, r3
	ldrh	r3, [fp, #-38]	@ movhi
	and	r1, r3, #255
	ldr	r3, [fp, #-20]
	strb	r1, [r3, r2]
.L2895:
	mov	r3, #0
	strb	r3, [fp, #-25]
	b	.L2896
.L2897:
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	lsl	r3, r3, #1
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	mov	r0, r3
	bl	__nesc_ntoh_uint16
	mov	r3, r0
	mov	r1, r3
	ldrb	r2, [fp, #-25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	add	r3, r2, r3
	and	r1, r1, #255
	ldr	r2, [fp, #-20]
	strb	r1, [r2, r3]
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-25]
.L2896:
	ldrb	r2, [fp, #-25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	cmp	r2, r3
	bcc	.L2897
	ldrb	r3, [fp, #-26]	@ zero_extendqisi2
	sub	r3, r3, #1
	ldr	r2, .L2899+8
	ldr	r1, .L2899+12
	ldr	r0, .L2899+16
	bl	sim_log_debug
	ldrb	r3, [fp, #-26]
	sub	r3, r3, #1
	and	r3, r3, #255
	mov	r2, #1
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$RouteCache$addPath
	mov	sp, r4
	nop
	ldr	r3, .L2899
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L2898
	bl	__stack_chk_fail
.L2898:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2900:
	.align	2
.L2899:
	.word	.LC352
	.word	65535
	.word	.LC351
	.word	.LC6
	.word	339
	.size	DsrControlP$0$addPath, .-DsrControlP$0$addPath
	.section	.rodata
	.align	2
.LC353:
	.ascii	"GS: Inserting edge %u -> %u\012\000"
	.align	2
.LC354:
	.ascii	"GS: Can't hold any more edges!\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	GraphSparseP$0$Graph$insert, %function
GraphSparseP$0$Graph$insert:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #24
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-21]
	mov	r3, r2
	strb	r3, [fp, #-22]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	cmp	r3, #19
	bhi	.L2902
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r3, #19
	bls	.L2903
.L2902:
	ldr	r2, .L2908
	ldr	r1, .L2908+4
	ldr	r0, .L2908+8
	bl	sim_log_error
	mov	r3, #250
	b	.L2904
.L2903:
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$edge
	mov	r3, r0
	cmp	r3, #250
	beq	.L2905
	mov	r3, #250
	b	.L2904
.L2905:
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2908+12
	ldr	r1, .L2908+4
	ldr	r0, .L2908+16
	bl	sim_log_debug
	bl	GraphSparseP$0$IndexedAlloc$alloc
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L2906
	ldr	r2, .L2908+20
	ldr	r1, .L2908+4
	mov	r0, #348
	bl	sim_log_error
	mov	r3, #250
	b	.L2904
.L2906:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2908+24
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r3, [r3]	@ zero_extendqisi2
	cmp	r3, #250
	bne	.L2907
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2908+28
	ldrb	r2, [r2, r3]	@ zero_extendqisi2
	add	r2, r2, #1
	and	r1, r2, #255
	ldr	r2, .L2908+28
	strb	r1, [r2, r3]
.L2907:
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-21]	@ zero_extendqisi2
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2908+24
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r4
	ldrb	ip, [r3]	@ zero_extendqisi2
	ldr	r0, .L2908+32
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	lsl	r3, r3, #1
	add	r3, r0, r3
	mov	r2, ip
	strb	r2, [r3, #1]
	bl	sim_node
	mov	r2, r0
	ldrb	r1, [fp, #-13]	@ zero_extendqisi2
	ldr	r0, .L2908+32
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r1
	ldrb	r2, [fp, #-22]
	strb	r2, [r0, r3, lsl #1]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldr	r0, .L2908+24
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r0, r3
	add	r3, r3, r2
	ldrb	r2, [fp, #-13]
	strb	r2, [r3]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	GraphSparseP$0$Graph$inserted
	bl	GraphSparseP$0$printGraph
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
.L2904:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L2909:
	.align	2
.L2908:
	.word	.LC257
	.word	.LC256
	.word	346
	.word	.LC353
	.word	347
	.word	.LC354
	.word	GraphSparseP$0$v
	.word	GraphSparseP$0$vSize
	.word	GraphSparseP$0$e
	.size	GraphSparseP$0$Graph$insert, .-GraphSparseP$0$Graph$insert
	.section	.rodata
	.align	2
.LC355:
	.ascii	"PE: Passing pkt %u to upper layer\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$receive, %function
PacketEngineP$PacketEngine$receive:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #28
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-37]
	mov	r3, r2
	strb	r3, [fp, #-38]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldr	r0, .L2916
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	str	r3, [fp, #-28]
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2911
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldr	r0, .L2916
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	ldrb	r3, [r0, r3, lsl #3]
	and	r3, r3, #31
	and	r3, r3, #255
	cmp	r3, #4
	bne	.L2911
	ldr	r0, [fp, #-28]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2912
.L2911:
	mov	r3, #6
	b	.L2913
.L2912:
	ldr	r0, [fp, #-28]
	bl	PacketEngineP$uid
	mov	r3, r0
	cmp	r3, #0
	beq	.L2914
	ldr	r0, [fp, #-28]
	bl	PacketEngineP$Packet$payloadLength
	mov	r3, r0
	strb	r3, [fp, #-29]
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-28]
	bl	PacketEngineP$Packet$getPayload
	str	r0, [fp, #-24]
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	ldr	r2, .L2916+4
	ldr	r1, .L2916+8
	mov	r0, #142
	bl	sim_log_debug
	ldr	r0, [fp, #-28]
	bl	PacketEngineP$uid
	mov	r3, r0
	mov	r6, r3
	bl	sim_node
	mov	r5, r0
	ldrb	r4, [fp, #-38]	@ zero_extendqisi2
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	ldr	r2, [fp, #-24]
	ldr	r1, [fp, #-28]
	mov	r0, r6
	bl	PacketEngineP$Receive$receive
	mov	r2, r0
	ldr	r1, .L2916
	mov	r3, r5
	lsl	r3, r3, #2
	add	r3, r3, r5
	lsl	r3, r3, #3
	add	r3, r3, r4
	lsl	r3, r3, #3
	add	r3, r1, r3
	str	r2, [r3, #4]
.L2914:
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	mov	r0, r3
	bl	PacketEngineP$removePacket
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2916+12
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	cmp	r2, r3
	bne	.L2915
	bl	PacketEngineP$moveWaitIndex
.L2915:
	mov	r3, #0
.L2913:
	mov	r0, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L2917:
	.align	2
.L2916:
	.word	PacketEngineP$msgBuffer
	.word	.LC355
	.word	.LC9
	.word	PacketEngineP$nextWaitPkt
	.size	PacketEngineP$PacketEngine$receive, .-PacketEngineP$PacketEngine$receive
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$uid, %function
PacketEngineP$uid:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, #1
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	PacketEngineP$SubPacket$getPayload
	mov	r3, r0
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	PacketEngineP$uid, .-PacketEngineP$uid
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SinglePacketP$Packet$getPayload, %function
SinglePacketP$Packet$getPayload:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, r1
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-17]
	add	r3, r3, #4
	and	r3, r3, #255
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	SinglePacketP$SubPacket$getPayload
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L2921
	ldr	r3, [fp, #-8]
	add	r3, r3, #4
	str	r3, [fp, #-8]
.L2921:
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SinglePacketP$Packet$getPayload, .-SinglePacketP$Packet$getPayload
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$StdControl$start, %function
PacketEngineP$StdControl$start:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2927
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2927+4
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2924
	bl	PacketEngineP$msgAdded$postTask
.L2924:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2927+8
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #39
	bhi	.L2925
	bl	PacketEngineP$msgAction$postTask
.L2925:
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L2928:
	.align	2
.L2927:
	.word	PacketEngineP$running
	.word	PacketEngineP$nextAddedPkt
	.word	PacketEngineP$nextActionPkt
	.size	PacketEngineP$StdControl$start, .-PacketEngineP$StdControl$start
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	TestDsrP$Timer$startOneShot, %function
TestDsrP$Timer$startOneShot:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r1, [fp, #-8]
	mov	r0, #2
	bl	VirtualizeTimerC$0$Timer$startOneShot
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	TestDsrP$Timer$startOneShot, .-TestDsrP$Timer$startOneShot
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	VirtualizeTimerC$0$fireTimers, %function
VirtualizeTimerC$0$fireTimers:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	mov	r3, #0
	strb	r3, [fp, #-13]
	b	.L2931
.L2935:
	bl	sim_node
	mov	r1, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r2, r3
	lsl	r2, r2, #1
	add	r2, r2, r3
	lsl	r3, r2, #2
	mov	r2, r3
	mov	r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r1
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r2, .L2936
	add	r3, r3, r2
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #8]	@ zero_extendqisi2
	and	r3, r3, #2
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L2932
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	ldr	r2, [fp, #-24]
	sub	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	bcc	.L2932
	ldr	r3, [fp, #-12]
	ldrb	r3, [r3, #8]	@ zero_extendqisi2
	and	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L2933
	ldr	r2, [fp, #-12]
	ldrb	r3, [r2, #8]
	bic	r3, r3, #2
	strb	r3, [r2, #8]
	b	.L2934
.L2933:
	ldr	r3, [fp, #-12]
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3, #4]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	str	r2, [r3]
.L2934:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	VirtualizeTimerC$0$Timer$fired
.L2932:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-13]
.L2931:
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #2
	bls	.L2935
	bl	VirtualizeTimerC$0$updateFromTimer$postTask
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2937:
	.align	2
.L2936:
	.word	VirtualizeTimerC$0$m_timers
	.size	VirtualizeTimerC$0$fireTimers, .-VirtualizeTimerC$0$fireTimers
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$Alarm$startAt, %function
Atm128AlarmAsyncP$0$Alarm$startAt:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-5]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2939
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2939+4
	ldr	r3, [fp, #-16]
	str	r3, [r1, r2, lsl #2]
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2939+8
	ldr	r3, [fp, #-20]
	str	r3, [r1, r2, lsl #2]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	bl	Atm128AlarmAsyncP$0$setInterrupt
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2940:
	.align	2
.L2939:
	.word	Atm128AlarmAsyncP$0$set
	.word	Atm128AlarmAsyncP$0$t0
	.word	Atm128AlarmAsyncP$0$dt
	.size	Atm128AlarmAsyncP$0$Alarm$startAt, .-Atm128AlarmAsyncP$0$Alarm$startAt
	.section	.rodata
	.align	2
.LC356:
	.ascii	"Atm128AlarmAsyncP: TIFR is %hhx\012\000"
	.align	2
.LC357:
	.ascii	"Atm128AlarmAsyncP\000"
	.align	2
.LC358:
	.ascii	"Atm128AlarmAsyncP: under min: %hhu.\012\000"
	.align	2
.LC359:
	.ascii	"Atm128AlarmAsyncP: OCF set.\012\000"
	.align	2
.LC360:
	.ascii	"Atm128AlarmAsyncP: no alarm set, set at max.\012\000"
	.align	2
.LC361:
	.ascii	"Atm128AlarmAsyncP: now-t0 = %llu, dt = %llu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	Atm128AlarmAsyncP$0$setInterrupt, %function
Atm128AlarmAsyncP$0$setInterrupt:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	mov	r3, #0
	strb	r3, [fp, #-25]
	bl	__nesc_atomic_start
	mov	r3, r0
	strb	r3, [fp, #-23]
	bl	Atm128AlarmAsyncP$0$Compare$get
	mov	r3, r0
	mov	r4, r3
	bl	Atm128AlarmAsyncP$0$Timer$get
	mov	r3, r0
	sub	r3, r4, r3
	and	r3, r3, #255
	add	r3, r3, #1
	strb	r3, [fp, #-22]
	bl	Atm128AlarmAsyncP$0$TimerCtrl$getInterruptFlag
	mov	r3, r0
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	ldr	r2, .L2953
	ldr	r1, .L2953+4
	mov	r0, #185
	bl	sim_log_debug
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2942
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L2943
.L2942:
	ldrb	r3, [fp, #-21]	@ zero_extendqisi2
	and	r3, r3, #2
	cmp	r3, #0
	beq	.L2944
.L2943:
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	cmp	r3, #1
	bhi	.L2945
	ldrb	r3, [fp, #-22]	@ zero_extendqisi2
	ldr	r2, .L2953+8
	ldr	r1, .L2953+4
	mov	r0, #186
	bl	sim_log_debug
	b	.L2946
.L2945:
	ldr	r2, .L2953+12
	ldr	r1, .L2953+4
	mov	r0, #187
	bl	sim_log_debug
.L2946:
	ldrb	r3, [fp, #-23]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	b	.L2941
.L2944:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+16
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L2948
	mvn	r3, #25
	strb	r3, [fp, #-24]
	ldr	r2, .L2953+20
	ldr	r1, .L2953+4
	mov	r0, #188
	bl	sim_log_debug
	b	.L2949
.L2948:
	bl	Atm128AlarmAsyncP$0$Counter$get
	str	r0, [fp, #-20]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+24
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-20]
	sub	r4, r2, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+28
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [sp]
	mov	r3, r4
	ldr	r2, .L2953+32
	ldr	r1, .L2953+4
	mov	r0, #189
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+24
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-20]
	sub	r4, r2, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+28
	ldr	r3, [r2, r3, lsl #2]
	cmp	r4, r3
	bcc	.L2950
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+16
	mov	r1, #0
	strb	r1, [r2, r3]
	mov	r3, #1
	strb	r3, [fp, #-25]
	mvn	r3, #25
	strb	r3, [fp, #-24]
	b	.L2949
.L2950:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+24
	ldr	r4, [r2, r3, lsl #2]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+28
	ldr	r3, [r2, r3, lsl #2]
	add	r4, r4, r3
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2953+36
	ldr	r3, [r2, r3, lsl #2]
	sub	r3, r4, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #230
	bls	.L2951
	mvn	r3, #25
	strb	r3, [fp, #-24]
	b	.L2949
.L2951:
	ldr	r3, [fp, #-16]
	and	r3, r3, #255
	cmp	r3, #1
	bhi	.L2952
	mov	r3, #2
	strb	r3, [fp, #-24]
	b	.L2949
.L2952:
	ldr	r3, [fp, #-16]
	strb	r3, [fp, #-24]
.L2949:
	ldrb	r3, [fp, #-24]	@ zero_extendqisi2
	sub	r3, r3, #1
	strb	r3, [fp, #-24]
	ldrb	r3, [fp, #-24]	@ zero_extendqisi2
	mov	r0, r3
	bl	Atm128AlarmAsyncP$0$setOcr0
	ldrb	r3, [fp, #-23]	@ zero_extendqisi2
	mov	r0, r3
	bl	__nesc_atomic_end
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2941
	bl	Atm128AlarmAsyncP$0$Alarm$fired
.L2941:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L2954:
	.align	2
.L2953:
	.word	.LC356
	.word	.LC357
	.word	.LC358
	.word	.LC359
	.word	Atm128AlarmAsyncP$0$set
	.word	.LC360
	.word	Atm128AlarmAsyncP$0$t0
	.word	Atm128AlarmAsyncP$0$dt
	.word	.LC361
	.word	Atm128AlarmAsyncP$0$base
	.size	Atm128AlarmAsyncP$0$setInterrupt, .-Atm128AlarmAsyncP$0$setInterrupt
	.section	.rodata
	.align	2
.LC362:
	.ascii	"HplAtm128Timer0AsyncP: Setting compare: %hhu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$Compare$set, %function
HplAtm128Timer0AsyncP$Compare$set:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	ldr	r2, .L2960
	ldr	r1, .L2960+4
	mov	r0, #206
	bl	sim_log_debug
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2956
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #253
	bls	.L2957
.L2956:
	mov	r3, #1
	strb	r3, [fp, #-5]
.L2957:
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #49
	ldr	r2, .L2960+8
	add	r3, r3, r2
	ldrb	r3, [r3]
	and	r3, r3, #255
	ldrb	r2, [fp, #-5]	@ zero_extendqisi2
	cmp	r2, r3
	beq	.L2959
	bl	sim_node
	mov	r2, r0
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #5
	add	r3, r3, #49
	ldr	r2, .L2960+8
	add	r3, r3, r2
	ldrb	r2, [fp, #-5]
	strb	r2, [r3]
	bl	HplAtm128Timer0AsyncP$schedule_new_compare
.L2959:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2961:
	.align	2
.L2960:
	.word	.LC362
	.word	.LC150
	.word	atm128RegFile
	.size	HplAtm128Timer0AsyncP$Compare$set, .-HplAtm128Timer0AsyncP$Compare$set
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$schedule_new_compare, %function
HplAtm128Timer0AsyncP$schedule_new_compare:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2966
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L2963
	bl	HplAtm128Timer0AsyncP$cancel_compare
.L2963:
	bl	HplAtm128Timer0AsyncP$Timer0$getScale
	mov	r3, r0
	cmp	r3, #0
	beq	.L2965
	bl	HplAtm128Timer0AsyncP$allocate_compare
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	HplAtm128Timer0AsyncP$configure_compare
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2966
	ldr	r3, [fp, #-8]
	str	r3, [r1, r2, lsl #2]
	ldr	r0, [fp, #-8]
	bl	sim_queue_insert
.L2965:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2967:
	.align	2
.L2966:
	.word	HplAtm128Timer0AsyncP$compare
	.size	HplAtm128Timer0AsyncP$schedule_new_compare, .-HplAtm128Timer0AsyncP$schedule_new_compare
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_queue_allocate_event, %function
sim_queue_allocate_event:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #32
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-8]
	mov	r2, #32
	mov	r1, #0
	ldr	r0, [fp, #-8]
	bl	memset
	bl	sim_node
	mov	r2, r0
	ldr	r3, [fp, #-8]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_queue_allocate_event, .-sim_queue_allocate_event
	.align	2
	.global	INTERRUPT_16
	.syntax unified
	.arm
	.fpu softvfp
	.type	INTERRUPT_16, %function
INTERRUPT_16:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2971
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	HplAtm128Timer0AsyncP$Timer0$overflow
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2971
	mov	r1, #0
	strb	r1, [r2, r3]
	nop
	pop	{fp, pc}
.L2972:
	.align	2
.L2971:
	.word	HplAtm128Timer0AsyncP$inOverflow
	.size	INTERRUPT_16, .-INTERRUPT_16
	.section	.rodata
	.align	2
.LC363:
	.ascii	"Scheduling new overflow for %i at time %llu\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$configure_overflow, %function
HplAtm128Timer0AsyncP$configure_overflow:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #40
	str	r0, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	bl	HplAtm128Timer0AsyncP$Timer0$get
	mov	r3, r0
	strb	r3, [fp, #-38]
	mov	r3, #0
	strb	r3, [fp, #-37]
	ldrb	r2, [fp, #-37]
	ldrb	r3, [fp, #-38]
	sub	r3, r2, r3
	and	r3, r3, #255
	and	r2, r3, #255
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	orrs	r3, r2, r3
	bne	.L2974
	mov	r2, #256
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L2974:
	bl	HplAtm128Timer0AsyncP$shiftFromScale
	mov	r3, r0
	mov	r1, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	ip, r1, #32
	rsb	r0, r1, #32
	lsl	r5, r3, r1
	orr	r5, r5, r2, lsl ip
	orr	r5, r5, r2, lsr r0
	lsl	r4, r2, r1
	str	r4, [fp, #-36]
	str	r5, [fp, #-32]
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	HplAtm128Timer0AsyncP$clock_to_sim
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	bl	sim_time
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	adds	r8, r2, r0
	adc	r9, r3, r1
	str	r8, [fp, #-36]
	str	r9, [fp, #-32]
	bl	sim_time
	mov	r4, r0
	mov	r5, r1
	bl	HplAtm128Timer0AsyncP$last_zero
	mov	r2, r0
	mov	r3, r1
	subs	r1, r4, r2
	str	r1, [fp, #-60]
	sbc	r3, r5, r3
	str	r3, [fp, #-56]
	bl	HplAtm128Timer0AsyncP$shiftFromScale
	mov	r3, r0
	mov	r2, r3
	mov	r3, #1
	lsl	r3, r3, r2
	mov	r2, r3
	asr	r3, r2, #31
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	subs	r6, r2, r0
	sbc	r7, r3, r1
	str	r6, [fp, #-36]
	str	r7, [fp, #-32]
	bl	sim_node
	mov	r1, r0
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r3, r1
	ldr	r2, .L2975
	ldr	r1, .L2975+4
	mov	r0, #209
	bl	sim_log_debug
	ldr	r1, [fp, #-48]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L2976:
	.align	2
.L2975:
	.word	.LC363
	.word	.LC150
	.size	HplAtm128Timer0AsyncP$configure_overflow, .-HplAtm128Timer0AsyncP$configure_overflow
	.align	2
	.global	INTERRUPT_15
	.syntax unified
	.arm
	.fpu softvfp
	.type	INTERRUPT_15, %function
INTERRUPT_15:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	HplAtm128Timer0AsyncP$Compare$fired
	nop
	pop	{fp, pc}
	.size	INTERRUPT_15, .-INTERRUPT_15
	.section	.rodata
	.align	2
.LC364:
	.ascii	"Configuring new compare of %i for %i at time %llu  "
	.ascii	"(@ %llu)\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	HplAtm128Timer0AsyncP$configure_compare, %function
HplAtm128Timer0AsyncP$configure_compare:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #72
	str	r0, [fp, #-56]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	bl	HplAtm128Timer0AsyncP$Timer0$get
	mov	r3, r0
	strb	r3, [fp, #-46]
	bl	HplAtm128Timer0AsyncP$Compare$get
	mov	r3, r0
	strb	r3, [fp, #-45]
	ldrb	r2, [fp, #-45]
	ldrb	r3, [fp, #-46]
	sub	r3, r2, r3
	and	r3, r3, #255
	and	r2, r3, #255
	mov	r3, #0
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	orrs	r3, r2, r3
	bne	.L2979
	mov	r2, #256
	mov	r3, #0
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
.L2979:
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	adds	r6, r2, #1
	adc	r7, r3, #0
	bl	HplAtm128Timer0AsyncP$shiftFromScale
	mov	r3, r0
	sub	r1, r3, #32
	rsb	r2, r3, #32
	lsl	r5, r7, r3
	orr	r5, r5, r6, lsl r1
	orr	r5, r5, r6, lsr r2
	lsl	r4, r6, r3
	str	r4, [fp, #-44]
	str	r5, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	HplAtm128Timer0AsyncP$clock_to_sim
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	bl	sim_time
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	adds	ip, r2, r0
	str	ip, [fp, #-68]
	adc	r3, r3, r1
	str	r3, [fp, #-64]
	sub	r4, fp, #68
	ldmia	r4, {r3-r4}
	str	r3, [fp, #-44]
	str	r4, [fp, #-40]
	bl	sim_time
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	bl	HplAtm128Timer0AsyncP$last_zero
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	subs	ip, r2, r0
	str	ip, [fp, #-76]
	sbc	r3, r3, r1
	str	r3, [fp, #-72]
	sub	r4, fp, #76
	ldmia	r4, {r3-r4}
	str	r3, [fp, #-36]
	str	r4, [fp, #-32]
	bl	HplAtm128Timer0AsyncP$shiftFromScale
	mov	r3, r0
	mov	r2, r3
	mov	r3, #1
	lsl	r3, r3, r2
	mov	r2, r3
	asr	r3, r2, #31
	mov	r0, r2
	mov	r1, r3
	bl	HplAtm128Timer0AsyncP$clock_to_sim
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_ldivmod
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	subs	r8, r0, r2
	sbc	r9, r1, r3
	str	r8, [fp, #-44]
	str	r9, [fp, #-40]
	ldrb	r4, [fp, #-45]	@ zero_extendqisi2
	bl	sim_node
	mov	r5, r0
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	str	r2, [sp, #16]
	str	r3, [sp, #20]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	str	r2, [sp, #8]
	str	r3, [sp, #12]
	str	r5, [sp]
	mov	r3, r4
	ldr	r2, .L2980
	ldr	r1, .L2980+4
	mov	r0, #198
	bl	sim_log_debug
	ldr	r1, [fp, #-56]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	nop
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L2981:
	.align	2
.L2980:
	.word	.LC364
	.word	.LC150
	.size	HplAtm128Timer0AsyncP$configure_compare, .-HplAtm128Timer0AsyncP$configure_compare
	.section	.rodata
	.align	2
.LC365:
	.ascii	"AMQueue: request to send from %hhu (%p): passed che"
	.ascii	"cks\012\000"
	.align	2
.LC366:
	.ascii	"AMQueue\000"
	.align	2
.LC367:
	.ascii	"%s: request to send from %hhu (%p): queue empty\012"
	.ascii	"\000"
	.align	2
.LC368:
	.ascii	"%s: underlying send failed.\012\000"
	.align	2
.LC369:
	.ascii	"AMQueue: request to send from %hhu (%p): queue not "
	.ascii	"empty\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	AMQueueImplP$0$Send$send, %function
AMQueueImplP$0$Send$send:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	mov	r3, r2
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L2983
	mov	r3, #1
	b	.L2984
.L2983:
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L2988
	lsl	r2, r2, #1
	add	r3, r2, r3
	ldr	r3, [r1, r3, lsl #2]
	cmp	r3, #0
	beq	.L2985
	mov	r3, #5
	b	.L2984
.L2985:
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2988+4
	ldr	r1, .L2988+8
	ldr	r0, .L2988+12
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L2988
	lsl	r2, r2, #1
	add	r3, r2, r3
	ldr	r2, [fp, #-20]
	str	r2, [r1, r3, lsl #2]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	AMQueueImplP$0$Packet$setPayloadLength
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2988+16
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #1
	bls	.L2986
	ldr	r0, [fp, #-20]
	bl	AMQueueImplP$0$AMPacket$type
	mov	r3, r0
	strb	r3, [fp, #-8]
	ldr	r0, [fp, #-20]
	bl	AMQueueImplP$0$AMPacket$destination
	mov	r3, r0
	strh	r3, [fp, #-6]	@ movhi
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L2988+20
	ldr	r2, .L2988+24
	ldr	r1, .L2988+8
	ldr	r0, .L2988+28
	bl	sim_log_debug
	bl	sim_node
	mov	r2, r0
	ldr	r1, .L2988+16
	ldrb	r3, [fp, #-13]
	strb	r3, [r1, r2]
	ldrb	r3, [fp, #-14]	@ zero_extendqisi2
	ldrh	r1, [fp, #-6]
	ldrb	r0, [fp, #-8]	@ zero_extendqisi2
	ldr	r2, [fp, #-20]
	bl	AMQueueImplP$0$AMSend$send
	mov	r3, r0
	strb	r3, [fp, #-7]
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L2987
	ldr	r3, .L2988+20
	ldr	r2, .L2988+32
	ldr	r1, .L2988+8
	ldr	r0, .L2988+36
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L2988+16
	mov	r1, #2
	strb	r1, [r2, r3]
	bl	sim_node
	mov	r2, r0
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r1, .L2988
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r1, r3, lsl #2]
.L2987:
	ldrb	r3, [fp, #-7]	@ zero_extendqisi2
	b	.L2984
.L2986:
	ldrb	r2, [fp, #-13]	@ zero_extendqisi2
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L2988+40
	ldr	r1, .L2988+8
	mov	r0, #396
	bl	sim_log_debug
	mov	r3, #0
.L2984:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2989:
	.align	2
.L2988:
	.word	AMQueueImplP$0$queue
	.word	.LC365
	.word	.LC366
	.word	393
	.word	AMQueueImplP$0$current
	.word	__FUNCTION__.14243
	.word	.LC367
	.word	394
	.word	.LC368
	.word	395
	.word	.LC369
	.size	AMQueueImplP$0$Send$send, .-AMQueueImplP$0$Send$send
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	PacketEngineP$PacketEngine$upperType, %function
PacketEngineP$PacketEngine$upperType:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2993
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$lid
	mov	r3, r0
	mov	r2, r3
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, r2
	beq	.L2991
	mov	r3, #255
	b	.L2992
.L2991:
	bl	sim_node
	mov	r1, r0
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldr	r0, .L2993
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r3, r0, r3
	ldr	r3, [r3, #4]
	mov	r0, r3
	bl	PacketEngineP$uid
	mov	r3, r0
.L2992:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L2994:
	.align	2
.L2993:
	.word	PacketEngineP$msgBuffer
	.size	PacketEngineP$PacketEngine$upperType, .-PacketEngineP$PacketEngine$upperType
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimpleLinkCacheP$RouteCache$trackRoute, %function
SimpleLinkCacheP$RouteCache$trackRoute:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	mov	r2, r1
	strb	r3, [fp, #-5]
	mov	r3, r2
	strb	r3, [fp, #-6]
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Track$get
	mov	r3, r0
	cmp	r3, #0
	bne	.L2998
	ldrb	r3, [fp, #-6]	@ zero_extendqisi2
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	mov	r0, r3
	bl	SimpleLinkCacheP$Track$set
	ldrb	r2, [fp, #-6]	@ zero_extendqisi2
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r1, r2
	mov	r0, r3
	bl	SimpleLinkCacheP$RouteCache$checkRoute
	b	.L2995
.L2998:
	nop
.L2995:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	SimpleLinkCacheP$RouteCache$trackRoute, .-SimpleLinkCacheP$RouteCache$trackRoute
	.section	.rodata
	.align	2
.LC370:
	.ascii	"DSR: Pkt %u: Single receive/snoop packet added!\012"
	.ascii	"\000"
	.align	2
.LC371:
	.ascii	"DSR: Pkt %u: Passing to upper layer\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	DsrControlP$0$SinglePacketEngine$receiveAdded, %function
DsrControlP$0$SinglePacketEngine$receiveAdded:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	mov	r3, r0
	str	r1, [fp, #-20]
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L3000
	ldr	r1, .L3000+4
	ldr	r0, .L3000+8
	bl	sim_log_debug
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SinglePacket$source
	mov	r3, r0
	mov	r4, r3
	ldr	r0, [fp, #-20]
	bl	DsrControlP$0$SinglePacket$destination
	mov	r3, r0
	mov	r2, #0
	mov	r1, #0
	mov	r0, r4
	bl	DsrControlP$0$addPath
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	ldr	r2, .L3000+12
	ldr	r1, .L3000+4
	ldr	r0, .L3000+16
	bl	sim_log_debug
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	DsrControlP$0$SinglePacketEngine$receive
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L3001:
	.align	2
.L3000:
	.word	.LC370
	.word	.LC6
	.word	261
	.word	.LC371
	.word	262
	.size	DsrControlP$0$SinglePacketEngine$receiveAdded, .-DsrControlP$0$SinglePacketEngine$receiveAdded
	.align	2
	.global	sim_mote_euid
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_euid, %function
sim_mote_euid:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	sim_set_node
	bl	SimMoteP$SimMote$getEuid
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_mote_euid, .-sim_mote_euid
	.align	2
	.global	sim_mote_set_euid
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_set_euid, %function
sim_mote_set_euid:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	SimMoteP$SimMote$setEuid
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_mote_set_euid, .-sim_mote_set_euid
	.section	.rodata
	.align	2
.LC372:
	.ascii	"Fetched %s of %i to be %p with len %i (result %i)\012"
	.ascii	"\000"
	.text
	.align	2
	.global	sim_mote_get_variable_info
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_get_variable_info, %function
sim_mote_get_variable_info:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-20]
	bl	SimMoteP$SimMote$getVariableInfo
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	ldr	r2, [r2]
	ldr	r1, [fp, #-8]
	str	r1, [sp, #12]
	str	r2, [sp, #8]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-16]
	str	r3, [sp]
	ldr	r3, [fp, #-20]
	ldr	r2, .L3007
	ldr	r1, .L3007+4
	mov	r0, #102
	bl	sim_log_debug
	ldr	r3, [fp, #-12]
	mov	r0, r3
	bl	sim_set_node
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L3008:
	.align	2
.L3007:
	.word	.LC372
	.word	.LC167
	.size	sim_mote_get_variable_info, .-sim_mote_get_variable_info
	.section	.rodata
	.align	2
.LC373:
	.ascii	"Setting start time to %llu\012\000"
	.text
	.align	2
	.global	sim_mote_set_start_time
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_set_start_time, %function
sim_mote_set_start_time:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-16]
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3011
	lsl	r3, r3, #3
	add	r1, r2, r3
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3011
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, .L3011+4
	ldr	r1, .L3011+8
	mov	r0, #103
	bl	sim_log_debug
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L3012:
	.align	2
.L3011:
	.word	SimMoteP$startTime
	.word	.LC373
	.word	.LC167
	.size	sim_mote_set_start_time, .-sim_mote_set_start_time
	.align	2
	.global	sim_mote_turn_on
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_turn_on, %function
sim_mote_turn_on:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	bl	SimMoteP$SimMote$turnOn
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_mote_turn_on, .-sim_mote_turn_on
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	SimMoteP$SimMote$turnOn, %function
SimMoteP$SimMote$turnOn:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #12
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3018
	ldrb	r3, [r2, r3]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L3017
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3018+4
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L3016
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3018+4
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #1
	strb	r2, [r3, #13]
.L3016:
	bl	sim_node
	mov	r3, r0
	mov	r0, r3
	bl	__nesc_nido_initialise
	bl	sim_node
	mov	r4, r0
	bl	sim_time
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L3018+8
	lsl	r1, r4, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3018+8
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, .L3018+12
	ldr	r1, .L3018+16
	mov	r0, #101
	bl	sim_log_debug
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3018
	mov	r1, #1
	strb	r1, [r2, r3]
	bl	sim_main_start_mote
.L3017:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L3019:
	.align	2
.L3018:
	.word	SimMoteP$isOn
	.word	SimMoteP$bootEvent
	.word	SimMoteP$startTime
	.word	.LC373
	.word	.LC167
	.size	SimMoteP$SimMote$turnOn, .-SimMoteP$SimMote$turnOn
	.align	2
	.global	sim_mote_turn_off
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_turn_off, %function
sim_mote_turn_off:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
	bl	SimMoteP$SimMote$turnOff
	ldr	r3, [fp, #-8]
	mov	r0, r3
	bl	sim_set_node
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	sim_mote_turn_off, .-sim_mote_turn_off
	.align	2
	.global	sim_mote_enqueue_boot_event
	.syntax unified
	.arm
	.fpu softvfp
	.type	sim_mote_enqueue_boot_event, %function
sim_mote_enqueue_boot_event:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	bl	sim_node
	mov	r3, r0
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	mov	r0, r3
	bl	sim_set_node
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	cmp	r3, #0
	beq	.L3022
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	ldmia	r3, {r4-r5}
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	cmp	r5, r3
	cmpeq	r4, r2
	bne	.L3023
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #0
	strb	r2, [r3, #13]
	b	.L3021
.L3023:
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #1
	strb	r2, [r3, #13]
.L3022:
	bl	sim_node
	mov	r4, r0
	mov	r0, #32
	bl	malloc
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L3025
	str	r2, [r3, r4, lsl #2]
	bl	sim_node
	mov	r4, r0
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r1, [r2, r3, lsl #2]
	ldr	r2, .L3025+4
	lsl	r3, r4, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, [fp, #-24]
	str	r2, [r3, #8]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #1
	strb	r2, [r3, #12]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	mov	r2, #0
	str	r2, [r3, #16]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L3025+8
	str	r2, [r3, #20]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	ldr	r2, .L3025+12
	str	r2, [r3, #24]
	bl	sim_node
	mov	r3, r0
	ldr	r2, .L3025
	ldr	r3, [r2, r3, lsl #2]
	mov	r0, r3
	bl	sim_queue_insert
	ldr	r3, [fp, #-16]
	mov	r0, r3
	bl	sim_set_node
.L3021:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L3026:
	.align	2
.L3025:
	.word	SimMoteP$bootEvent
	.word	SimMoteP$startTime
	.word	SimMoteP$sim_mote_boot_handle
	.word	sim_queue_cleanup_event
	.size	sim_mote_enqueue_boot_event, .-sim_mote_enqueue_boot_event
	.section	.rodata
	.align	2
.LC374:
	.ascii	"SimSchedulerBasicP$m_head\000"
	.align	2
.LC375:
	.ascii	"SimSchedulerBasicP$m_tail\000"
	.align	2
.LC376:
	.ascii	"SimSchedulerBasicP$m_next\000"
	.align	2
.LC377:
	.ascii	"SimSchedulerBasicP$sim_scheduler_event_pending\000"
	.align	2
.LC378:
	.ascii	"SimSchedulerBasicP$sim_scheduler_event\000"
	.align	2
.LC379:
	.ascii	"SimMoteP$euid\000"
	.align	2
.LC380:
	.ascii	"SimMoteP$startTime\000"
	.align	2
.LC381:
	.ascii	"SimMoteP$isOn\000"
	.align	2
.LC382:
	.ascii	"SimMoteP$bootEvent\000"
	.align	2
.LC383:
	.ascii	"TossimActiveMessageC$buffer\000"
	.align	2
.LC384:
	.ascii	"TossimActiveMessageC$bufferPointer\000"
	.align	2
.LC385:
	.ascii	"TestDsrP$pktNum\000"
	.align	2
.LC386:
	.ascii	"TestDsrP$dest\000"
	.align	2
.LC387:
	.ascii	"TestDsrP$numPkts\000"
	.align	2
.LC388:
	.ascii	"PacketEngineP$msgBuffer\000"
	.align	2
.LC389:
	.ascii	"PacketEngineP$nextFreePkt\000"
	.align	2
.LC390:
	.ascii	"PacketEngineP$nextAddedPkt\000"
	.align	2
.LC391:
	.ascii	"PacketEngineP$nextWaitPkt\000"
	.align	2
.LC392:
	.ascii	"PacketEngineP$nextActionPkt\000"
	.align	2
.LC393:
	.ascii	"PacketEngineP$running\000"
	.align	2
.LC394:
	.ascii	"PacketEngineP$radioOn\000"
	.align	2
.LC395:
	.ascii	"/*PacketEngineC.SendQueueC.CacheP*/LruDataCacheP$0$"
	.ascii	"cache\000"
	.align	2
.LC396:
	.ascii	"/*PacketEngineC.SendQueueC.CacheP*/LruDataCacheP$0$"
	.ascii	"first\000"
	.align	2
.LC397:
	.ascii	"/*PacketEngineC.SendQueueC.CacheP*/LruDataCacheP$0$"
	.ascii	"count\000"
	.align	2
.LC398:
	.ascii	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$free\000"
	.align	2
.LC399:
	.ascii	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$index\000"
	.align	2
.LC400:
	.ascii	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$queue\000"
	.align	2
.LC401:
	.ascii	"/*PacketEngineC.ReceivePoolC.PoolP*/PoolP$0$pool\000"
	.align	2
.LC402:
	.ascii	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$free\000"
	.align	2
.LC403:
	.ascii	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$index\000"
	.align	2
.LC404:
	.ascii	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$queue\000"
	.align	2
.LC405:
	.ascii	"/*PacketEngineC.SendPoolC.PoolP*/PoolP$1$pool\000"
	.align	2
.LC406:
	.ascii	"StateImplP$state\000"
	.align	2
.LC407:
	.ascii	"RandomMlcgP$seed\000"
	.align	2
.LC408:
	.ascii	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmA"
	.ascii	"syncP*/Atm128AlarmAsyncP$0$set\000"
	.align	2
.LC409:
	.ascii	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmA"
	.ascii	"syncP*/Atm128AlarmAsyncP$0$t0\000"
	.align	2
.LC410:
	.ascii	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmA"
	.ascii	"syncP*/Atm128AlarmAsyncP$0$dt\000"
	.align	2
.LC411:
	.ascii	"/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm128AlarmA"
	.ascii	"syncP*/Atm128AlarmAsyncP$0$base\000"
	.align	2
.LC412:
	.ascii	"HplAtm128Timer0AsyncP$inOverflow\000"
	.align	2
.LC413:
	.ascii	"HplAtm128Timer0AsyncP$lastZero\000"
	.align	2
.LC414:
	.ascii	"HplAtm128Timer0AsyncP$oldScale\000"
	.align	2
.LC415:
	.ascii	"HplAtm128Timer0AsyncP$compare\000"
	.align	2
.LC416:
	.ascii	"HplAtm128Timer0AsyncP$overflow\000"
	.align	2
.LC417:
	.ascii	"/*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$m_d"
	.ascii	"t\000"
	.align	2
.LC418:
	.ascii	"/*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$m_o"
	.ascii	"neshot\000"
	.align	2
.LC419:
	.ascii	"/*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC"
	.ascii	"$0$m_timers\000"
	.align	2
.LC420:
	.ascii	"TossimPacketModelC$initialized\000"
	.align	2
.LC421:
	.ascii	"TossimPacketModelC$running\000"
	.align	2
.LC422:
	.ascii	"TossimPacketModelC$backoffCount\000"
	.align	2
.LC423:
	.ascii	"TossimPacketModelC$neededFreeSamples\000"
	.align	2
.LC424:
	.ascii	"TossimPacketModelC$sending\000"
	.align	2
.LC425:
	.ascii	"TossimPacketModelC$transmitting\000"
	.align	2
.LC426:
	.ascii	"TossimPacketModelC$sendingLength\000"
	.align	2
.LC427:
	.ascii	"TossimPacketModelC$destNode\000"
	.align	2
.LC428:
	.ascii	"TossimPacketModelC$sendEvent\000"
	.align	2
.LC429:
	.ascii	"TossimPacketModelC$error\000"
	.align	2
.LC430:
	.ascii	"CpmModelC$outgoing\000"
	.align	2
.LC431:
	.ascii	"CpmModelC$requestAck\000"
	.align	2
.LC432:
	.ascii	"CpmModelC$receiving\000"
	.align	2
.LC433:
	.ascii	"CpmModelC$outstandingReceptionHead\000"
	.align	2
.LC434:
	.ascii	"CpmModelC$clearThreshold\000"
	.align	2
.LC435:
	.ascii	"ActiveMessageAddressC$set\000"
	.align	2
.LC436:
	.ascii	"ActiveMessageAddressC$addr\000"
	.align	2
.LC437:
	.ascii	"/*DsrP.DsrControlP*/DsrControlP$0$nextIdent\000"
	.align	2
.LC438:
	.ascii	"/*DsrP.DsrControlP*/DsrControlP$0$retriesLeft\000"
	.align	2
.LC439:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.GraphSparseC.IndexedAllocC.IndexedBits.Bits*/Bit"
	.ascii	"VectorC$4$m_bits\000"
	.align	2
.LC440:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.GraphSparseC.IndexedAllocC.IndexedBits.IndexedBi"
	.ascii	"ts*/IndexedAllocBitsP$0$free\000"
	.align	2
.LC441:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.GraphSparseC.IndexedAllocC.IndexedBits.IndexedBi"
	.ascii	"ts*/IndexedAllocBitsP$0$size\000"
	.align	2
.LC442:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.GraphSparseC.GraphSparseP*/GraphSparseP$0$vSize\000"
	.align	2
.LC443:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.GraphSparseC.GraphSparseP*/GraphSparseP$0$v\000"
	.align	2
.LC444:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.GraphSparseC.GraphSparseP*/GraphSparseP$0$e\000"
	.align	2
.LC445:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.PriorityQueueC.PriorityQueue"
	.ascii	"P*/PriorityQueueP$0$size\000"
	.align	2
.LC446:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.PriorityQueueC.PriorityQueue"
	.ascii	"P*/PriorityQueueP$0$ai\000"
	.align	2
.LC447:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.PriorityQueueC.PriorityQueue"
	.ascii	"P*/PriorityQueueP$0$hp\000"
	.align	2
.LC448:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$spt\000"
	.align	2
.LC449:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$fringe\000"
	.align	2
.LC450:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$weight\000"
	.align	2
.LC451:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$lastSrc\000"
	.align	2
.LC452:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$rebuildNeeded\000"
	.align	2
.LC453:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$lastDest\000"
	.align	2
.LC454:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$foundDest\000"
	.align	2
.LC455:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.GraphWeighte"
	.ascii	"dC.SourceShortestPathC.SourceShortestPathP*/SourceS"
	.ascii	"hortestPathP$0$buildingTree\000"
	.align	2
.LC456:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.TrackC*/BitV"
	.ascii	"ectorC$2$m_bits\000"
	.align	2
.LC457:
	.ascii	"/*DsrP.DsrRouteCacheC.SimpleLinkCacheC.InitialC*/Bi"
	.ascii	"tVectorC$3$m_bits\000"
	.align	2
.LC458:
	.ascii	"/*DsrP.RouteRequestInCacheC.CacheP*/LruDataCacheP$1"
	.ascii	"$cache\000"
	.align	2
.LC459:
	.ascii	"/*DsrP.RouteRequestInCacheC.CacheP*/LruDataCacheP$1"
	.ascii	"$first\000"
	.align	2
.LC460:
	.ascii	"/*DsrP.RouteRequestInCacheC.CacheP*/LruDataCacheP$1"
	.ascii	"$count\000"
	.align	2
.LC461:
	.ascii	"/*DsrP.RouteRequestOutCacheC.CacheP*/LruDataCacheP$"
	.ascii	"2$cache\000"
	.align	2
.LC462:
	.ascii	"/*DsrP.RouteRequestOutCacheC.CacheP*/LruDataCacheP$"
	.ascii	"2$first\000"
	.align	2
.LC463:
	.ascii	"/*DsrP.RouteRequestOutCacheC.CacheP*/LruDataCacheP$"
	.ascii	"2$count\000"
	.align	2
.LC464:
	.ascii	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP"
	.ascii	"$0$data\000"
	.align	2
.LC465:
	.ascii	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP"
	.ascii	"$0$delay\000"
	.align	2
.LC466:
	.ascii	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP"
	.ascii	"$0$size\000"
	.align	2
.LC467:
	.ascii	"/*DsrP.RouteRequestOutTimerC.DataTimerP*/DataTimerP"
	.ascii	"$0$startTime\000"
	.align	2
.LC468:
	.ascii	"/*DsrP.ComposeC*/BitVectorC$0$m_bits\000"
	.align	2
.LC469:
	.ascii	"/*DsrP.SalvageC*/BitVectorC$1$m_bits\000"
	.align	2
.LC470:
	.ascii	"/*AMQueueP.AMQueueImplP*/AMQueueImplP$0$current\000"
	.align	2
.LC471:
	.ascii	"/*AMQueueP.AMQueueImplP*/AMQueueImplP$0$queue\000"
	.align	2
.LC472:
	.ascii	"/*AMQueueP.AMQueueImplP*/AMQueueImplP$0$cancelMask\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_nido_resolve, %function
__nesc_nido_resolve:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	str	r3, [fp, #-20]
	ldr	r1, .L3128
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3028
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+4
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3028:
	ldr	r1, .L3128+8
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3030
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+12
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3030:
	ldr	r1, .L3128+16
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3031
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L3128+20
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #11
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3031:
	ldr	r1, .L3128+24
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3032
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+28
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3032:
	ldr	r1, .L3128+32
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3033
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3128+36
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #32
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3033:
	ldr	r1, .L3128+40
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3034
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3128+44
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #8
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3034:
	ldr	r1, .L3128+48
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3035
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3128+52
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #8
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3035:
	ldr	r1, .L3128+56
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3036
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+60
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3036:
	ldr	r1, .L3128+64
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3037
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+68
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3037:
	ldr	r1, .L3128+72
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3038
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	ldr	r3, .L3128+76
	add	r3, r2, r3
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #49
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3038:
	ldr	r1, .L3128+80
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3039
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+84
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3039:
	ldr	r1, .L3128+88
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3040
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	ldr	r2, .L3128+92
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #2
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3040:
	ldr	r1, .L3128+96
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3041
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	ldr	r2, .L3128+100
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #2
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3041:
	ldr	r1, .L3128+104
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3042
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+108
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3042:
	ldr	r1, .L3128+112
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3043
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #6
	ldr	r2, .L3128+116
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #320
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3043:
	ldr	r1, .L3128+120
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3044
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+124
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3044:
	ldr	r1, .L3128+128
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3045
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+132
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3045:
	ldr	r1, .L3128+136
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3046
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+140
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3046:
	ldr	r1, .L3128+144
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3047
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+148
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3047:
	ldr	r1, .L3128+152
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3048
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+156
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3048:
	ldr	r1, .L3128+160
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3049
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+164
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3049:
	ldr	r1, .L3128+168
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3050
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L3128+172
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #40
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3050:
	ldr	r1, .L3128+176
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3051
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+180
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3051:
	ldr	r1, .L3128+184
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3052
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+188
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3052:
	ldr	r1, .L3128+192
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3053
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+196
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3053:
	ldr	r1, .L3128+200
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3054
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+204
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3054:
	ldr	r1, .L3128+208
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3055
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L3128+212
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #80
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3055:
	ldr	r1, .L3128+216
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3056
	ldr	r3, [fp, #-8]
	mov	r2, #980
	mul	r3, r2, r3
	ldr	r2, .L3128+220
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #980
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3056:
	ldr	r1, .L3128+224
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3057
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+228
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3057:
	ldr	r1, .L3128+232
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3058
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+236
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3058:
	ldr	r1, .L3128+240
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3059
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L3128+244
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #80
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3059:
	ldr	r1, .L3128+248
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3060
	ldr	r3, [fp, #-8]
	mov	r2, #980
	mul	r3, r2, r3
	ldr	r2, .L3128+252
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #980
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3060:
	ldr	r1, .L3128+256
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3061
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+260
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3061:
	ldr	r1, .L3128+264
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3062
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+268
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3062:
	ldr	r1, .L3128+272
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3063
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+276
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3063:
	ldr	r1, .L3128+280
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3064
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+284
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3064:
	ldr	r1, .L3128+288
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3065
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+292
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3065:
	ldr	r1, .L3128+296
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3066
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+300
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3066:
	ldr	r1, .L3128+304
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3067
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+308
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3067:
	ldr	r1, .L3128+312
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3068
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3128+316
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #8
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3068:
	ldr	r1, .L3128+320
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3069
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+324
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3069:
	ldr	r1, .L3128+328
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3070
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+332
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3070:
	ldr	r1, .L3128+336
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3071
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+340
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3071:
	ldr	r1, .L3128+344
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3072
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+348
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3072:
	ldr	r1, .L3128+352
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3073
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+356
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3073:
	ldr	r1, .L3128+360
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3074
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+364
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #36
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3074:
	ldr	r1, .L3128+368
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3075
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+372
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3075:
	ldr	r1, .L3128+376
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3076
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+380
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3076:
	ldr	r1, .L3128+384
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3077
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+388
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3077:
	ldr	r1, .L3128+392
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3078
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+396
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3078:
	ldr	r1, .L3128+400
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3079
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+404
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3079:
	ldr	r1, .L3128+408
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3080
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+412
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3080:
	ldr	r1, .L3128+416
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3081
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+420
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3081:
	ldr	r1, .L3128+424
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3082
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+428
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3082:
	ldr	r1, .L3128+432
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3083
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3128+436
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #32
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3083:
	ldr	r1, .L3128+440
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3084
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+444
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3084:
	ldr	r1, .L3128+448
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3085
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+452
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3129:
	.align	2
.L3128:
	.word	.LC374
	.word	SimSchedulerBasicP$m_head
	.word	.LC375
	.word	SimSchedulerBasicP$m_tail
	.word	.LC376
	.word	SimSchedulerBasicP$m_next
	.word	.LC377
	.word	SimSchedulerBasicP$sim_scheduler_event_pending
	.word	.LC378
	.word	SimSchedulerBasicP$sim_scheduler_event
	.word	.LC379
	.word	SimMoteP$euid
	.word	.LC380
	.word	SimMoteP$startTime
	.word	.LC381
	.word	SimMoteP$isOn
	.word	.LC382
	.word	SimMoteP$bootEvent
	.word	.LC383
	.word	TossimActiveMessageC$buffer
	.word	.LC384
	.word	TossimActiveMessageC$bufferPointer
	.word	.LC385
	.word	TestDsrP$pktNum
	.word	.LC386
	.word	TestDsrP$dest
	.word	.LC387
	.word	TestDsrP$numPkts
	.word	.LC388
	.word	PacketEngineP$msgBuffer
	.word	.LC389
	.word	PacketEngineP$nextFreePkt
	.word	.LC390
	.word	PacketEngineP$nextAddedPkt
	.word	.LC391
	.word	PacketEngineP$nextWaitPkt
	.word	.LC392
	.word	PacketEngineP$nextActionPkt
	.word	.LC393
	.word	PacketEngineP$running
	.word	.LC394
	.word	PacketEngineP$radioOn
	.word	.LC395
	.word	LruDataCacheP$0$cache
	.word	.LC396
	.word	LruDataCacheP$0$first
	.word	.LC397
	.word	LruDataCacheP$0$count
	.word	.LC398
	.word	PoolP$0$free
	.word	.LC399
	.word	PoolP$0$index
	.word	.LC400
	.word	PoolP$0$queue
	.word	.LC401
	.word	PoolP$0$pool
	.word	.LC402
	.word	PoolP$1$free
	.word	.LC403
	.word	PoolP$1$index
	.word	.LC404
	.word	PoolP$1$queue
	.word	.LC405
	.word	PoolP$1$pool
	.word	.LC406
	.word	StateImplP$state
	.word	.LC407
	.word	RandomMlcgP$seed
	.word	.LC408
	.word	Atm128AlarmAsyncP$0$set
	.word	.LC409
	.word	Atm128AlarmAsyncP$0$t0
	.word	.LC410
	.word	Atm128AlarmAsyncP$0$dt
	.word	.LC411
	.word	Atm128AlarmAsyncP$0$base
	.word	.LC412
	.word	HplAtm128Timer0AsyncP$inOverflow
	.word	.LC413
	.word	HplAtm128Timer0AsyncP$lastZero
	.word	.LC414
	.word	HplAtm128Timer0AsyncP$oldScale
	.word	.LC415
	.word	HplAtm128Timer0AsyncP$compare
	.word	.LC416
	.word	HplAtm128Timer0AsyncP$overflow
	.word	.LC417
	.word	AlarmToTimerC$0$m_dt
	.word	.LC418
	.word	AlarmToTimerC$0$m_oneshot
	.word	.LC419
	.word	VirtualizeTimerC$0$m_timers
	.word	.LC420
	.word	TossimPacketModelC$initialized
	.word	.LC421
	.word	TossimPacketModelC$running
	.word	.LC422
	.word	TossimPacketModelC$backoffCount
	.word	.LC423
	.word	TossimPacketModelC$neededFreeSamples
	.word	.LC424
	.word	TossimPacketModelC$sending
	.word	.LC425
	.word	TossimPacketModelC$transmitting
	.word	.LC426
	.word	TossimPacketModelC$sendingLength
	.word	.LC427
	.word	TossimPacketModelC$destNode
	.word	.LC428
	.word	TossimPacketModelC$sendEvent
	.word	.LC429
	.word	TossimPacketModelC$error
	.word	.LC430
	.word	CpmModelC$outgoing
	.word	.LC431
	.word	CpmModelC$requestAck
	.word	.LC432
	.word	CpmModelC$receiving
	.word	.LC433
	.word	CpmModelC$outstandingReceptionHead
	.word	.LC434
	.word	CpmModelC$clearThreshold
	.word	.LC435
	.word	ActiveMessageAddressC$set
	.word	.LC436
	.word	ActiveMessageAddressC$addr
	.word	.LC437
	.word	DsrControlP$0$nextIdent
	.word	.LC438
	.word	DsrControlP$0$retriesLeft
	.word	.LC439
	.word	BitVectorC$4$m_bits
	.word	.LC440
	.word	IndexedAllocBitsP$0$free
	.word	.LC441
	.word	IndexedAllocBitsP$0$size
	.word	.LC442
	.word	GraphSparseP$0$vSize
	.word	.LC443
	.word	GraphSparseP$0$v
	.word	.LC444
	.word	GraphSparseP$0$e
	.word	.LC445
	.word	PriorityQueueP$0$size
	.word	.LC446
	.word	PriorityQueueP$0$ai
	.word	.LC447
	.word	PriorityQueueP$0$hp
	.word	.LC448
	.word	SourceShortestPathP$0$spt
	.word	.LC449
	.word	SourceShortestPathP$0$fringe
	.word	.LC450
	.word	SourceShortestPathP$0$weight
	.word	.LC451
	.word	SourceShortestPathP$0$lastSrc
	.word	.LC452
	.word	SourceShortestPathP$0$rebuildNeeded
	.word	.LC453
	.word	SourceShortestPathP$0$lastDest
	.word	.LC454
	.word	SourceShortestPathP$0$foundDest
	.word	.LC455
	.word	SourceShortestPathP$0$buildingTree
	.word	.LC456
	.word	BitVectorC$2$m_bits
	.word	.LC457
	.word	BitVectorC$3$m_bits
	.word	.LC458
	.word	LruDataCacheP$1$cache
	.word	.LC459
	.word	LruDataCacheP$1$first
	.word	.LC460
	.word	LruDataCacheP$1$count
	.word	.LC461
	.word	LruDataCacheP$2$cache
	.word	.LC462
	.word	LruDataCacheP$2$first
	.word	.LC463
	.word	LruDataCacheP$2$count
	.word	.LC464
	.word	DataTimerP$0$data
	.word	.LC465
	.word	DataTimerP$0$delay
	.word	.LC466
	.word	DataTimerP$0$size
	.word	.LC467
	.word	DataTimerP$0$startTime
	.word	.LC468
	.word	BitVectorC$0$m_bits
	.word	.LC469
	.word	BitVectorC$1$m_bits
	.word	.LC470
	.word	AMQueueImplP$0$current
	.word	.LC471
	.word	AMQueueImplP$0$queue
	.word	.LC472
	.word	AMQueueImplP$0$cancelMask
.L3085:
	ldr	r1, .L3128+456
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3086
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+460
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3086:
	ldr	r1, .L3128+464
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3087
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+468
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3087:
	ldr	r1, .L3128+472
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3088
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+476
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3088:
	ldr	r1, .L3128+480
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3089
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3128+484
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #8
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3089:
	ldr	r1, .L3128+488
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3090
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+492
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3090:
	ldr	r1, .L3128+496
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3091
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	ldr	r2, .L3128+500
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #2
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3091:
	ldr	r1, .L3128+504
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3092
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+508
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3092:
	ldr	r1, .L3128+512
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3093
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L3128+516
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #40
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3093:
	ldr	r1, .L3128+520
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3094
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3128+524
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #32
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3094:
	ldr	r1, .L3128+528
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3095
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+532
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3095:
	ldr	r1, .L3128+536
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3096
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+540
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3096:
	ldr	r1, .L3128+544
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3097
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+548
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3097:
	ldr	r1, .L3128+552
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3098
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+556
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #20
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3098:
	ldr	r1, .L3128+560
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3099
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+564
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #500
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3099:
	ldr	r1, .L3128+568
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3100
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+572
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3100:
	ldr	r1, .L3128+576
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3101
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+580
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #20
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3101:
	ldr	r1, .L3128+584
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3102
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+588
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #20
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3102:
	ldr	r1, .L3128+592
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3103
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+596
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #20
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3103:
	ldr	r1, .L3128+600
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3104
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+604
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #20
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3104:
	ldr	r1, .L3128+608
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3105
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3128+612
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #20
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3105:
	ldr	r1, .L3128+616
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3106
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+620
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3106:
	ldr	r1, .L3128+624
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3107
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+628
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3107:
	ldr	r1, .L3128+632
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3108
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+636
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3108:
	ldr	r1, .L3128+640
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3109
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+644
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3109:
	ldr	r1, .L3128+648
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3110
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+652
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3110:
	ldr	r1, .L3128+656
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3111
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L3128+660
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #3
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3111:
	ldr	r1, .L3128+664
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3112
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L3128+668
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #3
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3112:
	ldr	r1, .L3128+672
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3113
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #7
	ldr	r2, .L3128+676
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #128
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3113:
	ldr	r1, .L3128+680
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3114
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+684
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3114:
	ldr	r1, .L3128+688
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3115
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+692
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3115:
	ldr	r1, .L3128+696
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3116
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3128+700
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #32
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3116:
	ldr	r1, .L3128+704
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3117
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+708
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3117:
	ldr	r1, .L3128+712
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3118
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+716
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3118:
	ldr	r1, .L3128+720
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3119
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, .L3128+724
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #16
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3119:
	ldr	r1, .L3128+728
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3120
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, .L3128+732
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #16
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3120:
	ldr	r1, .L3128+736
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3121
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+740
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3121:
	ldr	r1, .L3128+744
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3122
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3128+748
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #4
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3122:
	ldr	r1, .L3128+752
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3123
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, .L3128+756
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #5
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3123:
	ldr	r1, .L3128+760
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3124
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, .L3128+764
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #5
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3124:
	ldr	r1, .L3128+768
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3125
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+772
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3125:
	ldr	r1, .L3128+776
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3126
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3128+780
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #8
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3126:
	ldr	r1, .L3128+784
	ldr	r0, [fp, #-12]
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L3127
	ldr	r3, [fp, #-8]
	ldr	r2, .L3128+788
	add	r3, r3, r2
	mov	r2, r3
	ldr	r3, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-20]
	mov	r2, #1
	str	r2, [r3]
	mov	r3, #0
	b	.L3029
.L3127:
	mvn	r3, #0
.L3029:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	__nesc_nido_resolve, .-__nesc_nido_resolve
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	__nesc_nido_initialise, %function
__nesc_nido_initialise:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+4
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L3131+8
	add	r3, r3, r2
	mov	r2, #11
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+12
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3131+16
	add	r3, r3, r2
	mov	r2, #32
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3131+20
	add	r3, r3, r2
	mov	r2, #8
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3131+24
	add	r3, r3, r2
	mov	r2, #8
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+28
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+32
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	ldr	r3, .L3131+36
	add	r3, r2, r3
	mov	r2, #49
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	ldr	r3, .L3131+36
	add	r2, r2, r3
	ldr	r1, .L3131+40
	ldr	r3, [fp, #-8]
	str	r2, [r1, r3, lsl #2]
	ldr	r2, .L3131+44
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	add	r3, r2, r3
	mov	r2, #0
	strh	r2, [r3]	@ movhi
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	ldr	r2, .L3131+48
	add	r3, r3, r2
	mov	r2, #2
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+52
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #6
	ldr	r2, .L3131+56
	add	r3, r3, r2
	mov	r2, #320
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+60
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+64
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+68
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+72
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+76
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+80
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L3131+84
	add	r3, r3, r2
	mov	r2, #40
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+88
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+92
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+96
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+100
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L3131+104
	add	r3, r3, r2
	mov	r2, #80
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	mov	r2, #980
	mul	r3, r2, r3
	ldr	r2, .L3131+108
	add	r3, r3, r2
	mov	r2, #980
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+112
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+116
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #4
	ldr	r2, .L3131+120
	add	r3, r3, r2
	mov	r2, #80
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	mov	r2, #980
	mul	r3, r2, r3
	ldr	r2, .L3131+124
	add	r3, r3, r2
	mov	r2, #980
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+128
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+132
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+136
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+140
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+144
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+148
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+152
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r2, .L3131+156
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r2, .L3131+160
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+164
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+168
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+172
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+176
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+180
	add	r3, r3, r2
	mov	r2, #36
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+184
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r2, .L3131+188
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+192
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+196
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+200
	ldr	r3, [fp, #-8]
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	ldr	r2, .L3131+204
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r2, .L3131+208
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+212
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3131+216
	add	r3, r3, r2
	mov	r2, #32
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+220
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+224
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+228
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+232
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r2, .L3131+236
	ldr	r3, [fp, #-8]
	mov	r1, #0
	str	r1, [r2, r3, lsl #2]
	ldr	r2, .L3131+240
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	ldr	r3, .L3131+244
	stm	r1, {r2-r3}
	ldr	r2, .L3131+248
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	ldr	r2, .L3131+252
	add	r3, r3, r2
	mov	r2, #2
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+256
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #3
	ldr	r2, .L3131+260
	add	r3, r3, r2
	mov	r2, #40
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3131+264
	add	r3, r3, r2
	mov	r2, #32
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+268
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+272
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #0
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+276
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+280
	add	r3, r3, r2
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #5
	sub	r3, r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+284
	add	r3, r3, r2
	mov	r2, #500
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+288
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+292
	add	r3, r3, r2
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+296
	add	r3, r3, r2
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+300
	add	r3, r3, r2
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+304
	add	r3, r3, r2
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	ldr	r2, .L3131+308
	add	r3, r3, r2
	mov	r2, #20
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+312
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+316
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+320
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+324
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+328
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L3131+332
	add	r3, r3, r2
	mov	r2, #3
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	ldr	r2, .L3131+336
	add	r3, r3, r2
	mov	r2, #3
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #7
	ldr	r2, .L3131+340
	add	r3, r3, r2
	mov	r2, #128
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+344
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+348
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r2, .L3131+352
	add	r3, r3, r2
	mov	r2, #32
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+356
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+360
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, .L3131+364
	add	r3, r3, r2
	mov	r2, #16
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r2, .L3131+368
	add	r3, r3, r2
	mov	r2, #16
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+372
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, .L3131+376
	add	r3, r3, r2
	mov	r2, #4
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, .L3131+380
	add	r3, r3, r2
	mov	r2, #5
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, [fp, #-8]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	ldr	r2, .L3131+384
	add	r3, r3, r2
	mov	r2, #5
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r2, .L3131+388
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	mov	r2, #2
	strb	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, .L3131+392
	add	r3, r3, r2
	mov	r2, #8
	mov	r1, #0
	mov	r0, r3
	bl	memset
	ldr	r3, [fp, #-8]
	ldr	r2, .L3131+396
	add	r3, r3, r2
	mov	r2, #1
	mov	r1, #0
	mov	r0, r3
	bl	memset
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L3132:
	.align	2
.L3131:
	.word	SimSchedulerBasicP$m_head
	.word	SimSchedulerBasicP$m_tail
	.word	SimSchedulerBasicP$m_next
	.word	SimSchedulerBasicP$sim_scheduler_event_pending
	.word	SimSchedulerBasicP$sim_scheduler_event
	.word	SimMoteP$euid
	.word	SimMoteP$startTime
	.word	SimMoteP$isOn
	.word	SimMoteP$bootEvent
	.word	TossimActiveMessageC$buffer
	.word	TossimActiveMessageC$bufferPointer
	.word	TestDsrP$pktNum
	.word	TestDsrP$dest
	.word	TestDsrP$numPkts
	.word	PacketEngineP$msgBuffer
	.word	PacketEngineP$nextFreePkt
	.word	PacketEngineP$nextAddedPkt
	.word	PacketEngineP$nextWaitPkt
	.word	PacketEngineP$nextActionPkt
	.word	PacketEngineP$running
	.word	PacketEngineP$radioOn
	.word	LruDataCacheP$0$cache
	.word	LruDataCacheP$0$first
	.word	LruDataCacheP$0$count
	.word	PoolP$0$free
	.word	PoolP$0$index
	.word	PoolP$0$queue
	.word	PoolP$0$pool
	.word	PoolP$1$free
	.word	PoolP$1$index
	.word	PoolP$1$queue
	.word	PoolP$1$pool
	.word	StateImplP$state
	.word	RandomMlcgP$seed
	.word	Atm128AlarmAsyncP$0$set
	.word	Atm128AlarmAsyncP$0$t0
	.word	Atm128AlarmAsyncP$0$dt
	.word	Atm128AlarmAsyncP$0$base
	.word	HplAtm128Timer0AsyncP$inOverflow
	.word	HplAtm128Timer0AsyncP$lastZero
	.word	HplAtm128Timer0AsyncP$oldScale
	.word	HplAtm128Timer0AsyncP$compare
	.word	HplAtm128Timer0AsyncP$overflow
	.word	AlarmToTimerC$0$m_dt
	.word	AlarmToTimerC$0$m_oneshot
	.word	VirtualizeTimerC$0$m_timers
	.word	TossimPacketModelC$initialized
	.word	TossimPacketModelC$running
	.word	TossimPacketModelC$backoffCount
	.word	TossimPacketModelC$neededFreeSamples
	.word	TossimPacketModelC$sending
	.word	TossimPacketModelC$transmitting
	.word	TossimPacketModelC$sendingLength
	.word	TossimPacketModelC$destNode
	.word	TossimPacketModelC$sendEvent
	.word	TossimPacketModelC$error
	.word	CpmModelC$outgoing
	.word	CpmModelC$requestAck
	.word	CpmModelC$receiving
	.word	CpmModelC$outstandingReceptionHead
	.word	CpmModelC$clearThreshold
	.word	-1068367872
	.word	ActiveMessageAddressC$set
	.word	ActiveMessageAddressC$addr
	.word	DsrControlP$0$nextIdent
	.word	DsrControlP$0$retriesLeft
	.word	BitVectorC$4$m_bits
	.word	IndexedAllocBitsP$0$free
	.word	IndexedAllocBitsP$0$size
	.word	GraphSparseP$0$vSize
	.word	GraphSparseP$0$v
	.word	GraphSparseP$0$e
	.word	PriorityQueueP$0$size
	.word	PriorityQueueP$0$ai
	.word	PriorityQueueP$0$hp
	.word	SourceShortestPathP$0$spt
	.word	SourceShortestPathP$0$fringe
	.word	SourceShortestPathP$0$weight
	.word	SourceShortestPathP$0$lastSrc
	.word	SourceShortestPathP$0$rebuildNeeded
	.word	SourceShortestPathP$0$lastDest
	.word	SourceShortestPathP$0$foundDest
	.word	SourceShortestPathP$0$buildingTree
	.word	BitVectorC$2$m_bits
	.word	BitVectorC$3$m_bits
	.word	LruDataCacheP$1$cache
	.word	LruDataCacheP$1$first
	.word	LruDataCacheP$1$count
	.word	LruDataCacheP$2$cache
	.word	LruDataCacheP$2$first
	.word	LruDataCacheP$2$count
	.word	DataTimerP$0$data
	.word	DataTimerP$0$delay
	.word	DataTimerP$0$size
	.word	DataTimerP$0$startTime
	.word	BitVectorC$0$m_bits
	.word	BitVectorC$1$m_bits
	.word	AMQueueImplP$0$current
	.word	AMQueueImplP$0$queue
	.word	AMQueueImplP$0$cancelMask
	.size	__nesc_nido_initialise, .-__nesc_nido_initialise
	.section	.rodata
	.align	2
	.type	__FUNCTION__.13742, %object
	.size	__FUNCTION__.13742, 31
__FUNCTION__.13742:
	.ascii	"AMQueueImplP$0$AMSend$sendDone\000"
	.align	2
	.type	__FUNCTION__.12677, %object
	.size	__FUNCTION__.12677, 44
__FUNCTION__.12677:
	.ascii	"HplAtm128Timer0AsyncP$timer0_compare_handle\000"
	.align	2
	.type	__FUNCTION__.14243, %object
	.size	__FUNCTION__.14243, 25
__FUNCTION__.14243:
	.ascii	"AMQueueImplP$0$Send$send\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
