// File: menhits[P]phplus/src/Actions/BranchAction.cpp
// Function: BranchAction::BranchAction(std::shared_ptr<ActionData>, std::shared_ptr<ActionData>, std::shared_ptr<ActionData>)
BranchAction(Action leftInputIn, Action actionIn, Action rightInputIn)
			:ActionData(actionIn->getReturnType(), Void, Void)
	{
		if (!actionIn)
			throw PhplusError(string() + "branch action created sent null action", INTERNAL_ERROR);
		
		if (!leftInputIn)
			throw PhplusError(string() + "branch action created sent null leftInput", INTERNAL_ERROR);
		
		if (!rightInputIn)
			throw PhplusError(string() + "branch action created sent null rightInput", INTERNAL_ERROR);
		
		action=actionIn;
		leftInput=leftInputIn;
		rightInput=rightInputIn;
		
		if (!leftInput->getInLeftType()->matches(Void) || !leftInput->getInRightType()->matches(Void))
		{
			throw PhplusError(leftInput->getDescription() + " put into branch even though its inputs are not void", INTERNAL_ERROR);
		}
		
		if (!rightInput->getInLeftType()->matches(Void) || !rightInput->getInRightType()->matches(Void))
		{
			throw PhplusError(rightInput->getDescription() + " put into branch even though its inputs are not void", INTERNAL_ERROR);
		}
		
		if (!leftInput->getReturnType()->matches(action->getInLeftType()))
		{
			throw PhplusError(leftInput->getDescription() + " return type is not the same as the left input of " + action->getDescription(), INTERNAL_ERROR);
		}
		
		if (!rightInput->getReturnType()->matches(action->getInRightType()))
		{
			throw PhplusError(rightInput->getDescription() + " return type is not the same as the right input of " + action->getDescription(), INTERNAL_ERROR);
		}
	}

// Assembly:
subq $0x558, %rsp            # imm = 0x558
movq %rdx, 0x158(%rsp)
movq %rdi, %rax
movq 0x158(%rsp), %rdi
movq %rsi, 0x160(%rsp)
movq %rdi, 0x168(%rsp)
movq %rcx, 0x170(%rsp)
movq %rax, 0x550(%rsp)
movq %rsi, 0x548(%rsp)
movq %rdi, 0x540(%rsp)
movq %rcx, 0x538(%rsp)
movq 0x550(%rsp), %rax
movq %rax, 0x180(%rsp)
callq 0x1bb50
movq %rax, %rdi
callq 0x1bed0
movq %rax, %rsi
leaq 0x528(%rsp), %rdi
movq %rdi, 0x188(%rsp)
callq 0x1a920
leaq 0x6341a(%rip), %rsi     # 0x1184a8
movq %rsi, 0x178(%rsp)
leaq 0x518(%rsp), %rdi
movq %rdi, 0x190(%rsp)
callq 0x1a920
movq 0x178(%rsp), %rsi
leaq 0x508(%rsp), %rdi
movq %rdi, 0x198(%rsp)
callq 0x1a920
movq 0x180(%rsp), %rdi
movq 0x188(%rsp), %rsi
movq 0x190(%rsp), %rdx
movq 0x198(%rsp), %rcx
callq 0xaf570
jmp 0xb50ef
leaq 0x508(%rsp), %rdi
callq 0x1a950
leaq 0x518(%rsp), %rdi
callq 0x1a950
leaq 0x528(%rsp), %rdi
callq 0x1a950
movq 0x180(%rsp), %rdi
leaq 0x6231b(%rip), %rax     # 0x117440
addq $0x10, %rax
movq %rax, (%rdi)
addq $0x78, %rdi
movq %rdi, 0x140(%rsp)
callq 0x1bcc0
movq 0x180(%rsp), %rdi
addq $0x88, %rdi
movq %rdi, 0x148(%rsp)
callq 0x1bcc0
movq 0x180(%rsp), %rdi
addq $0x98, %rdi
movq %rdi, 0x150(%rsp)
callq 0x1bcc0
movq 0x168(%rsp), %rdi
callq 0x1be40
testb $0x1, %al
jne 0xb52eb
movb $0x1, 0x4a7(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq %rax, 0x130(%rsp)
leaq 0x4b8(%rsp), %rdi
movq %rdi, 0x138(%rsp)
callq 0xb4e0
movq 0x138(%rsp), %rsi
leaq 0x21ddf(%rip), %rdx     # 0xd6fa7
leaq 0x4d8(%rsp), %rdi
callq 0xfa60
jmp 0xb51d7
xorl %eax, %eax
movl %eax, %esi
leaq 0x4a8(%rsp), %rdi
movq %rdi, 0x128(%rsp)
callq 0xfbe0
movq 0x130(%rsp), %rdi
movq 0x128(%rsp), %rcx
leaq 0x4d8(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb5214
movq 0x130(%rsp), %rdi
movb $0x0, 0x4a7(%rsp)
leaq 0x6039d(%rip), %rsi     # 0x1155c8
leaq -0x9abc2(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x508(%rsp), %rdi
callq 0x1a950
leaq 0x518(%rsp), %rdi
callq 0x1a950
leaq 0x528(%rsp), %rdi
callq 0x1a950
jmp 0xb6094
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb52c0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x4a8(%rsp), %rdi
callq 0xfc00
leaq 0x4d8(%rsp), %rdi
callq 0xb6e8
leaq 0x4b8(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x4a7(%rsp)
jne 0xb52d9
jmp 0xb52e6
movq 0x130(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
movq 0x160(%rsp), %rdi
callq 0x1be40
testb $0x1, %al
jne 0xb5421
movb $0x1, 0x44f(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq %rax, 0x118(%rsp)
leaq 0x460(%rsp), %rdi
movq %rdi, 0x120(%rsp)
callq 0xb4e0
movq 0x120(%rsp), %rsi
leaq 0x21d3f(%rip), %rdx     # 0xd707d
leaq 0x480(%rsp), %rdi
callq 0xfa60
jmp 0xb534d
xorl %eax, %eax
movl %eax, %esi
leaq 0x450(%rsp), %rdi
movq %rdi, 0x110(%rsp)
callq 0xfbe0
movq 0x118(%rsp), %rdi
movq 0x110(%rsp), %rcx
leaq 0x480(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb538a
movq 0x118(%rsp), %rdi
movb $0x0, 0x44f(%rsp)
leaq 0x60227(%rip), %rsi     # 0x1155c8
leaq -0x9ad38(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb53f6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x450(%rsp), %rdi
callq 0xfc00
leaq 0x480(%rsp), %rdi
callq 0xb6e8
leaq 0x460(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x44f(%rsp)
jne 0xb540f
jmp 0xb541c
movq 0x118(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
movq 0x170(%rsp), %rdi
callq 0x1be40
testb $0x1, %al
jne 0xb5557
movb $0x1, 0x3f7(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq %rax, 0x100(%rsp)
leaq 0x408(%rsp), %rdi
movq %rdi, 0x108(%rsp)
callq 0xb4e0
movq 0x108(%rsp), %rsi
leaq 0x21b5a(%rip), %rdx     # 0xd6fce
leaq 0x428(%rsp), %rdi
callq 0xfa60
jmp 0xb5483
xorl %eax, %eax
movl %eax, %esi
leaq 0x3f8(%rsp), %rdi
movq %rdi, 0xf8(%rsp)
callq 0xfbe0
movq 0x100(%rsp), %rdi
movq 0xf8(%rsp), %rcx
leaq 0x428(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb54c0
movq 0x100(%rsp), %rdi
movb $0x0, 0x3f7(%rsp)
leaq 0x600f1(%rip), %rsi     # 0x1155c8
leaq -0x9ae6e(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb552c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x3f8(%rsp), %rdi
callq 0xfc00
leaq 0x428(%rsp), %rdi
callq 0xb6e8
leaq 0x408(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x3f7(%rsp)
jne 0xb5545
jmp 0xb5552
movq 0x100(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
movq 0x180(%rsp), %rdi
movq 0x168(%rsp), %rsi
addq $0x78, %rdi
callq 0x1a510
movq 0x160(%rsp), %rsi
movq 0x180(%rsp), %rdi
addq $0x88, %rdi
movq %rdi, 0xd8(%rsp)
callq 0x1a510
movq 0x180(%rsp), %rdi
movq 0x170(%rsp), %rsi
addq $0x98, %rdi
callq 0x1a510
movq 0xd8(%rsp), %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x3f060
movq %rax, %rdi
callq 0x1a660
movq %rax, 0xe0(%rsp)
leaq 0x62ecc(%rip), %rsi     # 0x1184a8
leaq 0x3e0(%rsp), %rdi
movq %rdi, 0xe8(%rsp)
callq 0x1a920
movq 0xe0(%rsp), %rdi
movq 0xe8(%rsp), %rsi
movb $0x0, 0x3cf(%rsp)
callq 0x9f1a0
movb %al, 0xf7(%rsp)
jmp 0xb5617
movb 0xf7(%rsp), %cl
movb $0x1, %al
testb $0x1, %cl
movb %al, 0xd7(%rsp)
jne 0xb562e
jmp 0xb56ac
movq 0x180(%rsp), %rdi
addq $0x88, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x3f070
movq %rax, %rdi
callq 0x1a660
movq %rax, 0xc0(%rsp)
leaq 0x62e47(%rip), %rsi     # 0x1184a8
leaq 0x3d0(%rsp), %rdi
movq %rdi, 0xc8(%rsp)
callq 0x1a920
movq 0xc0(%rsp), %rdi
movq 0xc8(%rsp), %rsi
movb $0x1, 0x3cf(%rsp)
callq 0x9f1a0
movb %al, 0xd6(%rsp)
jmp 0xb569c
movb 0xd6(%rsp), %al
xorb $-0x1, %al
movb %al, 0xd7(%rsp)
movb 0xd7(%rsp), %al
movb %al, 0xbf(%rsp)
testb $0x1, 0x3cf(%rsp)
jne 0xb56c6
jmp 0xb56d3
leaq 0x3d0(%rsp), %rdi
callq 0x1a950
leaq 0x3e0(%rsp), %rdi
callq 0x1a950
movb 0xbf(%rsp), %al
testb $0x1, %al
jne 0xb56f0
jmp 0xb5893
movb $0x1, 0x377(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq 0x180(%rsp), %rdi
movq %rax, 0xb0(%rsp)
addq $0x88, %rdi
callq 0x1bb50
movq %rax, %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq 0x388(%rsp), %rdi
callq *%rax
jmp 0xb5734
leaq 0x218be(%rip), %rdx     # 0xd6ff9
leaq 0x3a8(%rsp), %rdi
leaq 0x388(%rsp), %rsi
callq 0xfa60
jmp 0xb5752
xorl %eax, %eax
movl %eax, %esi
leaq 0x378(%rsp), %rdi
movq %rdi, 0xa8(%rsp)
callq 0xfbe0
movq 0xb0(%rsp), %rdi
movq 0xa8(%rsp), %rcx
leaq 0x3a8(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb578f
movq 0xb0(%rsp), %rdi
movb $0x0, 0x377(%rsp)
leaq 0x5fe22(%rip), %rsi     # 0x1155c8
leaq -0x9b13d(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb57fc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
testb $0x1, 0x3cf(%rsp)
jne 0xb57ed
jmp 0xb57fa
leaq 0x3d0(%rsp), %rdi
callq 0x1a950
jmp 0xb57fc
leaq 0x3e0(%rsp), %rdi
callq 0x1a950
jmp 0xb6060
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5875
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5868
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x378(%rsp), %rdi
callq 0xfc00
leaq 0x3a8(%rsp), %rdi
callq 0xb6e8
leaq 0x388(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x377(%rsp)
jne 0xb5881
jmp 0xb588e
movq 0xb0(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
movq 0x180(%rsp), %rdi
addq $0x98, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x3f060
movq %rax, %rdi
callq 0x1a660
movq %rax, 0x90(%rsp)
leaq 0x62be2(%rip), %rsi     # 0x1184a8
leaq 0x360(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0x1a920
movq 0x90(%rsp), %rdi
movq 0x98(%rsp), %rsi
movb $0x0, 0x34f(%rsp)
callq 0x9f1a0
movb %al, 0xa7(%rsp)
jmp 0xb5901
movb 0xa7(%rsp), %cl
movb $0x1, %al
testb $0x1, %cl
movb %al, 0x8f(%rsp)
jne 0xb5918
jmp 0xb5990
movq 0x180(%rsp), %rdi
addq $0x98, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x3f070
movq %rax, %rdi
callq 0x1a660
movq %rax, 0x78(%rsp)
leaq 0x62b60(%rip), %rsi     # 0x1184a8
leaq 0x350(%rsp), %rdi
movq %rdi, 0x80(%rsp)
callq 0x1a920
movq 0x78(%rsp), %rdi
movq 0x80(%rsp), %rsi
movb $0x1, 0x34f(%rsp)
callq 0x9f1a0
movb %al, 0x8e(%rsp)
jmp 0xb5980
movb 0x8e(%rsp), %al
xorb $-0x1, %al
movb %al, 0x8f(%rsp)
movb 0x8f(%rsp), %al
movb %al, 0x77(%rsp)
testb $0x1, 0x34f(%rsp)
jne 0xb59a7
jmp 0xb59b4
leaq 0x350(%rsp), %rdi
callq 0x1a950
leaq 0x360(%rsp), %rdi
callq 0x1a950
movb 0x77(%rsp), %al
testb $0x1, %al
jne 0xb59ce
jmp 0xb5b5f
movb $0x1, 0x2f7(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq 0x180(%rsp), %rdi
movq %rax, 0x68(%rsp)
addq $0x98, %rdi
callq 0x1bb50
movq %rax, %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq 0x308(%rsp), %rdi
callq *%rax
jmp 0xb5a0f
leaq 0x215e3(%rip), %rdx     # 0xd6ff9
leaq 0x328(%rsp), %rdi
leaq 0x308(%rsp), %rsi
callq 0xfa60
jmp 0xb5a2d
xorl %eax, %eax
movl %eax, %esi
leaq 0x2f8(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0xfbe0
movq 0x68(%rsp), %rdi
movq 0x60(%rsp), %rcx
leaq 0x328(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb5a61
movq 0x68(%rsp), %rdi
movb $0x0, 0x2f7(%rsp)
leaq 0x5fb53(%rip), %rsi     # 0x1155c8
leaq -0x9b40c(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5acb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
testb $0x1, 0x34f(%rsp)
jne 0xb5abc
jmp 0xb5ac9
leaq 0x350(%rsp), %rdi
callq 0x1a950
jmp 0xb5acb
leaq 0x360(%rsp), %rdi
callq 0x1a950
jmp 0xb6060
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5b44
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5b37
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x2f8(%rsp), %rdi
callq 0xfc00
leaq 0x328(%rsp), %rdi
callq 0xb6e8
leaq 0x308(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x2f7(%rsp)
jne 0xb5b50
jmp 0xb5b5a
movq 0x68(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
movq 0x180(%rsp), %rdi
addq $0x88, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x1bed0
movq %rax, %rdi
callq 0x1a660
movq 0x180(%rsp), %rdi
movq %rax, 0x48(%rsp)
addq $0x78, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x3f060
movq %rax, %rsi
leaq 0x2e0(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0x1a920
movq 0x48(%rsp), %rdi
movq 0x50(%rsp), %rsi
callq 0x9f1a0
movb %al, 0x5f(%rsp)
jmp 0xb5bcb
movb 0x5f(%rsp), %al
xorb $-0x1, %al
movb %al, 0x47(%rsp)
leaq 0x2e0(%rsp), %rdi
callq 0x1a950
movb 0x47(%rsp), %al
testb $0x1, %al
jne 0xb5bef
jmp 0xb5dde
movb $0x1, 0x24f(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq 0x180(%rsp), %rdi
movq %rax, 0x38(%rsp)
addq $0x88, %rdi
callq 0x1bb50
movq %rax, %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq 0x280(%rsp), %rdi
callq *%rax
jmp 0xb5c30
leaq 0x21470(%rip), %rdx     # 0xd70a7
leaq 0x2a0(%rsp), %rdi
leaq 0x280(%rsp), %rsi
callq 0xfa60
jmp 0xb5c4e
movq 0x180(%rsp), %rdi
addq $0x78, %rdi
callq 0x1bb50
movq %rax, %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq 0x260(%rsp), %rdi
callq *%rax
jmp 0xb5c75
leaq 0x2c0(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
leaq 0x260(%rsp), %rdx
callq 0x1bf20
jmp 0xb5c94
xorl %eax, %eax
movl %eax, %esi
leaq 0x250(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0xfbe0
movq 0x38(%rsp), %rdi
movq 0x30(%rsp), %rcx
leaq 0x2c0(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb5cc8
movq 0x38(%rsp), %rdi
movb $0x0, 0x24f(%rsp)
leaq 0x5f8ec(%rip), %rsi     # 0x1155c8
leaq -0x9b673(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x2e0(%rsp), %rdi
callq 0x1a950
jmp 0xb6060
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5dc3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5db6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5da9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb5d9c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x250(%rsp), %rdi
callq 0xfc00
leaq 0x2c0(%rsp), %rdi
callq 0xb6e8
leaq 0x260(%rsp), %rdi
callq 0xb6e8
leaq 0x2a0(%rsp), %rdi
callq 0xb6e8
leaq 0x280(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x24f(%rsp)
jne 0xb5dcf
jmp 0xb5dd9
movq 0x38(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
movq 0x180(%rsp), %rdi
addq $0x98, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x1bed0
movq %rax, %rdi
callq 0x1a660
movq 0x180(%rsp), %rdi
movq %rax, 0x18(%rsp)
addq $0x78, %rdi
callq 0x1bb50
movq %rax, %rdi
callq 0x3f070
movq %rax, %rsi
leaq 0x238(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x1a920
movq 0x18(%rsp), %rdi
movq 0x20(%rsp), %rsi
callq 0x9f1a0
movb %al, 0x2f(%rsp)
jmp 0xb5e4a
movb 0x2f(%rsp), %al
xorb $-0x1, %al
movb %al, 0x17(%rsp)
leaq 0x238(%rsp), %rdi
callq 0x1a950
movb 0x17(%rsp), %al
testb $0x1, %al
jne 0xb5e6e
jmp 0xb6058
movb $0x1, 0x1a7(%rsp)
movl $0x38, %edi
callq 0xb1f0
movq 0x180(%rsp), %rdi
movq %rax, 0x8(%rsp)
addq $0x98, %rdi
callq 0x1bb50
movq %rax, %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq 0x1d8(%rsp), %rdi
callq *%rax
jmp 0xb5eaf
leaq 0x21178(%rip), %rdx     # 0xd702e
leaq 0x1f8(%rsp), %rdi
leaq 0x1d8(%rsp), %rsi
callq 0xfa60
jmp 0xb5ecd
movq 0x180(%rsp), %rdi
addq $0x78, %rdi
callq 0x1bb50
movq %rax, %rsi
movq (%rsi), %rax
movq 0x18(%rax), %rax
leaq 0x1b8(%rsp), %rdi
callq *%rax
jmp 0xb5ef4
leaq 0x218(%rsp), %rdi
leaq 0x1f8(%rsp), %rsi
leaq 0x1b8(%rsp), %rdx
callq 0x1bf20
jmp 0xb5f13
xorl %eax, %eax
movl %eax, %esi
leaq 0x1a8(%rsp), %rdi
movq %rdi, (%rsp)
callq 0xfbe0
movq 0x8(%rsp), %rdi
movq (%rsp), %rcx
leaq 0x218(%rsp), %rsi
movl $0x3, %edx
callq 0x35600
jmp 0xb5f45
movq 0x8(%rsp), %rdi
movb $0x0, 0x1a7(%rsp)
leaq 0x5f66f(%rip), %rsi     # 0x1155c8
leaq -0x9b8f0(%rip), %rdx    # 0x1a670
callq 0xb640
jmp 0xb60a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x238(%rsp), %rdi
callq 0x1a950
jmp 0xb6060
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb6040
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb6033
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb6026
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
jmp 0xb6019
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x500(%rsp)
movl %eax, 0x4fc(%rsp)
leaq 0x1a8(%rsp), %rdi
callq 0xfc00
leaq 0x218(%rsp), %rdi
callq 0xb6e8
leaq 0x1b8(%rsp), %rdi
callq 0xb6e8
leaq 0x1f8(%rsp), %rdi
callq 0xb6e8
leaq 0x1d8(%rsp), %rdi
callq 0xb6e8
testb $0x1, 0x1a7(%rsp)
jne 0xb604c
jmp 0xb6056
movq 0x8(%rsp), %rdi
callq 0xb2d0
jmp 0xb6060
addq $0x558, %rsp            # imm = 0x558
retq
movq 0x150(%rsp), %rdi
callq 0x1acc0
movq 0x148(%rsp), %rdi
callq 0x1acc0
movq 0x140(%rsp), %rdi
callq 0x1acc0
movq 0x180(%rsp), %rdi
callq 0xb0270
movq 0x500(%rsp), %rdi
callq 0xb680
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)