180070017:	72 33                	jb     0x18007004c
180070019:	45 8b 53 68          	mov    0x68(%r11),%r10d
18007001d:	4d 2b 43 18          	sub    0x18(%r11),%r8
180070021:	41 8b c2             	mov    %r10d,%eax
180070024:	48 f7 d8             	neg    %rax
180070027:	49 23 c0             	and    %r8,%rax
18007002a:	48 99                	cqto
18007002c:	49 f7 fa             	idiv   %r10
18007002f:	48 8d 48 01          	lea    0x1(%rax),%rcx
180070033:	49 39 4b 70          	cmp    %rcx,0x70(%r11)
180070037:	74 13                	je     0x18007004c
180070039:	48 8b d0             	mov    %rax,%rdx
18007003c:	48 8b cf             	mov    %rdi,%rcx
18007003f:	e8 d8 03 00 00       	call   0x18007041c
180070044:	85 c0                	test   %eax,%eax
180070046:	0f 88 9d 00 00 00    	js     0x1800700e9
18007004c:	48 83 cb ff          	or     $0xffffffffffffffff,%rbx
180070050:	48 ff c3             	inc    %rbx
180070053:	66 44 39 3c 5e       	cmp    %r15w,(%rsi,%rbx,2)
180070058:	75 f6                	jne    0x180070050
18007005a:	48 8b ce             	mov    %rsi,%rcx
18007005d:	e8 de b0 0b 00       	call   0x18012b140
180070062:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180070067:	48 8b e8             	mov    %rax,%rbp
18007006a:	4c 8b c6             	mov    %rsi,%r8
18007006d:	49 8b d6             	mov    %r14,%rdx
180070070:	48 8b cf             	mov    %rdi,%rcx
180070073:	e8 8c 00 00 00       	call   0x180070104
180070078:	85 c0                	test   %eax,%eax
18007007a:	75 68                	jne    0x1800700e4
18007007c:	49 8b 16             	mov    (%r14),%rdx
18007007f:	0f b6 4a 50          	movzbl 0x50(%rdx),%ecx
180070083:	8d 04 4d 52 00 00 00 	lea    0x52(,%rcx,2),%eax
18007008a:	3b 06                	cmp    (%rsi),%eax
18007008c:	77 4f                	ja     0x1800700dd
18007008e:	3a d9                	cmp    %cl,%bl
180070090:	75 d8                	jne    0x18007006a
180070092:	48 83 c2 52          	add    $0x52,%rdx
180070096:	84 db                	test   %bl,%bl
180070098:	74 2e                	je     0x1800700c8
18007009a:	4c 8b c2             	mov    %rdx,%r8
18007009d:	44 0f b6 cb          	movzbl %bl,%r9d
1800700a1:	41 0f b7 00          	movzwl (%r8),%eax
1800700a5:	41 0f b7 08          	movzwl (%r8),%ecx
1800700a9:	66 83 e8 61          	sub    $0x61,%ax
1800700ad:	66 83 e9 20          	sub    $0x20,%cx
1800700b1:	66 83 f8 19          	cmp    $0x19,%ax
1800700b5:	66 41 0f 47 08       	cmova  (%r8),%cx
1800700ba:	66 41 89 08          	mov    %cx,(%r8)
1800700be:	4d 8d 40 02          	lea    0x2(%r8),%r8
1800700c2:	49 83 e9 01          	sub    $0x1,%r9
1800700c6:	75 d9                	jne    0x1800700a1
1800700c8:	44 0f b6 c3          	movzbl %bl,%r8d
1800700cc:	48 8b cd             	mov    %rbp,%rcx
1800700cf:	4d 03 c0             	add    %r8,%r8
1800700d2:	e8 a9 b0 0b 00       	call   0x18012b180
1800700d7:	85 c0                	test   %eax,%eax
1800700d9:	75 8f                	jne    0x18007006a
1800700db:	eb 0c                	jmp    0x1800700e9
1800700dd:	b8 02 01 00 c0       	mov    $0xc0000102,%eax
1800700e2:	eb 05                	jmp    0x1800700e9
1800700e4:	b8 0f 00 00 c0       	mov    $0xc000000f,%eax
1800700e9:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800700ee:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1800700f3:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1800700f8:	48 83 c4 20          	add    $0x20,%rsp
1800700fc:	41 5f                	pop    %r15
1800700fe:	41 5e                	pop    %r14
180070100:	5f                   	pop    %rdi
180070101:	c3                   	ret
180070102:	cc                   	int3
180070103:	cc                   	int3
180070104:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180070109:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18007010e:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
180070113:	57                   	push   %rdi
180070114:	48 83 ec 20          	sub    $0x20,%rsp
180070118:	49 8b d8             	mov    %r8,%rbx
18007011b:	48 8b fa             	mov    %rdx,%rdi
18007011e:	48 8b f1             	mov    %rcx,%rsi
180070121:	e8 66 00 00 00       	call   0x18007018c
180070126:	33 ed                	xor    %ebp,%ebp
180070128:	85 c0                	test   %eax,%eax
18007012a:	75 44                	jne    0x180070170
18007012c:	83 3b 54             	cmpl   $0x54,(%rbx)
18007012f:	72 2b                	jb     0x18007015c
180070131:	48 8b 0f             	mov    (%rdi),%rcx
180070134:	f6 41 0c 02          	testb  $0x2,0xc(%rcx)
180070138:	48 8b 01             	mov    (%rcx),%rax
18007013b:	0f b6 51 51          	movzbl 0x51(%rcx),%edx
18007013f:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
180070144:	66 89 6c 24 36       	mov    %bp,0x36(%rsp)
180070149:	75 11                	jne    0x18007015c
18007014b:	48 83 7c 24 30 10    	cmpq   $0x10,0x30(%rsp)
180070151:	72 09                	jb     0x18007015c
180070153:	85 d2                	test   %edx,%edx
180070155:	74 15                	je     0x18007016c
180070157:	f6 c2 01             	test   $0x1,%dl
18007015a:	75 10                	jne    0x18007016c
18007015c:	4c 8b c3             	mov    %rbx,%r8
18007015f:	48 8b d7             	mov    %rdi,%rdx
180070162:	48 8b ce             	mov    %rsi,%rcx
180070165:	e8 22 00 00 00       	call   0x18007018c
18007016a:	eb bc                	jmp    0x180070128
18007016c:	33 c0                	xor    %eax,%eax
18007016e:	eb 05                	jmp    0x180070175
180070170:	b8 0f 00 00 c0       	mov    $0xc000000f,%eax
180070175:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
18007017a:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
18007017f:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
180070184:	48 83 c4 20          	add    $0x20,%rsp
180070188:	5f                   	pop    %rdi
180070189:	c3                   	ret
18007018a:	cc                   	int3
18007018b:	cc                   	int3
18007018c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180070191:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
180070196:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
18007019b:	55                   	push   %rbp
18007019c:	56                   	push   %rsi
18007019d:	57                   	push   %rdi
18007019e:	41 54                	push   %r12
1800701a0:	41 55                	push   %r13
1800701a2:	41 56                	push   %r14
1800701a4:	41 57                	push   %r15
1800701a6:	48 8b ec             	mov    %rsp,%rbp
1800701a9:	48 83 ec 40          	sub    $0x40,%rsp
1800701ad:	48 8b 59 78          	mov    0x78(%rcx),%rbx
1800701b1:	4c 8b fa             	mov    %rdx,%r15
1800701b4:	48 8b 05 75 49 13 00 	mov    0x134975(%rip),%rax        # 0x1801a4b30
1800701bb:	44 8b 8b e0 00 00 00 	mov    0xe0(%rbx),%r9d
1800701c2:	48 8d 53 28          	lea    0x28(%rbx),%rdx
1800701c6:	4a 8b 0c c8          	mov    (%rax,%r9,8),%rcx
1800701ca:	48 8b 83 a0 00 00 00 	mov    0xa0(%rbx),%rax
1800701d1:	48 89 4d 58          	mov    %rcx,0x58(%rbp)
1800701d5:	48 3b 83 98 00 00 00 	cmp    0x98(%rbx),%rax
1800701dc:	75 0a                	jne    0x1800701e8
1800701de:	b8 11 00 00 c0       	mov    $0xc0000011,%eax
1800701e3:	e9 19 02 00 00       	jmp    0x180070401
1800701e8:	48 3b 43 18          	cmp    0x18(%rbx),%rax
1800701ec:	73 09                	jae    0x1800701f7
1800701ee:	33 ff                	xor    %edi,%edi
1800701f0:	4c 8b e0             	mov    %rax,%r12
1800701f3:	33 f6                	xor    %esi,%esi
1800701f5:	eb 13                	jmp    0x18007020a
1800701f7:	4c 8b 63 18          	mov    0x18(%rbx),%r12
1800701fb:	48 8b f8             	mov    %rax,%rdi
1800701fe:	8b 73 68             	mov    0x68(%rbx),%esi
180070201:	49 2b fc             	sub    %r12,%rdi
180070204:	48 f7 de             	neg    %rsi
180070207:	48 23 f7             	and    %rdi,%rsi
18007020a:	48 3b 43 18          	cmp    0x18(%rbx),%rax
18007020e:	41 be 10 00 00 00    	mov    $0x10,%r14d
180070214:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
180070218:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
18007021d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180070222:	45 8b ce             	mov    %r14d,%r9d
180070225:	73 5d                	jae    0x180070284
180070227:	4d 8b c4             	mov    %r12,%r8
18007022a:	48 8d 53 08          	lea    0x8(%rbx),%rdx
18007022e:	e8 49 07 00 00       	call   0x18007097c
180070233:	85 c0                	test   %eax,%eax
180070235:	0f 88 c6 01 00 00    	js     0x180070401
18007023b:	0f b7 55 f8          	movzwl -0x8(%rbp),%edx
18007023f:	66 41 3b d6          	cmp    %r14w,%dx
180070243:	0f 82 b3 01 00 00    	jb     0x1800703fc
180070249:	4c 8b 75 50          	mov    0x50(%rbp),%r14
18007024d:	41 39 16             	cmp    %edx,(%r14)
180070250:	73 62                	jae    0x1800702b4
180070252:	49 8b 0f             	mov    (%r15),%rcx
180070255:	48 85 c9             	test   %rcx,%rcx
180070258:	74 09                	je     0x180070263
18007025a:	e8 9d 9d 02 00       	call   0x180099ffc
18007025f:	0f b7 55 f8          	movzwl -0x8(%rbp),%edx
180070263:	0f b7 ca             	movzwl %dx,%ecx
180070266:	e8 e5 9b 02 00       	call   0x180099e50
18007026b:	0f b7 4d f8          	movzwl -0x8(%rbp),%ecx
18007026f:	41 89 0e             	mov    %ecx,(%r14)
180070272:	49 89 07             	mov    %rax,(%r15)
180070275:	48 85 c0             	test   %rax,%rax
180070278:	75 32                	jne    0x1800702ac
18007027a:	b8 17 00 00 c0       	mov    $0xc0000017,%eax
18007027f:	e9 7d 01 00 00       	jmp    0x180070401
180070284:	4c 8b c7             	mov    %rdi,%r8
180070287:	e8 f0 06 00 00       	call   0x18007097c
18007028c:	85 c0                	test   %eax,%eax
18007028e:	0f 88 6d 01 00 00    	js     0x180070401
180070294:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
180070298:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
18007029c:	4c 8b cf             	mov    %rdi,%r9
18007029f:	45 8b c6             	mov    %r14d,%r8d
1800702a2:	4c 2b ce             	sub    %rsi,%r9
1800702a5:	e8 ea 0d 00 00       	call   0x180071094
1800702aa:	eb 87                	jmp    0x180070233
1800702ac:	66 89 48 08          	mov    %cx,0x8(%rax)
1800702b0:	0f b7 55 f8          	movzwl -0x8(%rbp),%edx
1800702b4:	48 8b 43 18          	mov    0x18(%rbx),%rax
1800702b8:	49 8b 0f             	mov    (%r15),%rcx
1800702bb:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
1800702c0:	44 0f b7 ca          	movzwl %dx,%r9d
1800702c4:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1800702c9:	48 39 83 a0 00 00 00 	cmp    %rax,0xa0(%rbx)
1800702d0:	73 15                	jae    0x1800702e7
1800702d2:	4d 8b c4             	mov    %r12,%r8
1800702d5:	48 8d 53 08          	lea    0x8(%rbx),%rdx
1800702d9:	4c 8b 65 58          	mov    0x58(%rbp),%r12
1800702dd:	49 8b cc             	mov    %r12,%rcx
1800702e0:	e8 97 06 00 00       	call   0x18007097c
1800702e5:	eb 32                	jmp    0x180070319
1800702e7:	4c 8b 65 58          	mov    0x58(%rbp),%r12
1800702eb:	48 8d 53 28          	lea    0x28(%rbx),%rdx
1800702ef:	49 8b cc             	mov    %r12,%rcx
1800702f2:	4c 8b c7             	mov    %rdi,%r8
1800702f5:	e8 82 06 00 00       	call   0x18007097c
1800702fa:	85 c0                	test   %eax,%eax
1800702fc:	0f 88 ff 00 00 00    	js     0x180070401
180070302:	44 0f b7 45 f8       	movzwl -0x8(%rbp),%r8d
180070307:	4c 8b cf             	mov    %rdi,%r9
18007030a:	49 8b 17             	mov    (%r15),%rdx
18007030d:	4c 2b ce             	sub    %rsi,%r9
180070310:	48 8b 4b 78          	mov    0x78(%rbx),%rcx
180070314:	e8 7b 0d 00 00       	call   0x180071094
180070319:	8b d0                	mov    %eax,%edx
18007031b:	85 c0                	test   %eax,%eax
18007031d:	0f 88 d9 00 00 00    	js     0x1800703fc
180070323:	f6 45 fc 02          	testb  $0x2,-0x4(%rbp)
180070327:	0f 84 c0 00 00 00    	je     0x1800703ed
18007032d:	44 8a 75 40          	mov    0x40(%rbp),%r14b
180070331:	8b 4b 68             	mov    0x68(%rbx),%ecx
180070334:	48 8d 71 ff          	lea    -0x1(%rcx),%rsi
180070338:	48 03 f7             	add    %rdi,%rsi
18007033b:	48 8d 41 ff          	lea    -0x1(%rcx),%rax
18007033f:	48 f7 d0             	not    %rax
180070342:	48 23 f0             	and    %rax,%rsi
180070345:	48 3b f7             	cmp    %rdi,%rsi
180070348:	0f 82 8a 00 00 00    	jb     0x1800703d8
18007034e:	48 8b c6             	mov    %rsi,%rax
180070351:	48 8b fe             	mov    %rsi,%rdi
180070354:	48 99                	cqto
180070356:	48 f7 f9             	idiv   %rcx
180070359:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
18007035d:	48 8b d0             	mov    %rax,%rdx
180070360:	4c 8b f8             	mov    %rax,%r15
180070363:	e8 b4 00 00 00       	call   0x18007041c
180070368:	85 c0                	test   %eax,%eax
18007036a:	78 61                	js     0x1800703cd
18007036c:	8b bb 80 00 00 00    	mov    0x80(%rbx),%edi
180070372:	48 8d 45 58          	lea    0x58(%rbp),%rax
180070376:	48 83 c7 18          	add    $0x18,%rdi
18007037a:	45 8b c7             	mov    %r15d,%r8d
18007037d:	48 03 fe             	add    %rsi,%rdi
180070380:	49 c1 e8 03          	shr    $0x3,%r8
180070384:	48 8d 53 48          	lea    0x48(%rbx),%rdx
180070388:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
18007038d:	41 b9 01 00 00 00    	mov    $0x1,%r9d
180070393:	41 8b f7             	mov    %r15d,%esi
180070396:	49 8b cc             	mov    %r12,%rcx
180070399:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18007039e:	e8 d9 05 00 00       	call   0x18007097c
1800703a3:	8b d0                	mov    %eax,%edx
1800703a5:	85 c0                	test   %eax,%eax
1800703a7:	78 16                	js     0x1800703bf
1800703a9:	83 e6 07             	and    $0x7,%esi
1800703ac:	ba 01 00 00 00       	mov    $0x1,%edx
1800703b1:	40 8a ce             	mov    %sil,%cl
1800703b4:	d3 e2                	shl    %cl,%edx
1800703b6:	84 55 58             	test   %dl,0x58(%rbp)
1800703b9:	41 0f 95 c6          	setne  %r14b
1800703bd:	33 d2                	xor    %edx,%edx
1800703bf:	85 d2                	test   %edx,%edx
1800703c1:	78 39                	js     0x1800703fc
1800703c3:	45 84 f6             	test   %r14b,%r14b
1800703c6:	75 15                	jne    0x1800703dd
1800703c8:	e9 64 ff ff ff       	jmp    0x180070331
1800703cd:	3d 0d 00 00 c0       	cmp    $0xc000000d,%eax
1800703d2:	75 2d                	jne    0x180070401
1800703d4:	33 d2                	xor    %edx,%edx
1800703d6:	eb 05                	jmp    0x1800703dd
1800703d8:	ba 95 00 00 c0       	mov    $0xc0000095,%edx
1800703dd:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1800703e1:	48 03 cf             	add    %rdi,%rcx
1800703e4:	48 89 8b a0 00 00 00 	mov    %rcx,0xa0(%rbx)
1800703eb:	eb 0b                	jmp    0x1800703f8
1800703ed:	0f b7 45 f8          	movzwl -0x8(%rbp),%eax
1800703f1:	48 01 83 a0 00 00 00 	add    %rax,0xa0(%rbx)
1800703f8:	8b c2                	mov    %edx,%eax
1800703fa:	eb 05                	jmp    0x180070401
1800703fc:	b8 e9 00 00 c0       	mov    $0xc00000e9,%eax
180070401:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
180070408:	00
180070409:	48 83 c4 40          	add    $0x40,%rsp
18007040d:	41 5f                	pop    %r15
18007040f:	41 5e                	pop    %r14
180070411:	41 5d                	pop    %r13
180070413:	41 5c                	pop    %r12
180070415:	5f                   	pop    %rdi
180070416:	5e                   	pop    %rsi
180070417:	5d                   	pop    %rbp
180070418:	c3                   	ret
180070419:	cc                   	int3
18007041a:	cc                   	int3
18007041b:	cc                   	int3
18007041c:	4c 8b dc             	mov    %rsp,%r11
18007041f:	49 89 5b 08          	mov    %rbx,0x8(%r11)
180070423:	49 89 6b 10          	mov    %rbp,0x10(%r11)
180070427:	49 89 73 18          	mov    %rsi,0x18(%r11)
18007042b:	49 89 7b 20          	mov    %rdi,0x20(%r11)
18007042f:	41 54                	push   %r12
180070431:	41 56                	push   %r14
180070433:	41 57                	push   %r15
180070435:	48 83 ec 60          	sub    $0x60,%rsp
180070439:	48 8b 59 78          	mov    0x78(%rcx),%rbx
18007043d:	4c 8b f2             	mov    %rdx,%r14
180070440:	48 8b 05 e9 46 13 00 	mov    0x1346e9(%rip),%rax        # 0x1801a4b30
180070447:	41 b9 2c 00 00 00    	mov    $0x2c,%r9d
18007044d:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
180070452:	8b 8b e0 00 00 00    	mov    0xe0(%rbx),%ecx
180070458:	8b 6b 68             	mov    0x68(%rbx),%ebp
18007045b:	48 0f af ea          	imul   %rdx,%rbp
18007045f:	4c 8b 3c c8          	mov    (%rax,%rcx,8),%r15
180070463:	48 8d 53 28          	lea    0x28(%rbx),%rdx
180070467:	49 8d 43 b8          	lea    -0x48(%r11),%rax
18007046b:	4c 8b c5             	mov    %rbp,%r8
18007046e:	49 8b cf             	mov    %r15,%rcx
180070471:	49 89 43 a8          	mov    %rax,-0x58(%r11)
180070475:	e8 02 05 00 00       	call   0x18007097c
18007047a:	85 c0                	test   %eax,%eax
18007047c:	78 76                	js     0x1800704f4
18007047e:	0f b7 44 24 36       	movzwl 0x36(%rsp),%eax
180070483:	8d 34 45 2c 00 00 00 	lea    0x2c(,%rax,2),%esi
18007048a:	8b ce                	mov    %esi,%ecx
18007048c:	e8 bf 99 02 00       	call   0x180099e50
180070491:	48 8b f8             	mov    %rax,%rdi
180070494:	48 85 c0             	test   %rax,%rax
180070497:	75 07                	jne    0x1800704a0
180070499:	b8 17 00 00 c0       	mov    $0xc0000017,%eax
18007049e:	eb 54                	jmp    0x1800704f4
1800704a0:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
1800704a5:	48 8d 53 28          	lea    0x28(%rbx),%rdx
1800704a9:	44 8b ce             	mov    %esi,%r9d
1800704ac:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1800704b1:	4c 8b c5             	mov    %rbp,%r8
1800704b4:	49 8b cf             	mov    %r15,%rcx
1800704b7:	e8 c0 04 00 00       	call   0x18007097c
1800704bc:	8b f0                	mov    %eax,%esi
1800704be:	85 c0                	test   %eax,%eax
1800704c0:	79 0c                	jns    0x1800704ce
1800704c2:	48 8b cf             	mov    %rdi,%rcx
1800704c5:	e8 32 9b 02 00       	call   0x180099ffc
1800704ca:	8b c6                	mov    %esi,%eax