5ca356:	8b 4b 04             	mov    0x4(%ebx),%ecx
5ca359:	89 4e 0c             	mov    %ecx,0xc(%esi)
5ca35c:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
5ca363:	8b 47 08             	mov    0x8(%edi),%eax
5ca366:	d9 07                	flds   (%edi)
5ca368:	83 c0 01             	add    $0x1,%eax
5ca36b:	89 45 f0             	mov    %eax,-0x10(%ebp)
5ca36e:	db 45 f0             	fildl  -0x10(%ebp)
5ca371:	79 06                	jns    0x5ca379
5ca373:	d8 05 00 5e 60 00    	fadds  0x605e00
5ca379:	d9 5d f0             	fstps  -0x10(%ebp)
5ca37c:	d9 45 f0             	flds   -0x10(%ebp)
5ca37f:	8b 5f 1c             	mov    0x1c(%edi),%ebx
5ca382:	db 47 1c             	fildl  0x1c(%edi)
5ca385:	85 db                	test   %ebx,%ebx
5ca387:	79 06                	jns    0x5ca38f
5ca389:	d8 05 00 5e 60 00    	fadds  0x605e00
5ca38f:	d9 5d f0             	fstps  -0x10(%ebp)
5ca392:	d9 45 f0             	flds   -0x10(%ebp)
5ca395:	d8 f9                	fdivr  %st(1),%st
5ca397:	df f2                	fcomip %st(2),%st
5ca399:	76 5e                	jbe    0x5ca3f9
5ca39b:	de f1                	fdivp  %st,%st(1)
5ca39d:	83 ec 08             	sub    $0x8,%esp
5ca3a0:	d9 5d f0             	fstps  -0x10(%ebp)
5ca3a3:	d9 45 f0             	flds   -0x10(%ebp)
5ca3a6:	dd 1c 24             	fstpl  (%esp)
5ca3a9:	e8 22 c1 00 00       	call   0x5d64d0
5ca3ae:	d9 5d f0             	fstps  -0x10(%ebp)
5ca3b1:	d9 45 f0             	flds   -0x10(%ebp)
5ca3b4:	83 c4 08             	add    $0x8,%esp
5ca3b7:	e8 64 72 00 00       	call   0x5d1620
5ca3bc:	b9 08 00 00 00       	mov    $0x8,%ecx
5ca3c1:	3b c1                	cmp    %ecx,%eax
5ca3c3:	0f 47 c8             	cmova  %eax,%ecx
5ca3c6:	3b d9                	cmp    %ecx,%ebx
5ca3c8:	73 11                	jae    0x5ca3db
5ca3ca:	81 fb 00 02 00 00    	cmp    $0x200,%ebx
5ca3d0:	73 07                	jae    0x5ca3d9
5ca3d2:	c1 e3 03             	shl    $0x3,%ebx
5ca3d5:	3b d9                	cmp    %ecx,%ebx
5ca3d7:	73 02                	jae    0x5ca3db
5ca3d9:	8b d9                	mov    %ecx,%ebx
5ca3db:	53                   	push   %ebx
5ca3dc:	8b cf                	mov    %edi,%ecx
5ca3de:	e8 7d 04 00 00       	call   0x5ca860
5ca3e3:	ff 75 0c             	push   0xc(%ebp)
5ca3e6:	8d 46 08             	lea    0x8(%esi),%eax
5ca3e9:	8b cf                	mov    %edi,%ecx
5ca3eb:	50                   	push   %eax
5ca3ec:	8d 45 dc             	lea    -0x24(%ebp),%eax
5ca3ef:	50                   	push   %eax
5ca3f0:	e8 2b 67 ff ff       	call   0x5c0b20
5ca3f5:	8b 10                	mov    (%eax),%edx
5ca3f7:	eb 07                	jmp    0x5ca400
5ca3f9:	8b 55 dc             	mov    -0x24(%ebp),%edx
5ca3fc:	dd d8                	fstp   %st(0)
5ca3fe:	dd d8                	fstp   %st(0)
5ca400:	8b 5a 04             	mov    0x4(%edx),%ebx
5ca403:	ff 47 08             	incl   0x8(%edi)
5ca406:	89 16                	mov    %edx,(%esi)
5ca408:	89 5e 04             	mov    %ebx,0x4(%esi)
5ca40b:	89 33                	mov    %esi,(%ebx)
5ca40d:	89 72 04             	mov    %esi,0x4(%edx)
5ca410:	8b 47 18             	mov    0x18(%edi),%eax
5ca413:	23 45 0c             	and    0xc(%ebp),%eax
5ca416:	8b 4f 0c             	mov    0xc(%edi),%ecx
5ca419:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5ca41c:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
5ca423:	8b 3c c1             	mov    (%ecx,%eax,8),%edi
5ca426:	3b 3e                	cmp    (%esi),%edi
5ca428:	8b 75 ec             	mov    -0x14(%ebp),%esi
5ca42b:	75 05                	jne    0x5ca432
5ca42d:	89 34 c1             	mov    %esi,(%ecx,%eax,8)
5ca430:	eb 0f                	jmp    0x5ca441
5ca432:	3b fa                	cmp    %edx,%edi
5ca434:	75 05                	jne    0x5ca43b
5ca436:	89 34 c1             	mov    %esi,(%ecx,%eax,8)
5ca439:	eb 0a                	jmp    0x5ca445
5ca43b:	39 5c c1 04          	cmp    %ebx,0x4(%ecx,%eax,8)
5ca43f:	75 04                	jne    0x5ca445
5ca441:	89 74 c1 04          	mov    %esi,0x4(%ecx,%eax,8)
5ca445:	8b 45 08             	mov    0x8(%ebp),%eax
5ca448:	89 30                	mov    %esi,(%eax)
5ca44a:	c6 40 04 01          	movb   $0x1,0x4(%eax)
5ca44e:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca455:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca458:	5e                   	pop    %esi
5ca459:	5f                   	pop    %edi
5ca45a:	5b                   	pop    %ebx
5ca45b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca462:	8b e5                	mov    %ebp,%esp
5ca464:	5d                   	pop    %ebp
5ca465:	c2 08 00             	ret    $0x8
5ca468:	68 20 64 60 00       	push   $0x606420
5ca46d:	e8 64 67 00 00       	call   0x5d0bd6
5ca472:	cc                   	int3
5ca473:	cc                   	int3
5ca474:	cc                   	int3
5ca475:	cc                   	int3
5ca476:	cc                   	int3
5ca477:	cc                   	int3
5ca478:	cc                   	int3
5ca479:	cc                   	int3
5ca47a:	cc                   	int3
5ca47b:	cc                   	int3
5ca47c:	cc                   	int3
5ca47d:	cc                   	int3
5ca47e:	cc                   	int3
5ca47f:	cc                   	int3
5ca480:	55                   	push   %ebp
5ca481:	8b ec                	mov    %esp,%ebp
5ca483:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca489:	6a ff                	push   $0xffffffff
5ca48b:	68 20 fc 5f 00       	push   $0x5ffc20
5ca490:	50                   	push   %eax
5ca491:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca498:	8b 41 04             	mov    0x4(%ecx),%eax
5ca49b:	85 c0                	test   %eax,%eax
5ca49d:	74 0b                	je     0x5ca4aa
5ca49f:	6a 10                	push   $0x10
5ca4a1:	50                   	push   %eax
5ca4a2:	e8 ae 6d 00 00       	call   0x5d1255
5ca4a7:	83 c4 08             	add    $0x8,%esp
5ca4aa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca4ad:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca4b4:	8b e5                	mov    %ebp,%esp
5ca4b6:	5d                   	pop    %ebp
5ca4b7:	c3                   	ret
5ca4b8:	cc                   	int3
5ca4b9:	cc                   	int3
5ca4ba:	cc                   	int3
5ca4bb:	cc                   	int3
5ca4bc:	cc                   	int3
5ca4bd:	cc                   	int3
5ca4be:	cc                   	int3
5ca4bf:	cc                   	int3
5ca4c0:	55                   	push   %ebp
5ca4c1:	8b ec                	mov    %esp,%ebp
5ca4c3:	6a ff                	push   $0xffffffff
5ca4c5:	68 4d 0a 60 00       	push   $0x600a4d
5ca4ca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca4d0:	50                   	push   %eax
5ca4d1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca4d8:	51                   	push   %ecx
5ca4d9:	89 4d f0             	mov    %ecx,-0x10(%ebp)
5ca4dc:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca4e3:	8b 41 04             	mov    0x4(%ecx),%eax
5ca4e6:	85 c0                	test   %eax,%eax
5ca4e8:	74 0b                	je     0x5ca4f5
5ca4ea:	6a 10                	push   $0x10
5ca4ec:	50                   	push   %eax
5ca4ed:	e8 63 6d 00 00       	call   0x5d1255
5ca4f2:	83 c4 08             	add    $0x8,%esp
5ca4f5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca4f8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca4ff:	8b e5                	mov    %ebp,%esp
5ca501:	5d                   	pop    %ebp
5ca502:	c3                   	ret
5ca503:	cc                   	int3
5ca504:	cc                   	int3
5ca505:	cc                   	int3
5ca506:	cc                   	int3
5ca507:	cc                   	int3
5ca508:	cc                   	int3
5ca509:	cc                   	int3
5ca50a:	cc                   	int3
5ca50b:	cc                   	int3
5ca50c:	cc                   	int3
5ca50d:	cc                   	int3
5ca50e:	cc                   	int3
5ca50f:	cc                   	int3
5ca510:	55                   	push   %ebp
5ca511:	8b ec                	mov    %esp,%ebp
5ca513:	6a ff                	push   $0xffffffff
5ca515:	68 75 0a 60 00       	push   $0x600a75
5ca51a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca520:	50                   	push   %eax
5ca521:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca528:	83 ec 08             	sub    $0x8,%esp
5ca52b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
5ca52e:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca535:	89 4d ec             	mov    %ecx,-0x14(%ebp)
5ca538:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca53f:	e8 2c 78 ff ff       	call   0x5c1d70
5ca544:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca547:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca54e:	8b e5                	mov    %ebp,%esp
5ca550:	5d                   	pop    %ebp
5ca551:	c3                   	ret
5ca552:	cc                   	int3
5ca553:	cc                   	int3
5ca554:	cc                   	int3
5ca555:	cc                   	int3
5ca556:	cc                   	int3
5ca557:	cc                   	int3
5ca558:	cc                   	int3
5ca559:	cc                   	int3
5ca55a:	cc                   	int3
5ca55b:	cc                   	int3
5ca55c:	cc                   	int3
5ca55d:	cc                   	int3
5ca55e:	cc                   	int3
5ca55f:	cc                   	int3
5ca560:	55                   	push   %ebp
5ca561:	8b ec                	mov    %esp,%ebp
5ca563:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca569:	6a ff                	push   $0xffffffff
5ca56b:	68 20 fc 5f 00       	push   $0x5ffc20
5ca570:	50                   	push   %eax
5ca571:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca578:	56                   	push   %esi
5ca579:	57                   	push   %edi
5ca57a:	8b 39                	mov    (%ecx),%edi
5ca57c:	85 ff                	test   %edi,%edi
5ca57e:	74 7b                	je     0x5ca5fb
5ca580:	8b 4f 08             	mov    0x8(%edi),%ecx
5ca583:	85 c9                	test   %ecx,%ecx
5ca585:	74 74                	je     0x5ca5fb
5ca587:	8b 47 1c             	mov    0x1c(%edi),%eax
5ca58a:	c1 e8 03             	shr    $0x3,%eax
5ca58d:	3b c1                	cmp    %ecx,%eax
5ca58f:	76 1d                	jbe    0x5ca5ae
5ca591:	8b 47 04             	mov    0x4(%edi),%eax
5ca594:	8b cf                	mov    %edi,%ecx
5ca596:	50                   	push   %eax
5ca597:	ff 30                	push   (%eax)
5ca599:	e8 62 04 00 00       	call   0x5caa00
5ca59e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca5a1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca5a8:	5f                   	pop    %edi
5ca5a9:	5e                   	pop    %esi
5ca5aa:	8b e5                	mov    %ebp,%esp
5ca5ac:	5d                   	pop    %ebp
5ca5ad:	c3                   	ret
5ca5ae:	8b 4f 04             	mov    0x4(%edi),%ecx
5ca5b1:	8b 41 04             	mov    0x4(%ecx),%eax
5ca5b4:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
5ca5ba:	8b 01                	mov    (%ecx),%eax
5ca5bc:	85 c0                	test   %eax,%eax
5ca5be:	74 13                	je     0x5ca5d3
5ca5c0:	8b 30                	mov    (%eax),%esi
5ca5c2:	6a 10                	push   $0x10
5ca5c4:	50                   	push   %eax
5ca5c5:	e8 8b 6c 00 00       	call   0x5d1255
5ca5ca:	83 c4 08             	add    $0x8,%esp
5ca5cd:	8b c6                	mov    %esi,%eax
5ca5cf:	85 f6                	test   %esi,%esi
5ca5d1:	75 ed                	jne    0x5ca5c0
5ca5d3:	8b 47 04             	mov    0x4(%edi),%eax
5ca5d6:	89 00                	mov    %eax,(%eax)
5ca5d8:	8b 47 04             	mov    0x4(%edi),%eax
5ca5db:	89 40 04             	mov    %eax,0x4(%eax)
5ca5de:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
5ca5e5:	8b 57 10             	mov    0x10(%edi),%edx
5ca5e8:	8b 4f 0c             	mov    0xc(%edi),%ecx
5ca5eb:	8b 47 04             	mov    0x4(%edi),%eax
5ca5ee:	3b ca                	cmp    %edx,%ecx
5ca5f0:	74 09                	je     0x5ca5fb
5ca5f2:	89 01                	mov    %eax,(%ecx)
5ca5f4:	83 c1 04             	add    $0x4,%ecx
5ca5f7:	3b ca                	cmp    %edx,%ecx
5ca5f9:	75 f7                	jne    0x5ca5f2
5ca5fb:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca5fe:	5f                   	pop    %edi
5ca5ff:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca606:	5e                   	pop    %esi
5ca607:	8b e5                	mov    %ebp,%esp
5ca609:	5d                   	pop    %ebp
5ca60a:	c3                   	ret
5ca60b:	cc                   	int3
5ca60c:	cc                   	int3
5ca60d:	cc                   	int3
5ca60e:	cc                   	int3
5ca60f:	cc                   	int3
5ca610:	55                   	push   %ebp
5ca611:	8b ec                	mov    %esp,%ebp
5ca613:	83 ec 0c             	sub    $0xc,%esp
5ca616:	56                   	push   %esi
5ca617:	8d 45 f4             	lea    -0xc(%ebp),%eax
5ca61a:	33 f6                	xor    %esi,%esi
5ca61c:	50                   	push   %eax
5ca61d:	89 75 f4             	mov    %esi,-0xc(%ebp)
5ca620:	e8 b4 d4 01 00       	call   0x5e7ad9
5ca625:	83 c4 04             	add    $0x4,%esp
5ca628:	83 f8 fe             	cmp    $0xfffffffe,%eax
5ca62b:	75 20                	jne    0x5ca64d
5ca62d:	8d 49 00             	lea    0x0(%ecx),%ecx
5ca630:	33 c0                	xor    %eax,%eax
5ca632:	83 7d fc 01          	cmpl   $0x1,-0x4(%ebp)
5ca636:	0f 44 45 f8          	cmove  -0x8(%ebp),%eax
5ca63a:	03 f0                	add    %eax,%esi
5ca63c:	8d 45 f4             	lea    -0xc(%ebp),%eax
5ca63f:	50                   	push   %eax
5ca640:	e8 94 d4 01 00       	call   0x5e7ad9
5ca645:	83 c4 04             	add    $0x4,%esp
5ca648:	83 f8 fe             	cmp    $0xfffffffe,%eax
5ca64b:	74 e3                	je     0x5ca630
5ca64d:	83 f8 fb             	cmp    $0xfffffffb,%eax
5ca650:	74 09                	je     0x5ca65b
5ca652:	83 c9 ff             	or     $0xffffffff,%ecx
5ca655:	83 f8 ff             	cmp    $0xffffffff,%eax
5ca658:	0f 45 f1             	cmovne %ecx,%esi
5ca65b:	8b c6                	mov    %esi,%eax
5ca65d:	5e                   	pop    %esi
5ca65e:	8b e5                	mov    %ebp,%esp
5ca660:	5d                   	pop    %ebp
5ca661:	c3                   	ret
5ca662:	cc                   	int3
5ca663:	cc                   	int3
5ca664:	cc                   	int3
5ca665:	cc                   	int3
5ca666:	cc                   	int3
5ca667:	cc                   	int3
5ca668:	cc                   	int3
5ca669:	cc                   	int3
5ca66a:	cc                   	int3
5ca66b:	cc                   	int3
5ca66c:	cc                   	int3
5ca66d:	cc                   	int3
5ca66e:	cc                   	int3
5ca66f:	cc                   	int3
5ca670:	55                   	push   %ebp
5ca671:	8b ec                	mov    %esp,%ebp
5ca673:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca679:	6a ff                	push   $0xffffffff
5ca67b:	68 d3 0a 60 00       	push   $0x600ad3
5ca680:	50                   	push   %eax
5ca681:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca688:	83 ec 14             	sub    $0x14,%esp
5ca68b:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
5ca691:	8b 15 30 68 71 00    	mov    0x716830,%edx
5ca697:	56                   	push   %esi
5ca698:	57                   	push   %edi
5ca699:	8b 14 90             	mov    (%eax,%edx,4),%edx
5ca69c:	8b f9                	mov    %ecx,%edi
5ca69e:	a1 c0 00 6e 00       	mov    0x6e00c0,%eax
5ca6a3:	3b 82 80 04 00 00    	cmp    0x480(%edx),%eax
5ca6a9:	0f 8f 3e 01 00 00    	jg     0x5ca7ed
5ca6af:	c7 45 f0 a0 00 6e 00 	movl   $0x6e00a0,-0x10(%ebp)
5ca6b6:	ff 15 24 21 60 00    	call   *0x602124
5ca6bc:	8b d0                	mov    %eax,%edx
5ca6be:	be a0 00 6e 00       	mov    $0x6e00a0,%esi
5ca6c3:	3b 15 a0 00 6e 00    	cmp    0x6e00a0,%edx
5ca6c9:	74 1d                	je     0x5ca6e8
5ca6cb:	8b ca                	mov    %edx,%ecx
5ca6cd:	33 c0                	xor    %eax,%eax
5ca6cf:	f0 0f b1 0e          	lock cmpxchg %ecx,(%esi)
5ca6d3:	85 c0                	test   %eax,%eax
5ca6d5:	0f 94 c0             	sete   %al