41399c:	74 3a                	je     0x4139d8
41399e:	83 f8 13             	cmp    $0x13,%eax
4139a1:	0f 85 2d 03 00 00    	jne    0x413cd4
4139a7:	ff 75 0c             	push   0xc(%ebp)
4139aa:	8b cf                	mov    %edi,%ecx
4139ac:	e8 e9 c4 ff ff       	call   0x40fe9a
4139b1:	6a 03                	push   $0x3
4139b3:	ff 30                	push   (%eax)
4139b5:	8d 8d 20 ff ff ff    	lea    -0xe0(%ebp),%ecx
4139bb:	e8 6a 67 ff ff       	call   0x40a12a
4139c0:	50                   	push   %eax
4139c1:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4139c4:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
4139c8:	e8 8a 69 ff ff       	call   0x40a357
4139cd:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
4139d3:	e9 93 01 00 00       	jmp    0x413b6b
4139d8:	ff 75 0c             	push   0xc(%ebp)
4139db:	8b cf                	mov    %edi,%ecx
4139dd:	e8 b8 c4 ff ff       	call   0x40fe9a
4139e2:	0f bf 00             	movswl (%eax),%eax
4139e5:	6a 02                	push   $0x2
4139e7:	50                   	push   %eax
4139e8:	8d 8d f0 fe ff ff    	lea    -0x110(%ebp),%ecx
4139ee:	e8 10 67 ff ff       	call   0x40a103
4139f3:	50                   	push   %eax
4139f4:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4139f7:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
4139fb:	e8 57 69 ff ff       	call   0x40a357
413a00:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
413a06:	e9 60 01 00 00       	jmp    0x413b6b
413a0b:	ff 75 0c             	push   0xc(%ebp)
413a0e:	8b cf                	mov    %edi,%ecx
413a10:	e8 85 c4 ff ff       	call   0x40fe9a
413a15:	8a 00                	mov    (%eax),%al
413a17:	66 c7 45 a0 11 00    	movw   $0x11,-0x60(%ebp)
413a1d:	88 45 a8             	mov    %al,-0x58(%ebp)
413a20:	8d 45 a0             	lea    -0x60(%ebp),%eax
413a23:	50                   	push   %eax
413a24:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413a27:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
413a2b:	e8 27 69 ff ff       	call   0x40a357
413a30:	8d 45 a0             	lea    -0x60(%ebp),%eax
413a33:	e9 33 01 00 00       	jmp    0x413b6b
413a38:	ff 75 0c             	push   0xc(%ebp)
413a3b:	8b cf                	mov    %edi,%ecx
413a3d:	e8 58 c4 ff ff       	call   0x40fe9a
413a42:	50                   	push   %eax
413a43:	8d 8d 10 ff ff ff    	lea    -0xf0(%ebp),%ecx
413a49:	e8 60 6e ff ff       	call   0x40a8ae
413a4e:	50                   	push   %eax
413a4f:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413a52:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
413a56:	e8 fc 68 ff ff       	call   0x40a357
413a5b:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
413a61:	e9 05 01 00 00       	jmp    0x413b6b
413a66:	ff 75 0c             	push   0xc(%ebp)
413a69:	8b cf                	mov    %edi,%ecx
413a6b:	e8 2a c4 ff ff       	call   0x40fe9a
413a70:	0f bf 00             	movswl (%eax),%eax
413a73:	6a 0b                	push   $0xb
413a75:	50                   	push   %eax
413a76:	8d 8d 00 ff ff ff    	lea    -0x100(%ebp),%ecx
413a7c:	e8 82 66 ff ff       	call   0x40a103
413a81:	50                   	push   %eax
413a82:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413a85:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
413a89:	e8 c9 68 ff ff       	call   0x40a357
413a8e:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
413a94:	e9 d2 00 00 00       	jmp    0x413b6b
413a99:	ff 75 0c             	push   0xc(%ebp)
413a9c:	8b cf                	mov    %edi,%ecx
413a9e:	e8 f7 c3 ff ff       	call   0x40fe9a
413aa3:	50                   	push   %eax
413aa4:	8d 4d 0c             	lea    0xc(%ebp),%ecx
413aa7:	e8 e8 d7 fe ff       	call   0x401294
413aac:	8b 00                	mov    (%eax),%eax
413aae:	6a 08                	push   $0x8
413ab0:	50                   	push   %eax
413ab1:	8d 8d e0 fe ff ff    	lea    -0x120(%ebp),%ecx
413ab7:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
413abb:	e8 2e 6e ff ff       	call   0x40a8ee
413ac0:	50                   	push   %eax
413ac1:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413ac4:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
413ac8:	e8 8a 68 ff ff       	call   0x40a357
413acd:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
413ad3:	50                   	push   %eax
413ad4:	ff d6                	call   *%esi
413ad6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
413ad9:	e9 eb 01 00 00       	jmp    0x413cc9
413ade:	2d 82 00 00 00       	sub    $0x82,%eax
413ae3:	0f 84 a0 01 00 00    	je     0x413c89
413ae9:	48                   	dec    %eax
413aea:	0f 84 44 01 00 00    	je     0x413c34
413af0:	48                   	dec    %eax
413af1:	48                   	dec    %eax
413af2:	0f 84 e0 00 00 00    	je     0x413bd8
413af8:	48                   	dec    %eax
413af9:	74 7b                	je     0x413b76
413afb:	48                   	dec    %eax
413afc:	0f 85 d2 01 00 00    	jne    0x413cd4
413b02:	8d 45 dc             	lea    -0x24(%ebp),%eax
413b05:	50                   	push   %eax
413b06:	ff 75 0c             	push   0xc(%ebp)
413b09:	8b cf                	mov    %edi,%ecx
413b0b:	e8 3b d5 ff ff       	call   0x41104b
413b10:	84 c0                	test   %al,%al
413b12:	0f 84 bc 01 00 00    	je     0x413cd4
413b18:	0f b7 45 e6          	movzwl -0x1a(%ebp),%eax
413b1c:	50                   	push   %eax
413b1d:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
413b21:	50                   	push   %eax
413b22:	0f b7 45 e2          	movzwl -0x1e(%ebp),%eax
413b26:	50                   	push   %eax
413b27:	0f b7 45 e0          	movzwl -0x20(%ebp),%eax
413b2b:	50                   	push   %eax
413b2c:	0f b7 45 de          	movzwl -0x22(%ebp),%eax
413b30:	50                   	push   %eax
413b31:	0f bf 45 dc          	movswl -0x24(%ebp),%eax
413b35:	50                   	push   %eax
413b36:	8d 8d c4 fe ff ff    	lea    -0x13c(%ebp),%ecx
413b3c:	e8 8e d7 ff ff       	call   0x4112cf
413b41:	66 c7 85 60 ff ff ff 	movw   $0x7,-0xa0(%ebp)
413b48:	07 00
413b4a:	dd 00                	fldl   (%eax)
413b4c:	dd 9d 68 ff ff ff    	fstpl  -0x98(%ebp)
413b52:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
413b58:	50                   	push   %eax
413b59:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413b5c:	c6 45 fc 11          	movb   $0x11,-0x4(%ebp)
413b60:	e8 f2 67 ff ff       	call   0x40a357
413b65:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
413b6b:	50                   	push   %eax
413b6c:	88 5d fc             	mov    %bl,-0x4(%ebp)
413b6f:	ff d6                	call   *%esi
413b71:	e9 5e 01 00 00       	jmp    0x413cd4
413b76:	8d 45 d0             	lea    -0x30(%ebp),%eax
413b79:	50                   	push   %eax
413b7a:	ff 75 0c             	push   0xc(%ebp)
413b7d:	8b cf                	mov    %edi,%ecx
413b7f:	e8 9d d4 ff ff       	call   0x411021
413b84:	84 c0                	test   %al,%al
413b86:	0f 84 48 01 00 00    	je     0x413cd4
413b8c:	0f b7 45 d4          	movzwl -0x2c(%ebp),%eax
413b90:	d9 ee                	fldz
413b92:	50                   	push   %eax
413b93:	dd 5d e0             	fstpl  -0x20(%ebp)
413b96:	0f b7 45 d2          	movzwl -0x2e(%ebp),%eax
413b9a:	50                   	push   %eax
413b9b:	0f b7 45 d0          	movzwl -0x30(%ebp),%eax
413b9f:	50                   	push   %eax
413ba0:	8d 4d e0             	lea    -0x20(%ebp),%ecx
413ba3:	89 5d e8             	mov    %ebx,-0x18(%ebp)
413ba6:	e8 c7 c1 ff ff       	call   0x40fd72
413bab:	66 c7 85 50 ff ff ff 	movw   $0x7,-0xb0(%ebp)
413bb2:	07 00
413bb4:	dd 45 e0             	fldl   -0x20(%ebp)
413bb7:	dd 9d 58 ff ff ff    	fstpl  -0xa8(%ebp)
413bbd:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
413bc3:	50                   	push   %eax
413bc4:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413bc7:	c6 45 fc 10          	movb   $0x10,-0x4(%ebp)
413bcb:	e8 87 67 ff ff       	call   0x40a357
413bd0:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
413bd6:	eb 93                	jmp    0x413b6b
413bd8:	8d 45 d0             	lea    -0x30(%ebp),%eax
413bdb:	50                   	push   %eax
413bdc:	ff 75 0c             	push   0xc(%ebp)
413bdf:	8b cf                	mov    %edi,%ecx
413be1:	e8 11 d4 ff ff       	call   0x410ff7
413be6:	84 c0                	test   %al,%al
413be8:	0f 84 e6 00 00 00    	je     0x413cd4
413bee:	0f b7 45 d4          	movzwl -0x2c(%ebp),%eax
413bf2:	d9 ee                	fldz
413bf4:	0f b7 4d d2          	movzwl -0x2e(%ebp),%ecx
413bf8:	dd 5d e0             	fstpl  -0x20(%ebp)
413bfb:	0f bf 55 d0          	movswl -0x30(%ebp),%edx
413bff:	53                   	push   %ebx
413c00:	53                   	push   %ebx
413c01:	53                   	push   %ebx
413c02:	50                   	push   %eax
413c03:	51                   	push   %ecx
413c04:	52                   	push   %edx
413c05:	8d 4d e0             	lea    -0x20(%ebp),%ecx
413c08:	89 5d e8             	mov    %ebx,-0x18(%ebp)
413c0b:	e8 ba 6b ff ff       	call   0x40a7ca
413c10:	66 c7 45 90 07 00    	movw   $0x7,-0x70(%ebp)
413c16:	dd 45 e0             	fldl   -0x20(%ebp)
413c19:	dd 5d 98             	fstpl  -0x68(%ebp)
413c1c:	8d 45 90             	lea    -0x70(%ebp),%eax
413c1f:	50                   	push   %eax
413c20:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413c23:	c6 45 fc 0f          	movb   $0xf,-0x4(%ebp)
413c27:	e8 2b 67 ff ff       	call   0x40a357
413c2c:	8d 45 90             	lea    -0x70(%ebp),%eax
413c2f:	e9 37 ff ff ff       	jmp    0x413b6b
413c34:	8d 45 dc             	lea    -0x24(%ebp),%eax
413c37:	50                   	push   %eax
413c38:	ff 75 0c             	push   0xc(%ebp)
413c3b:	8b cf                	mov    %edi,%ecx
413c3d:	e8 8b d3 ff ff       	call   0x410fcd
413c42:	84 c0                	test   %al,%al
413c44:	0f 84 8a 00 00 00    	je     0x413cd4
413c4a:	38 5d dd             	cmp    %bl,-0x23(%ebp)
413c4d:	df 6d df             	fildll -0x21(%ebp)
413c50:	76 0b                	jbe    0x413c5d
413c52:	fe 4d dd             	decb   -0x23(%ebp)
413c55:	dc 0d c0 c8 48 00    	fmull  0x48c8c0
413c5b:	75 f5                	jne    0x413c52
413c5d:	38 5d de             	cmp    %bl,-0x22(%ebp)
413c60:	75 06                	jne    0x413c68
413c62:	d9 c0                	fld    %st(0)
413c64:	d9 e0                	fchs
413c66:	dd d9                	fstp   %st(1)
413c68:	dd 5d 88             	fstpl  -0x78(%ebp)
413c6b:	66 c7 45 80 05 00    	movw   $0x5,-0x80(%ebp)
413c71:	8d 45 80             	lea    -0x80(%ebp),%eax
413c74:	50                   	push   %eax
413c75:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413c78:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
413c7c:	e8 d6 66 ff ff       	call   0x40a357
413c81:	8d 45 80             	lea    -0x80(%ebp),%eax
413c84:	e9 e2 fe ff ff       	jmp    0x413b6b
413c89:	ff 75 0c             	push   0xc(%ebp)
413c8c:	8b cf                	mov    %edi,%ecx
413c8e:	e8 07 c2 ff ff       	call   0x40fe9a
413c93:	50                   	push   %eax
413c94:	8d 4d d8             	lea    -0x28(%ebp),%ecx
413c97:	e8 35 87 ff ff       	call   0x40c3d1
413c9c:	8b 00                	mov    (%eax),%eax
413c9e:	6a 08                	push   $0x8
413ca0:	50                   	push   %eax
413ca1:	8d 8d d0 fe ff ff    	lea    -0x130(%ebp),%ecx
413ca7:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
413cab:	e8 3e 6c ff ff       	call   0x40a8ee
413cb0:	50                   	push   %eax
413cb1:	8d 4d c0             	lea    -0x40(%ebp),%ecx
413cb4:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
413cb8:	e8 9a 66 ff ff       	call   0x40a357
413cbd:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
413cc3:	50                   	push   %eax
413cc4:	ff d6                	call   *%esi
413cc6:	8b 4d d8             	mov    -0x28(%ebp),%ecx
413cc9:	83 c1 f0             	add    $0xfffffff0,%ecx
413ccc:	88 5d fc             	mov    %bl,-0x4(%ebp)
413ccf:	e8 7e d6 fe ff       	call   0x401352
413cd4:	8b 4d 08             	mov    0x8(%ebp),%ecx
413cd7:	8d 45 c0             	lea    -0x40(%ebp),%eax
413cda:	50                   	push   %eax
413cdb:	e8 ee 6b ff ff       	call   0x40a8ce
413ce0:	8d 45 c0             	lea    -0x40(%ebp),%eax
413ce3:	50                   	push   %eax
413ce4:	ff d6                	call   *%esi
413ce6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
413ce9:	8b 45 08             	mov    0x8(%ebp),%eax
413cec:	5f                   	pop    %edi
413ced:	5e                   	pop    %esi
413cee:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
413cf5:	8b 4d f0             	mov    -0x10(%ebp),%ecx
413cf8:	5b                   	pop    %ebx
413cf9:	e8 e0 3e 00 00       	call   0x417bde
413cfe:	c9                   	leave
413cff:	c2 08 00             	ret    $0x8
413d02:	b8 2f 38 48 00       	mov    $0x48382f,%eax
413d07:	e8 70 3f 00 00       	call   0x417c7c
413d0c:	83 ec 6c             	sub    $0x6c,%esp
413d0f:	33 c0                	xor    %eax,%eax
413d11:	56                   	push   %esi
413d12:	8b f1                	mov    %ecx,%esi
413d14:	39 46 10             	cmp    %eax,0x10(%esi)
413d17:	c7 46 44 01 00 00 00 	movl   $0x1,0x44(%esi)
413d1e:	89 45 f0             	mov    %eax,-0x10(%ebp)
413d21:	89 45 e8             	mov    %eax,-0x18(%ebp)
413d24:	0f 8e 65 01 00 00    	jle    0x413e8f
413d2a:	53                   	push   %ebx
413d2b:	57                   	push   %edi
413d2c:	8b 4e 14             	mov    0x14(%esi),%ecx
413d2f:	8d 1c 80             	lea    (%eax,%eax,4),%ebx
413d32:	c1 e3 03             	shl    $0x3,%ebx
413d35:	8b 4c 19 24          	mov    0x24(%ecx,%ebx,1),%ecx
413d39:	85 c9                	test   %ecx,%ecx
413d3b:	0f 84 3f 01 00 00    	je     0x413e80
413d41:	8b 49 04             	mov    0x4(%ecx),%ecx
413d44:	85 c9                	test   %ecx,%ecx
413d46:	89 4d e0             	mov    %ecx,-0x20(%ebp)
413d49:	0f 84 31 01 00 00    	je     0x413e80
413d4f:	8b 45 f0             	mov    -0x10(%ebp),%eax
413d52:	c1 e0 04             	shl    $0x4,%eax
413d55:	89 45 ec             	mov    %eax,-0x14(%ebp)
413d58:	8d 45 e0             	lea    -0x20(%ebp),%eax
413d5b:	50                   	push   %eax
413d5c:	8b 46 14             	mov    0x14(%esi),%eax
413d5f:	8b 4c 18 24          	mov    0x24(%eax,%ebx,1),%ecx
413d63:	e8 fa 36 ff ff       	call   0x407462
413d68:	8b 38                	mov    (%eax),%edi
413d6a:	6a 20                	push   $0x20
413d6c:	8d 45 88             	lea    -0x78(%ebp),%eax
413d6f:	6a 00                	push   $0x0
413d71:	50                   	push   %eax
413d72:	c7 45 dc fd ff ff ff 	movl   $0xfffffffd,-0x24(%ebp)
413d79:	e8 c2 44 00 00       	call   0x418240
413d7e:	83 c4 0c             	add    $0xc,%esp
413d81:	8d 45 b8             	lea    -0x48(%ebp),%eax
413d84:	50                   	push   %eax
413d85:	e8 2a 66 ff ff       	call   0x40a3b4
413d8a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
413d8e:	83 7e 48 00          	cmpl   $0x0,0x48(%esi)
413d92:	74 30                	je     0x413dc4
413d94:	8b 45 e8             	mov    -0x18(%ebp),%eax
413d97:	40                   	inc    %eax
413d98:	50                   	push   %eax
413d99:	8d 45 a8             	lea    -0x58(%ebp),%eax
413d9c:	50                   	push   %eax
413d9d:	8b ce                	mov    %esi,%ecx
413d9f:	e8 36 fa ff ff       	call   0x4137da
413da4:	50                   	push   %eax
413da5:	8d 4d b8             	lea    -0x48(%ebp),%ecx
413da8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
413dac:	e8 a6 65 ff ff       	call   0x40a357
413db1:	8d 45 a8             	lea    -0x58(%ebp),%eax
413db4:	50                   	push   %eax
413db5:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
413db9:	ff 15 f4 04 4b 00    	call   *0x4b04f4
413dbf:	8d 45 b8             	lea    -0x48(%ebp),%eax
413dc2:	eb 06                	jmp    0x413dca
413dc4:	8b 46 40             	mov    0x40(%esi),%eax
413dc7:	03 45 ec             	add    -0x14(%ebp),%eax
413dca:	89 45 c8             	mov    %eax,-0x38(%ebp)
413dcd:	8d 45 dc             	lea    -0x24(%ebp),%eax
413dd0:	89 45 cc             	mov    %eax,-0x34(%ebp)
413dd3:	33 c0                	xor    %eax,%eax
413dd5:	40                   	inc    %eax
413dd6:	89 45 d0             	mov    %eax,-0x30(%ebp)
413dd9:	89 45 d4             	mov    %eax,-0x2c(%ebp)
413ddc:	89 87 84 00 00 00    	mov    %eax,0x84(%edi)
413de2:	8b 47 4c             	mov    0x4c(%edi),%eax
413de5:	85 c0                	test   %eax,%eax
413de7:	74 7c                	je     0x413e65
413de9:	8b 08                	mov    (%eax),%ecx
413deb:	8d 55 e4             	lea    -0x1c(%ebp),%edx
413dee:	52                   	push   %edx
413def:	68 0c 4e 49 00       	push   $0x494e0c
413df4:	50                   	push   %eax
413df5:	ff 11                	call   *(%ecx)
413df7:	85 c0                	test   %eax,%eax
413df9:	7c 6a                	jl     0x413e65
413dfb:	8b 45 e4             	mov    -0x1c(%ebp),%eax
413dfe:	8b 08                	mov    (%eax),%ecx
413e00:	8d 55 d8             	lea    -0x28(%ebp),%edx
413e03:	52                   	push   %edx