180017eef:	4c 8d 0d 5a 03 13 00 	lea    0x13035a(%rip),%r9        # 0x180148250
180017ef6:	49 0f 45 cf          	cmovne %r15,%rcx
180017efa:	4c 8d 05 5f 03 13 00 	lea    0x13035f(%rip),%r8        # 0x180148260
180017f01:	4c 8b 7d e0          	mov    -0x20(%rbp),%r15
180017f05:	48 8d 57 0a          	lea    0xa(%rdi),%rdx
180017f09:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
180017f0e:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
180017f13:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
180017f17:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
180017f1c:	48 8b c8             	mov    %rax,%rcx
180017f1f:	e8 9c 5a 11 00       	call   0x18012d9c0
180017f24:	48 8b 45 40          	mov    0x40(%rbp),%rax
180017f28:	48 89 30             	mov    %rsi,(%rax)
180017f2b:	49 8b f5             	mov    %r13,%rsi
180017f2e:	eb 04                	jmp    0x180017f34
180017f30:	4c 8b 7d e0          	mov    -0x20(%rbp),%r15
180017f34:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
180017f38:	e8 e7 5e 06 00       	call   0x18007de24
180017f3d:	4d 85 ff             	test   %r15,%r15
180017f40:	74 09                	je     0x180017f4b
180017f42:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
180017f46:	e8 d9 5e 06 00       	call   0x18007de24
180017f4b:	4d 85 e4             	test   %r12,%r12
180017f4e:	74 08                	je     0x180017f58
180017f50:	49 8b cc             	mov    %r12,%rcx
180017f53:	e8 a4 20 08 00       	call   0x180099ffc
180017f58:	48 85 f6             	test   %rsi,%rsi
180017f5b:	74 08                	je     0x180017f65
180017f5d:	48 8b ce             	mov    %rsi,%rcx
180017f60:	e8 97 20 08 00       	call   0x180099ffc
180017f65:	48 8b 9c 24 d0 00 00 	mov    0xd0(%rsp),%rbx
180017f6c:	00
180017f6d:	41 8b c6             	mov    %r14d,%eax
180017f70:	48 81 c4 80 00 00 00 	add    $0x80,%rsp
180017f77:	41 5f                	pop    %r15
180017f79:	41 5e                	pop    %r14
180017f7b:	41 5d                	pop    %r13
180017f7d:	41 5c                	pop    %r12
180017f7f:	5f                   	pop    %rdi
180017f80:	5e                   	pop    %rsi
180017f81:	5d                   	pop    %rbp
180017f82:	c3                   	ret
180017f83:	cc                   	int3
180017f84:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180017f89:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
180017f8d:	55                   	push   %rbp
180017f8e:	56                   	push   %rsi
180017f8f:	57                   	push   %rdi
180017f90:	41 54                	push   %r12
180017f92:	41 55                	push   %r13
180017f94:	41 56                	push   %r14
180017f96:	41 57                	push   %r15
180017f98:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
180017f9d:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
180017fa4:	48 8b 3d f5 84 15 00 	mov    0x1584f5(%rip),%rdi        # 0x1801704a0
180017fab:	33 db                	xor    %ebx,%ebx
180017fad:	48 8b 0d 04 85 15 00 	mov    0x158504(%rip),%rcx        # 0x1801704b8
180017fb4:	4c 8b f2             	mov    %rdx,%r14
180017fb7:	48 8b 15 72 d3 18 00 	mov    0x18d372(%rip),%rdx        # 0x1801a5330
180017fbe:	44 8b fb             	mov    %ebx,%r15d
180017fc1:	48 89 55 cf          	mov    %rdx,-0x31(%rbp)
180017fc5:	44 8b e3             	mov    %ebx,%r12d
180017fc8:	48 89 5d c7          	mov    %rbx,-0x39(%rbp)
180017fcc:	8b f3                	mov    %ebx,%esi
180017fce:	48 89 5d df          	mov    %rbx,-0x21(%rbp)
180017fd2:	44 8b eb             	mov    %ebx,%r13d
180017fd5:	48 89 5d 77          	mov    %rbx,0x77(%rbp)
180017fd9:	48 89 5d d7          	mov    %rbx,-0x29(%rbp)
180017fdd:	48 89 5d ff          	mov    %rbx,-0x1(%rbp)
180017fe1:	89 5d f7             	mov    %ebx,-0x9(%rbp)
180017fe4:	48 89 5d ef          	mov    %rbx,-0x11(%rbp)
180017fe8:	89 5d e7             	mov    %ebx,-0x19(%rbp)
180017feb:	48 89 5d 0f          	mov    %rbx,0xf(%rbp)
180017fef:	89 5d 07             	mov    %ebx,0x7(%rbp)
180017ff2:	48 89 5d 1f          	mov    %rbx,0x1f(%rbp)
180017ff6:	89 5d 17             	mov    %ebx,0x17(%rbp)
180017ff9:	48 3b cf             	cmp    %rdi,%rcx
180017ffc:	74 1c                	je     0x18001801a
180017ffe:	48 8d 55 17          	lea    0x17(%rbp),%rdx
180018002:	e8 b9 0e 00 00       	call   0x180018ec0
180018007:	8b d8                	mov    %eax,%ebx
180018009:	85 c0                	test   %eax,%eax
18001800b:	0f 88 e8 00 00 00    	js     0x1800180f9
180018011:	48 8b 15 18 d3 18 00 	mov    0x18d318(%rip),%rdx        # 0x1801a5330
180018018:	33 db                	xor    %ebx,%ebx
18001801a:	8b 07                	mov    (%rdi),%eax
18001801c:	83 f8 04             	cmp    $0x4,%eax
18001801f:	75 3d                	jne    0x18001805e
180018021:	8b 02                	mov    (%rdx),%eax
180018023:	48 8b fa             	mov    %rdx,%rdi
180018026:	83 f8 02             	cmp    $0x2,%eax
180018029:	74 05                	je     0x180018030
18001802b:	83 f8 06             	cmp    $0x6,%eax
18001802e:	75 2e                	jne    0x18001805e
180018030:	48 8d 4a 20          	lea    0x20(%rdx),%rcx
180018034:	44 8b d8             	mov    %eax,%r11d
180018037:	48 85 c9             	test   %rcx,%rcx
18001803a:	74 22                	je     0x18001805e
18001803c:	83 39 06             	cmpl   $0x6,(%rcx)
18001803f:	75 1d                	jne    0x18001805e
180018041:	39 59 18             	cmp    %ebx,0x18(%rcx)
180018044:	75 18                	jne    0x18001805e
180018046:	83 79 28 05          	cmpl   $0x5,0x28(%rcx)
18001804a:	75 12                	jne    0x18001805e
18001804c:	83 79 34 05          	cmpl   $0x5,0x34(%rcx)
180018050:	75 0c                	jne    0x18001805e
180018052:	83 79 30 18          	cmpl   $0x18,0x30(%rcx)
180018056:	72 06                	jb     0x18001805e
180018058:	48 8d 79 38          	lea    0x38(%rcx),%rdi
18001805c:	8b 07                	mov    (%rdi),%eax
18001805e:	83 f8 07             	cmp    $0x7,%eax
180018061:	75 29                	jne    0x18001808c
180018063:	48 8b 0d 6e c9 18 00 	mov    0x18c96e(%rip),%rcx        # 0x1801a49d8
18001806a:	4c 8d 45 77          	lea    0x77(%rbp),%r8
18001806e:	45 33 c9             	xor    %r9d,%r9d
180018071:	ba 51 01 00 21       	mov    $0x21000151,%edx
180018076:	e8 ed 45 06 00       	call   0x18007c668
18001807b:	4c 8b 65 77          	mov    0x77(%rbp),%r12
18001807f:	8b d8                	mov    %eax,%ebx
180018081:	85 c0                	test   %eax,%eax
180018083:	78 38                	js     0x1800180bd
180018085:	49 8b fc             	mov    %r12,%rdi
180018088:	4c 89 65 cf          	mov    %r12,-0x31(%rbp)
18001808c:	48 8d 55 f7          	lea    -0x9(%rbp),%rdx
180018090:	48 8b cf             	mov    %rdi,%rcx
180018093:	e8 28 0e 00 00       	call   0x180018ec0
180018098:	8b d8                	mov    %eax,%ebx
18001809a:	85 c0                	test   %eax,%eax
18001809c:	78 1f                	js     0x1800180bd
18001809e:	bf 02 00 00 00       	mov    $0x2,%edi
1800180a3:	8b cf                	mov    %edi,%ecx
1800180a5:	e8 a6 1d 08 00       	call   0x180099e50
1800180aa:	33 db                	xor    %ebx,%ebx
1800180ac:	4c 8b e8             	mov    %rax,%r13
1800180af:	48 85 c0             	test   %rax,%rax
1800180b2:	0f 85 87 00 00 00    	jne    0x18001813f
1800180b8:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
1800180bd:	48 8b 7d c7          	mov    -0x39(%rbp),%rdi
1800180c1:	4d 85 e4             	test   %r12,%r12
1800180c4:	74 08                	je     0x1800180ce
1800180c6:	49 8b cc             	mov    %r12,%rcx
1800180c9:	e8 2e 1f 08 00       	call   0x180099ffc
1800180ce:	48 85 ff             	test   %rdi,%rdi
1800180d1:	74 08                	je     0x1800180db
1800180d3:	48 8b cf             	mov    %rdi,%rcx
1800180d6:	e8 21 1f 08 00       	call   0x180099ffc
1800180db:	85 db                	test   %ebx,%ebx
1800180dd:	79 42                	jns    0x180018121
1800180df:	4d 85 ed             	test   %r13,%r13
1800180e2:	74 08                	je     0x1800180ec
1800180e4:	49 8b cd             	mov    %r13,%rcx
1800180e7:	e8 10 1f 08 00       	call   0x180099ffc
1800180ec:	48 85 f6             	test   %rsi,%rsi
1800180ef:	74 08                	je     0x1800180f9
1800180f1:	48 8b ce             	mov    %rsi,%rcx
1800180f4:	e8 03 1f 08 00       	call   0x180099ffc
1800180f9:	48 8d 4d f7          	lea    -0x9(%rbp),%rcx
1800180fd:	e8 22 5d 06 00       	call   0x18007de24
180018102:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
180018106:	e8 19 5d 06 00       	call   0x18007de24
18001810b:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
18001810f:	e8 10 5d 06 00       	call   0x18007de24
180018114:	4d 85 ff             	test   %r15,%r15
180018117:	74 08                	je     0x180018121
180018119:	49 8b cf             	mov    %r15,%rcx
18001811c:	e8 db 1e 08 00       	call   0x180099ffc
180018121:	8b c3                	mov    %ebx,%eax
180018123:	48 8b 9c 24 d8 00 00 	mov    0xd8(%rsp),%rbx
18001812a:	00
18001812b:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
180018132:	41 5f                	pop    %r15
180018134:	41 5e                	pop    %r14
180018136:	41 5d                	pop    %r13
180018138:	41 5c                	pop    %r12
18001813a:	5f                   	pop    %rdi
18001813b:	5e                   	pop    %rsi
18001813c:	5d                   	pop    %rbp
18001813d:	c3                   	ret
18001813e:	cc                   	int3
18001813f:	4c 8d 05 26 01 13 00 	lea    0x130126(%rip),%r8        # 0x18014826c
180018146:	48 8b d7             	mov    %rdi,%rdx
180018149:	49 8b cd             	mov    %r13,%rcx
18001814c:	e8 6b 59 11 00       	call   0x18012dabc
180018151:	48 8b 0d e0 d1 18 00 	mov    0x18d1e0(%rip),%rcx        # 0x1801a5338
180018158:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
18001815c:	48 8b c7             	mov    %rdi,%rax
18001815f:	48 ff c0             	inc    %rax
180018162:	66 39 1c 41          	cmp    %bx,(%rcx,%rax,2)
180018166:	75 f7                	jne    0x18001815f
180018168:	8d 0c 45 02 00 00 00 	lea    0x2(,%rax,2),%ecx
18001816f:	48 8b 45 cf          	mov    -0x31(%rbp),%rax
180018173:	89 4d 7f             	mov    %ecx,0x7f(%rbp)
180018176:	8b 40 08             	mov    0x8(%rax),%eax
180018179:	83 c0 0c             	add    $0xc,%eax
18001817c:	03 c1                	add    %ecx,%eax
18001817e:	8b c8                	mov    %eax,%ecx
180018180:	89 45 77             	mov    %eax,0x77(%rbp)
180018183:	e8 c8 1c 08 00       	call   0x180099e50
180018188:	48 8b d8             	mov    %rax,%rbx
18001818b:	48 85 c0             	test   %rax,%rax
18001818e:	0f 84 24 ff ff ff    	je     0x1800180b8
180018194:	c7 00 01 00 00 00    	movl   $0x1,(%rax)
18001819a:	48 8d 4b 0c          	lea    0xc(%rbx),%rcx
18001819e:	c7 40 08 05 00 00 00 	movl   $0x5,0x8(%rax)
1800181a5:	8b 45 77             	mov    0x77(%rbp),%eax
1800181a8:	89 43 04             	mov    %eax,0x4(%rbx)
1800181ab:	48 8b 45 cf          	mov    -0x31(%rbp),%rax
1800181af:	48 8b d0             	mov    %rax,%rdx
1800181b2:	44 8b 40 08          	mov    0x8(%rax),%r8d
1800181b6:	e8 05 d8 11 00       	call   0x1801359c0
1800181bb:	48 8b 45 cf          	mov    -0x31(%rbp),%rax
1800181bf:	44 8b 45 7f          	mov    0x7f(%rbp),%r8d
1800181c3:	48 8b 15 6e d1 18 00 	mov    0x18d16e(%rip),%rdx        # 0x1801a5338
1800181ca:	8b 48 08             	mov    0x8(%rax),%ecx
1800181cd:	48 83 c1 0c          	add    $0xc,%rcx
1800181d1:	48 03 cb             	add    %rbx,%rcx
1800181d4:	e8 e7 d7 11 00       	call   0x1801359c0
1800181d9:	48 8d 55 e7          	lea    -0x19(%rbp),%rdx
1800181dd:	48 8b cb             	mov    %rbx,%rcx
1800181e0:	e8 97 db 05 00       	call   0x180075d7c
1800181e5:	8b d8                	mov    %eax,%ebx
1800181e7:	85 c0                	test   %eax,%eax
1800181e9:	0f 88 ce fe ff ff    	js     0x1800180bd
1800181ef:	48 8b 4d ef          	mov    -0x11(%rbp),%rcx
1800181f3:	ba 5c 00 00 00       	mov    $0x5c,%edx
1800181f8:	e8 13 34 11 00       	call   0x18012b610
1800181fd:	8b 4d 67             	mov    0x67(%rbp),%ecx
180018200:	48 8d 55 d7          	lea    -0x29(%rbp),%rdx
180018204:	48 8b d8             	mov    %rax,%rbx
180018207:	e8 18 0d 00 00       	call   0x180018f24
18001820c:	33 c9                	xor    %ecx,%ecx
18001820e:	88 45 77             	mov    %al,0x77(%rbp)
180018211:	84 c0                	test   %al,%al
180018213:	75 2e                	jne    0x180018243
180018215:	48 ff c7             	inc    %rdi
180018218:	38 0c 3b             	cmp    %cl,(%rbx,%rdi,1)
18001821b:	75 f8                	jne    0x180018215
18001821d:	ff c7                	inc    %edi
18001821f:	8b cf                	mov    %edi,%ecx
180018221:	e8 2a 1c 08 00       	call   0x180099e50
180018226:	48 8b f0             	mov    %rax,%rsi
180018229:	48 85 c0             	test   %rax,%rax
18001822c:	0f 84 86 fe ff ff    	je     0x1800180b8
180018232:	4c 8b c3             	mov    %rbx,%r8
180018235:	8b d7                	mov    %edi,%edx
180018237:	48 8b c8             	mov    %rax,%rcx
18001823a:	e8 7d 58 11 00       	call   0x18012dabc
18001823f:	33 c9                	xor    %ecx,%ecx
180018241:	eb 04                	jmp    0x180018247
180018243:	48 8b 75 d7          	mov    -0x29(%rbp),%rsi
180018247:	88 0b                	mov    %cl,(%rbx)
180018249:	4c 8d 45 c7          	lea    -0x39(%rbp),%r8
18001824d:	48 8b 0d 84 c7 18 00 	mov    0x18c784(%rip),%rcx        # 0x1801a49d8
180018254:	45 33 c9             	xor    %r9d,%r9d
180018257:	ba 53 01 00 21       	mov    $0x21000153,%edx
18001825c:	e8 07 44 06 00       	call   0x18007c668
180018261:	48 8b 7d c7          	mov    -0x39(%rbp),%rdi
180018265:	85 c0                	test   %eax,%eax
180018267:	78 1b                	js     0x180018284
180018269:	48 85 ff             	test   %rdi,%rdi
18001826c:	74 16                	je     0x180018284
18001826e:	48 8d 55 07          	lea    0x7(%rbp),%rdx
180018272:	48 8b cf             	mov    %rdi,%rcx
180018275:	e8 46 0c 00 00       	call   0x180018ec0
18001827a:	8b d8                	mov    %eax,%ebx
18001827c:	85 c0                	test   %eax,%eax
18001827e:	0f 88 3d fe ff ff    	js     0x1800180c1
180018284:	44 8a 45 77          	mov    0x77(%rbp),%r8b
180018288:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
18001828c:	48 8b d6             	mov    %rsi,%rdx
18001828f:	e8 34 fb ff ff       	call   0x180017dc8
180018294:	8b d8                	mov    %eax,%ebx
180018296:	85 c0                	test   %eax,%eax
180018298:	79 1c                	jns    0x1800182b6
18001829a:	41 b9 34 00 30 40    	mov    $0x40300034,%r9d
1800182a0:	89 44 24 20          	mov    %eax,0x20(%rsp)
1800182a4:	48 8d 15 55 d3 12 00 	lea    0x12d355(%rip),%rdx        # 0x180145600
1800182ab:	e8 98 cc fe ff       	call   0x180004f48
1800182b0:	33 c0                	xor    %eax,%eax
1800182b2:	8b d8                	mov    %eax,%ebx
1800182b4:	eb 04                	jmp    0x1800182ba
1800182b6:	4c 8b 7d df          	mov    -0x21(%rbp),%r15
1800182ba:	48 8b 45 ef          	mov    -0x11(%rbp),%rax
1800182be:	49 89 86 b8 00 00 00 	mov    %rax,0xb8(%r14)
1800182c5:	48 8b 45 ff          	mov    -0x1(%rbp),%rax
1800182c9:	49 89 86 c0 00 00 00 	mov    %rax,0xc0(%r14)
1800182d0:	48 8b 45 0f          	mov    0xf(%rbp),%rax
1800182d4:	49 89 86 50 01 00 00 	mov    %rax,0x150(%r14)
1800182db:	48 8b 45 1f          	mov    0x1f(%rbp),%rax
1800182df:	49 89 86 58 01 00 00 	mov    %rax,0x158(%r14)
1800182e6:	49 89 b6 c8 00 00 00 	mov    %rsi,0xc8(%r14)
1800182ed:	4d 89 ae d0 00 00 00 	mov    %r13,0xd0(%r14)
1800182f4:	4d 89 be 48 01 00 00 	mov    %r15,0x148(%r14)
1800182fb:	e9 c1 fd ff ff       	jmp    0x1800180c1
180018300:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180018305:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18001830a:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
18001830f:	55                   	push   %rbp
180018310:	41 54                	push   %r12
180018312:	41 55                	push   %r13
180018314:	41 56                	push   %r14
180018316:	41 57                	push   %r15
180018318:	48 8d 6c 24 a0       	lea    -0x60(%rsp),%rbp
18001831d:	48 81 ec 60 01 00 00 	sub    $0x160,%rsp
180018324:	44 8b f9             	mov    %ecx,%r15d
180018327:	bb 40 00 00 00       	mov    $0x40,%ebx
18001832c:	8b cb                	mov    %ebx,%ecx
18001832e:	4c 8b e2             	mov    %rdx,%r12
180018331:	e8 1a 1b 08 00       	call   0x180099e50
180018336:	45 33 ed             	xor    %r13d,%r13d
180018339:	48 8b f8             	mov    %rax,%rdi
18001833c:	48 85 c0             	test   %rax,%rax
18001833f:	75 0a                	jne    0x18001834b
180018341:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
180018346:	e9 29 01 00 00       	jmp    0x180018474
18001834b:	4c 8b c3             	mov    %rbx,%r8
18001834e:	33 d2                	xor    %edx,%edx
180018350:	48 8b cf             	mov    %rdi,%rcx
180018353:	e8 28 d9 11 00       	call   0x180135c80
180018358:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
18001835d:	41 8b cf             	mov    %r15d,%ecx
180018360:	e8 c3 e9 00 00       	call   0x180026d28
180018365:	8b d8                	mov    %eax,%ebx
180018367:	85 c0                	test   %eax,%eax
180018369:	0f 88 fd 00 00 00    	js     0x18001846c
18001836f:	8b 44 24 48          	mov    0x48(%rsp),%eax
180018373:	85 c0                	test   %eax,%eax
180018375:	74 1d                	je     0x180018394
180018377:	83 f8 02             	cmp    $0x2,%eax
18001837a:	74 0f                	je     0x18001838b
18001837c:	83 f8 06             	cmp    $0x6,%eax
18001837f:	74 13                	je     0x180018394
180018381:	bb cb 00 00 c0       	mov    $0xc00000cb,%ebx
180018386:	e9 e1 00 00 00       	jmp    0x18001846c
18001838b:	8b 5c 24 58          	mov    0x58(%rsp),%ebx
18001838f:	c1 e3 04             	shl    $0x4,%ebx
180018392:	eb 2c                	jmp    0x1800183c0
180018394:	8b 44 24 54          	mov    0x54(%rsp),%eax
180018398:	85 c0                	test   %eax,%eax
18001839a:	74 10                	je     0x1800183ac
18001839c:	83 f8 01             	cmp    $0x1,%eax
18001839f:	75 1c                	jne    0x1800183bd
1800183a1:	88 47 24             	mov    %al,0x24(%rdi)
1800183a4:	8b 45 8c             	mov    -0x74(%rbp),%eax
1800183a7:	89 47 10             	mov    %eax,0x10(%rdi)
1800183aa:	eb 11                	jmp    0x1800183bd
1800183ac:	c6 47 24 01          	movb   $0x1,0x24(%rdi)
1800183b0:	c6 47 26 01          	movb   $0x1,0x26(%rdi)
1800183b4:	0f 10 45 8c          	movups -0x74(%rbp),%xmm0
1800183b8:	f3 0f 7f 47 28       	movdqu %xmm0,0x28(%rdi)