41093c:	8b 45 e8             	mov    -0x18(%ebp),%eax
41093f:	43                   	inc    %ebx
410940:	3b de                	cmp    %esi,%ebx
410942:	7c dd                	jl     0x410921
410944:	eb 03                	jmp    0x410949
410946:	83 0f ff             	orl    $0xffffffff,(%edi)
410949:	5f                   	pop    %edi
41094a:	b0 01                	mov    $0x1,%al
41094c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41094f:	5e                   	pop    %esi
410950:	33 cd                	xor    %ebp,%ecx
410952:	5b                   	pop    %ebx
410953:	e8 4f 93 ff ff       	call   0x409ca7
410958:	c9                   	leave
410959:	c3                   	ret
41095a:	8b ff                	mov    %edi,%edi
41095c:	55                   	push   %ebp
41095d:	8b ec                	mov    %esp,%ebp
41095f:	83 ec 20             	sub    $0x20,%esp
410962:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
410967:	33 c5                	xor    %ebp,%eax
410969:	89 45 fc             	mov    %eax,-0x4(%ebp)
41096c:	53                   	push   %ebx
41096d:	56                   	push   %esi
41096e:	8b f1                	mov    %ecx,%esi
410970:	33 db                	xor    %ebx,%ebx
410972:	57                   	push   %edi
410973:	6a 02                	push   $0x2
410975:	5f                   	pop    %edi
410976:	0f be 46 2d          	movsbl 0x2d(%esi),%eax
41097a:	83 f8 64             	cmp    $0x64,%eax
41097d:	7f 60                	jg     0x4109df
41097f:	0f 84 80 00 00 00    	je     0x410a05
410985:	83 f8 53             	cmp    $0x53,%eax
410988:	7f 2b                	jg     0x4109b5
41098a:	0f 84 9e 00 00 00    	je     0x410a2e
410990:	83 e8 41             	sub    $0x41,%eax
410993:	74 16                	je     0x4109ab
410995:	2b c7                	sub    %edi,%eax
410997:	74 2e                	je     0x4109c7
410999:	2b c7                	sub    %edi,%eax
41099b:	74 0e                	je     0x4109ab
41099d:	83 e8 01             	sub    $0x1,%eax
4109a0:	74 09                	je     0x4109ab
4109a2:	83 e8 01             	sub    $0x1,%eax
4109a5:	0f 85 93 00 00 00    	jne    0x410a3e
4109ab:	e8 17 08 00 00       	call   0x4111c7
4109b0:	e9 85 00 00 00       	jmp    0x410a3a
4109b5:	83 e8 58             	sub    $0x58,%eax
4109b8:	74 1c                	je     0x4109d6
4109ba:	2b c7                	sub    %edi,%eax
4109bc:	74 11                	je     0x4109cf
4109be:	83 e8 07             	sub    $0x7,%eax
4109c1:	74 e8                	je     0x4109ab
4109c3:	2b c7                	sub    %edi,%eax
4109c5:	75 77                	jne    0x410a3e
4109c7:	53                   	push   %ebx
4109c8:	e8 32 0b 00 00       	call   0x4114ff
4109cd:	eb 6b                	jmp    0x410a3a
4109cf:	e8 2d 07 00 00       	call   0x411101
4109d4:	eb 64                	jmp    0x410a3a
4109d6:	6a 01                	push   $0x1
4109d8:	e8 51 e0 ff ff       	call   0x40ea2e
4109dd:	eb 5b                	jmp    0x410a3a
4109df:	83 f8 6f             	cmp    $0x6f,%eax
4109e2:	7f 34                	jg     0x410a18
4109e4:	74 2b                	je     0x410a11
4109e6:	83 e8 65             	sub    $0x65,%eax
4109e9:	74 c0                	je     0x4109ab
4109eb:	83 e8 01             	sub    $0x1,%eax
4109ee:	74 bb                	je     0x4109ab
4109f0:	83 e8 01             	sub    $0x1,%eax
4109f3:	74 b6                	je     0x4109ab
4109f5:	2b c7                	sub    %edi,%eax
4109f7:	74 0c                	je     0x410a05
4109f9:	83 e8 05             	sub    $0x5,%eax
4109fc:	75 40                	jne    0x410a3e
4109fe:	e8 39 0c 00 00       	call   0x41163c
410a03:	eb 35                	jmp    0x410a3a
410a05:	83 4e 1c 10          	orl    $0x10,0x1c(%esi)
410a09:	53                   	push   %ebx
410a0a:	e8 00 dd ff ff       	call   0x40e70f
410a0f:	eb 29                	jmp    0x410a3a
410a11:	e8 ab 0c 00 00       	call   0x4116c1
410a16:	eb 22                	jmp    0x410a3a
410a18:	83 e8 70             	sub    $0x70,%eax
410a1b:	74 18                	je     0x410a35
410a1d:	83 e8 03             	sub    $0x3,%eax
410a20:	74 0c                	je     0x410a2e
410a22:	2b c7                	sub    %edi,%eax
410a24:	74 e3                	je     0x410a09
410a26:	83 e8 03             	sub    $0x3,%eax
410a29:	75 13                	jne    0x410a3e
410a2b:	53                   	push   %ebx
410a2c:	eb aa                	jmp    0x4109d8
410a2e:	e8 f4 0c 00 00       	call   0x411727
410a33:	eb 05                	jmp    0x410a3a
410a35:	e8 c1 0c 00 00       	call   0x4116fb
410a3a:	84 c0                	test   %al,%al
410a3c:	75 07                	jne    0x410a45
410a3e:	32 c0                	xor    %al,%al
410a40:	e9 65 02 00 00       	jmp    0x410caa
410a45:	38 5e 2c             	cmp    %bl,0x2c(%esi)
410a48:	0f 85 5a 02 00 00    	jne    0x410ca8
410a4e:	8b 46 1c             	mov    0x1c(%esi),%eax
410a51:	33 d2                	xor    %edx,%edx
410a53:	c1 e8 04             	shr    $0x4,%eax
410a56:	42                   	inc    %edx
410a57:	66 89 5d f0          	mov    %bx,-0x10(%ebp)
410a5b:	8b cb                	mov    %ebx,%ecx
410a5d:	88 5d f2             	mov    %bl,-0xe(%ebp)
410a60:	89 4d ec             	mov    %ecx,-0x14(%ebp)
410a63:	84 c2                	test   %al,%dl
410a65:	74 32                	je     0x410a99
410a67:	8b 46 1c             	mov    0x1c(%esi),%eax
410a6a:	c1 e8 06             	shr    $0x6,%eax
410a6d:	84 c2                	test   %al,%dl
410a6f:	74 06                	je     0x410a77
410a71:	c6 45 f0 2d          	movb   $0x2d,-0x10(%ebp)
410a75:	eb 09                	jmp    0x410a80
410a77:	84 56 1c             	test   %dl,0x1c(%esi)
410a7a:	74 0b                	je     0x410a87
410a7c:	c6 45 f0 2b          	movb   $0x2b,-0x10(%ebp)
410a80:	8b ca                	mov    %edx,%ecx
410a82:	89 4d ec             	mov    %ecx,-0x14(%ebp)
410a85:	eb 12                	jmp    0x410a99
410a87:	8b 46 1c             	mov    0x1c(%esi),%eax
410a8a:	d1 e8                	shr    $1,%eax
410a8c:	84 c2                	test   %al,%dl
410a8e:	74 09                	je     0x410a99
410a90:	c6 45 f0 20          	movb   $0x20,-0x10(%ebp)
410a94:	8b ca                	mov    %edx,%ecx
410a96:	89 55 ec             	mov    %edx,-0x14(%ebp)
410a99:	8a 56 2d             	mov    0x2d(%esi),%dl
410a9c:	80 fa 78             	cmp    $0x78,%dl
410a9f:	74 05                	je     0x410aa6
410aa1:	80 fa 58             	cmp    $0x58,%dl
410aa4:	75 0c                	jne    0x410ab2
410aa6:	8b 46 1c             	mov    0x1c(%esi),%eax
410aa9:	c1 e8 05             	shr    $0x5,%eax
410aac:	b4 01                	mov    $0x1,%ah
410aae:	a8 01                	test   $0x1,%al
410ab0:	75 02                	jne    0x410ab4
410ab2:	8a e3                	mov    %bl,%ah
410ab4:	80 fa 61             	cmp    $0x61,%dl
410ab7:	74 07                	je     0x410ac0
410ab9:	8a c3                	mov    %bl,%al
410abb:	80 fa 41             	cmp    $0x41,%dl
410abe:	75 02                	jne    0x410ac2
410ac0:	b0 01                	mov    $0x1,%al
410ac2:	84 e4                	test   %ah,%ah
410ac4:	75 04                	jne    0x410aca
410ac6:	84 c0                	test   %al,%al
410ac8:	74 1f                	je     0x410ae9
410aca:	c6 44 0d f0 30       	movb   $0x30,-0x10(%ebp,%ecx,1)
410acf:	80 fa 58             	cmp    $0x58,%dl
410ad2:	74 09                	je     0x410add
410ad4:	80 fa 41             	cmp    $0x41,%dl
410ad7:	74 04                	je     0x410add
410ad9:	b0 78                	mov    $0x78,%al
410adb:	eb 03                	jmp    0x410ae0
410add:	6a 58                	push   $0x58
410adf:	58                   	pop    %eax
410ae0:	88 44 0d f1          	mov    %al,-0xf(%ebp,%ecx,1)
410ae4:	03 cf                	add    %edi,%ecx
410ae6:	89 4d ec             	mov    %ecx,-0x14(%ebp)
410ae9:	8b 56 20             	mov    0x20(%esi),%edx
410aec:	2b d1                	sub    %ecx,%edx
410aee:	2b 56 34             	sub    0x34(%esi),%edx
410af1:	f6 46 1c 0c          	testb  $0xc,0x1c(%esi)
410af5:	89 55 e4             	mov    %edx,-0x1c(%ebp)
410af8:	75 5a                	jne    0x410b54
410afa:	89 5d e8             	mov    %ebx,-0x18(%ebp)
410afd:	85 d2                	test   %edx,%edx
410aff:	7e 53                	jle    0x410b54
410b01:	8b 5e 14             	mov    0x14(%esi),%ebx
410b04:	8b 4d e8             	mov    -0x18(%ebp),%ecx
410b07:	8b be 48 04 00 00    	mov    0x448(%esi),%edi
410b0d:	8b 47 08             	mov    0x8(%edi),%eax
410b10:	3b 47 04             	cmp    0x4(%edi),%eax
410b13:	75 11                	jne    0x410b26
410b15:	80 7f 0c 00          	cmpb   $0x0,0xc(%edi)
410b19:	74 03                	je     0x410b1e
410b1b:	43                   	inc    %ebx
410b1c:	eb 03                	jmp    0x410b21
410b1e:	83 cb ff             	or     $0xffffffff,%ebx
410b21:	89 5e 14             	mov    %ebx,0x14(%esi)
410b24:	eb 1c                	jmp    0x410b42
410b26:	8d 43 01             	lea    0x1(%ebx),%eax
410b29:	89 46 14             	mov    %eax,0x14(%esi)
410b2c:	ff 47 08             	incl   0x8(%edi)
410b2f:	8b 86 48 04 00 00    	mov    0x448(%esi),%eax
410b35:	8b 00                	mov    (%eax),%eax
410b37:	c6 00 20             	movb   $0x20,(%eax)
410b3a:	8b 86 48 04 00 00    	mov    0x448(%esi),%eax
410b40:	ff 00                	incl   (%eax)
410b42:	8b 5e 14             	mov    0x14(%esi),%ebx
410b45:	83 fb ff             	cmp    $0xffffffff,%ebx
410b48:	74 05                	je     0x410b4f
410b4a:	41                   	inc    %ecx
410b4b:	3b ca                	cmp    %edx,%ecx
410b4d:	7c b8                	jl     0x410b07
410b4f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
410b52:	33 db                	xor    %ebx,%ebx
410b54:	ff 76 08             	push   0x8(%esi)
410b57:	8d 7e 14             	lea    0x14(%esi),%edi
410b5a:	57                   	push   %edi
410b5b:	51                   	push   %ecx
410b5c:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
410b62:	8d 4d f0             	lea    -0x10(%ebp),%ecx
410b65:	89 45 e8             	mov    %eax,-0x18(%ebp)
410b68:	51                   	push   %ecx
410b69:	8b c8                	mov    %eax,%ecx
410b6b:	e8 3e 0f 00 00       	call   0x411aae
410b70:	8b 4e 1c             	mov    0x1c(%esi),%ecx
410b73:	8d 96 48 04 00 00    	lea    0x448(%esi),%edx
410b79:	8b c1                	mov    %ecx,%eax
410b7b:	c1 e8 03             	shr    $0x3,%eax
410b7e:	a8 01                	test   $0x1,%al
410b80:	74 57                	je     0x410bd9
410b82:	c1 e9 02             	shr    $0x2,%ecx
410b85:	f6 c1 01             	test   $0x1,%cl
410b88:	75 4f                	jne    0x410bd9
410b8a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
410b8d:	89 5d f0             	mov    %ebx,-0x10(%ebp)
410b90:	85 c9                	test   %ecx,%ecx
410b92:	7e 45                	jle    0x410bd9
410b94:	8b 02                	mov    (%edx),%eax
410b96:	89 45 ec             	mov    %eax,-0x14(%ebp)
410b99:	8b d8                	mov    %eax,%ebx
410b9b:	8b 40 08             	mov    0x8(%eax),%eax
410b9e:	3b 43 04             	cmp    0x4(%ebx),%eax
410ba1:	8b c3                	mov    %ebx,%eax
410ba3:	75 12                	jne    0x410bb7
410ba5:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
410ba9:	74 05                	je     0x410bb0
410bab:	8b 07                	mov    (%edi),%eax
410bad:	40                   	inc    %eax
410bae:	eb 03                	jmp    0x410bb3
410bb0:	83 c8 ff             	or     $0xffffffff,%eax
410bb3:	89 07                	mov    %eax,(%edi)
410bb5:	eb 10                	jmp    0x410bc7
410bb7:	ff 07                	incl   (%edi)
410bb9:	ff 40 08             	incl   0x8(%eax)
410bbc:	8b 02                	mov    (%edx),%eax
410bbe:	8b 00                	mov    (%eax),%eax
410bc0:	c6 00 30             	movb   $0x30,(%eax)
410bc3:	8b 02                	mov    (%edx),%eax
410bc5:	ff 00                	incl   (%eax)
410bc7:	83 3f ff             	cmpl   $0xffffffff,(%edi)
410bca:	74 0b                	je     0x410bd7
410bcc:	8b 45 f0             	mov    -0x10(%ebp),%eax
410bcf:	40                   	inc    %eax
410bd0:	89 45 f0             	mov    %eax,-0x10(%ebp)
410bd3:	3b c1                	cmp    %ecx,%eax
410bd5:	7c bd                	jl     0x410b94
410bd7:	33 db                	xor    %ebx,%ebx
410bd9:	80 7e 38 00          	cmpb   $0x0,0x38(%esi)
410bdd:	74 62                	je     0x410c41
410bdf:	39 5e 34             	cmp    %ebx,0x34(%esi)
410be2:	7e 5d                	jle    0x410c41
410be4:	8b 4e 30             	mov    0x30(%esi),%ecx
410be7:	89 5d f0             	mov    %ebx,-0x10(%ebp)
410bea:	ff 76 08             	push   0x8(%esi)
410bed:	0f b7 01             	movzwl (%ecx),%eax
410bf0:	83 c1 02             	add    $0x2,%ecx
410bf3:	50                   	push   %eax
410bf4:	6a 06                	push   $0x6
410bf6:	8d 45 f4             	lea    -0xc(%ebp),%eax
410bf9:	89 5d ec             	mov    %ebx,-0x14(%ebp)
410bfc:	50                   	push   %eax
410bfd:	8d 45 ec             	lea    -0x14(%ebp),%eax
410c00:	89 4d e0             	mov    %ecx,-0x20(%ebp)
410c03:	50                   	push   %eax
410c04:	e8 62 c9 00 00       	call   0x41d56b
410c09:	83 c4 14             	add    $0x14,%esp
410c0c:	85 c0                	test   %eax,%eax
410c0e:	75 2c                	jne    0x410c3c
410c10:	39 45 ec             	cmp    %eax,-0x14(%ebp)
410c13:	74 27                	je     0x410c3c
410c15:	ff 76 08             	push   0x8(%esi)
410c18:	8d 45 f4             	lea    -0xc(%ebp),%eax
410c1b:	57                   	push   %edi
410c1c:	ff 75 ec             	push   -0x14(%ebp)
410c1f:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
410c25:	50                   	push   %eax
410c26:	e8 83 0e 00 00       	call   0x411aae
410c2b:	8b 45 f0             	mov    -0x10(%ebp),%eax
410c2e:	8b 4d e0             	mov    -0x20(%ebp),%ecx
410c31:	40                   	inc    %eax
410c32:	89 45 f0             	mov    %eax,-0x10(%ebp)
410c35:	3b 46 34             	cmp    0x34(%esi),%eax
410c38:	75 b0                	jne    0x410bea
410c3a:	eb 16                	jmp    0x410c52
410c3c:	83 0f ff             	orl    $0xffffffff,(%edi)
410c3f:	eb 11                	jmp    0x410c52
410c41:	ff 76 08             	push   0x8(%esi)
410c44:	8b ca                	mov    %edx,%ecx
410c46:	57                   	push   %edi
410c47:	ff 76 34             	push   0x34(%esi)
410c4a:	ff 76 30             	push   0x30(%esi)
410c4d:	e8 5c 0e 00 00       	call   0x411aae
410c52:	8b 0f                	mov    (%edi),%ecx
410c54:	85 c9                	test   %ecx,%ecx
410c56:	78 50                	js     0x410ca8
410c58:	8b 46 1c             	mov    0x1c(%esi),%eax
410c5b:	c1 e8 02             	shr    $0x2,%eax
410c5e:	a8 01                	test   $0x1,%al
410c60:	74 46                	je     0x410ca8
410c62:	8b 75 e4             	mov    -0x1c(%ebp),%esi
410c65:	85 f6                	test   %esi,%esi
410c67:	7e 3f                	jle    0x410ca8
410c69:	8b 45 e8             	mov    -0x18(%ebp),%eax
410c6c:	8b 10                	mov    (%eax),%edx
410c6e:	8b 42 08             	mov    0x8(%edx),%eax
410c71:	3b 42 04             	cmp    0x4(%edx),%eax
410c74:	75 10                	jne    0x410c86
410c76:	80 7a 0c 00          	cmpb   $0x0,0xc(%edx)
410c7a:	74 03                	je     0x410c7f
410c7c:	41                   	inc    %ecx
410c7d:	eb 03                	jmp    0x410c82
410c7f:	83 c9 ff             	or     $0xffffffff,%ecx
410c82:	89 0f                	mov    %ecx,(%edi)
410c84:	eb 16                	jmp    0x410c9c
410c86:	8d 41 01             	lea    0x1(%ecx),%eax
410c89:	8b 4d e8             	mov    -0x18(%ebp),%ecx
410c8c:	89 07                	mov    %eax,(%edi)
410c8e:	ff 42 08             	incl   0x8(%edx)
410c91:	8b 01                	mov    (%ecx),%eax
410c93:	8b 00                	mov    (%eax),%eax
410c95:	c6 00 20             	movb   $0x20,(%eax)
410c98:	8b 01                	mov    (%ecx),%eax
410c9a:	ff 00                	incl   (%eax)
410c9c:	8b 0f                	mov    (%edi),%ecx
410c9e:	83 f9 ff             	cmp    $0xffffffff,%ecx
410ca1:	74 05                	je     0x410ca8
410ca3:	43                   	inc    %ebx
410ca4:	3b de                	cmp    %esi,%ebx
410ca6:	7c c1                	jl     0x410c69
410ca8:	b0 01                	mov    $0x1,%al
410caa:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410cad:	5f                   	pop    %edi
410cae:	5e                   	pop    %esi
410caf:	33 cd                	xor    %ebp,%ecx
410cb1:	5b                   	pop    %ebx
410cb2:	e8 f0 8f ff ff       	call   0x409ca7
410cb7:	c9                   	leave
410cb8:	c3                   	ret
410cb9:	8b ff                	mov    %edi,%edi
410cbb:	55                   	push   %ebp