404645:	5b                   	pop    %ebx
404646:	5d                   	pop    %ebp
404647:	c2 0c 00             	ret    $0xc
40464a:	55                   	push   %ebp
40464b:	8b ec                	mov    %esp,%ebp
40464d:	83 ec 30             	sub    $0x30,%esp
404650:	a1 18 60 42 00       	mov    0x426018,%eax
404655:	33 c5                	xor    %ebp,%eax
404657:	89 45 fc             	mov    %eax,-0x4(%ebp)
40465a:	8b 45 0c             	mov    0xc(%ebp),%eax
40465d:	53                   	push   %ebx
40465e:	56                   	push   %esi
40465f:	57                   	push   %edi
404660:	6a 4d                	push   $0x4d
404662:	89 45 d0             	mov    %eax,-0x30(%ebp)
404665:	8b 45 10             	mov    0x10(%ebp),%eax
404668:	8b 75 08             	mov    0x8(%ebp),%esi
40466b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
40466e:	58                   	pop    %eax
40466f:	6a 53                	push   $0x53
404671:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
404675:	58                   	pop    %eax
404676:	6a 45                	push   $0x45
404678:	66 89 45 ee          	mov    %ax,-0x12(%ebp)
40467c:	58                   	pop    %eax
40467d:	6a 44                	push   $0x44
40467f:	5a                   	pop    %edx
404680:	6a 47                	push   $0x47
404682:	66 89 55 f2          	mov    %dx,-0xe(%ebp)
404686:	5a                   	pop    %edx
404687:	66 89 45 f0          	mov    %ax,-0x10(%ebp)
40468b:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
40468f:	6a 5f                	push   $0x5f
404691:	58                   	pop    %eax
404692:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
404696:	33 c0                	xor    %eax,%eax
404698:	66 89 45 fa          	mov    %ax,-0x6(%ebp)
40469c:	8b 41 14             	mov    0x14(%ecx),%eax
40469f:	66 89 55 f4          	mov    %dx,-0xc(%ebp)
4046a3:	8d 3c 30             	lea    (%eax,%esi,1),%edi
4046a6:	3b fe                	cmp    %esi,%edi
4046a8:	0f 82 dd 00 00 00    	jb     0x40478b
4046ae:	83 f8 0e             	cmp    $0xe,%eax
4046b1:	0f 8c d4 00 00 00    	jl     0x40478b
4046b7:	0f ae e8             	lfence
4046ba:	8d 5f f2             	lea    -0xe(%edi),%ebx
4046bd:	eb 09                	jmp    0x4046c8
4046bf:	3b f3                	cmp    %ebx,%esi
4046c1:	0f 84 c4 00 00 00    	je     0x40478b
4046c7:	46                   	inc    %esi
4046c8:	6a 0e                	push   $0xe
4046ca:	8d 45 ec             	lea    -0x14(%ebp),%eax
4046cd:	56                   	push   %esi
4046ce:	50                   	push   %eax
4046cf:	e8 6c 51 01 00       	call   0x419840
4046d4:	83 c4 0c             	add    $0xc,%esp
4046d7:	85 c0                	test   %eax,%eax
4046d9:	75 e4                	jne    0x4046bf
4046db:	3b f7                	cmp    %edi,%esi
4046dd:	0f 84 a8 00 00 00    	je     0x40478b
4046e3:	6a 5f                	push   $0x5f
4046e5:	58                   	pop    %eax
4046e6:	6a 45                	push   $0x45
4046e8:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
4046ec:	8d 5e 0e             	lea    0xe(%esi),%ebx
4046ef:	58                   	pop    %eax
4046f0:	6a 47                	push   $0x47
4046f2:	59                   	pop    %ecx
4046f3:	6a 44                	push   $0x44
4046f5:	66 89 45 de          	mov    %ax,-0x22(%ebp)
4046f9:	8b f3                	mov    %ebx,%esi
4046fb:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
4046ff:	66 89 4d e0          	mov    %cx,-0x20(%ebp)
404703:	59                   	pop    %ecx
404704:	6a 53                	push   $0x53
404706:	58                   	pop    %eax
404707:	66 89 45 e6          	mov    %ax,-0x1a(%ebp)
40470b:	6a 4d                	push   $0x4d
40470d:	58                   	pop    %eax
40470e:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
404712:	33 c0                	xor    %eax,%eax
404714:	66 89 45 ea          	mov    %ax,-0x16(%ebp)
404718:	8b c7                	mov    %edi,%eax
40471a:	2b c3                	sub    %ebx,%eax
40471c:	66 89 4d e2          	mov    %cx,-0x1e(%ebp)
404720:	83 e0 fe             	and    $0xfffffffe,%eax
404723:	83 f8 0e             	cmp    $0xe,%eax
404726:	7c 63                	jl     0x40478b
404728:	6a 0e                	push   $0xe
40472a:	0f ae e8             	lfence
40472d:	53                   	push   %ebx
40472e:	eb 0d                	jmp    0x40473d
404730:	8d 47 f2             	lea    -0xe(%edi),%eax
404733:	3b f0                	cmp    %eax,%esi
404735:	74 54                	je     0x40478b
404737:	83 c6 02             	add    $0x2,%esi
40473a:	6a 0e                	push   $0xe
40473c:	56                   	push   %esi
40473d:	8d 45 dc             	lea    -0x24(%ebp),%eax
404740:	50                   	push   %eax
404741:	e8 fa 50 01 00       	call   0x419840
404746:	83 c4 0c             	add    $0xc,%esp
404749:	85 c0                	test   %eax,%eax
40474b:	75 e3                	jne    0x404730
40474d:	3b f7                	cmp    %edi,%esi
40474f:	74 3a                	je     0x40478b
404751:	8b 55 d0             	mov    -0x30(%ebp),%edx
404754:	2b f3                	sub    %ebx,%esi
404756:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
404759:	d1 fe                	sar    $1,%esi
40475b:	8d 46 01             	lea    0x1(%esi),%eax
40475e:	85 d2                	test   %edx,%edx
404760:	75 06                	jne    0x404768
404762:	89 01                	mov    %eax,(%ecx)
404764:	b0 01                	mov    $0x1,%al
404766:	eb 25                	jmp    0x40478d
404768:	39 01                	cmp    %eax,(%ecx)
40476a:	72 1f                	jb     0x40478b
40476c:	56                   	push   %esi
40476d:	53                   	push   %ebx
40476e:	50                   	push   %eax
40476f:	52                   	push   %edx
404770:	8d 45 d8             	lea    -0x28(%ebp),%eax
404773:	50                   	push   %eax
404774:	0f ae e8             	lfence
404777:	e8 88 6e 01 00       	call   0x41b604
40477c:	83 c4 14             	add    $0x14,%esp
40477f:	85 c0                	test   %eax,%eax
404781:	75 08                	jne    0x40478b
404783:	39 45 d8             	cmp    %eax,-0x28(%ebp)
404786:	0f 97 c0             	seta   %al
404789:	eb 02                	jmp    0x40478d
40478b:	32 c0                	xor    %al,%al
40478d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
404790:	5f                   	pop    %edi
404791:	5e                   	pop    %esi
404792:	33 cd                	xor    %ebp,%ecx
404794:	5b                   	pop    %ebx
404795:	e8 5b 44 00 00       	call   0x408bf5
40479a:	c9                   	leave
40479b:	c2 0c 00             	ret    $0xc
40479e:	55                   	push   %ebp
40479f:	8b ec                	mov    %esp,%ebp
4047a1:	56                   	push   %esi
4047a2:	8b 71 10             	mov    0x10(%ecx),%esi
4047a5:	57                   	push   %edi
4047a6:	83 fe 40             	cmp    $0x40,%esi
4047a9:	72 57                	jb     0x404802
4047ab:	8b 4d 08             	mov    0x8(%ebp),%ecx
4047ae:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
4047b3:	66 39 01             	cmp    %ax,(%ecx)
4047b6:	75 4a                	jne    0x404802
4047b8:	8b 51 3c             	mov    0x3c(%ecx),%edx
4047bb:	8d 82 f8 00 00 00    	lea    0xf8(%edx),%eax
4047c1:	3b f0                	cmp    %eax,%esi
4047c3:	72 3d                	jb     0x404802
4047c5:	81 3c 0a 50 45 00 00 	cmpl   $0x4550,(%edx,%ecx,1)
4047cc:	75 34                	jne    0x404802
4047ce:	0f b7 44 0a 04       	movzwl 0x4(%edx,%ecx,1),%eax
4047d3:	bf 4c 01 00 00       	mov    $0x14c,%edi
4047d8:	66 3b c7             	cmp    %di,%ax
4047db:	74 0a                	je     0x4047e7
4047dd:	bf 64 86 00 00       	mov    $0x8664,%edi
4047e2:	66 3b c7             	cmp    %di,%ax
4047e5:	74 1b                	je     0x404802
4047e7:	81 c1 98 00 00 00    	add    $0x98,%ecx
4047ed:	03 ca                	add    %edx,%ecx
4047ef:	8b 01                	mov    (%ecx),%eax
4047f1:	85 c0                	test   %eax,%eax
4047f3:	74 0d                	je     0x404802
4047f5:	83 c0 0c             	add    $0xc,%eax
4047f8:	3b f0                	cmp    %eax,%esi
4047fa:	1b c0                	sbb    %eax,%eax
4047fc:	f7 d0                	not    %eax
4047fe:	23 c1                	and    %ecx,%eax
404800:	eb 02                	jmp    0x404804
404802:	33 c0                	xor    %eax,%eax
404804:	5f                   	pop    %edi
404805:	5e                   	pop    %esi
404806:	5d                   	pop    %ebp
404807:	c2 04 00             	ret    $0x4
40480a:	55                   	push   %ebp
40480b:	8b ec                	mov    %esp,%ebp
40480d:	51                   	push   %ecx
40480e:	56                   	push   %esi
40480f:	57                   	push   %edi
404810:	8b fa                	mov    %edx,%edi
404812:	be 6c 34 42 00       	mov    $0x42346c,%esi
404817:	8b d1                	mov    %ecx,%edx
404819:	8b c7                	mov    %edi,%eax
40481b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40481e:	2b c2                	sub    %edx,%eax
404820:	2b ce                	sub    %esi,%ecx
404822:	3b c1                	cmp    %ecx,%eax
404824:	7c 29                	jl     0x40484f
404826:	53                   	push   %ebx
404827:	8b c7                	mov    %edi,%eax
404829:	8b da                	mov    %edx,%ebx
40482b:	2b c1                	sub    %ecx,%eax
40482d:	2b de                	sub    %esi,%ebx
40482f:	89 45 fc             	mov    %eax,-0x4(%ebp)
404832:	81 7d 0c 6c 34 42 00 	cmpl   $0x42346c,0xc(%ebp)
404839:	74 11                	je     0x40484c
40483b:	0f b6 0c 33          	movzbl (%ebx,%esi,1),%ecx
40483f:	0f be 06             	movsbl (%esi),%eax
404842:	3b c8                	cmp    %eax,%ecx
404844:	75 0f                	jne    0x404855
404846:	46                   	inc    %esi
404847:	3b 75 0c             	cmp    0xc(%ebp),%esi
40484a:	75 ef                	jne    0x40483b
40484c:	8b fa                	mov    %edx,%edi
40484e:	5b                   	pop    %ebx
40484f:	8b c7                	mov    %edi,%eax
404851:	5f                   	pop    %edi
404852:	5e                   	pop    %esi
404853:	c9                   	leave
404854:	c3                   	ret
404855:	3b 55 fc             	cmp    -0x4(%ebp),%edx
404858:	74 f4                	je     0x40484e
40485a:	42                   	inc    %edx
40485b:	be 6c 34 42 00       	mov    $0x42346c,%esi
404860:	43                   	inc    %ebx
404861:	eb cf                	jmp    0x404832
404863:	55                   	push   %ebp
404864:	8b ec                	mov    %esp,%ebp
404866:	83 ec 60             	sub    $0x60,%esp
404869:	a1 18 60 42 00       	mov    0x426018,%eax
40486e:	33 c5                	xor    %ebp,%eax
404870:	89 45 fc             	mov    %eax,-0x4(%ebp)
404873:	8b 09                	mov    (%ecx),%ecx
404875:	53                   	push   %ebx
404876:	56                   	push   %esi
404877:	57                   	push   %edi
404878:	83 e9 10             	sub    $0x10,%ecx
40487b:	89 55 a0             	mov    %edx,-0x60(%ebp)
40487e:	e8 b2 f2 ff ff       	call   0x403b35
404883:	6a 44                	push   $0x44
404885:	33 db                	xor    %ebx,%ebx
404887:	53                   	push   %ebx
404888:	8d 70 10             	lea    0x10(%eax),%esi
40488b:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40488e:	89 75 f8             	mov    %esi,-0x8(%ebp)
404891:	50                   	push   %eax
404892:	e8 79 48 00 00       	call   0x409110
404897:	33 c0                	xor    %eax,%eax
404899:	8d 7d a4             	lea    -0x5c(%ebp),%edi
40489c:	ab                   	stos   %eax,%es:(%edi)
40489d:	83 c4 0c             	add    $0xc,%esp
4048a0:	ab                   	stos   %eax,%es:(%edi)
4048a1:	ab                   	stos   %eax,%es:(%edi)
4048a2:	ab                   	stos   %eax,%es:(%edi)
4048a3:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4048a6:	50                   	push   %eax
4048a7:	ff 15 60 c1 41 00    	call   *0x41c160
4048ad:	81 4d e0 81 00 00 00 	orl    $0x81,-0x20(%ebp)
4048b4:	33 c0                	xor    %eax,%eax
4048b6:	40                   	inc    %eax
4048b7:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
4048bb:	39 46 fc             	cmp    %eax,-0x4(%esi)
4048be:	7e 0e                	jle    0x4048ce
4048c0:	ff 76 f4             	push   -0xc(%esi)
4048c3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4048c6:	e8 32 f3 ff ff       	call   0x403bfd
4048cb:	8b 75 f8             	mov    -0x8(%ebp),%esi
4048ce:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4048d1:	50                   	push   %eax
4048d2:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4048d5:	50                   	push   %eax
4048d6:	53                   	push   %ebx
4048d7:	53                   	push   %ebx
4048d8:	68 00 04 00 00       	push   $0x400
4048dd:	53                   	push   %ebx
4048de:	53                   	push   %ebx
4048df:	53                   	push   %ebx
4048e0:	56                   	push   %esi
4048e1:	53                   	push   %ebx
4048e2:	ff 15 04 c2 41 00    	call   *0x41c204
4048e8:	85 c0                	test   %eax,%eax
4048ea:	75 11                	jne    0x4048fd
4048ec:	8b 7d a0             	mov    -0x60(%ebp),%edi
4048ef:	85 ff                	test   %edi,%edi
4048f1:	74 47                	je     0x40493a
4048f3:	ff 15 48 c1 41 00    	call   *0x41c148
4048f9:	89 07                	mov    %eax,(%edi)
4048fb:	eb 3d                	jmp    0x40493a
4048fd:	38 5d 08             	cmp    %bl,0x8(%ebp)
404900:	74 0b                	je     0x40490d
404902:	6a ff                	push   $0xffffffff
404904:	ff 75 a4             	push   -0x5c(%ebp)
404907:	ff 15 e0 c1 41 00    	call   *0x41c1e0
40490d:	8b 45 a0             	mov    -0x60(%ebp),%eax
404910:	85 c0                	test   %eax,%eax
404912:	74 11                	je     0x404925
404914:	50                   	push   %eax
404915:	ff 75 a4             	push   -0x5c(%ebp)
404918:	ff 15 08 c2 41 00    	call   *0x41c208
40491e:	85 c0                	test   %eax,%eax
404920:	0f 95 c3             	setne  %bl
404923:	eb 03                	jmp    0x404928
404925:	33 db                	xor    %ebx,%ebx
404927:	43                   	inc    %ebx
404928:	ff 75 a4             	push   -0x5c(%ebp)
40492b:	ff 15 00 c1 41 00    	call   *0x41c100
404931:	ff 75 a8             	push   -0x58(%ebp)
404934:	ff 15 00 c1 41 00    	call   *0x41c100
40493a:	8d 4e f0             	lea    -0x10(%esi),%ecx
40493d:	e8 c0 c9 ff ff       	call   0x401302
404942:	8b 4d fc             	mov    -0x4(%ebp),%ecx
404945:	8a c3                	mov    %bl,%al
404947:	5f                   	pop    %edi
404948:	5e                   	pop    %esi
404949:	33 cd                	xor    %ebp,%ecx
40494b:	5b                   	pop    %ebx
40494c:	e8 a4 42 00 00       	call   0x408bf5
404951:	c9                   	leave
404952:	c3                   	ret
404953:	56                   	push   %esi
404954:	57                   	push   %edi
404955:	8b f9                	mov    %ecx,%edi
404957:	8b 47 04             	mov    0x4(%edi),%eax
40495a:	50                   	push   %eax
40495b:	8b 10                	mov    (%eax),%edx
40495d:	8b 72 08             	mov    0x8(%edx),%esi
404960:	8b ce                	mov    %esi,%ecx
404962:	ff 15 50 c2 41 00    	call   *0x41c250
404968:	ff d6                	call   *%esi
40496a:	83 67 04 00          	andl   $0x0,0x4(%edi)
40496e:	8b 0f                	mov    (%edi),%ecx
404970:	5f                   	pop    %edi
404971:	83 e9 10             	sub    $0x10,%ecx
404974:	5e                   	pop    %esi
404975:	e9 88 c9 ff ff       	jmp    0x401302
40497a:	55                   	push   %ebp
40497b:	8b ec                	mov    %esp,%ebp
40497d:	81 ec 38 02 00 00    	sub    $0x238,%esp
404983:	a1 18 60 42 00       	mov    0x426018,%eax
404988:	33 c5                	xor    %ebp,%eax
40498a:	89 45 f8             	mov    %eax,-0x8(%ebp)
40498d:	53                   	push   %ebx
40498e:	8b d9                	mov    %ecx,%ebx
404990:	56                   	push   %esi
404991:	57                   	push   %edi
404992:	8b 7d 08             	mov    0x8(%ebp),%edi
404995:	8b 53 04             	mov    0x4(%ebx),%edx
404998:	89 9d d4 fd ff ff    	mov    %ebx,-0x22c(%ebp)
40499e:	8b 02                	mov    (%edx),%eax
4049a0:	8b 70 0c             	mov    0xc(%eax),%esi
4049a3:	8d 45 f0             	lea    -0x10(%ebp),%eax
4049a6:	50                   	push   %eax
4049a7:	68 00 02 00 00       	push   $0x200