14016405c:	48 85 d2             	test   %rdx,%rdx
14016405f:	74 14                	je     0x140164075
140164061:	48 8b 42 08          	mov    0x8(%rdx),%rax
140164065:	48 63 48 04          	movslq 0x4(%rax),%rcx
140164069:	48 83 c2 08          	add    $0x8,%rdx
14016406d:	48 03 ca             	add    %rdx,%rcx
140164070:	48 8b 01             	mov    (%rcx),%rax
140164073:	ff 10                	call   *(%rax)
140164075:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
14016407a:	e8 71 02 00 00       	call   0x1401642f0
14016407f:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
140164083:	48 ff c7             	inc    %rdi
140164086:	48 3b fd             	cmp    %rbp,%rdi
140164089:	72 c5                	jb     0x140164050
14016408b:	49 8b 46 40          	mov    0x40(%r14),%rax
14016408f:	4c 8b c6             	mov    %rsi,%r8
140164092:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
140164097:	49 8b ce             	mov    %r14,%rcx
14016409a:	ff d0                	call   *%rax
14016409c:	48 8b 3b             	mov    (%rbx),%rdi
14016409f:	48 8b 6b 08          	mov    0x8(%rbx),%rbp
1401640a3:	48 3b fd             	cmp    %rbp,%rdi
1401640a6:	74 2e                	je     0x1401640d6
1401640a8:	48 8b 17             	mov    (%rdi),%rdx
1401640ab:	48 85 d2             	test   %rdx,%rdx
1401640ae:	74 16                	je     0x1401640c6
1401640b0:	48 8b 42 08          	mov    0x8(%rdx),%rax
1401640b4:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401640b8:	48 83 c2 08          	add    $0x8,%rdx
1401640bc:	48 03 ca             	add    %rdx,%rcx
1401640bf:	48 8b 01             	mov    (%rcx),%rax
1401640c2:	ff 50 08             	call   *0x8(%rax)
1401640c5:	90                   	nop
1401640c6:	48 83 c7 08          	add    $0x8,%rdi
1401640ca:	48 3b fd             	cmp    %rbp,%rdi
1401640cd:	75 d9                	jne    0x1401640a8
1401640cf:	48 8b 03             	mov    (%rbx),%rax
1401640d2:	48 89 43 08          	mov    %rax,0x8(%rbx)
1401640d6:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
1401640db:	48 85 c0             	test   %rax,%rax
1401640de:	74 77                	je     0x140164157
1401640e0:	48 85 f6             	test   %rsi,%rsi
1401640e3:	74 72                	je     0x140164157
1401640e5:	49 8b ff             	mov    %r15,%rdi
1401640e8:	48 85 c0             	test   %rax,%rax
1401640eb:	74 62                	je     0x14016414f
1401640ed:	0f 1f 00             	nopl   (%rax)
1401640f0:	48 8b 14 fe          	mov    (%rsi,%rdi,8),%rdx
1401640f4:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1401640f9:	e8 a2 02 00 00       	call   0x1401643a0
1401640fe:	90                   	nop
1401640ff:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140164103:	48 3b 53 10          	cmp    0x10(%rbx),%rdx
140164107:	74 10                	je     0x140164119
140164109:	48 8b 08             	mov    (%rax),%rcx
14016410c:	48 89 0a             	mov    %rcx,(%rdx)
14016410f:	4c 89 38             	mov    %r15,(%rax)
140164112:	48 83 43 08 08       	addq   $0x8,0x8(%rbx)
140164117:	eb 0c                	jmp    0x140164125
140164119:	4c 8b c0             	mov    %rax,%r8
14016411c:	48 8b cb             	mov    %rbx,%rcx
14016411f:	e8 dc c2 ff ff       	call   0x140160400
140164124:	90                   	nop
140164125:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14016412a:	48 85 c0             	test   %rax,%rax
14016412d:	74 16                	je     0x140164145
14016412f:	48 8b 48 08          	mov    0x8(%rax),%rcx
140164133:	48 63 49 04          	movslq 0x4(%rcx),%rcx
140164137:	48 83 c0 08          	add    $0x8,%rax
14016413b:	48 03 c8             	add    %rax,%rcx
14016413e:	48 8b 01             	mov    (%rcx),%rax
140164141:	ff 50 08             	call   *0x8(%rax)
140164144:	90                   	nop
140164145:	48 ff c7             	inc    %rdi
140164148:	48 3b 7c 24 50       	cmp    0x50(%rsp),%rdi
14016414d:	72 a1                	jb     0x1401640f0
14016414f:	48 8b ce             	mov    %rsi,%rcx
140164152:	e8 f5 24 02 00       	call   0x14018664c
140164157:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14016415c:	48 83 c4 20          	add    $0x20,%rsp
140164160:	41 5f                	pop    %r15
140164162:	41 5e                	pop    %r14
140164164:	5f                   	pop    %rdi
140164165:	5e                   	pop    %rsi
140164166:	5d                   	pop    %rbp
140164167:	c3                   	ret
140164168:	cc                   	int3
140164169:	cc                   	int3
14016416a:	cc                   	int3
14016416b:	cc                   	int3
14016416c:	cc                   	int3
14016416d:	cc                   	int3
14016416e:	cc                   	int3
14016416f:	cc                   	int3
140164170:	40 53                	rex push %rbx
140164172:	48 83 ec 20          	sub    $0x20,%rsp
140164176:	48 8b d9             	mov    %rcx,%rbx
140164179:	48 8b 49 e0          	mov    -0x20(%rcx),%rcx
14016417d:	48 8b 41 10          	mov    0x10(%rcx),%rax
140164181:	48 85 c0             	test   %rax,%rax
140164184:	74 02                	je     0x140164188
140164186:	ff d0                	call   *%rax
140164188:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14016418d:	f0 0f c1 43 f8       	lock xadd %eax,-0x8(%rbx)
140164192:	83 f8 01             	cmp    $0x1,%eax
140164195:	75 44                	jne    0x1401641db
140164197:	48 8d 4b d8          	lea    -0x28(%rbx),%rcx
14016419b:	48 85 c9             	test   %rcx,%rcx
14016419e:	74 33                	je     0x1401641d3
1401641a0:	48 8d 05 79 96 0b 00 	lea    0xb9679(%rip),%rax        # 0x14021d820
1401641a7:	48 89 43 e8          	mov    %rax,-0x18(%rbx)
1401641ab:	48 8b 43 f0          	mov    -0x10(%rbx),%rax
1401641af:	48 63 50 04          	movslq 0x4(%rax),%rdx
1401641b3:	48 8d 05 9e 96 0b 00 	lea    0xb969e(%rip),%rax        # 0x14021d858
1401641ba:	48 89 44 1a f0       	mov    %rax,-0x10(%rdx,%rbx,1)
1401641bf:	48 8d 05 22 7d 0d 00 	lea    0xd7d22(%rip),%rax        # 0x14023bee8
1401641c6:	ba 30 00 00 00       	mov    $0x30,%edx
1401641cb:	48 89 03             	mov    %rax,(%rbx)
1401641ce:	e8 79 24 02 00       	call   0x14018664c
1401641d3:	b0 01                	mov    $0x1,%al
1401641d5:	48 83 c4 20          	add    $0x20,%rsp
1401641d9:	5b                   	pop    %rbx
1401641da:	c3                   	ret
1401641db:	32 c0                	xor    %al,%al
1401641dd:	48 83 c4 20          	add    $0x20,%rsp
1401641e1:	5b                   	pop    %rbx
1401641e2:	c3                   	ret
1401641e3:	cc                   	int3
1401641e4:	cc                   	int3
1401641e5:	cc                   	int3
1401641e6:	cc                   	int3
1401641e7:	cc                   	int3
1401641e8:	cc                   	int3
1401641e9:	cc                   	int3
1401641ea:	cc                   	int3
1401641eb:	cc                   	int3
1401641ec:	cc                   	int3
1401641ed:	cc                   	int3
1401641ee:	cc                   	int3
1401641ef:	cc                   	int3
1401641f0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1401641f5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401641fa:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1401641ff:	57                   	push   %rdi
140164200:	48 83 ec 20          	sub    $0x20,%rsp
140164204:	48 8b da             	mov    %rdx,%rbx
140164207:	48 8b 79 f8          	mov    -0x8(%rcx),%rdi
14016420b:	48 83 3f 50          	cmpq   $0x50,(%rdi)
14016420f:	0f 82 86 00 00 00    	jb     0x14016429b
140164215:	48 8b 77 48          	mov    0x48(%rdi),%rsi
140164219:	48 85 f6             	test   %rsi,%rsi
14016421c:	74 7d                	je     0x14016429b
14016421e:	48 8b 0a             	mov    (%rdx),%rcx
140164221:	48 85 c9             	test   %rcx,%rcx
140164224:	75 12                	jne    0x140164238
140164226:	32 c0                	xor    %al,%al
140164228:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14016422d:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140164232:	48 83 c4 20          	add    $0x20,%rsp
140164236:	5f                   	pop    %rdi
140164237:	c3                   	ret
140164238:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
14016423d:	48 8b 41 08          	mov    0x8(%rcx),%rax
140164241:	48 63 50 04          	movslq 0x4(%rax),%rdx
140164245:	48 83 c1 08          	add    $0x8,%rcx
140164249:	48 03 ca             	add    %rdx,%rcx
14016424c:	48 8b 01             	mov    (%rcx),%rax
14016424f:	ff 10                	call   *(%rax)
140164251:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140164256:	e8 95 00 00 00       	call   0x1401642f0
14016425b:	48 8b d0             	mov    %rax,%rdx
14016425e:	48 8b cf             	mov    %rdi,%rcx
140164261:	ff d6                	call   *%rsi
140164263:	85 c0                	test   %eax,%eax
140164265:	40 0f 95 c7          	setne  %dil
140164269:	4c 8b 03             	mov    (%rbx),%r8
14016426c:	4d 85 c0             	test   %r8,%r8
14016426f:	74 16                	je     0x140164287
140164271:	49 8b 48 08          	mov    0x8(%r8),%rcx
140164275:	48 63 49 04          	movslq 0x4(%rcx),%rcx
140164279:	49 83 c0 08          	add    $0x8,%r8
14016427d:	49 03 c8             	add    %r8,%rcx
140164280:	48 8b 11             	mov    (%rcx),%rdx
140164283:	ff 52 08             	call   *0x8(%rdx)
140164286:	90                   	nop
140164287:	40 0f b6 c7          	movzbl %dil,%eax
14016428b:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140164290:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140164295:	48 83 c4 20          	add    $0x20,%rsp
140164299:	5f                   	pop    %rdi
14016429a:	c3                   	ret
14016429b:	48 8b 12             	mov    (%rdx),%rdx
14016429e:	48 85 d2             	test   %rdx,%rdx
1401642a1:	74 16                	je     0x1401642b9
1401642a3:	48 8b 42 08          	mov    0x8(%rdx),%rax
1401642a7:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401642ab:	48 83 c2 08          	add    $0x8,%rdx
1401642af:	48 03 ca             	add    %rdx,%rcx
1401642b2:	48 8b 01             	mov    (%rcx),%rax
1401642b5:	ff 50 08             	call   *0x8(%rax)
1401642b8:	90                   	nop
1401642b9:	32 c0                	xor    %al,%al
1401642bb:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1401642c0:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1401642c5:	48 83 c4 20          	add    $0x20,%rsp
1401642c9:	5f                   	pop    %rdi
1401642ca:	c3                   	ret
1401642cb:	cc                   	int3
1401642cc:	cc                   	int3
1401642cd:	cc                   	int3
1401642ce:	cc                   	int3
1401642cf:	cc                   	int3
1401642d0:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1401642d4:	48 83 39 60          	cmpq   $0x60,(%rcx)
1401642d8:	72 0c                	jb     0x1401642e6
1401642da:	48 8b 41 58          	mov    0x58(%rcx),%rax
1401642de:	48 85 c0             	test   %rax,%rax
1401642e1:	74 03                	je     0x1401642e6
1401642e3:	48 ff e0             	rex.W jmp *%rax
1401642e6:	c3                   	ret
1401642e7:	cc                   	int3
1401642e8:	cc                   	int3
1401642e9:	cc                   	int3
1401642ea:	cc                   	int3
1401642eb:	cc                   	int3
1401642ec:	cc                   	int3
1401642ed:	cc                   	int3
1401642ee:	cc                   	int3
1401642ef:	cc                   	int3
1401642f0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401642f5:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1401642fa:	57                   	push   %rdi
1401642fb:	48 83 ec 20          	sub    $0x20,%rsp
1401642ff:	48 8b f9             	mov    %rcx,%rdi
140164302:	48 8b 19             	mov    (%rcx),%rbx
140164305:	48 85 db             	test   %rbx,%rbx
140164308:	75 0d                	jne    0x140164317
14016430a:	33 c0                	xor    %eax,%eax
14016430c:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140164311:	48 83 c4 20          	add    $0x20,%rsp
140164315:	5f                   	pop    %rdi
140164316:	c3                   	ret
140164317:	8b 4b f0             	mov    -0x10(%rbx),%ecx
14016431a:	3b 0d a0 6e 14 00    	cmp    0x146ea0(%rip),%ecx        # 0x1402ab1c0
140164320:	74 37                	je     0x140164359
140164322:	48 8b d3             	mov    %rbx,%rdx
140164325:	e8 b6 25 f6 ff       	call   0x1400c68e0
14016432a:	48 8b d8             	mov    %rax,%rbx
14016432d:	4c 8b 07             	mov    (%rdi),%r8
140164330:	4d 85 c0             	test   %r8,%r8
140164333:	74 16                	je     0x14016434b
140164335:	49 8b 48 08          	mov    0x8(%r8),%rcx
140164339:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14016433d:	49 83 c0 08          	add    $0x8,%r8
140164341:	49 03 c8             	add    %r8,%rcx
140164344:	48 8b 11             	mov    (%rcx),%rdx
140164347:	ff 52 08             	call   *0x8(%rdx)
14016434a:	90                   	nop
14016434b:	48 8b c3             	mov    %rbx,%rax
14016434e:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140164353:	48 83 c4 20          	add    $0x20,%rsp
140164357:	5f                   	pop    %rdi
140164358:	c3                   	ret
140164359:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
14016435d:	48 8b 41 08          	mov    0x8(%rcx),%rax
140164361:	48 85 c0             	test   %rax,%rax
140164364:	74 02                	je     0x140164368
140164366:	ff d0                	call   *%rax
140164368:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
14016436c:	4c 8b 07             	mov    (%rdi),%r8
14016436f:	4d 85 c0             	test   %r8,%r8
140164372:	74 16                	je     0x14016438a
140164374:	49 8b 48 08          	mov    0x8(%r8),%rcx
140164378:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14016437c:	49 83 c0 08          	add    $0x8,%r8
140164380:	49 03 c8             	add    %r8,%rcx
140164383:	48 8b 11             	mov    (%rcx),%rdx
140164386:	ff 52 08             	call   *0x8(%rdx)
140164389:	90                   	nop
14016438a:	48 8b c3             	mov    %rbx,%rax
14016438d:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140164392:	48 83 c4 20          	add    $0x20,%rsp
140164396:	5f                   	pop    %rdi
140164397:	c3                   	ret
140164398:	cc                   	int3
140164399:	cc                   	int3
14016439a:	cc                   	int3
14016439b:	cc                   	int3
14016439c:	cc                   	int3
14016439d:	cc                   	int3
14016439e:	cc                   	int3
14016439f:	cc                   	int3
1401643a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401643a5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1401643aa:	57                   	push   %rdi
1401643ab:	48 83 ec 30          	sub    $0x30,%rsp
1401643af:	48 8b da             	mov    %rdx,%rbx
1401643b2:	48 8b f1             	mov    %rcx,%rsi
1401643b5:	48 85 d2             	test   %rdx,%rdx
1401643b8:	75 16                	jne    0x1401643d0
1401643ba:	48 89 11             	mov    %rdx,(%rcx)
1401643bd:	48 8b c1             	mov    %rcx,%rax
1401643c0:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1401643c5:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1401643ca:	48 83 c4 30          	add    $0x30,%rsp
1401643ce:	5f                   	pop    %rdi
1401643cf:	c3                   	ret
1401643d0:	b9 30 00 00 00       	mov    $0x30,%ecx
1401643d5:	e8 16 1f 02 00       	call   0x1401862f0
1401643da:	48 8b f8             	mov    %rax,%rdi
1401643dd:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1401643e2:	48 85 c0             	test   %rax,%rax
1401643e5:	74 10                	je     0x1401643f7
1401643e7:	48 8d 48 10          	lea    0x10(%rax),%rcx
1401643eb:	ba 01 00 00 00       	mov    $0x1,%edx
1401643f0:	e8 5b 1b 00 00       	call   0x140165f50
1401643f5:	eb 02                	jmp    0x1401643f9
1401643f7:	33 ff                	xor    %edi,%edi
1401643f9:	8b 05 c1 6d 14 00    	mov    0x146dc1(%rip),%eax        # 0x1402ab1c0
1401643ff:	89 07                	mov    %eax,(%rdi)
140164401:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
140164405:	48 8d 5f 10          	lea    0x10(%rdi),%rbx
140164409:	48 89 5c 24 48       	mov    %rbx,0x48(%rsp)
14016440e:	48 85 db             	test   %rbx,%rbx
140164411:	74 15                	je     0x140164428
140164413:	48 8b 43 08          	mov    0x8(%rbx),%rax
140164417:	48 63 48 04          	movslq 0x4(%rax),%rcx
14016441b:	48 83 c1 08          	add    $0x8,%rcx
14016441f:	48 03 cb             	add    %rbx,%rcx
140164422:	48 8b 01             	mov    (%rcx),%rax
140164425:	ff 10                	call   *(%rax)
140164427:	90                   	nop
140164428:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14016442c:	48 8b 41 10          	mov    0x10(%rcx),%rax
140164430:	48 85 c0             	test   %rax,%rax
140164433:	74 02                	je     0x140164437
140164435:	ff d0                	call   *%rax
140164437:	48 89 1e             	mov    %rbx,(%rsi)
14016443a:	48 8b c6             	mov    %rsi,%rax
14016443d:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140164442:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140164447:	48 83 c4 30          	add    $0x30,%rsp
14016444b:	5f                   	pop    %rdi
14016444c:	c3                   	ret
14016444d:	cc                   	int3
14016444e:	cc                   	int3
14016444f:	cc                   	int3
140164450:	48 8d 05 31 94 0b 00 	lea    0xb9431(%rip),%rax        # 0x14021d888
140164457:	0f 57 c0             	xorps  %xmm0,%xmm0
14016445a:	48 89 01             	mov    %rax,(%rcx)