140479897:	0f b6 46 01          	movzbl 0x1(%rsi),%eax
14047989b:	88 47 08             	mov    %al,0x8(%rdi)
14047989e:	48 8b 0f             	mov    (%rdi),%rcx
1404798a1:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1404798a5:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
1404798a9:	74 08                	je     0x1404798b3
1404798ab:	88 02                	mov    %al,(%rdx)
1404798ad:	48 ff 41 08          	incq   0x8(%rcx)
1404798b1:	eb 09                	jmp    0x1404798bc
1404798b3:	4c 8d 47 08          	lea    0x8(%rdi),%r8
1404798b7:	e8 64 e1 d3 ff       	call   0x1401b7a20
1404798bc:	0f b6 46 02          	movzbl 0x2(%rsi),%eax
1404798c0:	88 47 08             	mov    %al,0x8(%rdi)
1404798c3:	48 8b 0f             	mov    (%rdi),%rcx
1404798c6:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1404798ca:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
1404798ce:	74 08                	je     0x1404798d8
1404798d0:	88 02                	mov    %al,(%rdx)
1404798d2:	48 ff 41 08          	incq   0x8(%rcx)
1404798d6:	eb 09                	jmp    0x1404798e1
1404798d8:	4c 8d 47 08          	lea    0x8(%rdi),%r8
1404798dc:	e8 3f e1 d3 ff       	call   0x1401b7a20
1404798e1:	4c 63 47 0c          	movslq 0xc(%rdi),%r8
1404798e5:	49 8d 48 07          	lea    0x7(%r8),%rcx
1404798e9:	48 03 ce             	add    %rsi,%rcx
1404798ec:	48 3b cb             	cmp    %rbx,%rcx
1404798ef:	0f 87 22 01 00 00    	ja     0x140479a17
1404798f5:	48 8d 56 07          	lea    0x7(%rsi),%rdx
1404798f9:	48 3b ca             	cmp    %rdx,%rcx
1404798fc:	0f 82 15 01 00 00    	jb     0x140479a17
140479902:	45 85 c0             	test   %r8d,%r8d
140479905:	0f 88 e9 00 00 00    	js     0x1404799f4
14047990b:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
14047990f:	e8 4c 4a d3 ff       	call   0x1401ae360
140479914:	41 b6 01             	mov    $0x1,%r14b
140479917:	c7 47 20 00 00 00 00 	movl   $0x0,0x20(%rdi)
14047991e:	eb 56                	jmp    0x140479976
140479920:	48 8d 46 07          	lea    0x7(%rsi),%rax
140479924:	c7 47 20 02 00 00 00 	movl   $0x2,0x20(%rdi)
14047992b:	48 3b c3             	cmp    %rbx,%rax
14047992e:	77 68                	ja     0x140479998
140479930:	48 8d 56 03          	lea    0x3(%rsi),%rdx
140479934:	48 3b c2             	cmp    %rdx,%rax
140479937:	72 5f                	jb     0x140479998
140479939:	8b 12                	mov    (%rdx),%edx
14047993b:	41 83 f8 01          	cmp    $0x1,%r8d
14047993f:	74 02                	je     0x140479943
140479941:	0f ca                	bswap  %edx
140479943:	89 57 0c             	mov    %edx,0xc(%rdi)
140479946:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
14047994c:	0f 83 f1 00 00 00    	jae    0x140479a43
140479952:	83 c2 07             	add    $0x7,%edx
140479955:	49 8b c9             	mov    %r9,%rcx
140479958:	e8 d3 49 54 00       	call   0x1409be330
14047995d:	eb 17                	jmp    0x140479976
14047995f:	45 33 c0             	xor    %r8d,%r8d
140479962:	ba 07 00 00 00       	mov    $0x7,%edx
140479967:	49 8b c9             	mov    %r9,%rcx
14047996a:	e8 01 4f 54 00       	call   0x1409be870
14047996f:	c7 47 20 01 00 00 00 	movl   $0x1,0x20(%rdi)
140479976:	41 0f b6 c6          	movzbl %r14b,%eax
14047997a:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
14047997f:	48 33 cc             	xor    %rsp,%rcx
140479982:	e8 79 1b 9a 00       	call   0x140e1b500
140479987:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
14047998e:	00
14047998f:	48 83 c4 50          	add    $0x50,%rsp
140479993:	41 5e                	pop    %r14
140479995:	5f                   	pop    %rdi
140479996:	5e                   	pop    %rsi
140479997:	c3                   	ret
140479998:	2b de                	sub    %esi,%ebx
14047999a:	48 8d 15 0f ff b7 00 	lea    0xb7ff0f(%rip),%rdx        # 0x140ff98b0
1404799a1:	44 8b cb             	mov    %ebx,%r9d
1404799a4:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
1404799a9:	41 b8 07 00 00 00    	mov    $0x7,%r8d
1404799af:	e8 3c f7 d2 ff       	call   0x1401a90f0
1404799b4:	48 8d 15 15 70 f2 00 	lea    0xf27015(%rip),%rdx        # 0x1413a09d0
1404799bb:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
1404799c0:	e8 53 2e 9a 00       	call   0x140e1c818
1404799c5:	cc                   	int3
1404799c6:	2b de                	sub    %esi,%ebx
1404799c8:	48 8d 15 f9 fe b7 00 	lea    0xb7fef9(%rip),%rdx        # 0x140ff98c8
1404799cf:	44 8b cb             	mov    %ebx,%r9d
1404799d2:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
1404799d7:	41 b8 03 00 00 00    	mov    $0x3,%r8d
1404799dd:	e8 0e f7 d2 ff       	call   0x1401a90f0
1404799e2:	48 8d 15 e7 6f f2 00 	lea    0xf26fe7(%rip),%rdx        # 0x1413a09d0
1404799e9:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
1404799ee:	e8 25 2e 9a 00       	call   0x140e1c818
1404799f3:	cc                   	int3
1404799f4:	48 8d 15 fd fe b7 00 	lea    0xb7fefd(%rip),%rdx        # 0x140ff98f8
1404799fb:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140479a00:	e8 eb f5 d2 ff       	call   0x1401a8ff0
140479a05:	48 8d 15 84 70 f2 00 	lea    0xf27084(%rip),%rdx        # 0x1413a0a90
140479a0c:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140479a11:	e8 02 2e 9a 00       	call   0x140e1c818
140479a16:	cc                   	int3
140479a17:	2b de                	sub    %esi,%ebx
140479a19:	48 8d 15 c0 fe b7 00 	lea    0xb7fec0(%rip),%rdx        # 0x140ff98e0
140479a20:	44 8b cb             	mov    %ebx,%r9d
140479a23:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140479a28:	41 83 c0 07          	add    $0x7,%r8d
140479a2c:	e8 bf f6 d2 ff       	call   0x1401a90f0
140479a31:	48 8d 15 98 6f f2 00 	lea    0xf26f98(%rip),%rdx        # 0x1413a09d0
140479a38:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140479a3d:	e8 d6 2d 9a 00       	call   0x140e1c818
140479a42:	cc                   	int3
140479a43:	48 8d 15 66 fe b7 00 	lea    0xb7fe66(%rip),%rdx        # 0x140ff98b0
140479a4a:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140479a4f:	e8 1c f3 d2 ff       	call   0x1401a8d70
140479a54:	48 8d 15 d5 6f f2 00 	lea    0xf26fd5(%rip),%rdx        # 0x1413a0a30
140479a5b:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140479a60:	e8 b3 2d 9a 00       	call   0x140e1c818
140479a65:	cc                   	int3
140479a66:	cc                   	int3
140479a67:	cc                   	int3
140479a68:	cc                   	int3
140479a69:	cc                   	int3
140479a6a:	cc                   	int3
140479a6b:	cc                   	int3
140479a6c:	cc                   	int3
140479a6d:	cc                   	int3
140479a6e:	cc                   	int3
140479a6f:	cc                   	int3
140479a70:	40 53                	rex push %rbx
140479a72:	57                   	push   %rdi
140479a73:	41 54                	push   %r12
140479a75:	41 55                	push   %r13
140479a77:	41 56                	push   %r14
140479a79:	48 83 ec 70          	sub    $0x70,%rsp
140479a7d:	48 8b 05 7c f4 f3 00 	mov    0xf3f47c(%rip),%rax        # 0x1413b8f00
140479a84:	48 33 c4             	xor    %rsp,%rax
140479a87:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140479a8c:	48 63 42 08          	movslq 0x8(%rdx),%rax
140479a90:	40 32 ff             	xor    %dil,%dil
140479a93:	45 8b e1             	mov    %r9d,%r12d
140479a96:	4d 8b e8             	mov    %r8,%r13
140479a99:	4c 8b d2             	mov    %rdx,%r10
140479a9c:	4c 8b f1             	mov    %rcx,%r14
140479a9f:	85 c0                	test   %eax,%eax
140479aa1:	75 0d                	jne    0x140479ab0
140479aa3:	48 8b 52 28          	mov    0x28(%rdx),%rdx
140479aa7:	49 63 5a 1c          	movslq 0x1c(%r10),%rbx
140479aab:	48 03 da             	add    %rdx,%rbx
140479aae:	eb 08                	jmp    0x140479ab8
140479ab0:	48 8b 52 10          	mov    0x10(%rdx),%rdx
140479ab4:	48 8d 1c 02          	lea    (%rdx,%rax,1),%rbx
140479ab8:	8b 49 18             	mov    0x18(%rcx),%ecx
140479abb:	48 89 ac 24 b8 00 00 	mov    %rbp,0xb8(%rsp)
140479ac2:	00
140479ac3:	48 89 74 24 68       	mov    %rsi,0x68(%rsp)
140479ac8:	4c 89 7c 24 60       	mov    %r15,0x60(%rsp)
140479acd:	85 c9                	test   %ecx,%ecx
140479acf:	0f 84 67 01 00 00    	je     0x140479c3c
140479ad5:	83 e9 01             	sub    $0x1,%ecx
140479ad8:	0f 84 47 01 00 00    	je     0x140479c25
140479ade:	83 f9 01             	cmp    $0x1,%ecx
140479ae1:	0f 85 6a 01 00 00    	jne    0x140479c51
140479ae7:	41 38 7a 18          	cmp    %dil,0x18(%r10)
140479aeb:	75 0b                	jne    0x140479af8
140479aed:	41 83 7a 44 00       	cmpl   $0x0,0x44(%r10)
140479af2:	0f 85 59 01 00 00    	jne    0x140479c51
140479af8:	48 8d 72 03          	lea    0x3(%rdx),%rsi
140479afc:	48 3b f3             	cmp    %rbx,%rsi
140479aff:	0f 87 7c 01 00 00    	ja     0x140479c81
140479b05:	48 8d 4a 01          	lea    0x1(%rdx),%rcx
140479b09:	48 3b f1             	cmp    %rcx,%rsi
140479b0c:	0f 82 6f 01 00 00    	jb     0x140479c81
140479b12:	0f b6 02             	movzbl (%rdx),%eax
140479b15:	41 88 06             	mov    %al,(%r14)
140479b18:	0f b7 01             	movzwl (%rcx),%eax
140479b1b:	41 83 fc 01          	cmp    $0x1,%r12d
140479b1f:	74 04                	je     0x140479b25
140479b21:	66 c1 c8 08          	ror    $0x8,%ax
140479b25:	44 0f b7 f8          	movzwl %ax,%r15d
140479b29:	66 41 89 46 02       	mov    %ax,0x2(%r14)
140479b2e:	0f b7 e8             	movzwl %ax,%ebp
140479b31:	48 8b c3             	mov    %rbx,%rax
140479b34:	48 2b c2             	sub    %rdx,%rax
140479b37:	48 83 e8 03          	sub    $0x3,%rax
140479b3b:	4c 3b f8             	cmp    %rax,%r15
140479b3e:	0f 8f 6b 01 00 00    	jg     0x140479caf
140479b44:	33 c0                	xor    %eax,%eax
140479b46:	b9 18 00 00 00       	mov    $0x18,%ecx
140479b4b:	49 89 46 10          	mov    %rax,0x10(%r14)
140479b4f:	e8 b4 15 9a 00       	call   0x140e1b108
140479b54:	48 8b c8             	mov    %rax,%rcx
140479b57:	48 85 c0             	test   %rax,%rax
140479b5a:	74 0f                	je     0x140479b6b
140479b5c:	33 c0                	xor    %eax,%eax
140479b5e:	48 89 01             	mov    %rax,(%rcx)
140479b61:	48 89 41 08          	mov    %rax,0x8(%rcx)
140479b65:	48 89 41 10          	mov    %rax,0x10(%rcx)
140479b69:	eb 02                	jmp    0x140479b6d
140479b6b:	33 c9                	xor    %ecx,%ecx
140479b6d:	49 89 4e 08          	mov    %rcx,0x8(%r14)
140479b71:	48 8b 41 10          	mov    0x10(%rcx),%rax
140479b75:	48 2b 01             	sub    (%rcx),%rax
140479b78:	48 c1 f8 03          	sar    $0x3,%rax
140479b7c:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140479b81:	4c 3b f8             	cmp    %rax,%r15
140479b84:	76 0a                	jbe    0x140479b90
140479b86:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140479b8b:	e8 90 ba f4 ff       	call   0x1403c5620
140479b90:	85 ed                	test   %ebp,%ebp
140479b92:	0f 84 82 00 00 00    	je     0x140479c1a
140479b98:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140479b9f:	00
140479ba0:	b9 18 00 00 00       	mov    $0x18,%ecx
140479ba5:	e8 5e 15 9a 00       	call   0x140e1b108
140479baa:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140479baf:	48 85 c0             	test   %rax,%rax
140479bb2:	74 0c                	je     0x140479bc0
140479bb4:	33 c9                	xor    %ecx,%ecx
140479bb6:	89 08                	mov    %ecx,(%rax)
140479bb8:	48 89 48 04          	mov    %rcx,0x4(%rax)
140479bbc:	48 89 48 10          	mov    %rcx,0x10(%rax)
140479bc0:	4d 8b cd             	mov    %r13,%r9
140479bc3:	49 89 46 10          	mov    %rax,0x10(%r14)
140479bc7:	4c 8b c3             	mov    %rbx,%r8
140479bca:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
140479bcf:	48 8b d6             	mov    %rsi,%rdx
140479bd2:	48 8b c8             	mov    %rax,%rcx
140479bd5:	e8 46 c6 ff ff       	call   0x140476220
140479bda:	49 8b 4e 08          	mov    0x8(%r14),%rcx
140479bde:	4c 63 f8             	movslq %eax,%r15
140479be1:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140479be5:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140479be9:	74 0e                	je     0x140479bf9
140479beb:	49 8b 46 10          	mov    0x10(%r14),%rax
140479bef:	48 89 02             	mov    %rax,(%rdx)
140479bf2:	48 83 41 08 08       	addq   $0x8,0x8(%rcx)
140479bf7:	eb 09                	jmp    0x140479c02
140479bf9:	4d 8d 46 10          	lea    0x10(%r14),%r8
140479bfd:	e8 be b8 f4 ff       	call   0x1403c54c0
140479c02:	33 c0                	xor    %eax,%eax
140479c04:	49 03 f7             	add    %r15,%rsi
140479c07:	49 89 46 10          	mov    %rax,0x10(%r14)
140479c0b:	48 83 ed 01          	sub    $0x1,%rbp
140479c0f:	75 8f                	jne    0x140479ba0
140479c11:	40 b7 01             	mov    $0x1,%dil
140479c14:	41 89 46 18          	mov    %eax,0x18(%r14)
140479c18:	eb 37                	jmp    0x140479c51
140479c1a:	33 c0                	xor    %eax,%eax
140479c1c:	40 b7 01             	mov    $0x1,%dil
140479c1f:	41 89 46 18          	mov    %eax,0x18(%r14)
140479c23:	eb 2c                	jmp    0x140479c51
140479c25:	ba 03 00 00 00       	mov    $0x3,%edx
140479c2a:	41 c7 46 18 02 00 00 	movl   $0x2,0x18(%r14)
140479c31:	00
140479c32:	49 8b ca             	mov    %r10,%rcx
140479c35:	e8 f6 46 54 00       	call   0x1409be330
140479c3a:	eb 15                	jmp    0x140479c51
140479c3c:	45 33 c0             	xor    %r8d,%r8d
140479c3f:	33 d2                	xor    %edx,%edx
140479c41:	49 8b ca             	mov    %r10,%rcx
140479c44:	e8 27 4c 54 00       	call   0x1409be870
140479c49:	41 c7 46 18 01 00 00 	movl   $0x1,0x18(%r14)
140479c50:	00
140479c51:	4c 8b 7c 24 60       	mov    0x60(%rsp),%r15
140479c56:	40 0f b6 c7          	movzbl %dil,%eax
140479c5a:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140479c5f:	48 8b ac 24 b8 00 00 	mov    0xb8(%rsp),%rbp
140479c66:	00
140479c67:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140479c6c:	48 33 cc             	xor    %rsp,%rcx
140479c6f:	e8 8c 18 9a 00       	call   0x140e1b500
140479c74:	48 83 c4 70          	add    $0x70,%rsp
140479c78:	41 5e                	pop    %r14
140479c7a:	41 5d                	pop    %r13
140479c7c:	41 5c                	pop    %r12
140479c7e:	5f                   	pop    %rdi
140479c7f:	5b                   	pop    %rbx
140479c80:	c3                   	ret
140479c81:	2b da                	sub    %edx,%ebx
140479c83:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140479c88:	44 8b cb             	mov    %ebx,%r9d
140479c8b:	48 8d 15 26 fb b7 00 	lea    0xb7fb26(%rip),%rdx        # 0x140ff97b8
140479c92:	41 b8 03 00 00 00    	mov    $0x3,%r8d
140479c98:	e8 53 f4 d2 ff       	call   0x1401a90f0
140479c9d:	48 8d 15 2c 6d f2 00 	lea    0xf26d2c(%rip),%rdx        # 0x1413a09d0
140479ca4:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140479ca9:	e8 6a 2b 9a 00       	call   0x140e1c818
140479cae:	cc                   	int3
140479caf:	2b da                	sub    %edx,%ebx
140479cb1:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140479cb6:	44 8b c5             	mov    %ebp,%r8d
140479cb9:	48 8d 15 20 fb b7 00 	lea    0xb7fb20(%rip),%rdx        # 0x140ff97e0
140479cc0:	44 8d 4b fd          	lea    -0x3(%rbx),%r9d
140479cc4:	e8 27 f4 d2 ff       	call   0x1401a90f0
140479cc9:	48 8d 15 00 6d f2 00 	lea    0xf26d00(%rip),%rdx        # 0x1413a09d0
140479cd0:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140479cd5:	e8 3e 2b 9a 00       	call   0x140e1c818
140479cda:	cc                   	int3
140479cdb:	cc                   	int3
140479cdc:	cc                   	int3
140479cdd:	cc                   	int3
140479cde:	cc                   	int3
140479cdf:	cc                   	int3
140479ce0:	40 53                	rex push %rbx
140479ce2:	56                   	push   %rsi
140479ce3:	57                   	push   %rdi
140479ce4:	41 56                	push   %r14
140479ce6:	48 83 ec 68          	sub    $0x68,%rsp
140479cea:	48 8b 05 0f f2 f3 00 	mov    0xf3f20f(%rip),%rax        # 0x1413b8f00
140479cf1:	48 33 c4             	xor    %rsp,%rax
140479cf4:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140479cf9:	48 8b f9             	mov    %rcx,%rdi
140479cfc:	41 8b f1             	mov    %r9d,%esi
140479cff:	0f b6 49 28          	movzbl 0x28(%rcx),%ecx
140479d03:	4d 8b f0             	mov    %r8,%r14
140479d06:	48 8b da             	mov    %rdx,%rbx
140479d09:	88 0f                	mov    %cl,(%rdi)
140479d0b:	85 c9                	test   %ecx,%ecx
140479d0d:	0f 84 f4 00 00 00    	je     0x140479e07
140479d13:	83 e9 01             	sub    $0x1,%ecx
140479d16:	0f 84 92 00 00 00    	je     0x140479dae
140479d1c:	83 e9 01             	sub    $0x1,%ecx
140479d1f:	74 6c                	je     0x140479d8d
140479d21:	83 f9 01             	cmp    $0x1,%ecx
140479d24:	0f 85 5e 01 00 00    	jne    0x140479e88
140479d2a:	48 83 7f 20 00       	cmpq   $0x0,0x20(%rdi)
140479d2f:	75 32                	jne    0x140479d63
140479d31:	b9 28 00 00 00       	mov    $0x28,%ecx
140479d36:	e8 cd 13 9a 00       	call   0x140e1b108
140479d3b:	33 c9                	xor    %ecx,%ecx
140479d3d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140479d42:	48 85 c0             	test   %rax,%rax
140479d45:	74 15                	je     0x140479d5c
140479d47:	48 89 48 10          	mov    %rcx,0x10(%rax)
140479d4b:	89 48 18             	mov    %ecx,0x18(%rax)
140479d4e:	48 89 08             	mov    %rcx,(%rax)
140479d51:	88 48 08             	mov    %cl,0x8(%rax)
140479d54:	89 48 0c             	mov    %ecx,0xc(%rax)
140479d57:	89 48 20             	mov    %ecx,0x20(%rax)
140479d5a:	eb 03                	jmp    0x140479d5f
140479d5c:	48 8b c1             	mov    %rcx,%rax
140479d5f:	48 89 47 20          	mov    %rax,0x20(%rdi)
140479d63:	32 c0                	xor    %al,%al
140479d65:	80 7b 18 00          	cmpb   $0x0,0x18(%rbx)
140479d69:	75 0a                	jne    0x140479d75
140479d6b:	83 7b 44 00          	cmpl   $0x0,0x44(%rbx)
140479d6f:	0f 85 ed 00 00 00    	jne    0x140479e62
140479d75:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
140479d79:	44 8b c6             	mov    %esi,%r8d
140479d7c:	48 8b d3             	mov    %rbx,%rdx
140479d7f:	e8 1c fa ff ff       	call   0x1404797a0
140479d84:	84 c0                	test   %al,%al
140479d86:	74 dd                	je     0x140479d65