5585a2:	e8 5d fb ff ff       	call   0x558104
5585a7:	59                   	pop    %ecx
5585a8:	eb 5d                	jmp    0x558607
5585aa:	8b 45 08             	mov    0x8(%ebp),%eax
5585ad:	50                   	push   %eax
5585ae:	8b 93 04 24 00 00    	mov    0x2404(%ebx),%edx
5585b4:	8d 45 f4             	lea    -0xc(%ebp),%eax
5585b7:	66 8b 4d fc          	mov    -0x4(%ebp),%cx
5585bb:	e8 8c f9 ff ff       	call   0x557f4c
5585c0:	59                   	pop    %ecx
5585c1:	eb 44                	jmp    0x558607
5585c3:	8b 45 08             	mov    0x8(%ebp),%eax
5585c6:	50                   	push   %eax
5585c7:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
5585cb:	50                   	push   %eax
5585cc:	8b 83 0c 24 00 00    	mov    0x240c(%ebx),%eax
5585d2:	50                   	push   %eax
5585d3:	8b 8b 04 24 00 00    	mov    0x2404(%ebx),%ecx
5585d9:	8d 45 f4             	lea    -0xc(%ebp),%eax
5585dc:	33 d2                	xor    %edx,%edx
5585de:	e8 d9 f9 ff ff       	call   0x557fbc
5585e3:	59                   	pop    %ecx
5585e4:	eb 21                	jmp    0x558607
5585e6:	8b 45 08             	mov    0x8(%ebp),%eax
5585e9:	50                   	push   %eax
5585ea:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
5585ee:	50                   	push   %eax
5585ef:	8b 83 0c 24 00 00    	mov    0x240c(%ebx),%eax
5585f5:	50                   	push   %eax
5585f6:	8b 8b 04 24 00 00    	mov    0x2404(%ebx),%ecx
5585fc:	8d 45 f4             	lea    -0xc(%ebp),%eax
5585ff:	b2 01                	mov    $0x1,%dl
558601:	e8 b6 f9 ff ff       	call   0x557fbc
558606:	59                   	pop    %ecx
558607:	03 75 fc             	add    -0x4(%ebp),%esi
55860a:	3b fe                	cmp    %esi,%edi
55860c:	0f 8f fd fd ff ff    	jg     0x55840f
558612:	5f                   	pop    %edi
558613:	5e                   	pop    %esi
558614:	5b                   	pop    %ebx
558615:	8b e5                	mov    %ebp,%esp
558617:	5d                   	pop    %ebp
558618:	c3                   	ret
558619:	8d 40 00             	lea    0x0(%eax),%eax
55861c:	55                   	push   %ebp
55861d:	8b ec                	mov    %esp,%ebp
55861f:	83 c4 c4             	add    $0xffffffc4,%esp
558622:	53                   	push   %ebx
558623:	56                   	push   %esi
558624:	57                   	push   %edi
558625:	89 4d e0             	mov    %ecx,-0x20(%ebp)
558628:	89 55 d4             	mov    %edx,-0x2c(%ebp)
55862b:	89 45 f8             	mov    %eax,-0x8(%ebp)
55862e:	8b 75 14             	mov    0x14(%ebp),%esi
558631:	b8 30 26 00 00       	mov    $0x2630,%eax
558636:	e8 71 a1 ea ff       	call   0x4027ac
55863b:	89 45 fc             	mov    %eax,-0x4(%ebp)
55863e:	ba 30 26 00 00       	mov    $0x2630,%edx
558643:	8b 45 fc             	mov    -0x4(%ebp),%eax
558646:	e8 89 f8 ea ff       	call   0x407ed4
55864b:	8b 45 fc             	mov    -0x4(%ebp),%eax
55864e:	89 45 c8             	mov    %eax,-0x38(%ebp)
558651:	33 db                	xor    %ebx,%ebx
558653:	0f bf c3             	movswl %bx,%eax
558656:	8b 55 c8             	mov    -0x38(%ebp),%edx
558659:	c6 84 02 00 23 00 00 	movb   $0xff,0x2300(%edx,%eax,1)
558660:	ff
558661:	43                   	inc    %ebx
558662:	66 81 fb 00 01       	cmp    $0x100,%bx
558667:	75 ea                	jne    0x558653
558669:	8b 45 c8             	mov    -0x38(%ebp),%eax
55866c:	c6 80 00 24 00 00 00 	movb   $0x0,0x2400(%eax)
558673:	8b 45 f8             	mov    -0x8(%ebp),%eax
558676:	e8 3d 60 ec ff       	call   0x41e6b8
55867b:	8b 55 c8             	mov    -0x38(%ebp),%edx
55867e:	89 82 24 26 00 00    	mov    %eax,0x2624(%edx)
558684:	8b 45 c8             	mov    -0x38(%ebp),%eax
558687:	66 c7 80 14 24 00 00 	movw   $0x0,0x2414(%eax)
55868e:	00 00
558690:	8b 45 c8             	mov    -0x38(%ebp),%eax
558693:	66 c7 80 16 24 00 00 	movw   $0x0,0x2416(%eax)
55869a:	00 00
55869c:	c6 45 d0 01          	movb   $0x1,-0x30(%ebp)
5586a0:	55                   	push   %ebp
5586a1:	8d 45 de             	lea    -0x22(%ebp),%eax
5586a4:	50                   	push   %eax
5586a5:	8d 45 d1             	lea    -0x2f(%ebp),%eax
5586a8:	50                   	push   %eax
5586a9:	8d 4d d2             	lea    -0x2e(%ebp),%ecx
5586ac:	8d 55 da             	lea    -0x26(%ebp),%edx
5586af:	8d 45 d0             	lea    -0x30(%ebp),%eax
5586b2:	e8 5d ef ff ff       	call   0x557614
5586b7:	59                   	pop    %ecx
5586b8:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
5586bc:	0f 84 25 03 00 00    	je     0x5589e7
5586c2:	0f b7 45 da          	movzwl -0x26(%ebp),%eax
5586c6:	8b 55 e0             	mov    -0x20(%ebp),%edx
5586c9:	8b 12                	mov    (%edx),%edx
5586cb:	89 42 14             	mov    %eax,0x14(%edx)
5586ce:	0f b7 45 d2          	movzwl -0x2e(%ebp),%eax
5586d2:	8b 55 e0             	mov    -0x20(%ebp),%edx
5586d5:	8b 12                	mov    (%edx),%edx
5586d7:	89 42 18             	mov    %eax,0x18(%edx)
5586da:	8b 15 9c 71 6a 00    	mov    0x6a719c,%edx
5586e0:	8b 12                	mov    (%edx),%edx
5586e2:	8b 45 e0             	mov    -0x20(%ebp),%eax
5586e5:	8b 00                	mov    (%eax),%eax
5586e7:	e8 d0 4f 07 00       	call   0x5cd6bc
5586ec:	8b 15 00 71 6a 00    	mov    0x6a7100,%edx
5586f2:	8b 12                	mov    (%edx),%edx
5586f4:	8b 45 e0             	mov    -0x20(%ebp),%eax
5586f7:	8b 00                	mov    (%eax),%eax
5586f9:	e8 ee 4f 07 00       	call   0x5cd6ec
5586fe:	0f bf 45 de          	movswl -0x22(%ebp),%eax
558702:	83 f8 10             	cmp    $0x10,%eax
558705:	7f 0f                	jg     0x558716
558707:	74 50                	je     0x558759
558709:	48                   	dec    %eax
55870a:	74 19                	je     0x558725
55870c:	83 e8 07             	sub    $0x7,%eax
55870f:	74 2e                	je     0x55873f
558711:	e9 8f 00 00 00       	jmp    0x5587a5
558716:	83 e8 18             	sub    $0x18,%eax
558719:	74 58                	je     0x558773
55871b:	83 e8 08             	sub    $0x8,%eax
55871e:	74 6d                	je     0x55878d
558720:	e9 80 00 00 00       	jmp    0x5587a5
558725:	8b 45 e0             	mov    -0x20(%ebp),%eax
558728:	8b 00                	mov    (%eax),%eax
55872a:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%eax)
558731:	8b 45 e0             	mov    -0x20(%ebp),%eax
558734:	8b 00                	mov    (%eax),%eax
558736:	c7 40 10 01 00 00 00 	movl   $0x1,0x10(%eax)
55873d:	eb 66                	jmp    0x5587a5
55873f:	8b 45 e0             	mov    -0x20(%ebp),%eax
558742:	8b 00                	mov    (%eax),%eax
558744:	c7 40 08 08 00 00 00 	movl   $0x8,0x8(%eax)
55874b:	8b 45 e0             	mov    -0x20(%ebp),%eax
55874e:	8b 00                	mov    (%eax),%eax
558750:	c7 40 10 01 00 00 00 	movl   $0x1,0x10(%eax)
558757:	eb 4c                	jmp    0x5587a5
558759:	8b 45 e0             	mov    -0x20(%ebp),%eax
55875c:	8b 00                	mov    (%eax),%eax
55875e:	c7 40 08 05 00 00 00 	movl   $0x5,0x8(%eax)
558765:	8b 45 e0             	mov    -0x20(%ebp),%eax
558768:	8b 00                	mov    (%eax),%eax
55876a:	c7 40 10 03 00 00 00 	movl   $0x3,0x10(%eax)
558771:	eb 32                	jmp    0x5587a5
558773:	8b 45 e0             	mov    -0x20(%ebp),%eax
558776:	8b 00                	mov    (%eax),%eax
558778:	c7 40 08 08 00 00 00 	movl   $0x8,0x8(%eax)
55877f:	8b 45 e0             	mov    -0x20(%ebp),%eax
558782:	8b 00                	mov    (%eax),%eax
558784:	c7 40 10 03 00 00 00 	movl   $0x3,0x10(%eax)
55878b:	eb 18                	jmp    0x5587a5
55878d:	8b 45 e0             	mov    -0x20(%ebp),%eax
558790:	8b 00                	mov    (%eax),%eax
558792:	c7 40 08 08 00 00 00 	movl   $0x8,0x8(%eax)
558799:	8b 45 e0             	mov    -0x20(%ebp),%eax
55879c:	8b 00                	mov    (%eax),%eax
55879e:	c7 40 10 04 00 00 00 	movl   $0x4,0x10(%eax)
5587a5:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
5587a9:	0f 85 3e 02 00 00    	jne    0x5589ed
5587af:	0f b7 45 d2          	movzwl -0x2e(%ebp),%eax
5587b3:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5587b6:	db 45 c4             	fildl  -0x3c(%ebp)
5587b9:	d8 3d 34 8a 55 00    	fdivrs 0x558a34
5587bf:	dd 5e 18             	fstpl  0x18(%esi)
5587c2:	9b                   	fwait
5587c3:	33 c0                	xor    %eax,%eax
5587c5:	89 46 0c             	mov    %eax,0xc(%esi)
5587c8:	66 83 7d de 01       	cmpw   $0x1,-0x22(%ebp)
5587cd:	75 22                	jne    0x5587f1
5587cf:	6a 01                	push   $0x1
5587d1:	0f b7 4d d2          	movzwl -0x2e(%ebp),%ecx
5587d5:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
5587d9:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5587dc:	8b 18                	mov    (%eax),%ebx
5587de:	ff 53 24             	call   *0x24(%ebx)
5587e1:	0f b7 45 da          	movzwl -0x26(%ebp),%eax
5587e5:	83 c0 07             	add    $0x7,%eax
5587e8:	c1 e8 03             	shr    $0x3,%eax
5587eb:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
5587ef:	eb 1d                	jmp    0x55880e
5587f1:	6a 05                	push   $0x5
5587f3:	0f b7 4d d2          	movzwl -0x2e(%ebp),%ecx
5587f7:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
5587fb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5587fe:	8b 18                	mov    (%eax),%ebx
558800:	ff 53 24             	call   *0x24(%ebx)
558803:	66 8b 45 da          	mov    -0x26(%ebp),%ax
558807:	8d 04 40             	lea    (%eax,%eax,2),%eax
55880a:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
55880e:	33 d2                	xor    %edx,%edx
558810:	55                   	push   %ebp
558811:	68 e0 89 55 00       	push   $0x5589e0
558816:	64 ff 32             	push   %fs:(%edx)
558819:	64 89 22             	mov    %esp,%fs:(%edx)
55881c:	0f b7 45 dc          	movzwl -0x24(%ebp),%eax
558820:	e8 87 9f ea ff       	call   0x4027ac
558825:	8b 55 c8             	mov    -0x38(%ebp),%edx
558828:	89 82 04 24 00 00    	mov    %eax,0x2404(%edx)
55882e:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
558832:	75 7e                	jne    0x5588b2
558834:	66 83 7d de 20       	cmpw   $0x20,-0x22(%ebp)
558839:	75 06                	jne    0x558841
55883b:	f6 45 f7 08          	testb  $0x8,-0x9(%ebp)
55883f:	75 06                	jne    0x558847
558841:	80 7d ed 20          	cmpb   $0x20,-0x13(%ebp)
558845:	75 6b                	jne    0x5588b2
558847:	8b 45 0c             	mov    0xc(%ebp),%eax
55884a:	83 38 00             	cmpl   $0x0,(%eax)
55884d:	75 11                	jne    0x558860
55884f:	b2 01                	mov    $0x1,%dl
558851:	a1 a4 fd 5e 00       	mov    0x5efda4,%eax
558856:	e8 19 a3 09 00       	call   0x5f2b74
55885b:	8b 55 0c             	mov    0xc(%ebp),%edx
55885e:	89 02                	mov    %eax,(%edx)
558860:	6a 08                	push   $0x8
558862:	0f b7 4d d2          	movzwl -0x2e(%ebp),%ecx
558866:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
55886a:	8b 45 0c             	mov    0xc(%ebp),%eax
55886d:	8b 00                	mov    (%eax),%eax
55886f:	e8 cc a6 09 00       	call   0x5f2f40
558874:	8b 45 0c             	mov    0xc(%ebp),%eax
558877:	8b 00                	mov    (%eax),%eax
558879:	ba ff 00 00 00       	mov    $0xff,%edx
55887e:	e8 a1 be 09 00       	call   0x5f4724
558883:	0f b7 45 da          	movzwl -0x26(%ebp),%eax
558887:	e8 20 9f ea ff       	call   0x4027ac
55888c:	8b d8                	mov    %eax,%ebx
55888e:	8b 45 c8             	mov    -0x38(%ebp),%eax
558891:	89 98 0c 24 00 00    	mov    %ebx,0x240c(%eax)
558897:	0f b7 55 da          	movzwl -0x26(%ebp),%edx
55889b:	8b c3                	mov    %ebx,%eax
55889d:	b9 ff 00 00 00       	mov    $0xff,%ecx
5588a2:	e8 99 a9 ea ff       	call   0x403240
5588a7:	8b 45 0c             	mov    0xc(%ebp),%eax
5588aa:	8b 00                	mov    (%eax),%eax
5588ac:	c6 40 68 00          	movb   $0x0,0x68(%eax)
5588b0:	eb 0b                	jmp    0x5588bd
5588b2:	8b 45 c8             	mov    -0x38(%ebp),%eax
5588b5:	33 d2                	xor    %edx,%edx
5588b7:	89 90 0c 24 00 00    	mov    %edx,0x240c(%eax)
5588bd:	8a 45 f7             	mov    -0x9(%ebp),%al
5588c0:	8b d0                	mov    %eax,%edx
5588c2:	80 e2 20             	and    $0x20,%dl
5588c5:	80 fa 20             	cmp    $0x20,%dl
5588c8:	74 13                	je     0x5588dd
5588ca:	24 10                	and    $0x10,%al
5588cc:	3c 10                	cmp    $0x10,%al
5588ce:	74 0d                	je     0x5588dd
5588d0:	66 8b 45 d2          	mov    -0x2e(%ebp),%ax
5588d4:	48                   	dec    %eax
5588d5:	66 c7 45 cc ff ff    	movw   $0xffff,-0x34(%ebp)
5588db:	eb 08                	jmp    0x5588e5
5588dd:	33 c0                	xor    %eax,%eax
5588df:	66 c7 45 cc 01 00    	movw   $0x1,-0x34(%ebp)
5588e5:	8b 55 c8             	mov    -0x38(%ebp),%edx
5588e8:	c7 82 2c 26 00 00 ff 	movl   $0xffffffff,0x262c(%edx)
5588ef:	ff ff ff
5588f2:	8b d8                	mov    %eax,%ebx
5588f4:	66 c7 45 ce 00 00    	movw   $0x0,-0x32(%ebp)
5588fa:	8a 45 e8             	mov    -0x18(%ebp),%al
5588fd:	48                   	dec    %eax
5588fe:	2c 03                	sub    $0x3,%al
558900:	72 0a                	jb     0x55890c
558902:	04 fb                	add    $0xfb,%al
558904:	2c 03                	sub    $0x3,%al
558906:	0f 83 a0 00 00 00    	jae    0x5589ac
55890c:	55                   	push   %ebp
55890d:	e8 e6 f9 ff ff       	call   0x5582f8
558912:	59                   	pop    %ecx
558913:	55                   	push   %ebp
558914:	8b 45 c8             	mov    -0x38(%ebp),%eax
558917:	8b 80 04 24 00 00    	mov    0x2404(%eax),%eax
55891d:	e8 0a f6 ff ff       	call   0x557f2c
558922:	59                   	pop    %ecx
558923:	0f bf fb             	movswl %bx,%edi
558926:	8b d7                	mov    %edi,%edx
558928:	8b 45 d4             	mov    -0x2c(%ebp),%eax
55892b:	8b 08                	mov    (%eax),%ecx
55892d:	ff 11                	call   *(%ecx)
55892f:	0f b7 4d dc          	movzwl -0x24(%ebp),%ecx
558933:	50                   	push   %eax
558934:	8b 45 c8             	mov    -0x38(%ebp),%eax
558937:	8b 80 04 24 00 00    	mov    0x2404(%eax),%eax
55893d:	5a                   	pop    %edx
55893e:	e8 dd a0 ea ff       	call   0x402a20
558943:	8b 45 c8             	mov    -0x38(%ebp),%eax
558946:	83 b8 0c 24 00 00 00 	cmpl   $0x0,0x240c(%eax)
55894d:	74 1e                	je     0x55896d
55894f:	8b d7                	mov    %edi,%edx
558951:	8b 45 0c             	mov    0xc(%ebp),%eax
558954:	8b 00                	mov    (%eax),%eax
558956:	e8 b9 bd 09 00       	call   0x5f4714
55895b:	0f b7 4d da          	movzwl -0x26(%ebp),%ecx
55895f:	8b 55 c8             	mov    -0x38(%ebp),%edx
558962:	8b 92 0c 24 00 00    	mov    0x240c(%edx),%edx
558968:	e8 53 f5 ea ff       	call   0x407ec0
55896d:	66 ff 45 ce          	incw   -0x32(%ebp)
558971:	66 03 5d cc          	add    -0x34(%ebp),%bx
558975:	ff 46 0c             	incl   0xc(%esi)
558978:	66 83 7e 02 00       	cmpw   $0x0,0x2(%esi)
55897d:	74 15                	je     0x558994
55897f:	db 46 0c             	fildl  0xc(%esi)
558982:	dc 4e 18             	fmull  0x18(%esi)
558985:	e8 42 a3 ea ff       	call   0x402ccc
55898a:	8b c8                	mov    %eax,%ecx
55898c:	8b 56 08             	mov    0x8(%esi),%edx
55898f:	8b 46 04             	mov    0x4(%esi),%eax
558992:	ff 16                	call   *(%esi)
558994:	66 8b 45 ce          	mov    -0x32(%ebp),%ax
558998:	66 3b 45 d2          	cmp    -0x2e(%ebp),%ax
55899c:	73 14                	jae    0x5589b2
55899e:	8b 46 28             	mov    0x28(%esi),%eax
5589a1:	80 38 01             	cmpb   $0x1,(%eax)
5589a4:	0f 85 62 ff ff ff    	jne    0x55890c
5589aa:	eb 06                	jmp    0x5589b2
5589ac:	8b 46 28             	mov    0x28(%esi),%eax
5589af:	c6 00 01             	movb   $0x1,(%eax)
5589b2:	33 c0                	xor    %eax,%eax
5589b4:	5a                   	pop    %edx
5589b5:	59                   	pop    %ecx
5589b6:	59                   	pop    %ecx
5589b7:	64 89 10             	mov    %edx,%fs:(%eax)
5589ba:	68 ed 89 55 00       	push   $0x5589ed
5589bf:	8b 45 c8             	mov    -0x38(%ebp),%eax
5589c2:	8b 80 04 24 00 00    	mov    0x2404(%eax),%eax
5589c8:	e8 ff 9d ea ff       	call   0x4027cc
5589cd:	8b 45 c8             	mov    -0x38(%ebp),%eax
5589d0:	8b 80 0c 24 00 00    	mov    0x240c(%eax),%eax
5589d6:	85 c0                	test   %eax,%eax
5589d8:	74 05                	je     0x5589df
5589da:	e8 ed 9d ea ff       	call   0x4027cc
5589df:	c3                   	ret
5589e0:	e9 27 b8 ea ff       	jmp    0x40420c
5589e5:	eb d8                	jmp    0x5589bf
5589e7:	8b 46 28             	mov    0x28(%esi),%eax
5589ea:	c6 00 01             	movb   $0x1,(%eax)
5589ed:	ba 30 26 00 00       	mov    $0x2630,%edx
5589f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5589f5:	e8 d2 9d ea ff       	call   0x4027cc
5589fa:	8b 45 0c             	mov    0xc(%ebp),%eax
5589fd:	83 38 00             	cmpl   $0x0,(%eax)
558a00:	74 29                	je     0x558a2b
558a02:	8b 45 0c             	mov    0xc(%ebp),%eax
558a05:	8b 00                	mov    (%eax),%eax
558a07:	e8 e0 a3 09 00       	call   0x5f2dec
558a0c:	8b 45 0c             	mov    0xc(%ebp),%eax