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
5fba2b:	ff 56 24             	call   *0x24(%esi)
5fba2e:	8b 04 24             	mov    (%esp),%eax
5fba31:	8b 10                	mov    (%eax),%edx
5fba33:	ff 52 14             	call   *0x14(%edx)
5fba36:	8b d0                	mov    %eax,%edx
5fba38:	8b 43 3c             	mov    0x3c(%ebx),%eax
5fba3b:	e8 dc d9 fa ff       	call   0x5a941c
5fba40:	8b e8                	mov    %eax,%ebp
5fba42:	8b 7b 34             	mov    0x34(%ebx),%edi
5fba45:	4f                   	dec    %edi
5fba46:	85 ff                	test   %edi,%edi
5fba48:	7c 21                	jl     0x5fba6b
5fba4a:	47                   	inc    %edi
5fba4b:	33 f6                	xor    %esi,%esi
5fba4d:	8b d6                	mov    %esi,%edx
5fba4f:	8b 04 24             	mov    (%esp),%eax
5fba52:	8b 08                	mov    (%eax),%ecx
5fba54:	ff 11                	call   *(%ecx)
5fba56:	50                   	push   %eax
5fba57:	8b d6                	mov    %esi,%edx
5fba59:	8b c3                	mov    %ebx,%eax
5fba5b:	8b 08                	mov    (%eax),%ecx
5fba5d:	ff 11                	call   *(%ecx)
5fba5f:	8b cd                	mov    %ebp,%ecx
5fba61:	5a                   	pop    %edx
5fba62:	e8 59 c4 e0 ff       	call   0x407ec0
5fba67:	46                   	inc    %esi
5fba68:	4f                   	dec    %edi
5fba69:	75 e2                	jne    0x5fba4d
5fba6b:	5a                   	pop    %edx
5fba6c:	5d                   	pop    %ebp
5fba6d:	5f                   	pop    %edi
5fba6e:	5e                   	pop    %esi
5fba6f:	5b                   	pop    %ebx
5fba70:	c3                   	ret
5fba71:	8d 40 00             	lea    0x0(%eax),%eax
5fba74:	53                   	push   %ebx
5fba75:	56                   	push   %esi
5fba76:	57                   	push   %edi
5fba77:	55                   	push   %ebp
5fba78:	51                   	push   %ecx
5fba79:	8b ea                	mov    %edx,%ebp
5fba7b:	8b f0                	mov    %eax,%esi
5fba7d:	8b c6                	mov    %esi,%eax
5fba7f:	8b 10                	mov    (%eax),%edx
5fba81:	ff 52 10             	call   *0x10(%edx)
5fba84:	fe c8                	dec    %al
5fba86:	74 09                	je     0x5fba91
5fba88:	2c 02                	sub    $0x2,%al
5fba8a:	74 55                	je     0x5fbae1
5fba8c:	e9 9e 00 00 00       	jmp    0x5fbb2f
5fba91:	6a 01                	push   $0x1
5fba93:	8b 4e 34             	mov    0x34(%esi),%ecx
5fba96:	8b 56 30             	mov    0x30(%esi),%edx
5fba99:	8b c5                	mov    %ebp,%eax
5fba9b:	e8 a0 74 ff ff       	call   0x5f2f40
5fbaa0:	8b 55 10             	mov    0x10(%ebp),%edx
5fbaa3:	8b 46 3c             	mov    0x3c(%esi),%eax
5fbaa6:	e8 71 d9 fa ff       	call   0x5a941c
5fbaab:	89 04 24             	mov    %eax,(%esp)
5fbaae:	8b 7e 34             	mov    0x34(%esi),%edi
5fbab1:	4f                   	dec    %edi
5fbab2:	85 ff                	test   %edi,%edi
5fbab4:	7c 23                	jl     0x5fbad9
5fbab6:	47                   	inc    %edi
5fbab7:	33 db                	xor    %ebx,%ebx
5fbab9:	8b d3                	mov    %ebx,%edx
5fbabb:	8b c6                	mov    %esi,%eax
5fbabd:	8b 08                	mov    (%eax),%ecx
5fbabf:	ff 11                	call   *(%ecx)
5fbac1:	50                   	push   %eax
5fbac2:	8b d3                	mov    %ebx,%edx
5fbac4:	8b c5                	mov    %ebp,%eax
5fbac6:	e8 49 8c ff ff       	call   0x5f4714
5fbacb:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5fbacf:	5a                   	pop    %edx
5fbad0:	e8 eb c3 e0 ff       	call   0x407ec0
5fbad5:	43                   	inc    %ebx
5fbad6:	4f                   	dec    %edi
5fbad7:	75 e0                	jne    0x5fbab9
5fbad9:	8a 46 43             	mov    0x43(%esi),%al
5fbadc:	88 45 68             	mov    %al,0x68(%ebp)
5fbadf:	eb 4e                	jmp    0x5fbb2f
5fbae1:	6a 08                	push   $0x8
5fbae3:	8b 4e 34             	mov    0x34(%esi),%ecx
5fbae6:	8b 56 30             	mov    0x30(%esi),%edx
5fbae9:	8b c5                	mov    %ebp,%eax
5fbaeb:	e8 50 74 ff ff       	call   0x5f2f40
5fbaf0:	8b 55 10             	mov    0x10(%ebp),%edx
5fbaf3:	8b 46 3c             	mov    0x3c(%esi),%eax
5fbaf6:	e8 21 d9 fa ff       	call   0x5a941c
5fbafb:	89 04 24             	mov    %eax,(%esp)
5fbafe:	8b 7e 34             	mov    0x34(%esi),%edi
5fbb01:	4f                   	dec    %edi
5fbb02:	85 ff                	test   %edi,%edi
5fbb04:	7c 23                	jl     0x5fbb29
5fbb06:	47                   	inc    %edi
5fbb07:	33 db                	xor    %ebx,%ebx
5fbb09:	8b d3                	mov    %ebx,%edx
5fbb0b:	8b c6                	mov    %esi,%eax
5fbb0d:	8b 08                	mov    (%eax),%ecx
5fbb0f:	ff 11                	call   *(%ecx)
5fbb11:	50                   	push   %eax
5fbb12:	8b d3                	mov    %ebx,%edx
5fbb14:	8b c5                	mov    %ebp,%eax
5fbb16:	e8 f9 8b ff ff       	call   0x5f4714
5fbb1b:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5fbb1f:	5a                   	pop    %edx
5fbb20:	e8 9b c3 e0 ff       	call   0x407ec0
5fbb25:	43                   	inc    %ebx
5fbb26:	4f                   	dec    %edi
5fbb27:	75 e0                	jne    0x5fbb09
5fbb29:	8a 46 43             	mov    0x43(%esi),%al
5fbb2c:	88 45 68             	mov    %al,0x68(%ebp)
5fbb2f:	5a                   	pop    %edx
5fbb30:	5d                   	pop    %ebp
5fbb31:	5f                   	pop    %edi
5fbb32:	5e                   	pop    %esi
5fbb33:	5b                   	pop    %ebx
5fbb34:	c3                   	ret
5fbb35:	8d 40 00             	lea    0x0(%eax),%eax
5fbb38:	53                   	push   %ebx
5fbb39:	8b d9                	mov    %ecx,%ebx
5fbb3b:	3b 50 14             	cmp    0x14(%eax),%edx
5fbb3e:	7d 18                	jge    0x5fbb58
5fbb40:	85 d2                	test   %edx,%edx
5fbb42:	7c 14                	jl     0x5fbb58
5fbb44:	8d 14 52             	lea    (%edx,%edx,2),%edx
5fbb47:	8b 40 10             	mov    0x10(%eax),%eax
5fbb4a:	66 8b 0c 10          	mov    (%eax,%edx,1),%cx
5fbb4e:	66 89 0b             	mov    %cx,(%ebx)
5fbb51:	8a 4c 10 02          	mov    0x2(%eax,%edx,1),%cl
5fbb55:	88 4b 02             	mov    %cl,0x2(%ebx)
5fbb58:	5b                   	pop    %ebx
5fbb59:	c3                   	ret
5fbb5a:	8b c0                	mov    %eax,%eax
5fbb5c:	55                   	push   %ebp
5fbb5d:	8b ec                	mov    %esp,%ebp
5fbb5f:	53                   	push   %ebx
5fbb60:	3b 50 14             	cmp    0x14(%eax),%edx
5fbb63:	7d 1e                	jge    0x5fbb83
5fbb65:	85 d2                	test   %edx,%edx
5fbb67:	7c 1a                	jl     0x5fbb83
5fbb69:	8d 14 52             	lea    (%edx,%edx,2),%edx
5fbb6c:	8b 48 10             	mov    0x10(%eax),%ecx
5fbb6f:	66 8b 5d 08          	mov    0x8(%ebp),%bx
5fbb73:	66 89 1c 11          	mov    %bx,(%ecx,%edx,1)
5fbb77:	8a 5d 0a             	mov    0xa(%ebp),%bl
5fbb7a:	88 5c 11 02          	mov    %bl,0x2(%ecx,%edx,1)
5fbb7e:	e8 dd 0a 00 00       	call   0x5fc660
5fbb83:	5b                   	pop    %ebx
5fbb84:	5d                   	pop    %ebp
5fbb85:	c2 04 00             	ret    $0x4
5fbb88:	8b 40 14             	mov    0x14(%eax),%eax
5fbb8b:	c3                   	ret
5fbb8c:	53                   	push   %ebx
5fbb8d:	56                   	push   %esi
5fbb8e:	57                   	push   %edi
5fbb8f:	8b f9                	mov    %ecx,%edi
5fbb91:	8b f2                	mov    %edx,%esi
5fbb93:	8b d8                	mov    %eax,%ebx
5fbb95:	8b d7                	mov    %edi,%edx
5fbb97:	8b c3                	mov    %ebx,%eax
5fbb99:	8b 08                	mov    (%eax),%ecx
5fbb9b:	ff 11                	call   *(%ecx)
5fbb9d:	8a 04 30             	mov    (%eax,%esi,1),%al
5fbba0:	5f                   	pop    %edi
5fbba1:	5e                   	pop    %esi
5fbba2:	5b                   	pop    %ebx
5fbba3:	c3                   	ret
5fbba4:	55                   	push   %ebp
5fbba5:	8b ec                	mov    %esp,%ebp
5fbba7:	51                   	push   %ecx
5fbba8:	53                   	push   %ebx
5fbba9:	56                   	push   %esi