140744d63:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140744d67:	48 8b cf             	mov    %rdi,%rcx
140744d6a:	4c 8b c2             	mov    %rdx,%r8
140744d6d:	48 8b 12             	mov    (%rdx),%rdx
140744d70:	48 83 c4 20          	add    $0x20,%rsp
140744d74:	5f                   	pop    %rdi
140744d75:	e9 b6 f2 ff ff       	jmp    0x140744030
140744d7a:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140744d7e:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140744d83:	48 8b 41 08          	mov    0x8(%rcx),%rax
140744d87:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140744d8e:	48 8b 31             	mov    (%rcx),%rsi
140744d91:	48 85 f6             	test   %rsi,%rsi
140744d94:	74 30                	je     0x140744dc6
140744d96:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
140744d9b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140744da0:	48 8b 1e             	mov    (%rsi),%rbx
140744da3:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
140744da7:	e8 94 ef ff ff       	call   0x140743d40
140744dac:	ba 30 00 00 00       	mov    $0x30,%edx
140744db1:	48 8b ce             	mov    %rsi,%rcx
140744db4:	e8 8b 63 6d 00       	call   0x140e1b144
140744db9:	48 8b f3             	mov    %rbx,%rsi
140744dbc:	48 85 db             	test   %rbx,%rbx
140744dbf:	75 df                	jne    0x140744da0
140744dc1:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140744dc6:	48 8b 47 08          	mov    0x8(%rdi),%rax
140744dca:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
140744dcf:	48 89 00             	mov    %rax,(%rax)
140744dd2:	48 8b 47 08          	mov    0x8(%rdi),%rax
140744dd6:	48 89 40 08          	mov    %rax,0x8(%rax)
140744dda:	48 c7 47 10 00 00 00 	movq   $0x0,0x10(%rdi)
140744de1:	00
140744de2:	48 8b 47 08          	mov    0x8(%rdi),%rax
140744de6:	48 8b 57 20          	mov    0x20(%rdi),%rdx
140744dea:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
140744dee:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140744df3:	e8 e8 16 ad ff       	call   0x1402164e0
140744df8:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140744dfd:	48 83 c4 20          	add    $0x20,%rsp
140744e01:	5f                   	pop    %rdi
140744e02:	c3                   	ret
140744e03:	cc                   	int3
140744e04:	cc                   	int3
140744e05:	cc                   	int3
140744e06:	cc                   	int3
140744e07:	cc                   	int3
140744e08:	cc                   	int3
140744e09:	cc                   	int3
140744e0a:	cc                   	int3
140744e0b:	cc                   	int3
140744e0c:	cc                   	int3
140744e0d:	cc                   	int3
140744e0e:	cc                   	int3
140744e0f:	cc                   	int3
140744e10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140744e15:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140744e1a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140744e1f:	57                   	push   %rdi
140744e20:	48 83 ec 20          	sub    $0x20,%rsp
140744e24:	83 3a 00             	cmpl   $0x0,(%rdx)
140744e27:	49 8b e8             	mov    %r8,%rbp
140744e2a:	48 8b da             	mov    %rdx,%rbx
140744e2d:	48 8b f1             	mov    %rcx,%rsi
140744e30:	74 2a                	je     0x140744e5c
140744e32:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140744e36:	48 2b 11             	sub    (%rcx),%rdx
140744e39:	48 8b cb             	mov    %rbx,%rcx
140744e3c:	48 c1 fa 03          	sar    $0x3,%rdx
140744e40:	e8 ab f3 0d 00       	call   0x1408241f0
140744e45:	83 3b 01             	cmpl   $0x1,(%rbx)
140744e48:	74 12                	je     0x140744e5c
140744e4a:	45 33 c0             	xor    %r8d,%r8d
140744e4d:	48 8d 15 f0 30 89 00 	lea    0x8930f0(%rip),%rdx        # 0x140fd7f44
140744e54:	48 8b cb             	mov    %rbx,%rcx
140744e57:	e8 34 f1 0d 00       	call   0x140823f90
140744e5c:	48 8b 46 08          	mov    0x8(%rsi),%rax
140744e60:	48 8b fd             	mov    %rbp,%rdi
140744e63:	48 2b 06             	sub    (%rsi),%rax
140744e66:	48 c1 f8 03          	sar    $0x3,%rax
140744e6a:	48 3b e8             	cmp    %rax,%rbp
140744e6d:	73 55                	jae    0x140744ec4
140744e6f:	90                   	nop
140744e70:	48 3b fd             	cmp    %rbp,%rdi
140744e73:	76 20                	jbe    0x140744e95
140744e75:	83 3b 00             	cmpl   $0x0,(%rbx)
140744e78:	75 1b                	jne    0x140744e95
140744e7a:	83 7b 04 01          	cmpl   $0x1,0x4(%rbx)
140744e7e:	74 15                	je     0x140744e95
140744e80:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140744e86:	48 8d 15 df bc 89 00 	lea    0x89bcdf(%rip),%rdx        # 0x140fe0b6c
140744e8d:	48 8b cb             	mov    %rbx,%rcx
140744e90:	e8 fb f0 0d 00       	call   0x140823f90
140744e95:	48 8b 06             	mov    (%rsi),%rax
140744e98:	48 8b 0c f8          	mov    (%rax,%rdi,8),%rcx
140744e9c:	48 85 c9             	test   %rcx,%rcx
140744e9f:	74 10                	je     0x140744eb1
140744ea1:	48 8b 01             	mov    (%rcx),%rax
140744ea4:	48 8b d3             	mov    %rbx,%rdx
140744ea7:	48 8b 40 08          	mov    0x8(%rax),%rax
140744eab:	ff 15 6f eb 83 00    	call   *0x83eb6f(%rip)        # 0x140f83a20
140744eb1:	48 8b 46 08          	mov    0x8(%rsi),%rax
140744eb5:	48 ff c7             	inc    %rdi
140744eb8:	48 2b 06             	sub    (%rsi),%rax
140744ebb:	48 c1 f8 03          	sar    $0x3,%rax
140744ebf:	48 3b f8             	cmp    %rax,%rdi
140744ec2:	72 ac                	jb     0x140744e70
140744ec4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140744ec9:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140744ece:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140744ed3:	48 83 c4 20          	add    $0x20,%rsp
140744ed7:	5f                   	pop    %rdi
140744ed8:	c3                   	ret
140744ed9:	cc                   	int3
140744eda:	cc                   	int3
140744edb:	cc                   	int3
140744edc:	cc                   	int3
140744edd:	cc                   	int3
140744ede:	cc                   	int3
140744edf:	cc                   	int3
140744ee0:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140744ee4:	75 03                	jne    0x140744ee9
140744ee6:	32 c0                	xor    %al,%al
140744ee8:	c3                   	ret
140744ee9:	80 7a 08 00          	cmpb   $0x0,0x8(%rdx)
140744eed:	75 03                	jne    0x140744ef2
140744eef:	b0 01                	mov    $0x1,%al
140744ef1:	c3                   	ret
140744ef2:	f2 0f 10 02          	movsd  (%rdx),%xmm0
140744ef6:	66 0f 2f 01          	comisd (%rcx),%xmm0
140744efa:	0f 97 c0             	seta   %al
140744efd:	c3                   	ret
140744efe:	cc                   	int3
140744eff:	cc                   	int3
140744f00:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140744f05:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140744f0a:	55                   	push   %rbp
140744f0b:	57                   	push   %rdi
140744f0c:	41 54                	push   %r12
140744f0e:	41 56                	push   %r14
140744f10:	41 57                	push   %r15
140744f12:	48 8b ec             	mov    %rsp,%rbp
140744f15:	48 83 ec 60          	sub    $0x60,%rsp
140744f19:	4d 8b f0             	mov    %r8,%r14
140744f1c:	48 8b f2             	mov    %rdx,%rsi
140744f1f:	48 8b d9             	mov    %rcx,%rbx
140744f22:	48 8b 01             	mov    (%rcx),%rax
140744f25:	48 85 c0             	test   %rax,%rax
140744f28:	0f 84 09 04 00 00    	je     0x140745337
140744f2e:	8b 40 18             	mov    0x18(%rax),%eax
140744f31:	83 c0 f2             	add    $0xfffffff2,%eax
140744f34:	83 f8 07             	cmp    $0x7,%eax
140744f37:	0f 87 fa 03 00 00    	ja     0x140745337
140744f3d:	4c 8d 3d bc b0 8b ff 	lea    -0x744f44(%rip),%r15        # 0x140000000
140744f44:	33 ff                	xor    %edi,%edi
140744f46:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140744f4d:	00 00 00
140744f50:	48 98                	cltq
140744f52:	41 8b 8c 87 84 53 74 	mov    0x745384(%r15,%rax,4),%ecx
140744f59:	00
140744f5a:	49 03 cf             	add    %r15,%rcx
140744f5d:	ff e1                	jmp    *%rcx
140744f5f:	48 8b 0b             	mov    (%rbx),%rcx
140744f62:	e8 89 56 00 00       	call   0x14074a5f0
140744f67:	48 8d 50 40          	lea    0x40(%rax),%rdx
140744f6b:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140744f6f:	e8 5c ae a5 ff       	call   0x14019fdd0
140744f74:	48 8b 08             	mov    (%rax),%rcx
140744f77:	48 89 38             	mov    %rdi,(%rax)
140744f7a:	48 89 4d 30          	mov    %rcx,0x30(%rbp)
140744f7e:	48 8b 08             	mov    (%rax),%rcx
140744f81:	48 85 c9             	test   %rcx,%rcx
140744f84:	74 24                	je     0x140744faa
140744f86:	8b 41 10             	mov    0x10(%rcx),%eax
140744f89:	ff c8                	dec    %eax
140744f8b:	89 41 10             	mov    %eax,0x10(%rcx)
140744f8e:	85 c0                	test   %eax,%eax
140744f90:	7f 18                	jg     0x140744faa
140744f92:	0f 88 be 03 00 00    	js     0x140745356
140744f98:	48 8b 01             	mov    (%rcx),%rax
140744f9b:	ba 01 00 00 00       	mov    $0x1,%edx
140744fa0:	48 8b 00             	mov    (%rax),%rax
140744fa3:	ff 15 77 ea 83 00    	call   *0x83ea77(%rip)        # 0x140f83a20
140744fa9:	90                   	nop
140744faa:	4d 8b c6             	mov    %r14,%r8
140744fad:	48 8b d6             	mov    %rsi,%rdx
140744fb0:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140744fb4:	e8 47 ff ff ff       	call   0x140744f00
140744fb9:	90                   	nop
140744fba:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140744fbe:	48 85 c9             	test   %rcx,%rcx
140744fc1:	74 24                	je     0x140744fe7
140744fc3:	8b 41 10             	mov    0x10(%rcx),%eax
140744fc6:	ff c8                	dec    %eax
140744fc8:	89 41 10             	mov    %eax,0x10(%rcx)
140744fcb:	85 c0                	test   %eax,%eax
140744fcd:	7f 18                	jg     0x140744fe7
140744fcf:	0f 88 8c 03 00 00    	js     0x140745361
140744fd5:	48 8b 01             	mov    (%rcx),%rax
140744fd8:	ba 01 00 00 00       	mov    $0x1,%edx
140744fdd:	48 8b 00             	mov    (%rax),%rax
140744fe0:	ff 15 3a ea 83 00    	call   *0x83ea3a(%rip)        # 0x140f83a20
140744fe6:	90                   	nop
140744fe7:	48 8b 0b             	mov    (%rbx),%rcx
140744fea:	e8 01 56 00 00       	call   0x14074a5f0
140744fef:	48 8b d0             	mov    %rax,%rdx
140744ff2:	48 8b 08             	mov    (%rax),%rcx
140744ff5:	48 8b 41 40          	mov    0x40(%rcx),%rax
140744ff9:	48 8b ca             	mov    %rdx,%rcx
140744ffc:	ff 15 1e ea 83 00    	call   *0x83ea1e(%rip)        # 0x140f83a20
140745002:	48 8b d8             	mov    %rax,%rbx
140745005:	e9 b7 00 00 00       	jmp    0x1407450c1
14074500a:	48 8b 0b             	mov    (%rbx),%rcx
14074500d:	e8 8e 54 00 00       	call   0x14074a4a0
140745012:	48 8d 50 40          	lea    0x40(%rax),%rdx
140745016:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
14074501a:	e8 b1 ad a5 ff       	call   0x14019fdd0
14074501f:	48 8b 08             	mov    (%rax),%rcx
140745022:	48 89 38             	mov    %rdi,(%rax)
140745025:	48 89 4d 48          	mov    %rcx,0x48(%rbp)
140745029:	48 8b 08             	mov    (%rax),%rcx
14074502c:	48 85 c9             	test   %rcx,%rcx
14074502f:	74 24                	je     0x140745055
140745031:	8b 41 10             	mov    0x10(%rcx),%eax
140745034:	ff c8                	dec    %eax
140745036:	89 41 10             	mov    %eax,0x10(%rcx)
140745039:	85 c0                	test   %eax,%eax
14074503b:	7f 18                	jg     0x140745055
14074503d:	0f 88 29 03 00 00    	js     0x14074536c
140745043:	48 8b 01             	mov    (%rcx),%rax
140745046:	ba 01 00 00 00       	mov    $0x1,%edx
14074504b:	48 8b 00             	mov    (%rax),%rax
14074504e:	ff 15 cc e9 83 00    	call   *0x83e9cc(%rip)        # 0x140f83a20
140745054:	90                   	nop
140745055:	4d 8b c6             	mov    %r14,%r8
140745058:	48 8b d6             	mov    %rsi,%rdx
14074505b:	48 8d 4d 48          	lea    0x48(%rbp),%rcx
14074505f:	e8 9c fe ff ff       	call   0x140744f00
140745064:	90                   	nop
140745065:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
140745069:	48 85 c9             	test   %rcx,%rcx
14074506c:	74 24                	je     0x140745092
14074506e:	8b 41 10             	mov    0x10(%rcx),%eax
140745071:	ff c8                	dec    %eax
140745073:	89 41 10             	mov    %eax,0x10(%rcx)
140745076:	85 c0                	test   %eax,%eax
140745078:	7f 18                	jg     0x140745092
14074507a:	0f 88 f7 02 00 00    	js     0x140745377
140745080:	48 8b 01             	mov    (%rcx),%rax
140745083:	ba 01 00 00 00       	mov    $0x1,%edx
140745088:	48 8b 00             	mov    (%rax),%rax
14074508b:	ff 15 8f e9 83 00    	call   *0x83e98f(%rip)        # 0x140f83a20
140745091:	90                   	nop
140745092:	48 8b 0b             	mov    (%rbx),%rcx
140745095:	e8 06 54 00 00       	call   0x14074a4a0
14074509a:	48 8d 58 50          	lea    0x50(%rax),%rbx
14074509e:	eb 21                	jmp    0x1407450c1
1407450a0:	48 8b 0b             	mov    (%rbx),%rcx
1407450a3:	e8 38 56 00 00       	call   0x14074a6e0
1407450a8:	48 8b c8             	mov    %rax,%rcx
1407450ab:	e8 f0 ad 00 00       	call   0x14074fea0
1407450b0:	48 8b d8             	mov    %rax,%rbx
1407450b3:	eb 0c                	jmp    0x1407450c1
1407450b5:	48 8b 0b             	mov    (%rbx),%rcx
1407450b8:	e8 d3 55 00 00       	call   0x14074a690
1407450bd:	48 8d 58 40          	lea    0x40(%rax),%rbx
1407450c1:	48 8b 03             	mov    (%rbx),%rax
1407450c4:	48 85 c0             	test   %rax,%rax
1407450c7:	0f 84 6a 02 00 00    	je     0x140745337
1407450cd:	8b 40 18             	mov    0x18(%rax),%eax
1407450d0:	83 c0 f2             	add    $0xfffffff2,%eax
1407450d3:	83 f8 07             	cmp    $0x7,%eax
1407450d6:	0f 86 74 fe ff ff    	jbe    0x140744f50
1407450dc:	e9 56 02 00 00       	jmp    0x140745337
1407450e1:	48 8b 0b             	mov    (%rbx),%rcx
1407450e4:	e8 57 54 00 00       	call   0x14074a540
1407450e9:	48 8b d8             	mov    %rax,%rbx
1407450ec:	4d 8b 3e             	mov    (%r14),%r15
1407450ef:	49 8b 4f 08          	mov    0x8(%r15),%rcx
1407450f3:	49 8b d7             	mov    %r15,%rdx
1407450f6:	44 0f b6 41 19       	movzbl 0x19(%rcx),%r8d
1407450fb:	45 84 c0             	test   %r8b,%r8b
1407450fe:	75 1b                	jne    0x14074511b
140745100:	48 8b c1             	mov    %rcx,%rax
140745103:	48 39 58 20          	cmp    %rbx,0x20(%rax)
140745107:	73 06                	jae    0x14074510f
140745109:	48 8b 40 10          	mov    0x10(%rax),%rax
14074510d:	eb 06                	jmp    0x140745115
14074510f:	48 8b d0             	mov    %rax,%rdx
140745112:	48 8b 00             	mov    (%rax),%rax
140745115:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140745119:	74 e8                	je     0x140745103
14074511b:	80 7a 19 00          	cmpb   $0x0,0x19(%rdx)
14074511f:	75 0a                	jne    0x14074512b
140745121:	48 3b 5a 20          	cmp    0x20(%rdx),%rbx
140745125:	0f 83 0c 02 00 00    	jae    0x140745337
14074512b:	48 89 4d e0          	mov    %rcx,-0x20(%rbp)
14074512f:	89 7d e8             	mov    %edi,-0x18(%rbp)
140745132:	49 8b c7             	mov    %r15,%rax
140745135:	45 84 c0             	test   %r8b,%r8b
140745138:	75 2c                	jne    0x140745166
14074513a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140745140:	48 89 4d e0          	mov    %rcx,-0x20(%rbp)
140745144:	48 39 59 20          	cmp    %rbx,0x20(%rcx)
140745148:	73 09                	jae    0x140745153
14074514a:	89 7d e8             	mov    %edi,-0x18(%rbp)
14074514d:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140745151:	eb 0d                	jmp    0x140745160
140745153:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%rbp)
14074515a:	48 8b c1             	mov    %rcx,%rax
14074515d:	48 8b 09             	mov    (%rcx),%rcx
140745160:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
140745164:	74 da                	je     0x140745140
140745166:	49 bc 66 66 66 66 66 	movabs $0x666666666666666,%r12
14074516d:	66 66 06
140745170:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140745174:	75 06                	jne    0x14074517c
140745176:	48 3b 58 20          	cmp    0x20(%rax),%rbx
14074517a:	73 49                	jae    0x1407451c5
14074517c:	4d 39 66 08          	cmp    %r12,0x8(%r14)
140745180:	0f 84 ca 01 00 00    	je     0x140745350
140745186:	4c 89 75 d0          	mov    %r14,-0x30(%rbp)
14074518a:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
14074518e:	b9 28 00 00 00       	mov    $0x28,%ecx
140745193:	e8 70 5f 6d 00       	call   0x140e1b108
140745198:	90                   	nop
140745199:	48 89 58 20          	mov    %rbx,0x20(%rax)
14074519d:	4c 89 38             	mov    %r15,(%rax)
1407451a0:	4c 89 78 08          	mov    %r15,0x8(%rax)
1407451a4:	4c 89 78 10          	mov    %r15,0x10(%rax)
1407451a8:	66 c7 40 18 00 00    	movw   $0x0,0x18(%rax)
1407451ae:	0f 10 45 e0          	movups -0x20(%rbp),%xmm0
1407451b2:	0f 29 45 d0          	movaps %xmm0,-0x30(%rbp)
1407451b6:	4c 8b c0             	mov    %rax,%r8
1407451b9:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
1407451bd:	49 8b ce             	mov    %r14,%rcx
1407451c0:	e8 cb 28 aa ff       	call   0x1401e7a90
1407451c5:	4c 8b 3e             	mov    (%rsi),%r15
1407451c8:	49 8b 47 08          	mov    0x8(%r15),%rax
1407451cc:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
1407451d0:	89 7d e8             	mov    %edi,-0x18(%rbp)
1407451d3:	49 8b cf             	mov    %r15,%rcx
1407451d6:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1407451da:	75 2a                	jne    0x140745206
1407451dc:	0f 1f 40 00          	nopl   0x0(%rax)
1407451e0:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
1407451e4:	48 39 58 20          	cmp    %rbx,0x20(%rax)
1407451e8:	73 09                	jae    0x1407451f3
1407451ea:	89 7d e8             	mov    %edi,-0x18(%rbp)
1407451ed:	48 8b 40 10          	mov    0x10(%rax),%rax