140016d56:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140016d5b:	41 56                	push   %r14
140016d5d:	48 83 ec 30          	sub    $0x30,%rsp
140016d61:	41 8b f0             	mov    %r8d,%esi
140016d64:	48 8b da             	mov    %rdx,%rbx
140016d67:	48 8b f9             	mov    %rcx,%rdi
140016d6a:	45 33 f6             	xor    %r14d,%r14d
140016d6d:	48 85 c9             	test   %rcx,%rcx
140016d70:	75 28                	jne    0x140016d9a
140016d72:	e8 65 a3 00 00       	call   0x1400210dc
140016d77:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140016d7d:	e8 d2 81 ff ff       	call   0x14000ef54
140016d82:	33 c0                	xor    %eax,%eax
140016d84:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140016d89:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140016d8e:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140016d93:	48 83 c4 30          	add    $0x30,%rsp
140016d97:	41 5e                	pop    %r14
140016d99:	c3                   	ret
140016d9a:	48 85 db             	test   %rbx,%rbx
140016d9d:	74 d3                	je     0x140016d72
140016d9f:	66 44 39 32          	cmp    %r14w,(%rdx)
140016da3:	74 cd                	je     0x140016d72
140016da5:	66 44 39 31          	cmp    %r14w,(%rcx)
140016da9:	75 0d                	jne    0x140016db8
140016dab:	e8 2c a3 00 00       	call   0x1400210dc
140016db0:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140016db6:	eb ca                	jmp    0x140016d82
140016db8:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140016dbd:	e8 ea de 00 00       	call   0x140024cac
140016dc2:	4c 8b 4c 24 40       	mov    0x40(%rsp),%r9
140016dc7:	4d 85 c9             	test   %r9,%r9
140016dca:	75 0d                	jne    0x140016dd9
140016dcc:	e8 0b a3 00 00       	call   0x1400210dc
140016dd1:	c7 00 18 00 00 00    	movl   $0x18,(%rax)
140016dd7:	eb a9                	jmp    0x140016d82
140016dd9:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140016dde:	44 8b c6             	mov    %esi,%r8d
140016de1:	48 8b d3             	mov    %rbx,%rdx
140016de4:	48 8b cf             	mov    %rdi,%rcx
140016de7:	e8 24 e3 00 00       	call   0x140025110
140016dec:	48 8b d8             	mov    %rax,%rbx
140016def:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140016df4:	48 85 db             	test   %rbx,%rbx
140016df7:	75 0a                	jne    0x140016e03
140016df9:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140016dfe:	e8 01 df 00 00       	call   0x140024d04
140016e03:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140016e08:	e8 c3 ba 00 00       	call   0x1400228d0
140016e0d:	48 8b c3             	mov    %rbx,%rax
140016e10:	e9 6f ff ff ff       	jmp    0x140016d84
140016e15:	cc                   	int3
140016e16:	cc                   	int3
140016e17:	cc                   	int3
140016e18:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016e1d:	57                   	push   %rdi
140016e1e:	48 83 ec 20          	sub    $0x20,%rsp
140016e22:	33 db                	xor    %ebx,%ebx
140016e24:	49 8b c0             	mov    %r8,%rax
140016e27:	4c 8b ca             	mov    %rdx,%r9
140016e2a:	48 8b f9             	mov    %rcx,%rdi
140016e2d:	48 85 c9             	test   %rcx,%rcx
140016e30:	75 11                	jne    0x140016e43
140016e32:	e8 a5 a2 00 00       	call   0x1400210dc
140016e37:	8d 5f 16             	lea    0x16(%rdi),%ebx
140016e3a:	89 18                	mov    %ebx,(%rax)
140016e3c:	e8 13 81 ff ff       	call   0x14000ef54
140016e41:	eb 20                	jmp    0x140016e63
140016e43:	41 b8 80 00 00 00    	mov    $0x80,%r8d
140016e49:	48 8b d0             	mov    %rax,%rdx
140016e4c:	49 8b c9             	mov    %r9,%rcx
140016e4f:	e8 f8 fe ff ff       	call   0x140016d4c
140016e54:	48 89 07             	mov    %rax,(%rdi)
140016e57:	48 85 c0             	test   %rax,%rax
140016e5a:	75 07                	jne    0x140016e63
140016e5c:	e8 7b a2 00 00       	call   0x1400210dc
140016e61:	8b 18                	mov    (%rax),%ebx
140016e63:	8b c3                	mov    %ebx,%eax
140016e65:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016e6a:	48 83 c4 20          	add    $0x20,%rsp
140016e6e:	5f                   	pop    %rdi
140016e6f:	c3                   	ret
140016e70:	e9 d7 fe ff ff       	jmp    0x140016d4c
140016e75:	cc                   	int3
140016e76:	cc                   	int3
140016e77:	cc                   	int3
140016e78:	48 8b c4             	mov    %rsp,%rax
140016e7b:	48 89 58 10          	mov    %rbx,0x10(%rax)
140016e7f:	48 89 48 08          	mov    %rcx,0x8(%rax)
140016e83:	57                   	push   %rdi
140016e84:	48 83 ec 30          	sub    $0x30,%rsp
140016e88:	48 8b fa             	mov    %rdx,%rdi
140016e8b:	48 8b d9             	mov    %rcx,%rbx
140016e8e:	48 85 c9             	test   %rcx,%rcx
140016e91:	75 2e                	jne    0x140016ec1
140016e93:	c6 42 30 01          	movb   $0x1,0x30(%rdx)
140016e97:	c7 42 2c 16 00 00 00 	movl   $0x16,0x2c(%rdx)
140016e9e:	48 89 50 f0          	mov    %rdx,-0x10(%rax)
140016ea2:	48 21 48 e8          	and    %rcx,-0x18(%rax)
140016ea6:	45 33 c9             	xor    %r9d,%r9d
140016ea9:	45 33 c0             	xor    %r8d,%r8d
140016eac:	33 d2                	xor    %edx,%edx
140016eae:	e8 d5 7f ff ff       	call   0x14000ee88
140016eb3:	83 c8 ff             	or     $0xffffffff,%eax
140016eb6:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140016ebb:	48 83 c4 30          	add    $0x30,%rsp
140016ebf:	5f                   	pop    %rdi
140016ec0:	c3                   	ret
140016ec1:	8b 41 14             	mov    0x14(%rcx),%eax
140016ec4:	90                   	nop
140016ec5:	c1 e8 0c             	shr    $0xc,%eax
140016ec8:	24 01                	and    $0x1,%al
140016eca:	74 07                	je     0x140016ed3
140016ecc:	e8 33 de 00 00       	call   0x140024d04
140016ed1:	eb e0                	jmp    0x140016eb3
140016ed3:	e8 ec b9 00 00       	call   0x1400228c4
140016ed8:	90                   	nop
140016ed9:	48 8b d7             	mov    %rdi,%rdx
140016edc:	48 8b cb             	mov    %rbx,%rcx
140016edf:	e8 10 00 00 00       	call   0x140016ef4
140016ee4:	8b f8                	mov    %eax,%edi
140016ee6:	48 8b cb             	mov    %rbx,%rcx
140016ee9:	e8 e2 b9 00 00       	call   0x1400228d0
140016eee:	8b c7                	mov    %edi,%eax
140016ef0:	eb c4                	jmp    0x140016eb6
140016ef2:	cc                   	int3
140016ef3:	cc                   	int3
140016ef4:	48 8b c4             	mov    %rsp,%rax
140016ef7:	48 89 58 08          	mov    %rbx,0x8(%rax)
140016efb:	48 89 70 10          	mov    %rsi,0x10(%rax)
140016eff:	57                   	push   %rdi
140016f00:	48 83 ec 30          	sub    $0x30,%rsp
140016f04:	48 8b fa             	mov    %rdx,%rdi
140016f07:	48 8b d9             	mov    %rcx,%rbx
140016f0a:	48 85 c9             	test   %rcx,%rcx
140016f0d:	75 25                	jne    0x140016f34
140016f0f:	48 89 50 f0          	mov    %rdx,-0x10(%rax)
140016f13:	45 33 c9             	xor    %r9d,%r9d
140016f16:	48 21 48 e8          	and    %rcx,-0x18(%rax)
140016f1a:	45 33 c0             	xor    %r8d,%r8d
140016f1d:	c6 42 30 01          	movb   $0x1,0x30(%rdx)
140016f21:	c7 42 2c 16 00 00 00 	movl   $0x16,0x2c(%rdx)
140016f28:	33 d2                	xor    %edx,%edx
140016f2a:	e8 59 7f ff ff       	call   0x14000ee88
140016f2f:	83 c8 ff             	or     $0xffffffff,%eax
140016f32:	eb 55                	jmp    0x140016f89
140016f34:	8b 41 14             	mov    0x14(%rcx),%eax
140016f37:	83 ce ff             	or     $0xffffffff,%esi
140016f3a:	c1 e8 0d             	shr    $0xd,%eax
140016f3d:	90                   	nop
140016f3e:	a8 01                	test   $0x1,%al
140016f40:	74 3d                	je     0x140016f7f
140016f42:	e8 6d e7 00 00       	call   0x1400256b4
140016f47:	48 8b cb             	mov    %rbx,%rcx
140016f4a:	8b f0                	mov    %eax,%esi
140016f4c:	e8 ff e4 00 00       	call   0x140025450
140016f51:	48 8b cb             	mov    %rbx,%rcx
140016f54:	e8 6b b7 00 00       	call   0x1400226c4
140016f59:	8b c8                	mov    %eax,%ecx
140016f5b:	48 8b d7             	mov    %rdi,%rdx
140016f5e:	e8 c1 e2 00 00       	call   0x140025224
140016f63:	85 c0                	test   %eax,%eax
140016f65:	79 05                	jns    0x140016f6c
140016f67:	83 ce ff             	or     $0xffffffff,%esi
140016f6a:	eb 13                	jmp    0x140016f7f
140016f6c:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
140016f70:	48 85 c9             	test   %rcx,%rcx
140016f73:	74 0a                	je     0x140016f7f
140016f75:	e8 66 a5 fe ff       	call   0x1400014e0
140016f7a:	48 83 63 28 00       	andq   $0x0,0x28(%rbx)
140016f7f:	48 8b cb             	mov    %rbx,%rcx
140016f82:	e8 7d dd 00 00       	call   0x140024d04
140016f87:	8b c6                	mov    %esi,%eax
140016f89:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140016f8e:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140016f93:	48 83 c4 30          	add    $0x30,%rsp
140016f97:	5f                   	pop    %rdi
140016f98:	c3                   	ret
140016f99:	cc                   	int3
140016f9a:	cc                   	int3
140016f9b:	cc                   	int3
140016f9c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016fa1:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
140016fa6:	55                   	push   %rbp
140016fa7:	48 8b ec             	mov    %rsp,%rbp
140016faa:	48 83 ec 60          	sub    $0x60,%rsp
140016fae:	48 83 65 c0 00       	andq   $0x0,-0x40(%rbp)
140016fb3:	83 3d c2 b0 03 00 00 	cmpl   $0x0,0x3b0c2(%rip)        # 0x14005207c
140016fba:	c6 45 d0 00          	movb   $0x0,-0x30(%rbp)
140016fbe:	c6 45 e8 00          	movb   $0x0,-0x18(%rbp)
140016fc2:	c6 45 f0 00          	movb   $0x0,-0x10(%rbp)
140016fc6:	c6 45 f8 00          	movb   $0x0,-0x8(%rbp)
140016fca:	75 10                	jne    0x140016fdc
140016fcc:	0f 10 05 f5 73 03 00 	movups 0x373f5(%rip),%xmm0        # 0x14004e3c8
140016fd3:	c6 45 e8 01          	movb   $0x1,-0x18(%rbp)
140016fd7:	f3 0f 7f 45 d8       	movdqu %xmm0,-0x28(%rbp)
140016fdc:	48 8d 55 c0          	lea    -0x40(%rbp),%rdx
140016fe0:	e8 93 fe ff ff       	call   0x140016e78
140016fe5:	80 7d e8 02          	cmpb   $0x2,-0x18(%rbp)
140016fe9:	8b f8                	mov    %eax,%edi
140016feb:	75 0b                	jne    0x140016ff8
140016fed:	48 8b 4d c0          	mov    -0x40(%rbp),%rcx
140016ff1:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
140016ff8:	80 7d f0 00          	cmpb   $0x0,-0x10(%rbp)
140016ffc:	74 0f                	je     0x14001700d
140016ffe:	8b 5d ec             	mov    -0x14(%rbp),%ebx
140017001:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140017005:	e8 5e 7b ff ff       	call   0x14000eb68
14001700a:	89 58 20             	mov    %ebx,0x20(%rax)
14001700d:	80 7d f8 00          	cmpb   $0x0,-0x8(%rbp)
140017011:	74 0f                	je     0x140017022
140017013:	8b 5d f4             	mov    -0xc(%rbp),%ebx
140017016:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
14001701a:	e8 49 7b ff ff       	call   0x14000eb68
14001701f:	89 58 24             	mov    %ebx,0x24(%rax)
140017022:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140017027:	8b c7                	mov    %edi,%eax
140017029:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
14001702e:	48 83 c4 60          	add    $0x60,%rsp
140017032:	5d                   	pop    %rbp
140017033:	c3                   	ret
140017034:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140017039:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14001703e:	56                   	push   %rsi
14001703f:	57                   	push   %rdi
140017040:	41 54                	push   %r12
140017042:	41 56                	push   %r14
140017044:	41 57                	push   %r15
140017046:	48 83 ec 30          	sub    $0x30,%rsp
14001704a:	49 8b d8             	mov    %r8,%rbx
14001704d:	44 8b fa             	mov    %edx,%r15d
140017050:	4c 8b e1             	mov    %rcx,%r12
140017053:	33 ff                	xor    %edi,%edi
140017055:	48 85 c9             	test   %rcx,%rcx
140017058:	75 06                	jne    0x140017060
14001705a:	85 d2                	test   %edx,%edx
14001705c:	8b c7                	mov    %edi,%eax
14001705e:	75 05                	jne    0x140017065
140017060:	b8 01 00 00 00       	mov    $0x1,%eax
140017065:	85 c0                	test   %eax,%eax
140017067:	75 24                	jne    0x14001708d
140017069:	e8 6e a0 00 00       	call   0x1400210dc
14001706e:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140017074:	e8 db 7e ff ff       	call   0x14000ef54
140017079:	33 c0                	xor    %eax,%eax
14001707b:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140017080:	48 83 c4 30          	add    $0x30,%rsp
140017084:	41 5f                	pop    %r15
140017086:	41 5e                	pop    %r14
140017088:	41 5c                	pop    %r12
14001708a:	5f                   	pop    %rdi
14001708b:	5e                   	pop    %rsi
14001708c:	c3                   	ret
14001708d:	45 85 ff             	test   %r15d,%r15d
140017090:	78 d7                	js     0x140017069
140017092:	48 85 db             	test   %rbx,%rbx
140017095:	74 d2                	je     0x140017069
140017097:	45 85 ff             	test   %r15d,%r15d
14001709a:	74 dd                	je     0x140017079
14001709c:	48 8b cb             	mov    %rbx,%rcx
14001709f:	e8 20 b8 00 00       	call   0x1400228c4
1400170a4:	90                   	nop
1400170a5:	48 8b cb             	mov    %rbx,%rcx
1400170a8:	e8 0b d6 ff ff       	call   0x1400146b8
1400170ad:	84 c0                	test   %al,%al
1400170af:	74 49                	je     0x1400170fa
1400170b1:	49 8b f4             	mov    %r12,%rsi
1400170b4:	4c 89 64 24 28       	mov    %r12,0x28(%rsp)
1400170b9:	41 be 01 00 00 00    	mov    $0x1,%r14d
1400170bf:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
1400170c4:	45 3b f7             	cmp    %r15d,%r14d
1400170c7:	74 2b                	je     0x1400170f4
1400170c9:	48 8b cb             	mov    %rbx,%rcx
1400170cc:	e8 f7 e7 00 00       	call   0x1400258c8
1400170d1:	89 44 24 60          	mov    %eax,0x60(%rsp)
1400170d5:	83 f8 ff             	cmp    $0xffffffff,%eax
1400170d8:	75 07                	jne    0x1400170e1
1400170da:	49 3b f4             	cmp    %r12,%rsi
1400170dd:	74 1b                	je     0x1400170fa
1400170df:	eb 13                	jmp    0x1400170f4
1400170e1:	88 06                	mov    %al,(%rsi)
1400170e3:	48 ff c6             	inc    %rsi
1400170e6:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
1400170eb:	3c 0a                	cmp    $0xa,%al
1400170ed:	74 05                	je     0x1400170f4
1400170ef:	41 ff c6             	inc    %r14d
1400170f2:	eb cb                	jmp    0x1400170bf
1400170f4:	40 88 3e             	mov    %dil,(%rsi)
1400170f7:	49 8b fc             	mov    %r12,%rdi
1400170fa:	48 8b cb             	mov    %rbx,%rcx
1400170fd:	e8 ce b7 00 00       	call   0x1400228d0
140017102:	48 8b c7             	mov    %rdi,%rax
140017105:	e9 71 ff ff ff       	jmp    0x14001707b
14001710a:	cc                   	int3
14001710b:	cc                   	int3
14001710c:	e9 23 ff ff ff       	jmp    0x140017034
140017111:	cc                   	int3
140017112:	cc                   	int3
140017113:	cc                   	int3
140017114:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140017119:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14001711e:	57                   	push   %rdi
14001711f:	48 83 ec 20          	sub    $0x20,%rsp
140017123:	49 8b d9             	mov    %r9,%rbx
140017126:	49 8b f8             	mov    %r8,%rdi
140017129:	48 8b 0a             	mov    (%rdx),%rcx
14001712c:	e8 93 b7 00 00       	call   0x1400228c4
140017131:	90                   	nop
140017132:	48 8b cf             	mov    %rdi,%rcx
140017135:	e8 1a 00 00 00       	call   0x140017154
14001713a:	8b f8                	mov    %eax,%edi
14001713c:	48 8b 0b             	mov    (%rbx),%rcx
14001713f:	e8 8c b7 00 00       	call   0x1400228d0
140017144:	8b c7                	mov    %edi,%eax
140017146:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001714b:	48 83 c4 20          	add    $0x20,%rsp
14001714f:	5f                   	pop    %rdi
140017150:	c3                   	ret
140017151:	cc                   	int3
140017152:	cc                   	int3
140017153:	cc                   	int3
140017154:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140017159:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14001715e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140017163:	57                   	push   %rdi
140017164:	48 83 ec 30          	sub    $0x30,%rsp
140017168:	48 8b 01             	mov    (%rcx),%rax
14001716b:	48 8b d9             	mov    %rcx,%rbx
14001716e:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140017172:	48 8b 28             	mov    (%rax),%rbp
140017175:	48 8b cd             	mov    %rbp,%rcx
140017178:	e8 67 bb 00 00       	call   0x140022ce4
14001717d:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140017181:	40 8a f8             	mov    %al,%dil
140017184:	4c 8b 0b             	mov    (%rbx),%r9
140017187:	4c 8b 43 18          	mov    0x18(%rbx),%r8
14001718b:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14001718f:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140017194:	ba 01 00 00 00       	mov    $0x1,%edx
140017199:	4d 8b 09             	mov    (%r9),%r9
14001719c:	4d 8b 00             	mov    (%r8),%r8
14001719f:	48 8b 09             	mov    (%rcx),%rcx
1400171a2:	e8 99 e9 00 00       	call   0x140025b40
1400171a7:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1400171ab:	4c 8b c6             	mov    %rsi,%r8
1400171ae:	48 8b d5             	mov    %rbp,%rdx
1400171b1:	48 2b 01             	sub    (%rcx),%rax
1400171b4:	40 8a cf             	mov    %dil,%cl
1400171b7:	48 f7 d8             	neg    %rax
1400171ba:	1b db                	sbb    %ebx,%ebx