59c4b8:	db 6d d8             	fldt   -0x28(%ebp)
59c4bb:	de f1                	fdivp  %st,%st(1)
59c4bd:	e8 0a 68 e6 ff       	call   0x402ccc
59c4c2:	8b c8                	mov    %eax,%ecx
59c4c4:	ba ff 00 00 00       	mov    $0xff,%edx
59c4c9:	8b c3                	mov    %ebx,%eax
59c4cb:	e8 78 bb 05 00       	call   0x5f8048
59c4d0:	eb 48                	jmp    0x59c51a
59c4d2:	6a 00                	push   $0x0
59c4d4:	68 ff 00 00 00       	push   $0xff
59c4d9:	6a 00                	push   $0x0
59c4db:	6a 00                	push   $0x0
59c4dd:	8b c3                	mov    %ebx,%eax
59c4df:	8b 10                	mov    (%eax),%edx
59c4e1:	ff 52 0c             	call   *0xc(%edx)
59c4e4:	8b d0                	mov    %eax,%edx
59c4e6:	c1 e0 08             	shl    $0x8,%eax
59c4e9:	2b c2                	sub    %edx,%eax
59c4eb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
59c4ee:	db 45 e4             	fildl  -0x1c(%ebp)
59c4f1:	db 7d d8             	fstpt  -0x28(%ebp)
59c4f4:	9b                   	fwait
59c4f5:	8b c3                	mov    %ebx,%eax
59c4f7:	8b 10                	mov    (%eax),%edx
59c4f9:	ff 52 08             	call   *0x8(%edx)
59c4fc:	89 45 d4             	mov    %eax,-0x2c(%ebp)
59c4ff:	db 45 d4             	fildl  -0x2c(%ebp)
59c502:	db 6d d8             	fldt   -0x28(%ebp)
59c505:	de f1                	fdivp  %st,%st(1)
59c507:	e8 c0 67 e6 ff       	call   0x402ccc
59c50c:	8b d0                	mov    %eax,%edx
59c50e:	b9 ff 00 00 00       	mov    $0xff,%ecx
59c513:	8b c3                	mov    %ebx,%eax
59c515:	e8 2e bb 05 00       	call   0x5f8048
59c51a:	c6 45 f4 00          	movb   $0x0,-0xc(%ebp)
59c51e:	c6 45 f5 00          	movb   $0x0,-0xb(%ebp)
59c522:	8b c3                	mov    %ebx,%eax
59c524:	8b 10                	mov    (%eax),%edx
59c526:	ff 52 0c             	call   *0xc(%edx)
59c529:	88 45 f6             	mov    %al,-0xa(%ebp)
59c52c:	8b c3                	mov    %ebx,%eax
59c52e:	8b 10                	mov    (%eax),%edx
59c530:	ff 52 08             	call   *0x8(%edx)
59c533:	88 45 f7             	mov    %al,-0x9(%ebp)
59c536:	8d 55 f4             	lea    -0xc(%ebp),%edx
59c539:	b9 04 00 00 00       	mov    $0x4,%ecx
59c53e:	8b 45 fc             	mov    -0x4(%ebp),%eax
59c541:	8b 38                	mov    (%eax),%edi
59c543:	ff 57 0c             	call   *0xc(%edi)
59c546:	8b c3                	mov    %ebx,%eax
59c548:	8b 10                	mov    (%eax),%edx
59c54a:	ff 52 08             	call   *0x8(%edx)
59c54d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
59c550:	db 45 e4             	fildl  -0x1c(%ebp)
59c553:	d8 3d d8 c5 59 00    	fdivrs 0x59c5d8
59c559:	dd 5e 18             	fstpl  0x18(%esi)
59c55c:	9b                   	fwait
59c55d:	8a 45 f6             	mov    -0xa(%ebp),%al
59c560:	33 d2                	xor    %edx,%edx
59c562:	8a d0                	mov    %al,%dl
59c564:	c1 ea 03             	shr    $0x3,%edx
59c567:	89 55 ec             	mov    %edx,-0x14(%ebp)
59c56a:	a8 07                	test   $0x7,%al
59c56c:	74 03                	je     0x59c571
59c56e:	ff 45 ec             	incl   -0x14(%ebp)
59c571:	8b c3                	mov    %ebx,%eax
59c573:	8b 10                	mov    (%eax),%edx
59c575:	ff 52 08             	call   *0x8(%edx)
59c578:	85 c0                	test   %eax,%eax
59c57a:	7c 45                	jl     0x59c5c1
59c57c:	40                   	inc    %eax
59c57d:	89 45 e8             	mov    %eax,-0x18(%ebp)
59c580:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
59c587:	8b 55 f0             	mov    -0x10(%ebp),%edx
59c58a:	8b c3                	mov    %ebx,%eax
59c58c:	8b 08                	mov    (%eax),%ecx
59c58e:	ff 11                	call   *(%ecx)
59c590:	8b d0                	mov    %eax,%edx
59c592:	8b 4d ec             	mov    -0x14(%ebp),%ecx
59c595:	8b 45 fc             	mov    -0x4(%ebp),%eax
59c598:	8b 38                	mov    (%eax),%edi
59c59a:	ff 57 0c             	call   *0xc(%edi)
59c59d:	66 83 7e 02 00       	cmpw   $0x0,0x2(%esi)
59c5a2:	74 15                	je     0x59c5b9
59c5a4:	db 45 f0             	fildl  -0x10(%ebp)
59c5a7:	dc 4e 18             	fmull  0x18(%esi)
59c5aa:	e8 1d 67 e6 ff       	call   0x402ccc
59c5af:	8b c8                	mov    %eax,%ecx
59c5b1:	8b 56 08             	mov    0x8(%esi),%edx
59c5b4:	8b 46 04             	mov    0x4(%esi),%eax
59c5b7:	ff 16                	call   *(%esi)
59c5b9:	ff 45 f0             	incl   -0x10(%ebp)
59c5bc:	ff 4d e8             	decl   -0x18(%ebp)
59c5bf:	75 c6                	jne    0x59c587
59c5c1:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
59c5c4:	74 07                	je     0x59c5cd
59c5c6:	8b c3                	mov    %ebx,%eax
59c5c8:	e8 ab 74 e6 ff       	call   0x403a78
59c5cd:	5f                   	pop    %edi
59c5ce:	5e                   	pop    %esi
59c5cf:	5b                   	pop    %ebx
59c5d0:	8b e5                	mov    %ebp,%esp
59c5d2:	5d                   	pop    %ebp
59c5d3:	c2 04 00             	ret    $0x4
59c5d6:	00 00                	add    %al,(%eax)
59c5d8:	00 00                	add    %al,(%eax)
59c5da:	c8 42 55 8b          	enter  $0x5542,$0x8b
59c5de:	ec                   	in     (%dx),%al
59c5df:	53                   	push   %ebx
59c5e0:	56                   	push   %esi
59c5e1:	57                   	push   %edi
59c5e2:	8b f8                	mov    %eax,%edi
59c5e4:	8b 5d 08             	mov    0x8(%ebp),%ebx
59c5e7:	83 c3 fc             	add    $0xfffffffc,%ebx
59c5ea:	8b 75 08             	mov    0x8(%ebp),%esi
59c5ed:	83 c6 e8             	add    $0xffffffe8,%esi
59c5f0:	8b 45 08             	mov    0x8(%ebp),%eax
59c5f3:	8b 50 ec             	mov    -0x14(%eax),%edx
59c5f6:	8b 45 08             	mov    0x8(%ebp),%eax
59c5f9:	8b 40 f0             	mov    -0x10(%eax),%eax
59c5fc:	8b 08                	mov    (%eax),%ecx
59c5fe:	ff 11                	call   *(%ecx)
59c600:	89 06                	mov    %eax,(%esi)
59c602:	01 3e                	add    %edi,(%esi)
59c604:	8b 45 08             	mov    0x8(%ebp),%eax
59c607:	8b 40 e4             	mov    -0x1c(%eax),%eax
59c60a:	89 03                	mov    %eax,(%ebx)
59c60c:	8b 45 08             	mov    0x8(%ebp),%eax
59c60f:	8b 40 f0             	mov    -0x10(%eax),%eax
59c612:	8b 10                	mov    (%eax),%edx
59c614:	ff 52 0c             	call   *0xc(%edx)
59c617:	48                   	dec    %eax
59c618:	85 c0                	test   %eax,%eax
59c61a:	7c 11                	jl     0x59c62d
59c61c:	40                   	inc    %eax
59c61d:	8b 16                	mov    (%esi),%edx
59c61f:	8a 12                	mov    (%edx),%dl
59c621:	8b 0b                	mov    (%ebx),%ecx
59c623:	88 11                	mov    %dl,(%ecx)
59c625:	ff 03                	incl   (%ebx)
59c627:	83 06 03             	addl   $0x3,(%esi)
59c62a:	48                   	dec    %eax
59c62b:	75 f0                	jne    0x59c61d
59c62d:	8b 45 08             	mov    0x8(%ebp),%eax
59c630:	8b 40 f0             	mov    -0x10(%eax),%eax
59c633:	8b 10                	mov    (%eax),%edx
59c635:	ff 52 0c             	call   *0xc(%edx)
59c638:	8b d0                	mov    %eax,%edx
59c63a:	8b 45 08             	mov    0x8(%ebp),%eax
59c63d:	8b 48 e0             	mov    -0x20(%eax),%ecx
59c640:	8b 45 08             	mov    0x8(%ebp),%eax
59c643:	8b 40 e4             	mov    -0x1c(%eax),%eax
59c646:	e8 69 56 06 00       	call   0x601cb4
59c64b:	8b 55 08             	mov    0x8(%ebp),%edx
59c64e:	89 42 dc             	mov    %eax,-0x24(%edx)
59c651:	8b 45 08             	mov    0x8(%ebp),%eax
59c654:	8b 40 e0             	mov    -0x20(%eax),%eax
59c657:	89 03                	mov    %eax,(%ebx)
59c659:	8b 45 08             	mov    0x8(%ebp),%eax
59c65c:	8b 40 d8             	mov    -0x28(%eax),%eax
59c65f:	8b 55 08             	mov    0x8(%ebp),%edx
59c662:	89 42 f8             	mov    %eax,-0x8(%edx)
59c665:	8b 45 08             	mov    0x8(%ebp),%eax
59c668:	83 c0 f4             	add    $0xfffffff4,%eax
59c66b:	50                   	push   %eax
59c66c:	8b 45 08             	mov    0x8(%ebp),%eax
59c66f:	8d 48 f8             	lea    -0x8(%eax),%ecx
59c672:	8b 45 08             	mov    0x8(%ebp),%eax
59c675:	8b 50 dc             	mov    -0x24(%eax),%edx
59c678:	8b c3                	mov    %ebx,%eax
59c67a:	e8 a9 55 06 00       	call   0x601c28
59c67f:	8b 55 08             	mov    0x8(%ebp),%edx
59c682:	89 42 dc             	mov    %eax,-0x24(%edx)
59c685:	8b 45 08             	mov    0x8(%ebp),%eax
59c688:	8b 48 dc             	mov    -0x24(%eax),%ecx
59c68b:	8b 45 08             	mov    0x8(%ebp),%eax
59c68e:	8b 50 d8             	mov    -0x28(%eax),%edx
59c691:	8b 45 08             	mov    0x8(%ebp),%eax
59c694:	8b 40 d4             	mov    -0x2c(%eax),%eax
59c697:	8b 18                	mov    (%eax),%ebx
59c699:	ff 53 0c             	call   *0xc(%ebx)
59c69c:	5f                   	pop    %edi
59c69d:	5e                   	pop    %esi
59c69e:	5b                   	pop    %ebx
59c69f:	5d                   	pop    %ebp
59c6a0:	c3                   	ret
59c6a1:	8d 40 00             	lea    0x0(%eax),%eax
59c6a4:	55                   	push   %ebp
59c6a5:	8b ec                	mov    %esp,%ebp
59c6a7:	51                   	push   %ecx
59c6a8:	53                   	push   %ebx
59c6a9:	56                   	push   %esi
59c6aa:	57                   	push   %edi
59c6ab:	8b 45 08             	mov    0x8(%ebp),%eax
59c6ae:	8b 40 e4             	mov    -0x1c(%eax),%eax
59c6b1:	8b 55 08             	mov    0x8(%ebp),%edx
59c6b4:	89 42 fc             	mov    %eax,-0x4(%edx)
59c6b7:	8b 45 08             	mov    0x8(%ebp),%eax
59c6ba:	8b 40 f0             	mov    -0x10(%eax),%eax
59c6bd:	8b 10                	mov    (%eax),%edx
59c6bf:	ff 52 0c             	call   *0xc(%edx)
59c6c2:	85 c0                	test   %eax,%eax
59c6c4:	79 03                	jns    0x59c6c9
59c6c6:	83 c0 07             	add    $0x7,%eax
59c6c9:	c1 f8 03             	sar    $0x3,%eax
59c6cc:	8b 55 08             	mov    0x8(%ebp),%edx
59c6cf:	89 42 dc             	mov    %eax,-0x24(%edx)
59c6d2:	8b 45 08             	mov    0x8(%ebp),%eax
59c6d5:	8b 40 f0             	mov    -0x10(%eax),%eax
59c6d8:	8b 10                	mov    (%eax),%edx
59c6da:	ff 52 0c             	call   *0xc(%edx)
59c6dd:	a8 07                	test   $0x7,%al
59c6df:	74 06                	je     0x59c6e7
59c6e1:	8b 45 08             	mov    0x8(%ebp),%eax
59c6e4:	ff 40 dc             	incl   -0x24(%eax)
59c6e7:	8b 45 08             	mov    0x8(%ebp),%eax
59c6ea:	8b 40 f0             	mov    -0x10(%eax),%eax
59c6ed:	8b 10                	mov    (%eax),%edx
59c6ef:	ff 52 08             	call   *0x8(%edx)
59c6f2:	8b f0                	mov    %eax,%esi
59c6f4:	4e                   	dec    %esi
59c6f5:	85 f6                	test   %esi,%esi
59c6f7:	7c 69                	jl     0x59c762
59c6f9:	46                   	inc    %esi
59c6fa:	33 db                	xor    %ebx,%ebx
59c6fc:	8b 45 08             	mov    0x8(%ebp),%eax
59c6ff:	8b 40 f0             	mov    -0x10(%eax),%eax
59c702:	8b d3                	mov    %ebx,%edx
59c704:	8b 08                	mov    (%eax),%ecx
59c706:	ff 11                	call   *(%ecx)
59c708:	8b d0                	mov    %eax,%edx
59c70a:	8b 45 08             	mov    0x8(%ebp),%eax
59c70d:	8b 48 dc             	mov    -0x24(%eax),%ecx
59c710:	8b 45 08             	mov    0x8(%ebp),%eax
59c713:	8b 40 fc             	mov    -0x4(%eax),%eax
59c716:	e8 a5 b7 e6 ff       	call   0x407ec0
59c71b:	8b 45 08             	mov    0x8(%ebp),%eax
59c71e:	8b 40 dc             	mov    -0x24(%eax),%eax
59c721:	8b 55 08             	mov    0x8(%ebp),%edx
59c724:	01 42 fc             	add    %eax,-0x4(%edx)
59c727:	8b 45 08             	mov    0x8(%ebp),%eax
59c72a:	8b 40 08             	mov    0x8(%eax),%eax
59c72d:	66 83 78 02 00       	cmpw   $0x0,0x2(%eax)
59c732:	74 2a                	je     0x59c75e
59c734:	89 5d fc             	mov    %ebx,-0x4(%ebp)
59c737:	db 45 fc             	fildl  -0x4(%ebp)
59c73a:	8b 45 08             	mov    0x8(%ebp),%eax
59c73d:	8b 40 08             	mov    0x8(%eax),%eax
59c740:	dc 48 18             	fmull  0x18(%eax)
59c743:	e8 84 65 e6 ff       	call   0x402ccc
59c748:	8b c8                	mov    %eax,%ecx
59c74a:	8b 45 08             	mov    0x8(%ebp),%eax
59c74d:	8b 78 08             	mov    0x8(%eax),%edi
59c750:	8b 45 08             	mov    0x8(%ebp),%eax
59c753:	8b 50 08             	mov    0x8(%eax),%edx
59c756:	8b 52 08             	mov    0x8(%edx),%edx
59c759:	8b 47 04             	mov    0x4(%edi),%eax
59c75c:	ff 17                	call   *(%edi)
59c75e:	43                   	inc    %ebx
59c75f:	4e                   	dec    %esi
59c760:	75 9a                	jne    0x59c6fc
59c762:	8b 45 08             	mov    0x8(%ebp),%eax
59c765:	8b 40 f0             	mov    -0x10(%eax),%eax
59c768:	8b 10                	mov    (%eax),%edx
59c76a:	ff 52 08             	call   *0x8(%edx)
59c76d:	8b d0                	mov    %eax,%edx
59c76f:	8b 45 08             	mov    0x8(%ebp),%eax
59c772:	0f af 50 dc          	imul   -0x24(%eax),%edx
59c776:	8b 45 08             	mov    0x8(%ebp),%eax
59c779:	8b 48 e0             	mov    -0x20(%eax),%ecx
59c77c:	8b 45 08             	mov    0x8(%ebp),%eax
59c77f:	8b 40 e4             	mov    -0x1c(%eax),%eax
59c782:	e8 2d 55 06 00       	call   0x601cb4
59c787:	8b 55 08             	mov    0x8(%ebp),%edx
59c78a:	89 42 dc             	mov    %eax,-0x24(%edx)
59c78d:	8b 45 08             	mov    0x8(%ebp),%eax
59c790:	8b 40 e0             	mov    -0x20(%eax),%eax
59c793:	8b 55 08             	mov    0x8(%ebp),%edx
59c796:	89 42 fc             	mov    %eax,-0x4(%edx)
59c799:	8b 45 08             	mov    0x8(%ebp),%eax
59c79c:	8b 40 d8             	mov    -0x28(%eax),%eax
59c79f:	8b 55 08             	mov    0x8(%ebp),%edx
59c7a2:	89 42 f8             	mov    %eax,-0x8(%edx)
59c7a5:	8b 45 08             	mov    0x8(%ebp),%eax
59c7a8:	83 c0 f4             	add    $0xfffffff4,%eax
59c7ab:	50                   	push   %eax
59c7ac:	8b 45 08             	mov    0x8(%ebp),%eax
59c7af:	8d 48 f8             	lea    -0x8(%eax),%ecx
59c7b2:	8b 45 08             	mov    0x8(%ebp),%eax
59c7b5:	8b 50 dc             	mov    -0x24(%eax),%edx
59c7b8:	8b 45 08             	mov    0x8(%ebp),%eax
59c7bb:	83 c0 fc             	add    $0xfffffffc,%eax
59c7be:	e8 65 54 06 00       	call   0x601c28
59c7c3:	8b 55 08             	mov    0x8(%ebp),%edx
59c7c6:	89 42 dc             	mov    %eax,-0x24(%edx)
59c7c9:	8b 45 08             	mov    0x8(%ebp),%eax
59c7cc:	8b 48 dc             	mov    -0x24(%eax),%ecx
59c7cf:	8b 45 08             	mov    0x8(%ebp),%eax
59c7d2:	8b 50 d8             	mov    -0x28(%eax),%edx
59c7d5:	8b 45 08             	mov    0x8(%ebp),%eax
59c7d8:	8b 40 d4             	mov    -0x2c(%eax),%eax
59c7db:	8b 18                	mov    (%eax),%ebx
59c7dd:	ff 53 0c             	call   *0xc(%ebx)
59c7e0:	5f                   	pop    %edi
59c7e1:	5e                   	pop    %esi
59c7e2:	5b                   	pop    %ebx
59c7e3:	59                   	pop    %ecx
59c7e4:	5d                   	pop    %ebp
59c7e5:	c3                   	ret
59c7e6:	8b c0                	mov    %eax,%eax
59c7e8:	55                   	push   %ebp
59c7e9:	8b ec                	mov    %esp,%ebp
59c7eb:	83 c4 f4             	add    $0xfffffff4,%esp
59c7ee:	53                   	push   %ebx
59c7ef:	56                   	push   %esi
59c7f0:	57                   	push   %edi
59c7f1:	b2 01                	mov    $0x1,%dl
59c7f3:	a1 78 9d 41 00       	mov    0x419d78,%eax
59c7f8:	e8 4b 72 e6 ff       	call   0x403a48
59c7fd:	8b d8                	mov    %eax,%ebx
59c7ff:	33 c0                	xor    %eax,%eax
59c801:	89 45 f8             	mov    %eax,-0x8(%ebp)
59c804:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
59c808:	33 c0                	xor    %eax,%eax
59c80a:	89 45 f4             	mov    %eax,-0xc(%ebp)
59c80d:	8b 45 08             	mov    0x8(%ebp),%eax
59c810:	8b 40 f0             	mov    -0x10(%eax),%eax
59c813:	8b 10                	mov    (%eax),%edx
59c815:	ff 52 08             	call   *0x8(%edx)
59c818:	8b f0                	mov    %eax,%esi
59c81a:	4e                   	dec    %esi
59c81b:	85 f6                	test   %esi,%esi
59c81d:	0f 8c 99 00 00 00    	jl     0x59c8bc
59c823:	46                   	inc    %esi
59c824:	33 ff                	xor    %edi,%edi
59c826:	8b 45 08             	mov    0x8(%ebp),%eax
59c829:	8b 40 d0             	mov    -0x30(%eax),%eax
59c82c:	8b 00                	mov    (%eax),%eax
59c82e:	8a 80 3c 03 00 00    	mov    0x33c(%eax),%al
59c834:	fe c8                	dec    %al
59c836:	74 06                	je     0x59c83e
59c838:	fe c8                	dec    %al
59c83a:	74 3e                	je     0x59c87a
59c83c:	eb 76                	jmp    0x59c8b4
59c83e:	8d 45 ff             	lea    -0x1(%ebp),%eax
59c841:	50                   	push   %eax
59c842:	8d 45 f8             	lea    -0x8(%ebp),%eax
59c845:	50                   	push   %eax
59c846:	8d 45 f4             	lea    -0xc(%ebp),%eax
59c849:	50                   	push   %eax