180114120:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180114125:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18011412a:	e8 c1 1f 00 00       	call   0x1801160f0
18011412f:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
180114134:	48 33 cc             	xor    %rsp,%rcx
180114137:	e8 f0 19 f0 ff       	call   0x180015b2c
18011413c:	48 83 c4 78          	add    $0x78,%rsp
180114140:	c3                   	ret
180114141:	cc                   	int3
180114142:	cc                   	int3
180114143:	cc                   	int3
180114144:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180114149:	57                   	push   %rdi
18011414a:	48 83 ec 20          	sub    $0x20,%rsp
18011414e:	83 79 10 00          	cmpl   $0x0,0x10(%rcx)
180114152:	48 8b f9             	mov    %rcx,%rdi
180114155:	bb 01 00 00 00       	mov    $0x1,%ebx
18011415a:	74 11                	je     0x18011416d
18011415c:	33 db                	xor    %ebx,%ebx
18011415e:	4d 85 c0             	test   %r8,%r8
180114161:	74 31                	je     0x180114194
180114163:	41 c7 40 10 06 00 00 	movl   $0x6,0x10(%r8)
18011416a:	00
18011416b:	eb 27                	jmp    0x180114194
18011416d:	48 83 39 00          	cmpq   $0x0,(%rcx)
180114171:	75 21                	jne    0x180114194
180114173:	48 8b 49 08          	mov    0x8(%rcx),%rcx
180114177:	48 85 c9             	test   %rcx,%rcx
18011417a:	74 18                	je     0x180114194
18011417c:	48 c1 e1 03          	shl    $0x3,%rcx
180114180:	e8 cb 5c f8 ff       	call   0x180099e50
180114185:	48 89 07             	mov    %rax,(%rdi)
180114188:	48 85 c0             	test   %rax,%rax
18011418b:	75 04                	jne    0x180114191
18011418d:	33 db                	xor    %ebx,%ebx
18011418f:	eb 03                	jmp    0x180114194
180114191:	89 5f 10             	mov    %ebx,0x10(%rdi)
180114194:	8b c3                	mov    %ebx,%eax
180114196:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18011419b:	48 83 c4 20          	add    $0x20,%rsp
18011419f:	5f                   	pop    %rdi
1801141a0:	c3                   	ret
1801141a1:	cc                   	int3
1801141a2:	cc                   	int3
1801141a3:	cc                   	int3
1801141a4:	48 8b c4             	mov    %rsp,%rax
1801141a7:	48 89 58 08          	mov    %rbx,0x8(%rax)
1801141ab:	48 89 68 10          	mov    %rbp,0x10(%rax)
1801141af:	48 89 70 18          	mov    %rsi,0x18(%rax)
1801141b3:	57                   	push   %rdi
1801141b4:	41 56                	push   %r14
1801141b6:	41 57                	push   %r15
1801141b8:	48 83 ec 40          	sub    $0x40,%rsp
1801141bc:	49 8b 39             	mov    (%r9),%rdi
1801141bf:	4d 8b f8             	mov    %r8,%r15
1801141c2:	48 8b ac 24 88 00 00 	mov    0x88(%rsp),%rbp
1801141c9:	00
1801141ca:	4c 8b c2             	mov    %rdx,%r8
1801141cd:	4c 8b b4 24 80 00 00 	mov    0x80(%rsp),%r14
1801141d4:	00
1801141d5:	49 8b f1             	mov    %r9,%rsi
1801141d8:	48 89 68 d0          	mov    %rbp,-0x30(%rax)
1801141dc:	4c 8b cf             	mov    %rdi,%r9
1801141df:	48 8b d7             	mov    %rdi,%rdx
1801141e2:	4c 89 70 c8          	mov    %r14,-0x38(%rax)
1801141e6:	e8 c9 d4 ff ff       	call   0x1801116b4
1801141eb:	33 db                	xor    %ebx,%ebx
1801141ed:	85 c0                	test   %eax,%eax
1801141ef:	74 34                	je     0x180114225
1801141f1:	4c 8b 46 38          	mov    0x38(%rsi),%r8
1801141f5:	48 8d 46 20          	lea    0x20(%rsi),%rax
1801141f9:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
1801141fe:	48 8d 14 3f          	lea    (%rdi,%rdi,1),%rdx
180114202:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
180114207:	4c 8b cf             	mov    %rdi,%r9
18011420a:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
18011420f:	49 8b ce             	mov    %r14,%rcx
180114212:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180114217:	e8 6c f7 ff ff       	call   0x180113988
18011421c:	85 c0                	test   %eax,%eax
18011421e:	74 05                	je     0x180114225
180114220:	bb 01 00 00 00       	mov    $0x1,%ebx
180114225:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
18011422a:	8b c3                	mov    %ebx,%eax
18011422c:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
180114231:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
180114236:	48 83 c4 40          	add    $0x40,%rsp
18011423a:	41 5f                	pop    %r15
18011423c:	41 5e                	pop    %r14
18011423e:	5f                   	pop    %rdi
18011423f:	c3                   	ret
180114240:	cc                   	int3
180114241:	cc                   	int3
180114242:	cc                   	int3
180114243:	cc                   	int3
180114244:	40 53                	rex push %rbx
180114246:	55                   	push   %rbp
180114247:	56                   	push   %rsi
180114248:	57                   	push   %rdi
180114249:	41 54                	push   %r12
18011424b:	41 55                	push   %r13
18011424d:	41 56                	push   %r14
18011424f:	41 57                	push   %r15
180114251:	48 83 ec 48          	sub    $0x48,%rsp
180114255:	49 8b 41 48          	mov    0x48(%r9),%rax
180114259:	49 8b f0             	mov    %r8,%rsi
18011425c:	4d 8b 11             	mov    (%r9),%r10
18011425f:	4c 8b e2             	mov    %rdx,%r12
180114262:	49 8b 59 38          	mov    0x38(%r9),%rbx
180114266:	45 33 c9             	xor    %r9d,%r9d
180114269:	4c 8b 9c 24 b0 00 00 	mov    0xb0(%rsp),%r11
180114270:	00
180114271:	4c 8b 30             	mov    (%rax),%r14
180114274:	49 f7 de             	neg    %r14
180114277:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
18011427c:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
180114281:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
180114286:	4c 89 34 24          	mov    %r14,(%rsp)
18011428a:	4d 85 d2             	test   %r10,%r10
18011428d:	74 2f                	je     0x1801142be
18011428f:	4c 8b c1             	mov    %rcx,%r8
180114292:	49 8b fb             	mov    %r11,%rdi
180114295:	4d 2b c3             	sub    %r11,%r8
180114298:	49 8b ea             	mov    %r10,%rbp
18011429b:	49 8b 04 24          	mov    (%r12),%rax
18011429f:	49 f7 24 38          	mulq   (%r8,%rdi,1)
1801142a3:	4a 8d 0c 08          	lea    (%rax,%r9,1),%rcx
1801142a7:	49 3b c9             	cmp    %r9,%rcx
1801142aa:	48 89 0f             	mov    %rcx,(%rdi)
1801142ad:	4c 8b ca             	mov    %rdx,%r9
1801142b0:	48 8d 7f 08          	lea    0x8(%rdi),%rdi
1801142b4:	49 83 d1 00          	adc    $0x0,%r9
1801142b8:	48 83 ed 01          	sub    $0x1,%rbp
1801142bc:	75 dd                	jne    0x18011429b
1801142be:	4f 89 0c d3          	mov    %r9,(%r11,%r10,8)
1801142c2:	4d 8b 03             	mov    (%r11),%r8
1801142c5:	49 8b c0             	mov    %r8,%rax
1801142c8:	49 f7 e6             	mul    %r14
1801142cb:	4c 8b e8             	mov    %rax,%r13
1801142ce:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
1801142d3:	48 8b 03             	mov    (%rbx),%rax
1801142d6:	49 f7 e5             	mul    %r13
1801142d9:	48 8b fa             	mov    %rdx,%rdi
1801142dc:	4a 8d 0c 00          	lea    (%rax,%r8,1),%rcx
1801142e0:	49 3b c8             	cmp    %r8,%rcx
1801142e3:	48 83 d7 00          	adc    $0x0,%rdi
1801142e7:	49 83 fa 01          	cmp    $0x1,%r10
1801142eb:	76 44                	jbe    0x180114331
1801142ed:	4d 8b f3             	mov    %r11,%r14
1801142f0:	4c 8d 7b 08          	lea    0x8(%rbx),%r15
1801142f4:	4c 2b f3             	sub    %rbx,%r14
1801142f7:	49 8d 6a ff          	lea    -0x1(%r10),%rbp
1801142fb:	49 8b 07             	mov    (%r15),%rax
1801142fe:	4f 8b 0c 3e          	mov    (%r14,%r15,1),%r9
180114302:	4d 8d 7f 08          	lea    0x8(%r15),%r15
180114306:	49 f7 e5             	mul    %r13
180114309:	4d 8d 04 39          	lea    (%r9,%rdi,1),%r8
18011430d:	48 8b fa             	mov    %rdx,%rdi
180114310:	4a 8d 0c 00          	lea    (%rax,%r8,1),%rcx
180114314:	48 3b c8             	cmp    %rax,%rcx
180114317:	4b 89 4c 3e f0       	mov    %rcx,-0x10(%r14,%r15,1)
18011431c:	48 83 d7 00          	adc    $0x0,%rdi
180114320:	4d 3b c1             	cmp    %r9,%r8
180114323:	48 83 d7 00          	adc    $0x0,%rdi
180114327:	48 83 ed 01          	sub    $0x1,%rbp
18011432b:	75 ce                	jne    0x1801142fb
18011432d:	4f 8b 0c d3          	mov    (%r11,%r10,8),%r9
180114331:	33 c0                	xor    %eax,%eax
180114333:	49 8d 0c 39          	lea    (%r9,%rdi,1),%rcx
180114337:	49 3b c9             	cmp    %r9,%rcx
18011433a:	4b 89 4c d3 f8       	mov    %rcx,-0x8(%r11,%r10,8)
18011433f:	0f 92 c0             	setb   %al
180114342:	4b 89 04 d3          	mov    %rax,(%r11,%r10,8)
180114346:	49 83 fa 01          	cmp    $0x1,%r10
18011434a:	0f 86 0d 01 00 00    	jbe    0x18011445d
180114350:	48 8d 43 08          	lea    0x8(%rbx),%rax
180114354:	49 8b eb             	mov    %r11,%rbp
180114357:	48 89 44 24 10       	mov    %rax,0x10(%rsp)
18011435c:	4d 8d 6a ff          	lea    -0x1(%r10),%r13
180114360:	48 2b eb             	sub    %rbx,%rbp
180114363:	4d 8d 7c 24 08       	lea    0x8(%r12),%r15
180114368:	48 8b 7c 24 08       	mov    0x8(%rsp),%rdi
18011436d:	45 33 f6             	xor    %r14d,%r14d
180114370:	49 2b fb             	sub    %r11,%rdi
180114373:	4d 8b e3             	mov    %r11,%r12
180114376:	49 8b f2             	mov    %r10,%rsi
180114379:	4d 8b 0c 24          	mov    (%r12),%r9
18011437d:	49 8b 07             	mov    (%r15),%rax
180114380:	49 f7 24 3c          	mulq   (%r12,%rdi,1)
180114384:	4b 8d 0c 31          	lea    (%r9,%r14,1),%rcx
180114388:	4c 8b f2             	mov    %rdx,%r14
18011438b:	4c 8d 04 08          	lea    (%rax,%rcx,1),%r8
18011438f:	4c 3b c0             	cmp    %rax,%r8
180114392:	4d 89 04 24          	mov    %r8,(%r12)
180114396:	4d 8d 64 24 08       	lea    0x8(%r12),%r12
18011439b:	49 83 d6 00          	adc    $0x0,%r14
18011439f:	49 3b c9             	cmp    %r9,%rcx
1801143a2:	49 83 d6 00          	adc    $0x0,%r14
1801143a6:	48 83 ee 01          	sub    $0x1,%rsi
1801143aa:	75 cd                	jne    0x180114379
1801143ac:	4b 8b 0c d3          	mov    (%r11,%r10,8),%rcx
1801143b0:	4c 8b 64 24 10       	mov    0x10(%rsp),%r12
1801143b5:	49 8d 04 0e          	lea    (%r14,%rcx,1),%rax
1801143b9:	45 33 f6             	xor    %r14d,%r14d
1801143bc:	48 3b c1             	cmp    %rcx,%rax
1801143bf:	4b 89 04 d3          	mov    %rax,(%r11,%r10,8)
1801143c3:	4d 8b 03             	mov    (%r11),%r8
1801143c6:	41 0f 92 c6          	setb   %r14b
1801143ca:	49 8b c0             	mov    %r8,%rax
1801143cd:	48 f7 24 24          	mulq   (%rsp)
1801143d1:	48 8b c8             	mov    %rax,%rcx
1801143d4:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
1801143d9:	48 89 44 24 18       	mov    %rax,0x18(%rsp)
1801143de:	48 8b 03             	mov    (%rbx),%rax
1801143e1:	48 8b 5c 24 18       	mov    0x18(%rsp),%rbx
1801143e6:	48 f7 e1             	mul    %rcx
1801143e9:	48 8b fa             	mov    %rdx,%rdi
1801143ec:	4a 8d 0c 00          	lea    (%rax,%r8,1),%rcx
1801143f0:	49 3b c8             	cmp    %r8,%rcx
1801143f3:	48 13 fe             	adc    %rsi,%rdi
1801143f6:	49 8d 72 ff          	lea    -0x1(%r10),%rsi
1801143fa:	49 8b 04 24          	mov    (%r12),%rax
1801143fe:	4d 8b 0c 2c          	mov    (%r12,%rbp,1),%r9
180114402:	4d 8d 64 24 08       	lea    0x8(%r12),%r12
180114407:	48 f7 e3             	mul    %rbx
18011440a:	4d 8d 04 39          	lea    (%r9,%rdi,1),%r8
18011440e:	48 8b fa             	mov    %rdx,%rdi
180114411:	4a 8d 0c 00          	lea    (%rax,%r8,1),%rcx
180114415:	48 3b c8             	cmp    %rax,%rcx
180114418:	49 89 4c 2c f0       	mov    %rcx,-0x10(%r12,%rbp,1)
18011441d:	48 83 d7 00          	adc    $0x0,%rdi
180114421:	4d 3b c1             	cmp    %r9,%r8
180114424:	48 83 d7 00          	adc    $0x0,%rdi
180114428:	48 83 ee 01          	sub    $0x1,%rsi
18011442c:	75 cc                	jne    0x1801143fa
18011442e:	4b 8b 0c d3          	mov    (%r11,%r10,8),%rcx
180114432:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
180114437:	48 8d 04 0f          	lea    (%rdi,%rcx,1),%rax
18011443b:	48 3b c1             	cmp    %rcx,%rax
18011443e:	4b 89 44 d3 f8       	mov    %rax,-0x8(%r11,%r10,8)
180114443:	4c 13 f6             	adc    %rsi,%r14
180114446:	49 83 c7 08          	add    $0x8,%r15
18011444a:	4f 89 34 d3          	mov    %r14,(%r11,%r10,8)
18011444e:	49 83 ed 01          	sub    $0x1,%r13
180114452:	0f 85 10 ff ff ff    	jne    0x180114368
180114458:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
18011445d:	45 33 c9             	xor    %r9d,%r9d
180114460:	4d 85 d2             	test   %r10,%r10
180114463:	74 43                	je     0x1801144a8
180114465:	48 8b fb             	mov    %rbx,%rdi
180114468:	4c 8b f6             	mov    %rsi,%r14
18011446b:	49 2b fb             	sub    %r11,%rdi
18011446e:	4d 8b c3             	mov    %r11,%r8
180114471:	4d 2b f3             	sub    %r11,%r14
180114474:	49 8b ea             	mov    %r10,%rbp
180114477:	49 8b 10             	mov    (%r8),%rdx
18011447a:	4a 3b 14 07          	cmp    (%rdi,%r8,1),%rdx
18011447e:	48 1b c9             	sbb    %rcx,%rcx
180114481:	4a 2b 14 07          	sub    (%rdi,%r8,1),%rdx
180114485:	33 c0                	xor    %eax,%eax
180114487:	49 3b d1             	cmp    %r9,%rdx
18011448a:	0f 92 c0             	setb   %al
18011448d:	49 2b d1             	sub    %r9,%rdx
180114490:	48 2b c8             	sub    %rax,%rcx
180114493:	4b 89 14 06          	mov    %rdx,(%r14,%r8,1)
180114497:	4c 8b c9             	mov    %rcx,%r9
18011449a:	4d 8d 40 08          	lea    0x8(%r8),%r8
18011449e:	41 83 e1 01          	and    $0x1,%r9d
1801144a2:	48 83 ed 01          	sub    $0x1,%rbp
1801144a6:	75 cf                	jne    0x180114477
1801144a8:	49 8d 52 01          	lea    0x1(%r10),%rdx
1801144ac:	49 8b ca             	mov    %r10,%rcx
1801144af:	4c 3b d2             	cmp    %rdx,%r10
1801144b2:	73 14                	jae    0x1801144c8
1801144b4:	33 c0                	xor    %eax,%eax
1801144b6:	4d 39 0c cb          	cmp    %r9,(%r11,%rcx,8)
1801144ba:	0f 92 c0             	setb   %al
1801144bd:	48 ff c1             	inc    %rcx
1801144c0:	4c 8b c8             	mov    %rax,%r9
1801144c3:	48 3b ca             	cmp    %rdx,%rcx
1801144c6:	72 ec                	jb     0x1801144b4
1801144c8:	49 f7 d9             	neg    %r9
1801144cb:	45 33 db             	xor    %r11d,%r11d
1801144ce:	4d 85 d2             	test   %r10,%r10
1801144d1:	74 30                	je     0x180114503
1801144d3:	48 2b de             	sub    %rsi,%rbx
1801144d6:	4c 8b 04 33          	mov    (%rbx,%rsi,1),%r8
1801144da:	33 d2                	xor    %edx,%edx
1801144dc:	4d 23 c1             	and    %r9,%r8
1801144df:	4c 03 06             	add    (%rsi),%r8
1801144e2:	4c 3b 06             	cmp    (%rsi),%r8
1801144e5:	0f 92 c2             	setb   %dl
1801144e8:	4b 8d 0c 18          	lea    (%r8,%r11,1),%rcx
1801144ec:	4c 8b da             	mov    %rdx,%r11
1801144ef:	49 3b c8             	cmp    %r8,%rcx
1801144f2:	48 89 0e             	mov    %rcx,(%rsi)
1801144f5:	48 8d 76 08          	lea    0x8(%rsi),%rsi
1801144f9:	49 83 d3 00          	adc    $0x0,%r11
1801144fd:	49 83 ea 01          	sub    $0x1,%r10
180114501:	75 d3                	jne    0x1801144d6
180114503:	b8 01 00 00 00       	mov    $0x1,%eax
180114508:	48 83 c4 48          	add    $0x48,%rsp
18011450c:	41 5f                	pop    %r15
18011450e:	41 5e                	pop    %r14
180114510:	41 5d                	pop    %r13
180114512:	41 5c                	pop    %r12
180114514:	5f                   	pop    %rdi
180114515:	5e                   	pop    %rsi
180114516:	5d                   	pop    %rbp
180114517:	5b                   	pop    %rbx
180114518:	c3                   	ret
180114519:	cc                   	int3
18011451a:	cc                   	int3
18011451b:	cc                   	int3
18011451c:	48 83 61 68 00       	andq   $0x0,0x68(%rcx)
180114521:	4c 8b d2             	mov    %rdx,%r10
180114524:	83 79 1c 00          	cmpl   $0x0,0x1c(%rcx)
180114528:	44 8b 02             	mov    (%rdx),%r8d
18011452b:	4c 8b 09             	mov    (%rcx),%r9
18011452e:	75 22                	jne    0x180114552
180114530:	41 83 e8 01          	sub    $0x1,%r8d
180114534:	0f 88 9b 00 00 00    	js     0x1801145d5
18011453a:	48 8d 05 63 fc ff ff 	lea    -0x39d(%rip),%rax        # 0x1801141a4
180114541:	48 89 41 60          	mov    %rax,0x60(%rcx)
180114545:	4b 8d 04 09          	lea    (%r9,%r9,1),%rax
180114549:	48 89 41 10          	mov    %rax,0x10(%rcx)
18011454d:	e9 83 00 00 00       	jmp    0x1801145d5
180114552:	83 79 1c 01          	cmpl   $0x1,0x1c(%rcx)
180114556:	75 7d                	jne    0x1801145d5
180114558:	41 83 e8 01          	sub    $0x1,%r8d
18011455c:	78 13                	js     0x180114571
18011455e:	48 8d 05 df fc ff ff 	lea    -0x321(%rip),%rax        # 0x180114244
180114565:	48 89 41 60          	mov    %rax,0x60(%rcx)
180114569:	49 8d 41 02          	lea    0x2(%r9),%rax
18011456d:	48 89 41 10          	mov    %rax,0x10(%rcx)
180114571:	49 83 f9 01          	cmp    $0x1,%r9
180114575:	76 5e                	jbe    0x1801145d5
180114577:	4b 8d 14 09          	lea    (%r9,%r9,1),%rdx
18011457b:	45 85 c0             	test   %r8d,%r8d
18011457e:	7e 0f                	jle    0x18011458f
180114580:	48 8d 05 19 ea 01 00 	lea    0x1ea19(%rip),%rax        # 0x180132fa0
180114587:	48 89 51 10          	mov    %rdx,0x10(%rcx)
18011458b:	48 89 41 60          	mov    %rax,0x60(%rcx)
18011458f:	41 83 c0 fe          	add    $0xfffffffe,%r8d
180114593:	78 1e                	js     0x1801145b3
180114595:	49 8b c1             	mov    %r9,%rax
180114598:	48 c1 e0 06          	shl    $0x6,%rax
18011459c:	48 3d 00 01 00 00    	cmp    $0x100,%rax
1801145a2:	75 0f                	jne    0x1801145b3
1801145a4:	48 8d 05 75 f2 01 00 	lea    0x1f275(%rip),%rax        # 0x180133820