// File: /workspace/github_cpp_makefile_star2_O1/Silica[P]PSL/./PSL/parser.h
// Function: PSL::variable::Parser::ParseStatement(PSL::variable&, PSL::variable&)
void ParseStatement(variable &g, variable &c)
	{
		int n = t->checkNext();
		if (n == ';')	// empty
		{
			t->getNext();
			return;
		}
		#ifdef PSL_DEBUG
		c.pushlabel(t->getFile() + " " + t->getLine());
		#endif
		if (n == '{'/*'}'*/)	// anonymouse scope
		{
			t->getNext();
			variable v;
			ParseBlock(g, v);
			if (v.codelength())
				c.pushcode(new Variable::SCOPE(v.getcode()));
			return;
		}
		if (n == Tokenizer::IDENTIFIER)
		{
			if (t->nstr == "global" || t->nstr == "static" || t->nstr == "local" || t->nstr == "yield")
			{
				c.pushcode(new Variable::POP);
				ParseExpression(c, ';');
				return;
			}
			t->getNext();
			if (t->nstr == "if")
			{
				ParseIf(g, c);
				return;
			}
			if (t->nstr == "for")
			{
				ParseFor(g, c);
				return;
			}
			if (t->nstr == "while")
			{
				ParseWhile(g, c);
				return;
			}
			if (t->nstr == "return")
			{
				if (t->checkNext() != ';')
				{
					c.pushcode(new Variable::POP);
					ParseExpression(c, ';');
				}
				c.pushcode(new Variable::RETURN);
				return;
			}
			if (t->nstr == "continue")
			{
				if (!t->getNextIf(';'))	Error(TINA, ';', "continue");
				c.pushcode(new Variable::CONTINUE);
				return;
			}
			if (t->nstr == "break")
			{
				if (!t->getNextIf(';'))	Error(TINA, ';', "break");
				c.pushcode(new Variable::BREAK);
				return;
			}
			if (t->nstr == "goto")
			{
				if (!t->getNextIf(Tokenizer::IDENTIFIER))
					Error(TINLAG);
				else
				{
					c.pushcode(new Variable::GOTO(t->nstr));
					if (!t->getNextIf(';'))
						Error(TINA, ';', "goto");
				}
				return;
			}

			string name = t->nstr;
			int line = t->getLine();
			n = t->checkNext();
			if (n == ':')	// label
			{
				t->getNext();
				c.pushlabel(name);
				return;
			}
			if (n == '{'/*'}'*/)	// class definition
			{
				t->getNext();
				if (g.exist(name))
					Error(IIAE, 0, name, line);
				variable m = g[name];
				ParseBlock(m, m);
				return;
			}
			if (n == '('/*')'*/)
			{
				variable arg;
				t->getNext();
				if (!t->getNextIf(/*'('*/')'))
					ParseExpression(arg, /*'('*/')');
				else
					arg.pushcode(new Variable::PUSH_NULL);
				n = t->checkNext();
				if (n == '{'/*'}'*/ || n == Tokenizer::IDENTIFIER)	// function definition
				{
					if (g.exist(name))
						Error(IIAE, 0, name, line);
					variable m = g[name];
					m = arg;
					m.pushcode(new Variable::ARGUMENT);
					if (n == '{'/*'}'*/)
					{
						t->getNext();
						ParseBlock(m, m);
					}
					else if (n == Tokenizer::IDENTIFIER)
						ParseStatement(m, m);
					return;
				}
				else	// call
				{
					c.pushcode(new Variable::POP);
					c.pushcode(new Variable::VARIABLE(name));
					c.getcode()->push(arg.getcode());
					c.pushcode(new Variable::CALL);
				}
			}
			else
			{
				c.pushcode(new Variable::POP);
				c.pushcode(new Variable::VARIABLE(name));
			}
			getSuffOp(c);
			if (t->getNextIf(Tokenizer::IDENTIFIER))
			{
				c.pushcode(new Variable::INSTANCE);
				c.pushcode(new Variable::DECLARATION(t->nstr));
				getSuffOp(c);
			}
			ParseExpression(c, ';', true);
		}
		else
		{
			c.pushcode(new Variable::POP);
			ParseExpression(c, ';');
		}
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdx, %rbx
movq %rsi, %r15
movq %rdi, %r14
movq (%rdi), %r12
movl 0x38(%r12), %eax
testl %eax, %eax
jns 0x18c62
movq %r12, %rdi
callq 0x199bc
movl %eax, 0x38(%r12)
cmpl $0x1, %eax
je 0x18ca7
cmpl $0x7b, %eax
je 0x18c8e
cmpl $0x3b, %eax
jne 0x18d07
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x18dd0
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x18dc1
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x18d48
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x18d4f
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfbd7(%rip), %rsi      # 0x2888c
callq 0x1b0f8
testb %al, %al
jne 0x18d07
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfbc7(%rip), %rsi      # 0x28893
callq 0x1b0f8
testb %al, %al
jne 0x18d07
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfbb7(%rip), %rsi      # 0x2889a
callq 0x1b0f8
testb %al, %al
jne 0x18d07
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfba6(%rip), %rsi      # 0x288a0
callq 0x1b0f8
testb %al, %al
je 0x18de5
callq 0xf762
leaq 0x23fa5(%rip), %rcx     # 0x3ccb8
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
movq %r14, %rdi
movq %rbx, %rsi
movl $0x3b, %edx
xorl %ecx, %ecx
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1b500
jns 0x18d4f
callq 0x199bc
movq %rsp, %r12
movq %r12, %rdi
callq 0x1303e
movq %r14, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x1b424
movq (%rsp), %rax
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x180(%rax)
testq %rax, %rax
je 0x18db8
callq 0x10058
movq %rax, %r14
movq (%rsp), %rax
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x188(%rax)
leaq 0x23e24(%rip), %rcx     # 0x3cbc0
movq %rcx, (%r14)
incl 0x30(%rax)
movq %rax, 0x8(%r14)
movq (%rbx), %rax
movq (%rax), %rdi
movq (%rdi), %rax
movq %r14, %rsi
callq *0x190(%rax)
movq (%rsp), %rdi
callq 0xfc04
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jns 0x18dc1
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x199bc
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x18df7
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x18dfe
jns 0x18dfe
callq 0x199bc
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfa28(%rip), %rsi      # 0x28834
callq 0x1b0f8
testb %al, %al
je 0x18e31
movq %r14, %rdi
movq %r15, %rsi
movq %rbx, %rdx
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1b582
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfa67(%rip), %rsi      # 0x288a6
callq 0x1b0f8
testb %al, %al
je 0x18e64
movq %r14, %rdi
movq %r15, %rsi
movq %rbx, %rdx
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1b814
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfa38(%rip), %rsi      # 0x288aa
callq 0x1b0f8
testb %al, %al
je 0x18e97
movq %r14, %rdi
movq %r15, %rsi
movq %rbx, %rdx
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1bb9a
movq (%r14), %rdi
addq $0x68, %rdi
leaq 0xfa0b(%rip), %rsi      # 0x288b0
callq 0x1b0f8
movq (%r14), %r12
testb %al, %al
je 0x18f10
movl 0x38(%r12), %eax
testl %eax, %eax
jns 0x18ec7
movq %r12, %rdi
callq 0x199bc
movl %eax, 0x38(%r12)
cmpl $0x3b, %eax
je 0x18eff
callq 0xf762
leaq 0x23de0(%rip), %rcx     # 0x3ccb8
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
movq %r14, %rdi
movq %rbx, %rsi
movl $0x3b, %edx
xorl %ecx, %ecx
callq 0x1b500
callq 0xf762
leaq 0x254fd(%rip), %rcx     # 0x3e408
jmp 0x19063
addq $0x68, %r12
leaq 0xf99c(%rip), %rsi      # 0x288b7
movq %r12, %rdi
callq 0x1b0f8
movq (%r14), %r12
testb %al, %al
je 0x18f50
movl 0x38(%r12), %eax
testl %eax, %eax
jns 0x18f40
movq %r12, %rdi
callq 0x199bc
movl %eax, 0x38(%r12)
cmpl $0x3b, %eax
jne 0x18f97
movl $0xffffffff, 0x38(%r12) # imm = 0xFFFFFFFF
jmp 0x18fb6
addq $0x68, %r12
leaq 0xf965(%rip), %rsi      # 0x288c0
movq %r12, %rdi
callq 0x1b0f8
movq (%r14), %r12
testb %al, %al
je 0x18fc7
movl 0x38(%r12), %eax
testl %eax, %eax
jns 0x18f80
movq %r12, %rdi
callq 0x199bc
movl %eax, 0x38(%r12)
cmpl $0x3b, %eax
jne 0x19038
movl $0xffffffff, 0x38(%r12) # imm = 0xFFFFFFFF
jmp 0x19057
leaq 0xf919(%rip), %rcx      # 0x288b7
movq %r14, %rdi
movl $0x2, %esi
movl $0x3b, %edx
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
callq 0x1bdbc
callq 0xf762
leaq 0x254ae(%rip), %rcx     # 0x3e470
jmp 0x19063
addq $0x68, %r12
leaq 0xfb5c(%rip), %rsi      # 0x28b2e
movq %r12, %rdi
callq 0x1b0f8
testb %al, %al
je 0x19089
movq (%r14), %r15
movl 0x38(%r15), %eax
testl %eax, %eax
jns 0x18ff9
movq %r15, %rdi
callq 0x199bc
movl %eax, 0x38(%r15)
cmpl $0x1, %eax
jne 0x19099
movl $0xffffffff, 0x38(%r15) # imm = 0xFFFFFFFF
callq 0x10058
movq (%r14), %rcx
leaq 0x25527(%rip), %rdx     # 0x3e540
movq %rdx, (%rax)
movq $0x0, 0x8(%rax)
movq 0x68(%rcx), %rcx
testq %rcx, %rcx
je 0x19184
incl (%rcx)
jmp 0x19186
leaq 0xf881(%rip), %rcx      # 0x288c0
movq %r14, %rdi
movl $0x2, %esi
movl $0x3b, %edx
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
callq 0x1bdbc
callq 0xf762
leaq 0x25475(%rip), %rcx     # 0x3e4d8
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq 0x190(%rcx), %rcx
movq %rax, %rsi
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmpq *%rcx
movq (%r14), %rdi
movq 0x68(%rdi), %rax
testq %rax, %rax
je 0x190af
incl (%rax)
jmp 0x190b1
leaq 0xf652(%rip), %rcx      # 0x286f2
movq %r14, %rdi
movl $0x4, %esi
xorl %edx, %edx
jmp 0x191d6
xorl %eax, %eax
movq %rax, (%rsp)
callq 0x1bf6c
movl %eax, %r12d
movq (%r14), %r13
movl 0x38(%r13), %eax
testl %eax, %eax
jns 0x190d4
movq %r13, %rdi
callq 0x199bc
movl %eax, 0x38(%r13)
cmpl $0x28, %eax
je 0x19115
cmpl $0x7b, %eax
je 0x190fc
cmpl $0x3a, %eax
jne 0x19138
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x19232
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x19239
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x191ef
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x191f6
leaq 0x8(%rsp), %rdi
callq 0x1303e
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x19250
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x19257
callq 0xf762
leaq 0x23b74(%rip), %rcx     # 0x3ccb8
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
callq 0x10058
leaq 0x25443(%rip), %rcx     # 0x3e5a8
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq (%rsp), %rcx
testq %rcx, %rcx
je 0x19313
incl (%rcx)
jmp 0x19315
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
movq (%r14), %rbx
movl 0x38(%rbx), %eax
testl %eax, %eax
jns 0x191b1
movq %rbx, %rdi
callq 0x199bc
movl %eax, 0x38(%rbx)
cmpl $0x3b, %eax
jne 0x191c2
movl $0xffffffff, 0x38(%rbx) # imm = 0xFFFFFFFF
jmp 0x18dc1
leaq 0xf965(%rip), %rcx      # 0x28b2e
movq %r14, %rdi
movl $0x2, %esi
movl $0x3b, %edx
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1bdbc
jns 0x191f6
callq 0x199bc
movq (%r15), %rax
movq (%rax), %rdi
movq (%rdi), %rax
movq %rsp, %rsi
callq *0x118(%rax)
testb %al, %al
je 0x19395
movq (%rsp), %rax
testq %rax, %rax
je 0x1937c
movq 0x8(%rax), %rcx
movq 0x18(%rax), %rdx
movb $0x0, (%rcx,%rdx)
movq 0x8(%rax), %rcx
jmp 0x19383
jns 0x19239
callq 0x199bc
movq (%rbx), %rax
movq (%rax), %rdi
movq (%rdi), %rax
movq %rsp, %rsi
callq *0x198(%rax)
jmp 0x195e2
jns 0x19257
callq 0x199bc
movq (%r14), %r13
movl 0x38(%r13), %eax
testl %eax, %eax
jns 0x1926e
movq %r13, %rdi
callq 0x199bc
movl %eax, 0x38(%r13)
cmpl $0x29, %eax
jne 0x192a0
movl $0xffffffff, 0x38(%r13) # imm = 0xFFFFFFFF
callq 0xf762
leaq 0x23801(%rip), %rcx     # 0x3ca88
movq %rcx, (%rax)
movq 0x8(%rsp), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
jmp 0x192b4
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
movl $0x29, %edx
xorl %ecx, %ecx
callq 0x1b500
movq (%r14), %r13
movl 0x38(%r13), %ebp
testl %ebp, %ebp
jns 0x192cd
movq %r13, %rdi
callq 0x199bc
movl %eax, %ebp
movl %eax, 0x38(%r13)
cmpl $0x7b, %ebp
je 0x192d7
cmpl $0x1, %ebp
jne 0x19330
movq (%r15), %rax
movq (%rax), %rdi
movq (%rdi), %rax
movq %rsp, %rsi
callq *0x118(%rax)
testb %al, %al
je 0x193ec
movq (%rsp), %rax
testq %rax, %rax
je 0x193d3
movq 0x8(%rax), %rcx
movq 0x18(%rax), %rdx
movb $0x0, (%rcx,%rdx)
movq 0x8(%rax), %rcx
jmp 0x193da
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
jmp 0x19533
callq 0xf762
leaq 0x2397c(%rip), %rcx     # 0x3ccb8
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
callq 0x10058
leaq 0x2524b(%rip), %rcx     # 0x3e5a8
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movq (%rsp), %rcx
testq %rcx, %rcx
je 0x1948d
incl (%rcx)
jmp 0x1948f
leaq 0xf36f(%rip), %rcx      # 0x286f2
movq %r14, %rdi
movl $0xb, %esi
xorl %edx, %edx
movl %r12d, %r8d
callq 0x1bdbc
movq (%r15), %rbx
movq (%rbx), %rdi
movq (%rdi), %rax
movq %rsp, %rsi
callq *0x128(%rax)
testq %rax, %rax
cmovneq %rax, %rbx
incl 0x8(%rbx)
leaq 0x8(%rsp), %rdx
movq %rbx, (%rdx)
movq %r14, %rdi
movq %rdx, %rsi
callq 0x1b424
movq 0x8(%rsp), %rdi
callq 0xfc04
jmp 0x195e2
leaq 0xf318(%rip), %rcx      # 0x286f2
movq %r14, %rdi
movl $0xb, %esi
xorl %edx, %edx
movl %r12d, %r8d
callq 0x1bdbc
movq (%r15), %r15
movq (%r15), %rdi
movq (%rdi), %rax
movq %rsp, %rsi
callq *0x128(%rax)
testq %rax, %rax
cmovneq %rax, %r15
incl 0x8(%r15)
movq %r15, 0x10(%rsp)
movq 0x8(%rsp), %rsi
movq (%r15), %rdi
movq (%rdi), %rax
callq *0x38(%rax)
movq %rax, (%r15)
movq (%rax), %rcx
movq %rax, %rdi
movq %r15, %rsi
callq *0x158(%rcx)
callq 0xf762
leaq 0x2371e(%rip), %rcx     # 0x3cb58
movq %rcx, (%rax)
movq 0x10(%rsp), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
cmpl $0x1, %ebp
je 0x19478
cmpl $0x7b, %ebp
jne 0x1950d
movq (%r14), %rdi
cmpl $0x0, 0x38(%rdi)
jle 0x194f6
movl $0xffffffff, 0x38(%rdi) # imm = 0xFFFFFFFF
jmp 0x194fd
leaq 0x10(%rsp), %rdx
movq %r14, %rdi
movq %rdx, %rsi
callq 0x18c32
jmp 0x1950d
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
movq (%rbx), %rax
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x188(%rax)
movq %rax, %r15
movq 0x8(%rsp), %rax
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x188(%rax)
movq %r15, %rdi
movq %rax, %rsi
callq 0x13f52
callq 0xf762
leaq 0x25131(%rip), %rcx     # 0x3e610
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
jmp 0x19517
jns 0x194fd
callq 0x199bc
leaq 0x10(%rsp), %rdx
movq %r14, %rdi
movq %rdx, %rsi
callq 0x1b424
movq 0x10(%rsp), %rdi
callq 0xfc04
movq 0x8(%rsp), %rdi
callq 0xfc04
cmpl $0x1, %ebp
je 0x195e2
cmpl $0x7b, %ebp
je 0x195e2
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1bfa0
movq (%r14), %r15
movl 0x38(%r15), %eax
testl %eax, %eax
jns 0x19555
movq %r15, %rdi
callq 0x199bc
movl %eax, 0x38(%r15)
cmpl $0x1, %eax
jne 0x195cd
movl $0xffffffff, 0x38(%r15) # imm = 0xFFFFFFFF
callq 0xf762
leaq 0x252aa(%rip), %rcx     # 0x3e818
movq %rcx, (%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
callq 0x10058
movq (%r14), %rcx
leaq 0x252ee(%rip), %rdx     # 0x3e880
movq %rdx, (%rax)
movq $0x0, 0x8(%rax)
movq 0x68(%rcx), %rcx
testq %rcx, %rcx
je 0x195aa
incl (%rcx)
jmp 0x195ac
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movq (%rbx), %rcx
movq (%rcx), %rdi
movq (%rdi), %rcx
movq %rax, %rsi
callq *0x190(%rcx)
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1bfa0
movq %r14, %rdi
movq %rbx, %rsi
movl $0x3b, %edx
movl $0x1, %ecx
callq 0x1b500
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x18dc1
callq 0xfbc0
jmp 0x18dc1
jmp 0x1966e
jmp 0x19627
jmp 0x1966e
jmp 0x1966e
movq %rax, %rbx
movq 0x8(%rsp), %rdi
callq 0xfc04
jmp 0x1963b
jmp 0x1966e
jmp 0x19638
jmp 0x19638
movq %rax, %rbx
movq 0x10(%rsp), %rdi
callq 0xfc04
jmp 0x1962a
jmp 0x1966e
movq %rax, %rbx
movq 0x8(%rsp), %rdi
callq 0xfc04
jmp 0x1963b
jmp 0x1966e
movq %rax, %rbx
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19666
callq 0xfbc0
jmp 0x19666
movq %rax, %rbx
movq %r14, %rdi
callq 0x1b4dc
jmp 0x1965d
jmp 0x1966e
movq %rax, %rbx
movq (%rsp), %rdi
callq 0xfc04
movq %rbx, %rdi
callq 0xc290
movq %rax, %rdi
callq 0xde83