140476a26:	0f 82 98 02 00 00    	jb     0x140476cc4
140476a2c:	41 0f b6 00          	movzbl (%r8),%eax
140476a30:	41 88 06             	mov    %al,(%r14)
140476a33:	41 0f b7 40 01       	movzwl 0x1(%r8),%eax
140476a38:	83 fd 01             	cmp    $0x1,%ebp
140476a3b:	75 50                	jne    0x140476a8d
140476a3d:	66 41 89 46 02       	mov    %ax,0x2(%r14)
140476a42:	40 0f b6 d5          	movzbl %bpl,%edx
140476a46:	8b 01                	mov    (%rcx),%eax
140476a48:	41 89 46 04          	mov    %eax,0x4(%r14)
140476a4c:	41 88 56 08          	mov    %dl,0x8(%r14)
140476a50:	41 89 7e 0c          	mov    %edi,0xc(%r14)
140476a54:	e9 dd 01 00 00       	jmp    0x140476c36
140476a59:	ba 07 00 00 00       	mov    $0x7,%edx
140476a5e:	41 c7 46 0c 02 00 00 	movl   $0x2,0xc(%r14)
140476a65:	00
140476a66:	48 8b cb             	mov    %rbx,%rcx
140476a69:	e8 c2 78 54 00       	call   0x1409be330
140476a6e:	e9 45 ff ff ff       	jmp    0x1404769b8
140476a73:	45 33 c0             	xor    %r8d,%r8d
140476a76:	33 d2                	xor    %edx,%edx
140476a78:	48 8b cb             	mov    %rbx,%rcx
140476a7b:	e8 f0 7d 54 00       	call   0x1409be870
140476a80:	41 c7 46 0c 01 00 00 	movl   $0x1,0xc(%r14)
140476a87:	00
140476a88:	e9 2b ff ff ff       	jmp    0x1404769b8
140476a8d:	66 c1 c8 08          	ror    $0x8,%ax
140476a91:	b2 01                	mov    $0x1,%dl
140476a93:	66 41 89 46 02       	mov    %ax,0x2(%r14)
140476a98:	8b 01                	mov    (%rcx),%eax
140476a9a:	0f c8                	bswap  %eax
140476a9c:	41 89 46 04          	mov    %eax,0x4(%r14)
140476aa0:	41 88 56 08          	mov    %dl,0x8(%r14)
140476aa4:	41 89 7e 0c          	mov    %edi,0xc(%r14)
140476aa8:	e9 89 01 00 00       	jmp    0x140476c36
140476aad:	33 ff                	xor    %edi,%edi
140476aaf:	48 39 7e 28          	cmp    %rdi,0x28(%rsi)
140476ab3:	75 2a                	jne    0x140476adf
140476ab5:	b9 0c 00 00 00       	mov    $0xc,%ecx
140476aba:	e8 49 46 9a 00       	call   0x140e1b108
140476abf:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140476ac4:	48 85 c0             	test   %rax,%rax
140476ac7:	74 0f                	je     0x140476ad8
140476ac9:	40 88 38             	mov    %dil,(%rax)
140476acc:	89 78 02             	mov    %edi,0x2(%rax)
140476acf:	40 88 78 06          	mov    %dil,0x6(%rax)
140476ad3:	89 78 08             	mov    %edi,0x8(%rax)
140476ad6:	eb 03                	jmp    0x140476adb
140476ad8:	48 8b c7             	mov    %rdi,%rax
140476adb:	48 89 46 28          	mov    %rax,0x28(%rsi)
140476adf:	32 d2                	xor    %dl,%dl
140476ae1:	44 0f b6 53 18       	movzbl 0x18(%rbx),%r10d
140476ae6:	45 84 d2             	test   %r10b,%r10b
140476ae9:	75 09                	jne    0x140476af4
140476aeb:	39 7b 44             	cmp    %edi,0x44(%rbx)
140476aee:	0f 85 42 01 00 00    	jne    0x140476c36
140476af4:	48 63 43 08          	movslq 0x8(%rbx),%rax
140476af8:	32 d2                	xor    %dl,%dl
140476afa:	4c 8b 76 28          	mov    0x28(%rsi),%r14
140476afe:	85 c0                	test   %eax,%eax
140476b00:	75 0d                	jne    0x140476b0f
140476b02:	4c 8b 43 28          	mov    0x28(%rbx),%r8
140476b06:	4c 63 4b 1c          	movslq 0x1c(%rbx),%r9
140476b0a:	4d 03 c8             	add    %r8,%r9
140476b0d:	eb 08                	jmp    0x140476b17
140476b0f:	4c 8b 43 10          	mov    0x10(%rbx),%r8
140476b13:	4d 8d 0c 00          	lea    (%r8,%rax,1),%r9
140476b17:	41 8b 4e 08          	mov    0x8(%r14),%ecx
140476b1b:	85 c9                	test   %ecx,%ecx
140476b1d:	74 77                	je     0x140476b96
140476b1f:	83 e9 01             	sub    $0x1,%ecx
140476b22:	74 58                	je     0x140476b7c
140476b24:	83 f9 01             	cmp    $0x1,%ecx
140476b27:	75 b8                	jne    0x140476ae1
140476b29:	45 84 d2             	test   %r10b,%r10b
140476b2c:	75 05                	jne    0x140476b33
140476b2e:	39 7b 44             	cmp    %edi,0x44(%rbx)
140476b31:	75 ae                	jne    0x140476ae1
140476b33:	49 8d 40 05          	lea    0x5(%r8),%rax
140476b37:	49 3b c1             	cmp    %r9,%rax
140476b3a:	0f 87 29 01 00 00    	ja     0x140476c69
140476b40:	49 8d 48 03          	lea    0x3(%r8),%rcx
140476b44:	48 3b c1             	cmp    %rcx,%rax
140476b47:	0f 82 1c 01 00 00    	jb     0x140476c69
140476b4d:	41 0f b6 00          	movzbl (%r8),%eax
140476b51:	41 88 06             	mov    %al,(%r14)
140476b54:	41 0f b7 40 01       	movzwl 0x1(%r8),%eax
140476b59:	83 fd 01             	cmp    $0x1,%ebp
140476b5c:	75 52                	jne    0x140476bb0
140476b5e:	66 41 89 46 02       	mov    %ax,0x2(%r14)
140476b63:	40 0f b6 d5          	movzbl %bpl,%edx
140476b67:	0f b7 01             	movzwl (%rcx),%eax
140476b6a:	66 41 89 46 04       	mov    %ax,0x4(%r14)
140476b6f:	41 88 56 06          	mov    %dl,0x6(%r14)
140476b73:	41 89 7e 08          	mov    %edi,0x8(%r14)
140476b77:	e9 ba 00 00 00       	jmp    0x140476c36
140476b7c:	ba 05 00 00 00       	mov    $0x5,%edx
140476b81:	41 c7 46 08 02 00 00 	movl   $0x2,0x8(%r14)
140476b88:	00
140476b89:	48 8b cb             	mov    %rbx,%rcx
140476b8c:	e8 9f 77 54 00       	call   0x1409be330
140476b91:	e9 49 ff ff ff       	jmp    0x140476adf
140476b96:	45 33 c0             	xor    %r8d,%r8d
140476b99:	33 d2                	xor    %edx,%edx
140476b9b:	48 8b cb             	mov    %rbx,%rcx
140476b9e:	e8 cd 7c 54 00       	call   0x1409be870
140476ba3:	41 c7 46 08 01 00 00 	movl   $0x1,0x8(%r14)
140476baa:	00
140476bab:	e9 2f ff ff ff       	jmp    0x140476adf
140476bb0:	66 c1 c8 08          	ror    $0x8,%ax
140476bb4:	b2 01                	mov    $0x1,%dl
140476bb6:	66 41 89 46 02       	mov    %ax,0x2(%r14)
140476bbb:	0f b7 01             	movzwl (%rcx),%eax
140476bbe:	66 c1 c8 08          	ror    $0x8,%ax
140476bc2:	66 41 89 46 04       	mov    %ax,0x4(%r14)
140476bc7:	41 88 56 06          	mov    %dl,0x6(%r14)
140476bcb:	41 89 7e 08          	mov    %edi,0x8(%r14)
140476bcf:	eb 65                	jmp    0x140476c36
140476bd1:	48 83 7e 30 00       	cmpq   $0x0,0x30(%rsi)
140476bd6:	75 37                	jne    0x140476c0f
140476bd8:	b9 28 00 00 00       	mov    $0x28,%ecx
140476bdd:	e8 26 45 9a 00       	call   0x140e1b108
140476be2:	33 ff                	xor    %edi,%edi
140476be4:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140476be9:	48 85 c0             	test   %rax,%rax
140476bec:	74 1a                	je     0x140476c08
140476bee:	48 89 78 10          	mov    %rdi,0x10(%rax)
140476bf2:	89 78 18             	mov    %edi,0x18(%rax)
140476bf5:	48 89 38             	mov    %rdi,(%rax)
140476bf8:	40 88 78 08          	mov    %dil,0x8(%rax)
140476bfc:	89 78 0c             	mov    %edi,0xc(%rax)
140476bff:	40 88 78 20          	mov    %dil,0x20(%rax)
140476c03:	89 78 24             	mov    %edi,0x24(%rax)
140476c06:	eb 03                	jmp    0x140476c0b
140476c08:	48 8b c7             	mov    %rdi,%rax
140476c0b:	48 89 46 30          	mov    %rax,0x30(%rsi)
140476c0f:	32 d2                	xor    %dl,%dl
140476c11:	80 7b 18 00          	cmpb   $0x0,0x18(%rbx)
140476c15:	75 06                	jne    0x140476c1d
140476c17:	83 7b 44 00          	cmpl   $0x0,0x44(%rbx)
140476c1b:	75 19                	jne    0x140476c36
140476c1d:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
140476c21:	44 8b cd             	mov    %ebp,%r9d
140476c24:	4d 8b c7             	mov    %r15,%r8
140476c27:	48 8b d3             	mov    %rbx,%rdx
140476c2a:	e8 a1 f7 ff ff       	call   0x1404763d0
140476c2f:	0f b6 d0             	movzbl %al,%edx
140476c32:	84 c0                	test   %al,%al
140476c34:	74 db                	je     0x140476c11
140476c36:	84 d2                	test   %dl,%dl
140476c38:	74 0b                	je     0x140476c45
140476c3a:	49 8b 0f             	mov    (%r15),%rcx
140476c3d:	c6 41 0c 05          	movb   $0x5,0xc(%rcx)
140476c41:	c6 46 39 01          	movb   $0x1,0x39(%rsi)
140476c45:	0f b6 c2             	movzbl %dl,%eax
140476c48:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140476c4d:	48 33 cc             	xor    %rsp,%rcx
140476c50:	e8 ab 48 9a 00       	call   0x140e1b500
140476c55:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
140476c5c:	00
140476c5d:	48 83 c4 60          	add    $0x60,%rsp
140476c61:	41 5f                	pop    %r15
140476c63:	41 5e                	pop    %r14
140476c65:	5f                   	pop    %rdi
140476c66:	5e                   	pop    %rsi
140476c67:	5d                   	pop    %rbp
140476c68:	c3                   	ret
140476c69:	45 2b c8             	sub    %r8d,%r9d
140476c6c:	48 8d 15 05 29 b8 00 	lea    0xb82905(%rip),%rdx        # 0x140ff9578
140476c73:	41 b8 05 00 00 00    	mov    $0x5,%r8d
140476c79:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140476c7e:	e8 6d 24 d3 ff       	call   0x1401a90f0
140476c83:	48 8d 15 46 9d f2 00 	lea    0xf29d46(%rip),%rdx        # 0x1413a09d0
140476c8a:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140476c8f:	e8 84 5b 9a 00       	call   0x140e1c818
140476c94:	cc                   	int3
140476c95:	48 8b ce             	mov    %rsi,%rcx
140476c98:	e8 b3 5a d5 ff       	call   0x1401cc750
140476c9d:	44 0f b6 c0          	movzbl %al,%r8d
140476ca1:	48 8d 15 d8 27 b8 00 	lea    0xb827d8(%rip),%rdx        # 0x140ff9480
140476ca8:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140476cad:	e8 ae 13 d4 ff       	call   0x1401b8060
140476cb2:	48 8d 15 67 9e f2 00 	lea    0xf29e67(%rip),%rdx        # 0x1413a0b20
140476cb9:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140476cbe:	e8 55 5b 9a 00       	call   0x140e1c818
140476cc3:	cc                   	int3
140476cc4:	45 2b c8             	sub    %r8d,%r9d
140476cc7:	48 8d 15 92 28 b8 00 	lea    0xb82892(%rip),%rdx        # 0x140ff9560
140476cce:	41 b8 07 00 00 00    	mov    $0x7,%r8d
140476cd4:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140476cd9:	e8 12 24 d3 ff       	call   0x1401a90f0
140476cde:	48 8d 15 eb 9c f2 00 	lea    0xf29ceb(%rip),%rdx        # 0x1413a09d0
140476ce5:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140476cea:	e8 29 5b 9a 00       	call   0x140e1c818
140476cef:	cc                   	int3
140476cf0:	4d 68 47 00 95 6c    	rex.WRB push $0x6c950047
140476cf6:	47 00 b2 68 47 00 1e 	rex.RXB add %r14b,0x1e004768(%r10)
140476cfd:	69 47 00 82 69 47 00 	imul   $0x476982,0x0(%rdi),%eax
140476d04:	ad                   	lods   %ds:(%rsi),%eax
140476d05:	6a 47                	push   $0x47
140476d07:	00 d1                	add    %dl,%cl
140476d09:	6b 47 00 cc          	imul   $0xffffffcc,0x0(%rdi),%eax
140476d0d:	cc                   	int3
140476d0e:	cc                   	int3
140476d0f:	cc                   	int3
140476d10:	40 53                	rex push %rbx
140476d12:	55                   	push   %rbp
140476d13:	56                   	push   %rsi
140476d14:	57                   	push   %rdi
140476d15:	48 83 ec 58          	sub    $0x58,%rsp
140476d19:	48 8b 05 e0 21 f4 00 	mov    0xf421e0(%rip),%rax        # 0x1413b8f00
140476d20:	48 33 c4             	xor    %rsp,%rax
140476d23:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140476d28:	48 63 42 08          	movslq 0x8(%rdx),%rax
140476d2c:	40 32 ff             	xor    %dil,%dil
140476d2f:	41 8b e9             	mov    %r9d,%ebp
140476d32:	4c 8b d2             	mov    %rdx,%r10
140476d35:	48 8b f1             	mov    %rcx,%rsi
140476d38:	85 c0                	test   %eax,%eax
140476d3a:	75 0d                	jne    0x140476d49
140476d3c:	48 8b 5a 28          	mov    0x28(%rdx),%rbx
140476d40:	4c 63 4a 1c          	movslq 0x1c(%rdx),%r9
140476d44:	4c 03 cb             	add    %rbx,%r9
140476d47:	eb 08                	jmp    0x140476d51
140476d49:	48 8b 5a 10          	mov    0x10(%rdx),%rbx
140476d4d:	4c 8d 0c 03          	lea    (%rbx,%rax,1),%r9
140476d51:	8b 49 18             	mov    0x18(%rcx),%ecx
140476d54:	85 c9                	test   %ecx,%ecx
140476d56:	0f 84 8c 01 00 00    	je     0x140476ee8
140476d5c:	83 e9 01             	sub    $0x1,%ecx
140476d5f:	0f 84 46 01 00 00    	je     0x140476eab
140476d65:	83 f9 01             	cmp    $0x1,%ecx
140476d68:	0f 85 91 01 00 00    	jne    0x140476eff
140476d6e:	40 38 7a 18          	cmp    %dil,0x18(%rdx)
140476d72:	75 0a                	jne    0x140476d7e
140476d74:	83 7a 44 00          	cmpl   $0x0,0x44(%rdx)
140476d78:	0f 85 81 01 00 00    	jne    0x140476eff
140476d7e:	48 8d 43 01          	lea    0x1(%rbx),%rax
140476d82:	49 3b c1             	cmp    %r9,%rax
140476d85:	0f 87 e7 01 00 00    	ja     0x140476f72
140476d8b:	48 3b c3             	cmp    %rbx,%rax
140476d8e:	0f 82 de 01 00 00    	jb     0x140476f72
140476d94:	0f b6 03             	movzbl (%rbx),%eax
140476d97:	0f b7 7e 02          	movzwl 0x2(%rsi),%edi
140476d9b:	88 06                	mov    %al,(%rsi)
140476d9d:	49 8b c1             	mov    %r9,%rax
140476da0:	48 2b c3             	sub    %rbx,%rax
140476da3:	48 83 e8 03          	sub    $0x3,%rax
140476da7:	48 99                	cqto
140476da9:	83 e2 03             	and    $0x3,%edx
140476dac:	48 03 c2             	add    %rdx,%rax
140476daf:	48 c1 f8 02          	sar    $0x2,%rax
140476db3:	48 3b f8             	cmp    %rax,%rdi
140476db6:	0f 8f 89 01 00 00    	jg     0x140476f45
140476dbc:	4c 89 b4 24 90 00 00 	mov    %r14,0x90(%rsp)
140476dc3:	00
140476dc4:	b9 18 00 00 00       	mov    $0x18,%ecx
140476dc9:	4c 89 7c 24 50       	mov    %r15,0x50(%rsp)
140476dce:	45 33 ff             	xor    %r15d,%r15d
140476dd1:	44 89 7e 10          	mov    %r15d,0x10(%rsi)
140476dd5:	e8 2e 43 9a 00       	call   0x140e1b108
140476dda:	48 8b c8             	mov    %rax,%rcx
140476ddd:	48 85 c0             	test   %rax,%rax
140476de0:	74 0d                	je     0x140476def
140476de2:	4c 89 38             	mov    %r15,(%rax)
140476de5:	4c 89 78 08          	mov    %r15,0x8(%rax)
140476de9:	4c 89 78 10          	mov    %r15,0x10(%rax)
140476ded:	eb 03                	jmp    0x140476df2
140476def:	49 8b cf             	mov    %r15,%rcx
140476df2:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140476df6:	48 8b 41 10          	mov    0x10(%rcx),%rax
140476dfa:	48 2b 01             	sub    (%rcx),%rax
140476dfd:	48 c1 f8 02          	sar    $0x2,%rax
140476e01:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140476e06:	48 3b f8             	cmp    %rax,%rdi
140476e09:	76 0a                	jbe    0x140476e15
140476e0b:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140476e10:	e8 4b ea fa ff       	call   0x140425860
140476e15:	48 83 c3 03          	add    $0x3,%rbx
140476e19:	85 ff                	test   %edi,%edi
140476e1b:	74 74                	je     0x140476e91
140476e1d:	83 fd 01             	cmp    $0x1,%ebp
140476e20:	75 3e                	jne    0x140476e60
140476e22:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140476e26:	8b 03                	mov    (%rbx),%eax
140476e28:	89 46 10             	mov    %eax,0x10(%rsi)
140476e2b:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140476e2f:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140476e33:	74 09                	je     0x140476e3e
140476e35:	89 02                	mov    %eax,(%rdx)
140476e37:	48 83 41 08 04       	addq   $0x4,0x8(%rcx)
140476e3c:	eb 09                	jmp    0x140476e47
140476e3e:	4c 8d 46 10          	lea    0x10(%rsi),%r8
140476e42:	e8 b9 e8 fa ff       	call   0x140425700
140476e47:	48 83 c3 04          	add    $0x4,%rbx
140476e4b:	48 83 ef 01          	sub    $0x1,%rdi
140476e4f:	75 d1                	jne    0x140476e22
140476e51:	eb 3e                	jmp    0x140476e91
140476e53:	0f 1f 40 00          	nopl   0x0(%rax)
140476e57:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140476e5e:	00 00
140476e60:	8b 03                	mov    (%rbx),%eax
140476e62:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140476e66:	0f c8                	bswap  %eax
140476e68:	89 46 10             	mov    %eax,0x10(%rsi)
140476e6b:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140476e6f:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140476e73:	74 09                	je     0x140476e7e
140476e75:	89 02                	mov    %eax,(%rdx)
140476e77:	48 83 41 08 04       	addq   $0x4,0x8(%rcx)
140476e7c:	eb 09                	jmp    0x140476e87
140476e7e:	4c 8d 46 10          	lea    0x10(%rsi),%r8
140476e82:	e8 79 e8 fa ff       	call   0x140425700
140476e87:	48 83 c3 04          	add    $0x4,%rbx
140476e8b:	48 83 ef 01          	sub    $0x1,%rdi
140476e8f:	75 cf                	jne    0x140476e60
140476e91:	4c 8b b4 24 90 00 00 	mov    0x90(%rsp),%r14
140476e98:	00
140476e99:	40 b7 01             	mov    $0x1,%dil
140476e9c:	44 89 7e 18          	mov    %r15d,0x18(%rsi)
140476ea0:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
140476ea5:	40 88 7e 14          	mov    %dil,0x14(%rsi)
140476ea9:	eb 54                	jmp    0x140476eff
140476eab:	48 8d 4b 03          	lea    0x3(%rbx),%rcx
140476eaf:	c7 46 18 02 00 00 00 	movl   $0x2,0x18(%rsi)
140476eb6:	49 3b c9             	cmp    %r9,%rcx
140476eb9:	77 5e                	ja     0x140476f19
140476ebb:	48 8d 43 01          	lea    0x1(%rbx),%rax
140476ebf:	48 3b c8             	cmp    %rax,%rcx
140476ec2:	72 55                	jb     0x140476f19
140476ec4:	0f b7 00             	movzwl (%rax),%eax
140476ec7:	83 fd 01             	cmp    $0x1,%ebp
140476eca:	74 04                	je     0x140476ed0
140476ecc:	66 c1 c8 08          	ror    $0x8,%ax
140476ed0:	0f b7 d0             	movzwl %ax,%edx
140476ed3:	49 8b ca             	mov    %r10,%rcx
140476ed6:	66 89 46 02          	mov    %ax,0x2(%rsi)
140476eda:	8d 14 95 03 00 00 00 	lea    0x3(,%rdx,4),%edx
140476ee1:	e8 4a 74 54 00       	call   0x1409be330
140476ee6:	eb 17                	jmp    0x140476eff
140476ee8:	45 33 c0             	xor    %r8d,%r8d
140476eeb:	ba 03 00 00 00       	mov    $0x3,%edx
140476ef0:	49 8b ca             	mov    %r10,%rcx
140476ef3:	e8 78 79 54 00       	call   0x1409be870
140476ef8:	c7 46 18 01 00 00 00 	movl   $0x1,0x18(%rsi)
140476eff:	40 0f b6 c7          	movzbl %dil,%eax
140476f03:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
140476f08:	48 33 cc             	xor    %rsp,%rcx
140476f0b:	e8 f0 45 9a 00       	call   0x140e1b500
140476f10:	48 83 c4 58          	add    $0x58,%rsp