140021f9c:	49 89 e8             	mov    %rbp,%r8
140021f9f:	4c 89 e9             	mov    %r13,%rcx
140021fa2:	29 f3                	sub    %esi,%ebx
140021fa4:	d1 fb                	sar    $1,%ebx
140021fa6:	01 f3                	add    %esi,%ebx
140021fa8:	48 63 d3             	movslq %ebx,%rdx
140021fab:	48 8b 3c d0          	mov    (%rax,%rdx,8),%rdi
140021faf:	4c 8d 7f 6c          	lea    0x6c(%rdi),%r15
140021fb3:	4c 89 fa             	mov    %r15,%rdx
140021fb6:	e8 e5 7e 1c 00       	call   0x1401e9ea0
140021fbb:	85 c0                	test   %eax,%eax
140021fbd:	0f 85 cd 00 00 00    	jne    0x140022090
140021fc3:	4c 89 f9             	mov    %r15,%rcx
140021fc6:	e8 cd 7e 1c 00       	call   0x1401e9e98
140021fcb:	48 39 c5             	cmp    %rax,%rbp
140021fce:	0f 83 a6 00 00 00    	jae    0x14002207a
140021fd4:	41 89 de             	mov    %ebx,%r14d
140021fd7:	44 39 f6             	cmp    %r14d,%esi
140021fda:	7c b9                	jl     0x140021f95
140021fdc:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
140021fe1:	83 80 d0 00 00 00 01 	addl   $0x1,0xd0(%rax)
140021fe8:	48 83 fd 8f          	cmp    $0xffffffffffffff8f,%rbp
140021fec:	0f 87 f2 00 00 00    	ja     0x1400220e4
140021ff2:	0f 84 00 01 00 00    	je     0x1400220f8
140021ff8:	48 8d 55 71          	lea    0x71(%rbp),%rdx
140021ffc:	b9 01 00 00 00       	mov    $0x1,%ecx
140022001:	e8 9a 8c 0a 00       	call   0x1400caca0
140022006:	49 89 e8             	mov    %rbp,%r8
140022009:	4c 89 ea             	mov    %r13,%rdx
14002200c:	48 8d 48 6c          	lea    0x6c(%rax),%rcx
140022010:	48 89 c7             	mov    %rax,%rdi
140022013:	e8 d8 7d 1c 00       	call   0x1401e9df0
140022018:	41 8b 44 24 38       	mov    0x38(%r12),%eax
14002201d:	45 8b 44 24 3c       	mov    0x3c(%r12),%r8d
140022022:	49 8b 0c 24          	mov    (%r12),%rcx
140022026:	8d 50 01             	lea    0x1(%rax),%edx
140022029:	41 39 d0             	cmp    %edx,%r8d
14002202c:	73 2b                	jae    0x140022059
14002202e:	43 8d 44 40 30       	lea    0x30(%r8,%r8,2),%eax
140022033:	d1 e8                	shr    $1,%eax
140022035:	39 d0                	cmp    %edx,%eax
140022037:	48 0f 42 c2          	cmovb  %rdx,%rax
14002203b:	41 89 44 24 3c       	mov    %eax,0x3c(%r12)
140022040:	48 8d 14 c5 00 00 00 	lea    0x0(,%rax,8),%rdx
140022047:	00
140022048:	e8 f3 8b 0a 00       	call   0x1400cac40
14002204d:	49 89 04 24          	mov    %rax,(%r12)
140022051:	48 89 c1             	mov    %rax,%rcx
140022054:	41 8b 44 24 38       	mov    0x38(%r12),%eax
140022059:	41 89 c0             	mov    %eax,%r8d
14002205c:	41 29 f0             	sub    %esi,%r8d
14002205f:	48 63 f6             	movslq %esi,%rsi
140022062:	48 c1 e6 03          	shl    $0x3,%rsi
140022066:	48 8d 14 31          	lea    (%rcx,%rsi,1),%rdx
14002206a:	4d 85 c0             	test   %r8,%r8
14002206d:	75 51                	jne    0x1400220c0
14002206f:	83 c0 01             	add    $0x1,%eax
140022072:	41 89 44 24 38       	mov    %eax,0x38(%r12)
140022077:	48 89 3a             	mov    %rdi,(%rdx)
14002207a:	48 89 f8             	mov    %rdi,%rax
14002207d:	48 83 c4 28          	add    $0x28,%rsp
140022081:	5b                   	pop    %rbx
140022082:	5e                   	pop    %rsi
140022083:	5f                   	pop    %rdi
140022084:	5d                   	pop    %rbp
140022085:	41 5c                	pop    %r12
140022087:	41 5d                	pop    %r13
140022089:	41 5e                	pop    %r14
14002208b:	41 5f                	pop    %r15
14002208d:	c3                   	ret
14002208e:	66 90                	xchg   %ax,%ax
140022090:	0f 88 3e ff ff ff    	js     0x140021fd4
140022096:	8d 73 01             	lea    0x1(%rbx),%esi
140022099:	e9 f2 fe ff ff       	jmp    0x140021f90
14002209e:	66 90                	xchg   %ax,%ax
1400220a0:	49 63 e9             	movslq %r9d,%rbp
1400220a3:	48 8d 45 ff          	lea    -0x1(%rbp),%rax
1400220a7:	41 80 7c 28 ff 2f    	cmpb   $0x2f,-0x1(%r8,%rbp,1)
1400220ad:	48 0f 44 e8          	cmove  %rax,%rbp
1400220b1:	e9 c9 fe ff ff       	jmp    0x140021f7f
1400220b6:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
1400220bd:	00 00 00
1400220c0:	48 8d 4c 31 08       	lea    0x8(%rcx,%rsi,1),%rcx
1400220c5:	4e 8d 04 c5 00 00 00 	lea    0x0(,%r8,8),%r8
1400220cc:	00
1400220cd:	e8 26 7d 1c 00       	call   0x1401e9df8
1400220d2:	49 8b 14 24          	mov    (%r12),%rdx
1400220d6:	41 8b 44 24 38       	mov    0x38(%r12),%eax
1400220db:	48 01 f2             	add    %rsi,%rdx
1400220de:	eb 8f                	jmp    0x14002206f
1400220e0:	31 ff                	xor    %edi,%edi
1400220e2:	eb 96                	jmp    0x14002207a
1400220e4:	49 89 e8             	mov    %rbp,%r8
1400220e7:	ba 70 00 00 00       	mov    $0x70,%edx
1400220ec:	48 8d 0d 65 86 1d 00 	lea    0x1d8665(%rip),%rcx        # 0x1401fa758
1400220f3:	e8 98 12 0a 00       	call   0x1400c3390
1400220f8:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1400220fe:	48 83 ca ff          	or     $0xffffffffffffffff,%rdx
140022102:	48 8d 0d 4f 86 1d 00 	lea    0x1d864f(%rip),%rcx        # 0x1401fa758
140022109:	e8 82 12 0a 00       	call   0x1400c3390
14002210e:	90                   	nop
14002210f:	90                   	nop
140022110:	55                   	push   %rbp
140022111:	57                   	push   %rdi
140022112:	56                   	push   %rsi
140022113:	53                   	push   %rbx
140022114:	48 83 ec 28          	sub    $0x28,%rsp
140022118:	48 89 cf             	mov    %rcx,%rdi
14002211b:	48 89 d3             	mov    %rdx,%rbx
14002211e:	4c 89 c1             	mov    %r8,%rcx
140022121:	ba 2f 00 00 00       	mov    $0x2f,%edx
140022126:	4c 89 c5             	mov    %r8,%rbp
140022129:	e8 42 7d 1c 00       	call   0x1401e9e70
14002212e:	48 89 c6             	mov    %rax,%rsi
140022131:	48 85 c0             	test   %rax,%rax
140022134:	74 3a                	je     0x140022170
140022136:	41 89 c1             	mov    %eax,%r9d
140022139:	49 89 e8             	mov    %rbp,%r8
14002213c:	48 89 da             	mov    %rbx,%rdx
14002213f:	48 89 f9             	mov    %rdi,%rcx
140022142:	41 29 e9             	sub    %ebp,%r9d
140022145:	e8 06 fe ff ff       	call   0x140021f50
14002214a:	4c 8d 46 01          	lea    0x1(%rsi),%r8
14002214e:	48 89 f9             	mov    %rdi,%rcx
140022151:	48 89 c2             	mov    %rax,%rdx
140022154:	e8 b7 ff ff ff       	call   0x140022110
140022159:	89 c5                	mov    %eax,%ebp
14002215b:	85 c0                	test   %eax,%eax
14002215d:	75 69                	jne    0x1400221c8
14002215f:	89 e8                	mov    %ebp,%eax
140022161:	48 83 c4 28          	add    $0x28,%rsp
140022165:	5b                   	pop    %rbx
140022166:	5e                   	pop    %rsi
140022167:	5f                   	pop    %rdi
140022168:	5d                   	pop    %rbp
140022169:	c3                   	ret
14002216a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140022170:	8b 43 40             	mov    0x40(%rbx),%eax
140022173:	83 87 d8 00 00 00 01 	addl   $0x1,0xd8(%rdi)
14002217a:	80 63 44 fd          	andb   $0xfd,0x44(%rbx)
14002217e:	85 c0                	test   %eax,%eax
140022180:	74 27                	je     0x1400221a9
140022182:	31 f6                	xor    %esi,%esi
140022184:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002218b:	00 00 00 00
14002218f:	90                   	nop
140022190:	48 8b 43 08          	mov    0x8(%rbx),%rax
140022194:	48 8b 0c f0          	mov    (%rax,%rsi,8),%rcx
140022198:	48 83 c6 01          	add    $0x1,%rsi
14002219c:	e8 0f 6d 0d 00       	call   0x1400f8eb0
1400221a1:	8b 43 40             	mov    0x40(%rbx),%eax
1400221a4:	48 39 c6             	cmp    %rax,%rsi
1400221a7:	72 e7                	jb     0x140022190
1400221a9:	8b af c0 00 00 00    	mov    0xc0(%rdi),%ebp
1400221af:	c7 43 40 00 00 00 00 	movl   $0x0,0x40(%rbx)
1400221b6:	83 e5 02             	and    $0x2,%ebp
1400221b9:	89 e8                	mov    %ebp,%eax
1400221bb:	48 83 c4 28          	add    $0x28,%rsp
1400221bf:	5b                   	pop    %rbx
1400221c0:	5e                   	pop    %rsi
1400221c1:	5f                   	pop    %rdi
1400221c2:	5d                   	pop    %rbp
1400221c3:	c3                   	ret
1400221c4:	0f 1f 40 00          	nopl   0x0(%rax)
1400221c8:	8b 53 40             	mov    0x40(%rbx),%edx
1400221cb:	83 87 d8 00 00 00 01 	addl   $0x1,0xd8(%rdi)
1400221d2:	80 63 44 fd          	andb   $0xfd,0x44(%rbx)
1400221d6:	85 d2                	test   %edx,%edx
1400221d8:	74 1f                	je     0x1400221f9
1400221da:	31 f6                	xor    %esi,%esi
1400221dc:	0f 1f 40 00          	nopl   0x0(%rax)
1400221e0:	48 8b 43 08          	mov    0x8(%rbx),%rax
1400221e4:	48 8b 0c f0          	mov    (%rax,%rsi,8),%rcx
1400221e8:	48 83 c6 01          	add    $0x1,%rsi
1400221ec:	e8 bf 6c 0d 00       	call   0x1400f8eb0
1400221f1:	8b 43 40             	mov    0x40(%rbx),%eax
1400221f4:	48 39 c6             	cmp    %rax,%rsi
1400221f7:	72 e7                	jb     0x1400221e0
1400221f9:	89 e8                	mov    %ebp,%eax
1400221fb:	c7 43 40 00 00 00 00 	movl   $0x0,0x40(%rbx)
140022202:	48 83 c4 28          	add    $0x28,%rsp
140022206:	5b                   	pop    %rbx
140022207:	5e                   	pop    %rsi
140022208:	5f                   	pop    %rdi
140022209:	5d                   	pop    %rbp
14002220a:	c3                   	ret
14002220b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022210:	56                   	push   %rsi
140022211:	53                   	push   %rbx
140022212:	48 83 ec 68          	sub    $0x68,%rsp
140022216:	48 8b 1d d3 68 21 00 	mov    0x2168d3(%rip),%rbx        # 0x140238af0
14002221d:	48 8b 03             	mov    (%rbx),%rax
140022220:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140022225:	31 c0                	xor    %eax,%eax
140022227:	48 83 3d e9 93 1c 00 	cmpq   $0x0,0x1c93e9(%rip)        # 0x1401eb618
14002222e:	00
14002222f:	74 1f                	je     0x140022250
140022231:	48 8b 05 e8 93 1c 00 	mov    0x1c93e8(%rip),%rax        # 0x1401eb620
140022238:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
14002223d:	48 2b 13             	sub    (%rbx),%rdx
140022240:	75 49                	jne    0x14002228b
140022242:	48 83 c4 68          	add    $0x68,%rsp
140022246:	5b                   	pop    %rbx
140022247:	5e                   	pop    %rsi
140022248:	c3                   	ret
140022249:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140022250:	48 8d 74 24 20       	lea    0x20(%rsp),%rsi
140022255:	48 89 f1             	mov    %rsi,%rcx
140022258:	e8 33 45 0c 00       	call   0x1400e6790
14002225d:	85 c0                	test   %eax,%eax
14002225f:	78 2f                	js     0x140022290
140022261:	48 8b 05 98 71 21 00 	mov    0x217198(%rip),%rax        # 0x140239400
140022268:	48 8b 08             	mov    (%rax),%rcx
14002226b:	e8 30 ea 05 00       	call   0x140080ca0
140022270:	49 89 f1             	mov    %rsi,%r9
140022273:	48 8d 15 48 85 1d 00 	lea    0x1d8548(%rip),%rdx        # 0x1401fa7c2
14002227a:	48 8d 0d 8f 93 1c 00 	lea    0x1c938f(%rip),%rcx        # 0x1401eb610
140022281:	49 89 c0             	mov    %rax,%r8
140022284:	e8 37 9d 07 00       	call   0x14009bfc0
140022289:	eb a6                	jmp    0x140022231
14002228b:	e8 e0 25 1c 00       	call   0x1401e4870
140022290:	48 8b 05 49 6d 21 00 	mov    0x216d49(%rip),%rax        # 0x140238fe0
140022297:	48 8d 0d fa 84 1d 00 	lea    0x1d84fa(%rip),%rcx        # 0x1401fa798
14002229e:	83 38 00             	cmpl   $0x0,(%rax)
1400222a1:	74 08                	je     0x1400222ab
1400222a3:	e8 c0 10 1c 00       	call   0x1401e3368
1400222a8:	48 89 c1             	mov    %rax,%rcx
1400222ab:	e8 70 11 0a 00       	call   0x1400c3420
1400222b0:	90                   	nop
1400222b1:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1400222b8:	00 00 00 00
1400222bc:	0f 1f 40 00          	nopl   0x0(%rax)
1400222c0:	56                   	push   %rsi
1400222c1:	53                   	push   %rbx
1400222c2:	48 83 ec 58          	sub    $0x58,%rsp
1400222c6:	48 8b 35 23 68 21 00 	mov    0x216823(%rip),%rsi        # 0x140238af0
1400222cd:	48 8b 06             	mov    (%rsi),%rax
1400222d0:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1400222d5:	31 c0                	xor    %eax,%eax
1400222d7:	48 8b 05 22 6e 21 00 	mov    0x216e22(%rip),%rax        # 0x140239100
1400222de:	48 89 cb             	mov    %rcx,%rbx
1400222e1:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
1400222e6:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
1400222eb:	4c 89 c1             	mov    %r8,%rcx
1400222ee:	8b 00                	mov    (%rax),%eax
1400222f0:	85 c0                	test   %eax,%eax
1400222f2:	74 3c                	je     0x140022330
1400222f4:	e8 67 c7 00 00       	call   0x14002ea60
1400222f9:	45 31 c0             	xor    %r8d,%r8d
1400222fc:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140022301:	48 89 d9             	mov    %rbx,%rcx
140022304:	89 44 24 28          	mov    %eax,0x28(%rsp)
140022308:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
14002230f:	00 00
140022311:	e8 3a ca 00 00       	call   0x14002ed50
140022316:	48 85 c0             	test   %rax,%rax
140022319:	0f 95 c0             	setne  %al
14002231c:	0f b6 c0             	movzbl %al,%eax
14002231f:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
140022324:	48 2b 16             	sub    (%rsi),%rdx
140022327:	75 0e                	jne    0x140022337
140022329:	48 83 c4 58          	add    $0x58,%rsp
14002232d:	5b                   	pop    %rbx
14002232e:	5e                   	pop    %rsi
14002232f:	c3                   	ret
140022330:	e8 eb c6 00 00       	call   0x14002ea20
140022335:	eb c2                	jmp    0x1400222f9
140022337:	e8 34 25 1c 00       	call   0x1401e4870
14002233c:	90                   	nop
14002233d:	0f 1f 00             	nopl   (%rax)
140022340:	41 55                	push   %r13
140022342:	41 54                	push   %r12
140022344:	55                   	push   %rbp
140022345:	57                   	push   %rdi
140022346:	56                   	push   %rsi
140022347:	53                   	push   %rbx
140022348:	48 83 ec 78          	sub    $0x78,%rsp
14002234c:	4c 8b 25 9d 67 21 00 	mov    0x21679d(%rip),%r12        # 0x140238af0
140022353:	44 8b 2a             	mov    (%rdx),%r13d
140022356:	41 8d 45 01          	lea    0x1(%r13),%eax
14002235a:	49 8b 3c 24          	mov    (%r12),%rdi
14002235e:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
140022363:	48 8d 7a 20          	lea    0x20(%rdx),%rdi
140022367:	89 02                	mov    %eax,(%rdx)
140022369:	0f b6 41 44          	movzbl 0x44(%rcx),%eax
14002236d:	48 89 cb             	mov    %rcx,%rbx
140022370:	48 89 d5             	mov    %rdx,%rbp
140022373:	a8 02                	test   $0x2,%al
140022375:	0f 85 bd 01 00 00    	jne    0x140022538
14002237b:	8b 49 40             	mov    0x40(%rcx),%ecx
14002237e:	31 f6                	xor    %esi,%esi
140022380:	85 c9                	test   %ecx,%ecx
140022382:	74 25                	je     0x1400223a9
140022384:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002238b:	00 00 00 00
14002238f:	90                   	nop
140022390:	48 8b 43 08          	mov    0x8(%rbx),%rax
140022394:	48 8b 0c f0          	mov    (%rax,%rsi,8),%rcx
140022398:	48 83 c6 01          	add    $0x1,%rsi
14002239c:	e8 0f 6b 0d 00       	call   0x1400f8eb0
1400223a1:	8b 43 40             	mov    0x40(%rbx),%eax
1400223a4:	48 39 c6             	cmp    %rax,%rsi
1400223a7:	72 e7                	jb     0x140022390
1400223a9:	0f b6 43 44          	movzbl 0x44(%rbx),%eax
1400223ad:	c7 43 40 00 00 00 00 	movl   $0x0,0x40(%rbx)
1400223b4:	83 e0 fe             	and    $0xfffffffe,%eax
1400223b7:	88 43 44             	mov    %al,0x44(%rbx)
1400223ba:	a8 02                	test   $0x2,%al
1400223bc:	0f 85 7e 01 00 00    	jne    0x140022540
1400223c2:	48 8b 43 48          	mov    0x48(%rbx),%rax
1400223c6:	48 8b 53 50          	mov    0x50(%rbx),%rdx
1400223ca:	48 8d 73 48          	lea    0x48(%rbx),%rsi
1400223ce:	48 33 05 ab 8a 1d 00 	xor    0x1d8aab(%rip),%rax        # 0x1401fae80
1400223d5:	48 33 15 ac 8a 1d 00 	xor    0x1d8aac(%rip),%rdx        # 0x1401fae88
1400223dc:	48 09 d0             	or     %rdx,%rax
1400223df:	0f 84 1b 02 00 00    	je     0x140022600
1400223e5:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
1400223e9:	49 63 d5             	movslq %r13d,%rdx
1400223ec:	e8 7f 7d 00 00       	call   0x14002a170
1400223f1:	48 8b 05 08 70 21 00 	mov    0x217008(%rip),%rax        # 0x140239400
1400223f8:	48 8d 4d 50          	lea    0x50(%rbp),%rcx
1400223fc:	48 89 f2             	mov    %rsi,%rdx
1400223ff:	48 8b 00             	mov    (%rax),%rax
140022402:	48 8b 80 90 01 00 00 	mov    0x190(%rax),%rax
140022409:	4c 8b 40 10          	mov    0x10(%rax),%r8
14002240d:	e8 9e 95 07 00       	call   0x14009b9b0
140022412:	8b 4b 40             	mov    0x40(%rbx),%ecx
140022415:	48 8d 74 24 50       	lea    0x50(%rsp),%rsi
14002241a:	48 89 f2             	mov    %rsi,%rdx
14002241d:	e8 5e 36 0a 00       	call   0x1400c5a80
140022422:	48 89 f2             	mov    %rsi,%rdx
140022425:	48 89 f9             	mov    %rdi,%rcx
140022428:	41 89 c0             	mov    %eax,%r8d
14002242b:	e8 80 95 07 00       	call   0x14009b9b0
140022430:	8b 53 38             	mov    0x38(%rbx),%edx
140022433:	85 d2                	test   %edx,%edx
140022435:	0f 84 ed 01 00 00    	je     0x140022628
14002243b:	48 8b 03             	mov    (%rbx),%rax
14002243e:	31 c9                	xor    %ecx,%ecx
140022440:	4c 8d 04 d0          	lea    (%rax,%rdx,8),%r8
140022444:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002244b:	00 00 00 00
14002244f:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140022456:	00 00 00 00
14002245a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140022460:	48 8b 10             	mov    (%rax),%rdx
140022463:	0f b6 52 44          	movzbl 0x44(%rdx),%edx
140022467:	83 e2 04             	and    $0x4,%edx
14002246a:	80 fa 01             	cmp    $0x1,%dl
14002246d:	83 d9 ff             	sbb    $0xffffffff,%ecx