4a77f9:	90                   	nop
4a77fa:	90                   	nop
4a77fb:	90                   	nop
4a77fc:	90                   	nop
4a77fd:	90                   	nop
4a77fe:	90                   	nop
4a77ff:	90                   	nop
4a7800:	dd 44 24 04          	fldl   0x4(%esp)
4a7804:	dc 15 28 35 4b 00    	fcoml  0x4b3528
4a780a:	83 ec 30             	sub    $0x30,%esp
4a780d:	57                   	push   %edi
4a780e:	df e0                	fnstsw %ax
4a7810:	f6 c4 40             	test   $0x40,%ah
4a7813:	0f 85 3c 01 00 00    	jne    0x4a7955
4a7819:	dc 15 70 35 4b 00    	fcoml  0x4b3570
4a781f:	df e0                	fnstsw %ax
4a7821:	f6 c4 40             	test   $0x40,%ah
4a7824:	0f 85 2b 01 00 00    	jne    0x4a7955
4a782a:	dc 15 28 35 4b 00    	fcoml  0x4b3528
4a7830:	dc 25 70 35 4b 00    	fsubl  0x4b3570
4a7836:	53                   	push   %ebx
4a7837:	55                   	push   %ebp
4a7838:	56                   	push   %esi
4a7839:	df e0                	fnstsw %ax
4a783b:	f6 c4 41             	test   $0x41,%ah
4a783e:	75 13                	jne    0x4a7853
4a7840:	e8 4f 09 00 00       	call   0x4a8194
4a7845:	8b f8                	mov    %eax,%edi
4a7847:	b9 6c 07 00 00       	mov    $0x76c,%ecx
4a784c:	bb 01 00 00 00       	mov    $0x1,%ebx
4a7851:	eb 11                	jmp    0x4a7864
4a7853:	d9 e1                	fabs
4a7855:	e8 3a 09 00 00       	call   0x4a8194
4a785a:	8b f8                	mov    %eax,%edi
4a785c:	b9 6b 07 00 00       	mov    $0x76b,%ecx
4a7861:	83 cb ff             	or     $0xffffffff,%ebx
4a7864:	8b c1                	mov    %ecx,%eax
4a7866:	bd 90 01 00 00       	mov    $0x190,%ebp
4a786b:	99                   	cltd
4a786c:	f7 fd                	idiv   %ebp
4a786e:	be 6d 01 00 00       	mov    $0x16d,%esi
4a7873:	85 d2                	test   %edx,%edx
4a7875:	74 1e                	je     0x4a7895
4a7877:	8b c1                	mov    %ecx,%eax
4a7879:	bd 64 00 00 00       	mov    $0x64,%ebp
4a787e:	99                   	cltd
4a787f:	f7 fd                	idiv   %ebp
4a7881:	85 d2                	test   %edx,%edx
4a7883:	74 15                	je     0x4a789a
4a7885:	8b c1                	mov    %ecx,%eax
4a7887:	25 03 00 00 80       	and    $0x80000003,%eax
4a788c:	79 05                	jns    0x4a7893
4a788e:	48                   	dec    %eax
4a788f:	83 c8 fc             	or     $0xfffffffc,%eax
4a7892:	40                   	inc    %eax
4a7893:	75 05                	jne    0x4a789a
4a7895:	be 6e 01 00 00       	mov    $0x16e,%esi
4a789a:	3b fe                	cmp    %esi,%edi
4a789c:	7e 06                	jle    0x4a78a4
4a789e:	2b fe                	sub    %esi,%edi
4a78a0:	03 cb                	add    %ebx,%ecx
4a78a2:	eb c0                	jmp    0x4a7864
4a78a4:	8b 54 24 4c          	mov    0x4c(%esp),%edx
4a78a8:	83 fb ff             	cmp    $0xffffffff,%ebx
4a78ab:	89 0a                	mov    %ecx,(%edx)
4a78ad:	75 04                	jne    0x4a78b3
4a78af:	2b f7                	sub    %edi,%esi
4a78b1:	8b fe                	mov    %esi,%edi
4a78b3:	b8 1f 00 00 00       	mov    $0x1f,%eax
4a78b8:	ba 1e 00 00 00       	mov    $0x1e,%edx
4a78bd:	89 44 24 10          	mov    %eax,0x10(%esp)
4a78c1:	89 44 24 18          	mov    %eax,0x18(%esp)
4a78c5:	89 44 24 20          	mov    %eax,0x20(%esp)
4a78c9:	89 44 24 28          	mov    %eax,0x28(%esp)
4a78cd:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4a78d1:	89 44 24 34          	mov    %eax,0x34(%esp)
4a78d5:	89 44 24 3c          	mov    %eax,0x3c(%esp)
4a78d9:	8b c1                	mov    %ecx,%eax
4a78db:	89 54 24 1c          	mov    %edx,0x1c(%esp)
4a78df:	89 54 24 24          	mov    %edx,0x24(%esp)
4a78e3:	89 54 24 30          	mov    %edx,0x30(%esp)
4a78e7:	89 54 24 38          	mov    %edx,0x38(%esp)
4a78eb:	99                   	cltd
4a78ec:	be 90 01 00 00       	mov    $0x190,%esi
4a78f1:	c7 44 24 14 1c 00 00 	movl   $0x1c,0x14(%esp)
4a78f8:	00
4a78f9:	f7 fe                	idiv   %esi
4a78fb:	85 d2                	test   %edx,%edx
4a78fd:	74 1d                	je     0x4a791c
4a78ff:	8b c1                	mov    %ecx,%eax
4a7901:	be 64 00 00 00       	mov    $0x64,%esi
4a7906:	99                   	cltd
4a7907:	f7 fe                	idiv   %esi
4a7909:	85 d2                	test   %edx,%edx
4a790b:	74 17                	je     0x4a7924
4a790d:	81 e1 03 00 00 80    	and    $0x80000003,%ecx
4a7913:	79 05                	jns    0x4a791a
4a7915:	49                   	dec    %ecx
4a7916:	83 c9 fc             	or     $0xfffffffc,%ecx
4a7919:	41                   	inc    %ecx
4a791a:	75 08                	jne    0x4a7924
4a791c:	c7 44 24 14 1d 00 00 	movl   $0x1d,0x14(%esp)
4a7923:	00
4a7924:	5e                   	pop    %esi
4a7925:	5d                   	pop    %ebp
4a7926:	33 c0                	xor    %eax,%eax
4a7928:	8d 54 24 08          	lea    0x8(%esp),%edx
4a792c:	5b                   	pop    %ebx
4a792d:	8b 0a                	mov    (%edx),%ecx
4a792f:	3b f9                	cmp    %ecx,%edi
4a7931:	7e 10                	jle    0x4a7943
4a7933:	2b f9                	sub    %ecx,%edi
4a7935:	40                   	inc    %eax
4a7936:	83 c2 04             	add    $0x4,%edx
4a7939:	83 f8 0c             	cmp    $0xc,%eax
4a793c:	7c ef                	jl     0x4a792d
4a793e:	5f                   	pop    %edi
4a793f:	83 c4 30             	add    $0x30,%esp
4a7942:	c3                   	ret
4a7943:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4a7947:	8b 54 24 48          	mov    0x48(%esp),%edx
4a794b:	40                   	inc    %eax
4a794c:	89 01                	mov    %eax,(%ecx)
4a794e:	89 3a                	mov    %edi,(%edx)
4a7950:	5f                   	pop    %edi
4a7951:	83 c4 30             	add    $0x30,%esp
4a7954:	c3                   	ret
4a7955:	8b 44 24 40          	mov    0x40(%esp),%eax
4a7959:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4a795d:	dc 05 88 35 4b 00    	faddl  0x4b3588
4a7963:	c7 00 6b 07 00 00    	movl   $0x76b,(%eax)
4a7969:	c7 01 0c 00 00 00    	movl   $0xc,(%ecx)
4a796f:	e8 20 08 00 00       	call   0x4a8194
4a7974:	8b 54 24 48          	mov    0x48(%esp),%edx
4a7978:	5f                   	pop    %edi
4a7979:	89 02                	mov    %eax,(%edx)
4a797b:	83 c4 30             	add    $0x30,%esp
4a797e:	c3                   	ret
4a797f:	90                   	nop
4a7980:	51                   	push   %ecx
4a7981:	53                   	push   %ebx
4a7982:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
4a7986:	56                   	push   %esi
4a7987:	8d 44 24 08          	lea    0x8(%esp),%eax
4a798b:	57                   	push   %edi
4a798c:	50                   	push   %eax
4a798d:	53                   	push   %ebx
4a798e:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
4a7995:	00
4a7996:	e8 85 ed ff ff       	call   0x4a6720
4a799b:	8b f0                	mov    %eax,%esi
4a799d:	8b 44 24 14          	mov    0x14(%esp),%eax
4a79a1:	83 c4 08             	add    $0x8,%esp
4a79a4:	33 ff                	xor    %edi,%edi
4a79a6:	85 c0                	test   %eax,%eax
4a79a8:	7e 21                	jle    0x4a79cb
4a79aa:	8b 06                	mov    (%esi),%eax
4a79ac:	85 c0                	test   %eax,%eax
4a79ae:	74 0f                	je     0x4a79bf
4a79b0:	50                   	push   %eax
4a79b1:	e8 4a 94 ff ff       	call   0x4a0e00
4a79b6:	83 c4 04             	add    $0x4,%esp
4a79b9:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4a79bf:	8b 44 24 0c          	mov    0xc(%esp),%eax
4a79c3:	83 c6 04             	add    $0x4,%esi
4a79c6:	47                   	inc    %edi
4a79c7:	3b f8                	cmp    %eax,%edi
4a79c9:	7c df                	jl     0x4a79aa
4a79cb:	53                   	push   %ebx
4a79cc:	e8 2f 94 ff ff       	call   0x4a0e00
4a79d1:	83 c4 04             	add    $0x4,%esp
4a79d4:	5f                   	pop    %edi
4a79d5:	5e                   	pop    %esi
4a79d6:	5b                   	pop    %ebx
4a79d7:	59                   	pop    %ecx
4a79d8:	c3                   	ret
4a79d9:	90                   	nop
4a79da:	90                   	nop
4a79db:	90                   	nop
4a79dc:	90                   	nop
4a79dd:	90                   	nop
4a79de:	90                   	nop
4a79df:	90                   	nop
4a79e0:	dd 44 24 04          	fldl   0x4(%esp)
4a79e4:	d9 e1                	fabs
4a79e6:	dc 0d 68 35 4b 00    	fmull  0x4b3568
4a79ec:	dc 05 38 35 4b 00    	faddl  0x4b3538
4a79f2:	e8 9d 07 00 00       	call   0x4a8194
4a79f7:	8b c8                	mov    %eax,%ecx
4a79f9:	b8 c5 b3 a2 91       	mov    $0x91a2b3c5,%eax
4a79fe:	f7 e9                	imul   %ecx
4a7a00:	03 d1                	add    %ecx,%edx
4a7a02:	c1 fa 0b             	sar    $0xb,%edx
4a7a05:	8b c2                	mov    %edx,%eax
4a7a07:	c1 e8 1f             	shr    $0x1f,%eax
4a7a0a:	03 d0                	add    %eax,%edx
4a7a0c:	8b 44 24 0c          	mov    0xc(%esp),%eax
4a7a10:	89 10                	mov    %edx,(%eax)
4a7a12:	8b c1                	mov    %ecx,%eax
4a7a14:	99                   	cltd
4a7a15:	b9 10 0e 00 00       	mov    $0xe10,%ecx
4a7a1a:	f7 f9                	idiv   %ecx
4a7a1c:	b8 89 88 88 88       	mov    $0x88888889,%eax
4a7a21:	8b ca                	mov    %edx,%ecx
4a7a23:	f7 e9                	imul   %ecx
4a7a25:	03 d1                	add    %ecx,%edx
4a7a27:	c1 fa 05             	sar    $0x5,%edx
4a7a2a:	8b c2                	mov    %edx,%eax
4a7a2c:	c1 e8 1f             	shr    $0x1f,%eax
4a7a2f:	03 d0                	add    %eax,%edx
4a7a31:	8b 44 24 10          	mov    0x10(%esp),%eax
4a7a35:	89 10                	mov    %edx,(%eax)
4a7a37:	8b c1                	mov    %ecx,%eax
4a7a39:	99                   	cltd
4a7a3a:	b9 3c 00 00 00       	mov    $0x3c,%ecx
4a7a3f:	f7 f9                	idiv   %ecx
4a7a41:	8b 44 24 14          	mov    0x14(%esp),%eax
4a7a45:	89 10                	mov    %edx,(%eax)
4a7a47:	c3                   	ret
4a7a48:	90                   	nop
4a7a49:	90                   	nop
4a7a4a:	90                   	nop
4a7a4b:	90                   	nop
4a7a4c:	90                   	nop
4a7a4d:	90                   	nop
4a7a4e:	90                   	nop
4a7a4f:	90                   	nop
4a7a50:	6a ff                	push   $0xffffffff
4a7a52:	68 48 27 4b 00       	push   $0x4b2748
4a7a57:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4a7a5d:	50                   	push   %eax
4a7a5e:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
4a7a65:	83 ec 20             	sub    $0x20,%esp
4a7a68:	53                   	push   %ebx
4a7a69:	55                   	push   %ebp
4a7a6a:	56                   	push   %esi
4a7a6b:	57                   	push   %edi
4a7a6c:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a7a70:	e8 0b f7 ff ff       	call   0x4a7180
4a7a75:	8b 44 24 40          	mov    0x40(%esp),%eax
4a7a79:	33 ed                	xor    %ebp,%ebp
4a7a7b:	89 6c 24 38          	mov    %ebp,0x38(%esp)
4a7a7f:	8b 30                	mov    (%eax),%esi
4a7a81:	8b fe                	mov    %esi,%edi
4a7a83:	57                   	push   %edi
4a7a84:	ff 15 40 a1 50 00    	call   *0x50a140
4a7a8a:	8b d8                	mov    %eax,%ebx
4a7a8c:	57                   	push   %edi
4a7a8d:	03 df                	add    %edi,%ebx
4a7a8f:	89 6c 24 18          	mov    %ebp,0x18(%esp)
4a7a93:	ff 15 40 a1 50 00    	call   *0x50a140
4a7a99:	8b 6c 24 50          	mov    0x50(%esp),%ebp
4a7a9d:	89 44 24 20          	mov    %eax,0x20(%esp)
4a7aa1:	55                   	push   %ebp
4a7aa2:	ff 15 40 a1 50 00    	call   *0x50a140
4a7aa8:	89 44 24 20          	mov    %eax,0x20(%esp)
4a7aac:	8b 44 24 50          	mov    0x50(%esp),%eax
4a7ab0:	50                   	push   %eax
4a7ab1:	ff 15 40 a1 50 00    	call   *0x50a140
4a7ab7:	83 c4 10             	add    $0x10,%esp
4a7aba:	3b f3                	cmp    %ebx,%esi
4a7abc:	89 44 24 48          	mov    %eax,0x48(%esp)
4a7ac0:	73 63                	jae    0x4a7b25
4a7ac2:	8b 4c 24 48          	mov    0x48(%esp),%ecx
4a7ac6:	8b 54 24 44          	mov    0x44(%esp),%edx
4a7aca:	51                   	push   %ecx
4a7acb:	52                   	push   %edx
4a7acc:	56                   	push   %esi
4a7acd:	e8 2e 12 00 00       	call   0x4a8d00
4a7ad2:	83 c4 0c             	add    $0xc,%esp
4a7ad5:	85 c0                	test   %eax,%eax
4a7ad7:	75 35                	jne    0x4a7b0e
4a7ad9:	8b c6                	mov    %esi,%eax
4a7adb:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a7adf:	2b c7                	sub    %edi,%eax
4a7ae1:	50                   	push   %eax
4a7ae2:	57                   	push   %edi
4a7ae3:	e8 28 f9 ff ff       	call   0x4a7410
4a7ae8:	85 ed                	test   %ebp,%ebp
4a7aea:	74 0f                	je     0x4a7afb
4a7aec:	8b 44 24 14          	mov    0x14(%esp),%eax
4a7af0:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a7af4:	50                   	push   %eax
4a7af5:	55                   	push   %ebp
4a7af6:	e8 15 f9 ff ff       	call   0x4a7410
4a7afb:	8b 4c 24 48          	mov    0x48(%esp),%ecx
4a7aff:	8b 44 24 10          	mov    0x10(%esp),%eax
4a7b03:	03 f1                	add    %ecx,%esi
4a7b05:	40                   	inc    %eax
4a7b06:	8b fe                	mov    %esi,%edi
4a7b08:	89 44 24 10          	mov    %eax,0x10(%esp)
4a7b0c:	eb 0b                	jmp    0x4a7b19
4a7b0e:	80 3e 00             	cmpb   $0x0,(%esi)
4a7b11:	7d 05                	jge    0x4a7b18
4a7b13:	83 c6 02             	add    $0x2,%esi
4a7b16:	eb 01                	jmp    0x4a7b19
4a7b18:	46                   	inc    %esi
4a7b19:	3b f3                	cmp    %ebx,%esi
4a7b1b:	72 a5                	jb     0x4a7ac2
4a7b1d:	8b 44 24 10          	mov    0x10(%esp),%eax
4a7b21:	85 c0                	test   %eax,%eax
4a7b23:	75 37                	jne    0x4a7b5c
4a7b25:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a7b29:	e8 52 f8 ff ff       	call   0x4a7380
4a7b2e:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a7b32:	c7 44 24 38 ff ff ff 	movl   $0xffffffff,0x38(%esp)
4a7b39:	ff
4a7b3a:	c7 44 24 1c 30 35 4b 	movl   $0x4b3530,0x1c(%esp)
4a7b41:	00
4a7b42:	e8 39 f8 ff ff       	call   0x4a7380
4a7b47:	5f                   	pop    %edi
4a7b48:	5e                   	pop    %esi
4a7b49:	5d                   	pop    %ebp
4a7b4a:	33 c0                	xor    %eax,%eax
4a7b4c:	5b                   	pop    %ebx
4a7b4d:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4a7b51:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4a7b58:	83 c4 2c             	add    $0x2c,%esp
4a7b5b:	c3                   	ret
4a7b5c:	8b 6c 24 40          	mov    0x40(%esp),%ebp
4a7b60:	8b 5c 24 18          	mov    0x18(%esp),%ebx
4a7b64:	2b 75 00             	sub    0x0(%ebp),%esi
4a7b67:	3b f3                	cmp    %ebx,%esi
4a7b69:	7f 14                	jg     0x4a7b7f
4a7b6b:	57                   	push   %edi
4a7b6c:	e8 af f9 ff ff       	call   0x4a7520
4a7b71:	83 c4 04             	add    $0x4,%esp
4a7b74:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4a7b78:	50                   	push   %eax
4a7b79:	57                   	push   %edi
4a7b7a:	e8 91 f8 ff ff       	call   0x4a7410
4a7b7f:	8d 73 01             	lea    0x1(%ebx),%esi
4a7b82:	56                   	push   %esi
4a7b83:	e8 2e 0a 00 00       	call   0x4a85b6
4a7b88:	8b ce                	mov    %esi,%ecx
4a7b8a:	8b d8                	mov    %eax,%ebx
4a7b8c:	8b d1                	mov    %ecx,%edx
4a7b8e:	33 c0                	xor    %eax,%eax
4a7b90:	8b fb                	mov    %ebx,%edi
4a7b92:	83 c4 04             	add    $0x4,%esp
4a7b95:	c1 e9 02             	shr    $0x2,%ecx
4a7b98:	f3 ab                	rep stos %eax,%es:(%edi)
4a7b9a:	8b ca                	mov    %edx,%ecx
4a7b9c:	83 e1 03             	and    $0x3,%ecx
4a7b9f:	f3 aa                	rep stos %al,%es:(%edi)
4a7ba1:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4a7ba5:	8b 7c 24 24          	mov    0x24(%esp),%edi
4a7ba9:	8b f1                	mov    %ecx,%esi
4a7bab:	8b c1                	mov    %ecx,%eax
4a7bad:	f7 de                	neg    %esi