412ba9:	83 c6 34             	add    $0x34,%esi
412bac:	3b 7b 0c             	cmp    0xc(%ebx),%edi
412baf:	59                   	pop    %ecx
412bb0:	72 ef                	jb     0x412ba1
412bb2:	33 ff                	xor    %edi,%edi
412bb4:	ff 75 cc             	push   -0x34(%ebp)
412bb7:	e8 c4 d4 02 00       	call   0x440080
412bbc:	ff 73 10             	push   0x10(%ebx)
412bbf:	e8 bc d4 02 00       	call   0x440080
412bc4:	59                   	pop    %ecx
412bc5:	89 7b 10             	mov    %edi,0x10(%ebx)
412bc8:	8b 45 c4             	mov    -0x3c(%ebp),%eax
412bcb:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412bcf:	59                   	pop    %ecx
412bd0:	3b c7                	cmp    %edi,%eax
412bd2:	74 06                	je     0x412bda
412bd4:	8b 08                	mov    (%eax),%ecx
412bd6:	50                   	push   %eax
412bd7:	ff 51 08             	call   *0x8(%ecx)
412bda:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
412bdf:	eb 4e                	jmp    0x412c2f
412be1:	ff 75 d4             	push   -0x2c(%ebp)
412be4:	57                   	push   %edi
412be5:	50                   	push   %eax
412be6:	e8 55 56 00 00       	call   0x418240
412beb:	ff 75 c4             	push   -0x3c(%ebp)
412bee:	ff 75 d4             	push   -0x2c(%ebp)
412bf1:	ff 33                	push   (%ebx)
412bf3:	ff 73 0c             	push   0xc(%ebx)
412bf6:	ff 75 cc             	push   -0x34(%ebp)
412bf9:	e8 66 b5 ff ff       	call   0x40e164
412bfe:	8b f0                	mov    %eax,%esi
412c00:	83 c4 20             	add    $0x20,%esp
412c03:	3b f7                	cmp    %edi,%esi
412c05:	7d 0c                	jge    0x412c13
412c07:	ff 73 10             	push   0x10(%ebx)
412c0a:	e8 71 d4 02 00       	call   0x440080
412c0f:	59                   	pop    %ecx
412c10:	89 7b 10             	mov    %edi,0x10(%ebx)
412c13:	ff 75 cc             	push   -0x34(%ebp)
412c16:	e8 65 d4 02 00       	call   0x440080
412c1b:	59                   	pop    %ecx
412c1c:	8b 45 c4             	mov    -0x3c(%ebp),%eax
412c1f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412c23:	3b c7                	cmp    %edi,%eax
412c25:	74 06                	je     0x412c2d
412c27:	8b 08                	mov    (%eax),%ecx
412c29:	50                   	push   %eax
412c2a:	ff 51 08             	call   *0x8(%ecx)
412c2d:	8b c6                	mov    %esi,%eax
412c2f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
412c32:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
412c39:	8b 4d ec             	mov    -0x14(%ebp),%ecx
412c3c:	e8 9d 4f 00 00       	call   0x417bde
412c41:	5f                   	pop    %edi
412c42:	5e                   	pop    %esi
412c43:	5b                   	pop    %ebx
412c44:	c9                   	leave
412c45:	c2 04 00             	ret    $0x4
412c48:	8b c1                	mov    %ecx,%eax
412c4a:	c3                   	ret
412c4b:	b8 11 37 48 00       	mov    $0x483711,%eax
412c50:	e8 27 50 00 00       	call   0x417c7c
412c55:	81 ec 94 00 00 00    	sub    $0x94,%esp
412c5b:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
412c60:	53                   	push   %ebx
412c61:	56                   	push   %esi
412c62:	8b f1                	mov    %ecx,%esi
412c64:	89 45 f0             	mov    %eax,-0x10(%ebp)
412c67:	8b 46 14             	mov    0x14(%esi),%eax
412c6a:	57                   	push   %edi
412c6b:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
412c71:	8b 46 10             	mov    0x10(%esi),%eax
412c74:	33 ff                	xor    %edi,%edi
412c76:	39 7e 48             	cmp    %edi,0x48(%esi)
412c79:	89 45 80             	mov    %eax,-0x80(%ebp)
412c7c:	0f 84 27 01 00 00    	je     0x412da9
412c82:	8b 46 4c             	mov    0x4c(%esi),%eax
412c85:	8b 08                	mov    (%eax),%ecx
412c87:	8d 55 8c             	lea    -0x74(%ebp),%edx
412c8a:	52                   	push   %edx
412c8b:	68 3c 65 49 00       	push   $0x49653c
412c90:	50                   	push   %eax
412c91:	ff 51 14             	call   *0x14(%ecx)
412c94:	3b c7                	cmp    %edi,%eax
412c96:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
412c9c:	0f 8c f9 02 00 00    	jl     0x412f9b
412ca2:	8b 45 8c             	mov    -0x74(%ebp),%eax
412ca5:	8b 08                	mov    (%eax),%ecx
412ca7:	8d 55 84             	lea    -0x7c(%ebp),%edx
412caa:	52                   	push   %edx
412cab:	68 ec 64 49 00       	push   $0x4964ec
412cb0:	50                   	push   %eax
412cb1:	ff 11                	call   *(%ecx)
412cb3:	85 c0                	test   %eax,%eax
412cb5:	7c 42                	jl     0x412cf9
412cb7:	8b 45 84             	mov    -0x7c(%ebp),%eax
412cba:	8d 55 88             	lea    -0x78(%ebp),%edx
412cbd:	52                   	push   %edx
412cbe:	68 5c 66 49 00       	push   $0x49665c
412cc3:	89 7d 88             	mov    %edi,-0x78(%ebp)
412cc6:	8b 08                	mov    (%eax),%ecx
412cc8:	50                   	push   %eax
412cc9:	ff 51 10             	call   *0x10(%ecx)
412ccc:	85 c0                	test   %eax,%eax
412cce:	7c 20                	jl     0x412cf0
412cd0:	8b 45 88             	mov    -0x78(%ebp),%eax
412cd3:	8b 08                	mov    (%eax),%ecx
412cd5:	8d 56 58             	lea    0x58(%esi),%edx
412cd8:	52                   	push   %edx
412cd9:	8b 56 04             	mov    0x4(%esi),%edx
412cdc:	81 c2 e4 00 00 00    	add    $0xe4,%edx
412ce2:	52                   	push   %edx
412ce3:	50                   	push   %eax
412ce4:	ff 51 14             	call   *0x14(%ecx)
412ce7:	8b 45 88             	mov    -0x78(%ebp),%eax
412cea:	8b 08                	mov    (%eax),%ecx
412cec:	50                   	push   %eax
412ced:	ff 51 08             	call   *0x8(%ecx)
412cf0:	8b 45 84             	mov    -0x7c(%ebp),%eax
412cf3:	8b 08                	mov    (%eax),%ecx
412cf5:	50                   	push   %eax
412cf6:	ff 51 08             	call   *0x8(%ecx)
412cf9:	6a 14                	push   $0x14
412cfb:	e8 55 d3 02 00       	call   0x440055
412d00:	3b c7                	cmp    %edi,%eax
412d02:	59                   	pop    %ecx
412d03:	74 0c                	je     0x412d11
412d05:	ff 75 8c             	push   -0x74(%ebp)
412d08:	8b c8                	mov    %eax,%ecx
412d0a:	e8 2a ee ff ff       	call   0x411b39
412d0f:	eb 02                	jmp    0x412d13
412d11:	33 c0                	xor    %eax,%eax
412d13:	89 46 50             	mov    %eax,0x50(%esi)
412d16:	8b 45 8c             	mov    -0x74(%ebp),%eax
412d19:	8b 08                	mov    (%eax),%ecx
412d1b:	50                   	push   %eax
412d1c:	ff 51 08             	call   *0x8(%ecx)
412d1f:	8b 46 50             	mov    0x50(%esi),%eax
412d22:	8b 08                	mov    (%eax),%ecx
412d24:	3b cf                	cmp    %edi,%ecx
412d26:	74 0a                	je     0x412d32
412d28:	83 c0 04             	add    $0x4,%eax
412d2b:	50                   	push   %eax
412d2c:	51                   	push   %ecx
412d2d:	e8 5c cd ff ff       	call   0x40fa8e
412d32:	6a 28                	push   $0x28
412d34:	e8 1c d3 02 00       	call   0x440055
412d39:	3b c7                	cmp    %edi,%eax
412d3b:	59                   	pop    %ecx
412d3c:	74 0f                	je     0x412d4d
412d3e:	68 40 1f 00 00       	push   $0x1f40
412d43:	57                   	push   %edi
412d44:	8b c8                	mov    %eax,%ecx
412d46:	e8 e1 b4 ff ff       	call   0x40e22c
412d4b:	eb 02                	jmp    0x412d4f
412d4d:	33 c0                	xor    %eax,%eax
412d4f:	8b 4e 50             	mov    0x50(%esi),%ecx
412d52:	89 46 54             	mov    %eax,0x54(%esi)
412d55:	ff 31                	push   (%ecx)
412d57:	8b c8                	mov    %eax,%ecx
412d59:	e8 1a f9 ff ff       	call   0x412678
412d5e:	8b 46 54             	mov    0x54(%esi),%eax
412d61:	8b 4e 50             	mov    0x50(%esi),%ecx
412d64:	89 41 08             	mov    %eax,0x8(%ecx)
412d67:	8b 46 54             	mov    0x54(%esi),%eax
412d6a:	8b 40 0c             	mov    0xc(%eax),%eax
412d6d:	89 46 10             	mov    %eax,0x10(%esi)
412d70:	8d 04 80             	lea    (%eax,%eax,4),%eax
412d73:	c1 e0 03             	shl    $0x3,%eax
412d76:	50                   	push   %eax
412d77:	ff 15 18 0b 4b 00    	call   *0x4b0b18
412d7d:	8b 4e 10             	mov    0x10(%esi),%ecx
412d80:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
412d83:	c1 e1 03             	shl    $0x3,%ecx
412d86:	51                   	push   %ecx
412d87:	57                   	push   %edi
412d88:	50                   	push   %eax
412d89:	89 46 14             	mov    %eax,0x14(%esi)
412d8c:	e8 af 54 00 00       	call   0x418240
412d91:	8b 4e 50             	mov    0x50(%esi),%ecx
412d94:	83 c4 0c             	add    $0xc,%esp
412d97:	e8 aa f7 ff ff       	call   0x412546
412d9c:	8b 4e 50             	mov    0x50(%esi),%ecx
412d9f:	e8 c0 cb ff ff       	call   0x40f964
412da4:	e9 25 01 00 00       	jmp    0x412ece
412da9:	8b 46 08             	mov    0x8(%esi),%eax
412dac:	3b c7                	cmp    %edi,%eax
412dae:	75 07                	jne    0x412db7
412db0:	33 c0                	xor    %eax,%eax
412db2:	e9 e4 01 00 00       	jmp    0x412f9b
412db7:	8b 08                	mov    (%eax),%ecx
412db9:	8d 55 84             	lea    -0x7c(%ebp),%edx
412dbc:	52                   	push   %edx
412dbd:	8d 55 88             	lea    -0x78(%ebp),%edx
412dc0:	52                   	push   %edx
412dc1:	68 9c 46 49 00       	push   $0x49469c
412dc6:	50                   	push   %eax
412dc7:	ff 51 0c             	call   *0xc(%ecx)
412dca:	3b c7                	cmp    %edi,%eax
412dcc:	0f 8c c9 01 00 00    	jl     0x412f9b
412dd2:	68 e0 6c 49 00       	push   $0x496ce0
412dd7:	8d 45 90             	lea    -0x70(%ebp),%eax
412dda:	50                   	push   %eax
412ddb:	8b ce                	mov    %esi,%ecx
412ddd:	e8 dc c8 ff ff       	call   0x40f6be
412de2:	83 4d b0 ff          	orl    $0xffffffff,-0x50(%ebp)
412de6:	68 08 6c 49 00       	push   $0x496c08
412deb:	8d 45 c0             	lea    -0x40(%ebp),%eax
412dee:	50                   	push   %eax
412def:	8b ce                	mov    %esi,%ecx
412df1:	89 7d a8             	mov    %edi,-0x58(%ebp)
412df4:	89 7d ac             	mov    %edi,-0x54(%ebp)
412df7:	c7 45 b4 18 00 00 00 	movl   $0x18,-0x4c(%ebp)
412dfe:	89 7d b8             	mov    %edi,-0x48(%ebp)
412e01:	c7 45 bc fb 01 00 00 	movl   $0x1fb,-0x44(%ebp)
412e08:	e8 b1 c8 ff ff       	call   0x40f6be
412e0d:	8b 45 88             	mov    -0x78(%ebp),%eax
412e10:	83 4d e0 ff          	orl    $0xffffffff,-0x20(%ebp)
412e14:	57                   	push   %edi
412e15:	6a 28                	push   $0x28
412e17:	8d 55 90             	lea    -0x70(%ebp),%edx
412e1a:	52                   	push   %edx
412e1b:	6a 02                	push   $0x2
412e1d:	c7 45 d8 1c 00 00 00 	movl   $0x1c,-0x28(%ebp)
412e24:	89 7d dc             	mov    %edi,-0x24(%ebp)
412e27:	c7 45 e4 20 00 00 00 	movl   $0x20,-0x1c(%ebp)
412e2e:	89 7d e8             	mov    %edi,-0x18(%ebp)
412e31:	c7 45 ec 1e 00 00 00 	movl   $0x1e,-0x14(%ebp)
412e38:	8b 08                	mov    (%eax),%ecx
412e3a:	50                   	push   %eax
412e3b:	ff 51 10             	call   *0x10(%ecx)
412e3e:	8b d8                	mov    %eax,%ebx
412e40:	3b df                	cmp    %edi,%ebx
412e42:	7d 10                	jge    0x412e54
412e44:	8b 45 88             	mov    -0x78(%ebp),%eax
412e47:	8b 08                	mov    (%eax),%ecx
412e49:	50                   	push   %eax
412e4a:	ff 51 08             	call   *0x8(%ecx)
412e4d:	8b c3                	mov    %ebx,%eax
412e4f:	e9 47 01 00 00       	jmp    0x412f9b
412e54:	8b 45 84             	mov    -0x7c(%ebp),%eax
412e57:	8d 95 60 ff ff ff    	lea    -0xa0(%ebp),%edx
412e5d:	52                   	push   %edx
412e5e:	33 d2                	xor    %edx,%edx
412e60:	52                   	push   %edx
412e61:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
412e67:	8b 45 88             	mov    -0x78(%ebp),%eax
412e6a:	33 c9                	xor    %ecx,%ecx
412e6c:	51                   	push   %ecx
412e6d:	c7 85 64 ff ff ff 01 	movl   $0x1,-0x9c(%ebp)
412e74:	00 00 00
412e77:	89 bd 68 ff ff ff    	mov    %edi,-0x98(%ebp)
412e7d:	89 bd 6c ff ff ff    	mov    %edi,-0x94(%ebp)
412e83:	89 bd 70 ff ff ff    	mov    %edi,-0x90(%ebp)
412e89:	8b 18                	mov    (%eax),%ebx
412e8b:	50                   	push   %eax
412e8c:	ff 53 18             	call   *0x18(%ebx)
412e8f:	3b c7                	cmp    %edi,%eax
412e91:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
412e97:	7d 0e                	jge    0x412ea7
412e99:	8b 45 88             	mov    -0x78(%ebp),%eax
412e9c:	8b 08                	mov    (%eax),%ecx
412e9e:	50                   	push   %eax
412e9f:	ff 51 08             	call   *0x8(%ecx)
412ea2:	e9 ee 00 00 00       	jmp    0x412f95
412ea7:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
412ead:	8b 8d 6c ff ff ff    	mov    -0x94(%ebp),%ecx
412eb3:	89 46 14             	mov    %eax,0x14(%esi)
412eb6:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
412ebc:	89 45 84             	mov    %eax,-0x7c(%ebp)
412ebf:	89 46 10             	mov    %eax,0x10(%esi)
412ec2:	8b 45 88             	mov    -0x78(%ebp),%eax
412ec5:	89 4e 34             	mov    %ecx,0x34(%esi)
412ec8:	8b 08                	mov    (%eax),%ecx
412eca:	50                   	push   %eax
412ecb:	ff 51 08             	call   *0x8(%ecx)
412ece:	39 7e 10             	cmp    %edi,0x10(%esi)
412ed1:	89 7d 8c             	mov    %edi,-0x74(%ebp)
412ed4:	7e 3a                	jle    0x412f10
412ed6:	33 db                	xor    %ebx,%ebx
412ed8:	6a 1c                	push   $0x1c
412eda:	e8 76 d1 02 00       	call   0x440055
412edf:	59                   	pop    %ecx
412ee0:	89 45 84             	mov    %eax,-0x7c(%ebp)
412ee3:	3b c7                	cmp    %edi,%eax
412ee5:	89 7d fc             	mov    %edi,-0x4(%ebp)
412ee8:	74 0b                	je     0x412ef5
412eea:	6a 0a                	push   $0xa
412eec:	8b c8                	mov    %eax,%ecx
412eee:	e8 90 97 02 00       	call   0x43c683
412ef3:	eb 02                	jmp    0x412ef7
412ef5:	33 c0                	xor    %eax,%eax
412ef7:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412efb:	8b 4e 14             	mov    0x14(%esi),%ecx
412efe:	ff 45 8c             	incl   -0x74(%ebp)
412f01:	89 44 0b 24          	mov    %eax,0x24(%ebx,%ecx,1)
412f05:	8b 45 8c             	mov    -0x74(%ebp),%eax
412f08:	83 c3 28             	add    $0x28,%ebx
412f0b:	3b 46 10             	cmp    0x10(%esi),%eax
412f0e:	7c c8                	jl     0x412ed8
412f10:	8b 9d 78 ff ff ff    	mov    -0x88(%ebp),%ebx
412f16:	3b df                	cmp    %edi,%ebx
412f18:	74 7b                	je     0x412f95
412f1a:	39 7d 80             	cmp    %edi,-0x80(%ebp)
412f1d:	7e 6a                	jle    0x412f89
412f1f:	8b 4d 80             	mov    -0x80(%ebp),%ecx
412f22:	6a dc                	push   $0xffffffdc
412f24:	58                   	pop    %eax
412f25:	83 c3 24             	add    $0x24,%ebx
412f28:	2b 85 78 ff ff ff    	sub    -0x88(%ebp),%eax
412f2e:	89 4d 8c             	mov    %ecx,-0x74(%ebp)
412f31:	89 45 84             	mov    %eax,-0x7c(%ebp)
412f34:	eb 03                	jmp    0x412f39
412f36:	8b 45 84             	mov    -0x7c(%ebp),%eax
412f39:	8b 0b                	mov    (%ebx),%ecx
412f3b:	8b 49 04             	mov    0x4(%ecx),%ecx
412f3e:	3b cf                	cmp    %edi,%ecx
412f40:	89 4d 80             	mov    %ecx,-0x80(%ebp)
412f43:	74 28                	je     0x412f6d
412f45:	eb 03                	jmp    0x412f4a
412f47:	8b 45 84             	mov    -0x7c(%ebp),%eax
412f4a:	8d 4d 80             	lea    -0x80(%ebp),%ecx
412f4d:	51                   	push   %ecx
412f4e:	8b 4e 14             	mov    0x14(%esi),%ecx
412f51:	03 c3                	add    %ebx,%eax
412f53:	8b 4c 08 24          	mov    0x24(%eax,%ecx,1),%ecx
412f57:	e8 06 45 ff ff       	call   0x407462
412f5c:	8b 00                	mov    (%eax),%eax
412f5e:	8b 16                	mov    (%esi),%edx
412f60:	6a 01                	push   $0x1
412f62:	50                   	push   %eax
412f63:	8b ce                	mov    %esi,%ecx
412f65:	ff 52 08             	call   *0x8(%edx)
412f68:	39 7d 80             	cmp    %edi,-0x80(%ebp)
412f6b:	75 da                	jne    0x412f47
412f6d:	8b 0b                	mov    (%ebx),%ecx
412f6f:	e8 08 96 02 00       	call   0x43c57c
412f74:	8b 0b                	mov    (%ebx),%ecx
412f76:	3b cf                	cmp    %edi,%ecx
412f78:	74 07                	je     0x412f81
412f7a:	8b 01                	mov    (%ecx),%eax
412f7c:	6a 01                	push   $0x1
412f7e:	ff 50 04             	call   *0x4(%eax)
412f81:	83 c3 28             	add    $0x28,%ebx
412f84:	ff 4d 8c             	decl   -0x74(%ebp)
412f87:	75 ad                	jne    0x412f36
412f89:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
412f8f:	ff 15 f0 0a 4b 00    	call   *0x4b0af0
412f95:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax