439268:	8b 74 85 84          	mov    -0x7c(%ebp,%eax,4),%esi
43926c:	8b 8c 85 0c ff ff ff 	mov    -0xf4(%ebp,%eax,4),%ecx
439273:	89 b5 fc fe ff ff    	mov    %esi,-0x104(%ebp)
439279:	e9 8e fb ff ff       	jmp    0x438e0c
43927e:	cc                   	int3
43927f:	cc                   	int3
439280:	55                   	push   %ebp
439281:	8b ec                	mov    %esp,%ebp
439283:	56                   	push   %esi
439284:	33 c0                	xor    %eax,%eax
439286:	50                   	push   %eax
439287:	50                   	push   %eax
439288:	50                   	push   %eax
439289:	50                   	push   %eax
43928a:	50                   	push   %eax
43928b:	50                   	push   %eax
43928c:	50                   	push   %eax
43928d:	50                   	push   %eax
43928e:	8b 55 0c             	mov    0xc(%ebp),%edx
439291:	8d 49 00             	lea    0x0(%ecx),%ecx
439294:	8a 02                	mov    (%edx),%al
439296:	0a c0                	or     %al,%al
439298:	74 09                	je     0x4392a3
43929a:	83 c2 01             	add    $0x1,%edx
43929d:	0f ab 04 24          	bts    %eax,(%esp)
4392a1:	eb f1                	jmp    0x439294
4392a3:	8b 75 08             	mov    0x8(%ebp),%esi
4392a6:	8b ff                	mov    %edi,%edi
4392a8:	8a 06                	mov    (%esi),%al
4392aa:	0a c0                	or     %al,%al
4392ac:	74 0c                	je     0x4392ba
4392ae:	83 c6 01             	add    $0x1,%esi
4392b1:	0f a3 04 24          	bt     %eax,(%esp)
4392b5:	73 f1                	jae    0x4392a8
4392b7:	8d 46 ff             	lea    -0x1(%esi),%eax
4392ba:	83 c4 20             	add    $0x20,%esp
4392bd:	5e                   	pop    %esi
4392be:	c9                   	leave
4392bf:	c3                   	ret
4392c0:	e8 db 95 ff ff       	call   0x4328a0
4392c5:	33 c9                	xor    %ecx,%ecx
4392c7:	84 c0                	test   %al,%al
4392c9:	0f 94 c1             	sete   %cl
4392cc:	8b c1                	mov    %ecx,%eax
4392ce:	c3                   	ret
4392cf:	8b ff                	mov    %edi,%edi
4392d1:	55                   	push   %ebp
4392d2:	8b ec                	mov    %esp,%ebp
4392d4:	83 3d 80 6d 45 00 00 	cmpl   $0x0,0x456d80
4392db:	56                   	push   %esi
4392dc:	75 48                	jne    0x439326
4392de:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4392e2:	75 17                	jne    0x4392fb
4392e4:	e8 47 a7 fe ff       	call   0x423a30
4392e9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4392ef:	e8 8f 66 fe ff       	call   0x41f983
4392f4:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4392f9:	eb 3e                	jmp    0x439339
4392fb:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4392ff:	74 e3                	je     0x4392e4
439301:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
439306:	39 75 10             	cmp    %esi,0x10(%ebp)
439309:	76 14                	jbe    0x43931f
43930b:	e8 20 a7 fe ff       	call   0x423a30
439310:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
439316:	e8 68 66 fe ff       	call   0x41f983
43931b:	8b c6                	mov    %esi,%eax
43931d:	eb 1a                	jmp    0x439339
43931f:	5e                   	pop    %esi
439320:	5d                   	pop    %ebp
439321:	e9 48 d1 fe ff       	jmp    0x42646e
439326:	6a 00                	push   $0x0
439328:	ff 75 10             	push   0x10(%ebp)
43932b:	ff 75 0c             	push   0xc(%ebp)
43932e:	ff 75 08             	push   0x8(%ebp)
439331:	e8 06 00 00 00       	call   0x43933c
439336:	83 c4 10             	add    $0x10,%esp
439339:	5e                   	pop    %esi
43933a:	5d                   	pop    %ebp
43933b:	c3                   	ret
43933c:	8b ff                	mov    %edi,%edi
43933e:	55                   	push   %ebp
43933f:	8b ec                	mov    %esp,%ebp
439341:	83 ec 10             	sub    $0x10,%esp
439344:	57                   	push   %edi
439345:	8b 7d 10             	mov    0x10(%ebp),%edi
439348:	85 ff                	test   %edi,%edi
43934a:	75 07                	jne    0x439353
43934c:	33 c0                	xor    %eax,%eax
43934e:	e9 a6 00 00 00       	jmp    0x4393f9
439353:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
439357:	75 1a                	jne    0x439373
439359:	e8 d2 a6 fe ff       	call   0x423a30
43935e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
439364:	e8 1a 66 fe ff       	call   0x41f983
439369:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
43936e:	e9 86 00 00 00       	jmp    0x4393f9
439373:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
439377:	74 e0                	je     0x439359
439379:	56                   	push   %esi
43937a:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
43937f:	3b fe                	cmp    %esi,%edi
439381:	76 12                	jbe    0x439395
439383:	e8 a8 a6 fe ff       	call   0x423a30
439388:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
43938e:	e8 f0 65 fe ff       	call   0x41f983
439393:	eb 61                	jmp    0x4393f6
439395:	ff 75 14             	push   0x14(%ebp)
439398:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43939b:	e8 79 a9 fe ff       	call   0x423d19
4393a0:	8b 45 f4             	mov    -0xc(%ebp),%eax
4393a3:	57                   	push   %edi
4393a4:	ff 75 0c             	push   0xc(%ebp)
4393a7:	8b 80 a4 00 00 00    	mov    0xa4(%eax),%eax
4393ad:	85 c0                	test   %eax,%eax
4393af:	75 0f                	jne    0x4393c0
4393b1:	ff 75 08             	push   0x8(%ebp)
4393b4:	e8 b5 d0 fe ff       	call   0x42646e
4393b9:	83 c4 0c             	add    $0xc,%esp
4393bc:	8b f0                	mov    %eax,%esi
4393be:	eb 26                	jmp    0x4393e6
4393c0:	57                   	push   %edi
4393c1:	ff 75 08             	push   0x8(%ebp)
4393c4:	68 01 10 00 00       	push   $0x1001
4393c9:	50                   	push   %eax
4393ca:	e8 e7 08 00 00       	call   0x439cb6
4393cf:	83 c4 18             	add    $0x18,%esp
4393d2:	85 c0                	test   %eax,%eax
4393d4:	75 0d                	jne    0x4393e3
4393d6:	e8 55 a6 fe ff       	call   0x423a30
4393db:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4393e1:	eb 03                	jmp    0x4393e6
4393e3:	8d 70 fe             	lea    -0x2(%eax),%esi
4393e6:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
4393ea:	74 0a                	je     0x4393f6
4393ec:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4393ef:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
4393f6:	8b c6                	mov    %esi,%eax
4393f8:	5e                   	pop    %esi
4393f9:	5f                   	pop    %edi
4393fa:	c9                   	leave
4393fb:	c3                   	ret
4393fc:	8b ff                	mov    %edi,%edi
4393fe:	55                   	push   %ebp
4393ff:	8b ec                	mov    %esp,%ebp
439401:	56                   	push   %esi
439402:	e8 5c f0 ff ff       	call   0x438463
439407:	8b 75 08             	mov    0x8(%ebp),%esi
43940a:	89 06                	mov    %eax,(%esi)
43940c:	e8 d2 f0 ff ff       	call   0x4384e3
439411:	89 46 04             	mov    %eax,0x4(%esi)
439414:	33 c0                	xor    %eax,%eax
439416:	5e                   	pop    %esi
439417:	5d                   	pop    %ebp
439418:	c3                   	ret
439419:	8b ff                	mov    %edi,%edi
43941b:	55                   	push   %ebp
43941c:	8b ec                	mov    %esp,%ebp
43941e:	51                   	push   %ecx
43941f:	51                   	push   %ecx
439420:	56                   	push   %esi
439421:	8b 75 08             	mov    0x8(%ebp),%esi
439424:	ff 36                	push   (%esi)
439426:	e8 62 f1 ff ff       	call   0x43858d
43942b:	ff 76 04             	push   0x4(%esi)
43942e:	e8 d5 f1 ff ff       	call   0x438608
439433:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
439437:	8d 45 f8             	lea    -0x8(%ebp),%eax
43943a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43943e:	50                   	push   %eax
43943f:	e8 b8 ff ff ff       	call   0x4393fc
439444:	83 c4 0c             	add    $0xc,%esp
439447:	85 c0                	test   %eax,%eax
439449:	75 14                	jne    0x43945f
43944b:	8b 06                	mov    (%esi),%eax
43944d:	3b 45 f8             	cmp    -0x8(%ebp),%eax
439450:	75 0d                	jne    0x43945f
439452:	8b 4e 04             	mov    0x4(%esi),%ecx
439455:	33 c0                	xor    %eax,%eax
439457:	3b 4d fc             	cmp    -0x4(%ebp),%ecx
43945a:	0f 95 c0             	setne  %al
43945d:	eb 03                	jmp    0x439462
43945f:	33 c0                	xor    %eax,%eax
439461:	40                   	inc    %eax
439462:	5e                   	pop    %esi
439463:	c9                   	leave
439464:	c3                   	ret
439465:	8b ff                	mov    %edi,%edi
439467:	55                   	push   %ebp
439468:	8b ec                	mov    %esp,%ebp
43946a:	51                   	push   %ecx
43946b:	51                   	push   %ecx
43946c:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
439470:	8d 45 f8             	lea    -0x8(%ebp),%eax
439473:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
439477:	50                   	push   %eax
439478:	e8 7f ff ff ff       	call   0x4393fc
43947d:	59                   	pop    %ecx
43947e:	85 c0                	test   %eax,%eax
439480:	75 2b                	jne    0x4394ad
439482:	8b 45 08             	mov    0x8(%ebp),%eax
439485:	8b 55 f8             	mov    -0x8(%ebp),%edx
439488:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43948b:	89 10                	mov    %edx,(%eax)
43948d:	83 ca 1f             	or     $0x1f,%edx
439490:	89 48 04             	mov    %ecx,0x4(%eax)
439493:	8d 45 f8             	lea    -0x8(%ebp),%eax
439496:	50                   	push   %eax
439497:	89 55 f8             	mov    %edx,-0x8(%ebp)
43949a:	e8 7a ff ff ff       	call   0x439419
43949f:	59                   	pop    %ecx
4394a0:	85 c0                	test   %eax,%eax
4394a2:	75 09                	jne    0x4394ad
4394a4:	e8 71 c3 ff ff       	call   0x43581a
4394a9:	33 c0                	xor    %eax,%eax
4394ab:	c9                   	leave
4394ac:	c3                   	ret
4394ad:	33 c0                	xor    %eax,%eax
4394af:	40                   	inc    %eax
4394b0:	c9                   	leave
4394b1:	c3                   	ret
4394b2:	cc                   	int3
4394b3:	cc                   	int3
4394b4:	cc                   	int3
4394b5:	cc                   	int3
4394b6:	cc                   	int3
4394b7:	cc                   	int3
4394b8:	cc                   	int3
4394b9:	cc                   	int3
4394ba:	cc                   	int3
4394bb:	cc                   	int3
4394bc:	cc                   	int3
4394bd:	cc                   	int3
4394be:	cc                   	int3
4394bf:	cc                   	int3
4394c0:	83 3d d0 7b 45 00 00 	cmpl   $0x0,0x457bd0
4394c7:	74 32                	je     0x4394fb
4394c9:	83 ec 08             	sub    $0x8,%esp
4394cc:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
4394d1:	8b 44 24 04          	mov    0x4(%esp),%eax
4394d5:	25 80 7f 00 00       	and    $0x7f80,%eax
4394da:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
4394df:	75 0f                	jne    0x4394f0
4394e1:	d9 3c 24             	fnstcw (%esp)
4394e4:	66 8b 04 24          	mov    (%esp),%ax
4394e8:	66 83 e0 7f          	and    $0x7f,%ax
4394ec:	66 83 f8 7f          	cmp    $0x7f,%ax
4394f0:	8d 64 24 08          	lea    0x8(%esp),%esp
4394f4:	75 05                	jne    0x4394fb
4394f6:	e9 25 08 00 00       	jmp    0x439d20
4394fb:	83 ec 0c             	sub    $0xc,%esp
4394fe:	dd 14 24             	fstl   (%esp)
439501:	e8 d2 81 ff ff       	call   0x4316d8
439506:	e8 0d 00 00 00       	call   0x439518
43950b:	83 c4 0c             	add    $0xc,%esp
43950e:	c3                   	ret
43950f:	8d 54 24 04          	lea    0x4(%esp),%edx
439513:	e8 7d 81 ff ff       	call   0x431695
439518:	52                   	push   %edx
439519:	9b d9 3c 24          	fstcw  (%esp)
43951d:	74 4c                	je     0x43956b
43951f:	8b 44 24 0c          	mov    0xc(%esp),%eax
439523:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
439529:	74 06                	je     0x439531
43952b:	d9 2d 58 2a 44 00    	fldcw  0x442a58
439531:	a9 00 00 f0 7f       	test   $0x7ff00000,%eax
439536:	74 5e                	je     0x439596
439538:	a9 00 00 00 80       	test   $0x80000000,%eax
43953d:	75 41                	jne    0x439580
43953f:	d9 ec                	fldlg2
439541:	d9 c9                	fxch   %st(1)
439543:	d9 f1                	fyl2x
439545:	83 3d 7c 71 45 00 00 	cmpl   $0x0,0x45717c
43954c:	0f 85 9c 81 ff ff    	jne    0x4316ee
439552:	8d 0d c0 91 44 00    	lea    0x4491c0,%ecx
439558:	ba 1b 00 00 00       	mov    $0x1b,%edx
43955d:	e9 99 81 ff ff       	jmp    0x4316fb
439562:	a9 00 00 00 80       	test   $0x80000000,%eax
439567:	75 17                	jne    0x439580
439569:	eb d4                	jmp    0x43953f
43956b:	a9 ff ff 0f 00       	test   $0xfffff,%eax
439570:	75 1d                	jne    0x43958f
439572:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
439577:	75 16                	jne    0x43958f
439579:	25 00 00 00 80       	and    $0x80000000,%eax
43957e:	74 c5                	je     0x439545
439580:	dd d8                	fstp   %st(0)
439582:	db 2d 10 2a 44 00    	fldt   0x442a10
439588:	b8 01 00 00 00       	mov    $0x1,%eax
43958d:	eb 22                	jmp    0x4395b1
43958f:	e8 e8 80 ff ff       	call   0x43167c
439594:	eb 1b                	jmp    0x4395b1
439596:	a9 ff ff 0f 00       	test   $0xfffff,%eax
43959b:	75 c5                	jne    0x439562
43959d:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
4395a2:	75 be                	jne    0x439562
4395a4:	dd d8                	fstp   %st(0)
4395a6:	db 2d ba 29 44 00    	fldt   0x4429ba
4395ac:	b8 02 00 00 00       	mov    $0x2,%eax
4395b1:	83 3d 7c 71 45 00 00 	cmpl   $0x0,0x45717c
4395b8:	0f 85 30 81 ff ff    	jne    0x4316ee
4395be:	8d 0d c0 91 44 00    	lea    0x4491c0,%ecx
4395c4:	ba 1b 00 00 00       	mov    $0x1b,%edx
4395c9:	e8 39 80 ff ff       	call   0x431607
4395ce:	5a                   	pop    %edx
4395cf:	c3                   	ret
4395d0:	83 3d d0 7b 45 00 00 	cmpl   $0x0,0x457bd0
4395d7:	0f 84 d3 09 00 00    	je     0x439fb0
4395dd:	83 ec 08             	sub    $0x8,%esp
4395e0:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
4395e5:	8b 44 24 04          	mov    0x4(%esp),%eax
4395e9:	25 80 7f 00 00       	and    $0x7f80,%eax
4395ee:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
4395f3:	75 0f                	jne    0x439604
4395f5:	d9 3c 24             	fnstcw (%esp)
4395f8:	66 8b 04 24          	mov    (%esp),%ax
4395fc:	66 83 e0 7f          	and    $0x7f,%ax
439600:	66 83 f8 7f          	cmp    $0x7f,%ax
439604:	8d 64 24 08          	lea    0x8(%esp),%esp
439608:	0f 85 a2 09 00 00    	jne    0x439fb0
43960e:	eb 00                	jmp    0x439610
439610:	f3 0f 7e 44 24 04    	movq   0x4(%esp),%xmm0
439616:	66 0f 28 15 e0 91 44 	movapd 0x4491e0,%xmm2
43961d:	00
43961e:	66 0f 28 c8          	movapd %xmm0,%xmm1
439622:	66 0f 28 f8          	movapd %xmm0,%xmm7
439626:	66 0f 73 d0 34       	psrlq  $0x34,%xmm0
43962b:	66 0f 7e c0          	movd   %xmm0,%eax
43962f:	66 0f 54 05 00 92 44 	andpd  0x449200,%xmm0
439636:	00
439637:	66 0f fa d0          	psubd  %xmm0,%xmm2
43963b:	66 0f d3 ca          	psrlq  %xmm2,%xmm1
43963f:	a9 00 08 00 00       	test   $0x800,%eax
439644:	74 4c                	je     0x439692
439646:	3d ff 0b 00 00       	cmp    $0xbff,%eax
43964b:	7c 7d                	jl     0x4396ca
43964d:	66 0f f3 ca          	psllq  %xmm2,%xmm1
439651:	3d 32 0c 00 00       	cmp    $0xc32,%eax
439656:	7f 0b                	jg     0x439663
439658:	66 0f d6 4c 24 04    	movq   %xmm1,0x4(%esp)
43965e:	dd 44 24 04          	fldl   0x4(%esp)
439662:	c3                   	ret
439663:	66 0f 2e ff          	ucomisd %xmm7,%xmm7
439667:	7b 24                	jnp    0x43968d
439669:	ba ec 03 00 00       	mov    $0x3ec,%edx
43966e:	83 ec 10             	sub    $0x10,%esp
439671:	89 54 24 0c          	mov    %edx,0xc(%esp)
439675:	8b d4                	mov    %esp,%edx
439677:	83 c2 14             	add    $0x14,%edx
43967a:	89 54 24 08          	mov    %edx,0x8(%esp)