418cd9:	83 60 04 00          	andl   $0x0,0x4(%eax)
418cdd:	3b f3                	cmp    %ebx,%esi
418cdf:	75 40                	jne    0x418d21
418ce1:	e8 ed b4 ff ff       	call   0x4141d3
418ce6:	8b 40 08             	mov    0x8(%eax),%eax
418ce9:	89 45 d0             	mov    %eax,-0x30(%ebp)
418cec:	e8 e2 b4 ff ff       	call   0x4141d3
418cf1:	c7 40 08 8c 00 00 00 	movl   $0x8c,0x8(%eax)
418cf8:	8b 45 e0             	mov    -0x20(%ebp),%eax
418cfb:	3b f3                	cmp    %ebx,%esi
418cfd:	75 22                	jne    0x418d21
418cff:	6b 0d c4 74 42 00 0c 	imul   $0xc,0x4274c4,%ecx
418d06:	03 08                	add    (%eax),%ecx
418d08:	6b 05 c8 74 42 00 0c 	imul   $0xc,0x4274c8,%eax
418d0f:	03 c1                	add    %ecx,%eax
418d11:	89 4d cc             	mov    %ecx,-0x34(%ebp)
418d14:	3b c8                	cmp    %eax,%ecx
418d16:	74 13                	je     0x418d2b
418d18:	83 61 08 00          	andl   $0x0,0x8(%ecx)
418d1c:	83 c1 0c             	add    $0xc,%ecx
418d1f:	eb f0                	jmp    0x418d11
418d21:	a1 14 30 43 00       	mov    0x433014,%eax
418d26:	8b 4d dc             	mov    -0x24(%ebp),%ecx
418d29:	89 01                	mov    %eax,(%ecx)
418d2b:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
418d32:	e8 29 00 00 00       	call   0x418d60
418d37:	80 7d e6 00          	cmpb   $0x0,-0x1a(%ebp)
418d3b:	75 64                	jne    0x418da1
418d3d:	3b f3                	cmp    %ebx,%esi
418d3f:	75 2e                	jne    0x418d6f
418d41:	e8 8d b4 ff ff       	call   0x4141d3
418d46:	ff 70 08             	push   0x8(%eax)
418d49:	53                   	push   %ebx
418d4a:	8b cf                	mov    %edi,%ecx
418d4c:	ff 15 54 41 42 00    	call   *0x424154
418d52:	ff d7                	call   *%edi
418d54:	59                   	pop    %ecx
418d55:	eb 23                	jmp    0x418d7a
418d57:	6a 08                	push   $0x8
418d59:	5b                   	pop    %ebx
418d5a:	8b 75 08             	mov    0x8(%ebp),%esi
418d5d:	8b 7d d8             	mov    -0x28(%ebp),%edi
418d60:	80 7d e7 00          	cmpb   $0x0,-0x19(%ebp)
418d64:	74 08                	je     0x418d6e
418d66:	6a 03                	push   $0x3
418d68:	e8 fe 43 ff ff       	call   0x40d16b
418d6d:	59                   	pop    %ecx
418d6e:	c3                   	ret
418d6f:	56                   	push   %esi
418d70:	8b cf                	mov    %edi,%ecx
418d72:	ff 15 54 41 42 00    	call   *0x424154
418d78:	ff d7                	call   *%edi
418d7a:	59                   	pop    %ecx
418d7b:	3b f3                	cmp    %ebx,%esi
418d7d:	74 0a                	je     0x418d89
418d7f:	83 fe 0b             	cmp    $0xb,%esi
418d82:	74 05                	je     0x418d89
418d84:	83 fe 04             	cmp    $0x4,%esi
418d87:	75 18                	jne    0x418da1
418d89:	8b 45 e0             	mov    -0x20(%ebp),%eax
418d8c:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
418d8f:	89 48 04             	mov    %ecx,0x4(%eax)
418d92:	3b f3                	cmp    %ebx,%esi
418d94:	75 0b                	jne    0x418da1
418d96:	e8 38 b4 ff ff       	call   0x4141d3
418d9b:	8b 4d d0             	mov    -0x30(%ebp),%ecx
418d9e:	89 48 08             	mov    %ecx,0x8(%eax)
418da1:	33 c0                	xor    %eax,%eax
418da3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
418da6:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
418dad:	59                   	pop    %ecx
418dae:	5f                   	pop    %edi
418daf:	5e                   	pop    %esi
418db0:	5b                   	pop    %ebx
418db1:	c9                   	leave
418db2:	c3                   	ret
418db3:	84 c9                	test   %cl,%cl
418db5:	74 08                	je     0x418dbf
418db7:	6a 03                	push   $0x3
418db9:	e8 ad 43 ff ff       	call   0x40d16b
418dbe:	59                   	pop    %ecx
418dbf:	6a 03                	push   $0x3
418dc1:	e8 69 77 ff ff       	call   0x41052f
418dc6:	cc                   	int3
418dc7:	8b ff                	mov    %edi,%edi
418dc9:	55                   	push   %ebp
418dca:	8b ec                	mov    %esp,%ebp
418dcc:	66 8b 4d 0e          	mov    0xe(%ebp),%cx
418dd0:	ba f0 7f 00 00       	mov    $0x7ff0,%edx
418dd5:	66 8b c1             	mov    %cx,%ax
418dd8:	66 23 c2             	and    %dx,%ax
418ddb:	66 3b c2             	cmp    %dx,%ax
418dde:	75 33                	jne    0x418e13
418de0:	dd 45 08             	fldl   0x8(%ebp)
418de3:	51                   	push   %ecx
418de4:	51                   	push   %ecx
418de5:	dd 1c 24             	fstpl  (%esp)
418de8:	e8 e2 ca ff ff       	call   0x4158cf
418ded:	59                   	pop    %ecx
418dee:	59                   	pop    %ecx
418def:	83 e8 01             	sub    $0x1,%eax
418df2:	74 18                	je     0x418e0c
418df4:	83 e8 01             	sub    $0x1,%eax
418df7:	74 0e                	je     0x418e07
418df9:	83 e8 01             	sub    $0x1,%eax
418dfc:	74 05                	je     0x418e03
418dfe:	33 c0                	xor    %eax,%eax
418e00:	40                   	inc    %eax
418e01:	5d                   	pop    %ebp
418e02:	c3                   	ret
418e03:	6a 02                	push   $0x2
418e05:	eb 02                	jmp    0x418e09
418e07:	6a 04                	push   $0x4
418e09:	58                   	pop    %eax
418e0a:	5d                   	pop    %ebp
418e0b:	c3                   	ret
418e0c:	b8 00 02 00 00       	mov    $0x200,%eax
418e11:	5d                   	pop    %ebp
418e12:	c3                   	ret
418e13:	0f b7 c9             	movzwl %cx,%ecx
418e16:	81 e1 00 80 00 00    	and    $0x8000,%ecx
418e1c:	66 85 c0             	test   %ax,%ax
418e1f:	75 1e                	jne    0x418e3f
418e21:	f7 45 0c ff ff 0f 00 	testl  $0xfffff,0xc(%ebp)
418e28:	75 06                	jne    0x418e30
418e2a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
418e2e:	74 0f                	je     0x418e3f
418e30:	f7 d9                	neg    %ecx
418e32:	1b c9                	sbb    %ecx,%ecx
418e34:	83 e1 90             	and    $0xffffff90,%ecx
418e37:	8d 81 80 00 00 00    	lea    0x80(%ecx),%eax
418e3d:	5d                   	pop    %ebp
418e3e:	c3                   	ret
418e3f:	dd 45 08             	fldl   0x8(%ebp)
418e42:	d9 ee                	fldz
418e44:	da e9                	fucompp
418e46:	df e0                	fnstsw %ax
418e48:	f6 c4 44             	test   $0x44,%ah
418e4b:	7a 0c                	jp     0x418e59
418e4d:	f7 d9                	neg    %ecx
418e4f:	1b c9                	sbb    %ecx,%ecx
418e51:	83 e1 e0             	and    $0xffffffe0,%ecx
418e54:	8d 41 40             	lea    0x40(%ecx),%eax
418e57:	5d                   	pop    %ebp
418e58:	c3                   	ret
418e59:	f7 d9                	neg    %ecx
418e5b:	1b c9                	sbb    %ecx,%ecx
418e5d:	81 e1 08 ff ff ff    	and    $0xffffff08,%ecx
418e63:	8d 81 00 01 00 00    	lea    0x100(%ecx),%eax
418e69:	5d                   	pop    %ebp
418e6a:	c3                   	ret
418e6b:	8b ff                	mov    %edi,%edi
418e6d:	55                   	push   %ebp
418e6e:	8b ec                	mov    %esp,%ebp
418e70:	57                   	push   %edi
418e71:	8b 7d 08             	mov    0x8(%ebp),%edi
418e74:	85 ff                	test   %edi,%edi
418e76:	75 0b                	jne    0x418e83
418e78:	ff 75 0c             	push   0xc(%ebp)
418e7b:	e8 e6 ac ff ff       	call   0x413b66
418e80:	59                   	pop    %ecx
418e81:	eb 24                	jmp    0x418ea7
418e83:	56                   	push   %esi
418e84:	8b 75 0c             	mov    0xc(%ebp),%esi
418e87:	85 f6                	test   %esi,%esi
418e89:	75 09                	jne    0x418e94
418e8b:	57                   	push   %edi
418e8c:	e8 7a a2 ff ff       	call   0x41310b
418e91:	59                   	pop    %ecx
418e92:	eb 10                	jmp    0x418ea4
418e94:	83 fe e0             	cmp    $0xffffffe0,%esi
418e97:	76 25                	jbe    0x418ebe
418e99:	e8 5d 5f ff ff       	call   0x40edfb
418e9e:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
418ea4:	33 c0                	xor    %eax,%eax
418ea6:	5e                   	pop    %esi
418ea7:	5f                   	pop    %edi
418ea8:	5d                   	pop    %ebp
418ea9:	c3                   	ret
418eaa:	e8 33 8f ff ff       	call   0x411de2
418eaf:	85 c0                	test   %eax,%eax
418eb1:	74 e6                	je     0x418e99
418eb3:	56                   	push   %esi
418eb4:	e8 94 6b ff ff       	call   0x40fa4d
418eb9:	59                   	pop    %ecx
418eba:	85 c0                	test   %eax,%eax
418ebc:	74 db                	je     0x418e99
418ebe:	56                   	push   %esi
418ebf:	57                   	push   %edi
418ec0:	6a 00                	push   $0x0
418ec2:	ff 35 ec 4d 43 00    	push   0x434dec
418ec8:	ff 15 10 41 42 00    	call   *0x424110
418ece:	85 c0                	test   %eax,%eax
418ed0:	74 d8                	je     0x418eaa
418ed2:	eb d2                	jmp    0x418ea6
418ed4:	8b ff                	mov    %edi,%edi
418ed6:	55                   	push   %ebp
418ed7:	8b ec                	mov    %esp,%ebp
418ed9:	51                   	push   %ecx
418eda:	51                   	push   %ecx
418edb:	66 8b 45 08          	mov    0x8(%ebp),%ax
418edf:	b9 ff ff 00 00       	mov    $0xffff,%ecx
418ee4:	56                   	push   %esi
418ee5:	66 8b 75 0c          	mov    0xc(%ebp),%si
418ee9:	0f b7 d6             	movzwl %si,%edx
418eec:	66 3b c1             	cmp    %cx,%ax
418eef:	74 47                	je     0x418f38
418ef1:	b9 00 01 00 00       	mov    $0x100,%ecx
418ef6:	66 3b c1             	cmp    %cx,%ax
418ef9:	73 10                	jae    0x418f0b
418efb:	0f b7 c8             	movzwl %ax,%ecx
418efe:	a1 70 31 43 00       	mov    0x433170,%eax
418f03:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
418f07:	23 c2                	and    %edx,%eax
418f09:	eb 2f                	jmp    0x418f3a
418f0b:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
418f0f:	33 c0                	xor    %eax,%eax
418f11:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
418f15:	8d 45 fc             	lea    -0x4(%ebp),%eax
418f18:	50                   	push   %eax
418f19:	6a 01                	push   $0x1
418f1b:	8d 45 f8             	lea    -0x8(%ebp),%eax
418f1e:	50                   	push   %eax
418f1f:	6a 01                	push   $0x1
418f21:	e8 54 79 00 00       	call   0x42087a
418f26:	83 c4 10             	add    $0x10,%esp
418f29:	85 c0                	test   %eax,%eax
418f2b:	74 0b                	je     0x418f38
418f2d:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
418f31:	0f b7 ce             	movzwl %si,%ecx
418f34:	23 c1                	and    %ecx,%eax
418f36:	eb 02                	jmp    0x418f3a
418f38:	33 c0                	xor    %eax,%eax
418f3a:	5e                   	pop    %esi
418f3b:	c9                   	leave
418f3c:	c3                   	ret
418f3d:	e8 90 7c 00 00       	call   0x420bd2
418f42:	50                   	push   %eax
418f43:	e8 68 7c 00 00       	call   0x420bb0
418f48:	59                   	pop    %ecx
418f49:	c3                   	ret
418f4a:	6a 0a                	push   $0xa
418f4c:	ff 15 70 40 42 00    	call   *0x424070
418f52:	a3 5c 53 43 00       	mov    %eax,0x43535c
418f57:	33 c0                	xor    %eax,%eax
418f59:	c3                   	ret
418f5a:	cc                   	int3
418f5b:	cc                   	int3
418f5c:	cc                   	int3
418f5d:	cc                   	int3
418f5e:	cc                   	int3
418f5f:	cc                   	int3
418f60:	55                   	push   %ebp
418f61:	8b ec                	mov    %esp,%ebp
418f63:	83 ec 10             	sub    $0x10,%esp
418f66:	83 e4 f0             	and    $0xfffffff0,%esp
418f69:	d9 c9                	fxch   %st(1)
418f6b:	dd 1c 24             	fstpl  (%esp)
418f6e:	dd 5c 24 08          	fstpl  0x8(%esp)
418f72:	e8 02 00 00 00       	call   0x418f79
418f77:	c9                   	leave
418f78:	c3                   	ret
418f79:	66 0f 12 44 24 04    	movlpd 0x4(%esp),%xmm0
418f7f:	66 0f 12 3d 30 84 42 	movlpd 0x428430,%xmm7
418f86:	00
418f87:	66 0f 12 15 40 84 42 	movlpd 0x428440,%xmm2
418f8e:	00
418f8f:	66 0f 54 f8          	andpd  %xmm0,%xmm7
418f93:	f2 0f 10 e0          	movsd  %xmm0,%xmm4
418f97:	66 0f 73 d0 2c       	psrlq  $0x2c,%xmm0
418f9c:	66 0f c5 c0 00       	pextrw $0x0,%xmm0,%eax
418fa1:	66 0f 56 fa          	orpd   %xmm2,%xmm7
418fa5:	66 0f c5 cc 03       	pextrw $0x3,%xmm4,%ecx
418faa:	25 ff 00 00 00       	and    $0xff,%eax
418faf:	83 c0 01             	add    $0x1,%eax
418fb2:	25 fe 01 00 00       	and    $0x1fe,%eax
418fb7:	f2 0f 59 3c 85 78 b4 	mulsd  0x42b478(,%eax,4),%xmm7
418fbe:	42 00
418fc0:	66 0f 12 2c 85 78 b4 	movlpd 0x42b478(,%eax,4),%xmm5
418fc7:	42 00
418fc9:	03 c0                	add    %eax,%eax
418fcb:	66 0f 28 34 85 90 b8 	movapd 0x42b890(,%eax,4),%xmm6
418fd2:	42 00
418fd4:	ba ef 7f 00 00       	mov    $0x7fef,%edx
418fd9:	2b d1                	sub    %ecx,%edx
418fdb:	83 e9 10             	sub    $0x10,%ecx
418fde:	0b ca                	or     %edx,%ecx
418fe0:	81 f9 00 00 00 80    	cmp    $0x80000000,%ecx
418fe6:	0f 83 db 02 00 00    	jae    0x4192c7
418fec:	b9 00 00 00 00       	mov    $0x0,%ecx
418ff1:	ba 7f fe 03 00       	mov    $0x3fe7f,%edx
418ff6:	66 0f 6e ca          	movd   %edx,%xmm1
418ffa:	66 0f fb c1          	psubq  %xmm1,%xmm0
418ffe:	66 0f 73 d0 08       	psrlq  $0x8,%xmm0
419003:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
419007:	66 0f 12 0d 88 84 42 	movlpd 0x428488,%xmm1
41900e:	00
41900f:	f2 0f 10 df          	movsd  %xmm7,%xmm3
419013:	66 0f 73 d7 26       	psrlq  $0x26,%xmm7
419018:	66 0f c5 c7 00       	pextrw $0x0,%xmm7,%eax
41901d:	66 0f 54 25 30 84 42 	andpd  0x428430,%xmm4
419024:	00
419025:	25 ff 00 00 00       	and    $0xff,%eax
41902a:	83 c0 01             	add    $0x1,%eax
41902d:	25 fe 01 00 00       	and    $0x1fe,%eax
419032:	f2 0f 59 1c 85 a0 c0 	mulsd  0x42c0a0(,%eax,4),%xmm3
419039:	42 00
41903b:	f2 0f 59 2c 85 a0 c0 	mulsd  0x42c0a0(,%eax,4),%xmm5
419042:	42 00
419044:	03 c0                	add    %eax,%eax
419046:	66 0f 58 34 85 b0 c4 	addpd  0x42c4b0(,%eax,4),%xmm6
41904d:	42 00
41904f:	66 0f 56 25 40 84 42 	orpd   0x428440,%xmm4
419056:	00
419057:	f2 0f 58 f0          	addsd  %xmm0,%xmm6
41905b:	66 0f 54 cc          	andpd  %xmm4,%xmm1
41905f:	f2 0f 10 d3          	movsd  %xmm3,%xmm2
419063:	66 0f 73 d3 1f       	psrlq  $0x1f,%xmm3
419068:	66 0f c5 c3 00       	pextrw $0x0,%xmm3,%eax
41906d:	66 0f 12 05 88 84 42 	movlpd 0x428488,%xmm0
419074:	00
419075:	f2 0f 5c e1          	subsd  %xmm1,%xmm4
419079:	66 0f 12 3d 90 84 42 	movlpd 0x428490,%xmm7
419080:	00
419081:	25 ff 01 00 00       	and    $0x1ff,%eax
419086:	83 c0 01             	add    $0x1,%eax
419089:	25 fe 03 00 00       	and    $0x3fe,%eax
41908e:	f2 0f 59 2c 85 c0 cc 	mulsd  0x42ccc0(,%eax,4),%xmm5
419095:	42 00
419097:	f2 0f 59 14 85 c0 cc 	mulsd  0x42ccc0(,%eax,4),%xmm2
41909e:	42 00
4190a0:	66 0f 58 34 c5 d0 d4 	addpd  0x42d4d0(,%eax,8),%xmm6
4190a7:	42 00
4190a9:	66 0f 54 c5          	andpd  %xmm5,%xmm0
4190ad:	f2 0f 5c e8          	subsd  %xmm0,%xmm5
4190b1:	f2 0f 58 fa          	addsd  %xmm2,%xmm7
4190b5:	f2 0f 10 d8          	movsd  %xmm0,%xmm3
4190b9:	f2 0f 59 c1          	mulsd  %xmm1,%xmm0
4190bd:	f2 0f 59 cd          	mulsd  %xmm5,%xmm1
4190c1:	f2 0f 59 dc          	mulsd  %xmm4,%xmm3
4190c5:	f2 0f 5c d0          	subsd  %xmm0,%xmm2
4190c9:	f2 0f 59 e5          	mulsd  %xmm5,%xmm4
4190cd:	f2 0f 10 c6          	movsd  %xmm6,%xmm0
4190d1:	f2 0f 5c d1          	subsd  %xmm1,%xmm2
4190d5:	f2 0f 58 f7          	addsd  %xmm7,%xmm6
4190d9:	66 0f 12 4c 24 0c    	movlpd 0xc(%esp),%xmm1
4190df:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
4190e4:	f2 0f 5c d3          	subsd  %xmm3,%xmm2
4190e8:	f2 0f 5c c6          	subsd  %xmm6,%xmm0
4190ec:	66 0f 12 1d 88 84 42 	movlpd 0x428488,%xmm3