14003ffa7:	31 ff                	xor    %edi,%edi
14003ffa9:	8b 01                	mov    (%rcx),%eax
14003ffab:	48 89 cb             	mov    %rcx,%rbx
14003ffae:	85 c0                	test   %eax,%eax
14003ffb0:	74 2f                	je     0x14003ffe1
14003ffb2:	8d 70 ff             	lea    -0x1(%rax),%esi
14003ffb5:	48 8d 05 64 2f 22 00 	lea    0x222f64(%rip),%rax        # 0x140262f20
14003ffbc:	48 c1 e6 05          	shl    $0x5,%rsi
14003ffc0:	48 03 71 08          	add    0x8(%rcx),%rsi
14003ffc4:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
14003ffc8:	48 8b 3e             	mov    (%rsi),%rdi
14003ffcb:	48 39 c1             	cmp    %rax,%rcx
14003ffce:	74 05                	je     0x14003ffd5
14003ffd0:	e8 db 8e 0b 00       	call   0x1400f8eb0
14003ffd5:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14003ffd9:	e8 d2 8e 0b 00       	call   0x1400f8eb0
14003ffde:	83 2b 01             	subl   $0x1,(%rbx)
14003ffe1:	48 89 f8             	mov    %rdi,%rax
14003ffe4:	48 83 c4 20          	add    $0x20,%rsp
14003ffe8:	5b                   	pop    %rbx
14003ffe9:	5e                   	pop    %rsi
14003ffea:	5f                   	pop    %rdi
14003ffeb:	c3                   	ret
14003ffec:	0f 1f 40 00          	nopl   0x0(%rax)
14003fff0:	41 57                	push   %r15
14003fff2:	41 56                	push   %r14
14003fff4:	41 55                	push   %r13
14003fff6:	41 54                	push   %r12
14003fff8:	55                   	push   %rbp
14003fff9:	57                   	push   %rdi
14003fffa:	56                   	push   %rsi
14003fffb:	53                   	push   %rbx
14003fffc:	48 83 ec 28          	sub    $0x28,%rsp
140040000:	44 8b 21             	mov    (%rcx),%r12d
140040003:	4c 8b 71 08          	mov    0x8(%rcx),%r14
140040007:	49 89 cd             	mov    %rcx,%r13
14004000a:	48 89 d7             	mov    %rdx,%rdi
14004000d:	4c 89 c5             	mov    %r8,%rbp
140040010:	45 85 e4             	test   %r12d,%r12d
140040013:	0f 84 8f 00 00 00    	je     0x1400400a8
140040019:	4c 89 f3             	mov    %r14,%rbx
14004001c:	31 f6                	xor    %esi,%esi
14004001e:	45 31 ff             	xor    %r15d,%r15d
140040021:	eb 33                	jmp    0x140040056
140040023:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140040028:	41 39 f7             	cmp    %esi,%r15d
14004002b:	74 19                	je     0x140040046
14004002d:	89 f0                	mov    %esi,%eax
14004002f:	f3 0f 6f 03          	movdqu (%rbx),%xmm0
140040033:	48 c1 e0 05          	shl    $0x5,%rax
140040037:	4c 01 f0             	add    %r14,%rax
14004003a:	0f 11 00             	movups %xmm0,(%rax)
14004003d:	f3 0f 6f 4b 10       	movdqu 0x10(%rbx),%xmm1
140040042:	0f 11 48 10          	movups %xmm1,0x10(%rax)
140040046:	41 83 c7 01          	add    $0x1,%r15d
14004004a:	83 c6 01             	add    $0x1,%esi
14004004d:	48 83 c3 20          	add    $0x20,%rbx
140040051:	45 39 fc             	cmp    %r15d,%r12d
140040054:	74 37                	je     0x14004008d
140040056:	48 89 ea             	mov    %rbp,%rdx
140040059:	48 89 d9             	mov    %rbx,%rcx
14004005c:	ff d7                	call   *%rdi
14004005e:	85 c0                	test   %eax,%eax
140040060:	75 c6                	jne    0x140040028
140040062:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140040066:	48 8d 05 b3 2e 22 00 	lea    0x222eb3(%rip),%rax        # 0x140262f20
14004006d:	48 39 c1             	cmp    %rax,%rcx
140040070:	74 05                	je     0x140040077
140040072:	e8 39 8e 0b 00       	call   0x1400f8eb0
140040077:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14004007b:	41 83 c7 01          	add    $0x1,%r15d
14004007f:	48 83 c3 20          	add    $0x20,%rbx
140040083:	e8 28 8e 0b 00       	call   0x1400f8eb0
140040088:	45 39 fc             	cmp    %r15d,%r12d
14004008b:	75 c9                	jne    0x140040056
14004008d:	41 89 75 00          	mov    %esi,0x0(%r13)
140040091:	48 83 c4 28          	add    $0x28,%rsp
140040095:	5b                   	pop    %rbx
140040096:	5e                   	pop    %rsi
140040097:	5f                   	pop    %rdi
140040098:	5d                   	pop    %rbp
140040099:	41 5c                	pop    %r12
14004009b:	41 5d                	pop    %r13
14004009d:	41 5e                	pop    %r14
14004009f:	41 5f                	pop    %r15
1400400a1:	c3                   	ret
1400400a2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1400400a8:	31 f6                	xor    %esi,%esi
1400400aa:	eb e1                	jmp    0x14004008d
1400400ac:	0f 1f 40 00          	nopl   0x0(%rax)
1400400b0:	55                   	push   %rbp
1400400b1:	57                   	push   %rdi
1400400b2:	56                   	push   %rsi
1400400b3:	53                   	push   %rbx
1400400b4:	48 83 ec 28          	sub    $0x28,%rsp
1400400b8:	8b 01                	mov    (%rcx),%eax
1400400ba:	48 89 cf             	mov    %rcx,%rdi
1400400bd:	85 c0                	test   %eax,%eax
1400400bf:	74 39                	je     0x1400400fa
1400400c1:	31 f6                	xor    %esi,%esi
1400400c3:	48 8d 2d 56 2e 22 00 	lea    0x222e56(%rip),%rbp        # 0x140262f20
1400400ca:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1400400d0:	48 89 f3             	mov    %rsi,%rbx
1400400d3:	48 c1 e3 05          	shl    $0x5,%rbx
1400400d7:	48 03 5f 08          	add    0x8(%rdi),%rbx
1400400db:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1400400df:	48 39 e9             	cmp    %rbp,%rcx
1400400e2:	74 05                	je     0x1400400e9
1400400e4:	e8 c7 8d 0b 00       	call   0x1400f8eb0
1400400e9:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1400400ed:	48 83 c6 01          	add    $0x1,%rsi
1400400f1:	e8 ba 8d 0b 00       	call   0x1400f8eb0
1400400f6:	3b 37                	cmp    (%rdi),%esi
1400400f8:	72 d6                	jb     0x1400400d0
1400400fa:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1400400fe:	e8 ad 8d 0b 00       	call   0x1400f8eb0
140040103:	48 c7 47 08 00 00 00 	movq   $0x0,0x8(%rdi)
14004010a:	00
14004010b:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
140040112:	48 83 c4 28          	add    $0x28,%rsp
140040116:	5b                   	pop    %rbx
140040117:	5e                   	pop    %rsi
140040118:	5f                   	pop    %rdi
140040119:	5d                   	pop    %rbp
14004011a:	c3                   	ret
14004011b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140040120:	41 57                	push   %r15
140040122:	41 56                	push   %r14
140040124:	41 55                	push   %r13
140040126:	41 54                	push   %r12
140040128:	55                   	push   %rbp
140040129:	57                   	push   %rdi
14004012a:	56                   	push   %rsi
14004012b:	53                   	push   %rbx
14004012c:	48 83 ec 48          	sub    $0x48,%rsp
140040130:	8b 01                	mov    (%rcx),%eax
140040132:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140040136:	89 44 24 34          	mov    %eax,0x34(%rsp)
14004013a:	49 89 cd             	mov    %rcx,%r13
14004013d:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140040142:	c7 01 00 00 00 00    	movl   $0x0,(%rcx)
140040148:	85 c0                	test   %eax,%eax
14004014a:	0f 84 ae 00 00 00    	je     0x1400401fe
140040150:	45 31 e4             	xor    %r12d,%r12d
140040153:	31 db                	xor    %ebx,%ebx
140040155:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14004015c:	00 00 00 00
140040160:	83 c3 01             	add    $0x1,%ebx
140040163:	41 83 c4 01          	add    $0x1,%r12d
140040167:	48 83 c7 20          	add    $0x20,%rdi
14004016b:	41 89 5d 00          	mov    %ebx,0x0(%r13)
14004016f:	44 39 64 24 34       	cmp    %r12d,0x34(%rsp)
140040174:	0f 84 84 00 00 00    	je     0x1400401fe
14004017a:	41 8b 5d 00          	mov    0x0(%r13),%ebx
14004017e:	4d 8b 75 08          	mov    0x8(%r13),%r14
140040182:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140040186:	4c 8b 3f             	mov    (%rdi),%r15
140040189:	85 db                	test   %ebx,%ebx
14004018b:	0f 84 af 00 00 00    	je     0x140040240
140040191:	89 d8                	mov    %ebx,%eax
140040193:	49 89 c1             	mov    %rax,%r9
140040196:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14004019b:	49 c1 e1 05          	shl    $0x5,%r9
14004019f:	4b 8d 2c 0e          	lea    (%r14,%r9,1),%rbp
1400401a3:	eb 14                	jmp    0x1400401b9
1400401a5:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1400401ac:	00 00 00 00
1400401b0:	49 83 c6 20          	add    $0x20,%r14
1400401b4:	4c 39 f5             	cmp    %r14,%rbp
1400401b7:	74 57                	je     0x140040210
1400401b9:	4d 39 3e             	cmp    %r15,(%r14)
1400401bc:	75 f2                	jne    0x1400401b0
1400401be:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1400401c2:	48 89 f2             	mov    %rsi,%rdx
1400401c5:	e8 ae 9c 1a 00       	call   0x1401e9e78
1400401ca:	85 c0                	test   %eax,%eax
1400401cc:	75 e2                	jne    0x1400401b0
1400401ce:	48 8d 05 4b 2d 22 00 	lea    0x222d4b(%rip),%rax        # 0x140262f20
1400401d5:	48 39 c6             	cmp    %rax,%rsi
1400401d8:	74 08                	je     0x1400401e2
1400401da:	48 89 f1             	mov    %rsi,%rcx
1400401dd:	e8 ce 8c 0b 00       	call   0x1400f8eb0
1400401e2:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
1400401e6:	41 83 c4 01          	add    $0x1,%r12d
1400401ea:	48 83 c7 20          	add    $0x20,%rdi
1400401ee:	e8 bd 8c 0b 00       	call   0x1400f8eb0
1400401f3:	44 39 64 24 34       	cmp    %r12d,0x34(%rsp)
1400401f8:	0f 85 7c ff ff ff    	jne    0x14004017a
1400401fe:	48 83 c4 48          	add    $0x48,%rsp
140040202:	5b                   	pop    %rbx
140040203:	5e                   	pop    %rsi
140040204:	5f                   	pop    %rdi
140040205:	5d                   	pop    %rbp
140040206:	41 5c                	pop    %r12
140040208:	41 5d                	pop    %r13
14004020a:	41 5e                	pop    %r14
14004020c:	41 5f                	pop    %r15
14004020e:	c3                   	ret
14004020f:	90                   	nop
140040210:	41 39 dc             	cmp    %ebx,%r12d
140040213:	0f 84 47 ff ff ff    	je     0x140040160
140040219:	48 8b 6c 24 28       	mov    0x28(%rsp),%rbp
14004021e:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140040223:	f3 0f 6f 07          	movdqu (%rdi),%xmm0
140040227:	48 c1 e5 05          	shl    $0x5,%rbp
14004022b:	48 01 c5             	add    %rax,%rbp
14004022e:	0f 11 45 00          	movups %xmm0,0x0(%rbp)
140040232:	f3 0f 6f 4f 10       	movdqu 0x10(%rdi),%xmm1
140040237:	0f 11 4d 10          	movups %xmm1,0x10(%rbp)
14004023b:	e9 20 ff ff ff       	jmp    0x140040160
140040240:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140040247:	00 00
140040249:	eb ce                	jmp    0x140040219
14004024b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140040250:	48 8b 05 a9 91 1f 00 	mov    0x1f91a9(%rip),%rax        # 0x140239400
140040257:	48 8b 00             	mov    (%rax),%rax
14004025a:	48 8b 50 18          	mov    0x18(%rax),%rdx
14004025e:	48 63 42 14          	movslq 0x14(%rdx),%rax
140040262:	85 c0                	test   %eax,%eax
140040264:	7e 45                	jle    0x1400402ab
140040266:	48 8b 52 08          	mov    0x8(%rdx),%rdx
14004026a:	f7 d1                	not    %ecx
14004026c:	4c 8d 14 c2          	lea    (%rdx,%rax,8),%r10
140040270:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140040277:	00 00 00 00
14004027b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140040280:	4c 8b 0a             	mov    (%rdx),%r9
140040283:	4d 85 c9             	test   %r9,%r9
140040286:	74 1a                	je     0x1400402a2
140040288:	41 8b 01             	mov    (%r9),%eax
14004028b:	41 89 c0             	mov    %eax,%r8d
14004028e:	83 e0 0f             	and    $0xf,%eax
140040291:	41 c1 e8 04          	shr    $0x4,%r8d
140040295:	41 21 c8             	and    %ecx,%r8d
140040298:	41 c1 e0 04          	shl    $0x4,%r8d
14004029c:	44 09 c0             	or     %r8d,%eax
14004029f:	41 89 01             	mov    %eax,(%r9)
1400402a2:	48 83 c2 08          	add    $0x8,%rdx
1400402a6:	4c 39 d2             	cmp    %r10,%rdx
1400402a9:	75 d5                	jne    0x140040280
1400402ab:	c3                   	ret
1400402ac:	0f 1f 40 00          	nopl   0x0(%rax)
1400402b0:	48 8b 41 18          	mov    0x18(%rcx),%rax
1400402b4:	48 63 48 14          	movslq 0x14(%rax),%rcx
1400402b8:	85 c9                	test   %ecx,%ecx
1400402ba:	7e 4e                	jle    0x14004030a
1400402bc:	48 8b 40 08          	mov    0x8(%rax),%rax
1400402c0:	f7 d2                	not    %edx
1400402c2:	4c 8d 14 c8          	lea    (%rax,%rcx,8),%r10
1400402c6:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
1400402cd:	00 00 00
1400402d0:	48 8b 08             	mov    (%rax),%rcx
1400402d3:	48 85 c9             	test   %rcx,%rcx
1400402d6:	74 29                	je     0x140040301
1400402d8:	44 0f b6 01          	movzbl (%rcx),%r8d
1400402dc:	41 83 e0 0e          	and    $0xe,%r8d
1400402e0:	41 80 f8 02          	cmp    $0x2,%r8b
1400402e4:	75 1b                	jne    0x140040301
1400402e6:	44 8b 01             	mov    (%rcx),%r8d
1400402e9:	45 89 c1             	mov    %r8d,%r9d
1400402ec:	41 83 e0 0f          	and    $0xf,%r8d
1400402f0:	41 c1 e9 04          	shr    $0x4,%r9d
1400402f4:	41 21 d1             	and    %edx,%r9d
1400402f7:	41 c1 e1 04          	shl    $0x4,%r9d
1400402fb:	45 09 c8             	or     %r9d,%r8d
1400402fe:	44 89 01             	mov    %r8d,(%rcx)
140040301:	48 83 c0 08          	add    $0x8,%rax
140040305:	4c 39 d0             	cmp    %r10,%rax
140040308:	75 c6                	jne    0x1400402d0
14004030a:	c3                   	ret
14004030b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140040310:	57                   	push   %rdi
140040311:	56                   	push   %rsi
140040312:	53                   	push   %rbx
140040313:	48 83 ec 20          	sub    $0x20,%rsp
140040317:	48 89 ce             	mov    %rcx,%rsi
14004031a:	b9 78 00 00 00       	mov    $0x78,%ecx
14004031f:	e8 fc a6 08 00       	call   0x1400caa20
140040324:	48 8d 78 10          	lea    0x10(%rax),%rdi
140040328:	48 89 c3             	mov    %rax,%rbx
14004032b:	48 c7 40 08 00 00 00 	movq   $0x0,0x8(%rax)
140040332:	00
140040333:	48 83 e7 f8          	and    $0xfffffffffffffff8,%rdi
140040337:	48 c7 40 70 00 00 00 	movq   $0x0,0x70(%rax)
14004033e:	00
14004033f:	29 f8                	sub    %edi,%eax
140040341:	8d 48 78             	lea    0x78(%rax),%ecx
140040344:	31 c0                	xor    %eax,%eax
140040346:	c1 e9 03             	shr    $0x3,%ecx
140040349:	f3 48 ab             	rep stos %rax,%es:(%rdi)
14004034c:	48 89 33             	mov    %rsi,(%rbx)
14004034f:	e8 8c 62 0c 00       	call   0x1401065e0
140040354:	48 89 43 18          	mov    %rax,0x18(%rbx)
140040358:	e8 83 62 0c 00       	call   0x1401065e0
14004035d:	48 89 43 20          	mov    %rax,0x20(%rbx)
140040361:	e8 7a 62 0c 00       	call   0x1401065e0
140040366:	48 89 43 28          	mov    %rax,0x28(%rbx)
14004036a:	e8 71 62 0c 00       	call   0x1401065e0
14004036f:	48 89 43 30          	mov    %rax,0x30(%rbx)
140040373:	e8 68 62 0c 00       	call   0x1401065e0
140040378:	ba 08 00 00 00       	mov    $0x8,%edx
14004037d:	b9 01 00 00 00       	mov    $0x1,%ecx
140040382:	c7 43 50 ff ff ff ff 	movl   $0xffffffff,0x50(%rbx)
140040389:	48 89 43 38          	mov    %rax,0x38(%rbx)
14004038d:	e8 0e a9 08 00       	call   0x1400caca0
140040392:	48 89 43 58          	mov    %rax,0x58(%rbx)
140040396:	e8 75 3e 0e 00       	call   0x140124210
14004039b:	48 89 43 70          	mov    %rax,0x70(%rbx)
14004039f:	48 89 d8             	mov    %rbx,%rax
1400403a2:	48 83 c4 20          	add    $0x20,%rsp
1400403a6:	5b                   	pop    %rbx
1400403a7:	5e                   	pop    %rsi
1400403a8:	5f                   	pop    %rdi
1400403a9:	c3                   	ret
1400403aa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1400403b0:	57                   	push   %rdi
1400403b1:	53                   	push   %rbx
1400403b2:	48 83 ec 28          	sub    $0x28,%rsp
1400403b6:	b9 d8 00 00 00       	mov    $0xd8,%ecx
1400403bb:	e8 60 a6 08 00       	call   0x1400caa20
1400403c0:	45 31 c9             	xor    %r9d,%r9d
1400403c3:	45 31 c0             	xor    %r8d,%r8d
1400403c6:	48 8d 15 33 ee ff ff 	lea    -0x11cd(%rip),%rdx        # 0x14003f200
1400403cd:	48 8d 78 08          	lea    0x8(%rax),%rdi
1400403d1:	48 89 c1             	mov    %rax,%rcx
1400403d4:	48 89 c3             	mov    %rax,%rbx
1400403d7:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
1400403de:	48 c7 80 d0 00 00 00 	movq   $0x0,0xd0(%rax)
1400403e5:	00 00 00 00
1400403e9:	48 83 e7 f8          	and    $0xfffffffffffffff8,%rdi
1400403ed:	31 c0                	xor    %eax,%eax
1400403ef:	48 29 f9             	sub    %rdi,%rcx
1400403f2:	81 c1 d8 00 00 00    	add    $0xd8,%ecx
1400403f8:	c1 e9 03             	shr    $0x3,%ecx
1400403fb:	f3 48 ab             	rep stos %rax,%es:(%rdi)
1400403fe:	48 8d 83 80 00 00 00 	lea    0x80(%rbx),%rax
140040405:	48 8d 8b a0 00 00 00 	lea    0xa0(%rbx),%rcx
14004040c:	66 48 0f 6e c0       	movq   %rax,%xmm0
140040411:	66 0f 6c c0          	punpcklqdq %xmm0,%xmm0
140040415:	0f 11 83 80 00 00 00 	movups %xmm0,0x80(%rbx)
14004041c:	e8 9f e7 fe ff       	call   0x14002ebc0
140040421:	48 8d 4b 38          	lea    0x38(%rbx),%rcx
140040425:	ff 15 8d ed 26 00    	call   *0x26ed8d(%rip)        # 0x1402af1b8
14004042b:	48 89 d8             	mov    %rbx,%rax
14004042e:	48 83 c4 28          	add    $0x28,%rsp
140040432:	5b                   	pop    %rbx
140040433:	5f                   	pop    %rdi
140040434:	c3                   	ret
140040435:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14004043c:	00 00 00 00