409a48:	56                   	push   %esi
409a49:	56                   	push   %esi
409a4a:	57                   	push   %edi
409a4b:	e8 4d f2 00 00       	call   0x418c9d
409a50:	83 c4 14             	add    $0x14,%esp
409a53:	6a ff                	push   $0xffffffff
409a55:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409a58:	e8 ca 76 ff ff       	call   0x401127
409a5d:	8b 4d 08             	mov    0x8(%ebp),%ecx
409a60:	8d 45 f0             	lea    -0x10(%ebp),%eax
409a63:	50                   	push   %eax
409a64:	e8 69 76 ff ff       	call   0x4010d2
409a69:	8b 4d f0             	mov    -0x10(%ebp),%ecx
409a6c:	83 c1 f0             	add    $0xfffffff0,%ecx
409a6f:	e8 de 78 ff ff       	call   0x401352
409a74:	8b 4d ec             	mov    -0x14(%ebp),%ecx
409a77:	83 c1 f0             	add    $0xfffffff0,%ecx
409a7a:	e8 d3 78 ff ff       	call   0x401352
409a7f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409a82:	8b 45 08             	mov    0x8(%ebp),%eax
409a85:	5f                   	pop    %edi
409a86:	5e                   	pop    %esi
409a87:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
409a8e:	c9                   	leave
409a8f:	c2 04 00             	ret    $0x4
409a92:	b8 a2 2f 48 00       	mov    $0x482fa2,%eax
409a97:	e8 e0 e1 00 00       	call   0x417c7c
409a9c:	51                   	push   %ecx
409a9d:	51                   	push   %ecx
409a9e:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
409aa2:	56                   	push   %esi
409aa3:	8b f1                	mov    %ecx,%esi
409aa5:	8d 46 10             	lea    0x10(%esi),%eax
409aa8:	50                   	push   %eax
409aa9:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409aac:	e8 21 76 ff ff       	call   0x4010d2
409ab1:	8b 45 f0             	mov    -0x10(%ebp),%eax
409ab4:	8b 48 f4             	mov    -0xc(%eax),%ecx
409ab7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
409abb:	03 c8                	add    %eax,%ecx
409abd:	51                   	push   %ecx
409abe:	50                   	push   %eax
409abf:	e8 e0 f0 00 00       	call   0x418ba4
409ac4:	8a 00                	mov    (%eax),%al
409ac6:	3c 5c                	cmp    $0x5c,%al
409ac8:	59                   	pop    %ecx
409ac9:	59                   	pop    %ecx
409aca:	74 15                	je     0x409ae1
409acc:	3c 2f                	cmp    $0x2f,%al
409ace:	74 11                	je     0x409ae1
409ad0:	8a 46 14             	mov    0x14(%esi),%al
409ad3:	88 45 ec             	mov    %al,-0x14(%ebp)
409ad6:	ff 75 ec             	push   -0x14(%ebp)
409ad9:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409adc:	e8 32 cb ff ff       	call   0x406613
409ae1:	8b 06                	mov    (%esi),%eax
409ae3:	8d 4d ec             	lea    -0x14(%ebp),%ecx
409ae6:	51                   	push   %ecx
409ae7:	8b ce                	mov    %esi,%ecx
409ae9:	ff 50 0c             	call   *0xc(%eax)
409aec:	50                   	push   %eax
409aed:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409af0:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
409af4:	e8 d3 20 06 00       	call   0x46bbcc
409af9:	8b 4d ec             	mov    -0x14(%ebp),%ecx
409afc:	83 c1 f0             	add    $0xfffffff0,%ecx
409aff:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
409b03:	e8 4a 78 ff ff       	call   0x401352
409b08:	8b 4d 08             	mov    0x8(%ebp),%ecx
409b0b:	8d 45 f0             	lea    -0x10(%ebp),%eax
409b0e:	50                   	push   %eax
409b0f:	e8 be 75 ff ff       	call   0x4010d2
409b14:	8b 4d f0             	mov    -0x10(%ebp),%ecx
409b17:	83 c1 f0             	add    $0xfffffff0,%ecx
409b1a:	e8 33 78 ff ff       	call   0x401352
409b1f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409b22:	8b 45 08             	mov    0x8(%ebp),%eax
409b25:	5e                   	pop    %esi
409b26:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
409b2d:	c9                   	leave
409b2e:	c2 04 00             	ret    $0x4
409b31:	b8 b4 2f 48 00       	mov    $0x482fb4,%eax
409b36:	e8 41 e1 00 00       	call   0x417c7c
409b3b:	51                   	push   %ecx
409b3c:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
409b40:	56                   	push   %esi
409b41:	8b f1                	mov    %ecx,%esi
409b43:	e8 ae 66 03 00       	call   0x4401f6
409b48:	8b 10                	mov    (%eax),%edx
409b4a:	8b c8                	mov    %eax,%ecx
409b4c:	ff 52 0c             	call   *0xc(%edx)
409b4f:	83 c0 10             	add    $0x10,%eax
409b52:	89 45 f0             	mov    %eax,-0x10(%ebp)
409b55:	8b 46 04             	mov    0x4(%esi),%eax
409b58:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
409b5c:	85 c0                	test   %eax,%eax
409b5e:	5e                   	pop    %esi
409b5f:	74 0c                	je     0x409b6d
409b61:	83 c0 2c             	add    $0x2c,%eax
409b64:	50                   	push   %eax
409b65:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409b68:	e8 14 76 ff ff       	call   0x401181
409b6d:	8b 4d 08             	mov    0x8(%ebp),%ecx
409b70:	8d 45 f0             	lea    -0x10(%ebp),%eax
409b73:	50                   	push   %eax
409b74:	e8 59 75 ff ff       	call   0x4010d2
409b79:	8b 4d f0             	mov    -0x10(%ebp),%ecx
409b7c:	83 c1 f0             	add    $0xfffffff0,%ecx
409b7f:	e8 ce 77 ff ff       	call   0x401352
409b84:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409b87:	8b 45 08             	mov    0x8(%ebp),%eax
409b8a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
409b91:	c9                   	leave
409b92:	c2 04 00             	ret    $0x4
409b95:	b8 ce 2f 48 00       	mov    $0x482fce,%eax
409b9a:	e8 dd e0 00 00       	call   0x417c7c
409b9f:	51                   	push   %ecx
409ba0:	51                   	push   %ecx
409ba1:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
409ba5:	56                   	push   %esi
409ba6:	8b f1                	mov    %ecx,%esi
409ba8:	68 14 bc 48 00       	push   $0x48bc14
409bad:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409bb0:	e8 df 76 ff ff       	call   0x401294
409bb5:	8b 06                	mov    (%esi),%eax
409bb7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
409bbb:	8d 4d ec             	lea    -0x14(%ebp),%ecx
409bbe:	51                   	push   %ecx
409bbf:	8b ce                	mov    %esi,%ecx
409bc1:	ff 50 10             	call   *0x10(%eax)
409bc4:	50                   	push   %eax
409bc5:	8d 4d f0             	lea    -0x10(%ebp),%ecx
409bc8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
409bcc:	e8 fb 1f 06 00       	call   0x46bbcc
409bd1:	8b 4d ec             	mov    -0x14(%ebp),%ecx
409bd4:	83 c1 f0             	add    $0xfffffff0,%ecx
409bd7:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
409bdb:	e8 72 77 ff ff       	call   0x401352
409be0:	8b 4d 08             	mov    0x8(%ebp),%ecx
409be3:	8d 45 f0             	lea    -0x10(%ebp),%eax
409be6:	50                   	push   %eax
409be7:	e8 e6 74 ff ff       	call   0x4010d2
409bec:	8b 4d f0             	mov    -0x10(%ebp),%ecx
409bef:	83 c1 f0             	add    $0xfffffff0,%ecx
409bf2:	e8 5b 77 ff ff       	call   0x401352
409bf7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409bfa:	8b 45 08             	mov    0x8(%ebp),%eax
409bfd:	5e                   	pop    %esi
409bfe:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
409c05:	c9                   	leave
409c06:	c2 04 00             	ret    $0x4
409c09:	c7 01 b0 bc 48 00    	movl   $0x48bcb0,(%ecx)
409c0f:	8b 49 10             	mov    0x10(%ecx),%ecx
409c12:	83 e9 10             	sub    $0x10,%ecx
409c15:	e9 38 77 ff ff       	jmp    0x401352
409c1a:	56                   	push   %esi
409c1b:	8b f1                	mov    %ecx,%esi
409c1d:	e8 e7 ff ff ff       	call   0x409c09
409c22:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
409c27:	74 07                	je     0x409c30
409c29:	56                   	push   %esi
409c2a:	e8 51 64 03 00       	call   0x440080
409c2f:	59                   	pop    %ecx
409c30:	8b c6                	mov    %esi,%eax
409c32:	5e                   	pop    %esi
409c33:	c2 04 00             	ret    $0x4
409c36:	b8 07 30 48 00       	mov    $0x483007,%eax
409c3b:	e8 3c e0 00 00       	call   0x417c7c
409c40:	51                   	push   %ecx
409c41:	56                   	push   %esi
409c42:	8b f1                	mov    %ecx,%esi
409c44:	57                   	push   %edi
409c45:	89 75 f0             	mov    %esi,-0x10(%ebp)
409c48:	e8 69 63 03 00       	call   0x43ffb6
409c4d:	8d 7e 10             	lea    0x10(%esi),%edi
409c50:	8b cf                	mov    %edi,%ecx
409c52:	c7 06 b0 bc 48 00    	movl   $0x48bcb0,(%esi)
409c58:	e8 57 74 ff ff       	call   0x4010b4
409c5d:	8b 45 08             	mov    0x8(%ebp),%eax
409c60:	ff 75 10             	push   0x10(%ebp)
409c63:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
409c67:	89 46 08             	mov    %eax,0x8(%esi)
409c6a:	8b 45 0c             	mov    0xc(%ebp),%eax
409c6d:	8b cf                	mov    %edi,%ecx
409c6f:	89 46 0c             	mov    %eax,0xc(%esi)
409c72:	e8 0a 75 ff ff       	call   0x401181
409c77:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409c7a:	5f                   	pop    %edi
409c7b:	8b c6                	mov    %esi,%eax
409c7d:	5e                   	pop    %esi
409c7e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
409c85:	c9                   	leave
409c86:	c2 0c 00             	ret    $0xc
409c89:	ff 74 24 04          	push   0x4(%esp)
409c8d:	ff 71 04             	push   0x4(%ecx)
409c90:	ff 15 cc 02 4b 00    	call   *0x4b02cc
409c96:	85 c0                	test   %eax,%eax
409c98:	74 0b                	je     0x409ca5
409c9a:	3d 80 00 00 00       	cmp    $0x80,%eax
409c9f:	74 04                	je     0x409ca5
409ca1:	33 c0                	xor    %eax,%eax
409ca3:	eb 03                	jmp    0x409ca8
409ca5:	33 c0                	xor    %eax,%eax
409ca7:	40                   	inc    %eax
409ca8:	c2 04 00             	ret    $0x4
409cab:	8b c1                	mov    %ecx,%eax
409cad:	83 60 04 00          	andl   $0x0,0x4(%eax)
409cb1:	c7 00 5c bd 48 00    	movl   $0x48bd5c,(%eax)
409cb7:	c2 04 00             	ret    $0x4
409cba:	56                   	push   %esi
409cbb:	8b f1                	mov    %ecx,%esi
409cbd:	8b 46 04             	mov    0x4(%esi),%eax
409cc0:	85 c0                	test   %eax,%eax
409cc2:	c7 06 5c bd 48 00    	movl   $0x48bd5c,(%esi)
409cc8:	74 0b                	je     0x409cd5
409cca:	50                   	push   %eax
409ccb:	ff 15 d8 02 4b 00    	call   *0x4b02d8
409cd1:	83 66 04 00          	andl   $0x0,0x4(%esi)
409cd5:	5e                   	pop    %esi
409cd6:	c3                   	ret
409cd7:	56                   	push   %esi
409cd8:	8b f1                	mov    %ecx,%esi
409cda:	e8 db ff ff ff       	call   0x409cba
409cdf:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
409ce4:	74 07                	je     0x409ced
409ce6:	56                   	push   %esi
409ce7:	e8 94 63 03 00       	call   0x440080
409cec:	59                   	pop    %ecx
409ced:	8b c6                	mov    %esi,%eax
409cef:	5e                   	pop    %esi
409cf0:	c2 04 00             	ret    $0x4
409cf3:	e9 6d ff 00 00       	jmp    0x419c65
409cf8:	ff 25 a8 0a 4b 00    	jmp    *0x4b0aa8
409cfe:	8b c1                	mov    %ecx,%eax
409d00:	83 20 00             	andl   $0x0,(%eax)
409d03:	83 60 04 00          	andl   $0x0,0x4(%eax)
409d07:	c3                   	ret
409d08:	8b c1                	mov    %ecx,%eax
409d0a:	8b 4c 24 04          	mov    0x4(%esp),%ecx
409d0e:	89 08                	mov    %ecx,(%eax)
409d10:	8b 4c 24 08          	mov    0x8(%esp),%ecx
409d14:	89 48 04             	mov    %ecx,0x4(%eax)
409d17:	c2 08 00             	ret    $0x8
409d1a:	8b 01                	mov    (%ecx),%eax
409d1c:	8b 51 04             	mov    0x4(%ecx),%edx
409d1f:	c3                   	ret
409d20:	51                   	push   %ecx
409d21:	e8 b7 ce 00 00       	call   0x416bdd
409d26:	85 c0                	test   %eax,%eax
409d28:	59                   	pop    %ecx
409d29:	74 09                	je     0x409d34
409d2b:	8b 40 14             	mov    0x14(%eax),%eax
409d2e:	05 6c 07 00 00       	add    $0x76c,%eax
409d33:	c3                   	ret
409d34:	33 c0                	xor    %eax,%eax
409d36:	c3                   	ret
409d37:	51                   	push   %ecx
409d38:	e8 a0 ce 00 00       	call   0x416bdd
409d3d:	85 c0                	test   %eax,%eax
409d3f:	59                   	pop    %ecx
409d40:	74 05                	je     0x409d47
409d42:	8b 40 10             	mov    0x10(%eax),%eax
409d45:	40                   	inc    %eax
409d46:	c3                   	ret
409d47:	33 c0                	xor    %eax,%eax
409d49:	c3                   	ret
409d4a:	51                   	push   %ecx
409d4b:	e8 8d ce 00 00       	call   0x416bdd
409d50:	85 c0                	test   %eax,%eax
409d52:	59                   	pop    %ecx
409d53:	74 04                	je     0x409d59
409d55:	8b 40 0c             	mov    0xc(%eax),%eax
409d58:	c3                   	ret
409d59:	33 c0                	xor    %eax,%eax
409d5b:	c3                   	ret
409d5c:	51                   	push   %ecx
409d5d:	e8 7b ce 00 00       	call   0x416bdd
409d62:	85 c0                	test   %eax,%eax
409d64:	59                   	pop    %ecx
409d65:	74 04                	je     0x409d6b
409d67:	8b 40 08             	mov    0x8(%eax),%eax
409d6a:	c3                   	ret
409d6b:	83 c8 ff             	or     $0xffffffff,%eax
409d6e:	c3                   	ret
409d6f:	51                   	push   %ecx
409d70:	e8 68 ce 00 00       	call   0x416bdd
409d75:	85 c0                	test   %eax,%eax
409d77:	59                   	pop    %ecx
409d78:	74 04                	je     0x409d7e
409d7a:	8b 40 04             	mov    0x4(%eax),%eax
409d7d:	c3                   	ret
409d7e:	83 c8 ff             	or     $0xffffffff,%eax
409d81:	c3                   	ret
409d82:	51                   	push   %ecx
409d83:	e8 55 ce 00 00       	call   0x416bdd
409d88:	85 c0                	test   %eax,%eax
409d8a:	59                   	pop    %ecx
409d8b:	74 03                	je     0x409d90
409d8d:	8b 00                	mov    (%eax),%eax
409d8f:	c3                   	ret
409d90:	83 c8 ff             	or     $0xffffffff,%eax
409d93:	c3                   	ret
409d94:	8b 44 24 04          	mov    0x4(%esp),%eax
409d98:	85 c0                	test   %eax,%eax
409d9a:	7d 12                	jge    0x409dae
409d9c:	3d 0e 00 07 80       	cmp    $0x8007000e,%eax
409da1:	75 05                	jne    0x409da8
409da3:	e8 6f b6 02 00       	call   0x435417
409da8:	50                   	push   %eax
409da9:	e8 93 95 06 00       	call   0x473341
409dae:	c2 04 00             	ret    $0x4
409db1:	b8 b3 30 48 00       	mov    $0x4830b3,%eax
409db6:	e8 c1 de 00 00       	call   0x417c7c
409dbb:	83 ec 34             	sub    $0x34,%esp
409dbe:	8b 45 08             	mov    0x8(%ebp),%eax
409dc1:	85 c0                	test   %eax,%eax
409dc3:	53                   	push   %ebx
409dc4:	56                   	push   %esi
409dc5:	57                   	push   %edi
409dc6:	89 65 f0             	mov    %esp,-0x10(%ebp)
409dc9:	0f 84 33 02 00 00    	je     0x40a002
409dcf:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
409dd3:	0f 84 29 02 00 00    	je     0x40a002
409dd9:	8b 35 d4 04 4b 00    	mov    0x4b04d4,%esi
409ddf:	50                   	push   %eax
409de0:	ff d6                	call   *%esi
409de2:	ff 75 0c             	push   0xc(%ebp)
409de5:	8b d8                	mov    %eax,%ebx
409de7:	89 5d d0             	mov    %ebx,-0x30(%ebp)
409dea:	ff d6                	call   *%esi
409dec:	8b f8                	mov    %eax,%edi
409dee:	3b df                	cmp    %edi,%ebx
409df0:	0f 85 1f 01 00 00    	jne    0x409f15
409df6:	85 db                	test   %ebx,%ebx
409df8:	75 08                	jne    0x409e02
409dfa:	33 c0                	xor    %eax,%eax
409dfc:	40                   	inc    %eax
409dfd:	e9 0a 02 00 00       	jmp    0x40a00c
409e02:	ff 75 08             	push   0x8(%ebp)
409e05:	8b 35 d8 04 4b 00    	mov    0x4b04d8,%esi
409e0b:	ff d6                	call   *%esi
409e0d:	ff 75 0c             	push   0xc(%ebp)
409e10:	89 45 d4             	mov    %eax,-0x2c(%ebp)
409e13:	ff d6                	call   *%esi
409e15:	39 45 d4             	cmp    %eax,-0x2c(%ebp)
409e18:	0f 85 f7 00 00 00    	jne    0x409f15
409e1e:	33 c0                	xor    %eax,%eax
409e20:	c1 e3 02             	shl    $0x2,%ebx
409e23:	53                   	push   %ebx
409e24:	89 45 ec             	mov    %eax,-0x14(%ebp)