140610c70:	4c 8b fa             	mov    %rdx,%r15
140610c73:	48 8b e9             	mov    %rcx,%rbp
140610c76:	48 8b 5a 08          	mov    0x8(%rdx),%rbx
140610c7a:	48 2b 1a             	sub    (%rdx),%rbx
140610c7d:	48 c1 fb 03          	sar    $0x3,%rbx
140610c81:	8b db                	mov    %ebx,%ebx
140610c83:	89 59 50             	mov    %ebx,0x50(%rcx)
140610c86:	48 89 5c 24 60       	mov    %rbx,0x60(%rsp)
140610c8b:	b8 70 00 00 00       	mov    $0x70,%eax
140610c90:	48 f7 e3             	mul    %rbx
140610c93:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
140610c9a:	48 0f 42 c1          	cmovb  %rcx,%rax
140610c9e:	48 83 c0 08          	add    $0x8,%rax
140610ca2:	48 0f 42 c1          	cmovb  %rcx,%rax
140610ca6:	48 8b c8             	mov    %rax,%rcx
140610ca9:	e8 6e a9 80 00       	call   0x140e1b61c
140610cae:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140610cb3:	33 f6                	xor    %esi,%esi
140610cb5:	48 85 c0             	test   %rax,%rax
140610cb8:	74 2c                	je     0x140610ce6
140610cba:	48 89 18             	mov    %rbx,(%rax)
140610cbd:	4c 8d 70 08          	lea    0x8(%rax),%r14
140610cc1:	48 8d 05 c8 9b fa ff 	lea    -0x56438(%rip),%rax        # 0x1405ba890
140610cc8:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140610ccd:	4c 8d 0d 6c 93 fa ff 	lea    -0x56c94(%rip),%r9        # 0x1405ba040
140610cd4:	44 8b c3             	mov    %ebx,%r8d
140610cd7:	ba 70 00 00 00       	mov    $0x70,%edx
140610cdc:	49 8b ce             	mov    %r14,%rcx
140610cdf:	e8 6c ad 80 00       	call   0x140e1ba50
140610ce4:	eb 03                	jmp    0x140610ce9
140610ce6:	4c 8b f6             	mov    %rsi,%r14
140610ce9:	83 7d 50 00          	cmpl   $0x0,0x50(%rbp)
140610ced:	0f 86 24 01 00 00    	jbe    0x140610e17
140610cf3:	0f 1f 40 00          	nopl   0x0(%rax)
140610cf7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140610cfe:	00 00
140610d00:	8b ce                	mov    %esi,%ecx
140610d02:	49 8b 07             	mov    (%r15),%rax
140610d05:	48 8b 3c c8          	mov    (%rax,%rcx,8),%rdi
140610d09:	48 6b d9 70          	imul   $0x70,%rcx,%rbx
140610d0d:	49 03 de             	add    %r14,%rbx
140610d10:	8b 47 08             	mov    0x8(%rdi),%eax
140610d13:	89 43 08             	mov    %eax,0x8(%rbx)
140610d16:	8b 47 0c             	mov    0xc(%rdi),%eax
140610d19:	89 43 0c             	mov    %eax,0xc(%rbx)
140610d1c:	8b 47 10             	mov    0x10(%rdi),%eax
140610d1f:	89 43 10             	mov    %eax,0x10(%rbx)
140610d22:	8b 47 14             	mov    0x14(%rdi),%eax
140610d25:	89 43 14             	mov    %eax,0x14(%rbx)
140610d28:	8b 47 18             	mov    0x18(%rdi),%eax
140610d2b:	89 43 18             	mov    %eax,0x18(%rbx)
140610d2e:	8b 47 1c             	mov    0x1c(%rdi),%eax
140610d31:	89 43 1c             	mov    %eax,0x1c(%rbx)
140610d34:	48 8b 47 20          	mov    0x20(%rdi),%rax
140610d38:	48 89 43 20          	mov    %rax,0x20(%rbx)
140610d3c:	48 8d 57 28          	lea    0x28(%rdi),%rdx
140610d40:	48 8d 4b 28          	lea    0x28(%rbx),%rcx
140610d44:	e8 37 ba c4 ff       	call   0x14025c780
140610d49:	48 8d 57 30          	lea    0x30(%rdi),%rdx
140610d4d:	48 8d 4b 30          	lea    0x30(%rbx),%rcx
140610d51:	e8 2a ba c4 ff       	call   0x14025c780
140610d56:	48 8b 47 38          	mov    0x38(%rdi),%rax
140610d5a:	48 89 43 38          	mov    %rax,0x38(%rbx)
140610d5e:	48 8b 47 40          	mov    0x40(%rdi),%rax
140610d62:	48 89 43 40          	mov    %rax,0x40(%rbx)
140610d66:	48 8b 47 48          	mov    0x48(%rdi),%rax
140610d6a:	48 89 43 48          	mov    %rax,0x48(%rbx)
140610d6e:	48 8b 57 50          	mov    0x50(%rdi),%rdx
140610d72:	48 85 d2             	test   %rdx,%rdx
140610d75:	74 1c                	je     0x140610d93
140610d77:	8b 42 10             	mov    0x10(%rdx),%eax
140610d7a:	ff c0                	inc    %eax
140610d7c:	89 42 10             	mov    %eax,0x10(%rdx)
140610d7f:	83 f8 01             	cmp    $0x1,%eax
140610d82:	0f 8e ab 00 00 00    	jle    0x140610e33
140610d88:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140610d8d:	0f 84 b3 00 00 00    	je     0x140610e46
140610d93:	48 8b 4b 50          	mov    0x50(%rbx),%rcx
140610d97:	48 89 53 50          	mov    %rdx,0x50(%rbx)
140610d9b:	48 85 c9             	test   %rcx,%rcx
140610d9e:	74 24                	je     0x140610dc4
140610da0:	8b 41 10             	mov    0x10(%rcx),%eax
140610da3:	ff c8                	dec    %eax
140610da5:	89 41 10             	mov    %eax,0x10(%rcx)
140610da8:	85 c0                	test   %eax,%eax
140610daa:	7f 18                	jg     0x140610dc4
140610dac:	0f 88 89 00 00 00    	js     0x140610e3b
140610db2:	48 8b 01             	mov    (%rcx),%rax
140610db5:	ba 01 00 00 00       	mov    $0x1,%edx
140610dba:	48 8b 00             	mov    (%rax),%rax
140610dbd:	ff 15 5d 2c 97 00    	call   *0x972c5d(%rip)        # 0x140f83a20
140610dc3:	90                   	nop
140610dc4:	48 8b 47 58          	mov    0x58(%rdi),%rax
140610dc8:	48 89 43 58          	mov    %rax,0x58(%rbx)
140610dcc:	48 8b 47 60          	mov    0x60(%rdi),%rax
140610dd0:	48 89 43 60          	mov    %rax,0x60(%rbx)
140610dd4:	0f b6 47 68          	movzbl 0x68(%rdi),%eax
140610dd8:	88 43 68             	mov    %al,0x68(%rbx)
140610ddb:	48 8b 8f 90 00 00 00 	mov    0x90(%rdi),%rcx
140610de2:	48 85 c9             	test   %rcx,%rcx
140610de5:	74 25                	je     0x140610e0c
140610de7:	48 8b 41 30          	mov    0x30(%rcx),%rax
140610deb:	48 85 c0             	test   %rax,%rax
140610dee:	74 0b                	je     0x140610dfb
140610df0:	48 8b c8             	mov    %rax,%rcx
140610df3:	e8 f8 fc ff ff       	call   0x140610af0
140610df8:	48 8b c8             	mov    %rax,%rcx
140610dfb:	48 8b 01             	mov    (%rcx),%rax
140610dfe:	48 8b 40 10          	mov    0x10(%rax),%rax
140610e02:	ff 15 18 2c 97 00    	call   *0x972c18(%rip)        # 0x140f83a20
140610e08:	48 89 43 60          	mov    %rax,0x60(%rbx)
140610e0c:	ff c6                	inc    %esi
140610e0e:	3b 75 50             	cmp    0x50(%rbp),%esi
140610e11:	0f 82 e9 fe ff ff    	jb     0x140610d00
140610e17:	4c 89 75 48          	mov    %r14,0x48(%rbp)
140610e1b:	48 8b cd             	mov    %rbp,%rcx
140610e1e:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140610e23:	48 83 c4 30          	add    $0x30,%rsp
140610e27:	41 5f                	pop    %r15
140610e29:	41 5e                	pop    %r14
140610e2b:	5f                   	pop    %rdi
140610e2c:	5e                   	pop    %rsi
140610e2d:	5d                   	pop    %rbp
140610e2e:	e9 6d f7 ff ff       	jmp    0x1406105a0
140610e33:	33 c9                	xor    %ecx,%ecx
140610e35:	e8 c6 98 17 00       	call   0x14078a700
140610e3a:	90                   	nop
140610e3b:	b9 02 00 00 00       	mov    $0x2,%ecx
140610e40:	e8 bb 98 17 00       	call   0x14078a700
140610e45:	90                   	nop
140610e46:	b9 01 00 00 00       	mov    $0x1,%ecx
140610e4b:	e8 b0 98 17 00       	call   0x14078a700
140610e50:	cc                   	int3
140610e51:	cc                   	int3
140610e52:	cc                   	int3
140610e53:	cc                   	int3
140610e54:	cc                   	int3
140610e55:	cc                   	int3
140610e56:	cc                   	int3
140610e57:	cc                   	int3
140610e58:	cc                   	int3
140610e59:	cc                   	int3
140610e5a:	cc                   	int3
140610e5b:	cc                   	int3
140610e5c:	cc                   	int3
140610e5d:	cc                   	int3
140610e5e:	cc                   	int3
140610e5f:	cc                   	int3
140610e60:	48 8b ca             	mov    %rdx,%rcx
140610e63:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140610e69:	48 8d 15 b0 78 a0 00 	lea    0xa078b0(%rip),%rdx        # 0x141018720
140610e70:	e9 1b 31 21 00       	jmp    0x140823f90
140610e75:	cc                   	int3
140610e76:	cc                   	int3
140610e77:	cc                   	int3
140610e78:	cc                   	int3
140610e79:	cc                   	int3
140610e7a:	cc                   	int3
140610e7b:	cc                   	int3
140610e7c:	cc                   	int3
140610e7d:	cc                   	int3
140610e7e:	cc                   	int3
140610e7f:	cc                   	int3
140610e80:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140610e85:	57                   	push   %rdi
140610e86:	48 83 ec 20          	sub    $0x20,%rsp
140610e8a:	48 8b da             	mov    %rdx,%rbx
140610e8d:	48 8b f9             	mov    %rcx,%rdi
140610e90:	48 8b cb             	mov    %rbx,%rcx
140610e93:	48 8d 15 76 78 a0 00 	lea    0xa07876(%rip),%rdx        # 0x141018710
140610e9a:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140610ea0:	e8 eb 30 21 00       	call   0x140823f90
140610ea5:	83 3b 01             	cmpl   $0x1,(%rbx)
140610ea8:	74 12                	je     0x140610ebc
140610eaa:	45 33 c0             	xor    %r8d,%r8d
140610ead:	48 8d 15 90 70 9c 00 	lea    0x9c7090(%rip),%rdx        # 0x140fd7f44
140610eb4:	48 8b cb             	mov    %rbx,%rcx
140610eb7:	e8 d4 30 21 00       	call   0x140823f90
140610ebc:	48 8b 57 40          	mov    0x40(%rdi),%rdx
140610ec0:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140610ec6:	48 8b cb             	mov    %rbx,%rcx
140610ec9:	e8 c2 30 21 00       	call   0x140823f90
140610ece:	83 3b 01             	cmpl   $0x1,(%rbx)
140610ed1:	74 12                	je     0x140610ee5
140610ed3:	45 33 c0             	xor    %r8d,%r8d
140610ed6:	48 8d 15 67 70 9c 00 	lea    0x9c7067(%rip),%rdx        # 0x140fd7f44
140610edd:	48 8b cb             	mov    %rbx,%rcx
140610ee0:	e8 ab 30 21 00       	call   0x140823f90
140610ee5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140610eea:	48 83 c4 20          	add    $0x20,%rsp
140610eee:	5f                   	pop    %rdi
140610eef:	c3                   	ret
140610ef0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140610ef5:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140610efa:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140610eff:	55                   	push   %rbp
140610f00:	56                   	push   %rsi
140610f01:	57                   	push   %rdi
140610f02:	41 54                	push   %r12
140610f04:	41 55                	push   %r13
140610f06:	41 56                	push   %r14
140610f08:	41 57                	push   %r15
140610f0a:	48 83 ec 40          	sub    $0x40,%rsp
140610f0e:	49 63 e9             	movslq %r9d,%rbp
140610f11:	4c 8b fa             	mov    %rdx,%r15
140610f14:	4c 8b e9             	mov    %rcx,%r13
140610f17:	33 ff                	xor    %edi,%edi
140610f19:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140610f1d:	b9 40 00 00 00       	mov    $0x40,%ecx
140610f22:	e8 e1 a1 80 00       	call   0x140e1b108
140610f27:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140610f2c:	48 85 c0             	test   %rax,%rax
140610f2f:	74 0f                	je     0x140610f40
140610f31:	ba 0d 00 00 00       	mov    $0xd,%edx
140610f36:	48 8b c8             	mov    %rax,%rcx
140610f39:	e8 c2 07 12 00       	call   0x140731700
140610f3e:	eb 03                	jmp    0x140610f43
140610f40:	48 8b c7             	mov    %rdi,%rax
140610f43:	49 89 07             	mov    %rax,(%r15)
140610f46:	bb 03 00 00 00       	mov    $0x3,%ebx
140610f4b:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140610f4f:	48 63 84 24 a0 00 00 	movslq 0xa0(%rsp),%rax
140610f56:	00
140610f57:	85 c0                	test   %eax,%eax
140610f59:	0f 8e a1 00 00 00    	jle    0x140611000
140610f5f:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140610f64:	4c 8d 34 ad 00 00 00 	lea    0x0(,%rbp,4),%r14
140610f6b:	00
140610f6c:	48 8d 34 ed 00 00 00 	lea    0x0(,%rbp,8),%rsi
140610f73:	00
140610f74:	0f 1f 40 00          	nopl   0x0(%rax)
140610f78:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140610f7f:	00
140610f80:	4d 8b 27             	mov    (%r15),%r12
140610f83:	49 8b 45 18          	mov    0x18(%r13),%rax
140610f87:	48 8b 0c 06          	mov    (%rsi,%rax,1),%rcx
140610f8b:	48 85 c9             	test   %rcx,%rcx
140610f8e:	74 1f                	je     0x140610faf
140610f90:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140610f95:	8b 41 10             	mov    0x10(%rcx),%eax
140610f98:	ff c0                	inc    %eax
140610f9a:	89 41 10             	mov    %eax,0x10(%rcx)
140610f9d:	83 f8 01             	cmp    $0x1,%eax
140610fa0:	0f 8e 80 00 00 00    	jle    0x140611026
140610fa6:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140610fab:	74 6e                	je     0x14061101b
140610fad:	eb 29                	jmp    0x140610fd8
140610faf:	48 63 d5             	movslq %ebp,%rdx
140610fb2:	49 8b 45 20          	mov    0x20(%r13),%rax
140610fb6:	4c 8d 04 d0          	lea    (%rax,%rdx,8),%r8
140610fba:	49 8b 45 08          	mov    0x8(%r13),%rax
140610fbe:	4a 63 14 30          	movslq (%rax,%r14,1),%rdx
140610fc2:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
140610fc9:	00
140610fca:	48 8d 0c d0          	lea    (%rax,%rdx,8),%rcx
140610fce:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140610fd3:	e8 f8 70 10 00       	call   0x1407180d0
140610fd8:	83 cb 04             	or     $0x4,%ebx
140610fdb:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140610fdf:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140610fe4:	49 8b cc             	mov    %r12,%rcx
140610fe7:	e8 d4 34 12 00       	call   0x1407344c0
140610fec:	ff c5                	inc    %ebp
140610fee:	48 ff c7             	inc    %rdi
140610ff1:	48 83 c6 08          	add    $0x8,%rsi
140610ff5:	49 83 c6 04          	add    $0x4,%r14
140610ff9:	48 3b 7c 24 30       	cmp    0x30(%rsp),%rdi
140610ffe:	7c 80                	jl     0x140610f80
140611000:	49 8b c7             	mov    %r15,%rax
140611003:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
14061100a:	00
14061100b:	48 83 c4 40          	add    $0x40,%rsp
14061100f:	41 5f                	pop    %r15
140611011:	41 5e                	pop    %r14
140611013:	41 5d                	pop    %r13
140611015:	41 5c                	pop    %r12
140611017:	5f                   	pop    %rdi
140611018:	5e                   	pop    %rsi
140611019:	5d                   	pop    %rbp
14061101a:	c3                   	ret
14061101b:	b9 01 00 00 00       	mov    $0x1,%ecx
140611020:	e8 db 96 17 00       	call   0x14078a700
140611025:	cc                   	int3
140611026:	33 c9                	xor    %ecx,%ecx
140611028:	e8 d3 96 17 00       	call   0x14078a700
14061102d:	cc                   	int3
14061102e:	cc                   	int3
14061102f:	cc                   	int3
140611030:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140611035:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14061103a:	55                   	push   %rbp
14061103b:	56                   	push   %rsi
14061103c:	57                   	push   %rdi
14061103d:	41 54                	push   %r12
14061103f:	41 55                	push   %r13
140611041:	41 56                	push   %r14
140611043:	41 57                	push   %r15
140611045:	48 83 ec 30          	sub    $0x30,%rsp
140611049:	4d 8b e8             	mov    %r8,%r13
14061104c:	4c 8b fa             	mov    %rdx,%r15
14061104f:	48 8b f1             	mov    %rcx,%rsi
140611052:	33 ff                	xor    %edi,%edi
140611054:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140611058:	b9 40 00 00 00       	mov    $0x40,%ecx
14061105d:	e8 a6 a0 80 00       	call   0x140e1b108
140611062:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140611067:	48 85 c0             	test   %rax,%rax
14061106a:	74 0f                	je     0x14061107b
14061106c:	ba 0d 00 00 00       	mov    $0xd,%edx
140611071:	48 8b c8             	mov    %rax,%rcx
140611074:	e8 87 06 12 00       	call   0x140731700
140611079:	eb 03                	jmp    0x14061107e
14061107b:	48 8b c7             	mov    %rdi,%rax
14061107e:	49 89 07             	mov    %rax,(%r15)
140611081:	bb 03 00 00 00       	mov    $0x3,%ebx
140611086:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
14061108a:	83 3e 00             	cmpl   $0x0,(%rsi)
14061108d:	0f 8e 82 00 00 00    	jle    0x140611115
140611093:	48 8b ef             	mov    %rdi,%rbp
140611096:	4c 8b f7             	mov    %rdi,%r14
140611099:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
1406110a0:	4d 8b 27             	mov    (%r15),%r12
1406110a3:	48 8b 46 18          	mov    0x18(%rsi),%rax
1406110a7:	49 8b 0c 06          	mov    (%r14,%rax,1),%rcx
1406110ab:	48 85 c9             	test   %rcx,%rcx
1406110ae:	74 1b                	je     0x1406110cb
1406110b0:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
1406110b5:	8b 41 10             	mov    0x10(%rcx),%eax
1406110b8:	ff c0                	inc    %eax
1406110ba:	89 41 10             	mov    %eax,0x10(%rcx)
1406110bd:	83 f8 01             	cmp    $0x1,%eax
1406110c0:	7e 79                	jle    0x14061113b
1406110c2:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406110c7:	74 67                	je     0x140611130
1406110c9:	eb 28                	jmp    0x1406110f3
1406110cb:	48 63 d7             	movslq %edi,%rdx
1406110ce:	48 8b 46 20          	mov    0x20(%rsi),%rax
1406110d2:	4c 8d 04 d0          	lea    (%rax,%rdx,8),%r8
1406110d6:	48 8b 46 08          	mov    0x8(%rsi),%rax
1406110da:	48 63 14 28          	movslq (%rax,%rbp,1),%rdx
1406110de:	48 8d 0c d5 00 00 00 	lea    0x0(,%rdx,8),%rcx
1406110e5:	00
1406110e6:	49 03 cd             	add    %r13,%rcx
1406110e9:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1406110ee:	e8 dd 6f 10 00       	call   0x1407180d0
1406110f3:	83 cb 04             	or     $0x4,%ebx
1406110f6:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
1406110fa:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
1406110ff:	49 8b cc             	mov    %r12,%rcx
140611102:	e8 b9 33 12 00       	call   0x1407344c0