415b1d:	8b d7                	mov    %edi,%edx
415b1f:	e8 ac fe ff ff       	call   0x4159d0
415b24:	85 ff                	test   %edi,%edi
415b26:	7e 0c                	jle    0x415b34
415b28:	8b 53 18             	mov    0x18(%ebx),%edx
415b2b:	8b c6                	mov    %esi,%eax
415b2d:	8b cf                	mov    %edi,%ecx
415b2f:	e8 2c 0f ff ff       	call   0x406a60
415b34:	8d 55 f8             	lea    -0x8(%ebp),%edx
415b37:	8b c6                	mov    %esi,%eax
415b39:	b9 04 00 00 00       	mov    $0x4,%ecx
415b3e:	e8 1d 0f ff ff       	call   0x406a60
415b43:	8b 45 f8             	mov    -0x8(%ebp),%eax
415b46:	e8 f5 fd ff ff       	call   0x415940
415b4b:	89 45 f8             	mov    %eax,-0x8(%ebp)
415b4e:	8d 55 fc             	lea    -0x4(%ebp),%edx
415b51:	b9 04 00 00 00       	mov    $0x4,%ecx
415b56:	83 c8 ff             	or     $0xffffffff,%eax
415b59:	e8 3a fd ff ff       	call   0x415898
415b5e:	8b f0                	mov    %eax,%esi
415b60:	8b 53 18             	mov    0x18(%ebx),%edx
415b63:	8b cf                	mov    %edi,%ecx
415b65:	8b c6                	mov    %esi,%eax
415b67:	e8 2c fd ff ff       	call   0x415898
415b6c:	83 f0 ff             	xor    $0xffffffff,%eax
415b6f:	8b f0                	mov    %eax,%esi
415b71:	3b 75 f8             	cmp    -0x8(%ebp),%esi
415b74:	0f 94 c0             	sete   %al
415b77:	84 c0                	test   %al,%al
415b79:	75 12                	jne    0x415b8d
415b7b:	8b 53 20             	mov    0x20(%ebx),%edx
415b7e:	80 7a 31 00          	cmpb   $0x0,0x31(%edx)
415b82:	74 09                	je     0x415b8d
415b84:	8b 53 20             	mov    0x20(%ebx),%edx
415b87:	c6 42 30 01          	movb   $0x1,0x30(%edx)
415b8b:	eb 02                	jmp    0x415b8f
415b8d:	b0 01                	mov    $0x1,%al
415b8f:	5f                   	pop    %edi
415b90:	5e                   	pop    %esi
415b91:	5b                   	pop    %ebx
415b92:	59                   	pop    %ecx
415b93:	59                   	pop    %ecx
415b94:	5d                   	pop    %ebp
415b95:	c2 04 00             	ret    $0x4
415b98:	55                   	push   %ebp
415b99:	8b ec                	mov    %esp,%ebp
415b9b:	51                   	push   %ecx
415b9c:	53                   	push   %ebx
415b9d:	56                   	push   %esi
415b9e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
415ba1:	8b d8                	mov    %eax,%ebx
415ba3:	8b 75 08             	mov    0x8(%ebp),%esi
415ba6:	56                   	push   %esi
415ba7:	8b c3                	mov    %ebx,%eax
415ba9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
415bac:	e8 57 ff ff ff       	call   0x415b08
415bb1:	8b d0                	mov    %eax,%edx
415bb3:	84 d2                	test   %dl,%dl
415bb5:	74 48                	je     0x415bff
415bb7:	83 fe 07             	cmp    $0x7,%esi
415bba:	75 43                	jne    0x415bff
415bbc:	8b c3                	mov    %ebx,%eax
415bbe:	8b 48 18             	mov    0x18(%eax),%ecx
415bc1:	66 8b 09             	mov    (%ecx),%cx
415bc4:	66 89 48 28          	mov    %cx,0x28(%eax)
415bc8:	8b 48 18             	mov    0x18(%eax),%ecx
415bcb:	83 c1 02             	add    $0x2,%ecx
415bce:	8a 09                	mov    (%ecx),%cl
415bd0:	88 48 2a             	mov    %cl,0x2a(%eax)
415bd3:	8b 48 18             	mov    0x18(%eax),%ecx
415bd6:	83 c1 03             	add    $0x3,%ecx
415bd9:	8a 09                	mov    (%ecx),%cl
415bdb:	88 48 2b             	mov    %cl,0x2b(%eax)
415bde:	8b 48 18             	mov    0x18(%eax),%ecx
415be1:	83 c1 04             	add    $0x4,%ecx
415be4:	8a 09                	mov    (%ecx),%cl
415be6:	88 48 2c             	mov    %cl,0x2c(%eax)
415be9:	8b 48 18             	mov    0x18(%eax),%ecx
415bec:	83 c1 05             	add    $0x5,%ecx
415bef:	8a 09                	mov    (%ecx),%cl
415bf1:	88 48 2d             	mov    %cl,0x2d(%eax)
415bf4:	8b 48 18             	mov    0x18(%eax),%ecx
415bf7:	83 c1 06             	add    $0x6,%ecx
415bfa:	8a 09                	mov    (%ecx),%cl
415bfc:	88 48 2e             	mov    %cl,0x2e(%eax)
415bff:	8b c2                	mov    %edx,%eax
415c01:	5e                   	pop    %esi
415c02:	5b                   	pop    %ebx
415c03:	59                   	pop    %ecx
415c04:	5d                   	pop    %ebp
415c05:	c2 04 00             	ret    $0x4
415c08:	53                   	push   %ebx
415c09:	56                   	push   %esi
415c0a:	8b f2                	mov    %edx,%esi
415c0c:	8b d8                	mov    %eax,%ebx
415c0e:	ba 07 00 00 00       	mov    $0x7,%edx
415c13:	8b c3                	mov    %ebx,%eax
415c15:	e8 b6 fd ff ff       	call   0x4159d0
415c1a:	8b 43 18             	mov    0x18(%ebx),%eax
415c1d:	66 8b 53 28          	mov    0x28(%ebx),%dx
415c21:	66 89 10             	mov    %dx,(%eax)
415c24:	8b 43 18             	mov    0x18(%ebx),%eax
415c27:	83 c0 02             	add    $0x2,%eax
415c2a:	8a 53 2a             	mov    0x2a(%ebx),%dl
415c2d:	88 10                	mov    %dl,(%eax)
415c2f:	8b 43 18             	mov    0x18(%ebx),%eax
415c32:	83 c0 03             	add    $0x3,%eax
415c35:	8a 53 2b             	mov    0x2b(%ebx),%dl
415c38:	88 10                	mov    %dl,(%eax)
415c3a:	8b 43 18             	mov    0x18(%ebx),%eax
415c3d:	83 c0 04             	add    $0x4,%eax
415c40:	8a 53 2c             	mov    0x2c(%ebx),%dl
415c43:	88 10                	mov    %dl,(%eax)
415c45:	8b 43 18             	mov    0x18(%ebx),%eax
415c48:	83 c0 05             	add    $0x5,%eax
415c4b:	8a 53 2d             	mov    0x2d(%ebx),%dl
415c4e:	88 10                	mov    %dl,(%eax)
415c50:	8b 43 18             	mov    0x18(%ebx),%eax
415c53:	83 c0 06             	add    $0x6,%eax
415c56:	8a 53 2e             	mov    0x2e(%ebx),%dl
415c59:	88 10                	mov    %dl,(%eax)
415c5b:	8b d6                	mov    %esi,%edx
415c5d:	8b c3                	mov    %ebx,%eax
415c5f:	e8 00 fe ff ff       	call   0x415a64
415c64:	5e                   	pop    %esi
415c65:	5b                   	pop    %ebx
415c66:	c3                   	ret
415c67:	90                   	nop
415c68:	55                   	push   %ebp
415c69:	8b ec                	mov    %esp,%ebp
415c6b:	83 c4 f8             	add    $0xfffffff8,%esp
415c6e:	53                   	push   %ebx
415c6f:	56                   	push   %esi
415c70:	89 4d fc             	mov    %ecx,-0x4(%ebp)
415c73:	8b d8                	mov    %eax,%ebx
415c75:	8b 75 08             	mov    0x8(%ebp),%esi
415c78:	56                   	push   %esi
415c79:	8b c3                	mov    %ebx,%eax
415c7b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
415c7e:	e8 85 fe ff ff       	call   0x415b08
415c83:	88 45 fb             	mov    %al,-0x5(%ebp)
415c86:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
415c8a:	74 4e                	je     0x415cda
415c8c:	83 fe 03             	cmp    $0x3,%esi
415c8f:	7c 49                	jl     0x415cda
415c91:	8b c3                	mov    %ebx,%eax
415c93:	8b d8                	mov    %eax,%ebx
415c95:	8d 43 28             	lea    0x28(%ebx),%eax
415c98:	8b 53 18             	mov    0x18(%ebx),%edx
415c9b:	e8 d0 db fe ff       	call   0x403870
415ca0:	8b 43 28             	mov    0x28(%ebx),%eax
415ca3:	e8 4c dc fe ff       	call   0x4038f4
415ca8:	8b d6                	mov    %esi,%edx
415caa:	2b d0                	sub    %eax,%edx
415cac:	4a                   	dec    %edx
415cad:	8d 43 2c             	lea    0x2c(%ebx),%eax
415cb0:	e8 cb df fe ff       	call   0x403c80
415cb5:	8b 43 2c             	mov    0x2c(%ebx),%eax
415cb8:	e8 37 dc fe ff       	call   0x4038f4
415cbd:	50                   	push   %eax
415cbe:	8b 43 28             	mov    0x28(%ebx),%eax
415cc1:	e8 2e dc fe ff       	call   0x4038f4
415cc6:	03 43 18             	add    0x18(%ebx),%eax
415cc9:	40                   	inc    %eax
415cca:	50                   	push   %eax
415ccb:	8d 43 2c             	lea    0x2c(%ebx),%eax
415cce:	e8 79 de fe ff       	call   0x403b4c
415cd3:	5a                   	pop    %edx
415cd4:	59                   	pop    %ecx
415cd5:	e8 8a ee fe ff       	call   0x404b64
415cda:	8a 45 fb             	mov    -0x5(%ebp),%al
415cdd:	5e                   	pop    %esi
415cde:	5b                   	pop    %ebx
415cdf:	59                   	pop    %ecx
415ce0:	59                   	pop    %ecx
415ce1:	5d                   	pop    %ebp
415ce2:	c2 04 00             	ret    $0x4
415ce5:	8d 40 00             	lea    0x0(%eax),%eax
415ce8:	53                   	push   %ebx
415ce9:	56                   	push   %esi
415cea:	57                   	push   %edi
415ceb:	8b f2                	mov    %edx,%esi
415ced:	8b d8                	mov    %eax,%ebx
415cef:	8b 43 28             	mov    0x28(%ebx),%eax
415cf2:	e8 fd db fe ff       	call   0x4038f4
415cf7:	8b f8                	mov    %eax,%edi
415cf9:	47                   	inc    %edi
415cfa:	8b 43 2c             	mov    0x2c(%ebx),%eax
415cfd:	e8 f2 db fe ff       	call   0x4038f4
415d02:	03 f8                	add    %eax,%edi
415d04:	8b d7                	mov    %edi,%edx
415d06:	8b c3                	mov    %ebx,%eax
415d08:	e8 c3 fc ff ff       	call   0x4159d0
415d0d:	8b 43 18             	mov    0x18(%ebx),%eax
415d10:	33 c9                	xor    %ecx,%ecx
415d12:	8b 53 1c             	mov    0x1c(%ebx),%edx
415d15:	e8 7a cd fe ff       	call   0x402a94
415d1a:	83 7b 28 00          	cmpl   $0x0,0x28(%ebx)
415d1e:	74 1c                	je     0x415d3c
415d20:	8b 43 28             	mov    0x28(%ebx),%eax
415d23:	e8 cc db fe ff       	call   0x4038f4
415d28:	50                   	push   %eax
415d29:	8d 43 28             	lea    0x28(%ebx),%eax
415d2c:	e8 1b de fe ff       	call   0x403b4c
415d31:	8b d0                	mov    %eax,%edx
415d33:	8b 43 18             	mov    0x18(%ebx),%eax
415d36:	59                   	pop    %ecx
415d37:	e8 28 ee fe ff       	call   0x404b64
415d3c:	83 7b 2c 00          	cmpl   $0x0,0x2c(%ebx)
415d40:	74 25                	je     0x415d67
415d42:	8b 43 2c             	mov    0x2c(%ebx),%eax
415d45:	e8 aa db fe ff       	call   0x4038f4
415d4a:	50                   	push   %eax
415d4b:	8d 43 2c             	lea    0x2c(%ebx),%eax
415d4e:	e8 f9 dd fe ff       	call   0x403b4c
415d53:	50                   	push   %eax
415d54:	8b 43 28             	mov    0x28(%ebx),%eax
415d57:	e8 98 db fe ff       	call   0x4038f4
415d5c:	03 43 18             	add    0x18(%ebx),%eax
415d5f:	40                   	inc    %eax
415d60:	5a                   	pop    %edx
415d61:	59                   	pop    %ecx
415d62:	e8 fd ed fe ff       	call   0x404b64
415d67:	8b d6                	mov    %esi,%edx
415d69:	8b c3                	mov    %ebx,%eax
415d6b:	e8 f4 fc ff ff       	call   0x415a64
415d70:	5f                   	pop    %edi
415d71:	5e                   	pop    %esi
415d72:	5b                   	pop    %ebx
415d73:	c3                   	ret
415d74:	53                   	push   %ebx
415d75:	e8 32 ce fe ff       	call   0x402bac
415d7a:	74 17                	je     0x415d93
415d7c:	8b d8                	mov    %eax,%ebx
415d7e:	8b c3                	mov    %ebx,%eax
415d80:	33 d2                	xor    %edx,%edx
415d82:	e8 8d fc ff ff       	call   0x415a14
415d87:	33 c0                	xor    %eax,%eax
415d89:	89 43 28             	mov    %eax,0x28(%ebx)
415d8c:	33 c0                	xor    %eax,%eax
415d8e:	89 43 2c             	mov    %eax,0x2c(%ebx)
415d91:	8b c3                	mov    %ebx,%eax
415d93:	5b                   	pop    %ebx
415d94:	c3                   	ret
415d95:	8d 40 00             	lea    0x0(%eax),%eax
415d98:	53                   	push   %ebx
415d99:	8b d8                	mov    %eax,%ebx
415d9b:	8b c3                	mov    %ebx,%eax
415d9d:	e8 0e 00 00 00       	call   0x415db0
415da2:	8b c3                	mov    %ebx,%eax
415da4:	e8 9b fc ff ff       	call   0x415a44
415da9:	8b c3                	mov    %ebx,%eax
415dab:	5b                   	pop    %ebx
415dac:	c3                   	ret
415dad:	8d 40 00             	lea    0x0(%eax),%eax
415db0:	53                   	push   %ebx
415db1:	8b d8                	mov    %eax,%ebx
415db3:	8b 43 28             	mov    0x28(%ebx),%eax
415db6:	85 c0                	test   %eax,%eax
415db8:	74 06                	je     0x415dc0
415dba:	50                   	push   %eax
415dbb:	e8 40 eb fe ff       	call   0x404900
415dc0:	8b 43 2c             	mov    0x2c(%ebx),%eax
415dc3:	85 c0                	test   %eax,%eax
415dc5:	74 06                	je     0x415dcd
415dc7:	50                   	push   %eax
415dc8:	e8 2b eb fe ff       	call   0x4048f8
415dcd:	8b 83 64 04 00 00    	mov    0x464(%ebx),%eax
415dd3:	85 c0                	test   %eax,%eax
415dd5:	74 05                	je     0x415ddc
415dd7:	e8 84 ca fe ff       	call   0x402860
415ddc:	33 c0                	xor    %eax,%eax
415dde:	89 43 28             	mov    %eax,0x28(%ebx)
415de1:	33 c0                	xor    %eax,%eax
415de3:	89 43 2c             	mov    %eax,0x2c(%ebx)
415de6:	33 c0                	xor    %eax,%eax
415de8:	89 83 64 04 00 00    	mov    %eax,0x464(%ebx)
415dee:	33 c0                	xor    %eax,%eax
415df0:	89 83 60 04 00 00    	mov    %eax,0x460(%ebx)
415df6:	5b                   	pop    %ebx
415df7:	c3                   	ret
415df8:	55                   	push   %ebp
415df9:	8b ec                	mov    %esp,%ebp
415dfb:	83 c4 f8             	add    $0xfffffff8,%esp
415dfe:	53                   	push   %ebx
415dff:	56                   	push   %esi
415e00:	57                   	push   %edi
415e01:	89 4d f8             	mov    %ecx,-0x8(%ebp)
415e04:	89 55 fc             	mov    %edx,-0x4(%ebp)
415e07:	8b f0                	mov    %eax,%esi
415e09:	8b 45 08             	mov    0x8(%ebp),%eax
415e0c:	50                   	push   %eax
415e0d:	8b fe                	mov    %esi,%edi
415e0f:	8b c7                	mov    %edi,%eax
415e11:	8b 4d f8             	mov    -0x8(%ebp),%ecx
415e14:	8b 55 fc             	mov    -0x4(%ebp),%edx
415e17:	e8 ec fc ff ff       	call   0x415b08
415e1c:	8b d8                	mov    %eax,%ebx
415e1e:	84 db                	test   %bl,%bl
415e20:	0f 84 af 00 00 00    	je     0x415ed5
415e26:	8b f7                	mov    %edi,%esi
415e28:	83 7e 1c 0d          	cmpl   $0xd,0x1c(%esi)
415e2c:	73 0e                	jae    0x415e3c
415e2e:	33 db                	xor    %ebx,%ebx
415e30:	8b 46 20             	mov    0x20(%esi),%eax
415e33:	c6 40 30 02          	movb   $0x2,0x30(%eax)
415e37:	e9 99 00 00 00       	jmp    0x415ed5
415e3c:	8b 46 18             	mov    0x18(%esi),%eax
415e3f:	56                   	push   %esi
415e40:	8d be 68 04 00 00    	lea    0x468(%esi),%edi
415e46:	8b f0                	mov    %eax,%esi
415e48:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415e49:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415e4a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415e4b:	a4                   	movsb  %ds:(%esi),%es:(%edi)
415e4c:	5e                   	pop    %esi
415e4d:	8b 86 68 04 00 00    	mov    0x468(%esi),%eax
415e53:	e8 e8 fa ff ff       	call   0x415940
415e58:	89 86 68 04 00 00    	mov    %eax,0x468(%esi)
415e5e:	8b 86 6c 04 00 00    	mov    0x46c(%esi),%eax
415e64:	e8 d7 fa ff ff       	call   0x415940
415e69:	89 86 6c 04 00 00    	mov    %eax,0x46c(%esi)
415e6f:	81 be 68 04 00 00 ff 	cmpl   $0xffff,0x468(%esi)
415e76:	ff 00 00
415e79:	7f 0c                	jg     0x415e87
415e7b:	81 be 6c 04 00 00 ff 	cmpl   $0xffff,0x46c(%esi)
415e82:	ff 00 00
415e85:	7e 0b                	jle    0x415e92
415e87:	33 db                	xor    %ebx,%ebx
415e89:	8b 46 20             	mov    0x20(%esi),%eax
415e8c:	c6 40 30 03          	movb   $0x3,0x30(%eax)
415e90:	eb 43                	jmp    0x415ed5
415e92:	80 be 72 04 00 00 00 	cmpb   $0x0,0x472(%esi)
415e99:	74 0b                	je     0x415ea6
415e9b:	33 db                	xor    %ebx,%ebx
415e9d:	8b 46 20             	mov    0x20(%esi),%eax
415ea0:	c6 40 30 04          	movb   $0x4,0x30(%eax)
415ea4:	eb 2f                	jmp    0x415ed5
415ea6:	8a 86 74 04 00 00    	mov    0x474(%esi),%al
415eac:	84 c0                	test   %al,%al
415eae:	74 0f                	je     0x415ebf
415eb0:	3c 01                	cmp    $0x1,%al
415eb2:	74 0b                	je     0x415ebf
415eb4:	33 db                	xor    %ebx,%ebx
415eb6:	8b 46 20             	mov    0x20(%esi),%eax
415eb9:	c6 40 30 05          	movb   $0x5,0x30(%eax)
415ebd:	eb 16                	jmp    0x415ed5
415ebf:	8b 46 20             	mov    0x20(%esi),%eax
415ec2:	8a 96 74 04 00 00    	mov    0x474(%esi),%dl
415ec8:	88 90 38 02 00 00    	mov    %dl,0x238(%eax)