413cba:	c6 45 fd 00          	movb   $0x0,-0x3(%ebp)
413cbe:	e8 c9 07 00 00       	call   0x41448c
413cc3:	0f b6 d3             	movzbl %bl,%edx
413cc6:	b9 00 80 00 00       	mov    $0x8000,%ecx
413ccb:	66 85 0c 50          	test   %cx,(%eax,%edx,2)
413ccf:	74 0b                	je     0x413cdc
413cd1:	8d 4e 08             	lea    0x8(%esi),%ecx
413cd4:	e8 af f5 ff ff       	call   0x413288
413cd9:	88 45 fd             	mov    %al,-0x3(%ebp)
413cdc:	6a 3f                	push   $0x3f
413cde:	58                   	pop    %eax
413cdf:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
413ce3:	8b 46 68             	mov    0x68(%esi),%eax
413ce6:	50                   	push   %eax
413ce7:	8b 00                	mov    (%eax),%eax
413ce9:	ff 70 04             	push   0x4(%eax)
413cec:	8d 45 fc             	lea    -0x4(%ebp),%eax
413cef:	50                   	push   %eax
413cf0:	8d 45 f8             	lea    -0x8(%ebp),%eax
413cf3:	50                   	push   %eax
413cf4:	e8 6d 5c 00 00       	call   0x419966
413cf9:	8b 55 10             	mov    0x10(%ebp),%edx
413cfc:	83 c4 10             	add    $0x10,%esp
413cff:	66 0f be cb          	movsbw %bl,%cx
413d03:	8b 02                	mov    (%edx),%eax
413d05:	5e                   	pop    %esi
413d06:	5b                   	pop    %ebx
413d07:	66 89 08             	mov    %cx,(%eax)
413d0a:	8b 45 14             	mov    0x14(%ebp),%eax
413d0d:	83 02 02             	addl   $0x2,(%edx)
413d10:	ff 08                	decl   (%eax)
413d12:	b0 01                	mov    $0x1,%al
413d14:	8b e5                	mov    %ebp,%esp
413d16:	5d                   	pop    %ebp
413d17:	c2 14 00             	ret    $0x14
413d1a:	8b ff                	mov    %edi,%edi
413d1c:	55                   	push   %ebp
413d1d:	8b ec                	mov    %esp,%ebp
413d1f:	83 41 6c 04          	addl   $0x4,0x6c(%ecx)
413d23:	8b 41 6c             	mov    0x6c(%ecx),%eax
413d26:	56                   	push   %esi
413d27:	8b 70 fc             	mov    -0x4(%eax),%esi
413d2a:	85 f6                	test   %esi,%esi
413d2c:	75 14                	jne    0x413d42
413d2e:	e8 38 0d 00 00       	call   0x414a6b
413d33:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
413d39:	e8 a4 7f ff ff       	call   0x40bce2
413d3e:	32 c0                	xor    %al,%al
413d40:	eb 4a                	jmp    0x413d8c
413d42:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
413d46:	74 03                	je     0x413d4b
413d48:	ff 41 70             	incl   0x70(%ecx)
413d4b:	83 c1 18             	add    $0x18,%ecx
413d4e:	e8 af f5 ff ff       	call   0x413302
413d53:	83 e8 01             	sub    $0x1,%eax
413d56:	74 2d                	je     0x413d85
413d58:	83 e8 01             	sub    $0x1,%eax
413d5b:	74 1f                	je     0x413d7c
413d5d:	48                   	dec    %eax
413d5e:	83 e8 01             	sub    $0x1,%eax
413d61:	74 12                	je     0x413d75
413d63:	83 e8 04             	sub    $0x4,%eax
413d66:	75 d6                	jne    0x413d3e
413d68:	8b 45 08             	mov    0x8(%ebp),%eax
413d6b:	89 06                	mov    %eax,(%esi)
413d6d:	8b 45 0c             	mov    0xc(%ebp),%eax
413d70:	89 46 04             	mov    %eax,0x4(%esi)
413d73:	eb 15                	jmp    0x413d8a
413d75:	8b 45 08             	mov    0x8(%ebp),%eax
413d78:	89 06                	mov    %eax,(%esi)
413d7a:	eb 0e                	jmp    0x413d8a
413d7c:	66 8b 45 08          	mov    0x8(%ebp),%ax
413d80:	66 89 06             	mov    %ax,(%esi)
413d83:	eb 05                	jmp    0x413d8a
413d85:	8a 45 08             	mov    0x8(%ebp),%al
413d88:	88 06                	mov    %al,(%esi)
413d8a:	b0 01                	mov    $0x1,%al
413d8c:	5e                   	pop    %esi
413d8d:	5d                   	pop    %ebp
413d8e:	c2 0c 00             	ret    $0xc
413d91:	8b ff                	mov    %edi,%edi
413d93:	55                   	push   %ebp
413d94:	8b ec                	mov    %esp,%ebp
413d96:	ff 75 20             	push   0x20(%ebp)
413d99:	ff 75 1c             	push   0x1c(%ebp)
413d9c:	ff 75 18             	push   0x18(%ebp)
413d9f:	ff 75 14             	push   0x14(%ebp)
413da2:	ff 75 10             	push   0x10(%ebp)
413da5:	ff 75 0c             	push   0xc(%ebp)
413da8:	ff 75 08             	push   0x8(%ebp)
413dab:	e8 1d b7 ff ff       	call   0x40f4cd
413db0:	83 c4 1c             	add    $0x1c,%esp
413db3:	5d                   	pop    %ebp
413db4:	c3                   	ret
413db5:	8b ff                	mov    %edi,%edi
413db7:	55                   	push   %ebp
413db8:	8b ec                	mov    %esp,%ebp
413dba:	8b 45 10             	mov    0x10(%ebp),%eax
413dbd:	85 c0                	test   %eax,%eax
413dbf:	74 0d                	je     0x413dce
413dc1:	8b 00                	mov    (%eax),%eax
413dc3:	8b 08                	mov    (%eax),%ecx
413dc5:	8b 45 08             	mov    0x8(%ebp),%eax
413dc8:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
413dcc:	eb 0c                	jmp    0x413dda
413dce:	e8 b9 06 00 00       	call   0x41448c
413dd3:	8b 4d 08             	mov    0x8(%ebp),%ecx
413dd6:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
413dda:	23 45 0c             	and    0xc(%ebp),%eax
413ddd:	5d                   	pop    %ebp
413dde:	c3                   	ret
413ddf:	8b ff                	mov    %edi,%edi
413de1:	55                   	push   %ebp
413de2:	8b ec                	mov    %esp,%ebp
413de4:	8b 4d 10             	mov    0x10(%ebp),%ecx
413de7:	85 c9                	test   %ecx,%ecx
413de9:	74 16                	je     0x413e01
413deb:	8b 01                	mov    (%ecx),%eax
413ded:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
413df1:	7e 0e                	jle    0x413e01
413df3:	51                   	push   %ecx
413df4:	ff 75 0c             	push   0xc(%ebp)
413df7:	ff 75 08             	push   0x8(%ebp)
413dfa:	e8 31 6b 00 00       	call   0x41a930
413dff:	eb 0c                	jmp    0x413e0d
413e01:	51                   	push   %ecx
413e02:	ff 75 0c             	push   0xc(%ebp)
413e05:	ff 75 08             	push   0x8(%ebp)
413e08:	e8 a8 ff ff ff       	call   0x413db5
413e0d:	83 c4 0c             	add    $0xc,%esp
413e10:	5d                   	pop    %ebp
413e11:	c3                   	ret
413e12:	8b ff                	mov    %edi,%edi
413e14:	55                   	push   %ebp
413e15:	8b ec                	mov    %esp,%ebp
413e17:	56                   	push   %esi
413e18:	8b 75 14             	mov    0x14(%ebp),%esi
413e1b:	85 f6                	test   %esi,%esi
413e1d:	75 04                	jne    0x413e23
413e1f:	33 c0                	xor    %eax,%eax
413e21:	eb 6d                	jmp    0x413e90
413e23:	8b 45 08             	mov    0x8(%ebp),%eax
413e26:	85 c0                	test   %eax,%eax
413e28:	75 13                	jne    0x413e3d
413e2a:	e8 3c 0c 00 00       	call   0x414a6b
413e2f:	6a 16                	push   $0x16
413e31:	5e                   	pop    %esi
413e32:	89 30                	mov    %esi,(%eax)
413e34:	e8 a9 7e ff ff       	call   0x40bce2
413e39:	8b c6                	mov    %esi,%eax
413e3b:	eb 53                	jmp    0x413e90
413e3d:	57                   	push   %edi
413e3e:	8b 7d 10             	mov    0x10(%ebp),%edi
413e41:	85 ff                	test   %edi,%edi
413e43:	74 14                	je     0x413e59
413e45:	39 75 0c             	cmp    %esi,0xc(%ebp)
413e48:	72 0f                	jb     0x413e59
413e4a:	56                   	push   %esi
413e4b:	57                   	push   %edi
413e4c:	50                   	push   %eax
413e4d:	e8 0e 46 ff ff       	call   0x408460
413e52:	83 c4 0c             	add    $0xc,%esp
413e55:	33 c0                	xor    %eax,%eax
413e57:	eb 36                	jmp    0x413e8f
413e59:	ff 75 0c             	push   0xc(%ebp)
413e5c:	6a 00                	push   $0x0
413e5e:	50                   	push   %eax
413e5f:	e8 7c 4b ff ff       	call   0x4089e0
413e64:	83 c4 0c             	add    $0xc,%esp
413e67:	85 ff                	test   %edi,%edi
413e69:	75 09                	jne    0x413e74
413e6b:	e8 fb 0b 00 00       	call   0x414a6b
413e70:	6a 16                	push   $0x16
413e72:	eb 0c                	jmp    0x413e80
413e74:	39 75 0c             	cmp    %esi,0xc(%ebp)
413e77:	73 13                	jae    0x413e8c
413e79:	e8 ed 0b 00 00       	call   0x414a6b
413e7e:	6a 22                	push   $0x22
413e80:	5e                   	pop    %esi
413e81:	89 30                	mov    %esi,(%eax)
413e83:	e8 5a 7e ff ff       	call   0x40bce2
413e88:	8b c6                	mov    %esi,%eax
413e8a:	eb 03                	jmp    0x413e8f
413e8c:	6a 16                	push   $0x16
413e8e:	58                   	pop    %eax
413e8f:	5f                   	pop    %edi
413e90:	5e                   	pop    %esi
413e91:	5d                   	pop    %ebp
413e92:	c3                   	ret
413e93:	cc                   	int3
413e94:	cc                   	int3
413e95:	cc                   	int3
413e96:	cc                   	int3
413e97:	cc                   	int3
413e98:	cc                   	int3
413e99:	cc                   	int3
413e9a:	cc                   	int3
413e9b:	cc                   	int3
413e9c:	cc                   	int3
413e9d:	cc                   	int3
413e9e:	cc                   	int3
413e9f:	cc                   	int3
413ea0:	83 3d 00 a1 83 02 00 	cmpl   $0x0,0x283a100
413ea7:	0f 84 82 00 00 00    	je     0x413f2f
413ead:	83 ec 08             	sub    $0x8,%esp
413eb0:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
413eb5:	8b 44 24 04          	mov    0x4(%esp),%eax
413eb9:	25 80 7f 00 00       	and    $0x7f80,%eax
413ebe:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
413ec3:	75 0f                	jne    0x413ed4
413ec5:	d9 3c 24             	fnstcw (%esp)
413ec8:	66 8b 04 24          	mov    (%esp),%ax
413ecc:	66 83 e0 7f          	and    $0x7f,%ax
413ed0:	66 83 f8 7f          	cmp    $0x7f,%ax
413ed4:	8d 64 24 08          	lea    0x8(%esp),%esp
413ed8:	75 55                	jne    0x413f2f
413eda:	e9 59 6b 00 00       	jmp    0x41aa38
413edf:	90                   	nop
413ee0:	83 3d 00 a1 83 02 00 	cmpl   $0x0,0x283a100
413ee7:	74 32                	je     0x413f1b
413ee9:	83 ec 08             	sub    $0x8,%esp
413eec:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
413ef1:	8b 44 24 04          	mov    0x4(%esp),%eax
413ef5:	25 80 7f 00 00       	and    $0x7f80,%eax
413efa:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
413eff:	75 0f                	jne    0x413f10
413f01:	d9 3c 24             	fnstcw (%esp)
413f04:	66 8b 04 24          	mov    (%esp),%ax
413f08:	66 83 e0 7f          	and    $0x7f,%ax
413f0c:	66 83 f8 7f          	cmp    $0x7f,%ax
413f10:	8d 64 24 08          	lea    0x8(%esp),%esp
413f14:	75 05                	jne    0x413f1b
413f16:	e9 05 6b 00 00       	jmp    0x41aa20
413f1b:	83 ec 0c             	sub    $0xc,%esp
413f1e:	dd 14 24             	fstl   (%esp)
413f21:	e8 42 73 00 00       	call   0x41b268
413f26:	e8 0d 00 00 00       	call   0x413f38
413f2b:	83 c4 0c             	add    $0xc,%esp
413f2e:	c3                   	ret
413f2f:	8d 54 24 04          	lea    0x4(%esp),%edx
413f33:	e8 ed 72 00 00       	call   0x41b225
413f38:	52                   	push   %edx
413f39:	9b d9 3c 24          	fstcw  (%esp)
413f3d:	74 6d                	je     0x413fac
413f3f:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
413f45:	74 05                	je     0x413f4c
413f47:	e8 a9 72 00 00       	call   0x41b1f5
413f4c:	3d 00 00 f0 3f       	cmp    $0x3ff00000,%eax
413f51:	73 2d                	jae    0x413f80
413f53:	d9 e8                	fld1
413f55:	d8 c1                	fadd   %st(1),%st
413f57:	d9 e8                	fld1
413f59:	d8 e2                	fsub   %st(2),%st
413f5b:	de c9                	fmulp  %st,%st(1)
413f5d:	d9 fa                	fsqrt
413f5f:	d9 c9                	fxch   %st(1)
413f61:	d9 f3                	fpatan
413f63:	83 3d d4 9f 83 02 00 	cmpl   $0x0,0x2839fd4
413f6a:	0f 85 0e 73 00 00    	jne    0x41b27e
413f70:	ba 0d 00 00 00       	mov    $0xd,%edx
413f75:	8d 0d 00 bb 42 00    	lea    0x42bb00,%ecx
413f7b:	e9 0b 73 00 00       	jmp    0x41b28b
413f80:	77 38                	ja     0x413fba
413f82:	8b 44 24 0c          	mov    0xc(%esp),%eax
413f86:	8b c8                	mov    %eax,%ecx
413f88:	25 ff ff 0f 00       	and    $0xfffff,%eax
413f8d:	0b 44 24 08          	or     0x8(%esp),%eax
413f91:	75 27                	jne    0x413fba
413f93:	81 e1 00 00 00 80    	and    $0x80000000,%ecx
413f99:	dd d8                	fstp   %st(0)
413f9b:	74 04                	je     0x413fa1
413f9d:	d9 eb                	fldpi
413f9f:	eb c2                	jmp    0x413f63
413fa1:	d9 ee                	fldz
413fa3:	eb be                	jmp    0x413f63
413fa5:	e8 62 72 00 00       	call   0x41b20c
413faa:	eb 1b                	jmp    0x413fc7
413fac:	a9 ff ff 0f 00       	test   $0xfffff,%eax
413fb1:	75 f2                	jne    0x413fa5
413fb3:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
413fb8:	75 eb                	jne    0x413fa5
413fba:	dd d8                	fstp   %st(0)
413fbc:	db 2d 50 d3 42 00    	fldt   0x42d350
413fc2:	b8 01 00 00 00       	mov    $0x1,%eax
413fc7:	83 3d d4 9f 83 02 00 	cmpl   $0x0,0x2839fd4
413fce:	0f 85 aa 72 00 00    	jne    0x41b27e
413fd4:	ba 0d 00 00 00       	mov    $0xd,%edx
413fd9:	8d 0d 00 bb 42 00    	lea    0x42bb00,%ecx
413fdf:	e8 b3 71 00 00       	call   0x41b197
413fe4:	5a                   	pop    %edx
413fe5:	c3                   	ret
413fe6:	cc                   	int3
413fe7:	cc                   	int3
413fe8:	cc                   	int3
413fe9:	cc                   	int3
413fea:	cc                   	int3
413feb:	cc                   	int3
413fec:	cc                   	int3
413fed:	cc                   	int3
413fee:	cc                   	int3
413fef:	cc                   	int3
413ff0:	83 3d 00 a1 83 02 00 	cmpl   $0x0,0x283a100
413ff7:	0f 84 82 00 00 00    	je     0x41407f
413ffd:	83 ec 08             	sub    $0x8,%esp
414000:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
414005:	8b 44 24 04          	mov    0x4(%esp),%eax
414009:	25 80 7f 00 00       	and    $0x7f80,%eax
41400e:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
414013:	75 0f                	jne    0x414024
414015:	d9 3c 24             	fnstcw (%esp)
414018:	66 8b 04 24          	mov    (%esp),%ax
41401c:	66 83 e0 7f          	and    $0x7f,%ax
414020:	66 83 f8 7f          	cmp    $0x7f,%ax
414024:	8d 64 24 08          	lea    0x8(%esp),%esp
414028:	75 55                	jne    0x41407f
41402a:	e9 59 73 00 00       	jmp    0x41b388
41402f:	90                   	nop
414030:	83 3d 00 a1 83 02 00 	cmpl   $0x0,0x283a100
414037:	74 32                	je     0x41406b
414039:	83 ec 08             	sub    $0x8,%esp
41403c:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
414041:	8b 44 24 04          	mov    0x4(%esp),%eax
414045:	25 80 7f 00 00       	and    $0x7f80,%eax
41404a:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
41404f:	75 0f                	jne    0x414060
414051:	d9 3c 24             	fnstcw (%esp)
414054:	66 8b 04 24          	mov    (%esp),%ax
414058:	66 83 e0 7f          	and    $0x7f,%ax
41405c:	66 83 f8 7f          	cmp    $0x7f,%ax
414060:	8d 64 24 08          	lea    0x8(%esp),%esp
414064:	75 05                	jne    0x41406b
414066:	e9 05 73 00 00       	jmp    0x41b370
41406b:	83 ec 0c             	sub    $0xc,%esp
41406e:	dd 14 24             	fstl   (%esp)
414071:	e8 f2 71 00 00       	call   0x41b268
414076:	e8 0d 00 00 00       	call   0x414088
41407b:	83 c4 0c             	add    $0xc,%esp
41407e:	c3                   	ret
41407f:	8d 54 24 04          	lea    0x4(%esp),%edx
414083:	e8 9d 71 00 00       	call   0x41b225
414088:	52                   	push   %edx
414089:	9b d9 3c 24          	fstcw  (%esp)
41408d:	74 6d                	je     0x4140fc
41408f:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
414095:	74 05                	je     0x41409c
414097:	e8 59 71 00 00       	call   0x41b1f5
41409c:	3d 00 00 f0 3f       	cmp    $0x3ff00000,%eax
4140a1:	73 2b                	jae    0x4140ce
4140a3:	d9 e8                	fld1
4140a5:	d8 c1                	fadd   %st(1),%st