// File: /workspace/github_c_makefile_star2_O0/QwazyWabbitWOS[P]lmctf60/g_misc.c
// Function: SP_misc_explobox
void SP_misc_explobox (edict_t *self)
{
	if (deathmatch->value)
	{	// auto-remove for deathmatch
		G_FreeEdict (self);
		return;
	}

	gi.modelindex ("models/objects/debris1/tris.md2");
	gi.modelindex ("models/objects/debris2/tris.md2");
	gi.modelindex ("models/objects/debris3/tris.md2");

	self->solid = SOLID_BBOX;
	self->movetype = MOVETYPE_STEP;

	self->model = "models/objects/barrels/tris.md2";
	self->s.modelindex = gi.modelindex (self->model);
	VectorSet (self->mins, -16, -16, 0);
	VectorSet (self->maxs, 16, 16, 40);

	if (!self->mass)
		self->mass = 400;
	if (!self->health)
		self->health = 10;
	if (!self->dmg)
		self->dmg = 150;

	self->die = barrel_delay;
	self->takedamage = DAMAGE_YES;
	self->monsterinfo.aiflags = AI_NOSTEP;

	self->touch = barrel_touch;

#ifdef MONSTERS_OK
	self->think = M_droptofloor;
#endif
	self->nextthink = level.time + 2 * FRAMETIME;

	gi.linkentity (self);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq 0x4026d(%rip), %rax     # 0x82ec0
movq (%rax), %rax
movss 0x20(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0x42c67
jp 0x42c67
jmp 0x42c75
movq -0x8(%rbp), %rdi
callq 0x19cd0
jmp 0x42e2f
leaq 0x316a8(%rip), %rdi     # 0x74324
movq 0x3f97d(%rip), %rax     # 0x82600
callq *0x40(%rax)
leaq 0x309c8(%rip), %rdi     # 0x73655
movq 0x3f96c(%rip), %rax     # 0x82600
callq *0x40(%rax)
leaq 0x316a6(%rip), %rdi     # 0x74344
movq 0x3f95b(%rip), %rax     # 0x82600
callq *0x40(%rax)
movq -0x8(%rbp), %rax
movl $0x2, 0x108(%rax)
movq -0x8(%rbp), %rax
movl $0x5, 0x118(%rax)
movq -0x8(%rbp), %rax
leaq 0x31695(%rip), %rcx     # 0x74364
movq %rcx, 0x120(%rax)
movq 0x3f923(%rip), %rax     # 0x82600
movq 0x40(%rax), %rax
movq -0x8(%rbp), %rcx
movq 0x120(%rcx), %rdi
callq *%rax
movl %eax, %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x28(%rax)
movq -0x8(%rbp), %rax
movss 0x2d785(%rip), %xmm0    # 0x70488
movss %xmm0, 0xcc(%rax)
movq -0x8(%rbp), %rax
movss 0x2d771(%rip), %xmm0    # 0x70488
movss %xmm0, 0xd0(%rax)
movq -0x8(%rbp), %rax
xorps %xmm0, %xmm0
movss %xmm0, 0xd4(%rax)
movq -0x8(%rbp), %rax
movss 0x314be(%rip), %xmm0    # 0x741f8
movss %xmm0, 0xd8(%rax)
movq -0x8(%rbp), %rax
movss 0x314aa(%rip), %xmm0    # 0x741f8
movss %xmm0, 0xdc(%rax)
movq -0x8(%rbp), %rax
movss 0x2dfbe(%rip), %xmm0    # 0x70d20
movss %xmm0, 0xe0(%rax)
movq -0x8(%rbp), %rax
cmpl $0x0, 0x1d8(%rax)
jne 0x42d85
movq -0x8(%rbp), %rax
movl $0x190, 0x1d8(%rax)     # imm = 0x190
movq -0x8(%rbp), %rax
cmpl $0x0, 0x254(%rax)
jne 0x42da0
movq -0x8(%rbp), %rax
movl $0xa, 0x254(%rax)
movq -0x8(%rbp), %rax
cmpl $0x0, 0x280(%rax)
jne 0x42dbb
movq -0x8(%rbp), %rax
movl $0x96, 0x280(%rax)
movq -0x8(%rbp), %rax
movq 0x3fbba(%rip), %rcx     # 0x82980
movq %rcx, 0x238(%rax)
movq -0x8(%rbp), %rax
movl $0x1, 0x27c(%rax)
movq -0x8(%rbp), %rax
movl $0x400, 0x3c0(%rax)     # imm = 0x400
movq -0x8(%rbp), %rax
movq 0x40114(%rip), %rcx     # 0x82f08
movq %rcx, 0x220(%rax)
movss 0x30059(%rip), %xmm0    # 0x72e5c
movq 0x3ff96(%rip), %rax     # 0x82da0
addss 0x4(%rax), %xmm0
movq -0x8(%rbp), %rax
movss %xmm0, 0x200(%rax)
movq 0x3f7de(%rip), %rax     # 0x82600
movq 0x90(%rax), %rax
movq -0x8(%rbp), %rdi
callq *%rax
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)