14019615a:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
14019615f:	90                   	nop
140196160:	8b cf                	mov    %edi,%ecx
140196162:	48 8b c2             	mov    %rdx,%rax
140196165:	83 e1 3f             	and    $0x3f,%ecx
140196168:	48 d3 e0             	shl    %cl,%rax
14019616b:	41 8b cd             	mov    %r13d,%ecx
14019616e:	48 d3 e8             	shr    %cl,%rax
140196171:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
140196175:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
14019617b:	66 41 89 01          	mov    %ax,(%r9)
14019617f:	0f b6 41 06          	movzbl 0x6(%rcx),%eax
140196183:	03 f8                	add    %eax,%edi
140196185:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
140196189:	4c 03 c8             	add    %rax,%r9
14019618c:	4d 3b cc             	cmp    %r12,%r9
14019618f:	76 cf                	jbe    0x140196160
140196191:	4c 8b 64 24 40       	mov    0x40(%rsp),%r12
140196196:	4c 8b 6c 24 38       	mov    0x38(%rsp),%r13
14019619b:	eb 05                	jmp    0x1401961a2
14019619d:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
1401961a2:	4c 3b 4d 98          	cmp    -0x68(%rbp),%r9
1401961a6:	73 46                	jae    0x1401961ee
1401961a8:	8b cf                	mov    %edi,%ecx
1401961aa:	83 e1 3f             	and    $0x3f,%ecx
1401961ad:	48 d3 e2             	shl    %cl,%rdx
1401961b0:	41 8b ca             	mov    %r10d,%ecx
1401961b3:	f7 d9                	neg    %ecx
1401961b5:	83 e1 3f             	and    $0x3f,%ecx
1401961b8:	48 d3 ea             	shr    %cl,%rdx
1401961bb:	41 0f b6 44 93 04    	movzbl 0x4(%r11,%rdx,4),%eax
1401961c1:	41 88 01             	mov    %al,(%r9)
1401961c4:	41 80 7c 93 07 01    	cmpb   $0x1,0x7(%r11,%rdx,4)
1401961ca:	75 0a                	jne    0x1401961d6
1401961cc:	41 0f b6 44 93 06    	movzbl 0x6(%r11,%rdx,4),%eax
1401961d2:	03 f8                	add    %eax,%edi
1401961d4:	eb 18                	jmp    0x1401961ee
1401961d6:	83 ff 40             	cmp    $0x40,%edi
1401961d9:	73 13                	jae    0x1401961ee
1401961db:	41 0f b6 44 93 06    	movzbl 0x6(%r11,%rdx,4),%eax
1401961e1:	03 f8                	add    %eax,%edi
1401961e3:	b8 40 00 00 00       	mov    $0x40,%eax
1401961e8:	83 ff 40             	cmp    $0x40,%edi
1401961eb:	0f 47 f8             	cmova  %eax,%edi
1401961ee:	48 8b 4d a0          	mov    -0x60(%rbp),%rcx
1401961f2:	4c 8b 4c 24 68       	mov    0x68(%rsp),%r9
1401961f7:	48 8b c1             	mov    %rcx,%rax
1401961fa:	48 8b 55 18          	mov    0x18(%rbp),%rdx
1401961fe:	49 2b c1             	sub    %r9,%rax
140196201:	48 83 f8 08          	cmp    $0x8,%rax
140196205:	0f 82 75 03 00 00    	jb     0x140196580
14019620b:	41 83 fa 0b          	cmp    $0xb,%r10d
14019620f:	0f 87 d2 01 00 00    	ja     0x1401963e7
140196215:	83 fb 40             	cmp    $0x40,%ebx
140196218:	76 16                	jbe    0x140196230
14019621a:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
14019621f:	4c 8d 25 5a f0 1a 00 	lea    0x1af05a(%rip),%r12        # 0x140345280
140196226:	c7 44 24 20 03 00 00 	movl   $0x3,0x20(%rsp)
14019622d:	00
14019622e:	eb 77                	jmp    0x1401962a7
140196230:	4c 3b 65 20          	cmp    0x20(%rbp),%r12
140196234:	72 16                	jb     0x14019624c
140196236:	8b c3                	mov    %ebx,%eax
140196238:	48 c1 e8 03          	shr    $0x3,%rax
14019623c:	4c 2b e0             	sub    %rax,%r12
14019623f:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
140196246:	00
140196247:	83 e3 07             	and    $0x7,%ebx
14019624a:	eb 52                	jmp    0x14019629e
14019624c:	4c 3b e2             	cmp    %rdx,%r12
14019624f:	75 13                	jne    0x140196264
140196251:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
140196256:	83 fb 40             	cmp    $0x40,%ebx
140196259:	1b c0                	sbb    %eax,%eax
14019625b:	83 c0 02             	add    $0x2,%eax
14019625e:	89 44 24 20          	mov    %eax,0x20(%rsp)
140196262:	eb 48                	jmp    0x1401962ac
140196264:	4c 8b 45 18          	mov    0x18(%rbp),%r8
140196268:	8b d3                	mov    %ebx,%edx
14019626a:	c1 ea 03             	shr    $0x3,%edx
14019626d:	49 8b cc             	mov    %r12,%rcx
140196270:	8b c2                	mov    %edx,%eax
140196272:	48 2b c8             	sub    %rax,%rcx
140196275:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
14019627c:	00
14019627d:	49 3b c8             	cmp    %r8,%rcx
140196280:	73 0e                	jae    0x140196290
140196282:	49 8b d4             	mov    %r12,%rdx
140196285:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
14019628c:	00
14019628d:	41 2b d0             	sub    %r8d,%edx
140196290:	8b c2                	mov    %edx,%eax
140196292:	4c 2b e0             	sub    %rax,%r12
140196295:	6b c2 f8             	imul   $0xfffffff8,%edx,%eax
140196298:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14019629c:	03 d8                	add    %eax,%ebx
14019629e:	4d 8b 04 24          	mov    (%r12),%r8
1401962a2:	4c 89 44 24 50       	mov    %r8,0x50(%rsp)
1401962a7:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
1401962ac:	48 8b 45 a0          	mov    -0x60(%rbp),%rax
1401962b0:	33 c9                	xor    %ecx,%ecx
1401962b2:	4c 8b 7d 88          	mov    -0x78(%rbp),%r15
1401962b6:	48 83 c0 f7          	add    $0xfffffffffffffff7,%rax
1401962ba:	4c 3b c8             	cmp    %rax,%r9
1401962bd:	0f 92 c1             	setb   %cl
1401962c0:	33 c0                	xor    %eax,%eax
1401962c2:	39 44 24 20          	cmp    %eax,0x20(%rsp)
1401962c6:	0f 94 c0             	sete   %al
1401962c9:	85 c8                	test   %ecx,%eax
1401962cb:	0f 84 24 03 00 00    	je     0x1401965f5
1401962d1:	49 8b c0             	mov    %r8,%rax
1401962d4:	8b cb                	mov    %ebx,%ecx
1401962d6:	83 e1 3f             	and    $0x3f,%ecx
1401962d9:	41 f7 da             	neg    %r10d
1401962dc:	48 d3 e0             	shl    %cl,%rax
1401962df:	41 83 e2 3f          	and    $0x3f,%r10d
1401962e3:	41 8b ca             	mov    %r10d,%ecx
1401962e6:	48 d3 e8             	shr    %cl,%rax
1401962e9:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
1401962ed:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
1401962f3:	66 41 89 01          	mov    %ax,(%r9)
1401962f7:	0f b6 51 06          	movzbl 0x6(%rcx),%edx
1401962fb:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
1401962ff:	03 d3                	add    %ebx,%edx
140196301:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140196306:	4c 03 c8             	add    %rax,%r9
140196309:	49 8b c0             	mov    %r8,%rax
14019630c:	8b ca                	mov    %edx,%ecx
14019630e:	83 e1 3f             	and    $0x3f,%ecx
140196311:	48 d3 e0             	shl    %cl,%rax
140196314:	41 8b ca             	mov    %r10d,%ecx
140196317:	48 d3 e8             	shr    %cl,%rax
14019631a:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
14019631e:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
140196324:	66 41 89 01          	mov    %ax,(%r9)
140196328:	44 0f b6 41 06       	movzbl 0x6(%rcx),%r8d
14019632d:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
140196331:	44 03 c2             	add    %edx,%r8d
140196334:	4c 03 c8             	add    %rax,%r9
140196337:	41 8b c8             	mov    %r8d,%ecx
14019633a:	83 e1 3f             	and    $0x3f,%ecx
14019633d:	4c 89 4c 24 68       	mov    %r9,0x68(%rsp)
140196342:	48 8b c3             	mov    %rbx,%rax
140196345:	48 d3 e0             	shl    %cl,%rax
140196348:	41 8b ca             	mov    %r10d,%ecx
14019634b:	48 d3 e8             	shr    %cl,%rax
14019634e:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
140196352:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
140196358:	66 41 89 01          	mov    %ax,(%r9)
14019635c:	44 0f b6 49 06       	movzbl 0x6(%rcx),%r9d
140196361:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
140196365:	45 03 c8             	add    %r8d,%r9d
140196368:	4c 8b 44 24 68       	mov    0x68(%rsp),%r8
14019636d:	41 8b c9             	mov    %r9d,%ecx
140196370:	4c 03 c0             	add    %rax,%r8
140196373:	83 e1 3f             	and    $0x3f,%ecx
140196376:	48 8b c3             	mov    %rbx,%rax
140196379:	4c 89 44 24 68       	mov    %r8,0x68(%rsp)
14019637e:	48 d3 e0             	shl    %cl,%rax
140196381:	41 8b ca             	mov    %r10d,%ecx
140196384:	48 d3 e8             	shr    %cl,%rax
140196387:	49 8d 14 83          	lea    (%r11,%rax,4),%rdx
14019638b:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
140196391:	66 41 89 00          	mov    %ax,(%r8)
140196395:	0f b6 42 07          	movzbl 0x7(%rdx),%eax
140196399:	44 0f b6 42 06       	movzbl 0x6(%rdx),%r8d
14019639e:	48 8b 55 18          	mov    0x18(%rbp),%rdx
1401963a2:	45 03 c1             	add    %r9d,%r8d
1401963a5:	4c 8b 4c 24 68       	mov    0x68(%rsp),%r9
1401963aa:	41 8b c8             	mov    %r8d,%ecx
1401963ad:	4c 03 c8             	add    %rax,%r9
1401963b0:	83 e1 3f             	and    $0x3f,%ecx
1401963b3:	48 8b c3             	mov    %rbx,%rax
1401963b6:	48 d3 e0             	shl    %cl,%rax
1401963b9:	41 8b ca             	mov    %r10d,%ecx
1401963bc:	44 8b 95 a8 00 00 00 	mov    0xa8(%rbp),%r10d
1401963c3:	48 d3 e8             	shr    %cl,%rax
1401963c6:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
1401963ca:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
1401963d0:	66 41 89 01          	mov    %ax,(%r9)
1401963d4:	0f b6 59 06          	movzbl 0x6(%rcx),%ebx
1401963d8:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
1401963dc:	41 03 d8             	add    %r8d,%ebx
1401963df:	4c 03 c8             	add    %rax,%r9
1401963e2:	e9 2e fe ff ff       	jmp    0x140196215
1401963e7:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
1401963ec:	0f 1f 40 00          	nopl   0x0(%rax)
1401963f0:	83 fb 40             	cmp    $0x40,%ebx
1401963f3:	76 11                	jbe    0x140196406
1401963f5:	4c 8d 25 84 ee 1a 00 	lea    0x1aee84(%rip),%r12        # 0x140345280
1401963fc:	c7 44 24 20 03 00 00 	movl   $0x3,0x20(%rsp)
140196403:	00
140196404:	eb 72                	jmp    0x140196478
140196406:	4c 3b 65 20          	cmp    0x20(%rbp),%r12
14019640a:	72 16                	jb     0x140196422
14019640c:	8b c3                	mov    %ebx,%eax
14019640e:	48 c1 e8 03          	shr    $0x3,%rax
140196412:	4c 2b e0             	sub    %rax,%r12
140196415:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
14019641c:	00
14019641d:	83 e3 07             	and    $0x7,%ebx
140196420:	eb 4d                	jmp    0x14019646f
140196422:	4c 3b e2             	cmp    %rdx,%r12
140196425:	75 0e                	jne    0x140196435
140196427:	83 fb 40             	cmp    $0x40,%ebx
14019642a:	1b c0                	sbb    %eax,%eax
14019642c:	83 c0 02             	add    $0x2,%eax
14019642f:	89 44 24 20          	mov    %eax,0x20(%rsp)
140196433:	eb 48                	jmp    0x14019647d
140196435:	4c 8b 45 18          	mov    0x18(%rbp),%r8
140196439:	8b d3                	mov    %ebx,%edx
14019643b:	c1 ea 03             	shr    $0x3,%edx
14019643e:	49 8b cc             	mov    %r12,%rcx
140196441:	8b c2                	mov    %edx,%eax
140196443:	48 2b c8             	sub    %rax,%rcx
140196446:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
14019644d:	00
14019644e:	49 3b c8             	cmp    %r8,%rcx
140196451:	73 0e                	jae    0x140196461
140196453:	49 8b d4             	mov    %r12,%rdx
140196456:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
14019645d:	00
14019645e:	41 2b d0             	sub    %r8d,%edx
140196461:	8b c2                	mov    %edx,%eax
140196463:	4c 2b e0             	sub    %rax,%r12
140196466:	6b c2 f8             	imul   $0xfffffff8,%edx,%eax
140196469:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14019646d:	03 d8                	add    %eax,%ebx
14019646f:	4d 8b 04 24          	mov    (%r12),%r8
140196473:	4c 89 44 24 50       	mov    %r8,0x50(%rsp)
140196478:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
14019647d:	48 8b 45 a0          	mov    -0x60(%rbp),%rax
140196481:	33 c9                	xor    %ecx,%ecx
140196483:	4c 8b 6c 24 38       	mov    0x38(%rsp),%r13
140196488:	48 83 c0 f9          	add    $0xfffffffffffffff9,%rax
14019648c:	4c 3b c8             	cmp    %rax,%r9
14019648f:	0f 92 c1             	setb   %cl
140196492:	33 c0                	xor    %eax,%eax
140196494:	39 44 24 20          	cmp    %eax,0x20(%rsp)
140196498:	0f 94 c0             	sete   %al
14019649b:	85 c8                	test   %ecx,%eax
14019649d:	0f 84 52 01 00 00    	je     0x1401965f5
1401964a3:	8b cb                	mov    %ebx,%ecx
1401964a5:	49 8b c0             	mov    %r8,%rax
1401964a8:	83 e1 3f             	and    $0x3f,%ecx
1401964ab:	41 f7 da             	neg    %r10d
1401964ae:	48 d3 e0             	shl    %cl,%rax
1401964b1:	41 83 e2 3f          	and    $0x3f,%r10d
1401964b5:	41 8b ca             	mov    %r10d,%ecx
1401964b8:	48 d3 e8             	shr    %cl,%rax
1401964bb:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
1401964bf:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
1401964c5:	66 41 89 01          	mov    %ax,(%r9)
1401964c9:	0f b6 51 06          	movzbl 0x6(%rcx),%edx
1401964cd:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
1401964d1:	03 d3                	add    %ebx,%edx
1401964d3:	4c 03 c8             	add    %rax,%r9
1401964d6:	8b ca                	mov    %edx,%ecx
1401964d8:	83 e1 3f             	and    $0x3f,%ecx
1401964db:	49 8b c0             	mov    %r8,%rax
1401964de:	48 d3 e0             	shl    %cl,%rax
1401964e1:	41 8b ca             	mov    %r10d,%ecx
1401964e4:	48 d3 e8             	shr    %cl,%rax
1401964e7:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
1401964eb:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
1401964f1:	66 41 89 01          	mov    %ax,(%r9)
1401964f5:	44 0f b6 41 06       	movzbl 0x6(%rcx),%r8d
1401964fa:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
1401964fe:	44 03 c2             	add    %edx,%r8d
140196501:	4c 03 c8             	add    %rax,%r9
140196504:	41 8b c8             	mov    %r8d,%ecx
140196507:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14019650c:	83 e1 3f             	and    $0x3f,%ecx
14019650f:	48 d3 e0             	shl    %cl,%rax
140196512:	41 8b ca             	mov    %r10d,%ecx
140196515:	48 d3 e8             	shr    %cl,%rax
140196518:	49 8d 14 83          	lea    (%r11,%rax,4),%rdx
14019651c:	4c 89 4c 24 68       	mov    %r9,0x68(%rsp)
140196521:	0f b7 42 04          	movzwl 0x4(%rdx),%eax
140196525:	66 41 89 01          	mov    %ax,(%r9)
140196529:	44 0f b6 4a 06       	movzbl 0x6(%rdx),%r9d
14019652e:	0f b6 42 07          	movzbl 0x7(%rdx),%eax
140196532:	45 03 c8             	add    %r8d,%r9d
140196535:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
14019653a:	41 8b c9             	mov    %r9d,%ecx
14019653d:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
140196542:	48 03 d0             	add    %rax,%rdx
140196545:	83 e1 3f             	and    $0x3f,%ecx
140196548:	49 8b c0             	mov    %r8,%rax
14019654b:	48 d3 e0             	shl    %cl,%rax
14019654e:	41 8b ca             	mov    %r10d,%ecx
140196551:	44 8b 95 a8 00 00 00 	mov    0xa8(%rbp),%r10d
140196558:	48 d3 e8             	shr    %cl,%rax
14019655b:	49 8d 0c 83          	lea    (%r11,%rax,4),%rcx
14019655f:	41 0f b7 44 83 04    	movzwl 0x4(%r11,%rax,4),%eax
140196565:	66 89 02             	mov    %ax,(%rdx)
140196568:	0f b6 59 06          	movzbl 0x6(%rcx),%ebx
14019656c:	41 03 d9             	add    %r9d,%ebx
14019656f:	44 0f b6 49 07       	movzbl 0x7(%rcx),%r9d
140196574:	4c 03 ca             	add    %rdx,%r9
140196577:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14019657b:	e9 70 fe ff ff       	jmp    0x1401963f0
140196580:	83 fb 40             	cmp    $0x40,%ebx
140196583:	76 0e                	jbe    0x140196593
140196585:	4c 8d 25 f4 ec 1a 00 	lea    0x1aecf4(%rip),%r12        # 0x140345280
14019658c:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
140196591:	eb 6b                	jmp    0x1401965fe
140196593:	4c 3b 65 20          	cmp    0x20(%rbp),%r12
140196597:	72 1c                	jb     0x1401965b5
140196599:	8b c3                	mov    %ebx,%eax
14019659b:	48 c1 e8 03          	shr    $0x3,%rax
14019659f:	4c 2b e0             	sub    %rax,%r12
1401965a2:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
1401965a7:	83 e3 07             	and    $0x7,%ebx
1401965aa:	49 8b 04 24          	mov    (%r12),%rax
1401965ae:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
1401965b3:	eb 49                	jmp    0x1401965fe
1401965b5:	4c 3b e2             	cmp    %rdx,%r12
1401965b8:	74 44                	je     0x1401965fe
1401965ba:	8b c3                	mov    %ebx,%eax
1401965bc:	49 8b cc             	mov    %r12,%rcx
1401965bf:	c1 e8 03             	shr    $0x3,%eax
1401965c2:	48 2b c8             	sub    %rax,%rcx
1401965c5:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1401965ca:	48 3b ca             	cmp    %rdx,%rcx
1401965cd:	73 07                	jae    0x1401965d6
1401965cf:	49 8b cc             	mov    %r12,%rcx
1401965d2:	2b ca                	sub    %edx,%ecx
1401965d4:	eb 05                	jmp    0x1401965db
1401965d6:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1401965db:	8b c1                	mov    %ecx,%eax
1401965dd:	4c 2b e0             	sub    %rax,%r12
1401965e0:	6b c1 f8             	imul   $0xfffffff8,%ecx,%eax
1401965e3:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
1401965e8:	03 d8                	add    %eax,%ebx
1401965ea:	49 8b 04 24          	mov    (%r12),%rax
1401965ee:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
1401965f3:	eb 05                	jmp    0x1401965fa
1401965f5:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
1401965fa:	48 8b 4d a0          	mov    -0x60(%rbp),%rcx
1401965fe:	48 8b c1             	mov    %rcx,%rax
140196601:	49 2b c1             	sub    %r9,%rax
140196604:	48 83 f8 02          	cmp    $0x2,%rax
140196608:	0f 82 61 01 00 00    	jb     0x14019676f
14019660e:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
140196613:	48 83 c1 fe          	add    $0xfffffffffffffffe,%rcx
140196617:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
14019661c:	4c 8b e9             	mov    %rcx,%r13
14019661f:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140196625:	83 fb 40             	cmp    $0x40,%ebx