1400857e9:	ff
1400857ea:	48 8b 07             	mov    (%rdi),%rax
1400857ed:	48 63 50 04          	movslq 0x4(%rax),%rdx
1400857f1:	44 8d 42 e8          	lea    -0x18(%rdx),%r8d
1400857f5:	44 89 84 32 64 ff ff 	mov    %r8d,-0x9c(%rdx,%rsi,1)
1400857fc:	ff
1400857fd:	48 8d 05 5c 2a 32 00 	lea    0x322a5c(%rip),%rax        # 0x1403a8260
140085804:	48 89 06             	mov    %rax,(%rsi)
140085807:	48 8b ce             	mov    %rsi,%rcx
14008580a:	e8 5d 9b 22 00       	call   0x1402af36c
14008580f:	90                   	nop
140085810:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140085815:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14008581a:	48 83 c4 20          	add    $0x20,%rsp
14008581e:	5f                   	pop    %rdi
14008581f:	c3                   	ret
140085820:	4d 2b c8             	sub    %r8,%r9
140085823:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
140085828:	4c 3b c8             	cmp    %rax,%r9
14008582b:	4c 0f 4f c8          	cmovg  %rax,%r9
14008582f:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140085834:	4c 3b c8             	cmp    %rax,%r9
140085837:	41 0f 42 c1          	cmovb  %r9d,%eax
14008583b:	c3                   	ret
14008583c:	cc                   	int3
14008583d:	cc                   	int3
14008583e:	cc                   	int3
14008583f:	cc                   	int3
140085840:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140085845:	4c 89 00             	mov    %r8,(%rax)
140085848:	b8 03 00 00 00       	mov    $0x3,%eax
14008584d:	c3                   	ret
14008584e:	cc                   	int3
14008584f:	cc                   	int3
140085850:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140085855:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14008585a:	4c 89 00             	mov    %r8,(%rax)
14008585d:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140085862:	48 89 01             	mov    %rax,(%rcx)
140085865:	b8 03 00 00 00       	mov    $0x3,%eax
14008586a:	c3                   	ret
14008586b:	cc                   	int3
14008586c:	cc                   	int3
14008586d:	cc                   	int3
14008586e:	cc                   	int3
14008586f:	cc                   	int3
140085870:	b0 01                	mov    $0x1,%al
140085872:	c3                   	ret
140085873:	cc                   	int3
140085874:	cc                   	int3
140085875:	cc                   	int3
140085876:	cc                   	int3
140085877:	cc                   	int3
140085878:	cc                   	int3
140085879:	cc                   	int3
14008587a:	cc                   	int3
14008587b:	cc                   	int3
14008587c:	cc                   	int3
14008587d:	cc                   	int3
14008587e:	cc                   	int3
14008587f:	cc                   	int3
140085880:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140085885:	57                   	push   %rdi
140085886:	48 83 ec 20          	sub    $0x20,%rsp
14008588a:	48 8b 02             	mov    (%rdx),%rax
14008588d:	48 8b d9             	mov    %rcx,%rbx
140085890:	48 8b ca             	mov    %rdx,%rcx
140085893:	48 8b fa             	mov    %rdx,%rdi
140085896:	ff 50 18             	call   *0x18(%rax)
140085899:	45 33 db             	xor    %r11d,%r11d
14008589c:	84 c0                	test   %al,%al
14008589e:	74 0f                	je     0x1400858af
1400858a0:	4c 89 5b 68          	mov    %r11,0x68(%rbx)
1400858a4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400858a9:	48 83 c4 20          	add    $0x20,%rsp
1400858ad:	5f                   	pop    %rdi
1400858ae:	c3                   	ret
1400858af:	48 89 7b 68          	mov    %rdi,0x68(%rbx)
1400858b3:	4c 8d 53 08          	lea    0x8(%rbx),%r10
1400858b7:	4c 89 53 18          	mov    %r10,0x18(%rbx)
1400858bb:	4c 8d 43 10          	lea    0x10(%rbx),%r8
1400858bf:	4c 89 43 20          	mov    %r8,0x20(%rbx)
1400858c3:	4c 8d 4b 28          	lea    0x28(%rbx),%r9
1400858c7:	4c 89 4b 38          	mov    %r9,0x38(%rbx)
1400858cb:	48 8d 4b 30          	lea    0x30(%rbx),%rcx
1400858cf:	48 89 4b 40          	mov    %rcx,0x40(%rbx)
1400858d3:	48 8d 53 48          	lea    0x48(%rbx),%rdx
1400858d7:	48 89 53 50          	mov    %rdx,0x50(%rbx)
1400858db:	48 8d 43 4c          	lea    0x4c(%rbx),%rax
1400858df:	48 89 43 58          	mov    %rax,0x58(%rbx)
1400858e3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400858e8:	4d 89 18             	mov    %r11,(%r8)
1400858eb:	4c 89 19             	mov    %r11,(%rcx)
1400858ee:	44 89 18             	mov    %r11d,(%rax)
1400858f1:	4d 89 1a             	mov    %r11,(%r10)
1400858f4:	4d 89 19             	mov    %r11,(%r9)
1400858f7:	44 89 1a             	mov    %r11d,(%rdx)
1400858fa:	48 83 c4 20          	add    $0x20,%rsp
1400858fe:	5f                   	pop    %rdi
1400858ff:	c3                   	ret
140085900:	40 53                	rex push %rbx
140085902:	48 83 ec 60          	sub    $0x60,%rsp
140085906:	48 8b 05 73 01 35 00 	mov    0x350173(%rip),%rax        # 0x1403d5a80
14008590d:	48 33 c4             	xor    %rsp,%rax
140085910:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140085915:	48 83 79 68 00       	cmpq   $0x0,0x68(%rcx)
14008591a:	48 8b d9             	mov    %rcx,%rbx
14008591d:	0f 84 af 00 00 00    	je     0x1400859d2
140085923:	80 79 71 00          	cmpb   $0x0,0x71(%rcx)
140085927:	0f 84 a5 00 00 00    	je     0x1400859d2
14008592d:	48 8b 01             	mov    (%rcx),%rax
140085930:	ba ff ff ff ff       	mov    $0xffffffff,%edx
140085935:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
14008593a:	ff 50 18             	call   *0x18(%rax)
14008593d:	83 f8 ff             	cmp    $0xffffffff,%eax
140085940:	0f 84 88 00 00 00    	je     0x1400859ce
140085946:	48 8b 4b 68          	mov    0x68(%rbx),%rcx
14008594a:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14008594f:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
140085954:	48 8d 53 74          	lea    0x74(%rbx),%rdx
140085958:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
14008595d:	4c 8d 44 24 38       	lea    0x38(%rsp),%r8
140085962:	48 8b 01             	mov    (%rcx),%rax
140085965:	ff 50 40             	call   *0x40(%rax)
140085968:	85 c0                	test   %eax,%eax
14008596a:	74 28                	je     0x140085994
14008596c:	83 e8 01             	sub    $0x1,%eax
14008596f:	74 27                	je     0x140085998
140085971:	83 f8 02             	cmp    $0x2,%eax
140085974:	75 58                	jne    0x1400859ce
140085976:	c6 43 71 00          	movb   $0x0,0x71(%rbx)
14008597a:	b0 01                	mov    $0x1,%al
14008597c:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140085981:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140085986:	48 33 cc             	xor    %rsp,%rcx
140085989:	e8 22 a5 22 00       	call   0x1402afeb0
14008598e:	48 83 c4 60          	add    $0x60,%rsp
140085992:	5b                   	pop    %rbx
140085993:	c3                   	ret
140085994:	c6 43 71 00          	movb   $0x0,0x71(%rbx)
140085998:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14008599d:	48 8d 44 24 38       	lea    0x38(%rsp),%rax
1400859a2:	48 2b f8             	sub    %rax,%rdi
1400859a5:	74 1e                	je     0x1400859c5
1400859a7:	4c 8b 8b 80 00 00 00 	mov    0x80(%rbx),%r9
1400859ae:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
1400859b3:	4c 8b c7             	mov    %rdi,%r8
1400859b6:	ba 01 00 00 00       	mov    $0x1,%edx
1400859bb:	e8 a0 7d 23 00       	call   0x1402bd760
1400859c0:	48 3b f8             	cmp    %rax,%rdi
1400859c3:	75 09                	jne    0x1400859ce
1400859c5:	80 7b 71 00          	cmpb   $0x0,0x71(%rbx)
1400859c9:	0f 94 c0             	sete   %al
1400859cc:	eb ae                	jmp    0x14008597c
1400859ce:	32 c0                	xor    %al,%al
1400859d0:	eb aa                	jmp    0x14008597c
1400859d2:	b0 01                	mov    $0x1,%al
1400859d4:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
1400859d9:	48 33 cc             	xor    %rsp,%rcx
1400859dc:	e8 cf a4 22 00       	call   0x1402afeb0
1400859e1:	48 83 c4 60          	add    $0x60,%rsp
1400859e5:	5b                   	pop    %rbx
1400859e6:	c3                   	ret
1400859e7:	cc                   	int3
1400859e8:	cc                   	int3
1400859e9:	cc                   	int3
1400859ea:	cc                   	int3
1400859eb:	cc                   	int3
1400859ec:	cc                   	int3
1400859ed:	cc                   	int3
1400859ee:	cc                   	int3
1400859ef:	cc                   	int3
1400859f0:	4c 8b dc             	mov    %rsp,%r11
1400859f3:	49 89 5b 18          	mov    %rbx,0x18(%r11)
1400859f7:	49 89 73 20          	mov    %rsi,0x20(%r11)
1400859fb:	57                   	push   %rdi
1400859fc:	48 83 ec 40          	sub    $0x40,%rsp
140085a00:	48 8b 05 79 00 35 00 	mov    0x350079(%rip),%rax        # 0x1403d5a80
140085a07:	48 33 c4             	xor    %rsp,%rax
140085a0a:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140085a0f:	c6 41 71 00          	movb   $0x0,0x71(%rcx)
140085a13:	4c 8d 51 08          	lea    0x8(%rcx),%r10
140085a17:	4c 89 51 18          	mov    %r10,0x18(%rcx)
140085a1b:	4c 8d 49 28          	lea    0x28(%rcx),%r9
140085a1f:	4c 89 49 38          	mov    %r9,0x38(%rcx)
140085a23:	48 8b d9             	mov    %rcx,%rbx
140085a26:	41 83 f8 01          	cmp    $0x1,%r8d
140085a2a:	48 8b fa             	mov    %rdx,%rdi
140085a2d:	4c 8d 41 10          	lea    0x10(%rcx),%r8
140085a31:	4c 89 41 20          	mov    %r8,0x20(%rcx)
140085a35:	48 8d 53 48          	lea    0x48(%rbx),%rdx
140085a39:	48 89 53 50          	mov    %rdx,0x50(%rbx)
140085a3d:	0f 94 c0             	sete   %al
140085a40:	88 41 7c             	mov    %al,0x7c(%rcx)
140085a43:	33 f6                	xor    %esi,%esi
140085a45:	48 83 c1 30          	add    $0x30,%rcx
140085a49:	48 8d 43 4c          	lea    0x4c(%rbx),%rax
140085a4d:	48 89 4b 40          	mov    %rcx,0x40(%rbx)
140085a51:	48 89 43 58          	mov    %rax,0x58(%rbx)
140085a55:	49 89 30             	mov    %rsi,(%r8)
140085a58:	48 89 31             	mov    %rsi,(%rcx)
140085a5b:	89 30                	mov    %esi,(%rax)
140085a5d:	49 89 32             	mov    %rsi,(%r10)
140085a60:	49 89 31             	mov    %rsi,(%r9)
140085a63:	89 32                	mov    %esi,(%rdx)
140085a65:	48 85 ff             	test   %rdi,%rdi
140085a68:	74 47                	je     0x140085ab1
140085a6a:	4d 8d 4b e8          	lea    -0x18(%r11),%r9
140085a6e:	49 89 73 d8          	mov    %rsi,-0x28(%r11)
140085a72:	4d 8d 43 e0          	lea    -0x20(%r11),%r8
140085a76:	49 89 73 e0          	mov    %rsi,-0x20(%r11)
140085a7a:	49 8d 53 d8          	lea    -0x28(%r11),%rdx
140085a7e:	49 89 73 e8          	mov    %rsi,-0x18(%r11)
140085a82:	48 8b cf             	mov    %rdi,%rcx
140085a85:	e8 06 79 23 00       	call   0x1402bd390
140085a8a:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
140085a8f:	48 89 43 18          	mov    %rax,0x18(%rbx)
140085a93:	48 89 43 20          	mov    %rax,0x20(%rbx)
140085a97:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140085a9c:	48 89 43 38          	mov    %rax,0x38(%rbx)
140085aa0:	48 89 43 40          	mov    %rax,0x40(%rbx)
140085aa4:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140085aa9:	48 89 43 50          	mov    %rax,0x50(%rbx)
140085aad:	48 89 43 58          	mov    %rax,0x58(%rbx)
140085ab1:	48 8b 05 28 5e 35 00 	mov    0x355e28(%rip),%rax        # 0x1403db8e0
140085ab8:	48 89 43 74          	mov    %rax,0x74(%rbx)
140085abc:	48 89 bb 80 00 00 00 	mov    %rdi,0x80(%rbx)
140085ac3:	48 89 73 68          	mov    %rsi,0x68(%rbx)
140085ac7:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140085acc:	48 33 cc             	xor    %rsp,%rcx
140085acf:	e8 dc a3 22 00       	call   0x1402afeb0
140085ad4:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140085ad9:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140085ade:	48 83 c4 40          	add    $0x40,%rsp
140085ae2:	5f                   	pop    %rdi
140085ae3:	c3                   	ret
140085ae4:	cc                   	int3
140085ae5:	cc                   	int3
140085ae6:	cc                   	int3
140085ae7:	cc                   	int3
140085ae8:	cc                   	int3
140085ae9:	cc                   	int3
140085aea:	cc                   	int3
140085aeb:	cc                   	int3
140085aec:	cc                   	int3
140085aed:	cc                   	int3
140085aee:	cc                   	int3
140085aef:	cc                   	int3
140085af0:	40 53                	rex push %rbx
140085af2:	48 83 ec 20          	sub    $0x20,%rsp
140085af6:	48 8d 05 3b 47 31 00 	lea    0x31473b(%rip),%rax        # 0x14039a238
140085afd:	48 8b d9             	mov    %rcx,%rbx
140085b00:	48 89 01             	mov    %rax,(%rcx)
140085b03:	f6 c2 01             	test   $0x1,%dl
140085b06:	74 0a                	je     0x140085b12
140085b08:	ba 10 00 00 00       	mov    $0x10,%edx
140085b0d:	e8 fa a3 22 00       	call   0x1402aff0c
140085b12:	48 8b c3             	mov    %rbx,%rax
140085b15:	48 83 c4 20          	add    $0x20,%rsp
140085b19:	5b                   	pop    %rbx
140085b1a:	c3                   	ret
140085b1b:	cc                   	int3
140085b1c:	cc                   	int3
140085b1d:	cc                   	int3
140085b1e:	cc                   	int3
140085b1f:	cc                   	int3
140085b20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140085b25:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140085b2a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140085b2f:	56                   	push   %rsi
140085b30:	57                   	push   %rdi
140085b31:	41 56                	push   %r14
140085b33:	48 83 ec 40          	sub    $0x40,%rsp
140085b37:	44 8b f2             	mov    %edx,%r14d
140085b3a:	48 8b d9             	mov    %rcx,%rbx
140085b3d:	33 c0                	xor    %eax,%eax
140085b3f:	89 44 24 30          	mov    %eax,0x30(%rsp)
140085b43:	0f 57 c0             	xorps  %xmm0,%xmm0
140085b46:	0f 11 01             	movups %xmm0,(%rcx)
140085b49:	48 89 41 10          	mov    %rax,0x10(%rcx)
140085b4d:	48 c7 41 18 0f 00 00 	movq   $0xf,0x18(%rcx)
140085b54:	00
140085b55:	88 01                	mov    %al,(%rcx)
140085b57:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
140085b5e:	00
140085b5f:	49 8b 70 08          	mov    0x8(%r8),%rsi
140085b63:	48 85 f6             	test   %rsi,%rsi
140085b66:	74 64                	je     0x140085bcc
140085b68:	48 81 fe ff ff ff 7f 	cmp    $0x7fffffff,%rsi
140085b6f:	77 7b                	ja     0x140085bec
140085b71:	49 8b 28             	mov    (%r8),%rbp
140085b74:	89 44 24 20          	mov    %eax,0x20(%rsp)
140085b78:	45 33 c9             	xor    %r9d,%r9d
140085b7b:	44 8b c6             	mov    %esi,%r8d
140085b7e:	48 8b d5             	mov    %rbp,%rdx
140085b81:	41 8b ce             	mov    %r14d,%ecx
140085b84:	e8 7b 88 22 00       	call   0x1402ae404
140085b89:	48 8b f8             	mov    %rax,%rdi
140085b8c:	48 c1 e8 20          	shr    $0x20,%rax
140085b90:	85 c0                	test   %eax,%eax
140085b92:	75 5e                	jne    0x140085bf2
140085b94:	48 63 d7             	movslq %edi,%rdx
140085b97:	45 33 c0             	xor    %r8d,%r8d
140085b9a:	48 8b cb             	mov    %rbx,%rcx
140085b9d:	e8 0e 8f ff ff       	call   0x14007eab0
140085ba2:	4c 8b cb             	mov    %rbx,%r9
140085ba5:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
140085baa:	76 03                	jbe    0x140085baf
140085bac:	4c 8b 0b             	mov    (%rbx),%r9
140085baf:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140085bb3:	44 8b c6             	mov    %esi,%r8d
140085bb6:	48 8b d5             	mov    %rbp,%rdx
140085bb9:	41 8b ce             	mov    %r14d,%ecx
140085bbc:	e8 43 88 22 00       	call   0x1402ae404
140085bc1:	48 8b c8             	mov    %rax,%rcx
140085bc4:	48 c1 e8 20          	shr    $0x20,%rax
140085bc8:	85 c0                	test   %eax,%eax
140085bca:	75 16                	jne    0x140085be2
140085bcc:	48 8b c3             	mov    %rbx,%rax
140085bcf:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140085bd4:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
140085bd9:	48 83 c4 40          	add    $0x40,%rsp
140085bdd:	41 5e                	pop    %r14
140085bdf:	5f                   	pop    %rdi
140085be0:	5e                   	pop    %rsi
140085be1:	c3                   	ret
140085be2:	48 c1 e9 20          	shr    $0x20,%rcx
140085be6:	e8 e5 7f ff ff       	call   0x14007dbd0
140085beb:	cc                   	int3
140085bec:	e8 5f 7c ff ff       	call   0x14007d850
140085bf1:	cc                   	int3
140085bf2:	48 c1 ef 20          	shr    $0x20,%rdi
140085bf6:	8b cf                	mov    %edi,%ecx
140085bf8:	e8 d3 7f ff ff       	call   0x14007dbd0
140085bfd:	cc                   	int3
140085bfe:	cc                   	int3
140085bff:	cc                   	int3
140085c00:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140085c05:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140085c0a:	55                   	push   %rbp
140085c0b:	57                   	push   %rdi
140085c0c:	41 54                	push   %r12
140085c0e:	41 56                	push   %r14
140085c10:	41 57                	push   %r15
140085c12:	48 8d ac 24 40 fe ff 	lea    -0x1c0(%rsp),%rbp
140085c19:	ff
140085c1a:	48 81 ec c0 02 00 00 	sub    $0x2c0,%rsp
140085c21:	48 8b 05 58 fe 34 00 	mov    0x34fe58(%rip),%rax        # 0x1403d5a80
140085c28:	48 33 c4             	xor    %rsp,%rax
140085c2b:	48 89 85 b0 01 00 00 	mov    %rax,0x1b0(%rbp)