// File: /workspace/github_c_makefile_star2_O3/rafa9811[P]theIndiependenceGame/theindiependencegame.c
// Function: play
void *_play(void * xq) {
Interact *interact;
Interface *interface;
time_t clk, ini, iniDanger, clkDanger;
double remaining,remainingDanger;
State currentState=NOTHING;
inDanger=0;
interact=interact_load(PATH);
interface=interface_ini();
interface_start(interact,interface);
ini = time(&ini);
while(inDanger==0) {
    noDangerPlay: clk = time(&clk);
    remaining= TIME - difftime(clk,ini);
		currentState=interact_play(currentState,interact);
		if(currentState==QUIT2 || remaining<=0){
			end = 1;
			GetEnd(interact);
		}
		inDanger=interact_getDanger(interact);
		interface_play(interact,interface,currentState);
		interact_updateClk(remaining,interact);
	}
	if(inDanger==1){
		iniDanger = time(&iniDanger);

		while(inDanger==1){
			clkDanger = time(&clkDanger);
			remainingDanger = DANGERTIME - difftime(clkDanger,iniDanger);
			currentState=interact_play(currentState,interact);
			if(currentState==QUIT2 || remainingDanger<=0) {
				if(remainingDanger<=0) end = 2;
				else end = 1;
				GetEnd(interact);
			}
			inDanger=interact_getDanger(interact);
			interface_play(interact,interface,currentState);
			interact_updateClk(remaining,interact);
		}

		goto noDangerPlay;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movw $0x0, 0x83e7(%rip)      # 0xa138
leaq 0x43ae(%rip), %rdi      # 0x6106
callq 0x42e8
movq %rax, %rbx
xorl %eax, %eax
callq 0x4f44
movq %rax, %r14
movq %rbx, %rdi
movq %rax, %rsi
callq 0x58df
leaq 0x28(%rsp), %r15
movq %r15, %rdi
callq 0x1110
movq %rax, (%r15)
movl $0x2, %ebp
leaq 0x18(%rsp), %r15
leaq 0x20(%rsp), %r12
leaq 0x30(%rsp), %r13
movzwl 0x8398(%rip), %eax      # 0xa138
cmpl $0x1, %eax
je 0x1e37
testl %eax, %eax
jne 0x1ebf
movq %r13, %rdi
callq 0x1110
movq %rax, 0x30(%rsp)
movq 0x28(%rsp), %rsi
movq %rax, %rdi
callq 0x10b0
movsd %xmm0, 0x8(%rsp)
movl %ebp, %edi
movq %rbx, %rsi
callq 0x46a4
cmpl $0x1, %eax
je 0x1eed
movsd 0x4224(%rip), %xmm1     # 0x6010
subsd 0x8(%rsp), %xmm1
xorpd %xmm0, %xmm0
movsd %xmm1, 0x10(%rsp)
ucomisd %xmm1, %xmm0
jae 0x1eed
movl %eax, %ebp
movq %rbx, %rdi
callq 0x45a9
movw %ax, 0x8321(%rip)       # 0xa138
movq %rbx, %rdi
movq %r14, %rsi
movl %ebp, %edx
callq 0x592d
movsd 0x10(%rsp), %xmm0
movq %rbx, %rdi
callq 0x461f
jmp 0x1d99
movq %r15, %rdi
callq 0x1110
movq %rax, 0x18(%rsp)
cmpw $0x1, 0x82ec(%rip)      # 0xa138
jne 0x1db1
movq %r12, %rdi
callq 0x1110
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rsi
movq %rax, %rdi
callq 0x10b0
movsd %xmm0, 0x8(%rsp)
movl %ebp, %edi
movq %rbx, %rsi
callq 0x46a4
movsd 0x8(%rsp), %xmm0
cmpl $0x1, %eax
je 0x1ece
ucomisd 0x4179(%rip), %xmm0     # 0x6008
jae 0x1ece
movl %eax, %ebp
movq %rbx, %rdi
callq 0x45a9
movw %ax, 0x8296(%rip)       # 0xa138
movq %rbx, %rdi
movq %r14, %rsi
movl %ebp, %edx
callq 0x592d
movsd 0x10(%rsp), %xmm0
movq %rbx, %rdi
callq 0x461f
jmp 0x1e44
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
ucomisd 0x4132(%rip), %xmm0     # 0x6008
movw $0x1, %ax
sbbw $-0x1, %ax
movw %ax, 0x8255(%rip)       # 0xa13a
movq %rbx, %rdi
callq 0x180f
movw $0x1, 0x8244(%rip)      # 0xa13a
jmp 0x1ee5