459db8:	dd 45 f8             	fldl   -0x8(%ebp)
459dbb:	5e                   	pop    %esi
459dbc:	5b                   	pop    %ebx
459dbd:	c9                   	leave
459dbe:	c2 10 00             	ret    $0x10
459dc1:	55                   	push   %ebp
459dc2:	8b ec                	mov    %esp,%ebp
459dc4:	83 ec 48             	sub    $0x48,%esp
459dc7:	53                   	push   %ebx
459dc8:	56                   	push   %esi
459dc9:	8b 75 0c             	mov    0xc(%ebp),%esi
459dcc:	57                   	push   %edi
459dcd:	8b 46 08             	mov    0x8(%esi),%eax
459dd0:	8b 16                	mov    (%esi),%edx
459dd2:	8b 7e 04             	mov    0x4(%esi),%edi
459dd5:	3b c2                	cmp    %edx,%eax
459dd7:	89 4d f0             	mov    %ecx,-0x10(%ebp)
459dda:	8b 4e 0c             	mov    0xc(%esi),%ecx
459ddd:	0f 9c c3             	setl   %bl
459de0:	3b cf                	cmp    %edi,%ecx
459de2:	0f 9c c7             	setl   %bh
459de5:	88 5d ff             	mov    %bl,-0x1(%ebp)
459de8:	88 7d 0f             	mov    %bh,0xf(%ebp)
459deb:	84 db                	test   %bl,%bl
459ded:	74 05                	je     0x459df4
459def:	89 06                	mov    %eax,(%esi)
459df1:	89 56 08             	mov    %edx,0x8(%esi)
459df4:	84 ff                	test   %bh,%bh
459df6:	74 06                	je     0x459dfe
459df8:	89 4e 04             	mov    %ecx,0x4(%esi)
459dfb:	89 7e 0c             	mov    %edi,0xc(%esi)
459dfe:	ff 75 08             	push   0x8(%ebp)
459e01:	8d 45 e4             	lea    -0x1c(%ebp),%eax
459e04:	50                   	push   %eax
459e05:	8b 45 f0             	mov    -0x10(%ebp),%eax
459e08:	ff b0 08 01 00 00    	push   0x108(%eax)
459e0e:	e8 31 c7 ff ff       	call   0x456544
459e13:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
459e16:	8b 45 e8             	mov    -0x18(%ebp),%eax
459e19:	01 4e 08             	add    %ecx,0x8(%esi)
459e1c:	01 46 0c             	add    %eax,0xc(%esi)
459e1f:	01 0e                	add    %ecx,(%esi)
459e21:	01 46 04             	add    %eax,0x4(%esi)
459e24:	8b 7e 08             	mov    0x8(%esi),%edi
459e27:	8b 5e 0c             	mov    0xc(%esi),%ebx
459e2a:	2b 3e                	sub    (%esi),%edi
459e2c:	2b 5e 04             	sub    0x4(%esi),%ebx
459e2f:	47                   	inc    %edi
459e30:	43                   	inc    %ebx
459e31:	6a 00                	push   $0x0
459e33:	89 5d f4             	mov    %ebx,-0xc(%ebp)
459e36:	ff 15 10 d6 48 00    	call   *0x48d610
459e3c:	53                   	push   %ebx
459e3d:	57                   	push   %edi
459e3e:	50                   	push   %eax
459e3f:	89 45 f8             	mov    %eax,-0x8(%ebp)
459e42:	ff 15 ec d0 48 00    	call   *0x48d0ec
459e48:	ff 75 f8             	push   -0x8(%ebp)
459e4b:	89 45 08             	mov    %eax,0x8(%ebp)
459e4e:	ff 15 f0 d0 48 00    	call   *0x48d0f0
459e54:	ff 75 08             	push   0x8(%ebp)
459e57:	89 45 f0             	mov    %eax,-0x10(%ebp)
459e5a:	50                   	push   %eax
459e5b:	ff 15 04 d1 48 00    	call   *0x48d104
459e61:	8a 75 0f             	mov    0xf(%ebp),%dh
459e64:	89 45 ec             	mov    %eax,-0x14(%ebp)
459e67:	8b cb                	mov    %ebx,%ecx
459e69:	84 f6                	test   %dh,%dh
459e6b:	74 02                	je     0x459e6f
459e6d:	f7 d9                	neg    %ecx
459e6f:	8a 55 ff             	mov    -0x1(%ebp),%dl
459e72:	8b c7                	mov    %edi,%eax
459e74:	84 d2                	test   %dl,%dl
459e76:	74 02                	je     0x459e7a
459e78:	f7 d8                	neg    %eax
459e7a:	84 f6                	test   %dh,%dh
459e7c:	74 05                	je     0x459e83
459e7e:	8b 5e 0c             	mov    0xc(%esi),%ebx
459e81:	eb 03                	jmp    0x459e86
459e83:	8b 5e 04             	mov    0x4(%esi),%ebx
459e86:	89 5d 0c             	mov    %ebx,0xc(%ebp)
459e89:	8b 5d f4             	mov    -0xc(%ebp),%ebx
459e8c:	84 d2                	test   %dl,%dl
459e8e:	74 05                	je     0x459e95
459e90:	8b 56 08             	mov    0x8(%esi),%edx
459e93:	eb 02                	jmp    0x459e97
459e95:	8b 16                	mov    (%esi),%edx
459e97:	8b 75 f0             	mov    -0x10(%ebp),%esi
459e9a:	68 20 00 cc 00       	push   $0xcc0020
459e9f:	51                   	push   %ecx
459ea0:	50                   	push   %eax
459ea1:	ff 75 0c             	push   0xc(%ebp)
459ea4:	52                   	push   %edx
459ea5:	ff 75 f8             	push   -0x8(%ebp)
459ea8:	53                   	push   %ebx
459ea9:	57                   	push   %edi
459eaa:	6a 00                	push   $0x0
459eac:	6a 00                	push   $0x0
459eae:	56                   	push   %esi
459eaf:	ff 15 08 d1 48 00    	call   *0x48d108
459eb5:	8b c3                	mov    %ebx,%eax
459eb7:	f7 d8                	neg    %eax
459eb9:	89 45 c0             	mov    %eax,-0x40(%ebp)
459ebc:	6a 20                	push   $0x20
459ebe:	33 c0                	xor    %eax,%eax
459ec0:	40                   	inc    %eax
459ec1:	33 c9                	xor    %ecx,%ecx
459ec3:	66 89 45 c4          	mov    %ax,-0x3c(%ebp)
459ec7:	58                   	pop    %eax
459ec8:	51                   	push   %ecx
459ec9:	66 89 45 c6          	mov    %ax,-0x3a(%ebp)
459ecd:	8d 45 b8             	lea    -0x48(%ebp),%eax
459ed0:	50                   	push   %eax
459ed1:	51                   	push   %ecx
459ed2:	51                   	push   %ecx
459ed3:	51                   	push   %ecx
459ed4:	ff 75 08             	push   0x8(%ebp)
459ed7:	c7 45 b8 28 00 00 00 	movl   $0x28,-0x48(%ebp)
459ede:	56                   	push   %esi
459edf:	8b 35 0c d1 48 00    	mov    0x48d10c,%esi
459ee5:	89 7d bc             	mov    %edi,-0x44(%ebp)
459ee8:	89 4d c8             	mov    %ecx,-0x38(%ebp)
459eeb:	ff d6                	call   *%esi
459eed:	8b 4d cc             	mov    -0x34(%ebp),%ecx
459ef0:	8b 45 10             	mov    0x10(%ebp),%eax
459ef3:	51                   	push   %ecx
459ef4:	89 08                	mov    %ecx,(%eax)
459ef6:	e8 ef 55 fc ff       	call   0x41f4ea
459efb:	59                   	pop    %ecx
459efc:	6a 00                	push   $0x0
459efe:	8b f8                	mov    %eax,%edi
459f00:	8d 45 b8             	lea    -0x48(%ebp),%eax
459f03:	50                   	push   %eax
459f04:	57                   	push   %edi
459f05:	53                   	push   %ebx
459f06:	8b 5d f0             	mov    -0x10(%ebp),%ebx
459f09:	6a 00                	push   $0x0
459f0b:	ff 75 08             	push   0x8(%ebp)
459f0e:	53                   	push   %ebx
459f0f:	ff d6                	call   *%esi
459f11:	ff 75 ec             	push   -0x14(%ebp)
459f14:	8b f0                	mov    %eax,%esi
459f16:	53                   	push   %ebx
459f17:	ff 15 04 d1 48 00    	call   *0x48d104
459f1d:	ff 75 08             	push   0x8(%ebp)
459f20:	ff 15 c8 d0 48 00    	call   *0x48d0c8
459f26:	53                   	push   %ebx
459f27:	ff 15 10 d1 48 00    	call   *0x48d110
459f2d:	ff 75 f8             	push   -0x8(%ebp)
459f30:	6a 00                	push   $0x0
459f32:	ff 15 0c d6 48 00    	call   *0x48d60c
459f38:	85 f6                	test   %esi,%esi
459f3a:	74 04                	je     0x459f40
459f3c:	8b c7                	mov    %edi,%eax
459f3e:	eb 09                	jmp    0x459f49
459f40:	57                   	push   %edi
459f41:	e8 18 56 fc ff       	call   0x41f55e
459f46:	59                   	pop    %ecx
459f47:	33 c0                	xor    %eax,%eax
459f49:	5f                   	pop    %edi
459f4a:	5e                   	pop    %esi
459f4b:	5b                   	pop    %ebx
459f4c:	c9                   	leave
459f4d:	c2 0c 00             	ret    $0xc
459f50:	55                   	push   %ebp
459f51:	8b ec                	mov    %esp,%ebp
459f53:	81 ec b0 00 00 00    	sub    $0xb0,%esp
459f59:	53                   	push   %ebx
459f5a:	56                   	push   %esi
459f5b:	83 ce ff             	or     $0xffffffff,%esi
459f5e:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
459f61:	89 75 f8             	mov    %esi,-0x8(%ebp)
459f64:	0b de                	or     %esi,%ebx
459f66:	c7 45 fc 00 00 c0 88 	movl   $0x88c00000,-0x4(%ebp)
459f6d:	c7 45 f4 08 00 00 00 	movl   $0x8,-0xc(%ebp)
459f74:	e8 7e 38 fb ff       	call   0x40d7f7
459f79:	a1 d4 10 4c 00       	mov    0x4c10d4,%eax
459f7e:	85 c0                	test   %eax,%eax
459f80:	74 0e                	je     0x459f90
459f82:	50                   	push   %eax
459f83:	ff 15 24 d6 48 00    	call   *0x48d624
459f89:	83 25 d4 10 4c 00 00 	andl   $0x0,0x4c10d4
459f90:	83 7d 10 01          	cmpl   $0x1,0x10(%ebp)
459f94:	0f 84 cf 02 00 00    	je     0x45a269
459f9a:	83 7d 0c 03          	cmpl   $0x3,0xc(%ebp)
459f9e:	57                   	push   %edi
459f9f:	8b 7d 08             	mov    0x8(%ebp),%edi
459fa2:	72 1b                	jb     0x459fbf
459fa4:	8b 47 04             	mov    0x4(%edi),%eax
459fa7:	8b 70 08             	mov    0x8(%eax),%esi
459faa:	8b ce                	mov    %esi,%ecx
459fac:	e8 bb f3 fa ff       	call   0x40936c
459fb1:	ff 76 08             	push   0x8(%esi)
459fb4:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
459fb7:	e8 31 cf fa ff       	call   0x406eed
459fbc:	8b 75 f8             	mov    -0x8(%ebp),%esi
459fbf:	83 7d 0c 04          	cmpl   $0x4,0xc(%ebp)
459fc3:	72 10                	jb     0x459fd5
459fc5:	8b 47 04             	mov    0x4(%edi),%eax
459fc8:	8b 48 0c             	mov    0xc(%eax),%ecx
459fcb:	e8 b6 32 fb ff       	call   0x40d286
459fd0:	8b f0                	mov    %eax,%esi
459fd2:	89 45 f8             	mov    %eax,-0x8(%ebp)
459fd5:	83 7d 0c 05          	cmpl   $0x5,0xc(%ebp)
459fd9:	72 0d                	jb     0x459fe8
459fdb:	8b 4f 04             	mov    0x4(%edi),%ecx
459fde:	8b 49 10             	mov    0x10(%ecx),%ecx
459fe1:	e8 a0 32 fb ff       	call   0x40d286
459fe6:	8b d8                	mov    %eax,%ebx
459fe8:	83 7d 0c 06          	cmpl   $0x6,0xc(%ebp)
459fec:	72 4a                	jb     0x45a038
459fee:	8b 4f 04             	mov    0x4(%edi),%ecx
459ff1:	8b 49 14             	mov    0x14(%ecx),%ecx
459ff4:	e8 8d 32 fb ff       	call   0x40d286
459ff9:	a8 01                	test   $0x1,%al
459ffb:	74 07                	je     0x45a004
459ffd:	c7 45 fc 00 00 00 88 	movl   $0x88000000,-0x4(%ebp)
45a004:	8b 47 04             	mov    0x4(%edi),%eax
45a007:	8b 48 14             	mov    0x14(%eax),%ecx
45a00a:	e8 77 32 fb ff       	call   0x40d286
45a00f:	24 02                	and    $0x2,%al
45a011:	0f be c0             	movsbl %al,%eax
45a014:	f7 d8                	neg    %eax
45a016:	1b c0                	sbb    %eax,%eax
45a018:	6a 08                	push   $0x8
45a01a:	f7 d0                	not    %eax
45a01c:	59                   	pop    %ecx
45a01d:	23 c1                	and    %ecx,%eax
45a01f:	89 45 f4             	mov    %eax,-0xc(%ebp)
45a022:	8b 47 04             	mov    0x4(%edi),%eax
45a025:	8b 48 14             	mov    0x14(%eax),%ecx
45a028:	e8 59 32 fb ff       	call   0x40d286
45a02d:	a8 10                	test   $0x10,%al
45a02f:	74 07                	je     0x45a038
45a031:	81 75 fc 00 00 00 08 	xorl   $0x8000000,-0x4(%ebp)
45a038:	6a 00                	push   $0x0
45a03a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a03d:	50                   	push   %eax
45a03e:	6a 00                	push   $0x0
45a040:	6a 30                	push   $0x30
45a042:	ff 15 28 d7 48 00    	call   *0x48d728
45a048:	83 fe ff             	cmp    $0xffffffff,%esi
45a04b:	75 12                	jne    0x45a05f
45a04d:	8b 45 ec             	mov    -0x14(%ebp),%eax
45a050:	05 d4 fe ff ff       	add    $0xfffffed4,%eax
45a055:	99                   	cltd
45a056:	2b c2                	sub    %edx,%eax
45a058:	8b f0                	mov    %eax,%esi
45a05a:	d1 fe                	sar    $1,%esi
45a05c:	89 75 f8             	mov    %esi,-0x8(%ebp)
45a05f:	83 fb ff             	cmp    $0xffffffff,%ebx
45a062:	75 0d                	jne    0x45a071
45a064:	8b 45 f0             	mov    -0x10(%ebp),%eax
45a067:	83 c0 9c             	add    $0xffffff9c,%eax
45a06a:	99                   	cltd
45a06b:	2b c2                	sub    %edx,%eax
45a06d:	8b d8                	mov    %eax,%ebx
45a06f:	d1 fb                	sar    $1,%ebx
45a071:	6a 64                	push   $0x64
45a073:	68 2c 01 00 00       	push   $0x12c
45a078:	33 f6                	xor    %esi,%esi
45a07a:	56                   	push   %esi
45a07b:	56                   	push   %esi
45a07c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a07f:	50                   	push   %eax
45a080:	ff 15 a4 d6 48 00    	call   *0x48d6a4
45a086:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45a089:	51                   	push   %ecx
45a08a:	56                   	push   %esi
45a08b:	ff 75 fc             	push   -0x4(%ebp)
45a08e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45a091:	50                   	push   %eax
45a092:	ff 15 a0 d6 48 00    	call   *0x48d6a0
45a098:	8b 47 04             	mov    0x4(%edi),%eax
45a09b:	8b 30                	mov    (%eax),%esi
45a09d:	8b ce                	mov    %esi,%ecx
45a09f:	e8 c8 f2 fa ff       	call   0x40936c
45a0a4:	8b 46 08             	mov    0x8(%esi),%eax
45a0a7:	8b 08                	mov    (%eax),%ecx
45a0a9:	33 c0                	xor    %eax,%eax
45a0ab:	50                   	push   %eax
45a0ac:	50                   	push   %eax
45a0ad:	50                   	push   %eax
45a0ae:	ff 35 e8 10 4c 00    	push   0x4c10e8
45a0b4:	8b 45 f0             	mov    -0x10(%ebp),%eax
45a0b7:	2b 45 e8             	sub    -0x18(%ebp),%eax
45a0ba:	50                   	push   %eax
45a0bb:	8b 45 ec             	mov    -0x14(%ebp),%eax
45a0be:	2b 45 e4             	sub    -0x1c(%ebp),%eax
45a0c1:	50                   	push   %eax
45a0c2:	53                   	push   %ebx
45a0c3:	ff 75 f8             	push   -0x8(%ebp)
45a0c6:	8b 1d 08 d7 48 00    	mov    0x48d708,%ebx
45a0cc:	ff 75 fc             	push   -0x4(%ebp)
45a0cf:	51                   	push   %ecx
45a0d0:	68 b8 da 49 00       	push   $0x49dab8
45a0d5:	ff 75 f4             	push   -0xc(%ebp)
45a0d8:	ff d3                	call   *%ebx
45a0da:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45a0dd:	51                   	push   %ecx
45a0de:	50                   	push   %eax
45a0df:	a3 d4 10 4c 00       	mov    %eax,0x4c10d4
45a0e4:	ff 15 1c d6 48 00    	call   *0x48d61c
45a0ea:	8b 47 04             	mov    0x4(%edi),%eax
45a0ed:	8b 70 04             	mov    0x4(%eax),%esi
45a0f0:	8b ce                	mov    %esi,%ecx
45a0f2:	e8 75 f2 fa ff       	call   0x40936c
45a0f7:	8b 46 08             	mov    0x8(%esi),%eax
45a0fa:	33 f6                	xor    %esi,%esi
45a0fc:	8b 08                	mov    (%eax),%ecx
45a0fe:	8b 45 ec             	mov    -0x14(%ebp),%eax
45a101:	2b 45 e4             	sub    -0x1c(%ebp),%eax
45a104:	56                   	push   %esi
45a105:	56                   	push   %esi
45a106:	56                   	push   %esi
45a107:	ff 35 d4 10 4c 00    	push   0x4c10d4
45a10d:	2d 19 01 00 00       	sub    $0x119,%eax
45a112:	6a 18                	push   $0x18
45a114:	68 00 05 00 00       	push   $0x500
45a119:	6a 04                	push   $0x4
45a11b:	50                   	push   %eax
45a11c:	68 00 00 00 50       	push   $0x50000000
45a121:	51                   	push   %ecx
45a122:	68 78 18 4b 00       	push   $0x4b1878
45a127:	56                   	push   %esi
45a128:	ff d3                	call   *%ebx
45a12a:	56                   	push   %esi
45a12b:	56                   	push   %esi
45a12c:	56                   	push   %esi
45a12d:	68 50 3d 4b 00       	push   $0x4b3d50
45a132:	a3 cc 10 4c 00       	mov    %eax,0x4c10cc
45a137:	ff 15 18 d1 48 00    	call   *0x48d118
45a13d:	8b 1d 1c d1 48 00    	mov    0x48d11c,%ebx
45a143:	6a 11                	push   $0x11
45a145:	8b f0                	mov    %eax,%esi
45a147:	ff d3                	call   *%ebx
45a149:	50                   	push   %eax
45a14a:	56                   	push   %esi
45a14b:	ff 15 04 d1 48 00    	call   *0x48d104
45a151:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
45a157:	50                   	push   %eax
45a158:	6a 40                	push   $0x40
45a15a:	56                   	push   %esi
45a15b:	ff 15 48 d1 48 00    	call   *0x48d148
45a161:	6a 5a                	push   $0x5a
45a163:	56                   	push   %esi
45a164:	ff 15 dc d0 48 00    	call   *0x48d0dc
45a16a:	56                   	push   %esi
45a16b:	8b f8                	mov    %eax,%edi
45a16d:	ff 15 10 d1 48 00    	call   *0x48d110