140017c73:	90                   	nop
140017c74:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140017c79:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140017c7e:	56                   	push   %rsi
140017c7f:	57                   	push   %rdi
140017c80:	41 54                	push   %r12
140017c82:	41 56                	push   %r14
140017c84:	41 57                	push   %r15
140017c86:	48 83 ec 30          	sub    $0x30,%rsp
140017c8a:	4d 8b f8             	mov    %r8,%r15
140017c8d:	48 8b da             	mov    %rdx,%rbx
140017c90:	48 8b f1             	mov    %rcx,%rsi
140017c93:	4c 8b f2             	mov    %rdx,%r14
140017c96:	4c 2b 31             	sub    (%rcx),%r14
140017c99:	49 c1 fe 03          	sar    $0x3,%r14
140017c9d:	48 8b 41 08          	mov    0x8(%rcx),%rax
140017ca1:	48 2b 01             	sub    (%rcx),%rax
140017ca4:	48 c1 f8 03          	sar    $0x3,%rax
140017ca8:	49 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%r8
140017caf:	ff ff 1f
140017cb2:	49 3b c0             	cmp    %r8,%rax
140017cb5:	0f 84 2f 01 00 00    	je     0x140017dea
140017cbb:	4c 8d 60 01          	lea    0x1(%rax),%r12
140017cbf:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140017cc3:	48 2b 0e             	sub    (%rsi),%rcx
140017cc6:	48 c1 f9 03          	sar    $0x3,%rcx
140017cca:	48 8b d1             	mov    %rcx,%rdx
140017ccd:	48 d1 ea             	shr    $1,%rdx
140017cd0:	49 8b c0             	mov    %r8,%rax
140017cd3:	48 2b c2             	sub    %rdx,%rax
140017cd6:	48 3b c8             	cmp    %rax,%rcx
140017cd9:	76 05                	jbe    0x140017ce0
140017cdb:	49 8b f8             	mov    %r8,%rdi
140017cde:	eb 0b                	jmp    0x140017ceb
140017ce0:	48 8d 3c 0a          	lea    (%rdx,%rcx,1),%rdi
140017ce4:	49 3b fc             	cmp    %r12,%rdi
140017ce7:	49 0f 42 fc          	cmovb  %r12,%rdi
140017ceb:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140017cf0:	49 3b f8             	cmp    %r8,%rdi
140017cf3:	0f 87 f7 00 00 00    	ja     0x140017df0
140017cf9:	48 8d 0c fd 00 00 00 	lea    0x0(,%rdi,8),%rcx
140017d00:	00
140017d01:	48 85 c9             	test   %rcx,%rcx
140017d04:	75 3c                	jne    0x140017d42
140017d06:	33 d2                	xor    %edx,%edx
140017d08:	48 89 54 24 68       	mov    %rdx,0x68(%rsp)
140017d0d:	4e 8d 04 f5 00 00 00 	lea    0x0(,%r14,8),%r8
140017d14:	00
140017d15:	4d 8d 34 10          	lea    (%r8,%rdx,1),%r14
140017d19:	49 8d 46 08          	lea    0x8(%r14),%rax
140017d1d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140017d22:	49 8b 07             	mov    (%r15),%rax
140017d25:	49 83 27 00          	andq   $0x0,(%r15)
140017d29:	49 89 06             	mov    %rax,(%r14)
140017d2c:	4c 89 74 24 78       	mov    %r14,0x78(%rsp)
140017d31:	4c 8b 4e 08          	mov    0x8(%rsi),%r9
140017d35:	48 8b 0e             	mov    (%rsi),%rcx
140017d38:	49 3b d9             	cmp    %r9,%rbx
140017d3b:	75 45                	jne    0x140017d82
140017d3d:	4c 8b c2             	mov    %rdx,%r8
140017d40:	eb 39                	jmp    0x140017d7b
140017d42:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140017d49:	72 0a                	jb     0x140017d55
140017d4b:	e8 bc 14 ff ff       	call   0x14000920c
140017d50:	48 8b d0             	mov    %rax,%rdx
140017d53:	eb b3                	jmp    0x140017d08
140017d55:	ff 15 b5 c7 01 00    	call   *0x1c7b5(%rip)        # 0x140034510
140017d5b:	48 8b d0             	mov    %rax,%rdx
140017d5e:	48 85 c0             	test   %rax,%rax
140017d61:	0f 84 8f 00 00 00    	je     0x140017df6
140017d67:	eb 9f                	jmp    0x140017d08
140017d69:	48 8b 01             	mov    (%rcx),%rax
140017d6c:	48 83 21 00          	andq   $0x0,(%rcx)
140017d70:	49 89 00             	mov    %rax,(%r8)
140017d73:	4d 8d 40 08          	lea    0x8(%r8),%r8
140017d77:	48 83 c1 08          	add    $0x8,%rcx
140017d7b:	49 3b c9             	cmp    %r9,%rcx
140017d7e:	75 e9                	jne    0x140017d69
140017d80:	eb 45                	jmp    0x140017dc7
140017d82:	4c 8b ca             	mov    %rdx,%r9
140017d85:	eb 12                	jmp    0x140017d99
140017d87:	48 8b 01             	mov    (%rcx),%rax
140017d8a:	48 83 21 00          	andq   $0x0,(%rcx)
140017d8e:	49 89 01             	mov    %rax,(%r9)
140017d91:	4d 8d 49 08          	lea    0x8(%r9),%r9
140017d95:	48 83 c1 08          	add    $0x8,%rcx
140017d99:	48 3b cb             	cmp    %rbx,%rcx
140017d9c:	75 e9                	jne    0x140017d87
140017d9e:	48 89 54 24 78       	mov    %rdx,0x78(%rsp)
140017da3:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140017da7:	48 3b d9             	cmp    %rcx,%rbx
140017daa:	74 1b                	je     0x140017dc7
140017dac:	4c 2b c3             	sub    %rbx,%r8
140017daf:	4c 03 c2             	add    %rdx,%r8
140017db2:	48 8b 03             	mov    (%rbx),%rax
140017db5:	48 83 23 00          	andq   $0x0,(%rbx)
140017db9:	49 89 44 18 08       	mov    %rax,0x8(%r8,%rbx,1)
140017dbe:	48 83 c3 08          	add    $0x8,%rbx
140017dc2:	48 3b d9             	cmp    %rcx,%rbx
140017dc5:	75 eb                	jne    0x140017db2
140017dc7:	4c 8b cf             	mov    %rdi,%r9
140017dca:	4d 8b c4             	mov    %r12,%r8
140017dcd:	48 8b ce             	mov    %rsi,%rcx
140017dd0:	e8 67 0c 00 00       	call   0x140018a3c
140017dd5:	49 8b c6             	mov    %r14,%rax
140017dd8:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140017ddd:	48 83 c4 30          	add    $0x30,%rsp
140017de1:	41 5f                	pop    %r15
140017de3:	41 5e                	pop    %r14
140017de5:	41 5c                	pop    %r12
140017de7:	5f                   	pop    %rdi
140017de8:	5e                   	pop    %rsi
140017de9:	c3                   	ret
140017dea:	e8 a1 f6 ff ff       	call   0x140017490
140017def:	cc                   	int3
140017df0:	e8 5b 1a ff ff       	call   0x140009850
140017df5:	cc                   	int3
140017df6:	e8 f8 9c 01 00       	call   0x140031af3
140017dfb:	cc                   	int3
140017dfc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140017e01:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140017e06:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140017e0b:	57                   	push   %rdi
140017e0c:	48 83 ec 20          	sub    $0x20,%rsp
140017e10:	48 8b 41 30          	mov    0x30(%rcx),%rax
140017e14:	49 8b f0             	mov    %r8,%rsi
140017e17:	4c 8b 41 18          	mov    0x18(%rcx),%r8
140017e1b:	49 23 c1             	and    %r9,%rax
140017e1e:	48 03 c0             	add    %rax,%rax
140017e21:	48 8b da             	mov    %rdx,%rbx
140017e24:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140017e28:	49 8b 7c c0 08       	mov    0x8(%r8,%rax,8),%rdi
140017e2d:	48 3b fa             	cmp    %rdx,%rdi
140017e30:	75 05                	jne    0x140017e37
140017e32:	48 89 13             	mov    %rdx,(%rbx)
140017e35:	eb 4f                	jmp    0x140017e86
140017e37:	49 8b 2c c0          	mov    (%r8,%rax,8),%rbp
140017e3b:	48 8d 57 10          	lea    0x10(%rdi),%rdx
140017e3f:	48 83 7a 18 07       	cmpq   $0x7,0x18(%rdx)
140017e44:	48 8b 42 10          	mov    0x10(%rdx),%rax
140017e48:	76 03                	jbe    0x140017e4d
140017e4a:	48 8b 12             	mov    (%rdx),%rdx
140017e4d:	48 83 7e 18 07       	cmpq   $0x7,0x18(%rsi)
140017e52:	48 8b ce             	mov    %rsi,%rcx
140017e55:	4c 8b 46 10          	mov    0x10(%rsi),%r8
140017e59:	76 03                	jbe    0x140017e5e
140017e5b:	48 8b 0e             	mov    (%rsi),%rcx
140017e5e:	4c 3b c0             	cmp    %rax,%r8
140017e61:	75 09                	jne    0x140017e6c
140017e63:	e8 24 77 ff ff       	call   0x14000f58c
140017e68:	85 c0                	test   %eax,%eax
140017e6a:	74 0b                	je     0x140017e77
140017e6c:	48 3b fd             	cmp    %rbp,%rdi
140017e6f:	74 12                	je     0x140017e83
140017e71:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
140017e75:	eb c4                	jmp    0x140017e3b
140017e77:	48 8b 07             	mov    (%rdi),%rax
140017e7a:	48 89 03             	mov    %rax,(%rbx)
140017e7d:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140017e81:	eb 08                	jmp    0x140017e8b
140017e83:	48 89 3b             	mov    %rdi,(%rbx)
140017e86:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
140017e8b:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140017e90:	48 8b c3             	mov    %rbx,%rax
140017e93:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140017e98:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140017e9d:	48 83 c4 20          	add    $0x20,%rsp
140017ea1:	5f                   	pop    %rdi
140017ea2:	c3                   	ret
140017ea3:	90                   	nop
140017ea4:	48 8b c4             	mov    %rsp,%rax
140017ea7:	48 89 58 08          	mov    %rbx,0x8(%rax)
140017eab:	48 89 68 10          	mov    %rbp,0x10(%rax)
140017eaf:	48 89 70 18          	mov    %rsi,0x18(%rax)
140017eb3:	48 89 78 20          	mov    %rdi,0x20(%rax)
140017eb7:	41 56                	push   %r14
140017eb9:	48 83 ec 40          	sub    $0x40,%rsp
140017ebd:	49 8b f0             	mov    %r8,%rsi
140017ec0:	48 8b da             	mov    %rdx,%rbx
140017ec3:	48 8b f9             	mov    %rcx,%rdi
140017ec6:	49 8b c8             	mov    %r8,%rcx
140017ec9:	49 83 78 18 07       	cmpq   $0x7,0x18(%r8)
140017ece:	76 03                	jbe    0x140017ed3
140017ed0:	49 8b 08             	mov    (%r8),%rcx
140017ed3:	49 8b 50 10          	mov    0x10(%r8),%rdx
140017ed7:	e8 54 cb ff ff       	call   0x140014a30
140017edc:	48 8b e8             	mov    %rax,%rbp
140017edf:	4c 8b c8             	mov    %rax,%r9
140017ee2:	4c 8b c6             	mov    %rsi,%r8
140017ee5:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140017eea:	48 8b cf             	mov    %rdi,%rcx
140017eed:	e8 0a ff ff ff       	call   0x140017dfc
140017ef2:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140017ef7:	48 85 c9             	test   %rcx,%rcx
140017efa:	74 0c                	je     0x140017f08
140017efc:	48 89 0b             	mov    %rcx,(%rbx)
140017eff:	c6 43 08 00          	movb   $0x0,0x8(%rbx)
140017f03:	e9 3e 01 00 00       	jmp    0x140018046
140017f08:	48 b8 92 24 49 92 24 	movabs $0x492492492492492,%rax
140017f0f:	49 92 04
140017f12:	48 39 47 10          	cmp    %rax,0x10(%rdi)
140017f16:	0f 84 48 01 00 00    	je     0x140018064
140017f1c:	4c 8b c6             	mov    %rsi,%r8
140017f1f:	48 8d 57 08          	lea    0x8(%rdi),%rdx
140017f23:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140017f28:	e8 b3 f5 ff ff       	call   0x1400174e0
140017f2d:	48 8b 57 10          	mov    0x10(%rdi),%rdx
140017f31:	48 83 c2 01          	add    $0x1,%rdx
140017f35:	0f 57 c0             	xorps  %xmm0,%xmm0
140017f38:	78 07                	js     0x140017f41
140017f3a:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
140017f3f:	eb 18                	jmp    0x140017f59
140017f41:	48 8b ca             	mov    %rdx,%rcx
140017f44:	48 d1 e9             	shr    $1,%rcx
140017f47:	48 8b c2             	mov    %rdx,%rax
140017f4a:	83 e0 01             	and    $0x1,%eax
140017f4d:	48 0b c8             	or     %rax,%rcx
140017f50:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140017f55:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140017f59:	48 8b 4f 38          	mov    0x38(%rdi),%rcx
140017f5d:	0f 57 c9             	xorps  %xmm1,%xmm1
140017f60:	48 85 c9             	test   %rcx,%rcx
140017f63:	78 07                	js     0x140017f6c
140017f65:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
140017f6a:	eb 15                	jmp    0x140017f81
140017f6c:	48 8b c1             	mov    %rcx,%rax
140017f6f:	48 d1 e8             	shr    $1,%rax
140017f72:	83 e1 01             	and    $0x1,%ecx
140017f75:	48 0b c1             	or     %rcx,%rax
140017f78:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
140017f7d:	f3 0f 58 c9          	addss  %xmm1,%xmm1
140017f81:	f3 0f 5e c1          	divss  %xmm1,%xmm0
140017f85:	0f 2f 07             	comiss (%rdi),%xmm0
140017f88:	76 35                	jbe    0x140017fbf
140017f8a:	48 8b cf             	mov    %rdi,%rcx
140017f8d:	e8 22 ba ff ff       	call   0x1400139b4
140017f92:	48 8b d0             	mov    %rax,%rdx
140017f95:	48 8b cf             	mov    %rdi,%rcx
140017f98:	e8 73 0c 00 00       	call   0x140018c10
140017f9d:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
140017fa2:	49 83 c0 10          	add    $0x10,%r8
140017fa6:	4c 8b cd             	mov    %rbp,%r9
140017fa9:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140017fae:	48 8b cf             	mov    %rdi,%rcx
140017fb1:	e8 46 fe ff ff       	call   0x140017dfc
140017fb6:	0f 10 00             	movups (%rax),%xmm0
140017fb9:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
140017fbf:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140017fc4:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
140017fca:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
140017fcf:	4d 8b 48 08          	mov    0x8(%r8),%r9
140017fd3:	48 ff 47 10          	incq   0x10(%rdi)
140017fd7:	4c 89 01             	mov    %r8,(%rcx)
140017fda:	4c 89 49 08          	mov    %r9,0x8(%rcx)
140017fde:	49 89 09             	mov    %rcx,(%r9)
140017fe1:	49 89 48 08          	mov    %rcx,0x8(%r8)
140017fe5:	48 8b 57 18          	mov    0x18(%rdi),%rdx
140017fe9:	48 8b 47 30          	mov    0x30(%rdi),%rax
140017fed:	48 23 c5             	and    %rbp,%rax
140017ff0:	48 03 c0             	add    %rax,%rax
140017ff3:	4c 8b 14 c2          	mov    (%rdx,%rax,8),%r10
140017ff7:	4c 3b 57 08          	cmp    0x8(%rdi),%r10
140017ffb:	75 06                	jne    0x140018003
140017ffd:	48 89 0c c2          	mov    %rcx,(%rdx,%rax,8)
140018001:	eb 12                	jmp    0x140018015
140018003:	4d 3b d0             	cmp    %r8,%r10
140018006:	75 06                	jne    0x14001800e
140018008:	48 89 0c c2          	mov    %rcx,(%rdx,%rax,8)
14001800c:	eb 0c                	jmp    0x14001801a
14001800e:	4c 39 4c c2 08       	cmp    %r9,0x8(%rdx,%rax,8)
140018013:	75 05                	jne    0x14001801a
140018015:	48 89 4c c2 08       	mov    %rcx,0x8(%rdx,%rax,8)
14001801a:	48 89 0b             	mov    %rcx,(%rbx)
14001801d:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140018021:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140018026:	48 85 c9             	test   %rcx,%rcx
140018029:	74 1b                	je     0x140018046
14001802b:	48 83 c1 10          	add    $0x10,%rcx
14001802f:	33 d2                	xor    %edx,%edx
140018031:	e8 16 05 00 00       	call   0x14001854c
140018036:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
14001803b:	48 85 c9             	test   %rcx,%rcx
14001803e:	74 06                	je     0x140018046
140018040:	ff 15 c2 c4 01 00    	call   *0x1c4c2(%rip)        # 0x140034508
140018046:	48 8b c3             	mov    %rbx,%rax
140018049:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14001804e:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140018053:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140018058:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
14001805d:	48 83 c4 40          	add    $0x40,%rsp
140018061:	41 5e                	pop    %r14
140018063:	c3                   	ret
140018064:	48 8d 0d 8d 0e 02 00 	lea    0x20e8d(%rip),%rcx        # 0x140038ef8
14001806b:	e8 7d 9a 01 00       	call   0x140031aed
140018070:	cc                   	int3
140018071:	90                   	nop
140018072:	90                   	nop
140018073:	90                   	nop
140018074:	48 89 7c 24 08       	mov    %rdi,0x8(%rsp)
140018079:	4c 8b d2             	mov    %rdx,%r10
14001807c:	33 c0                	xor    %eax,%eax
14001807e:	48 2b d1             	sub    %rcx,%rdx
140018081:	4c 8b c9             	mov    %rcx,%r9
140018084:	48 83 c2 07          	add    $0x7,%rdx
140018088:	48 c1 ea 03          	shr    $0x3,%rdx
14001808c:	49 3b ca             	cmp    %r10,%rcx
14001808f:	48 0f 47 d0          	cmova  %rax,%rdx
140018093:	48 85 d2             	test   %rdx,%rdx
140018096:	74 3f                	je     0x1400180d7
140018098:	48 83 fa 02          	cmp    $0x2,%rdx
14001809c:	72 39                	jb     0x1400180d7
14001809e:	49 8b 00             	mov    (%r8),%rax
1400180a1:	48 83 c1 f8          	add    $0xfffffffffffffff8,%rcx
1400180a5:	48 8d 0c d1          	lea    (%rcx,%rdx,8),%rcx
1400180a9:	4d 3b c8             	cmp    %r8,%r9
1400180ac:	77 05                	ja     0x1400180b3
1400180ae:	49 3b c8             	cmp    %r8,%rcx
1400180b1:	73 24                	jae    0x1400180d7
1400180b3:	48 83 e2 fe          	and    $0xfffffffffffffffe,%rdx
1400180b7:	49 8b f9             	mov    %r9,%rdi
1400180ba:	48 c1 e2 03          	shl    $0x3,%rdx
1400180be:	48 8b ca             	mov    %rdx,%rcx
1400180c1:	48 c1 e9 03          	shr    $0x3,%rcx
1400180c5:	f3 48 ab             	rep stos %rax,%es:(%rdi)
1400180c8:	4c 03 ca             	add    %rdx,%r9
1400180cb:	eb 0a                	jmp    0x1400180d7
1400180cd:	49 8b 00             	mov    (%r8),%rax
1400180d0:	49 89 01             	mov    %rax,(%r9)
1400180d3:	49 83 c1 08          	add    $0x8,%r9
1400180d7:	4d 3b ca             	cmp    %r10,%r9
1400180da:	75 f1                	jne    0x1400180cd
1400180dc:	48 8b 7c 24 08       	mov    0x8(%rsp),%rdi
1400180e1:	c3                   	ret
1400180e2:	90                   	nop
1400180e3:	90                   	nop
1400180e4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400180e9:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1400180ee:	56                   	push   %rsi
1400180ef:	57                   	push   %rdi
1400180f0:	41 56                	push   %r14
1400180f2:	48 83 ec 30          	sub    $0x30,%rsp
1400180f6:	4d 8b f0             	mov    %r8,%r14
1400180f9:	48 8b f2             	mov    %rdx,%rsi
1400180fc:	48 8b f9             	mov    %rcx,%rdi
1400180ff:	b9 18 00 00 00       	mov    $0x18,%ecx
140018104:	e8 5f 41 ff ff       	call   0x14000c268
140018109:	48 8b d8             	mov    %rax,%rbx
14001810c:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140018111:	48 85 c0             	test   %rax,%rax
140018114:	74 35                	je     0x14001814b