4566ed:	56                   	push   %esi
4566ee:	ff 15 b8 08 4b 00    	call   *0x4b08b8
4566f4:	0f b7 45 10          	movzwl 0x10(%ebp),%eax
4566f8:	0f b7 4d 0c          	movzwl 0xc(%ebp),%ecx
4566fc:	c1 e0 10             	shl    $0x10,%eax
4566ff:	0b c1                	or     %ecx,%eax
456701:	50                   	push   %eax
456702:	6a 00                	push   $0x0
456704:	68 66 03 00 00       	push   $0x366
456709:	56                   	push   %esi
45670a:	ff 15 98 08 4b 00    	call   *0x4b0898
456710:	8b f8                	mov    %eax,%edi
456712:	8d 45 0c             	lea    0xc(%ebp),%eax
456715:	50                   	push   %eax
456716:	56                   	push   %esi
456717:	ff 15 64 06 4b 00    	call   *0x4b0664
45671d:	6a f0                	push   $0xfffffff0
45671f:	56                   	push   %esi
456720:	ff 15 14 08 4b 00    	call   *0x4b0814
456726:	a9 00 00 00 40       	test   $0x40000000,%eax
45672b:	74 19                	je     0x456746
45672d:	56                   	push   %esi
45672e:	ff 15 d8 07 4b 00    	call   *0x4b07d8
456734:	8b f0                	mov    %eax,%esi
456736:	85 f6                	test   %esi,%esi
456738:	74 0c                	je     0x456746
45673a:	85 ff                	test   %edi,%edi
45673c:	74 ab                	je     0x4566e9
45673e:	8b c7                	mov    %edi,%eax
456740:	5f                   	pop    %edi
456741:	5e                   	pop    %esi
456742:	5d                   	pop    %ebp
456743:	c2 0c 00             	ret    $0xc
456746:	85 ff                	test   %edi,%edi
456748:	75 f4                	jne    0x45673e
45674a:	83 c8 ff             	or     $0xffffffff,%eax
45674d:	eb f1                	jmp    0x456740
45674f:	8b 44 24 04          	mov    0x4(%esp),%eax
456753:	85 c0                	test   %eax,%eax
456755:	7c 0c                	jl     0x456763
456757:	83 f8 15             	cmp    $0x15,%eax
45675a:	7f 07                	jg     0x456763
45675c:	05 00 00 04 00       	add    $0x40000,%eax
456761:	eb 03                	jmp    0x456766
456763:	83 c8 ff             	or     $0xffffffff,%eax
456766:	c2 04 00             	ret    $0x4
456769:	51                   	push   %ecx
45676a:	53                   	push   %ebx
45676b:	55                   	push   %ebp
45676c:	56                   	push   %esi
45676d:	57                   	push   %edi
45676e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
456772:	ff 15 94 06 4b 00    	call   *0x4b0694
456778:	8b 35 98 08 4b 00    	mov    0x4b0898,%esi
45677e:	bb 65 03 00 00       	mov    $0x365,%ebx
456783:	33 ed                	xor    %ebp,%ebp
456785:	eb 10                	jmp    0x456797
456787:	55                   	push   %ebp
456788:	55                   	push   %ebp
456789:	53                   	push   %ebx
45678a:	57                   	push   %edi
45678b:	ff d6                	call   *%esi
45678d:	85 c0                	test   %eax,%eax
45678f:	75 70                	jne    0x456801
456791:	57                   	push   %edi
456792:	e8 31 f7 fe ff       	call   0x445ec8
456797:	8b f8                	mov    %eax,%edi
456799:	3b fd                	cmp    %ebp,%edi
45679b:	75 ea                	jne    0x456787
45679d:	ff 15 d4 07 4b 00    	call   *0x4b07d4
4567a3:	eb 10                	jmp    0x4567b5
4567a5:	55                   	push   %ebp
4567a6:	55                   	push   %ebp
4567a7:	53                   	push   %ebx
4567a8:	57                   	push   %edi
4567a9:	ff d6                	call   *%esi
4567ab:	85 c0                	test   %eax,%eax
4567ad:	75 52                	jne    0x456801
4567af:	57                   	push   %edi
4567b0:	e8 13 f7 fe ff       	call   0x445ec8
4567b5:	8b f8                	mov    %eax,%edi
4567b7:	3b fd                	cmp    %ebp,%edi
4567b9:	75 ea                	jne    0x4567a5
4567bb:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4567bf:	e8 49 f7 fe ff       	call   0x445f0d
4567c4:	3b c5                	cmp    %ebp,%eax
4567c6:	75 04                	jne    0x4567cc
4567c8:	33 c0                	xor    %eax,%eax
4567ca:	eb 03                	jmp    0x4567cf
4567cc:	8b 40 1c             	mov    0x1c(%eax),%eax
4567cf:	50                   	push   %eax
4567d0:	ff 15 b8 07 4b 00    	call   *0x4b07b8
4567d6:	eb 0f                	jmp    0x4567e7
4567d8:	55                   	push   %ebp
4567d9:	53                   	push   %ebx
4567da:	57                   	push   %edi
4567db:	ff d6                	call   *%esi
4567dd:	85 c0                	test   %eax,%eax
4567df:	75 20                	jne    0x456801
4567e1:	57                   	push   %edi
4567e2:	e8 e1 f6 fe ff       	call   0x445ec8
4567e7:	8b f8                	mov    %eax,%edi
4567e9:	3b fd                	cmp    %ebp,%edi
4567eb:	55                   	push   %ebp
4567ec:	75 ea                	jne    0x4567d8
4567ee:	8b 44 24 14          	mov    0x14(%esp),%eax
4567f2:	68 47 e1 00 00       	push   $0xe147
4567f7:	68 11 01 00 00       	push   $0x111
4567fc:	ff 70 1c             	push   0x1c(%eax)
4567ff:	ff d6                	call   *%esi
456801:	5f                   	pop    %edi
456802:	5e                   	pop    %esi
456803:	5d                   	pop    %ebp
456804:	5b                   	pop    %ebx
456805:	59                   	pop    %ecx
456806:	c3                   	ret
456807:	56                   	push   %esi
456808:	8b f1                	mov    %ecx,%esi
45680a:	8b 46 60             	mov    0x60(%esi),%eax
45680d:	85 c0                	test   %eax,%eax
45680f:	74 20                	je     0x456831
456811:	3d 07 f1 03 00       	cmp    $0x3f107,%eax
456816:	74 17                	je     0x45682f
456818:	e8 e4 70 01 00       	call   0x46d901
45681d:	8b 40 04             	mov    0x4(%eax),%eax
456820:	8b 10                	mov    (%eax),%edx
456822:	6a 01                	push   $0x1
456824:	ff 76 60             	push   0x60(%esi)
456827:	8b c8                	mov    %eax,%ecx
456829:	ff 92 ac 00 00 00    	call   *0xac(%edx)
45682f:	5e                   	pop    %esi
456830:	c3                   	ret
456831:	8b ce                	mov    %esi,%ecx
456833:	5e                   	pop    %esi
456834:	e9 30 ff ff ff       	jmp    0x456769
456839:	e8 c3 70 01 00       	call   0x46d901
45683e:	8b 40 04             	mov    0x4(%eax),%eax
456841:	8b 10                	mov    (%eax),%edx
456843:	6a 03                	push   $0x3
456845:	6a 00                	push   $0x0
456847:	8b c8                	mov    %eax,%ecx
456849:	ff 92 ac 00 00 00    	call   *0xac(%edx)
45684f:	c3                   	ret
456850:	e8 ac 70 01 00       	call   0x46d901
456855:	8b 40 04             	mov    0x4(%eax),%eax
456858:	8b 10                	mov    (%eax),%edx
45685a:	6a 0b                	push   $0xb
45685c:	6a 00                	push   $0x0
45685e:	8b c8                	mov    %eax,%ecx
456860:	ff 92 ac 00 00 00    	call   *0xac(%edx)
456866:	c3                   	ret
456867:	e8 95 70 01 00       	call   0x46d901
45686c:	8b 40 04             	mov    0x4(%eax),%eax
45686f:	8b 10                	mov    (%eax),%edx
456871:	6a 04                	push   $0x4
456873:	6a 00                	push   $0x0
456875:	8b c8                	mov    %eax,%ecx
456877:	ff 92 ac 00 00 00    	call   *0xac(%edx)
45687d:	c3                   	ret
45687e:	51                   	push   %ecx
45687f:	51                   	push   %ecx
456880:	83 3d 1c c4 4a 00 00 	cmpl   $0x0,0x4ac41c
456887:	56                   	push   %esi
456888:	57                   	push   %edi
456889:	8b f9                	mov    %ecx,%edi
45688b:	75 31                	jne    0x4568be
45688d:	8b 35 48 06 4b 00    	mov    0x4b0648,%esi
456893:	68 8b 7f 00 00       	push   $0x7f8b
456898:	6a 00                	push   $0x0
45689a:	ff d6                	call   *%esi
45689c:	85 c0                	test   %eax,%eax
45689e:	a3 1c c4 4a 00       	mov    %eax,0x4ac41c
4568a3:	75 19                	jne    0x4568be
4568a5:	e8 57 70 01 00       	call   0x46d901
4568aa:	8b 40 0c             	mov    0xc(%eax),%eax
4568ad:	68 01 79 00 00       	push   $0x7901
4568b2:	50                   	push   %eax
4568b3:	ff d6                	call   *%esi
4568b5:	85 c0                	test   %eax,%eax
4568b7:	a3 1c c4 4a 00       	mov    %eax,0x4ac41c
4568bc:	74 15                	je     0x4568d3
4568be:	8b 07                	mov    (%edi),%eax
4568c0:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4568c4:	51                   	push   %ecx
4568c5:	6a 00                	push   $0x0
4568c7:	6a 00                	push   $0x0
4568c9:	68 45 e1 00 00       	push   $0xe145
4568ce:	8b cf                	mov    %edi,%ecx
4568d0:	ff 50 0c             	call   *0xc(%eax)
4568d3:	5f                   	pop    %edi
4568d4:	5e                   	pop    %esi
4568d5:	59                   	pop    %ecx
4568d6:	59                   	pop    %ecx
4568d7:	c3                   	ret
4568d8:	55                   	push   %ebp
4568d9:	8b ec                	mov    %esp,%ebp
4568db:	83 ec 10             	sub    $0x10,%esp
4568de:	53                   	push   %ebx
4568df:	57                   	push   %edi
4568e0:	8b d9                	mov    %ecx,%ebx
4568e2:	33 ff                	xor    %edi,%edi
4568e4:	39 7b 64             	cmp    %edi,0x64(%ebx)
4568e7:	75 07                	jne    0x4568f0
4568e9:	33 c0                	xor    %eax,%eax
4568eb:	e9 ea 00 00 00       	jmp    0x4569da
4568f0:	56                   	push   %esi
4568f1:	ff 15 94 06 4b 00    	call   *0x4b0694
4568f7:	ff 75 0c             	push   0xc(%ebp)
4568fa:	89 45 fc             	mov    %eax,-0x4(%ebp)
4568fd:	ff 75 08             	push   0x8(%ebp)
456900:	e8 a9 61 fb ff       	call   0x40caae
456905:	3b c7                	cmp    %edi,%eax
456907:	75 04                	jne    0x45690d
456909:	33 f6                	xor    %esi,%esi
45690b:	eb 03                	jmp    0x456910
45690d:	8b 70 1c             	mov    0x1c(%eax),%esi
456910:	8b c8                	mov    %eax,%ecx
456912:	e8 f6 f5 fe ff       	call   0x445f0d
456917:	89 45 f0             	mov    %eax,-0x10(%ebp)
45691a:	ff 15 9c 07 4b 00    	call   *0x4b079c
456920:	50                   	push   %eax
456921:	e8 7c e3 fe ff       	call   0x444ca2
456926:	8b c8                	mov    %eax,%ecx
456928:	e8 e0 f5 fe ff       	call   0x445f0d
45692d:	89 45 0c             	mov    %eax,0xc(%ebp)
456930:	89 7d f4             	mov    %edi,-0xc(%ebp)
456933:	ff 15 e4 02 4b 00    	call   *0x4b02e4
456939:	3b f7                	cmp    %edi,%esi
45693b:	89 45 f8             	mov    %eax,-0x8(%ebp)
45693e:	74 0a                	je     0x45694a
456940:	57                   	push   %edi
456941:	56                   	push   %esi
456942:	ff 15 38 06 4b 00    	call   *0x4b0638
456948:	8b f8                	mov    %eax,%edi
45694a:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
45694e:	74 61                	je     0x4569b1
456950:	ff 15 60 08 4b 00    	call   *0x4b0860
456956:	3b f0                	cmp    %eax,%esi
456958:	74 57                	je     0x4569b1
45695a:	85 f6                	test   %esi,%esi
45695c:	74 3c                	je     0x45699a
45695e:	39 7d f8             	cmp    %edi,-0x8(%ebp)
456961:	75 3c                	jne    0x45699f
456963:	56                   	push   %esi
456964:	ff 73 1c             	push   0x1c(%ebx)
456967:	e8 ea 9a 00 00       	call   0x460456
45696c:	85 c0                	test   %eax,%eax
45696e:	74 2a                	je     0x45699a
456970:	8b 45 f0             	mov    -0x10(%ebp),%eax
456973:	39 45 0c             	cmp    %eax,0xc(%ebp)
456976:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
45697d:	74 04                	je     0x456983
45697f:	33 f6                	xor    %esi,%esi
456981:	eb 48                	jmp    0x4569cb
456983:	8b 43 1c             	mov    0x1c(%ebx),%eax
456986:	39 45 fc             	cmp    %eax,-0x4(%ebp)
456989:	74 07                	je     0x456992
45698b:	50                   	push   %eax
45698c:	ff 15 44 06 4b 00    	call   *0x4b0644
456992:	ff 35 1c c4 4a 00    	push   0x4ac41c
456998:	eb 2b                	jmp    0x4569c5
45699a:	39 7d f8             	cmp    %edi,-0x8(%ebp)
45699d:	74 02                	je     0x4569a1
45699f:	33 f6                	xor    %esi,%esi
4569a1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4569a4:	3b 43 1c             	cmp    0x1c(%ebx),%eax
4569a7:	75 22                	jne    0x4569cb
4569a9:	ff 15 3c 06 4b 00    	call   *0x4b063c
4569af:	eb 1a                	jmp    0x4569cb
4569b1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4569b4:	3b 43 1c             	cmp    0x1c(%ebx),%eax
4569b7:	75 06                	jne    0x4569bf
4569b9:	ff 15 3c 06 4b 00    	call   *0x4b063c
4569bf:	ff 35 18 c4 4a 00    	push   0x4ac418
4569c5:	ff 15 c0 07 4b 00    	call   *0x4b07c0
4569cb:	8b 45 10             	mov    0x10(%ebp),%eax
4569ce:	85 c0                	test   %eax,%eax
4569d0:	74 05                	je     0x4569d7
4569d2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4569d5:	89 08                	mov    %ecx,(%eax)
4569d7:	8b c6                	mov    %esi,%eax
4569d9:	5e                   	pop    %esi
4569da:	5f                   	pop    %edi
4569db:	5b                   	pop    %ebx
4569dc:	c9                   	leave
4569dd:	c2 0c 00             	ret    $0xc
4569e0:	55                   	push   %ebp
4569e1:	8b ec                	mov    %esp,%ebp
4569e3:	83 ec 28             	sub    $0x28,%esp
4569e6:	53                   	push   %ebx
4569e7:	56                   	push   %esi
4569e8:	8b 75 08             	mov    0x8(%ebp),%esi
4569eb:	8b 46 04             	mov    0x4(%esi),%eax
4569ee:	3d 67 03 00 00       	cmp    $0x367,%eax
4569f3:	57                   	push   %edi
4569f4:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4569f7:	0f 84 ca 01 00 00    	je     0x456bc7
4569fd:	b9 00 01 00 00       	mov    $0x100,%ecx
456a02:	3b c1                	cmp    %ecx,%eax
456a04:	75 0a                	jne    0x456a10
456a06:	83 7e 08 1b          	cmpl   $0x1b,0x8(%esi)
456a0a:	0f 84 b7 01 00 00    	je     0x456bc7
456a10:	3d 00 02 00 00       	cmp    $0x200,%eax
456a15:	72 07                	jb     0x456a1e
456a17:	3d 09 02 00 00       	cmp    $0x209,%eax
456a1c:	76 16                	jbe    0x456a34
456a1e:	3d a0 00 00 00       	cmp    $0xa0,%eax
456a23:	0f 82 ca 00 00 00    	jb     0x456af3
456a29:	3d a9 00 00 00       	cmp    $0xa9,%eax
456a2e:	0f 87 bf 00 00 00    	ja     0x456af3
456a34:	8b 4d fc             	mov    -0x4(%ebp),%ecx
456a37:	8d 45 08             	lea    0x8(%ebp),%eax
456a3a:	50                   	push   %eax
456a3b:	ff 76 18             	push   0x18(%esi)
456a3e:	ff 76 14             	push   0x14(%esi)
456a41:	e8 92 fe ff ff       	call   0x4568d8
456a46:	8b d8                	mov    %eax,%ebx
456a48:	33 ff                	xor    %edi,%edi
456a4a:	3b df                	cmp    %edi,%ebx
456a4c:	0f 84 70 01 00 00    	je     0x456bc2
456a52:	39 7d 08             	cmp    %edi,0x8(%ebp)
456a55:	0f 84 87 00 00 00    	je     0x456ae2
456a5b:	81 7e 04 01 02 00 00 	cmpl   $0x201,0x4(%esi)
456a62:	74 14                	je     0x456a78
456a64:	8b 46 04             	mov    0x4(%esi),%eax
456a67:	6a 01                	push   $0x1
456a69:	50                   	push   %eax
456a6a:	50                   	push   %eax
456a6b:	57                   	push   %edi
456a6c:	56                   	push   %esi
456a6d:	ff 15 a8 07 4b 00    	call   *0x4b07a8
456a73:	e9 4a 01 00 00       	jmp    0x456bc2
456a78:	0f b7 46 18          	movzwl 0x18(%esi),%eax
456a7c:	0f b7 4e 14          	movzwl 0x14(%esi),%ecx
456a80:	c1 e0 10             	shl    $0x10,%eax
456a83:	0b c1                	or     %ecx,%eax
456a85:	50                   	push   %eax
456a86:	57                   	push   %edi
456a87:	68 84 00 00 00       	push   $0x84
456a8c:	53                   	push   %ebx
456a8d:	ff 15 98 08 4b 00    	call   *0x4b0898
456a93:	83 f8 05             	cmp    $0x5,%eax
456a96:	74 30                	je     0x456ac8
456a98:	83 f8 03             	cmp    $0x3,%eax
456a9b:	74 2b                	je     0x456ac8
456a9d:	83 f8 01             	cmp    $0x1,%eax
456aa0:	75 0e                	jne    0x456ab0
456aa2:	ff 76 18             	push   0x18(%esi)
456aa5:	ff 76 14             	push   0x14(%esi)
456aa8:	53                   	push   %ebx