54f58b:	cc                   	int3
54f58c:	cc                   	int3
54f58d:	cc                   	int3
54f58e:	cc                   	int3
54f58f:	cc                   	int3
54f590:	55                   	push   %ebp
54f591:	8b ec                	mov    %esp,%ebp
54f593:	83 ec 78             	sub    $0x78,%esp
54f596:	a1 d4 89 72 00       	mov    0x7289d4,%eax
54f59b:	33 c5                	xor    %ebp,%eax
54f59d:	89 45 fc             	mov    %eax,-0x4(%ebp)
54f5a0:	53                   	push   %ebx
54f5a1:	8b 5d 10             	mov    0x10(%ebp),%ebx
54f5a4:	56                   	push   %esi
54f5a5:	8b 75 08             	mov    0x8(%ebp),%esi
54f5a8:	57                   	push   %edi
54f5a9:	89 5d bc             	mov    %ebx,-0x44(%ebp)
54f5ac:	bf 2c 00 00 00       	mov    $0x2c,%edi
54f5b1:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
54f5b8:	8b 46 20             	mov    0x20(%esi),%eax
54f5bb:	8d 4e 34             	lea    0x34(%esi),%ecx
54f5be:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
54f5c5:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
54f5cc:	8b 00                	mov    (%eax),%eax
54f5ce:	8b d0                	mov    %eax,%edx
54f5d0:	89 45 b0             	mov    %eax,-0x50(%ebp)
54f5d3:	8b 01                	mov    (%ecx),%eax
54f5d5:	3b 02                	cmp    (%edx),%eax
54f5d7:	75 0d                	jne    0x54f5e6
54f5d9:	83 c1 04             	add    $0x4,%ecx
54f5dc:	83 c2 04             	add    $0x4,%edx
54f5df:	83 ef 04             	sub    $0x4,%edi
54f5e2:	73 ef                	jae    0x54f5d3
54f5e4:	eb 0a                	jmp    0x54f5f0
54f5e6:	8b 45 b0             	mov    -0x50(%ebp),%eax
54f5e9:	8b 40 10             	mov    0x10(%eax),%eax
54f5ec:	40                   	inc    %eax
54f5ed:	89 45 d4             	mov    %eax,-0x2c(%ebp)
54f5f0:	56                   	push   %esi
54f5f1:	e8 3a 03 01 00       	call   0x55f930
54f5f6:	8b f8                	mov    %eax,%edi
54f5f8:	83 c4 04             	add    $0x4,%esp
54f5fb:	85 ff                	test   %edi,%edi
54f5fd:	0f 85 77 05 00 00    	jne    0x54fb7a
54f603:	8b 46 44             	mov    0x44(%esi),%eax
54f606:	89 45 c8             	mov    %eax,-0x38(%ebp)
54f609:	85 c0                	test   %eax,%eax
54f60b:	0f 85 d8 00 00 00    	jne    0x54f6e9
54f611:	8b 45 0c             	mov    0xc(%ebp),%eax
54f614:	8b 4e 70             	mov    0x70(%esi),%ecx
54f617:	c7 45 dc 37 7f 06 82 	movl   $0x82067f37,-0x24(%ebp)
54f61e:	c7 45 e0 00 2d e2 18 	movl   $0x18e22d00,-0x20(%ebp)
54f625:	0f c8                	bswap  %eax
54f627:	89 45 e4             	mov    %eax,-0x1c(%ebp)
54f62a:	8b c1                	mov    %ecx,%eax
54f62c:	0f c8                	bswap  %eax
54f62e:	89 45 e8             	mov    %eax,-0x18(%ebp)
54f631:	85 c9                	test   %ecx,%ecx
54f633:	75 0e                	jne    0x54f643
54f635:	8d 46 54             	lea    0x54(%esi),%eax
54f638:	50                   	push   %eax
54f639:	6a 08                	push   $0x8
54f63b:	e8 f0 c5 f9 ff       	call   0x4ebc30
54f640:	83 c4 08             	add    $0x8,%esp
54f643:	8b 46 54             	mov    0x54(%esi),%eax
54f646:	8d 4d dc             	lea    -0x24(%ebp),%ecx
54f649:	89 45 ec             	mov    %eax,-0x14(%ebp)
54f64c:	33 d2                	xor    %edx,%edx
54f64e:	8b 46 58             	mov    0x58(%esi),%eax
54f651:	33 ff                	xor    %edi,%edi
54f653:	89 45 f0             	mov    %eax,-0x10(%ebp)
54f656:	8b 01                	mov    (%ecx),%eax
54f658:	03 c2                	add    %edx,%eax
54f65a:	03 f8                	add    %eax,%edi
54f65c:	8b 41 04             	mov    0x4(%ecx),%eax
54f65f:	03 c7                	add    %edi,%eax
54f661:	83 c1 08             	add    $0x8,%ecx
54f664:	03 d0                	add    %eax,%edx
54f666:	8d 45 f4             	lea    -0xc(%ebp),%eax
54f669:	3b c8                	cmp    %eax,%ecx
54f66b:	72 e9                	jb     0x54f656
54f66d:	8b c7                	mov    %edi,%eax
54f66f:	c6 46 41 00          	movb   $0x0,0x41(%esi)
54f673:	0f c8                	bswap  %eax
54f675:	89 45 f4             	mov    %eax,-0xc(%ebp)
54f678:	8b c2                	mov    %edx,%eax
54f67a:	0f c8                	bswap  %eax
54f67c:	89 45 f8             	mov    %eax,-0x8(%ebp)
54f67f:	8b 45 0c             	mov    0xc(%ebp),%eax
54f682:	89 46 24             	mov    %eax,0x24(%esi)
54f685:	89 56 50             	mov    %edx,0x50(%esi)
54f688:	8d 55 dc             	lea    -0x24(%ebp),%edx
54f68b:	89 7e 4c             	mov    %edi,0x4c(%esi)
54f68e:	8b 46 08             	mov    0x8(%esi),%eax
54f691:	6a 00                	push   $0x0
54f693:	6a 00                	push   $0x0
54f695:	c6 46 2f 01          	movb   $0x1,0x2f(%esi)
54f699:	8b 08                	mov    (%eax),%ecx
54f69b:	6a 20                	push   $0x20
54f69d:	52                   	push   %edx
54f69e:	50                   	push   %eax
54f69f:	8b 41 0c             	mov    0xc(%ecx),%eax
54f6a2:	ff d0                	call   *%eax
54f6a4:	8b f8                	mov    %eax,%edi
54f6a6:	83 c4 14             	add    $0x14,%esp
54f6a9:	85 ff                	test   %edi,%edi
54f6ab:	0f 85 c7 04 00 00    	jne    0x54fb78
54f6b1:	38 46 30             	cmp    %al,0x30(%esi)
54f6b4:	74 33                	je     0x54f6e9
54f6b6:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
54f6b9:	8b 56 08             	mov    0x8(%esi),%edx
54f6bc:	c1 f9 02             	sar    $0x2,%ecx
54f6bf:	83 e1 03             	and    $0x3,%ecx
54f6c2:	74 23                	je     0x54f6e7
54f6c4:	8b 02                	mov    (%edx),%eax
54f6c6:	51                   	push   %ecx
54f6c7:	52                   	push   %edx
54f6c8:	8b 40 14             	mov    0x14(%eax),%eax
54f6cb:	ff d0                	call   *%eax
54f6cd:	8b f8                	mov    %eax,%edi
54f6cf:	83 c4 08             	add    $0x8,%esp
54f6d2:	85 ff                	test   %edi,%edi
54f6d4:	74 13                	je     0x54f6e9
54f6d6:	5f                   	pop    %edi
54f6d7:	5e                   	pop    %esi
54f6d8:	5b                   	pop    %ebx
54f6d9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54f6dc:	33 cd                	xor    %ebp,%ecx
54f6de:	e8 f7 1d 09 00       	call   0x5e14da
54f6e3:	8b e5                	mov    %ebp,%esp
54f6e5:	5d                   	pop    %ebp
54f6e6:	c3                   	ret
54f6e7:	33 ff                	xor    %edi,%edi
54f6e9:	8b 46 08             	mov    0x8(%esi),%eax
54f6ec:	0f 57 c0             	xorps  %xmm0,%xmm0
54f6ef:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
54f6f2:	89 45 a0             	mov    %eax,-0x60(%ebp)
54f6f5:	89 45 8c             	mov    %eax,-0x74(%ebp)
54f6f8:	8b 45 0c             	mov    0xc(%ebp),%eax
54f6fb:	89 45 9c             	mov    %eax,-0x64(%ebp)
54f6fe:	83 c0 18             	add    $0x18,%eax
54f701:	89 45 ac             	mov    %eax,-0x54(%ebp)
54f704:	99                   	cltd
54f705:	89 4d 98             	mov    %ecx,-0x68(%ebp)
54f708:	8b c8                	mov    %eax,%ecx
54f70a:	8b c2                	mov    %edx,%eax
54f70c:	89 75 88             	mov    %esi,-0x78(%ebp)
54f70f:	50                   	push   %eax
54f710:	51                   	push   %ecx
54f711:	6a 00                	push   $0x0
54f713:	ff 75 c8             	push   -0x38(%ebp)
54f716:	66 0f 13 45 90       	movlpd %xmm0,-0x70(%ebp)
54f71b:	89 4d b0             	mov    %ecx,-0x50(%ebp)
54f71e:	89 45 a4             	mov    %eax,-0x5c(%ebp)
54f721:	e8 da 23 09 00       	call   0x5e1b00
54f726:	83 c0 20             	add    $0x20,%eax
54f729:	8b ca                	mov    %edx,%ecx
54f72b:	89 45 cc             	mov    %eax,-0x34(%ebp)
54f72e:	83 d1 00             	adc    $0x0,%ecx
54f731:	89 4d d8             	mov    %ecx,-0x28(%ebp)
54f734:	8b 45 18             	mov    0x18(%ebp),%eax
54f737:	89 5d c0             	mov    %ebx,-0x40(%ebp)
54f73a:	85 db                	test   %ebx,%ebx
54f73c:	0f 84 74 01 00 00    	je     0x54f8b6
54f742:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
54f746:	0f 84 87 00 00 00    	je     0x54f7d3
54f74c:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
54f750:	75 04                	jne    0x54f756
54f752:	85 c0                	test   %eax,%eax
54f754:	75 7d                	jne    0x54f7d3
54f756:	8d 45 d0             	lea    -0x30(%ebp),%eax
54f759:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
54f760:	50                   	push   %eax
54f761:	ff 73 18             	push   0x18(%ebx)
54f764:	56                   	push   %esi
54f765:	e8 b6 fc ff ff       	call   0x54f420
54f76a:	8b 7d d0             	mov    -0x30(%ebp),%edi
54f76d:	83 c4 0c             	add    $0xc,%esp
54f770:	3b 7d d4             	cmp    -0x2c(%ebp),%edi
54f773:	72 5b                	jb     0x54f7d0
54f775:	ff 75 a4             	push   -0x5c(%ebp)
54f778:	8d 47 ff             	lea    -0x1(%edi),%eax
54f77b:	ff 75 b0             	push   -0x50(%ebp)
54f77e:	6a 00                	push   $0x0
54f780:	50                   	push   %eax
54f781:	e8 7a 23 09 00       	call   0x5e1b00
54f786:	83 c0 38             	add    $0x38,%eax
54f789:	89 45 b4             	mov    %eax,-0x4c(%ebp)
54f78c:	8b 46 68             	mov    0x68(%esi),%eax
54f78f:	83 d2 00             	adc    $0x0,%edx
54f792:	85 c0                	test   %eax,%eax
54f794:	74 04                	je     0x54f79a
54f796:	3b f8                	cmp    %eax,%edi
54f798:	73 03                	jae    0x54f79d
54f79a:	89 7e 68             	mov    %edi,0x68(%esi)
54f79d:	8b 46 08             	mov    0x8(%esi),%eax
54f7a0:	52                   	push   %edx
54f7a1:	ff 75 b4             	push   -0x4c(%ebp)
54f7a4:	ff 75 0c             	push   0xc(%ebp)
54f7a7:	8b 08                	mov    (%eax),%ecx
54f7a9:	ff 73 04             	push   0x4(%ebx)
54f7ac:	50                   	push   %eax
54f7ad:	8b 41 0c             	mov    0xc(%ecx),%eax
54f7b0:	ff d0                	call   *%eax
54f7b2:	8b f8                	mov    %eax,%edi
54f7b4:	83 c4 14             	add    $0x14,%esp
54f7b7:	85 ff                	test   %edi,%edi
54f7b9:	0f 85 b9 03 00 00    	jne    0x54fb78
54f7bf:	b9 bf ff 00 00       	mov    $0xffbf,%ecx
54f7c4:	66 21 4b 1c          	and    %cx,0x1c(%ebx)
54f7c8:	8b 5b 10             	mov    0x10(%ebx),%ebx
54f7cb:	e9 64 ff ff ff       	jmp    0x54f734
54f7d0:	8b 45 18             	mov    0x18(%ebp),%eax
54f7d3:	ff 45 c8             	incl   -0x38(%ebp)
54f7d6:	85 c0                	test   %eax,%eax
54f7d8:	74 0b                	je     0x54f7e5
54f7da:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
54f7de:	75 05                	jne    0x54f7e5
54f7e0:	8b 4d 14             	mov    0x14(%ebp),%ecx
54f7e3:	eb 02                	jmp    0x54f7e7
54f7e5:	33 c9                	xor    %ecx,%ecx
54f7e7:	8b 43 04             	mov    0x4(%ebx),%eax
54f7ea:	8d 7e 4c             	lea    0x4c(%esi),%edi
54f7ed:	89 45 d0             	mov    %eax,-0x30(%ebp)
54f7f0:	8b 43 18             	mov    0x18(%ebx),%eax
54f7f3:	0f c8                	bswap  %eax
54f7f5:	0f c9                	bswap  %ecx
54f7f7:	89 45 e4             	mov    %eax,-0x1c(%ebp)
54f7fa:	89 4d e8             	mov    %ecx,-0x18(%ebp)
54f7fd:	83 7e 68 00          	cmpl   $0x0,0x68(%esi)
54f801:	75 47                	jne    0x54f84a
54f803:	8b 46 54             	mov    0x54(%esi),%eax
54f806:	33 db                	xor    %ebx,%ebx
54f808:	89 45 ec             	mov    %eax,-0x14(%ebp)
54f80b:	8b 46 58             	mov    0x58(%esi),%eax
54f80e:	57                   	push   %edi
54f80f:	89 45 f0             	mov    %eax,-0x10(%ebp)
54f812:	8d 45 e4             	lea    -0x1c(%ebp),%eax
54f815:	38 5e 41             	cmp    %bl,0x41(%esi)
54f818:	57                   	push   %edi
54f819:	6a 08                	push   $0x8
54f81b:	0f 94 c3             	sete   %bl
54f81e:	50                   	push   %eax
54f81f:	53                   	push   %ebx
54f820:	e8 cb ec 00 00       	call   0x55e4f0
54f825:	57                   	push   %edi
54f826:	57                   	push   %edi
54f827:	ff 76 24             	push   0x24(%esi)
54f82a:	ff 75 d0             	push   -0x30(%ebp)
54f82d:	53                   	push   %ebx
54f82e:	e8 bd ec 00 00       	call   0x55e4f0
54f833:	8b 07                	mov    (%edi),%eax
54f835:	83 c4 28             	add    $0x28,%esp
54f838:	8b 5d c0             	mov    -0x40(%ebp),%ebx
54f83b:	0f c8                	bswap  %eax
54f83d:	89 45 f4             	mov    %eax,-0xc(%ebp)
54f840:	8b 47 04             	mov    0x4(%edi),%eax
54f843:	0f c8                	bswap  %eax
54f845:	89 45 f8             	mov    %eax,-0x8(%ebp)
54f848:	eb 07                	jmp    0x54f851
54f84a:	0f 57 c0             	xorps  %xmm0,%xmm0
54f84d:	0f 11 45 ec          	movups %xmm0,-0x14(%ebp)
54f851:	ff 75 d8             	push   -0x28(%ebp)
54f854:	8d 45 e4             	lea    -0x1c(%ebp),%eax
54f857:	ff 75 cc             	push   -0x34(%ebp)
54f85a:	6a 18                	push   $0x18
54f85c:	50                   	push   %eax
54f85d:	8d 45 88             	lea    -0x78(%ebp),%eax
54f860:	50                   	push   %eax
54f861:	e8 8a 06 01 00       	call   0x55fef0
54f866:	8b f8                	mov    %eax,%edi
54f868:	83 c4 14             	add    $0x14,%esp
54f86b:	85 ff                	test   %edi,%edi
54f86d:	0f 85 05 03 00 00    	jne    0x54fb78
54f873:	8b 4d cc             	mov    -0x34(%ebp),%ecx
54f876:	8b 45 d8             	mov    -0x28(%ebp),%eax
54f879:	83 c1 18             	add    $0x18,%ecx
54f87c:	13 c7                	adc    %edi,%eax
54f87e:	50                   	push   %eax
54f87f:	51                   	push   %ecx
54f880:	ff 75 0c             	push   0xc(%ebp)
54f883:	8d 45 88             	lea    -0x78(%ebp),%eax
54f886:	ff 75 d0             	push   -0x30(%ebp)
54f889:	50                   	push   %eax
54f88a:	e8 61 06 01 00       	call   0x55fef0
54f88f:	8b f8                	mov    %eax,%edi
54f891:	83 c4 14             	add    $0x14,%esp
54f894:	85 ff                	test   %edi,%edi
54f896:	0f 85 dc 02 00 00    	jne    0x54fb78
54f89c:	8b 45 ac             	mov    -0x54(%ebp),%eax
54f89f:	99                   	cltd
54f8a0:	01 45 cc             	add    %eax,-0x34(%ebp)
54f8a3:	89 5d b8             	mov    %ebx,-0x48(%ebp)
54f8a6:	11 55 d8             	adc    %edx,-0x28(%ebp)
54f8a9:	66 83 4b 1c 40       	orw    $0x40,0x1c(%ebx)
54f8ae:	8b 5b 10             	mov    0x10(%ebx),%ebx
54f8b1:	e9 7e fe ff ff       	jmp    0x54f734
54f8b6:	85 c0                	test   %eax,%eax
54f8b8:	0f 84 18 02 00 00    	je     0x54fad6
54f8be:	83 7e 68 00          	cmpl   $0x0,0x68(%esi)
54f8c2:	74 16                	je     0x54f8da
54f8c4:	ff 75 c8             	push   -0x38(%ebp)
54f8c7:	56                   	push   %esi
54f8c8:	e8 43 01 01 00       	call   0x55fa10
54f8cd:	8b f8                	mov    %eax,%edi
54f8cf:	83 c4 08             	add    $0x8,%esp
54f8d2:	85 ff                	test   %edi,%edi
54f8d4:	0f 85 9e 02 00 00    	jne    0x54fb78
54f8da:	83 65 1c 03          	andl   $0x3,0x1c(%ebp)
54f8de:	0f 84 a3 01 00 00    	je     0x54fa87
54f8e4:	80 7e 31 00          	cmpb   $0x0,0x31(%esi)
54f8e8:	0f 84 86 01 00 00    	je     0x54fa74
54f8ee:	8b 4e 08             	mov    0x8(%esi),%ecx
54f8f1:	8b 01                	mov    (%ecx),%eax
54f8f3:	8b 40 2c             	mov    0x2c(%eax),%eax
54f8f6:	85 c0                	test   %eax,%eax
54f8f8:	74 1e                	je     0x54f918
54f8fa:	51                   	push   %ecx
54f8fb:	ff d0                	call   *%eax
54f8fd:	83 c4 04             	add    $0x4,%esp
54f900:	83 f8 20             	cmp    $0x20,%eax
54f903:	7d 07                	jge    0x54f90c
54f905:	b8 00 02 00 00       	mov    $0x200,%eax
54f90a:	eb 11                	jmp    0x54f91d
54f90c:	b9 00 00 01 00       	mov    $0x10000,%ecx
54f911:	3b c1                	cmp    %ecx,%eax
54f913:	0f 4f c1             	cmovg  %ecx,%eax
54f916:	eb 05                	jmp    0x54f91d
54f918:	b8 00 10 00 00       	mov    $0x1000,%eax
54f91d:	8b 5d cc             	mov    -0x34(%ebp),%ebx
54f920:	99                   	cltd
54f921:	8b c8                	mov    %eax,%ecx
54f923:	03 cb                	add    %ebx,%ecx
54f925:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
54f928:	8b ca                	mov    %edx,%ecx
54f92a:	13 4d d8             	adc    -0x28(%ebp),%ecx
54f92d:	83 6d d4 01          	subl   $0x1,-0x2c(%ebp)
54f931:	52                   	push   %edx
54f932:	83 d9 00             	sbb    $0x0,%ecx
54f935:	50                   	push   %eax
54f936:	51                   	push   %ecx
54f937:	ff 75 d4             	push   -0x2c(%ebp)
54f93a:	89 4d d0             	mov    %ecx,-0x30(%ebp)
54f93d:	e8 8e 28 09 00       	call   0x5e21d0
54f942:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
54f945:	2b c8                	sub    %eax,%ecx
54f947:	8b 45 d0             	mov    -0x30(%ebp),%eax
54f94a:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
54f94d:	1b c2                	sbb    %edx,%eax
54f94f:	89 4d 90             	mov    %ecx,-0x70(%ebp)