5fb5f0:	8b 10                	mov    (%eax),%edx
5fb5f2:	ff 52 2c             	call   *0x2c(%edx)
5fb5f5:	50                   	push   %eax
5fb5f6:	8b 85 fc fb ff ff    	mov    -0x404(%ebp),%eax
5fb5fc:	e8 83 22 e3 ff       	call   0x42d884
5fb601:	8b d0                	mov    %eax,%edx
5fb603:	58                   	pop    %eax
5fb604:	e8 6b 55 ff ff       	call   0x5f0b74
5fb609:	8b d0                	mov    %eax,%edx
5fb60b:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb611:	8b 40 3c             	mov    0x3c(%eax),%eax
5fb614:	e8 03 de fa ff       	call   0x5a941c
5fb619:	8b d8                	mov    %eax,%ebx
5fb61b:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb621:	8b 40 34             	mov    0x34(%eax),%eax
5fb624:	48                   	dec    %eax
5fb625:	85 c0                	test   %eax,%eax
5fb627:	0f 8c eb 00 00 00    	jl     0x5fb718
5fb62d:	40                   	inc    %eax
5fb62e:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
5fb634:	c7 85 f4 fb ff ff 00 	movl   $0x0,-0x40c(%ebp)
5fb63b:	00 00 00
5fb63e:	8b 95 f4 fb ff ff    	mov    -0x40c(%ebp),%edx
5fb644:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb64a:	8b 08                	mov    (%eax),%ecx
5fb64c:	ff 11                	call   *(%ecx)
5fb64e:	50                   	push   %eax
5fb64f:	8b 95 f4 fb ff ff    	mov    -0x40c(%ebp),%edx
5fb655:	8b 85 fc fb ff ff    	mov    -0x404(%ebp),%eax
5fb65b:	e8 a8 22 e3 ff       	call   0x42d908
5fb660:	8b d0                	mov    %eax,%edx
5fb662:	8b cb                	mov    %ebx,%ecx
5fb664:	58                   	pop    %eax
5fb665:	e8 56 c8 e0 ff       	call   0x407ec0
5fb66a:	ff 85 f4 fb ff ff    	incl   -0x40c(%ebp)
5fb670:	ff 8d ec fb ff ff    	decl   -0x414(%ebp)
5fb676:	75 c6                	jne    0x5fb63e
5fb678:	e9 9b 00 00 00       	jmp    0x5fb718
5fb67d:	6a 05                	push   $0x5
5fb67f:	8b 85 fc fb ff ff    	mov    -0x404(%ebp),%eax
5fb685:	8b 10                	mov    (%eax),%edx
5fb687:	ff 52 20             	call   *0x20(%edx)
5fb68a:	50                   	push   %eax
5fb68b:	8b 85 fc fb ff ff    	mov    -0x404(%ebp),%eax
5fb691:	8b 10                	mov    (%eax),%edx
5fb693:	ff 52 2c             	call   *0x2c(%edx)
5fb696:	8b d0                	mov    %eax,%edx
5fb698:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb69e:	59                   	pop    %ecx
5fb69f:	8b 18                	mov    (%eax),%ebx
5fb6a1:	ff 53 24             	call   *0x24(%ebx)
5fb6a4:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb6aa:	8b 40 34             	mov    0x34(%eax),%eax
5fb6ad:	48                   	dec    %eax
5fb6ae:	85 c0                	test   %eax,%eax
5fb6b0:	7c 66                	jl     0x5fb718
5fb6b2:	40                   	inc    %eax
5fb6b3:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
5fb6b9:	c7 85 f4 fb ff ff 00 	movl   $0x0,-0x40c(%ebp)
5fb6c0:	00 00 00
5fb6c3:	8b 95 f4 fb ff ff    	mov    -0x40c(%ebp),%edx
5fb6c9:	8b 85 fc fb ff ff    	mov    -0x404(%ebp),%eax
5fb6cf:	e8 34 22 e3 ff       	call   0x42d908
5fb6d4:	8b f0                	mov    %eax,%esi
5fb6d6:	8b 95 f4 fb ff ff    	mov    -0x40c(%ebp),%edx
5fb6dc:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb6e2:	8b 08                	mov    (%eax),%ecx
5fb6e4:	ff 11                	call   *(%ecx)
5fb6e6:	8b 95 f8 fb ff ff    	mov    -0x408(%ebp),%edx
5fb6ec:	8b 5a 30             	mov    0x30(%edx),%ebx
5fb6ef:	4b                   	dec    %ebx
5fb6f0:	85 db                	test   %ebx,%ebx
5fb6f2:	7c 16                	jl     0x5fb70a
5fb6f4:	43                   	inc    %ebx
5fb6f5:	66 8b 16             	mov    (%esi),%dx
5fb6f8:	66 89 10             	mov    %dx,(%eax)
5fb6fb:	8a 56 02             	mov    0x2(%esi),%dl
5fb6fe:	88 50 02             	mov    %dl,0x2(%eax)
5fb701:	83 c0 03             	add    $0x3,%eax
5fb704:	83 c6 04             	add    $0x4,%esi
5fb707:	4b                   	dec    %ebx
5fb708:	75 eb                	jne    0x5fb6f5
5fb70a:	ff 85 f4 fb ff ff    	incl   -0x40c(%ebp)
5fb710:	ff 8d ec fb ff ff    	decl   -0x414(%ebp)
5fb716:	75 ab                	jne    0x5fb6c3
5fb718:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb71e:	c6 40 43 00          	movb   $0x0,0x43(%eax)
5fb722:	e9 db 00 00 00       	jmp    0x5fb802
5fb727:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb72d:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
5fb731:	75 15                	jne    0x5fb748
5fb733:	b2 01                	mov    $0x1,%dl
5fb735:	a1 ec 6a 42 00       	mov    0x426aec,%eax
5fb73a:	e8 91 1a e3 ff       	call   0x42d1d0
5fb73f:	8b 95 f8 fb ff ff    	mov    -0x408(%ebp),%edx
5fb745:	89 42 24             	mov    %eax,0x24(%edx)
5fb748:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb74e:	8b 50 24             	mov    0x24(%eax),%edx
5fb751:	8b 85 fc fb ff ff    	mov    -0x404(%ebp),%eax
5fb757:	e8 84 07 fb ff       	call   0x5abee0
5fb75c:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb762:	8b 40 24             	mov    0x24(%eax),%eax
5fb765:	8b 10                	mov    (%eax),%edx
5fb767:	ff 52 2c             	call   *0x2c(%edx)
5fb76a:	8b 95 f8 fb ff ff    	mov    -0x408(%ebp),%edx
5fb770:	89 42 30             	mov    %eax,0x30(%edx)
5fb773:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb779:	8b 40 24             	mov    0x24(%eax),%eax
5fb77c:	8b 10                	mov    (%eax),%edx
5fb77e:	ff 52 20             	call   *0x20(%edx)
5fb781:	8b 95 f8 fb ff ff    	mov    -0x408(%ebp),%edx
5fb787:	89 42 34             	mov    %eax,0x34(%edx)
5fb78a:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb790:	8b 40 24             	mov    0x24(%eax),%eax
5fb793:	e8 ec 20 e3 ff       	call   0x42d884
5fb798:	fe c8                	dec    %al
5fb79a:	74 06                	je     0x5fb7a2
5fb79c:	2c 05                	sub    $0x5,%al
5fb79e:	74 0e                	je     0x5fb7ae
5fb7a0:	eb 16                	jmp    0x5fb7b8
5fb7a2:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7a8:	c6 40 40 01          	movb   $0x1,0x40(%eax)
5fb7ac:	eb 0a                	jmp    0x5fb7b8
5fb7ae:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7b4:	c6 40 40 05          	movb   $0x5,0x40(%eax)
5fb7b8:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7be:	0f b6 40 40          	movzbl 0x40(%eax),%eax
5fb7c2:	8b 1c 85 fc 55 6a 00 	mov    0x6a55fc(,%eax,4),%ebx
5fb7c9:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7cf:	89 58 38             	mov    %ebx,0x38(%eax)
5fb7d2:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7d8:	8b 88 80 00 00 00    	mov    0x80(%eax),%ecx
5fb7de:	8b d3                	mov    %ebx,%edx
5fb7e0:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7e6:	8b 40 30             	mov    0x30(%eax),%eax
5fb7e9:	e8 f2 52 ff ff       	call   0x5f0ae0
5fb7ee:	8b 95 f8 fb ff ff    	mov    -0x408(%ebp),%edx
5fb7f4:	89 42 3c             	mov    %eax,0x3c(%edx)
5fb7f7:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
5fb7fd:	e8 7e c2 ff ff       	call   0x5f7a80
5fb802:	5f                   	pop    %edi
5fb803:	5e                   	pop    %esi
5fb804:	5b                   	pop    %ebx
5fb805:	8b e5                	mov    %ebp,%esp
5fb807:	5d                   	pop    %ebp
5fb808:	c3                   	ret
5fb809:	8d 40 00             	lea    0x0(%eax),%eax
5fb80c:	53                   	push   %ebx
5fb80d:	56                   	push   %esi
5fb80e:	57                   	push   %edi
5fb80f:	55                   	push   %ebp
5fb810:	51                   	push   %ecx
5fb811:	8b f2                	mov    %edx,%esi
5fb813:	8b d8                	mov    %eax,%ebx
5fb815:	85 f6                	test   %esi,%esi
5fb817:	0f 84 b4 00 00 00    	je     0x5fb8d1
5fb81d:	8b 46 0c             	mov    0xc(%esi),%eax
5fb820:	48                   	dec    %eax
5fb821:	74 0a                	je     0x5fb82d
5fb823:	83 e8 07             	sub    $0x7,%eax
5fb826:	74 57                	je     0x5fb87f
5fb828:	e9 b2 00 00 00       	jmp    0x5fb8df
5fb82d:	6a 01                	push   $0x1
5fb82f:	8b 4e 08             	mov    0x8(%esi),%ecx
5fb832:	8b 56 04             	mov    0x4(%esi),%edx
5fb835:	8b c3                	mov    %ebx,%eax
5fb837:	8b 38                	mov    (%eax),%edi
5fb839:	ff 57 24             	call   *0x24(%edi)
5fb83c:	8b 56 10             	mov    0x10(%esi),%edx
5fb83f:	8b 43 3c             	mov    0x3c(%ebx),%eax
5fb842:	e8 d5 db fa ff       	call   0x5a941c
5fb847:	89 04 24             	mov    %eax,(%esp)
5fb84a:	8b 6b 34             	mov    0x34(%ebx),%ebp
5fb84d:	4d                   	dec    %ebp
5fb84e:	85 ed                	test   %ebp,%ebp
5fb850:	7c 25                	jl     0x5fb877
5fb852:	45                   	inc    %ebp
5fb853:	33 ff                	xor    %edi,%edi
5fb855:	8b d7                	mov    %edi,%edx
5fb857:	8b c3                	mov    %ebx,%eax
5fb859:	8b 08                	mov    (%eax),%ecx
5fb85b:	ff 11                	call   *(%ecx)
5fb85d:	50                   	push   %eax
5fb85e:	8b d7                	mov    %edi,%edx
5fb860:	8b c6                	mov    %esi,%eax
5fb862:	e8 ad 8e ff ff       	call   0x5f4714
5fb867:	8b d0                	mov    %eax,%edx
5fb869:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5fb86d:	58                   	pop    %eax
5fb86e:	e8 4d c6 e0 ff       	call   0x407ec0
5fb873:	47                   	inc    %edi
5fb874:	4d                   	dec    %ebp
5fb875:	75 de                	jne    0x5fb855
5fb877:	8a 46 68             	mov    0x68(%esi),%al
5fb87a:	88 43 43             	mov    %al,0x43(%ebx)
5fb87d:	eb 60                	jmp    0x5fb8df
5fb87f:	6a 03                	push   $0x3
5fb881:	8b 4e 08             	mov    0x8(%esi),%ecx
5fb884:	8b 56 04             	mov    0x4(%esi),%edx
5fb887:	8b c3                	mov    %ebx,%eax
5fb889:	8b 38                	mov    (%eax),%edi
5fb88b:	ff 57 24             	call   *0x24(%edi)
5fb88e:	8b 56 10             	mov    0x10(%esi),%edx
5fb891:	8b 43 3c             	mov    0x3c(%ebx),%eax
5fb894:	e8 83 db fa ff       	call   0x5a941c
5fb899:	89 04 24             	mov    %eax,(%esp)
5fb89c:	8b 6b 34             	mov    0x34(%ebx),%ebp
5fb89f:	4d                   	dec    %ebp
5fb8a0:	85 ed                	test   %ebp,%ebp
5fb8a2:	7c 25                	jl     0x5fb8c9
5fb8a4:	45                   	inc    %ebp
5fb8a5:	33 ff                	xor    %edi,%edi
5fb8a7:	8b d7                	mov    %edi,%edx
5fb8a9:	8b c3                	mov    %ebx,%eax
5fb8ab:	8b 08                	mov    (%eax),%ecx
5fb8ad:	ff 11                	call   *(%ecx)
5fb8af:	50                   	push   %eax
5fb8b0:	8b d7                	mov    %edi,%edx
5fb8b2:	8b c6                	mov    %esi,%eax
5fb8b4:	e8 5b 8e ff ff       	call   0x5f4714
5fb8b9:	8b d0                	mov    %eax,%edx
5fb8bb:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5fb8bf:	58                   	pop    %eax
5fb8c0:	e8 fb c5 e0 ff       	call   0x407ec0
5fb8c5:	47                   	inc    %edi
5fb8c6:	4d                   	dec    %ebp
5fb8c7:	75 de                	jne    0x5fb8a7
5fb8c9:	8a 46 68             	mov    0x68(%esi),%al
5fb8cc:	88 43 43             	mov    %al,0x43(%ebx)
5fb8cf:	eb 0e                	jmp    0x5fb8df
5fb8d1:	68 00 e0 6f 40       	push   $0x406fe000
5fb8d6:	6a 00                	push   $0x0
5fb8d8:	8b c3                	mov    %ebx,%eax
5fb8da:	e8 e9 06 00 00       	call   0x5fbfc8
5fb8df:	5a                   	pop    %edx
5fb8e0:	5d                   	pop    %ebp
5fb8e1:	5f                   	pop    %edi
5fb8e2:	5e                   	pop    %esi
5fb8e3:	5b                   	pop    %ebx
5fb8e4:	c3                   	ret
5fb8e5:	8d 40 00             	lea    0x0(%eax),%eax
5fb8e8:	53                   	push   %ebx
5fb8e9:	56                   	push   %esi
5fb8ea:	57                   	push   %edi
5fb8eb:	55                   	push   %ebp
5fb8ec:	51                   	push   %ecx
5fb8ed:	89 14 24             	mov    %edx,(%esp)
5fb8f0:	8b d8                	mov    %eax,%ebx
5fb8f2:	83 3c 24 00          	cmpl   $0x0,(%esp)
5fb8f6:	0f 84 6f 01 00 00    	je     0x5fba6b
5fb8fc:	80 7b 42 02          	cmpb   $0x2,0x42(%ebx)
5fb900:	0f 85 ca 00 00 00    	jne    0x5fb9d0
5fb906:	8b 04 24             	mov    (%esp),%eax
5fb909:	8b 40 08             	mov    0x8(%eax),%eax
5fb90c:	89 43 30             	mov    %eax,0x30(%ebx)
5fb90f:	8b 04 24             	mov    (%esp),%eax
5fb912:	8b 40 0c             	mov    0xc(%eax),%eax
5fb915:	89 43 34             	mov    %eax,0x34(%ebx)
5fb918:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
5fb91c:	75 0f                	jne    0x5fb92d
5fb91e:	b2 01                	mov    $0x1,%dl
5fb920:	a1 ec 6a 42 00       	mov    0x426aec,%eax
5fb925:	e8 a6 18 e3 ff       	call   0x42d1d0
5fb92a:	89 43 24             	mov    %eax,0x24(%ebx)
5fb92d:	8b 04 24             	mov    (%esp),%eax
5fb930:	8b 40 10             	mov    0x10(%eax),%eax
5fb933:	48                   	dec    %eax
5fb934:	74 07                	je     0x5fb93d
5fb936:	83 e8 17             	sub    $0x17,%eax
5fb939:	74 2c                	je     0x5fb967
5fb93b:	eb 52                	jmp    0x5fb98f
5fb93d:	c6 43 40 01          	movb   $0x1,0x40(%ebx)
5fb941:	ba 01 00 00 00       	mov    $0x1,%edx
5fb946:	8b 43 24             	mov    0x24(%ebx),%eax
5fb949:	8b 08                	mov    (%eax),%ecx
5fb94b:	ff 51 40             	call   *0x40(%ecx)
5fb94e:	ba 01 00 00 00       	mov    $0x1,%edx
5fb953:	8b 43 24             	mov    0x24(%ebx),%eax
5fb956:	8b 08                	mov    (%eax),%ecx
5fb958:	ff 51 34             	call   *0x34(%ecx)
5fb95b:	b2 01                	mov    $0x1,%dl
5fb95d:	8b 43 24             	mov    0x24(%ebx),%eax
5fb960:	e8 43 2e e3 ff       	call   0x42e7a8
5fb965:	eb 28                	jmp    0x5fb98f
5fb967:	c6 43 40 05          	movb   $0x5,0x40(%ebx)
5fb96b:	ba 01 00 00 00       	mov    $0x1,%edx
5fb970:	8b 43 24             	mov    0x24(%ebx),%eax
5fb973:	8b 08                	mov    (%eax),%ecx
5fb975:	ff 51 40             	call   *0x40(%ecx)
5fb978:	ba 01 00 00 00       	mov    $0x1,%edx
5fb97d:	8b 43 24             	mov    0x24(%ebx),%eax
5fb980:	8b 08                	mov    (%eax),%ecx
5fb982:	ff 51 34             	call   *0x34(%ecx)
5fb985:	b2 06                	mov    $0x6,%dl
5fb987:	8b 43 24             	mov    0x24(%ebx),%eax
5fb98a:	e8 19 2e e3 ff       	call   0x42e7a8
5fb98f:	8b 53 30             	mov    0x30(%ebx),%edx
5fb992:	8b 43 24             	mov    0x24(%ebx),%eax
5fb995:	8b 08                	mov    (%eax),%ecx
5fb997:	ff 51 40             	call   *0x40(%ecx)
5fb99a:	8b 53 34             	mov    0x34(%ebx),%edx
5fb99d:	8b 43 24             	mov    0x24(%ebx),%eax
5fb9a0:	8b 08                	mov    (%eax),%ecx
5fb9a2:	ff 51 34             	call   *0x34(%ecx)
5fb9a5:	33 c0                	xor    %eax,%eax
5fb9a7:	8a 43 40             	mov    0x40(%ebx),%al
5fb9aa:	8b 34 85 fc 55 6a 00 	mov    0x6a55fc(,%eax,4),%esi
5fb9b1:	89 73 38             	mov    %esi,0x38(%ebx)
5fb9b4:	8b 8b 80 00 00 00    	mov    0x80(%ebx),%ecx
5fb9ba:	8b d6                	mov    %esi,%edx
5fb9bc:	8b 43 30             	mov    0x30(%ebx),%eax
5fb9bf:	e8 1c 51 ff ff       	call   0x5f0ae0
5fb9c4:	89 43 3c             	mov    %eax,0x3c(%ebx)
5fb9c7:	8b c3                	mov    %ebx,%eax
5fb9c9:	e8 b2 c0 ff ff       	call   0x5f7a80
5fb9ce:	eb 5e                	jmp    0x5fba2e
5fb9d0:	8b 04 24             	mov    (%esp),%eax
5fb9d3:	8b 40 10             	mov    0x10(%eax),%eax
5fb9d6:	48                   	dec    %eax
5fb9d7:	74 0c                	je     0x5fb9e5
5fb9d9:	83 e8 07             	sub    $0x7,%eax
5fb9dc:	74 20                	je     0x5fb9fe
5fb9de:	83 e8 10             	sub    $0x10,%eax
5fb9e1:	74 34                	je     0x5fba17
5fb9e3:	eb 49                	jmp    0x5fba2e
5fb9e5:	6a 01                	push   $0x1
5fb9e7:	8b 44 24 04          	mov    0x4(%esp),%eax
5fb9eb:	8b 48 0c             	mov    0xc(%eax),%ecx
5fb9ee:	8b 44 24 04          	mov    0x4(%esp),%eax
5fb9f2:	8b 50 08             	mov    0x8(%eax),%edx
5fb9f5:	8b c3                	mov    %ebx,%eax
5fb9f7:	8b 30                	mov    (%eax),%esi
5fb9f9:	ff 56 24             	call   *0x24(%esi)
5fb9fc:	eb 30                	jmp    0x5fba2e
5fb9fe:	6a 03                	push   $0x3
5fba00:	8b 44 24 04          	mov    0x4(%esp),%eax
5fba04:	8b 48 0c             	mov    0xc(%eax),%ecx
5fba07:	8b 44 24 04          	mov    0x4(%esp),%eax
5fba0b:	8b 50 08             	mov    0x8(%eax),%edx
5fba0e:	8b c3                	mov    %ebx,%eax
5fba10:	8b 30                	mov    (%eax),%esi
5fba12:	ff 56 24             	call   *0x24(%esi)
5fba15:	eb 17                	jmp    0x5fba2e
5fba17:	6a 05                	push   $0x5
5fba19:	8b 44 24 04          	mov    0x4(%esp),%eax
5fba1d:	8b 48 0c             	mov    0xc(%eax),%ecx
5fba20:	8b 44 24 04          	mov    0x4(%esp),%eax
5fba24:	8b 50 08             	mov    0x8(%eax),%edx
5fba27:	8b c3                	mov    %ebx,%eax
5fba29:	8b 30                	mov    (%eax),%esi