// File: /workspace/github_c_makefile_star2_O0/QwazyWabbitWOS[P]lmctf60/g_target.c
// Function: SP_target_lightramp
void SP_target_lightramp (edict_t *self)
{
	if (!self->message || strlen(self->message) != 2 || self->message[0] < 'a' || self->message[0] > 'z' || self->message[1] < 'a' || self->message[1] > 'z' || self->message[0] == self->message[1])
	{
		gi.dprintf("target_lightramp has bad ramp (%s) at %s\n", self->message, vtos(self->s.origin));
		G_FreeEdict (self);
		return;
	}

	if (deathmatch->value)
	{
		G_FreeEdict (self);
		return;
	}

	if (!self->target)
	{
		gi.dprintf("%s with no target at %s\n", self->classname, vtos(self->s.origin));
		G_FreeEdict (self);
		return;
	}

	self->svflags |= SVF_NOCLIENT;
	self->use = target_lightramp_use;
	self->think = target_lightramp_think;

	self->movedir[0] = self->message[0] - 'a';
	self->movedir[1] = self->message[1] - 'a';
	self->movedir[2] = (self->movedir[1] - self->movedir[0]) / (self->speed / FRAMETIME);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x130(%rax)
je 0x4e773
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rdi
callq 0x186e0
cmpq $0x2, %rax
jne 0x4e773
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl (%rax), %eax
cmpl $0x61, %eax
jl 0x4e773
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl (%rax), %eax
cmpl $0x7a, %eax
jg 0x4e773
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl 0x1(%rax), %eax
cmpl $0x61, %eax
jl 0x4e773
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl 0x1(%rax), %eax
cmpl $0x7a, %eax
jg 0x4e773
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl (%rax), %eax
movq -0x8(%rbp), %rcx
movq 0x130(%rcx), %rcx
movsbl 0x1(%rcx), %ecx
cmpl %ecx, %eax
jne 0x4e7c2
movq 0x33e86(%rip), %rax     # 0x82600
movq 0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rdi
addq $0x4, %rdi
callq 0x19260
movq -0x18(%rbp), %rsi
movq -0x10(%rbp), %rcx
movq %rax, %rdx
leaq 0x277d2(%rip), %rdi     # 0x75f82
movb $0x0, %al
callq *%rcx
movq -0x8(%rbp), %rdi
callq 0x19cd0
jmp 0x4e902
movq 0x346f7(%rip), %rax     # 0x82ec0
movq (%rax), %rax
movss 0x20(%rax), %xmm0
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0x4e7dd
jp 0x4e7dd
jmp 0x4e7eb
movq -0x8(%rbp), %rdi
callq 0x19cd0
jmp 0x4e902
movq -0x8(%rbp), %rax
cmpq $0x0, 0x150(%rax)
jne 0x4e848
movq 0x33e00(%rip), %rax     # 0x82600
movq 0x8(%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq 0x138(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
addq $0x4, %rdi
callq 0x19260
movq -0x28(%rbp), %rsi
movq -0x20(%rbp), %rcx
movq %rax, %rdx
leaq 0x25e04(%rip), %rdi     # 0x7463a
movb $0x0, %al
callq *%rcx
movq -0x8(%rbp), %rdi
callq 0x19cd0
jmp 0x4e902
movq -0x8(%rbp), %rax
movl 0xc8(%rax), %ecx
orl $0x1, %ecx
movl %ecx, 0xc8(%rax)
movq -0x8(%rbp), %rax
movq 0x33fda(%rip), %rcx     # 0x82840
movq %rcx, 0x228(%rax)
movq -0x8(%rbp), %rax
movq 0x346d8(%rip), %rcx     # 0x82f50
movq %rcx, 0x210(%rax)
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl (%rax), %eax
subl $0x61, %eax
cvtsi2ss %eax, %xmm0
movq -0x8(%rbp), %rax
movss %xmm0, 0x19c(%rax)
movq -0x8(%rbp), %rax
movq 0x130(%rax), %rax
movsbl 0x1(%rax), %eax
subl $0x61, %eax
cvtsi2ss %eax, %xmm0
movq -0x8(%rbp), %rax
movss %xmm0, 0x1a0(%rax)
movq -0x8(%rbp), %rax
movss 0x1a0(%rax), %xmm0
movq -0x8(%rbp), %rax
subss 0x19c(%rax), %xmm0
movq -0x8(%rbp), %rax
movss 0x190(%rax), %xmm1
movss 0x219a6(%rip), %xmm2    # 0x70294
divss %xmm2, %xmm1
divss %xmm1, %xmm0
movq -0x8(%rbp), %rax
movss %xmm0, 0x1a4(%rax)
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)