1403eee30:	48 85 db             	test   %rbx,%rbx
1403eee33:	79 47                	jns    0x1403eee7c
1403eee35:	45 33 c0             	xor    %r8d,%r8d
1403eee38:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1403eee3d:	48 8b 0d 34 40 04 01 	mov    0x1044034(%rip),%rcx        # 0x141432e78
1403eee44:	e8 d7 10 db ff       	call   0x14019ff20
1403eee49:	4c 8b c0             	mov    %rax,%r8
1403eee4c:	33 d2                	xor    %edx,%edx
1403eee4e:	48 8b cf             	mov    %rdi,%rcx
1403eee51:	e8 aa 5c 34 00       	call   0x140734b00
1403eee56:	48 8b 47 40          	mov    0x40(%rdi),%rax
1403eee5a:	48 8b 08             	mov    (%rax),%rcx
1403eee5d:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
1403eee61:	75 04                	jne    0x1403eee67
1403eee63:	c6 41 18 01          	movb   $0x1,0x18(%rcx)
1403eee67:	48 c7 41 10 00 00 00 	movq   $0x0,0x10(%rcx)
1403eee6e:	00
1403eee6f:	48 8d 57 20          	lea    0x20(%rdi),%rdx
1403eee73:	48 83 7a 08 00       	cmpq   $0x0,0x8(%rdx)
1403eee78:	74 5d                	je     0x1403eeed7
1403eee7a:	eb 4f                	jmp    0x1403eeecb
1403eee7c:	48 8b 40 40          	mov    0x40(%rax),%rax
1403eee80:	48 8b 08             	mov    (%rax),%rcx
1403eee83:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
1403eee87:	75 04                	jne    0x1403eee8d
1403eee89:	c6 41 08 01          	movb   $0x1,0x8(%rcx)
1403eee8d:	48 89 19             	mov    %rbx,(%rcx)
1403eee90:	48 83 7f 28 00       	cmpq   $0x0,0x28(%rdi)
1403eee95:	74 10                	je     0x1403eeea7
1403eee97:	48 8d 57 20          	lea    0x20(%rdi),%rdx
1403eee9b:	48 8d 0d 3e 1b 04 01 	lea    0x1041b3e(%rip),%rcx        # 0x1414309e0
1403eeea2:	e8 99 bc 39 00       	call   0x14078ab40
1403eeea7:	48 8b 47 40          	mov    0x40(%rdi),%rax
1403eeeab:	48 8b 08             	mov    (%rax),%rcx
1403eeeae:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
1403eeeb2:	75 04                	jne    0x1403eeeb8
1403eeeb4:	c6 41 18 01          	movb   $0x1,0x18(%rcx)
1403eeeb8:	48 c7 41 10 01 00 00 	movq   $0x1,0x10(%rcx)
1403eeebf:	00
1403eeec0:	48 83 7f 28 00       	cmpq   $0x0,0x28(%rdi)
1403eeec5:	74 10                	je     0x1403eeed7
1403eeec7:	48 8d 57 20          	lea    0x20(%rdi),%rdx
1403eeecb:	48 8d 0d 0e 1b 04 01 	lea    0x1041b0e(%rip),%rcx        # 0x1414309e0
1403eeed2:	e8 69 bc 39 00       	call   0x14078ab40
1403eeed7:	48 8b be e0 00 00 00 	mov    0xe0(%rsi),%rdi
1403eeede:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1403eeee3:	e8 d8 59 34 00       	call   0x1407348c0
1403eeee8:	48 8b d8             	mov    %rax,%rbx
1403eeeeb:	48 85 ff             	test   %rdi,%rdi
1403eeeee:	79 47                	jns    0x1403eef37
1403eeef0:	45 33 c0             	xor    %r8d,%r8d
1403eeef3:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1403eeef8:	48 8b 0d 79 3f 04 01 	mov    0x1043f79(%rip),%rcx        # 0x141432e78
1403eeeff:	e8 1c 10 db ff       	call   0x14019ff20
1403eef04:	4c 8b c0             	mov    %rax,%r8
1403eef07:	33 d2                	xor    %edx,%edx
1403eef09:	48 8b cb             	mov    %rbx,%rcx
1403eef0c:	e8 ef 5b 34 00       	call   0x140734b00
1403eef11:	48 8b 43 40          	mov    0x40(%rbx),%rax
1403eef15:	48 8b 10             	mov    (%rax),%rdx
1403eef18:	80 7a 18 00          	cmpb   $0x0,0x18(%rdx)
1403eef1c:	75 04                	jne    0x1403eef22
1403eef1e:	c6 42 18 01          	movb   $0x1,0x18(%rdx)
1403eef22:	48 c7 42 10 00 00 00 	movq   $0x0,0x10(%rdx)
1403eef29:	00
1403eef2a:	48 8d 53 20          	lea    0x20(%rbx),%rdx
1403eef2e:	48 83 7a 08 00       	cmpq   $0x0,0x8(%rdx)
1403eef33:	74 5d                	je     0x1403eef92
1403eef35:	eb 4f                	jmp    0x1403eef86
1403eef37:	48 8b 40 40          	mov    0x40(%rax),%rax
1403eef3b:	48 8b 08             	mov    (%rax),%rcx
1403eef3e:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
1403eef42:	75 04                	jne    0x1403eef48
1403eef44:	c6 41 08 01          	movb   $0x1,0x8(%rcx)
1403eef48:	48 89 39             	mov    %rdi,(%rcx)
1403eef4b:	48 83 7b 28 00       	cmpq   $0x0,0x28(%rbx)
1403eef50:	74 10                	je     0x1403eef62
1403eef52:	48 8d 53 20          	lea    0x20(%rbx),%rdx
1403eef56:	48 8d 0d 83 1a 04 01 	lea    0x1041a83(%rip),%rcx        # 0x1414309e0
1403eef5d:	e8 de bb 39 00       	call   0x14078ab40
1403eef62:	48 8b 43 40          	mov    0x40(%rbx),%rax
1403eef66:	48 8b 08             	mov    (%rax),%rcx
1403eef69:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
1403eef6d:	75 04                	jne    0x1403eef73
1403eef6f:	c6 41 18 01          	movb   $0x1,0x18(%rcx)
1403eef73:	48 c7 41 10 01 00 00 	movq   $0x1,0x10(%rcx)
1403eef7a:	00
1403eef7b:	48 83 7b 28 00       	cmpq   $0x0,0x28(%rbx)
1403eef80:	74 10                	je     0x1403eef92
1403eef82:	48 8d 53 20          	lea    0x20(%rbx),%rdx
1403eef86:	48 8d 0d 53 1a 04 01 	lea    0x1041a53(%rip),%rcx        # 0x1414309e0
1403eef8d:	e8 ae bb 39 00       	call   0x14078ab40
1403eef92:	48 8b d5             	mov    %rbp,%rdx
1403eef95:	48 8b ce             	mov    %rsi,%rcx
1403eef98:	e8 c3 9b 14 00       	call   0x140538b60
1403eef9d:	90                   	nop
1403eef9e:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1403eefa3:	48 85 c9             	test   %rcx,%rcx
1403eefa6:	74 20                	je     0x1403eefc8
1403eefa8:	8b 41 10             	mov    0x10(%rcx),%eax
1403eefab:	ff c8                	dec    %eax
1403eefad:	89 41 10             	mov    %eax,0x10(%rcx)
1403eefb0:	85 c0                	test   %eax,%eax
1403eefb2:	7f 14                	jg     0x1403eefc8
1403eefb4:	78 54                	js     0x1403ef00a
1403eefb6:	48 8b 01             	mov    (%rcx),%rax
1403eefb9:	ba 01 00 00 00       	mov    $0x1,%edx
1403eefbe:	48 8b 00             	mov    (%rax),%rax
1403eefc1:	ff 15 59 4a b9 00    	call   *0xb94a59(%rip)        # 0x140f83a20
1403eefc7:	90                   	nop
1403eefc8:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
1403eefcd:	48 85 c9             	test   %rcx,%rcx
1403eefd0:	74 20                	je     0x1403eeff2
1403eefd2:	8b 41 10             	mov    0x10(%rcx),%eax
1403eefd5:	ff c8                	dec    %eax
1403eefd7:	89 41 10             	mov    %eax,0x10(%rcx)
1403eefda:	85 c0                	test   %eax,%eax
1403eefdc:	7f 14                	jg     0x1403eeff2
1403eefde:	78 1f                	js     0x1403eefff
1403eefe0:	48 8b 01             	mov    (%rcx),%rax
1403eefe3:	ba 01 00 00 00       	mov    $0x1,%edx
1403eefe8:	48 8b 00             	mov    (%rax),%rax
1403eefeb:	ff 15 2f 4a b9 00    	call   *0xb94a2f(%rip)        # 0x140f83a20
1403eeff1:	90                   	nop
1403eeff2:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1403eeff7:	48 83 c4 30          	add    $0x30,%rsp
1403eeffb:	5f                   	pop    %rdi
1403eeffc:	5e                   	pop    %rsi
1403eeffd:	5d                   	pop    %rbp
1403eeffe:	c3                   	ret
1403eefff:	b9 02 00 00 00       	mov    $0x2,%ecx
1403ef004:	e8 f7 b6 39 00       	call   0x14078a700
1403ef009:	90                   	nop
1403ef00a:	b9 02 00 00 00       	mov    $0x2,%ecx
1403ef00f:	e8 ec b6 39 00       	call   0x14078a700
1403ef014:	cc                   	int3
1403ef015:	cc                   	int3
1403ef016:	cc                   	int3
1403ef017:	cc                   	int3
1403ef018:	cc                   	int3
1403ef019:	cc                   	int3
1403ef01a:	cc                   	int3
1403ef01b:	cc                   	int3
1403ef01c:	cc                   	int3
1403ef01d:	cc                   	int3
1403ef01e:	cc                   	int3
1403ef01f:	cc                   	int3
1403ef020:	4d 63 c8             	movslq %r8d,%r9
1403ef023:	84 d2                	test   %dl,%dl
1403ef025:	74 1a                	je     0x1403ef041
1403ef027:	48 8b 91 d8 00 00 00 	mov    0xd8(%rcx),%rdx
1403ef02e:	48 85 d2             	test   %rdx,%rdx
1403ef031:	4a 8d 04 0a          	lea    (%rdx,%r9,1),%rax
1403ef035:	4c 0f 49 c8          	cmovns %rax,%r9
1403ef039:	4c 89 89 d8 00 00 00 	mov    %r9,0xd8(%rcx)
1403ef040:	c3                   	ret
1403ef041:	48 8b 81 e0 00 00 00 	mov    0xe0(%rcx),%rax
1403ef048:	48 85 c0             	test   %rax,%rax
1403ef04b:	79 08                	jns    0x1403ef055
1403ef04d:	4c 89 89 e0 00 00 00 	mov    %r9,0xe0(%rcx)
1403ef054:	c3                   	ret
1403ef055:	49 03 c1             	add    %r9,%rax
1403ef058:	48 89 81 e0 00 00 00 	mov    %rax,0xe0(%rcx)
1403ef05f:	c3                   	ret
1403ef060:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1403ef065:	57                   	push   %rdi
1403ef066:	48 83 ec 70          	sub    $0x70,%rsp
1403ef06a:	48 8b 05 8f 9e fc 00 	mov    0xfc9e8f(%rip),%rax        # 0x1413b8f00
1403ef071:	48 33 c4             	xor    %rsp,%rax
1403ef074:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1403ef079:	48 8b da             	mov    %rdx,%rbx
1403ef07c:	48 8b f9             	mov    %rcx,%rdi
1403ef07f:	4c 8b 94 24 a0 00 00 	mov    0xa0(%rsp),%r10
1403ef086:	00
1403ef087:	49 8b 08             	mov    (%r8),%rcx
1403ef08a:	48 85 c9             	test   %rcx,%rcx
1403ef08d:	74 1c                	je     0x1403ef0ab
1403ef08f:	8b 41 10             	mov    0x10(%rcx),%eax
1403ef092:	ff c0                	inc    %eax
1403ef094:	89 41 10             	mov    %eax,0x10(%rcx)
1403ef097:	83 f8 01             	cmp    $0x1,%eax
1403ef09a:	0f 8e 0b 01 00 00    	jle    0x1403ef1ab
1403ef0a0:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403ef0a5:	0f 84 08 01 00 00    	je     0x1403ef1b3
1403ef0ab:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
1403ef0b0:	49 8b 09             	mov    (%r9),%rcx
1403ef0b3:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
1403ef0b8:	48 85 c9             	test   %rcx,%rcx
1403ef0bb:	74 1c                	je     0x1403ef0d9
1403ef0bd:	8b 41 10             	mov    0x10(%rcx),%eax
1403ef0c0:	ff c0                	inc    %eax
1403ef0c2:	89 41 10             	mov    %eax,0x10(%rcx)
1403ef0c5:	83 f8 01             	cmp    $0x1,%eax
1403ef0c8:	0f 8e f0 00 00 00    	jle    0x1403ef1be
1403ef0ce:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403ef0d3:	0f 84 ed 00 00 00    	je     0x1403ef1c6
1403ef0d9:	49 8b 02             	mov    (%r10),%rax
1403ef0dc:	33 c9                	xor    %ecx,%ecx
1403ef0de:	49 89 0a             	mov    %rcx,(%r10)
1403ef0e1:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
1403ef0e6:	0f 57 c0             	xorps  %xmm0,%xmm0
1403ef0e9:	f3 0f 7f 44 24 28    	movdqu %xmm0,0x28(%rsp)
1403ef0ef:	48 89 4c 24 38       	mov    %rcx,0x38(%rsp)
1403ef0f4:	ba 03 00 00 00       	mov    $0x3,%edx
1403ef0f9:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
1403ef0fe:	e8 dd 0f db ff       	call   0x1401a00e0
1403ef103:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
1403ef108:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
1403ef10d:	0f 1f 00             	nopl   (%rax)
1403ef110:	48 8b 0a             	mov    (%rdx),%rcx
1403ef113:	49 89 08             	mov    %rcx,(%r8)
1403ef116:	48 85 c9             	test   %rcx,%rcx
1403ef119:	74 14                	je     0x1403ef12f
1403ef11b:	8b 41 10             	mov    0x10(%rcx),%eax
1403ef11e:	ff c0                	inc    %eax
1403ef120:	89 41 10             	mov    %eax,0x10(%rcx)
1403ef123:	83 f8 01             	cmp    $0x1,%eax
1403ef126:	7e 7b                	jle    0x1403ef1a3
1403ef128:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403ef12d:	74 69                	je     0x1403ef198
1403ef12f:	49 83 c0 08          	add    $0x8,%r8
1403ef133:	48 83 c2 08          	add    $0x8,%rdx
1403ef137:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
1403ef13c:	48 3b d0             	cmp    %rax,%rdx
1403ef13f:	75 cf                	jne    0x1403ef110
1403ef141:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
1403ef146:	48 8b 03             	mov    (%rbx),%rax
1403ef149:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1403ef14e:	4c 8d 44 24 28       	lea    0x28(%rsp),%r8
1403ef153:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1403ef158:	48 8b cf             	mov    %rdi,%rcx
1403ef15b:	e8 e0 88 14 00       	call   0x140537a40
1403ef160:	90                   	nop
1403ef161:	4c 8d 0d 88 f3 da ff 	lea    -0x250c78(%rip),%r9        # 0x14019e4f0
1403ef168:	ba 08 00 00 00       	mov    $0x8,%edx
1403ef16d:	41 b8 03 00 00 00    	mov    $0x3,%r8d
1403ef173:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1403ef178:	e8 cf c3 a2 00       	call   0x140e1b54c
1403ef17d:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1403ef182:	48 33 cc             	xor    %rsp,%rcx
1403ef185:	e8 76 c3 a2 00       	call   0x140e1b500
1403ef18a:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
1403ef191:	00
1403ef192:	48 83 c4 70          	add    $0x70,%rsp
1403ef196:	5f                   	pop    %rdi
1403ef197:	c3                   	ret
1403ef198:	b9 01 00 00 00       	mov    $0x1,%ecx
1403ef19d:	e8 5e b5 39 00       	call   0x14078a700
1403ef1a2:	cc                   	int3
1403ef1a3:	33 c9                	xor    %ecx,%ecx
1403ef1a5:	e8 56 b5 39 00       	call   0x14078a700
1403ef1aa:	90                   	nop
1403ef1ab:	33 c9                	xor    %ecx,%ecx
1403ef1ad:	e8 4e b5 39 00       	call   0x14078a700
1403ef1b2:	cc                   	int3
1403ef1b3:	b9 01 00 00 00       	mov    $0x1,%ecx
1403ef1b8:	e8 43 b5 39 00       	call   0x14078a700
1403ef1bd:	90                   	nop
1403ef1be:	33 c9                	xor    %ecx,%ecx
1403ef1c0:	e8 3b b5 39 00       	call   0x14078a700
1403ef1c5:	cc                   	int3
1403ef1c6:	b9 01 00 00 00       	mov    $0x1,%ecx
1403ef1cb:	e8 30 b5 39 00       	call   0x14078a700
1403ef1d0:	cc                   	int3
1403ef1d1:	cc                   	int3
1403ef1d2:	cc                   	int3
1403ef1d3:	cc                   	int3
1403ef1d4:	cc                   	int3
1403ef1d5:	cc                   	int3
1403ef1d6:	cc                   	int3
1403ef1d7:	cc                   	int3
1403ef1d8:	cc                   	int3
1403ef1d9:	cc                   	int3
1403ef1da:	cc                   	int3
1403ef1db:	cc                   	int3
1403ef1dc:	cc                   	int3
1403ef1dd:	cc                   	int3
1403ef1de:	cc                   	int3
1403ef1df:	cc                   	int3
1403ef1e0:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1403ef1e5:	53                   	push   %rbx
1403ef1e6:	56                   	push   %rsi
1403ef1e7:	57                   	push   %rdi
1403ef1e8:	41 54                	push   %r12
1403ef1ea:	41 55                	push   %r13
1403ef1ec:	41 56                	push   %r14
1403ef1ee:	41 57                	push   %r15
1403ef1f0:	48 83 ec 20          	sub    $0x20,%rsp
1403ef1f4:	4d 8b e8             	mov    %r8,%r13
1403ef1f7:	4c 8b fa             	mov    %rdx,%r15
1403ef1fa:	48 8b f9             	mov    %rcx,%rdi
1403ef1fd:	4c 8b 09             	mov    (%rcx),%r9
1403ef200:	4c 8b f2             	mov    %rdx,%r14
1403ef203:	4d 2b f1             	sub    %r9,%r14
1403ef206:	49 d1 fe             	sar    $1,%r14
1403ef209:	48 8b 41 08          	mov    0x8(%rcx),%rax
1403ef20d:	49 2b c1             	sub    %r9,%rax
1403ef210:	48 d1 f8             	sar    $1,%rax
1403ef213:	49 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%r8
1403ef21a:	ff ff 7f
1403ef21d:	49 3b c0             	cmp    %r8,%rax
1403ef220:	0f 84 3a 01 00 00    	je     0x1403ef360
1403ef226:	4c 8d 60 01          	lea    0x1(%rax),%r12
1403ef22a:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1403ef22e:	49 2b c9             	sub    %r9,%rcx
1403ef231:	48 d1 f9             	sar    $1,%rcx
1403ef234:	48 8b d1             	mov    %rcx,%rdx
1403ef237:	48 d1 ea             	shr    $1,%rdx
1403ef23a:	49 8b c0             	mov    %r8,%rax
1403ef23d:	48 2b c2             	sub    %rdx,%rax
1403ef240:	48 3b c8             	cmp    %rax,%rcx
1403ef243:	0f 87 11 01 00 00    	ja     0x1403ef35a
1403ef249:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
1403ef24d:	49 8b cc             	mov    %r12,%rcx
1403ef250:	49 3b c4             	cmp    %r12,%rax
1403ef253:	48 0f 43 c8          	cmovae %rax,%rcx
1403ef257:	49 3b c8             	cmp    %r8,%rcx
1403ef25a:	0f 87 fa 00 00 00    	ja     0x1403ef35a
1403ef260:	48 8d 34 09          	lea    (%rcx,%rcx,1),%rsi
1403ef264:	48 89 4c 24 78       	mov    %rcx,0x78(%rsp)
1403ef269:	48 85 f6             	test   %rsi,%rsi
1403ef26c:	75 09                	jne    0x1403ef277
1403ef26e:	33 db                	xor    %ebx,%ebx
1403ef270:	48 89 4c 24 78       	mov    %rcx,0x78(%rsp)
1403ef275:	eb 3d                	jmp    0x1403ef2b4
1403ef277:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
1403ef27e:	72 29                	jb     0x1403ef2a9
1403ef280:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
1403ef284:	48 3b ce             	cmp    %rsi,%rcx
1403ef287:	0f 86 cd 00 00 00    	jbe    0x1403ef35a
1403ef28d:	e8 76 be a2 00       	call   0x140e1b108
1403ef292:	48 85 c0             	test   %rax,%rax
1403ef295:	0f 84 cb 00 00 00    	je     0x1403ef366
1403ef29b:	48 8d 58 27          	lea    0x27(%rax),%rbx
1403ef29f:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
1403ef2a3:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
1403ef2a7:	eb 0b                	jmp    0x1403ef2b4
1403ef2a9:	48 8b ce             	mov    %rsi,%rcx
1403ef2ac:	e8 57 be a2 00       	call   0x140e1b108
1403ef2b1:	48 8b d8             	mov    %rax,%rbx
1403ef2b4:	48 89 5c 24 68       	mov    %rbx,0x68(%rsp)
1403ef2b9:	4e 8d 34 73          	lea    (%rbx,%r14,2),%r14
1403ef2bd:	41 0f b7 4d 00       	movzwl 0x0(%r13),%ecx
1403ef2c2:	66 41 89 0e          	mov    %cx,(%r14)
1403ef2c6:	4c 8b 47 08          	mov    0x8(%rdi),%r8
1403ef2ca:	48 8b 17             	mov    (%rdi),%rdx
1403ef2cd:	48 8b cb             	mov    %rbx,%rcx
1403ef2d0:	4d 3b f8             	cmp    %r8,%r15
1403ef2d3:	75 05                	jne    0x1403ef2da
1403ef2d5:	4c 2b c2             	sub    %rdx,%r8