5f5806:	75 d1                	jne    0x5f57d9
5f5808:	8b 04 24             	mov    (%esp),%eax
5f580b:	83 c4 10             	add    $0x10,%esp
5f580e:	5d                   	pop    %ebp
5f580f:	5f                   	pop    %edi
5f5810:	5e                   	pop    %esi
5f5811:	5b                   	pop    %ebx
5f5812:	c3                   	ret
5f5813:	90                   	nop
5f5814:	53                   	push   %ebx
5f5815:	56                   	push   %esi
5f5816:	57                   	push   %edi
5f5817:	55                   	push   %ebp
5f5818:	83 c4 ec             	add    $0xffffffec,%esp
5f581b:	89 0c 24             	mov    %ecx,(%esp)
5f581e:	89 54 24 0c          	mov    %edx,0xc(%esp)
5f5822:	8a 0d 5c 59 5f 00    	mov    0x5f595c,%cl
5f5828:	8b 54 24 0c          	mov    0xc(%esp),%edx
5f582c:	e8 af fb ff ff       	call   0x5f53e0
5f5831:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f5835:	8b 40 18             	mov    0x18(%eax),%eax
5f5838:	85 c0                	test   %eax,%eax
5f583a:	0f 84 13 01 00 00    	je     0x5f5953
5f5840:	8b d8                	mov    %eax,%ebx
5f5842:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f5846:	8b 40 2c             	mov    0x2c(%eax),%eax
5f5849:	89 44 24 04          	mov    %eax,0x4(%esp)
5f584d:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f5851:	8b 40 30             	mov    0x30(%eax),%eax
5f5854:	89 44 24 08          	mov    %eax,0x8(%esp)
5f5858:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f585c:	8b 70 34             	mov    0x34(%eax),%esi
5f585f:	b9 20 00 00 00       	mov    $0x20,%ecx
5f5864:	8b d6                	mov    %esi,%edx
5f5866:	8b 44 24 04          	mov    0x4(%esp),%eax
5f586a:	e8 71 b2 ff ff       	call   0x5f0ae0
5f586f:	8b f8                	mov    %eax,%edi
5f5871:	4e                   	dec    %esi
5f5872:	75 07                	jne    0x5f587b
5f5874:	c6 44 24 10 01       	movb   $0x1,0x10(%esp)
5f5879:	eb 05                	jmp    0x5f5880
5f587b:	c6 44 24 10 05       	movb   $0x5,0x10(%esp)
5f5880:	8b 04 24             	mov    (%esp),%eax
5f5883:	8b 10                	mov    (%eax),%edx
5f5885:	ff 52 10             	call   *0x10(%edx)
5f5888:	3a 44 24 10          	cmp    0x10(%esp),%al
5f588c:	75 1c                	jne    0x5f58aa
5f588e:	8b 04 24             	mov    (%esp),%eax
5f5891:	8b 10                	mov    (%eax),%edx
5f5893:	ff 52 0c             	call   *0xc(%edx)
5f5896:	3b 44 24 04          	cmp    0x4(%esp),%eax
5f589a:	75 0e                	jne    0x5f58aa
5f589c:	8b 04 24             	mov    (%esp),%eax
5f589f:	8b 10                	mov    (%eax),%edx
5f58a1:	ff 52 08             	call   *0x8(%edx)
5f58a4:	3b 44 24 08          	cmp    0x8(%esp),%eax
5f58a8:	74 16                	je     0x5f58c0
5f58aa:	8a 44 24 10          	mov    0x10(%esp),%al
5f58ae:	50                   	push   %eax
5f58af:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
5f58b3:	8b 54 24 08          	mov    0x8(%esp),%edx
5f58b7:	8b 44 24 04          	mov    0x4(%esp),%eax
5f58bb:	8b 30                	mov    (%eax),%esi
5f58bd:	ff 56 24             	call   *0x24(%esi)
5f58c0:	8b 74 24 08          	mov    0x8(%esp),%esi
5f58c4:	4e                   	dec    %esi
5f58c5:	85 f6                	test   %esi,%esi
5f58c7:	7c 20                	jl     0x5f58e9
5f58c9:	46                   	inc    %esi
5f58ca:	33 ed                	xor    %ebp,%ebp
5f58cc:	8b 54 24 08          	mov    0x8(%esp),%edx
5f58d0:	2b d5                	sub    %ebp,%edx
5f58d2:	4a                   	dec    %edx
5f58d3:	8b 04 24             	mov    (%esp),%eax
5f58d6:	8b 08                	mov    (%eax),%ecx
5f58d8:	ff 11                	call   *(%ecx)
5f58da:	8b cf                	mov    %edi,%ecx
5f58dc:	8b d3                	mov    %ebx,%edx
5f58de:	e8 dd 25 e1 ff       	call   0x407ec0
5f58e3:	03 df                	add    %edi,%ebx
5f58e5:	45                   	inc    %ebp
5f58e6:	4e                   	dec    %esi
5f58e7:	75 e3                	jne    0x5f58cc
5f58e9:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f58ed:	80 78 28 00          	cmpb   $0x0,0x28(%eax)
5f58f1:	74 05                	je     0x5f58f8
5f58f3:	80 3b 00             	cmpb   $0x0,(%ebx)
5f58f6:	74 0a                	je     0x5f5902
5f58f8:	8b 04 24             	mov    (%esp),%eax
5f58fb:	e8 b8 1f 00 00       	call   0x5f78b8
5f5900:	eb 51                	jmp    0x5f5953
5f5902:	8b 04 24             	mov    (%esp),%eax
5f5905:	e8 ce 1f 00 00       	call   0x5f78d8
5f590a:	8a 13                	mov    (%ebx),%dl
5f590c:	88 50 43             	mov    %dl,0x43(%eax)
5f590f:	43                   	inc    %ebx
5f5910:	b9 20 00 00 00       	mov    $0x20,%ecx
5f5915:	ba 08 00 00 00       	mov    $0x8,%edx
5f591a:	8b 44 24 04          	mov    0x4(%esp),%eax
5f591e:	e8 bd b1 ff ff       	call   0x5f0ae0
5f5923:	8b f8                	mov    %eax,%edi
5f5925:	8b 74 24 08          	mov    0x8(%esp),%esi
5f5929:	4e                   	dec    %esi
5f592a:	85 f6                	test   %esi,%esi
5f592c:	7c 25                	jl     0x5f5953
5f592e:	46                   	inc    %esi
5f592f:	33 ed                	xor    %ebp,%ebp
5f5931:	8b 04 24             	mov    (%esp),%eax
5f5934:	e8 9f 1f 00 00       	call   0x5f78d8
5f5939:	8b 54 24 08          	mov    0x8(%esp),%edx
5f593d:	2b d5                	sub    %ebp,%edx
5f593f:	4a                   	dec    %edx
5f5940:	8b 08                	mov    (%eax),%ecx
5f5942:	ff 11                	call   *(%ecx)
5f5944:	8b cf                	mov    %edi,%ecx
5f5946:	8b d3                	mov    %ebx,%edx
5f5948:	e8 73 25 e1 ff       	call   0x407ec0
5f594d:	03 df                	add    %edi,%ebx
5f594f:	45                   	inc    %ebp
5f5950:	4e                   	dec    %esi
5f5951:	75 de                	jne    0x5f5931
5f5953:	83 c4 14             	add    $0x14,%esp
5f5956:	5d                   	pop    %ebp
5f5957:	5f                   	pop    %edi
5f5958:	5e                   	pop    %esi
5f5959:	5b                   	pop    %ebx
5f595a:	c3                   	ret
5f595b:	00 01                	add    %al,(%ecx)
5f595d:	00 00                	add    %al,(%eax)
5f595f:	00 53 56             	add    %dl,0x56(%ebx)
5f5962:	57                   	push   %edi
5f5963:	55                   	push   %ebp
5f5964:	83 c4 f0             	add    $0xfffffff0,%esp
5f5967:	8b d9                	mov    %ecx,%ebx
5f5969:	8b f8                	mov    %eax,%edi
5f596b:	8b f2                	mov    %edx,%esi
5f596d:	8a 0d dc 5a 5f 00    	mov    0x5f5adc,%cl
5f5973:	8b d6                	mov    %esi,%edx
5f5975:	8b c7                	mov    %edi,%eax
5f5977:	e8 64 fa ff ff       	call   0x5f53e0
5f597c:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
5f5980:	0f 84 4c 01 00 00    	je     0x5f5ad2
5f5986:	8b 6e 2c             	mov    0x2c(%esi),%ebp
5f5989:	8b 46 30             	mov    0x30(%esi),%eax
5f598c:	89 04 24             	mov    %eax,(%esp)
5f598f:	8b 46 34             	mov    0x34(%esi),%eax
5f5992:	89 44 24 04          	mov    %eax,0x4(%esp)
5f5996:	8b c3                	mov    %ebx,%eax
5f5998:	8b 10                	mov    (%eax),%edx
5f599a:	ff 52 04             	call   *0x4(%edx)
5f599d:	89 44 24 0c          	mov    %eax,0xc(%esp)
5f59a1:	8b c3                	mov    %ebx,%eax
5f59a3:	8b 10                	mov    (%eax),%edx
5f59a5:	ff 52 0c             	call   *0xc(%edx)
5f59a8:	3b e8                	cmp    %eax,%ebp
5f59aa:	75 22                	jne    0x5f59ce
5f59ac:	8b c3                	mov    %ebx,%eax
5f59ae:	8b 10                	mov    (%eax),%edx
5f59b0:	ff 52 08             	call   *0x8(%edx)
5f59b3:	3b 04 24             	cmp    (%esp),%eax
5f59b6:	75 16                	jne    0x5f59ce
5f59b8:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f59bc:	3b 44 24 04          	cmp    0x4(%esp),%eax
5f59c0:	75 0c                	jne    0x5f59ce
5f59c2:	8b c3                	mov    %ebx,%eax
5f59c4:	e8 3f 1f 00 00       	call   0x5f7908
5f59c9:	3a 46 28             	cmp    0x28(%esi),%al
5f59cc:	74 48                	je     0x5f5a16
5f59ce:	8b c3                	mov    %ebx,%eax
5f59d0:	8b 10                	mov    (%eax),%edx
5f59d2:	ff 52 0c             	call   *0xc(%edx)
5f59d5:	8b e8                	mov    %eax,%ebp
5f59d7:	8b c3                	mov    %ebx,%eax
5f59d9:	8b 10                	mov    (%eax),%edx
5f59db:	ff 52 08             	call   *0x8(%edx)
5f59de:	89 04 24             	mov    %eax,(%esp)
5f59e1:	8b 44 24 0c          	mov    0xc(%esp),%eax
5f59e5:	89 44 24 04          	mov    %eax,0x4(%esp)
5f59e9:	8b d6                	mov    %esi,%edx
5f59eb:	8b c7                	mov    %edi,%eax
5f59ed:	e8 76 f9 ff ff       	call   0x5f5368
5f59f2:	8b 04 24             	mov    (%esp),%eax
5f59f5:	50                   	push   %eax
5f59f6:	8b 44 24 08          	mov    0x8(%esp),%eax
5f59fa:	50                   	push   %eax
5f59fb:	8b c3                	mov    %ebx,%eax
5f59fd:	8b 10                	mov    (%eax),%edx
5f59ff:	ff 52 10             	call   *0x10(%edx)
5f5a02:	50                   	push   %eax
5f5a03:	8b c3                	mov    %ebx,%eax
5f5a05:	e8 fe 1e 00 00       	call   0x5f7908
5f5a0a:	50                   	push   %eax
5f5a0b:	8b cd                	mov    %ebp,%ecx
5f5a0d:	8b d6                	mov    %esi,%edx
5f5a0f:	8b c7                	mov    %edi,%eax
5f5a11:	e8 ba fa ff ff       	call   0x5f54d0
5f5a16:	8b 7e 18             	mov    0x18(%esi),%edi
5f5a19:	b9 20 00 00 00       	mov    $0x20,%ecx
5f5a1e:	8b 54 24 04          	mov    0x4(%esp),%edx
5f5a22:	8b c5                	mov    %ebp,%eax
5f5a24:	e8 b7 b0 ff ff       	call   0x5f0ae0
5f5a29:	8b e8                	mov    %eax,%ebp
5f5a2b:	8b 34 24             	mov    (%esp),%esi
5f5a2e:	4e                   	dec    %esi
5f5a2f:	85 f6                	test   %esi,%esi
5f5a31:	7c 2b                	jl     0x5f5a5e
5f5a33:	46                   	inc    %esi
5f5a34:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
5f5a3b:	00
5f5a3c:	8b 14 24             	mov    (%esp),%edx
5f5a3f:	2b 54 24 08          	sub    0x8(%esp),%edx
5f5a43:	4a                   	dec    %edx
5f5a44:	8b c3                	mov    %ebx,%eax
5f5a46:	8b 08                	mov    (%eax),%ecx
5f5a48:	ff 11                	call   *(%ecx)
5f5a4a:	8b d0                	mov    %eax,%edx
5f5a4c:	8b cd                	mov    %ebp,%ecx
5f5a4e:	8b c7                	mov    %edi,%eax
5f5a50:	e8 6b 24 e1 ff       	call   0x407ec0
5f5a55:	03 fd                	add    %ebp,%edi
5f5a57:	ff 44 24 08          	incl   0x8(%esp)
5f5a5b:	4e                   	dec    %esi
5f5a5c:	75 de                	jne    0x5f5a3c
5f5a5e:	8b c3                	mov    %ebx,%eax
5f5a60:	8b 10                	mov    (%eax),%edx
5f5a62:	ff 52 0c             	call   *0xc(%edx)
5f5a65:	b9 20 00 00 00       	mov    $0x20,%ecx
5f5a6a:	ba 08 00 00 00       	mov    $0x8,%edx
5f5a6f:	e8 6c b0 ff ff       	call   0x5f0ae0
5f5a74:	8b e8                	mov    %eax,%ebp
5f5a76:	8b c3                	mov    %ebx,%eax
5f5a78:	e8 8b 1e 00 00       	call   0x5f7908
5f5a7d:	84 c0                	test   %al,%al
5f5a7f:	74 51                	je     0x5f5ad2
5f5a81:	8b c3                	mov    %ebx,%eax
5f5a83:	e8 50 1e 00 00       	call   0x5f78d8
5f5a88:	8a 40 43             	mov    0x43(%eax),%al
5f5a8b:	88 07                	mov    %al,(%edi)
5f5a8d:	47                   	inc    %edi
5f5a8e:	8b c3                	mov    %ebx,%eax
5f5a90:	8b 10                	mov    (%eax),%edx
5f5a92:	ff 52 08             	call   *0x8(%edx)
5f5a95:	8b f0                	mov    %eax,%esi
5f5a97:	4e                   	dec    %esi
5f5a98:	85 f6                	test   %esi,%esi
5f5a9a:	7c 36                	jl     0x5f5ad2
5f5a9c:	46                   	inc    %esi
5f5a9d:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
5f5aa4:	00
5f5aa5:	8b c3                	mov    %ebx,%eax
5f5aa7:	8b 10                	mov    (%eax),%edx
5f5aa9:	ff 52 08             	call   *0x8(%edx)
5f5aac:	2b 44 24 08          	sub    0x8(%esp),%eax
5f5ab0:	48                   	dec    %eax
5f5ab1:	50                   	push   %eax
5f5ab2:	8b c3                	mov    %ebx,%eax
5f5ab4:	e8 1f 1e 00 00       	call   0x5f78d8
5f5ab9:	5a                   	pop    %edx
5f5aba:	8b 08                	mov    (%eax),%ecx
5f5abc:	ff 11                	call   *(%ecx)
5f5abe:	8b d0                	mov    %eax,%edx
5f5ac0:	8b cd                	mov    %ebp,%ecx
5f5ac2:	8b c7                	mov    %edi,%eax
5f5ac4:	e8 f7 23 e1 ff       	call   0x407ec0
5f5ac9:	03 fd                	add    %ebp,%edi
5f5acb:	ff 44 24 08          	incl   0x8(%esp)
5f5acf:	4e                   	dec    %esi
5f5ad0:	75 d3                	jne    0x5f5aa5
5f5ad2:	83 c4 10             	add    $0x10,%esp
5f5ad5:	5d                   	pop    %ebp
5f5ad6:	5f                   	pop    %edi
5f5ad7:	5e                   	pop    %esi
5f5ad8:	5b                   	pop    %ebx
5f5ad9:	c3                   	ret
5f5ada:	00 00                	add    %al,(%eax)
5f5adc:	03 00                	add    (%eax),%eax
5f5ade:	00 00                	add    %al,(%eax)
5f5ae0:	53                   	push   %ebx
5f5ae1:	56                   	push   %esi
5f5ae2:	57                   	push   %edi
5f5ae3:	55                   	push   %ebp
5f5ae4:	51                   	push   %ecx
5f5ae5:	8b ea                	mov    %edx,%ebp
5f5ae7:	8b f8                	mov    %eax,%edi
5f5ae9:	c7 04 24 ff ff ff ff 	movl   $0xffffffff,(%esp)
5f5af0:	8b 47 34             	mov    0x34(%edi),%eax
5f5af3:	8b 70 08             	mov    0x8(%eax),%esi
5f5af6:	4e                   	dec    %esi
5f5af7:	85 f6                	test   %esi,%esi
5f5af9:	7c 1a                	jl     0x5f5b15
5f5afb:	46                   	inc    %esi
5f5afc:	33 db                	xor    %ebx,%ebx
5f5afe:	8b 47 34             	mov    0x34(%edi),%eax
5f5b01:	8b d3                	mov    %ebx,%edx
5f5b03:	e8 b8 62 e2 ff       	call   0x41bdc0
5f5b08:	3b 28                	cmp    (%eax),%ebp
5f5b0a:	75 05                	jne    0x5f5b11
5f5b0c:	89 1c 24             	mov    %ebx,(%esp)
5f5b0f:	eb 04                	jmp    0x5f5b15
5f5b11:	43                   	inc    %ebx
5f5b12:	4e                   	dec    %esi
5f5b13:	75 e9                	jne    0x5f5afe
5f5b15:	8b 04 24             	mov    (%esp),%eax
5f5b18:	5a                   	pop    %edx
5f5b19:	5d                   	pop    %ebp
5f5b1a:	5f                   	pop    %edi
5f5b1b:	5e                   	pop    %esi
5f5b1c:	5b                   	pop    %ebx
5f5b1d:	c3                   	ret
5f5b1e:	8b c0                	mov    %eax,%eax
5f5b20:	53                   	push   %ebx
5f5b21:	56                   	push   %esi
5f5b22:	57                   	push   %edi
5f5b23:	8b da                	mov    %edx,%ebx
5f5b25:	8b f0                	mov    %eax,%esi
5f5b27:	33 ff                	xor    %edi,%edi
5f5b29:	8a 0d a4 5b 5f 00    	mov    0x5f5ba4,%cl
5f5b2f:	8b d3                	mov    %ebx,%edx
5f5b31:	8b c6                	mov    %esi,%eax
5f5b33:	e8 a8 f8 ff ff       	call   0x5f53e0
5f5b38:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
5f5b3c:	74 5e                	je     0x5f5b9c
5f5b3e:	8b d3                	mov    %ebx,%edx
5f5b40:	8b c6                	mov    %esi,%eax
5f5b42:	e8 99 ff ff ff       	call   0x5f5ae0
5f5b47:	8b f8                	mov    %eax,%edi
5f5b49:	85 ff                	test   %edi,%edi
5f5b4b:	7d 3b                	jge    0x5f5b88
5f5b4d:	b2 01                	mov    $0x1,%dl
5f5b4f:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5f5b54:	e8 4b 1a 00 00       	call   0x5f75a4
5f5b59:	8b f8                	mov    %eax,%edi
5f5b5b:	b8 0c 00 00 00       	mov    $0xc,%eax
5f5b60:	e8 47 cc e0 ff       	call   0x4027ac
5f5b65:	89 18                	mov    %ebx,(%eax)
5f5b67:	89 78 04             	mov    %edi,0x4(%eax)
5f5b6a:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%eax)
5f5b71:	8b d0                	mov    %eax,%edx
5f5b73:	8b 46 34             	mov    0x34(%esi),%eax
5f5b76:	e8 99 60 e2 ff       	call   0x41bc14
5f5b7b:	8b cf                	mov    %edi,%ecx
5f5b7d:	8b d3                	mov    %ebx,%edx
5f5b7f:	8b c6                	mov    %esi,%eax
5f5b81:	e8 8e fc ff ff       	call   0x5f5814
5f5b86:	eb 10                	jmp    0x5f5b98
5f5b88:	8b d7                	mov    %edi,%edx
5f5b8a:	8b 46 34             	mov    0x34(%esi),%eax
5f5b8d:	e8 2e 62 e2 ff       	call   0x41bdc0
5f5b92:	ff 40 08             	incl   0x8(%eax)
5f5b95:	8b 78 04             	mov    0x4(%eax),%edi