140391989:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14039198e:	48 63 48 04          	movslq 0x4(%rax),%rcx
140391992:	8d 91 78 ff ff ff    	lea    -0x88(%rcx),%edx
140391998:	89 54 0c 4c          	mov    %edx,0x4c(%rsp,%rcx,1)
14039199c:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1403919a1:	e8 4a f9 e4 ff       	call   0x1401e12f0
1403919a6:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
1403919ab:	48 63 48 04          	movslq 0x4(%rax),%rcx
1403919af:	48 8d 05 c2 7d c1 00 	lea    0xc17dc2(%rip),%rax        # 0x140fa9778
1403919b6:	48 89 44 0c 50       	mov    %rax,0x50(%rsp,%rcx,1)
1403919bb:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
1403919c0:	48 63 51 04          	movslq 0x4(%rcx),%rdx
1403919c4:	44 8d 42 f0          	lea    -0x10(%rdx),%r8d
1403919c8:	44 89 44 14 4c       	mov    %r8d,0x4c(%rsp,%rdx,1)
1403919cd:	48 8d 05 0c 7d c1 00 	lea    0xc17d0c(%rip),%rax        # 0x140fa96e0
1403919d4:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
1403919d8:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
1403919dc:	e8 23 b0 a6 00       	call   0x140dfca04
1403919e1:	90                   	nop
1403919e2:	48 8b c6             	mov    %rsi,%rax
1403919e5:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
1403919e9:	48 33 cc             	xor    %rsp,%rcx
1403919ec:	e8 0f 9b a8 00       	call   0x140e1b500
1403919f1:	48 8b 9c 24 a0 01 00 	mov    0x1a0(%rsp),%rbx
1403919f8:	00
1403919f9:	48 81 c4 70 01 00 00 	add    $0x170,%rsp
140391a00:	5f                   	pop    %rdi
140391a01:	5e                   	pop    %rsi
140391a02:	5d                   	pop    %rbp
140391a03:	c3                   	ret
140391a04:	cc                   	int3
140391a05:	cc                   	int3
140391a06:	cc                   	int3
140391a07:	cc                   	int3
140391a08:	cc                   	int3
140391a09:	cc                   	int3
140391a0a:	cc                   	int3
140391a0b:	cc                   	int3
140391a0c:	cc                   	int3
140391a0d:	cc                   	int3
140391a0e:	cc                   	int3
140391a0f:	cc                   	int3
140391a10:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140391a15:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140391a1a:	57                   	push   %rdi
140391a1b:	41 56                	push   %r14
140391a1d:	41 57                	push   %r15
140391a1f:	48 81 ec 20 01 00 00 	sub    $0x120,%rsp
140391a26:	4c 8b f9             	mov    %rcx,%r15
140391a29:	48 8b da             	mov    %rdx,%rbx
140391a2c:	b9 88 00 00 00       	mov    $0x88,%ecx
140391a31:	33 ed                	xor    %ebp,%ebp
140391a33:	e8 d0 96 a8 00       	call   0x140e1b108
140391a38:	48 89 84 24 50 01 00 	mov    %rax,0x150(%rsp)
140391a3f:	00
140391a40:	4c 8b f0             	mov    %rax,%r14
140391a43:	48 85 c0             	test   %rax,%rax
140391a46:	0f 84 37 01 00 00    	je     0x140391b83
140391a4c:	48 8b d3             	mov    %rbx,%rdx
140391a4f:	48 8d 8c 24 a0 00 00 	lea    0xa0(%rsp),%rcx
140391a56:	00
140391a57:	e8 94 0d 00 00       	call   0x1403927f0
140391a5c:	48 8b f8             	mov    %rax,%rdi
140391a5f:	48 8b 50 08          	mov    0x8(%rax),%rdx
140391a63:	48 8b 08             	mov    (%rax),%rcx
140391a66:	4c 8b 40 10          	mov    0x10(%rax),%r8
140391a6a:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140391a6f:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140391a74:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
140391a79:	48 8d 50 18          	lea    0x18(%rax),%rdx
140391a7d:	48 89 68 10          	mov    %rbp,0x10(%rax)
140391a81:	48 89 68 08          	mov    %rbp,0x8(%rax)
140391a85:	48 89 28             	mov    %rbp,(%rax)
140391a88:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
140391a8d:	e8 7e 0f 00 00       	call   0x140392a10
140391a92:	48 8b 47 68          	mov    0x68(%rdi),%rax
140391a96:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140391a9b:	49 8b ce             	mov    %r14,%rcx
140391a9e:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
140391aa5:	00
140391aa6:	48 89 6f 68          	mov    %rbp,0x68(%rdi)
140391aaa:	e8 a1 08 00 00       	call   0x140392350
140391aaf:	48 8d 05 aa 1b c5 00 	lea    0xc51baa(%rip),%rax        # 0x140fe3660
140391ab6:	49 89 06             	mov    %rax,(%r14)
140391ab9:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140391abd:	48 85 c9             	test   %rcx,%rcx
140391ac0:	74 10                	je     0x140391ad2
140391ac2:	48 83 29 01          	subq   $0x1,(%rcx)
140391ac6:	75 0a                	jne    0x140391ad2
140391ac8:	ba 18 00 00 00       	mov    $0x18,%edx
140391acd:	e8 72 96 a8 00       	call   0x140e1b144
140391ad2:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140391ad6:	e8 85 68 e0 ff       	call   0x140198360
140391adb:	40 38 6f 48          	cmp    %bpl,0x48(%rdi)
140391adf:	74 09                	je     0x140391aea
140391ae1:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140391ae5:	e8 16 ba e0 ff       	call   0x14019d500
140391aea:	48 8b 1f             	mov    (%rdi),%rbx
140391aed:	48 85 db             	test   %rbx,%rbx
140391af0:	0f 84 90 00 00 00    	je     0x140391b86
140391af6:	48 89 b4 24 40 01 00 	mov    %rsi,0x140(%rsp)
140391afd:	00
140391afe:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140391b02:	48 3b de             	cmp    %rsi,%rbx
140391b05:	74 11                	je     0x140391b18
140391b07:	48 8b cb             	mov    %rbx,%rcx
140391b0a:	e8 e1 18 00 00       	call   0x1403933f0
140391b0f:	48 83 c3 28          	add    $0x28,%rbx
140391b13:	48 3b de             	cmp    %rsi,%rbx
140391b16:	75 ef                	jne    0x140391b07
140391b18:	4c 8b 07             	mov    (%rdi),%r8
140391b1b:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140391b22:	66 66 66
140391b25:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140391b29:	48 8b b4 24 40 01 00 	mov    0x140(%rsp),%rsi
140391b30:	00
140391b31:	49 2b c8             	sub    %r8,%rcx
140391b34:	48 f7 e9             	imul   %rcx
140391b37:	48 c1 fa 04          	sar    $0x4,%rdx
140391b3b:	48 8b c2             	mov    %rdx,%rax
140391b3e:	48 c1 e8 3f          	shr    $0x3f,%rax
140391b42:	48 03 d0             	add    %rax,%rdx
140391b45:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140391b49:	48 c1 e2 03          	shl    $0x3,%rdx
140391b4d:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140391b54:	72 18                	jb     0x140391b6e
140391b56:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140391b5a:	48 83 c2 27          	add    $0x27,%rdx
140391b5e:	4c 2b c1             	sub    %rcx,%r8
140391b61:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140391b65:	48 83 f8 1f          	cmp    $0x1f,%rax
140391b69:	77 3a                	ja     0x140391ba5
140391b6b:	4c 8b c1             	mov    %rcx,%r8
140391b6e:	49 8b c8             	mov    %r8,%rcx
140391b71:	e8 ce 95 a8 00       	call   0x140e1b144
140391b76:	48 89 2f             	mov    %rbp,(%rdi)
140391b79:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140391b7d:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140391b81:	eb 03                	jmp    0x140391b86
140391b83:	4c 8b f5             	mov    %rbp,%r14
140391b86:	4c 8d 9c 24 20 01 00 	lea    0x120(%rsp),%r11
140391b8d:	00
140391b8e:	4d 89 37             	mov    %r14,(%r15)
140391b91:	49 8b 5b 28          	mov    0x28(%r11),%rbx
140391b95:	49 8b c7             	mov    %r15,%rax
140391b98:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140391b9c:	49 8b e3             	mov    %r11,%rsp
140391b9f:	41 5f                	pop    %r15
140391ba1:	41 5e                	pop    %r14
140391ba3:	5f                   	pop    %rdi
140391ba4:	c3                   	ret
140391ba5:	e8 fa 85 a9 00       	call   0x140e2a1a4
140391baa:	cc                   	int3
140391bab:	cc                   	int3
140391bac:	cc                   	int3
140391bad:	cc                   	int3
140391bae:	cc                   	int3
140391baf:	cc                   	int3
140391bb0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140391bb5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140391bba:	57                   	push   %rdi
140391bbb:	41 56                	push   %r14
140391bbd:	41 57                	push   %r15
140391bbf:	48 81 ec 20 01 00 00 	sub    $0x120,%rsp
140391bc6:	4c 8b f9             	mov    %rcx,%r15
140391bc9:	48 8b da             	mov    %rdx,%rbx
140391bcc:	b9 88 00 00 00       	mov    $0x88,%ecx
140391bd1:	33 ed                	xor    %ebp,%ebp
140391bd3:	e8 30 95 a8 00       	call   0x140e1b108
140391bd8:	48 89 84 24 50 01 00 	mov    %rax,0x150(%rsp)
140391bdf:	00
140391be0:	4c 8b f0             	mov    %rax,%r14
140391be3:	48 85 c0             	test   %rax,%rax
140391be6:	0f 84 37 01 00 00    	je     0x140391d23
140391bec:	48 8b d3             	mov    %rbx,%rdx
140391bef:	48 8d 8c 24 a0 00 00 	lea    0xa0(%rsp),%rcx
140391bf6:	00
140391bf7:	e8 f4 0b 00 00       	call   0x1403927f0
140391bfc:	48 8b f8             	mov    %rax,%rdi
140391bff:	48 8b 50 08          	mov    0x8(%rax),%rdx
140391c03:	48 8b 08             	mov    (%rax),%rcx
140391c06:	4c 8b 40 10          	mov    0x10(%rax),%r8
140391c0a:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140391c0f:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140391c14:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
140391c19:	48 8d 50 18          	lea    0x18(%rax),%rdx
140391c1d:	48 89 68 10          	mov    %rbp,0x10(%rax)
140391c21:	48 89 68 08          	mov    %rbp,0x8(%rax)
140391c25:	48 89 28             	mov    %rbp,(%rax)
140391c28:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
140391c2d:	e8 de 0d 00 00       	call   0x140392a10
140391c32:	48 8b 47 68          	mov    0x68(%rdi),%rax
140391c36:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140391c3b:	49 8b ce             	mov    %r14,%rcx
140391c3e:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
140391c45:	00
140391c46:	48 89 6f 68          	mov    %rbp,0x68(%rdi)
140391c4a:	e8 51 08 00 00       	call   0x1403924a0
140391c4f:	48 8d 05 3a 1c c5 00 	lea    0xc51c3a(%rip),%rax        # 0x140fe3890
140391c56:	49 89 06             	mov    %rax,(%r14)
140391c59:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140391c5d:	48 85 c9             	test   %rcx,%rcx
140391c60:	74 10                	je     0x140391c72
140391c62:	48 83 29 01          	subq   $0x1,(%rcx)
140391c66:	75 0a                	jne    0x140391c72
140391c68:	ba 18 00 00 00       	mov    $0x18,%edx
140391c6d:	e8 d2 94 a8 00       	call   0x140e1b144
140391c72:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140391c76:	e8 e5 66 e0 ff       	call   0x140198360
140391c7b:	40 38 6f 48          	cmp    %bpl,0x48(%rdi)
140391c7f:	74 09                	je     0x140391c8a
140391c81:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140391c85:	e8 76 b8 e0 ff       	call   0x14019d500
140391c8a:	48 8b 1f             	mov    (%rdi),%rbx
140391c8d:	48 85 db             	test   %rbx,%rbx
140391c90:	0f 84 90 00 00 00    	je     0x140391d26
140391c96:	48 89 b4 24 40 01 00 	mov    %rsi,0x140(%rsp)
140391c9d:	00
140391c9e:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140391ca2:	48 3b de             	cmp    %rsi,%rbx
140391ca5:	74 11                	je     0x140391cb8
140391ca7:	48 8b cb             	mov    %rbx,%rcx
140391caa:	e8 41 17 00 00       	call   0x1403933f0
140391caf:	48 83 c3 28          	add    $0x28,%rbx
140391cb3:	48 3b de             	cmp    %rsi,%rbx
140391cb6:	75 ef                	jne    0x140391ca7
140391cb8:	4c 8b 07             	mov    (%rdi),%r8
140391cbb:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140391cc2:	66 66 66
140391cc5:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140391cc9:	48 8b b4 24 40 01 00 	mov    0x140(%rsp),%rsi
140391cd0:	00
140391cd1:	49 2b c8             	sub    %r8,%rcx
140391cd4:	48 f7 e9             	imul   %rcx
140391cd7:	48 c1 fa 04          	sar    $0x4,%rdx
140391cdb:	48 8b c2             	mov    %rdx,%rax
140391cde:	48 c1 e8 3f          	shr    $0x3f,%rax
140391ce2:	48 03 d0             	add    %rax,%rdx
140391ce5:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140391ce9:	48 c1 e2 03          	shl    $0x3,%rdx
140391ced:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140391cf4:	72 18                	jb     0x140391d0e
140391cf6:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140391cfa:	48 83 c2 27          	add    $0x27,%rdx
140391cfe:	4c 2b c1             	sub    %rcx,%r8
140391d01:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140391d05:	48 83 f8 1f          	cmp    $0x1f,%rax
140391d09:	77 3a                	ja     0x140391d45
140391d0b:	4c 8b c1             	mov    %rcx,%r8
140391d0e:	49 8b c8             	mov    %r8,%rcx
140391d11:	e8 2e 94 a8 00       	call   0x140e1b144
140391d16:	48 89 2f             	mov    %rbp,(%rdi)
140391d19:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140391d1d:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140391d21:	eb 03                	jmp    0x140391d26
140391d23:	4c 8b f5             	mov    %rbp,%r14
140391d26:	4c 8d 9c 24 20 01 00 	lea    0x120(%rsp),%r11
140391d2d:	00
140391d2e:	4d 89 37             	mov    %r14,(%r15)
140391d31:	49 8b 5b 28          	mov    0x28(%r11),%rbx
140391d35:	49 8b c7             	mov    %r15,%rax
140391d38:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140391d3c:	49 8b e3             	mov    %r11,%rsp
140391d3f:	41 5f                	pop    %r15
140391d41:	41 5e                	pop    %r14
140391d43:	5f                   	pop    %rdi
140391d44:	c3                   	ret
140391d45:	e8 5a 84 a9 00       	call   0x140e2a1a4
140391d4a:	cc                   	int3
140391d4b:	cc                   	int3
140391d4c:	cc                   	int3
140391d4d:	cc                   	int3
140391d4e:	cc                   	int3
140391d4f:	cc                   	int3
140391d50:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140391d55:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140391d5a:	57                   	push   %rdi
140391d5b:	41 56                	push   %r14
140391d5d:	41 57                	push   %r15
140391d5f:	48 81 ec 10 01 00 00 	sub    $0x110,%rsp
140391d66:	4c 8b f9             	mov    %rcx,%r15
140391d69:	48 8b da             	mov    %rdx,%rbx
140391d6c:	b9 80 00 00 00       	mov    $0x80,%ecx
140391d71:	33 ed                	xor    %ebp,%ebp
140391d73:	e8 90 93 a8 00       	call   0x140e1b108
140391d78:	48 89 84 24 40 01 00 	mov    %rax,0x140(%rsp)
140391d7f:	00
140391d80:	4c 8b f0             	mov    %rax,%r14
140391d83:	48 85 c0             	test   %rax,%rax
140391d86:	0f 84 37 01 00 00    	je     0x140391ec3
140391d8c:	48 8b d3             	mov    %rbx,%rdx
140391d8f:	48 8d 8c 24 98 00 00 	lea    0x98(%rsp),%rcx
140391d96:	00
140391d97:	e8 54 0a 00 00       	call   0x1403927f0
140391d9c:	48 8b f8             	mov    %rax,%rdi
140391d9f:	48 8b 50 08          	mov    0x8(%rax),%rdx
140391da3:	48 8b 08             	mov    (%rax),%rcx
140391da6:	4c 8b 40 10          	mov    0x10(%rax),%r8
140391daa:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140391daf:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140391db4:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
140391db9:	48 8d 50 18          	lea    0x18(%rax),%rdx
140391dbd:	48 89 68 10          	mov    %rbp,0x10(%rax)
140391dc1:	48 89 68 08          	mov    %rbp,0x8(%rax)
140391dc5:	48 89 28             	mov    %rbp,(%rax)
140391dc8:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
140391dcd:	e8 3e 0c 00 00       	call   0x140392a10
140391dd2:	48 8b 47 68          	mov    0x68(%rdi),%rax
140391dd6:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140391ddb:	49 8b ce             	mov    %r14,%rcx
140391dde:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
140391de5:	00
140391de6:	48 89 6f 68          	mov    %rbp,0x68(%rdi)
140391dea:	e8 01 08 00 00       	call   0x1403925f0
140391def:	48 8d 05 ca 1c c5 00 	lea    0xc51cca(%rip),%rax        # 0x140fe3ac0
140391df6:	49 89 06             	mov    %rax,(%r14)
140391df9:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140391dfd:	48 85 c9             	test   %rcx,%rcx
140391e00:	74 10                	je     0x140391e12
140391e02:	48 83 29 01          	subq   $0x1,(%rcx)
140391e06:	75 0a                	jne    0x140391e12
140391e08:	ba 18 00 00 00       	mov    $0x18,%edx
140391e0d:	e8 32 93 a8 00       	call   0x140e1b144
140391e12:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140391e16:	e8 45 65 e0 ff       	call   0x140198360
140391e1b:	40 38 6f 48          	cmp    %bpl,0x48(%rdi)
140391e1f:	74 09                	je     0x140391e2a
140391e21:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140391e25:	e8 d6 b6 e0 ff       	call   0x14019d500
140391e2a:	48 8b 1f             	mov    (%rdi),%rbx
140391e2d:	48 85 db             	test   %rbx,%rbx
140391e30:	0f 84 90 00 00 00    	je     0x140391ec6
140391e36:	48 89 b4 24 30 01 00 	mov    %rsi,0x130(%rsp)
140391e3d:	00
140391e3e:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140391e42:	48 3b de             	cmp    %rsi,%rbx
140391e45:	74 11                	je     0x140391e58
140391e47:	48 8b cb             	mov    %rbx,%rcx
140391e4a:	e8 a1 15 00 00       	call   0x1403933f0
140391e4f:	48 83 c3 28          	add    $0x28,%rbx
140391e53:	48 3b de             	cmp    %rsi,%rbx
140391e56:	75 ef                	jne    0x140391e47
140391e58:	4c 8b 07             	mov    (%rdi),%r8
140391e5b:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140391e62:	66 66 66
140391e65:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140391e69:	48 8b b4 24 30 01 00 	mov    0x130(%rsp),%rsi
140391e70:	00
140391e71:	49 2b c8             	sub    %r8,%rcx
140391e74:	48 f7 e9             	imul   %rcx