140171971:	85 c0                	test   %eax,%eax
140171973:	0f 45 f8             	cmovne %eax,%edi
140171976:	8b c7                	mov    %edi,%eax
140171978:	48 83 c4 20          	add    $0x20,%rsp
14017197c:	5f                   	pop    %rdi
14017197d:	c3                   	ret
14017197e:	cc                   	int3
14017197f:	cc                   	int3
140171980:	b8 28 00 00 00       	mov    $0x28,%eax
140171985:	e8 a6 f1 13 00       	call   0x1402b0b30
14017198a:	48 2b e0             	sub    %rax,%rsp
14017198d:	48 8d 15 ac d6 1a 00 	lea    0x1ad6ac(%rip),%rdx        # 0x14031f040
140171994:	48 83 c4 28          	add    $0x28,%rsp
140171998:	e9 93 fb fb ff       	jmp    0x140131530
14017199d:	cc                   	int3
14017199e:	cc                   	int3
14017199f:	cc                   	int3
1401719a0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1401719a5:	55                   	push   %rbp
1401719a6:	56                   	push   %rsi
1401719a7:	57                   	push   %rdi
1401719a8:	41 54                	push   %r12
1401719aa:	41 55                	push   %r13
1401719ac:	41 56                	push   %r14
1401719ae:	41 57                	push   %r15
1401719b0:	b8 50 00 00 00       	mov    $0x50,%eax
1401719b5:	e8 76 f1 13 00       	call   0x1402b0b30
1401719ba:	48 2b e0             	sub    %rax,%rsp
1401719bd:	48 8b 05 bc 40 26 00 	mov    0x2640bc(%rip),%rax        # 0x1403d5a80
1401719c4:	48 33 c4             	xor    %rsp,%rax
1401719c7:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1401719cc:	33 f6                	xor    %esi,%esi
1401719ce:	49 63 d8             	movslq %r8d,%rbx
1401719d1:	44 8b 01             	mov    (%rcx),%r8d
1401719d4:	4c 8b f2             	mov    %rdx,%r14
1401719d7:	44 8b fe             	mov    %esi,%r15d
1401719da:	bd ff 00 00 00       	mov    $0xff,%ebp
1401719df:	44 8d 66 08          	lea    0x8(%rsi),%r12d
1401719e3:	45 85 c0             	test   %r8d,%r8d
1401719e6:	74 72                	je     0x140171a5a
1401719e8:	41 83 f8 01          	cmp    $0x1,%r8d
1401719ec:	0f 85 d3 00 00 00    	jne    0x140171ac5
1401719f2:	48 8b 41 08          	mov    0x8(%rcx),%rax
1401719f6:	48 8b 30             	mov    (%rax),%rsi
1401719f9:	48 63 3e             	movslq (%rsi),%rdi
1401719fc:	85 ff                	test   %edi,%edi
1401719fe:	0f 88 bd 01 00 00    	js     0x140171bc1
140171a04:	3b fb                	cmp    %ebx,%edi
140171a06:	0f 8f b5 01 00 00    	jg     0x140171bc1
140171a0c:	85 ff                	test   %edi,%edi
140171a0e:	7e 2b                	jle    0x140171a3b
140171a10:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140171a14:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140171a19:	4c 8b c7             	mov    %rdi,%r8
140171a1c:	e8 3f f9 16 00       	call   0x1402e1360
140171a21:	8b 4e 10             	mov    0x10(%rsi),%ecx
140171a24:	83 e1 07             	and    $0x7,%ecx
140171a27:	74 12                	je     0x140171a3b
140171a29:	41 8b c4             	mov    %r12d,%eax
140171a2c:	8b d5                	mov    %ebp,%edx
140171a2e:	2b c1                	sub    %ecx,%eax
140171a30:	0f b6 c8             	movzbl %al,%ecx
140171a33:	d3 fa                	sar    %cl,%edx
140171a35:	f6 d2                	not    %dl
140171a37:	20 54 3c 2f          	and    %dl,0x2f(%rsp,%rdi,1)
140171a3b:	8b c3                	mov    %ebx,%eax
140171a3d:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140171a42:	2b c7                	sub    %edi,%eax
140171a44:	48 03 cf             	add    %rdi,%rcx
140171a47:	4c 63 c0             	movslq %eax,%r8
140171a4a:	33 d2                	xor    %edx,%edx
140171a4c:	e8 af ff 16 00       	call   0x1402e1a00
140171a51:	8d 34 dd 00 00 00 00 	lea    0x0(,%rbx,8),%esi
140171a58:	eb 6b                	jmp    0x140171ac5
140171a5a:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140171a5e:	48 63 37             	movslq (%rdi),%rsi
140171a61:	85 f6                	test   %esi,%esi
140171a63:	0f 88 58 01 00 00    	js     0x140171bc1
140171a69:	3b f3                	cmp    %ebx,%esi
140171a6b:	0f 8f 50 01 00 00    	jg     0x140171bc1
140171a71:	85 f6                	test   %esi,%esi
140171a73:	7e 2b                	jle    0x140171aa0
140171a75:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140171a79:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140171a7e:	4c 8b c6             	mov    %rsi,%r8
140171a81:	e8 da f8 16 00       	call   0x1402e1360
140171a86:	8b 4f 10             	mov    0x10(%rdi),%ecx
140171a89:	83 e1 07             	and    $0x7,%ecx
140171a8c:	74 12                	je     0x140171aa0
140171a8e:	41 8b c4             	mov    %r12d,%eax
140171a91:	8b d5                	mov    %ebp,%edx
140171a93:	2b c1                	sub    %ecx,%eax
140171a95:	0f b6 c8             	movzbl %al,%ecx
140171a98:	d3 fa                	sar    %cl,%edx
140171a9a:	f6 d2                	not    %dl
140171a9c:	20 54 34 2f          	and    %dl,0x2f(%rsp,%rsi,1)
140171aa0:	8b c3                	mov    %ebx,%eax
140171aa2:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140171aa7:	2b c6                	sub    %esi,%eax
140171aa9:	48 03 ce             	add    %rsi,%rcx
140171aac:	4c 63 c0             	movslq %eax,%r8
140171aaf:	33 d2                	xor    %edx,%edx
140171ab1:	e8 4a ff 16 00       	call   0x1402e1a00
140171ab6:	8b 47 10             	mov    0x10(%rdi),%eax
140171ab9:	8d 34 f5 00 00 00 00 	lea    0x0(,%rsi,8),%esi
140171ac0:	83 e0 07             	and    $0x7,%eax
140171ac3:	2b f0                	sub    %eax,%esi
140171ac5:	41 8b 0e             	mov    (%r14),%ecx
140171ac8:	85 c9                	test   %ecx,%ecx
140171aca:	74 72                	je     0x140171b3e
140171acc:	83 f9 01             	cmp    $0x1,%ecx
140171acf:	0f 85 cf 00 00 00    	jne    0x140171ba4
140171ad5:	49 8b 46 08          	mov    0x8(%r14),%rax
140171ad9:	4c 8b 30             	mov    (%rax),%r14
140171adc:	49 63 3e             	movslq (%r14),%rdi
140171adf:	85 ff                	test   %edi,%edi
140171ae1:	0f 88 da 00 00 00    	js     0x140171bc1
140171ae7:	3b fb                	cmp    %ebx,%edi
140171ae9:	0f 8f d2 00 00 00    	jg     0x140171bc1
140171aef:	85 ff                	test   %edi,%edi
140171af1:	7e 2b                	jle    0x140171b1e
140171af3:	49 8b 56 08          	mov    0x8(%r14),%rdx
140171af7:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140171afc:	4c 8b c7             	mov    %rdi,%r8
140171aff:	e8 5c f8 16 00       	call   0x1402e1360
140171b04:	41 8b 46 10          	mov    0x10(%r14),%eax
140171b08:	83 e0 07             	and    $0x7,%eax
140171b0b:	74 11                	je     0x140171b1e
140171b0d:	44 2b e0             	sub    %eax,%r12d
140171b10:	41 0f b6 cc          	movzbl %r12b,%ecx
140171b14:	d3 fd                	sar    %cl,%ebp
140171b16:	40 f6 d5             	not    %bpl
140171b19:	40 20 6c 3c 1f       	and    %bpl,0x1f(%rsp,%rdi,1)
140171b1e:	8b c3                	mov    %ebx,%eax
140171b20:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140171b25:	2b c7                	sub    %edi,%eax
140171b27:	48 03 cf             	add    %rdi,%rcx
140171b2a:	4c 63 c0             	movslq %eax,%r8
140171b2d:	33 d2                	xor    %edx,%edx
140171b2f:	e8 cc fe 16 00       	call   0x1402e1a00
140171b34:	44 8d 3c dd 00 00 00 	lea    0x0(,%rbx,8),%r15d
140171b3b:	00
140171b3c:	eb 66                	jmp    0x140171ba4
140171b3e:	4d 8b 76 08          	mov    0x8(%r14),%r14
140171b42:	49 63 3e             	movslq (%r14),%rdi
140171b45:	85 ff                	test   %edi,%edi
140171b47:	78 78                	js     0x140171bc1
140171b49:	3b fb                	cmp    %ebx,%edi
140171b4b:	7f 74                	jg     0x140171bc1
140171b4d:	85 ff                	test   %edi,%edi
140171b4f:	7e 2b                	jle    0x140171b7c
140171b51:	49 8b 56 08          	mov    0x8(%r14),%rdx
140171b55:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140171b5a:	4c 8b c7             	mov    %rdi,%r8
140171b5d:	e8 fe f7 16 00       	call   0x1402e1360
140171b62:	41 8b 46 10          	mov    0x10(%r14),%eax
140171b66:	83 e0 07             	and    $0x7,%eax
140171b69:	74 11                	je     0x140171b7c
140171b6b:	44 2b e0             	sub    %eax,%r12d
140171b6e:	41 0f b6 cc          	movzbl %r12b,%ecx
140171b72:	d3 fd                	sar    %cl,%ebp
140171b74:	40 f6 d5             	not    %bpl
140171b77:	40 20 6c 3c 1f       	and    %bpl,0x1f(%rsp,%rdi,1)
140171b7c:	8b c3                	mov    %ebx,%eax
140171b7e:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140171b83:	2b c7                	sub    %edi,%eax
140171b85:	48 03 cf             	add    %rdi,%rcx
140171b88:	4c 63 c0             	movslq %eax,%r8
140171b8b:	33 d2                	xor    %edx,%edx
140171b8d:	e8 6e fe 16 00       	call   0x1402e1a00
140171b92:	41 8b 46 10          	mov    0x10(%r14),%eax
140171b96:	44 8d 3c fd 00 00 00 	lea    0x0(,%rdi,8),%r15d
140171b9d:	00
140171b9e:	83 e0 07             	and    $0x7,%eax
140171ba1:	44 2b f8             	sub    %eax,%r15d
140171ba4:	4c 8b c3             	mov    %rbx,%r8
140171ba7:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140171bac:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140171bb1:	e8 8a 02 17 00       	call   0x1402e1e40
140171bb6:	85 c0                	test   %eax,%eax
140171bb8:	75 0c                	jne    0x140171bc6
140171bba:	41 2b f7             	sub    %r15d,%esi
140171bbd:	8b c6                	mov    %esi,%eax
140171bbf:	eb 05                	jmp    0x140171bc6
140171bc1:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140171bc6:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140171bcb:	48 33 cc             	xor    %rsp,%rcx
140171bce:	e8 dd e2 13 00       	call   0x1402afeb0
140171bd3:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
140171bda:	00
140171bdb:	48 83 c4 50          	add    $0x50,%rsp
140171bdf:	41 5f                	pop    %r15
140171be1:	41 5e                	pop    %r14
140171be3:	41 5d                	pop    %r13
140171be5:	41 5c                	pop    %r12
140171be7:	5f                   	pop    %rdi
140171be8:	5e                   	pop    %rsi
140171be9:	5d                   	pop    %rbp
140171bea:	c3                   	ret
140171beb:	cc                   	int3
140171bec:	cc                   	int3
140171bed:	cc                   	int3
140171bee:	cc                   	int3
140171bef:	cc                   	int3
140171bf0:	40 55                	rex push %rbp
140171bf2:	53                   	push   %rbx
140171bf3:	41 54                	push   %r12
140171bf5:	41 56                	push   %r14
140171bf7:	48 8b ec             	mov    %rsp,%rbp
140171bfa:	b8 78 00 00 00       	mov    $0x78,%eax
140171bff:	e8 2c ef 13 00       	call   0x1402b0b30
140171c04:	48 2b e0             	sub    %rax,%rsp
140171c07:	48 8b 05 72 3e 26 00 	mov    0x263e72(%rip),%rax        # 0x1403d5a80
140171c0e:	48 33 c4             	xor    %rsp,%rax
140171c11:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140171c15:	45 33 f6             	xor    %r14d,%r14d
140171c18:	4c 8b e1             	mov    %rcx,%r12
140171c1b:	83 ea 01             	sub    $0x1,%edx
140171c1e:	74 11                	je     0x140171c31
140171c20:	83 fa 01             	cmp    $0x1,%edx
140171c23:	74 05                	je     0x140171c2a
140171c25:	41 8b de             	mov    %r14d,%ebx
140171c28:	eb 0c                	jmp    0x140171c36
140171c2a:	bb 10 00 00 00       	mov    $0x10,%ebx
140171c2f:	eb 05                	jmp    0x140171c36
140171c31:	bb 04 00 00 00       	mov    $0x4,%ebx
140171c36:	48 89 b4 24 a8 00 00 	mov    %rsi,0xa8(%rsp)
140171c3d:	00
140171c3e:	48 89 bc 24 b0 00 00 	mov    %rdi,0xb0(%rsp)
140171c45:	00
140171c46:	4c 89 ac 24 b8 00 00 	mov    %r13,0xb8(%rsp)
140171c4d:	00
140171c4e:	4c 89 7c 24 70       	mov    %r15,0x70(%rsp)
140171c53:	e8 78 9d f7 ff       	call   0x1400eb9d0
140171c58:	49 8b cc             	mov    %r12,%rcx
140171c5b:	e8 e0 9a f7 ff       	call   0x1400eb740
140171c60:	ff c8                	dec    %eax
140171c62:	85 c0                	test   %eax,%eax
140171c64:	0f 8e 03 02 00 00    	jle    0x140171e6d
140171c6a:	44 8b fb             	mov    %ebx,%r15d
140171c6d:	41 bd 01 00 00 00    	mov    $0x1,%r13d
140171c73:	41 8b d6             	mov    %r14d,%edx
140171c76:	49 8b cc             	mov    %r12,%rcx
140171c79:	e8 c2 9d f7 ff       	call   0x1400eba40
140171c7e:	41 8b d5             	mov    %r13d,%edx
140171c81:	49 8b cc             	mov    %r12,%rcx
140171c84:	48 8b f0             	mov    %rax,%rsi
140171c87:	e8 b4 9d f7 ff       	call   0x1400eba40
140171c8c:	48 8b f8             	mov    %rax,%rdi
140171c8f:	48 85 f6             	test   %rsi,%rsi
140171c92:	0f 84 3e 02 00 00    	je     0x140171ed6
140171c98:	8b 16                	mov    (%rsi),%edx
140171c9a:	85 d2                	test   %edx,%edx
140171c9c:	74 31                	je     0x140171ccf
140171c9e:	83 fa 01             	cmp    $0x1,%edx
140171ca1:	0f 85 2f 02 00 00    	jne    0x140171ed6
140171ca7:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140171cab:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140171caf:	45 33 c9             	xor    %r9d,%r9d
140171cb2:	44 8b c3             	mov    %ebx,%r8d
140171cb5:	48 8b 12             	mov    (%rdx),%rdx
140171cb8:	e8 d3 08 00 00       	call   0x140172590
140171cbd:	85 c0                	test   %eax,%eax
140171cbf:	0f 84 11 02 00 00    	je     0x140171ed6
140171cc5:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140171cc9:	48 8b 52 08          	mov    0x8(%rdx),%rdx
140171ccd:	eb 1f                	jmp    0x140171cee
140171ccf:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140171cd3:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140171cd7:	45 33 c9             	xor    %r9d,%r9d
140171cda:	44 8b c3             	mov    %ebx,%r8d
140171cdd:	e8 ae 08 00 00       	call   0x140172590
140171ce2:	85 c0                	test   %eax,%eax
140171ce4:	0f 84 ec 01 00 00    	je     0x140171ed6
140171cea:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140171cee:	41 b1 ff             	mov    $0xff,%r9b
140171cf1:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140171cf5:	44 8b c3             	mov    %ebx,%r8d
140171cf8:	e8 93 08 00 00       	call   0x140172590
140171cfd:	85 c0                	test   %eax,%eax
140171cff:	0f 84 d1 01 00 00    	je     0x140171ed6
140171d05:	48 85 ff             	test   %rdi,%rdi
140171d08:	0f 84 c8 01 00 00    	je     0x140171ed6
140171d0e:	8b 0f                	mov    (%rdi),%ecx
140171d10:	85 c9                	test   %ecx,%ecx
140171d12:	74 31                	je     0x140171d45
140171d14:	83 f9 01             	cmp    $0x1,%ecx
140171d17:	0f 85 b9 01 00 00    	jne    0x140171ed6
140171d1d:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140171d21:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
140171d25:	45 33 c9             	xor    %r9d,%r9d
140171d28:	44 8b c3             	mov    %ebx,%r8d
140171d2b:	48 8b 12             	mov    (%rdx),%rdx
140171d2e:	e8 5d 08 00 00       	call   0x140172590
140171d33:	85 c0                	test   %eax,%eax
140171d35:	0f 84 9b 01 00 00    	je     0x140171ed6
140171d3b:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140171d3f:	48 8b 52 08          	mov    0x8(%rdx),%rdx
140171d43:	eb 1f                	jmp    0x140171d64
140171d45:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140171d49:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
140171d4d:	45 33 c9             	xor    %r9d,%r9d
140171d50:	44 8b c3             	mov    %ebx,%r8d
140171d53:	e8 38 08 00 00       	call   0x140172590
140171d58:	85 c0                	test   %eax,%eax
140171d5a:	0f 84 76 01 00 00    	je     0x140171ed6
140171d60:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140171d64:	41 b1 ff             	mov    $0xff,%r9b
140171d67:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140171d6b:	44 8b c3             	mov    %ebx,%r8d
140171d6e:	e8 1d 08 00 00       	call   0x140172590
140171d73:	85 c0                	test   %eax,%eax
140171d75:	0f 84 5b 01 00 00    	je     0x140171ed6
140171d7b:	4d 8b c7             	mov    %r15,%r8
140171d7e:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
140171d82:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140171d86:	e8 b5 00 17 00       	call   0x1402e1e40
140171d8b:	85 c0                	test   %eax,%eax
140171d8d:	0f 8f 43 01 00 00    	jg     0x140171ed6
140171d93:	4d 8b c7             	mov    %r15,%r8
140171d96:	48 8d 55 c0          	lea    -0x40(%rbp),%rdx
140171d9a:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
140171d9e:	e8 9d 00 17 00       	call   0x1402e1e40
140171da3:	85 c0                	test   %eax,%eax
140171da5:	0f 8f 2b 01 00 00    	jg     0x140171ed6
140171dab:	4d 8b c7             	mov    %r15,%r8
140171dae:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
140171db2:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140171db6:	e8 85 00 17 00       	call   0x1402e1e40
140171dbb:	85 c0                	test   %eax,%eax
140171dbd:	0f 89 13 01 00 00    	jns    0x140171ed6
140171dc3:	49 8d 57 ff          	lea    -0x1(%r15),%rdx
140171dc7:	48 85 d2             	test   %rdx,%rdx
140171dca:	78 1a                	js     0x140171de6
140171dcc:	0f 1f 40 00          	nopl   0x0(%rax)
140171dd0:	0f b6 4c 15 b0       	movzbl -0x50(%rbp,%rdx,1),%ecx
140171dd5:	8d 41 ff             	lea    -0x1(%rcx),%eax
140171dd8:	88 44 15 b0          	mov    %al,-0x50(%rbp,%rdx,1)
140171ddc:	84 c9                	test   %cl,%cl
140171dde:	75 06                	jne    0x140171de6
140171de0:	48 83 ea 01          	sub    $0x1,%rdx
140171de4:	79 ea                	jns    0x140171dd0
140171de6:	4d 8b c7             	mov    %r15,%r8
140171de9:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
140171ded:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140171df1:	e8 4a 00 17 00       	call   0x1402e1e40
140171df6:	85 c0                	test   %eax,%eax
140171df8:	75 5a                	jne    0x140171e54
140171dfa:	44 8b cb             	mov    %ebx,%r9d
140171dfd:	4c 8d 45 c0          	lea    -0x40(%rbp),%r8