4148a1:	0f b6 01             	movzbl (%ecx),%eax
4148a4:	3b f0                	cmp    %eax,%esi
4148a6:	7e ed                	jle    0x414895
4148a8:	83 c1 02             	add    $0x2,%ecx
4148ab:	38 59 ff             	cmp    %bl,-0x1(%ecx)
4148ae:	75 cb                	jne    0x41487b
4148b0:	8b 45 dc             	mov    -0x24(%ebp),%eax
4148b3:	6a 3f                	push   $0x3f
4148b5:	59                   	pop    %ecx
4148b6:	8d b2 00 02 00 00    	lea    0x200(%edx),%esi
4148bc:	8b fa                	mov    %edx,%edi
4148be:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4148c0:	8b 55 e0             	mov    -0x20(%ebp),%edx
4148c3:	6a 1f                	push   $0x1f
4148c5:	59                   	pop    %ecx
4148c6:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4148c8:	8d b2 00 01 00 00    	lea    0x100(%edx),%esi
4148ce:	8b fa                	mov    %edx,%edi
4148d0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4148d2:	6a 1f                	push   $0x1f
4148d4:	59                   	pop    %ecx
4148d5:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4148d7:	a4                   	movsb  %ds:(%esi),%es:(%edi)
4148d8:	8d b0 00 01 00 00    	lea    0x100(%eax),%esi
4148de:	8b f8                	mov    %eax,%edi
4148e0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4148e2:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4148e4:	a4                   	movsb  %ds:(%esi),%es:(%edi)
4148e5:	8b 75 c4             	mov    -0x3c(%ebp),%esi
4148e8:	8b 8e 8c 00 00 00    	mov    0x8c(%esi),%ecx
4148ee:	85 c9                	test   %ecx,%ecx
4148f0:	74 49                	je     0x41493b
4148f2:	83 c8 ff             	or     $0xffffffff,%eax
4148f5:	f0 0f c1 01          	lock xadd %eax,(%ecx)
4148f9:	75 40                	jne    0x41493b
4148fb:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
414901:	2d fe 00 00 00       	sub    $0xfe,%eax
414906:	50                   	push   %eax
414907:	e8 04 04 00 00       	call   0x414d10
41490c:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
414912:	bf 80 00 00 00       	mov    $0x80,%edi
414917:	2b c7                	sub    %edi,%eax
414919:	50                   	push   %eax
41491a:	e8 f1 03 00 00       	call   0x414d10
41491f:	8b 86 98 00 00 00    	mov    0x98(%esi),%eax
414925:	2b c7                	sub    %edi,%eax
414927:	50                   	push   %eax
414928:	e8 e3 03 00 00       	call   0x414d10
41492d:	ff b6 8c 00 00 00    	push   0x8c(%esi)
414933:	e8 d8 03 00 00       	call   0x414d10
414938:	83 c4 10             	add    $0x10,%esp
41493b:	8b 45 d8             	mov    -0x28(%ebp),%eax
41493e:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
414944:	89 86 8c 00 00 00    	mov    %eax,0x8c(%esi)
41494a:	8b 45 c8             	mov    -0x38(%ebp),%eax
41494d:	89 06                	mov    %eax,(%esi)
41494f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
414952:	89 86 90 00 00 00    	mov    %eax,0x90(%esi)
414958:	8b 45 c0             	mov    -0x40(%ebp),%eax
41495b:	89 86 94 00 00 00    	mov    %eax,0x94(%esi)
414961:	8b 45 cc             	mov    -0x34(%ebp),%eax
414964:	89 86 98 00 00 00    	mov    %eax,0x98(%esi)
41496a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
41496d:	89 46 04             	mov    %eax,0x4(%esi)
414970:	eb 26                	jmp    0x414998
414972:	ff 75 d8             	push   -0x28(%ebp)
414975:	e8 96 03 00 00       	call   0x414d10
41497a:	ff 75 e4             	push   -0x1c(%ebp)
41497d:	e8 8e 03 00 00       	call   0x414d10
414982:	ff 75 e0             	push   -0x20(%ebp)
414985:	e8 86 03 00 00       	call   0x414d10
41498a:	ff 75 dc             	push   -0x24(%ebp)
41498d:	e8 7e 03 00 00       	call   0x414d10
414992:	33 db                	xor    %ebx,%ebx
414994:	83 c4 10             	add    $0x10,%esp
414997:	43                   	inc    %ebx
414998:	ff 75 d0             	push   -0x30(%ebp)
41499b:	e8 70 03 00 00       	call   0x414d10
4149a0:	59                   	pop    %ecx
4149a1:	8b c3                	mov    %ebx,%eax
4149a3:	eb 3c                	jmp    0x4149e1
4149a5:	8b 86 8c 00 00 00    	mov    0x8c(%esi),%eax
4149ab:	85 c0                	test   %eax,%eax
4149ad:	74 03                	je     0x4149b2
4149af:	f0 ff 08             	lock decl (%eax)
4149b2:	89 9e 8c 00 00 00    	mov    %ebx,0x8c(%esi)
4149b8:	33 c0                	xor    %eax,%eax
4149ba:	89 9e 90 00 00 00    	mov    %ebx,0x90(%esi)
4149c0:	c7 06 80 be 42 00    	movl   $0x42be80,(%esi)
4149c6:	c7 86 94 00 00 00 00 	movl   $0x42c100,0x94(%esi)
4149cd:	c1 42 00
4149d0:	c7 86 98 00 00 00 80 	movl   $0x42c280,0x98(%esi)
4149d7:	c2 42 00
4149da:	c7 46 04 01 00 00 00 	movl   $0x1,0x4(%esi)
4149e1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4149e4:	5f                   	pop    %edi
4149e5:	5e                   	pop    %esi
4149e6:	33 cd                	xor    %ebp,%ecx
4149e8:	5b                   	pop    %ebx
4149e9:	e8 72 26 ff ff       	call   0x407060
4149ee:	8b e5                	mov    %ebp,%esp
4149f0:	5d                   	pop    %ebp
4149f1:	c3                   	ret
4149f2:	8b ff                	mov    %edi,%edi
4149f4:	55                   	push   %ebp
4149f5:	8b ec                	mov    %esp,%ebp
4149f7:	8b 4d 08             	mov    0x8(%ebp),%ecx
4149fa:	33 c0                	xor    %eax,%eax
4149fc:	3b 0c c5 80 c3 42 00 	cmp    0x42c380(,%eax,8),%ecx
414a03:	74 27                	je     0x414a2c
414a05:	40                   	inc    %eax
414a06:	83 f8 2d             	cmp    $0x2d,%eax
414a09:	72 f1                	jb     0x4149fc
414a0b:	8d 41 ed             	lea    -0x13(%ecx),%eax
414a0e:	83 f8 11             	cmp    $0x11,%eax
414a11:	77 05                	ja     0x414a18
414a13:	6a 0d                	push   $0xd
414a15:	58                   	pop    %eax
414a16:	5d                   	pop    %ebp
414a17:	c3                   	ret
414a18:	8d 81 44 ff ff ff    	lea    -0xbc(%ecx),%eax
414a1e:	6a 0e                	push   $0xe
414a20:	59                   	pop    %ecx
414a21:	3b c8                	cmp    %eax,%ecx
414a23:	1b c0                	sbb    %eax,%eax
414a25:	23 c1                	and    %ecx,%eax
414a27:	83 c0 08             	add    $0x8,%eax
414a2a:	5d                   	pop    %ebp
414a2b:	c3                   	ret
414a2c:	8b 04 c5 84 c3 42 00 	mov    0x42c384(,%eax,8),%eax
414a33:	5d                   	pop    %ebp
414a34:	c3                   	ret
414a35:	8b ff                	mov    %edi,%edi
414a37:	55                   	push   %ebp
414a38:	8b ec                	mov    %esp,%ebp
414a3a:	56                   	push   %esi
414a3b:	e8 18 00 00 00       	call   0x414a58
414a40:	8b 4d 08             	mov    0x8(%ebp),%ecx
414a43:	51                   	push   %ecx
414a44:	89 08                	mov    %ecx,(%eax)
414a46:	e8 a7 ff ff ff       	call   0x4149f2
414a4b:	59                   	pop    %ecx
414a4c:	8b f0                	mov    %eax,%esi
414a4e:	e8 18 00 00 00       	call   0x414a6b
414a53:	89 30                	mov    %esi,(%eax)
414a55:	5e                   	pop    %esi
414a56:	5d                   	pop    %ebp
414a57:	c3                   	ret
414a58:	e8 83 41 00 00       	call   0x418be0
414a5d:	85 c0                	test   %eax,%eax
414a5f:	75 06                	jne    0x414a67
414a61:	b8 2c bb 43 00       	mov    $0x43bb2c,%eax
414a66:	c3                   	ret
414a67:	83 c0 14             	add    $0x14,%eax
414a6a:	c3                   	ret
414a6b:	e8 70 41 00 00       	call   0x418be0
414a70:	85 c0                	test   %eax,%eax
414a72:	75 06                	jne    0x414a7a
414a74:	b8 28 bb 43 00       	mov    $0x43bb28,%eax
414a79:	c3                   	ret
414a7a:	83 c0 10             	add    $0x10,%eax
414a7d:	c3                   	ret
414a7e:	8b ff                	mov    %edi,%edi
414a80:	55                   	push   %ebp
414a81:	8b ec                	mov    %esp,%ebp
414a83:	83 ec 10             	sub    $0x10,%esp
414a86:	56                   	push   %esi
414a87:	ff 75 08             	push   0x8(%ebp)
414a8a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
414a8d:	e8 36 7d ff ff       	call   0x40c7c8
414a92:	0f b6 75 0c          	movzbl 0xc(%ebp),%esi
414a96:	8b 45 f8             	mov    -0x8(%ebp),%eax
414a99:	8a 4d 14             	mov    0x14(%ebp),%cl
414a9c:	84 4c 30 19          	test   %cl,0x19(%eax,%esi,1)
414aa0:	75 1b                	jne    0x414abd
414aa2:	33 d2                	xor    %edx,%edx
414aa4:	39 55 10             	cmp    %edx,0x10(%ebp)
414aa7:	74 0e                	je     0x414ab7
414aa9:	8b 45 f4             	mov    -0xc(%ebp),%eax
414aac:	8b 00                	mov    (%eax),%eax
414aae:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
414ab2:	23 45 10             	and    0x10(%ebp),%eax
414ab5:	eb 02                	jmp    0x414ab9
414ab7:	8b c2                	mov    %edx,%eax
414ab9:	85 c0                	test   %eax,%eax
414abb:	74 03                	je     0x414ac0
414abd:	33 d2                	xor    %edx,%edx
414abf:	42                   	inc    %edx
414ac0:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
414ac4:	5e                   	pop    %esi
414ac5:	74 0a                	je     0x414ad1
414ac7:	8b 4d f0             	mov    -0x10(%ebp),%ecx
414aca:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
414ad1:	8b c2                	mov    %edx,%eax
414ad3:	8b e5                	mov    %ebp,%esp
414ad5:	5d                   	pop    %ebp
414ad6:	c3                   	ret
414ad7:	8b ff                	mov    %edi,%edi
414ad9:	55                   	push   %ebp
414ada:	8b ec                	mov    %esp,%ebp
414adc:	6a 04                	push   $0x4
414ade:	6a 00                	push   $0x0
414ae0:	ff 75 08             	push   0x8(%ebp)
414ae3:	6a 00                	push   $0x0
414ae5:	e8 94 ff ff ff       	call   0x414a7e
414aea:	83 c4 10             	add    $0x10,%esp
414aed:	5d                   	pop    %ebp
414aee:	c3                   	ret
414aef:	8b ff                	mov    %edi,%edi
414af1:	55                   	push   %ebp
414af2:	8b ec                	mov    %esp,%ebp
414af4:	5d                   	pop    %ebp
414af5:	e9 50 02 00 00       	jmp    0x414d4a
414afa:	8b ff                	mov    %edi,%edi
414afc:	55                   	push   %ebp
414afd:	8b ec                	mov    %esp,%ebp
414aff:	51                   	push   %ecx
414b00:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
414b04:	75 0e                	jne    0x414b14
414b06:	6a 00                	push   $0x0
414b08:	ff 75 08             	push   0x8(%ebp)
414b0b:	e8 b5 26 00 00       	call   0x4171c5
414b10:	59                   	pop    %ecx
414b11:	59                   	pop    %ecx
414b12:	eb 74                	jmp    0x414b88
414b14:	56                   	push   %esi
414b15:	57                   	push   %edi
414b16:	68 ff ff ff 7f       	push   $0x7fffffff
414b1b:	ff 75 0c             	push   0xc(%ebp)
414b1e:	33 ff                	xor    %edi,%edi
414b20:	8d 45 fc             	lea    -0x4(%ebp),%eax
414b23:	57                   	push   %edi
414b24:	57                   	push   %edi
414b25:	50                   	push   %eax
414b26:	e8 07 7c 00 00       	call   0x41c732
414b2b:	83 c4 14             	add    $0x14,%esp
414b2e:	85 c0                	test   %eax,%eax
414b30:	74 0a                	je     0x414b3c
414b32:	83 f8 16             	cmp    $0x16,%eax
414b35:	74 55                	je     0x414b8c
414b37:	83 f8 22             	cmp    $0x22,%eax
414b3a:	74 50                	je     0x414b8c
414b3c:	6a 02                	push   $0x2
414b3e:	ff 75 fc             	push   -0x4(%ebp)
414b41:	e8 e9 f8 ff ff       	call   0x41442f
414b46:	8b f0                	mov    %eax,%esi
414b48:	59                   	pop    %ecx
414b49:	59                   	pop    %ecx
414b4a:	85 f6                	test   %esi,%esi
414b4c:	74 2f                	je     0x414b7d
414b4e:	6a ff                	push   $0xffffffff
414b50:	ff 75 0c             	push   0xc(%ebp)
414b53:	ff 75 fc             	push   -0x4(%ebp)
414b56:	56                   	push   %esi
414b57:	57                   	push   %edi
414b58:	e8 d5 7b 00 00       	call   0x41c732
414b5d:	83 c4 14             	add    $0x14,%esp
414b60:	85 c0                	test   %eax,%eax
414b62:	74 0c                	je     0x414b70
414b64:	83 f8 16             	cmp    $0x16,%eax
414b67:	74 23                	je     0x414b8c
414b69:	83 f8 22             	cmp    $0x22,%eax
414b6c:	75 0f                	jne    0x414b7d
414b6e:	eb 1c                	jmp    0x414b8c
414b70:	56                   	push   %esi
414b71:	ff 75 08             	push   0x8(%ebp)
414b74:	e8 4c 26 00 00       	call   0x4171c5
414b79:	59                   	pop    %ecx
414b7a:	59                   	pop    %ecx
414b7b:	8b f8                	mov    %eax,%edi
414b7d:	56                   	push   %esi
414b7e:	e8 8d 01 00 00       	call   0x414d10
414b83:	59                   	pop    %ecx
414b84:	8b c7                	mov    %edi,%eax
414b86:	5f                   	pop    %edi
414b87:	5e                   	pop    %esi
414b88:	8b e5                	mov    %ebp,%esp
414b8a:	5d                   	pop    %ebp
414b8b:	c3                   	ret
414b8c:	57                   	push   %edi
414b8d:	57                   	push   %edi
414b8e:	57                   	push   %edi
414b8f:	57                   	push   %edi
414b90:	57                   	push   %edi
414b91:	e8 79 71 ff ff       	call   0x40bd0f
414b96:	cc                   	int3
414b97:	6a 1c                	push   $0x1c
414b99:	68 00 80 43 00       	push   $0x438000
414b9e:	e8 7d 2a ff ff       	call   0x407620
414ba3:	ff 75 0c             	push   0xc(%ebp)
414ba6:	8b 75 08             	mov    0x8(%ebp),%esi
414ba9:	56                   	push   %esi
414baa:	e8 4b ff ff ff       	call   0x414afa
414baf:	59                   	pop    %ecx
414bb0:	59                   	pop    %ecx
414bb1:	8b f8                	mov    %eax,%edi
414bb3:	85 ff                	test   %edi,%edi
414bb5:	75 07                	jne    0x414bbe
414bb7:	33 c0                	xor    %eax,%eax
414bb9:	e9 24 01 00 00       	jmp    0x414ce2
414bbe:	e8 99 3f 00 00       	call   0x418b5c
414bc3:	89 45 dc             	mov    %eax,-0x24(%ebp)
414bc6:	8b 48 4c             	mov    0x4c(%eax),%ecx
414bc9:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
414bcc:	8b 48 48             	mov    0x48(%eax),%ecx
414bcf:	89 4d d8             	mov    %ecx,-0x28(%ebp)
414bd2:	33 db                	xor    %ebx,%ebx
414bd4:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
414bd7:	8d 45 d4             	lea    -0x2c(%ebp),%eax
414bda:	50                   	push   %eax
414bdb:	53                   	push   %ebx
414bdc:	57                   	push   %edi
414bdd:	53                   	push   %ebx
414bde:	53                   	push   %ebx
414bdf:	8d 45 e4             	lea    -0x1c(%ebp),%eax
414be2:	50                   	push   %eax
414be3:	e8 eb 7d 00 00       	call   0x41c9d3
414be8:	83 c4 18             	add    $0x18,%esp
414beb:	85 c0                	test   %eax,%eax
414bed:	74 18                	je     0x414c07
414bef:	83 f8 16             	cmp    $0x16,%eax
414bf2:	74 05                	je     0x414bf9
414bf4:	83 f8 22             	cmp    $0x22,%eax
414bf7:	75 0a                	jne    0x414c03
414bf9:	53                   	push   %ebx
414bfa:	53                   	push   %ebx
414bfb:	53                   	push   %ebx
414bfc:	53                   	push   %ebx
414bfd:	53                   	push   %ebx
414bfe:	e8 0c 71 ff ff       	call   0x40bd0f
414c03:	85 c0                	test   %eax,%eax
414c05:	75 b0                	jne    0x414bb7
414c07:	8b 45 e4             	mov    -0x1c(%ebp),%eax
414c0a:	83 c0 04             	add    $0x4,%eax
414c0d:	50                   	push   %eax
414c0e:	e8 37 01 00 00       	call   0x414d4a
414c13:	59                   	pop    %ecx
414c14:	8b d8                	mov    %eax,%ebx
414c16:	85 db                	test   %ebx,%ebx
414c18:	74 9d                	je     0x414bb7
414c1a:	8d 43 04             	lea    0x4(%ebx),%eax
414c1d:	89 45 e0             	mov    %eax,-0x20(%ebp)
414c20:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
414c23:	51                   	push   %ecx
414c24:	6a ff                	push   $0xffffffff
414c26:	57                   	push   %edi
414c27:	ff 75 e4             	push   -0x1c(%ebp)
414c2a:	50                   	push   %eax
414c2b:	33 ff                	xor    %edi,%edi
414c2d:	57                   	push   %edi