1401d391f:	48 d1 ea             	shr    $1,%rdx
1401d3922:	48 2b c2             	sub    %rdx,%rax
1401d3925:	48 3b f0             	cmp    %rax,%rsi
1401d3928:	77 0e                	ja     0x1401d3938
1401d392a:	48 8d 04 32          	lea    (%rdx,%rsi,1),%rax
1401d392e:	48 8b e9             	mov    %rcx,%rbp
1401d3931:	48 3b c8             	cmp    %rax,%rcx
1401d3934:	48 0f 42 e8          	cmovb  %rax,%rbp
1401d3938:	48 8d 55 01          	lea    0x1(%rbp),%rdx
1401d393c:	48 8b cb             	mov    %rbx,%rcx
1401d393f:	e8 4c 72 ff ff       	call   0x1401cab90
1401d3944:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
1401d3948:	4c 8b f8             	mov    %rax,%r15
1401d394b:	48 89 6b 18          	mov    %rbp,0x18(%rbx)
1401d394f:	4e 8d 04 75 02 00 00 	lea    0x2(,%r14,2),%r8
1401d3956:	00
1401d3957:	48 8b c8             	mov    %rax,%rcx
1401d395a:	48 83 fe 08          	cmp    $0x8,%rsi
1401d395e:	72 49                	jb     0x1401d39a9
1401d3960:	48 8b 3b             	mov    (%rbx),%rdi
1401d3963:	48 8b d7             	mov    %rdi,%rdx
1401d3966:	e8 bd 90 12 00       	call   0x1402fca28
1401d396b:	48 8d 14 75 02 00 00 	lea    0x2(,%rsi,2),%rdx
1401d3972:	00
1401d3973:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1401d397a:	72 1c                	jb     0x1401d3998
1401d397c:	48 8b 4f f8          	mov    -0x8(%rdi),%rcx
1401d3980:	48 83 c2 27          	add    $0x27,%rdx
1401d3984:	48 2b f9             	sub    %rcx,%rdi
1401d3987:	48 8d 47 f8          	lea    -0x8(%rdi),%rax
1401d398b:	48 83 f8 1f          	cmp    $0x1f,%rax
1401d398f:	0f 87 99 00 00 00    	ja     0x1401d3a2e
1401d3995:	48 8b f9             	mov    %rcx,%rdi
1401d3998:	48 8b cf             	mov    %rdi,%rcx
1401d399b:	e8 e4 68 12 00       	call   0x1402fa284
1401d39a0:	4c 89 3b             	mov    %r15,(%rbx)
1401d39a3:	4c 89 73 10          	mov    %r14,0x10(%rbx)
1401d39a7:	eb 6d                	jmp    0x1401d3a16
1401d39a9:	48 8b d3             	mov    %rbx,%rdx
1401d39ac:	e8 77 90 12 00       	call   0x1402fca28
1401d39b1:	4c 89 3b             	mov    %r15,(%rbx)
1401d39b4:	4c 89 73 10          	mov    %r14,0x10(%rbx)
1401d39b8:	eb 5c                	jmp    0x1401d3a16
1401d39ba:	48 83 ff 08          	cmp    $0x8,%rdi
1401d39be:	73 56                	jae    0x1401d3a16
1401d39c0:	48 83 fe 08          	cmp    $0x8,%rsi
1401d39c4:	72 50                	jb     0x1401d3a16
1401d39c6:	48 8b 39             	mov    (%rcx),%rdi
1401d39c9:	4e 8d 04 75 02 00 00 	lea    0x2(,%r14,2),%r8
1401d39d0:	00
1401d39d1:	48 8b d7             	mov    %rdi,%rdx
1401d39d4:	e8 4f 90 12 00       	call   0x1402fca28
1401d39d9:	48 8b 43 18          	mov    0x18(%rbx),%rax
1401d39dd:	48 8d 14 45 02 00 00 	lea    0x2(,%rax,2),%rdx
1401d39e4:	00
1401d39e5:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1401d39ec:	72 18                	jb     0x1401d3a06
1401d39ee:	48 8b 4f f8          	mov    -0x8(%rdi),%rcx
1401d39f2:	48 83 c2 27          	add    $0x27,%rdx
1401d39f6:	48 2b f9             	sub    %rcx,%rdi
1401d39f9:	48 8d 47 f8          	lea    -0x8(%rdi),%rax
1401d39fd:	48 83 f8 1f          	cmp    $0x1f,%rax
1401d3a01:	77 2b                	ja     0x1401d3a2e
1401d3a03:	48 8b f9             	mov    %rcx,%rdi
1401d3a06:	48 8b cf             	mov    %rdi,%rcx
1401d3a09:	e8 76 68 12 00       	call   0x1402fa284
1401d3a0e:	48 c7 43 18 07 00 00 	movq   $0x7,0x18(%rbx)
1401d3a15:	00
1401d3a16:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
1401d3a1b:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
1401d3a20:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1401d3a25:	48 83 c4 20          	add    $0x20,%rsp
1401d3a29:	41 5e                	pop    %r14
1401d3a2b:	5f                   	pop    %rdi
1401d3a2c:	5b                   	pop    %rbx
1401d3a2d:	c3                   	ret
1401d3a2e:	ff 15 c4 65 15 00    	call   *0x1565c4(%rip)        # 0x140329ff8
1401d3a34:	cc                   	int3
1401d3a35:	e8 06 46 eb ff       	call   0x140088040
1401d3a3a:	cc                   	int3
1401d3a3b:	cc                   	int3
1401d3a3c:	cc                   	int3
1401d3a3d:	cc                   	int3
1401d3a3e:	cc                   	int3
1401d3a3f:	cc                   	int3
1401d3a40:	e9 4b 01 00 00       	jmp    0x1401d3b90
1401d3a45:	cc                   	int3
1401d3a46:	cc                   	int3
1401d3a47:	cc                   	int3
1401d3a48:	cc                   	int3
1401d3a49:	cc                   	int3
1401d3a4a:	cc                   	int3
1401d3a4b:	cc                   	int3
1401d3a4c:	cc                   	int3
1401d3a4d:	cc                   	int3
1401d3a4e:	cc                   	int3
1401d3a4f:	cc                   	int3
1401d3a50:	40 53                	rex push %rbx
1401d3a52:	48 81 ec 40 01 00 00 	sub    $0x140,%rsp
1401d3a59:	33 db                	xor    %ebx,%ebx
1401d3a5b:	89 9c 24 58 01 00 00 	mov    %ebx,0x158(%rsp)
1401d3a62:	ff 15 28 58 15 00    	call   *0x155828(%rip)        # 0x140329290
1401d3a68:	85 c0                	test   %eax,%eax
1401d3a6a:	75 5f                	jne    0x1401d3acb
1401d3a6c:	e8 6f cb ef ff       	call   0x1400d05e0
1401d3a71:	89 44 24 28          	mov    %eax,0x28(%rsp)
1401d3a75:	44 8d 4b 1c          	lea    0x1c(%rbx),%r9d
1401d3a79:	4c 8d 05 68 70 17 00 	lea    0x177068(%rip),%r8        # 0x14034aae8
1401d3a80:	c7 44 24 20 04 00 00 	movl   $0x4,0x20(%rsp)
1401d3a87:	00
1401d3a88:	48 8d 15 81 70 17 00 	lea    0x177081(%rip),%rdx        # 0x14034ab10
1401d3a8f:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3a94:	e8 27 06 14 00       	call   0x1403140c0
1401d3a99:	48 8b c8             	mov    %rax,%rcx
1401d3a9c:	48 8d 15 1d 70 17 00 	lea    0x17701d(%rip),%rdx        # 0x14034aac0
1401d3aa3:	e8 08 59 eb ff       	call   0x1400893b0
1401d3aa8:	48 8b c8             	mov    %rax,%rcx
1401d3aab:	48 8d 15 4a 5f 17 00 	lea    0x175f4a(%rip),%rdx        # 0x1403499fc
1401d3ab2:	e8 f9 58 eb ff       	call   0x1400893b0
1401d3ab7:	48 8b c8             	mov    %rax,%rcx
1401d3aba:	48 8d 15 ef 6f 17 00 	lea    0x176fef(%rip),%rdx        # 0x14034aab0
1401d3ac1:	e8 ea 58 eb ff       	call   0x1400893b0
1401d3ac6:	bb 01 00 00 00       	mov    $0x1,%ebx
1401d3acb:	f6 c3 01             	test   $0x1,%bl
1401d3ace:	74 0a                	je     0x1401d3ada
1401d3ad0:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3ad5:	e8 56 09 14 00       	call   0x140314430
1401d3ada:	48 81 c4 40 01 00 00 	add    $0x140,%rsp
1401d3ae1:	5b                   	pop    %rbx
1401d3ae2:	c3                   	ret
1401d3ae3:	cc                   	int3
1401d3ae4:	cc                   	int3
1401d3ae5:	cc                   	int3
1401d3ae6:	cc                   	int3
1401d3ae7:	cc                   	int3
1401d3ae8:	cc                   	int3
1401d3ae9:	cc                   	int3
1401d3aea:	cc                   	int3
1401d3aeb:	cc                   	int3
1401d3aec:	cc                   	int3
1401d3aed:	cc                   	int3
1401d3aee:	cc                   	int3
1401d3aef:	cc                   	int3
1401d3af0:	40 53                	rex push %rbx
1401d3af2:	48 81 ec 40 01 00 00 	sub    $0x140,%rsp
1401d3af9:	33 db                	xor    %ebx,%ebx
1401d3afb:	89 9c 24 58 01 00 00 	mov    %ebx,0x158(%rsp)
1401d3b02:	ff 15 f8 56 15 00    	call   *0x1556f8(%rip)        # 0x140329200
1401d3b08:	85 c0                	test   %eax,%eax
1401d3b0a:	75 5f                	jne    0x1401d3b6b
1401d3b0c:	e8 cf ca ef ff       	call   0x1400d05e0
1401d3b11:	89 44 24 28          	mov    %eax,0x28(%rsp)
1401d3b15:	44 8d 4b 20          	lea    0x20(%rbx),%r9d
1401d3b19:	4c 8d 05 c8 6f 17 00 	lea    0x176fc8(%rip),%r8        # 0x14034aae8
1401d3b20:	c7 44 24 20 04 00 00 	movl   $0x4,0x20(%rsp)
1401d3b27:	00
1401d3b28:	48 8d 15 61 70 17 00 	lea    0x177061(%rip),%rdx        # 0x14034ab90
1401d3b2f:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3b34:	e8 87 05 14 00       	call   0x1403140c0
1401d3b39:	48 8b c8             	mov    %rax,%rcx
1401d3b3c:	48 8d 15 2d 70 17 00 	lea    0x17702d(%rip),%rdx        # 0x14034ab70
1401d3b43:	e8 68 58 eb ff       	call   0x1400893b0
1401d3b48:	48 8b c8             	mov    %rax,%rcx
1401d3b4b:	48 8d 15 aa 5e 17 00 	lea    0x175eaa(%rip),%rdx        # 0x1403499fc
1401d3b52:	e8 59 58 eb ff       	call   0x1400893b0
1401d3b57:	48 8b c8             	mov    %rax,%rcx
1401d3b5a:	48 8d 15 ff 6f 17 00 	lea    0x176fff(%rip),%rdx        # 0x14034ab60
1401d3b61:	e8 4a 58 eb ff       	call   0x1400893b0
1401d3b66:	bb 01 00 00 00       	mov    $0x1,%ebx
1401d3b6b:	f6 c3 01             	test   $0x1,%bl
1401d3b6e:	74 0a                	je     0x1401d3b7a
1401d3b70:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3b75:	e8 b6 08 14 00       	call   0x140314430
1401d3b7a:	48 81 c4 40 01 00 00 	add    $0x140,%rsp
1401d3b81:	5b                   	pop    %rbx
1401d3b82:	c3                   	ret
1401d3b83:	cc                   	int3
1401d3b84:	cc                   	int3
1401d3b85:	cc                   	int3
1401d3b86:	cc                   	int3
1401d3b87:	cc                   	int3
1401d3b88:	cc                   	int3
1401d3b89:	cc                   	int3
1401d3b8a:	cc                   	int3
1401d3b8b:	cc                   	int3
1401d3b8c:	cc                   	int3
1401d3b8d:	cc                   	int3
1401d3b8e:	cc                   	int3
1401d3b8f:	cc                   	int3
1401d3b90:	40 53                	rex push %rbx
1401d3b92:	48 81 ec 30 01 00 00 	sub    $0x130,%rsp
1401d3b99:	33 db                	xor    %ebx,%ebx
1401d3b9b:	89 9c 24 48 01 00 00 	mov    %ebx,0x148(%rsp)
1401d3ba2:	e8 09 05 00 00       	call   0x1401d40b0
1401d3ba7:	84 c0                	test   %al,%al
1401d3ba9:	75 49                	jne    0x1401d3bf4
1401d3bab:	41 b9 b9 00 00 00    	mov    $0xb9,%r9d
1401d3bb1:	c7 44 24 20 04 00 00 	movl   $0x4,0x20(%rsp)
1401d3bb8:	00
1401d3bb9:	4c 8d 05 50 70 17 00 	lea    0x177050(%rip),%r8        # 0x14034ac10
1401d3bc0:	48 8d 15 f1 71 17 00 	lea    0x1771f1(%rip),%rdx        # 0x14034adb8
1401d3bc7:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3bcc:	e8 8f 02 14 00       	call   0x140313e60
1401d3bd1:	48 8b c8             	mov    %rax,%rcx
1401d3bd4:	48 8d 15 b5 71 17 00 	lea    0x1771b5(%rip),%rdx        # 0x14034ad90
1401d3bdb:	e8 d0 57 eb ff       	call   0x1400893b0
1401d3be0:	48 8b c8             	mov    %rax,%rcx
1401d3be3:	48 8d 15 12 5e 17 00 	lea    0x175e12(%rip),%rdx        # 0x1403499fc
1401d3bea:	e8 c1 57 eb ff       	call   0x1400893b0
1401d3bef:	bb 01 00 00 00       	mov    $0x1,%ebx
1401d3bf4:	f6 c3 01             	test   $0x1,%bl
1401d3bf7:	74 0a                	je     0x1401d3c03
1401d3bf9:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3bfe:	e8 ad 05 14 00       	call   0x1403141b0
1401d3c03:	48 81 c4 30 01 00 00 	add    $0x130,%rsp
1401d3c0a:	5b                   	pop    %rbx
1401d3c0b:	c3                   	ret
1401d3c0c:	cc                   	int3
1401d3c0d:	cc                   	int3
1401d3c0e:	cc                   	int3
1401d3c0f:	cc                   	int3
1401d3c10:	48 83 ec 38          	sub    $0x38,%rsp
1401d3c14:	48 8d 05 ed 6f 17 00 	lea    0x176fed(%rip),%rax        # 0x14034ac08
1401d3c1b:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1401d3c20:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1401d3c25:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1401d3c2a:	41 b1 01             	mov    $0x1,%r9b
1401d3c2d:	e8 6e 01 00 00       	call   0x1401d3da0
1401d3c32:	48 83 c4 38          	add    $0x38,%rsp
1401d3c36:	c3                   	ret
1401d3c37:	cc                   	int3
1401d3c38:	cc                   	int3
1401d3c39:	cc                   	int3
1401d3c3a:	cc                   	int3
1401d3c3b:	cc                   	int3
1401d3c3c:	cc                   	int3
1401d3c3d:	cc                   	int3
1401d3c3e:	cc                   	int3
1401d3c3f:	cc                   	int3
1401d3c40:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401d3c45:	57                   	push   %rdi
1401d3c46:	48 81 ec 50 01 00 00 	sub    $0x150,%rsp
1401d3c4d:	48 89 4c 24 38       	mov    %rcx,0x38(%rsp)
1401d3c52:	48 8d 05 47 70 17 00 	lea    0x177047(%rip),%rax        # 0x14034aca0
1401d3c59:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1401d3c5e:	49 8b d8             	mov    %r8,%rbx
1401d3c61:	48 8b fa             	mov    %rdx,%rdi
1401d3c64:	4d 85 c0             	test   %r8,%r8
1401d3c67:	0f 84 7f 00 00 00    	je     0x1401d3cec
1401d3c6d:	0f 1f 00             	nopl   (%rax)
1401d3c70:	4c 8b c3             	mov    %rbx,%r8
1401d3c73:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3c78:	48 8b d7             	mov    %rdi,%rdx
1401d3c7b:	ff 10                	call   *(%rax)
1401d3c7d:	48 85 c0             	test   %rax,%rax
1401d3c80:	78 0f                	js     0x1401d3c91
1401d3c82:	48 03 f8             	add    %rax,%rdi
1401d3c85:	48 2b d8             	sub    %rax,%rbx
1401d3c88:	74 62                	je     0x1401d3cec
1401d3c8a:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1401d3c8f:	eb df                	jmp    0x1401d3c70
1401d3c91:	e8 4a c9 ef ff       	call   0x1400d05e0
1401d3c96:	89 44 24 28          	mov    %eax,0x28(%rsp)
1401d3c9a:	4c 8d 05 6f 6f 17 00 	lea    0x176f6f(%rip),%r8        # 0x14034ac10
1401d3ca1:	41 b9 86 00 00 00    	mov    $0x86,%r9d
1401d3ca7:	c7 44 24 20 02 00 00 	movl   $0x2,0x20(%rsp)
1401d3cae:	00
1401d3caf:	48 8d 15 8a 70 17 00 	lea    0x17708a(%rip),%rdx        # 0x14034ad40
1401d3cb6:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1401d3cbb:	e8 00 04 14 00       	call   0x1403140c0
1401d3cc0:	48 8b c8             	mov    %rax,%rcx
1401d3cc3:	48 8d 15 26 6f 17 00 	lea    0x176f26(%rip),%rdx        # 0x14034abf0
1401d3cca:	e8 e1 56 eb ff       	call   0x1400893b0
1401d3ccf:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1401d3cd4:	e8 57 07 14 00       	call   0x140314430
1401d3cd9:	32 c0                	xor    %al,%al
1401d3cdb:	48 8b 9c 24 60 01 00 	mov    0x160(%rsp),%rbx
1401d3ce2:	00
1401d3ce3:	48 81 c4 50 01 00 00 	add    $0x150,%rsp
1401d3cea:	5f                   	pop    %rdi
1401d3ceb:	c3                   	ret
1401d3cec:	48 8b 9c 24 60 01 00 	mov    0x160(%rsp),%rbx
1401d3cf3:	00
1401d3cf4:	b0 01                	mov    $0x1,%al
1401d3cf6:	48 81 c4 50 01 00 00 	add    $0x150,%rsp
1401d3cfd:	5f                   	pop    %rdi
1401d3cfe:	c3                   	ret
1401d3cff:	cc                   	int3
1401d3d00:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401d3d05:	57                   	push   %rdi
1401d3d06:	48 81 ec 40 01 00 00 	sub    $0x140,%rsp
1401d3d0d:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1401d3d11:	33 db                	xor    %ebx,%ebx
1401d3d13:	89 9c 24 50 01 00 00 	mov    %ebx,0x150(%rsp)
1401d3d1a:	41 0f b6 f9          	movzbl %r9b,%edi
1401d3d1e:	e8 dd 0c 00 00       	call   0x1401d4a00
1401d3d23:	48 85 c0             	test   %rax,%rax
1401d3d26:	79 5c                	jns    0x1401d3d84
1401d3d28:	40 84 ff             	test   %dil,%dil
1401d3d2b:	74 41                	je     0x1401d3d6e
1401d3d2d:	e8 ae c8 ef ff       	call   0x1400d05e0
1401d3d32:	89 44 24 28          	mov    %eax,0x28(%rsp)
1401d3d36:	44 8d 4b 24          	lea    0x24(%rbx),%r9d
1401d3d3a:	4c 8d 05 cf 6e 17 00 	lea    0x176ecf(%rip),%r8        # 0x14034ac10
1401d3d41:	c7 44 24 20 02 00 00 	movl   $0x2,0x20(%rsp)
1401d3d48:	00
1401d3d49:	48 8d 15 e0 6e 17 00 	lea    0x176ee0(%rip),%rdx        # 0x14034ac30
1401d3d50:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3d55:	e8 66 03 14 00       	call   0x1403140c0
1401d3d5a:	48 8b c8             	mov    %rax,%rcx
1401d3d5d:	48 8d 15 7c 6e 17 00 	lea    0x176e7c(%rip),%rdx        # 0x14034abe0
1401d3d64:	e8 47 56 eb ff       	call   0x1400893b0
1401d3d69:	bb 01 00 00 00       	mov    $0x1,%ebx
1401d3d6e:	f6 c3 01             	test   $0x1,%bl
1401d3d71:	74 0a                	je     0x1401d3d7d
1401d3d73:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401d3d78:	e8 b3 06 14 00       	call   0x140314430
1401d3d7d:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
1401d3d84:	48 8b 9c 24 58 01 00 	mov    0x158(%rsp),%rbx
1401d3d8b:	00
1401d3d8c:	48 81 c4 40 01 00 00 	add    $0x140,%rsp
1401d3d93:	5f                   	pop    %rdi
1401d3d94:	c3                   	ret
1401d3d95:	cc                   	int3
1401d3d96:	cc                   	int3
1401d3d97:	cc                   	int3
1401d3d98:	cc                   	int3
1401d3d99:	cc                   	int3
1401d3d9a:	cc                   	int3
1401d3d9b:	cc                   	int3
1401d3d9c:	cc                   	int3
1401d3d9d:	cc                   	int3
1401d3d9e:	cc                   	int3
1401d3d9f:	cc                   	int3
1401d3da0:	40 53                	rex push %rbx
1401d3da2:	55                   	push   %rbp
1401d3da3:	56                   	push   %rsi
1401d3da4:	57                   	push   %rdi
1401d3da5:	41 54                	push   %r12
1401d3da7:	41 56                	push   %r14
1401d3da9:	41 57                	push   %r15
1401d3dab:	48 81 ec 40 01 00 00 	sub    $0x140,%rsp
1401d3db2:	45 33 ff             	xor    %r15d,%r15d
1401d3db5:	41 0f b6 e9          	movzbl %r9b,%ebp
1401d3db9:	44 89 7c 24 30       	mov    %r15d,0x30(%rsp)
1401d3dbe:	4d 8b e0             	mov    %r8,%r12
1401d3dc1:	48 8b fa             	mov    %rdx,%rdi
1401d3dc4:	4c 8b f1             	mov    %rcx,%r14
1401d3dc7:	41 8b f7             	mov    %r15d,%esi
1401d3dca:	49 8b d8             	mov    %r8,%rbx