41955f:	83 ec 44             	sub    $0x44,%esp
419562:	53                   	push   %ebx
419563:	8b 5d 0c             	mov    0xc(%ebp),%ebx
419566:	56                   	push   %esi
419567:	57                   	push   %edi
419568:	8b 7d 18             	mov    0x18(%ebp),%edi
41956b:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
41956f:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
419573:	81 7f 04 80 00 00 00 	cmpl   $0x80,0x4(%edi)
41957a:	7f 06                	jg     0x419582
41957c:	0f be 43 08          	movsbl 0x8(%ebx),%eax
419580:	eb 03                	jmp    0x419585
419582:	8b 43 08             	mov    0x8(%ebx),%eax
419585:	89 45 f8             	mov    %eax,-0x8(%ebp)
419588:	83 f8 ff             	cmp    $0xffffffff,%eax
41958b:	0f 8c ee 02 00 00    	jl     0x41987f
419591:	3b 47 04             	cmp    0x4(%edi),%eax
419594:	0f 8d e5 02 00 00    	jge    0x41987f
41959a:	8b 75 08             	mov    0x8(%ebp),%esi
41959d:	81 3e 63 73 6d e0    	cmpl   $0xe06d7363,(%esi)
4195a3:	0f 85 9f 02 00 00    	jne    0x419848
4195a9:	83 7e 10 03          	cmpl   $0x3,0x10(%esi)
4195ad:	0f 85 ce 00 00 00    	jne    0x419681
4195b3:	81 7e 14 20 05 93 19 	cmpl   $0x19930520,0x14(%esi)
4195ba:	74 16                	je     0x4195d2
4195bc:	81 7e 14 21 05 93 19 	cmpl   $0x19930521,0x14(%esi)
4195c3:	74 0d                	je     0x4195d2
4195c5:	81 7e 14 22 05 93 19 	cmpl   $0x19930522,0x14(%esi)
4195cc:	0f 85 af 00 00 00    	jne    0x419681
4195d2:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
4195d6:	0f 85 a5 00 00 00    	jne    0x419681
4195dc:	e8 4e b6 fe ff       	call   0x404c2f
4195e1:	83 78 10 00          	cmpl   $0x0,0x10(%eax)
4195e5:	0f 84 8d 02 00 00    	je     0x419878
4195eb:	e8 3f b6 fe ff       	call   0x404c2f
4195f0:	8b 70 10             	mov    0x10(%eax),%esi
4195f3:	e8 37 b6 fe ff       	call   0x404c2f
4195f8:	c6 45 d8 01          	movb   $0x1,-0x28(%ebp)
4195fc:	8b 40 14             	mov    0x14(%eax),%eax
4195ff:	89 45 f4             	mov    %eax,-0xc(%ebp)
419602:	85 f6                	test   %esi,%esi
419604:	0f 84 75 02 00 00    	je     0x41987f
41960a:	81 3e 63 73 6d e0    	cmpl   $0xe06d7363,(%esi)
419610:	75 2b                	jne    0x41963d
419612:	83 7e 10 03          	cmpl   $0x3,0x10(%esi)
419616:	75 25                	jne    0x41963d
419618:	81 7e 14 20 05 93 19 	cmpl   $0x19930520,0x14(%esi)
41961f:	74 12                	je     0x419633
419621:	81 7e 14 21 05 93 19 	cmpl   $0x19930521,0x14(%esi)
419628:	74 09                	je     0x419633
41962a:	81 7e 14 22 05 93 19 	cmpl   $0x19930522,0x14(%esi)
419631:	75 0a                	jne    0x41963d
419633:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
419637:	0f 84 42 02 00 00    	je     0x41987f
41963d:	e8 ed b5 fe ff       	call   0x404c2f
419642:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
419646:	74 41                	je     0x419689
419648:	e8 e2 b5 fe ff       	call   0x404c2f
41964d:	8b 40 1c             	mov    0x1c(%eax),%eax
419650:	89 45 e0             	mov    %eax,-0x20(%ebp)
419653:	e8 d7 b5 fe ff       	call   0x404c2f
419658:	ff 75 e0             	push   -0x20(%ebp)
41965b:	56                   	push   %esi
41965c:	83 60 1c 00          	andl   $0x0,0x1c(%eax)
419660:	e8 7a 03 00 00       	call   0x4199df
419665:	59                   	pop    %ecx
419666:	59                   	pop    %ecx
419667:	84 c0                	test   %al,%al
419669:	75 1e                	jne    0x419689
41966b:	ff 75 e0             	push   -0x20(%ebp)
41966e:	e8 08 04 00 00       	call   0x419a7b
419673:	59                   	pop    %ecx
419674:	84 c0                	test   %al,%al
419676:	0f 84 03 02 00 00    	je     0x41987f
41967c:	e9 03 02 00 00       	jmp    0x419884
419681:	8b 4d 10             	mov    0x10(%ebp),%ecx
419684:	89 4d f4             	mov    %ecx,-0xc(%ebp)
419687:	eb 06                	jmp    0x41968f
419689:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41968c:	8b 45 f8             	mov    -0x8(%ebp),%eax
41968f:	81 3e 63 73 6d e0    	cmpl   $0xe06d7363,(%esi)
419695:	0f 85 b0 01 00 00    	jne    0x41984b
41969b:	83 7e 10 03          	cmpl   $0x3,0x10(%esi)
41969f:	0f 85 a6 01 00 00    	jne    0x41984b
4196a5:	81 7e 14 20 05 93 19 	cmpl   $0x19930520,0x14(%esi)
4196ac:	74 16                	je     0x4196c4
4196ae:	81 7e 14 21 05 93 19 	cmpl   $0x19930521,0x14(%esi)
4196b5:	74 0d                	je     0x4196c4
4196b7:	81 7e 14 22 05 93 19 	cmpl   $0x19930522,0x14(%esi)
4196be:	0f 85 87 01 00 00    	jne    0x41984b
4196c4:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
4196c8:	0f 86 04 01 00 00    	jbe    0x4197d2
4196ce:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4196d1:	51                   	push   %ecx
4196d2:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4196d5:	51                   	push   %ecx
4196d6:	50                   	push   %eax
4196d7:	ff 75 20             	push   0x20(%ebp)
4196da:	57                   	push   %edi
4196db:	e8 d6 f7 ff ff       	call   0x418eb6
4196e0:	8b 55 e8             	mov    -0x18(%ebp),%edx
4196e3:	83 c4 14             	add    $0x14,%esp
4196e6:	3b 55 d4             	cmp    -0x2c(%ebp),%edx
4196e9:	0f 83 e3 00 00 00    	jae    0x4197d2
4196ef:	8d 48 10             	lea    0x10(%eax),%ecx
4196f2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4196f5:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4196f8:	8d 79 f0             	lea    -0x10(%ecx),%edi
4196fb:	89 7d c8             	mov    %edi,-0x38(%ebp)
4196fe:	8b 7d 18             	mov    0x18(%ebp),%edi
419701:	39 41 f0             	cmp    %eax,-0x10(%ecx)
419704:	0f 8f b5 00 00 00    	jg     0x4197bf
41970a:	3b 41 f4             	cmp    -0xc(%ecx),%eax
41970d:	0f 8f ac 00 00 00    	jg     0x4197bf
419713:	8b 19                	mov    (%ecx),%ebx
419715:	89 5d ec             	mov    %ebx,-0x14(%ebp)
419718:	8b 59 fc             	mov    -0x4(%ecx),%ebx
41971b:	85 db                	test   %ebx,%ebx
41971d:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
419720:	8b 5d 0c             	mov    0xc(%ebp),%ebx
419723:	0f 8e 96 00 00 00    	jle    0x4197bf
419729:	8b 46 1c             	mov    0x1c(%esi),%eax
41972c:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41972f:	8b 40 0c             	mov    0xc(%eax),%eax
419732:	8b 10                	mov    (%eax),%edx
419734:	83 c0 04             	add    $0x4,%eax
419737:	89 45 d0             	mov    %eax,-0x30(%ebp)
41973a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41973d:	89 55 cc             	mov    %edx,-0x34(%ebp)
419740:	8b 7d d0             	mov    -0x30(%ebp),%edi
419743:	89 7d f0             	mov    %edi,-0x10(%ebp)
419746:	8b 7d 18             	mov    0x18(%ebp),%edi
419749:	89 55 dc             	mov    %edx,-0x24(%ebp)
41974c:	85 d2                	test   %edx,%edx
41974e:	7e 2a                	jle    0x41977a
419750:	8b 45 f0             	mov    -0x10(%ebp),%eax
419753:	ff 76 1c             	push   0x1c(%esi)
419756:	ff 30                	push   (%eax)
419758:	51                   	push   %ecx
419759:	e8 4e 07 00 00       	call   0x419eac
41975e:	83 c4 0c             	add    $0xc,%esp
419761:	85 c0                	test   %eax,%eax
419763:	75 28                	jne    0x41978d
419765:	8b 45 dc             	mov    -0x24(%ebp),%eax
419768:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
41976c:	48                   	dec    %eax
41976d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
419770:	89 45 dc             	mov    %eax,-0x24(%ebp)
419773:	85 c0                	test   %eax,%eax
419775:	7f d9                	jg     0x419750
419777:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41977a:	48                   	dec    %eax
41977b:	83 c1 10             	add    $0x10,%ecx
41977e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
419781:	89 4d ec             	mov    %ecx,-0x14(%ebp)
419784:	85 c0                	test   %eax,%eax
419786:	7e 2e                	jle    0x4197b6
419788:	8b 55 cc             	mov    -0x34(%ebp),%edx
41978b:	eb b3                	jmp    0x419740
41978d:	ff 75 d8             	push   -0x28(%ebp)
419790:	8b 45 f0             	mov    -0x10(%ebp),%eax
419793:	ff 75 24             	push   0x24(%ebp)
419796:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
41979a:	ff 75 20             	push   0x20(%ebp)
41979d:	ff 75 c8             	push   -0x38(%ebp)
4197a0:	ff 30                	push   (%eax)
4197a2:	ff 75 ec             	push   -0x14(%ebp)
4197a5:	57                   	push   %edi
4197a6:	ff 75 14             	push   0x14(%ebp)
4197a9:	ff 75 f4             	push   -0xc(%ebp)
4197ac:	53                   	push   %ebx
4197ad:	56                   	push   %esi
4197ae:	e8 e4 fc ff ff       	call   0x419497
4197b3:	83 c4 2c             	add    $0x2c,%esp
4197b6:	8b 55 e8             	mov    -0x18(%ebp),%edx
4197b9:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4197bc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4197bf:	42                   	inc    %edx
4197c0:	83 c1 14             	add    $0x14,%ecx
4197c3:	89 55 e8             	mov    %edx,-0x18(%ebp)
4197c6:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4197c9:	3b 55 d4             	cmp    -0x2c(%ebp),%edx
4197cc:	0f 82 26 ff ff ff    	jb     0x4196f8
4197d2:	80 7d 1c 00          	cmpb   $0x0,0x1c(%ebp)
4197d6:	74 0a                	je     0x4197e2
4197d8:	6a 01                	push   $0x1
4197da:	56                   	push   %esi
4197db:	e8 bc f9 ff ff       	call   0x41919c
4197e0:	59                   	pop    %ecx
4197e1:	59                   	pop    %ecx
4197e2:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4197e6:	0f 85 81 00 00 00    	jne    0x41986d
4197ec:	8b 07                	mov    (%edi),%eax
4197ee:	25 ff ff ff 1f       	and    $0x1fffffff,%eax
4197f3:	3d 21 05 93 19       	cmp    $0x19930521,%eax
4197f8:	72 73                	jb     0x41986d
4197fa:	83 7f 1c 00          	cmpl   $0x0,0x1c(%edi)
4197fe:	75 0c                	jne    0x41980c
419800:	f6 47 20 04          	testb  $0x4,0x20(%edi)
419804:	74 67                	je     0x41986d
419806:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
41980a:	75 61                	jne    0x41986d
41980c:	f6 47 20 04          	testb  $0x4,0x20(%edi)
419810:	75 6d                	jne    0x41987f
419812:	ff 77 1c             	push   0x1c(%edi)
419815:	56                   	push   %esi
419816:	e8 c4 01 00 00       	call   0x4199df
41981b:	59                   	pop    %ecx
41981c:	59                   	pop    %ecx
41981d:	84 c0                	test   %al,%al
41981f:	75 4c                	jne    0x41986d
419821:	e8 09 b4 fe ff       	call   0x404c2f
419826:	e8 04 b4 fe ff       	call   0x404c2f
41982b:	e8 ff b3 fe ff       	call   0x404c2f
419830:	89 70 10             	mov    %esi,0x10(%eax)
419833:	e8 f7 b3 fe ff       	call   0x404c2f
419838:	83 7d 24 00          	cmpl   $0x0,0x24(%ebp)
41983c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41983f:	56                   	push   %esi
419840:	89 48 14             	mov    %ecx,0x14(%eax)
419843:	75 5f                	jne    0x4198a4
419845:	53                   	push   %ebx
419846:	eb 5f                	jmp    0x4198a7
419848:	8b 4d 10             	mov    0x10(%ebp),%ecx
41984b:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
41984f:	76 1c                	jbe    0x41986d
419851:	80 7d 1c 00          	cmpb   $0x0,0x1c(%ebp)
419855:	75 28                	jne    0x41987f
419857:	ff 75 24             	push   0x24(%ebp)
41985a:	ff 75 20             	push   0x20(%ebp)
41985d:	50                   	push   %eax
41985e:	57                   	push   %edi
41985f:	ff 75 14             	push   0x14(%ebp)
419862:	51                   	push   %ecx
419863:	53                   	push   %ebx
419864:	56                   	push   %esi
419865:	e8 5a 00 00 00       	call   0x4198c4
41986a:	83 c4 20             	add    $0x20,%esp
41986d:	e8 bd b3 fe ff       	call   0x404c2f
419872:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
419876:	75 07                	jne    0x41987f
419878:	5f                   	pop    %edi
419879:	5e                   	pop    %esi
41987a:	5b                   	pop    %ebx
41987b:	8b e5                	mov    %ebp,%esp
41987d:	5d                   	pop    %ebp
41987e:	c3                   	ret
41987f:	e8 f0 fd fe ff       	call   0x409674
419884:	6a 01                	push   $0x1
419886:	56                   	push   %esi
419887:	e8 10 f9 ff ff       	call   0x41919c
41988c:	59                   	pop    %ecx
41988d:	59                   	pop    %ecx
41988e:	8d 4d bc             	lea    -0x44(%ebp),%ecx
419891:	e8 b5 f9 ff ff       	call   0x41924b
419896:	68 1c 21 42 00       	push   $0x42211c
41989b:	8d 45 bc             	lea    -0x44(%ebp),%eax
41989e:	50                   	push   %eax
41989f:	e8 93 ac fe ff       	call   0x404537
4198a4:	ff 75 24             	push   0x24(%ebp)
4198a7:	e8 b4 f6 ff ff       	call   0x418f60
4198ac:	6a ff                	push   $0xffffffff
4198ae:	57                   	push   %edi
4198af:	ff 75 14             	push   0x14(%ebp)
4198b2:	53                   	push   %ebx
4198b3:	e8 30 04 00 00       	call   0x419ce8
4198b8:	83 c4 10             	add    $0x10,%esp
4198bb:	ff 77 1c             	push   0x1c(%edi)
4198be:	e8 9a fb ff ff       	call   0x41945d
4198c3:	cc                   	int3
4198c4:	55                   	push   %ebp
4198c5:	8b ec                	mov    %esp,%ebp
4198c7:	51                   	push   %ecx
4198c8:	51                   	push   %ecx
4198c9:	57                   	push   %edi
4198ca:	8b 7d 08             	mov    0x8(%ebp),%edi
4198cd:	81 3f 03 00 00 80    	cmpl   $0x80000003,(%edi)
4198d3:	0f 84 fb 00 00 00    	je     0x4199d4
4198d9:	53                   	push   %ebx
4198da:	56                   	push   %esi
4198db:	e8 4f b3 fe ff       	call   0x404c2f
4198e0:	8b 5d 18             	mov    0x18(%ebp),%ebx
4198e3:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4198e7:	74 45                	je     0x41992e
4198e9:	6a 00                	push   $0x0
4198eb:	ff 15 94 b1 41 00    	call   *0x41b194
4198f1:	8b f0                	mov    %eax,%esi
4198f3:	e8 37 b3 fe ff       	call   0x404c2f
4198f8:	39 70 08             	cmp    %esi,0x8(%eax)
4198fb:	74 31                	je     0x41992e
4198fd:	81 3f 4d 4f 43 e0    	cmpl   $0xe0434f4d,(%edi)
419903:	74 29                	je     0x41992e
419905:	81 3f 52 43 43 e0    	cmpl   $0xe0434352,(%edi)
41990b:	74 21                	je     0x41992e
41990d:	ff 75 24             	push   0x24(%ebp)
419910:	ff 75 20             	push   0x20(%ebp)
419913:	53                   	push   %ebx
419914:	ff 75 14             	push   0x14(%ebp)
419917:	ff 75 10             	push   0x10(%ebp)
41991a:	ff 75 0c             	push   0xc(%ebp)
41991d:	57                   	push   %edi
41991e:	e8 b6 f4 ff ff       	call   0x418dd9
419923:	83 c4 1c             	add    $0x1c,%esp
419926:	85 c0                	test   %eax,%eax
419928:	0f 85 a4 00 00 00    	jne    0x4199d2
41992e:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
419932:	0f 84 a1 00 00 00    	je     0x4199d9
419938:	8d 45 fc             	lea    -0x4(%ebp),%eax
41993b:	50                   	push   %eax
41993c:	8d 45 f8             	lea    -0x8(%ebp),%eax
41993f:	50                   	push   %eax
419940:	ff 75 1c             	push   0x1c(%ebp)
419943:	ff 75 20             	push   0x20(%ebp)
419946:	53                   	push   %ebx
419947:	e8 6a f5 ff ff       	call   0x418eb6
41994c:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41994f:	83 c4 14             	add    $0x14,%esp
419952:	8b 55 fc             	mov    -0x4(%ebp),%edx
419955:	3b ca                	cmp    %edx,%ecx
419957:	73 79                	jae    0x4199d2
419959:	8d 70 0c             	lea    0xc(%eax),%esi
41995c:	8b 45 1c             	mov    0x1c(%ebp),%eax
41995f:	3b 46 f4             	cmp    -0xc(%esi),%eax
419962:	7c 63                	jl     0x4199c7
419964:	3b 46 f8             	cmp    -0x8(%esi),%eax
419967:	7f 5e                	jg     0x4199c7
419969:	8b 06                	mov    (%esi),%eax
41996b:	8b 7e 04             	mov    0x4(%esi),%edi
41996e:	c1 e0 04             	shl    $0x4,%eax
419971:	8b 7c 07 f4          	mov    -0xc(%edi,%eax,1),%edi
419975:	85 ff                	test   %edi,%edi
419977:	74 13                	je     0x41998c
419979:	8b 56 04             	mov    0x4(%esi),%edx
41997c:	8b 5c 02 f4          	mov    -0xc(%edx,%eax,1),%ebx
419980:	8b 55 fc             	mov    -0x4(%ebp),%edx
419983:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
419987:	8b 5d 18             	mov    0x18(%ebp),%ebx
41998a:	75 38                	jne    0x4199c4
41998c:	8b 7e 04             	mov    0x4(%esi),%edi
41998f:	83 c7 f0             	add    $0xfffffff0,%edi
419992:	03 c7                	add    %edi,%eax
419994:	8b 7d 08             	mov    0x8(%ebp),%edi
419997:	f6 00 40             	testb  $0x40,(%eax)
41999a:	75 28                	jne    0x4199c4
41999c:	6a 01                	push   $0x1
41999e:	ff 75 24             	push   0x24(%ebp)
4199a1:	8d 4e f4             	lea    -0xc(%esi),%ecx
4199a4:	ff 75 20             	push   0x20(%ebp)
4199a7:	51                   	push   %ecx
4199a8:	6a 00                	push   $0x0