454cb3:	56                   	push   %esi
454cb4:	8b 75 08             	mov    0x8(%ebp),%esi
454cb7:	57                   	push   %edi
454cb8:	83 7e 08 01          	cmpl   $0x1,0x8(%esi)
454cbc:	8b f9                	mov    %ecx,%edi
454cbe:	76 0f                	jbe    0x454ccf
454cc0:	8b 46 04             	mov    0x4(%esi),%eax
454cc3:	8b 48 04             	mov    0x4(%eax),%ecx
454cc6:	e8 bb 85 fb ff       	call   0x40d286
454ccb:	8b d8                	mov    %eax,%ebx
454ccd:	eb 02                	jmp    0x454cd1
454ccf:	33 db                	xor    %ebx,%ebx
454cd1:	8b 46 04             	mov    0x4(%esi),%eax
454cd4:	8b 30                	mov    (%eax),%esi
454cd6:	8b ce                	mov    %esi,%ecx
454cd8:	e8 8f 46 fb ff       	call   0x40936c
454cdd:	8b 46 08             	mov    0x8(%esi),%eax
454ce0:	83 ec 78             	sub    $0x78,%esp
454ce3:	8b 30                	mov    (%eax),%esi
454ce5:	8d 47 10             	lea    0x10(%edi),%eax
454ce8:	8b cc                	mov    %esp,%ecx
454cea:	50                   	push   %eax
454ceb:	e8 61 f3 ff ff       	call   0x454051
454cf0:	6a 00                	push   $0x0
454cf2:	53                   	push   %ebx
454cf3:	bb 00 dc 49 00       	mov    $0x49dc00,%ebx
454cf8:	53                   	push   %ebx
454cf9:	56                   	push   %esi
454cfa:	8d 8c 24 a8 00 00 00 	lea    0xa8(%esp),%ecx
454d01:	e8 6a f2 ff ff       	call   0x453f70
454d06:	6a 01                	push   $0x1
454d08:	8d 4c 24 24          	lea    0x24(%esp),%ecx
454d0c:	e8 7b 05 00 00       	call   0x45528c
454d11:	83 7c 24 38 00       	cmpl   $0x0,0x38(%esp)
454d16:	74 2f                	je     0x454d47
454d18:	8b 07                	mov    (%edi),%eax
454d1a:	6a 00                	push   $0x0
454d1c:	8b 48 04             	mov    0x4(%eax),%ecx
454d1f:	ff 74 24 3c          	push   0x3c(%esp)
454d23:	03 cf                	add    %edi,%ecx
454d25:	e8 22 82 ff ff       	call   0x44cf4c
454d2a:	8b 07                	mov    (%edi),%eax
454d2c:	6a 00                	push   $0x0
454d2e:	8b 48 04             	mov    0x4(%eax),%ecx
454d31:	ff 74 24 40          	push   0x40(%esp)
454d35:	03 cf                	add    %edi,%ecx
454d37:	e8 e5 e5 fa ff       	call   0x403321
454d3c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
454d3f:	53                   	push   %ebx
454d40:	e8 74 80 fb ff       	call   0x40cdb9
454d45:	eb 44                	jmp    0x454d8b
454d47:	ff 75 0c             	push   0xc(%ebp)
454d4a:	8d 4c 24 68          	lea    0x68(%esp),%ecx
454d4e:	e8 36 f5 ff ff       	call   0x454289
454d53:	8b 44 24 28          	mov    0x28(%esp),%eax
454d57:	83 64 24 18 00       	andl   $0x0,0x18(%esp)
454d5c:	89 44 24 10          	mov    %eax,0x10(%esp)
454d60:	8b 44 24 2c          	mov    0x2c(%esp),%eax
454d64:	89 44 24 14          	mov    %eax,0x14(%esp)
454d68:	51                   	push   %ecx
454d69:	8d 44 24 14          	lea    0x14(%esp),%eax
454d6d:	50                   	push   %eax
454d6e:	8b 07                	mov    (%edi),%eax
454d70:	c7 44 24 24 02 00 00 	movl   $0x2,0x24(%esp)
454d77:	00
454d78:	8b 48 04             	mov    0x4(%eax),%ecx
454d7b:	03 cf                	add    %edi,%ecx
454d7d:	e8 01 03 00 00       	call   0x455083
454d82:	8d 4c 24 10          	lea    0x10(%esp),%ecx
454d86:	e8 95 de fb ff       	call   0x412c20
454d8b:	8d 4c 24 20          	lea    0x20(%esp),%ecx
454d8f:	e8 e4 f3 ff ff       	call   0x454178
454d94:	5f                   	pop    %edi
454d95:	5e                   	pop    %esi
454d96:	33 c0                	xor    %eax,%eax
454d98:	5b                   	pop    %ebx
454d99:	8b e5                	mov    %ebp,%esp
454d9b:	5d                   	pop    %ebp
454d9c:	c2 08 00             	ret    $0x8
454d9f:	55                   	push   %ebp
454da0:	8b ec                	mov    %esp,%ebp
454da2:	51                   	push   %ecx
454da3:	51                   	push   %ecx
454da4:	53                   	push   %ebx
454da5:	33 db                	xor    %ebx,%ebx
454da7:	56                   	push   %esi
454da8:	43                   	inc    %ebx
454da9:	57                   	push   %edi
454daa:	8b f9                	mov    %ecx,%edi
454dac:	39 5d 08             	cmp    %ebx,0x8(%ebp)
454daf:	75 09                	jne    0x454dba
454db1:	0f b7 87 8c 00 00 00 	movzwl 0x8c(%edi),%eax
454db8:	eb 04                	jmp    0x454dbe
454dba:	0f b7 47 58          	movzwl 0x58(%edi),%eax
454dbe:	0f bf c8             	movswl %ax,%ecx
454dc1:	8d 97 b0 00 00 00    	lea    0xb0(%edi),%edx
454dc7:	39 5d 08             	cmp    %ebx,0x8(%ebp)
454dca:	74 03                	je     0x454dcf
454dcc:	8d 57 7c             	lea    0x7c(%edi),%edx
454dcf:	8b 87 c0 00 00 00    	mov    0xc0(%edi),%eax
454dd5:	33 f6                	xor    %esi,%esi
454dd7:	56                   	push   %esi
454dd8:	3b cb                	cmp    %ebx,%ecx
454dda:	75 05                	jne    0x454de1
454ddc:	56                   	push   %esi
454ddd:	56                   	push   %esi
454dde:	53                   	push   %ebx
454ddf:	eb 13                	jmp    0x454df4
454de1:	83 f9 02             	cmp    $0x2,%ecx
454de4:	75 0b                	jne    0x454df1
454de6:	68 24 3d 4b 00       	push   $0x4b3d24
454deb:	ff 32                	push   (%edx)
454ded:	6a 03                	push   $0x3
454def:	eb 03                	jmp    0x454df4
454df1:	56                   	push   %esi
454df2:	56                   	push   %esi
454df3:	56                   	push   %esi
454df4:	50                   	push   %eax
454df5:	ff 15 6c d7 48 00    	call   *0x48d76c
454dfb:	89 47 04             	mov    %eax,0x4(%edi)
454dfe:	3b c6                	cmp    %esi,%eax
454e00:	75 04                	jne    0x454e06
454e02:	32 c0                	xor    %al,%al
454e04:	eb 20                	jmp    0x454e26
454e06:	80 bf dc 00 00 00 00 	cmpb   $0x0,0xdc(%edi)
454e0d:	74 15                	je     0x454e24
454e0f:	6a 08                	push   $0x8
454e11:	8d 4d f8             	lea    -0x8(%ebp),%ecx
454e14:	51                   	push   %ecx
454e15:	6a 32                	push   $0x32
454e17:	56                   	push   %esi
454e18:	89 5d f8             	mov    %ebx,-0x8(%ebp)
454e1b:	89 75 fc             	mov    %esi,-0x4(%ebp)
454e1e:	ff 15 70 d7 48 00    	call   *0x48d770
454e24:	8a c3                	mov    %bl,%al
454e26:	5f                   	pop    %edi
454e27:	5e                   	pop    %esi
454e28:	5b                   	pop    %ebx
454e29:	c9                   	leave
454e2a:	c2 04 00             	ret    $0x4
454e2d:	53                   	push   %ebx
454e2e:	56                   	push   %esi
454e2f:	8b f1                	mov    %ecx,%esi
454e31:	33 db                	xor    %ebx,%ebx
454e33:	53                   	push   %ebx
454e34:	8d 8e d4 00 00 00    	lea    0xd4(%esi),%ecx
454e3a:	e8 2a 05 00 00       	call   0x455369
454e3f:	84 c0                	test   %al,%al
454e41:	74 06                	je     0x454e49
454e43:	39 5e 18             	cmp    %ebx,0x18(%esi)
454e46:	75 01                	jne    0x454e49
454e48:	43                   	inc    %ebx
454e49:	5e                   	pop    %esi
454e4a:	8a c3                	mov    %bl,%al
454e4c:	5b                   	pop    %ebx
454e4d:	c3                   	ret
454e4e:	55                   	push   %ebp
454e4f:	8b ec                	mov    %esp,%ebp
454e51:	8b 45 08             	mov    0x8(%ebp),%eax
454e54:	53                   	push   %ebx
454e55:	0f bf 00             	movswl (%eax),%eax
454e58:	33 db                	xor    %ebx,%ebx
454e5a:	48                   	dec    %eax
454e5b:	74 51                	je     0x454eae
454e5d:	48                   	dec    %eax
454e5e:	74 4c                	je     0x454eac
454e60:	8d 45 08             	lea    0x8(%ebp),%eax
454e63:	50                   	push   %eax
454e64:	53                   	push   %ebx
454e65:	6a 26                	push   $0x26
454e67:	53                   	push   %ebx
454e68:	89 5d 08             	mov    %ebx,0x8(%ebp)
454e6b:	ff 15 7c d7 48 00    	call   *0x48d77c
454e71:	39 5d 08             	cmp    %ebx,0x8(%ebp)
454e74:	74 38                	je     0x454eae
454e76:	56                   	push   %esi
454e77:	ff 75 08             	push   0x8(%ebp)
454e7a:	e8 6b a6 fc ff       	call   0x41f4ea
454e7f:	ff 75 08             	push   0x8(%ebp)
454e82:	8b f0                	mov    %eax,%esi
454e84:	53                   	push   %ebx
454e85:	56                   	push   %esi
454e86:	e8 c5 be fc ff       	call   0x420d50
454e8b:	83 c4 10             	add    $0x10,%esp
454e8e:	8d 45 08             	lea    0x8(%ebp),%eax
454e91:	50                   	push   %eax
454e92:	56                   	push   %esi
454e93:	6a 26                	push   $0x26
454e95:	53                   	push   %ebx
454e96:	ff 15 7c d7 48 00    	call   *0x48d77c
454e9c:	39 5e 04             	cmp    %ebx,0x4(%esi)
454e9f:	56                   	push   %esi
454ea0:	0f 95 c3             	setne  %bl
454ea3:	e8 b6 a6 fc ff       	call   0x41f55e
454ea8:	59                   	pop    %ecx
454ea9:	5e                   	pop    %esi
454eaa:	eb 02                	jmp    0x454eae
454eac:	b3 01                	mov    $0x1,%bl
454eae:	8a c3                	mov    %bl,%al
454eb0:	5b                   	pop    %ebx
454eb1:	5d                   	pop    %ebp
454eb2:	c2 04 00             	ret    $0x4
454eb5:	55                   	push   %ebp
454eb6:	8b ec                	mov    %esp,%ebp
454eb8:	80 79 30 00          	cmpb   $0x0,0x30(%ecx)
454ebc:	74 06                	je     0x454ec4
454ebe:	5d                   	pop    %ebp
454ebf:	e9 bf 00 00 00       	jmp    0x454f83
454ec4:	5d                   	pop    %ebp
454ec5:	e9 00 00 00 00       	jmp    0x454eca
454eca:	55                   	push   %ebp
454ecb:	8b ec                	mov    %esp,%ebp
454ecd:	81 ec 04 04 00 00    	sub    $0x404,%esp
454ed3:	53                   	push   %ebx
454ed4:	56                   	push   %esi
454ed5:	57                   	push   %edi
454ed6:	8b f1                	mov    %ecx,%esi
454ed8:	68 18 39 4b 00       	push   $0x4b3918
454edd:	ff 76 34             	push   0x34(%esi)
454ee0:	e8 b4 e5 fc ff       	call   0x423499
454ee5:	8b f8                	mov    %eax,%edi
454ee7:	59                   	pop    %ecx
454ee8:	59                   	pop    %ecx
454ee9:	85 ff                	test   %edi,%edi
454eeb:	75 0a                	jne    0x454ef7
454eed:	50                   	push   %eax
454eee:	68 ef be ad de       	push   $0xdeadbeef
454ef3:	6a 1f                	push   $0x1f
454ef5:	eb 6f                	jmp    0x454f66
454ef7:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
454efe:	33 db                	xor    %ebx,%ebx
454f00:	8d 45 fc             	lea    -0x4(%ebp),%eax
454f03:	50                   	push   %eax
454f04:	68 00 04 00 00       	push   $0x400
454f09:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
454f0f:	50                   	push   %eax
454f10:	ff 75 08             	push   0x8(%ebp)
454f13:	ff 15 64 d7 48 00    	call   *0x48d764
454f19:	85 c0                	test   %eax,%eax
454f1b:	74 41                	je     0x454f5e
454f1d:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
454f20:	74 22                	je     0x454f44
454f22:	57                   	push   %edi
454f23:	6a 01                	push   $0x1
454f25:	ff 75 fc             	push   -0x4(%ebp)
454f28:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
454f2e:	50                   	push   %eax
454f2f:	e8 7a db fc ff       	call   0x422aae
454f34:	8b 45 fc             	mov    -0x4(%ebp),%eax
454f37:	83 c4 10             	add    $0x10,%esp
454f3a:	01 46 08             	add    %eax,0x8(%esi)
454f3d:	11 5e 0c             	adc    %ebx,0xc(%esi)
454f40:	85 c0                	test   %eax,%eax
454f42:	75 bc                	jne    0x454f00
454f44:	8b 46 08             	mov    0x8(%esi),%eax
454f47:	0b 46 0c             	or     0xc(%esi),%eax
454f4a:	8b ce                	mov    %esi,%ecx
454f4c:	75 0a                	jne    0x454f58
454f4e:	53                   	push   %ebx
454f4f:	68 ef be ad de       	push   $0xdeadbeef
454f54:	6a 21                	push   $0x21
454f56:	eb 10                	jmp    0x454f68
454f58:	6a 01                	push   $0x1
454f5a:	53                   	push   %ebx
454f5b:	53                   	push   %ebx
454f5c:	eb 0a                	jmp    0x454f68
454f5e:	53                   	push   %ebx
454f5f:	68 ef be ad de       	push   $0xdeadbeef
454f64:	6a 20                	push   $0x20
454f66:	8b ce                	mov    %esi,%ecx
454f68:	e8 e5 00 00 00       	call   0x455052
454f6d:	8a d8                	mov    %al,%bl
454f6f:	85 ff                	test   %edi,%edi
454f71:	74 07                	je     0x454f7a
454f73:	57                   	push   %edi
454f74:	e8 6b e6 fc ff       	call   0x4235e4
454f79:	59                   	pop    %ecx
454f7a:	5f                   	pop    %edi
454f7b:	5e                   	pop    %esi
454f7c:	8a c3                	mov    %bl,%al
454f7e:	5b                   	pop    %ebx
454f7f:	c9                   	leave
454f80:	c2 04 00             	ret    $0x4
454f83:	55                   	push   %ebp
454f84:	8b ec                	mov    %esp,%ebp
454f86:	51                   	push   %ecx
454f87:	51                   	push   %ecx
454f88:	53                   	push   %ebx
454f89:	56                   	push   %esi
454f8a:	57                   	push   %edi
454f8b:	33 db                	xor    %ebx,%ebx
454f8d:	53                   	push   %ebx
454f8e:	53                   	push   %ebx
454f8f:	8d 45 f8             	lea    -0x8(%ebp),%eax
454f92:	50                   	push   %eax
454f93:	ff 75 08             	push   0x8(%ebp)
454f96:	8b f1                	mov    %ecx,%esi
454f98:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
454f9f:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
454fa6:	ff 15 98 d7 48 00    	call   *0x48d798
454fac:	8b 4d f8             	mov    -0x8(%ebp),%ecx
454faf:	85 c9                	test   %ecx,%ecx
454fb1:	75 08                	jne    0x454fbb
454fb3:	b9 00 04 00 00       	mov    $0x400,%ecx
454fb8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
454fbb:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
454fbe:	74 46                	je     0x455006
454fc0:	e8 b5 f2 ff ff       	call   0x45427a
454fc5:	8b f8                	mov    %eax,%edi
454fc7:	8d 45 fc             	lea    -0x4(%ebp),%eax
454fca:	50                   	push   %eax
454fcb:	ff 75 f8             	push   -0x8(%ebp)
454fce:	57                   	push   %edi
454fcf:	ff 75 08             	push   0x8(%ebp)
454fd2:	ff 15 64 d7 48 00    	call   *0x48d764
454fd8:	85 c0                	test   %eax,%eax
454fda:	74 3c                	je     0x455018
454fdc:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
454fdf:	74 1e                	je     0x454fff
454fe1:	ff 75 fc             	push   -0x4(%ebp)
454fe4:	8d 4e 44             	lea    0x44(%esi),%ecx
454fe7:	57                   	push   %edi
454fe8:	e8 16 03 00 00       	call   0x455303
454fed:	8b 45 fc             	mov    -0x4(%ebp),%eax
454ff0:	01 46 08             	add    %eax,0x8(%esi)
454ff3:	11 5e 0c             	adc    %ebx,0xc(%esi)
454ff6:	85 c0                	test   %eax,%eax
454ff8:	74 0c                	je     0x455006
454ffa:	8b 4d f8             	mov    -0x8(%ebp),%ecx
454ffd:	eb c1                	jmp    0x454fc0
454fff:	57                   	push   %edi
455000:	e8 59 a5 fc ff       	call   0x41f55e
455005:	59                   	pop    %ecx
455006:	8b 46 08             	mov    0x8(%esi),%eax
455009:	0b 46 0c             	or     0xc(%esi),%eax
45500c:	75 1b                	jne    0x455029
45500e:	53                   	push   %ebx
45500f:	68 ef be ad de       	push   $0xdeadbeef
455014:	6a 21                	push   $0x21
455016:	eb 15                	jmp    0x45502d
455018:	57                   	push   %edi
455019:	e8 40 a5 fc ff       	call   0x41f55e
45501e:	59                   	pop    %ecx
45501f:	53                   	push   %ebx
455020:	68 ef be ad de       	push   $0xdeadbeef
455025:	6a 20                	push   $0x20
455027:	eb 04                	jmp    0x45502d
455029:	6a 01                	push   $0x1
45502b:	53                   	push   %ebx
45502c:	53                   	push   %ebx