43661f:	57                   	push   %edi
436620:	8b f9                	mov    %ecx,%edi
436622:	8b f2                	mov    %edx,%esi
436624:	8b d8                	mov    %eax,%ebx
436626:	33 c0                	xor    %eax,%eax
436628:	55                   	push   %ebp
436629:	68 98 66 43 00       	push   $0x436698
43662e:	64 ff 30             	push   %fs:(%eax)
436631:	64 89 20             	mov    %esp,%fs:(%eax)
436634:	8d 4d fc             	lea    -0x4(%ebp),%ecx
436637:	8b d7                	mov    %edi,%edx
436639:	8b c3                	mov    %ebx,%eax
43663b:	e8 9c f9 ff ff       	call   0x435fdc
436640:	8b c3                	mov    %ebx,%eax
436642:	e8 d9 02 00 00       	call   0x436920
436647:	84 c0                	test   %al,%al
436649:	74 37                	je     0x436682
43664b:	56                   	push   %esi
43664c:	33 c9                	xor    %ecx,%ecx
43664e:	33 d2                	xor    %edx,%edx
436650:	8b c3                	mov    %ebx,%eax
436652:	e8 21 02 00 00       	call   0x436878
436657:	84 c0                	test   %al,%al
436659:	74 27                	je     0x436682
43665b:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
43665f:	74 21                	je     0x436682
436661:	c6 43 10 00          	movb   $0x0,0x10(%ebx)
436665:	89 73 18             	mov    %esi,0x18(%ebx)
436668:	56                   	push   %esi
436669:	6a 01                	push   $0x1
43666b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43666e:	e8 b1 df fc ff       	call   0x404624
436673:	50                   	push   %eax
436674:	8b 43 1c             	mov    0x1c(%ebx),%eax
436677:	8b 10                	mov    (%eax),%edx
436679:	ff 52 0c             	call   *0xc(%edx)
43667c:	50                   	push   %eax
43667d:	e8 be 09 fd ff       	call   0x407040
436682:	33 c0                	xor    %eax,%eax
436684:	5a                   	pop    %edx
436685:	59                   	pop    %ecx
436686:	59                   	pop    %ecx
436687:	64 89 10             	mov    %edx,%fs:(%eax)
43668a:	68 9f 66 43 00       	push   $0x43669f
43668f:	8d 45 fc             	lea    -0x4(%ebp),%eax
436692:	e8 cd da fc ff       	call   0x404164
436697:	c3                   	ret
436698:	e9 cb d4 fc ff       	jmp    0x403b68
43669d:	eb f0                	jmp    0x43668f
43669f:	5f                   	pop    %edi
4366a0:	5e                   	pop    %esi
4366a1:	5b                   	pop    %ebx
4366a2:	59                   	pop    %ecx
4366a3:	5d                   	pop    %ebp
4366a4:	c3                   	ret
4366a5:	8d 40 00             	lea    0x0(%eax),%eax
4366a8:	55                   	push   %ebp
4366a9:	8b ec                	mov    %esp,%ebp
4366ab:	6a 00                	push   $0x0
4366ad:	6a 00                	push   $0x0
4366af:	6a 00                	push   $0x0
4366b1:	6a 00                	push   $0x0
4366b3:	6a 00                	push   $0x0
4366b5:	53                   	push   %ebx
4366b6:	56                   	push   %esi
4366b7:	57                   	push   %edi
4366b8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4366bb:	89 55 fc             	mov    %edx,-0x4(%ebp)
4366be:	8b f0                	mov    %eax,%esi
4366c0:	8b 7d 0c             	mov    0xc(%ebp),%edi
4366c3:	33 c0                	xor    %eax,%eax
4366c5:	55                   	push   %ebp
4366c6:	68 93 67 43 00       	push   $0x436793
4366cb:	64 ff 30             	push   %fs:(%eax)
4366ce:	64 89 20             	mov    %esp,%fs:(%eax)
4366d1:	33 db                	xor    %ebx,%ebx
4366d3:	8b c6                	mov    %esi,%eax
4366d5:	e8 46 02 00 00       	call   0x436920
4366da:	84 c0                	test   %al,%al
4366dc:	0f 84 96 00 00 00    	je     0x436778
4366e2:	66 81 ff 02 01       	cmp    $0x102,%di
4366e7:	74 27                	je     0x436710
4366e9:	66 81 ff 05 01       	cmp    $0x105,%di
4366ee:	74 20                	je     0x436710
4366f0:	66 81 ff 01 02       	cmp    $0x201,%di
4366f5:	74 19                	je     0x436710
4366f7:	66 83 ff 0a          	cmp    $0xa,%di
4366fb:	74 13                	je     0x436710
4366fd:	66 83 ff 08          	cmp    $0x8,%di
436701:	74 0d                	je     0x436710
436703:	66 83 ff 01          	cmp    $0x1,%di
436707:	74 07                	je     0x436710
436709:	66 81 ff 01 01       	cmp    $0x101,%di
43670e:	75 1b                	jne    0x43672b
436710:	6a 00                	push   $0x0
436712:	8d 55 f4             	lea    -0xc(%ebp),%edx
436715:	0f b7 c7             	movzwl %di,%eax
436718:	e8 af 20 fd ff       	call   0x4087cc
43671d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
436720:	b2 01                	mov    $0x1,%dl
436722:	8b c6                	mov    %esi,%eax
436724:	e8 4f 01 00 00       	call   0x436878
436729:	eb 02                	jmp    0x43672d
43672b:	b0 01                	mov    $0x1,%al
43672d:	84 c0                	test   %al,%al
43672f:	74 47                	je     0x436778
436731:	c6 46 10 01          	movb   $0x1,0x10(%esi)
436735:	8d 55 f0             	lea    -0x10(%ebp),%edx
436738:	0f b7 c7             	movzwl %di,%eax
43673b:	e8 8c 20 fd ff       	call   0x4087cc
436740:	8b 55 f0             	mov    -0x10(%ebp),%edx
436743:	8d 46 14             	lea    0x14(%esi),%eax
436746:	e8 6d da fc ff       	call   0x4041b8
43674b:	8b 45 08             	mov    0x8(%ebp),%eax
43674e:	50                   	push   %eax
43674f:	0f b7 c7             	movzwl %di,%eax
436752:	50                   	push   %eax
436753:	8d 4d ec             	lea    -0x14(%ebp),%ecx
436756:	8b 55 f8             	mov    -0x8(%ebp),%edx
436759:	8b c6                	mov    %esi,%eax
43675b:	e8 7c f8 ff ff       	call   0x435fdc
436760:	8b 45 ec             	mov    -0x14(%ebp),%eax
436763:	e8 bc de fc ff       	call   0x404624
436768:	50                   	push   %eax
436769:	8b 45 fc             	mov    -0x4(%ebp),%eax
43676c:	50                   	push   %eax
43676d:	e8 ce 08 fd ff       	call   0x407040
436772:	83 f8 01             	cmp    $0x1,%eax
436775:	1b db                	sbb    %ebx,%ebx
436777:	43                   	inc    %ebx
436778:	33 c0                	xor    %eax,%eax
43677a:	5a                   	pop    %edx
43677b:	59                   	pop    %ecx
43677c:	59                   	pop    %ecx
43677d:	64 89 10             	mov    %edx,%fs:(%eax)
436780:	68 9a 67 43 00       	push   $0x43679a
436785:	8d 45 ec             	lea    -0x14(%ebp),%eax
436788:	ba 03 00 00 00       	mov    $0x3,%edx
43678d:	e8 f6 d9 fc ff       	call   0x404188
436792:	c3                   	ret
436793:	e9 d0 d3 fc ff       	jmp    0x403b68
436798:	eb eb                	jmp    0x436785
43679a:	8b c3                	mov    %ebx,%eax
43679c:	5f                   	pop    %edi
43679d:	5e                   	pop    %esi
43679e:	5b                   	pop    %ebx
43679f:	8b e5                	mov    %ebp,%esp
4367a1:	5d                   	pop    %ebp
4367a2:	c2 08 00             	ret    $0x8
4367a5:	8d 40 00             	lea    0x0(%eax),%eax
4367a8:	55                   	push   %ebp
4367a9:	8b ec                	mov    %esp,%ebp
4367ab:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
4367b1:	53                   	push   %ebx
4367b2:	56                   	push   %esi
4367b3:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4367b6:	8b 75 08             	mov    0x8(%ebp),%esi
4367b9:	68 00 01 00 00       	push   $0x100
4367be:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
4367c4:	50                   	push   %eax
4367c5:	56                   	push   %esi
4367c6:	e8 dd 04 fd ff       	call   0x406ca8
4367cb:	ba f8 67 43 00       	mov    $0x4367f8,%edx
4367d0:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
4367d6:	e8 5d 27 fd ff       	call   0x408f38
4367db:	85 c0                	test   %eax,%eax
4367dd:	75 07                	jne    0x4367e6
4367df:	89 73 04             	mov    %esi,0x4(%ebx)
4367e2:	c6 43 0c 01          	movb   $0x1,0xc(%ebx)
4367e6:	8a 43 0c             	mov    0xc(%ebx),%al
4367e9:	34 01                	xor    $0x1,%al
4367eb:	f6 d8                	neg    %al
4367ed:	1b c0                	sbb    %eax,%eax
4367ef:	5e                   	pop    %esi
4367f0:	5b                   	pop    %ebx
4367f1:	8b e5                	mov    %ebp,%esp
4367f3:	5d                   	pop    %ebp
4367f4:	c2 08 00             	ret    $0x8
4367f7:	00 4d 53             	add    %cl,0x53(%ebp)
4367fa:	5f                   	pop    %edi
4367fb:	57                   	push   %edi
4367fc:	49                   	dec    %ecx
4367fd:	4e                   	dec    %esi
4367fe:	48                   	dec    %eax
4367ff:	45                   	inc    %ebp
436800:	4c                   	dec    %esp
436801:	50                   	push   %eax
436802:	00 00                	add    %al,(%eax)
436804:	55                   	push   %ebp
436805:	8b ec                	mov    %esp,%ebp
436807:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
43680d:	53                   	push   %ebx
43680e:	56                   	push   %esi
43680f:	8b 5d 0c             	mov    0xc(%ebp),%ebx
436812:	8b 75 08             	mov    0x8(%ebp),%esi
436815:	68 00 01 00 00       	push   $0x100
43681a:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
436820:	50                   	push   %eax
436821:	56                   	push   %esi
436822:	e8 81 04 fd ff       	call   0x406ca8
436827:	ba 54 68 43 00       	mov    $0x436854,%edx
43682c:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
436832:	e8 dd 26 fd ff       	call   0x408f14
436837:	85 c0                	test   %eax,%eax
436839:	75 07                	jne    0x436842
43683b:	c6 43 0d 01          	movb   $0x1,0xd(%ebx)
43683f:	89 73 08             	mov    %esi,0x8(%ebx)
436842:	8a 43 0d             	mov    0xd(%ebx),%al
436845:	34 01                	xor    $0x1,%al
436847:	f6 d8                	neg    %al
436849:	1b c0                	sbb    %eax,%eax
43684b:	5e                   	pop    %esi
43684c:	5b                   	pop    %ebx
43684d:	8b e5                	mov    %ebp,%esp
43684f:	5d                   	pop    %ebp
436850:	c2 08 00             	ret    $0x8
436853:	00 23                	add    %ah,(%ebx)
436855:	33 32                	xor    (%edx),%esi
436857:	37                   	aaa
436858:	37                   	aaa
436859:	30 00                	xor    %al,(%eax)
43685b:	00 c6                	add    %al,%dh
43685d:	40                   	inc    %eax
43685e:	0c 00                	or     $0x0,%al
436860:	c6 40 0d 00          	movb   $0x0,0xd(%eax)
436864:	33 d2                	xor    %edx,%edx
436866:	89 50 04             	mov    %edx,0x4(%eax)
436869:	50                   	push   %eax
43686a:	68 a8 67 43 00       	push   $0x4367a8
43686f:	e8 f4 03 fd ff       	call   0x406c68
436874:	c3                   	ret
436875:	8d 40 00             	lea    0x0(%eax),%eax
436878:	55                   	push   %ebp
436879:	8b ec                	mov    %esp,%ebp
43687b:	83 c4 e8             	add    $0xffffffe8,%esp
43687e:	53                   	push   %ebx
43687f:	56                   	push   %esi
436880:	89 4d fc             	mov    %ecx,-0x4(%ebp)
436883:	8b da                	mov    %edx,%ebx
436885:	8b f0                	mov    %eax,%esi
436887:	8b 45 fc             	mov    -0x4(%ebp),%eax
43688a:	e8 85 dd fc ff       	call   0x404614
43688f:	33 c0                	xor    %eax,%eax
436891:	55                   	push   %ebp
436892:	68 ee 68 43 00       	push   $0x4368ee
436897:	64 ff 30             	push   %fs:(%eax)
43689a:	64 89 20             	mov    %esp,%fs:(%eax)
43689d:	c6 45 fb 01          	movb   $0x1,-0x5(%ebp)
4368a1:	8d 45 e8             	lea    -0x18(%ebp),%eax
4368a4:	e8 b3 ff ff ff       	call   0x43685c
4368a9:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
4368ad:	74 29                	je     0x4368d8
4368af:	3a 5e 10             	cmp    0x10(%esi),%bl
4368b2:	75 24                	jne    0x4368d8
4368b4:	80 eb 01             	sub    $0x1,%bl
4368b7:	72 15                	jb     0x4368ce
4368b9:	75 1d                	jne    0x4368d8
4368bb:	8b 56 14             	mov    0x14(%esi),%edx
4368be:	8b 45 fc             	mov    -0x4(%ebp),%eax
4368c1:	e8 42 1b fd ff       	call   0x408408
4368c6:	85 c0                	test   %eax,%eax
4368c8:	0f 95 45 fb          	setne  -0x5(%ebp)
4368cc:	eb 0a                	jmp    0x4368d8
4368ce:	8b 45 08             	mov    0x8(%ebp),%eax
4368d1:	3b 46 18             	cmp    0x18(%esi),%eax
4368d4:	0f 95 45 fb          	setne  -0x5(%ebp)
4368d8:	33 c0                	xor    %eax,%eax
4368da:	5a                   	pop    %edx
4368db:	59                   	pop    %ecx
4368dc:	59                   	pop    %ecx
4368dd:	64 89 10             	mov    %edx,%fs:(%eax)
4368e0:	68 f5 68 43 00       	push   $0x4368f5
4368e5:	8d 45 fc             	lea    -0x4(%ebp),%eax
4368e8:	e8 77 d8 fc ff       	call   0x404164
4368ed:	c3                   	ret
4368ee:	e9 75 d2 fc ff       	jmp    0x403b68
4368f3:	eb f0                	jmp    0x4368e5
4368f5:	8a 45 fb             	mov    -0x5(%ebp),%al
4368f8:	5e                   	pop    %esi
4368f9:	5b                   	pop    %ebx
4368fa:	8b e5                	mov    %ebp,%esp
4368fc:	5d                   	pop    %ebp
4368fd:	c2 04 00             	ret    $0x4
436900:	33 c0                	xor    %eax,%eax
436902:	c3                   	ret
436903:	90                   	nop
436904:	56                   	push   %esi
436905:	57                   	push   %edi
436906:	83 c4 f0             	add    $0xfffffff0,%esp
436909:	8b f2                	mov    %edx,%esi
43690b:	8d 3c 24             	lea    (%esp),%edi
43690e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43690f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
436910:	a5                   	movsl  %ds:(%esi),%es:(%edi)
436911:	a5                   	movsl  %ds:(%esi),%es:(%edi)
436912:	8a 44 24 0d          	mov    0xd(%esp),%al
436916:	34 01                	xor    $0x1,%al
436918:	83 c4 10             	add    $0x10,%esp
43691b:	5f                   	pop    %edi
43691c:	5e                   	pop    %esi
43691d:	c3                   	ret
43691e:	8b c0                	mov    %eax,%eax
436920:	53                   	push   %ebx
436921:	56                   	push   %esi
436922:	83 c4 f0             	add    $0xfffffff0,%esp
436925:	8b f0                	mov    %eax,%esi
436927:	33 db                	xor    %ebx,%ebx
436929:	8b c4                	mov    %esp,%eax
43692b:	e8 2c ff ff ff       	call   0x43685c
436930:	80 7c 24 0c 00       	cmpb   $0x0,0xc(%esp)
436935:	74 1a                	je     0x436951
436937:	8b c4                	mov    %esp,%eax
436939:	50                   	push   %eax
43693a:	68 04 68 43 00       	push   $0x436804
43693f:	6a 00                	push   $0x0
436941:	8b 44 24 10          	mov    0x10(%esp),%eax
436945:	50                   	push   %eax
436946:	e8 a5 04 fd ff       	call   0x406df0
43694b:	50                   	push   %eax
43694c:	e8 0f 03 fd ff       	call   0x406c60
436951:	8b d4                	mov    %esp,%edx
436953:	8b c6                	mov    %esi,%eax
436955:	e8 a6 ff ff ff       	call   0x436900
43695a:	84 c0                	test   %al,%al
43695c:	75 16                	jne    0x436974
43695e:	8b d4                	mov    %esp,%edx
436960:	8b c6                	mov    %esi,%eax
436962:	e8 9d ff ff ff       	call   0x436904
436967:	84 c0                	test   %al,%al
436969:	74 07                	je     0x436972
43696b:	8b c6                	mov    %esi,%eax
43696d:	e8 0a 00 00 00       	call   0x43697c
436972:	b3 01                	mov    $0x1,%bl
436974:	8b c3                	mov    %ebx,%eax
436976:	83 c4 10             	add    $0x10,%esp
436979:	5e                   	pop    %esi
43697a:	5b                   	pop    %ebx
43697b:	c3                   	ret
43697c:	55                   	push   %ebp
43697d:	8b ec                	mov    %esp,%ebp
43697f:	6a 00                	push   $0x0
436981:	53                   	push   %ebx
436982:	56                   	push   %esi
436983:	8b f0                	mov    %eax,%esi
436985:	33 c0                	xor    %eax,%eax
436987:	55                   	push   %ebp
436988:	68 f9 69 43 00       	push   $0x4369f9
43698d:	64 ff 30             	push   %fs:(%eax)
436990:	64 89 20             	mov    %esp,%fs:(%eax)
436993:	8b c6                	mov    %esi,%eax