5a1531:	c1 e8 0a             	shr    $0xa,%eax
5a1534:	83 e0 3f             	and    $0x3f,%eax
5a1537:	33 0c 85 68 b1 6c 00 	xor    0x6cb168(,%eax,4),%ecx
5a153e:	8b c6                	mov    %esi,%eax
5a1540:	c1 e8 02             	shr    $0x2,%eax
5a1543:	83 e0 3f             	and    $0x3f,%eax
5a1546:	c1 ee 1a             	shr    $0x1a,%esi
5a1549:	33 0c 85 68 af 6c 00 	xor    0x6caf68(,%eax,4),%ecx
5a1550:	33 0c 95 68 b6 6c 00 	xor    0x6cb668(,%edx,4),%ecx
5a1557:	33 0c b5 68 b5 6c 00 	xor    0x6cb568(,%esi,4),%ecx
5a155e:	8b 55 f4             	mov    -0xc(%ebp),%edx
5a1561:	33 d9                	xor    %ecx,%ebx
5a1563:	8b 75 f0             	mov    -0x10(%ebp),%esi
5a1566:	33 d3                	xor    %ebx,%edx
5a1568:	c1 ca 04             	ror    $0x4,%edx
5a156b:	33 f3                	xor    %ebx,%esi
5a156d:	8b ca                	mov    %edx,%ecx
5a156f:	8b c2                	mov    %edx,%eax
5a1571:	c1 e8 0a             	shr    $0xa,%eax
5a1574:	c1 e9 12             	shr    $0x12,%ecx
5a1577:	83 e0 3f             	and    $0x3f,%eax
5a157a:	83 e1 3f             	and    $0x3f,%ecx
5a157d:	8b 0c 8d 68 b4 6c 00 	mov    0x6cb468(,%ecx,4),%ecx
5a1584:	33 0c 85 68 b2 6c 00 	xor    0x6cb268(,%eax,4),%ecx
5a158b:	8b c2                	mov    %edx,%eax
5a158d:	c1 e8 02             	shr    $0x2,%eax
5a1590:	83 e0 3f             	and    $0x3f,%eax
5a1593:	c1 ea 1a             	shr    $0x1a,%edx
5a1596:	33 0c 85 68 b0 6c 00 	xor    0x6cb068(,%eax,4),%ecx
5a159d:	8b c6                	mov    %esi,%eax
5a159f:	c1 e8 12             	shr    $0x12,%eax
5a15a2:	83 e0 3f             	and    $0x3f,%eax
5a15a5:	33 0c 85 68 b3 6c 00 	xor    0x6cb368(,%eax,4),%ecx
5a15ac:	8b c6                	mov    %esi,%eax
5a15ae:	c1 e8 0a             	shr    $0xa,%eax
5a15b1:	83 e0 3f             	and    $0x3f,%eax
5a15b4:	33 0c 85 68 b1 6c 00 	xor    0x6cb168(,%eax,4),%ecx
5a15bb:	8b c6                	mov    %esi,%eax
5a15bd:	c1 e8 02             	shr    $0x2,%eax
5a15c0:	83 e0 3f             	and    $0x3f,%eax
5a15c3:	c1 ee 1a             	shr    $0x1a,%esi
5a15c6:	33 0c 85 68 af 6c 00 	xor    0x6caf68(,%eax,4),%ecx
5a15cd:	33 0c 95 68 b6 6c 00 	xor    0x6cb668(,%edx,4),%ecx
5a15d4:	33 0c b5 68 b5 6c 00 	xor    0x6cb568(,%esi,4),%ecx
5a15db:	33 f9                	xor    %ecx,%edi
5a15dd:	83 6c 24 18 01       	subl   $0x1,0x18(%esp)
5a15e2:	0f 85 f8 fe ff ff    	jne    0x5a14e0
5a15e8:	8b 44 24 14          	mov    0x14(%esp),%eax
5a15ec:	c1 cb 03             	ror    $0x3,%ebx
5a15ef:	c1 cf 03             	ror    $0x3,%edi
5a15f2:	89 78 04             	mov    %edi,0x4(%eax)
5a15f5:	5f                   	pop    %edi
5a15f6:	5e                   	pop    %esi
5a15f7:	5d                   	pop    %ebp
5a15f8:	89 18                	mov    %ebx,(%eax)
5a15fa:	5b                   	pop    %ebx
5a15fb:	c3                   	ret
5a15fc:	83 c5 70             	add    $0x70,%ebp
5a15ff:	c7 44 24 18 08 00 00 	movl   $0x8,0x18(%esp)
5a1606:	00
5a1607:	8b 55 0c             	mov    0xc(%ebp),%edx
5a160a:	8d 6d f0             	lea    -0x10(%ebp),%ebp
5a160d:	8b 75 18             	mov    0x18(%ebp),%esi
5a1610:	33 d7                	xor    %edi,%edx
5a1612:	c1 ca 04             	ror    $0x4,%edx
5a1615:	33 f7                	xor    %edi,%esi
5a1617:	8b ca                	mov    %edx,%ecx
5a1619:	8b c2                	mov    %edx,%eax
5a161b:	c1 e8 0a             	shr    $0xa,%eax
5a161e:	83 e0 3f             	and    $0x3f,%eax
5a1621:	c1 e9 12             	shr    $0x12,%ecx
5a1624:	83 e1 3f             	and    $0x3f,%ecx
5a1627:	8b 0c 8d 68 b4 6c 00 	mov    0x6cb468(,%ecx,4),%ecx
5a162e:	33 0c 85 68 b2 6c 00 	xor    0x6cb268(,%eax,4),%ecx
5a1635:	8b c2                	mov    %edx,%eax
5a1637:	c1 e8 02             	shr    $0x2,%eax
5a163a:	83 e0 3f             	and    $0x3f,%eax
5a163d:	c1 ea 1a             	shr    $0x1a,%edx
5a1640:	33 0c 85 68 b0 6c 00 	xor    0x6cb068(,%eax,4),%ecx
5a1647:	8b c6                	mov    %esi,%eax
5a1649:	c1 e8 12             	shr    $0x12,%eax
5a164c:	83 e0 3f             	and    $0x3f,%eax
5a164f:	33 0c 85 68 b3 6c 00 	xor    0x6cb368(,%eax,4),%ecx
5a1656:	8b c6                	mov    %esi,%eax
5a1658:	c1 e8 0a             	shr    $0xa,%eax
5a165b:	83 e0 3f             	and    $0x3f,%eax
5a165e:	33 0c 85 68 b1 6c 00 	xor    0x6cb168(,%eax,4),%ecx
5a1665:	8b c6                	mov    %esi,%eax
5a1667:	c1 e8 02             	shr    $0x2,%eax
5a166a:	83 e0 3f             	and    $0x3f,%eax
5a166d:	c1 ee 1a             	shr    $0x1a,%esi
5a1670:	33 0c 85 68 af 6c 00 	xor    0x6caf68(,%eax,4),%ecx
5a1677:	33 0c 95 68 b6 6c 00 	xor    0x6cb668(,%edx,4),%ecx
5a167e:	33 0c b5 68 b5 6c 00 	xor    0x6cb568(,%esi,4),%ecx
5a1685:	8b 55 14             	mov    0x14(%ebp),%edx
5a1688:	33 d9                	xor    %ecx,%ebx
5a168a:	8b 75 10             	mov    0x10(%ebp),%esi
5a168d:	33 d3                	xor    %ebx,%edx
5a168f:	c1 ca 04             	ror    $0x4,%edx
5a1692:	33 f3                	xor    %ebx,%esi
5a1694:	8b ca                	mov    %edx,%ecx
5a1696:	8b c2                	mov    %edx,%eax
5a1698:	c1 e8 0a             	shr    $0xa,%eax
5a169b:	c1 e9 12             	shr    $0x12,%ecx
5a169e:	83 e0 3f             	and    $0x3f,%eax
5a16a1:	83 e1 3f             	and    $0x3f,%ecx
5a16a4:	8b 0c 8d 68 b4 6c 00 	mov    0x6cb468(,%ecx,4),%ecx
5a16ab:	33 0c 85 68 b2 6c 00 	xor    0x6cb268(,%eax,4),%ecx
5a16b2:	8b c2                	mov    %edx,%eax
5a16b4:	c1 e8 02             	shr    $0x2,%eax
5a16b7:	83 e0 3f             	and    $0x3f,%eax
5a16ba:	c1 ea 1a             	shr    $0x1a,%edx
5a16bd:	33 0c 85 68 b0 6c 00 	xor    0x6cb068(,%eax,4),%ecx
5a16c4:	8b c6                	mov    %esi,%eax
5a16c6:	c1 e8 12             	shr    $0x12,%eax
5a16c9:	83 e0 3f             	and    $0x3f,%eax
5a16cc:	33 0c 85 68 b3 6c 00 	xor    0x6cb368(,%eax,4),%ecx
5a16d3:	8b c6                	mov    %esi,%eax
5a16d5:	c1 e8 0a             	shr    $0xa,%eax
5a16d8:	83 e0 3f             	and    $0x3f,%eax
5a16db:	33 0c 85 68 b1 6c 00 	xor    0x6cb168(,%eax,4),%ecx
5a16e2:	8b c6                	mov    %esi,%eax
5a16e4:	c1 e8 02             	shr    $0x2,%eax
5a16e7:	83 e0 3f             	and    $0x3f,%eax
5a16ea:	c1 ee 1a             	shr    $0x1a,%esi
5a16ed:	33 0c 85 68 af 6c 00 	xor    0x6caf68(,%eax,4),%ecx
5a16f4:	33 0c 95 68 b6 6c 00 	xor    0x6cb668(,%edx,4),%ecx
5a16fb:	33 0c b5 68 b5 6c 00 	xor    0x6cb568(,%esi,4),%ecx
5a1702:	33 f9                	xor    %ecx,%edi
5a1704:	83 6c 24 18 01       	subl   $0x1,0x18(%esp)
5a1709:	0f 85 f8 fe ff ff    	jne    0x5a1607
5a170f:	8b 44 24 14          	mov    0x14(%esp),%eax
5a1713:	c1 cf 03             	ror    $0x3,%edi
5a1716:	c1 cb 03             	ror    $0x3,%ebx
5a1719:	89 78 04             	mov    %edi,0x4(%eax)
5a171c:	5f                   	pop    %edi
5a171d:	5e                   	pop    %esi
5a171e:	5d                   	pop    %ebp
5a171f:	89 18                	mov    %ebx,(%eax)
5a1721:	5b                   	pop    %ebx
5a1722:	c3                   	ret
5a1723:	cc                   	int3
5a1724:	cc                   	int3
5a1725:	cc                   	int3
5a1726:	cc                   	int3
5a1727:	cc                   	int3
5a1728:	cc                   	int3
5a1729:	cc                   	int3
5a172a:	cc                   	int3
5a172b:	cc                   	int3
5a172c:	cc                   	int3
5a172d:	cc                   	int3
5a172e:	cc                   	int3
5a172f:	cc                   	int3
5a1730:	56                   	push   %esi
5a1731:	57                   	push   %edi
5a1732:	8b 7c 24 0c          	mov    0xc(%esp),%edi
5a1736:	6a 01                	push   $0x1
5a1738:	ff 74 24 14          	push   0x14(%esp)
5a173c:	8b 77 04             	mov    0x4(%edi),%esi
5a173f:	8b c6                	mov    %esi,%eax
5a1741:	8b 17                	mov    (%edi),%edx
5a1743:	c1 e8 04             	shr    $0x4,%eax
5a1746:	33 c2                	xor    %edx,%eax
5a1748:	25 0f 0f 0f 0f       	and    $0xf0f0f0f,%eax
5a174d:	33 d0                	xor    %eax,%edx
5a174f:	c1 e0 04             	shl    $0x4,%eax
5a1752:	33 f0                	xor    %eax,%esi
5a1754:	8b c2                	mov    %edx,%eax
5a1756:	c1 e8 10             	shr    $0x10,%eax
5a1759:	33 c6                	xor    %esi,%eax
5a175b:	0f b7 c0             	movzwl %ax,%eax
5a175e:	33 f0                	xor    %eax,%esi
5a1760:	c1 e0 10             	shl    $0x10,%eax
5a1763:	33 d0                	xor    %eax,%edx
5a1765:	8b c6                	mov    %esi,%eax
5a1767:	c1 e8 02             	shr    $0x2,%eax
5a176a:	33 c2                	xor    %edx,%eax
5a176c:	25 33 33 33 33       	and    $0x33333333,%eax
5a1771:	33 d0                	xor    %eax,%edx
5a1773:	c1 e0 02             	shl    $0x2,%eax
5a1776:	33 f0                	xor    %eax,%esi
5a1778:	8b c2                	mov    %edx,%eax
5a177a:	c1 e8 08             	shr    $0x8,%eax
5a177d:	33 c6                	xor    %esi,%eax
5a177f:	25 ff 00 ff 00       	and    $0xff00ff,%eax
5a1784:	33 f0                	xor    %eax,%esi
5a1786:	c1 e0 08             	shl    $0x8,%eax
5a1789:	33 d0                	xor    %eax,%edx
5a178b:	8b ce                	mov    %esi,%ecx
5a178d:	d1 e9                	shr    $1,%ecx
5a178f:	33 ca                	xor    %edx,%ecx
5a1791:	81 e1 55 55 55 55    	and    $0x55555555,%ecx
5a1797:	8b c1                	mov    %ecx,%eax
5a1799:	33 c2                	xor    %edx,%eax
5a179b:	89 07                	mov    %eax,(%edi)
5a179d:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
5a17a0:	33 c6                	xor    %esi,%eax
5a17a2:	57                   	push   %edi
5a17a3:	89 47 04             	mov    %eax,0x4(%edi)
5a17a6:	e8 05 fd ff ff       	call   0x5a14b0
5a17ab:	6a 00                	push   $0x0
5a17ad:	ff 74 24 24          	push   0x24(%esp)
5a17b1:	57                   	push   %edi
5a17b2:	e8 f9 fc ff ff       	call   0x5a14b0
5a17b7:	6a 01                	push   $0x1
5a17b9:	ff 74 24 34          	push   0x34(%esp)
5a17bd:	57                   	push   %edi
5a17be:	e8 ed fc ff ff       	call   0x5a14b0
5a17c3:	8b 77 04             	mov    0x4(%edi),%esi
5a17c6:	83 c4 24             	add    $0x24,%esp
5a17c9:	8b 17                	mov    (%edi),%edx
5a17cb:	8b c6                	mov    %esi,%eax
5a17cd:	d1 e8                	shr    $1,%eax
5a17cf:	33 c2                	xor    %edx,%eax
5a17d1:	25 55 55 55 55       	and    $0x55555555,%eax
5a17d6:	33 d0                	xor    %eax,%edx
5a17d8:	03 c0                	add    %eax,%eax
5a17da:	33 f0                	xor    %eax,%esi
5a17dc:	8b c2                	mov    %edx,%eax
5a17de:	c1 e8 08             	shr    $0x8,%eax
5a17e1:	33 c6                	xor    %esi,%eax
5a17e3:	25 ff 00 ff 00       	and    $0xff00ff,%eax
5a17e8:	33 f0                	xor    %eax,%esi
5a17ea:	c1 e0 08             	shl    $0x8,%eax
5a17ed:	33 d0                	xor    %eax,%edx
5a17ef:	8b c6                	mov    %esi,%eax
5a17f1:	c1 e8 02             	shr    $0x2,%eax
5a17f4:	33 c2                	xor    %edx,%eax
5a17f6:	25 33 33 33 33       	and    $0x33333333,%eax
5a17fb:	33 d0                	xor    %eax,%edx
5a17fd:	c1 e0 02             	shl    $0x2,%eax
5a1800:	33 f0                	xor    %eax,%esi
5a1802:	8b c2                	mov    %edx,%eax
5a1804:	c1 e8 10             	shr    $0x10,%eax
5a1807:	33 c6                	xor    %esi,%eax
5a1809:	0f b7 c0             	movzwl %ax,%eax
5a180c:	33 f0                	xor    %eax,%esi
5a180e:	c1 e0 10             	shl    $0x10,%eax
5a1811:	8b ce                	mov    %esi,%ecx
5a1813:	33 d0                	xor    %eax,%edx
5a1815:	c1 e9 04             	shr    $0x4,%ecx
5a1818:	33 ca                	xor    %edx,%ecx
5a181a:	81 e1 0f 0f 0f 0f    	and    $0xf0f0f0f,%ecx
5a1820:	8b c1                	mov    %ecx,%eax
5a1822:	c1 e1 04             	shl    $0x4,%ecx
5a1825:	33 ce                	xor    %esi,%ecx
5a1827:	33 c2                	xor    %edx,%eax
5a1829:	89 07                	mov    %eax,(%edi)
5a182b:	89 4f 04             	mov    %ecx,0x4(%edi)
5a182e:	5f                   	pop    %edi
5a182f:	5e                   	pop    %esi
5a1830:	c3                   	ret
5a1831:	cc                   	int3
5a1832:	cc                   	int3
5a1833:	cc                   	int3
5a1834:	cc                   	int3
5a1835:	cc                   	int3
5a1836:	cc                   	int3
5a1837:	cc                   	int3
5a1838:	cc                   	int3
5a1839:	cc                   	int3
5a183a:	cc                   	int3
5a183b:	cc                   	int3
5a183c:	cc                   	int3
5a183d:	cc                   	int3
5a183e:	cc                   	int3
5a183f:	cc                   	int3
5a1840:	b8 08 00 00 00       	mov    $0x8,%eax
5a1845:	e8 a6 fc 03 00       	call   0x5e14f0
5a184a:	83 7c 24 2c 00       	cmpl   $0x0,0x2c(%esp)
5a184f:	8b 44 24 28          	mov    0x28(%esp),%eax
5a1853:	53                   	push   %ebx
5a1854:	55                   	push   %ebp
5a1855:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
5a1859:	56                   	push   %esi
5a185a:	8b 30                	mov    (%eax),%esi
5a185c:	57                   	push   %edi
5a185d:	0f 84 f9 00 00 00    	je     0x5a195c
5a1863:	85 ed                	test   %ebp,%ebp
5a1865:	0f 84 ec 01 00 00    	je     0x5a1a57
5a186b:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5a186f:	8b 4c 24 20          	mov    0x20(%esp),%ecx
5a1873:	2b c1                	sub    %ecx,%eax
5a1875:	8b 54 24 34          	mov    0x34(%esp),%edx
5a1879:	89 4c 24 24          	mov    %ecx,0x24(%esp)
5a187d:	89 44 24 3c          	mov    %eax,0x3c(%esp)
5a1881:	4d                   	dec    %ebp
5a1882:	85 f6                	test   %esi,%esi
5a1884:	0f 85 a4 00 00 00    	jne    0x5a192e
5a188a:	0f b6 0a             	movzbl (%edx),%ecx
5a188d:	8d 5a 01             	lea    0x1(%edx),%ebx
5a1890:	0f b6 03             	movzbl (%ebx),%eax
5a1893:	0f b6 53 03          	movzbl 0x3(%ebx),%edx
5a1897:	ff 74 24 30          	push   0x30(%esp)
5a189b:	c1 e0 08             	shl    $0x8,%eax
5a189e:	ff 74 24 30          	push   0x30(%esp)
5a18a2:	0b c8                	or     %eax,%ecx
5a18a4:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
5a18a8:	ff 74 24 30          	push   0x30(%esp)
5a18ac:	c1 e0 10             	shl    $0x10,%eax
5a18af:	0b c8                	or     %eax,%ecx
5a18b1:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
5a18b5:	c1 e0 18             	shl    $0x18,%eax
5a18b8:	0b c8                	or     %eax,%ecx
5a18ba:	0f b6 43 04          	movzbl 0x4(%ebx),%eax
5a18be:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
5a18c2:	0f b6 4b 06          	movzbl 0x6(%ebx),%ecx
5a18c6:	c1 e0 08             	shl    $0x8,%eax
5a18c9:	0b d0                	or     %eax,%edx
5a18cb:	c1 e1 08             	shl    $0x8,%ecx
5a18ce:	0f b6 43 05          	movzbl 0x5(%ebx),%eax
5a18d2:	0b c8                	or     %eax,%ecx
5a18d4:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5a18d8:	c1 e1 10             	shl    $0x10,%ecx
5a18db:	0b ca                	or     %edx,%ecx
5a18dd:	50                   	push   %eax
5a18de:	89 4c 24 24          	mov    %ecx,0x24(%esp)
5a18e2:	e8 49 fe ff ff       	call   0x5a1730
5a18e7:	8b 4c 24 20          	mov    0x20(%esp),%ecx
5a18eb:	83 c4 10             	add    $0x10,%esp
5a18ee:	8b 54 24 34          	mov    0x34(%esp),%edx
5a18f2:	8b c1                	mov    %ecx,%eax
5a18f4:	c1 e8 08             	shr    $0x8,%eax
5a18f7:	88 0a                	mov    %cl,(%edx)
5a18f9:	88 03                	mov    %al,(%ebx)
5a18fb:	8b c1                	mov    %ecx,%eax
5a18fd:	c1 e8 10             	shr    $0x10,%eax
5a1900:	88 43 01             	mov    %al,0x1(%ebx)
5a1903:	c1 e9 18             	shr    $0x18,%ecx
5a1906:	88 4b 02             	mov    %cl,0x2(%ebx)
5a1909:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5a190d:	8b c1                	mov    %ecx,%eax
5a190f:	c1 e8 08             	shr    $0x8,%eax
5a1912:	88 4b 03             	mov    %cl,0x3(%ebx)
5a1915:	88 43 04             	mov    %al,0x4(%ebx)
5a1918:	8b c1                	mov    %ecx,%eax
5a191a:	c1 e8 10             	shr    $0x10,%eax
5a191d:	c1 e9 18             	shr    $0x18,%ecx
5a1920:	88 43 05             	mov    %al,0x5(%ebx)
5a1923:	8b 44 24 3c          	mov    0x3c(%esp),%eax
5a1927:	88 4b 06             	mov    %cl,0x6(%ebx)
5a192a:	8b 4c 24 24          	mov    0x24(%esp),%ecx
5a192e:	8a 04 08             	mov    (%eax,%ecx,1),%al
5a1931:	32 04 16             	xor    (%esi,%edx,1),%al
5a1934:	88 01                	mov    %al,(%ecx)
5a1936:	41                   	inc    %ecx
5a1937:	88 04 16             	mov    %al,(%esi,%edx,1)
5a193a:	46                   	inc    %esi
5a193b:	8b 44 24 3c          	mov    0x3c(%esp),%eax