5df7cf:	5d                   	pop    %ebp
5df7d0:	c2 04 00             	ret    $0x4
5df7d3:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
5df7d7:	75 13                	jne    0x5df7ec
5df7d9:	e8 aa b4 ff ff       	call   0x5dac88
5df7de:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5df7e4:	e8 f7 69 ff ff       	call   0x5d61e0
5df7e9:	32 c0                	xor    %al,%al
5df7eb:	c3                   	ret
5df7ec:	b0 01                	mov    $0x1,%al
5df7ee:	c3                   	ret
5df7ef:	83 39 00             	cmpl   $0x0,(%ecx)
5df7f2:	75 13                	jne    0x5df807
5df7f4:	e8 8f b4 ff ff       	call   0x5dac88
5df7f9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5df7ff:	e8 dc 69 ff ff       	call   0x5d61e0
5df804:	32 c0                	xor    %al,%al
5df806:	c3                   	ret
5df807:	83 79 18 00          	cmpl   $0x0,0x18(%ecx)
5df80b:	74 e7                	je     0x5df7f4
5df80d:	b0 01                	mov    $0x1,%al
5df80f:	c3                   	ret
5df810:	8b 41 08             	mov    0x8(%ecx),%eax
5df813:	85 c0                	test   %eax,%eax
5df815:	75 13                	jne    0x5df82a
5df817:	e8 6c b4 ff ff       	call   0x5dac88
5df81c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5df822:	e8 b9 69 ff ff       	call   0x5d61e0
5df827:	32 c0                	xor    %al,%al
5df829:	c3                   	ret
5df82a:	3b 41 04             	cmp    0x4(%ecx),%eax
5df82d:	77 e8                	ja     0x5df817
5df82f:	b0 01                	mov    $0x1,%al
5df831:	c3                   	ret
5df832:	8b ff                	mov    %edi,%edi
5df834:	55                   	push   %ebp
5df835:	8b ec                	mov    %esp,%ebp
5df837:	51                   	push   %ecx
5df838:	51                   	push   %ecx
5df839:	53                   	push   %ebx
5df83a:	8a 5d 18             	mov    0x18(%ebp),%bl
5df83d:	33 c0                	xor    %eax,%eax
5df83f:	56                   	push   %esi
5df840:	8b f1                	mov    %ecx,%esi
5df842:	88 5d fc             	mov    %bl,-0x4(%ebp)
5df845:	88 45 fd             	mov    %al,-0x3(%ebp)
5df848:	e8 d4 8d 00 00       	call   0x5e8621
5df84d:	0f b6 d3             	movzbl %bl,%edx
5df850:	33 c9                	xor    %ecx,%ecx
5df852:	66 39 0c 50          	cmp    %cx,(%eax,%edx,2)
5df856:	7d 0b                	jge    0x5df863
5df858:	8d 4e 08             	lea    0x8(%esi),%ecx
5df85b:	e8 b2 f5 ff ff       	call   0x5dee12
5df860:	88 45 fd             	mov    %al,-0x3(%ebp)
5df863:	6a 3f                	push   $0x3f
5df865:	58                   	pop    %eax
5df866:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
5df86a:	8b 46 68             	mov    0x68(%esi),%eax
5df86d:	50                   	push   %eax
5df86e:	8b 00                	mov    (%eax),%eax
5df870:	ff 70 04             	push   0x4(%eax)
5df873:	8d 45 fc             	lea    -0x4(%ebp),%eax
5df876:	50                   	push   %eax
5df877:	8d 45 f8             	lea    -0x8(%ebp),%eax
5df87a:	50                   	push   %eax
5df87b:	e8 20 c8 00 00       	call   0x5ec0a0
5df880:	8b 55 10             	mov    0x10(%ebp),%edx
5df883:	83 c4 10             	add    $0x10,%esp
5df886:	66 0f be cb          	movsbw %bl,%cx
5df88a:	8b 02                	mov    (%edx),%eax
5df88c:	5e                   	pop    %esi
5df88d:	5b                   	pop    %ebx
5df88e:	66 89 08             	mov    %cx,(%eax)
5df891:	8b 45 14             	mov    0x14(%ebp),%eax
5df894:	83 02 02             	addl   $0x2,(%edx)
5df897:	ff 08                	decl   (%eax)
5df899:	b0 01                	mov    $0x1,%al
5df89b:	c9                   	leave
5df89c:	c2 14 00             	ret    $0x14
5df89f:	8b ff                	mov    %edi,%edi
5df8a1:	55                   	push   %ebp
5df8a2:	8b ec                	mov    %esp,%ebp
5df8a4:	8b 51 6c             	mov    0x6c(%ecx),%edx
5df8a7:	56                   	push   %esi
5df8a8:	8d 42 04             	lea    0x4(%edx),%eax
5df8ab:	89 41 6c             	mov    %eax,0x6c(%ecx)
5df8ae:	8b 32                	mov    (%edx),%esi
5df8b0:	85 f6                	test   %esi,%esi
5df8b2:	75 14                	jne    0x5df8c8
5df8b4:	e8 cf b3 ff ff       	call   0x5dac88
5df8b9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5df8bf:	e8 1c 69 ff ff       	call   0x5d61e0
5df8c4:	32 c0                	xor    %al,%al
5df8c6:	eb 41                	jmp    0x5df909
5df8c8:	83 c1 18             	add    $0x18,%ecx
5df8cb:	e8 a8 f5 ff ff       	call   0x5dee78
5df8d0:	83 e8 01             	sub    $0x1,%eax
5df8d3:	74 2d                	je     0x5df902
5df8d5:	83 e8 01             	sub    $0x1,%eax
5df8d8:	74 1f                	je     0x5df8f9
5df8da:	48                   	dec    %eax
5df8db:	83 e8 01             	sub    $0x1,%eax
5df8de:	74 12                	je     0x5df8f2
5df8e0:	83 e8 04             	sub    $0x4,%eax
5df8e3:	75 df                	jne    0x5df8c4
5df8e5:	8b 45 08             	mov    0x8(%ebp),%eax
5df8e8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5df8eb:	89 06                	mov    %eax,(%esi)
5df8ed:	89 4e 04             	mov    %ecx,0x4(%esi)
5df8f0:	eb 15                	jmp    0x5df907
5df8f2:	8b 45 08             	mov    0x8(%ebp),%eax
5df8f5:	89 06                	mov    %eax,(%esi)
5df8f7:	eb 0e                	jmp    0x5df907
5df8f9:	66 8b 45 08          	mov    0x8(%ebp),%ax
5df8fd:	66 89 06             	mov    %ax,(%esi)
5df900:	eb 05                	jmp    0x5df907
5df902:	8a 45 08             	mov    0x8(%ebp),%al
5df905:	88 06                	mov    %al,(%esi)
5df907:	b0 01                	mov    $0x1,%al
5df909:	5e                   	pop    %esi
5df90a:	5d                   	pop    %ebp
5df90b:	c2 08 00             	ret    $0x8
5df90e:	8b ff                	mov    %edi,%edi
5df910:	55                   	push   %ebp
5df911:	8b ec                	mov    %esp,%ebp
5df913:	ff 75 20             	push   0x20(%ebp)
5df916:	ff 75 1c             	push   0x1c(%ebp)
5df919:	ff 75 18             	push   0x18(%ebp)
5df91c:	ff 75 14             	push   0x14(%ebp)
5df91f:	ff 75 10             	push   0x10(%ebp)
5df922:	ff 75 0c             	push   0xc(%ebp)
5df925:	ff 75 08             	push   0x8(%ebp)
5df928:	e8 3a b6 ff ff       	call   0x5daf67
5df92d:	83 c4 1c             	add    $0x1c,%esp
5df930:	5d                   	pop    %ebp
5df931:	c3                   	ret
5df932:	8b ff                	mov    %edi,%edi
5df934:	55                   	push   %ebp
5df935:	8b ec                	mov    %esp,%ebp
5df937:	8b 4d 10             	mov    0x10(%ebp),%ecx
5df93a:	85 c9                	test   %ecx,%ecx
5df93c:	75 16                	jne    0x5df954
5df93e:	ff 75 0c             	push   0xc(%ebp)
5df941:	ff 75 08             	push   0x8(%ebp)
5df944:	e8 d8 8c 00 00       	call   0x5e8621
5df949:	50                   	push   %eax
5df94a:	e8 d1 64 ff ff       	call   0x5d5e20
5df94f:	83 c4 0c             	add    $0xc,%esp
5df952:	5d                   	pop    %ebp
5df953:	c3                   	ret
5df954:	8b 55 08             	mov    0x8(%ebp),%edx
5df957:	56                   	push   %esi
5df958:	8b 31                	mov    (%ecx),%esi
5df95a:	8d 42 01             	lea    0x1(%edx),%eax
5df95d:	3d 00 01 00 00       	cmp    $0x100,%eax
5df962:	77 0b                	ja     0x5df96f
5df964:	8b 06                	mov    (%esi),%eax
5df966:	0f b7 04 50          	movzwl (%eax,%edx,2),%eax
5df96a:	23 45 0c             	and    0xc(%ebp),%eax
5df96d:	eb 17                	jmp    0x5df986
5df96f:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
5df973:	7e 0f                	jle    0x5df984
5df975:	51                   	push   %ecx
5df976:	ff 75 0c             	push   0xc(%ebp)
5df979:	52                   	push   %edx
5df97a:	e8 dd a8 00 00       	call   0x5ea25c
5df97f:	83 c4 0c             	add    $0xc,%esp
5df982:	eb 02                	jmp    0x5df986
5df984:	33 c0                	xor    %eax,%eax
5df986:	5e                   	pop    %esi
5df987:	5d                   	pop    %ebp
5df988:	c3                   	ret
5df989:	8b ff                	mov    %edi,%edi
5df98b:	55                   	push   %ebp
5df98c:	8b ec                	mov    %esp,%ebp
5df98e:	56                   	push   %esi
5df98f:	8b 75 14             	mov    0x14(%ebp),%esi
5df992:	85 f6                	test   %esi,%esi
5df994:	75 04                	jne    0x5df99a
5df996:	33 c0                	xor    %eax,%eax
5df998:	eb 6d                	jmp    0x5dfa07
5df99a:	8b 45 08             	mov    0x8(%ebp),%eax
5df99d:	85 c0                	test   %eax,%eax
5df99f:	75 13                	jne    0x5df9b4
5df9a1:	e8 e2 b2 ff ff       	call   0x5dac88
5df9a6:	6a 16                	push   $0x16
5df9a8:	5e                   	pop    %esi
5df9a9:	89 30                	mov    %esi,(%eax)
5df9ab:	e8 30 68 ff ff       	call   0x5d61e0
5df9b0:	8b c6                	mov    %esi,%eax
5df9b2:	eb 53                	jmp    0x5dfa07
5df9b4:	57                   	push   %edi
5df9b5:	8b 7d 10             	mov    0x10(%ebp),%edi
5df9b8:	85 ff                	test   %edi,%edi
5df9ba:	74 14                	je     0x5df9d0
5df9bc:	39 75 0c             	cmp    %esi,0xc(%ebp)
5df9bf:	72 0f                	jb     0x5df9d0
5df9c1:	56                   	push   %esi
5df9c2:	57                   	push   %edi
5df9c3:	50                   	push   %eax
5df9c4:	e8 07 34 ff ff       	call   0x5d2dd0
5df9c9:	83 c4 0c             	add    $0xc,%esp
5df9cc:	33 c0                	xor    %eax,%eax
5df9ce:	eb 36                	jmp    0x5dfa06
5df9d0:	ff 75 0c             	push   0xc(%ebp)
5df9d3:	6a 00                	push   $0x0
5df9d5:	50                   	push   %eax
5df9d6:	e8 95 32 ff ff       	call   0x5d2c70
5df9db:	83 c4 0c             	add    $0xc,%esp
5df9de:	85 ff                	test   %edi,%edi
5df9e0:	75 09                	jne    0x5df9eb
5df9e2:	e8 a1 b2 ff ff       	call   0x5dac88
5df9e7:	6a 16                	push   $0x16
5df9e9:	eb 0c                	jmp    0x5df9f7
5df9eb:	39 75 0c             	cmp    %esi,0xc(%ebp)
5df9ee:	73 13                	jae    0x5dfa03
5df9f0:	e8 93 b2 ff ff       	call   0x5dac88
5df9f5:	6a 22                	push   $0x22
5df9f7:	5e                   	pop    %esi
5df9f8:	89 30                	mov    %esi,(%eax)
5df9fa:	e8 e1 67 ff ff       	call   0x5d61e0
5df9ff:	8b c6                	mov    %esi,%eax
5dfa01:	eb 03                	jmp    0x5dfa06
5dfa03:	6a 16                	push   $0x16
5dfa05:	58                   	pop    %eax
5dfa06:	5f                   	pop    %edi
5dfa07:	5e                   	pop    %esi
5dfa08:	5d                   	pop    %ebp
5dfa09:	c3                   	ret
5dfa0a:	6a 0c                	push   $0xc
5dfa0c:	68 d0 a5 68 00       	push   $0x68a5d0
5dfa11:	e8 ea 2e ff ff       	call   0x5d2900
5dfa16:	8b 75 08             	mov    0x8(%ebp),%esi
5dfa19:	85 f6                	test   %esi,%esi
5dfa1b:	75 14                	jne    0x5dfa31
5dfa1d:	e8 66 b2 ff ff       	call   0x5dac88
5dfa22:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5dfa28:	e8 b3 67 ff ff       	call   0x5d61e0
5dfa2d:	33 c0                	xor    %eax,%eax
5dfa2f:	eb 3c                	jmp    0x5dfa6d
5dfa31:	bf ff 7f 00 00       	mov    $0x7fff,%edi
5dfa36:	57                   	push   %edi
5dfa37:	56                   	push   %esi
5dfa38:	e8 49 8c 00 00       	call   0x5e8686
5dfa3d:	59                   	pop    %ecx
5dfa3e:	59                   	pop    %ecx
5dfa3f:	3b c7                	cmp    %edi,%eax
5dfa41:	73 da                	jae    0x5dfa1d
5dfa43:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
5dfa47:	6a 0b                	push   $0xb
5dfa49:	e8 74 8b 00 00       	call   0x5e85c2
5dfa4e:	59                   	pop    %ecx
5dfa4f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5dfa53:	56                   	push   %esi
5dfa54:	e8 30 00 00 00       	call   0x5dfa89
5dfa59:	59                   	pop    %ecx
5dfa5a:	8b f0                	mov    %eax,%esi
5dfa5c:	89 75 e4             	mov    %esi,-0x1c(%ebp)
5dfa5f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5dfa66:	e8 15 00 00 00       	call   0x5dfa80
5dfa6b:	8b c6                	mov    %esi,%eax
5dfa6d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5dfa70:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5dfa77:	59                   	pop    %ecx
5dfa78:	5f                   	pop    %edi
5dfa79:	5e                   	pop    %esi
5dfa7a:	5b                   	pop    %ebx
5dfa7b:	c9                   	leave
5dfa7c:	c3                   	ret
5dfa7d:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5dfa80:	6a 0b                	push   $0xb
5dfa82:	e8 83 8b 00 00       	call   0x5e860a
5dfa87:	59                   	pop    %ecx
5dfa88:	c3                   	ret
5dfa89:	8b ff                	mov    %edi,%edi
5dfa8b:	55                   	push   %ebp
5dfa8c:	8b ec                	mov    %esp,%ebp
5dfa8e:	51                   	push   %ecx
5dfa8f:	56                   	push   %esi
5dfa90:	57                   	push   %edi
5dfa91:	e8 15 98 00 00       	call   0x5e92ab
5dfa96:	8b f8                	mov    %eax,%edi
5dfa98:	85 ff                	test   %edi,%edi
5dfa9a:	74 4d                	je     0x5dfae9
5dfa9c:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5dfaa0:	74 47                	je     0x5dfae9
5dfaa2:	8b 75 08             	mov    0x8(%ebp),%esi
5dfaa5:	8d 4e 01             	lea    0x1(%esi),%ecx
5dfaa8:	8a 06                	mov    (%esi),%al
5dfaaa:	46                   	inc    %esi
5dfaab:	84 c0                	test   %al,%al
5dfaad:	75 f9                	jne    0x5dfaa8
5dfaaf:	2b f1                	sub    %ecx,%esi
5dfab1:	eb 30                	jmp    0x5dfae3
5dfab3:	8b d1                	mov    %ecx,%edx
5dfab5:	8d 42 01             	lea    0x1(%edx),%eax
5dfab8:	89 45 fc             	mov    %eax,-0x4(%ebp)
5dfabb:	8a 02                	mov    (%edx),%al
5dfabd:	42                   	inc    %edx
5dfabe:	84 c0                	test   %al,%al
5dfac0:	75 f9                	jne    0x5dfabb
5dfac2:	2b 55 fc             	sub    -0x4(%ebp),%edx
5dfac5:	3b d6                	cmp    %esi,%edx
5dfac7:	76 17                	jbe    0x5dfae0
5dfac9:	80 3c 31 3d          	cmpb   $0x3d,(%ecx,%esi,1)
5dfacd:	75 11                	jne    0x5dfae0
5dfacf:	56                   	push   %esi
5dfad0:	ff 75 08             	push   0x8(%ebp)
5dfad3:	51                   	push   %ecx
5dfad4:	e8 ac cc 00 00       	call   0x5ec785
5dfad9:	83 c4 0c             	add    $0xc,%esp
5dfadc:	85 c0                	test   %eax,%eax
5dfade:	74 0f                	je     0x5dfaef
5dfae0:	83 c7 04             	add    $0x4,%edi
5dfae3:	8b 0f                	mov    (%edi),%ecx
5dfae5:	85 c9                	test   %ecx,%ecx
5dfae7:	75 ca                	jne    0x5dfab3
5dfae9:	33 c0                	xor    %eax,%eax
5dfaeb:	5f                   	pop    %edi
5dfaec:	5e                   	pop    %esi
5dfaed:	c9                   	leave
5dfaee:	c3                   	ret
5dfaef:	8b 07                	mov    (%edi),%eax
5dfaf1:	40                   	inc    %eax
5dfaf2:	03 c6                	add    %esi,%eax
5dfaf4:	eb f5                	jmp    0x5dfaeb
5dfaf6:	8b ff                	mov    %edi,%edi
5dfaf8:	55                   	push   %ebp
5dfaf9:	8b ec                	mov    %esp,%ebp
5dfafb:	51                   	push   %ecx
5dfafc:	51                   	push   %ecx
5dfafd:	56                   	push   %esi
5dfafe:	57                   	push   %edi
5dfaff:	e8 ac 97 00 00       	call   0x5e92b0
5dfb04:	8b f8                	mov    %eax,%edi
5dfb06:	85 ff                	test   %edi,%edi
5dfb08:	74 60                	je     0x5dfb6a
5dfb0a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5dfb0e:	74 5a                	je     0x5dfb6a
5dfb10:	8b 75 08             	mov    0x8(%ebp),%esi
5dfb13:	33 d2                	xor    %edx,%edx
5dfb15:	89 55 fc             	mov    %edx,-0x4(%ebp)
5dfb18:	8d 4e 02             	lea    0x2(%esi),%ecx
5dfb1b:	66 8b 06             	mov    (%esi),%ax
5dfb1e:	83 c6 02             	add    $0x2,%esi
5dfb21:	66 3b c2             	cmp    %dx,%ax
5dfb24:	75 f5                	jne    0x5dfb1b
5dfb26:	2b f1                	sub    %ecx,%esi
5dfb28:	d1 fe                	sar    $1,%esi
5dfb2a:	eb 38                	jmp    0x5dfb64