416a5f:	ff 70 2c             	push   0x2c(%eax)
416a62:	ff 70 28             	push   0x28(%eax)
416a65:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
416a68:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
416a6f:	48                   	dec    %eax
416a70:	50                   	push   %eax
416a71:	68 80 2a 40 00       	push   $0x402a80
416a76:	ff 15 74 23 45 00    	call   *0x452374
416a7c:	83 c4 10             	add    $0x10,%esp
416a7f:	e9 ed 03 00 00       	jmp    0x416e71
416a84:	8b 47 10             	mov    0x10(%edi),%eax
416a87:	ff 70 20             	push   0x20(%eax)
416a8a:	e9 f5 07 00 00       	jmp    0x417284
416a8f:	8b 47 10             	mov    0x10(%edi),%eax
416a92:	6a 00                	push   $0x0
416a94:	68 00 04 00 00       	push   $0x400
416a99:	8b 40 20             	mov    0x20(%eax),%eax
416a9c:	f7 61 2c             	mull   0x2c(%ecx)
416a9f:	52                   	push   %edx
416aa0:	50                   	push   %eax
416aa1:	e8 7a 6c 03 00       	call   0x44d720
416aa6:	6a 00                	push   $0x0
416aa8:	8b c8                	mov    %eax,%ecx
416aaa:	8b c2                	mov    %edx,%eax
416aac:	68 00 04 00 00       	push   $0x400
416ab1:	50                   	push   %eax
416ab2:	51                   	push   %ecx
416ab3:	89 4d cc             	mov    %ecx,-0x34(%ebp)
416ab6:	89 45 d4             	mov    %eax,-0x2c(%ebp)
416ab9:	e8 82 6d 03 00       	call   0x44d840
416abe:	6a 00                	push   $0x0
416ac0:	68 10 27 00 00       	push   $0x2710
416ac5:	8b fa                	mov    %edx,%edi
416ac7:	89 45 dc             	mov    %eax,-0x24(%ebp)
416aca:	57                   	push   %edi
416acb:	50                   	push   %eax
416acc:	e8 ff 6c 03 00       	call   0x44d7d0
416ad1:	85 d2                	test   %edx,%edx
416ad3:	7c 10                	jl     0x416ae5
416ad5:	7f 07                	jg     0x416ade
416ad7:	3d 00 14 00 00       	cmp    $0x1400,%eax
416adc:	72 07                	jb     0x416ae5
416ade:	be 01 00 00 00       	mov    $0x1,%esi
416ae3:	eb 02                	jmp    0x416ae7
416ae5:	33 f6                	xor    %esi,%esi
416ae7:	6a 00                	push   $0x0
416ae9:	68 e8 03 00 00       	push   $0x3e8
416aee:	57                   	push   %edi
416aef:	ff 75 dc             	push   -0x24(%ebp)
416af2:	e8 d9 6c 03 00       	call   0x44d7d0
416af7:	6a 00                	push   $0x0
416af9:	68 00 04 00 00       	push   $0x400
416afe:	52                   	push   %edx
416aff:	50                   	push   %eax
416b00:	e8 1b 6c 03 00       	call   0x44d720
416b05:	03 c6                	add    %esi,%eax
416b07:	50                   	push   %eax
416b08:	6a 00                	push   $0x0
416b0a:	68 00 04 00 00       	push   $0x400
416b0f:	ff 75 d4             	push   -0x2c(%ebp)
416b12:	ff 75 cc             	push   -0x34(%ebp)
416b15:	e8 06 6c 03 00       	call   0x44d720
416b1a:	50                   	push   %eax
416b1b:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
416b1e:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
416b25:	83 e8 04             	sub    $0x4,%eax
416b28:	50                   	push   %eax
416b29:	68 5c 2a 40 00       	push   $0x402a5c
416b2e:	ff 15 74 23 45 00    	call   *0x452374
416b34:	83 c4 10             	add    $0x10,%esp
416b37:	e9 35 03 00 00       	jmp    0x416e71
416b3c:	8b 47 0c             	mov    0xc(%edi),%eax
416b3f:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
416b43:	0f 84 21 03 00 00    	je     0x416e6a
416b49:	8b 51 74             	mov    0x74(%ecx),%edx
416b4c:	85 d2                	test   %edx,%edx
416b4e:	0f 84 16 03 00 00    	je     0x416e6a
416b54:	8b 47 10             	mov    0x10(%edi),%eax
416b57:	8b 40 20             	mov    0x20(%eax),%eax
416b5a:	89 45 dc             	mov    %eax,-0x24(%ebp)
416b5d:	db 45 dc             	fildl  -0x24(%ebp)
416b60:	85 c0                	test   %eax,%eax
416b62:	79 06                	jns    0x416b6a
416b64:	dc 05 e8 42 41 00    	faddl  0x4142e8
416b6a:	dd 5d d8             	fstpl  -0x28(%ebp)
416b6d:	dd 45 d8             	fldl   -0x28(%ebp)
416b70:	89 55 dc             	mov    %edx,-0x24(%ebp)
416b73:	db 45 dc             	fildl  -0x24(%ebp)
416b76:	85 d2                	test   %edx,%edx
416b78:	79 06                	jns    0x416b80
416b7a:	dc 05 e8 42 41 00    	faddl  0x4142e8
416b80:	dd 5d d8             	fstpl  -0x28(%ebp)
416b83:	dc 75 d8             	fdivl  -0x28(%ebp)
416b86:	e9 35 fc ff ff       	jmp    0x4167c0
416b8b:	8b c8                	mov    %eax,%ecx
416b8d:	e8 9e f3 ff ff       	call   0x415f30
416b92:	e9 da 02 00 00       	jmp    0x416e71
416b97:	8d 48 70             	lea    0x70(%eax),%ecx
416b9a:	e8 91 f3 ff ff       	call   0x415f30
416b9f:	e9 cd 02 00 00       	jmp    0x416e71
416ba4:	8d 88 e0 00 00 00    	lea    0xe0(%eax),%ecx
416baa:	e8 81 f3 ff ff       	call   0x415f30
416baf:	e9 bd 02 00 00       	jmp    0x416e71
416bb4:	8b 47 14             	mov    0x14(%edi),%eax
416bb7:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
416bbb:	b8 90 2a 40 00       	mov    $0x402a90,%eax
416bc0:	75 05                	jne    0x416bc7
416bc2:	b8 9c 2a 40 00       	mov    $0x402a9c,%eax
416bc7:	50                   	push   %eax
416bc8:	ff 15 74 23 45 00    	call   *0x452374
416bce:	83 c4 04             	add    $0x4,%esp
416bd1:	e9 9b 02 00 00       	jmp    0x416e71
416bd6:	8b 47 14             	mov    0x14(%edi),%eax
416bd9:	ff 70 08             	push   0x8(%eax)
416bdc:	e9 a3 06 00 00       	jmp    0x417284
416be1:	8b 47 14             	mov    0x14(%edi),%eax
416be4:	6a 00                	push   $0x0
416be6:	68 00 04 00 00       	push   $0x400
416beb:	8b 40 08             	mov    0x8(%eax),%eax
416bee:	f7 61 2c             	mull   0x2c(%ecx)
416bf1:	52                   	push   %edx
416bf2:	50                   	push   %eax
416bf3:	e8 28 6b 03 00       	call   0x44d720
416bf8:	6a 00                	push   $0x0
416bfa:	8b c8                	mov    %eax,%ecx
416bfc:	8b c2                	mov    %edx,%eax
416bfe:	68 00 04 00 00       	push   $0x400
416c03:	50                   	push   %eax
416c04:	51                   	push   %ecx
416c05:	89 4d cc             	mov    %ecx,-0x34(%ebp)
416c08:	89 45 d4             	mov    %eax,-0x2c(%ebp)
416c0b:	e8 30 6c 03 00       	call   0x44d840
416c10:	6a 00                	push   $0x0
416c12:	68 10 27 00 00       	push   $0x2710
416c17:	8b fa                	mov    %edx,%edi
416c19:	89 45 dc             	mov    %eax,-0x24(%ebp)
416c1c:	57                   	push   %edi
416c1d:	50                   	push   %eax
416c1e:	e8 ad 6b 03 00       	call   0x44d7d0
416c23:	85 d2                	test   %edx,%edx
416c25:	7c 10                	jl     0x416c37
416c27:	7f 07                	jg     0x416c30
416c29:	3d 00 14 00 00       	cmp    $0x1400,%eax
416c2e:	72 07                	jb     0x416c37
416c30:	be 01 00 00 00       	mov    $0x1,%esi
416c35:	eb 02                	jmp    0x416c39
416c37:	33 f6                	xor    %esi,%esi
416c39:	6a 00                	push   $0x0
416c3b:	68 e8 03 00 00       	push   $0x3e8
416c40:	57                   	push   %edi
416c41:	ff 75 dc             	push   -0x24(%ebp)
416c44:	e8 87 6b 03 00       	call   0x44d7d0
416c49:	6a 00                	push   $0x0
416c4b:	68 00 04 00 00       	push   $0x400
416c50:	52                   	push   %edx
416c51:	50                   	push   %eax
416c52:	e8 c9 6a 03 00       	call   0x44d720
416c57:	03 c6                	add    %esi,%eax
416c59:	50                   	push   %eax
416c5a:	6a 00                	push   $0x0
416c5c:	68 00 04 00 00       	push   $0x400
416c61:	ff 75 d4             	push   -0x2c(%ebp)
416c64:	ff 75 cc             	push   -0x34(%ebp)
416c67:	e8 b4 6a 03 00       	call   0x44d720
416c6c:	50                   	push   %eax
416c6d:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
416c70:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
416c77:	83 e8 04             	sub    $0x4,%eax
416c7a:	50                   	push   %eax
416c7b:	68 5c 2a 40 00       	push   $0x402a5c
416c80:	ff 15 74 23 45 00    	call   *0x452374
416c86:	83 c4 10             	add    $0x10,%esp
416c89:	e9 e3 01 00 00       	jmp    0x416e71
416c8e:	8b 47 14             	mov    0x14(%edi),%eax
416c91:	ff 70 10             	push   0x10(%eax)
416c94:	e9 eb 05 00 00       	jmp    0x417284
416c99:	8b 57 14             	mov    0x14(%edi),%edx
416c9c:	8b cb                	mov    %ebx,%ecx
416c9e:	8b 52 14             	mov    0x14(%edx),%edx
416ca1:	e8 3a f3 ff ff       	call   0x415fe0
416ca6:	e9 c6 01 00 00       	jmp    0x416e71
416cab:	8b 47 14             	mov    0x14(%edi),%eax
416cae:	ba f0 0b 45 00       	mov    $0x450bf0,%edx
416cb3:	ff 70 14             	push   0x14(%eax)
416cb6:	51                   	push   %ecx
416cb7:	e8 94 f3 ff ff       	call   0x416050
416cbc:	e9 b0 01 00 00       	jmp    0x416e71
416cc1:	8b 47 14             	mov    0x14(%edi),%eax
416cc4:	ff 70 18             	push   0x18(%eax)
416cc7:	e9 b8 05 00 00       	jmp    0x417284
416ccc:	8b 47 14             	mov    0x14(%edi),%eax
416ccf:	8b 48 1c             	mov    0x1c(%eax),%ecx
416cd2:	8b 49 04             	mov    0x4(%ecx),%ecx
416cd5:	e8 56 f2 ff ff       	call   0x415f30
416cda:	e9 92 01 00 00       	jmp    0x416e71
416cdf:	8b 47 14             	mov    0x14(%edi),%eax
416ce2:	8b 48 1c             	mov    0x1c(%eax),%ecx
416ce5:	8b 49 08             	mov    0x8(%ecx),%ecx
416ce8:	e8 43 f2 ff ff       	call   0x415f30
416ced:	e9 7f 01 00 00       	jmp    0x416e71
416cf2:	8b 47 14             	mov    0x14(%edi),%eax
416cf5:	8b 48 1c             	mov    0x1c(%eax),%ecx
416cf8:	8b 49 0c             	mov    0xc(%ecx),%ecx
416cfb:	e8 30 f2 ff ff       	call   0x415f30
416d00:	e9 6c 01 00 00       	jmp    0x416e71
416d05:	8b 47 14             	mov    0x14(%edi),%eax
416d08:	8b 48 1c             	mov    0x1c(%eax),%ecx
416d0b:	8b 49 14             	mov    0x14(%ecx),%ecx
416d0e:	e8 1d f2 ff ff       	call   0x415f30
416d13:	e9 59 01 00 00       	jmp    0x416e71
416d18:	8b 4f 18             	mov    0x18(%edi),%ecx
416d1b:	8b 49 04             	mov    0x4(%ecx),%ecx
416d1e:	e8 0d f2 ff ff       	call   0x415f30
416d23:	e9 49 01 00 00       	jmp    0x416e71
416d28:	8b 4f 18             	mov    0x18(%edi),%ecx
416d2b:	8b 49 08             	mov    0x8(%ecx),%ecx
416d2e:	e8 fd f1 ff ff       	call   0x415f30
416d33:	e9 39 01 00 00       	jmp    0x416e71
416d38:	8b 47 0c             	mov    0xc(%edi),%eax
416d3b:	83 78 04 06          	cmpl   $0x6,0x4(%eax)
416d3f:	0f 85 25 01 00 00    	jne    0x416e6a
416d45:	8b 47 08             	mov    0x8(%edi),%eax
416d48:	8b 40 18             	mov    0x18(%eax),%eax
416d4b:	8b 78 08             	mov    0x8(%eax),%edi
416d4e:	8b 07                	mov    (%edi),%eax
416d50:	8b 70 28             	mov    0x28(%eax),%esi
416d53:	8b ce                	mov    %esi,%ecx
416d55:	ff 15 84 23 45 00    	call   *0x452384
416d5b:	8b cf                	mov    %edi,%ecx
416d5d:	ff d6                	call   *%esi
416d5f:	0b c2                	or     %edx,%eax
416d61:	0f 84 00 01 00 00    	je     0x416e67
416d67:	8b 45 cc             	mov    -0x34(%ebp),%eax
416d6a:	8b 40 08             	mov    0x8(%eax),%eax
416d6d:	8b 40 18             	mov    0x18(%eax),%eax
416d70:	8b 78 08             	mov    0x8(%eax),%edi
416d73:	8b 07                	mov    (%edi),%eax
416d75:	8b 70 28             	mov    0x28(%eax),%esi
416d78:	8b ce                	mov    %esi,%ecx
416d7a:	ff 15 84 23 45 00    	call   *0x452384
416d80:	8b cf                	mov    %edi,%ecx
416d82:	ff d6                	call   *%esi
416d84:	89 45 dc             	mov    %eax,-0x24(%ebp)
416d87:	8b 45 cc             	mov    -0x34(%ebp),%eax
416d8a:	89 55 d4             	mov    %edx,-0x2c(%ebp)
416d8d:	8b 48 18             	mov    0x18(%eax),%ecx
416d90:	8b 79 08             	mov    0x8(%ecx),%edi
416d93:	8b 37                	mov    (%edi),%esi
416d95:	8b 76 28             	mov    0x28(%esi),%esi
416d98:	8b ce                	mov    %esi,%ecx
416d9a:	ff 15 84 23 45 00    	call   *0x452384
416da0:	8b cf                	mov    %edi,%ecx
416da2:	ff d6                	call   *%esi
416da4:	8b f8                	mov    %eax,%edi
416da6:	8b ca                	mov    %edx,%ecx
416da8:	8b 45 d4             	mov    -0x2c(%ebp),%eax
416dab:	8b f1                	mov    %ecx,%esi
416dad:	81 e1 ff ff ff 7f    	and    $0x7fffffff,%ecx
416db3:	89 7d c8             	mov    %edi,-0x38(%ebp)
416db6:	89 4d cc             	mov    %ecx,-0x34(%ebp)
416db9:	81 e6 00 00 00 80    	and    $0x80000000,%esi
416dbf:	df 6d c8             	fildll -0x38(%ebp)
416dc2:	89 75 cc             	mov    %esi,-0x34(%ebp)
416dc5:	8b c8                	mov    %eax,%ecx
416dc7:	8b 75 dc             	mov    -0x24(%ebp),%esi
416dca:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
416dcf:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
416dd6:	81 e1 00 00 00 80    	and    $0x80000000,%ecx
416ddc:	df 6d c8             	fildll -0x38(%ebp)
416ddf:	89 45 dc             	mov    %eax,-0x24(%ebp)
416de2:	8b c6                	mov    %esi,%eax
416de4:	89 75 d8             	mov    %esi,-0x28(%ebp)
416de7:	d9 e0                	fchs
416de9:	de c1                	faddp  %st,%st(1)
416deb:	dd 5d c8             	fstpl  -0x38(%ebp)
416dee:	dd 45 c8             	fldl   -0x38(%ebp)
416df1:	df 6d d8             	fildll -0x28(%ebp)
416df4:	89 4d dc             	mov    %ecx,-0x24(%ebp)
416df7:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
416dfe:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
416e01:	0b c1                	or     %ecx,%eax
416e03:	df 6d d8             	fildll -0x28(%ebp)
416e06:	d9 e0                	fchs
416e08:	de c1                	faddp  %st,%st(1)
416e0a:	dd 5d d8             	fstpl  -0x28(%ebp)
416e0d:	dc 75 d8             	fdivl  -0x28(%ebp)
416e10:	dc 0d d0 42 41 00    	fmull  0x4142d0
416e16:	75 09                	jne    0x416e21
416e18:	dd d8                	fstp   %st(0)
416e1a:	d9 ee                	fldz
416e1c:	e9 a5 f9 ff ff       	jmp    0x4167c6
416e21:	85 d2                	test   %edx,%edx
416e23:	75 2c                	jne    0x416e51
416e25:	85 ff                	test   %edi,%edi
416e27:	75 28                	jne    0x416e51
416e29:	3b d1                	cmp    %ecx,%edx
416e2b:	0f 87 95 f9 ff ff    	ja     0x4167c6
416e31:	72 08                	jb     0x416e3b
416e33:	3b fe                	cmp    %esi,%edi
416e35:	0f 83 8b f9 ff ff    	jae    0x4167c6
416e3b:	dd 05 c8 42 41 00    	fldl   0x4142c8
416e41:	d8 d1                	fcom   %st(1)
416e43:	df e0                	fnstsw %ax
416e45:	f6 c4 41             	test   $0x41,%ah
416e48:	74 16                	je     0x416e60
416e4a:	dd d9                	fstp   %st(1)
416e4c:	e9 75 f9 ff ff       	jmp    0x4167c6
416e51:	dd 05 b0 42 41 00    	fldl   0x4142b0
416e57:	d8 d1                	fcom   %st(1)
416e59:	df e0                	fnstsw %ax
416e5b:	f6 c4 05             	test   $0x5,%ah
416e5e:	7a ea                	jp     0x416e4a
416e60:	dd d8                	fstp   %st(0)
416e62:	e9 5f f9 ff ff       	jmp    0x4167c6
416e67:	8b 4d dc             	mov    -0x24(%ebp),%ecx
416e6a:	8b d3                	mov    %ebx,%edx
416e6c:	e8 af f2 ff ff       	call   0x416120
416e71:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416e74:	33 c0                	xor    %eax,%eax
416e76:	5f                   	pop    %edi
416e77:	5e                   	pop    %esi
416e78:	33 cd                	xor    %ebp,%ecx
416e7a:	5b                   	pop    %ebx
416e7b:	e8 d0 60 03 00       	call   0x44cf50
416e80:	8b e5                	mov    %ebp,%esp
416e82:	5d                   	pop    %ebp
416e83:	c2 08 00             	ret    $0x8
416e86:	8b 4f 18             	mov    0x18(%edi),%ecx
416e89:	8b 49 0c             	mov    0xc(%ecx),%ecx
416e8c:	e8 9f f0 ff ff       	call   0x415f30
416e91:	eb de                	jmp    0x416e71
416e93:	8b 4f 18             	mov    0x18(%edi),%ecx
416e96:	8b 49 10             	mov    0x10(%ecx),%ecx
416e99:	e8 92 f0 ff ff       	call   0x415f30
416e9e:	eb d1                	jmp    0x416e71
416ea0:	8b 4f 18             	mov    0x18(%edi),%ecx
416ea3:	8b 49 14             	mov    0x14(%ecx),%ecx
416ea6:	e8 85 f0 ff ff       	call   0x415f30
416eab:	eb c4                	jmp    0x416e71
416ead:	8b 4f 18             	mov    0x18(%edi),%ecx
416eb0:	8b 49 18             	mov    0x18(%ecx),%ecx
416eb3:	e8 78 f0 ff ff       	call   0x415f30
416eb8:	eb b7                	jmp    0x416e71
416eba:	8b 47 18             	mov    0x18(%edi),%eax
416ebd:	ff 70 20             	push   0x20(%eax)
416ec0:	ff 70 1c             	push   0x1c(%eax)
416ec3:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
416ec6:	ff 34 85 84 f0 44 00 	push   0x44f084(,%eax,4)
416ecd:	68 80 2a 40 00       	push   $0x402a80
416ed2:	ff 15 74 23 45 00    	call   *0x452374