458cbf:	ff 90 10 01 00 00    	call   *0x110(%eax)
458cc5:	85 c0                	test   %eax,%eax
458cc7:	74 06                	je     0x458ccf
458cc9:	f6 45 f1 01          	testb  $0x1,-0xf(%ebp)
458ccd:	74 08                	je     0x458cd7
458ccf:	47                   	inc    %edi
458cd0:	3b 7d 10             	cmp    0x10(%ebp),%edi
458cd3:	7c aa                	jl     0x458c7f
458cd5:	eb 2c                	jmp    0x458d03
458cd7:	57                   	push   %edi
458cd8:	8b ce                	mov    %esi,%ecx
458cda:	e8 79 f7 ff ff       	call   0x458458
458cdf:	85 db                	test   %ebx,%ebx
458ce1:	74 1c                	je     0x458cff
458ce3:	83 3b 28             	cmpl   $0x28,(%ebx)
458ce6:	72 17                	jb     0x458cff
458ce8:	8b 4e 1c             	mov    0x1c(%esi),%ecx
458ceb:	83 4b 24 ff          	orl    $0xffffffff,0x24(%ebx)
458cef:	8d 7b 10             	lea    0x10(%ebx),%edi
458cf2:	8d 75 d8             	lea    -0x28(%ebp),%esi
458cf5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
458cf6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
458cf7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
458cf8:	89 4b 08             	mov    %ecx,0x8(%ebx)
458cfb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
458cfc:	89 43 0c             	mov    %eax,0xc(%ebx)
458cff:	85 c0                	test   %eax,%eax
458d01:	75 03                	jne    0x458d06
458d03:	83 c8 ff             	or     $0xffffffff,%eax
458d06:	5f                   	pop    %edi
458d07:	8b 4d fc             	mov    -0x4(%ebp),%ecx
458d0a:	5e                   	pop    %esi
458d0b:	5b                   	pop    %ebx
458d0c:	e8 cd ee fb ff       	call   0x417bde
458d11:	c9                   	leave
458d12:	c2 0c 00             	ret    $0xc
458d15:	55                   	push   %ebp
458d16:	8b ec                	mov    %esp,%ebp
458d18:	83 ec 10             	sub    $0x10,%esp
458d1b:	56                   	push   %esi
458d1c:	8d 45 f0             	lea    -0x10(%ebp),%eax
458d1f:	50                   	push   %eax
458d20:	8b f1                	mov    %ecx,%esi
458d22:	ff 15 3c 08 4b 00    	call   *0x4b083c
458d28:	8b 46 7c             	mov    0x7c(%esi),%eax
458d2b:	25 00 a0 00 00       	and    $0xa000,%eax
458d30:	f7 d8                	neg    %eax
458d32:	1b c0                	sbb    %eax,%eax
458d34:	f7 d8                	neg    %eax
458d36:	50                   	push   %eax
458d37:	8d 45 f0             	lea    -0x10(%ebp),%eax
458d3a:	50                   	push   %eax
458d3b:	8b ce                	mov    %esi,%ecx
458d3d:	e8 b5 10 00 00       	call   0x459df7
458d42:	8b 45 0c             	mov    0xc(%ebp),%eax
458d45:	8b 4d f0             	mov    -0x10(%ebp),%ecx
458d48:	01 08                	add    %ecx,(%eax)
458d4a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
458d4d:	01 48 04             	add    %ecx,0x4(%eax)
458d50:	81 3d 58 85 4a 00 47 	cmpl   $0x40047,0x4a8558
458d57:	00 04 00
458d5a:	8b 48 04             	mov    0x4(%eax),%ecx
458d5d:	5e                   	pop    %esi
458d5e:	7d 06                	jge    0x458d66
458d60:	83 c1 fe             	add    $0xfffffffe,%ecx
458d63:	89 48 04             	mov    %ecx,0x4(%eax)
458d66:	8b 4d f8             	mov    -0x8(%ebp),%ecx
458d69:	01 48 08             	add    %ecx,0x8(%eax)
458d6c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
458d6f:	01 48 0c             	add    %ecx,0xc(%eax)
458d72:	c9                   	leave
458d73:	c2 08 00             	ret    $0x8
458d76:	53                   	push   %ebx
458d77:	56                   	push   %esi
458d78:	8b f1                	mov    %ecx,%esi
458d7a:	8b 5e 7c             	mov    0x7c(%esi),%ebx
458d7d:	57                   	push   %edi
458d7e:	8b 7c 24 10          	mov    0x10(%esp),%edi
458d82:	8b c3                	mov    %ebx,%eax
458d84:	25 ff f0 ff ff       	and    $0xfffff0ff,%eax
458d89:	57                   	push   %edi
458d8a:	89 46 7c             	mov    %eax,0x7c(%esi)
458d8d:	e8 a0 13 00 00       	call   0x45a132
458d92:	f6 c3 04             	test   $0x4,%bl
458d95:	89 5e 7c             	mov    %ebx,0x7c(%esi)
458d98:	74 13                	je     0x458dad
458d9a:	f6 47 18 01          	testb  $0x1,0x18(%edi)
458d9e:	75 0d                	jne    0x458dad
458da0:	6a 01                	push   $0x1
458da2:	6a 00                	push   $0x0
458da4:	ff 76 1c             	push   0x1c(%esi)
458da7:	ff 15 14 06 4b 00    	call   *0x4b0614
458dad:	5f                   	pop    %edi
458dae:	5e                   	pop    %esi
458daf:	5b                   	pop    %ebx
458db0:	c2 04 00             	ret    $0x4
458db3:	55                   	push   %ebp
458db4:	8b ec                	mov    %esp,%ebp
458db6:	51                   	push   %ecx
458db7:	53                   	push   %ebx
458db8:	56                   	push   %esi
458db9:	57                   	push   %edi
458dba:	33 ff                	xor    %edi,%edi
458dbc:	33 db                	xor    %ebx,%ebx
458dbe:	81 3d 58 85 4a 00 47 	cmpl   $0x40047,0x4a8558
458dc5:	00 04 00
458dc8:	8b f1                	mov    %ecx,%esi
458dca:	7c 17                	jl     0x458de3
458dcc:	e8 75 7e fe ff       	call   0x440c46
458dd1:	57                   	push   %edi
458dd2:	68 00 88 00 00       	push   $0x8800
458dd7:	57                   	push   %edi
458dd8:	8b ce                	mov    %esi,%ecx
458dda:	8b d8                	mov    %eax,%ebx
458ddc:	e8 99 7e fe ff       	call   0x440c7a
458de1:	8b f8                	mov    %eax,%edi
458de3:	8b ce                	mov    %esi,%ecx
458de5:	e8 15 be fe ff       	call   0x444bff
458dea:	85 c0                	test   %eax,%eax
458dec:	89 45 fc             	mov    %eax,-0x4(%ebp)
458def:	74 14                	je     0x458e05
458df1:	8b 45 0c             	mov    0xc(%ebp),%eax
458df4:	8b 55 08             	mov    0x8(%ebp),%edx
458df7:	0f bf c8             	movswl %ax,%ecx
458dfa:	c1 e8 10             	shr    $0x10,%eax
458dfd:	0f bf c0             	movswl %ax,%eax
458e00:	89 0a                	mov    %ecx,(%edx)
458e02:	89 42 04             	mov    %eax,0x4(%edx)
458e05:	85 ff                	test   %edi,%edi
458e07:	74 0c                	je     0x458e15
458e09:	53                   	push   %ebx
458e0a:	6a f0                	push   $0xfffffff0
458e0c:	ff 76 1c             	push   0x1c(%esi)
458e0f:	ff 15 08 08 4b 00    	call   *0x4b0808
458e15:	8b 45 fc             	mov    -0x4(%ebp),%eax
458e18:	5f                   	pop    %edi
458e19:	5e                   	pop    %esi
458e1a:	5b                   	pop    %ebx
458e1b:	c9                   	leave
458e1c:	c2 08 00             	ret    $0x8
458e1f:	56                   	push   %esi
458e20:	8b f1                	mov    %ecx,%esi
458e22:	57                   	push   %edi
458e23:	8b 7e 14             	mov    0x14(%esi),%edi
458e26:	ff 76 08             	push   0x8(%esi)
458e29:	8b cf                	mov    %edi,%ecx
458e2b:	c7 46 18 01 00 00 00 	movl   $0x1,0x18(%esi)
458e32:	e8 8e f6 ff ff       	call   0x4584c5
458e37:	25 ff ff fb ff       	and    $0xfffbffff,%eax
458e3c:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
458e41:	75 0a                	jne    0x458e4d
458e43:	25 ff ff fd ff       	and    $0xfffdffff,%eax
458e48:	0d 00 00 04 00       	or     $0x40000,%eax
458e4d:	50                   	push   %eax
458e4e:	ff 76 08             	push   0x8(%esi)
458e51:	8b cf                	mov    %edi,%ecx
458e53:	e8 51 fa ff ff       	call   0x4588a9
458e58:	5f                   	pop    %edi
458e59:	5e                   	pop    %esi
458e5a:	c2 04 00             	ret    $0x4
458e5d:	56                   	push   %esi
458e5e:	8b f1                	mov    %ecx,%esi
458e60:	57                   	push   %edi
458e61:	8b 7e 14             	mov    0x14(%esi),%edi
458e64:	ff 76 08             	push   0x8(%esi)
458e67:	8b cf                	mov    %edi,%ecx
458e69:	e8 57 f6 ff ff       	call   0x4584c5
458e6e:	25 ff ff ee ff       	and    $0xffeeffff,%eax
458e73:	83 7c 24 0c 01       	cmpl   $0x1,0xc(%esp)
458e78:	75 07                	jne    0x458e81
458e7a:	0d 00 00 01 00       	or     $0x10000,%eax
458e7f:	eb 0c                	jmp    0x458e8d
458e81:	83 7c 24 0c 02       	cmpl   $0x2,0xc(%esp)
458e86:	75 05                	jne    0x458e8d
458e88:	0d 00 00 10 00       	or     $0x100000,%eax
458e8d:	83 c8 02             	or     $0x2,%eax
458e90:	50                   	push   %eax
458e91:	ff 76 08             	push   0x8(%esi)
458e94:	8b cf                	mov    %edi,%ecx
458e96:	e8 0e fa ff ff       	call   0x4588a9
458e9b:	5f                   	pop    %edi
458e9c:	5e                   	pop    %esi
458e9d:	c2 04 00             	ret    $0x4
458ea0:	55                   	push   %ebp
458ea1:	8b ec                	mov    %esp,%ebp
458ea3:	83 ec 40             	sub    $0x40,%esp
458ea6:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
458eab:	56                   	push   %esi
458eac:	8b f1                	mov    %ecx,%esi
458eae:	57                   	push   %edi
458eaf:	8d 4d c0             	lea    -0x40(%ebp),%ecx
458eb2:	89 45 fc             	mov    %eax,-0x4(%ebp)
458eb5:	e8 1b 95 fe ff       	call   0x4423d5
458eba:	8b 06                	mov    (%esi),%eax
458ebc:	33 ff                	xor    %edi,%edi
458ebe:	57                   	push   %edi
458ebf:	57                   	push   %edi
458ec0:	68 18 04 00 00       	push   $0x418
458ec5:	8b ce                	mov    %esi,%ecx
458ec7:	c7 45 c0 c0 ec 48 00 	movl   $0x48ecc0,-0x40(%ebp)
458ece:	89 75 d4             	mov    %esi,-0x2c(%ebp)
458ed1:	ff 90 10 01 00 00    	call   *0x110(%eax)
458ed7:	3b c7                	cmp    %edi,%eax
458ed9:	89 45 e0             	mov    %eax,-0x20(%ebp)
458edc:	89 7d c8             	mov    %edi,-0x38(%ebp)
458edf:	76 5e                	jbe    0x458f3f
458ee1:	8d 45 e8             	lea    -0x18(%ebp),%eax
458ee4:	50                   	push   %eax
458ee5:	ff 75 c8             	push   -0x38(%ebp)
458ee8:	8b ce                	mov    %esi,%ecx
458eea:	e8 34 f5 ff ff       	call   0x458423
458eef:	f6 45 f1 01          	testb  $0x1,-0xf(%ebp)
458ef3:	8b 45 ec             	mov    -0x14(%ebp),%eax
458ef6:	89 45 c4             	mov    %eax,-0x3c(%ebp)
458ef9:	75 39                	jne    0x458f34
458efb:	57                   	push   %edi
458efc:	8d 45 c0             	lea    -0x40(%ebp),%eax
458eff:	50                   	push   %eax
458f00:	68 ff 00 11 bd       	push   $0xbd1100ff
458f05:	57                   	push   %edi
458f06:	8b ce                	mov    %esi,%ecx
458f08:	e8 34 93 fe ff       	call   0x442241
458f0d:	85 c0                	test   %eax,%eax
458f0f:	75 23                	jne    0x458f34
458f11:	57                   	push   %edi
458f12:	8d 45 c0             	lea    -0x40(%ebp),%eax
458f15:	50                   	push   %eax
458f16:	6a ff                	push   $0xffffffff
458f18:	ff 75 c4             	push   -0x3c(%ebp)
458f1b:	8b ce                	mov    %esi,%ecx
458f1d:	e8 1f 93 fe ff       	call   0x442241
458f22:	85 c0                	test   %eax,%eax
458f24:	75 0e                	jne    0x458f34
458f26:	ff 75 0c             	push   0xc(%ebp)
458f29:	8d 4d c0             	lea    -0x40(%ebp),%ecx
458f2c:	ff 75 08             	push   0x8(%ebp)
458f2f:	e8 c7 94 fe ff       	call   0x4423fb
458f34:	ff 45 c8             	incl   -0x38(%ebp)
458f37:	8b 45 c8             	mov    -0x38(%ebp),%eax
458f3a:	3b 45 e0             	cmp    -0x20(%ebp),%eax
458f3d:	72 a2                	jb     0x458ee1
458f3f:	ff 75 0c             	push   0xc(%ebp)
458f42:	8b ce                	mov    %esi,%ecx
458f44:	ff 75 08             	push   0x8(%ebp)
458f47:	e8 5d cb fe ff       	call   0x445aa9
458f4c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
458f4f:	5f                   	pop    %edi
458f50:	5e                   	pop    %esi
458f51:	e8 88 ec fb ff       	call   0x417bde
458f56:	c9                   	leave
458f57:	c2 08 00             	ret    $0x8
458f5a:	55                   	push   %ebp
458f5b:	8b ec                	mov    %esp,%ebp
458f5d:	83 ec 44             	sub    $0x44,%esp
458f60:	53                   	push   %ebx
458f61:	56                   	push   %esi
458f62:	57                   	push   %edi
458f63:	33 ff                	xor    %edi,%edi
458f65:	57                   	push   %edi
458f66:	8b d9                	mov    %ecx,%ebx
458f68:	8b 03                	mov    (%ebx),%eax
458f6a:	57                   	push   %edi
458f6b:	68 18 04 00 00       	push   $0x418
458f70:	89 7d f4             	mov    %edi,-0xc(%ebp)
458f73:	89 7d cc             	mov    %edi,-0x34(%ebp)
458f76:	89 7d d0             	mov    %edi,-0x30(%ebp)
458f79:	ff 90 10 01 00 00    	call   *0x110(%eax)
458f7f:	8b f0                	mov    %eax,%esi
458f81:	33 c0                	xor    %eax,%eax
458f83:	3b f0                	cmp    %eax,%esi
458f85:	89 75 e4             	mov    %esi,-0x1c(%ebp)
458f88:	0f 84 99 02 00 00    	je     0x459227
458f8e:	8d 04 b6             	lea    (%esi,%esi,4),%eax
458f91:	c1 e0 02             	shl    $0x2,%eax
458f94:	50                   	push   %eax
458f95:	e8 bb 70 fe ff       	call   0x440055
458f9a:	85 f6                	test   %esi,%esi
458f9c:	59                   	pop    %ecx
458f9d:	89 45 f4             	mov    %eax,-0xc(%ebp)
458fa0:	0f 8e 81 02 00 00    	jle    0x459227
458fa6:	89 45 f8             	mov    %eax,-0x8(%ebp)
458fa9:	ff 75 f8             	push   -0x8(%ebp)
458fac:	8b cb                	mov    %ebx,%ecx
458fae:	57                   	push   %edi
458faf:	e8 6f f4 ff ff       	call   0x458423
458fb4:	83 45 f8 14          	addl   $0x14,-0x8(%ebp)
458fb8:	47                   	inc    %edi
458fb9:	3b fe                	cmp    %esi,%edi
458fbb:	7c ec                	jl     0x458fa9
458fbd:	8b 7d f4             	mov    -0xc(%ebp),%edi
458fc0:	33 c0                	xor    %eax,%eax
458fc2:	3b f0                	cmp    %eax,%esi
458fc4:	0f 8e 5d 02 00 00    	jle    0x459227
458fca:	8b 4b 7c             	mov    0x7c(%ebx),%ecx
458fcd:	f6 c1 02             	test   $0x2,%cl
458fd0:	0f 85 8f 00 00 00    	jne    0x459065
458fd6:	8b d1                	mov    %ecx,%edx
458fd8:	83 e2 04             	and    $0x4,%edx
458fdb:	89 55 e0             	mov    %edx,-0x20(%ebp)
458fde:	74 6c                	je     0x45904c
458fe0:	f6 45 0c 04          	testb  $0x4,0xc(%ebp)
458fe4:	75 60                	jne    0x459046
458fe6:	f6 45 0c 08          	testb  $0x8,0xc(%ebp)
458fea:	74 08                	je     0x458ff4
458fec:	50                   	push   %eax
458fed:	68 ff 7f 00 00       	push   $0x7fff
458ff2:	eb 68                	jmp    0x45905c
458ff4:	f6 45 0c 10          	testb  $0x10,0xc(%ebp)
458ff8:	74 03                	je     0x458ffd
458ffa:	50                   	push   %eax
458ffb:	eb 5e                	jmp    0x45905b
458ffd:	83 7d 10 ff          	cmpl   $0xffffffff,0x10(%ebp)
459001:	74 3e                	je     0x459041
459003:	8d 45 d4             	lea    -0x2c(%ebp),%eax
459006:	50                   	push   %eax
459007:	ff 15 3c 08 4b 00    	call   *0x4b083c
45900d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
459010:	8b 03                	mov    (%ebx),%eax
459012:	83 e1 02             	and    $0x2,%ecx
459015:	51                   	push   %ecx
459016:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
459019:	51                   	push   %ecx
45901a:	8b cb                	mov    %ebx,%ecx
45901c:	ff 90 3c 01 00 00    	call   *0x13c(%eax)
459022:	8b 45 0c             	mov    0xc(%ebp),%eax
459025:	83 e0 20             	and    $0x20,%eax
459028:	74 08                	je     0x459032
45902a:	8b 4d e0             	mov    -0x20(%ebp),%ecx
45902d:	2b 4d d8             	sub    -0x28(%ebp),%ecx
459030:	eb 06                	jmp    0x459038
459032:	8b 4d dc             	mov    -0x24(%ebp),%ecx
459035:	2b 4d d4             	sub    -0x2c(%ebp),%ecx
459038:	50                   	push   %eax
459039:	8b 45 10             	mov    0x10(%ebp),%eax
45903c:	03 c8                	add    %eax,%ecx
45903e:	51                   	push   %ecx
45903f:	eb 1b                	jmp    0x45905c
459041:	f6 c1 01             	test   $0x1,%cl
459044:	74 06                	je     0x45904c
459046:	50                   	push   %eax
459047:	ff 73 6c             	push   0x6c(%ebx)
45904a:	eb 10                	jmp    0x45905c
45904c:	50                   	push   %eax
45904d:	8b 45 0c             	mov    0xc(%ebp),%eax
459050:	24 02                	and    $0x2,%al
459052:	f6 d8                	neg    %al
459054:	1b c0                	sbb    %eax,%eax
459056:	25 ff 7f 00 00       	and    $0x7fff,%eax
45905b:	50                   	push   %eax
45905c:	56                   	push   %esi