140172c3b:	3b 3e                	cmp    (%rsi),%edi
140172c3d:	7c d1                	jl     0x140172c10
140172c3f:	44 8b 6c 24 30       	mov    0x30(%rsp),%r13d
140172c44:	44 8b 46 10          	mov    0x10(%rsi),%r8d
140172c48:	48 8d 15 61 c5 1a 00 	lea    0x1ac561(%rip),%rdx        # 0x14031f1b0
140172c4f:	41 83 e0 07          	and    $0x7,%r8d
140172c53:	49 8b ce             	mov    %r14,%rcx
140172c56:	e8 b5 be f7 ff       	call   0x1400eeb10
140172c5b:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140172c60:	e9 96 01 00 00       	jmp    0x140172dfb
140172c65:	83 fb 10             	cmp    $0x10,%ebx
140172c68:	0f 87 f2 01 00 00    	ja     0x140172e60
140172c6e:	85 db                	test   %ebx,%ebx
140172c70:	7e 30                	jle    0x140172ca2
140172c72:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140172c76:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140172c7b:	4c 8b c3             	mov    %rbx,%r8
140172c7e:	e8 dd e6 16 00       	call   0x1402e1360
140172c83:	8b 4e 10             	mov    0x10(%rsi),%ecx
140172c86:	83 e1 07             	and    $0x7,%ecx
140172c89:	74 17                	je     0x140172ca2
140172c8b:	b8 08 00 00 00       	mov    $0x8,%eax
140172c90:	ba ff 00 00 00       	mov    $0xff,%edx
140172c95:	2b c1                	sub    %ecx,%eax
140172c97:	0f b6 c8             	movzbl %al,%ecx
140172c9a:	d3 fa                	sar    %cl,%edx
140172c9c:	f6 d2                	not    %dl
140172c9e:	20 54 1c 3f          	and    %dl,0x3f(%rsp,%rbx,1)
140172ca2:	b8 10 00 00 00       	mov    $0x10,%eax
140172ca7:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140172cac:	2b c3                	sub    %ebx,%eax
140172cae:	48 03 cb             	add    %rbx,%rcx
140172cb1:	4c 63 c0             	movslq %eax,%r8
140172cb4:	33 d2                	xor    %edx,%edx
140172cb6:	e8 45 ed 16 00       	call   0x1402e1a00
140172cbb:	ba 10 00 00 00       	mov    $0x10,%edx
140172cc0:	48 8d 4c 24 4e       	lea    0x4e(%rsp),%rcx
140172cc5:	44 8b c2             	mov    %edx,%r8d
140172cc8:	48 8d 44 24 4e       	lea    0x4e(%rsp),%rax
140172ccd:	4c 2b c1             	sub    %rcx,%r8
140172cd0:	80 78 01 00          	cmpb   $0x0,0x1(%rax)
140172cd4:	75 16                	jne    0x140172cec
140172cd6:	80 38 00             	cmpb   $0x0,(%rax)
140172cd9:	75 11                	jne    0x140172cec
140172cdb:	48 83 e8 02          	sub    $0x2,%rax
140172cdf:	83 ea 02             	sub    $0x2,%edx
140172ce2:	49 8d 0c 00          	lea    (%r8,%rax,1),%rcx
140172ce6:	48 83 f9 01          	cmp    $0x1,%rcx
140172cea:	7f e4                	jg     0x140172cd0
140172cec:	33 db                	xor    %ebx,%ebx
140172cee:	48 63 f2             	movslq %edx,%rsi
140172cf1:	33 ff                	xor    %edi,%edi
140172cf3:	85 d2                	test   %edx,%edx
140172cf5:	7e 4e                	jle    0x140172d45
140172cf7:	48 8d 2d da 52 23 00 	lea    0x2352da(%rip),%rbp        # 0x1403a7fd8
140172cfe:	66 90                	xchg   %ax,%ax
140172d00:	44 0f b6 44 3c 40    	movzbl 0x40(%rsp,%rdi,1),%r8d
140172d06:	4c 8d 0d 80 52 23 00 	lea    0x235280(%rip),%r9        # 0x1403a7f8d
140172d0d:	0f b6 44 3c 41       	movzbl 0x41(%rsp,%rdi,1),%eax
140172d12:	48 8d 15 87 c4 1a 00 	lea    0x1ac487(%rip),%rdx        # 0x14031f1a0
140172d19:	83 fb 0e             	cmp    $0xe,%ebx
140172d1c:	49 8b ce             	mov    %r14,%rcx
140172d1f:	4c 0f 4c cd          	cmovl  %rbp,%r9
140172d23:	41 c1 e0 08          	shl    $0x8,%r8d
140172d27:	44 0b c0             	or     %eax,%r8d
140172d2a:	e8 e1 bd f7 ff       	call   0x1400eeb10
140172d2f:	83 c3 02             	add    $0x2,%ebx
140172d32:	48 83 c7 02          	add    $0x2,%rdi
140172d36:	48 3b fe             	cmp    %rsi,%rdi
140172d39:	7c c5                	jl     0x140172d00
140172d3b:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140172d40:	83 fb 10             	cmp    $0x10,%ebx
140172d43:	7d 14                	jge    0x140172d59
140172d45:	48 8d 3d 8c 52 23 00 	lea    0x23528c(%rip),%rdi        # 0x1403a7fd8
140172d4c:	49 8b ce             	mov    %r14,%rcx
140172d4f:	48 8b d7             	mov    %rdi,%rdx
140172d52:	e8 b9 a1 f7 ff       	call   0x1400ecf10
140172d57:	eb 07                	jmp    0x140172d60
140172d59:	48 8d 3d 78 52 23 00 	lea    0x235278(%rip),%rdi        # 0x1403a7fd8
140172d60:	85 db                	test   %ebx,%ebx
140172d62:	0f 85 93 00 00 00    	jne    0x140172dfb
140172d68:	48 8b d7             	mov    %rdi,%rdx
140172d6b:	49 8b ce             	mov    %r14,%rcx
140172d6e:	e8 9d a1 f7 ff       	call   0x1400ecf10
140172d73:	e9 83 00 00 00       	jmp    0x140172dfb
140172d78:	83 fb 04             	cmp    $0x4,%ebx
140172d7b:	0f 87 df 00 00 00    	ja     0x140172e60
140172d81:	85 db                	test   %ebx,%ebx
140172d83:	7e 30                	jle    0x140172db5
140172d85:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140172d89:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140172d8e:	4c 8b c3             	mov    %rbx,%r8
140172d91:	e8 ca e5 16 00       	call   0x1402e1360
140172d96:	8b 4e 10             	mov    0x10(%rsi),%ecx
140172d99:	83 e1 07             	and    $0x7,%ecx
140172d9c:	74 17                	je     0x140172db5
140172d9e:	b8 08 00 00 00       	mov    $0x8,%eax
140172da3:	ba ff 00 00 00       	mov    $0xff,%edx
140172da8:	2b c1                	sub    %ecx,%eax
140172daa:	0f b6 c8             	movzbl %al,%ecx
140172dad:	d3 fa                	sar    %cl,%edx
140172daf:	f6 d2                	not    %dl
140172db1:	20 54 1c 3f          	and    %dl,0x3f(%rsp,%rbx,1)
140172db5:	b8 04 00 00 00       	mov    $0x4,%eax
140172dba:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140172dbf:	2b c3                	sub    %ebx,%eax
140172dc1:	48 03 cb             	add    %rbx,%rcx
140172dc4:	4c 63 c0             	movslq %eax,%r8
140172dc7:	33 d2                	xor    %edx,%edx
140172dc9:	e8 32 ec 16 00       	call   0x1402e1a00
140172dce:	0f b6 44 24 43       	movzbl 0x43(%rsp),%eax
140172dd3:	48 8d 15 f6 b0 17 00 	lea    0x17b0f6(%rip),%rdx        # 0x1402eded0
140172dda:	0f b6 4c 24 42       	movzbl 0x42(%rsp),%ecx
140172ddf:	44 0f b6 4c 24 41    	movzbl 0x41(%rsp),%r9d
140172de5:	44 0f b6 44 24 40    	movzbl 0x40(%rsp),%r8d
140172deb:	89 44 24 28          	mov    %eax,0x28(%rsp)
140172def:	89 4c 24 20          	mov    %ecx,0x20(%rsp)
140172df3:	49 8b ce             	mov    %r14,%rcx
140172df6:	e8 15 bd f7 ff       	call   0x1400eeb10
140172dfb:	49 8b 47 08          	mov    0x8(%r15),%rax
140172dff:	48 8d 15 b2 c3 1a 00 	lea    0x1ac3b2(%rip),%rdx        # 0x14031f1b8
140172e06:	8b 48 10             	mov    0x10(%rax),%ecx
140172e09:	44 8b 00             	mov    (%rax),%r8d
140172e0c:	83 e1 07             	and    $0x7,%ecx
140172e0f:	41 c1 e0 03          	shl    $0x3,%r8d
140172e13:	44 2b c1             	sub    %ecx,%r8d
140172e16:	49 8b ce             	mov    %r14,%rcx
140172e19:	e8 f2 bc f7 ff       	call   0x1400eeb10
140172e1e:	8b 5c 24 34          	mov    0x34(%rsp),%ebx
140172e22:	48 8b cd             	mov    %rbp,%rcx
140172e25:	41 ff c4             	inc    %r12d
140172e28:	e8 13 89 f7 ff       	call   0x1400eb740
140172e2d:	44 3b e0             	cmp    %eax,%r12d
140172e30:	0f 8c 0a fd ff ff    	jl     0x140172b40
140172e36:	b8 01 00 00 00       	mov    $0x1,%eax
140172e3b:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140172e40:	48 33 cc             	xor    %rsp,%rcx
140172e43:	e8 68 d0 13 00       	call   0x1402afeb0
140172e48:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
140172e4f:	00
140172e50:	48 83 c4 60          	add    $0x60,%rsp
140172e54:	41 5f                	pop    %r15
140172e56:	41 5e                	pop    %r14
140172e58:	41 5d                	pop    %r13
140172e5a:	41 5c                	pop    %r12
140172e5c:	5f                   	pop    %rdi
140172e5d:	5e                   	pop    %rsi
140172e5e:	5d                   	pop    %rbp
140172e5f:	c3                   	ret
140172e60:	33 c0                	xor    %eax,%eax
140172e62:	eb d7                	jmp    0x140172e3b
140172e64:	cc                   	int3
140172e65:	cc                   	int3
140172e66:	cc                   	int3
140172e67:	cc                   	int3
140172e68:	cc                   	int3
140172e69:	cc                   	int3
140172e6a:	cc                   	int3
140172e6b:	cc                   	int3
140172e6c:	cc                   	int3
140172e6d:	cc                   	int3
140172e6e:	cc                   	int3
140172e6f:	cc                   	int3
140172e70:	40 53                	rex push %rbx
140172e72:	55                   	push   %rbp
140172e73:	56                   	push   %rsi
140172e74:	57                   	push   %rdi
140172e75:	41 56                	push   %r14
140172e77:	b8 50 00 00 00       	mov    $0x50,%eax
140172e7c:	e8 af dc 13 00       	call   0x1402b0b30
140172e81:	48 2b e0             	sub    %rax,%rsp
140172e84:	48 8b 05 f5 2b 26 00 	mov    0x262bf5(%rip),%rax        # 0x1403d5a80
140172e8b:	48 33 c4             	xor    %rsp,%rax
140172e8e:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140172e93:	41 8b 01             	mov    (%r9),%eax
140172e96:	49 8b f1             	mov    %r9,%rsi
140172e99:	48 8b e9             	mov    %rcx,%rbp
140172e9c:	85 c0                	test   %eax,%eax
140172e9e:	0f 88 7b 01 00 00    	js     0x14017301f
140172ea4:	83 ea 01             	sub    $0x1,%edx
140172ea7:	0f 84 23 01 00 00    	je     0x140172fd0
140172ead:	83 fa 01             	cmp    $0x1,%edx
140172eb0:	74 60                	je     0x140172f12
140172eb2:	33 db                	xor    %ebx,%ebx
140172eb4:	85 c0                	test   %eax,%eax
140172eb6:	7e 39                	jle    0x140172ef1
140172eb8:	44 8b f3             	mov    %ebx,%r14d
140172ebb:	48 8d 3d 16 51 23 00 	lea    0x235116(%rip),%rdi        # 0x1403a7fd8
140172ec2:	48 8b 46 08          	mov    0x8(%rsi),%rax
140172ec6:	4c 8d 05 c0 50 23 00 	lea    0x2350c0(%rip),%r8        # 0x1403a7f8d
140172ecd:	85 db                	test   %ebx,%ebx
140172ecf:	48 8d 15 d2 c2 1a 00 	lea    0x1ac2d2(%rip),%rdx        # 0x14031f1a8
140172ed6:	48 8b cd             	mov    %rbp,%rcx
140172ed9:	4c 0f 4f c7          	cmovg  %rdi,%r8
140172edd:	45 0f b6 0c 06       	movzbl (%r14,%rax,1),%r9d
140172ee2:	e8 29 bc f7 ff       	call   0x1400eeb10
140172ee7:	ff c3                	inc    %ebx
140172ee9:	4d 8d 76 01          	lea    0x1(%r14),%r14
140172eed:	3b 1e                	cmp    (%rsi),%ebx
140172eef:	7c d1                	jl     0x140172ec2
140172ef1:	44 8b 46 10          	mov    0x10(%rsi),%r8d
140172ef5:	48 8d 15 b4 c2 1a 00 	lea    0x1ac2b4(%rip),%rdx        # 0x14031f1b0
140172efc:	41 83 e0 07          	and    $0x7,%r8d
140172f00:	48 8b cd             	mov    %rbp,%rcx
140172f03:	e8 08 bc f7 ff       	call   0x1400eeb10
140172f08:	b8 01 00 00 00       	mov    $0x1,%eax
140172f0d:	e9 0f 01 00 00       	jmp    0x140173021
140172f12:	45 0f b6 c8          	movzbl %r8b,%r9d
140172f16:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140172f1b:	bf 10 00 00 00       	mov    $0x10,%edi
140172f20:	48 8b d6             	mov    %rsi,%rdx
140172f23:	44 8b c7             	mov    %edi,%r8d
140172f26:	e8 65 f6 ff ff       	call   0x140172590
140172f2b:	85 c0                	test   %eax,%eax
140172f2d:	0f 84 ec 00 00 00    	je     0x14017301f
140172f33:	48 8d 4c 24 3e       	lea    0x3e(%rsp),%rcx
140172f38:	8b d7                	mov    %edi,%edx
140172f3a:	48 2b d1             	sub    %rcx,%rdx
140172f3d:	48 8d 44 24 3e       	lea    0x3e(%rsp),%rax
140172f42:	80 78 01 00          	cmpb   $0x0,0x1(%rax)
140172f46:	75 16                	jne    0x140172f5e
140172f48:	80 38 00             	cmpb   $0x0,(%rax)
140172f4b:	75 11                	jne    0x140172f5e
140172f4d:	48 83 e8 02          	sub    $0x2,%rax
140172f51:	83 ef 02             	sub    $0x2,%edi
140172f54:	48 8d 0c 02          	lea    (%rdx,%rax,1),%rcx
140172f58:	48 83 f9 01          	cmp    $0x1,%rcx
140172f5c:	7f e4                	jg     0x140172f42
140172f5e:	4c 63 f7             	movslq %edi,%r14
140172f61:	33 db                	xor    %ebx,%ebx
140172f63:	48 8d 3d 6e 50 23 00 	lea    0x23506e(%rip),%rdi        # 0x1403a7fd8
140172f6a:	4d 85 f6             	test   %r14,%r14
140172f6d:	7e 42                	jle    0x140172fb1
140172f6f:	8b f3                	mov    %ebx,%esi
140172f71:	44 0f b6 44 34 30    	movzbl 0x30(%rsp,%rsi,1),%r8d
140172f77:	4c 8d 0d 0f 50 23 00 	lea    0x23500f(%rip),%r9        # 0x1403a7f8d
140172f7e:	0f b6 44 34 31       	movzbl 0x31(%rsp,%rsi,1),%eax
140172f83:	48 8d 15 16 c2 1a 00 	lea    0x1ac216(%rip),%rdx        # 0x14031f1a0
140172f8a:	83 fb 0e             	cmp    $0xe,%ebx
140172f8d:	48 8b cd             	mov    %rbp,%rcx
140172f90:	4c 0f 4c cf          	cmovl  %rdi,%r9
140172f94:	41 c1 e0 08          	shl    $0x8,%r8d
140172f98:	44 0b c0             	or     %eax,%r8d
140172f9b:	e8 70 bb f7 ff       	call   0x1400eeb10
140172fa0:	83 c3 02             	add    $0x2,%ebx
140172fa3:	48 83 c6 02          	add    $0x2,%rsi
140172fa7:	49 3b f6             	cmp    %r14,%rsi
140172faa:	7c c5                	jl     0x140172f71
140172fac:	83 fb 10             	cmp    $0x10,%ebx
140172faf:	7d 0b                	jge    0x140172fbc
140172fb1:	48 8b d7             	mov    %rdi,%rdx
140172fb4:	48 8b cd             	mov    %rbp,%rcx
140172fb7:	e8 54 9f f7 ff       	call   0x1400ecf10
140172fbc:	85 db                	test   %ebx,%ebx
140172fbe:	75 58                	jne    0x140173018
140172fc0:	48 8b d7             	mov    %rdi,%rdx
140172fc3:	48 8b cd             	mov    %rbp,%rcx
140172fc6:	e8 45 9f f7 ff       	call   0x1400ecf10
140172fcb:	8d 43 01             	lea    0x1(%rbx),%eax
140172fce:	eb 51                	jmp    0x140173021
140172fd0:	45 0f b6 c8          	movzbl %r8b,%r9d
140172fd4:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140172fd9:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140172fdf:	48 8b d6             	mov    %rsi,%rdx
140172fe2:	e8 a9 f5 ff ff       	call   0x140172590
140172fe7:	85 c0                	test   %eax,%eax
140172fe9:	74 34                	je     0x14017301f
140172feb:	0f b6 44 24 33       	movzbl 0x33(%rsp),%eax
140172ff0:	48 8d 15 d9 ae 17 00 	lea    0x17aed9(%rip),%rdx        # 0x1402eded0
140172ff7:	0f b6 4c 24 32       	movzbl 0x32(%rsp),%ecx
140172ffc:	44 0f b6 4c 24 31    	movzbl 0x31(%rsp),%r9d
140173002:	44 0f b6 44 24 30    	movzbl 0x30(%rsp),%r8d
140173008:	89 44 24 28          	mov    %eax,0x28(%rsp)
14017300c:	89 4c 24 20          	mov    %ecx,0x20(%rsp)
140173010:	48 8b cd             	mov    %rbp,%rcx
140173013:	e8 f8 ba f7 ff       	call   0x1400eeb10
140173018:	b8 01 00 00 00       	mov    $0x1,%eax
14017301d:	eb 02                	jmp    0x140173021
14017301f:	33 c0                	xor    %eax,%eax
140173021:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140173026:	48 33 cc             	xor    %rsp,%rcx
140173029:	e8 82 ce 13 00       	call   0x1402afeb0
14017302e:	48 83 c4 50          	add    $0x50,%rsp
140173032:	41 5e                	pop    %r14
140173034:	5f                   	pop    %rdi
140173035:	5e                   	pop    %rsi
140173036:	5d                   	pop    %rbp
140173037:	5b                   	pop    %rbx
140173038:	c3                   	ret
140173039:	cc                   	int3
14017303a:	cc                   	int3
14017303b:	cc                   	int3
14017303c:	cc                   	int3
14017303d:	cc                   	int3
14017303e:	cc                   	int3
14017303f:	cc                   	int3
140173040:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140173045:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14017304a:	57                   	push   %rdi
14017304b:	b8 20 00 00 00       	mov    $0x20,%eax
140173050:	e8 db da 13 00       	call   0x1402b0b30
140173055:	48 2b e0             	sub    %rax,%rsp
140173058:	8b c2                	mov    %edx,%eax
14017305a:	88 54 24 39          	mov    %dl,0x39(%rsp)
14017305e:	c1 e8 08             	shr    $0x8,%eax
140173061:	48 8b f9             	mov    %rcx,%rdi
140173064:	88 44 24 38          	mov    %al,0x38(%rsp)
140173068:	4d 85 c0             	test   %r8,%r8
14017306b:	74 08                	je     0x140173075
14017306d:	41 0f b6 00          	movzbl (%r8),%eax
140173071:	88 44 24 3a          	mov    %al,0x3a(%rsp)
140173075:	33 db                	xor    %ebx,%ebx
140173077:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
14017307c:	4d 85 c0             	test   %r8,%r8
14017307f:	8b eb                	mov    %ebx,%ebp
140173081:	40 0f 95 c5          	setne  %bpl
140173085:	83 c5 02             	add    $0x2,%ebp
140173088:	e8 b3 86 f7 ff       	call   0x1400eb740
14017308d:	85 c0                	test   %eax,%eax
14017308f:	7e 37                	jle    0x1401730c8
140173091:	8b d3                	mov    %ebx,%edx
140173093:	48 8b cf             	mov    %rdi,%rcx
140173096:	e8 a5 89 f7 ff       	call   0x1400eba40
14017309b:	48 8b f0             	mov    %rax,%rsi
14017309e:	48 8b 08             	mov    (%rax),%rcx
1401730a1:	39 29                	cmp    %ebp,(%rcx)
1401730a3:	75 15                	jne    0x1401730ba
1401730a5:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1401730a9:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
1401730ae:	44 8b c5             	mov    %ebp,%r8d
1401730b1:	e8 8a ed 16 00       	call   0x1402e1e40
1401730b6:	85 c0                	test   %eax,%eax
1401730b8:	74 7b                	je     0x140173135
1401730ba:	48 8b cf             	mov    %rdi,%rcx
1401730bd:	ff c3                	inc    %ebx
1401730bf:	e8 7c 86 f7 ff       	call   0x1400eb740
1401730c4:	3b d8                	cmp    %eax,%ebx
1401730c6:	7c c9                	jl     0x140173091
1401730c8:	48 8d 0d 71 bf 1a 00 	lea    0x1abf71(%rip),%rcx        # 0x14031f040
1401730cf:	e8 1c dd fb ff       	call   0x140130df0
1401730d4:	48 8b d8             	mov    %rax,%rbx
1401730d7:	48 85 c0             	test   %rax,%rax
1401730da:	74 5e                	je     0x14017313a
1401730dc:	48 83 78 08 00       	cmpq   $0x0,0x8(%rax)
1401730e1:	75 15                	jne    0x1401730f8
1401730e3:	48 8d 0d e6 be 1a 00 	lea    0x1abee6(%rip),%rcx        # 0x14031efd0
1401730ea:	e8 01 dd fb ff       	call   0x140130df0
1401730ef:	48 89 43 08          	mov    %rax,0x8(%rbx)
1401730f3:	48 85 c0             	test   %rax,%rax
1401730f6:	74 42                	je     0x14017313a