5834af:	51                   	push   %ecx
5834b0:	e8 bd db 05 00       	call   0x5e1072
5834b5:	83 c4 08             	add    $0x8,%esp
5834b8:	8a 45 8f             	mov    -0x71(%ebp),%al
5834bb:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5834be:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5834c5:	59                   	pop    %ecx
5834c6:	5f                   	pop    %edi
5834c7:	5e                   	pop    %esi
5834c8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5834cb:	33 cd                	xor    %ebp,%ecx
5834cd:	e8 08 e0 05 00       	call   0x5e14da
5834d2:	8b e5                	mov    %ebp,%esp
5834d4:	5d                   	pop    %ebp
5834d5:	c2 08 00             	ret    $0x8
5834d8:	e8 52 9a 06 00       	call   0x5ecf2f
5834dd:	e8 4d 9a 06 00       	call   0x5ecf2f
5834e2:	cc                   	int3
5834e3:	cc                   	int3
5834e4:	cc                   	int3
5834e5:	cc                   	int3
5834e6:	cc                   	int3
5834e7:	cc                   	int3
5834e8:	cc                   	int3
5834e9:	cc                   	int3
5834ea:	cc                   	int3
5834eb:	cc                   	int3
5834ec:	cc                   	int3
5834ed:	cc                   	int3
5834ee:	cc                   	int3
5834ef:	cc                   	int3
5834f0:	55                   	push   %ebp
5834f1:	8b ec                	mov    %esp,%ebp
5834f3:	83 ec 30             	sub    $0x30,%esp
5834f6:	8b 45 08             	mov    0x8(%ebp),%eax
5834f9:	89 4d d8             	mov    %ecx,-0x28(%ebp)
5834fc:	53                   	push   %ebx
5834fd:	56                   	push   %esi
5834fe:	8b 40 04             	mov    0x4(%eax),%eax
583501:	57                   	push   %edi
583502:	8a 08                	mov    (%eax),%cl
583504:	8d 50 01             	lea    0x1(%eax),%edx
583507:	80 f9 2d             	cmp    $0x2d,%cl
58350a:	88 4d ff             	mov    %cl,-0x1(%ebp)
58350d:	0f 45 d0             	cmovne %eax,%edx
583510:	89 55 e0             	mov    %edx,-0x20(%ebp)
583513:	75 14                	jne    0x583529
583515:	8b 1d 30 2f 6c 00    	mov    0x6c2f30,%ebx
58351b:	8b 0d 34 2f 6c 00    	mov    0x6c2f34,%ecx
583521:	83 c3 01             	add    $0x1,%ebx
583524:	83 d1 00             	adc    $0x0,%ecx
583527:	eb 0c                	jmp    0x583535
583529:	8b 1d 38 2f 6c 00    	mov    0x6c2f38,%ebx
58352f:	8b 0d 3c 2f 6c 00    	mov    0x6c2f3c,%ecx
583535:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
58353a:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
58353d:	8b c3                	mov    %ebx,%eax
58353f:	89 5d dc             	mov    %ebx,-0x24(%ebp)
583542:	0f 57 c0             	xorps  %xmm0,%xmm0
583545:	8d 7a ff             	lea    -0x1(%edx),%edi
583548:	f7 e2                	mul    %edx
58354a:	89 45 e8             	mov    %eax,-0x18(%ebp)
58354d:	8b f2                	mov    %edx,%esi
58354f:	8b c3                	mov    %ebx,%eax
583551:	f7 e7                	mul    %edi
583553:	8b f8                	mov    %eax,%edi
583555:	89 55 f8             	mov    %edx,-0x8(%ebp)
583558:	8b c1                	mov    %ecx,%eax
58355a:	b9 cd cc cc cc       	mov    $0xcccccccd,%ecx
58355f:	f7 e1                	mul    %ecx
583561:	8b c8                	mov    %eax,%ecx
583563:	8b da                	mov    %edx,%ebx
583565:	8b 45 e4             	mov    -0x1c(%ebp),%eax
583568:	ba cc cc cc cc       	mov    $0xcccccccc,%edx
58356d:	f7 e2                	mul    %edx
58356f:	03 ce                	add    %esi,%ecx
583571:	89 45 ec             	mov    %eax,-0x14(%ebp)
583574:	8b 75 ec             	mov    -0x14(%ebp),%esi
583577:	83 d3 00             	adc    $0x0,%ebx
58357a:	03 f9                	add    %ecx,%edi
58357c:	89 55 f0             	mov    %edx,-0x10(%ebp)
58357f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
583582:	83 d1 00             	adc    $0x0,%ecx
583585:	89 7d d0             	mov    %edi,-0x30(%ebp)
583588:	33 c0                	xor    %eax,%eax
58358a:	66 0f 13 45 f4       	movlpd %xmm0,-0xc(%ebp)
58358f:	03 d9                	add    %ecx,%ebx
583591:	8b fa                	mov    %edx,%edi
583593:	8b 55 e0             	mov    -0x20(%ebp),%edx
583596:	8b 4d f4             	mov    -0xc(%ebp),%ecx
583599:	13 c0                	adc    %eax,%eax
58359b:	03 f3                	add    %ebx,%esi
58359d:	8b 5d f8             	mov    -0x8(%ebp),%ebx
5835a0:	13 f8                	adc    %eax,%edi
5835a2:	8b 45 08             	mov    0x8(%ebp),%eax
5835a5:	0f ac fe 03          	shrd   $0x3,%edi,%esi
5835a9:	c1 ef 03             	shr    $0x3,%edi
5835ac:	89 75 ec             	mov    %esi,-0x14(%ebp)
5835af:	89 7d f0             	mov    %edi,-0x10(%ebp)
5835b2:	3b 50 08             	cmp    0x8(%eax),%edx
5835b5:	0f 83 b5 00 00 00    	jae    0x583670
5835bb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5835c0:	8a 02                	mov    (%edx),%al
5835c2:	42                   	inc    %edx
5835c3:	89 55 e0             	mov    %edx,-0x20(%ebp)
5835c6:	3c 30                	cmp    $0x30,%al
5835c8:	7c 59                	jl     0x583623
5835ca:	3c 39                	cmp    $0x39,%al
5835cc:	7f 55                	jg     0x583623
5835ce:	0f be c0             	movsbl %al,%eax
5835d1:	83 e8 30             	sub    $0x30,%eax
5835d4:	89 45 f8             	mov    %eax,-0x8(%ebp)
5835d7:	3b df                	cmp    %edi,%ebx
5835d9:	72 5f                	jb     0x58363a
5835db:	77 46                	ja     0x583623
5835dd:	3b ce                	cmp    %esi,%ecx
5835df:	72 59                	jb     0x58363a
5835e1:	3b df                	cmp    %edi,%ebx
5835e3:	77 3e                	ja     0x583623
5835e5:	72 04                	jb     0x5835eb
5835e7:	3b ce                	cmp    %esi,%ecx
5835e9:	77 38                	ja     0x583623
5835eb:	8b 45 08             	mov    0x8(%ebp),%eax
5835ee:	3b 50 08             	cmp    0x8(%eax),%edx
5835f1:	75 30                	jne    0x583623
5835f3:	8b 45 ec             	mov    -0x14(%ebp),%eax
5835f6:	8b 55 f0             	mov    -0x10(%ebp),%edx
5835f9:	0f a4 c2 02          	shld   $0x2,%eax,%edx
5835fd:	c1 e0 02             	shl    $0x2,%eax
583600:	03 f0                	add    %eax,%esi
583602:	8b 45 e4             	mov    -0x1c(%ebp),%eax
583605:	13 fa                	adc    %edx,%edi
583607:	8b 55 dc             	mov    -0x24(%ebp),%edx
58360a:	0f a4 f7 01          	shld   $0x1,%esi,%edi
58360e:	03 f6                	add    %esi,%esi
583610:	2b d6                	sub    %esi,%edx
583612:	1b c7                	sbb    %edi,%eax
583614:	33 ff                	xor    %edi,%edi
583616:	3b f8                	cmp    %eax,%edi
583618:	77 09                	ja     0x583623
58361a:	8b 75 f8             	mov    -0x8(%ebp),%esi
58361d:	72 22                	jb     0x583641
58361f:	3b f2                	cmp    %edx,%esi
583621:	76 1e                	jbe    0x583641
583623:	ff 75 0c             	push   0xc(%ebp)
583626:	8b 4d d8             	mov    -0x28(%ebp),%ecx
583629:	ff 75 08             	push   0x8(%ebp)
58362c:	e8 1f fc ff ff       	call   0x583250
583631:	5f                   	pop    %edi
583632:	5e                   	pop    %esi
583633:	5b                   	pop    %ebx
583634:	8b e5                	mov    %ebp,%esp
583636:	5d                   	pop    %ebp
583637:	c2 08 00             	ret    $0x8
58363a:	89 45 f8             	mov    %eax,-0x8(%ebp)
58363d:	8b f0                	mov    %eax,%esi
58363f:	33 ff                	xor    %edi,%edi
583641:	8b c1                	mov    %ecx,%eax
583643:	8b d3                	mov    %ebx,%edx
583645:	0f a4 c2 02          	shld   $0x2,%eax,%edx
583649:	c1 e0 02             	shl    $0x2,%eax
58364c:	03 c8                	add    %eax,%ecx
58364e:	8b 45 08             	mov    0x8(%ebp),%eax
583651:	13 da                	adc    %edx,%ebx
583653:	8b 55 e0             	mov    -0x20(%ebp),%edx
583656:	0f a4 cb 01          	shld   $0x1,%ecx,%ebx
58365a:	03 c9                	add    %ecx,%ecx
58365c:	03 ce                	add    %esi,%ecx
58365e:	13 df                	adc    %edi,%ebx
583660:	3b 50 08             	cmp    0x8(%eax),%edx
583663:	73 0b                	jae    0x583670
583665:	8b 7d f0             	mov    -0x10(%ebp),%edi
583668:	8b 75 ec             	mov    -0x14(%ebp),%esi
58366b:	e9 50 ff ff ff       	jmp    0x5835c0
583670:	8a 45 ff             	mov    -0x1(%ebp),%al
583673:	3c 2d                	cmp    $0x2d,%al
583675:	75 5f                	jne    0x5836d6
583677:	3b 4d dc             	cmp    -0x24(%ebp),%ecx
58367a:	75 2e                	jne    0x5836aa
58367c:	3b 5d e4             	cmp    -0x1c(%ebp),%ebx
58367f:	75 29                	jne    0x5836aa
583681:	83 ec 18             	sub    $0x18,%esp
583684:	8b cc                	mov    %esp,%ecx
583686:	ff 35 2c 2f 6c 00    	push   0x6c2f2c
58368c:	ff 35 28 2f 6c 00    	push   0x6c2f28
583692:	e8 29 c8 ff ff       	call   0x57fec0
583697:	8b 4d 0c             	mov    0xc(%ebp),%ecx
58369a:	e8 b1 ca ff ff       	call   0x580150
58369f:	b0 01                	mov    $0x1,%al
5836a1:	5f                   	pop    %edi
5836a2:	5e                   	pop    %esi
5836a3:	5b                   	pop    %ebx
5836a4:	8b e5                	mov    %ebp,%esp
5836a6:	5d                   	pop    %ebp
5836a7:	c2 08 00             	ret    $0x8
5836aa:	3c 2d                	cmp    $0x2d,%al
5836ac:	75 28                	jne    0x5836d6
5836ae:	83 ec 18             	sub    $0x18,%esp
5836b1:	f7 d9                	neg    %ecx
5836b3:	8b c4                	mov    %esp,%eax
5836b5:	83 d3 00             	adc    $0x0,%ebx
5836b8:	f7 db                	neg    %ebx
5836ba:	53                   	push   %ebx
5836bb:	51                   	push   %ecx
5836bc:	8b c8                	mov    %eax,%ecx
5836be:	e8 fd c7 ff ff       	call   0x57fec0
5836c3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5836c6:	e8 85 ca ff ff       	call   0x580150
5836cb:	b0 01                	mov    $0x1,%al
5836cd:	5f                   	pop    %edi
5836ce:	5e                   	pop    %esi
5836cf:	5b                   	pop    %ebx
5836d0:	8b e5                	mov    %ebp,%esp
5836d2:	5d                   	pop    %ebp
5836d3:	c2 08 00             	ret    $0x8
5836d6:	a1 44 2f 6c 00       	mov    0x6c2f44,%eax
5836db:	99                   	cltd
5836dc:	3b da                	cmp    %edx,%ebx
5836de:	77 27                	ja     0x583707
5836e0:	72 04                	jb     0x5836e6
5836e2:	3b c8                	cmp    %eax,%ecx
5836e4:	77 21                	ja     0x583707
5836e6:	83 ec 18             	sub    $0x18,%esp
5836e9:	8b c4                	mov    %esp,%eax
5836eb:	53                   	push   %ebx
5836ec:	51                   	push   %ecx
5836ed:	8b c8                	mov    %eax,%ecx
5836ef:	e8 cc c7 ff ff       	call   0x57fec0
5836f4:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5836f7:	e8 54 ca ff ff       	call   0x580150
5836fc:	b0 01                	mov    $0x1,%al
5836fe:	5f                   	pop    %edi
5836ff:	5e                   	pop    %esi
583700:	5b                   	pop    %ebx
583701:	8b e5                	mov    %ebp,%esp
583703:	5d                   	pop    %ebp
583704:	c2 08 00             	ret    $0x8
583707:	83 ec 18             	sub    $0x18,%esp
58370a:	8b c4                	mov    %esp,%eax
58370c:	53                   	push   %ebx
58370d:	51                   	push   %ecx
58370e:	8b c8                	mov    %eax,%ecx
583710:	e8 eb c7 ff ff       	call   0x57ff00
583715:	8b 4d 0c             	mov    0xc(%ebp),%ecx
583718:	e8 33 ca ff ff       	call   0x580150
58371d:	5f                   	pop    %edi
58371e:	5e                   	pop    %esi
58371f:	b0 01                	mov    $0x1,%al
583721:	5b                   	pop    %ebx
583722:	8b e5                	mov    %ebp,%esp
583724:	5d                   	pop    %ebp
583725:	c2 08 00             	ret    $0x8
583728:	cc                   	int3
583729:	cc                   	int3
58372a:	cc                   	int3
58372b:	cc                   	int3
58372c:	cc                   	int3
58372d:	cc                   	int3
58372e:	cc                   	int3
58372f:	cc                   	int3
583730:	55                   	push   %ebp
583731:	8b ec                	mov    %esp,%ebp
583733:	6a ff                	push   $0xffffffff
583735:	68 10 d1 65 00       	push   $0x65d110
58373a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
583740:	50                   	push   %eax
583741:	83 ec 3c             	sub    $0x3c,%esp
583744:	a1 d4 89 72 00       	mov    0x7289d4,%eax
583749:	33 c5                	xor    %ebp,%eax
58374b:	89 45 f0             	mov    %eax,-0x10(%ebp)
58374e:	53                   	push   %ebx
58374f:	56                   	push   %esi
583750:	57                   	push   %edi
583751:	50                   	push   %eax
583752:	8d 45 f4             	lea    -0xc(%ebp),%eax
583755:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
58375b:	8b f9                	mov    %ecx,%edi
58375d:	8b 5d 08             	mov    0x8(%ebp),%ebx
583760:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
583767:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
58376e:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
583772:	8d 45 d8             	lea    -0x28(%ebp),%eax
583775:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
58377c:	50                   	push   %eax
58377d:	53                   	push   %ebx
58377e:	e8 fd 00 00 00       	call   0x583880
583783:	84 c0                	test   %al,%al
583785:	75 07                	jne    0x58378e
583787:	32 db                	xor    %bl,%bl
583789:	e9 9b 00 00 00       	jmp    0x583829
58378e:	8d 45 d8             	lea    -0x28(%ebp),%eax
583791:	50                   	push   %eax
583792:	8d 4d b8             	lea    -0x48(%ebp),%ecx
583795:	e8 46 c5 ff ff       	call   0x57fce0
58379a:	8b 47 0c             	mov    0xc(%edi),%eax
58379d:	03 47 10             	add    0x10(%edi),%eax
5837a0:	8b 4f 04             	mov    0x4(%edi),%ecx
5837a3:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5837a7:	8d 70 ff             	lea    -0x1(%eax),%esi
5837aa:	8d 45 b8             	lea    -0x48(%ebp),%eax
5837ad:	8b d6                	mov    %esi,%edx
5837af:	50                   	push   %eax
5837b0:	8b 47 08             	mov    0x8(%edi),%eax
5837b3:	83 e6 03             	and    $0x3,%esi
5837b6:	c1 ea 02             	shr    $0x2,%edx
5837b9:	48                   	dec    %eax
5837ba:	23 d0                	and    %eax,%edx
5837bc:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
5837bf:	8b 0c b1             	mov    (%ecx,%esi,4),%ecx
5837c2:	e8 a9 e8 ff ff       	call   0x582070
5837c7:	8b 47 0c             	mov    0xc(%edi),%eax
5837ca:	03 47 10             	add    0x10(%edi),%eax
5837cd:	8b 4f 04             	mov    0x4(%edi),%ecx
5837d0:	8d 70 ff             	lea    -0x1(%eax),%esi
5837d3:	8b 43 04             	mov    0x4(%ebx),%eax
5837d6:	2b 47 40             	sub    0x40(%edi),%eax
5837d9:	8b d6                	mov    %esi,%edx
5837db:	50                   	push   %eax
5837dc:	8b 47 08             	mov    0x8(%edi),%eax
5837df:	83 e6 03             	and    $0x3,%esi
5837e2:	c1 ea 02             	shr    $0x2,%edx
5837e5:	48                   	dec    %eax
5837e6:	23 d0                	and    %eax,%edx
5837e8:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
5837eb:	8b 0c b1             	mov    (%ecx,%esi,4),%ecx
5837ee:	e8 7d e7 ff ff       	call   0x581f70
5837f3:	8b 47 0c             	mov    0xc(%edi),%eax
5837f6:	03 47 10             	add    0x10(%edi),%eax
5837f9:	8b 4f 04             	mov    0x4(%edi),%ecx
5837fc:	8d 70 ff             	lea    -0x1(%eax),%esi
5837ff:	8b 43 08             	mov    0x8(%ebx),%eax
583802:	2b 47 40             	sub    0x40(%edi),%eax
583805:	8b d6                	mov    %esi,%edx
583807:	50                   	push   %eax
583808:	8b 47 08             	mov    0x8(%edi),%eax
58380b:	83 e6 03             	and    $0x3,%esi
58380e:	c1 ea 02             	shr    $0x2,%edx
583811:	48                   	dec    %eax
583812:	23 d0                	and    %eax,%edx
583814:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
583817:	8b 0c b1             	mov    (%ecx,%esi,4),%ecx
58381a:	e8 41 e7 ff ff       	call   0x581f60
58381f:	8d 4d b8             	lea    -0x48(%ebp),%ecx
583822:	b3 01                	mov    $0x1,%bl
583824:	e8 57 c8 ff ff       	call   0x580080
583829:	8b 55 ec             	mov    -0x14(%ebp),%edx
58382c:	83 fa 10             	cmp    $0x10,%edx
58382f:	72 28                	jb     0x583859
583831:	8b 4d d8             	mov    -0x28(%ebp),%ecx
583834:	42                   	inc    %edx