5fd642:	8b 45 10             	mov    0x10(%ebp),%eax
5fd645:	8b 40 14             	mov    0x14(%eax),%eax
5fd648:	8d 88 6c 07 00 00    	lea    0x76c(%eax),%ecx
5fd64e:	81 f9 0f 27 00 00    	cmp    $0x270f,%ecx
5fd654:	0f 87 55 f9 ff ff    	ja     0x5fcfaf
5fd65a:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
5fd65e:	0f 95 c0             	setne  %al
5fd661:	fe c8                	dec    %al
5fd663:	24 30                	and    $0x30,%al
5fd665:	0f b6 c0             	movzbl %al,%eax
5fd668:	50                   	push   %eax
5fd669:	ff 75 18             	push   0x18(%ebp)
5fd66c:	ff 75 14             	push   0x14(%ebp)
5fd66f:	6a 04                	push   $0x4
5fd671:	e9 c7 f7 ff ff       	jmp    0x5fce3d
5fd676:	e8 ea af 00 00       	call   0x608665
5fd67b:	33 f6                	xor    %esi,%esi
5fd67d:	89 75 f8             	mov    %esi,-0x8(%ebp)
5fd680:	e8 e8 a7 00 00       	call   0x607e6d
5fd685:	8b 4d 10             	mov    0x10(%ebp),%ecx
5fd688:	ff 75 08             	push   0x8(%ebp)
5fd68b:	8b 7d 18             	mov    0x18(%ebp),%edi
5fd68e:	8b 5d 14             	mov    0x14(%ebp),%ebx
5fd691:	8b 49 20             	mov    0x20(%ecx),%ecx
5fd694:	f7 d9                	neg    %ecx
5fd696:	6a ff                	push   $0xffffffff
5fd698:	1b c9                	sbb    %ecx,%ecx
5fd69a:	83 e1 04             	and    $0x4,%ecx
5fd69d:	8b 04 08             	mov    (%eax,%ecx,1),%eax
5fd6a0:	50                   	push   %eax
5fd6a1:	ff 37                	push   (%edi)
5fd6a3:	8d 45 f8             	lea    -0x8(%ebp),%eax
5fd6a6:	ff 33                	push   (%ebx)
5fd6a8:	50                   	push   %eax
5fd6a9:	e8 f8 92 ff ff       	call   0x5f69a6
5fd6ae:	83 c4 18             	add    $0x18,%esp
5fd6b1:	85 c0                	test   %eax,%eax
5fd6b3:	74 0a                	je     0x5fd6bf
5fd6b5:	83 f8 16             	cmp    $0x16,%eax
5fd6b8:	74 2e                	je     0x5fd6e8
5fd6ba:	83 f8 22             	cmp    $0x22,%eax
5fd6bd:	74 29                	je     0x5fd6e8
5fd6bf:	83 f8 50             	cmp    $0x50,%eax
5fd6c2:	75 0a                	jne    0x5fd6ce
5fd6c4:	8b 07                	mov    (%edi),%eax
5fd6c6:	03 c0                	add    %eax,%eax
5fd6c8:	01 03                	add    %eax,(%ebx)
5fd6ca:	89 37                	mov    %esi,(%edi)
5fd6cc:	eb 13                	jmp    0x5fd6e1
5fd6ce:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5fd6d1:	33 c0                	xor    %eax,%eax
5fd6d3:	40                   	inc    %eax
5fd6d4:	2b c1                	sub    %ecx,%eax
5fd6d6:	01 07                	add    %eax,(%edi)
5fd6d8:	8d 04 4d fe ff ff ff 	lea    -0x2(,%ecx,2),%eax
5fd6df:	01 03                	add    %eax,(%ebx)
5fd6e1:	b0 01                	mov    $0x1,%al
5fd6e3:	5f                   	pop    %edi
5fd6e4:	5e                   	pop    %esi
5fd6e5:	5b                   	pop    %ebx
5fd6e6:	c9                   	leave
5fd6e7:	c3                   	ret
5fd6e8:	56                   	push   %esi
5fd6e9:	56                   	push   %esi
5fd6ea:	56                   	push   %esi
5fd6eb:	56                   	push   %esi
5fd6ec:	56                   	push   %esi
5fd6ed:	e8 5a f8 fe ff       	call   0x5ecf4c
5fd6f2:	8d 49 00             	lea    0x0(%ecx),%ecx
5fd6f5:	e0 d4                	loopne 0x5fd6cb
5fd6f7:	5f                   	pop    %edi
5fd6f8:	00 2a                	add    %ch,(%edx)
5fd6fa:	d5 5f                	aad    $0x5f
5fd6fc:	00 37                	add    %dh,(%edi)
5fd6fe:	d5 5f                	aad    $0x5f
5fd700:	00 a4 d5 5f 00 ff d5 	add    %ah,-0x2a00ffa1(%ebp,%edx,8)
5fd707:	5f                   	pop    %edi
5fd708:	00 a4 d5 5f 00 2f d6 	add    %ah,-0x29d0ffa1(%ebp,%edx,8)
5fd70f:	5f                   	pop    %edi
5fd710:	00 42 d6             	add    %al,-0x2a(%edx)
5fd713:	5f                   	pop    %edi
5fd714:	00 8b ff 55 8b ec    	add    %cl,-0x1374aa01(%ebx)
5fd71a:	83 ec 10             	sub    $0x10,%esp
5fd71d:	66 8b 45 18          	mov    0x18(%ebp),%ax
5fd721:	0f b7 c8             	movzwl %ax,%ecx
5fd724:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5fd727:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5fd72a:	8b d1                	mov    %ecx,%edx
5fd72c:	66 85 c0             	test   %ax,%ax
5fd72f:	75 13                	jne    0x5fd744
5fd731:	ff 75 14             	push   0x14(%ebp)
5fd734:	ff 75 10             	push   0x10(%ebp)
5fd737:	ff 75 08             	push   0x8(%ebp)
5fd73a:	e8 6a 00 00 00       	call   0x5fd7a9
5fd73f:	83 c4 0c             	add    $0xc,%esp
5fd742:	c9                   	leave
5fd743:	c3                   	ret
5fd744:	56                   	push   %esi
5fd745:	8b 75 14             	mov    0x14(%ebp),%esi
5fd748:	3b 0e                	cmp    (%esi),%ecx
5fd74a:	73 57                	jae    0x5fd7a3
5fd74c:	53                   	push   %ebx
5fd74d:	33 db                	xor    %ebx,%ebx
5fd74f:	49                   	dec    %ecx
5fd750:	57                   	push   %edi
5fd751:	8b 7d 10             	mov    0x10(%ebp),%edi
5fd754:	85 d2                	test   %edx,%edx
5fd756:	74 40                	je     0x5fd798
5fd758:	8b 75 08             	mov    0x8(%ebp),%esi
5fd75b:	c7 45 fc 0a 00 00 00 	movl   $0xa,-0x4(%ebp)
5fd762:	89 4d f0             	mov    %ecx,-0x10(%ebp)
5fd765:	85 f6                	test   %esi,%esi
5fd767:	74 0e                	je     0x5fd777
5fd769:	8b c6                	mov    %esi,%eax
5fd76b:	99                   	cltd
5fd76c:	f7 7d fc             	idivl  -0x4(%ebp)
5fd76f:	83 c2 30             	add    $0x30,%edx
5fd772:	0f b7 c2             	movzwl %dx,%eax
5fd775:	eb 06                	jmp    0x5fd77d
5fd777:	8b 45 f8             	mov    -0x8(%ebp),%eax
5fd77a:	0f b7 c0             	movzwl %ax,%eax
5fd77d:	8b 17                	mov    (%edi),%edx
5fd77f:	6a 0a                	push   $0xa
5fd781:	66 89 04 4a          	mov    %ax,(%edx,%ecx,2)
5fd785:	8b c6                	mov    %esi,%eax
5fd787:	5e                   	pop    %esi
5fd788:	99                   	cltd
5fd789:	f7 fe                	idiv   %esi
5fd78b:	43                   	inc    %ebx
5fd78c:	49                   	dec    %ecx
5fd78d:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
5fd791:	8b f0                	mov    %eax,%esi
5fd793:	75 cd                	jne    0x5fd762
5fd795:	8b 75 14             	mov    0x14(%ebp),%esi
5fd798:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
5fd79b:	01 07                	add    %eax,(%edi)
5fd79d:	29 1e                	sub    %ebx,(%esi)
5fd79f:	5f                   	pop    %edi
5fd7a0:	5b                   	pop    %ebx
5fd7a1:	eb 03                	jmp    0x5fd7a6
5fd7a3:	83 26 00             	andl   $0x0,(%esi)
5fd7a6:	5e                   	pop    %esi
5fd7a7:	c9                   	leave
5fd7a8:	c3                   	ret
5fd7a9:	8b ff                	mov    %edi,%edi
5fd7ab:	55                   	push   %ebp
5fd7ac:	8b ec                	mov    %esp,%ebp
5fd7ae:	53                   	push   %ebx
5fd7af:	8b 5d 10             	mov    0x10(%ebp),%ebx
5fd7b2:	56                   	push   %esi
5fd7b3:	57                   	push   %edi
5fd7b4:	8b 7d 0c             	mov    0xc(%ebp),%edi
5fd7b7:	8b 03                	mov    (%ebx),%eax
5fd7b9:	8b 0f                	mov    (%edi),%ecx
5fd7bb:	83 f8 01             	cmp    $0x1,%eax
5fd7be:	76 47                	jbe    0x5fd807
5fd7c0:	8b 7d 08             	mov    0x8(%ebp),%edi
5fd7c3:	8b c7                	mov    %edi,%eax
5fd7c5:	8b f1                	mov    %ecx,%esi
5fd7c7:	99                   	cltd
5fd7c8:	6a 0a                	push   $0xa
5fd7ca:	5f                   	pop    %edi
5fd7cb:	f7 ff                	idiv   %edi
5fd7cd:	8b f8                	mov    %eax,%edi
5fd7cf:	8d 42 30             	lea    0x30(%edx),%eax
5fd7d2:	66 89 01             	mov    %ax,(%ecx)
5fd7d5:	83 c1 02             	add    $0x2,%ecx
5fd7d8:	8b 03                	mov    (%ebx),%eax
5fd7da:	48                   	dec    %eax
5fd7db:	89 03                	mov    %eax,(%ebx)
5fd7dd:	85 ff                	test   %edi,%edi
5fd7df:	7e 05                	jle    0x5fd7e6
5fd7e1:	83 f8 01             	cmp    $0x1,%eax
5fd7e4:	77 dd                	ja     0x5fd7c3
5fd7e6:	8b 7d 0c             	mov    0xc(%ebp),%edi
5fd7e9:	8b 17                	mov    (%edi),%edx
5fd7eb:	89 0f                	mov    %ecx,(%edi)
5fd7ed:	eb 12                	jmp    0x5fd801
5fd7ef:	66 8b 02             	mov    (%edx),%ax
5fd7f2:	0f b7 0e             	movzwl (%esi),%ecx
5fd7f5:	66 89 06             	mov    %ax,(%esi)
5fd7f8:	83 ee 02             	sub    $0x2,%esi
5fd7fb:	66 89 0a             	mov    %cx,(%edx)
5fd7fe:	83 c2 02             	add    $0x2,%edx
5fd801:	3b d6                	cmp    %esi,%edx
5fd803:	72 ea                	jb     0x5fd7ef
5fd805:	eb 09                	jmp    0x5fd810
5fd807:	03 c0                	add    %eax,%eax
5fd809:	2b c8                	sub    %eax,%ecx
5fd80b:	89 0f                	mov    %ecx,(%edi)
5fd80d:	83 23 00             	andl   $0x0,(%ebx)
5fd810:	5f                   	pop    %edi
5fd811:	5e                   	pop    %esi
5fd812:	5b                   	pop    %ebx
5fd813:	5d                   	pop    %ebp
5fd814:	c3                   	ret
5fd815:	8b ff                	mov    %edi,%edi
5fd817:	55                   	push   %ebp
5fd818:	8b ec                	mov    %esp,%ebp
5fd81a:	8b 4d 10             	mov    0x10(%ebp),%ecx
5fd81d:	83 39 00             	cmpl   $0x0,(%ecx)
5fd820:	74 22                	je     0x5fd844
5fd822:	8b 55 08             	mov    0x8(%ebp),%edx
5fd825:	56                   	push   %esi
5fd826:	8b 75 0c             	mov    0xc(%ebp),%esi
5fd829:	57                   	push   %edi
5fd82a:	0f b7 3a             	movzwl (%edx),%edi
5fd82d:	66 85 ff             	test   %di,%di
5fd830:	74 10                	je     0x5fd842
5fd832:	8b 06                	mov    (%esi),%eax
5fd834:	83 c2 02             	add    $0x2,%edx
5fd837:	66 89 38             	mov    %di,(%eax)
5fd83a:	83 06 02             	addl   $0x2,(%esi)
5fd83d:	83 29 01             	subl   $0x1,(%ecx)
5fd840:	75 e8                	jne    0x5fd82a
5fd842:	5f                   	pop    %edi
5fd843:	5e                   	pop    %esi
5fd844:	5d                   	pop    %ebp
5fd845:	c3                   	ret
5fd846:	8b ff                	mov    %edi,%edi
5fd848:	55                   	push   %ebp
5fd849:	8b ec                	mov    %esp,%ebp
5fd84b:	83 ec 30             	sub    $0x30,%esp
5fd84e:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5fd853:	33 c5                	xor    %ebp,%eax
5fd855:	89 45 fc             	mov    %eax,-0x4(%ebp)
5fd858:	8b 45 08             	mov    0x8(%ebp),%eax
5fd85b:	8b 55 10             	mov    0x10(%ebp),%edx
5fd85e:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
5fd861:	89 45 d0             	mov    %eax,-0x30(%ebp)
5fd864:	8b 45 14             	mov    0x14(%ebp),%eax
5fd867:	53                   	push   %ebx
5fd868:	8b 5d 18             	mov    0x18(%ebp),%ebx
5fd86b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5fd86e:	8b 45 0c             	mov    0xc(%ebp),%eax
5fd871:	89 55 d4             	mov    %edx,-0x2c(%ebp)
5fd874:	89 5d dc             	mov    %ebx,-0x24(%ebp)
5fd877:	89 4d d8             	mov    %ecx,-0x28(%ebp)
5fd87a:	56                   	push   %esi
5fd87b:	57                   	push   %edi
5fd87c:	83 e8 00             	sub    $0x0,%eax
5fd87f:	74 15                	je     0x5fd896
5fd881:	83 e8 01             	sub    $0x1,%eax
5fd884:	74 08                	je     0x5fd88e
5fd886:	8b b9 5c 01 00 00    	mov    0x15c(%ecx),%edi
5fd88c:	eb 0e                	jmp    0x5fd89c
5fd88e:	8b b9 58 01 00 00    	mov    0x158(%ecx),%edi
5fd894:	eb 06                	jmp    0x5fd89c
5fd896:	8b b9 54 01 00 00    	mov    0x154(%ecx),%edi
5fd89c:	83 b9 ac 00 00 00 01 	cmpl   $0x1,0xac(%ecx)
5fd8a3:	0f 84 c0 03 00 00    	je     0x5fdc69
5fd8a9:	b8 6c 07 00 00       	mov    $0x76c,%eax
5fd8ae:	66 03 42 14          	add    0x14(%edx),%ax
5fd8b2:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
5fd8b6:	66 8b 42 10          	mov    0x10(%edx),%ax
5fd8ba:	66 40                	inc    %ax
5fd8bc:	66 89 45 ee          	mov    %ax,-0x12(%ebp)
5fd8c0:	66 8b 42 0c          	mov    0xc(%edx),%ax
5fd8c4:	66 89 45 f2          	mov    %ax,-0xe(%ebp)
5fd8c8:	66 8b 42 08          	mov    0x8(%edx),%ax
5fd8cc:	66 89 45 f4          	mov    %ax,-0xc(%ebp)
5fd8d0:	66 8b 42 04          	mov    0x4(%edx),%ax
5fd8d4:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
5fd8d8:	66 8b 02             	mov    (%edx),%ax
5fd8db:	33 d2                	xor    %edx,%edx
5fd8dd:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
5fd8e1:	33 c0                	xor    %eax,%eax
5fd8e3:	83 7d 0c 02          	cmpl   $0x2,0xc(%ebp)
5fd8e7:	66 89 45 fa          	mov    %ax,-0x6(%ebp)
5fd8eb:	8b 81 60 01 00 00    	mov    0x160(%ecx),%eax
5fd8f1:	8d 4d ec             	lea    -0x14(%ebp),%ecx
5fd8f4:	52                   	push   %edx
5fd8f5:	52                   	push   %edx
5fd8f6:	75 0b                	jne    0x5fd903
5fd8f8:	57                   	push   %edi
5fd8f9:	51                   	push   %ecx
5fd8fa:	52                   	push   %edx
5fd8fb:	50                   	push   %eax
5fd8fc:	e8 c3 9d 00 00       	call   0x6076c4
5fd901:	eb 0a                	jmp    0x5fd90d
5fd903:	52                   	push   %edx
5fd904:	57                   	push   %edi
5fd905:	51                   	push   %ecx
5fd906:	52                   	push   %edx
5fd907:	50                   	push   %eax
5fd908:	e8 e2 9c 00 00       	call   0x6075ef
5fd90d:	8b d8                	mov    %eax,%ebx
5fd90f:	85 db                	test   %ebx,%ebx
5fd911:	0f 84 d7 00 00 00    	je     0x5fd9ee
5fd917:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
5fd91a:	8d 48 08             	lea    0x8(%eax),%ecx
5fd91d:	3b c1                	cmp    %ecx,%eax
5fd91f:	1b c0                	sbb    %eax,%eax
5fd921:	23 c1                	and    %ecx,%eax
5fd923:	74 40                	je     0x5fd965
5fd925:	3d 00 04 00 00       	cmp    $0x400,%eax
5fd92a:	77 1d                	ja     0x5fd949
5fd92c:	e8 1f 45 fe ff       	call   0x5e1e50
5fd931:	8b f4                	mov    %esp,%esi
5fd933:	89 75 e8             	mov    %esi,-0x18(%ebp)
5fd936:	85 f6                	test   %esi,%esi
5fd938:	0f 84 a8 00 00 00    	je     0x5fd9e6
5fd93e:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
5fd944:	83 c6 08             	add    $0x8,%esi
5fd947:	eb 1e                	jmp    0x5fd967
5fd949:	50                   	push   %eax
5fd94a:	e8 a6 84 00 00       	call   0x605df5
5fd94f:	8b f0                	mov    %eax,%esi
5fd951:	89 75 e8             	mov    %esi,-0x18(%ebp)
5fd954:	59                   	pop    %ecx
5fd955:	85 f6                	test   %esi,%esi
5fd957:	0f 84 89 00 00 00    	je     0x5fd9e6
5fd95d:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
5fd963:	eb df                	jmp    0x5fd944
5fd965:	33 f6                	xor    %esi,%esi
5fd967:	89 75 e8             	mov    %esi,-0x18(%ebp)
5fd96a:	85 f6                	test   %esi,%esi
5fd96c:	74 78                	je     0x5fd9e6
5fd96e:	83 7d 0c 02          	cmpl   $0x2,0xc(%ebp)
5fd972:	8d 4d ec             	lea    -0x14(%ebp),%ecx
5fd975:	8b 45 d8             	mov    -0x28(%ebp),%eax
5fd978:	8b 80 60 01 00 00    	mov    0x160(%eax),%eax
5fd97e:	75 0e                	jne    0x5fd98e
5fd980:	53                   	push   %ebx
5fd981:	56                   	push   %esi
5fd982:	57                   	push   %edi
5fd983:	51                   	push   %ecx
5fd984:	6a 00                	push   $0x0
5fd986:	50                   	push   %eax
5fd987:	e8 38 9d 00 00       	call   0x6076c4
5fd98c:	eb 0e                	jmp    0x5fd99c
5fd98e:	6a 00                	push   $0x0
5fd990:	53                   	push   %ebx
5fd991:	56                   	push   %esi
5fd992:	57                   	push   %edi
5fd993:	51                   	push   %ecx
5fd994:	6a 00                	push   $0x0
5fd996:	50                   	push   %eax
5fd997:	e8 53 9c 00 00       	call   0x6075ef
5fd99c:	8b d0                	mov    %eax,%edx
5fd99e:	8b fe                	mov    %esi,%edi
5fd9a0:	4a                   	dec    %edx
5fd9a1:	85 d2                	test   %edx,%edx
5fd9a3:	7e 26                	jle    0x5fd9cb
5fd9a5:	8b 5d dc             	mov    -0x24(%ebp),%ebx
5fd9a8:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5fd9ab:	8b 03                	mov    (%ebx),%eax
5fd9ad:	85 c0                	test   %eax,%eax
5fd9af:	74 17                	je     0x5fd9c8
5fd9b1:	8b 0e                	mov    (%esi),%ecx