4a163f:	e8 80 ee f8 ff       	call   0x4304c4
4a1644:	8b f0                	mov    %eax,%esi
4a1646:	8b c3                	mov    %ebx,%eax
4a1648:	e8 4f f6 ff ff       	call   0x4a0c9c
4a164d:	8b d6                	mov    %esi,%edx
4a164f:	e8 58 ee f8 ff       	call   0x4304ac
4a1654:	85 c0                	test   %eax,%eax
4a1656:	75 04                	jne    0x4a165c
4a1658:	85 f6                	test   %esi,%esi
4a165a:	75 da                	jne    0x4a1636
4a165c:	8b d0                	mov    %eax,%edx
4a165e:	8b 43 04             	mov    0x4(%ebx),%eax
4a1661:	e8 8a 0d 00 00       	call   0x4a23f0
4a1666:	8b f0                	mov    %eax,%esi
4a1668:	8b c6                	mov    %esi,%eax
4a166a:	5e                   	pop    %esi
4a166b:	5b                   	pop    %ebx
4a166c:	c3                   	ret
4a166d:	8d 40 00             	lea    0x0(%eax),%eax
4a1670:	53                   	push   %ebx
4a1671:	56                   	push   %esi
4a1672:	8b f0                	mov    %eax,%esi
4a1674:	8b c6                	mov    %esi,%eax
4a1676:	e8 4d fe ff ff       	call   0x4a14c8
4a167b:	8b d8                	mov    %eax,%ebx
4a167d:	85 db                	test   %ebx,%ebx
4a167f:	74 11                	je     0x4a1692
4a1681:	8b c3                	mov    %ebx,%eax
4a1683:	8b d8                	mov    %eax,%ebx
4a1685:	8b c3                	mov    %ebx,%eax
4a1687:	e8 4c ff ff ff       	call   0x4a15d8
4a168c:	85 c0                	test   %eax,%eax
4a168e:	75 f3                	jne    0x4a1683
4a1690:	eb 09                	jmp    0x4a169b
4a1692:	8b c6                	mov    %esi,%eax
4a1694:	e8 b7 fd ff ff       	call   0x4a1450
4a1699:	8b d8                	mov    %eax,%ebx
4a169b:	8b c3                	mov    %ebx,%eax
4a169d:	5e                   	pop    %esi
4a169e:	5b                   	pop    %ebx
4a169f:	c3                   	ret
4a16a0:	53                   	push   %ebx
4a16a1:	56                   	push   %esi
4a16a2:	8b d8                	mov    %eax,%ebx
4a16a4:	8b 43 04             	mov    0x4(%ebx),%eax
4a16a7:	3b 58 0c             	cmp    0xc(%eax),%ebx
4a16aa:	75 05                	jne    0x4a16b1
4a16ac:	8b 70 10             	mov    0x10(%eax),%esi
4a16af:	eb 22                	jmp    0x4a16d3
4a16b1:	8b c3                	mov    %ebx,%eax
4a16b3:	e8 18 04 00 00       	call   0x4a1ad0
4a16b8:	84 c0                	test   %al,%al
4a16ba:	74 04                	je     0x4a16c0
4a16bc:	33 f6                	xor    %esi,%esi
4a16be:	eb 13                	jmp    0x4a16d3
4a16c0:	83 ce ff             	or     $0xffffffff,%esi
4a16c3:	8b c3                	mov    %ebx,%eax
4a16c5:	85 c0                	test   %eax,%eax
4a16c7:	74 0a                	je     0x4a16d3
4a16c9:	46                   	inc    %esi
4a16ca:	e8 a1 ff ff ff       	call   0x4a1670
4a16cf:	85 c0                	test   %eax,%eax
4a16d1:	75 f6                	jne    0x4a16c9
4a16d3:	8b c6                	mov    %esi,%eax
4a16d5:	5e                   	pop    %esi
4a16d6:	5b                   	pop    %ebx
4a16d7:	c3                   	ret
4a16d8:	55                   	push   %ebp
4a16d9:	8b ec                	mov    %esp,%ebp
4a16db:	83 c4 f0             	add    $0xfffffff0,%esp
4a16de:	53                   	push   %ebx
4a16df:	56                   	push   %esi
4a16e0:	57                   	push   %edi
4a16e1:	33 c9                	xor    %ecx,%ecx
4a16e3:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4a16e6:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4a16e9:	8b f2                	mov    %edx,%esi
4a16eb:	8b f8                	mov    %eax,%edi
4a16ed:	33 c0                	xor    %eax,%eax
4a16ef:	55                   	push   %ebp
4a16f0:	68 66 17 4a 00       	push   $0x4a1766
4a16f5:	64 ff 30             	push   %fs:(%eax)
4a16f8:	64 89 20             	mov    %esp,%fs:(%eax)
4a16fb:	8b c7                	mov    %edi,%eax
4a16fd:	e8 9a fe ff ff       	call   0x4a159c
4a1702:	8b d8                	mov    %eax,%ebx
4a1704:	eb 0c                	jmp    0x4a1712
4a1706:	8b d3                	mov    %ebx,%edx
4a1708:	8b c7                	mov    %edi,%eax
4a170a:	e8 7d fe ff ff       	call   0x4a158c
4a170f:	8b d8                	mov    %eax,%ebx
4a1711:	4e                   	dec    %esi
4a1712:	85 db                	test   %ebx,%ebx
4a1714:	74 04                	je     0x4a171a
4a1716:	85 f6                	test   %esi,%esi
4a1718:	7f ec                	jg     0x4a1706
4a171a:	85 db                	test   %ebx,%ebx
4a171c:	75 2d                	jne    0x4a174b
4a171e:	8d 45 fc             	lea    -0x4(%ebp),%eax
4a1721:	50                   	push   %eax
4a1722:	8d 55 f8             	lea    -0x8(%ebp),%edx
4a1725:	a1 dc 70 6a 00       	mov    0x6a70dc,%eax
4a172a:	e8 ed 55 f6 ff       	call   0x406d1c
4a172f:	8b 45 f8             	mov    -0x8(%ebp),%eax
4a1732:	89 75 f0             	mov    %esi,-0x10(%ebp)
4a1735:	c6 45 f4 00          	movb   $0x0,-0xc(%ebp)
4a1739:	8d 55 f0             	lea    -0x10(%ebp),%edx
4a173c:	33 c9                	xor    %ecx,%ecx
4a173e:	e8 99 8e f6 ff       	call   0x40a5dc
4a1743:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a1746:	e8 11 f4 ff ff       	call   0x4a0b5c
4a174b:	33 c0                	xor    %eax,%eax
4a174d:	5a                   	pop    %edx
4a174e:	59                   	pop    %ecx
4a174f:	59                   	pop    %ecx
4a1750:	64 89 10             	mov    %edx,%fs:(%eax)
4a1753:	68 6d 17 4a 00       	push   $0x4a176d
4a1758:	8d 45 f8             	lea    -0x8(%ebp),%eax
4a175b:	ba 02 00 00 00       	mov    $0x2,%edx
4a1760:	e8 27 31 f6 ff       	call   0x40488c
4a1765:	c3                   	ret
4a1766:	e9 a1 2a f6 ff       	jmp    0x40420c
4a176b:	eb eb                	jmp    0x4a1758
4a176d:	8b c3                	mov    %ebx,%eax
4a176f:	5f                   	pop    %edi
4a1770:	5e                   	pop    %esi
4a1771:	5b                   	pop    %ebx
4a1772:	8b e5                	mov    %ebp,%esp
4a1774:	5d                   	pop    %ebp
4a1775:	c3                   	ret
4a1776:	8b c0                	mov    %eax,%eax
4a1778:	53                   	push   %ebx
4a1779:	56                   	push   %esi
4a177a:	57                   	push   %edi
4a177b:	8b fa                	mov    %edx,%edi
4a177d:	8b d8                	mov    %eax,%ebx
4a177f:	83 ce ff             	or     $0xffffffff,%esi
4a1782:	8b c3                	mov    %ebx,%eax
4a1784:	e8 13 fe ff ff       	call   0x4a159c
4a1789:	85 c0                	test   %eax,%eax
4a178b:	74 12                	je     0x4a179f
4a178d:	46                   	inc    %esi
4a178e:	3b f8                	cmp    %eax,%edi
4a1790:	74 0d                	je     0x4a179f
4a1792:	8b d0                	mov    %eax,%edx
4a1794:	8b c3                	mov    %ebx,%eax
4a1796:	e8 f1 fd ff ff       	call   0x4a158c
4a179b:	85 c0                	test   %eax,%eax
4a179d:	75 ee                	jne    0x4a178d
4a179f:	85 c0                	test   %eax,%eax
4a17a1:	75 03                	jne    0x4a17a6
4a17a3:	83 ce ff             	or     $0xffffffff,%esi
4a17a6:	8b c6                	mov    %esi,%eax
4a17a8:	5f                   	pop    %edi
4a17a9:	5e                   	pop    %esi
4a17aa:	5b                   	pop    %ebx
4a17ab:	c3                   	ret
4a17ac:	53                   	push   %ebx
4a17ad:	33 db                	xor    %ebx,%ebx
4a17af:	e8 e8 fd ff ff       	call   0x4a159c
4a17b4:	85 c0                	test   %eax,%eax
4a17b6:	74 0c                	je     0x4a17c4
4a17b8:	43                   	inc    %ebx
4a17b9:	8b d0                	mov    %eax,%edx
4a17bb:	e8 cc fd ff ff       	call   0x4a158c
4a17c0:	85 c0                	test   %eax,%eax
4a17c2:	75 f4                	jne    0x4a17b8
4a17c4:	8b c3                	mov    %ebx,%eax
4a17c6:	5b                   	pop    %ebx
4a17c7:	c3                   	ret
4a17c8:	55                   	push   %ebp
4a17c9:	8b ec                	mov    %esp,%ebp
4a17cb:	83 c4 a4             	add    $0xffffffa4,%esp
4a17ce:	53                   	push   %ebx
4a17cf:	56                   	push   %esi
4a17d0:	57                   	push   %edi
4a17d1:	33 db                	xor    %ebx,%ebx
4a17d3:	89 5d a4             	mov    %ebx,-0x5c(%ebp)
4a17d6:	8b f1                	mov    %ecx,%esi
4a17d8:	8b d8                	mov    %eax,%ebx
4a17da:	8b 7d 0c             	mov    0xc(%ebp),%edi
4a17dd:	33 c0                	xor    %eax,%eax
4a17df:	55                   	push   %ebp
4a17e0:	68 34 19 4a 00       	push   $0x4a1934
4a17e5:	64 ff 30             	push   %fs:(%eax)
4a17e8:	64 89 20             	mov    %esp,%fs:(%eax)
4a17eb:	8b 43 04             	mov    0x4(%ebx),%eax
4a17ee:	e8 19 10 00 00       	call   0x4a280c
4a17f3:	80 7d 08 02          	cmpb   $0x2,0x8(%ebp)
4a17f7:	75 0c                	jne    0x4a1805
4a17f9:	85 f6                	test   %esi,%esi
4a17fb:	74 08                	je     0x4a1805
4a17fd:	8b 46 10             	mov    0x10(%esi),%eax
4a1800:	89 45 fc             	mov    %eax,-0x4(%ebp)
4a1803:	eb 05                	jmp    0x4a180a
4a1805:	33 c0                	xor    %eax,%eax
4a1807:	89 45 fc             	mov    %eax,-0x4(%ebp)
4a180a:	8b c3                	mov    %ebx,%eax
4a180c:	e8 9f fb ff ff       	call   0x4a13b0
4a1811:	88 45 fb             	mov    %al,-0x5(%ebp)
4a1814:	8b c3                	mov    %ebx,%eax
4a1816:	e8 69 fa ff ff       	call   0x4a1284
4a181b:	88 45 fa             	mov    %al,-0x6(%ebp)
4a181e:	8b c3                	mov    %ebx,%eax
4a1820:	e8 2b fc ff ff       	call   0x4a1450
4a1825:	85 c0                	test   %eax,%eax
4a1827:	74 31                	je     0x4a185a
4a1829:	8b c3                	mov    %ebx,%eax
4a182b:	e8 20 fc ff ff       	call   0x4a1450
4a1830:	ba 01 00 00 00       	mov    $0x1,%edx
4a1835:	e8 46 f8 ff ff       	call   0x4a1080
4a183a:	84 c0                	test   %al,%al
4a183c:	74 1c                	je     0x4a185a
4a183e:	8b c3                	mov    %ebx,%eax
4a1840:	e8 0b fc ff ff       	call   0x4a1450
4a1845:	33 d2                	xor    %edx,%edx
4a1847:	e8 0c fa ff ff       	call   0x4a1258
4a184c:	8b c3                	mov    %ebx,%eax
4a184e:	e8 fd fb ff ff       	call   0x4a1450
4a1853:	33 d2                	xor    %edx,%edx
4a1855:	e8 be fb ff ff       	call   0x4a1418
4a185a:	c7 45 d2 04 00 00 00 	movl   $0x4,-0x2e(%ebp)
4a1861:	8b 43 10             	mov    0x10(%ebx),%eax
4a1864:	89 45 d6             	mov    %eax,-0x2a(%ebp)
4a1867:	33 c0                	xor    %eax,%eax
4a1869:	89 45 f6             	mov    %eax,-0xa(%ebp)
4a186c:	8b c3                	mov    %ebx,%eax
4a186e:	e8 29 f4 ff ff       	call   0x4a0c9c
4a1873:	8d 55 d2             	lea    -0x2e(%ebp),%edx
4a1876:	e8 01 ed f8 ff       	call   0x43057c
4a187b:	8b 73 04             	mov    0x4(%ebx),%esi
4a187e:	8d 4d a8             	lea    -0x58(%ebp),%ecx
4a1881:	8b d3                	mov    %ebx,%edx
4a1883:	8b c6                	mov    %esi,%eax
4a1885:	e8 ca 09 00 00       	call   0x4a2254
4a188a:	8d 45 a8             	lea    -0x58(%ebp),%eax
4a188d:	50                   	push   %eax
4a188e:	8a 45 08             	mov    0x8(%ebp),%al
4a1891:	50                   	push   %eax
4a1892:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4a1895:	8b d7                	mov    %edi,%edx
4a1897:	8b c6                	mov    %esi,%eax
4a1899:	e8 da 09 00 00       	call   0x4a2278
4a189e:	8b f8                	mov    %eax,%edi
4a18a0:	85 ff                	test   %edi,%edi
4a18a2:	75 21                	jne    0x4a18c5
4a18a4:	8d 55 a4             	lea    -0x5c(%ebp),%edx
4a18a7:	a1 74 6f 6a 00       	mov    0x6a6f74,%eax
4a18ac:	e8 6b 54 f6 ff       	call   0x406d1c
4a18b1:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
4a18b4:	b2 01                	mov    $0x1,%dl
4a18b6:	a1 68 93 41 00       	mov    0x419368,%eax
4a18bb:	e8 88 b5 f6 ff       	call   0x40ce48
4a18c0:	e8 7f 29 f6 ff       	call   0x404244
4a18c5:	8b c3                	mov    %ebx,%eax
4a18c7:	e8 e0 fe ff ff       	call   0x4a17ac
4a18cc:	8b f0                	mov    %eax,%esi
4a18ce:	4e                   	dec    %esi
4a18cf:	83 fe 00             	cmp    $0x0,%esi
4a18d2:	7c 1b                	jl     0x4a18ef
4a18d4:	57                   	push   %edi
4a18d5:	6a 00                	push   $0x0
4a18d7:	8b d6                	mov    %esi,%edx
4a18d9:	8b c3                	mov    %ebx,%eax
4a18db:	e8 f8 fd ff ff       	call   0x4a16d8
4a18e0:	33 c9                	xor    %ecx,%ecx
4a18e2:	8b d3                	mov    %ebx,%edx
4a18e4:	e8 df fe ff ff       	call   0x4a17c8
4a18e9:	4e                   	dec    %esi
4a18ea:	83 fe ff             	cmp    $0xffffffff,%esi
4a18ed:	75 e5                	jne    0x4a18d4
4a18ef:	8b c3                	mov    %ebx,%eax
4a18f1:	e8 a6 f3 ff ff       	call   0x4a0c9c
4a18f6:	8b 53 10             	mov    0x10(%ebx),%edx
4a18f9:	e8 aa ea f8 ff       	call   0x4303a8
4a18fe:	89 7b 10             	mov    %edi,0x10(%ebx)
4a1901:	8b d3                	mov    %ebx,%edx
4a1903:	8b c3                	mov    %ebx,%eax
4a1905:	8b 08                	mov    (%eax),%ecx
4a1907:	ff 51 08             	call   *0x8(%ecx)
4a190a:	8a 55 fb             	mov    -0x5(%ebp),%dl
4a190d:	8b c3                	mov    %ebx,%eax
4a190f:	e8 04 fb ff ff       	call   0x4a1418
4a1914:	8a 55 fa             	mov    -0x6(%ebp),%dl
4a1917:	8b c3                	mov    %ebx,%eax
4a1919:	e8 6e f9 ff ff       	call   0x4a128c
4a191e:	33 c0                	xor    %eax,%eax
4a1920:	5a                   	pop    %edx
4a1921:	59                   	pop    %ecx
4a1922:	59                   	pop    %ecx
4a1923:	64 89 10             	mov    %edx,%fs:(%eax)
4a1926:	68 3b 19 4a 00       	push   $0x4a193b
4a192b:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4a192e:	e8 35 2f f6 ff       	call   0x404868
4a1933:	c3                   	ret
4a1934:	e9 d3 28 f6 ff       	jmp    0x40420c
4a1939:	eb f0                	jmp    0x4a192b
4a193b:	5f                   	pop    %edi
4a193c:	5e                   	pop    %esi
4a193d:	5b                   	pop    %ebx
4a193e:	8b e5                	mov    %ebp,%esp
4a1940:	5d                   	pop    %ebp
4a1941:	c2 08 00             	ret    $0x8
4a1944:	55                   	push   %ebp
4a1945:	8b ec                	mov    %esp,%ebp
4a1947:	83 c4 e8             	add    $0xffffffe8,%esp
4a194a:	53                   	push   %ebx
4a194b:	56                   	push   %esi
4a194c:	57                   	push   %edi
4a194d:	88 4d fb             	mov    %cl,-0x5(%ebp)
4a1950:	8b fa                	mov    %edx,%edi
4a1952:	89 45 fc             	mov    %eax,-0x4(%ebp)
4a1955:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a1958:	80 78 24 00          	cmpb   $0x0,0x24(%eax)
4a195c:	0f 85 67 01 00 00    	jne    0x4a1ac9
4a1962:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a1965:	e8 46 f3 ff ff       	call   0x4a0cb0
4a196a:	8b 90 b8 02 00 00    	mov    0x2b8(%eax),%edx
4a1970:	89 55 f0             	mov    %edx,-0x10(%ebp)
4a1973:	8b 90 bc 02 00 00    	mov    0x2bc(%eax),%edx
4a1979:	89 55 f4             	mov    %edx,-0xc(%ebp)
4a197c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a197f:	e8 2c f3 ff ff       	call   0x4a0cb0
4a1984:	8b 90 b0 02 00 00    	mov    0x2b0(%eax),%edx
4a198a:	89 55 e8             	mov    %edx,-0x18(%ebp)
4a198d:	8b 90 b4 02 00 00    	mov    0x2b4(%eax),%edx
4a1993:	89 55 ec             	mov    %edx,-0x14(%ebp)
4a1996:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a1999:	e8 12 f3 ff ff       	call   0x4a0cb0
4a199e:	33 d2                	xor    %edx,%edx
4a19a0:	89 90 b8 02 00 00    	mov    %edx,0x2b8(%eax)
4a19a6:	89 90 bc 02 00 00    	mov    %edx,0x2bc(%eax)
4a19ac:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a19af:	e8 fc f2 ff ff       	call   0x4a0cb0
4a19b4:	33 d2                	xor    %edx,%edx
4a19b6:	89 90 b0 02 00 00    	mov    %edx,0x2b0(%eax)
4a19bc:	89 90 b4 02 00 00    	mov    %edx,0x2b4(%eax)
4a19c2:	33 d2                	xor    %edx,%edx
4a19c4:	55                   	push   %ebp
4a19c5:	68 c2 1a 4a 00       	push   $0x4a1ac2
4a19ca:	64 ff 32             	push   %fs:(%edx)
4a19cd:	64 89 22             	mov    %esp,%fs:(%edx)
4a19d0:	85 ff                	test   %edi,%edi
4a19d2:	74 12                	je     0x4a19e6
4a19d4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4a19d7:	8b c7                	mov    %edi,%eax
4a19d9:	e8 da f2 ff ff       	call   0x4a0cb8
4a19de:	84 c0                	test   %al,%al
4a19e0:	0f 85 9a 00 00 00    	jne    0x4a1a80
4a19e6:	b3 01                	mov    $0x1,%bl