45a723:	ff 73 08             	push   0x8(%ebx)
45a726:	8b ce                	mov    %esi,%ecx
45a728:	6a 01                	push   $0x1
45a72a:	6a 00                	push   $0x0
45a72c:	e8 81 5a 00 00       	call   0x4601b2
45a731:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
45a735:	74 17                	je     0x45a74e
45a737:	8b 45 f0             	mov    -0x10(%ebp),%eax
45a73a:	2b 45 e8             	sub    -0x18(%ebp),%eax
45a73d:	57                   	push   %edi
45a73e:	50                   	push   %eax
45a73f:	6a ff                	push   $0xffffffff
45a741:	ff 75 e8             	push   -0x18(%ebp)
45a744:	8b ce                	mov    %esi,%ecx
45a746:	ff 73 08             	push   0x8(%ebx)
45a749:	e8 64 5a 00 00       	call   0x4601b2
45a74e:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
45a752:	74 12                	je     0x45a766
45a754:	57                   	push   %edi
45a755:	6a ff                	push   $0xffffffff
45a757:	ff 73 08             	push   0x8(%ebx)
45a75a:	8b ce                	mov    %esi,%ecx
45a75c:	ff 73 0c             	push   0xc(%ebx)
45a75f:	6a 00                	push   $0x0
45a761:	e8 4c 5a 00 00       	call   0x4601b2
45a766:	33 c0                	xor    %eax,%eax
45a768:	39 45 08             	cmp    %eax,0x8(%ebp)
45a76b:	74 08                	je     0x45a775
45a76d:	8b 0d e8 c3 4a 00    	mov    0x4ac3e8,%ecx
45a773:	01 0b                	add    %ecx,(%ebx)
45a775:	39 45 fc             	cmp    %eax,-0x4(%ebp)
45a778:	74 09                	je     0x45a783
45a77a:	8b 0d ec c3 4a 00    	mov    0x4ac3ec,%ecx
45a780:	01 4b 04             	add    %ecx,0x4(%ebx)
45a783:	39 45 f4             	cmp    %eax,-0xc(%ebp)
45a786:	74 09                	je     0x45a791
45a788:	8b 0d e8 c3 4a 00    	mov    0x4ac3e8,%ecx
45a78e:	29 4b 08             	sub    %ecx,0x8(%ebx)
45a791:	39 45 0c             	cmp    %eax,0xc(%ebp)
45a794:	74 08                	je     0x45a79e
45a796:	a1 ec c3 4a 00       	mov    0x4ac3ec,%eax
45a79b:	29 43 0c             	sub    %eax,0xc(%ebx)
45a79e:	5f                   	pop    %edi
45a79f:	5e                   	pop    %esi
45a7a0:	5b                   	pop    %ebx
45a7a1:	c9                   	leave
45a7a2:	c2 08 00             	ret    $0x8
45a7a5:	8b 41 7c             	mov    0x7c(%ecx),%eax
45a7a8:	8b d0                	mov    %eax,%edx
45a7aa:	81 e2 01 00 40 00    	and    $0x400001,%edx
45a7b0:	81 fa 00 00 40 00    	cmp    $0x400000,%edx
45a7b6:	75 57                	jne    0x45a80f
45a7b8:	8b 51 60             	mov    0x60(%ecx),%edx
45a7bb:	56                   	push   %esi
45a7bc:	57                   	push   %edi
45a7bd:	ff 35 04 c4 4a 00    	push   0x4ac404
45a7c3:	f6 c4 a0             	test   $0xa0,%ah
45a7c6:	ff 35 08 c4 4a 00    	push   0x4ac408
45a7cc:	8b 44 24 18          	mov    0x18(%esp),%eax
45a7d0:	74 1a                	je     0x45a7ec
45a7d2:	8b 78 0c             	mov    0xc(%eax),%edi
45a7d5:	8b 70 04             	mov    0x4(%eax),%esi
45a7d8:	2b 79 64             	sub    0x64(%ecx),%edi
45a7db:	8b 00                	mov    (%eax),%eax
45a7dd:	2b fe                	sub    %esi,%edi
45a7df:	2b fa                	sub    %edx,%edi
45a7e1:	57                   	push   %edi
45a7e2:	03 f2                	add    %edx,%esi
45a7e4:	6a 03                	push   $0x3
45a7e6:	40                   	inc    %eax
45a7e7:	56                   	push   %esi
45a7e8:	40                   	inc    %eax
45a7e9:	50                   	push   %eax
45a7ea:	eb 18                	jmp    0x45a804
45a7ec:	8b 78 08             	mov    0x8(%eax),%edi
45a7ef:	2b 79 64             	sub    0x64(%ecx),%edi
45a7f2:	8b 30                	mov    (%eax),%esi
45a7f4:	8b 40 04             	mov    0x4(%eax),%eax
45a7f7:	2b fa                	sub    %edx,%edi
45a7f9:	2b fe                	sub    %esi,%edi
45a7fb:	6a 03                	push   $0x3
45a7fd:	40                   	inc    %eax
45a7fe:	57                   	push   %edi
45a7ff:	40                   	inc    %eax
45a800:	50                   	push   %eax
45a801:	03 d6                	add    %esi,%edx
45a803:	52                   	push   %edx
45a804:	8b 4c 24 24          	mov    0x24(%esp),%ecx
45a808:	e8 f1 59 00 00       	call   0x4601fe
45a80d:	5f                   	pop    %edi
45a80e:	5e                   	pop    %esi
45a80f:	c2 08 00             	ret    $0x8
45a812:	56                   	push   %esi
45a813:	57                   	push   %edi
45a814:	8b f1                	mov    %ecx,%esi
45a816:	e8 37 e8 fa ff       	call   0x409052
45a81b:	8b f8                	mov    %eax,%edi
45a81d:	e8 05 31 01 00       	call   0x46d927
45a822:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
45a826:	83 f9 ff             	cmp    $0xffffffff,%ecx
45a829:	75 35                	jne    0x45a860
45a82b:	83 60 7c 00          	andl   $0x0,0x7c(%eax)
45a82f:	f6 46 78 08          	testb  $0x8,0x78(%esi)
45a833:	74 1b                	je     0x45a850
45a835:	6a 00                	push   $0x0
45a837:	68 01 e0 00 00       	push   $0xe001
45a83c:	68 75 03 00 00       	push   $0x375
45a841:	ff 77 1c             	push   0x1c(%edi)
45a844:	ff 15 98 08 4b 00    	call   *0x4b0898
45a84a:	83 66 78 f7          	andl   $0xfffffff7,0x78(%esi)
45a84e:	eb 48                	jmp    0x45a898
45a850:	68 00 e0 00 00       	push   $0xe000
45a855:	ff 76 1c             	push   0x1c(%esi)
45a858:	ff 15 f0 05 4b 00    	call   *0x4b05f0
45a85e:	eb 0b                	jmp    0x45a86b
45a860:	f6 46 78 08          	testb  $0x8,0x78(%esi)
45a864:	74 09                	je     0x45a86f
45a866:	39 48 78             	cmp    %ecx,0x78(%eax)
45a869:	75 04                	jne    0x45a86f
45a86b:	33 c0                	xor    %eax,%eax
45a86d:	eb 2c                	jmp    0x45a89b
45a86f:	6a 00                	push   $0x0
45a871:	51                   	push   %ecx
45a872:	68 62 03 00 00       	push   $0x362
45a877:	89 70 7c             	mov    %esi,0x7c(%eax)
45a87a:	ff 77 1c             	push   0x1c(%edi)
45a87d:	ff 15 98 08 4b 00    	call   *0x4b0898
45a883:	83 4e 78 08          	orl    $0x8,0x78(%esi)
45a887:	68 c8 00 00 00       	push   $0xc8
45a88c:	68 01 e0 00 00       	push   $0xe001
45a891:	8b ce                	mov    %esi,%ecx
45a893:	e8 b9 f6 ff ff       	call   0x459f51
45a898:	33 c0                	xor    %eax,%eax
45a89a:	40                   	inc    %eax
45a89b:	5f                   	pop    %edi
45a89c:	5e                   	pop    %esi
45a89d:	c2 04 00             	ret    $0x4
45a8a0:	55                   	push   %ebp
45a8a1:	8b ec                	mov    %esp,%ebp
45a8a3:	83 ec 48             	sub    $0x48,%esp
45a8a6:	56                   	push   %esi
45a8a7:	57                   	push   %edi
45a8a8:	8b 7d 08             	mov    0x8(%ebp),%edi
45a8ab:	57                   	push   %edi
45a8ac:	8b f1                	mov    %ecx,%esi
45a8ae:	e8 6c 89 fe ff       	call   0x44321f
45a8b3:	85 c0                	test   %eax,%eax
45a8b5:	0f 85 d5 01 00 00    	jne    0x45aa90
45a8bb:	8b 7f 04             	mov    0x4(%edi),%edi
45a8be:	53                   	push   %ebx
45a8bf:	8b ce                	mov    %esi,%ecx
45a8c1:	e8 8c e7 fa ff       	call   0x409052
45a8c6:	f6 46 7c 20          	testb  $0x20,0x7c(%esi)
45a8ca:	89 45 f0             	mov    %eax,-0x10(%ebp)
45a8cd:	bb 01 02 00 00       	mov    $0x201,%ebx
45a8d2:	75 10                	jne    0x45a8e4
45a8d4:	3b fb                	cmp    %ebx,%edi
45a8d6:	74 0c                	je     0x45a8e4
45a8d8:	81 ff 02 02 00 00    	cmp    $0x202,%edi
45a8de:	0f 85 59 01 00 00    	jne    0x45aa3d
45a8e4:	81 ff 00 02 00 00    	cmp    $0x200,%edi
45a8ea:	72 08                	jb     0x45a8f4
45a8ec:	81 ff 09 02 00 00    	cmp    $0x209,%edi
45a8f2:	76 18                	jbe    0x45a90c
45a8f4:	81 ff a0 00 00 00    	cmp    $0xa0,%edi
45a8fa:	0f 82 3d 01 00 00    	jb     0x45aa3d
45a900:	81 ff a9 00 00 00    	cmp    $0xa9,%edi
45a906:	0f 87 31 01 00 00    	ja     0x45aa3d
45a90c:	e8 16 30 01 00       	call   0x46d927
45a911:	89 45 f4             	mov    %eax,-0xc(%ebp)
45a914:	8b 45 08             	mov    0x8(%ebp),%eax
45a917:	8b 48 14             	mov    0x14(%eax),%ecx
45a91a:	8b 40 18             	mov    0x18(%eax),%eax
45a91d:	89 45 ec             	mov    %eax,-0x14(%ebp)
45a920:	8d 45 e8             	lea    -0x18(%ebp),%eax
45a923:	50                   	push   %eax
45a924:	ff 76 1c             	push   0x1c(%esi)
45a927:	89 4d e8             	mov    %ecx,-0x18(%ebp)
45a92a:	ff 15 b8 08 4b 00    	call   *0x4b08b8
45a930:	6a 30                	push   $0x30
45a932:	8d 45 b8             	lea    -0x48(%ebp),%eax
45a935:	6a 00                	push   $0x0
45a937:	50                   	push   %eax
45a938:	e8 03 d9 fb ff       	call   0x418240
45a93d:	8b 06                	mov    (%esi),%eax
45a93f:	83 c4 0c             	add    $0xc,%esp
45a942:	8d 4d b8             	lea    -0x48(%ebp),%ecx
45a945:	51                   	push   %ecx
45a946:	ff 75 ec             	push   -0x14(%ebp)
45a949:	8b ce                	mov    %esi,%ecx
45a94b:	ff 75 e8             	push   -0x18(%ebp)
45a94e:	c7 45 b8 28 00 00 00 	movl   $0x28,-0x48(%ebp)
45a955:	ff 50 6c             	call   *0x6c(%eax)
45a958:	83 7d dc ff          	cmpl   $0xffffffff,-0x24(%ebp)
45a95c:	89 45 fc             	mov    %eax,-0x4(%ebp)
45a95f:	74 09                	je     0x45a96a
45a961:	ff 75 dc             	push   -0x24(%ebp)
45a964:	e8 35 ba fb ff       	call   0x41639e
45a969:	59                   	pop    %ecx
45a96a:	3b fb                	cmp    %ebx,%edi
45a96c:	75 0f                	jne    0x45a97d
45a96e:	f6 45 bf 80          	testb  $0x80,-0x41(%ebp)
45a972:	74 09                	je     0x45a97d
45a974:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
45a97b:	eb 1e                	jmp    0x45a99b
45a97d:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
45a981:	3b fb                	cmp    %ebx,%edi
45a983:	74 16                	je     0x45a99b
45a985:	6a 01                	push   $0x1
45a987:	ff 15 a4 07 4b 00    	call   *0x4b07a4
45a98d:	66 85 c0             	test   %ax,%ax
45a990:	7d 09                	jge    0x45a99b
45a992:	8b 45 f4             	mov    -0xc(%ebp),%eax
45a995:	8b 40 78             	mov    0x78(%eax),%eax
45a998:	89 45 fc             	mov    %eax,-0x4(%ebp)
45a99b:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45a99f:	7c 66                	jl     0x45aa07
45a9a1:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
45a9a5:	75 60                	jne    0x45aa07
45a9a7:	81 ff 02 02 00 00    	cmp    $0x202,%edi
45a9ad:	75 18                	jne    0x45a9c7
45a9af:	8b 06                	mov    (%esi),%eax
45a9b1:	6a ff                	push   $0xffffffff
45a9b3:	8b ce                	mov    %esi,%ecx
45a9b5:	ff 90 60 01 00 00    	call   *0x160(%eax)
45a9bb:	68 c8 00 00 00       	push   $0xc8
45a9c0:	68 01 e0 00 00       	push   $0xe001
45a9c5:	eb 28                	jmp    0x45a9ef
45a9c7:	f6 46 78 08          	testb  $0x8,0x78(%esi)
45a9cb:	75 2b                	jne    0x45a9f8
45a9cd:	6a 01                	push   $0x1
45a9cf:	ff 15 a4 07 4b 00    	call   *0x4b07a4
45a9d5:	66 85 c0             	test   %ax,%ax
45a9d8:	7c 1e                	jl     0x45a9f8
45a9da:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a9dd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45a9e0:	3b 41 78             	cmp    0x78(%ecx),%eax
45a9e3:	74 4f                	je     0x45aa34
45a9e5:	68 2c 01 00 00       	push   $0x12c
45a9ea:	68 00 e0 00 00       	push   $0xe000
45a9ef:	8b ce                	mov    %esi,%ecx
45a9f1:	e8 5b f5 ff ff       	call   0x459f51
45a9f6:	eb 3c                	jmp    0x45aa34
45a9f8:	ff 75 fc             	push   -0x4(%ebp)
45a9fb:	8b 06                	mov    (%esi),%eax
45a9fd:	8b ce                	mov    %esi,%ecx
45a9ff:	ff 90 60 01 00 00    	call   *0x160(%eax)
45aa05:	eb 2d                	jmp    0x45aa34
45aa07:	6a 01                	push   $0x1
45aa09:	ff 15 a4 07 4b 00    	call   *0x4b07a4
45aa0f:	66 85 c0             	test   %ax,%ax
45aa12:	7d 06                	jge    0x45aa1a
45aa14:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
45aa18:	74 1a                	je     0x45aa34
45aa1a:	8b 06                	mov    (%esi),%eax
45aa1c:	6a ff                	push   $0xffffffff
45aa1e:	8b ce                	mov    %esi,%ecx
45aa20:	ff 90 60 01 00 00    	call   *0x160(%eax)
45aa26:	68 01 e0 00 00       	push   $0xe001
45aa2b:	ff 76 1c             	push   0x1c(%esi)
45aa2e:	ff 15 f0 05 4b 00    	call   *0x4b05f0
45aa34:	8b 45 fc             	mov    -0x4(%ebp),%eax
45aa37:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45aa3a:	89 41 78             	mov    %eax,0x78(%ecx)
45aa3d:	8b ce                	mov    %esi,%ecx
45aa3f:	e8 47 ad fe ff       	call   0x44578b
45aa44:	85 c0                	test   %eax,%eax
45aa46:	5b                   	pop    %ebx
45aa47:	74 06                	je     0x45aa4f
45aa49:	83 78 64 00          	cmpl   $0x0,0x64(%eax)
45aa4d:	75 46                	jne    0x45aa95
45aa4f:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
45aa53:	74 22                	je     0x45aa77
45aa55:	8b 7d f0             	mov    -0x10(%ebp),%edi
45aa58:	ff 75 08             	push   0x8(%ebp)
45aa5b:	8b 07                	mov    (%edi),%eax
45aa5d:	8b cf                	mov    %edi,%ecx
45aa5f:	ff 90 00 01 00 00    	call   *0x100(%eax)
45aa65:	85 c0                	test   %eax,%eax
45aa67:	75 27                	jne    0x45aa90
45aa69:	8b cf                	mov    %edi,%ecx
45aa6b:	e8 dc ac fe ff       	call   0x44574c
45aa70:	85 c0                	test   %eax,%eax
45aa72:	89 45 f0             	mov    %eax,-0x10(%ebp)
45aa75:	75 de                	jne    0x45aa55
45aa77:	ff 76 1c             	push   0x1c(%esi)
45aa7a:	ff 15 64 07 4b 00    	call   *0x4b0764
45aa80:	85 c0                	test   %eax,%eax
45aa82:	74 11                	je     0x45aa95
45aa84:	ff 75 08             	push   0x8(%ebp)
45aa87:	8b ce                	mov    %esi,%ecx
45aa89:	e8 b3 92 fe ff       	call   0x443d41
45aa8e:	eb 07                	jmp    0x45aa97
45aa90:	33 c0                	xor    %eax,%eax
45aa92:	40                   	inc    %eax
45aa93:	eb 02                	jmp    0x45aa97
45aa95:	33 c0                	xor    %eax,%eax
45aa97:	5f                   	pop    %edi
45aa98:	5e                   	pop    %esi
45aa99:	c9                   	leave
45aa9a:	c2 04 00             	ret    $0x4
45aa9d:	55                   	push   %ebp
45aa9e:	8b ec                	mov    %esp,%ebp
45aaa0:	51                   	push   %ecx
45aaa1:	53                   	push   %ebx
45aaa2:	56                   	push   %esi
45aaa3:	57                   	push   %edi
45aaa4:	8b 7d 08             	mov    0x8(%ebp),%edi
45aaa7:	83 ff 2b             	cmp    $0x2b,%edi
45aaaa:	89 4d fc             	mov    %ecx,-0x4(%ebp)
45aaad:	0f 82 c8 00 00 00    	jb     0x45ab7b
45aab3:	83 ff 2f             	cmp    $0x2f,%edi
45aab6:	bb 11 01 00 00       	mov    $0x111,%ebx
45aabb:	76 12                	jbe    0x45aacf
45aabd:	83 ff 39             	cmp    $0x39,%edi
45aac0:	74 0d                	je     0x45aacf
45aac2:	83 ff 4e             	cmp    $0x4e,%edi
45aac5:	74 08                	je     0x45aacf
45aac7:	3b fb                	cmp    %ebx,%edi
45aac9:	0f 85 ac 00 00 00    	jne    0x45ab7b
45aacf:	8b 01                	mov    (%ecx),%eax
45aad1:	8b 75 10             	mov    0x10(%ebp),%esi
45aad4:	8d 4d 10             	lea    0x10(%ebp),%ecx
45aad7:	51                   	push   %ecx
45aad8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45aadb:	56                   	push   %esi
45aadc:	ff 75 0c             	push   0xc(%ebp)
45aadf:	57                   	push   %edi
45aae0:	ff 90 0c 01 00 00    	call   *0x10c(%eax)
45aae6:	85 c0                	test   %eax,%eax
45aae8:	74 08                	je     0x45aaf2
45aaea:	8b 45 10             	mov    0x10(%ebp),%eax
45aaed:	e9 95 00 00 00       	jmp    0x45ab87
45aaf2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45aaf5:	8b 41 50             	mov    0x50(%ecx),%eax
45aaf8:	85 c0                	test   %eax,%eax
45aafa:	74 14                	je     0x45ab10
45aafc:	3b fb                	cmp    %ebx,%edi
45aafe:	75 10                	jne    0x45ab10
45ab00:	56                   	push   %esi
45ab01:	ff 75 0c             	push   0xc(%ebp)
45ab04:	53                   	push   %ebx
45ab05:	ff 70 1c             	push   0x1c(%eax)
45ab08:	ff 15 98 08 4b 00    	call   *0x4b0898
45ab0e:	eb 77                	jmp    0x45ab87
45ab10:	e8 3d e5 fa ff       	call   0x409052
45ab15:	56                   	push   %esi
45ab16:	ff 75 0c             	push   0xc(%ebp)
45ab19:	57                   	push   %edi
45ab1a:	ff 70 1c             	push   0x1c(%eax)