61a7dd:	8b 7d 14             	mov    0x14(%ebp),%edi
61a7e0:	3b df                	cmp    %edi,%ebx
61a7e2:	75 05                	jne    0x61a7e9
61a7e4:	8b 45 0c             	mov    0xc(%ebp),%eax
61a7e7:	eb 56                	jmp    0x61a83f
61a7e9:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
61a7ed:	8b 4d 08             	mov    0x8(%ebp),%ecx
61a7f0:	74 39                	je     0x61a82b
61a7f2:	56                   	push   %esi
61a7f3:	6a 00                	push   $0x0
61a7f5:	57                   	push   %edi
61a7f6:	e8 08 ec 00 00       	call   0x629403
61a7fb:	3b fb                	cmp    %ebx,%edi
61a7fd:	8b cb                	mov    %ebx,%ecx
61a7ff:	8b d7                	mov    %edi,%edx
61a801:	8b f0                	mov    %eax,%esi
61a803:	0f 42 cf             	cmovb  %edi,%ecx
61a806:	c1 e2 02             	shl    $0x2,%edx
61a809:	c1 e1 02             	shl    $0x2,%ecx
61a80c:	51                   	push   %ecx
61a80d:	ff 75 0c             	push   0xc(%ebp)
61a810:	52                   	push   %edx
61a811:	56                   	push   %esi
61a812:	e8 80 ae ff ff       	call   0x615697
61a817:	8b 4d 08             	mov    0x8(%ebp),%ecx
61a81a:	83 c4 10             	add    $0x10,%esp
61a81d:	53                   	push   %ebx
61a81e:	ff 75 0c             	push   0xc(%ebp)
61a821:	e8 0e ec 00 00       	call   0x629434
61a826:	8b c6                	mov    %esi,%eax
61a828:	5e                   	pop    %esi
61a829:	eb 14                	jmp    0x61a83f
61a82b:	53                   	push   %ebx
61a82c:	ff 75 0c             	push   0xc(%ebp)
61a82f:	e8 00 ec 00 00       	call   0x629434
61a834:	8b 4d 08             	mov    0x8(%ebp),%ecx
61a837:	6a 00                	push   $0x0
61a839:	57                   	push   %edi
61a83a:	e8 c4 eb 00 00       	call   0x629403
61a83f:	5f                   	pop    %edi
61a840:	5b                   	pop    %ebx
61a841:	5d                   	pop    %ebp
61a842:	c3                   	ret
61a843:	6a 30                	push   $0x30
61a845:	b8 60 26 66 00       	mov    $0x662660,%eax
61a84a:	e8 6c 77 fc ff       	call   0x5e1fbb
61a84f:	8b 75 0c             	mov    0xc(%ebp),%esi
61a852:	33 ff                	xor    %edi,%edi
61a854:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
61a858:	80 3e 00             	cmpb   $0x0,(%esi)
61a85b:	74 07                	je     0x61a864
61a85d:	47                   	inc    %edi
61a85e:	80 3c 37 00          	cmpb   $0x0,(%edi,%esi,1)
61a862:	75 f9                	jne    0x61a85d
61a864:	8d 4d d8             	lea    -0x28(%ebp),%ecx
61a867:	e8 f4 05 00 00       	call   0x61ae60
61a86c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
61a870:	85 ff                	test   %edi,%edi
61a872:	75 18                	jne    0x61a88c
61a874:	8b 4d 08             	mov    0x8(%ebp),%ecx
61a877:	8d 45 d8             	lea    -0x28(%ebp),%eax
61a87a:	50                   	push   %eax
61a87b:	e8 65 04 00 00       	call   0x61ace5
61a880:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
61a887:	e9 15 01 00 00       	jmp    0x61a9a1
61a88c:	8a 44 37 ff          	mov    -0x1(%edi,%esi,1),%al
61a890:	6a 10                	push   $0x10
61a892:	59                   	pop    %ecx
61a893:	3c 42                	cmp    $0x42,%al
61a895:	74 20                	je     0x61a8b7
61a897:	3c 48                	cmp    $0x48,%al
61a899:	74 18                	je     0x61a8b3
61a89b:	3c 4f                	cmp    $0x4f,%al
61a89d:	74 10                	je     0x61a8af
61a89f:	3c 62                	cmp    $0x62,%al
61a8a1:	74 14                	je     0x61a8b7
61a8a3:	3c 68                	cmp    $0x68,%al
61a8a5:	74 0c                	je     0x61a8b3
61a8a7:	3c 6f                	cmp    $0x6f,%al
61a8a9:	74 04                	je     0x61a8af
61a8ab:	6a 0a                	push   $0xa
61a8ad:	eb 0a                	jmp    0x61a8b9
61a8af:	6a 08                	push   $0x8
61a8b1:	eb 06                	jmp    0x61a8b9
61a8b3:	8b d9                	mov    %ecx,%ebx
61a8b5:	eb 03                	jmp    0x61a8ba
61a8b7:	6a 02                	push   $0x2
61a8b9:	5b                   	pop    %ebx
61a8ba:	83 ff 02             	cmp    $0x2,%edi
61a8bd:	76 0c                	jbe    0x61a8cb
61a8bf:	80 3e 30             	cmpb   $0x30,(%esi)
61a8c2:	75 07                	jne    0x61a8cb
61a8c4:	80 7e 01 78          	cmpb   $0x78,0x1(%esi)
61a8c8:	0f 44 d9             	cmove  %ecx,%ebx
61a8cb:	33 c0                	xor    %eax,%eax
61a8cd:	89 45 f0             	mov    %eax,-0x10(%ebp)
61a8d0:	85 ff                	test   %edi,%edi
61a8d2:	0f 84 a9 00 00 00    	je     0x61a981
61a8d8:	8a 04 30             	mov    (%eax,%esi,1),%al
61a8db:	3c 30                	cmp    $0x30,%al
61a8dd:	7c 0c                	jl     0x61a8eb
61a8df:	3c 39                	cmp    $0x39,%al
61a8e1:	7f 08                	jg     0x61a8eb
61a8e3:	0f be f0             	movsbl %al,%esi
61a8e6:	83 ee 30             	sub    $0x30,%esi
61a8e9:	eb 22                	jmp    0x61a90d
61a8eb:	3c 41                	cmp    $0x41,%al
61a8ed:	7c 0c                	jl     0x61a8fb
61a8ef:	3c 46                	cmp    $0x46,%al
61a8f1:	7f 08                	jg     0x61a8fb
61a8f3:	0f be f0             	movsbl %al,%esi
61a8f6:	83 ee 37             	sub    $0x37,%esi
61a8f9:	eb 12                	jmp    0x61a90d
61a8fb:	3c 61                	cmp    $0x61,%al
61a8fd:	7c 0c                	jl     0x61a90b
61a8ff:	3c 66                	cmp    $0x66,%al
61a901:	7f 08                	jg     0x61a90b
61a903:	0f be f0             	movsbl %al,%esi
61a906:	83 ee 57             	sub    $0x57,%esi
61a909:	eb 02                	jmp    0x61a90d
61a90b:	8b f3                	mov    %ebx,%esi
61a90d:	3b f3                	cmp    %ebx,%esi
61a90f:	7d 5e                	jge    0x61a96f
61a911:	53                   	push   %ebx
61a912:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
61a915:	e8 29 04 00 00       	call   0x61ad43
61a91a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
61a91d:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
61a921:	50                   	push   %eax
61a922:	8d 4d d8             	lea    -0x28(%ebp),%ecx
61a925:	e8 fa 0b 00 00       	call   0x61b524
61a92a:	ff 75 cc             	push   -0x34(%ebp)
61a92d:	8d 4d c8             	lea    -0x38(%ebp),%ecx
61a930:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
61a934:	ff 75 d0             	push   -0x30(%ebp)
61a937:	e8 f8 ea 00 00       	call   0x629434
61a93c:	56                   	push   %esi
61a93d:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
61a940:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
61a944:	e8 fa 03 00 00       	call   0x61ad43
61a949:	8d 45 c4             	lea    -0x3c(%ebp),%eax
61a94c:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
61a950:	50                   	push   %eax
61a951:	8d 4d d8             	lea    -0x28(%ebp),%ecx
61a954:	e8 12 0c 00 00       	call   0x61b56b
61a959:	ff 75 cc             	push   -0x34(%ebp)
61a95c:	8d 4d c8             	lea    -0x38(%ebp),%ecx
61a95f:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
61a963:	ff 75 d0             	push   -0x30(%ebp)
61a966:	e8 c9 ea 00 00       	call   0x629434
61a96b:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
61a96f:	8b 45 f0             	mov    -0x10(%ebp),%eax
61a972:	8b 75 0c             	mov    0xc(%ebp),%esi
61a975:	40                   	inc    %eax
61a976:	89 45 f0             	mov    %eax,-0x10(%ebp)
61a979:	3b c7                	cmp    %edi,%eax
61a97b:	0f 82 57 ff ff ff    	jb     0x61a8d8
61a981:	80 3e 2d             	cmpb   $0x2d,(%esi)
61a984:	75 08                	jne    0x61a98e
61a986:	8d 4d d8             	lea    -0x28(%ebp),%ecx
61a989:	e8 1b 4b 00 00       	call   0x61f4a9
61a98e:	8b 4d 08             	mov    0x8(%ebp),%ecx
61a991:	8d 45 d8             	lea    -0x28(%ebp),%eax
61a994:	50                   	push   %eax
61a995:	e8 4b 03 00 00       	call   0x61ace5
61a99a:	c7 45 fc 06 00 00 00 	movl   $0x6,-0x4(%ebp)
61a9a1:	ff 75 e0             	push   -0x20(%ebp)
61a9a4:	8d 4d dc             	lea    -0x24(%ebp),%ecx
61a9a7:	ff 75 e4             	push   -0x1c(%ebp)
61a9aa:	e8 85 ea 00 00       	call   0x629434
61a9af:	8b 45 08             	mov    0x8(%ebp),%eax
61a9b2:	e8 de 75 fc ff       	call   0x5e1f95
61a9b7:	c3                   	ret
61a9b8:	55                   	push   %ebp
61a9b9:	8b ec                	mov    %esp,%ebp
61a9bb:	8b 4d 0c             	mov    0xc(%ebp),%ecx
61a9be:	85 c9                	test   %ecx,%ecx
61a9c0:	74 18                	je     0x61a9da
61a9c2:	8b 55 08             	mov    0x8(%ebp),%edx
61a9c5:	56                   	push   %esi
61a9c6:	8b 75 10             	mov    0x10(%ebp),%esi
61a9c9:	85 d2                	test   %edx,%edx
61a9cb:	74 04                	je     0x61a9d1
61a9cd:	8b 06                	mov    (%esi),%eax
61a9cf:	89 02                	mov    %eax,(%edx)
61a9d1:	83 c2 04             	add    $0x4,%edx
61a9d4:	83 e9 01             	sub    $0x1,%ecx
61a9d7:	75 f0                	jne    0x61a9c9
61a9d9:	5e                   	pop    %esi
61a9da:	5d                   	pop    %ebp
61a9db:	c3                   	ret
61a9dc:	55                   	push   %ebp
61a9dd:	8b ec                	mov    %esp,%ebp
61a9df:	8b 45 0c             	mov    0xc(%ebp),%eax
61a9e2:	2b 45 08             	sub    0x8(%ebp),%eax
61a9e5:	50                   	push   %eax
61a9e6:	ff 75 10             	push   0x10(%ebp)
61a9e9:	ff 75 08             	push   0x8(%ebp)
61a9ec:	e8 ea a2 fc ff       	call   0x5e4cdb
61a9f1:	83 c4 0c             	add    $0xc,%esp
61a9f4:	f7 d8                	neg    %eax
61a9f6:	1b c0                	sbb    %eax,%eax
61a9f8:	40                   	inc    %eax
61a9f9:	5d                   	pop    %ebp
61a9fa:	c3                   	ret
61a9fb:	55                   	push   %ebp
61a9fc:	8b ec                	mov    %esp,%ebp
61a9fe:	51                   	push   %ecx
61a9ff:	56                   	push   %esi
61aa00:	8b f1                	mov    %ecx,%esi
61aa02:	89 75 fc             	mov    %esi,-0x4(%ebp)
61aa05:	c7 46 04 94 cc 6d 00 	movl   $0x6dcc94,0x4(%esi)
61aa0c:	8d 4e 0c             	lea    0xc(%esi),%ecx
61aa0f:	89 76 08             	mov    %esi,0x8(%esi)
61aa12:	e8 49 04 00 00       	call   0x61ae60
61aa17:	8b c6                	mov    %esi,%eax
61aa19:	5e                   	pop    %esi
61aa1a:	8b e5                	mov    %ebp,%esp
61aa1c:	5d                   	pop    %ebp
61aa1d:	c3                   	ret
61aa1e:	6a 04                	push   $0x4
61aa20:	b8 88 26 66 00       	mov    $0x662688,%eax
61aa25:	e8 91 75 fc ff       	call   0x5e1fbb
61aa2a:	8b f1                	mov    %ecx,%esi
61aa2c:	89 75 f0             	mov    %esi,-0x10(%ebp)
61aa2f:	e8 c7 ff ff ff       	call   0x61a9fb
61aa34:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
61aa38:	8d 4e 20             	lea    0x20(%esi),%ecx
61aa3b:	c7 06 00 d0 6d 00    	movl   $0x6dd000,(%esi)
61aa41:	e8 1a 04 00 00       	call   0x61ae60
61aa46:	8b c6                	mov    %esi,%eax
61aa48:	e8 48 75 fc ff       	call   0x5e1f95
61aa4d:	c3                   	ret
61aa4e:	55                   	push   %ebp
61aa4f:	8b ec                	mov    %esp,%ebp
61aa51:	51                   	push   %ecx
61aa52:	8b 55 08             	mov    0x8(%ebp),%edx
61aa55:	56                   	push   %esi
61aa56:	8b f1                	mov    %ecx,%esi
61aa58:	89 75 fc             	mov    %esi,-0x4(%ebp)
61aa5b:	8b 42 04             	mov    0x4(%edx),%eax
61aa5e:	89 46 04             	mov    %eax,0x4(%esi)
61aa61:	8d 4e 10             	lea    0x10(%esi),%ecx
61aa64:	8b 42 08             	mov    0x8(%edx),%eax
61aa67:	89 46 08             	mov    %eax,0x8(%esi)
61aa6a:	8d 42 10             	lea    0x10(%edx),%eax
61aa6d:	50                   	push   %eax
61aa6e:	e8 6a 00 00 00       	call   0x61aadd
61aa73:	8b c6                	mov    %esi,%eax
61aa75:	5e                   	pop    %esi
61aa76:	8b e5                	mov    %ebp,%esp
61aa78:	5d                   	pop    %ebp
61aa79:	c2 04 00             	ret    $0x4
61aa7c:	55                   	push   %ebp
61aa7d:	8b ec                	mov    %esp,%ebp
61aa7f:	51                   	push   %ecx
61aa80:	56                   	push   %esi
61aa81:	8b f1                	mov    %ecx,%esi
61aa83:	6a 01                	push   $0x1
61aa85:	89 75 fc             	mov    %esi,-0x4(%ebp)
61aa88:	e8 a7 8b ff ff       	call   0x613634
61aa8d:	83 66 04 00          	andl   $0x0,0x4(%esi)
61aa91:	8d 4e 10             	lea    0x10(%esi),%ecx
61aa94:	83 66 08 00          	andl   $0x0,0x8(%esi)
61aa98:	6a 10                	push   $0x10
61aa9a:	e8 7c 00 00 00       	call   0x61ab1b
61aa9f:	8b c6                	mov    %esi,%eax
61aaa1:	5e                   	pop    %esi
61aaa2:	8b e5                	mov    %ebp,%esp
61aaa4:	5d                   	pop    %ebp
61aaa5:	c3                   	ret
61aaa6:	55                   	push   %ebp
61aaa7:	8b ec                	mov    %esp,%ebp
61aaa9:	56                   	push   %esi
61aaaa:	8b 75 08             	mov    0x8(%ebp),%esi
61aaad:	57                   	push   %edi
61aaae:	8b f9                	mov    %ecx,%edi
61aab0:	6a 00                	push   $0x0
61aab2:	8b 46 04             	mov    0x4(%esi),%eax
61aab5:	50                   	push   %eax
61aab6:	89 47 04             	mov    %eax,0x4(%edi)
61aab9:	e8 45 e9 00 00       	call   0x629403
61aabe:	8b 4f 04             	mov    0x4(%edi),%ecx
61aac1:	c1 e1 02             	shl    $0x2,%ecx
61aac4:	51                   	push   %ecx
61aac5:	89 47 08             	mov    %eax,0x8(%edi)
61aac8:	ff 76 08             	push   0x8(%esi)
61aacb:	51                   	push   %ecx
61aacc:	50                   	push   %eax
61aacd:	e8 c5 ab ff ff       	call   0x615697
61aad2:	83 c4 10             	add    $0x10,%esp
61aad5:	8b c7                	mov    %edi,%eax
61aad7:	5f                   	pop    %edi
61aad8:	5e                   	pop    %esi
61aad9:	5d                   	pop    %ebp
61aada:	c2 04 00             	ret    $0x4
61aadd:	55                   	push   %ebp
61aade:	8b ec                	mov    %esp,%ebp
61aae0:	8b 55 08             	mov    0x8(%ebp),%edx
61aae3:	56                   	push   %esi
61aae4:	8b f1                	mov    %ecx,%esi
61aae6:	33 c9                	xor    %ecx,%ecx
61aae8:	88 4e 41             	mov    %cl,0x41(%esi)
61aaeb:	8b 42 48             	mov    0x48(%edx),%eax
61aaee:	89 46 48             	mov    %eax,0x48(%esi)
61aaf1:	83 f8 10             	cmp    $0x10,%eax
61aaf4:	77 0a                	ja     0x61ab00
61aaf6:	3a c9                	cmp    %cl,%cl
61aaf8:	75 06                	jne    0x61ab00
61aafa:	c6 46 41 01          	movb   $0x1,0x41(%esi)
61aafe:	8b ce                	mov    %esi,%ecx
61ab00:	c1 e0 02             	shl    $0x2,%eax
61ab03:	50                   	push   %eax
61ab04:	89 4e 4c             	mov    %ecx,0x4c(%esi)
61ab07:	ff 72 4c             	push   0x4c(%edx)
61ab0a:	50                   	push   %eax
61ab0b:	51                   	push   %ecx
61ab0c:	e8 86 ab ff ff       	call   0x615697
61ab11:	83 c4 10             	add    $0x10,%esp
61ab14:	8b c6                	mov    %esi,%eax
61ab16:	5e                   	pop    %esi
61ab17:	5d                   	pop    %ebp
61ab18:	c2 04 00             	ret    $0x4
61ab1b:	55                   	push   %ebp
61ab1c:	8b ec                	mov    %esp,%ebp
61ab1e:	8b 45 08             	mov    0x8(%ebp),%eax
61ab21:	33 d2                	xor    %edx,%edx
61ab23:	88 51 41             	mov    %dl,0x41(%ecx)
61ab26:	89 41 48             	mov    %eax,0x48(%ecx)
61ab29:	83 f8 10             	cmp    $0x10,%eax
61ab2c:	77 0a                	ja     0x61ab38
61ab2e:	3a d2                	cmp    %dl,%dl
61ab30:	75 06                	jne    0x61ab38
61ab32:	c6 41 41 01          	movb   $0x1,0x41(%ecx)
61ab36:	8b d1                	mov    %ecx,%edx
61ab38:	89 51 4c             	mov    %edx,0x4c(%ecx)
61ab3b:	8b c1                	mov    %ecx,%eax
61ab3d:	5d                   	pop    %ebp
61ab3e:	c2 04 00             	ret    $0x4
61ab41:	55                   	push   %ebp
61ab42:	8b ec                	mov    %esp,%ebp
61ab44:	56                   	push   %esi
61ab45:	8b f1                	mov    %ecx,%esi
61ab47:	33 c0                	xor    %eax,%eax
61ab49:	57                   	push   %edi
61ab4a:	8b 7d 08             	mov    0x8(%ebp),%edi
61ab4d:	89 06                	mov    %eax,(%esi)
61ab4f:	89 46 04             	mov    %eax,0x4(%esi)
61ab52:	89 46 08             	mov    %eax,0x8(%esi)
61ab55:	8b 47 04             	mov    0x4(%edi),%eax