417ca9:	8b c3                	mov    %ebx,%eax
417cab:	8b 18                	mov    (%eax),%ebx
417cad:	ff 53 04             	call   *0x4(%ebx)
417cb0:	5f                   	pop    %edi
417cb1:	5e                   	pop    %esi
417cb2:	5b                   	pop    %ebx
417cb3:	c3                   	ret
417cb4:	53                   	push   %ebx
417cb5:	56                   	push   %esi
417cb6:	8b d8                	mov    %eax,%ebx
417cb8:	8b c3                	mov    %ebx,%eax
417cba:	e8 0d ff ff ff       	call   0x417bcc
417cbf:	8b f0                	mov    %eax,%esi
417cc1:	85 f6                	test   %esi,%esi
417cc3:	7c 09                	jl     0x417cce
417cc5:	8b d6                	mov    %esi,%edx
417cc7:	8b c3                	mov    %ebx,%eax
417cc9:	e8 8e fd ff ff       	call   0x417a5c
417cce:	8b c6                	mov    %esi,%eax
417cd0:	5e                   	pop    %esi
417cd1:	5b                   	pop    %ebx
417cd2:	c3                   	ret
417cd3:	90                   	nop
417cd4:	53                   	push   %ebx
417cd5:	56                   	push   %esi
417cd6:	8b f2                	mov    %edx,%esi
417cd8:	8b d8                	mov    %eax,%ebx
417cda:	3b 73 08             	cmp    0x8(%ebx),%esi
417cdd:	7c 08                	jl     0x417ce7
417cdf:	81 fe ff ff ff 07    	cmp    $0x7ffffff,%esi
417ce5:	7e 0f                	jle    0x417cf6
417ce7:	8b 15 20 d6 46 00    	mov    0x46d620,%edx
417ced:	8b ce                	mov    %esi,%ecx
417cef:	8b 03                	mov    (%ebx),%eax
417cf1:	e8 06 fe ff ff       	call   0x417afc
417cf6:	3b 73 0c             	cmp    0xc(%ebx),%esi
417cf9:	74 11                	je     0x417d0c
417cfb:	8b d6                	mov    %esi,%edx
417cfd:	03 d2                	add    %edx,%edx
417cff:	03 d2                	add    %edx,%edx
417d01:	8d 43 04             	lea    0x4(%ebx),%eax
417d04:	e8 17 b0 fe ff       	call   0x402d20
417d09:	89 73 0c             	mov    %esi,0xc(%ebx)
417d0c:	5e                   	pop    %esi
417d0d:	5b                   	pop    %ebx
417d0e:	c3                   	ret
417d0f:	90                   	nop
417d10:	53                   	push   %ebx
417d11:	56                   	push   %esi
417d12:	57                   	push   %edi
417d13:	55                   	push   %ebp
417d14:	8b f2                	mov    %edx,%esi
417d16:	8b d8                	mov    %eax,%ebx
417d18:	85 f6                	test   %esi,%esi
417d1a:	7c 08                	jl     0x417d24
417d1c:	81 fe ff ff ff 07    	cmp    $0x7ffffff,%esi
417d22:	7e 0f                	jle    0x417d33
417d24:	8b 15 7c d5 46 00    	mov    0x46d57c,%edx
417d2a:	8b ce                	mov    %esi,%ecx
417d2c:	8b 03                	mov    (%ebx),%eax
417d2e:	e8 c9 fd ff ff       	call   0x417afc
417d33:	3b 73 0c             	cmp    0xc(%ebx),%esi
417d36:	7e 09                	jle    0x417d41
417d38:	8b d6                	mov    %esi,%edx
417d3a:	8b c3                	mov    %ebx,%eax
417d3c:	e8 93 ff ff ff       	call   0x417cd4
417d41:	8b 43 08             	mov    0x8(%ebx),%eax
417d44:	3b f0                	cmp    %eax,%esi
417d46:	7e 1a                	jle    0x417d62
417d48:	8b 53 04             	mov    0x4(%ebx),%edx
417d4b:	8d 14 82             	lea    (%edx,%eax,4),%edx
417d4e:	8b ce                	mov    %esi,%ecx
417d50:	2b c8                	sub    %eax,%ecx
417d52:	8b c1                	mov    %ecx,%eax
417d54:	03 c0                	add    %eax,%eax
417d56:	03 c0                	add    %eax,%eax
417d58:	33 c9                	xor    %ecx,%ecx
417d5a:	92                   	xchg   %eax,%edx
417d5b:	e8 d0 b4 fe ff       	call   0x403230
417d60:	eb 17                	jmp    0x417d79
417d62:	8b e8                	mov    %eax,%ebp
417d64:	4d                   	dec    %ebp
417d65:	8b fe                	mov    %esi,%edi
417d67:	2b fd                	sub    %ebp,%edi
417d69:	7f 0e                	jg     0x417d79
417d6b:	4f                   	dec    %edi
417d6c:	8b d5                	mov    %ebp,%edx
417d6e:	8b c3                	mov    %ebx,%eax
417d70:	e8 e7 fc ff ff       	call   0x417a5c
417d75:	4d                   	dec    %ebp
417d76:	47                   	inc    %edi
417d77:	75 f3                	jne    0x417d6c
417d79:	89 73 08             	mov    %esi,0x8(%ebx)
417d7c:	5d                   	pop    %ebp
417d7d:	5f                   	pop    %edi
417d7e:	5e                   	pop    %esi
417d7f:	5b                   	pop    %ebx
417d80:	c3                   	ret
417d81:	8d 40 00             	lea    0x0(%eax),%eax
417d84:	c3                   	ret
417d85:	8d 40 00             	lea    0x0(%eax),%eax
417d88:	53                   	push   %ebx
417d89:	56                   	push   %esi
417d8a:	84 d2                	test   %dl,%dl
417d8c:	74 08                	je     0x417d96
417d8e:	83 c4 f0             	add    $0xfffffff0,%esp
417d91:	e8 82 be fe ff       	call   0x403c18
417d96:	8b da                	mov    %edx,%ebx
417d98:	8b f0                	mov    %eax,%esi
417d9a:	33 d2                	xor    %edx,%edx
417d9c:	8b c6                	mov    %esi,%eax
417d9e:	e8 21 bb fe ff       	call   0x4038c4
417da3:	8d 46 08             	lea    0x8(%esi),%eax
417da6:	50                   	push   %eax
417da7:	e8 9c ec fe ff       	call   0x406a48
417dac:	b2 01                	mov    $0x1,%dl
417dae:	a1 c4 57 41 00       	mov    0x4157c4,%eax
417db3:	e8 0c bb fe ff       	call   0x4038c4
417db8:	89 46 04             	mov    %eax,0x4(%esi)
417dbb:	c6 46 20 00          	movb   $0x0,0x20(%esi)
417dbf:	8b c6                	mov    %esi,%eax
417dc1:	84 db                	test   %bl,%bl
417dc3:	74 0f                	je     0x417dd4
417dc5:	e8 a6 be fe ff       	call   0x403c70
417dca:	64 8f 05 00 00 00 00 	pop    %fs:0x0
417dd1:	83 c4 0c             	add    $0xc,%esp
417dd4:	8b c6                	mov    %esi,%eax
417dd6:	5e                   	pop    %esi
417dd7:	5b                   	pop    %ebx
417dd8:	c3                   	ret
417dd9:	8d 40 00             	lea    0x0(%eax),%eax
417ddc:	55                   	push   %ebp
417ddd:	8b ec                	mov    %esp,%ebp
417ddf:	83 c4 f8             	add    $0xfffffff8,%esp
417de2:	e8 d9 be fe ff       	call   0x403cc0
417de7:	88 55 fb             	mov    %dl,-0x5(%ebp)
417dea:	89 45 fc             	mov    %eax,-0x4(%ebp)
417ded:	8b 45 fc             	mov    -0x4(%ebp),%eax
417df0:	e8 eb 00 00 00       	call   0x417ee0
417df5:	33 c0                	xor    %eax,%eax
417df7:	55                   	push   %ebp
417df8:	68 3f 7e 41 00       	push   $0x417e3f
417dfd:	64 ff 30             	push   %fs:(%eax)
417e00:	64 89 20             	mov    %esp,%fs:(%eax)
417e03:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e06:	8b 40 04             	mov    0x4(%eax),%eax
417e09:	e8 e6 ba fe ff       	call   0x4038f4
417e0e:	0f b6 55 fb          	movzbl -0x5(%ebp),%edx
417e12:	80 e2 fc             	and    $0xfc,%dl
417e15:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e18:	e8 c7 ba fe ff       	call   0x4038e4
417e1d:	33 c0                	xor    %eax,%eax
417e1f:	5a                   	pop    %edx
417e20:	59                   	pop    %ecx
417e21:	59                   	pop    %ecx
417e22:	64 89 10             	mov    %edx,%fs:(%eax)
417e25:	68 46 7e 41 00       	push   $0x417e46
417e2a:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e2d:	e8 12 01 00 00       	call   0x417f44
417e32:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e35:	83 c0 08             	add    $0x8,%eax
417e38:	50                   	push   %eax
417e39:	e8 fa ea fe ff       	call   0x406938
417e3e:	c3                   	ret
417e3f:	e9 44 c2 fe ff       	jmp    0x404088
417e44:	eb e4                	jmp    0x417e2a
417e46:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
417e4a:	7e 08                	jle    0x417e54
417e4c:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e4f:	e8 14 be fe ff       	call   0x403c68
417e54:	59                   	pop    %ecx
417e55:	59                   	pop    %ecx
417e56:	5d                   	pop    %ebp
417e57:	c3                   	ret
417e58:	55                   	push   %ebp
417e59:	8b ec                	mov    %esp,%ebp
417e5b:	51                   	push   %ecx
417e5c:	53                   	push   %ebx
417e5d:	8b da                	mov    %edx,%ebx
417e5f:	89 45 fc             	mov    %eax,-0x4(%ebp)
417e62:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e65:	e8 76 00 00 00       	call   0x417ee0
417e6a:	33 c0                	xor    %eax,%eax
417e6c:	55                   	push   %ebp
417e6d:	68 d4 7e 41 00       	push   $0x417ed4
417e72:	64 ff 30             	push   %fs:(%eax)
417e75:	64 89 20             	mov    %esp,%fs:(%eax)
417e78:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e7b:	80 78 20 01          	cmpb   $0x1,0x20(%eax)
417e7f:	74 10                	je     0x417e91
417e81:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e84:	8b 40 04             	mov    0x4(%eax),%eax
417e87:	8b d3                	mov    %ebx,%edx
417e89:	e8 3e fd ff ff       	call   0x417bcc
417e8e:	40                   	inc    %eax
417e8f:	75 0f                	jne    0x417ea0
417e91:	8b 45 fc             	mov    -0x4(%ebp),%eax
417e94:	8b 40 04             	mov    0x4(%eax),%eax
417e97:	8b d3                	mov    %ebx,%edx
417e99:	e8 72 fb ff ff       	call   0x417a10
417e9e:	eb 1e                	jmp    0x417ebe
417ea0:	8b 45 fc             	mov    -0x4(%ebp),%eax
417ea3:	80 78 20 02          	cmpb   $0x2,0x20(%eax)
417ea7:	75 15                	jne    0x417ebe
417ea9:	8b 15 64 d5 46 00    	mov    0x46d564,%edx
417eaf:	8b 45 fc             	mov    -0x4(%ebp),%eax
417eb2:	8b 40 04             	mov    0x4(%eax),%eax
417eb5:	8b 00                	mov    (%eax),%eax
417eb7:	8b cb                	mov    %ebx,%ecx
417eb9:	e8 3e fc ff ff       	call   0x417afc
417ebe:	33 c0                	xor    %eax,%eax
417ec0:	5a                   	pop    %edx
417ec1:	59                   	pop    %ecx
417ec2:	59                   	pop    %ecx
417ec3:	64 89 10             	mov    %edx,%fs:(%eax)
417ec6:	68 db 7e 41 00       	push   $0x417edb
417ecb:	8b 45 fc             	mov    -0x4(%ebp),%eax
417ece:	e8 71 00 00 00       	call   0x417f44
417ed3:	c3                   	ret
417ed4:	e9 af c1 fe ff       	jmp    0x404088
417ed9:	eb f0                	jmp    0x417ecb
417edb:	5b                   	pop    %ebx
417edc:	59                   	pop    %ecx
417edd:	5d                   	pop    %ebp
417ede:	c3                   	ret
417edf:	90                   	nop
417ee0:	53                   	push   %ebx
417ee1:	8b d8                	mov    %eax,%ebx
417ee3:	8d 43 08             	lea    0x8(%ebx),%eax
417ee6:	50                   	push   %eax
417ee7:	e8 54 ea fe ff       	call   0x406940
417eec:	8b 43 04             	mov    0x4(%ebx),%eax
417eef:	5b                   	pop    %ebx
417ef0:	c3                   	ret
417ef1:	8d 40 00             	lea    0x0(%eax),%eax
417ef4:	55                   	push   %ebp
417ef5:	8b ec                	mov    %esp,%ebp
417ef7:	51                   	push   %ecx
417ef8:	53                   	push   %ebx
417ef9:	8b da                	mov    %edx,%ebx
417efb:	89 45 fc             	mov    %eax,-0x4(%ebp)
417efe:	8b 45 fc             	mov    -0x4(%ebp),%eax
417f01:	e8 da ff ff ff       	call   0x417ee0
417f06:	33 c0                	xor    %eax,%eax
417f08:	55                   	push   %ebp
417f09:	68 37 7f 41 00       	push   $0x417f37
417f0e:	64 ff 30             	push   %fs:(%eax)
417f11:	64 89 20             	mov    %esp,%fs:(%eax)
417f14:	8b 45 fc             	mov    -0x4(%ebp),%eax
417f17:	8b 40 04             	mov    0x4(%eax),%eax
417f1a:	8b d3                	mov    %ebx,%edx
417f1c:	e8 93 fd ff ff       	call   0x417cb4
417f21:	33 c0                	xor    %eax,%eax
417f23:	5a                   	pop    %edx
417f24:	59                   	pop    %ecx
417f25:	59                   	pop    %ecx
417f26:	64 89 10             	mov    %edx,%fs:(%eax)
417f29:	68 3e 7f 41 00       	push   $0x417f3e
417f2e:	8b 45 fc             	mov    -0x4(%ebp),%eax
417f31:	e8 0e 00 00 00       	call   0x417f44
417f36:	c3                   	ret
417f37:	e9 4c c1 fe ff       	jmp    0x404088
417f3c:	eb f0                	jmp    0x417f2e
417f3e:	5b                   	pop    %ebx
417f3f:	59                   	pop    %ecx
417f40:	5d                   	pop    %ebp
417f41:	c3                   	ret
417f42:	8b c0                	mov    %eax,%eax
417f44:	83 c0 08             	add    $0x8,%eax
417f47:	50                   	push   %eax
417f48:	e8 03 eb fe ff       	call   0x406a50
417f4d:	c3                   	ret
417f4e:	8b c0                	mov    %eax,%eax
417f50:	53                   	push   %ebx
417f51:	56                   	push   %esi
417f52:	e8 69 bd fe ff       	call   0x403cc0
417f57:	8b da                	mov    %edx,%ebx
417f59:	8b f0                	mov    %eax,%esi
417f5b:	33 d2                	xor    %edx,%edx
417f5d:	8b c6                	mov    %esi,%eax
417f5f:	e8 40 00 00 00       	call   0x417fa4
417f64:	8b d3                	mov    %ebx,%edx
417f66:	80 e2 fc             	and    $0xfc,%dl
417f69:	8b c6                	mov    %esi,%eax
417f6b:	e8 74 b9 fe ff       	call   0x4038e4
417f70:	84 db                	test   %bl,%bl
417f72:	7e 07                	jle    0x417f7b
417f74:	8b c6                	mov    %esi,%eax
417f76:	e8 ed bc fe ff       	call   0x403c68
417f7b:	5e                   	pop    %esi
417f7c:	5b                   	pop    %ebx
417f7d:	c3                   	ret
417f7e:	8b c0                	mov    %eax,%eax
417f80:	8b 0d 34 d7 46 00    	mov    0x46d734,%ecx
417f86:	b2 01                	mov    $0x1,%dl
417f88:	a1 f4 55 41 00       	mov    0x4155f4,%eax
417f8d:	e8 66 43 ff ff       	call   0x40c2f8
417f92:	e8 d1 c1 fe ff       	call   0x404168
417f97:	c3                   	ret
417f98:	8b c8                	mov    %eax,%ecx
417f9a:	3b d0                	cmp    %eax,%edx
417f9c:	7d 02                	jge    0x417fa0
417f9e:	8b ca                	mov    %edx,%ecx
417fa0:	8b c1                	mov    %ecx,%eax
417fa2:	c3                   	ret
417fa3:	90                   	nop
417fa4:	53                   	push   %ebx
417fa5:	56                   	push   %esi
417fa6:	57                   	push   %edi
417fa7:	55                   	push   %ebp
417fa8:	51                   	push   %ecx
417fa9:	8b f2                	mov    %edx,%esi
417fab:	8b d8                	mov    %eax,%ebx
417fad:	3b 73 04             	cmp    0x4(%ebx),%esi
417fb0:	0f 84 8c 00 00 00    	je     0x418042
417fb6:	85 f6                	test   %esi,%esi
417fb8:	7d 07                	jge    0x417fc1
417fba:	8b c3                	mov    %ebx,%eax
417fbc:	e8 bf ff ff ff       	call   0x417f80
417fc1:	8d 46 20             	lea    0x20(%esi),%eax
417fc4:	48                   	dec    %eax
417fc5:	85 c0                	test   %eax,%eax
417fc7:	79 03                	jns    0x417fcc
417fc9:	83 c0 1f             	add    $0x1f,%eax
417fcc:	c1 f8 05             	sar    $0x5,%eax
417fcf:	8b f8                	mov    %eax,%edi
417fd1:	03 ff                	add    %edi,%edi
417fd3:	03 ff                	add    %edi,%edi
417fd5:	8b 43 04             	mov    0x4(%ebx),%eax
417fd8:	83 c0 20             	add    $0x20,%eax
417fdb:	48                   	dec    %eax
417fdc:	85 c0                	test   %eax,%eax
417fde:	79 03                	jns    0x417fe3
417fe0:	83 c0 1f             	add    $0x1f,%eax
417fe3:	c1 f8 05             	sar    $0x5,%eax
417fe6:	8b e8                	mov    %eax,%ebp
417fe8:	03 ed                	add    %ebp,%ebp
417fea:	03 ed                	add    %ebp,%ebp
417fec:	3b ef                	cmp    %edi,%ebp
417fee:	74 4f                	je     0x41803f
417ff0:	33 c0                	xor    %eax,%eax
417ff2:	89 04 24             	mov    %eax,(%esp)
417ff5:	85 ff                	test   %edi,%edi
417ff7:	74 16                	je     0x41800f
417ff9:	8b c7                	mov    %edi,%eax
417ffb:	e8 ec ac fe ff       	call   0x402cec
418000:	89 04 24             	mov    %eax,(%esp)
418003:	8b 04 24             	mov    (%esp),%eax
418006:	33 c9                	xor    %ecx,%ecx
418008:	8b d7                	mov    %edi,%edx