56961f:	8b 5b 14             	mov    0x14(%ebx),%ebx
569622:	83 c4 10             	add    $0x10,%esp
569625:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
569628:	85 db                	test   %ebx,%ebx
56962a:	0f 85 a0 fe ff ff    	jne    0x5694d0
569630:	eb 03                	jmp    0x569635
569632:	8b 75 f8             	mov    -0x8(%ebp),%esi
569635:	8b 45 d0             	mov    -0x30(%ebp),%eax
569638:	85 c0                	test   %eax,%eax
56963a:	74 0a                	je     0x569646
56963c:	50                   	push   %eax
56963d:	57                   	push   %edi
56963e:	e8 1d 11 fe ff       	call   0x54a760
569643:	83 c4 08             	add    $0x8,%esp
569646:	ff 75 f4             	push   -0xc(%ebp)
569649:	8b 5d 08             	mov    0x8(%ebp),%ebx
56964c:	53                   	push   %ebx
56964d:	e8 3e e7 fc ff       	call   0x537d90
569652:	ff 75 ec             	push   -0x14(%ebp)
569655:	53                   	push   %ebx
569656:	e8 35 e7 fc ff       	call   0x537d90
56965b:	83 c4 10             	add    $0x10,%esp
56965e:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
569662:	74 32                	je     0x569696
569664:	53                   	push   %ebx
569665:	e8 06 06 fb ff       	call   0x519c70
56966a:	6a 00                	push   $0x0
56966c:	6a 00                	push   $0x0
56966e:	6a 44                	push   $0x44
569670:	57                   	push   %edi
569671:	e8 6a 84 fd ff       	call   0x541ae0
569676:	ff 75 dc             	push   -0x24(%ebp)
569679:	57                   	push   %edi
56967a:	e8 e1 10 fe ff       	call   0x54a760
56967f:	6a 00                	push   $0x0
569681:	56                   	push   %esi
569682:	6a 74                	push   $0x74
569684:	57                   	push   %edi
569685:	e8 56 84 fd ff       	call   0x541ae0
56968a:	83 c4 2c             	add    $0x2c,%esp
56968d:	5b                   	pop    %ebx
56968e:	5f                   	pop    %edi
56968f:	33 c0                	xor    %eax,%eax
569691:	5e                   	pop    %esi
569692:	8b e5                	mov    %ebp,%esp
569694:	5d                   	pop    %ebp
569695:	c3                   	ret
569696:	5b                   	pop    %ebx
569697:	5f                   	pop    %edi
569698:	b8 01 00 00 00       	mov    $0x1,%eax
56969d:	5e                   	pop    %esi
56969e:	8b e5                	mov    %ebp,%esp
5696a0:	5d                   	pop    %ebp
5696a1:	c3                   	ret
5696a2:	cc                   	int3
5696a3:	cc                   	int3
5696a4:	cc                   	int3
5696a5:	cc                   	int3
5696a6:	cc                   	int3
5696a7:	cc                   	int3
5696a8:	cc                   	int3
5696a9:	cc                   	int3
5696aa:	cc                   	int3
5696ab:	cc                   	int3
5696ac:	cc                   	int3
5696ad:	cc                   	int3
5696ae:	cc                   	int3
5696af:	cc                   	int3
5696b0:	55                   	push   %ebp
5696b1:	8b ec                	mov    %esp,%ebp
5696b3:	53                   	push   %ebx
5696b4:	56                   	push   %esi
5696b5:	8b 75 08             	mov    0x8(%ebp),%esi
5696b8:	57                   	push   %edi
5696b9:	8b 5e 04             	mov    0x4(%esi),%ebx
5696bc:	8d 7e 08             	lea    0x8(%esi),%edi
5696bf:	39 3e                	cmp    %edi,(%esi)
5696c1:	76 1d                	jbe    0x5696e0
5696c3:	8b 0e                	mov    (%esi),%ecx
5696c5:	8d 41 f4             	lea    -0xc(%ecx),%eax
5696c8:	89 06                	mov    %eax,(%esi)
5696ca:	8d 41 04             	lea    0x4(%ecx),%eax
5696cd:	50                   	push   %eax
5696ce:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
5696d2:	50                   	push   %eax
5696d3:	56                   	push   %esi
5696d4:	e8 27 00 00 00       	call   0x569700
5696d9:	83 c4 0c             	add    $0xc,%esp
5696dc:	39 3e                	cmp    %edi,(%esi)
5696de:	77 e3                	ja     0x5696c3
5696e0:	68 bc be 6b 00       	push   $0x6bbebc
5696e5:	53                   	push   %ebx
5696e6:	e8 75 9b fb ff       	call   0x523260
5696eb:	83 c4 08             	add    $0x8,%esp
5696ee:	89 5e 04             	mov    %ebx,0x4(%esi)
5696f1:	5f                   	pop    %edi
5696f2:	5e                   	pop    %esi
5696f3:	5b                   	pop    %ebx
5696f4:	5d                   	pop    %ebp
5696f5:	c3                   	ret
5696f6:	cc                   	int3
5696f7:	cc                   	int3
5696f8:	cc                   	int3
5696f9:	cc                   	int3
5696fa:	cc                   	int3
5696fb:	cc                   	int3
5696fc:	cc                   	int3
5696fd:	cc                   	int3
5696fe:	cc                   	int3
5696ff:	cc                   	int3
569700:	55                   	push   %ebp
569701:	8b ec                	mov    %esp,%ebp
569703:	8b 45 08             	mov    0x8(%ebp),%eax
569706:	8b 48 04             	mov    0x4(%eax),%ecx
569709:	0f b7 45 0c          	movzwl 0xc(%ebp),%eax
56970d:	05 38 ff ff ff       	add    $0xffffff38,%eax
569712:	83 f8 6b             	cmp    $0x6b,%eax
569715:	0f 87 db 00 00 00    	ja     0x5697f6
56971b:	0f b6 80 28 98 56 00 	movzbl 0x569828(%eax),%eax
569722:	ff 24 85 f8 97 56 00 	jmp    *0x5697f8(,%eax,4)
569729:	8b 45 10             	mov    0x10(%ebp),%eax
56972c:	8b 00                	mov    (%eax),%eax
56972e:	85 c0                	test   %eax,%eax
569730:	0f 84 c0 00 00 00    	je     0x5697f6
569736:	6a 01                	push   $0x1
569738:	50                   	push   %eax
569739:	ff 31                	push   (%ecx)
56973b:	e8 b0 f6 f8 ff       	call   0x4f8df0
569740:	83 c4 0c             	add    $0xc,%esp
569743:	5d                   	pop    %ebp
569744:	c3                   	ret
569745:	8b 45 10             	mov    0x10(%ebp),%eax
569748:	8b 00                	mov    (%eax),%eax
56974a:	e9 98 00 00 00       	jmp    0x5697e7
56974f:	8b 45 10             	mov    0x10(%ebp),%eax
569752:	8b 00                	mov    (%eax),%eax
569754:	85 c0                	test   %eax,%eax
569756:	0f 84 9a 00 00 00    	je     0x5697f6
56975c:	50                   	push   %eax
56975d:	ff 31                	push   (%ecx)
56975f:	e8 9c 78 f9 ff       	call   0x501000
569764:	83 c4 08             	add    $0x8,%esp
569767:	5d                   	pop    %ebp
569768:	c3                   	ret
569769:	8b 45 10             	mov    0x10(%ebp),%eax
56976c:	ff 30                	push   (%eax)
56976e:	ff 31                	push   (%ecx)
569770:	e8 fb 35 fd ff       	call   0x53cd70
569775:	83 c4 08             	add    $0x8,%esp
569778:	5d                   	pop    %ebp
569779:	c3                   	ret
56977a:	8b 45 10             	mov    0x10(%ebp),%eax
56977d:	ff 30                	push   (%eax)
56977f:	ff 31                	push   (%ecx)
569781:	e8 5a d3 fe ff       	call   0x556ae0
569786:	83 c4 08             	add    $0x8,%esp
569789:	5d                   	pop    %ebp
56978a:	c3                   	ret
56978b:	8b 45 10             	mov    0x10(%ebp),%eax
56978e:	ff 30                	push   (%eax)
569790:	ff 31                	push   (%ecx)
569792:	e8 c9 c5 fe ff       	call   0x555d60
569797:	83 c4 08             	add    $0x8,%esp
56979a:	5d                   	pop    %ebp
56979b:	c3                   	ret
56979c:	8b 45 10             	mov    0x10(%ebp),%eax
56979f:	ff 30                	push   (%eax)
5697a1:	ff 31                	push   (%ecx)
5697a3:	e8 b8 45 fc ff       	call   0x52dd60
5697a8:	83 c4 08             	add    $0x8,%esp
5697ab:	5d                   	pop    %ebp
5697ac:	c3                   	ret
5697ad:	8b 45 10             	mov    0x10(%ebp),%eax
5697b0:	ff 30                	push   (%eax)
5697b2:	ff 31                	push   (%ecx)
5697b4:	e8 37 c3 fe ff       	call   0x555af0
5697b9:	83 c4 08             	add    $0x8,%esp
5697bc:	5d                   	pop    %ebp
5697bd:	c3                   	ret
5697be:	8b 45 10             	mov    0x10(%ebp),%eax
5697c1:	ff 30                	push   (%eax)
5697c3:	ff 31                	push   (%ecx)
5697c5:	e8 96 8a fb ff       	call   0x522260
5697ca:	83 c4 08             	add    $0x8,%esp
5697cd:	5d                   	pop    %ebp
5697ce:	c3                   	ret
5697cf:	8b 45 10             	mov    0x10(%ebp),%eax
5697d2:	ff 70 04             	push   0x4(%eax)
5697d5:	ff 31                	push   (%ecx)
5697d7:	e8 84 45 fc ff       	call   0x52dd60
5697dc:	83 c4 08             	add    $0x8,%esp
5697df:	5d                   	pop    %ebp
5697e0:	c3                   	ret
5697e1:	8b 45 10             	mov    0x10(%ebp),%eax
5697e4:	8b 40 04             	mov    0x4(%eax),%eax
5697e7:	85 c0                	test   %eax,%eax
5697e9:	74 0b                	je     0x5697f6
5697eb:	50                   	push   %eax
5697ec:	ff 31                	push   (%ecx)
5697ee:	e8 bd cf fb ff       	call   0x5267b0
5697f3:	83 c4 08             	add    $0x8,%esp
5697f6:	5d                   	pop    %ebp
5697f7:	c3                   	ret
5697f8:	29 97 56 00 45 97    	sub    %edx,-0x68baffaa(%edi)
5697fe:	56                   	push   %esi
5697ff:	00 4f 97             	add    %cl,-0x69(%edi)
569802:	56                   	push   %esi
569803:	00 69 97             	add    %ch,-0x69(%ecx)
569806:	56                   	push   %esi
569807:	00 7a 97             	add    %bh,-0x69(%edx)
56980a:	56                   	push   %esi
56980b:	00 8b 97 56 00 9c    	add    %cl,-0x63ffa969(%ebx)
569811:	97                   	xchg   %eax,%edi
569812:	56                   	push   %esi
569813:	00 ad 97 56 00 be    	add    %ch,-0x41ffa969(%ebp)
569819:	97                   	xchg   %eax,%edi
56981a:	56                   	push   %esi
56981b:	00 cf                	add    %cl,%bh
56981d:	97                   	xchg   %eax,%edi
56981e:	56                   	push   %esi
56981f:	00 e1                	add    %ah,%cl
569821:	97                   	xchg   %eax,%edi
569822:	56                   	push   %esi
569823:	00 f6                	add    %dh,%dh
569825:	97                   	xchg   %eax,%edi
569826:	56                   	push   %esi
569827:	00 00                	add    %al,(%eax)
569829:	0b 0b                	or     (%ebx),%ecx
56982b:	0b 0b                	or     (%ebx),%ecx
56982d:	0b 0b                	or     (%ebx),%ecx
56982f:	0b 0b                	or     (%ebx),%ecx
569831:	0b 0b                	or     (%ebx),%ecx
569833:	01 01                	add    %eax,(%ecx)
569835:	0b 0b                	or     (%ebx),%ecx
569837:	0b 02                	or     (%edx),%eax
569839:	0b 0b                	or     (%ebx),%ecx
56983b:	0b 0b                	or     (%ebx),%ecx
56983d:	0b 0b                	or     (%ebx),%ecx
56983f:	0b 0b                	or     (%ebx),%ecx
569841:	0b 02                	or     (%edx),%eax
569843:	02 0b                	add    (%ebx),%cl
569845:	0b 0b                	or     (%ebx),%ecx
569847:	0b 0b                	or     (%ebx),%ecx
569849:	03 00                	add    (%eax),%eax
56984b:	00 04 0b             	add    %al,(%ebx,%ecx,1)
56984e:	0b 02                	or     (%edx),%eax
569850:	03 01                	add    (%ecx),%eax
569852:	02 01                	add    (%ecx),%al
569854:	02 0b                	add    (%ebx),%cl
569856:	05 00 02 02 0b       	add    $0xb020200,%eax
56985b:	03 03                	add    (%ebx),%eax
56985d:	0b 0b                	or     (%ebx),%ecx
56985f:	01 06                	add    %eax,(%esi)
569861:	02 03                	add    (%ebx),%al
569863:	06                   	push   %es
569864:	0b 0b                	or     (%ebx),%ecx
569866:	02 0b                	add    (%ebx),%cl
569868:	06                   	push   %es
569869:	0b 07                	or     (%edi),%eax
56986b:	0b 0b                	or     (%ebx),%ecx
56986d:	0b 02                	or     (%edx),%eax
56986f:	01 02                	add    %eax,(%edx)
569871:	01 0b                	add    %ecx,(%ebx)
569873:	0b 01                	or     (%ecx),%eax
569875:	0b 0b                	or     (%ebx),%ecx
569877:	08 0b                	or     %cl,(%ebx)
569879:	09 0b                	or     %ecx,(%ebx)
56987b:	01 08                	add    %ecx,(%eax)
56987d:	0b 0b                	or     (%ebx),%ecx
56987f:	0b 01                	or     (%ecx),%eax
569881:	0b 0b                	or     (%ebx),%ecx
569883:	0b 0b                	or     (%ebx),%ecx
569885:	0b 0b                	or     (%ebx),%ecx
569887:	0b 0b                	or     (%ebx),%ecx
569889:	05 07 07 07 02       	add    $0x2070707,%eax
56988e:	01 07                	add    %eax,(%edi)
569890:	0b 0a                	or     (%edx),%ecx
569892:	0a 0a                	or     (%edx),%cl
569894:	cc                   	int3
569895:	cc                   	int3
569896:	cc                   	int3
569897:	cc                   	int3
569898:	cc                   	int3
569899:	cc                   	int3
56989a:	cc                   	int3
56989b:	cc                   	int3
56989c:	cc                   	int3
56989d:	cc                   	int3
56989e:	cc                   	int3
56989f:	cc                   	int3
5698a0:	55                   	push   %ebp
5698a1:	8b ec                	mov    %esp,%ebp
5698a3:	66 8b 45 0c          	mov    0xc(%ebp),%ax
5698a7:	b9 26 02 00 00       	mov    $0x226,%ecx
5698ac:	66 3b c1             	cmp    %cx,%ax
5698af:	77 48                	ja     0x5698f9
5698b1:	8b 55 08             	mov    0x8(%ebp),%edx
5698b4:	56                   	push   %esi
5698b5:	57                   	push   %edi
5698b6:	0f b7 f8             	movzwl %ax,%edi
5698b9:	0f b7 c2             	movzwl %dx,%eax
5698bc:	0f b7 34 7d 90 51 6b 	movzwl 0x6b5190(,%edi,2),%esi
5698c3:	00
5698c4:	03 c6                	add    %esi,%eax
5698c6:	66 39 14 45 d8 40 6b 	cmp    %dx,0x6b40d8(,%eax,2)
5698cd:	00
5698ce:	74 1f                	je     0x5698ef
5698d0:	0f b7 ca             	movzwl %dx,%ecx
5698d3:	0f b7 0c 4d 48 5d 6b 	movzwl 0x6b5d48(,%ecx,2),%ecx
5698da:	00
5698db:	66 85 c9             	test   %cx,%cx
5698de:	74 1b                	je     0x5698fb
5698e0:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
5698e3:	8b d1                	mov    %ecx,%edx
5698e5:	66 39 0c 45 d8 40 6b 	cmp    %cx,0x6b40d8(,%eax,2)
5698ec:	00
5698ed:	75 e1                	jne    0x5698d0
5698ef:	66 8b 04 45 80 31 6b 	mov    0x6b3180(,%eax,2),%ax
5698f6:	00
5698f7:	5f                   	pop    %edi
5698f8:	5e                   	pop    %esi
5698f9:	5d                   	pop    %ebp
5698fa:	c3                   	ret
5698fb:	0f b7 ca             	movzwl %dx,%ecx
5698fe:	2b c1                	sub    %ecx,%eax
569900:	66 83 3c 45 a0 41 6b 	cmpw   $0x64,0x6b41a0(,%eax,2)
569907:	00 64
569909:	75 11                	jne    0x56991c
56990b:	66 85 d2             	test   %dx,%dx
56990e:	74 0c                	je     0x56991c
569910:	66 8b 04 45 48 32 6b 	mov    0x6b3248(,%eax,2),%ax
569917:	00
569918:	5f                   	pop    %edi
569919:	5e                   	pop    %esi
56991a:	5d                   	pop    %ebp
56991b:	c3                   	ret
56991c:	66 8b 04 7d f8 58 6b 	mov    0x6b58f8(,%edi,2),%ax
569923:	00
569924:	5f                   	pop    %edi
569925:	5e                   	pop    %esi
569926:	5d                   	pop    %ebp
569927:	c3                   	ret
569928:	cc                   	int3
569929:	cc                   	int3
56992a:	cc                   	int3
56992b:	cc                   	int3
56992c:	cc                   	int3
56992d:	cc                   	int3
56992e:	cc                   	int3
56992f:	cc                   	int3