5787d0:	83 c8 ff             	or     $0xffffffff,%eax
5787d3:	5e                   	pop    %esi
5787d4:	5b                   	pop    %ebx
5787d5:	c3                   	ret
5787d6:	90                   	nop
5787d7:	90                   	nop
5787d8:	53                   	push   %ebx
5787d9:	8b d8                	mov    %eax,%ebx
5787db:	56                   	push   %esi
5787dc:	57                   	push   %edi
5787dd:	8b f2                	mov    %edx,%esi
5787df:	8b 53 10             	mov    0x10(%ebx),%edx
5787e2:	8b 43 18             	mov    0x18(%ebx),%eax
5787e5:	8b 4b 14             	mov    0x14(%ebx),%ecx
5787e8:	2b c2                	sub    %edx,%eax
5787ea:	3b c1                	cmp    %ecx,%eax
5787ec:	7e 17                	jle    0x578805
5787ee:	68 0a 02 00 00       	push   $0x20a
5787f3:	68 fe 29 6a 00       	push   $0x6a29fe
5787f8:	68 c9 29 6a 00       	push   $0x6a29c9
5787fd:	e8 3e 23 fe ff       	call   0x55ab40
578802:	83 c4 0c             	add    $0xc,%esp
578805:	f6 43 08 07          	testb  $0x7,0x8(%ebx)
578809:	75 44                	jne    0x57884f
57880b:	8b 7b 40             	mov    0x40(%ebx),%edi
57880e:	85 ff                	test   %edi,%edi
578810:	7c 10                	jl     0x578822
578812:	8b 43 3c             	mov    0x3c(%ebx),%eax
578815:	3b f8                	cmp    %eax,%edi
578817:	7f 09                	jg     0x578822
578819:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
57881d:	83 c8 ff             	or     $0xffffffff,%eax
578820:	eb 30                	jmp    0x578852
578822:	83 4b 04 20          	orl    $0x20,0x4(%ebx)
578826:	ff 4b 1c             	decl   0x1c(%ebx)
578829:	79 11                	jns    0x57883c
57882b:	8b d6                	mov    %esi,%edx
57882d:	8b c3                	mov    %ebx,%eax
57882f:	81 e2 ff 00 00 00    	and    $0xff,%edx
578835:	e8 de 05 00 00       	call   0x578e18
57883a:	eb 16                	jmp    0x578852
57883c:	ff 43 3c             	incl   0x3c(%ebx)
57883f:	8b ce                	mov    %esi,%ecx
578841:	8b 43 18             	mov    0x18(%ebx),%eax
578844:	ff 43 18             	incl   0x18(%ebx)
578847:	88 08                	mov    %cl,(%eax)
578849:	33 c0                	xor    %eax,%eax
57884b:	8a c1                	mov    %cl,%al
57884d:	eb 03                	jmp    0x578852
57884f:	83 c8 ff             	or     $0xffffffff,%eax
578852:	5f                   	pop    %edi
578853:	5e                   	pop    %esi
578854:	5b                   	pop    %ebx
578855:	c3                   	ret
578856:	90                   	nop
578857:	90                   	nop
578858:	8b 48 18             	mov    0x18(%eax),%ecx
57885b:	85 c9                	test   %ecx,%ecx
57885d:	74 05                	je     0x578864
57885f:	3b 48 0c             	cmp    0xc(%eax),%ecx
578862:	75 04                	jne    0x578868
578864:	83 c8 ff             	or     $0xffffffff,%eax
578867:	c3                   	ret
578868:	83 60 08 fe          	andl   $0xfffffffe,0x8(%eax)
57886c:	ff 48 3c             	decl   0x3c(%eax)
57886f:	ff 48 18             	decl   0x18(%eax)
578872:	ff 40 1c             	incl   0x1c(%eax)
578875:	8b 40 18             	mov    0x18(%eax),%eax
578878:	88 10                	mov    %dl,(%eax)
57887a:	33 c0                	xor    %eax,%eax
57887c:	c3                   	ret
57887d:	90                   	nop
57887e:	90                   	nop
57887f:	90                   	nop
578880:	53                   	push   %ebx
578881:	56                   	push   %esi
578882:	57                   	push   %edi
578883:	55                   	push   %ebp
578884:	51                   	push   %ecx
578885:	89 0c 24             	mov    %ecx,(%esp)
578888:	8b d8                	mov    %eax,%ebx
57888a:	8b fa                	mov    %edx,%edi
57888c:	33 f6                	xor    %esi,%esi
57888e:	8b 04 24             	mov    (%esp),%eax
578891:	3b f0                	cmp    %eax,%esi
578893:	7d 5c                	jge    0x5788f1
578895:	f6 43 08 07          	testb  $0x7,0x8(%ebx)
578899:	75 3d                	jne    0x5788d8
57889b:	8b 53 40             	mov    0x40(%ebx),%edx
57889e:	85 d2                	test   %edx,%edx
5788a0:	7c 13                	jl     0x5788b5
5788a2:	8b 4b 40             	mov    0x40(%ebx),%ecx
5788a5:	8b 43 3c             	mov    0x3c(%ebx),%eax
5788a8:	3b c8                	cmp    %eax,%ecx
5788aa:	7f 09                	jg     0x5788b5
5788ac:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
5788b0:	83 cd ff             	or     $0xffffffff,%ebp
5788b3:	eb 26                	jmp    0x5788db
5788b5:	ff 4b 1c             	decl   0x1c(%ebx)
5788b8:	79 10                	jns    0x5788ca
5788ba:	ba 01 00 00 00       	mov    $0x1,%edx
5788bf:	8b c3                	mov    %ebx,%eax
5788c1:	e8 62 04 00 00       	call   0x578d28
5788c6:	8b e8                	mov    %eax,%ebp
5788c8:	eb 11                	jmp    0x5788db
5788ca:	ff 43 3c             	incl   0x3c(%ebx)
5788cd:	8b 43 18             	mov    0x18(%ebx),%eax
5788d0:	ff 43 18             	incl   0x18(%ebx)
5788d3:	0f b6 28             	movzbl (%eax),%ebp
5788d6:	eb 03                	jmp    0x5788db
5788d8:	83 cd ff             	or     $0xffffffff,%ebp
5788db:	83 fd ff             	cmp    $0xffffffff,%ebp
5788de:	75 04                	jne    0x5788e4
5788e0:	8b c6                	mov    %esi,%eax
5788e2:	eb 0f                	jmp    0x5788f3
5788e4:	8b d5                	mov    %ebp,%edx
5788e6:	88 17                	mov    %dl,(%edi)
5788e8:	47                   	inc    %edi
5788e9:	46                   	inc    %esi
5788ea:	8b 0c 24             	mov    (%esp),%ecx
5788ed:	3b f1                	cmp    %ecx,%esi
5788ef:	7c a4                	jl     0x578895
5788f1:	8b c6                	mov    %esi,%eax
5788f3:	5a                   	pop    %edx
5788f4:	5d                   	pop    %ebp
5788f5:	5f                   	pop    %edi
5788f6:	5e                   	pop    %esi
5788f7:	5b                   	pop    %ebx
5788f8:	c3                   	ret
5788f9:	90                   	nop
5788fa:	90                   	nop
5788fb:	90                   	nop
5788fc:	53                   	push   %ebx
5788fd:	56                   	push   %esi
5788fe:	57                   	push   %edi
5788ff:	55                   	push   %ebp
578900:	51                   	push   %ecx
578901:	89 0c 24             	mov    %ecx,(%esp)
578904:	8b d8                	mov    %eax,%ebx
578906:	8b f2                	mov    %edx,%esi
578908:	33 ff                	xor    %edi,%edi
57890a:	8b 04 24             	mov    (%esp),%eax
57890d:	3b f8                	cmp    %eax,%edi
57890f:	7d 5b                	jge    0x57896c
578911:	f6 43 08 07          	testb  $0x7,0x8(%ebx)
578915:	75 42                	jne    0x578959
578917:	8b 6b 40             	mov    0x40(%ebx),%ebp
57891a:	85 ed                	test   %ebp,%ebp
57891c:	7c 10                	jl     0x57892e
57891e:	8b 43 3c             	mov    0x3c(%ebx),%eax
578921:	3b e8                	cmp    %eax,%ebp
578923:	7f 09                	jg     0x57892e
578925:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
578929:	83 ca ff             	or     $0xffffffff,%edx
57892c:	eb 2e                	jmp    0x57895c
57892e:	83 4b 04 20          	orl    $0x20,0x4(%ebx)
578932:	ff 4b 1c             	decl   0x1c(%ebx)
578935:	79 0f                	jns    0x578946
578937:	33 d2                	xor    %edx,%edx
578939:	8b c3                	mov    %ebx,%eax
57893b:	8a 16                	mov    (%esi),%dl
57893d:	e8 d6 04 00 00       	call   0x578e18
578942:	8b d0                	mov    %eax,%edx
578944:	eb 16                	jmp    0x57895c
578946:	ff 43 3c             	incl   0x3c(%ebx)
578949:	8b 43 18             	mov    0x18(%ebx),%eax
57894c:	ff 43 18             	incl   0x18(%ebx)
57894f:	8a 0e                	mov    (%esi),%cl
578951:	88 08                	mov    %cl,(%eax)
578953:	33 d2                	xor    %edx,%edx
578955:	8a d1                	mov    %cl,%dl
578957:	eb 03                	jmp    0x57895c
578959:	83 ca ff             	or     $0xffffffff,%edx
57895c:	42                   	inc    %edx
57895d:	75 04                	jne    0x578963
57895f:	8b c7                	mov    %edi,%eax
578961:	eb 0b                	jmp    0x57896e
578963:	46                   	inc    %esi
578964:	47                   	inc    %edi
578965:	8b 0c 24             	mov    (%esp),%ecx
578968:	3b f9                	cmp    %ecx,%edi
57896a:	7c a5                	jl     0x578911
57896c:	8b c7                	mov    %edi,%eax
57896e:	5a                   	pop    %edx
57896f:	5d                   	pop    %ebp
578970:	5f                   	pop    %edi
578971:	5e                   	pop    %esi
578972:	5b                   	pop    %ebx
578973:	c3                   	ret
578974:	55                   	push   %ebp
578975:	8b ec                	mov    %esp,%ebp
578977:	81 c4 04 f0 ff ff    	add    $0xfffff004,%esp
57897d:	50                   	push   %eax
57897e:	53                   	push   %ebx
57897f:	8d 45 10             	lea    0x10(%ebp),%eax
578982:	50                   	push   %eax
578983:	8b 55 0c             	mov    0xc(%ebp),%edx
578986:	52                   	push   %edx
578987:	8d 8d 00 f0 ff ff    	lea    -0x1000(%ebp),%ecx
57898d:	51                   	push   %ecx
57898e:	e8 b1 17 00 00       	call   0x57a144
578993:	83 c4 0c             	add    $0xc,%esp
578996:	8b d8                	mov    %eax,%ebx
578998:	8d 95 00 f0 ff ff    	lea    -0x1000(%ebp),%edx
57899e:	8b 45 08             	mov    0x8(%ebp),%eax
5789a1:	e8 0a 00 00 00       	call   0x5789b0
5789a6:	8b c3                	mov    %ebx,%eax
5789a8:	5b                   	pop    %ebx
5789a9:	8b e5                	mov    %ebp,%esp
5789ab:	5d                   	pop    %ebp
5789ac:	c3                   	ret
5789ad:	90                   	nop
5789ae:	90                   	nop
5789af:	90                   	nop
5789b0:	53                   	push   %ebx
5789b1:	56                   	push   %esi
5789b2:	57                   	push   %edi
5789b3:	8b f2                	mov    %edx,%esi
5789b5:	8b d8                	mov    %eax,%ebx
5789b7:	eb 54                	jmp    0x578a0d
5789b9:	f6 43 08 07          	testb  $0x7,0x8(%ebx)
5789bd:	75 42                	jne    0x578a01
5789bf:	8b 7b 40             	mov    0x40(%ebx),%edi
5789c2:	85 ff                	test   %edi,%edi
5789c4:	7c 10                	jl     0x5789d6
5789c6:	8b 43 3c             	mov    0x3c(%ebx),%eax
5789c9:	3b f8                	cmp    %eax,%edi
5789cb:	7f 09                	jg     0x5789d6
5789cd:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
5789d1:	83 ca ff             	or     $0xffffffff,%edx
5789d4:	eb 2e                	jmp    0x578a04
5789d6:	83 4b 04 20          	orl    $0x20,0x4(%ebx)
5789da:	ff 4b 1c             	decl   0x1c(%ebx)
5789dd:	79 0f                	jns    0x5789ee
5789df:	33 d2                	xor    %edx,%edx
5789e1:	8b c3                	mov    %ebx,%eax
5789e3:	8a 16                	mov    (%esi),%dl
5789e5:	e8 2e 04 00 00       	call   0x578e18
5789ea:	8b d0                	mov    %eax,%edx
5789ec:	eb 16                	jmp    0x578a04
5789ee:	ff 43 3c             	incl   0x3c(%ebx)
5789f1:	8b 43 18             	mov    0x18(%ebx),%eax
5789f4:	ff 43 18             	incl   0x18(%ebx)
5789f7:	8a 0e                	mov    (%esi),%cl
5789f9:	88 08                	mov    %cl,(%eax)
5789fb:	33 d2                	xor    %edx,%edx
5789fd:	8a d1                	mov    %cl,%dl
5789ff:	eb 03                	jmp    0x578a04
578a01:	83 ca ff             	or     $0xffffffff,%edx
578a04:	42                   	inc    %edx
578a05:	75 05                	jne    0x578a0c
578a07:	83 c8 ff             	or     $0xffffffff,%eax
578a0a:	eb 09                	jmp    0x578a15
578a0c:	46                   	inc    %esi
578a0d:	8a 0e                	mov    (%esi),%cl
578a0f:	84 c9                	test   %cl,%cl
578a11:	75 a6                	jne    0x5789b9
578a13:	33 c0                	xor    %eax,%eax
578a15:	5f                   	pop    %edi
578a16:	5e                   	pop    %esi
578a17:	5b                   	pop    %ebx
578a18:	c3                   	ret
578a19:	90                   	nop
578a1a:	90                   	nop
578a1b:	90                   	nop
578a1c:	53                   	push   %ebx
578a1d:	56                   	push   %esi
578a1e:	57                   	push   %edi
578a1f:	55                   	push   %ebp
578a20:	51                   	push   %ecx
578a21:	8b e9                	mov    %ecx,%ebp
578a23:	89 14 24             	mov    %edx,(%esp)
578a26:	8b d8                	mov    %eax,%ebx
578a28:	85 ed                	test   %ebp,%ebp
578a2a:	7f 17                	jg     0x578a43
578a2c:	68 65 02 00 00       	push   $0x265
578a31:	68 17 2a 6a 00       	push   $0x6a2a17
578a36:	68 0b 2a 6a 00       	push   $0x6a2a0b
578a3b:	e8 00 21 fe ff       	call   0x55ab40
578a40:	83 c4 0c             	add    $0xc,%esp
578a43:	8b 3c 24             	mov    (%esp),%edi
578a46:	83 fd 01             	cmp    $0x1,%ebp
578a49:	7e 5b                	jle    0x578aa6
578a4b:	f6 43 08 07          	testb  $0x7,0x8(%ebx)
578a4f:	75 3d                	jne    0x578a8e
578a51:	8b 43 40             	mov    0x40(%ebx),%eax
578a54:	85 c0                	test   %eax,%eax
578a56:	7c 13                	jl     0x578a6b
578a58:	8b 53 40             	mov    0x40(%ebx),%edx
578a5b:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
578a5e:	3b d1                	cmp    %ecx,%edx
578a60:	7f 09                	jg     0x578a6b
578a62:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
578a66:	83 ce ff             	or     $0xffffffff,%esi
578a69:	eb 26                	jmp    0x578a91
578a6b:	ff 4b 1c             	decl   0x1c(%ebx)
578a6e:	79 10                	jns    0x578a80
578a70:	ba 01 00 00 00       	mov    $0x1,%edx
578a75:	8b c3                	mov    %ebx,%eax
578a77:	e8 ac 02 00 00       	call   0x578d28
578a7c:	8b f0                	mov    %eax,%esi
578a7e:	eb 11                	jmp    0x578a91
578a80:	ff 43 3c             	incl   0x3c(%ebx)
578a83:	8b 43 18             	mov    0x18(%ebx),%eax
578a86:	ff 43 18             	incl   0x18(%ebx)
578a89:	0f b6 30             	movzbl (%eax),%esi
578a8c:	eb 03                	jmp    0x578a91
578a8e:	83 ce ff             	or     $0xffffffff,%esi
578a91:	83 fe ff             	cmp    $0xffffffff,%esi
578a94:	74 10                	je     0x578aa6
578a96:	8b c6                	mov    %esi,%eax
578a98:	4d                   	dec    %ebp
578a99:	88 07                	mov    %al,(%edi)
578a9b:	47                   	inc    %edi
578a9c:	83 fe 0a             	cmp    $0xa,%esi
578a9f:	74 05                	je     0x578aa6
578aa1:	83 fd 01             	cmp    $0x1,%ebp
578aa4:	7f a5                	jg     0x578a4b
578aa6:	c6 07 00             	movb   $0x0,(%edi)
578aa9:	8b 04 24             	mov    (%esp),%eax
578aac:	5a                   	pop    %edx
578aad:	5d                   	pop    %ebp
578aae:	5f                   	pop    %edi
578aaf:	5e                   	pop    %esi
578ab0:	5b                   	pop    %ebx
578ab1:	c3                   	ret
578ab2:	90                   	nop
578ab3:	90                   	nop
578ab4:	53                   	push   %ebx
578ab5:	56                   	push   %esi
578ab6:	57                   	push   %edi
578ab7:	55                   	push   %ebp
578ab8:	8b ea                	mov    %edx,%ebp
578aba:	8b d8                	mov    %eax,%ebx
578abc:	8b f5                	mov    %ebp,%esi
578abe:	85 f6                	test   %esi,%esi
578ac0:	7e 52                	jle    0x578b14
578ac2:	f6 43 08 07          	testb  $0x7,0x8(%ebx)
578ac6:	75 3b                	jne    0x578b03
578ac8:	8b 7b 40             	mov    0x40(%ebx),%edi
578acb:	85 ff                	test   %edi,%edi
578acd:	7c 10                	jl     0x578adf
578acf:	8b 43 3c             	mov    0x3c(%ebx),%eax
578ad2:	3b f8                	cmp    %eax,%edi
578ad4:	7f 09                	jg     0x578adf
578ad6:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
578ada:	83 ca ff             	or     $0xffffffff,%edx
578add:	eb 27                	jmp    0x578b06
578adf:	ff 4b 1c             	decl   0x1c(%ebx)
578ae2:	79 10                	jns    0x578af4