5c1748:	41                   	inc    %ecx
5c1749:	88 04 3b             	mov    %al,(%ebx,%edi,1)
5c174c:	c6 44 3b 01 00       	movb   $0x0,0x1(%ebx,%edi,1)
5c1751:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5c1757:	72 16                	jb     0x5c176f
5c1759:	8b 56 fc             	mov    -0x4(%esi),%edx
5c175c:	83 c1 23             	add    $0x23,%ecx
5c175f:	2b f2                	sub    %edx,%esi
5c1761:	8d 46 fc             	lea    -0x4(%esi),%eax
5c1764:	83 f8 1f             	cmp    $0x1f,%eax
5c1767:	0f 87 61 01 00 00    	ja     0x5c18ce
5c176d:	8b f2                	mov    %edx,%esi
5c176f:	51                   	push   %ecx
5c1770:	56                   	push   %esi
5c1771:	e8 fc f8 01 00       	call   0x5e1072
5c1776:	83 c4 08             	add    $0x8,%esp
5c1779:	eb 18                	jmp    0x5c1793
5c177b:	8d 45 d8             	lea    -0x28(%ebp),%eax
5c177e:	50                   	push   %eax
5c177f:	57                   	push   %edi
5c1780:	e8 7b 17 02 00       	call   0x5e2f00
5c1785:	8b 45 d0             	mov    -0x30(%ebp),%eax
5c1788:	83 c4 0c             	add    $0xc,%esp
5c178b:	88 04 3b             	mov    %al,(%ebx,%edi,1)
5c178e:	c6 44 3b 01 00       	movb   $0x0,0x1(%ebx,%edi,1)
5c1793:	89 7d d8             	mov    %edi,-0x28(%ebp)
5c1796:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
5c179a:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5c179d:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
5c17a0:	8d 75 d8             	lea    -0x28(%ebp),%esi
5c17a3:	8b 45 e8             	mov    -0x18(%ebp),%eax
5c17a6:	0f 43 cf             	cmovae %edi,%ecx
5c17a9:	0f 43 f7             	cmovae %edi,%esi
5c17ac:	8d 7d c0             	lea    -0x40(%ebp),%edi
5c17af:	57                   	push   %edi
5c17b0:	8d 7d d8             	lea    -0x28(%ebp),%edi
5c17b3:	03 c1                	add    %ecx,%eax
5c17b5:	8b 4b 38             	mov    0x38(%ebx),%ecx
5c17b8:	57                   	push   %edi
5c17b9:	8d 7d d7             	lea    -0x29(%ebp),%edi
5c17bc:	57                   	push   %edi
5c17bd:	8b 11                	mov    (%ecx),%edx
5c17bf:	8d 7d cc             	lea    -0x34(%ebp),%edi
5c17c2:	57                   	push   %edi
5c17c3:	50                   	push   %eax
5c17c4:	56                   	push   %esi
5c17c5:	8d 43 40             	lea    0x40(%ebx),%eax
5c17c8:	50                   	push   %eax
5c17c9:	ff 52 18             	call   *0x18(%edx)
5c17cc:	85 c0                	test   %eax,%eax
5c17ce:	78 5e                	js     0x5c182e
5c17d0:	83 f8 01             	cmp    $0x1,%eax
5c17d3:	0f 8f b8 00 00 00    	jg     0x5c1891
5c17d9:	8d 45 d7             	lea    -0x29(%ebp),%eax
5c17dc:	39 45 c0             	cmp    %eax,-0x40(%ebp)
5c17df:	8d 45 d8             	lea    -0x28(%ebp),%eax
5c17e2:	75 75                	jne    0x5c1859
5c17e4:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
5c17e8:	8d 55 d8             	lea    -0x28(%ebp),%edx
5c17eb:	8b 7d cc             	mov    -0x34(%ebp),%edi
5c17ee:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
5c17f2:	2b f8                	sub    %eax,%edi
5c17f4:	8b 45 e8             	mov    -0x18(%ebp),%eax
5c17f7:	3b c7                	cmp    %edi,%eax
5c17f9:	0f 42 f8             	cmovb  %eax,%edi
5c17fc:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
5c1800:	0f 43 55 d8          	cmovae -0x28(%ebp),%edx
5c1804:	2b c7                	sub    %edi,%eax
5c1806:	89 45 e8             	mov    %eax,-0x18(%ebp)
5c1809:	40                   	inc    %eax
5c180a:	50                   	push   %eax
5c180b:	8d 04 3a             	lea    (%edx,%edi,1),%eax
5c180e:	50                   	push   %eax
5c180f:	52                   	push   %edx
5c1810:	e8 6b 1c 02 00       	call   0x5e3480
5c1815:	ff 73 4c             	push   0x4c(%ebx)
5c1818:	e8 2e cd 02 00       	call   0x5ee54b
5c181d:	8b d0                	mov    %eax,%edx
5c181f:	83 c4 10             	add    $0x10,%esp
5c1822:	89 55 d0             	mov    %edx,-0x30(%ebp)
5c1825:	83 fa ff             	cmp    $0xffffffff,%edx
5c1828:	0f 85 79 fe ff ff    	jne    0x5c16a7
5c182e:	83 ce ff             	or     $0xffffffff,%esi
5c1831:	8b 55 ec             	mov    -0x14(%ebp),%edx
5c1834:	83 fa 10             	cmp    $0x10,%edx
5c1837:	72 77                	jb     0x5c18b0
5c1839:	8b 4d d8             	mov    -0x28(%ebp),%ecx
5c183c:	42                   	inc    %edx
5c183d:	8b c1                	mov    %ecx,%eax
5c183f:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
5c1845:	72 5f                	jb     0x5c18a6
5c1847:	8b 49 fc             	mov    -0x4(%ecx),%ecx
5c184a:	83 c2 23             	add    $0x23,%edx
5c184d:	2b c1                	sub    %ecx,%eax
5c184f:	83 c0 fc             	add    $0xfffffffc,%eax
5c1852:	83 f8 1f             	cmp    $0x1f,%eax
5c1855:	77 77                	ja     0x5c18ce
5c1857:	eb 4d                	jmp    0x5c18a6
5c1859:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
5c185d:	8b 75 e8             	mov    -0x18(%ebp),%esi
5c1860:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
5c1864:	8b 4d cc             	mov    -0x34(%ebp),%ecx
5c1867:	2b f1                	sub    %ecx,%esi
5c1869:	03 f0                	add    %eax,%esi
5c186b:	85 f6                	test   %esi,%esi
5c186d:	7e 1c                	jle    0x5c188b
5c186f:	90                   	nop
5c1870:	ff 73 4c             	push   0x4c(%ebx)
5c1873:	0f be 44 0e ff       	movsbl -0x1(%esi,%ecx,1),%eax
5c1878:	4e                   	dec    %esi
5c1879:	50                   	push   %eax
5c187a:	e8 d7 ec 03 00       	call   0x600556
5c187f:	83 c4 08             	add    $0x8,%esp
5c1882:	85 f6                	test   %esi,%esi
5c1884:	7e 05                	jle    0x5c188b
5c1886:	8b 4d cc             	mov    -0x34(%ebp),%ecx
5c1889:	eb e5                	jmp    0x5c1870
5c188b:	0f b6 75 d7          	movzbl -0x29(%ebp),%esi
5c188f:	eb a0                	jmp    0x5c1831
5c1891:	83 f8 03             	cmp    $0x3,%eax
5c1894:	75 98                	jne    0x5c182e
5c1896:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
5c189a:	8d 45 d8             	lea    -0x28(%ebp),%eax
5c189d:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
5c18a1:	0f be 30             	movsbl (%eax),%esi
5c18a4:	eb 8b                	jmp    0x5c1831
5c18a6:	52                   	push   %edx
5c18a7:	51                   	push   %ecx
5c18a8:	e8 c5 f7 01 00       	call   0x5e1072
5c18ad:	83 c4 08             	add    $0x8,%esp
5c18b0:	8b c6                	mov    %esi,%eax
5c18b2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5c18b5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5c18bc:	59                   	pop    %ecx
5c18bd:	5f                   	pop    %edi
5c18be:	5e                   	pop    %esi
5c18bf:	5b                   	pop    %ebx
5c18c0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5c18c3:	33 cd                	xor    %ebp,%ecx
5c18c5:	e8 10 fc 01 00       	call   0x5e14da
5c18ca:	8b e5                	mov    %ebp,%esp
5c18cc:	5d                   	pop    %ebp
5c18cd:	c3                   	ret
5c18ce:	e8 5c b6 02 00       	call   0x5ecf2f
5c18d3:	e8 58 37 e8 ff       	call   0x445030
5c18d8:	cc                   	int3
5c18d9:	cc                   	int3
5c18da:	cc                   	int3
5c18db:	cc                   	int3
5c18dc:	cc                   	int3
5c18dd:	cc                   	int3
5c18de:	cc                   	int3
5c18df:	cc                   	int3
5c18e0:	56                   	push   %esi
5c18e1:	8b f1                	mov    %ecx,%esi
5c18e3:	8b 46 1c             	mov    0x1c(%esi),%eax
5c18e6:	8b 08                	mov    (%eax),%ecx
5c18e8:	85 c9                	test   %ecx,%ecx
5c18ea:	74 10                	je     0x5c18fc
5c18ec:	8b 46 2c             	mov    0x2c(%esi),%eax
5c18ef:	8b 00                	mov    (%eax),%eax
5c18f1:	03 c1                	add    %ecx,%eax
5c18f3:	3b c8                	cmp    %eax,%ecx
5c18f5:	73 05                	jae    0x5c18fc
5c18f7:	0f b6 01             	movzbl (%ecx),%eax
5c18fa:	5e                   	pop    %esi
5c18fb:	c3                   	ret
5c18fc:	8b 06                	mov    (%esi),%eax
5c18fe:	8b ce                	mov    %esi,%ecx
5c1900:	57                   	push   %edi
5c1901:	ff 50 1c             	call   *0x1c(%eax)
5c1904:	8b f8                	mov    %eax,%edi
5c1906:	83 ff ff             	cmp    $0xffffffff,%edi
5c1909:	75 05                	jne    0x5c1910
5c190b:	5f                   	pop    %edi
5c190c:	0b c0                	or     %eax,%eax
5c190e:	5e                   	pop    %esi
5c190f:	c3                   	ret
5c1910:	8b 06                	mov    (%esi),%eax
5c1912:	8b ce                	mov    %esi,%ecx
5c1914:	57                   	push   %edi
5c1915:	ff 50 10             	call   *0x10(%eax)
5c1918:	8b c7                	mov    %edi,%eax
5c191a:	5f                   	pop    %edi
5c191b:	5e                   	pop    %esi
5c191c:	c3                   	ret
5c191d:	cc                   	int3
5c191e:	cc                   	int3
5c191f:	cc                   	int3
5c1920:	55                   	push   %ebp
5c1921:	8b ec                	mov    %esp,%ebp
5c1923:	8b 45 10             	mov    0x10(%ebp),%eax
5c1926:	83 ec 08             	sub    $0x8,%esp
5c1929:	57                   	push   %edi
5c192a:	8b f9                	mov    %ecx,%edi
5c192c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5c192f:	85 c0                	test   %eax,%eax
5c1931:	7f 11                	jg     0x5c1944
5c1933:	7c 04                	jl     0x5c1939
5c1935:	85 c9                	test   %ecx,%ecx
5c1937:	75 0b                	jne    0x5c1944
5c1939:	33 c0                	xor    %eax,%eax
5c193b:	33 d2                	xor    %edx,%edx
5c193d:	5f                   	pop    %edi
5c193e:	8b e5                	mov    %ebp,%esp
5c1940:	5d                   	pop    %ebp
5c1941:	c2 0c 00             	ret    $0xc
5c1944:	83 7f 38 00          	cmpl   $0x0,0x38(%edi)
5c1948:	53                   	push   %ebx
5c1949:	56                   	push   %esi
5c194a:	8b d9                	mov    %ecx,%ebx
5c194c:	0f 84 c0 00 00 00    	je     0x5c1a12
5c1952:	89 45 fc             	mov    %eax,-0x4(%ebp)
5c1955:	8b 45 08             	mov    0x8(%ebp),%eax
5c1958:	89 45 08             	mov    %eax,0x8(%ebp)
5c195b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5c1960:	8b cf                	mov    %edi,%ecx
5c1962:	e8 09 dc e7 ff       	call   0x43f570
5c1967:	8b ca                	mov    %edx,%ecx
5c1969:	8b f0                	mov    %eax,%esi
5c196b:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5c196e:	85 c9                	test   %ecx,%ecx
5c1970:	7c 40                	jl     0x5c19b2
5c1972:	7f 04                	jg     0x5c1978
5c1974:	85 f6                	test   %esi,%esi
5c1976:	74 3a                	je     0x5c19b2
5c1978:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c197b:	3b c1                	cmp    %ecx,%eax
5c197d:	7f 0b                	jg     0x5c198a
5c197f:	7c 04                	jl     0x5c1985
5c1981:	3b de                	cmp    %esi,%ebx
5c1983:	73 05                	jae    0x5c198a
5c1985:	8b f3                	mov    %ebx,%esi
5c1987:	89 45 f8             	mov    %eax,-0x8(%ebp)
5c198a:	8b 47 1c             	mov    0x1c(%edi),%eax
5c198d:	56                   	push   %esi
5c198e:	ff 30                	push   (%eax)
5c1990:	ff 75 08             	push   0x8(%ebp)
5c1993:	e8 68 15 02 00       	call   0x5e2f00
5c1998:	8b 47 2c             	mov    0x2c(%edi),%eax
5c199b:	83 c4 0c             	add    $0xc,%esp
5c199e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5c19a1:	2b de                	sub    %esi,%ebx
5c19a3:	1b 4d f8             	sbb    -0x8(%ebp),%ecx
5c19a6:	29 30                	sub    %esi,(%eax)
5c19a8:	8b 47 1c             	mov    0x1c(%edi),%eax
5c19ab:	01 30                	add    %esi,(%eax)
5c19ad:	8b 45 08             	mov    0x8(%ebp),%eax
5c19b0:	eb 21                	jmp    0x5c19d3
5c19b2:	8b 07                	mov    (%edi),%eax
5c19b4:	8b cf                	mov    %edi,%ecx
5c19b6:	ff 50 1c             	call   *0x1c(%eax)
5c19b9:	8b c8                	mov    %eax,%ecx
5c19bb:	83 f9 ff             	cmp    $0xffffffff,%ecx
5c19be:	74 3c                	je     0x5c19fc
5c19c0:	8b 45 08             	mov    0x8(%ebp),%eax
5c19c3:	83 c3 ff             	add    $0xffffffff,%ebx
5c19c6:	be 01 00 00 00       	mov    $0x1,%esi
5c19cb:	88 08                	mov    %cl,(%eax)
5c19cd:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5c19d0:	83 d1 ff             	adc    $0xffffffff,%ecx
5c19d3:	03 c6                	add    %esi,%eax
5c19d5:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5c19d8:	89 45 08             	mov    %eax,0x8(%ebp)
5c19db:	85 c9                	test   %ecx,%ecx
5c19dd:	7f 81                	jg     0x5c1960
5c19df:	7c 1e                	jl     0x5c19ff
5c19e1:	85 db                	test   %ebx,%ebx
5c19e3:	0f 85 77 ff ff ff    	jne    0x5c1960
5c19e9:	8b 45 0c             	mov    0xc(%ebp),%eax
5c19ec:	8b 55 10             	mov    0x10(%ebp),%edx
5c19ef:	2b c3                	sub    %ebx,%eax
5c19f1:	5e                   	pop    %esi
5c19f2:	5b                   	pop    %ebx
5c19f3:	1b d1                	sbb    %ecx,%edx
5c19f5:	5f                   	pop    %edi
5c19f6:	8b e5                	mov    %ebp,%esp
5c19f8:	5d                   	pop    %ebp
5c19f9:	c2 0c 00             	ret    $0xc
5c19fc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5c19ff:	8b 45 0c             	mov    0xc(%ebp),%eax
5c1a02:	8b 55 10             	mov    0x10(%ebp),%edx
5c1a05:	2b c3                	sub    %ebx,%eax
5c1a07:	5e                   	pop    %esi
5c1a08:	5b                   	pop    %ebx
5c1a09:	1b d1                	sbb    %ecx,%edx
5c1a0b:	5f                   	pop    %edi
5c1a0c:	8b e5                	mov    %ebp,%esp
5c1a0e:	5d                   	pop    %ebp
5c1a0f:	c2 0c 00             	ret    $0xc
5c1a12:	8b 47 1c             	mov    0x1c(%edi),%eax
5c1a15:	8b 10                	mov    (%eax),%edx
5c1a17:	85 d2                	test   %edx,%edx
5c1a19:	74 07                	je     0x5c1a22
5c1a1b:	8b 47 2c             	mov    0x2c(%edi),%eax
5c1a1e:	8b 00                	mov    (%eax),%eax
5c1a20:	eb 02                	jmp    0x5c1a24
5c1a22:	33 c0                	xor    %eax,%eax
5c1a24:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5c1a27:	85 c0                	test   %eax,%eax
5c1a29:	74 2c                	je     0x5c1a57
5c1a2b:	8b 5d 08             	mov    0x8(%ebp),%ebx
5c1a2e:	3b c1                	cmp    %ecx,%eax
5c1a30:	8b f1                	mov    %ecx,%esi
5c1a32:	0f 42 f0             	cmovb  %eax,%esi
5c1a35:	56                   	push   %esi
5c1a36:	52                   	push   %edx
5c1a37:	53                   	push   %ebx
5c1a38:	e8 c3 14 02 00       	call   0x5e2f00
5c1a3d:	8b 47 2c             	mov    0x2c(%edi),%eax
5c1a40:	03 de                	add    %esi,%ebx
5c1a42:	89 5d 08             	mov    %ebx,0x8(%ebp)
5c1a45:	83 c4 0c             	add    $0xc,%esp
5c1a48:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5c1a4b:	2b de                	sub    %esi,%ebx
5c1a4d:	29 30                	sub    %esi,(%eax)
5c1a4f:	8b 47 1c             	mov    0x1c(%edi),%eax
5c1a52:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5c1a55:	01 30                	add    %esi,(%eax)
5c1a57:	83 7f 4c 00          	cmpl   $0x0,0x4c(%edi)
5c1a5b:	8b 75 08             	mov    0x8(%ebp),%esi
5c1a5e:	0f 84 98 00 00 00    	je     0x5c1afc
5c1a64:	8b 4f 0c             	mov    0xc(%edi),%ecx
5c1a67:	8d 47 3c             	lea    0x3c(%edi),%eax
5c1a6a:	39 01                	cmp    %eax,(%ecx)
5c1a6c:	75 17                	jne    0x5c1a85
5c1a6e:	8b 47 0c             	mov    0xc(%edi),%eax
5c1a71:	8b 57 54             	mov    0x54(%edi),%edx
5c1a74:	8b 4f 50             	mov    0x50(%edi),%ecx
5c1a77:	2b d1                	sub    %ecx,%edx
5c1a79:	89 08                	mov    %ecx,(%eax)
5c1a7b:	8b 47 1c             	mov    0x1c(%edi),%eax
5c1a7e:	89 08                	mov    %ecx,(%eax)
5c1a80:	8b 47 2c             	mov    0x2c(%edi),%eax
5c1a83:	89 10                	mov    %edx,(%eax)
5c1a85:	8b 55 fc             	mov    -0x4(%ebp),%edx
5c1a88:	89 55 08             	mov    %edx,0x8(%ebp)
5c1a8b:	81 fa ff 0f 00 00    	cmp    $0xfff,%edx
5c1a91:	76 27                	jbe    0x5c1aba
5c1a93:	ff 77 4c             	push   0x4c(%edi)
5c1a96:	68 ff 0f 00 00       	push   $0xfff
5c1a9b:	6a 01                	push   $0x1
5c1a9d:	56                   	push   %esi
5c1a9e:	e8 34 c6 02 00       	call   0x5ee0d7
5c1aa3:	2b d8                	sub    %eax,%ebx
5c1aa5:	83 c4 10             	add    $0x10,%esp
5c1aa8:	03 f0                	add    %eax,%esi
5c1aaa:	89 5d 08             	mov    %ebx,0x8(%ebp)
5c1aad:	8b d3                	mov    %ebx,%edx
5c1aaf:	3d ff 0f 00 00       	cmp    $0xfff,%eax