43fd98:	2b 44 24 08          	sub    0x8(%esp),%eax
43fd9c:	1b 54 24 0c          	sbb    0xc(%esp),%edx
43fda0:	f7 da                	neg    %edx
43fda2:	f7 d8                	neg    %eax
43fda4:	83 da 00             	sbb    $0x0,%edx
43fda7:	8b ca                	mov    %edx,%ecx
43fda9:	8b d3                	mov    %ebx,%edx
43fdab:	8b d9                	mov    %ecx,%ebx
43fdad:	8b c8                	mov    %eax,%ecx
43fdaf:	8b c6                	mov    %esi,%eax
43fdb1:	5e                   	pop    %esi
43fdb2:	c2 10 00             	ret    $0x10
43fdb5:	cc                   	int3
43fdb6:	cc                   	int3
43fdb7:	cc                   	int3
43fdb8:	cc                   	int3
43fdb9:	cc                   	int3
43fdba:	cc                   	int3
43fdbb:	cc                   	int3
43fdbc:	cc                   	int3
43fdbd:	cc                   	int3
43fdbe:	cc                   	int3
43fdbf:	cc                   	int3
43fdc0:	80 f9 40             	cmp    $0x40,%cl
43fdc3:	73 15                	jae    0x43fdda
43fdc5:	80 f9 20             	cmp    $0x20,%cl
43fdc8:	73 06                	jae    0x43fdd0
43fdca:	0f ad d0             	shrd   %cl,%edx,%eax
43fdcd:	d3 ea                	shr    %cl,%edx
43fdcf:	c3                   	ret
43fdd0:	8b c2                	mov    %edx,%eax
43fdd2:	33 d2                	xor    %edx,%edx
43fdd4:	80 e1 1f             	and    $0x1f,%cl
43fdd7:	d3 e8                	shr    %cl,%eax
43fdd9:	c3                   	ret
43fdda:	33 c0                	xor    %eax,%eax
43fddc:	33 d2                	xor    %edx,%edx
43fdde:	c3                   	ret
43fddf:	cc                   	int3
43fde0:	b9 01 00 00 00       	mov    $0x1,%ecx
43fde5:	f2 0f 10 2d 48 ad 49 	movsd  0x49ad48,%xmm5
43fdec:	00
43fded:	eb 1c                	jmp    0x43fe0b
43fdef:	b9 02 00 00 00       	mov    $0x2,%ecx
43fdf4:	f2 0f 10 2d 50 ad 49 	movsd  0x49ad50,%xmm5
43fdfb:	00
43fdfc:	eb 0d                	jmp    0x43fe0b
43fdfe:	b9 03 00 00 00       	mov    $0x3,%ecx
43fe03:	f2 0f 10 2d 48 ad 49 	movsd  0x49ad48,%xmm5
43fe0a:	00
43fe0b:	66 0f 7e c0          	movd   %xmm0,%eax
43fe0f:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
43fe14:	3d 00 00 80 7f       	cmp    $0x7f800000,%eax
43fe19:	0f 83 4c 01 00 00    	jae    0x43ff6b
43fe1f:	f3 0f 5a c0          	cvtss2sd %xmm0,%xmm0
43fe23:	83 f9 02             	cmp    $0x2,%ecx
43fe26:	75 18                	jne    0x43fe40
43fe28:	f2 0f 10 15 68 ad 49 	movsd  0x49ad68,%xmm2
43fe2f:	00
43fe30:	66 0f 2f c2          	comisd %xmm2,%xmm0
43fe34:	76 0a                	jbe    0x43fe40
43fe36:	ba 10 00 00 00       	mov    $0x10,%edx
43fe3b:	e8 3d 01 00 00       	call   0x43ff7d
43fe40:	66 0f 2f c5          	comisd %xmm5,%xmm0
43fe44:	0f 83 21 01 00 00    	jae    0x43ff6b
43fe4a:	f2 0f 10 35 40 ad 49 	movsd  0x49ad40,%xmm6
43fe51:	00
43fe52:	66 0f 2f c6          	comisd %xmm6,%xmm0
43fe56:	0f 82 0f 01 00 00    	jb     0x43ff6b
43fe5c:	66 0f 6f c8          	movdqa %xmm0,%xmm1
43fe60:	66 0f 73 f1 01       	psllq  $0x1,%xmm1
43fe65:	66 0f 73 d1 01       	psrlq  $0x1,%xmm1
43fe6a:	83 f9 01             	cmp    $0x1,%ecx
43fe6d:	74 3a                	je     0x43fea9
43fe6f:	f2 0f 10 15 60 ad 49 	movsd  0x49ad60,%xmm2
43fe76:	00
43fe77:	66 0f 2f ca          	comisd %xmm2,%xmm1
43fe7b:	77 2c                	ja     0x43fea9
43fe7d:	66 0f 57 d2          	xorpd  %xmm2,%xmm2
43fe81:	66 0f 2f ca          	comisd %xmm2,%xmm1
43fe85:	74 22                	je     0x43fea9
43fe87:	50                   	push   %eax
43fe88:	9b d9 3c 24          	fstcw  (%esp)
43fe8c:	66 8b 04 24          	mov    (%esp),%ax
43fe90:	66 a9 10 00          	test   $0x10,%ax
43fe94:	58                   	pop    %eax
43fe95:	75 12                	jne    0x43fea9
43fe97:	ba 02 00 00 00       	mov    $0x2,%edx
43fe9c:	e8 dc 00 00 00       	call   0x43ff7d
43fea1:	33 c0                	xor    %eax,%eax
43fea3:	ba 00 00 00 80       	mov    $0x80000000,%edx
43fea8:	c3                   	ret
43fea9:	66 0f 57 f6          	xorpd  %xmm6,%xmm6
43fead:	66 0f 2f ce          	comisd %xmm6,%xmm1
43feb1:	0f 84 a6 00 00 00    	je     0x43ff5d
43feb7:	f2 0f 10 1d 20 ad 49 	movsd  0x49ad20,%xmm3
43febe:	00
43febf:	f2 0f 10 25 28 ad 49 	movsd  0x49ad28,%xmm4
43fec6:	00
43fec7:	66 0f 6e 2d 80 ad 49 	movd   0x49ad80,%xmm5
43fece:	00
43fecf:	66 0f 6f f0          	movdqa %xmm0,%xmm6
43fed3:	f2 0f c2 f1 00       	cmpeqsd %xmm1,%xmm6
43fed8:	66 0f 6f d1          	movdqa %xmm1,%xmm2
43fedc:	66 0f db d3          	pand   %xmm3,%xmm2
43fee0:	66 0f eb d4          	por    %xmm4,%xmm2
43fee4:	66 0f 73 d1 34       	psrlq  $0x34,%xmm1
43fee9:	66 0f 6f e1          	movdqa %xmm1,%xmm4
43feed:	66 0f fb e5          	psubq  %xmm5,%xmm4
43fef1:	66 0f 6f da          	movdqa %xmm2,%xmm3
43fef5:	66 0f f3 dc          	psllq  %xmm4,%xmm3
43fef9:	66 0f 6f e5          	movdqa %xmm5,%xmm4
43fefd:	66 0f fb e1          	psubq  %xmm1,%xmm4
43ff01:	66 0f 6f fa          	movdqa %xmm2,%xmm7
43ff05:	66 0f d3 fc          	psrlq  %xmm4,%xmm7
43ff09:	66 0f 66 cd          	pcmpgtd %xmm5,%xmm1
43ff0d:	66 0f 62 c9          	punpckldq %xmm1,%xmm1
43ff11:	66 0f db d9          	pand   %xmm1,%xmm3
43ff15:	66 0f df cf          	pandn  %xmm7,%xmm1
43ff19:	66 0f eb cb          	por    %xmm3,%xmm1
43ff1d:	66 0f ef ed          	pxor   %xmm5,%xmm5
43ff21:	66 0f fb e9          	psubq  %xmm1,%xmm5
43ff25:	66 0f db ce          	pand   %xmm6,%xmm1
43ff29:	66 0f df f5          	pandn  %xmm5,%xmm6
43ff2d:	66 0f eb f1          	por    %xmm1,%xmm6
43ff31:	66 0f 7e e0          	movd   %xmm4,%eax
43ff35:	83 f8 00             	cmp    $0x0,%eax
43ff38:	7e 23                	jle    0x43ff5d
43ff3a:	66 0f f3 fc          	psllq  %xmm4,%xmm7
43ff3e:	66 0f ef d7          	pxor   %xmm7,%xmm2
43ff42:	66 0f 7e d0          	movd   %xmm2,%eax
43ff46:	66 0f 73 da 04       	psrldq $0x4,%xmm2
43ff4b:	66 0f 7e d2          	movd   %xmm2,%edx
43ff4f:	0b c2                	or     %edx,%eax
43ff51:	74 0a                	je     0x43ff5d
43ff53:	ba 10 00 00 00       	mov    $0x10,%edx
43ff58:	e8 20 00 00 00       	call   0x43ff7d
43ff5d:	66 0f 7e f0          	movd   %xmm6,%eax
43ff61:	66 0f 73 de 04       	psrldq $0x4,%xmm6
43ff66:	66 0f 7e f2          	movd   %xmm6,%edx
43ff6a:	c3                   	ret
43ff6b:	ba 08 00 00 00       	mov    $0x8,%edx
43ff70:	e8 08 00 00 00       	call   0x43ff7d
43ff75:	33 c0                	xor    %eax,%eax
43ff77:	ba 00 00 00 80       	mov    $0x80000000,%edx
43ff7c:	c3                   	ret
43ff7d:	83 ec 20             	sub    $0x20,%esp
43ff80:	9b d9 3c 24          	fstcw  (%esp)
43ff84:	0f b7 04 24          	movzwl (%esp),%eax
43ff88:	83 fa 08             	cmp    $0x8,%edx
43ff8b:	74 08                	je     0x43ff95
43ff8d:	84 82 6f ad 49 00    	test   %al,0x49ad6f(%edx)
43ff93:	75 28                	jne    0x43ffbd
43ff95:	d9 2d 90 ad 49 00    	fldcw  0x49ad90
43ff9b:	89 14 24             	mov    %edx,(%esp)
43ff9e:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
43ffa5:	00
43ffa6:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%esp)
43ffac:	f2 0f 11 44 24 10    	movsd  %xmm0,0x10(%esp)
43ffb2:	89 44 24 18          	mov    %eax,0x18(%esp)
43ffb6:	e8 5f da 02 00       	call   0x46da1a
43ffbb:	dd d8                	fstp   %st(0)
43ffbd:	83 c4 20             	add    $0x20,%esp
43ffc0:	c3                   	ret
43ffc1:	b9 01 00 00 00       	mov    $0x1,%ecx
43ffc6:	f2 0f 10 2d 48 ad 49 	movsd  0x49ad48,%xmm5
43ffcd:	00
43ffce:	eb 1c                	jmp    0x43ffec
43ffd0:	b9 04 00 00 00       	mov    $0x4,%ecx
43ffd5:	f2 0f 10 2d 50 ad 49 	movsd  0x49ad50,%xmm5
43ffdc:	00
43ffdd:	eb 0d                	jmp    0x43ffec
43ffdf:	b9 05 00 00 00       	mov    $0x5,%ecx
43ffe4:	f2 0f 10 2d 48 ad 49 	movsd  0x49ad48,%xmm5
43ffeb:	00
43ffec:	66 0f 6f c8          	movdqa %xmm0,%xmm1
43fff0:	66 0f 73 d9 04       	psrldq $0x4,%xmm1
43fff5:	66 0f 7e c8          	movd   %xmm1,%eax
43fff9:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
43fffe:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
440003:	0f 83 62 ff ff ff    	jae    0x43ff6b
440009:	83 f9 01             	cmp    $0x1,%ecx
44000c:	0f 84 11 fe ff ff    	je     0x43fe23
440012:	66 0f 6f c8          	movdqa %xmm0,%xmm1
440016:	66 0f 73 f1 01       	psllq  $0x1,%xmm1
44001b:	66 0f 73 d1 01       	psrlq  $0x1,%xmm1
440020:	f2 0f 10 15 58 ad 49 	movsd  0x49ad58,%xmm2
440027:	00
440028:	66 0f 2f ca          	comisd %xmm2,%xmm1
44002c:	76 2f                	jbe    0x44005d
44002e:	83 f9 04             	cmp    $0x4,%ecx
440031:	74 16                	je     0x440049
440033:	ba 01 00 00 00       	mov    $0x1,%edx
440038:	e8 40 ff ff ff       	call   0x43ff7d
44003d:	ba 10 00 00 00       	mov    $0x10,%edx
440042:	e8 36 ff ff ff       	call   0x43ff7d
440047:	eb 14                	jmp    0x44005d
440049:	ba 10 00 00 00       	mov    $0x10,%edx
44004e:	e8 2a ff ff ff       	call   0x43ff7d
440053:	ba 01 00 00 00       	mov    $0x1,%edx
440058:	e8 20 ff ff ff       	call   0x43ff7d
44005d:	f2 0f 10 15 60 ad 49 	movsd  0x49ad60,%xmm2
440064:	00
440065:	66 0f 2f ca          	comisd %xmm2,%xmm1
440069:	73 27                	jae    0x440092
44006b:	66 0f 57 d2          	xorpd  %xmm2,%xmm2
44006f:	66 0f 2f ca          	comisd %xmm2,%xmm1
440073:	0f 84 30 fe ff ff    	je     0x43fea9
440079:	ba 02 00 00 00       	mov    $0x2,%edx
44007e:	e8 fa fe ff ff       	call   0x43ff7d
440083:	ba 10 00 00 00       	mov    $0x10,%edx
440088:	e8 f0 fe ff ff       	call   0x43ff7d
44008d:	e9 17 fe ff ff       	jmp    0x43fea9
440092:	66 0f 6f d8          	movdqa %xmm0,%xmm3
440096:	83 f9 04             	cmp    $0x4,%ecx
440099:	75 12                	jne    0x4400ad
44009b:	f2 0f 10 15 48 ad 49 	movsd  0x49ad48,%xmm2
4400a2:	00
4400a3:	66 0f 2f da          	comisd %xmm2,%xmm3
4400a7:	72 04                	jb     0x4400ad
4400a9:	66 0f 5c da          	subpd  %xmm2,%xmm3
4400ad:	66 0f 6f e3          	movdqa %xmm3,%xmm4
4400b1:	66 0f 73 f4 23       	psllq  $0x23,%xmm4
4400b6:	66 0f 73 d4 23       	psrlq  $0x23,%xmm4
4400bb:	66 0f 7e e0          	movd   %xmm4,%eax
4400bf:	0b c0                	or     %eax,%eax
4400c1:	74 0a                	je     0x4400cd
4400c3:	ba 10 00 00 00       	mov    $0x10,%edx
4400c8:	e8 b0 fe ff ff       	call   0x43ff7d
4400cd:	66 0f 2f c5          	comisd %xmm5,%xmm0
4400d1:	0f 83 94 fe ff ff    	jae    0x43ff6b
4400d7:	f2 0f 10 15 40 ad 49 	movsd  0x49ad40,%xmm2
4400de:	00
4400df:	66 0f 2f c2          	comisd %xmm2,%xmm0
4400e3:	0f 82 82 fe ff ff    	jb     0x43ff6b
4400e9:	e9 bb fd ff ff       	jmp    0x43fea9
4400ee:	8b ff                	mov    %edi,%edi
4400f0:	0f 57 c0             	xorps  %xmm0,%xmm0
4400f3:	f2 0f 2a c1          	cvtsi2sd %ecx,%xmm0
4400f7:	c1 e9 1f             	shr    $0x1f,%ecx
4400fa:	f2 0f 58 04 cd 10 ad 	addsd  0x49ad10(,%ecx,8),%xmm0
440101:	49 00
440103:	85 d2                	test   %edx,%edx
440105:	74 1f                	je     0x440126
440107:	0f 57 c9             	xorps  %xmm1,%xmm1
44010a:	f2 0f 2a ca          	cvtsi2sd %edx,%xmm1
44010e:	c1 ea 1f             	shr    $0x1f,%edx
440111:	f2 0f 58 0c d5 10 ad 	addsd  0x49ad10(,%edx,8),%xmm1
440118:	49 00
44011a:	f2 0f 59 0d 18 ad 49 	mulsd  0x49ad18,%xmm1
440121:	00
440122:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
440126:	c3                   	ret
440127:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
44012e:	8b ff                	mov    %edi,%edi
440130:	0f 57 c9             	xorps  %xmm1,%xmm1
440133:	f2 0f 2a ca          	cvtsi2sd %edx,%xmm1
440137:	0f 57 c0             	xorps  %xmm0,%xmm0
44013a:	f2 0f 2a c1          	cvtsi2sd %ecx,%xmm0
44013e:	c1 e9 1f             	shr    $0x1f,%ecx
440141:	f2 0f 59 0d 18 ad 49 	mulsd  0x49ad18,%xmm1
440148:	00
440149:	f2 0f 58 04 cd 10 ad 	addsd  0x49ad10(,%ecx,8),%xmm0
440150:	49 00
440152:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
440156:	c3                   	ret
440157:	c7 01 98 ad 49 00    	movl   $0x49ad98,(%ecx)
44015d:	c3                   	ret
44015e:	55                   	push   %ebp
44015f:	8b ec                	mov    %esp,%ebp
440161:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
440165:	56                   	push   %esi
440166:	8b f1                	mov    %ecx,%esi
440168:	c7 06 98 ad 49 00    	movl   $0x49ad98,(%esi)
44016e:	74 0a                	je     0x44017a
440170:	6a 0c                	push   $0xc
440172:	56                   	push   %esi
440173:	e8 5b f1 ff ff       	call   0x43f2d3
440178:	59                   	pop    %ecx
440179:	59                   	pop    %ecx
44017a:	8b c6                	mov    %esi,%eax
44017c:	5e                   	pop    %esi
44017d:	5d                   	pop    %ebp
44017e:	c2 04 00             	ret    $0x4
440181:	e9 08 cc 00 00       	jmp    0x44cd8e
440186:	56                   	push   %esi
440187:	6a 01                	push   $0x1
440189:	e8 1c e2 02 00       	call   0x46e3aa
44018e:	e8 d5 0b 00 00       	call   0x440d68
440193:	50                   	push   %eax
440194:	e8 f0 e3 02 00       	call   0x46e589
440199:	e8 61 ff 02 00       	call   0x4700ff
44019e:	8b f0                	mov    %eax,%esi
4401a0:	e8 c0 0b 00 00       	call   0x440d65
4401a5:	6a 01                	push   $0x1
4401a7:	89 06                	mov    %eax,(%esi)
4401a9:	e8 3b f3 ff ff       	call   0x43f4e9
4401ae:	83 c4 0c             	add    $0xc,%esp
4401b1:	5e                   	pop    %esi
4401b2:	84 c0                	test   %al,%al
4401b4:	74 73                	je     0x440229
4401b6:	db e2                	fnclex
4401b8:	e8 30 0c 00 00       	call   0x440ded
4401bd:	68 19 0e 44 00       	push   $0x440e19
4401c2:	e8 0c f5 ff ff       	call   0x43f6d3
4401c7:	e8 8f 05 00 00       	call   0x44075b
4401cc:	50                   	push   %eax
4401cd:	e8 37 c9 02 00       	call   0x46cb09
4401d2:	59                   	pop    %ecx
4401d3:	59                   	pop    %ecx
4401d4:	85 c0                	test   %eax,%eax
4401d6:	75 51                	jne    0x440229
4401d8:	e8 97 0b 00 00       	call   0x440d74
4401dd:	e8 f3 0b 00 00       	call   0x440dd5
4401e2:	85 c0                	test   %eax,%eax
4401e4:	74 0b                	je     0x4401f1
4401e6:	68 62 0d 44 00       	push   $0x440d62
4401eb:	e8 a8 e2 02 00       	call   0x46e498
4401f0:	59                   	pop    %ecx
4401f1:	e8 ba 0b 00 00       	call   0x440db0
4401f6:	e8 b6 0b 00 00       	call   0x440db1
4401fb:	e8 8f 0b 00 00       	call   0x440d8f
440200:	e8 6c 0b 00 00       	call   0x440d71
440205:	50                   	push   %eax
440206:	e8 e2 ee 02 00       	call   0x46f0ed
44020b:	59                   	pop    %ecx
44020c:	e8 7b 0b 00 00       	call   0x440d8c
440211:	84 c0                	test   %al,%al
440213:	74 05                	je     0x44021a
440215:	e8 f8 d0 02 00       	call   0x46d312
44021a:	e8 9c 06 00 00       	call   0x4408bb
44021f:	e8 92 06 00 00       	call   0x4408b6
440224:	85 c0                	test   %eax,%eax
440226:	75 01                	jne    0x440229
440228:	c3                   	ret
440229:	6a 07                	push   $0x7
44022b:	e8 3b 05 00 00       	call   0x44076b
440230:	cc                   	int3
440231:	e8 82 0b 00 00       	call   0x440db8
440236:	33 c0                	xor    %eax,%eax
440238:	c3                   	ret
440239:	e8 c3 06 00 00       	call   0x440901
44023e:	e8 2b 0b 00 00       	call   0x440d6e
440243:	50                   	push   %eax
440244:	e8 87 fe 02 00       	call   0x4700d0
440249:	59                   	pop    %ecx
44024a:	c3                   	ret
44024b:	e8 c7 0a 00 00       	call   0x440d17
440250:	e9 00 00 00 00       	jmp    0x440255
440255:	6a 14                	push   $0x14