5ee3cf:	3b c7                	cmp    %edi,%eax
5ee3d1:	77 e1                	ja     0x5ee3b4
5ee3d3:	8b 46 08             	mov    0x8(%esi),%eax
5ee3d6:	99                   	cltd
5ee3d7:	39 55 10             	cmp    %edx,0x10(%ebp)
5ee3da:	7f d8                	jg     0x5ee3b4
5ee3dc:	7c 04                	jl     0x5ee3e2
5ee3de:	3b f8                	cmp    %eax,%edi
5ee3e0:	77 d2                	ja     0x5ee3b4
5ee3e2:	03 cf                	add    %edi,%ecx
5ee3e4:	b0 01                	mov    $0x1,%al
5ee3e6:	89 0e                	mov    %ecx,(%esi)
5ee3e8:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ee3eb:	29 79 08             	sub    %edi,0x8(%ecx)
5ee3ee:	eb c6                	jmp    0x5ee3b6
5ee3f0:	8b ff                	mov    %edi,%edi
5ee3f2:	55                   	push   %ebp
5ee3f3:	8b ec                	mov    %esp,%ebp
5ee3f5:	8b 45 08             	mov    0x8(%ebp),%eax
5ee3f8:	8b 40 0c             	mov    0xc(%eax),%eax
5ee3fb:	90                   	nop
5ee3fc:	c1 e8 0d             	shr    $0xd,%eax
5ee3ff:	a8 01                	test   $0x1,%al
5ee401:	75 10                	jne    0x5ee413
5ee403:	e8 f1 eb ff ff       	call   0x5ecff9
5ee408:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5ee40e:	83 c8 ff             	or     $0xffffffff,%eax
5ee411:	5d                   	pop    %ebp
5ee412:	c3                   	ret
5ee413:	8b 45 08             	mov    0x8(%ebp),%eax
5ee416:	53                   	push   %ebx
5ee417:	56                   	push   %esi
5ee418:	57                   	push   %edi
5ee419:	6a f7                	push   $0xfffffff7
5ee41b:	59                   	pop    %ecx
5ee41c:	83 c0 0c             	add    $0xc,%eax
5ee41f:	f0 21 08             	lock and %ecx,(%eax)
5ee422:	8b 75 14             	mov    0x14(%ebp),%esi
5ee425:	8b 7d 10             	mov    0x10(%ebp),%edi
5ee428:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5ee42b:	56                   	push   %esi
5ee42c:	57                   	push   %edi
5ee42d:	53                   	push   %ebx
5ee42e:	ff 75 08             	push   0x8(%ebp)
5ee431:	e8 e1 fe ff ff       	call   0x5ee317
5ee436:	83 c4 10             	add    $0x10,%esp
5ee439:	84 c0                	test   %al,%al
5ee43b:	0f 85 86 00 00 00    	jne    0x5ee4c7
5ee441:	83 fe 01             	cmp    $0x1,%esi
5ee444:	75 0f                	jne    0x5ee455
5ee446:	ff 75 08             	push   0x8(%ebp)
5ee449:	e8 d9 af 00 00       	call   0x5f9427
5ee44e:	03 d8                	add    %eax,%ebx
5ee450:	59                   	pop    %ecx
5ee451:	13 fa                	adc    %edx,%edi
5ee453:	33 f6                	xor    %esi,%esi
5ee455:	ff 75 08             	push   0x8(%ebp)
5ee458:	e8 ff cb 00 00       	call   0x5fb05c
5ee45d:	8b 45 08             	mov    0x8(%ebp),%eax
5ee460:	59                   	pop    %ecx
5ee461:	8b 48 04             	mov    0x4(%eax),%ecx
5ee464:	83 60 08 00          	andl   $0x0,0x8(%eax)
5ee468:	89 08                	mov    %ecx,(%eax)
5ee46a:	8b 45 08             	mov    0x8(%ebp),%eax
5ee46d:	8b 40 0c             	mov    0xc(%eax),%eax
5ee470:	90                   	nop
5ee471:	c1 e8 02             	shr    $0x2,%eax
5ee474:	a8 01                	test   $0x1,%al
5ee476:	8b 45 08             	mov    0x8(%ebp),%eax
5ee479:	74 0b                	je     0x5ee486
5ee47b:	6a fc                	push   $0xfffffffc
5ee47d:	59                   	pop    %ecx
5ee47e:	83 c0 0c             	add    $0xc,%eax
5ee481:	f0 21 08             	lock and %ecx,(%eax)
5ee484:	eb 23                	jmp    0x5ee4a9
5ee486:	8b 40 0c             	mov    0xc(%eax),%eax
5ee489:	90                   	nop
5ee48a:	83 e0 41             	and    $0x41,%eax
5ee48d:	3c 41                	cmp    $0x41,%al
5ee48f:	75 18                	jne    0x5ee4a9
5ee491:	8b 45 08             	mov    0x8(%ebp),%eax
5ee494:	8b 40 0c             	mov    0xc(%eax),%eax
5ee497:	90                   	nop
5ee498:	c1 e8 08             	shr    $0x8,%eax
5ee49b:	a8 01                	test   $0x1,%al
5ee49d:	75 0a                	jne    0x5ee4a9
5ee49f:	8b 45 08             	mov    0x8(%ebp),%eax
5ee4a2:	c7 40 18 00 02 00 00 	movl   $0x200,0x18(%eax)
5ee4a9:	8b 45 08             	mov    0x8(%ebp),%eax
5ee4ac:	8b 40 10             	mov    0x10(%eax),%eax
5ee4af:	90                   	nop
5ee4b0:	56                   	push   %esi
5ee4b1:	57                   	push   %edi
5ee4b2:	53                   	push   %ebx
5ee4b3:	50                   	push   %eax
5ee4b4:	e8 04 74 01 00       	call   0x6058bd
5ee4b9:	23 c2                	and    %edx,%eax
5ee4bb:	83 c4 10             	add    $0x10,%esp
5ee4be:	83 f8 ff             	cmp    $0xffffffff,%eax
5ee4c1:	75 04                	jne    0x5ee4c7
5ee4c3:	0b c0                	or     %eax,%eax
5ee4c5:	eb 02                	jmp    0x5ee4c9
5ee4c7:	33 c0                	xor    %eax,%eax
5ee4c9:	5f                   	pop    %edi
5ee4ca:	5e                   	pop    %esi
5ee4cb:	5b                   	pop    %ebx
5ee4cc:	5d                   	pop    %ebp
5ee4cd:	c3                   	ret
5ee4ce:	8b ff                	mov    %edi,%edi
5ee4d0:	55                   	push   %ebp
5ee4d1:	8b ec                	mov    %esp,%ebp
5ee4d3:	ff 75 14             	push   0x14(%ebp)
5ee4d6:	ff 75 10             	push   0x10(%ebp)
5ee4d9:	ff 75 0c             	push   0xc(%ebp)
5ee4dc:	ff 75 08             	push   0x8(%ebp)
5ee4df:	e8 a8 fd ff ff       	call   0x5ee28c
5ee4e4:	83 c4 10             	add    $0x10,%esp
5ee4e7:	5d                   	pop    %ebp
5ee4e8:	c3                   	ret
5ee4e9:	8b ff                	mov    %edi,%edi
5ee4eb:	55                   	push   %ebp
5ee4ec:	8b ec                	mov    %esp,%ebp
5ee4ee:	ff 75 10             	push   0x10(%ebp)
5ee4f1:	8b 45 0c             	mov    0xc(%ebp),%eax
5ee4f4:	99                   	cltd
5ee4f5:	52                   	push   %edx
5ee4f6:	50                   	push   %eax
5ee4f7:	ff 75 08             	push   0x8(%ebp)
5ee4fa:	e8 8d fd ff ff       	call   0x5ee28c
5ee4ff:	83 c4 10             	add    $0x10,%esp
5ee502:	5d                   	pop    %ebp
5ee503:	c3                   	ret
5ee504:	8b ff                	mov    %edi,%edi
5ee506:	55                   	push   %ebp
5ee507:	8b ec                	mov    %esp,%ebp
5ee509:	8b 55 08             	mov    0x8(%ebp),%edx
5ee50c:	85 d2                	test   %edx,%edx
5ee50e:	75 15                	jne    0x5ee525
5ee510:	e8 e4 ea ff ff       	call   0x5ecff9
5ee515:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5ee51b:	e8 ff e9 ff ff       	call   0x5ecf1f
5ee520:	83 c8 ff             	or     $0xffffffff,%eax
5ee523:	5d                   	pop    %ebp
5ee524:	c3                   	ret
5ee525:	83 6a 08 01          	subl   $0x1,0x8(%edx)
5ee529:	79 09                	jns    0x5ee534
5ee52b:	52                   	push   %edx
5ee52c:	e8 de 71 01 00       	call   0x60570f
5ee531:	59                   	pop    %ecx
5ee532:	5d                   	pop    %ebp
5ee533:	c3                   	ret
5ee534:	8b 02                	mov    (%edx),%eax
5ee536:	8a 08                	mov    (%eax),%cl
5ee538:	40                   	inc    %eax
5ee539:	89 02                	mov    %eax,(%edx)
5ee53b:	0f b6 c1             	movzbl %cl,%eax
5ee53e:	5d                   	pop    %ebp
5ee53f:	c3                   	ret
5ee540:	8b ff                	mov    %edi,%edi
5ee542:	55                   	push   %ebp
5ee543:	8b ec                	mov    %esp,%ebp
5ee545:	5d                   	pop    %ebp
5ee546:	e9 b9 ff ff ff       	jmp    0x5ee504
5ee54b:	6a 10                	push   $0x10
5ee54d:	68 88 1a 70 00       	push   $0x701a88
5ee552:	e8 b9 3f ff ff       	call   0x5e2510
5ee557:	8b 75 08             	mov    0x8(%ebp),%esi
5ee55a:	89 75 e0             	mov    %esi,-0x20(%ebp)
5ee55d:	85 f6                	test   %esi,%esi
5ee55f:	75 18                	jne    0x5ee579
5ee561:	e8 93 ea ff ff       	call   0x5ecff9
5ee566:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5ee56c:	e8 ae e9 ff ff       	call   0x5ecf1f
5ee571:	83 c8 ff             	or     $0xffffffff,%eax
5ee574:	e9 bd 00 00 00       	jmp    0x5ee636
5ee579:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
5ee57d:	56                   	push   %esi
5ee57e:	e8 1f dc 00 00       	call   0x5fc1a2
5ee583:	59                   	pop    %ecx
5ee584:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5ee588:	8b 46 0c             	mov    0xc(%esi),%eax
5ee58b:	90                   	nop
5ee58c:	c1 e8 0c             	shr    $0xc,%eax
5ee58f:	a8 01                	test   $0x1,%al
5ee591:	0f 85 85 00 00 00    	jne    0x5ee61c
5ee597:	56                   	push   %esi
5ee598:	e8 0b 12 01 00       	call   0x5ff7a8
5ee59d:	59                   	pop    %ecx
5ee59e:	83 f8 ff             	cmp    $0xffffffff,%eax
5ee5a1:	74 20                	je     0x5ee5c3
5ee5a3:	83 f8 fe             	cmp    $0xfffffffe,%eax
5ee5a6:	74 1b                	je     0x5ee5c3
5ee5a8:	8b d0                	mov    %eax,%edx
5ee5aa:	c1 fa 06             	sar    $0x6,%edx
5ee5ad:	8b f8                	mov    %eax,%edi
5ee5af:	83 e7 3f             	and    $0x3f,%edi
5ee5b2:	6b df 38             	imul   $0x38,%edi,%ebx
5ee5b5:	03 1c 95 b8 10 73 00 	add    0x7310b8(,%edx,4),%ebx
5ee5bc:	b9 48 8d 72 00       	mov    $0x728d48,%ecx
5ee5c1:	eb 11                	jmp    0x5ee5d4
5ee5c3:	b9 48 8d 72 00       	mov    $0x728d48,%ecx
5ee5c8:	8b d9                	mov    %ecx,%ebx
5ee5ca:	8b d0                	mov    %eax,%edx
5ee5cc:	c1 fa 06             	sar    $0x6,%edx
5ee5cf:	8b f8                	mov    %eax,%edi
5ee5d1:	83 e7 3f             	and    $0x3f,%edi
5ee5d4:	80 7b 29 00          	cmpb   $0x0,0x29(%ebx)
5ee5d8:	75 1a                	jne    0x5ee5f4
5ee5da:	83 f8 ff             	cmp    $0xffffffff,%eax
5ee5dd:	74 0f                	je     0x5ee5ee
5ee5df:	83 f8 fe             	cmp    $0xfffffffe,%eax
5ee5e2:	74 0a                	je     0x5ee5ee
5ee5e4:	6b cf 38             	imul   $0x38,%edi,%ecx
5ee5e7:	03 0c 95 b8 10 73 00 	add    0x7310b8(,%edx,4),%ecx
5ee5ee:	f6 41 2d 01          	testb  $0x1,0x2d(%ecx)
5ee5f2:	74 28                	je     0x5ee61c
5ee5f4:	e8 00 ea ff ff       	call   0x5ecff9
5ee5f9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5ee5ff:	e8 1b e9 ff ff       	call   0x5ecf1f
5ee604:	6a fe                	push   $0xfffffffe
5ee606:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5ee609:	51                   	push   %ecx
5ee60a:	68 d4 89 72 00       	push   $0x7289d4
5ee60f:	e8 dc 58 ff ff       	call   0x5e3ef0
5ee614:	83 c4 0c             	add    $0xc,%esp
5ee617:	e9 55 ff ff ff       	jmp    0x5ee571
5ee61c:	56                   	push   %esi
5ee61d:	e8 e2 fe ff ff       	call   0x5ee504
5ee622:	59                   	pop    %ecx
5ee623:	8b f0                	mov    %eax,%esi
5ee625:	89 75 e4             	mov    %esi,-0x1c(%ebp)
5ee628:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5ee62f:	e8 15 00 00 00       	call   0x5ee649
5ee634:	8b c6                	mov    %esi,%eax
5ee636:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5ee639:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ee640:	59                   	pop    %ecx
5ee641:	5f                   	pop    %edi
5ee642:	5e                   	pop    %esi
5ee643:	5b                   	pop    %ebx
5ee644:	c9                   	leave
5ee645:	c3                   	ret
5ee646:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5ee649:	ff 75 e0             	push   -0x20(%ebp)
5ee64c:	e8 65 db 00 00       	call   0x5fc1b6
5ee651:	59                   	pop    %ecx
5ee652:	c3                   	ret
5ee653:	8b ff                	mov    %edi,%edi
5ee655:	55                   	push   %ebp
5ee656:	8b ec                	mov    %esp,%ebp
5ee658:	5d                   	pop    %ebp
5ee659:	e9 ed fe ff ff       	jmp    0x5ee54b
5ee65e:	8b ff                	mov    %edi,%edi
5ee660:	55                   	push   %ebp
5ee661:	8b ec                	mov    %esp,%ebp
5ee663:	5d                   	pop    %ebp
5ee664:	e9 73 74 01 00       	jmp    0x605adc
5ee669:	cc                   	int3
5ee66a:	cc                   	int3
5ee66b:	cc                   	int3
5ee66c:	cc                   	int3
5ee66d:	cc                   	int3
5ee66e:	cc                   	int3
5ee66f:	cc                   	int3
5ee670:	8b ff                	mov    %edi,%edi
5ee672:	55                   	push   %ebp
5ee673:	8b ec                	mov    %esp,%ebp
5ee675:	51                   	push   %ecx
5ee676:	ff 75 08             	push   0x8(%ebp)
5ee679:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5ee680:	8b 45 fc             	mov    -0x4(%ebp),%eax
5ee683:	e8 a0 61 01 00       	call   0x604828
5ee688:	59                   	pop    %ecx
5ee689:	c9                   	leave
5ee68a:	c3                   	ret
5ee68b:	cc                   	int3
5ee68c:	cc                   	int3
5ee68d:	cc                   	int3
5ee68e:	cc                   	int3
5ee68f:	cc                   	int3
5ee690:	83 3d 9c 26 73 00 00 	cmpl   $0x0,0x73269c
5ee697:	0f 84 a3 76 01 00    	je     0x605d40
5ee69d:	83 ec 08             	sub    $0x8,%esp
5ee6a0:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
5ee6a5:	8b 44 24 04          	mov    0x4(%esp),%eax
5ee6a9:	25 80 7f 00 00       	and    $0x7f80,%eax
5ee6ae:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
5ee6b3:	75 0f                	jne    0x5ee6c4
5ee6b5:	d9 3c 24             	fnstcw (%esp)
5ee6b8:	66 8b 04 24          	mov    (%esp),%ax
5ee6bc:	66 83 e0 7f          	and    $0x7f,%ax
5ee6c0:	66 83 f8 7f          	cmp    $0x7f,%ax
5ee6c4:	8d 64 24 08          	lea    0x8(%esp),%esp
5ee6c8:	0f 85 72 76 01 00    	jne    0x605d40
5ee6ce:	eb 00                	jmp    0x5ee6d0
5ee6d0:	f3 0f 7e 44 24 04    	movq   0x4(%esp),%xmm0
5ee6d6:	66 0f 28 15 a0 27 6d 	movapd 0x6d27a0,%xmm2
5ee6dd:	00
5ee6de:	66 0f 28 c8          	movapd %xmm0,%xmm1
5ee6e2:	66 0f 28 f8          	movapd %xmm0,%xmm7
5ee6e6:	66 0f 73 d0 34       	psrlq  $0x34,%xmm0
5ee6eb:	66 0f 7e c0          	movd   %xmm0,%eax
5ee6ef:	66 0f 54 05 c0 27 6d 	andpd  0x6d27c0,%xmm0
5ee6f6:	00
5ee6f7:	66 0f fa d0          	psubd  %xmm0,%xmm2
5ee6fb:	66 0f d3 ca          	psrlq  %xmm2,%xmm1
5ee6ff:	a9 00 08 00 00       	test   $0x800,%eax
5ee704:	74 4c                	je     0x5ee752
5ee706:	3d ff 0b 00 00       	cmp    $0xbff,%eax
5ee70b:	7c 7d                	jl     0x5ee78a
5ee70d:	66 0f f3 ca          	psllq  %xmm2,%xmm1
5ee711:	3d 32 0c 00 00       	cmp    $0xc32,%eax
5ee716:	7f 0b                	jg     0x5ee723
5ee718:	66 0f d6 4c 24 04    	movq   %xmm1,0x4(%esp)
5ee71e:	dd 44 24 04          	fldl   0x4(%esp)
5ee722:	c3                   	ret
5ee723:	66 0f 2e ff          	ucomisd %xmm7,%xmm7
5ee727:	7b 24                	jnp    0x5ee74d
5ee729:	ba ec 03 00 00       	mov    $0x3ec,%edx
5ee72e:	83 ec 10             	sub    $0x10,%esp
5ee731:	89 54 24 0c          	mov    %edx,0xc(%esp)
5ee735:	8b d4                	mov    %esp,%edx
5ee737:	83 c2 14             	add    $0x14,%edx
5ee73a:	89 54 24 08          	mov    %edx,0x8(%esp)
5ee73e:	89 54 24 04          	mov    %edx,0x4(%esp)
5ee742:	89 14 24             	mov    %edx,(%esp)
5ee745:	e8 ef 73 01 00       	call   0x605b39
5ee74a:	83 c4 10             	add    $0x10,%esp
5ee74d:	dd 44 24 04          	fldl   0x4(%esp)
5ee751:	c3                   	ret
5ee752:	f3 0f 7e 44 24 04    	movq   0x4(%esp),%xmm0
5ee758:	66 0f f3 ca          	psllq  %xmm2,%xmm1
5ee75c:	66 0f 28 d8          	movapd %xmm0,%xmm3
5ee760:	66 0f c2 c1 06       	cmpnlepd %xmm1,%xmm0
5ee765:	3d ff 03 00 00       	cmp    $0x3ff,%eax
5ee76a:	7c 25                	jl     0x5ee791
5ee76c:	3d 32 04 00 00       	cmp    $0x432,%eax
5ee771:	7f b0                	jg     0x5ee723
5ee773:	66 0f 54 05 90 27 6d 	andpd  0x6d2790,%xmm0
5ee77a:	00
5ee77b:	f2 0f 58 c8          	addsd  %xmm0,%xmm1
5ee77f:	66 0f d6 4c 24 04    	movq   %xmm1,0x4(%esp)
5ee785:	dd 44 24 04          	fldl   0x4(%esp)
5ee789:	c3                   	ret
5ee78a:	dd 05 d0 27 6d 00    	fldl   0x6d27d0
5ee790:	c3                   	ret
5ee791:	66 0f c2 1d b0 27 6d 	cmpnlepd 0x6d27b0,%xmm3
5ee798:	00 06
5ee79a:	66 0f 54 1d 90 27 6d 	andpd  0x6d2790,%xmm3
5ee7a1:	00