5f52b5:	0f 84 00 01 00 00    	je     0x5f53bb
5f52bb:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
5f52be:	8d 51 08             	lea    0x8(%ecx),%edx
5f52c1:	3b ca                	cmp    %edx,%ecx
5f52c3:	1b c0                	sbb    %eax,%eax
5f52c5:	23 c2                	and    %edx,%eax
5f52c7:	0f 84 3a 01 00 00    	je     0x5f5407
5f52cd:	3d 00 04 00 00       	cmp    $0x400,%eax
5f52d2:	77 17                	ja     0x5f52eb
5f52d4:	e8 97 bf fd ff       	call   0x5d1270
5f52d9:	8b dc                	mov    %esp,%ebx
5f52db:	85 db                	test   %ebx,%ebx
5f52dd:	0f 84 24 01 00 00    	je     0x5f5407
5f52e3:	c7 03 cc cc 00 00    	movl   $0xcccc,(%ebx)
5f52e9:	eb 17                	jmp    0x5f5302
5f52eb:	50                   	push   %eax
5f52ec:	e8 6b 5f ff ff       	call   0x5eb25c
5f52f1:	8b d8                	mov    %eax,%ebx
5f52f3:	59                   	pop    %ecx
5f52f4:	85 db                	test   %ebx,%ebx
5f52f6:	0f 84 0b 01 00 00    	je     0x5f5407
5f52fc:	c7 03 dd dd 00 00    	movl   $0xdddd,(%ebx)
5f5302:	83 c3 08             	add    $0x8,%ebx
5f5305:	85 db                	test   %ebx,%ebx
5f5307:	0f 84 fa 00 00 00    	je     0x5f5407
5f530d:	ff 75 dc             	push   -0x24(%ebp)
5f5310:	53                   	push   %ebx
5f5311:	56                   	push   %esi
5f5312:	ff 75 e4             	push   -0x1c(%ebp)
5f5315:	8b 75 24             	mov    0x24(%ebp),%esi
5f5318:	6a 01                	push   $0x1
5f531a:	56                   	push   %esi
5f531b:	e8 21 98 ff ff       	call   0x5eeb41
5f5320:	83 c4 18             	add    $0x18,%esp
5f5323:	85 c0                	test   %eax,%eax
5f5325:	0f 84 d4 00 00 00    	je     0x5f53ff
5f532b:	6a 00                	push   $0x0
5f532d:	6a 00                	push   $0x0
5f532f:	57                   	push   %edi
5f5330:	8b 7d e0             	mov    -0x20(%ebp),%edi
5f5333:	57                   	push   %edi
5f5334:	6a 09                	push   $0x9
5f5336:	56                   	push   %esi
5f5337:	e8 05 98 ff ff       	call   0x5eeb41
5f533c:	83 c4 18             	add    $0x18,%esp
5f533f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5f5342:	85 c0                	test   %eax,%eax
5f5344:	0f 84 b5 00 00 00    	je     0x5f53ff
5f534a:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
5f534d:	8d 51 08             	lea    0x8(%ecx),%edx
5f5350:	3b ca                	cmp    %edx,%ecx
5f5352:	1b c0                	sbb    %eax,%eax
5f5354:	23 c2                	and    %edx,%eax
5f5356:	0f 84 9f 00 00 00    	je     0x5f53fb
5f535c:	3d 00 04 00 00       	cmp    $0x400,%eax
5f5361:	77 17                	ja     0x5f537a
5f5363:	e8 08 bf fd ff       	call   0x5d1270
5f5368:	8b fc                	mov    %esp,%edi
5f536a:	85 ff                	test   %edi,%edi
5f536c:	0f 84 89 00 00 00    	je     0x5f53fb
5f5372:	c7 07 cc cc 00 00    	movl   $0xcccc,(%edi)
5f5378:	eb 13                	jmp    0x5f538d
5f537a:	50                   	push   %eax
5f537b:	e8 dc 5e ff ff       	call   0x5eb25c
5f5380:	8b f8                	mov    %eax,%edi
5f5382:	59                   	pop    %ecx
5f5383:	85 ff                	test   %edi,%edi
5f5385:	74 74                	je     0x5f53fb
5f5387:	c7 07 dd dd 00 00    	movl   $0xdddd,(%edi)
5f538d:	83 c7 08             	add    $0x8,%edi
5f5390:	85 ff                	test   %edi,%edi
5f5392:	74 67                	je     0x5f53fb
5f5394:	ff 75 e4             	push   -0x1c(%ebp)
5f5397:	57                   	push   %edi
5f5398:	ff 75 20             	push   0x20(%ebp)
5f539b:	ff 75 e0             	push   -0x20(%ebp)
5f539e:	6a 01                	push   $0x1
5f53a0:	56                   	push   %esi
5f53a1:	e8 9b 97 ff ff       	call   0x5eeb41
5f53a6:	83 c4 18             	add    $0x18,%esp
5f53a9:	85 c0                	test   %eax,%eax
5f53ab:	75 22                	jne    0x5f53cf
5f53ad:	57                   	push   %edi
5f53ae:	e8 48 bd fd ff       	call   0x5d10fb
5f53b3:	53                   	push   %ebx
5f53b4:	e8 42 bd fd ff       	call   0x5d10fb
5f53b9:	59                   	pop    %ecx
5f53ba:	59                   	pop    %ecx
5f53bb:	33 c0                	xor    %eax,%eax
5f53bd:	8d 65 cc             	lea    -0x34(%ebp),%esp
5f53c0:	5f                   	pop    %edi
5f53c1:	5e                   	pop    %esi
5f53c2:	5b                   	pop    %ebx
5f53c3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5f53c6:	33 cd                	xor    %ebp,%ecx
5f53c8:	e8 59 c6 fd ff       	call   0x5d1a26
5f53cd:	c9                   	leave
5f53ce:	c3                   	ret
5f53cf:	33 c0                	xor    %eax,%eax
5f53d1:	50                   	push   %eax
5f53d2:	50                   	push   %eax
5f53d3:	50                   	push   %eax
5f53d4:	ff 75 e4             	push   -0x1c(%ebp)
5f53d7:	57                   	push   %edi
5f53d8:	ff 75 dc             	push   -0x24(%ebp)
5f53db:	53                   	push   %ebx
5f53dc:	ff 75 10             	push   0x10(%ebp)
5f53df:	ff 75 d8             	push   -0x28(%ebp)
5f53e2:	e8 fe 5a ff ff       	call   0x5eaee5
5f53e7:	57                   	push   %edi
5f53e8:	8b f0                	mov    %eax,%esi
5f53ea:	e8 0c bd fd ff       	call   0x5d10fb
5f53ef:	53                   	push   %ebx
5f53f0:	e8 06 bd fd ff       	call   0x5d10fb
5f53f5:	59                   	pop    %ecx
5f53f6:	59                   	pop    %ecx
5f53f7:	8b c6                	mov    %esi,%eax
5f53f9:	eb c2                	jmp    0x5f53bd
5f53fb:	6a 00                	push   $0x0
5f53fd:	eb af                	jmp    0x5f53ae
5f53ff:	53                   	push   %ebx
5f5400:	e8 f6 bc fd ff       	call   0x5d10fb
5f5405:	eb b3                	jmp    0x5f53ba
5f5407:	6a 00                	push   $0x0
5f5409:	eb f5                	jmp    0x5f5400
5f540b:	6a 02                	push   $0x2
5f540d:	e9 4a fe ff ff       	jmp    0x5f525c
5f5412:	8b ff                	mov    %edi,%edi
5f5414:	55                   	push   %ebp
5f5415:	8b ec                	mov    %esp,%ebp
5f5417:	83 ec 10             	sub    $0x10,%esp
5f541a:	ff 75 08             	push   0x8(%ebp)
5f541d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5f5420:	e8 b0 58 fe ff       	call   0x5dacd5
5f5425:	ff 75 24             	push   0x24(%ebp)
5f5428:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f542b:	ff 75 20             	push   0x20(%ebp)
5f542e:	ff 75 1c             	push   0x1c(%ebp)
5f5431:	ff 75 18             	push   0x18(%ebp)
5f5434:	ff 75 14             	push   0x14(%ebp)
5f5437:	ff 75 10             	push   0x10(%ebp)
5f543a:	ff 75 0c             	push   0xc(%ebp)
5f543d:	50                   	push   %eax
5f543e:	e8 30 fd ff ff       	call   0x5f5173
5f5443:	83 c4 20             	add    $0x20,%esp
5f5446:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5f544a:	74 0a                	je     0x5f5456
5f544c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5f544f:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5f5456:	c9                   	leave
5f5457:	c3                   	ret
5f5458:	8b ff                	mov    %edi,%edi
5f545a:	53                   	push   %ebx
5f545b:	8b dc                	mov    %esp,%ebx
5f545d:	51                   	push   %ecx
5f545e:	51                   	push   %ecx
5f545f:	83 e4 f0             	and    $0xfffffff0,%esp
5f5462:	83 c4 04             	add    $0x4,%esp
5f5465:	55                   	push   %ebp
5f5466:	8b 6b 04             	mov    0x4(%ebx),%ebp
5f5469:	89 6c 24 04          	mov    %ebp,0x4(%esp)
5f546d:	8b ec                	mov    %esp,%ebp
5f546f:	81 ec 88 00 00 00    	sub    $0x88,%esp
5f5475:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5f547a:	33 c5                	xor    %ebp,%eax
5f547c:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f547f:	8b 43 10             	mov    0x10(%ebx),%eax
5f5482:	56                   	push   %esi
5f5483:	8b 73 0c             	mov    0xc(%ebx),%esi
5f5486:	57                   	push   %edi
5f5487:	0f b7 08             	movzwl (%eax),%ecx
5f548a:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
5f5490:	8b 06                	mov    (%esi),%eax
5f5492:	83 e8 01             	sub    $0x1,%eax
5f5495:	74 2f                	je     0x5f54c6
5f5497:	83 e8 01             	sub    $0x1,%eax
5f549a:	74 26                	je     0x5f54c2
5f549c:	83 e8 01             	sub    $0x1,%eax
5f549f:	74 1d                	je     0x5f54be
5f54a1:	83 e8 01             	sub    $0x1,%eax
5f54a4:	74 14                	je     0x5f54ba
5f54a6:	83 e8 01             	sub    $0x1,%eax
5f54a9:	74 1b                	je     0x5f54c6
5f54ab:	48                   	dec    %eax
5f54ac:	83 e8 01             	sub    $0x1,%eax
5f54af:	74 71                	je     0x5f5522
5f54b1:	83 e8 01             	sub    $0x1,%eax
5f54b4:	75 6c                	jne    0x5f5522
5f54b6:	6a 10                	push   $0x10
5f54b8:	eb 0e                	jmp    0x5f54c8
5f54ba:	6a 12                	push   $0x12
5f54bc:	eb 0a                	jmp    0x5f54c8
5f54be:	6a 11                	push   $0x11
5f54c0:	eb 06                	jmp    0x5f54c8
5f54c2:	6a 04                	push   $0x4
5f54c4:	eb 02                	jmp    0x5f54c8
5f54c6:	6a 08                	push   $0x8
5f54c8:	5f                   	pop    %edi
5f54c9:	51                   	push   %ecx
5f54ca:	8d 46 18             	lea    0x18(%esi),%eax
5f54cd:	50                   	push   %eax
5f54ce:	57                   	push   %edi
5f54cf:	e8 2e 46 ff ff       	call   0x5e9b02
5f54d4:	83 c4 0c             	add    $0xc,%esp
5f54d7:	85 c0                	test   %eax,%eax
5f54d9:	75 47                	jne    0x5f5522
5f54db:	8b 4b 08             	mov    0x8(%ebx),%ecx
5f54de:	83 f9 10             	cmp    $0x10,%ecx
5f54e1:	74 10                	je     0x5f54f3
5f54e3:	83 f9 16             	cmp    $0x16,%ecx
5f54e6:	74 0b                	je     0x5f54f3
5f54e8:	83 f9 1d             	cmp    $0x1d,%ecx
5f54eb:	74 06                	je     0x5f54f3
5f54ed:	83 65 c0 fe          	andl   $0xfffffffe,-0x40(%ebp)
5f54f1:	eb 12                	jmp    0x5f5505
5f54f3:	8b 45 c0             	mov    -0x40(%ebp),%eax
5f54f6:	dd 46 10             	fldl   0x10(%esi)
5f54f9:	83 e0 e3             	and    $0xffffffe3,%eax
5f54fc:	83 c8 03             	or     $0x3,%eax
5f54ff:	dd 5d b0             	fstpl  -0x50(%ebp)
5f5502:	89 45 c0             	mov    %eax,-0x40(%ebp)
5f5505:	8d 46 18             	lea    0x18(%esi),%eax
5f5508:	50                   	push   %eax
5f5509:	8d 46 08             	lea    0x8(%esi),%eax
5f550c:	50                   	push   %eax
5f550d:	51                   	push   %ecx
5f550e:	57                   	push   %edi
5f550f:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
5f5515:	50                   	push   %eax
5f5516:	8d 45 80             	lea    -0x80(%ebp),%eax
5f5519:	50                   	push   %eax
5f551a:	e8 63 48 ff ff       	call   0x5e9d82
5f551f:	83 c4 18             	add    $0x18,%esp
5f5522:	68 ff ff 00 00       	push   $0xffff
5f5527:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
5f552d:	e8 28 8b ff ff       	call   0x5ee05a
5f5532:	83 3e 08             	cmpl   $0x8,(%esi)
5f5535:	59                   	pop    %ecx
5f5536:	59                   	pop    %ecx
5f5537:	74 14                	je     0x5f554d
5f5539:	e8 61 42 ff ff       	call   0x5e979f
5f553e:	84 c0                	test   %al,%al
5f5540:	74 0b                	je     0x5f554d
5f5542:	56                   	push   %esi
5f5543:	e8 83 42 ff ff       	call   0x5e97cb
5f5548:	59                   	pop    %ecx
5f5549:	85 c0                	test   %eax,%eax
5f554b:	75 08                	jne    0x5f5555
5f554d:	ff 36                	push   (%esi)
5f554f:	e8 42 4b ff ff       	call   0x5ea096
5f5554:	59                   	pop    %ecx
5f5555:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5f5558:	5f                   	pop    %edi
5f5559:	33 cd                	xor    %ebp,%ecx
5f555b:	5e                   	pop    %esi
5f555c:	e8 c5 c4 fd ff       	call   0x5d1a26
5f5561:	8b e5                	mov    %ebp,%esp
5f5563:	5d                   	pop    %ebp
5f5564:	8b e3                	mov    %ebx,%esp
5f5566:	5b                   	pop    %ebx
5f5567:	c3                   	ret
5f5568:	8b ff                	mov    %edi,%edi
5f556a:	55                   	push   %ebp
5f556b:	8b ec                	mov    %esp,%ebp
5f556d:	66 8b 4d 0e          	mov    0xe(%ebp),%cx
5f5571:	ba f0 7f 00 00       	mov    $0x7ff0,%edx
5f5576:	66 8b c1             	mov    %cx,%ax
5f5579:	66 23 c2             	and    %dx,%ax
5f557c:	66 3b c2             	cmp    %dx,%ax
5f557f:	75 33                	jne    0x5f55b4
5f5581:	dd 45 08             	fldl   0x8(%ebp)
5f5584:	51                   	push   %ecx
5f5585:	51                   	push   %ecx
5f5586:	dd 1c 24             	fstpl  (%esp)
5f5589:	e8 d8 89 ff ff       	call   0x5edf66
5f558e:	59                   	pop    %ecx
5f558f:	59                   	pop    %ecx
5f5590:	83 e8 01             	sub    $0x1,%eax
5f5593:	74 18                	je     0x5f55ad
5f5595:	83 e8 01             	sub    $0x1,%eax
5f5598:	74 0e                	je     0x5f55a8
5f559a:	83 e8 01             	sub    $0x1,%eax
5f559d:	74 05                	je     0x5f55a4
5f559f:	33 c0                	xor    %eax,%eax
5f55a1:	40                   	inc    %eax
5f55a2:	5d                   	pop    %ebp
5f55a3:	c3                   	ret
5f55a4:	6a 02                	push   $0x2
5f55a6:	eb 02                	jmp    0x5f55aa
5f55a8:	6a 04                	push   $0x4
5f55aa:	58                   	pop    %eax
5f55ab:	5d                   	pop    %ebp
5f55ac:	c3                   	ret
5f55ad:	b8 00 02 00 00       	mov    $0x200,%eax
5f55b2:	5d                   	pop    %ebp
5f55b3:	c3                   	ret
5f55b4:	0f b7 c9             	movzwl %cx,%ecx
5f55b7:	81 e1 00 80 00 00    	and    $0x8000,%ecx
5f55bd:	66 85 c0             	test   %ax,%ax
5f55c0:	75 1e                	jne    0x5f55e0
5f55c2:	f7 45 0c ff ff 0f 00 	testl  $0xfffff,0xc(%ebp)
5f55c9:	75 06                	jne    0x5f55d1
5f55cb:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5f55cf:	74 0f                	je     0x5f55e0
5f55d1:	f7 d9                	neg    %ecx
5f55d3:	1b c9                	sbb    %ecx,%ecx
5f55d5:	83 e1 90             	and    $0xffffff90,%ecx
5f55d8:	8d 81 80 00 00 00    	lea    0x80(%ecx),%eax
5f55de:	5d                   	pop    %ebp
5f55df:	c3                   	ret
5f55e0:	dd 45 08             	fldl   0x8(%ebp)
5f55e3:	d9 ee                	fldz
5f55e5:	da e9                	fucompp
5f55e7:	df e0                	fnstsw %ax
5f55e9:	f6 c4 44             	test   $0x44,%ah
5f55ec:	7a 0c                	jp     0x5f55fa
5f55ee:	f7 d9                	neg    %ecx
5f55f0:	1b c9                	sbb    %ecx,%ecx
5f55f2:	83 e1 e0             	and    $0xffffffe0,%ecx
5f55f5:	8d 41 40             	lea    0x40(%ecx),%eax
5f55f8:	5d                   	pop    %ebp
5f55f9:	c3                   	ret
5f55fa:	f7 d9                	neg    %ecx
5f55fc:	1b c9                	sbb    %ecx,%ecx
5f55fe:	81 e1 08 ff ff ff    	and    $0xffffff08,%ecx
5f5604:	8d 81 00 01 00 00    	lea    0x100(%ecx),%eax
5f560a:	5d                   	pop    %ebp
5f560b:	c3                   	ret
5f560c:	8b ff                	mov    %edi,%edi
5f560e:	55                   	push   %ebp
5f560f:	8b ec                	mov    %esp,%ebp
5f5611:	83 ec 24             	sub    $0x24,%esp
5f5614:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5f5619:	33 c5                	xor    %ebp,%eax
5f561b:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f561e:	8b 4d 08             	mov    0x8(%ebp),%ecx
5f5621:	8b 45 0c             	mov    0xc(%ebp),%eax
5f5624:	53                   	push   %ebx
5f5625:	56                   	push   %esi
5f5626:	8b 75 14             	mov    0x14(%ebp),%esi
5f5629:	89 4d e8             	mov    %ecx,-0x18(%ebp)
5f562c:	8b 4d 18             	mov    0x18(%ebp),%ecx
5f562f:	89 45 e0             	mov    %eax,-0x20(%ebp)
5f5632:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
5f5635:	57                   	push   %edi
5f5636:	85 f6                	test   %esi,%esi
5f5638:	75 05                	jne    0x5f563f
5f563a:	be 88 73 71 00       	mov    $0x717388,%esi
5f563f:	33 d2                	xor    %edx,%edx
5f5641:	33 db                	xor    %ebx,%ebx