// File: /workspace/github_c_makefile_star2_O0/QwazyWabbitWOS[P]lmctf60/g_items.c
// Function: Pickup_Powerup
qboolean Pickup_Powerup (edict_t *ent, edict_t *other)
{
	int		quantity;

	quantity = other->client->pers.inventory[ITEM_INDEX(ent->item)];
	if ((skill->value == 1 && quantity >= 2) || (skill->value >= 2 && quantity >= 1))
		return false;

	if ((coop->value) && (ent->item->flags & IT_STAY_COOP) && (quantity > 0))
		return false;

	other->client->pers.inventory[ITEM_INDEX(ent->item)]++;

	if (deathmatch->value)
	{
		if (!(ent->spawnflags & DROPPED_ITEM) )
			SetRespawn (ent, ent->item->quantity);
		if (((int)dmflags->value & DF_INSTANT_ITEMS) || ((ent->item->use == Use_Quad) && (ent->spawnflags & DROPPED_PLAYER_ITEM)))
		{
			if ((ent->item->use == Use_Quad) && (ent->spawnflags & DROPPED_PLAYER_ITEM))
				quad_drop_timeout_hack = (ent->nextthink - level.time) / FRAMETIME;
			ent->item->use (other, ent->item);
		}
	}

	return true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
movq 0x49442(%rip), %rcx     # 0x82e40
subq %rcx, %rax
movl $0x88, %ecx
cqto
idivq %rcx
movq %rax, %rcx
movq -0x28(%rbp), %rax
movl 0x318(%rax,%rcx,4), %eax
movl %eax, -0x1c(%rbp)
movq 0x48d15(%rip), %rax     # 0x82738
movq (%rax), %rax
movss 0x20(%rax), %xmm0
movss 0x364b9(%rip), %xmm1    # 0x6feec
ucomiss %xmm1, %xmm0
jne 0x39a40
jp 0x39a40
cmpl $0x2, -0x1c(%rbp)
jge 0x39a62
movq 0x48cf1(%rip), %rax     # 0x82738
movq (%rax), %rax
movss 0x20(%rax), %xmm0
movss 0x36491(%rip), %xmm1    # 0x6fee8
ucomiss %xmm1, %xmm0
jb 0x39a6e
cmpl $0x1, -0x1c(%rbp)
jl 0x39a6e
movl $0x0, -0x4(%rbp)
jmp 0x39c09
movq 0x494eb(%rip), %rax     # 0x82f60
movq (%rax), %rax
movss 0x20(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0x39a89
jp 0x39a89
jmp 0x39ab1
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
movl 0x68(%rax), %eax
andl $0x8, %eax
cmpl $0x0, %eax
je 0x39ab1
cmpl $0x0, -0x1c(%rbp)
jle 0x39ab1
movl $0x0, -0x4(%rbp)
jmp 0x39c09
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
movq %rax, -0x30(%rbp)
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
movq 0x49371(%rip), %rcx     # 0x82e40
subq %rcx, %rax
movl $0x88, %ecx
cqto
idivq %rcx
movq %rax, %rcx
movq -0x30(%rbp), %rax
movl 0x318(%rax,%rcx,4), %edx
addl $0x1, %edx
movl %edx, 0x318(%rax,%rcx,4)
movq 0x493c5(%rip), %rax     # 0x82ec0
movq (%rax), %rax
movss 0x20(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0x39b12
jp 0x39b12
jmp 0x39c02
movq -0x10(%rbp), %rax
movl 0x140(%rax), %eax
andl $0x10000, %eax          # imm = 0x10000
cmpl $0x0, %eax
jne 0x39b3f
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
cvtsi2ssl 0x5c(%rax), %xmm0
callq 0x19750
movq 0x48ad2(%rip), %rax     # 0x82618
movq (%rax), %rax
cvttss2si 0x20(%rax), %eax
andl $0x10, %eax
cmpl $0x0, %eax
jne 0x39b86
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
movq 0x48e10(%rip), %rcx     # 0x82978
cmpq %rcx, 0x10(%rax)
jne 0x39c00
movq -0x10(%rbp), %rax
movl 0x140(%rax), %eax
andl $0x20000, %eax          # imm = 0x20000
cmpl $0x0, %eax
je 0x39c00
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
movq 0x48de0(%rip), %rcx     # 0x82978
cmpq %rcx, 0x10(%rax)
jne 0x39be0
movq -0x10(%rbp), %rax
movl 0x140(%rax), %eax
andl $0x20000, %eax          # imm = 0x20000
cmpl $0x0, %eax
je 0x39be0
movq -0x10(%rbp), %rax
movss 0x200(%rax), %xmm0
movq 0x491db(%rip), %rax     # 0x82da0
subss 0x4(%rax), %xmm0
movss 0x366c2(%rip), %xmm1    # 0x70294
divss %xmm1, %xmm0
cvttss2si %xmm0, %eax
movl %eax, 0x53130(%rip)     # 0x8cd10
movq -0x10(%rbp), %rax
movq 0x330(%rax), %rax
movq 0x10(%rax), %rax
movq -0x18(%rbp), %rdi
movq -0x10(%rbp), %rcx
movq 0x330(%rcx), %rsi
callq *%rax
jmp 0x39c02
movl $0x1, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)