140d432cc:	83 e0 3f             	and    $0x3f,%eax
140d432cf:	33 94 87 00 05 00 00 	xor    0x500(%rdi,%rax,4),%edx
140d432d6:	41 8b c1             	mov    %r9d,%eax
140d432d9:	48 c1 e8 0a          	shr    $0xa,%rax
140d432dd:	83 e0 3f             	and    $0x3f,%eax
140d432e0:	33 94 87 00 03 00 00 	xor    0x300(%rdi,%rax,4),%edx
140d432e7:	41 8b c1             	mov    %r9d,%eax
140d432ea:	48 c1 e8 02          	shr    $0x2,%rax
140d432ee:	83 e0 3f             	and    $0x3f,%eax
140d432f1:	33 94 87 00 01 00 00 	xor    0x100(%rdi,%rax,4),%edx
140d432f8:	49 c1 e8 1a          	shr    $0x1a,%r8
140d432fc:	42 33 94 87 00 06 00 	xor    0x600(%rdi,%r8,4),%edx
140d43303:	00
140d43304:	44 8b 46 08          	mov    0x8(%rsi),%r8d
140d43308:	49 c1 e9 1a          	shr    $0x1a,%r9
140d4330c:	42 33 94 8f 00 07 00 	xor    0x700(%rdi,%r9,4),%edx
140d43313:	00
140d43314:	44 33 d2             	xor    %edx,%r10d
140d43317:	45 8b ca             	mov    %r10d,%r9d
140d4331a:	41 8b ca             	mov    %r10d,%ecx
140d4331d:	44 33 4e 0c          	xor    0xc(%rsi),%r9d
140d43321:	4c 33 c1             	xor    %rcx,%r8
140d43324:	41 c1 c9 04          	ror    $0x4,%r9d
140d43328:	49 8b c8             	mov    %r8,%rcx
140d4332b:	49 8b c0             	mov    %r8,%rax
140d4332e:	48 c1 e9 12          	shr    $0x12,%rcx
140d43332:	48 c1 e8 0a          	shr    $0xa,%rax
140d43336:	83 e1 3f             	and    $0x3f,%ecx
140d43339:	83 e0 3f             	and    $0x3f,%eax
140d4333c:	8b 94 8f 00 04 00 00 	mov    0x400(%rdi,%rcx,4),%edx
140d43343:	33 94 87 00 02 00 00 	xor    0x200(%rdi,%rax,4),%edx
140d4334a:	49 8b c0             	mov    %r8,%rax
140d4334d:	48 c1 e8 02          	shr    $0x2,%rax
140d43351:	83 e0 3f             	and    $0x3f,%eax
140d43354:	49 c1 e8 1a          	shr    $0x1a,%r8
140d43358:	33 14 87             	xor    (%rdi,%rax,4),%edx
140d4335b:	41 8b c1             	mov    %r9d,%eax
140d4335e:	48 c1 e8 12          	shr    $0x12,%rax
140d43362:	83 e0 3f             	and    $0x3f,%eax
140d43365:	33 94 87 00 05 00 00 	xor    0x500(%rdi,%rax,4),%edx
140d4336c:	41 8b c1             	mov    %r9d,%eax
140d4336f:	48 c1 e8 0a          	shr    $0xa,%rax
140d43373:	83 e0 3f             	and    $0x3f,%eax
140d43376:	33 94 87 00 03 00 00 	xor    0x300(%rdi,%rax,4),%edx
140d4337d:	41 8b c1             	mov    %r9d,%eax
140d43380:	49 c1 e9 1a          	shr    $0x1a,%r9
140d43384:	48 c1 e8 02          	shr    $0x2,%rax
140d43388:	83 e0 3f             	and    $0x3f,%eax
140d4338b:	33 94 87 00 01 00 00 	xor    0x100(%rdi,%rax,4),%edx
140d43392:	42 33 94 87 00 06 00 	xor    0x600(%rdi,%r8,4),%edx
140d43399:	00
140d4339a:	42 33 94 8f 00 07 00 	xor    0x700(%rdi,%r9,4),%edx
140d433a1:	00
140d433a2:	8b 06                	mov    (%rsi),%eax
140d433a4:	44 33 da             	xor    %edx,%r11d
140d433a7:	45 8b cb             	mov    %r11d,%r9d
140d433aa:	45 8b c3             	mov    %r11d,%r8d
140d433ad:	44 33 4e 04          	xor    0x4(%rsi),%r9d
140d433b1:	41 c1 c9 04          	ror    $0x4,%r9d
140d433b5:	4c 33 c0             	xor    %rax,%r8
140d433b8:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
140d433bd:	49 8b c8             	mov    %r8,%rcx
140d433c0:	48 c1 e9 12          	shr    $0x12,%rcx
140d433c4:	49 8b c0             	mov    %r8,%rax
140d433c7:	48 c1 e8 0a          	shr    $0xa,%rax
140d433cb:	83 e1 3f             	and    $0x3f,%ecx
140d433ce:	83 e0 3f             	and    $0x3f,%eax
140d433d1:	41 c1 cb 03          	ror    $0x3,%r11d
140d433d5:	8b 94 8f 00 04 00 00 	mov    0x400(%rdi,%rcx,4),%edx
140d433dc:	33 94 87 00 02 00 00 	xor    0x200(%rdi,%rax,4),%edx
140d433e3:	49 8b c0             	mov    %r8,%rax
140d433e6:	48 c1 e8 02          	shr    $0x2,%rax
140d433ea:	83 e0 3f             	and    $0x3f,%eax
140d433ed:	49 c1 e8 1a          	shr    $0x1a,%r8
140d433f1:	33 14 87             	xor    (%rdi,%rax,4),%edx
140d433f4:	49 8b c1             	mov    %r9,%rax
140d433f7:	48 c1 e8 12          	shr    $0x12,%rax
140d433fb:	83 e0 3f             	and    $0x3f,%eax
140d433fe:	33 94 87 00 05 00 00 	xor    0x500(%rdi,%rax,4),%edx
140d43405:	49 8b c1             	mov    %r9,%rax
140d43408:	48 c1 e8 0a          	shr    $0xa,%rax
140d4340c:	83 e0 3f             	and    $0x3f,%eax
140d4340f:	33 94 87 00 03 00 00 	xor    0x300(%rdi,%rax,4),%edx
140d43416:	49 8b c1             	mov    %r9,%rax
140d43419:	48 c1 e8 02          	shr    $0x2,%rax
140d4341d:	83 e0 3f             	and    $0x3f,%eax
140d43420:	49 c1 e9 1a          	shr    $0x1a,%r9
140d43424:	33 94 87 00 01 00 00 	xor    0x100(%rdi,%rax,4),%edx
140d4342b:	42 33 94 87 00 06 00 	xor    0x600(%rdi,%r8,4),%edx
140d43432:	00
140d43433:	42 33 94 8f 00 07 00 	xor    0x700(%rdi,%r9,4),%edx
140d4343a:	00
140d4343b:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
140d43440:	44 33 d2             	xor    %edx,%r10d
140d43443:	41 c1 ca 03          	ror    $0x3,%r10d
140d43447:	44 89 53 04          	mov    %r10d,0x4(%rbx)
140d4344b:	44 89 1b             	mov    %r11d,(%rbx)
140d4344e:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140d43453:	c3                   	ret
140d43454:	cc                   	int3
140d43455:	cc                   	int3
140d43456:	cc                   	int3
140d43457:	cc                   	int3
140d43458:	cc                   	int3
140d43459:	cc                   	int3
140d4345a:	cc                   	int3
140d4345b:	cc                   	int3
140d4345c:	cc                   	int3
140d4345d:	cc                   	int3
140d4345e:	cc                   	int3
140d4345f:	cc                   	int3
140d43460:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140d43465:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140d4346a:	57                   	push   %rdi
140d4346b:	b8 20 00 00 00       	mov    $0x20,%eax
140d43470:	e8 2b 80 0d 00       	call   0x140e1b4a0
140d43475:	48 2b e0             	sub    %rax,%rsp
140d43478:	44 8b 59 04          	mov    0x4(%rcx),%r11d
140d4347c:	48 8b f1             	mov    %rcx,%rsi
140d4347f:	44 8b 11             	mov    (%rcx),%r10d
140d43482:	41 8b c3             	mov    %r11d,%eax
140d43485:	c1 e8 04             	shr    $0x4,%eax
140d43488:	49 8b d8             	mov    %r8,%rbx
140d4348b:	41 33 c2             	xor    %r10d,%eax
140d4348e:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140d43494:	25 0f 0f 0f 0f       	and    $0xf0f0f0f,%eax
140d43499:	49 8b f9             	mov    %r9,%rdi
140d4349c:	44 33 d0             	xor    %eax,%r10d
140d4349f:	c1 e0 04             	shl    $0x4,%eax
140d434a2:	44 33 d8             	xor    %eax,%r11d
140d434a5:	41 8b c2             	mov    %r10d,%eax
140d434a8:	c1 e8 10             	shr    $0x10,%eax
140d434ab:	41 33 c3             	xor    %r11d,%eax
140d434ae:	0f b7 c8             	movzwl %ax,%ecx
140d434b1:	44 33 d9             	xor    %ecx,%r11d
140d434b4:	c1 e1 10             	shl    $0x10,%ecx
140d434b7:	44 33 d1             	xor    %ecx,%r10d
140d434ba:	41 8b c3             	mov    %r11d,%eax
140d434bd:	c1 e8 02             	shr    $0x2,%eax
140d434c0:	41 33 c2             	xor    %r10d,%eax
140d434c3:	25 33 33 33 33       	and    $0x33333333,%eax
140d434c8:	44 33 d0             	xor    %eax,%r10d
140d434cb:	8d 04 85 00 00 00 00 	lea    0x0(,%rax,4),%eax
140d434d2:	44 33 d8             	xor    %eax,%r11d
140d434d5:	41 8b c2             	mov    %r10d,%eax
140d434d8:	c1 e8 08             	shr    $0x8,%eax
140d434db:	41 33 c3             	xor    %r11d,%eax
140d434de:	25 ff 00 ff 00       	and    $0xff00ff,%eax
140d434e3:	44 33 d8             	xor    %eax,%r11d
140d434e6:	c1 e0 08             	shl    $0x8,%eax
140d434e9:	44 33 d0             	xor    %eax,%r10d
140d434ec:	41 8b cb             	mov    %r11d,%ecx
140d434ef:	d1 e9                	shr    $1,%ecx
140d434f1:	41 33 ca             	xor    %r10d,%ecx
140d434f4:	81 e1 55 55 55 55    	and    $0x55555555,%ecx
140d434fa:	8b c1                	mov    %ecx,%eax
140d434fc:	41 33 c2             	xor    %r10d,%eax
140d434ff:	89 06                	mov    %eax,(%rsi)
140d43501:	8d 04 09             	lea    (%rcx,%rcx,1),%eax
140d43504:	48 8b ce             	mov    %rsi,%rcx
140d43507:	41 33 c3             	xor    %r11d,%eax
140d4350a:	89 46 04             	mov    %eax,0x4(%rsi)
140d4350d:	e8 2e ed ff ff       	call   0x140d42240
140d43512:	45 33 c0             	xor    %r8d,%r8d
140d43515:	48 8b d3             	mov    %rbx,%rdx
140d43518:	48 8b ce             	mov    %rsi,%rcx
140d4351b:	e8 20 ed ff ff       	call   0x140d42240
140d43520:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140d43526:	48 8b d7             	mov    %rdi,%rdx
140d43529:	48 8b ce             	mov    %rsi,%rcx
140d4352c:	e8 0f ed ff ff       	call   0x140d42240
140d43531:	44 8b 46 04          	mov    0x4(%rsi),%r8d
140d43535:	41 8b c0             	mov    %r8d,%eax
140d43538:	8b 16                	mov    (%rsi),%edx
140d4353a:	d1 e8                	shr    $1,%eax
140d4353c:	33 c2                	xor    %edx,%eax
140d4353e:	25 55 55 55 55       	and    $0x55555555,%eax
140d43543:	33 d0                	xor    %eax,%edx
140d43545:	03 c0                	add    %eax,%eax
140d43547:	44 33 c0             	xor    %eax,%r8d
140d4354a:	8b c2                	mov    %edx,%eax
140d4354c:	c1 e8 08             	shr    $0x8,%eax
140d4354f:	41 33 c0             	xor    %r8d,%eax
140d43552:	25 ff 00 ff 00       	and    $0xff00ff,%eax
140d43557:	44 33 c0             	xor    %eax,%r8d
140d4355a:	c1 e0 08             	shl    $0x8,%eax
140d4355d:	33 d0                	xor    %eax,%edx
140d4355f:	41 8b c0             	mov    %r8d,%eax
140d43562:	c1 e8 02             	shr    $0x2,%eax
140d43565:	33 c2                	xor    %edx,%eax
140d43567:	25 33 33 33 33       	and    $0x33333333,%eax
140d4356c:	33 d0                	xor    %eax,%edx
140d4356e:	8d 04 85 00 00 00 00 	lea    0x0(,%rax,4),%eax
140d43575:	44 33 c0             	xor    %eax,%r8d
140d43578:	8b c2                	mov    %edx,%eax
140d4357a:	c1 e8 10             	shr    $0x10,%eax
140d4357d:	41 33 c0             	xor    %r8d,%eax
140d43580:	0f b7 c8             	movzwl %ax,%ecx
140d43583:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d43588:	44 33 c1             	xor    %ecx,%r8d
140d4358b:	c1 e1 10             	shl    $0x10,%ecx
140d4358e:	33 d1                	xor    %ecx,%edx
140d43590:	41 8b c8             	mov    %r8d,%ecx
140d43593:	c1 e9 04             	shr    $0x4,%ecx
140d43596:	33 ca                	xor    %edx,%ecx
140d43598:	81 e1 0f 0f 0f 0f    	and    $0xf0f0f0f,%ecx
140d4359e:	8b c1                	mov    %ecx,%eax
140d435a0:	c1 e1 04             	shl    $0x4,%ecx
140d435a3:	33 c2                	xor    %edx,%eax
140d435a5:	41 33 c8             	xor    %r8d,%ecx
140d435a8:	89 06                	mov    %eax,(%rsi)
140d435aa:	89 4e 04             	mov    %ecx,0x4(%rsi)
140d435ad:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140d435b2:	48 83 c4 20          	add    $0x20,%rsp
140d435b6:	5f                   	pop    %rdi
140d435b7:	c3                   	ret
140d435b8:	cc                   	int3
140d435b9:	cc                   	int3
140d435ba:	cc                   	int3
140d435bb:	cc                   	int3
140d435bc:	cc                   	int3
140d435bd:	cc                   	int3
140d435be:	cc                   	int3
140d435bf:	cc                   	int3
140d435c0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140d435c5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140d435ca:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140d435cf:	56                   	push   %rsi
140d435d0:	57                   	push   %rdi
140d435d1:	41 54                	push   %r12
140d435d3:	41 56                	push   %r14
140d435d5:	41 57                	push   %r15
140d435d7:	b8 30 00 00 00       	mov    $0x30,%eax
140d435dc:	e8 bf 7e 0d 00       	call   0x140e1b4a0
140d435e1:	48 2b e0             	sub    %rax,%rsp
140d435e4:	4c 8b a4 24 80 00 00 	mov    0x80(%rsp),%r12
140d435eb:	00
140d435ec:	41 8d 70 f8          	lea    -0x8(%r8),%esi
140d435f0:	48 8b e9             	mov    %rcx,%rbp
140d435f3:	48 8b da             	mov    %rdx,%rbx
140d435f6:	41 0f b6 04 24       	movzbl (%r12),%eax
140d435fb:	45 0f b6 74 24 01    	movzbl 0x1(%r12),%r14d
140d43601:	45 0f b6 7c 24 04    	movzbl 0x4(%r12),%r15d
140d43607:	41 0f b6 4c 24 07    	movzbl 0x7(%r12),%ecx
140d4360d:	41 c1 e6 08          	shl    $0x8,%r14d
140d43611:	44 0b f0             	or     %eax,%r14d
140d43614:	c1 e1 08             	shl    $0x8,%ecx
140d43617:	41 0f b6 44 24 02    	movzbl 0x2(%r12),%eax
140d4361d:	c1 e0 10             	shl    $0x10,%eax
140d43620:	44 0b f0             	or     %eax,%r14d
140d43623:	41 0f b6 44 24 03    	movzbl 0x3(%r12),%eax
140d43629:	c1 e0 18             	shl    $0x18,%eax
140d4362c:	44 0b f0             	or     %eax,%r14d
140d4362f:	41 0f b6 44 24 05    	movzbl 0x5(%r12),%eax
140d43635:	c1 e0 08             	shl    $0x8,%eax
140d43638:	44 0b f8             	or     %eax,%r15d
140d4363b:	41 0f b6 44 24 06    	movzbl 0x6(%r12),%eax
140d43641:	0b c8                	or     %eax,%ecx
140d43643:	c1 e1 10             	shl    $0x10,%ecx
140d43646:	44 0b f9             	or     %ecx,%r15d
140d43649:	83 bc 24 88 00 00 00 	cmpl   $0x0,0x88(%rsp)
140d43650:	00
140d43651:	0f 84 d5 01 00 00    	je     0x140d4382c
140d43657:	85 f6                	test   %esi,%esi
140d43659:	0f 88 d8 00 00 00    	js     0x140d43737
140d4365f:	4c 8b 64 24 78       	mov    0x78(%rsp),%r12
140d43664:	41 8b f8             	mov    %r8d,%edi
140d43667:	48 c1 ef 03          	shr    $0x3,%rdi
140d4366b:	8b c7                	mov    %edi,%eax
140d4366d:	f7 d8                	neg    %eax
140d4366f:	8d 34 c6             	lea    (%rsi,%rax,8),%esi
140d43672:	0f b6 55 00          	movzbl 0x0(%rbp),%edx
140d43676:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140d4367c:	0f b6 4d 04          	movzbl 0x4(%rbp),%ecx
140d43680:	0f b6 45 01          	movzbl 0x1(%rbp),%eax
140d43684:	c1 e0 08             	shl    $0x8,%eax
140d43687:	0b d0                	or     %eax,%edx
140d43689:	0f b6 45 02          	movzbl 0x2(%rbp),%eax
140d4368d:	c1 e0 10             	shl    $0x10,%eax
140d43690:	0b d0                	or     %eax,%edx
140d43692:	0f b6 45 03          	movzbl 0x3(%rbp),%eax
140d43696:	c1 e0 18             	shl    $0x18,%eax
140d43699:	0b d0                	or     %eax,%edx
140d4369b:	0f b6 45 05          	movzbl 0x5(%rbp),%eax
140d4369f:	c1 e0 08             	shl    $0x8,%eax
140d436a2:	41 33 d6             	xor    %r14d,%edx
140d436a5:	0b c8                	or     %eax,%ecx
140d436a7:	89 54 24 20          	mov    %edx,0x20(%rsp)
140d436ab:	0f b6 45 06          	movzbl 0x6(%rbp),%eax
140d436af:	49 8b d4             	mov    %r12,%rdx
140d436b2:	c1 e0 10             	shl    $0x10,%eax
140d436b5:	0b c8                	or     %eax,%ecx
140d436b7:	0f b6 45 07          	movzbl 0x7(%rbp),%eax
140d436bb:	c1 e0 18             	shl    $0x18,%eax
140d436be:	48 83 c5 08          	add    $0x8,%rbp
140d436c2:	0b c8                	or     %eax,%ecx
140d436c4:	41 33 cf             	xor    %r15d,%ecx
140d436c7:	89 4c 24 24          	mov    %ecx,0x24(%rsp)
140d436cb:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140d436d0:	e8 db d7 ff ff       	call   0x140d40eb0
140d436d5:	44 8b 74 24 20       	mov    0x20(%rsp),%r14d
140d436da:	41 8b c6             	mov    %r14d,%eax
140d436dd:	44 8b 7c 24 24       	mov    0x24(%rsp),%r15d
140d436e2:	c1 e8 08             	shr    $0x8,%eax
140d436e5:	44 88 33             	mov    %r14b,(%rbx)
140d436e8:	88 43 01             	mov    %al,0x1(%rbx)
140d436eb:	41 8b c6             	mov    %r14d,%eax
140d436ee:	c1 e8 10             	shr    $0x10,%eax
140d436f1:	88 43 02             	mov    %al,0x2(%rbx)
140d436f4:	41 8b c6             	mov    %r14d,%eax
140d436f7:	c1 e8 18             	shr    $0x18,%eax
140d436fa:	88 43 03             	mov    %al,0x3(%rbx)
140d436fd:	41 8b c7             	mov    %r15d,%eax
140d43700:	c1 e8 08             	shr    $0x8,%eax
140d43703:	88 43 05             	mov    %al,0x5(%rbx)
140d43706:	41 8b c7             	mov    %r15d,%eax
140d43709:	c1 e8 10             	shr    $0x10,%eax
140d4370c:	88 43 06             	mov    %al,0x6(%rbx)
140d4370f:	41 8b c7             	mov    %r15d,%eax
140d43712:	c1 e8 18             	shr    $0x18,%eax
140d43715:	88 43 07             	mov    %al,0x7(%rbx)
140d43718:	44 88 7b 04          	mov    %r15b,0x4(%rbx)
140d4371c:	48 83 c3 08          	add    $0x8,%rbx
140d43720:	48 83 ef 01          	sub    $0x1,%rdi
140d43724:	0f 85 48 ff ff ff    	jne    0x140d43672
140d4372a:	4c 8b a4 24 80 00 00 	mov    0x80(%rsp),%r12
140d43731:	00
140d43732:	4c 8b 4c 24 78       	mov    0x78(%rsp),%r9
140d43737:	83 fe f8             	cmp    $0xfffffff8,%esi
140d4373a:	0f 84 ce 02 00 00    	je     0x140d43a0e
140d43740:	8d 46 08             	lea    0x8(%rsi),%eax
140d43743:	83 c6 07             	add    $0x7,%esi
140d43746:	48 63 c8             	movslq %eax,%rcx
140d43749:	48 03 e9             	add    %rcx,%rbp
140d4374c:	33 c9                	xor    %ecx,%ecx
140d4374e:	8b d1                	mov    %ecx,%edx
140d43750:	83 fe 07             	cmp    $0x7,%esi
140d43753:	77 6a                	ja     0x140d437bf
140d43755:	4c 8d 05 a4 c8 2b ff 	lea    -0xd4375c(%rip),%r8        # 0x140000000
140d4375c:	48 63 c6             	movslq %esi,%rax
140d4375f:	41 8b 84 80 74 3a d4 	mov    0xd43a74(%r8,%rax,4),%eax
140d43766:	00
140d43767:	49 03 c0             	add    %r8,%rax
140d4376a:	ff e0                	jmp    *%rax
140d4376c:	0f b6 4d ff          	movzbl -0x1(%rbp),%ecx
140d43770:	48 ff cd             	dec    %rbp
140d43773:	c1 e1 18             	shl    $0x18,%ecx
140d43776:	0f b6 45 ff          	movzbl -0x1(%rbp),%eax
140d4377a:	48 ff cd             	dec    %rbp
140d4377d:	c1 e0 10             	shl    $0x10,%eax