5da857:	eb 02                	jmp    0x5da85b
5da859:	b0 01                	mov    $0x1,%al
5da85b:	5d                   	pop    %ebp
5da85c:	c2 04 00             	ret    $0x4
5da85f:	8b ff                	mov    %edi,%edi
5da861:	55                   	push   %ebp
5da862:	8b ec                	mov    %esp,%ebp
5da864:	8b 4d 08             	mov    0x8(%ebp),%ecx
5da867:	56                   	push   %esi
5da868:	8b 41 0c             	mov    0xc(%ecx),%eax
5da86b:	90                   	nop
5da86c:	c1 e8 0c             	shr    $0xc,%eax
5da86f:	a8 01                	test   $0x1,%al
5da871:	75 6e                	jne    0x5da8e1
5da873:	57                   	push   %edi
5da874:	51                   	push   %ecx
5da875:	e8 a1 b4 00 00       	call   0x5e5d1b
5da87a:	59                   	pop    %ecx
5da87b:	b9 e0 19 69 00       	mov    $0x6919e0,%ecx
5da880:	83 f8 ff             	cmp    $0xffffffff,%eax
5da883:	74 1b                	je     0x5da8a0
5da885:	83 f8 fe             	cmp    $0xfffffffe,%eax
5da888:	74 16                	je     0x5da8a0
5da88a:	8b f0                	mov    %eax,%esi
5da88c:	8b d0                	mov    %eax,%edx
5da88e:	83 e6 3f             	and    $0x3f,%esi
5da891:	c1 fa 06             	sar    $0x6,%edx
5da894:	6b fe 38             	imul   $0x38,%esi,%edi
5da897:	03 3c 95 a8 70 71 00 	add    0x7170a8(,%edx,4),%edi
5da89e:	eb 0c                	jmp    0x5da8ac
5da8a0:	8b d0                	mov    %eax,%edx
5da8a2:	8b f0                	mov    %eax,%esi
5da8a4:	c1 fa 06             	sar    $0x6,%edx
5da8a7:	8b f9                	mov    %ecx,%edi
5da8a9:	83 e6 3f             	and    $0x3f,%esi
5da8ac:	80 7f 29 00          	cmpb   $0x0,0x29(%edi)
5da8b0:	5f                   	pop    %edi
5da8b1:	75 1a                	jne    0x5da8cd
5da8b3:	83 f8 ff             	cmp    $0xffffffff,%eax
5da8b6:	74 0f                	je     0x5da8c7
5da8b8:	83 f8 fe             	cmp    $0xfffffffe,%eax
5da8bb:	74 0a                	je     0x5da8c7
5da8bd:	6b ce 38             	imul   $0x38,%esi,%ecx
5da8c0:	03 0c 95 a8 70 71 00 	add    0x7170a8(,%edx,4),%ecx
5da8c7:	f6 41 2d 01          	testb  $0x1,0x2d(%ecx)
5da8cb:	74 14                	je     0x5da8e1
5da8cd:	e8 b6 03 00 00       	call   0x5dac88
5da8d2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5da8d8:	e8 03 b9 ff ff       	call   0x5d61e0
5da8dd:	32 c0                	xor    %al,%al
5da8df:	eb 02                	jmp    0x5da8e3
5da8e1:	b0 01                	mov    $0x1,%al
5da8e3:	5e                   	pop    %esi
5da8e4:	5d                   	pop    %ebp
5da8e5:	c3                   	ret
5da8e6:	8b ff                	mov    %edi,%edi
5da8e8:	55                   	push   %ebp
5da8e9:	8b ec                	mov    %esp,%ebp
5da8eb:	ff 75 10             	push   0x10(%ebp)
5da8ee:	ff 75 08             	push   0x8(%ebp)
5da8f1:	e8 12 00 00 00       	call   0x5da908
5da8f6:	84 c0                	test   %al,%al
5da8f8:	8b 45 0c             	mov    0xc(%ebp),%eax
5da8fb:	74 04                	je     0x5da901
5da8fd:	ff 00                	incl   (%eax)
5da8ff:	eb 03                	jmp    0x5da904
5da901:	83 08 ff             	orl    $0xffffffff,(%eax)
5da904:	5d                   	pop    %ebp
5da905:	c2 0c 00             	ret    $0xc
5da908:	8b ff                	mov    %edi,%edi
5da90a:	55                   	push   %ebp
5da90b:	8b ec                	mov    %esp,%ebp
5da90d:	8b 01                	mov    (%ecx),%eax
5da90f:	8b 40 0c             	mov    0xc(%eax),%eax
5da912:	90                   	nop
5da913:	c1 e8 0c             	shr    $0xc,%eax
5da916:	a8 01                	test   $0x1,%al
5da918:	74 0c                	je     0x5da926
5da91a:	8b 01                	mov    (%ecx),%eax
5da91c:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
5da920:	75 04                	jne    0x5da926
5da922:	b0 01                	mov    $0x1,%al
5da924:	eb 18                	jmp    0x5da93e
5da926:	ff 75 0c             	push   0xc(%ebp)
5da929:	0f be 45 08          	movsbl 0x8(%ebp),%eax
5da92d:	ff 31                	push   (%ecx)
5da92f:	50                   	push   %eax
5da930:	e8 13 c9 00 00       	call   0x5e7248
5da935:	83 c4 0c             	add    $0xc,%esp
5da938:	83 f8 ff             	cmp    $0xffffffff,%eax
5da93b:	0f 95 c0             	setne  %al
5da93e:	5d                   	pop    %ebp
5da93f:	c2 08 00             	ret    $0x8
5da942:	8b ff                	mov    %edi,%edi
5da944:	55                   	push   %ebp
5da945:	8b ec                	mov    %esp,%ebp
5da947:	8b 01                	mov    (%ecx),%eax
5da949:	8b 40 0c             	mov    0xc(%eax),%eax
5da94c:	90                   	nop
5da94d:	c1 e8 0c             	shr    $0xc,%eax
5da950:	a8 01                	test   $0x1,%al
5da952:	74 14                	je     0x5da968
5da954:	8b 01                	mov    (%ecx),%eax
5da956:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
5da95a:	75 0c                	jne    0x5da968
5da95c:	8b 4d 10             	mov    0x10(%ebp),%ecx
5da95f:	8b 45 0c             	mov    0xc(%ebp),%eax
5da962:	01 01                	add    %eax,(%ecx)
5da964:	5d                   	pop    %ebp
5da965:	c2 10 00             	ret    $0x10
5da968:	5d                   	pop    %ebp
5da969:	e9 d8 00 00 00       	jmp    0x5daa46
5da96e:	8b ff                	mov    %edi,%edi
5da970:	55                   	push   %ebp
5da971:	8b ec                	mov    %esp,%ebp
5da973:	53                   	push   %ebx
5da974:	57                   	push   %edi
5da975:	8b 7d 0c             	mov    0xc(%ebp),%edi
5da978:	8b d9                	mov    %ecx,%ebx
5da97a:	85 ff                	test   %edi,%edi
5da97c:	74 51                	je     0x5da9cf
5da97e:	8b 03                	mov    (%ebx),%eax
5da980:	56                   	push   %esi
5da981:	8b 70 04             	mov    0x4(%eax),%esi
5da984:	39 70 08             	cmp    %esi,0x8(%eax)
5da987:	75 0b                	jne    0x5da994
5da989:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
5da98d:	8b 45 10             	mov    0x10(%ebp),%eax
5da990:	74 35                	je     0x5da9c7
5da992:	eb 2b                	jmp    0x5da9bf
5da994:	2b 70 08             	sub    0x8(%eax),%esi
5da997:	3b f7                	cmp    %edi,%esi
5da999:	72 02                	jb     0x5da99d
5da99b:	8b f7                	mov    %edi,%esi
5da99d:	56                   	push   %esi
5da99e:	ff 75 08             	push   0x8(%ebp)
5da9a1:	ff 30                	push   (%eax)
5da9a3:	e8 28 84 ff ff       	call   0x5d2dd0
5da9a8:	8b 03                	mov    (%ebx),%eax
5da9aa:	83 c4 0c             	add    $0xc,%esp
5da9ad:	01 30                	add    %esi,(%eax)
5da9af:	8b 03                	mov    (%ebx),%eax
5da9b1:	01 70 08             	add    %esi,0x8(%eax)
5da9b4:	8b 03                	mov    (%ebx),%eax
5da9b6:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
5da9ba:	8b 45 10             	mov    0x10(%ebp),%eax
5da9bd:	74 04                	je     0x5da9c3
5da9bf:	01 38                	add    %edi,(%eax)
5da9c1:	eb 0b                	jmp    0x5da9ce
5da9c3:	3b f7                	cmp    %edi,%esi
5da9c5:	74 05                	je     0x5da9cc
5da9c7:	83 08 ff             	orl    $0xffffffff,(%eax)
5da9ca:	eb 02                	jmp    0x5da9ce
5da9cc:	01 30                	add    %esi,(%eax)
5da9ce:	5e                   	pop    %esi
5da9cf:	5f                   	pop    %edi
5da9d0:	5b                   	pop    %ebx
5da9d1:	5d                   	pop    %ebp
5da9d2:	c2 10 00             	ret    $0x10
5da9d5:	8b ff                	mov    %edi,%edi
5da9d7:	55                   	push   %ebp
5da9d8:	8b ec                	mov    %esp,%ebp
5da9da:	51                   	push   %ecx
5da9db:	53                   	push   %ebx
5da9dc:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5da9df:	8b c1                	mov    %ecx,%eax
5da9e1:	89 45 fc             	mov    %eax,-0x4(%ebp)
5da9e4:	85 db                	test   %ebx,%ebx
5da9e6:	74 59                	je     0x5daa41
5da9e8:	8b 00                	mov    (%eax),%eax
5da9ea:	57                   	push   %edi
5da9eb:	8b 78 04             	mov    0x4(%eax),%edi
5da9ee:	39 78 08             	cmp    %edi,0x8(%eax)
5da9f1:	75 0b                	jne    0x5da9fe
5da9f3:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
5da9f7:	8b 45 10             	mov    0x10(%ebp),%eax
5da9fa:	74 3d                	je     0x5daa39
5da9fc:	eb 33                	jmp    0x5daa31
5da9fe:	2b 78 08             	sub    0x8(%eax),%edi
5daa01:	3b fb                	cmp    %ebx,%edi
5daa03:	72 02                	jb     0x5daa07
5daa05:	8b fb                	mov    %ebx,%edi
5daa07:	56                   	push   %esi
5daa08:	8d 34 3f             	lea    (%edi,%edi,1),%esi
5daa0b:	56                   	push   %esi
5daa0c:	ff 75 08             	push   0x8(%ebp)
5daa0f:	ff 30                	push   (%eax)
5daa11:	e8 ba 83 ff ff       	call   0x5d2dd0
5daa16:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5daa19:	83 c4 0c             	add    $0xc,%esp
5daa1c:	8b 01                	mov    (%ecx),%eax
5daa1e:	01 30                	add    %esi,(%eax)
5daa20:	8b 01                	mov    (%ecx),%eax
5daa22:	5e                   	pop    %esi
5daa23:	01 78 08             	add    %edi,0x8(%eax)
5daa26:	8b 01                	mov    (%ecx),%eax
5daa28:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
5daa2c:	8b 45 10             	mov    0x10(%ebp),%eax
5daa2f:	74 04                	je     0x5daa35
5daa31:	01 18                	add    %ebx,(%eax)
5daa33:	eb 0b                	jmp    0x5daa40
5daa35:	3b fb                	cmp    %ebx,%edi
5daa37:	74 05                	je     0x5daa3e
5daa39:	83 08 ff             	orl    $0xffffffff,(%eax)
5daa3c:	eb 02                	jmp    0x5daa40
5daa3e:	01 38                	add    %edi,(%eax)
5daa40:	5f                   	pop    %edi
5daa41:	5b                   	pop    %ebx
5daa42:	c9                   	leave
5daa43:	c2 10 00             	ret    $0x10
5daa46:	8b ff                	mov    %edi,%edi
5daa48:	55                   	push   %ebp
5daa49:	8b ec                	mov    %esp,%ebp
5daa4b:	83 ec 10             	sub    $0x10,%esp
5daa4e:	53                   	push   %ebx
5daa4f:	8b 5d 08             	mov    0x8(%ebp),%ebx
5daa52:	56                   	push   %esi
5daa53:	8b 75 14             	mov    0x14(%ebp),%esi
5daa56:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5daa59:	8b 46 18             	mov    0x18(%esi),%eax
5daa5c:	89 45 f4             	mov    %eax,-0xc(%ebp)
5daa5f:	8b 46 1c             	mov    0x1c(%esi),%eax
5daa62:	89 45 f0             	mov    %eax,-0x10(%ebp)
5daa65:	8b 45 0c             	mov    0xc(%ebp),%eax
5daa68:	03 c3                	add    %ebx,%eax
5daa6a:	89 45 f8             	mov    %eax,-0x8(%ebp)
5daa6d:	3b d8                	cmp    %eax,%ebx
5daa6f:	74 42                	je     0x5daab3
5daa71:	57                   	push   %edi
5daa72:	8b 7d 10             	mov    0x10(%ebp),%edi
5daa75:	0f b6 03             	movzbl (%ebx),%eax
5daa78:	56                   	push   %esi
5daa79:	50                   	push   %eax
5daa7a:	e8 89 fe ff ff       	call   0x5da908
5daa7f:	84 c0                	test   %al,%al
5daa81:	75 1a                	jne    0x5daa9d
5daa83:	38 46 1c             	cmp    %al,0x1c(%esi)
5daa86:	74 27                	je     0x5daaaf
5daa88:	83 7e 18 2a          	cmpl   $0x2a,0x18(%esi)
5daa8c:	75 21                	jne    0x5daaaf
5daa8e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5daa91:	56                   	push   %esi
5daa92:	6a 3f                	push   $0x3f
5daa94:	e8 6f fe ff ff       	call   0x5da908
5daa99:	84 c0                	test   %al,%al
5daa9b:	74 04                	je     0x5daaa1
5daa9d:	ff 07                	incl   (%edi)
5daa9f:	eb 03                	jmp    0x5daaa4
5daaa1:	83 0f ff             	orl    $0xffffffff,(%edi)
5daaa4:	43                   	inc    %ebx
5daaa5:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
5daaa8:	74 08                	je     0x5daab2
5daaaa:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5daaad:	eb c6                	jmp    0x5daa75
5daaaf:	83 0f ff             	orl    $0xffffffff,(%edi)
5daab2:	5f                   	pop    %edi
5daab3:	8b 45 f4             	mov    -0xc(%ebp),%eax
5daab6:	89 46 18             	mov    %eax,0x18(%esi)
5daab9:	8b 45 f0             	mov    -0x10(%ebp),%eax
5daabc:	89 46 1c             	mov    %eax,0x1c(%esi)
5daabf:	5e                   	pop    %esi
5daac0:	5b                   	pop    %ebx
5daac1:	c9                   	leave
5daac2:	c2 10 00             	ret    $0x10
5daac5:	8b ff                	mov    %edi,%edi
5daac7:	55                   	push   %ebp
5daac8:	8b ec                	mov    %esp,%ebp
5daaca:	83 ec 5c             	sub    $0x5c,%esp
5daacd:	56                   	push   %esi
5daace:	ff 75 18             	push   0x18(%ebp)
5daad1:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
5daad4:	e8 fb b3 ff ff       	call   0x5d5ed4
5daad9:	8b 45 1c             	mov    0x1c(%ebp),%eax
5daadc:	8b 55 10             	mov    0x10(%ebp),%edx
5daadf:	8b 75 14             	mov    0x14(%ebp),%esi
5daae2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5daae5:	89 45 f0             	mov    %eax,-0x10(%ebp)
5daae8:	8b 45 08             	mov    0x8(%ebp),%eax
5daaeb:	89 75 f4             	mov    %esi,-0xc(%ebp)
5daaee:	89 55 f8             	mov    %edx,-0x8(%ebp)
5daaf1:	89 45 e0             	mov    %eax,-0x20(%ebp)
5daaf4:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
5daaf7:	85 d2                	test   %edx,%edx
5daaf9:	75 23                	jne    0x5dab1e
5daafb:	8d 45 a4             	lea    -0x5c(%ebp),%eax
5daafe:	c6 45 c0 01          	movb   $0x1,-0x40(%ebp)
5dab02:	50                   	push   %eax
5dab03:	33 c0                	xor    %eax,%eax
5dab05:	c7 45 bc 16 00 00 00 	movl   $0x16,-0x44(%ebp)
5dab0c:	50                   	push   %eax
5dab0d:	50                   	push   %eax
5dab0e:	50                   	push   %eax
5dab0f:	50                   	push   %eax
5dab10:	50                   	push   %eax
5dab11:	e8 4d b6 ff ff       	call   0x5d6163
5dab16:	83 c4 18             	add    $0x18,%esp
5dab19:	83 ce ff             	or     $0xffffffff,%esi
5dab1c:	eb 3e                	jmp    0x5dab5c
5dab1e:	85 f6                	test   %esi,%esi
5dab20:	74 d9                	je     0x5daafb
5dab22:	8d 45 f8             	lea    -0x8(%ebp),%eax
5dab25:	89 55 ec             	mov    %edx,-0x14(%ebp)
5dab28:	89 45 cc             	mov    %eax,-0x34(%ebp)
5dab2b:	8d 4d ff             	lea    -0x1(%ebp),%ecx
5dab2e:	8d 45 a4             	lea    -0x5c(%ebp),%eax
5dab31:	89 55 e8             	mov    %edx,-0x18(%ebp)
5dab34:	89 45 d0             	mov    %eax,-0x30(%ebp)
5dab37:	8d 45 e0             	lea    -0x20(%ebp),%eax
5dab3a:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5dab3d:	8d 45 f4             	lea    -0xc(%ebp),%eax
5dab40:	89 45 d8             	mov    %eax,-0x28(%ebp)
5dab43:	8d 45 f0             	lea    -0x10(%ebp),%eax
5dab46:	89 45 dc             	mov    %eax,-0x24(%ebp)
5dab49:	8d 45 ec             	lea    -0x14(%ebp),%eax
5dab4c:	50                   	push   %eax
5dab4d:	8d 45 cc             	lea    -0x34(%ebp),%eax
5dab50:	50                   	push   %eax
5dab51:	8d 45 e8             	lea    -0x18(%ebp),%eax
5dab54:	50                   	push   %eax
5dab55:	e8 83 bc ff ff       	call   0x5d67dd
5dab5a:	8b f0                	mov    %eax,%esi
5dab5c:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
5dab5f:	e8 b8 b3 ff ff       	call   0x5d5f1c
5dab64:	8b c6                	mov    %esi,%eax
5dab66:	5e                   	pop    %esi
5dab67:	c9                   	leave
5dab68:	c3                   	ret
5dab69:	8b ff                	mov    %edi,%edi
5dab6b:	55                   	push   %ebp
5dab6c:	8b ec                	mov    %esp,%ebp
5dab6e:	83 ec 28             	sub    $0x28,%esp
5dab71:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5dab74:	56                   	push   %esi
5dab75:	ff 75 1c             	push   0x1c(%ebp)
5dab78:	e8 57 b3 ff ff       	call   0x5d5ed4
5dab7d:	ff 75 20             	push   0x20(%ebp)
5dab80:	8d 45 d8             	lea    -0x28(%ebp),%eax
5dab83:	50                   	push   %eax
5dab84:	ff 75 18             	push   0x18(%ebp)
5dab87:	ff 75 14             	push   0x14(%ebp)
5dab8a:	ff 75 10             	push   0x10(%ebp)
5dab8d:	ff 75 0c             	push   0xc(%ebp)
5dab90:	ff 75 08             	push   0x8(%ebp)
5dab93:	e8 a0 bc ff ff       	call   0x5d6838
5dab98:	83 c4 1c             	add    $0x1c,%esp
5dab9b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5dab9e:	8b f0                	mov    %eax,%esi
5daba0:	e8 77 b3 ff ff       	call   0x5d5f1c
5daba5:	8b c6                	mov    %esi,%eax
5daba7:	5e                   	pop    %esi