14002009d:	40 0f b6 ce          	movzbl %sil,%ecx
1400200a1:	e8 2a 1f 00 00       	call   0x140021fd0
1400200a6:	ba 01 00 00 00       	mov    $0x1,%edx
1400200ab:	85 c0                	test   %eax,%eax
1400200ad:	74 12                	je     0x1400200c1
1400200af:	40 88 75 c0          	mov    %sil,-0x40(%rbp)
1400200b3:	44 8d 4a 01          	lea    0x1(%rdx),%r9d
1400200b7:	40 88 7d c1          	mov    %dil,-0x3f(%rbp)
1400200bb:	c6 45 c2 00          	movb   $0x0,-0x3e(%rbp)
1400200bf:	eb 0b                	jmp    0x1400200cc
1400200c1:	40 88 7d c0          	mov    %dil,-0x40(%rbp)
1400200c5:	44 8b ca             	mov    %edx,%r9d
1400200c8:	c6 45 c1 00          	movb   $0x0,-0x3f(%rbp)
1400200cc:	33 c0                	xor    %eax,%eax
1400200ce:	89 54 24 30          	mov    %edx,0x30(%rsp)
1400200d2:	89 45 e8             	mov    %eax,-0x18(%rbp)
1400200d5:	4c 8d 45 c0          	lea    -0x40(%rbp),%r8
1400200d9:	66 89 45 ec          	mov    %ax,-0x14(%rbp)
1400200dd:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
1400200e1:	8b 48 0c             	mov    0xc(%rax),%ecx
1400200e4:	48 8d 45 e8          	lea    -0x18(%rbp),%rax
1400200e8:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
1400200ec:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
1400200f0:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400200f5:	e8 9a 03 00 00       	call   0x140020494
1400200fa:	85 c0                	test   %eax,%eax
1400200fc:	75 14                	jne    0x140020112
1400200fe:	38 45 e0             	cmp    %al,-0x20(%rbp)
140020101:	74 0b                	je     0x14002010e
140020103:	48 8b 45 c8          	mov    -0x38(%rbp),%rax
140020107:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14002010e:	33 c0                	xor    %eax,%eax
140020110:	eb 18                	jmp    0x14002012a
140020112:	0f b7 45 e8          	movzwl -0x18(%rbp),%eax
140020116:	41 23 c6             	and    %r14d,%eax
140020119:	80 7d e0 00          	cmpb   $0x0,-0x20(%rbp)
14002011d:	74 0b                	je     0x14002012a
14002011f:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140020123:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
14002012a:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
14002012e:	48 33 cc             	xor    %rsp,%rcx
140020131:	e8 3a c4 fe ff       	call   0x14000c570
140020136:	4c 8d 9c 24 80 00 00 	lea    0x80(%rsp),%r11
14002013d:	00
14002013e:	49 8b 73 18          	mov    0x18(%r11),%rsi
140020142:	49 8b 7b 20          	mov    0x20(%r11),%rdi
140020146:	4d 8b 73 28          	mov    0x28(%r11),%r14
14002014a:	49 8b e3             	mov    %r11,%rsp
14002014d:	5d                   	pop    %rbp
14002014e:	c3                   	ret
14002014f:	cc                   	int3
140020150:	40 55                	rex push %rbp
140020152:	41 56                	push   %r14
140020154:	41 57                	push   %r15
140020156:	48 83 ec 70          	sub    $0x70,%rsp
14002015a:	48 8d 6c 24 40       	lea    0x40(%rsp),%rbp
14002015f:	48 89 5d 50          	mov    %rbx,0x50(%rbp)
140020163:	48 89 75 58          	mov    %rsi,0x58(%rbp)
140020167:	48 89 7d 60          	mov    %rdi,0x60(%rbp)
14002016b:	4c 89 65 68          	mov    %r12,0x68(%rbp)
14002016f:	48 8b 05 0a 3f 02 00 	mov    0x23f0a(%rip),%rax        # 0x140044080
140020176:	48 33 c5             	xor    %rbp,%rax
140020179:	48 89 45 20          	mov    %rax,0x20(%rbp)
14002017d:	4c 8b f2             	mov    %rdx,%r14
140020180:	4d 8b f9             	mov    %r9,%r15
140020183:	48 8b d1             	mov    %rcx,%rdx
140020186:	41 8b f0             	mov    %r8d,%esi
140020189:	48 8d 4d 00          	lea    0x0(%rbp),%rcx
14002018d:	e8 0e 0e ff ff       	call   0x140010fa0
140020192:	48 8b 45 08          	mov    0x8(%rbp),%rax
140020196:	45 33 c9             	xor    %r9d,%r9d
140020199:	45 33 c0             	xor    %r8d,%r8d
14002019c:	8b d6                	mov    %esi,%edx
14002019e:	49 8b ce             	mov    %r14,%rcx
1400201a1:	44 8b 60 0c          	mov    0xc(%rax),%r12d
1400201a5:	e8 0a b8 ff ff       	call   0x14001b9b4
1400201aa:	48 63 f8             	movslq %eax,%rdi
1400201ad:	85 c0                	test   %eax,%eax
1400201af:	75 07                	jne    0x1400201b8
1400201b1:	33 ff                	xor    %edi,%edi
1400201b3:	e9 d8 00 00 00       	jmp    0x140020290
1400201b8:	48 8b c7             	mov    %rdi,%rax
1400201bb:	48 03 c0             	add    %rax,%rax
1400201be:	48 8d 48 10          	lea    0x10(%rax),%rcx
1400201c2:	48 3b c1             	cmp    %rcx,%rax
1400201c5:	48 1b d2             	sbb    %rdx,%rdx
1400201c8:	48 23 d1             	and    %rcx,%rdx
1400201cb:	74 56                	je     0x140020223
1400201cd:	48 81 fa 00 04 00 00 	cmp    $0x400,%rdx
1400201d4:	77 31                	ja     0x140020207
1400201d6:	48 8d 42 0f          	lea    0xf(%rdx),%rax
1400201da:	48 3b c2             	cmp    %rdx,%rax
1400201dd:	77 0a                	ja     0x1400201e9
1400201df:	48 b8 f0 ff ff ff ff 	movabs $0xffffffffffffff0,%rax
1400201e6:	ff ff 0f
1400201e9:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
1400201ed:	e8 3e ca fe ff       	call   0x14000cc30
1400201f2:	48 2b e0             	sub    %rax,%rsp
1400201f5:	48 8d 5c 24 40       	lea    0x40(%rsp),%rbx
1400201fa:	48 85 db             	test   %rbx,%rbx
1400201fd:	74 79                	je     0x140020278
1400201ff:	c7 03 cc cc 00 00    	movl   $0xcccc,(%rbx)
140020205:	eb 16                	jmp    0x14002021d
140020207:	48 8b ca             	mov    %rdx,%rcx
14002020a:	e8 55 c0 ff ff       	call   0x14001c264
14002020f:	48 8b d8             	mov    %rax,%rbx
140020212:	48 85 c0             	test   %rax,%rax
140020215:	74 0e                	je     0x140020225
140020217:	c7 00 dd dd 00 00    	movl   $0xdddd,(%rax)
14002021d:	48 83 c3 10          	add    $0x10,%rbx
140020221:	eb 02                	jmp    0x140020225
140020223:	33 db                	xor    %ebx,%ebx
140020225:	48 85 db             	test   %rbx,%rbx
140020228:	74 4e                	je     0x140020278
14002022a:	44 8b cf             	mov    %edi,%r9d
14002022d:	4c 8b c3             	mov    %rbx,%r8
140020230:	8b d6                	mov    %esi,%edx
140020232:	49 8b ce             	mov    %r14,%rcx
140020235:	e8 7a b7 ff ff       	call   0x14001b9b4
14002023a:	85 c0                	test   %eax,%eax
14002023c:	74 3a                	je     0x140020278
14002023e:	44 8b 45 70          	mov    0x70(%rbp),%r8d
140020242:	41 8b cc             	mov    %r12d,%ecx
140020245:	41 8b c0             	mov    %r8d,%eax
140020248:	f7 d8                	neg    %eax
14002024a:	48 1b d2             	sbb    %rdx,%rdx
14002024d:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
140020253:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
140020259:	49 23 d7             	and    %r15,%rdx
14002025c:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
140020261:	41 83 c9 ff          	or     $0xffffffff,%r9d
140020265:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
14002026a:	4c 8b c3             	mov    %rbx,%r8
14002026d:	33 d2                	xor    %edx,%edx
14002026f:	e8 e8 1a 00 00       	call   0x140021d5c
140020274:	8b f8                	mov    %eax,%edi
140020276:	eb 02                	jmp    0x14002027a
140020278:	33 ff                	xor    %edi,%edi
14002027a:	48 85 db             	test   %rbx,%rbx
14002027d:	74 11                	je     0x140020290
14002027f:	48 8d 4b f0          	lea    -0x10(%rbx),%rcx
140020283:	81 39 dd dd 00 00    	cmpl   $0xdddd,(%rcx)
140020289:	75 05                	jne    0x140020290
14002028b:	e8 f8 ab ff ff       	call   0x14001ae88
140020290:	80 7d 18 00          	cmpb   $0x0,0x18(%rbp)
140020294:	74 0b                	je     0x1400202a1
140020296:	48 8b 45 00          	mov    0x0(%rbp),%rax
14002029a:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1400202a1:	8b c7                	mov    %edi,%eax
1400202a3:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
1400202a7:	48 33 cd             	xor    %rbp,%rcx
1400202aa:	e8 c1 c2 fe ff       	call   0x14000c570
1400202af:	48 8b 5d 50          	mov    0x50(%rbp),%rbx
1400202b3:	48 8b 75 58          	mov    0x58(%rbp),%rsi
1400202b7:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
1400202bb:	4c 8b 65 68          	mov    0x68(%rbp),%r12
1400202bf:	48 8d 65 30          	lea    0x30(%rbp),%rsp
1400202c3:	41 5f                	pop    %r15
1400202c5:	41 5e                	pop    %r14
1400202c7:	5d                   	pop    %rbp
1400202c8:	c3                   	ret
1400202c9:	cc                   	int3
1400202ca:	cc                   	int3
1400202cb:	cc                   	int3
1400202cc:	40 53                	rex push %rbx
1400202ce:	55                   	push   %rbp
1400202cf:	56                   	push   %rsi
1400202d0:	57                   	push   %rdi
1400202d1:	41 54                	push   %r12
1400202d3:	41 56                	push   %r14
1400202d5:	41 57                	push   %r15
1400202d7:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
1400202de:	48 8b 05 9b 3d 02 00 	mov    0x23d9b(%rip),%rax        # 0x140044080
1400202e5:	48 33 c4             	xor    %rsp,%rax
1400202e8:	48 89 84 24 c0 00 00 	mov    %rax,0xc0(%rsp)
1400202ef:	00
1400202f0:	48 8b b4 24 30 01 00 	mov    0x130(%rsp),%rsi
1400202f7:	00
1400202f8:	33 ff                	xor    %edi,%edi
1400202fa:	41 8b e9             	mov    %r9d,%ebp
1400202fd:	4d 8b f0             	mov    %r8,%r14
140020300:	4c 8b e1             	mov    %rcx,%r12
140020303:	48 89 3e             	mov    %rdi,(%rsi)
140020306:	83 fa 01             	cmp    $0x1,%edx
140020309:	0f 85 da 00 00 00    	jne    0x1400203e9
14002030f:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
140020314:	c7 44 24 20 80 00 00 	movl   $0x80,0x20(%rsp)
14002031b:	00
14002031c:	44 8b c5             	mov    %ebp,%r8d
14002031f:	49 8b d6             	mov    %r14,%rdx
140020322:	e8 29 fe ff ff       	call   0x140020150
140020327:	48 63 d8             	movslq %eax,%rbx
14002032a:	85 c0                	test   %eax,%eax
14002032c:	74 43                	je     0x140020371
14002032e:	8d 57 01             	lea    0x1(%rdi),%edx
140020331:	48 8b cb             	mov    %rbx,%rcx
140020334:	e8 d7 aa ff ff       	call   0x14001ae10
140020339:	33 c9                	xor    %ecx,%ecx
14002033b:	48 89 06             	mov    %rax,(%rsi)
14002033e:	e8 45 ab ff ff       	call   0x14001ae88
140020343:	48 39 3e             	cmp    %rdi,(%rsi)
140020346:	0f 84 0e 01 00 00    	je     0x14002045a
14002034c:	48 8b 0e             	mov    (%rsi),%rcx
14002034f:	8d 43 ff             	lea    -0x1(%rbx),%eax
140020352:	4c 63 c8             	movslq %eax,%r9
140020355:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
14002035a:	48 8b d3             	mov    %rbx,%rdx
14002035d:	e8 2a 89 00 00       	call   0x140028c8c
140020362:	85 c0                	test   %eax,%eax
140020364:	0f 85 15 01 00 00    	jne    0x14002047f
14002036a:	33 c0                	xor    %eax,%eax
14002036c:	e9 ec 00 00 00       	jmp    0x14002045d
140020371:	ff 15 e9 bc 00 00    	call   *0xbce9(%rip)        # 0x14002c060
140020377:	83 f8 7a             	cmp    $0x7a,%eax
14002037a:	0f 85 da 00 00 00    	jne    0x14002045a
140020380:	45 33 c9             	xor    %r9d,%r9d
140020383:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140020387:	44 8b c5             	mov    %ebp,%r8d
14002038a:	49 8b d6             	mov    %r14,%rdx
14002038d:	49 8b cc             	mov    %r12,%rcx
140020390:	e8 bb fd ff ff       	call   0x140020150
140020395:	4c 63 f8             	movslq %eax,%r15
140020398:	85 c0                	test   %eax,%eax
14002039a:	0f 84 ba 00 00 00    	je     0x14002045a
1400203a0:	49 8b cf             	mov    %r15,%rcx
1400203a3:	ba 01 00 00 00       	mov    $0x1,%edx
1400203a8:	e8 63 aa ff ff       	call   0x14001ae10
1400203ad:	48 8b d8             	mov    %rax,%rbx
1400203b0:	48 85 c0             	test   %rax,%rax
1400203b3:	74 25                	je     0x1400203da
1400203b5:	4c 8b c8             	mov    %rax,%r9
1400203b8:	44 89 7c 24 20       	mov    %r15d,0x20(%rsp)
1400203bd:	44 8b c5             	mov    %ebp,%r8d
1400203c0:	49 8b d6             	mov    %r14,%rdx
1400203c3:	49 8b cc             	mov    %r12,%rcx
1400203c6:	e8 85 fd ff ff       	call   0x140020150
1400203cb:	85 c0                	test   %eax,%eax
1400203cd:	74 0b                	je     0x1400203da
1400203cf:	48 8b c3             	mov    %rbx,%rax
1400203d2:	48 8b df             	mov    %rdi,%rbx
1400203d5:	48 89 06             	mov    %rax,(%rsi)
1400203d8:	eb 03                	jmp    0x1400203dd
1400203da:	83 cf ff             	or     $0xffffffff,%edi
1400203dd:	48 8b cb             	mov    %rbx,%rcx
1400203e0:	e8 a3 aa ff ff       	call   0x14001ae88
1400203e5:	8b c7                	mov    %edi,%eax
1400203e7:	eb 74                	jmp    0x14002045d
1400203e9:	bb 02 00 00 00       	mov    $0x2,%ebx
1400203ee:	3b d3                	cmp    %ebx,%edx
1400203f0:	75 3b                	jne    0x14002042d
1400203f2:	45 33 c9             	xor    %r9d,%r9d
1400203f5:	45 33 c0             	xor    %r8d,%r8d
1400203f8:	8b d5                	mov    %ebp,%edx
1400203fa:	49 8b ce             	mov    %r14,%rcx
1400203fd:	e8 b2 b5 ff ff       	call   0x14001b9b4
140020402:	4c 63 f8             	movslq %eax,%r15
140020405:	85 c0                	test   %eax,%eax
140020407:	74 51                	je     0x14002045a
140020409:	49 8b cf             	mov    %r15,%rcx
14002040c:	8b d3                	mov    %ebx,%edx
14002040e:	e8 fd a9 ff ff       	call   0x14001ae10
140020413:	48 8b d8             	mov    %rax,%rbx
140020416:	48 85 c0             	test   %rax,%rax
140020419:	74 bf                	je     0x1400203da
14002041b:	45 8b cf             	mov    %r15d,%r9d
14002041e:	4c 8b c0             	mov    %rax,%r8
140020421:	8b d5                	mov    %ebp,%edx
140020423:	49 8b ce             	mov    %r14,%rcx
140020426:	e8 89 b5 ff ff       	call   0x14001b9b4
14002042b:	eb 9e                	jmp    0x1400203cb
14002042d:	85 d2                	test   %edx,%edx
14002042f:	75 29                	jne    0x14002045a
140020431:	0f ba ed 1d          	bts    $0x1d,%ebp
140020435:	89 7c 24 30          	mov    %edi,0x30(%rsp)
140020439:	8b d5                	mov    %ebp,%edx
14002043b:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
140020440:	44 8b cb             	mov    %ebx,%r9d
140020443:	49 8b ce             	mov    %r14,%rcx
140020446:	e8 69 b5 ff ff       	call   0x14001b9b4
14002044b:	85 c0                	test   %eax,%eax
14002044d:	74 0b                	je     0x14002045a
14002044f:	8a 44 24 30          	mov    0x30(%rsp),%al
140020453:	88 06                	mov    %al,(%rsi)
140020455:	e9 10 ff ff ff       	jmp    0x14002036a
14002045a:	83 c8 ff             	or     $0xffffffff,%eax
14002045d:	48 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%rcx
140020464:	00
140020465:	48 33 cc             	xor    %rsp,%rcx
140020468:	e8 03 c1 fe ff       	call   0x14000c570
14002046d:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
140020474:	41 5f                	pop    %r15
140020476:	41 5e                	pop    %r14
140020478:	41 5c                	pop    %r12
14002047a:	5f                   	pop    %rdi
14002047b:	5e                   	pop    %rsi
14002047c:	5d                   	pop    %rbp
14002047d:	5b                   	pop    %rbx
14002047e:	c3                   	ret
14002047f:	45 33 c9             	xor    %r9d,%r9d
140020482:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140020487:	45 33 c0             	xor    %r8d,%r8d
14002048a:	33 d2                	xor    %edx,%edx
14002048c:	33 c9                	xor    %ecx,%ecx
14002048e:	e8 55 03 ff ff       	call   0x1400107e8
140020493:	cc                   	int3
140020494:	40 55                	rex push %rbp
140020496:	41 54                	push   %r12
140020498:	41 55                	push   %r13
14002049a:	41 56                	push   %r14
14002049c:	41 57                	push   %r15
14002049e:	48 83 ec 60          	sub    $0x60,%rsp
1400204a2:	48 8d 6c 24 30       	lea    0x30(%rsp),%rbp
1400204a7:	48 89 5d 60          	mov    %rbx,0x60(%rbp)
1400204ab:	48 89 75 68          	mov    %rsi,0x68(%rbp)
1400204af:	48 89 7d 70          	mov    %rdi,0x70(%rbp)
1400204b3:	48 8b 05 c6 3b 02 00 	mov    0x23bc6(%rip),%rax        # 0x140044080
1400204ba:	48 33 c5             	xor    %rbp,%rax
1400204bd:	48 89 45 20          	mov    %rax,0x20(%rbp)
1400204c1:	44 8b ea             	mov    %edx,%r13d
1400204c4:	45 8b f9             	mov    %r9d,%r15d
1400204c7:	48 8b d1             	mov    %rcx,%rdx
1400204ca:	4d 8b e0             	mov    %r8,%r12
1400204cd:	48 8d 4d 00          	lea    0x0(%rbp),%rcx
1400204d1:	e8 ca 0a ff ff       	call   0x140010fa0
1400204d6:	8b bd 88 00 00 00    	mov    0x88(%rbp),%edi
1400204dc:	85 ff                	test   %edi,%edi
1400204de:	75 07                	jne    0x1400204e7
1400204e0:	48 8b 45 08          	mov    0x8(%rbp),%rax
1400204e4:	8b 78 0c             	mov    0xc(%rax),%edi
1400204e7:	f7 9d 90 00 00 00    	negl   0x90(%rbp)
1400204ed:	45 8b cf             	mov    %r15d,%r9d
1400204f0:	4d 8b c4             	mov    %r12,%r8
1400204f3:	8b cf                	mov    %edi,%ecx
1400204f5:	1b d2                	sbb    %edx,%edx
1400204f7:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
1400204fc:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140020502:	83 e2 08             	and    $0x8,%edx
140020505:	ff c2                	inc    %edx
140020507:	e8 f4 17 00 00       	call   0x140021d00
14002050c:	4c 63 f0             	movslq %eax,%r14
14002050f:	85 c0                	test   %eax,%eax
140020511:	75 07                	jne    0x14002051a
140020513:	33 ff                	xor    %edi,%edi
140020515:	e9 ce 00 00 00       	jmp    0x1400205e8
14002051a:	49 8b f6             	mov    %r14,%rsi
14002051d:	48 03 f6             	add    %rsi,%rsi
140020520:	48 8d 46 10          	lea    0x10(%rsi),%rax
140020524:	48 3b f0             	cmp    %rax,%rsi
140020527:	48 1b c9             	sbb    %rcx,%rcx
14002052a:	48 23 c8             	and    %rax,%rcx