5ef530:	23 c6                	and    %esi,%eax
5ef532:	eb 4c                	jmp    0x5ef580
5ef534:	8d 45 e8             	lea    -0x18(%ebp),%eax
5ef537:	89 55 e8             	mov    %edx,-0x18(%ebp)
5ef53a:	50                   	push   %eax
5ef53b:	51                   	push   %ecx
5ef53c:	89 55 ec             	mov    %edx,-0x14(%ebp)
5ef53f:	89 55 f0             	mov    %edx,-0x10(%ebp)
5ef542:	89 55 f4             	mov    %edx,-0xc(%ebp)
5ef545:	e8 0c 87 ff ff       	call   0x5e7c56
5ef54a:	59                   	pop    %ecx
5ef54b:	59                   	pop    %ecx
5ef54c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
5ef54f:	e8 db 89 ff ff       	call   0x5e7f2f
5ef554:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5ef558:	8b f0                	mov    %eax,%esi
5ef55a:	74 09                	je     0x5ef565
5ef55c:	ff 75 f0             	push   -0x10(%ebp)
5ef55f:	e8 c9 09 ff ff       	call   0x5dff2d
5ef564:	59                   	pop    %ecx
5ef565:	8b c6                	mov    %esi,%eax
5ef567:	eb 19                	jmp    0x5ef582
5ef569:	8b 45 10             	mov    0x10(%ebp),%eax
5ef56c:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
5ef571:	3b c1                	cmp    %ecx,%eax
5ef573:	72 02                	jb     0x5ef577
5ef575:	8b c1                	mov    %ecx,%eax
5ef577:	50                   	push   %eax
5ef578:	ff 75 08             	push   0x8(%ebp)
5ef57b:	e8 90 8a ff ff       	call   0x5e8010
5ef580:	59                   	pop    %ecx
5ef581:	59                   	pop    %ecx
5ef582:	5e                   	pop    %esi
5ef583:	c9                   	leave
5ef584:	c3                   	ret
5ef585:	8b ff                	mov    %edi,%edi
5ef587:	55                   	push   %ebp
5ef588:	8b ec                	mov    %esp,%ebp
5ef58a:	6a 00                	push   $0x0
5ef58c:	6a 00                	push   $0x0
5ef58e:	6a 01                	push   $0x1
5ef590:	ff 75 10             	push   0x10(%ebp)
5ef593:	ff 75 0c             	push   0xc(%ebp)
5ef596:	ff 75 08             	push   0x8(%ebp)
5ef599:	e8 4f ff ff ff       	call   0x5ef4ed
5ef59e:	83 c4 18             	add    $0x18,%esp
5ef5a1:	5d                   	pop    %ebp
5ef5a2:	c3                   	ret
5ef5a3:	8b ff                	mov    %edi,%edi
5ef5a5:	55                   	push   %ebp
5ef5a6:	8b ec                	mov    %esp,%ebp
5ef5a8:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ef5ab:	33 c0                	xor    %eax,%eax
5ef5ad:	53                   	push   %ebx
5ef5ae:	56                   	push   %esi
5ef5af:	57                   	push   %edi
5ef5b0:	66 39 01             	cmp    %ax,(%ecx)
5ef5b3:	74 31                	je     0x5ef5e6
5ef5b5:	8b 55 0c             	mov    0xc(%ebp),%edx
5ef5b8:	0f b7 3a             	movzwl (%edx),%edi
5ef5bb:	8b f2                	mov    %edx,%esi
5ef5bd:	66 85 ff             	test   %di,%di
5ef5c0:	74 1c                	je     0x5ef5de
5ef5c2:	0f b7 01             	movzwl (%ecx),%eax
5ef5c5:	8b df                	mov    %edi,%ebx
5ef5c7:	66 3b d8             	cmp    %ax,%bx
5ef5ca:	74 21                	je     0x5ef5ed
5ef5cc:	83 c6 02             	add    $0x2,%esi
5ef5cf:	0f b7 06             	movzwl (%esi),%eax
5ef5d2:	8b d8                	mov    %eax,%ebx
5ef5d4:	66 85 c0             	test   %ax,%ax
5ef5d7:	0f b7 01             	movzwl (%ecx),%eax
5ef5da:	75 eb                	jne    0x5ef5c7
5ef5dc:	33 c0                	xor    %eax,%eax
5ef5de:	83 c1 02             	add    $0x2,%ecx
5ef5e1:	66 39 01             	cmp    %ax,(%ecx)
5ef5e4:	75 d5                	jne    0x5ef5bb
5ef5e6:	33 c0                	xor    %eax,%eax
5ef5e8:	5f                   	pop    %edi
5ef5e9:	5e                   	pop    %esi
5ef5ea:	5b                   	pop    %ebx
5ef5eb:	5d                   	pop    %ebp
5ef5ec:	c3                   	ret
5ef5ed:	8b c1                	mov    %ecx,%eax
5ef5ef:	eb f7                	jmp    0x5ef5e8
5ef5f1:	8b ff                	mov    %edi,%edi
5ef5f3:	55                   	push   %ebp
5ef5f4:	8b ec                	mov    %esp,%ebp
5ef5f6:	83 ec 44             	sub    $0x44,%esp
5ef5f9:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5ef5fe:	33 c5                	xor    %ebp,%eax
5ef600:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ef603:	53                   	push   %ebx
5ef604:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5ef607:	56                   	push   %esi
5ef608:	57                   	push   %edi
5ef609:	8b 7d 08             	mov    0x8(%ebp),%edi
5ef60c:	81 c7 94 f8 ff ff    	add    $0xfffff894,%edi
5ef612:	83 ff 46             	cmp    $0x46,%edi
5ef615:	0f 8c 79 01 00 00    	jl     0x5ef794
5ef61b:	81 ff 4d 04 00 00    	cmp    $0x44d,%edi
5ef621:	0f 87 6d 01 00 00    	ja     0x5ef794
5ef627:	8d 43 ff             	lea    -0x1(%ebx),%eax
5ef62a:	83 f8 0b             	cmp    $0xb,%eax
5ef62d:	0f 87 61 01 00 00    	ja     0x5ef794
5ef633:	ff 75 10             	push   0x10(%ebp)
5ef636:	50                   	push   %eax
5ef637:	57                   	push   %edi
5ef638:	e8 10 80 ff ff       	call   0x5e764d
5ef63d:	83 c4 0c             	add    $0xc,%esp
5ef640:	84 c0                	test   %al,%al
5ef642:	0f 84 4c 01 00 00    	je     0x5ef794
5ef648:	83 7d 14 17          	cmpl   $0x17,0x14(%ebp)
5ef64c:	0f 87 42 01 00 00    	ja     0x5ef794
5ef652:	83 7d 18 3b          	cmpl   $0x3b,0x18(%ebp)
5ef656:	0f 87 38 01 00 00    	ja     0x5ef794
5ef65c:	83 7d 1c 3b          	cmpl   $0x3b,0x1c(%ebp)
5ef660:	0f 87 2e 01 00 00    	ja     0x5ef794
5ef666:	8b 34 9d d4 52 67 00 	mov    0x6752d4(,%ebx,4),%esi
5ef66d:	03 75 10             	add    0x10(%ebp),%esi
5ef670:	57                   	push   %edi
5ef671:	e8 4d 78 ff ff       	call   0x5e6ec3
5ef676:	59                   	pop    %ecx
5ef677:	84 c0                	test   %al,%al
5ef679:	74 06                	je     0x5ef681
5ef67b:	83 fb 02             	cmp    $0x2,%ebx
5ef67e:	7e 01                	jle    0x5ef681
5ef680:	46                   	inc    %esi
5ef681:	e8 64 13 00 00       	call   0x5f09ea
5ef686:	33 c0                	xor    %eax,%eax
5ef688:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5ef68b:	89 45 c8             	mov    %eax,-0x38(%ebp)
5ef68e:	89 45 cc             	mov    %eax,-0x34(%ebp)
5ef691:	8d 45 c4             	lea    -0x3c(%ebp),%eax
5ef694:	50                   	push   %eax
5ef695:	e8 2f 7f ff ff       	call   0x5e75c9
5ef69a:	59                   	pop    %ecx
5ef69b:	85 c0                	test   %eax,%eax
5ef69d:	0f 85 10 01 00 00    	jne    0x5ef7b3
5ef6a3:	8d 45 c8             	lea    -0x38(%ebp),%eax
5ef6a6:	50                   	push   %eax
5ef6a7:	e8 49 7f ff ff       	call   0x5e75f5
5ef6ac:	59                   	pop    %ecx
5ef6ad:	85 c0                	test   %eax,%eax
5ef6af:	0f 85 fe 00 00 00    	jne    0x5ef7b3
5ef6b5:	8d 45 cc             	lea    -0x34(%ebp),%eax
5ef6b8:	50                   	push   %eax
5ef6b9:	e8 63 7f ff ff       	call   0x5e7621
5ef6be:	59                   	pop    %ecx
5ef6bf:	85 c0                	test   %eax,%eax
5ef6c1:	0f 85 ec 00 00 00    	jne    0x5ef7b3
5ef6c7:	57                   	push   %edi
5ef6c8:	e8 bc 77 ff ff       	call   0x5e6e89
5ef6cd:	59                   	pop    %ecx
5ef6ce:	b9 80 51 01 00       	mov    $0x15180,%ecx
5ef6d3:	f7 e9                	imul   %ecx
5ef6d5:	6a 3c                	push   $0x3c
5ef6d7:	8b c8                	mov    %eax,%ecx
5ef6d9:	89 55 d4             	mov    %edx,-0x2c(%ebp)
5ef6dc:	8b c6                	mov    %esi,%eax
5ef6de:	ba 80 51 01 00       	mov    $0x15180,%edx
5ef6e3:	f7 ea                	imul   %edx
5ef6e5:	03 c8                	add    %eax,%ecx
5ef6e7:	8b c7                	mov    %edi,%eax
5ef6e9:	11 55 d4             	adc    %edx,-0x2c(%ebp)
5ef6ec:	ba 80 33 e1 01       	mov    $0x1e13380,%edx
5ef6f1:	f7 ea                	imul   %edx
5ef6f3:	03 c8                	add    %eax,%ecx
5ef6f5:	8b 45 14             	mov    0x14(%ebp),%eax
5ef6f8:	11 55 d4             	adc    %edx,-0x2c(%ebp)
5ef6fb:	ba 10 0e 00 00       	mov    $0xe10,%edx
5ef700:	f7 ea                	imul   %edx
5ef702:	03 c8                	add    %eax,%ecx
5ef704:	8b 45 18             	mov    0x18(%ebp),%eax
5ef707:	11 55 d4             	adc    %edx,-0x2c(%ebp)
5ef70a:	5a                   	pop    %edx
5ef70b:	f7 ea                	imul   %edx
5ef70d:	03 c8                	add    %eax,%ecx
5ef70f:	8b 45 cc             	mov    -0x34(%ebp),%eax
5ef712:	11 55 d4             	adc    %edx,-0x2c(%ebp)
5ef715:	99                   	cltd
5ef716:	03 c8                	add    %eax,%ecx
5ef718:	89 4d d0             	mov    %ecx,-0x30(%ebp)
5ef71b:	11 55 d4             	adc    %edx,-0x2c(%ebp)
5ef71e:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
5ef721:	8b c1                	mov    %ecx,%eax
5ef723:	99                   	cltd
5ef724:	01 45 d0             	add    %eax,-0x30(%ebp)
5ef727:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5ef72a:	13 c2                	adc    %edx,%eax
5ef72c:	81 6d d0 00 15 94 83 	subl   $0x83941500,-0x30(%ebp)
5ef733:	83 d8 00             	sbb    $0x0,%eax
5ef736:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5ef739:	8b 45 c8             	mov    -0x38(%ebp),%eax
5ef73c:	99                   	cltd
5ef73d:	03 45 d0             	add    -0x30(%ebp),%eax
5ef740:	89 45 c0             	mov    %eax,-0x40(%ebp)
5ef743:	13 55 d4             	adc    -0x2c(%ebp),%edx
5ef746:	83 7d 20 01          	cmpl   $0x1,0x20(%ebp)
5ef74a:	89 55 bc             	mov    %edx,-0x44(%ebp)
5ef74d:	74 55                	je     0x5ef7a4
5ef74f:	83 7d 20 ff          	cmpl   $0xffffffff,0x20(%ebp)
5ef753:	8d 43 ff             	lea    -0x1(%ebx),%eax
5ef756:	89 45 e8             	mov    %eax,-0x18(%ebp)
5ef759:	8b 45 14             	mov    0x14(%ebp),%eax
5ef75c:	89 45 e0             	mov    %eax,-0x20(%ebp)
5ef75f:	8b 45 18             	mov    0x18(%ebp),%eax
5ef762:	89 75 f4             	mov    %esi,-0xc(%ebp)
5ef765:	89 7d ec             	mov    %edi,-0x14(%ebp)
5ef768:	89 45 dc             	mov    %eax,-0x24(%ebp)
5ef76b:	89 4d d8             	mov    %ecx,-0x28(%ebp)
5ef76e:	75 14                	jne    0x5ef784
5ef770:	83 7d c4 00          	cmpl   $0x0,-0x3c(%ebp)
5ef774:	74 0e                	je     0x5ef784
5ef776:	8d 45 d8             	lea    -0x28(%ebp),%eax
5ef779:	50                   	push   %eax
5ef77a:	e8 c8 12 00 00       	call   0x5f0a47
5ef77f:	59                   	pop    %ecx
5ef780:	85 c0                	test   %eax,%eax
5ef782:	75 08                	jne    0x5ef78c
5ef784:	8b 45 d0             	mov    -0x30(%ebp),%eax
5ef787:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5ef78a:	eb 18                	jmp    0x5ef7a4
5ef78c:	8b 45 c0             	mov    -0x40(%ebp),%eax
5ef78f:	8b 55 bc             	mov    -0x44(%ebp),%edx
5ef792:	eb 10                	jmp    0x5ef7a4
5ef794:	e8 ef b4 fe ff       	call   0x5dac88
5ef799:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5ef79f:	83 c8 ff             	or     $0xffffffff,%eax
5ef7a2:	0b d0                	or     %eax,%edx
5ef7a4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5ef7a7:	5f                   	pop    %edi
5ef7a8:	5e                   	pop    %esi
5ef7a9:	33 cd                	xor    %ebp,%ecx
5ef7ab:	5b                   	pop    %ebx
5ef7ac:	e8 75 22 fe ff       	call   0x5d1a26
5ef7b1:	c9                   	leave
5ef7b2:	c3                   	ret
5ef7b3:	33 c0                	xor    %eax,%eax
5ef7b5:	50                   	push   %eax
5ef7b6:	50                   	push   %eax
5ef7b7:	50                   	push   %eax
5ef7b8:	50                   	push   %eax
5ef7b9:	50                   	push   %eax
5ef7ba:	e8 4e 6a fe ff       	call   0x5d620d
5ef7bf:	cc                   	int3
5ef7c0:	8b ff                	mov    %edi,%edi
5ef7c2:	55                   	push   %ebp
5ef7c3:	8b ec                	mov    %esp,%ebp
5ef7c5:	5d                   	pop    %ebp
5ef7c6:	e9 26 fe ff ff       	jmp    0x5ef5f1
5ef7cb:	8b ff                	mov    %edi,%edi
5ef7cd:	55                   	push   %ebp
5ef7ce:	8b ec                	mov    %esp,%ebp
5ef7d0:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ef7d3:	83 f9 fe             	cmp    $0xfffffffe,%ecx
5ef7d6:	75 0d                	jne    0x5ef7e5
5ef7d8:	e8 ab b4 fe ff       	call   0x5dac88
5ef7dd:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
5ef7e3:	eb 38                	jmp    0x5ef81d
5ef7e5:	85 c9                	test   %ecx,%ecx
5ef7e7:	78 24                	js     0x5ef80d
5ef7e9:	3b 0d a8 72 71 00    	cmp    0x7172a8,%ecx
5ef7ef:	73 1c                	jae    0x5ef80d
5ef7f1:	8b c1                	mov    %ecx,%eax
5ef7f3:	83 e1 3f             	and    $0x3f,%ecx
5ef7f6:	c1 e8 06             	shr    $0x6,%eax
5ef7f9:	6b c9 38             	imul   $0x38,%ecx,%ecx
5ef7fc:	8b 04 85 a8 70 71 00 	mov    0x7170a8(,%eax,4),%eax
5ef803:	0f b6 44 08 28       	movzbl 0x28(%eax,%ecx,1),%eax
5ef808:	83 e0 40             	and    $0x40,%eax
5ef80b:	5d                   	pop    %ebp
5ef80c:	c3                   	ret
5ef80d:	e8 76 b4 fe ff       	call   0x5dac88
5ef812:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
5ef818:	e8 c3 69 fe ff       	call   0x5d61e0
5ef81d:	33 c0                	xor    %eax,%eax
5ef81f:	5d                   	pop    %ebp
5ef820:	c3                   	ret
5ef821:	83 3d b4 72 71 00 00 	cmpl   $0x0,0x7172b4
5ef828:	75 0a                	jne    0x5ef834
5ef82a:	c7 05 b4 72 71 00 00 	movl   $0x4000,0x7172b4
5ef831:	40 00 00
5ef834:	33 c0                	xor    %eax,%eax
5ef836:	c3                   	ret
5ef837:	8b ff                	mov    %edi,%edi
5ef839:	55                   	push   %ebp
5ef83a:	8b ec                	mov    %esp,%ebp
5ef83c:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ef83f:	80 39 00             	cmpb   $0x0,(%ecx)
5ef842:	75 05                	jne    0x5ef849
5ef844:	33 c0                	xor    %eax,%eax
5ef846:	40                   	inc    %eax
5ef847:	eb 16                	jmp    0x5ef85f
5ef849:	80 79 01 00          	cmpb   $0x0,0x1(%ecx)
5ef84d:	75 05                	jne    0x5ef854
5ef84f:	6a 02                	push   $0x2
5ef851:	58                   	pop    %eax
5ef852:	eb 0b                	jmp    0x5ef85f
5ef854:	33 c0                	xor    %eax,%eax
5ef856:	38 41 02             	cmp    %al,0x2(%ecx)
5ef859:	0f 95 c0             	setne  %al
5ef85c:	83 c0 03             	add    $0x3,%eax
5ef85f:	5d                   	pop    %ebp
5ef860:	c2 04 00             	ret    $0x4
5ef863:	8b ff                	mov    %edi,%edi
5ef865:	55                   	push   %ebp
5ef866:	8b ec                	mov    %esp,%ebp
5ef868:	51                   	push   %ecx
5ef869:	ff 75 18             	push   0x18(%ebp)
5ef86c:	8d 45 fc             	lea    -0x4(%ebp),%eax
5ef86f:	ff 75 14             	push   0x14(%ebp)
5ef872:	ff 75 10             	push   0x10(%ebp)
5ef875:	ff 75 0c             	push   0xc(%ebp)
5ef878:	50                   	push   %eax
5ef879:	e8 8e 5d 00 00       	call   0x5f560c
5ef87e:	8b d0                	mov    %eax,%edx
5ef880:	83 c4 14             	add    $0x14,%esp
5ef883:	83 fa 04             	cmp    $0x4,%edx
5ef886:	77 1a                	ja     0x5ef8a2
5ef888:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5ef88b:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
5ef891:	76 05                	jbe    0x5ef898
5ef893:	b9 fd ff 00 00       	mov    $0xfffd,%ecx
5ef898:	8b 45 08             	mov    0x8(%ebp),%eax
5ef89b:	85 c0                	test   %eax,%eax
5ef89d:	74 03                	je     0x5ef8a2
5ef89f:	66 89 08             	mov    %cx,(%eax)
5ef8a2:	8b c2                	mov    %edx,%eax
5ef8a4:	c9                   	leave
5ef8a5:	c3                   	ret
5ef8a6:	8b ff                	mov    %edi,%edi
5ef8a8:	55                   	push   %ebp
5ef8a9:	8b ec                	mov    %esp,%ebp
5ef8ab:	51                   	push   %ecx
5ef8ac:	51                   	push   %ecx
5ef8ad:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5ef8b1:	53                   	push   %ebx
5ef8b2:	56                   	push   %esi
5ef8b3:	57                   	push   %edi
5ef8b4:	8b 7d 0c             	mov    0xc(%ebp),%edi
5ef8b7:	8b 3f                	mov    (%edi),%edi
5ef8b9:	0f 84 a4 00 00 00    	je     0x5ef963
5ef8bf:	8b 5d 10             	mov    0x10(%ebp),%ebx
5ef8c2:	8b 75 08             	mov    0x8(%ebp),%esi
5ef8c5:	85 db                	test   %ebx,%ebx
5ef8c7:	74 6b                	je     0x5ef934
5ef8c9:	57                   	push   %edi
5ef8ca:	8d 4d ff             	lea    -0x1(%ebp),%ecx
5ef8cd:	e8 65 ff ff ff       	call   0x5ef837