1404a569b:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
1404a569f:	e9 d8 02 00 00       	jmp    0x1404a597c
1404a56a4:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
1404a56a8:	48 85 c9             	test   %rcx,%rcx
1404a56ab:	74 0a                	je     0x1404a56b7
1404a56ad:	ba 18 00 00 00       	mov    $0x18,%edx
1404a56b2:	e8 8d 5a 97 00       	call   0x140e1b144
1404a56b7:	33 db                	xor    %ebx,%ebx
1404a56b9:	48 89 5f 20          	mov    %rbx,0x20(%rdi)
1404a56bd:	e9 ba 02 00 00       	jmp    0x1404a597c
1404a56c2:	48 8b 4f 28          	mov    0x28(%rdi),%rcx
1404a56c6:	48 85 c9             	test   %rcx,%rcx
1404a56c9:	74 0a                	je     0x1404a56d5
1404a56cb:	ba 18 00 00 00       	mov    $0x18,%edx
1404a56d0:	e8 6f 5a 97 00       	call   0x140e1b144
1404a56d5:	33 db                	xor    %ebx,%ebx
1404a56d7:	48 89 5f 28          	mov    %rbx,0x28(%rdi)
1404a56db:	e9 9c 02 00 00       	jmp    0x1404a597c
1404a56e0:	48 8b 4f 30          	mov    0x30(%rdi),%rcx
1404a56e4:	48 85 c9             	test   %rcx,%rcx
1404a56e7:	74 0a                	je     0x1404a56f3
1404a56e9:	ba 18 00 00 00       	mov    $0x18,%edx
1404a56ee:	e8 51 5a 97 00       	call   0x140e1b144
1404a56f3:	33 db                	xor    %ebx,%ebx
1404a56f5:	48 89 5f 30          	mov    %rbx,0x30(%rdi)
1404a56f9:	e9 7e 02 00 00       	jmp    0x1404a597c
1404a56fe:	48 8b 77 38          	mov    0x38(%rdi),%rsi
1404a5702:	33 db                	xor    %ebx,%ebx
1404a5704:	48 85 f6             	test   %rsi,%rsi
1404a5707:	74 22                	je     0x1404a572b
1404a5709:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1404a570d:	48 85 c9             	test   %rcx,%rcx
1404a5710:	74 05                	je     0x1404a5717
1404a5712:	e8 2d 5a 97 00       	call   0x140e1b144
1404a5717:	ba 28 00 00 00       	mov    $0x28,%edx
1404a571c:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a5720:	48 8b ce             	mov    %rsi,%rcx
1404a5723:	89 5e 10             	mov    %ebx,0x10(%rsi)
1404a5726:	e8 19 5a 97 00       	call   0x140e1b144
1404a572b:	48 89 5f 38          	mov    %rbx,0x38(%rdi)
1404a572f:	e9 48 02 00 00       	jmp    0x1404a597c
1404a5734:	48 8b 6f 40          	mov    0x40(%rdi),%rbp
1404a5738:	33 db                	xor    %ebx,%ebx
1404a573a:	48 85 ed             	test   %rbp,%rbp
1404a573d:	74 6d                	je     0x1404a57ac
1404a573f:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1404a5743:	48 85 f6             	test   %rsi,%rsi
1404a5746:	74 57                	je     0x1404a579f
1404a5748:	48 8b 0e             	mov    (%rsi),%rcx
1404a574b:	48 85 c9             	test   %rcx,%rcx
1404a574e:	74 42                	je     0x1404a5792
1404a5750:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1404a5754:	48 2b d1             	sub    %rcx,%rdx
1404a5757:	48 d1 fa             	sar    $1,%rdx
1404a575a:	48 03 d2             	add    %rdx,%rdx
1404a575d:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1404a5764:	72 1c                	jb     0x1404a5782
1404a5766:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1404a576a:	48 83 c2 27          	add    $0x27,%rdx
1404a576e:	49 2b c8             	sub    %r8,%rcx
1404a5771:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1404a5775:	48 83 f8 1f          	cmp    $0x1f,%rax
1404a5779:	0f 87 12 02 00 00    	ja     0x1404a5991
1404a577f:	49 8b c8             	mov    %r8,%rcx
1404a5782:	e8 bd 59 97 00       	call   0x140e1b144
1404a5787:	48 89 1e             	mov    %rbx,(%rsi)
1404a578a:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a578e:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
1404a5792:	ba 18 00 00 00       	mov    $0x18,%edx
1404a5797:	48 8b ce             	mov    %rsi,%rcx
1404a579a:	e8 a5 59 97 00       	call   0x140e1b144
1404a579f:	ba 28 00 00 00       	mov    $0x28,%edx
1404a57a4:	48 8b cd             	mov    %rbp,%rcx
1404a57a7:	e8 98 59 97 00       	call   0x140e1b144
1404a57ac:	48 89 5f 40          	mov    %rbx,0x40(%rdi)
1404a57b0:	e9 c7 01 00 00       	jmp    0x1404a597c
1404a57b5:	48 8b 6f 48          	mov    0x48(%rdi),%rbp
1404a57b9:	33 db                	xor    %ebx,%ebx
1404a57bb:	48 85 ed             	test   %rbp,%rbp
1404a57be:	0f 84 bc 00 00 00    	je     0x1404a5880
1404a57c4:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1404a57c8:	48 85 c9             	test   %rcx,%rcx
1404a57cb:	74 0a                	je     0x1404a57d7
1404a57cd:	ba 0c 00 00 00       	mov    $0xc,%edx
1404a57d2:	e8 6d 59 97 00       	call   0x140e1b144
1404a57d7:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1404a57db:	48 89 5d 10          	mov    %rbx,0x10(%rbp)
1404a57df:	48 85 f6             	test   %rsi,%rsi
1404a57e2:	74 31                	je     0x1404a5815
1404a57e4:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
1404a57e9:	4c 8b 76 08          	mov    0x8(%rsi),%r14
1404a57ed:	48 8b 36             	mov    (%rsi),%rsi
1404a57f0:	49 3b f6             	cmp    %r14,%rsi
1404a57f3:	74 1b                	je     0x1404a5810
1404a57f5:	48 8b 0e             	mov    (%rsi),%rcx
1404a57f8:	48 85 c9             	test   %rcx,%rcx
1404a57fb:	74 0a                	je     0x1404a5807
1404a57fd:	ba 0c 00 00 00       	mov    $0xc,%edx
1404a5802:	e8 3d 59 97 00       	call   0x140e1b144
1404a5807:	48 83 c6 08          	add    $0x8,%rsi
1404a580b:	49 3b f6             	cmp    %r14,%rsi
1404a580e:	75 e5                	jne    0x1404a57f5
1404a5810:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
1404a5815:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1404a5819:	48 85 f6             	test   %rsi,%rsi
1404a581c:	74 55                	je     0x1404a5873
1404a581e:	48 8b 0e             	mov    (%rsi),%rcx
1404a5821:	48 85 c9             	test   %rcx,%rcx
1404a5824:	74 40                	je     0x1404a5866
1404a5826:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1404a582a:	48 2b d1             	sub    %rcx,%rdx
1404a582d:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
1404a5831:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1404a5838:	72 1c                	jb     0x1404a5856
1404a583a:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1404a583e:	48 83 c2 27          	add    $0x27,%rdx
1404a5842:	49 2b c8             	sub    %r8,%rcx
1404a5845:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1404a5849:	48 83 f8 1f          	cmp    $0x1f,%rax
1404a584d:	0f 87 3e 01 00 00    	ja     0x1404a5991
1404a5853:	49 8b c8             	mov    %r8,%rcx
1404a5856:	e8 e9 58 97 00       	call   0x140e1b144
1404a585b:	48 89 1e             	mov    %rbx,(%rsi)
1404a585e:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a5862:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
1404a5866:	ba 18 00 00 00       	mov    $0x18,%edx
1404a586b:	48 8b ce             	mov    %rsi,%rcx
1404a586e:	e8 d1 58 97 00       	call   0x140e1b144
1404a5873:	ba 28 00 00 00       	mov    $0x28,%edx
1404a5878:	48 8b cd             	mov    %rbp,%rcx
1404a587b:	e8 c4 58 97 00       	call   0x140e1b144
1404a5880:	48 89 5f 48          	mov    %rbx,0x48(%rdi)
1404a5884:	e9 f3 00 00 00       	jmp    0x1404a597c
1404a5889:	48 8b 5f 50          	mov    0x50(%rdi),%rbx
1404a588d:	48 85 db             	test   %rbx,%rbx
1404a5890:	74 15                	je     0x1404a58a7
1404a5892:	48 8b cb             	mov    %rbx,%rcx
1404a5895:	e8 36 08 00 00       	call   0x1404a60d0
1404a589a:	ba 28 00 00 00       	mov    $0x28,%edx
1404a589f:	48 8b cb             	mov    %rbx,%rcx
1404a58a2:	e8 9d 58 97 00       	call   0x140e1b144
1404a58a7:	33 db                	xor    %ebx,%ebx
1404a58a9:	48 89 5f 50          	mov    %rbx,0x50(%rdi)
1404a58ad:	e9 ca 00 00 00       	jmp    0x1404a597c
1404a58b2:	48 8b 4f 58          	mov    0x58(%rdi),%rcx
1404a58b6:	48 85 c9             	test   %rcx,%rcx
1404a58b9:	74 0a                	je     0x1404a58c5
1404a58bb:	ba 18 00 00 00       	mov    $0x18,%edx
1404a58c0:	e8 7f 58 97 00       	call   0x140e1b144
1404a58c5:	33 db                	xor    %ebx,%ebx
1404a58c7:	48 89 5f 58          	mov    %rbx,0x58(%rdi)
1404a58cb:	e9 ac 00 00 00       	jmp    0x1404a597c
1404a58d0:	48 8b 6f 60          	mov    0x60(%rdi),%rbp
1404a58d4:	33 db                	xor    %ebx,%ebx
1404a58d6:	48 85 ed             	test   %rbp,%rbp
1404a58d9:	74 69                	je     0x1404a5944
1404a58db:	48 8b 75 10          	mov    0x10(%rbp),%rsi
1404a58df:	48 85 f6             	test   %rsi,%rsi
1404a58e2:	74 53                	je     0x1404a5937
1404a58e4:	48 8b 0e             	mov    (%rsi),%rcx
1404a58e7:	48 85 c9             	test   %rcx,%rcx
1404a58ea:	74 3e                	je     0x1404a592a
1404a58ec:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1404a58f0:	48 2b d1             	sub    %rcx,%rdx
1404a58f3:	48 d1 fa             	sar    $1,%rdx
1404a58f6:	48 03 d2             	add    %rdx,%rdx
1404a58f9:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1404a5900:	72 18                	jb     0x1404a591a
1404a5902:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1404a5906:	48 83 c2 27          	add    $0x27,%rdx
1404a590a:	49 2b c8             	sub    %r8,%rcx
1404a590d:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1404a5911:	48 83 f8 1f          	cmp    $0x1f,%rax
1404a5915:	77 7a                	ja     0x1404a5991
1404a5917:	49 8b c8             	mov    %r8,%rcx
1404a591a:	e8 25 58 97 00       	call   0x140e1b144
1404a591f:	48 89 1e             	mov    %rbx,(%rsi)
1404a5922:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a5926:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
1404a592a:	ba 18 00 00 00       	mov    $0x18,%edx
1404a592f:	48 8b ce             	mov    %rsi,%rcx
1404a5932:	e8 0d 58 97 00       	call   0x140e1b144
1404a5937:	ba 30 00 00 00       	mov    $0x30,%edx
1404a593c:	48 8b cd             	mov    %rbp,%rcx
1404a593f:	e8 00 58 97 00       	call   0x140e1b144
1404a5944:	48 89 5f 60          	mov    %rbx,0x60(%rdi)
1404a5948:	eb 32                	jmp    0x1404a597c
1404a594a:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
1404a594e:	48 85 c9             	test   %rcx,%rcx
1404a5951:	74 0a                	je     0x1404a595d
1404a5953:	ba 18 00 00 00       	mov    $0x18,%edx
1404a5958:	e8 e7 57 97 00       	call   0x140e1b144
1404a595d:	33 db                	xor    %ebx,%ebx
1404a595f:	48 89 5f 68          	mov    %rbx,0x68(%rdi)
1404a5963:	eb 17                	jmp    0x1404a597c
1404a5965:	48 8b 4f 70          	mov    0x70(%rdi),%rcx
1404a5969:	48 85 c9             	test   %rcx,%rcx
1404a596c:	74 05                	je     0x1404a5973
1404a596e:	e8 d1 57 97 00       	call   0x140e1b144
1404a5973:	33 db                	xor    %ebx,%ebx
1404a5975:	48 89 5f 70          	mov    %rbx,0x70(%rdi)
1404a5979:	89 5f 78             	mov    %ebx,0x78(%rdi)
1404a597c:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1404a5981:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
1404a5986:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404a598b:	48 83 c4 20          	add    $0x20,%rsp
1404a598f:	5f                   	pop    %rdi
1404a5990:	c3                   	ret
1404a5991:	e8 0e 48 98 00       	call   0x140e2a1a4
1404a5996:	cc                   	int3
1404a5997:	90                   	nop
1404a5998:	4a 56                	rex.WX push %rsi
1404a599a:	4a 00 68 56          	rex.WX add %bpl,0x56(%rax)
1404a599e:	4a 00 86 56 4a 00 a4 	rex.WX add %al,-0x5bffb5aa(%rsi)
1404a59a5:	56                   	push   %rsi
1404a59a6:	4a 00 c2             	rex.WX add %al,%dl
1404a59a9:	56                   	push   %rsi
1404a59aa:	4a 00 e0             	rex.WX add %spl,%al
1404a59ad:	56                   	push   %rsi
1404a59ae:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59b2:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59b6:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59ba:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59be:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59c2:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59c6:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59ca:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59ce:	4a 00 fe             	rex.WX add %dil,%sil
1404a59d1:	56                   	push   %rsi
1404a59d2:	4a 00 34 57          	rex.WX add %sil,(%rdi,%r10,2)
1404a59d6:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59da:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59de:	4a 00 65 59          	rex.WX add %spl,0x59(%rbp)
1404a59e2:	4a 00 b5 57 4a 00 89 	rex.WX add %sil,-0x76ffb5a9(%rbp)
1404a59e9:	58                   	pop    %rax
1404a59ea:	4a 00 b2 58 4a 00 d0 	rex.WX add %sil,-0x2fffb5a8(%rdx)
1404a59f1:	58                   	pop    %rax
1404a59f2:	4a 00 4a 59          	rex.WX add %cl,0x59(%rdx)
1404a59f6:	4a 00 cc             	rex.WX add %cl,%spl
1404a59f9:	cc                   	int3
1404a59fa:	cc                   	int3
1404a59fb:	cc                   	int3
1404a59fc:	cc                   	int3
1404a59fd:	cc                   	int3
1404a59fe:	cc                   	int3
1404a59ff:	cc                   	int3
1404a5a00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1404a5a05:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1404a5a0a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1404a5a0f:	57                   	push   %rdi
1404a5a10:	48 83 ec 20          	sub    $0x20,%rsp
1404a5a14:	0f b6 01             	movzbl (%rcx),%eax
1404a5a17:	48 8b f9             	mov    %rcx,%rdi
1404a5a1a:	ff c8                	dec    %eax
1404a5a1c:	3d 97 00 00 00       	cmp    $0x97,%eax
1404a5a21:	0f 87 58 05 00 00    	ja     0x1404a5f7f
1404a5a27:	48 8d 0d d2 a5 b5 ff 	lea    -0x4a5a2e(%rip),%rcx        # 0x140000000
1404a5a2e:	48 98                	cltq
1404a5a30:	0f b6 84 01 2c 60 4a 	movzbl 0x4a602c(%rcx,%rax,1),%eax
1404a5a37:	00
1404a5a38:	8b 94 81 bc 5f 4a 00 	mov    0x4a5fbc(%rcx,%rax,4),%edx
1404a5a3f:	48 03 d1             	add    %rcx,%rdx
1404a5a42:	ff e2                	jmp    *%rdx
1404a5a44:	48 8b 77 08          	mov    0x8(%rdi),%rsi
1404a5a48:	33 db                	xor    %ebx,%ebx
1404a5a4a:	48 85 f6             	test   %rsi,%rsi
1404a5a4d:	74 22                	je     0x1404a5a71
1404a5a4f:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1404a5a53:	48 85 c9             	test   %rcx,%rcx
1404a5a56:	74 05                	je     0x1404a5a5d
1404a5a58:	e8 e7 56 97 00       	call   0x140e1b144
1404a5a5d:	ba 28 00 00 00       	mov    $0x28,%edx
1404a5a62:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a5a66:	48 8b ce             	mov    %rsi,%rcx
1404a5a69:	89 5e 10             	mov    %ebx,0x10(%rsi)
1404a5a6c:	e8 d3 56 97 00       	call   0x140e1b144
1404a5a71:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
1404a5a75:	e9 25 05 00 00       	jmp    0x1404a5f9f
1404a5a7a:	48 8b 77 10          	mov    0x10(%rdi),%rsi
1404a5a7e:	33 db                	xor    %ebx,%ebx
1404a5a80:	48 85 f6             	test   %rsi,%rsi
1404a5a83:	74 22                	je     0x1404a5aa7
1404a5a85:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1404a5a89:	48 85 c9             	test   %rcx,%rcx
1404a5a8c:	74 05                	je     0x1404a5a93
1404a5a8e:	e8 b1 56 97 00       	call   0x140e1b144
1404a5a93:	ba 28 00 00 00       	mov    $0x28,%edx
1404a5a98:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a5a9c:	48 8b ce             	mov    %rsi,%rcx
1404a5a9f:	89 5e 10             	mov    %ebx,0x10(%rsi)
1404a5aa2:	e8 9d 56 97 00       	call   0x140e1b144
1404a5aa7:	48 89 5f 10          	mov    %rbx,0x10(%rdi)
1404a5aab:	e9 ef 04 00 00       	jmp    0x1404a5f9f
1404a5ab0:	48 8b 6f 18          	mov    0x18(%rdi),%rbp
1404a5ab4:	33 db                	xor    %ebx,%ebx
1404a5ab6:	48 85 ed             	test   %rbp,%rbp
1404a5ab9:	74 6d                	je     0x1404a5b28
1404a5abb:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1404a5abf:	48 85 f6             	test   %rsi,%rsi
1404a5ac2:	74 57                	je     0x1404a5b1b
1404a5ac4:	48 8b 0e             	mov    (%rsi),%rcx
1404a5ac7:	48 85 c9             	test   %rcx,%rcx
1404a5aca:	74 42                	je     0x1404a5b0e
1404a5acc:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1404a5ad0:	48 2b d1             	sub    %rcx,%rdx
1404a5ad3:	48 d1 fa             	sar    $1,%rdx
1404a5ad6:	48 03 d2             	add    %rdx,%rdx
1404a5ad9:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1404a5ae0:	72 1c                	jb     0x1404a5afe
1404a5ae2:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1404a5ae6:	48 83 c2 27          	add    $0x27,%rdx
1404a5aea:	49 2b c8             	sub    %r8,%rcx
1404a5aed:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1404a5af1:	48 83 f8 1f          	cmp    $0x1f,%rax
1404a5af5:	0f 87 b9 04 00 00    	ja     0x1404a5fb4
1404a5afb:	49 8b c8             	mov    %r8,%rcx
1404a5afe:	e8 41 56 97 00       	call   0x140e1b144
1404a5b03:	48 89 1e             	mov    %rbx,(%rsi)
1404a5b06:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404a5b0a:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
1404a5b0e:	ba 18 00 00 00       	mov    $0x18,%edx
1404a5b13:	48 8b ce             	mov    %rsi,%rcx
1404a5b16:	e8 29 56 97 00       	call   0x140e1b144
1404a5b1b:	ba 28 00 00 00       	mov    $0x28,%edx
1404a5b20:	48 8b cd             	mov    %rbp,%rcx
1404a5b23:	e8 1c 56 97 00       	call   0x140e1b144
1404a5b28:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
1404a5b2c:	e9 6e 04 00 00       	jmp    0x1404a5f9f
1404a5b31:	48 8b 6f 20          	mov    0x20(%rdi),%rbp
1404a5b35:	33 db                	xor    %ebx,%ebx
1404a5b37:	48 85 ed             	test   %rbp,%rbp
1404a5b3a:	74 6d                	je     0x1404a5ba9
1404a5b3c:	48 8b 75 08          	mov    0x8(%rbp),%rsi
1404a5b40:	48 85 f6             	test   %rsi,%rsi
1404a5b43:	74 57                	je     0x1404a5b9c
1404a5b45:	48 8b 0e             	mov    (%rsi),%rcx
1404a5b48:	48 85 c9             	test   %rcx,%rcx
1404a5b4b:	74 42                	je     0x1404a5b8f
1404a5b4d:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1404a5b51:	48 2b d1             	sub    %rcx,%rdx
1404a5b54:	48 d1 fa             	sar    $1,%rdx
1404a5b57:	48 03 d2             	add    %rdx,%rdx
1404a5b5a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1404a5b61:	72 1c                	jb     0x1404a5b7f
1404a5b63:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1404a5b67:	48 83 c2 27          	add    $0x27,%rdx
1404a5b6b:	49 2b c8             	sub    %r8,%rcx
1404a5b6e:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1404a5b72:	48 83 f8 1f          	cmp    $0x1f,%rax
1404a5b76:	0f 87 38 04 00 00    	ja     0x1404a5fb4