410a62:	33 ff                	xor    %edi,%edi
410a64:	e8 20 e2 03 00       	call   0x44ec89
410a69:	8b 45 08             	mov    0x8(%ebp),%eax
410a6c:	ff b0 54 ff ff ff    	push   -0xac(%eax)
410a72:	89 7d fc             	mov    %edi,-0x4(%ebp)
410a75:	ff 15 60 06 4b 00    	call   *0x4b0660
410a7b:	50                   	push   %eax
410a7c:	8d 4d dc             	lea    -0x24(%ebp),%ecx
410a7f:	e8 e3 e8 03 00       	call   0x44f367
410a84:	8a 5d 14             	mov    0x14(%ebp),%bl
410a87:	f6 c3 04             	test   $0x4,%bl
410a8a:	74 5c                	je     0x410ae8
410a8c:	8b 45 0c             	mov    0xc(%ebp),%eax
410a8f:	8b 08                	mov    (%eax),%ecx
410a91:	8b 40 04             	mov    0x4(%eax),%eax
410a94:	89 45 f0             	mov    %eax,-0x10(%ebp)
410a97:	8d 45 ec             	lea    -0x14(%ebp),%eax
410a9a:	89 4d ec             	mov    %ecx,-0x14(%ebp)
410a9d:	50                   	push   %eax
410a9e:	8d 4d dc             	lea    -0x24(%ebp),%ecx
410aa1:	e8 10 f3 04 00       	call   0x45fdb6
410aa6:	f6 c3 02             	test   $0x2,%bl
410aa9:	74 28                	je     0x410ad3
410aab:	ff 75 ec             	push   -0x14(%ebp)
410aae:	e8 e6 80 00 00       	call   0x418b99
410ab3:	8b 75 10             	mov    0x10(%ebp),%esi
410ab6:	ff 75 f0             	push   -0x10(%ebp)
410ab9:	89 45 0c             	mov    %eax,0xc(%ebp)
410abc:	db 45 0c             	fildl  0xc(%ebp)
410abf:	d9 1e                	fstps  (%esi)
410ac1:	e8 d3 80 00 00       	call   0x418b99
410ac6:	89 45 10             	mov    %eax,0x10(%ebp)
410ac9:	db 45 10             	fildl  0x10(%ebp)
410acc:	59                   	pop    %ecx
410acd:	59                   	pop    %ecx
410ace:	d9 5e 04             	fstps  0x4(%esi)
410ad1:	eb 79                	jmp    0x410b4c
410ad3:	f6 c3 01             	test   $0x1,%bl
410ad6:	74 6f                	je     0x410b47
410ad8:	db 45 ec             	fildl  -0x14(%ebp)
410adb:	8b 45 10             	mov    0x10(%ebp),%eax
410ade:	d9 18                	fstps  (%eax)
410ae0:	db 45 f0             	fildl  -0x10(%ebp)
410ae3:	d9 58 04             	fstps  0x4(%eax)
410ae6:	eb 64                	jmp    0x410b4c
410ae8:	f6 c3 08             	test   $0x8,%bl
410aeb:	74 5a                	je     0x410b47
410aed:	8b 75 10             	mov    0x10(%ebp),%esi
410af0:	d9 06                	flds   (%esi)
410af2:	e8 f5 62 00 00       	call   0x416dec
410af7:	d9 46 04             	flds   0x4(%esi)
410afa:	89 45 ec             	mov    %eax,-0x14(%ebp)
410afd:	e8 ea 62 00 00       	call   0x416dec
410b02:	89 45 f0             	mov    %eax,-0x10(%ebp)
410b05:	8d 45 ec             	lea    -0x14(%ebp),%eax
410b08:	50                   	push   %eax
410b09:	8d 4d dc             	lea    -0x24(%ebp),%ecx
410b0c:	e8 17 f2 04 00       	call   0x45fd28
410b11:	f6 c3 02             	test   $0x2,%bl
410b14:	74 1c                	je     0x410b32
410b16:	ff 75 ec             	push   -0x14(%ebp)
410b19:	e8 7b 80 00 00       	call   0x418b99
410b1e:	8b 75 0c             	mov    0xc(%ebp),%esi
410b21:	ff 75 f0             	push   -0x10(%ebp)
410b24:	89 06                	mov    %eax,(%esi)
410b26:	e8 6e 80 00 00       	call   0x418b99
410b2b:	59                   	pop    %ecx
410b2c:	59                   	pop    %ecx
410b2d:	89 46 04             	mov    %eax,0x4(%esi)
410b30:	eb 1a                	jmp    0x410b4c
410b32:	f6 c3 01             	test   $0x1,%bl
410b35:	74 10                	je     0x410b47
410b37:	8b 45 0c             	mov    0xc(%ebp),%eax
410b3a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
410b3d:	89 08                	mov    %ecx,(%eax)
410b3f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
410b42:	89 48 04             	mov    %ecx,0x4(%eax)
410b45:	eb 05                	jmp    0x410b4c
410b47:	bf 57 00 07 80       	mov    $0x80070057,%edi
410b4c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
410b50:	8d 4d dc             	lea    -0x24(%ebp),%ecx
410b53:	e8 8d e8 03 00       	call   0x44f3e5
410b58:	8b 4d f4             	mov    -0xc(%ebp),%ecx
410b5b:	8b c7                	mov    %edi,%eax
410b5d:	5f                   	pop    %edi
410b5e:	5e                   	pop    %esi
410b5f:	5b                   	pop    %ebx
410b60:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
410b67:	c9                   	leave
410b68:	c2 10 00             	ret    $0x10
410b6b:	8b 44 24 04          	mov    0x4(%esp),%eax
410b6f:	05 34 ff ff ff       	add    $0xffffff34,%eax
410b74:	50                   	push   %eax
410b75:	ff 15 a4 02 4b 00    	call   *0x4b02a4
410b7b:	c2 04 00             	ret    $0x4
410b7e:	55                   	push   %ebp
410b7f:	8b ec                	mov    %esp,%ebp
410b81:	83 ec 38             	sub    $0x38,%esp
410b84:	56                   	push   %esi
410b85:	57                   	push   %edi
410b86:	8b 7d 08             	mov    0x8(%ebp),%edi
410b89:	81 c7 2c ff ff ff    	add    $0xffffff2c,%edi
410b8f:	33 f6                	xor    %esi,%esi
410b91:	39 b7 84 00 00 00    	cmp    %esi,0x84(%edi)
410b97:	74 07                	je     0x410ba0
410b99:	33 c0                	xor    %eax,%eax
410b9b:	e9 f1 00 00 00       	jmp    0x410c91
410ba0:	39 b7 8c 00 00 00    	cmp    %esi,0x8c(%edi)
410ba6:	53                   	push   %ebx
410ba7:	8b 5d 0c             	mov    0xc(%ebp),%ebx
410baa:	75 32                	jne    0x410bde
410bac:	8d 45 c8             	lea    -0x38(%ebp),%eax
410baf:	50                   	push   %eax
410bb0:	8b cf                	mov    %edi,%ecx
410bb2:	c7 45 c8 02 00 00 00 	movl   $0x2,-0x38(%ebp)
410bb9:	89 5d cc             	mov    %ebx,-0x34(%ebp)
410bbc:	89 75 d0             	mov    %esi,-0x30(%ebp)
410bbf:	89 75 d4             	mov    %esi,-0x2c(%ebp)
410bc2:	89 75 d8             	mov    %esi,-0x28(%ebp)
410bc5:	89 75 e0             	mov    %esi,-0x20(%ebp)
410bc8:	89 75 e4             	mov    %esi,-0x1c(%ebp)
410bcb:	89 75 e8             	mov    %esi,-0x18(%ebp)
410bce:	e8 97 e0 ff ff       	call   0x40ec6a
410bd3:	8b 45 e0             	mov    -0x20(%ebp),%eax
410bd6:	3b c6                	cmp    %esi,%eax
410bd8:	0f 85 b2 00 00 00    	jne    0x410c90
410bde:	39 9f 98 00 00 00    	cmp    %ebx,0x98(%edi)
410be4:	0f 85 a4 00 00 00    	jne    0x410c8e
410bea:	8d 87 a8 00 00 00    	lea    0xa8(%edi),%eax
410bf0:	50                   	push   %eax
410bf1:	ff 15 f4 04 4b 00    	call   *0x4b04f4
410bf7:	8b 47 4c             	mov    0x4c(%edi),%eax
410bfa:	8d 55 08             	lea    0x8(%ebp),%edx
410bfd:	52                   	push   %edx
410bfe:	68 0c 4e 49 00       	push   $0x494e0c
410c03:	89 75 08             	mov    %esi,0x8(%ebp)
410c06:	8b 08                	mov    (%eax),%ecx
410c08:	50                   	push   %eax
410c09:	ff 11                	call   *(%ecx)
410c0b:	85 c0                	test   %eax,%eax
410c0d:	7c 7f                	jl     0x410c8e
410c0f:	6a 20                	push   $0x20
410c11:	8d 45 cc             	lea    -0x34(%ebp),%eax
410c14:	56                   	push   %esi
410c15:	50                   	push   %eax
410c16:	e8 25 76 00 00       	call   0x418240
410c1b:	6a 10                	push   $0x10
410c1d:	8d 45 ec             	lea    -0x14(%ebp),%eax
410c20:	56                   	push   %esi
410c21:	50                   	push   %eax
410c22:	e8 19 76 00 00       	call   0x418240
410c27:	8b 45 08             	mov    0x8(%ebp),%eax
410c2a:	8b 10                	mov    (%eax),%edx
410c2c:	83 c4 18             	add    $0x18,%esp
410c2f:	8d 4d fc             	lea    -0x4(%ebp),%ecx
410c32:	51                   	push   %ecx
410c33:	8d 4d cc             	lea    -0x34(%ebp),%ecx
410c36:	51                   	push   %ecx
410c37:	8d 8f a8 00 00 00    	lea    0xa8(%edi),%ecx
410c3d:	51                   	push   %ecx
410c3e:	8d 4d ec             	lea    -0x14(%ebp),%ecx
410c41:	51                   	push   %ecx
410c42:	6a 02                	push   $0x2
410c44:	56                   	push   %esi
410c45:	68 ac 4b 49 00       	push   $0x494bac
410c4a:	53                   	push   %ebx
410c4b:	50                   	push   %eax
410c4c:	ff 52 18             	call   *0x18(%edx)
410c4f:	39 75 d0             	cmp    %esi,-0x30(%ebp)
410c52:	8b 1d 08 05 4b 00    	mov    0x4b0508,%ebx
410c58:	89 45 0c             	mov    %eax,0xc(%ebp)
410c5b:	74 05                	je     0x410c62
410c5d:	ff 75 d0             	push   -0x30(%ebp)
410c60:	ff d3                	call   *%ebx
410c62:	39 75 d4             	cmp    %esi,-0x2c(%ebp)
410c65:	74 05                	je     0x410c6c
410c67:	ff 75 d4             	push   -0x2c(%ebp)
410c6a:	ff d3                	call   *%ebx
410c6c:	39 75 d8             	cmp    %esi,-0x28(%ebp)
410c6f:	74 05                	je     0x410c76
410c71:	ff 75 d8             	push   -0x28(%ebp)
410c74:	ff d3                	call   *%ebx
410c76:	8b 45 08             	mov    0x8(%ebp),%eax
410c79:	8b 08                	mov    (%eax),%ecx
410c7b:	50                   	push   %eax
410c7c:	ff 51 08             	call   *0x8(%ecx)
410c7f:	39 75 0c             	cmp    %esi,0xc(%ebp)
410c82:	7c 0a                	jl     0x410c8e
410c84:	c7 87 a4 00 00 00 01 	movl   $0x1,0xa4(%edi)
410c8b:	00 00 00
410c8e:	33 c0                	xor    %eax,%eax
410c90:	5b                   	pop    %ebx
410c91:	5f                   	pop    %edi
410c92:	5e                   	pop    %esi
410c93:	c9                   	leave
410c94:	c2 08 00             	ret    $0x8
410c97:	55                   	push   %ebp
410c98:	8b ec                	mov    %esp,%ebp
410c9a:	83 ec 24             	sub    $0x24,%esp
410c9d:	8b 4d 08             	mov    0x8(%ebp),%ecx
410ca0:	56                   	push   %esi
410ca1:	81 c1 2c ff ff ff    	add    $0xffffff2c,%ecx
410ca7:	33 f6                	xor    %esi,%esi
410ca9:	39 b1 84 00 00 00    	cmp    %esi,0x84(%ecx)
410caf:	75 37                	jne    0x410ce8
410cb1:	39 b1 8c 00 00 00    	cmp    %esi,0x8c(%ecx)
410cb7:	75 2f                	jne    0x410ce8
410cb9:	8b 45 0c             	mov    0xc(%ebp),%eax
410cbc:	89 45 e0             	mov    %eax,-0x20(%ebp)
410cbf:	8d 45 dc             	lea    -0x24(%ebp),%eax
410cc2:	50                   	push   %eax
410cc3:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
410cca:	89 75 e4             	mov    %esi,-0x1c(%ebp)
410ccd:	89 75 e8             	mov    %esi,-0x18(%ebp)
410cd0:	89 75 ec             	mov    %esi,-0x14(%ebp)
410cd3:	89 75 f4             	mov    %esi,-0xc(%ebp)
410cd6:	89 75 f8             	mov    %esi,-0x8(%ebp)
410cd9:	89 75 fc             	mov    %esi,-0x4(%ebp)
410cdc:	e8 89 df ff ff       	call   0x40ec6a
410ce1:	8b 45 f4             	mov    -0xc(%ebp),%eax
410ce4:	3b c6                	cmp    %esi,%eax
410ce6:	75 02                	jne    0x410cea
410ce8:	33 c0                	xor    %eax,%eax
410cea:	5e                   	pop    %esi
410ceb:	c9                   	leave
410cec:	c2 08 00             	ret    $0x8
410cef:	55                   	push   %ebp
410cf0:	8b ec                	mov    %esp,%ebp
410cf2:	83 ec 24             	sub    $0x24,%esp
410cf5:	ff 75 28             	push   0x28(%ebp)
410cf8:	8d 4d dc             	lea    -0x24(%ebp),%ecx
410cfb:	ff 75 24             	push   0x24(%ebp)
410cfe:	ff 75 1c             	push   0x1c(%ebp)
410d01:	ff 75 0c             	push   0xc(%ebp)
410d04:	6a 00                	push   $0x0
410d06:	e8 0b f1 ff ff       	call   0x40fe16
410d0b:	8b 4d 08             	mov    0x8(%ebp),%ecx
410d0e:	8d 45 dc             	lea    -0x24(%ebp),%eax
410d11:	50                   	push   %eax
410d12:	81 c1 28 ff ff ff    	add    $0xffffff28,%ecx
410d18:	e8 4d df ff ff       	call   0x40ec6a
410d1d:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
410d21:	74 09                	je     0x410d2c
410d23:	ff 75 20             	push   0x20(%ebp)
410d26:	ff 15 f4 04 4b 00    	call   *0x4b04f4
410d2c:	8b 45 f4             	mov    -0xc(%ebp),%eax
410d2f:	c9                   	leave
410d30:	c2 24 00             	ret    $0x24
410d33:	56                   	push   %esi
410d34:	8b f1                	mov    %ecx,%esi
410d36:	e8 1a d5 ff ff       	call   0x40e255
410d3b:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
410d40:	74 07                	je     0x410d49
410d42:	56                   	push   %esi
410d43:	e8 38 f3 02 00       	call   0x440080
410d48:	59                   	pop    %ecx
410d49:	8b c6                	mov    %esi,%eax
410d4b:	5e                   	pop    %esi
410d4c:	c2 04 00             	ret    $0x4
410d4f:	55                   	push   %ebp
410d50:	8b ec                	mov    %esp,%ebp
410d52:	51                   	push   %ecx
410d53:	56                   	push   %esi
410d54:	8b f1                	mov    %ecx,%esi
410d56:	81 7e 08 01 00 01 80 	cmpl   $0x80010001,0x8(%esi)
410d5d:	74 70                	je     0x410dcf
410d5f:	8b 06                	mov    (%esi),%eax
410d61:	85 c0                	test   %eax,%eax
410d63:	74 6a                	je     0x410dcf
410d65:	8b 40 4c             	mov    0x4c(%eax),%eax
410d68:	8b 08                	mov    (%eax),%ecx
410d6a:	8d 55 fc             	lea    -0x4(%ebp),%edx
410d6d:	52                   	push   %edx
410d6e:	68 fc 45 49 00       	push   $0x4945fc
410d73:	50                   	push   %eax
410d74:	ff 11                	call   *(%ecx)
410d76:	85 c0                	test   %eax,%eax
410d78:	7c 24                	jl     0x410d9e
410d7a:	8b 45 fc             	mov    -0x4(%ebp),%eax
410d7d:	8b 08                	mov    (%eax),%ecx
410d7f:	8d 56 10             	lea    0x10(%esi),%edx
410d82:	52                   	push   %edx
410d83:	33 d2                	xor    %edx,%edx
410d85:	39 56 0c             	cmp    %edx,0xc(%esi)
410d88:	0f 95 c2             	setne  %dl
410d8b:	52                   	push   %edx
410d8c:	ff 76 08             	push   0x8(%esi)
410d8f:	50                   	push   %eax
410d90:	ff 51 0c             	call   *0xc(%ecx)
410d93:	8b 45 fc             	mov    -0x4(%ebp),%eax
410d96:	8b 08                	mov    (%eax),%ecx
410d98:	50                   	push   %eax
410d99:	ff 51 08             	call   *0x8(%ecx)
410d9c:	eb 31                	jmp    0x410dcf
410d9e:	8b ce                	mov    %esi,%ecx
410da0:	e8 fe e9 ff ff       	call   0x40f7a3
410da5:	85 c0                	test   %eax,%eax
410da7:	74 26                	je     0x410dcf
410da9:	8b 4e 0c             	mov    0xc(%esi),%ecx
410dac:	83 b9 8c 00 00 00 00 	cmpl   $0x0,0x8c(%ecx)
410db3:	6a 0d                	push   $0xd
410db5:	5a                   	pop    %edx
410db6:	74 05                	je     0x410dbd
410db8:	ba 0d 80 00 00       	mov    $0x800d,%edx
410dbd:	8b 0e                	mov    (%esi),%ecx
410dbf:	57                   	push   %edi
410dc0:	8b 39                	mov    (%ecx),%edi
410dc2:	50                   	push   %eax
410dc3:	52                   	push   %edx
410dc4:	ff 76 08             	push   0x8(%esi)
410dc7:	51                   	push   %ecx
410dc8:	ff 57 70             	call   *0x70(%edi)
410dcb:	83 c4 10             	add    $0x10,%esp
410dce:	5f                   	pop    %edi
410dcf:	5e                   	pop    %esi
410dd0:	c9                   	leave
410dd1:	c3                   	ret
410dd2:	55                   	push   %ebp
410dd3:	8b ec                	mov    %esp,%ebp
410dd5:	83 ec 24             	sub    $0x24,%esp
410dd8:	81 c1 20 ff ff ff    	add    $0xffffff20,%ecx
410dde:	f6 45 08 03          	testb  $0x3,0x8(%ebp)
410de2:	75 04                	jne    0x410de8
410de4:	33 c0                	xor    %eax,%eax
410de6:	eb 31                	jmp    0x410e19
410de8:	56                   	push   %esi
410de9:	57                   	push   %edi
410dea:	33 ff                	xor    %edi,%edi
410dec:	33 f6                	xor    %esi,%esi
410dee:	39 7d 0c             	cmp    %edi,0xc(%ebp)
410df1:	76 22                	jbe    0x410e15
410df3:	8b 55 10             	mov    0x10(%ebp),%edx
410df6:	8b 02                	mov    (%edx),%eax
410df8:	48                   	dec    %eax
410df9:	83 f8 1e             	cmp    $0x1e,%eax
410dfc:	77 0e                	ja     0x410e0c
410dfe:	0f b6 80 87 0e 41 00 	movzbl 0x410e87(%eax),%eax
410e05:	ff 24 85 67 0e 41 00 	jmp    *0x410e67(,%eax,4)
410e0c:	46                   	inc    %esi
410e0d:	83 c2 28             	add    $0x28,%edx
410e10:	3b 75 0c             	cmp    0xc(%ebp),%esi
410e13:	72 e1                	jb     0x410df6
410e15:	33 c0                	xor    %eax,%eax
410e17:	5f                   	pop    %edi
410e18:	5e                   	pop    %esi
410e19:	c9                   	leave
410e1a:	c2 10 00             	ret    $0x10
410e1d:	33 c0                	xor    %eax,%eax
410e1f:	40                   	inc    %eax
410e20:	eb 17                	jmp    0x410e39