569568:	eb 07                	jmp    0x569571
56956a:	8b c3                	mov    %ebx,%eax
56956c:	e8 bb 91 00 00       	call   0x57272c
569571:	8b 55 0c             	mov    0xc(%ebp),%edx
569574:	85 d2                	test   %edx,%edx
569576:	74 0b                	je     0x569583
569578:	8b 55 0c             	mov    0xc(%ebp),%edx
56957b:	8b c3                	mov    %ebx,%eax
56957d:	4a                   	dec    %edx
56957e:	e8 8d 94 00 00       	call   0x572a10
569583:	8b 4b 20             	mov    0x20(%ebx),%ecx
569586:	85 c9                	test   %ecx,%ecx
569588:	74 05                	je     0x56958f
56958a:	83 c8 ff             	or     $0xffffffff,%eax
56958d:	eb 02                	jmp    0x569591
56958f:	33 c0                	xor    %eax,%eax
569591:	5f                   	pop    %edi
569592:	5e                   	pop    %esi
569593:	5b                   	pop    %ebx
569594:	8b e5                	mov    %ebp,%esp
569596:	5d                   	pop    %ebp
569597:	c2 18 00             	ret    $0x18
56959a:	8b c0                	mov    %eax,%eax
56959c:	53                   	push   %ebx
56959d:	56                   	push   %esi
56959e:	57                   	push   %edi
56959f:	55                   	push   %ebp
5695a0:	51                   	push   %ecx
5695a1:	89 14 24             	mov    %edx,(%esp)
5695a4:	8b d8                	mov    %eax,%ebx
5695a6:	8b 04 24             	mov    (%esp),%eax
5695a9:	85 c0                	test   %eax,%eax
5695ab:	0f 8d 17 01 00 00    	jge    0x5696c8
5695b1:	68 91 00 00 00       	push   $0x91
5695b6:	68 f3 f8 69 00       	push   $0x69f8f3
5695bb:	68 ec f8 69 00       	push   $0x69f8ec
5695c0:	e8 7b 15 ff ff       	call   0x55ab40
5695c5:	83 c4 0c             	add    $0xc,%esp
5695c8:	e9 fb 00 00 00       	jmp    0x5696c8
5695cd:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
5695d1:	75 17                	jne    0x5695ea
5695d3:	68 94 00 00 00       	push   $0x94
5695d8:	68 26 f9 69 00       	push   $0x69f926
5695dd:	68 ff f8 69 00       	push   $0x69f8ff
5695e2:	e8 59 15 ff ff       	call   0x55ab40
5695e7:	83 c4 0c             	add    $0xc,%esp
5695ea:	ff 4b 08             	decl   0x8(%ebx)
5695ed:	0f 89 b7 00 00 00    	jns    0x5696aa
5695f3:	66 8b 73 04          	mov    0x4(%ebx),%si
5695f7:	c1 e6 08             	shl    $0x8,%esi
5695fa:	66 81 e6 ff ff       	and    $0xffff,%si
5695ff:	66 89 73 04          	mov    %si,0x4(%ebx)
569603:	66 81 fe 00 ff       	cmp    $0xff00,%si
569608:	75 07                	jne    0x569611
56960a:	bf 06 00 00 00       	mov    $0x6,%edi
56960f:	eb 05                	jmp    0x569616
569611:	bf 07 00 00 00       	mov    $0x7,%edi
569616:	89 7b 08             	mov    %edi,0x8(%ebx)
569619:	8b cf                	mov    %edi,%ecx
56961b:	66 b8 01 00          	mov    $0x1,%ax
56961f:	66 d3 e0             	shl    %cl,%ax
569622:	66 09 43 04          	or     %ax,0x4(%ebx)
569626:	8b 53 0c             	mov    0xc(%ebx),%edx
569629:	f6 42 08 07          	testb  $0x7,0x8(%edx)
56962d:	75 69                	jne    0x569698
56962f:	8b 6b 0c             	mov    0xc(%ebx),%ebp
569632:	8b 45 40             	mov    0x40(%ebp),%eax
569635:	85 c0                	test   %eax,%eax
569637:	7c 19                	jl     0x569652
569639:	8b 53 0c             	mov    0xc(%ebx),%edx
56963c:	8b 4a 40             	mov    0x40(%edx),%ecx
56963f:	8b 45 3c             	mov    0x3c(%ebp),%eax
569642:	3b c8                	cmp    %eax,%ecx
569644:	7f 0c                	jg     0x569652
569646:	8b 53 0c             	mov    0xc(%ebx),%edx
569649:	83 4a 08 04          	orl    $0x4,0x8(%edx)
56964d:	83 c9 ff             	or     $0xffffffff,%ecx
569650:	eb 49                	jmp    0x56969b
569652:	8b 43 0c             	mov    0xc(%ebx),%eax
569655:	83 48 04 20          	orl    $0x20,0x4(%eax)
569659:	8b 53 0c             	mov    0xc(%ebx),%edx
56965c:	ff 4a 1c             	decl   0x1c(%edx)
56965f:	79 19                	jns    0x56967a
569661:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
569665:	c1 fa 08             	sar    $0x8,%edx
569668:	8b 43 0c             	mov    0xc(%ebx),%eax
56966b:	81 e2 ff 00 00 00    	and    $0xff,%edx
569671:	e8 a2 f7 00 00       	call   0x578e18
569676:	8b c8                	mov    %eax,%ecx
569678:	eb 21                	jmp    0x56969b
56967a:	8b 43 0c             	mov    0xc(%ebx),%eax
56967d:	ff 40 3c             	incl   0x3c(%eax)
569680:	8b 53 0c             	mov    0xc(%ebx),%edx
569683:	8b 4a 18             	mov    0x18(%edx),%ecx
569686:	ff 42 18             	incl   0x18(%edx)
569689:	0f b7 43 04          	movzwl 0x4(%ebx),%eax
56968d:	c1 f8 08             	sar    $0x8,%eax
569690:	88 01                	mov    %al,(%ecx)
569692:	33 c9                	xor    %ecx,%ecx
569694:	8a c8                	mov    %al,%cl
569696:	eb 03                	jmp    0x56969b
569698:	83 c9 ff             	or     $0xffffffff,%ecx
56969b:	41                   	inc    %ecx
56969c:	75 05                	jne    0x5696a3
56969e:	83 c8 ff             	or     $0xffffffff,%eax
5696a1:	eb 1a                	jmp    0x5696bd
5696a3:	b8 01 00 00 00       	mov    $0x1,%eax
5696a8:	eb 13                	jmp    0x5696bd
5696aa:	66 ba 01 00          	mov    $0x1,%dx
5696ae:	8b 4b 08             	mov    0x8(%ebx),%ecx
5696b1:	66 d3 e2             	shl    %cl,%dx
5696b4:	66 09 53 04          	or     %dx,0x4(%ebx)
5696b8:	b8 01 00 00 00       	mov    $0x1,%eax
5696bd:	40                   	inc    %eax
5696be:	75 08                	jne    0x5696c8
5696c0:	83 c8 ff             	or     $0xffffffff,%eax
5696c3:	e9 f9 00 00 00       	jmp    0x5697c1
5696c8:	ff 0c 24             	decl   (%esp)
5696cb:	0f 89 fc fe ff ff    	jns    0x5695cd
5696d1:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
5696d5:	75 17                	jne    0x5696ee
5696d7:	68 98 00 00 00       	push   $0x98
5696dc:	68 59 f9 69 00       	push   $0x69f959
5696e1:	68 32 f9 69 00       	push   $0x69f932
5696e6:	e8 55 14 ff ff       	call   0x55ab40
5696eb:	83 c4 0c             	add    $0xc,%esp
5696ee:	ff 4b 08             	decl   0x8(%ebx)
5696f1:	0f 89 b2 00 00 00    	jns    0x5697a9
5696f7:	66 8b 73 04          	mov    0x4(%ebx),%si
5696fb:	c1 e6 08             	shl    $0x8,%esi
5696fe:	66 81 e6 ff ff       	and    $0xffff,%si
569703:	66 89 73 04          	mov    %si,0x4(%ebx)
569707:	66 81 fe 00 ff       	cmp    $0xff00,%si
56970c:	75 07                	jne    0x569715
56970e:	bf 06 00 00 00       	mov    $0x6,%edi
569713:	eb 05                	jmp    0x56971a
569715:	bf 07 00 00 00       	mov    $0x7,%edi
56971a:	89 7b 08             	mov    %edi,0x8(%ebx)
56971d:	8b cf                	mov    %edi,%ecx
56971f:	33 c0                	xor    %eax,%eax
569721:	66 d3 e0             	shl    %cl,%ax
569724:	66 09 43 04          	or     %ax,0x4(%ebx)
569728:	8b 53 0c             	mov    0xc(%ebx),%edx
56972b:	f6 42 08 07          	testb  $0x7,0x8(%edx)
56972f:	75 69                	jne    0x56979a
569731:	8b 6b 0c             	mov    0xc(%ebx),%ebp
569734:	8b 45 40             	mov    0x40(%ebp),%eax
569737:	85 c0                	test   %eax,%eax
569739:	7c 19                	jl     0x569754
56973b:	8b 53 0c             	mov    0xc(%ebx),%edx
56973e:	8b 4a 40             	mov    0x40(%edx),%ecx
569741:	8b 45 3c             	mov    0x3c(%ebp),%eax
569744:	3b c8                	cmp    %eax,%ecx
569746:	7f 0c                	jg     0x569754
569748:	8b 53 0c             	mov    0xc(%ebx),%edx
56974b:	83 4a 08 04          	orl    $0x4,0x8(%edx)
56974f:	83 c9 ff             	or     $0xffffffff,%ecx
569752:	eb 49                	jmp    0x56979d
569754:	8b 43 0c             	mov    0xc(%ebx),%eax
569757:	83 48 04 20          	orl    $0x20,0x4(%eax)
56975b:	8b 53 0c             	mov    0xc(%ebx),%edx
56975e:	ff 4a 1c             	decl   0x1c(%edx)
569761:	79 19                	jns    0x56977c
569763:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
569767:	c1 fa 08             	sar    $0x8,%edx
56976a:	8b 43 0c             	mov    0xc(%ebx),%eax
56976d:	81 e2 ff 00 00 00    	and    $0xff,%edx
569773:	e8 a0 f6 00 00       	call   0x578e18
569778:	8b c8                	mov    %eax,%ecx
56977a:	eb 21                	jmp    0x56979d
56977c:	8b 43 0c             	mov    0xc(%ebx),%eax
56977f:	ff 40 3c             	incl   0x3c(%eax)
569782:	8b 53 0c             	mov    0xc(%ebx),%edx
569785:	8b 4a 18             	mov    0x18(%edx),%ecx
569788:	ff 42 18             	incl   0x18(%edx)
56978b:	0f b7 43 04          	movzwl 0x4(%ebx),%eax
56978f:	c1 f8 08             	sar    $0x8,%eax
569792:	88 01                	mov    %al,(%ecx)
569794:	33 c9                	xor    %ecx,%ecx
569796:	8a c8                	mov    %al,%cl
569798:	eb 03                	jmp    0x56979d
56979a:	83 c9 ff             	or     $0xffffffff,%ecx
56979d:	41                   	inc    %ecx
56979e:	75 05                	jne    0x5697a5
5697a0:	83 c8 ff             	or     $0xffffffff,%eax
5697a3:	eb 12                	jmp    0x5697b7
5697a5:	33 c0                	xor    %eax,%eax
5697a7:	eb 0e                	jmp    0x5697b7
5697a9:	8b 4b 08             	mov    0x8(%ebx),%ecx
5697ac:	33 d2                	xor    %edx,%edx
5697ae:	66 d3 e2             	shl    %cl,%dx
5697b1:	66 09 53 04          	or     %dx,0x4(%ebx)
5697b5:	33 c0                	xor    %eax,%eax
5697b7:	40                   	inc    %eax
5697b8:	75 05                	jne    0x5697bf
5697ba:	83 c8 ff             	or     $0xffffffff,%eax
5697bd:	eb 02                	jmp    0x5697c1
5697bf:	33 c0                	xor    %eax,%eax
5697c1:	5a                   	pop    %edx
5697c2:	5d                   	pop    %ebp
5697c3:	5f                   	pop    %edi
5697c4:	5e                   	pop    %esi
5697c5:	5b                   	pop    %ebx
5697c6:	c3                   	ret
5697c7:	90                   	nop
5697c8:	53                   	push   %ebx
5697c9:	56                   	push   %esi
5697ca:	57                   	push   %edi
5697cb:	55                   	push   %ebp
5697cc:	8b d8                	mov    %eax,%ebx
5697ce:	85 d2                	test   %edx,%edx
5697d0:	7f 08                	jg     0x5697da
5697d2:	83 c8 ff             	or     $0xffffffff,%eax
5697d5:	e9 74 01 00 00       	jmp    0x56994e
5697da:	83 fa 01             	cmp    $0x1,%edx
5697dd:	0f 85 ee 00 00 00    	jne    0x5698d1
5697e3:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
5697e7:	75 17                	jne    0x569800
5697e9:	68 a5 00 00 00       	push   $0xa5
5697ee:	68 8c f9 69 00       	push   $0x69f98c
5697f3:	68 65 f9 69 00       	push   $0x69f965
5697f8:	e8 43 13 ff ff       	call   0x55ab40
5697fd:	83 c4 0c             	add    $0xc,%esp
569800:	ff 4b 08             	decl   0x8(%ebx)
569803:	0f 89 b8 00 00 00    	jns    0x5698c1
569809:	66 8b 73 04          	mov    0x4(%ebx),%si
56980d:	c1 e6 08             	shl    $0x8,%esi
569810:	66 81 e6 ff ff       	and    $0xffff,%si
569815:	66 89 73 04          	mov    %si,0x4(%ebx)
569819:	66 81 fe 00 ff       	cmp    $0xff00,%si
56981e:	75 07                	jne    0x569827
569820:	bf 06 00 00 00       	mov    $0x6,%edi
569825:	eb 05                	jmp    0x56982c
569827:	bf 07 00 00 00       	mov    $0x7,%edi
56982c:	89 7b 08             	mov    %edi,0x8(%ebx)
56982f:	8b cf                	mov    %edi,%ecx
569831:	33 c0                	xor    %eax,%eax
569833:	66 d3 e0             	shl    %cl,%ax
569836:	66 09 43 04          	or     %ax,0x4(%ebx)
56983a:	8b 53 0c             	mov    0xc(%ebx),%edx
56983d:	f6 42 08 07          	testb  $0x7,0x8(%edx)
569841:	75 69                	jne    0x5698ac
569843:	8b 6b 0c             	mov    0xc(%ebx),%ebp
569846:	8b 45 40             	mov    0x40(%ebp),%eax
569849:	85 c0                	test   %eax,%eax
56984b:	7c 19                	jl     0x569866
56984d:	8b 53 0c             	mov    0xc(%ebx),%edx
569850:	8b 4a 40             	mov    0x40(%edx),%ecx
569853:	8b 45 3c             	mov    0x3c(%ebp),%eax
569856:	3b c8                	cmp    %eax,%ecx
569858:	7f 0c                	jg     0x569866
56985a:	8b 53 0c             	mov    0xc(%ebx),%edx
56985d:	83 4a 08 04          	orl    $0x4,0x8(%edx)
569861:	83 c9 ff             	or     $0xffffffff,%ecx
569864:	eb 49                	jmp    0x5698af
569866:	8b 43 0c             	mov    0xc(%ebx),%eax
569869:	83 48 04 20          	orl    $0x20,0x4(%eax)
56986d:	8b 53 0c             	mov    0xc(%ebx),%edx
569870:	ff 4a 1c             	decl   0x1c(%edx)
569873:	79 19                	jns    0x56988e
569875:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
569879:	c1 fa 08             	sar    $0x8,%edx
56987c:	8b 43 0c             	mov    0xc(%ebx),%eax
56987f:	81 e2 ff 00 00 00    	and    $0xff,%edx
569885:	e8 8e f5 00 00       	call   0x578e18
56988a:	8b c8                	mov    %eax,%ecx
56988c:	eb 21                	jmp    0x5698af
56988e:	8b 43 0c             	mov    0xc(%ebx),%eax
569891:	ff 40 3c             	incl   0x3c(%eax)
569894:	8b 53 0c             	mov    0xc(%ebx),%edx
569897:	8b 4a 18             	mov    0x18(%edx),%ecx
56989a:	ff 42 18             	incl   0x18(%edx)
56989d:	0f b7 43 04          	movzwl 0x4(%ebx),%eax
5698a1:	c1 f8 08             	sar    $0x8,%eax
5698a4:	88 01                	mov    %al,(%ecx)
5698a6:	33 c9                	xor    %ecx,%ecx
5698a8:	8a c8                	mov    %al,%cl
5698aa:	eb 03                	jmp    0x5698af
5698ac:	83 c9 ff             	or     $0xffffffff,%ecx
5698af:	41                   	inc    %ecx
5698b0:	75 08                	jne    0x5698ba
5698b2:	83 c8 ff             	or     $0xffffffff,%eax
5698b5:	e9 88 00 00 00       	jmp    0x569942
5698ba:	33 c0                	xor    %eax,%eax
5698bc:	e9 81 00 00 00       	jmp    0x569942
5698c1:	8b 4b 08             	mov    0x8(%ebx),%ecx
5698c4:	33 d2                	xor    %edx,%edx
5698c6:	66 d3 e2             	shl    %cl,%dx
5698c9:	66 09 53 04          	or     %dx,0x4(%ebx)
5698cd:	33 c0                	xor    %eax,%eax
5698cf:	eb 71                	jmp    0x569942
5698d1:	83 fa 02             	cmp    $0x2,%edx
5698d4:	75 13                	jne    0x5698e9
5698d6:	b9 02 00 00 00       	mov    $0x2,%ecx
5698db:	ba 02 00 00 00       	mov    $0x2,%edx
5698e0:	8b c3                	mov    %ebx,%eax
5698e2:	e8 1d 72 00 00       	call   0x570b04
5698e7:	eb 59                	jmp    0x569942
5698e9:	83 fa 05             	cmp    $0x5,%edx
5698ec:	7f 14                	jg     0x569902
5698ee:	8d 4a fd             	lea    -0x3(%edx),%ecx
5698f1:	83 c9 0c             	or     $0xc,%ecx
5698f4:	8b c3                	mov    %ebx,%eax
5698f6:	ba 04 00 00 00       	mov    $0x4,%edx
5698fb:	e8 04 72 00 00       	call   0x570b04
569900:	eb 40                	jmp    0x569942
569902:	83 fa 24             	cmp    $0x24,%edx
569905:	7f 17                	jg     0x56991e
569907:	8d 4a fa             	lea    -0x6(%edx),%ecx
56990a:	81 c9 e0 01 00 00    	or     $0x1e0,%ecx
569910:	8b c3                	mov    %ebx,%eax
569912:	ba 09 00 00 00       	mov    $0x9,%edx
569917:	e8 e8 71 00 00       	call   0x570b04
56991c:	eb 24                	jmp    0x569942
56991e:	81 fa a4 00 00 00    	cmp    $0xa4,%edx
569924:	7f 17                	jg     0x56993d
569926:	8d 4a db             	lea    -0x25(%edx),%ecx
569929:	81 c9 80 ff 00 00    	or     $0xff80,%ecx
56992f:	8b c3                	mov    %ebx,%eax
569931:	ba 10 00 00 00       	mov    $0x10,%edx
569936:	e8 c9 71 00 00       	call   0x570b04
56993b:	eb 05                	jmp    0x569942
56993d:	83 c8 ff             	or     $0xffffffff,%eax
569940:	eb 0c                	jmp    0x56994e
569942:	40                   	inc    %eax
569943:	74 04                	je     0x569949
569945:	33 d2                	xor    %edx,%edx
569947:	eb 03                	jmp    0x56994c
569949:	83 ca ff             	or     $0xffffffff,%edx
56994c:	8b c2                	mov    %edx,%eax
56994e:	5d                   	pop    %ebp
56994f:	5f                   	pop    %edi
569950:	5e                   	pop    %esi
569951:	5b                   	pop    %ebx
569952:	c3                   	ret
569953:	90                   	nop
569954:	53                   	push   %ebx
569955:	56                   	push   %esi
569956:	8b f0                	mov    %eax,%esi
569958:	57                   	push   %edi
569959:	8b fa                	mov    %edx,%edi
56995b:	33 d2                	xor    %edx,%edx
56995d:	8b 5e 0c             	mov    0xc(%esi),%ebx
569960:	8b c6                	mov    %esi,%eax
569962:	e8 b5 0c 00 00       	call   0x56a61c
569967:	8b 5b 1c             	mov    0x1c(%ebx),%ebx
56996a:	8b c3                	mov    %ebx,%eax
56996c:	e8 4f 34 00 00       	call   0x56cdc0
569971:	8b c3                	mov    %ebx,%eax
569973:	e8 48 1f 00 00       	call   0x56b8c0