14017805a:	33 db                	xor    %ebx,%ebx
14017805c:	48 8b f1             	mov    %rcx,%rsi
14017805f:	45 85 c0             	test   %r8d,%r8d
140178062:	75 6f                	jne    0x1401780d3
140178064:	48 85 d2             	test   %rdx,%rdx
140178067:	75 6a                	jne    0x1401780d3
140178069:	39 59 50             	cmp    %ebx,0x50(%rcx)
14017806c:	75 0d                	jne    0x14017807b
14017806e:	33 c0                	xor    %eax,%eax
140178070:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140178075:	48 83 c4 20          	add    $0x20,%rsp
140178079:	5e                   	pop    %rsi
14017807a:	c3                   	ret
14017807b:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
140178080:	48 8b 79 10          	mov    0x10(%rcx),%rdi
140178084:	48 85 ff             	test   %rdi,%rdi
140178087:	74 21                	je     0x1401780aa
140178089:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140178090:	48 8b cf             	mov    %rdi,%rcx
140178093:	e8 f8 fb ff ff       	call   0x140177c90
140178098:	48 8b 7f 10          	mov    0x10(%rdi),%rdi
14017809c:	85 c0                	test   %eax,%eax
14017809e:	0f 45 d8             	cmovne %eax,%ebx
1401780a1:	48 85 ff             	test   %rdi,%rdi
1401780a4:	75 ea                	jne    0x140178090
1401780a6:	85 db                	test   %ebx,%ebx
1401780a8:	75 17                	jne    0x1401780c1
1401780aa:	c7 46 50 00 00 00 00 	movl   $0x0,0x50(%rsi)
1401780b1:	48 c7 46 58 00 00 00 	movq   $0x0,0x58(%rsi)
1401780b8:	00
1401780b9:	48 c7 46 60 00 00 00 	movq   $0x0,0x60(%rsi)
1401780c0:	00
1401780c1:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1401780c6:	8b c3                	mov    %ebx,%eax
1401780c8:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401780cd:	48 83 c4 20          	add    $0x20,%rsp
1401780d1:	5e                   	pop    %rsi
1401780d2:	c3                   	ret
1401780d3:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401780d8:	b8 02 00 00 00       	mov    $0x2,%eax
1401780dd:	48 83 c4 20          	add    $0x20,%rsp
1401780e1:	5e                   	pop    %rsi
1401780e2:	c3                   	ret
1401780e3:	cc                   	int3
1401780e4:	cc                   	int3
1401780e5:	cc                   	int3
1401780e6:	cc                   	int3
1401780e7:	cc                   	int3
1401780e8:	cc                   	int3
1401780e9:	cc                   	int3
1401780ea:	cc                   	int3
1401780eb:	cc                   	int3
1401780ec:	cc                   	int3
1401780ed:	cc                   	int3
1401780ee:	cc                   	int3
1401780ef:	cc                   	int3
1401780f0:	48 85 c9             	test   %rcx,%rcx
1401780f3:	0f 84 9e 00 00 00    	je     0x140178197
1401780f9:	57                   	push   %rdi
1401780fa:	48 83 ec 20          	sub    $0x20,%rsp
1401780fe:	48 8b 41 08          	mov    0x8(%rcx),%rax
140178102:	48 8b f9             	mov    %rcx,%rdi
140178105:	48 85 c0             	test   %rax,%rax
140178108:	0f 84 84 00 00 00    	je     0x140178192
14017810e:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140178113:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
140178118:	33 ed                	xor    %ebp,%ebp
14017811a:	48 89 68 38          	mov    %rbp,0x38(%rax)
14017811e:	48 8b 59 08          	mov    0x8(%rcx),%rbx
140178122:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140178127:	48 8b 43 38          	mov    0x38(%rbx),%rax
14017812b:	48 85 c0             	test   %rax,%rax
14017812e:	74 06                	je     0x140178136
140178130:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
140178134:	ff d0                	call   *%rax
140178136:	83 63 1c fb          	andl   $0xfffffffb,0x1c(%rbx)
14017813a:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14017813f:	48 89 6b 28          	mov    %rbp,0x28(%rbx)
140178143:	48 89 6b 30          	mov    %rbp,0x30(%rbx)
140178147:	48 89 6b 38          	mov    %rbp,0x38(%rbx)
14017814b:	48 89 6b 20          	mov    %rbp,0x20(%rbx)
14017814f:	48 89 6b 48          	mov    %rbp,0x48(%rbx)
140178153:	48 89 6b 78          	mov    %rbp,0x78(%rbx)
140178157:	48 89 ab a0 00 00 00 	mov    %rbp,0xa0(%rbx)
14017815e:	48 89 ab a8 00 00 00 	mov    %rbp,0xa8(%rbx)
140178165:	48 89 ab b0 00 00 00 	mov    %rbp,0xb0(%rbx)
14017816c:	89 6b 18             	mov    %ebp,0x18(%rbx)
14017816f:	89 ab 80 00 00 00    	mov    %ebp,0x80(%rbx)
140178175:	48 89 5b 40          	mov    %rbx,0x40(%rbx)
140178179:	48 c7 83 b8 01 00 00 	movq   $0x1,0x1b8(%rbx)
140178180:	01 00 00 00
140178184:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140178189:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
14017818d:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140178192:	48 83 c4 20          	add    $0x20,%rsp
140178196:	5f                   	pop    %rdi
140178197:	c3                   	ret
140178198:	cc                   	int3
140178199:	cc                   	int3
14017819a:	cc                   	int3
14017819b:	cc                   	int3
14017819c:	cc                   	int3
14017819d:	cc                   	int3
14017819e:	cc                   	int3
14017819f:	cc                   	int3
1401781a0:	48 83 ec 38          	sub    $0x38,%rsp
1401781a4:	48 85 c9             	test   %rcx,%rcx
1401781a7:	75 07                	jne    0x1401781b0
1401781a9:	33 c0                	xor    %eax,%eax
1401781ab:	48 83 c4 38          	add    $0x38,%rsp
1401781af:	c3                   	ret
1401781b0:	48 89 6c 24 48       	mov    %rbp,0x48(%rsp)
1401781b5:	48 c7 c5 ff ff ff ff 	mov    $0xffffffffffffffff,%rbp
1401781bc:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
1401781c1:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1401781c6:	48 ff c5             	inc    %rbp
1401781c9:	80 7c 29 20 00       	cmpb   $0x0,0x20(%rcx,%rbp,1)
1401781ce:	75 f6                	jne    0x1401781c6
1401781d0:	48 8b 71 10          	mov    0x10(%rcx),%rsi
1401781d4:	48 83 c5 06          	add    $0x6,%rbp
1401781d8:	4c 8b fd             	mov    %rbp,%r15
1401781db:	48 85 f6             	test   %rsi,%rsi
1401781de:	0f 84 1e 01 00 00    	je     0x140178302
1401781e4:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1401781e9:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1401781ee:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
1401781f3:	83 7e 18 04          	cmpl   $0x4,0x18(%rsi)
1401781f7:	75 0d                	jne    0x140178206
1401781f9:	48 8b 4e 40          	mov    0x40(%rsi),%rcx
1401781fd:	e8 9e ff ff ff       	call   0x1401781a0
140178202:	48 89 46 78          	mov    %rax,0x78(%rsi)
140178206:	48 8b 86 98 00 00 00 	mov    0x98(%rsi),%rax
14017820d:	4c 8b 76 78          	mov    0x78(%rsi),%r14
140178211:	48 85 c0             	test   %rax,%rax
140178214:	74 09                	je     0x14017821f
140178216:	48 8b ce             	mov    %rsi,%rcx
140178219:	ff 50 10             	call   *0x10(%rax)
14017821c:	4c 8b f0             	mov    %rax,%r14
14017821f:	4d 85 f6             	test   %r14,%r14
140178222:	0f 88 ad 00 00 00    	js     0x1401782d5
140178228:	f6 46 1c 02          	testb  $0x2,0x1c(%rsi)
14017822c:	0f 85 a8 00 00 00    	jne    0x1401782da
140178232:	48 8b 56 50          	mov    0x50(%rsi),%rdx
140178236:	45 33 c0             	xor    %r8d,%r8d
140178239:	48 85 d2             	test   %rdx,%rdx
14017823c:	74 2b                	je     0x140178269
14017823e:	66 90                	xchg   %ax,%ax
140178240:	48 8b 0a             	mov    (%rdx),%rcx
140178243:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
14017824a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140178250:	48 ff c0             	inc    %rax
140178253:	80 3c 01 00          	cmpb   $0x0,(%rcx,%rax,1)
140178257:	75 f7                	jne    0x140178250
140178259:	48 8b 52 08          	mov    0x8(%rdx),%rdx
14017825d:	49 83 c0 02          	add    $0x2,%r8
140178261:	4c 03 c0             	add    %rax,%r8
140178264:	48 85 d2             	test   %rdx,%rdx
140178267:	75 d7                	jne    0x140178240
140178269:	48 8b 5e 58          	mov    0x58(%rsi),%rbx
14017826d:	4d 03 f0             	add    %r8,%r14
140178270:	33 ff                	xor    %edi,%edi
140178272:	48 85 db             	test   %rbx,%rbx
140178275:	74 52                	je     0x1401782c9
140178277:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14017827e:	00 00
140178280:	48 8b 0b             	mov    (%rbx),%rcx
140178283:	48 8d 15 d6 b8 1b 00 	lea    0x1bb8d6(%rip),%rdx        # 0x140333b60
14017828a:	41 b8 0c 00 00 00    	mov    $0xc,%r8d
140178290:	e8 0b a8 fd ff       	call   0x140152aa0
140178295:	85 c0                	test   %eax,%eax
140178297:	74 09                	je     0x1401782a2
140178299:	48 8b 03             	mov    (%rbx),%rax
14017829c:	80 78 0c 3a          	cmpb   $0x3a,0xc(%rax)
1401782a0:	74 1e                	je     0x1401782c0
1401782a2:	48 8b 0b             	mov    (%rbx),%rcx
1401782a5:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
1401782ac:	0f 1f 40 00          	nopl   0x0(%rax)
1401782b0:	48 ff c0             	inc    %rax
1401782b3:	80 3c 01 00          	cmpb   $0x0,(%rcx,%rax,1)
1401782b7:	75 f7                	jne    0x1401782b0
1401782b9:	48 83 c7 02          	add    $0x2,%rdi
1401782bd:	48 03 f8             	add    %rax,%rdi
1401782c0:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
1401782c4:	48 85 db             	test   %rbx,%rbx
1401782c7:	75 b7                	jne    0x140178280
1401782c9:	49 83 c6 02          	add    $0x2,%r14
1401782cd:	4c 03 f7             	add    %rdi,%r14
1401782d0:	4d 85 f6             	test   %r14,%r14
1401782d3:	79 05                	jns    0x1401782da
1401782d5:	4d 8b fe             	mov    %r14,%r15
1401782d8:	eb 0c                	jmp    0x1401782e6
1401782da:	4d 85 ff             	test   %r15,%r15
1401782dd:	78 07                	js     0x1401782e6
1401782df:	49 8d 0c 2e          	lea    (%r14,%rbp,1),%rcx
1401782e3:	4c 03 f9             	add    %rcx,%r15
1401782e6:	48 8b 76 10          	mov    0x10(%rsi),%rsi
1401782ea:	48 85 f6             	test   %rsi,%rsi
1401782ed:	0f 85 00 ff ff ff    	jne    0x1401781f3
1401782f3:	4c 8b 74 24 28       	mov    0x28(%rsp),%r14
1401782f8:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1401782fd:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140178302:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140178307:	49 8b c7             	mov    %r15,%rax
14017830a:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
14017830f:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140178314:	48 83 c4 38          	add    $0x38,%rsp
140178318:	c3                   	ret
140178319:	cc                   	int3
14017831a:	cc                   	int3
14017831b:	cc                   	int3
14017831c:	cc                   	int3
14017831d:	cc                   	int3
14017831e:	cc                   	int3
14017831f:	cc                   	int3
140178320:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140178325:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14017832a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14017832f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140178334:	41 56                	push   %r14
140178336:	48 83 ec 30          	sub    $0x30,%rsp
14017833a:	48 8b d9             	mov    %rcx,%rbx
14017833d:	33 ff                	xor    %edi,%edi
14017833f:	48 8b 89 b8 01 00 00 	mov    0x1b8(%rcx),%rcx
140178346:	49 8b f1             	mov    %r9,%rsi
140178349:	49 8b e8             	mov    %r8,%rbp
14017834c:	4c 8b f2             	mov    %rdx,%r14
14017834f:	48 8d 41 ff          	lea    -0x1(%rcx),%rax
140178353:	48 3d fe ff ff 0f    	cmp    $0xffffffe,%rax
140178359:	76 17                	jbe    0x140178372
14017835b:	48 8d 81 fe ff ff ef 	lea    -0x10000002(%rcx),%rax
140178362:	48 3d fc ff ff ef    	cmp    $0xffffffffeffffffc,%rax
140178368:	76 08                	jbe    0x140178372
14017836a:	48 8b c1             	mov    %rcx,%rax
14017836d:	e9 ac 00 00 00       	jmp    0x14017841e
140178372:	48 8b 43 78          	mov    0x78(%rbx),%rax
140178376:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
14017837a:	74 0d                	je     0x140178389
14017837c:	48 39 83 90 00 00 00 	cmp    %rax,0x90(%rbx)
140178383:	0f 8d 8b 00 00 00    	jge    0x140178414
140178389:	8b 43 18             	mov    0x18(%rbx),%eax
14017838c:	83 f8 02             	cmp    $0x2,%eax
14017838f:	74 1d                	je     0x1401783ae
140178391:	83 f8 04             	cmp    $0x4,%eax
140178394:	75 2b                	jne    0x1401783c1
140178396:	4c 8b 4b 40          	mov    0x40(%rbx),%r9
14017839a:	ba 01 00 00 00       	mov    $0x1,%edx
14017839f:	49 8b ce             	mov    %r14,%rcx
1401783a2:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401783a7:	e8 84 fa ff ff       	call   0x140177e30
1401783ac:	eb 42                	jmp    0x1401783f0
1401783ae:	48 8b 4b 48          	mov    0x48(%rbx),%rcx
1401783b2:	48 85 c9             	test   %rcx,%rcx
1401783b5:	74 0a                	je     0x1401783c1
1401783b7:	ff 15 a3 1d 1b 00    	call   *0x1b1da3(%rip)        # 0x14032a160
1401783bd:	85 c0                	test   %eax,%eax
1401783bf:	75 53                	jne    0x140178414
1401783c1:	48 39 7b 28          	cmp    %rdi,0x28(%rbx)
1401783c5:	74 4d                	je     0x140178414
1401783c7:	f6 43 1c 04          	testb  $0x4,0x1c(%rbx)
1401783cb:	75 11                	jne    0x1401783de
1401783cd:	40 38 3e             	cmp    %dil,(%rsi)
1401783d0:	74 09                	je     0x1401783db
1401783d2:	48 c7 c0 fe ff ff ff 	mov    $0xfffffffffffffffe,%rax
1401783d9:	eb 43                	jmp    0x14017841e
1401783db:	c6 06 01             	movb   $0x1,(%rsi)
1401783de:	4c 8b 4b 40          	mov    0x40(%rbx),%r9
1401783e2:	4c 8b c5             	mov    %rbp,%r8
1401783e5:	ba 01 00 00 00       	mov    $0x1,%edx
1401783ea:	49 8b ce             	mov    %r14,%rcx
1401783ed:	ff 53 28             	call   *0x28(%rbx)
1401783f0:	48 8b f8             	mov    %rax,%rdi
1401783f3:	48 a9 fe ff ff ef    	test   $0xffffffffeffffffe,%rax
1401783f9:	75 06                	jne    0x140178401
1401783fb:	48 83 f8 01          	cmp    $0x1,%rax
1401783ff:	75 13                	jne    0x140178414
140178401:	48 83 ff fe          	cmp    $0xfffffffffffffffe,%rdi
140178405:	74 14                	je     0x14017841b
140178407:	48 83 ff ff          	cmp    $0xffffffffffffffff,%rdi
14017840b:	74 07                	je     0x140178414
14017840d:	48 01 bb 90 00 00 00 	add    %rdi,0x90(%rbx)
140178414:	48 89 bb b8 01 00 00 	mov    %rdi,0x1b8(%rbx)
14017841b:	48 8b c7             	mov    %rdi,%rax
14017841e:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140178423:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140178428:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14017842d:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140178432:	48 83 c4 30          	add    $0x30,%rsp
140178436:	41 5e                	pop    %r14
140178438:	c3                   	ret
140178439:	cc                   	int3
14017843a:	cc                   	int3
14017843b:	cc                   	int3
14017843c:	cc                   	int3
14017843d:	cc                   	int3
14017843e:	cc                   	int3
14017843f:	cc                   	int3
140178440:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140178445:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14017844a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14017844f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140178454:	41 56                	push   %r14
140178456:	48 83 ec 20          	sub    $0x20,%rsp
14017845a:	48 8b f1             	mov    %rcx,%rsi
14017845d:	49 8b f9             	mov    %r9,%rdi
140178460:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140178464:	49 8b e8             	mov    %r8,%rbp
140178467:	4c 8b f2             	mov    %rdx,%r14
14017846a:	e8 21 05 00 00       	call   0x140178990
14017846f:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140178474:	4c 8b d0             	mov    %rax,%r10
140178477:	48 3b d8             	cmp    %rax,%rbx
14017847a:	76 08                	jbe    0x140178484
14017847c:	48 2b d8             	sub    %rax,%rbx
14017847f:	48 03 f8             	add    %rax,%rdi
140178482:	eb 2b                	jmp    0x1401784af
140178484:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140178489:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
140178490:	48 ff c0             	inc    %rax
140178493:	80 3c 01 00          	cmpb   $0x0,(%rcx,%rax,1)
140178497:	75 f7                	jne    0x140178490
140178499:	4c 2b d3             	sub    %rbx,%r10
14017849c:	4c 3b d0             	cmp    %rax,%r10
14017849f:	72 04                	jb     0x1401784a5
1401784a1:	33 c0                	xor    %eax,%eax
1401784a3:	eb 26                	jmp    0x1401784cb
1401784a5:	48 8b d8             	mov    %rax,%rbx
1401784a8:	49 8d 3c 0a          	lea    (%r10,%rcx,1),%rdi
1401784ac:	49 2b da             	sub    %r10,%rbx
1401784af:	48 3b dd             	cmp    %rbp,%rbx
1401784b2:	48 8b d7             	mov    %rdi,%rdx
1401784b5:	49 8b ce             	mov    %r14,%rcx
1401784b8:	48 0f 47 dd          	cmova  %rbp,%rbx
1401784bc:	4c 8b c3             	mov    %rbx,%r8
1401784bf:	e8 64 45 18 00       	call   0x1402fca28
1401784c4:	48 01 5e 10          	add    %rbx,0x10(%rsi)
1401784c8:	48 8b c3             	mov    %rbx,%rax
1401784cb:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401784d0:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1401784d5:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1401784da:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1401784df:	48 83 c4 20          	add    $0x20,%rsp
1401784e3:	41 5e                	pop    %r14
1401784e5:	c3                   	ret
1401784e6:	cc                   	int3
1401784e7:	cc                   	int3
1401784e8:	cc                   	int3
1401784e9:	cc                   	int3
1401784ea:	cc                   	int3
1401784eb:	cc                   	int3
1401784ec:	cc                   	int3