140170687:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14017068e:	00 00
140170690:	8b 84 37 c8 02 00 00 	mov    0x2c8(%rdi,%rsi,1),%eax
140170697:	e9 ef fe ff ff       	jmp    0x14017058b
14017069c:	41 b8 d7 0c 00 00    	mov    $0xcd7,%r8d
1401706a2:	48 8d 15 5d 3d 0b 00 	lea    0xb3d5d(%rip),%rdx        # 0x140224406
1401706a9:	48 8d 0d 11 4b 0b 00 	lea    0xb4b11(%rip),%rcx        # 0x1402251c1
1401706b0:	ff 15 22 ed 13 00    	call   *0x13ed22(%rip)        # 0x1402af3d8
1401706b6:	90                   	nop
1401706b7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1401706be:	00 00
1401706c0:	41 57                	push   %r15
1401706c2:	41 56                	push   %r14
1401706c4:	41 55                	push   %r13
1401706c6:	41 54                	push   %r12
1401706c8:	55                   	push   %rbp
1401706c9:	57                   	push   %rdi
1401706ca:	56                   	push   %rsi
1401706cb:	53                   	push   %rbx
1401706cc:	48 81 ec 08 01 00 00 	sub    $0x108,%rsp
1401706d3:	48 8b 84 24 70 01 00 	mov    0x170(%rsp),%rax
1401706da:	00
1401706db:	48 89 84 24 98 00 00 	mov    %rax,0x98(%rsp)
1401706e2:	00
1401706e3:	48 8b 84 24 78 01 00 	mov    0x178(%rsp),%rax
1401706ea:	00
1401706eb:	48 89 cb             	mov    %rcx,%rbx
1401706ee:	48 89 94 24 a8 00 00 	mov    %rdx,0xa8(%rsp)
1401706f5:	00
1401706f6:	48 89 84 24 b8 00 00 	mov    %rax,0xb8(%rsp)
1401706fd:	00
1401706fe:	48 8b 05 eb 83 0c 00 	mov    0xc83eb(%rip),%rax        # 0x140238af0
140170705:	44 89 84 24 60 01 00 	mov    %r8d,0x160(%rsp)
14017070c:	00
14017070d:	48 8b 10             	mov    (%rax),%rdx
140170710:	48 89 94 24 f8 00 00 	mov    %rdx,0xf8(%rsp)
140170717:	00
140170718:	48 8b 51 78          	mov    0x78(%rcx),%rdx
14017071c:	44 89 c1             	mov    %r8d,%ecx
14017071f:	49 89 c8             	mov    %rcx,%r8
140170722:	49 c1 e0 04          	shl    $0x4,%r8
140170726:	48 8d 82 d8 00 00 00 	lea    0xd8(%rdx),%rax
14017072d:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
140170734:	00
140170735:	4a 8d 04 02          	lea    (%rdx,%r8,1),%rax
140170739:	8b b0 e4 00 00 00    	mov    0xe4(%rax),%esi
14017073f:	48 89 84 24 80 00 00 	mov    %rax,0x80(%rsp)
140170746:	00
140170747:	85 f6                	test   %esi,%esi
140170749:	0f 8e c1 06 00 00    	jle    0x140170e10
14017074f:	ba 03 00 00 00       	mov    $0x3,%edx
140170754:	48 c1 e1 06          	shl    $0x6,%rcx
140170758:	2b 94 24 60 01 00 00 	sub    0x160(%rsp),%edx
14017075f:	48 c7 44 24 70 00 00 	movq   $0x0,0x70(%rsp)
140170766:	00 00
140170768:	c7 84 24 c4 00 00 00 	movl   $0x1,0xc4(%rsp)
14017076f:	01 00 00 00
140170773:	48 c1 e2 06          	shl    $0x6,%rdx
140170777:	49 8d 04 11          	lea    (%r9,%rdx,1),%rax
14017077b:	48 89 84 24 b0 00 00 	mov    %rax,0xb0(%rsp)
140170782:	00
140170783:	49 8d 04 09          	lea    (%r9,%rcx,1),%rax
140170787:	48 89 84 24 c8 00 00 	mov    %rax,0xc8(%rsp)
14017078e:	00
14017078f:	eb 58                	jmp    0x1401707e9
140170791:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140170798:	3c 52                	cmp    $0x52,%al
14017079a:	74 6d                	je     0x140170809
14017079c:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
1401707a3:	00
1401707a4:	44 8b 84 24 60 01 00 	mov    0x160(%rsp),%r8d
1401707ab:	00
1401707ac:	48 89 fa             	mov    %rdi,%rdx
1401707af:	45 31 c9             	xor    %r9d,%r9d
1401707b2:	e8 a9 fc ff ff       	call   0x140170460
1401707b7:	48 8b 43 78          	mov    0x78(%rbx),%rax
1401707bb:	48 89 fa             	mov    %rdi,%rdx
1401707be:	48 8d 88 80 00 00 00 	lea    0x80(%rax),%rcx
1401707c5:	e8 f6 4f fd ff       	call   0x1401457c0
1401707ca:	48 8b bc 24 80 00 00 	mov    0x80(%rsp),%rdi
1401707d1:	00
1401707d2:	48 83 44 24 70 01    	addq   $0x1,0x70(%rsp)
1401707d8:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
1401707dd:	39 87 e4 00 00 00    	cmp    %eax,0xe4(%rdi)
1401707e3:	0f 8e 37 06 00 00    	jle    0x140170e20
1401707e9:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
1401707f0:	00
1401707f1:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
1401707f6:	48 8b 80 d8 00 00 00 	mov    0xd8(%rax),%rax
1401707fd:	48 8b 3c f8          	mov    (%rax,%rdi,8),%rdi
140170801:	0f b6 47 12          	movzbl 0x12(%rdi),%eax
140170805:	3c 41                	cmp    $0x41,%al
140170807:	75 8f                	jne    0x140170798
140170809:	48 8b 84 24 98 00 00 	mov    0x98(%rsp),%rax
140170810:	00
140170811:	f6 40 28 01          	testb  $0x1,0x28(%rax)
140170815:	0f 84 f6 0a 00 00    	je     0x140171311
14017081b:	44 8b 58 18          	mov    0x18(%rax),%r11d
14017081f:	45 85 db             	test   %r11d,%r11d
140170822:	74 7c                	je     0x1401708a0
140170824:	48 8b 47 08          	mov    0x8(%rdi),%rax
140170828:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
14017082f:	00
140170830:	48 8b 70 28          	mov    0x28(%rax),%rsi
140170834:	48 89 f2             	mov    %rsi,%rdx
140170837:	e8 44 fd f2 ff       	call   0x1400a0580
14017083c:	48 85 c0             	test   %rax,%rax
14017083f:	75 5f                	jne    0x1401708a0
140170841:	48 89 f1             	mov    %rsi,%rcx
140170844:	e8 b7 a1 f5 ff       	call   0x1400caa00
140170849:	4c 8b a4 24 98 00 00 	mov    0x98(%rsp),%r12
140170850:	00
140170851:	48 89 c5             	mov    %rax,%rbp
140170854:	eb 21                	jmp    0x140170877
140170856:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14017085d:	00 00 00
140170860:	c6 00 00             	movb   $0x0,(%rax)
140170863:	48 89 ea             	mov    %rbp,%rdx
140170866:	4c 89 e1             	mov    %r12,%rcx
140170869:	e8 b2 fc f2 ff       	call   0x1400a0520
14017086e:	48 85 c0             	test   %rax,%rax
140170871:	0f 85 b9 04 00 00    	jne    0x140170d30
140170877:	ba 2f 00 00 00       	mov    $0x2f,%edx
14017087c:	48 89 e9             	mov    %rbp,%rcx
14017087f:	e8 2c 96 07 00       	call   0x1401e9eb0
140170884:	48 85 c0             	test   %rax,%rax
140170887:	75 d7                	jne    0x140170860
140170889:	48 89 e9             	mov    %rbp,%rcx
14017088c:	e8 1f 86 f8 ff       	call   0x1400f8eb0
140170891:	e9 1f 06 00 00       	jmp    0x140170eb5
140170896:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14017089d:	00 00 00
1401708a0:	44 8b 84 24 60 01 00 	mov    0x160(%rsp),%r8d
1401708a7:	00
1401708a8:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
1401708af:	00
1401708b0:	45 31 c9             	xor    %r9d,%r9d
1401708b3:	48 89 fa             	mov    %rdi,%rdx
1401708b6:	e8 a5 fb ff ff       	call   0x140170460
1401708bb:	80 7f 12 52          	cmpb   $0x52,0x12(%rdi)
1401708bf:	0f 84 37 04 00 00    	je     0x140170cfc
1401708c5:	48 8b 43 78          	mov    0x78(%rbx),%rax
1401708c9:	48 89 fa             	mov    %rdi,%rdx
1401708cc:	48 8d 88 80 00 00 00 	lea    0x80(%rax),%rcx
1401708d3:	e8 e8 4e fd ff       	call   0x1401457c0
1401708d8:	e9 ed fe ff ff       	jmp    0x1401707ca
1401708dd:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
1401708e1:	48 89 f2             	mov    %rsi,%rdx
1401708e4:	e8 97 fc f2 ff       	call   0x1400a0580
1401708e9:	48 85 c0             	test   %rax,%rax
1401708ec:	74 2f                	je     0x14017091d
1401708ee:	f6 40 28 02          	testb  $0x2,0x28(%rax)
1401708f2:	0f 85 f6 05 00 00    	jne    0x140170eee
1401708f8:	0f b6 90 d0 00 00 00 	movzbl 0xd0(%rax),%edx
1401708ff:	0f b6 8c 24 60 01 00 	movzbl 0x160(%rsp),%ecx
140170906:	00
140170907:	89 d0                	mov    %edx,%eax
140170909:	c0 ea 05             	shr    $0x5,%dl
14017090c:	c0 e8 02             	shr    $0x2,%al
14017090f:	09 d0                	or     %edx,%eax
140170911:	83 e0 07             	and    $0x7,%eax
140170914:	0f a3 c8             	bt     %ecx,%eax
140170917:	0f 82 d1 05 00 00    	jb     0x140170eee
14017091d:	49 83 7c 24 08 01    	cmpq   $0x1,0x8(%r12)
140170923:	0f 87 5c 09 00 00    	ja     0x140171285
140170929:	48 8d ac 24 d0 00 00 	lea    0xd0(%rsp),%rbp
140170930:	00
140170931:	48 89 e9             	mov    %rbp,%rcx
140170934:	e8 07 a0 f2 ff       	call   0x14009a940
140170939:	44 8b 84 24 60 01 00 	mov    0x160(%rsp),%r8d
140170940:	00
140170941:	49 89 f1             	mov    %rsi,%r9
140170944:	48 89 fa             	mov    %rdi,%rdx
140170947:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
14017094e:	00
14017094f:	e8 0c fb ff ff       	call   0x140170460
140170954:	48 8b 47 08          	mov    0x8(%rdi),%rax
140170958:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
14017095c:	66 0f ef c0          	pxor   %xmm0,%xmm0
140170960:	48 c7 84 24 f0 00 00 	movq   $0x0,0xf0(%rsp)
140170967:	00 00 00 00 00
14017096c:	48 8b 50 28          	mov    0x28(%rax),%rdx
140170970:	0f 11 84 24 d0 00 00 	movups %xmm0,0xd0(%rsp)
140170977:	00
140170978:	0f 11 84 24 e0 00 00 	movups %xmm0,0xe0(%rsp)
14017097f:	00
140170980:	e8 9b fb f2 ff       	call   0x1400a0520
140170985:	48 8b 48 10          	mov    0x10(%rax),%rcx
140170989:	4c 8b 68 18          	mov    0x18(%rax),%r13
14017098d:	48 89 8c 24 90 00 00 	mov    %rcx,0x90(%rsp)
140170994:	00
140170995:	4d 85 ed             	test   %r13,%r13
140170998:	0f 84 8b 09 00 00    	je     0x140171329
14017099e:	41 f6 45 28 02       	testb  $0x2,0x28(%r13)
1401709a3:	0f 85 80 09 00 00    	jne    0x140171329
1401709a9:	48 8b 43 78          	mov    0x78(%rbx),%rax
1401709ad:	48 89 f2             	mov    %rsi,%rdx
1401709b0:	48 8d 88 80 00 00 00 	lea    0x80(%rax),%rcx
1401709b7:	e8 f4 9c ff ff       	call   0x14016a6b0
1401709bc:	48 89 f1             	mov    %rsi,%rcx
1401709bf:	49 89 c7             	mov    %rax,%r15
1401709c2:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
1401709c7:	e8 e4 84 f8 ff       	call   0x1400f8eb0
1401709cc:	4c 89 fe             	mov    %r15,%rsi
1401709cf:	eb 3c                	jmp    0x140170a0d
1401709d1:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
1401709d8:	49 29 f0             	sub    %rsi,%r8
1401709db:	48 89 f2             	mov    %rsi,%rdx
1401709de:	48 8d 88 80 00 00 00 	lea    0x80(%rax),%rcx
1401709e5:	e8 06 9d ff ff       	call   0x14016a6f0
1401709ea:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
1401709ee:	48 89 c2             	mov    %rax,%rdx
1401709f1:	48 89 c6             	mov    %rax,%rsi
1401709f4:	e8 27 fb f2 ff       	call   0x1400a0520
1401709f9:	48 85 c0             	test   %rax,%rax
1401709fc:	0f 85 ee 06 00 00    	jne    0x1401710f0
140170a02:	48 89 f2             	mov    %rsi,%rdx
140170a05:	48 89 e9             	mov    %rbp,%rcx
140170a08:	e8 13 f3 f2 ff       	call   0x14009fd20
140170a0d:	ba 2f 00 00 00       	mov    $0x2f,%edx
140170a12:	48 89 f1             	mov    %rsi,%rcx
140170a15:	e8 96 94 07 00       	call   0x1401e9eb0
140170a1a:	49 89 c0             	mov    %rax,%r8
140170a1d:	48 8b 43 78          	mov    0x78(%rbx),%rax
140170a21:	4d 85 c0             	test   %r8,%r8
140170a24:	75 b2                	jne    0x1401709d8
140170a26:	48 8b b0 78 09 00 00 	mov    0x978(%rax),%rsi
140170a2d:	44 8b b4 24 d8 00 00 	mov    0xd8(%rsp),%r14d
140170a34:	00
140170a35:	41 83 ee 01          	sub    $0x1,%r14d
140170a39:	0f 88 aa 00 00 00    	js     0x140170ae9
140170a3f:	48 89 bc 24 a0 00 00 	mov    %rdi,0xa0(%rsp)
140170a46:	00
140170a47:	45 89 f7             	mov    %r14d,%r15d
140170a4a:	49 c1 e7 04          	shl    $0x4,%r15
140170a4e:	66 90                	xchg   %ax,%ax
140170a50:	48 8b 84 24 d0 00 00 	mov    0xd0(%rsp),%rax
140170a57:	00
140170a58:	48 89 f7             	mov    %rsi,%rdi
140170a5b:	41 b8 d8 00 00 00    	mov    $0xd8,%r8d
140170a61:	ba 01 00 00 00       	mov    $0x1,%edx
140170a66:	4a 8b 34 38          	mov    (%rax,%r15,1),%rsi
140170a6a:	48 8b 43 78          	mov    0x78(%rbx),%rax
140170a6e:	48 8d 88 80 00 00 00 	lea    0x80(%rax),%rcx
140170a75:	e8 e6 9b ff ff       	call   0x14016a660
140170a7a:	48 89 f9             	mov    %rdi,%rcx
140170a7d:	48 89 78 38          	mov    %rdi,0x38(%rax)
140170a81:	49 89 c4             	mov    %rax,%r12
140170a84:	e8 0f 94 07 00       	call   0x1401e9e98
140170a89:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
140170a8d:	4d 89 e0             	mov    %r12,%r8
140170a90:	48 89 c2             	mov    %rax,%rdx
140170a93:	31 c0                	xor    %eax,%eax
140170a95:	85 d2                	test   %edx,%edx
140170a97:	0f 9f c0             	setg   %al
140170a9a:	41 83 ee 01          	sub    $0x1,%r14d
140170a9e:	49 83 ef 10          	sub    $0x10,%r15
140170aa2:	01 d0                	add    %edx,%eax
140170aa4:	41 0f b6 95 d0 00 00 	movzbl 0xd0(%r13),%edx
140170aab:	00
140170aac:	48 98                	cltq
140170aae:	49 89 44 24 30       	mov    %rax,0x30(%r12)
140170ab3:	c0 ea 02             	shr    $0x2,%dl
140170ab6:	41 0f b6 84 24 d0 00 	movzbl 0xd0(%r12),%eax
140170abd:	00 00
140170abf:	c1 e2 05             	shl    $0x5,%edx
140170ac2:	83 e0 1f             	and    $0x1f,%eax
140170ac5:	09 d0                	or     %edx,%eax
140170ac7:	48 89 f2             	mov    %rsi,%rdx
140170aca:	41 88 84 24 d0 00 00 	mov    %al,0xd0(%r12)
140170ad1:	00
140170ad2:	e8 a9 f9 f2 ff       	call   0x1400a0480
140170ad7:	41 83 fe ff          	cmp    $0xffffffff,%r14d
140170adb:	0f 85 6f ff ff ff    	jne    0x140170a50
140170ae1:	48 8b bc 24 a0 00 00 	mov    0xa0(%rsp),%rdi
140170ae8:	00
140170ae9:	41 0f b6 95 d0 00 00 	movzbl 0xd0(%r13),%edx
140170af0:	00
140170af1:	89 d0                	mov    %edx,%eax
140170af3:	83 e0 1c             	and    $0x1c,%eax
140170af6:	83 e8 08             	sub    $0x8,%eax
140170af9:	a8 f4                	test   $0xf4,%al
140170afb:	0f 85 5a 08 00 00    	jne    0x14017135b
140170b01:	80 fa 3f             	cmp    $0x3f,%dl
140170b04:	0f 87 6b 08 00 00    	ja     0x140171375
140170b0a:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
140170b0e:	80 fa 1f             	cmp    $0x1f,%dl
140170b11:	0f 87 69 04 00 00    	ja     0x140170f80
140170b17:	48 8b 94 24 90 00 00 	mov    0x90(%rsp),%rdx
140170b1e:	00
140170b1f:	45 31 c0             	xor    %r8d,%r8d
140170b22:	4d 89 ec             	mov    %r13,%r12
140170b25:	e8 36 fb f2 ff       	call   0x1400a0660
140170b2a:	41 0f b6 84 24 d0 00 	movzbl 0xd0(%r12),%eax
140170b31:	00 00
140170b33:	4c 8b 7b 10          	mov    0x10(%rbx),%r15
140170b37:	4c 8b 73 18          	mov    0x18(%rbx),%r14
140170b3b:	83 e0 1c             	and    $0x1c,%eax
140170b3e:	3c 08                	cmp    $0x8,%al
140170b40:	75 09                	jne    0x140170b4b
140170b42:	4c 89 f8             	mov    %r15,%rax
140170b45:	4d 89 f7             	mov    %r14,%r15
140170b48:	49 89 c6             	mov    %rax,%r14
140170b4b:	49 89 74 24 38       	mov    %rsi,0x38(%r12)
140170b50:	48 89 f1             	mov    %rsi,%rcx
140170b53:	e8 40 93 07 00       	call   0x1401e9e98
140170b58:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
140170b5c:	48 89 c2             	mov    %rax,%rdx
140170b5f:	31 c0                	xor    %eax,%eax
140170b61:	85 d2                	test   %edx,%edx
140170b63:	0f 9f c0             	setg   %al
140170b66:	01 d0                	add    %edx,%eax
140170b68:	48 8b 54 24 78       	mov    0x78(%rsp),%rdx
140170b6d:	48 98                	cltq
140170b6f:	49 89 44 24 30       	mov    %rax,0x30(%r12)
140170b74:	e8 07 fa f2 ff       	call   0x1400a0580
140170b79:	48 85 c0             	test   %rax,%rax
140170b7c:	0f 84 6e 06 00 00    	je     0x1401711f0
140170b82:	f6 40 28 02          	testb  $0x2,0x28(%rax)
140170b86:	0f 85 37 08 00 00    	jne    0x1401713c3
140170b8c:	45 0f b6 8c 24 d0 00 	movzbl 0xd0(%r12),%r9d
140170b93:	00 00
140170b95:	44 89 ca             	mov    %r9d,%edx
140170b98:	83 e2 1c             	and    $0x1c,%edx
140170b9b:	83 ea 08             	sub    $0x8,%edx
140170b9e:	81 e2 f4 00 00 00    	and    $0xf4,%edx
140170ba4:	0f 85 33 08 00 00    	jne    0x1401713dd
140170baa:	0f b6 88 d0 00 00 00 	movzbl 0xd0(%rax),%ecx
140170bb1:	41 c0 e9 02          	shr    $0x2,%r9b
140170bb5:	41 83 e1 07          	and    $0x7,%r9d
140170bb9:	89 ca                	mov    %ecx,%edx
140170bbb:	c0 ea 02             	shr    $0x2,%dl
140170bbe:	83 e2 07             	and    $0x7,%edx
140170bc1:	44 84 ca             	test   %r9b,%dl
140170bc4:	0f 85 c5 07 00 00    	jne    0x14017138f
140170bca:	44 09 ca             	or     %r9d,%edx
140170bcd:	83 e1 e3             	and    $0xffffffe3,%ecx
140170bd0:	83 e2 07             	and    $0x7,%edx
140170bd3:	c1 e2 02             	shl    $0x2,%edx
140170bd6:	09 ca                	or     %ecx,%edx
140170bd8:	88 90 d0 00 00 00    	mov    %dl,0xd0(%rax)
140170bde:	80 fa 1f             	cmp    $0x1f,%dl
140170be1:	76 09                	jbe    0x140170bec
140170be3:	83 ca 01             	or     $0x1,%edx
140170be6:	88 90 d0 00 00 00    	mov    %dl,0xd0(%rax)
140170bec:	41 0f b6 94 24 d0 00 	movzbl 0xd0(%r12),%edx
140170bf3:	00 00
140170bf5:	c0 ea 02             	shr    $0x2,%dl
140170bf8:	83 e2 07             	and    $0x7,%edx
140170bfb:	d1 fa                	sar    $1,%edx