41595d:	33 c0                	xor    %eax,%eax
41595f:	40                   	inc    %eax
415960:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
415964:	75 02                	jne    0x415968
415966:	33 c0                	xor    %eax,%eax
415968:	5d                   	pop    %ebp
415969:	c3                   	ret
41596a:	8b ff                	mov    %edi,%edi
41596c:	55                   	push   %ebp
41596d:	8b ec                	mov    %esp,%ebp
41596f:	8b 55 0c             	mov    0xc(%ebp),%edx
415972:	56                   	push   %esi
415973:	8b 75 08             	mov    0x8(%ebp),%esi
415976:	57                   	push   %edi
415977:	0f b6 06             	movzbl (%esi),%eax
41597a:	8d 48 bf             	lea    -0x41(%eax),%ecx
41597d:	46                   	inc    %esi
41597e:	83 f9 19             	cmp    $0x19,%ecx
415981:	77 03                	ja     0x415986
415983:	83 c0 20             	add    $0x20,%eax
415986:	0f b6 0a             	movzbl (%edx),%ecx
415989:	8d 79 bf             	lea    -0x41(%ecx),%edi
41598c:	42                   	inc    %edx
41598d:	83 ff 19             	cmp    $0x19,%edi
415990:	77 03                	ja     0x415995
415992:	83 c1 20             	add    $0x20,%ecx
415995:	85 c0                	test   %eax,%eax
415997:	74 04                	je     0x41599d
415999:	3b c1                	cmp    %ecx,%eax
41599b:	74 da                	je     0x415977
41599d:	5f                   	pop    %edi
41599e:	2b c1                	sub    %ecx,%eax
4159a0:	5e                   	pop    %esi
4159a1:	5d                   	pop    %ebp
4159a2:	c3                   	ret
4159a3:	8b ff                	mov    %edi,%edi
4159a5:	55                   	push   %ebp
4159a6:	8b ec                	mov    %esp,%ebp
4159a8:	83 ec 10             	sub    $0x10,%esp
4159ab:	53                   	push   %ebx
4159ac:	ff 75 10             	push   0x10(%ebp)
4159af:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4159b2:	e8 ad 1e ff ff       	call   0x407864
4159b7:	33 db                	xor    %ebx,%ebx
4159b9:	39 5d 08             	cmp    %ebx,0x8(%ebp)
4159bc:	75 2e                	jne    0x4159ec
4159be:	e8 12 01 ff ff       	call   0x405ad5
4159c3:	53                   	push   %ebx
4159c4:	53                   	push   %ebx
4159c5:	53                   	push   %ebx
4159c6:	53                   	push   %ebx
4159c7:	53                   	push   %ebx
4159c8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4159ce:	e8 52 f8 fe ff       	call   0x405225
4159d3:	83 c4 14             	add    $0x14,%esp
4159d6:	38 5d fc             	cmp    %bl,-0x4(%ebp)
4159d9:	74 07                	je     0x4159e2
4159db:	8b 45 f8             	mov    -0x8(%ebp),%eax
4159de:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
4159e2:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4159e7:	e9 89 00 00 00       	jmp    0x415a75
4159ec:	57                   	push   %edi
4159ed:	8b 7d 0c             	mov    0xc(%ebp),%edi
4159f0:	3b fb                	cmp    %ebx,%edi
4159f2:	75 2b                	jne    0x415a1f
4159f4:	e8 dc 00 ff ff       	call   0x405ad5
4159f9:	53                   	push   %ebx
4159fa:	53                   	push   %ebx
4159fb:	53                   	push   %ebx
4159fc:	53                   	push   %ebx
4159fd:	53                   	push   %ebx
4159fe:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
415a04:	e8 1c f8 fe ff       	call   0x405225
415a09:	83 c4 14             	add    $0x14,%esp
415a0c:	38 5d fc             	cmp    %bl,-0x4(%ebp)
415a0f:	74 07                	je     0x415a18
415a11:	8b 45 f8             	mov    -0x8(%ebp),%eax
415a14:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
415a18:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
415a1d:	eb 55                	jmp    0x415a74
415a1f:	8b 45 f0             	mov    -0x10(%ebp),%eax
415a22:	39 58 14             	cmp    %ebx,0x14(%eax)
415a25:	75 0d                	jne    0x415a34
415a27:	57                   	push   %edi
415a28:	ff 75 08             	push   0x8(%ebp)
415a2b:	e8 3a ff ff ff       	call   0x41596a
415a30:	59                   	pop    %ecx
415a31:	59                   	pop    %ecx
415a32:	eb 34                	jmp    0x415a68
415a34:	56                   	push   %esi
415a35:	8b 45 08             	mov    0x8(%ebp),%eax
415a38:	0f b6 00             	movzbl (%eax),%eax
415a3b:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415a3e:	51                   	push   %ecx
415a3f:	50                   	push   %eax
415a40:	e8 b8 0c 00 00       	call   0x4166fd
415a45:	ff 45 08             	incl   0x8(%ebp)
415a48:	8b f0                	mov    %eax,%esi
415a4a:	0f b6 07             	movzbl (%edi),%eax
415a4d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415a50:	51                   	push   %ecx
415a51:	50                   	push   %eax
415a52:	e8 a6 0c 00 00       	call   0x4166fd
415a57:	83 c4 10             	add    $0x10,%esp
415a5a:	47                   	inc    %edi
415a5b:	3b f3                	cmp    %ebx,%esi
415a5d:	74 04                	je     0x415a63
415a5f:	3b f0                	cmp    %eax,%esi
415a61:	74 d2                	je     0x415a35
415a63:	2b f0                	sub    %eax,%esi
415a65:	8b c6                	mov    %esi,%eax
415a67:	5e                   	pop    %esi
415a68:	38 5d fc             	cmp    %bl,-0x4(%ebp)
415a6b:	74 07                	je     0x415a74
415a6d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
415a70:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
415a74:	5f                   	pop    %edi
415a75:	5b                   	pop    %ebx
415a76:	c9                   	leave
415a77:	c3                   	ret
415a78:	8b ff                	mov    %edi,%edi
415a7a:	55                   	push   %ebp
415a7b:	8b ec                	mov    %esp,%ebp
415a7d:	56                   	push   %esi
415a7e:	33 f6                	xor    %esi,%esi
415a80:	39 35 fc 07 43 00    	cmp    %esi,0x4307fc
415a86:	75 30                	jne    0x415ab8
415a88:	39 75 08             	cmp    %esi,0x8(%ebp)
415a8b:	75 1f                	jne    0x415aac
415a8d:	e8 43 00 ff ff       	call   0x405ad5
415a92:	56                   	push   %esi
415a93:	56                   	push   %esi
415a94:	56                   	push   %esi
415a95:	56                   	push   %esi
415a96:	56                   	push   %esi
415a97:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
415a9d:	e8 83 f7 fe ff       	call   0x405225
415aa2:	83 c4 14             	add    $0x14,%esp
415aa5:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
415aaa:	eb 1b                	jmp    0x415ac7
415aac:	39 75 0c             	cmp    %esi,0xc(%ebp)
415aaf:	74 dc                	je     0x415a8d
415ab1:	5e                   	pop    %esi
415ab2:	5d                   	pop    %ebp
415ab3:	e9 b2 fe ff ff       	jmp    0x41596a
415ab8:	56                   	push   %esi
415ab9:	ff 75 0c             	push   0xc(%ebp)
415abc:	ff 75 08             	push   0x8(%ebp)
415abf:	e8 df fe ff ff       	call   0x4159a3
415ac4:	83 c4 0c             	add    $0xc,%esp
415ac7:	5e                   	pop    %esi
415ac8:	5d                   	pop    %ebp
415ac9:	c3                   	ret
415aca:	8b ff                	mov    %edi,%edi
415acc:	55                   	push   %ebp
415acd:	8b ec                	mov    %esp,%ebp
415acf:	6a 0a                	push   $0xa
415ad1:	6a 00                	push   $0x0
415ad3:	ff 75 08             	push   0x8(%ebp)
415ad6:	e8 47 d5 ff ff       	call   0x413022
415adb:	83 c4 0c             	add    $0xc,%esp
415ade:	5d                   	pop    %ebp
415adf:	c3                   	ret
415ae0:	8b ff                	mov    %edi,%edi
415ae2:	55                   	push   %ebp
415ae3:	8b ec                	mov    %esp,%ebp
415ae5:	83 ec 10             	sub    $0x10,%esp
415ae8:	53                   	push   %ebx
415ae9:	33 db                	xor    %ebx,%ebx
415aeb:	56                   	push   %esi
415aec:	57                   	push   %edi
415aed:	39 5d 10             	cmp    %ebx,0x10(%ebp)
415af0:	0f 84 d5 00 00 00    	je     0x415bcb
415af6:	ff 75 14             	push   0x14(%ebp)
415af9:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415afc:	e8 63 1d ff ff       	call   0x407864
415b01:	39 5d 08             	cmp    %ebx,0x8(%ebp)
415b04:	75 2e                	jne    0x415b34
415b06:	e8 ca ff fe ff       	call   0x405ad5
415b0b:	53                   	push   %ebx
415b0c:	53                   	push   %ebx
415b0d:	53                   	push   %ebx
415b0e:	53                   	push   %ebx
415b0f:	53                   	push   %ebx
415b10:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
415b16:	e8 0a f7 fe ff       	call   0x405225
415b1b:	83 c4 14             	add    $0x14,%esp
415b1e:	38 5d fc             	cmp    %bl,-0x4(%ebp)
415b21:	74 07                	je     0x415b2a
415b23:	8b 45 f8             	mov    -0x8(%ebp),%eax
415b26:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
415b2a:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
415b2f:	e9 99 00 00 00       	jmp    0x415bcd
415b34:	8b 7d 0c             	mov    0xc(%ebp),%edi
415b37:	3b fb                	cmp    %ebx,%edi
415b39:	74 cb                	je     0x415b06
415b3b:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
415b40:	39 75 10             	cmp    %esi,0x10(%ebp)
415b43:	76 28                	jbe    0x415b6d
415b45:	e8 8b ff fe ff       	call   0x405ad5
415b4a:	53                   	push   %ebx
415b4b:	53                   	push   %ebx
415b4c:	53                   	push   %ebx
415b4d:	53                   	push   %ebx
415b4e:	53                   	push   %ebx
415b4f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
415b55:	e8 cb f6 fe ff       	call   0x405225
415b5a:	83 c4 14             	add    $0x14,%esp
415b5d:	38 5d fc             	cmp    %bl,-0x4(%ebp)
415b60:	74 07                	je     0x415b69
415b62:	8b 45 f8             	mov    -0x8(%ebp),%eax
415b65:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
415b69:	8b c6                	mov    %esi,%eax
415b6b:	eb 60                	jmp    0x415bcd
415b6d:	8b 45 f0             	mov    -0x10(%ebp),%eax
415b70:	39 58 14             	cmp    %ebx,0x14(%eax)
415b73:	75 1d                	jne    0x415b92
415b75:	ff 75 10             	push   0x10(%ebp)
415b78:	57                   	push   %edi
415b79:	ff 75 08             	push   0x8(%ebp)
415b7c:	e8 ef 17 00 00       	call   0x417370
415b81:	83 c4 0c             	add    $0xc,%esp
415b84:	38 5d fc             	cmp    %bl,-0x4(%ebp)
415b87:	74 44                	je     0x415bcd
415b89:	8b 4d f8             	mov    -0x8(%ebp),%ecx
415b8c:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
415b90:	eb 3b                	jmp    0x415bcd
415b92:	8b 45 08             	mov    0x8(%ebp),%eax
415b95:	0f b6 00             	movzbl (%eax),%eax
415b98:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415b9b:	51                   	push   %ecx
415b9c:	50                   	push   %eax
415b9d:	e8 5b 0b 00 00       	call   0x4166fd
415ba2:	ff 45 08             	incl   0x8(%ebp)
415ba5:	8b f0                	mov    %eax,%esi
415ba7:	0f b6 07             	movzbl (%edi),%eax
415baa:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415bad:	51                   	push   %ecx
415bae:	50                   	push   %eax
415baf:	e8 49 0b 00 00       	call   0x4166fd
415bb4:	83 c4 10             	add    $0x10,%esp
415bb7:	47                   	inc    %edi
415bb8:	ff 4d 10             	decl   0x10(%ebp)
415bbb:	74 08                	je     0x415bc5
415bbd:	3b f3                	cmp    %ebx,%esi
415bbf:	74 04                	je     0x415bc5
415bc1:	3b f0                	cmp    %eax,%esi
415bc3:	74 cd                	je     0x415b92
415bc5:	2b f0                	sub    %eax,%esi
415bc7:	8b c6                	mov    %esi,%eax
415bc9:	eb b9                	jmp    0x415b84
415bcb:	33 c0                	xor    %eax,%eax
415bcd:	5f                   	pop    %edi
415bce:	5e                   	pop    %esi
415bcf:	5b                   	pop    %ebx
415bd0:	c9                   	leave
415bd1:	c3                   	ret
415bd2:	8b ff                	mov    %edi,%edi
415bd4:	55                   	push   %ebp
415bd5:	8b ec                	mov    %esp,%ebp
415bd7:	56                   	push   %esi
415bd8:	33 f6                	xor    %esi,%esi
415bda:	39 35 fc 07 43 00    	cmp    %esi,0x4307fc
415be0:	75 39                	jne    0x415c1b
415be2:	39 75 08             	cmp    %esi,0x8(%ebp)
415be5:	75 1f                	jne    0x415c06
415be7:	e8 e9 fe fe ff       	call   0x405ad5
415bec:	56                   	push   %esi
415bed:	56                   	push   %esi
415bee:	56                   	push   %esi
415bef:	56                   	push   %esi
415bf0:	56                   	push   %esi
415bf1:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
415bf7:	e8 29 f6 fe ff       	call   0x405225
415bfc:	83 c4 14             	add    $0x14,%esp
415bff:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
415c04:	eb 27                	jmp    0x415c2d
415c06:	39 75 0c             	cmp    %esi,0xc(%ebp)
415c09:	74 dc                	je     0x415be7
415c0b:	81 7d 10 ff ff ff 7f 	cmpl   $0x7fffffff,0x10(%ebp)
415c12:	77 d3                	ja     0x415be7
415c14:	5e                   	pop    %esi
415c15:	5d                   	pop    %ebp
415c16:	e9 55 17 00 00       	jmp    0x417370
415c1b:	56                   	push   %esi
415c1c:	ff 75 10             	push   0x10(%ebp)
415c1f:	ff 75 0c             	push   0xc(%ebp)
415c22:	ff 75 08             	push   0x8(%ebp)
415c25:	e8 b6 fe ff ff       	call   0x415ae0
415c2a:	83 c4 10             	add    $0x10,%esp
415c2d:	5e                   	pop    %esi
415c2e:	5d                   	pop    %ebp
415c2f:	c3                   	ret
415c30:	51                   	push   %ecx
415c31:	8d 4c 24 04          	lea    0x4(%esp),%ecx
415c35:	2b c8                	sub    %eax,%ecx
415c37:	1b c0                	sbb    %eax,%eax
415c39:	f7 d0                	not    %eax
415c3b:	23 c8                	and    %eax,%ecx
415c3d:	8b c4                	mov    %esp,%eax
415c3f:	25 00 f0 ff ff       	and    $0xfffff000,%eax
415c44:	3b c8                	cmp    %eax,%ecx
415c46:	72 0a                	jb     0x415c52
415c48:	8b c1                	mov    %ecx,%eax
415c4a:	59                   	pop    %ecx
415c4b:	94                   	xchg   %eax,%esp
415c4c:	8b 00                	mov    (%eax),%eax
415c4e:	89 04 24             	mov    %eax,(%esp)
415c51:	c3                   	ret
415c52:	2d 00 10 00 00       	sub    $0x1000,%eax
415c57:	85 00                	test   %eax,(%eax)
415c59:	eb e9                	jmp    0x415c44
415c5b:	8b ff                	mov    %edi,%edi
415c5d:	55                   	push   %ebp
415c5e:	8b ec                	mov    %esp,%ebp
415c60:	83 ec 10             	sub    $0x10,%esp
415c63:	a1 68 b2 42 00       	mov    0x42b268,%eax
415c68:	33 c5                	xor    %ebp,%eax
415c6a:	89 45 fc             	mov    %eax,-0x4(%ebp)
415c6d:	56                   	push   %esi
415c6e:	33 f6                	xor    %esi,%esi
415c70:	39 35 d0 bf 42 00    	cmp    %esi,0x42bfd0
415c76:	74 4f                	je     0x415cc7
415c78:	83 3d 64 c2 42 00 fe 	cmpl   $0xfffffffe,0x42c264
415c7f:	75 05                	jne    0x415c86
415c81:	e8 4b 17 00 00       	call   0x4173d1
415c86:	a1 64 c2 42 00       	mov    0x42c264,%eax
415c8b:	83 f8 ff             	cmp    $0xffffffff,%eax
415c8e:	75 07                	jne    0x415c97
415c90:	b8 ff ff 00 00       	mov    $0xffff,%eax
415c95:	eb 70                	jmp    0x415d07
415c97:	56                   	push   %esi
415c98:	8d 4d f0             	lea    -0x10(%ebp),%ecx
415c9b:	51                   	push   %ecx
415c9c:	6a 01                	push   $0x1
415c9e:	8d 4d 08             	lea    0x8(%ebp),%ecx
415ca1:	51                   	push   %ecx
415ca2:	50                   	push   %eax
415ca3:	ff 15 84 a1 41 00    	call   *0x41a184
415ca9:	85 c0                	test   %eax,%eax
415cab:	75 67                	jne    0x415d14
415cad:	83 3d d0 bf 42 00 02 	cmpl   $0x2,0x42bfd0
415cb4:	75 da                	jne    0x415c90
415cb6:	ff 15 98 a0 41 00    	call   *0x41a098
415cbc:	83 f8 78             	cmp    $0x78,%eax
415cbf:	75 cf                	jne    0x415c90
415cc1:	89 35 d0 bf 42 00    	mov    %esi,0x42bfd0
415cc7:	56                   	push   %esi
415cc8:	56                   	push   %esi
415cc9:	6a 05                	push   $0x5