140116bcb:	49 63 d4             	movslq %r12d,%rdx
140116bce:	49 8b 0c c9          	mov    (%r9,%rcx,8),%rcx
140116bd2:	8b 14 91             	mov    (%rcx,%rdx,4),%edx
140116bd5:	85 d2                	test   %edx,%edx
140116bd7:	74 d1                	je     0x140116baa
140116bd9:	83 fa 02             	cmp    $0x2,%edx
140116bdc:	74 09                	je     0x140116be7
140116bde:	48 8b 40 08          	mov    0x8(%rax),%rax
140116be2:	83 ef 01             	sub    $0x1,%edi
140116be5:	eb d6                	jmp    0x140116bbd
140116be7:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140116beb:	48 8b 0e             	mov    (%rsi),%rcx
140116bee:	48 85 d2             	test   %rdx,%rdx
140116bf1:	74 62                	je     0x140116c55
140116bf3:	48 89 0a             	mov    %rcx,(%rdx)
140116bf6:	48 85 c9             	test   %rcx,%rcx
140116bf9:	74 08                	je     0x140116c03
140116bfb:	48 89 51 08          	mov    %rdx,0x8(%rcx)
140116bff:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140116c03:	48 85 c0             	test   %rax,%rax
140116c06:	74 42                	je     0x140116c4a
140116c08:	f3 0f 7e 00          	movq   (%rax),%xmm0
140116c0c:	66 48 0f 6e c8       	movq   %rax,%xmm1
140116c11:	66 0f 6c c1          	punpcklqdq %xmm1,%xmm0
140116c15:	0f 11 06             	movups %xmm0,(%rsi)
140116c18:	48 89 30             	mov    %rsi,(%rax)
140116c1b:	48 8b 0e             	mov    (%rsi),%rcx
140116c1e:	41 83 42 08 01       	addl   $0x1,0x8(%r10)
140116c23:	48 85 c9             	test   %rcx,%rcx
140116c26:	74 04                	je     0x140116c2c
140116c28:	48 89 71 08          	mov    %rsi,0x8(%rcx)
140116c2c:	41 83 ec 01          	sub    $0x1,%r12d
140116c30:	48 89 d6             	mov    %rdx,%rsi
140116c33:	eb 88                	jmp    0x140116bbd
140116c35:	48 8b ac 24 08 01 00 	mov    0x108(%rsp),%rbp
140116c3c:	00
140116c3d:	44 8b ac 24 70 01 00 	mov    0x170(%rsp),%r13d
140116c44:	00
140116c45:	e9 d6 fe ff ff       	jmp    0x140116b20
140116c4a:	48 89 2e             	mov    %rbp,(%rsi)
140116c4d:	48 89 e9             	mov    %rbp,%rcx
140116c50:	48 89 f5             	mov    %rsi,%rbp
140116c53:	eb c9                	jmp    0x140116c1e
140116c55:	48 89 8c 24 88 00 00 	mov    %rcx,0x88(%rsp)
140116c5c:	00
140116c5d:	eb 97                	jmp    0x140116bf6
140116c5f:	66 0f ef c0          	pxor   %xmm0,%xmm0
140116c63:	44 89 60 08          	mov    %r12d,0x8(%rax)
140116c67:	8b 94 24 dc 00 00 00 	mov    0xdc(%rsp),%edx
140116c6e:	48 89 fd             	mov    %rdi,%rbp
140116c71:	48 89 38             	mov    %rdi,(%rax)
140116c74:	c7 40 20 00 00 00 00 	movl   $0x0,0x20(%rax)
140116c7b:	0f 11 40 10          	movups %xmm0,0x10(%rax)
140116c7f:	e9 9c f9 ff ff       	jmp    0x140116620
140116c84:	48 83 c5 01          	add    $0x1,%rbp
140116c88:	48 83 c7 48          	add    $0x48,%rdi
140116c8c:	48 39 ac 24 a0 00 00 	cmp    %rbp,0xa0(%rsp)
140116c93:	00
140116c94:	0f 84 df f3 ff ff    	je     0x140116079
140116c9a:	89 ea                	mov    %ebp,%edx
140116c9c:	85 ed                	test   %ebp,%ebp
140116c9e:	7e e4                	jle    0x140116c84
140116ca0:	41 89 ea             	mov    %ebp,%r10d
140116ca3:	41 89 ee             	mov    %ebp,%r14d
140116ca6:	e9 a4 f2 ff ff       	jmp    0x140115f4f
140116cab:	44 0f b6 b4 24 88 00 	movzbl 0x88(%rsp),%r14d
140116cb2:	00 00
140116cb4:	44 39 d6             	cmp    %r10d,%esi
140116cb7:	0f 82 55 01 00 00    	jb     0x140116e12
140116cbd:	45 89 fe             	mov    %r15d,%r14d
140116cc0:	44 8b ac 24 e8 02 00 	mov    0x2e8(%rsp),%r13d
140116cc7:	00
140116cc8:	4c 8b 7c 24 58       	mov    0x58(%rsp),%r15
140116ccd:	8b 54 24 70          	mov    0x70(%rsp),%edx
140116cd1:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140116cd6:	45 89 e8             	mov    %r13d,%r8d
140116cd9:	e8 62 de ff ff       	call   0x140114b40
140116cde:	8b 94 24 90 00 00 00 	mov    0x90(%rsp),%edx
140116ce5:	44 09 f2             	or     %r14d,%edx
140116ce8:	09 c2                	or     %eax,%edx
140116cea:	0f 85 c1 03 00 00    	jne    0x1401170b1
140116cf0:	48 8b 8c 24 88 01 00 	mov    0x188(%rsp),%rcx
140116cf7:	00
140116cf8:	e8 b3 21 fe ff       	call   0x1400f8eb0
140116cfd:	83 7c 24 70 fe       	cmpl   $0xfffffffe,0x70(%rsp)
140116d02:	0f 84 68 02 00 00    	je     0x140116f70
140116d08:	8b 44 24 70          	mov    0x70(%rsp),%eax
140116d0c:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
140116d11:	83 c0 01             	add    $0x1,%eax
140116d14:	48 c1 e0 06          	shl    $0x6,%rax
140116d18:	48 8d 74 07 40       	lea    0x40(%rdi,%rax,1),%rsi
140116d1d:	eb 0d                	jmp    0x140116d2c
140116d1f:	49 83 c7 40          	add    $0x40,%r15
140116d23:	49 39 f7             	cmp    %rsi,%r15
140116d26:	0f 84 44 02 00 00    	je     0x140116f70
140116d2c:	49 8b 1f             	mov    (%r15),%rbx
140116d2f:	48 85 db             	test   %rbx,%rbx
140116d32:	74 eb                	je     0x140116d1f
140116d34:	48 89 d9             	mov    %rbx,%rcx
140116d37:	48 8b 1b             	mov    (%rbx),%rbx
140116d3a:	e8 71 21 fe ff       	call   0x1400f8eb0
140116d3f:	48 85 db             	test   %rbx,%rbx
140116d42:	74 db                	je     0x140116d1f
140116d44:	48 89 d9             	mov    %rbx,%rcx
140116d47:	48 8b 1b             	mov    (%rbx),%rbx
140116d4a:	e8 61 21 fe ff       	call   0x1400f8eb0
140116d4f:	48 85 db             	test   %rbx,%rbx
140116d52:	75 e0                	jne    0x140116d34
140116d54:	eb c9                	jmp    0x140116d1f
140116d56:	41 89 da             	mov    %ebx,%r10d
140116d59:	41 39 dc             	cmp    %ebx,%r12d
140116d5c:	0f 82 52 ff ff ff    	jb     0x140116cb4
140116d62:	44 88 b4 24 88 00 00 	mov    %r14b,0x88(%rsp)
140116d69:	00
140116d6a:	eb 0d                	jmp    0x140116d79
140116d6c:	41 83 c2 01          	add    $0x1,%r10d
140116d70:	45 39 d4             	cmp    %r10d,%r12d
140116d73:	0f 82 32 ff ff ff    	jb     0x140116cab
140116d79:	44 89 d2             	mov    %r10d,%edx
140116d7c:	89 c1                	mov    %eax,%ecx
140116d7e:	48 c1 e2 06          	shl    $0x6,%rdx
140116d82:	23 4c 17 34          	and    0x34(%rdi,%rdx,1),%ecx
140116d86:	75 e4                	jne    0x140116d6c
140116d88:	44 89 d2             	mov    %r10d,%edx
140116d8b:	41 39 da             	cmp    %ebx,%r10d
140116d8e:	72 17                	jb     0x140116da7
140116d90:	41 8d 4a ff          	lea    -0x1(%r10),%ecx
140116d94:	41 89 eb             	mov    %ebp,%r11d
140116d97:	48 89 ca             	mov    %rcx,%rdx
140116d9a:	48 c1 e1 06          	shl    $0x6,%rcx
140116d9e:	44 23 5c 0f 34       	and    0x34(%rdi,%rcx,1),%r11d
140116da3:	41 0f 45 d2          	cmovne %r10d,%edx
140116da7:	8b 4c 24 48          	mov    0x48(%rsp),%ecx
140116dab:	44 8b 5c 24 78       	mov    0x78(%rsp),%r11d
140116db0:	01 ca                	add    %ecx,%edx
140116db2:	41 39 d3             	cmp    %edx,%r11d
140116db5:	41 0f 46 d3          	cmovbe %r11d,%edx
140116db9:	89 d1                	mov    %edx,%ecx
140116dbb:	85 d2                	test   %edx,%edx
140116dbd:	74 41                	je     0x140116e00
140116dbf:	44 8d 4a ff          	lea    -0x1(%rdx),%r9d
140116dc3:	4c 89 ca             	mov    %r9,%rdx
140116dc6:	49 c1 e1 06          	shl    $0x6,%r9
140116dca:	4e 8d 4c 0f 34       	lea    0x34(%rdi,%r9,1),%r9
140116dcf:	eb 25                	jmp    0x140116df6
140116dd1:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140116dd8:	00 00 00 00
140116ddc:	0f 1f 40 00          	nopl   0x0(%rax)
140116de0:	45 8b 19             	mov    (%r9),%r11d
140116de3:	49 83 e9 40          	sub    $0x40,%r9
140116de7:	41 21 c3             	and    %eax,%r11d
140116dea:	45 85 db             	test   %r11d,%r11d
140116ded:	0f 85 4f 01 00 00    	jne    0x140116f42
140116df3:	83 ea 01             	sub    $0x1,%edx
140116df6:	41 89 ce             	mov    %ecx,%r14d
140116df9:	89 d1                	mov    %edx,%ecx
140116dfb:	44 39 d2             	cmp    %r10d,%edx
140116dfe:	73 e0                	jae    0x140116de0
140116e00:	44 0f b6 b4 24 88 00 	movzbl 0x88(%rsp),%r14d
140116e07:	00 00
140116e09:	44 39 d6             	cmp    %r10d,%esi
140116e0c:	0f 83 0e 01 00 00    	jae    0x140116f20
140116e12:	48 89 bc 24 88 00 00 	mov    %rdi,0x88(%rsp)
140116e19:	00
140116e1a:	4d 89 c3             	mov    %r8,%r11
140116e1d:	89 f3                	mov    %esi,%ebx
140116e1f:	31 d2                	xor    %edx,%edx
140116e21:	89 84 24 98 00 00 00 	mov    %eax,0x98(%rsp)
140116e28:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140116e2f:	00
140116e30:	49 8b 03             	mov    (%r11),%rax
140116e33:	89 e9                	mov    %ebp,%ecx
140116e35:	41 23 4b 34          	and    0x34(%r11),%ecx
140116e39:	74 10                	je     0x140116e4b
140116e3b:	85 d2                	test   %edx,%edx
140116e3d:	0f 84 f8 00 00 00    	je     0x140116f3b
140116e43:	39 d1                	cmp    %edx,%ecx
140116e45:	0f 85 ff 00 00 00    	jne    0x140116f4a
140116e4b:	48 85 c0             	test   %rax,%rax
140116e4e:	75 1c                	jne    0x140116e6c
140116e50:	e9 de 00 00 00       	jmp    0x140116f33
140116e55:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140116e5c:	00 00 00 00
140116e60:	48 8b 00             	mov    (%rax),%rax
140116e63:	48 85 c0             	test   %rax,%rax
140116e66:	0f 84 c7 00 00 00    	je     0x140116f33
140116e6c:	41 89 d1             	mov    %edx,%r9d
140116e6f:	8b 50 14             	mov    0x14(%rax),%edx
140116e72:	45 85 c9             	test   %r9d,%r9d
140116e75:	74 e9                	je     0x140116e60
140116e77:	31 ff                	xor    %edi,%edi
140116e79:	eb 08                	jmp    0x140116e83
140116e7b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140116e80:	8b 50 14             	mov    0x14(%rax),%edx
140116e83:	44 39 ca             	cmp    %r9d,%edx
140116e86:	48 8b 00             	mov    (%rax),%rax
140116e89:	0f 95 c2             	setne  %dl
140116e8c:	0f b6 d2             	movzbl %dl,%edx
140116e8f:	09 d7                	or     %edx,%edi
140116e91:	89 f9                	mov    %edi,%ecx
140116e93:	83 f1 01             	xor    $0x1,%ecx
140116e96:	83 e1 01             	and    $0x1,%ecx
140116e99:	48 85 c0             	test   %rax,%rax
140116e9c:	74 04                	je     0x140116ea2
140116e9e:	84 c9                	test   %cl,%cl
140116ea0:	75 de                	jne    0x140116e80
140116ea2:	44 89 ca             	mov    %r9d,%edx
140116ea5:	83 c3 01             	add    $0x1,%ebx
140116ea8:	49 83 c3 40          	add    $0x40,%r11
140116eac:	44 39 d3             	cmp    %r10d,%ebx
140116eaf:	73 08                	jae    0x140116eb9
140116eb1:	84 c9                	test   %cl,%cl
140116eb3:	0f 85 77 ff ff ff    	jne    0x140116e30
140116eb9:	48 8b bc 24 88 00 00 	mov    0x88(%rsp),%rdi
140116ec0:	00
140116ec1:	8b 84 24 98 00 00 00 	mov    0x98(%rsp),%eax
140116ec8:	39 d5                	cmp    %edx,%ebp
140116eca:	74 54                	je     0x140116f20
140116ecc:	84 c9                	test   %cl,%cl
140116ece:	74 50                	je     0x140116f20
140116ed0:	44 89 d1             	mov    %r10d,%ecx
140116ed3:	48 8b 9c 24 a0 00 00 	mov    0xa0(%rsp),%rbx
140116eda:	00
140116edb:	4c 89 c2             	mov    %r8,%rdx
140116ede:	29 f1                	sub    %esi,%ecx
140116ee0:	83 e9 01             	sub    $0x1,%ecx
140116ee3:	4c 01 e9             	add    %r13,%rcx
140116ee6:	48 c1 e1 06          	shl    $0x6,%rcx
140116eea:	48 01 d9             	add    %rbx,%rcx
140116eed:	49 89 c9             	mov    %rcx,%r9
140116ef0:	4d 29 c1             	sub    %r8,%r9
140116ef3:	41 83 e1 40          	and    $0x40,%r9d
140116ef7:	74 11                	je     0x140116f0a
140116ef9:	48 83 c2 40          	add    $0x40,%rdx
140116efd:	8b 5c 24 40          	mov    0x40(%rsp),%ebx
140116f01:	41 21 58 34          	and    %ebx,0x34(%r8)
140116f05:	48 39 d1             	cmp    %rdx,%rcx
140116f08:	74 16                	je     0x140116f20
140116f0a:	44 8b 44 24 40       	mov    0x40(%rsp),%r8d
140116f0f:	44 21 42 34          	and    %r8d,0x34(%rdx)
140116f13:	44 21 42 74          	and    %r8d,0x74(%rdx)
140116f17:	48 83 ea 80          	sub    $0xffffffffffffff80,%rdx
140116f1b:	48 39 d1             	cmp    %rdx,%rcx
140116f1e:	75 ef                	jne    0x140116f0f
140116f20:	44 89 d3             	mov    %r10d,%ebx
140116f23:	45 39 d4             	cmp    %r10d,%r12d
140116f26:	0f 82 91 fd ff ff    	jb     0x140116cbd
140116f2c:	89 de                	mov    %ebx,%esi
140116f2e:	e9 24 f2 ff ff       	jmp    0x140116157
140116f33:	44 89 f1             	mov    %r14d,%ecx
140116f36:	e9 6a ff ff ff       	jmp    0x140116ea5
140116f3b:	89 ca                	mov    %ecx,%edx
140116f3d:	e9 09 ff ff ff       	jmp    0x140116e4b
140116f42:	45 89 f2             	mov    %r14d,%r10d
140116f45:	e9 26 fe ff ff       	jmp    0x140116d70
140116f4a:	48 8b bc 24 88 00 00 	mov    0x88(%rsp),%rdi
140116f51:	00
140116f52:	8b 84 24 98 00 00 00 	mov    0x98(%rsp),%eax
140116f59:	44 89 d3             	mov    %r10d,%ebx
140116f5c:	45 39 d4             	cmp    %r10d,%r12d
140116f5f:	73 cb                	jae    0x140116f2c
140116f61:	e9 57 fd ff ff       	jmp    0x140116cbd
140116f66:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140116f6d:	00 00 00
140116f70:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
140116f75:	48 8b 4f 38          	mov    0x38(%rdi),%rcx
140116f79:	e8 32 1f fe ff       	call   0x1400f8eb0
140116f7e:	48 89 f9             	mov    %rdi,%rcx
140116f81:	e8 2a 1f fe ff       	call   0x1400f8eb0
140116f86:	48 8b 3d 63 1b 12 00 	mov    0x121b63(%rip),%rdi        # 0x140238af0
140116f8d:	48 8b 84 24 88 02 00 	mov    0x288(%rsp),%rax
140116f94:	00
140116f95:	48 2b 07             	sub    (%rdi),%rax
140116f98:	0f 85 60 0d 00 00    	jne    0x140117cfe
140116f9e:	48 81 c4 98 02 00 00 	add    $0x298,%rsp
140116fa5:	5b                   	pop    %rbx
140116fa6:	5e                   	pop    %rsi
140116fa7:	5f                   	pop    %rdi
140116fa8:	5d                   	pop    %rbp
140116fa9:	41 5c                	pop    %r12
140116fab:	41 5d                	pop    %r13
140116fad:	41 5e                	pop    %r14
140116faf:	41 5f                	pop    %r15
140116fb1:	c3                   	ret
140116fb2:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
140116fb7:	ba 01 00 00 00       	mov    $0x1,%edx
140116fbc:	b9 01 00 00 00       	mov    $0x1,%ecx
140116fc1:	c7 84 24 80 01 00 00 	movl   $0x0,0x180(%rsp)
140116fc8:	00 00 00 00
140116fcc:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%rax)
140116fd3:	e8 c8 3c fb ff       	call   0x1400caca0
140116fd8:	44 89 b4 24 b8 00 00 	mov    %r14d,0xb8(%rsp)
140116fdf:	00
140116fe0:	48 89 84 24 88 01 00 	mov    %rax,0x188(%rsp)
140116fe7:	00
140116fe8:	45 85 ed             	test   %r13d,%r13d
140116feb:	0f 8f 15 ed ff ff    	jg     0x140115d06
140116ff1:	48 83 bc 24 c0 00 00 	cmpq   $0x0,0xc0(%rsp)
140116ff8:	00 00
140116ffa:	c7 84 24 90 00 00 00 	movl   $0x0,0x90(%rsp)
140117001:	00 00 00 00
140117005:	0f 85 40 ed ff ff    	jne    0x140115d4b
14011700b:	8b 46 28             	mov    0x28(%rsi),%eax
14011700e:	83 f8 ff             	cmp    $0xffffffff,%eax
140117011:	0f 84 45 03 00 00    	je     0x14011735c
140117017:	85 c0                	test   %eax,%eax
140117019:	0f 84 2c ed ff ff    	je     0x140115d4b
14011701f:	8b 84 24 90 00 00 00 	mov    0x90(%rsp),%eax
140117026:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
14011702b:	44 89 ea             	mov    %r13d,%edx
14011702e:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%rsp)
140117035:	00
140117036:	4c 8b 8c 24 d0 00 00 	mov    0xd0(%rsp),%r9
14011703d:	00
14011703e:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
140117045:	00
140117046:	89 44 24 20          	mov    %eax,0x20(%rsp)
14011704a:	e8 11 e4 ff ff       	call   0x140115460
14011704f:	48 8d 0d e9 2c 10 00 	lea    0x102ce9(%rip),%rcx        # 0x140219d3f
140117056:	e8 2d c3 0c 00       	call   0x1401e3388
14011705b:	48 8b 8c 24 88 01 00 	mov    0x188(%rsp),%rcx
140117062:	00
140117063:	e8 48 1e fe ff       	call   0x1400f8eb0
140117068:	e9 19 ff ff ff       	jmp    0x140116f86
14011706d:	8b 44 24 78          	mov    0x78(%rsp),%eax
140117071:	85 c0                	test   %eax,%eax
140117073:	0f 85 b3 f4 ff ff    	jne    0x14011652c
140117079:	45 31 e4             	xor    %r12d,%r12d
14011707c:	48 8b 84 24 a8 00 00 	mov    0xa8(%rsp),%rax
140117083:	00
140117084:	31 ff                	xor    %edi,%edi
140117086:	31 f6                	xor    %esi,%esi
140117088:	48 8b 08             	mov    (%rax),%rcx
14011708b:	e8 20 1e fe ff       	call   0x1400f8eb0
140117090:	48 89 e8             	mov    %rbp,%rax
140117093:	e9 cc fa ff ff       	jmp    0x140116b64
140117098:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14011709f:	00
1401170a0:	45 85 e4             	test   %r12d,%r12d
1401170a3:	0f 8f 24 f4 ff ff    	jg     0x1401164cd
1401170a9:	45 31 e4             	xor    %r12d,%r12d
1401170ac:	e9 4f 01 00 00       	jmp    0x140117200
1401170b1:	8b 84 24 90 00 00 00 	mov    0x90(%rsp),%eax
1401170b8:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
1401170bd:	44 89 ea             	mov    %r13d,%edx
1401170c0:	c7 44 24 28 01 00 00 	movl   $0x1,0x28(%rsp)
1401170c7:	00
1401170c8:	48 8b bc 24 80 00 00 	mov    0x80(%rsp),%rdi
1401170cf:	00
1401170d0:	4c 8b 8c 24 d0 00 00 	mov    0xd0(%rsp),%r9