45caae:	50                   	push   %eax
45caaf:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cab5:	8b 45 c8             	mov    -0x38(%ebp),%eax
45cab8:	8d 4d d0             	lea    -0x30(%ebp),%ecx
45cabb:	51                   	push   %ecx
45cabc:	ff 75 14             	push   0x14(%ebp)
45cabf:	8b 30                	mov    (%eax),%esi
45cac1:	50                   	push   %eax
45cac2:	8b 4e 34             	mov    0x34(%esi),%ecx
45cac5:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cacb:	ff 56 34             	call   *0x34(%esi)
45cace:	85 c0                	test   %eax,%eax
45cad0:	79 20                	jns    0x45caf2
45cad2:	8b 45 c8             	mov    -0x38(%ebp),%eax
45cad5:	8d 4d d0             	lea    -0x30(%ebp),%ecx
45cad8:	51                   	push   %ecx
45cad9:	ff 75 14             	push   0x14(%ebp)
45cadc:	8b 30                	mov    (%eax),%esi
45cade:	50                   	push   %eax
45cadf:	8b 4e 34             	mov    0x34(%esi),%ecx
45cae2:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cae8:	ff 56 34             	call   *0x34(%esi)
45caeb:	50                   	push   %eax
45caec:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45caf2:	33 f6                	xor    %esi,%esi
45caf4:	89 75 c8             	mov    %esi,-0x38(%ebp)
45caf7:	8d 45 c8             	lea    -0x38(%ebp),%eax
45cafa:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
45cafe:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
45cb01:	8b d7                	mov    %edi,%edx
45cb03:	50                   	push   %eax
45cb04:	56                   	push   %esi
45cb05:	ff 75 cc             	push   -0x34(%ebp)
45cb08:	e8 13 f4 ff ff       	call   0x45bf20
45cb0d:	85 c0                	test   %eax,%eax
45cb0f:	79 1d                	jns    0x45cb2e
45cb11:	8d 45 c8             	lea    -0x38(%ebp),%eax
45cb14:	8b d7                	mov    %edi,%edx
45cb16:	8b 7d d4             	mov    -0x2c(%ebp),%edi
45cb19:	8b cf                	mov    %edi,%ecx
45cb1b:	50                   	push   %eax
45cb1c:	56                   	push   %esi
45cb1d:	ff 75 cc             	push   -0x34(%ebp)
45cb20:	e8 fb f3 ff ff       	call   0x45bf20
45cb25:	50                   	push   %eax
45cb26:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cb2c:	eb 03                	jmp    0x45cb31
45cb2e:	8b 7d d4             	mov    -0x2c(%ebp),%edi
45cb31:	89 75 d8             	mov    %esi,-0x28(%ebp)
45cb34:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
45cb38:	8d 45 d8             	lea    -0x28(%ebp),%eax
45cb3b:	8b 33                	mov    (%ebx),%esi
45cb3d:	6a 00                	push   $0x0
45cb3f:	50                   	push   %eax
45cb40:	53                   	push   %ebx
45cb41:	8b 4e 28             	mov    0x28(%esi),%ecx
45cb44:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cb4a:	ff 56 28             	call   *0x28(%esi)
45cb4d:	85 c0                	test   %eax,%eax
45cb4f:	79 1c                	jns    0x45cb6d
45cb51:	8b 33                	mov    (%ebx),%esi
45cb53:	8d 45 d8             	lea    -0x28(%ebp),%eax
45cb56:	6a 00                	push   $0x0
45cb58:	50                   	push   %eax
45cb59:	53                   	push   %ebx
45cb5a:	8b 4e 28             	mov    0x28(%esi),%ecx
45cb5d:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cb63:	ff 56 28             	call   *0x28(%esi)
45cb66:	50                   	push   %eax
45cb67:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cb6d:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cb70:	33 db                	xor    %ebx,%ebx
45cb72:	53                   	push   %ebx
45cb73:	50                   	push   %eax
45cb74:	8b 08                	mov    (%eax),%ecx
45cb76:	8b 71 0c             	mov    0xc(%ecx),%esi
45cb79:	8b ce                	mov    %esi,%ecx
45cb7b:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cb81:	ff d6                	call   *%esi
45cb83:	85 c0                	test   %eax,%eax
45cb85:	79 1b                	jns    0x45cba2
45cb87:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cb8a:	53                   	push   %ebx
45cb8b:	50                   	push   %eax
45cb8c:	8b 08                	mov    (%eax),%ecx
45cb8e:	8b 71 0c             	mov    0xc(%ecx),%esi
45cb91:	8b ce                	mov    %esi,%ecx
45cb93:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cb99:	ff d6                	call   *%esi
45cb9b:	50                   	push   %eax
45cb9c:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cba2:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cba5:	8d 4d ac             	lea    -0x54(%ebp),%ecx
45cba8:	d9 ee                	fldz
45cbaa:	dd 55 a4             	fstl   -0x5c(%ebp)
45cbad:	51                   	push   %ecx
45cbae:	dd 5d ac             	fstpl  -0x54(%ebp)
45cbb1:	8b 30                	mov    (%eax),%esi
45cbb3:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45cbb6:	51                   	push   %ecx
45cbb7:	50                   	push   %eax
45cbb8:	8b 4e 14             	mov    0x14(%esi),%ecx
45cbbb:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cbc1:	ff 56 14             	call   *0x14(%esi)
45cbc4:	85 c0                	test   %eax,%eax
45cbc6:	79 21                	jns    0x45cbe9
45cbc8:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cbcb:	8d 4d ac             	lea    -0x54(%ebp),%ecx
45cbce:	51                   	push   %ecx
45cbcf:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45cbd2:	51                   	push   %ecx
45cbd3:	8b 30                	mov    (%eax),%esi
45cbd5:	50                   	push   %eax
45cbd6:	8b 4e 14             	mov    0x14(%esi),%ecx
45cbd9:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cbdf:	ff 56 14             	call   *0x14(%esi)
45cbe2:	50                   	push   %eax
45cbe3:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cbe9:	dd 45 a4             	fldl   -0x5c(%ebp)
45cbec:	d9 ee                	fldz
45cbee:	dd e1                	fucom  %st(1)
45cbf0:	df e0                	fnstsw %ax
45cbf2:	f6 c4 44             	test   $0x44,%ah
45cbf5:	7b 3d                	jnp    0x45cc34
45cbf7:	dd 45 ac             	fldl   -0x54(%ebp)
45cbfa:	dd e1                	fucom  %st(1)
45cbfc:	df e0                	fnstsw %ax
45cbfe:	dd d9                	fstp   %st(1)
45cc00:	f6 c4 44             	test   $0x44,%ah
45cc03:	7b 33                	jnp    0x45cc38
45cc05:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cc08:	83 ec 10             	sub    $0x10,%esp
45cc0b:	8b 30                	mov    (%eax),%esi
45cc0d:	dd 5c 24 08          	fstpl  0x8(%esp)
45cc11:	dd 1c 24             	fstpl  (%esp)
45cc14:	8b 4e 14             	mov    0x14(%esi),%ecx
45cc17:	50                   	push   %eax
45cc18:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cc1e:	ff 56 14             	call   *0x14(%esi)
45cc21:	85 c0                	test   %eax,%eax
45cc23:	79 66                	jns    0x45cc8b
45cc25:	dd 45 ac             	fldl   -0x54(%ebp)
45cc28:	83 ec 10             	sub    $0x10,%esp
45cc2b:	dd 5c 24 08          	fstpl  0x8(%esp)
45cc2f:	dd 45 a4             	fldl   -0x5c(%ebp)
45cc32:	eb 3b                	jmp    0x45cc6f
45cc34:	dd d8                	fstp   %st(0)
45cc36:	eb 02                	jmp    0x45cc3a
45cc38:	dd d9                	fstp   %st(1)
45cc3a:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cc3d:	83 ec 10             	sub    $0x10,%esp
45cc40:	dd d8                	fstp   %st(0)
45cc42:	dd 05 88 42 41 00    	fldl   0x414288
45cc48:	8b 30                	mov    (%eax),%esi
45cc4a:	dd 54 24 08          	fstl   0x8(%esp)
45cc4e:	dd 1c 24             	fstpl  (%esp)
45cc51:	50                   	push   %eax
45cc52:	8b 4e 14             	mov    0x14(%esi),%ecx
45cc55:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cc5b:	ff 56 14             	call   *0x14(%esi)
45cc5e:	85 c0                	test   %eax,%eax
45cc60:	79 29                	jns    0x45cc8b
45cc62:	dd 05 88 42 41 00    	fldl   0x414288
45cc68:	83 ec 10             	sub    $0x10,%esp
45cc6b:	dd 54 24 08          	fstl   0x8(%esp)
45cc6f:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cc72:	dd 1c 24             	fstpl  (%esp)
45cc75:	50                   	push   %eax
45cc76:	8b 30                	mov    (%eax),%esi
45cc78:	8b 4e 14             	mov    0x14(%esi),%ecx
45cc7b:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cc81:	ff 56 14             	call   *0x14(%esi)
45cc84:	50                   	push   %eax
45cc85:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cc8b:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cc8e:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45cc91:	51                   	push   %ecx
45cc92:	89 5d c0             	mov    %ebx,-0x40(%ebp)
45cc95:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45cc98:	89 5d c4             	mov    %ebx,-0x3c(%ebp)
45cc9b:	8b 30                	mov    (%eax),%esi
45cc9d:	51                   	push   %ecx
45cc9e:	50                   	push   %eax
45cc9f:	8b 4e 0c             	mov    0xc(%esi),%ecx
45cca2:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cca8:	ff 56 0c             	call   *0xc(%esi)
45ccab:	85 c0                	test   %eax,%eax
45ccad:	79 21                	jns    0x45ccd0
45ccaf:	8b 45 d0             	mov    -0x30(%ebp),%eax
45ccb2:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45ccb5:	51                   	push   %ecx
45ccb6:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45ccb9:	51                   	push   %ecx
45ccba:	8b 30                	mov    (%eax),%esi
45ccbc:	50                   	push   %eax
45ccbd:	8b 4e 0c             	mov    0xc(%esi),%ecx
45ccc0:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ccc6:	ff 56 0c             	call   *0xc(%esi)
45ccc9:	50                   	push   %eax
45ccca:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45ccd0:	8b 45 d8             	mov    -0x28(%ebp),%eax
45ccd3:	ff 75 c4             	push   -0x3c(%ebp)
45ccd6:	ff 75 c0             	push   -0x40(%ebp)
45ccd9:	8b 08                	mov    (%eax),%ecx
45ccdb:	50                   	push   %eax
45ccdc:	8b 71 10             	mov    0x10(%ecx),%esi
45ccdf:	8b ce                	mov    %esi,%ecx
45cce1:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cce7:	ff d6                	call   *%esi
45cce9:	85 c0                	test   %eax,%eax
45cceb:	79 20                	jns    0x45cd0d
45cced:	8b 45 d8             	mov    -0x28(%ebp),%eax
45ccf0:	ff 75 c4             	push   -0x3c(%ebp)
45ccf3:	ff 75 c0             	push   -0x40(%ebp)
45ccf6:	8b 08                	mov    (%eax),%ecx
45ccf8:	50                   	push   %eax
45ccf9:	8b 71 10             	mov    0x10(%ecx),%esi
45ccfc:	8b ce                	mov    %esi,%ecx
45ccfe:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd04:	ff d6                	call   *%esi
45cd06:	50                   	push   %eax
45cd07:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cd0d:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cd10:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd13:	52                   	push   %edx
45cd14:	50                   	push   %eax
45cd15:	8b 08                	mov    (%eax),%ecx
45cd17:	8b 71 10             	mov    0x10(%ecx),%esi
45cd1a:	8b ce                	mov    %esi,%ecx
45cd1c:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd22:	ff d6                	call   *%esi
45cd24:	85 c0                	test   %eax,%eax
45cd26:	79 1e                	jns    0x45cd46
45cd28:	8b 45 d0             	mov    -0x30(%ebp),%eax
45cd2b:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd2e:	52                   	push   %edx
45cd2f:	50                   	push   %eax
45cd30:	8b 08                	mov    (%eax),%ecx
45cd32:	8b 71 10             	mov    0x10(%ecx),%esi
45cd35:	8b ce                	mov    %esi,%ecx
45cd37:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd3d:	ff d6                	call   *%esi
45cd3f:	50                   	push   %eax
45cd40:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cd46:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cd49:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd4c:	52                   	push   %edx
45cd4d:	50                   	push   %eax
45cd4e:	8b 08                	mov    (%eax),%ecx
45cd50:	8b 71 18             	mov    0x18(%ecx),%esi
45cd53:	8b ce                	mov    %esi,%ecx
45cd55:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd5b:	ff d6                	call   *%esi
45cd5d:	85 c0                	test   %eax,%eax
45cd5f:	79 1e                	jns    0x45cd7f
45cd61:	8b 45 d8             	mov    -0x28(%ebp),%eax
45cd64:	8d 55 dc             	lea    -0x24(%ebp),%edx
45cd67:	52                   	push   %edx
45cd68:	50                   	push   %eax
45cd69:	8b 08                	mov    (%eax),%ecx
45cd6b:	8b 71 18             	mov    0x18(%ecx),%esi
45cd6e:	8b ce                	mov    %esi,%ecx
45cd70:	ff 15 2c 81 4a 00    	call   *0x4a812c
45cd76:	ff d6                	call   *%esi
45cd78:	50                   	push   %eax
45cd79:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45cd7f:	6a 04                	push   $0x4
45cd81:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cd84:	8b cb                	mov    %ebx,%ecx
45cd86:	5a                   	pop    %edx
45cd87:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cd8a:	ba 6c fb 40 00       	mov    $0x40fb6c,%edx
45cd8f:	6a 04                	push   $0x4
45cd91:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cd94:	5a                   	pop    %edx
45cd95:	75 07                	jne    0x45cd9e
45cd97:	41                   	inc    %ecx
45cd98:	3b ca                	cmp    %edx,%ecx
45cd9a:	75 eb                	jne    0x45cd87
45cd9c:	eb 56                	jmp    0x45cdf4
45cd9e:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cda1:	8b cb                	mov    %ebx,%ecx
45cda3:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cda6:	ba 5c fb 40 00       	mov    $0x40fb5c,%edx
45cdab:	6a 04                	push   $0x4
45cdad:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cdb0:	5a                   	pop    %edx
45cdb1:	75 07                	jne    0x45cdba
45cdb3:	41                   	inc    %ecx
45cdb4:	3b ca                	cmp    %edx,%ecx
45cdb6:	75 eb                	jne    0x45cda3
45cdb8:	eb 3a                	jmp    0x45cdf4
45cdba:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cdbd:	8b cb                	mov    %ebx,%ecx
45cdbf:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cdc2:	ba 4c fb 40 00       	mov    $0x40fb4c,%edx
45cdc7:	6a 04                	push   $0x4
45cdc9:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cdcc:	5a                   	pop    %edx
45cdcd:	75 07                	jne    0x45cdd6
45cdcf:	41                   	inc    %ecx
45cdd0:	3b ca                	cmp    %edx,%ecx
45cdd2:	75 eb                	jne    0x45cdbf
45cdd4:	eb 1e                	jmp    0x45cdf4
45cdd6:	8d 75 dc             	lea    -0x24(%ebp),%esi
45cdd9:	8b cb                	mov    %ebx,%ecx
45cddb:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
45cdde:	ba 3c fb 40 00       	mov    $0x40fb3c,%edx
45cde3:	6a 04                	push   $0x4
45cde5:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
45cde8:	5a                   	pop    %edx
45cde9:	0f 85 cb 00 00 00    	jne    0x45ceba
45cdef:	41                   	inc    %ecx
45cdf0:	3b ca                	cmp    %edx,%ecx
45cdf2:	75 e7                	jne    0x45cddb
45cdf4:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
45cdf7:	88 55 fc             	mov    %dl,-0x4(%ebp)
45cdfa:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45cdfd:	8b 07                	mov    (%edi),%eax
45cdff:	51                   	push   %ecx
45ce00:	57                   	push   %edi
45ce01:	8b 70 24             	mov    0x24(%eax),%esi
45ce04:	8b ce                	mov    %esi,%ecx
45ce06:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce0c:	ff d6                	call   *%esi
45ce0e:	85 c0                	test   %eax,%eax
45ce10:	79 1b                	jns    0x45ce2d
45ce12:	8b 07                	mov    (%edi),%eax
45ce14:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45ce17:	51                   	push   %ecx
45ce18:	57                   	push   %edi
45ce19:	8b 70 24             	mov    0x24(%eax),%esi
45ce1c:	8b ce                	mov    %esi,%ecx
45ce1e:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce24:	ff d6                	call   *%esi
45ce26:	50                   	push   %eax
45ce27:	ff 15 b0 75 4a 00    	call   *0x4a75b0
45ce2d:	8b 45 d0             	mov    -0x30(%ebp),%eax
45ce30:	ff 75 d4             	push   -0x2c(%ebp)
45ce33:	50                   	push   %eax
45ce34:	8b 08                	mov    (%eax),%ecx
45ce36:	8b 71 18             	mov    0x18(%ecx),%esi
45ce39:	8b ce                	mov    %esi,%ecx
45ce3b:	ff 15 2c 81 4a 00    	call   *0x4a812c
45ce41:	ff d6                	call   *%esi
45ce43:	85 c0                	test   %eax,%eax
45ce45:	79 1d                	jns    0x45ce64
45ce47:	8b 45 d0             	mov    -0x30(%ebp),%eax
45ce4a:	ff 75 d4             	push   -0x2c(%ebp)
45ce4d:	50                   	push   %eax