43e2db:	5f                   	pop    %edi
43e2dc:	5e                   	pop    %esi
43e2dd:	8b e5                	mov    %ebp,%esp
43e2df:	5d                   	pop    %ebp
43e2e0:	c2 04 00             	ret    $0x4
43e2e3:	cc                   	int3
43e2e4:	cc                   	int3
43e2e5:	cc                   	int3
43e2e6:	cc                   	int3
43e2e7:	cc                   	int3
43e2e8:	cc                   	int3
43e2e9:	cc                   	int3
43e2ea:	cc                   	int3
43e2eb:	cc                   	int3
43e2ec:	cc                   	int3
43e2ed:	cc                   	int3
43e2ee:	cc                   	int3
43e2ef:	cc                   	int3
43e2f0:	55                   	push   %ebp
43e2f1:	8b ec                	mov    %esp,%ebp
43e2f3:	6a ff                	push   $0xffffffff
43e2f5:	68 a0 ba 64 00       	push   $0x64baa0
43e2fa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
43e300:	50                   	push   %eax
43e301:	56                   	push   %esi
43e302:	a1 d4 89 72 00       	mov    0x7289d4,%eax
43e307:	33 c5                	xor    %ebp,%eax
43e309:	50                   	push   %eax
43e30a:	8d 45 f4             	lea    -0xc(%ebp),%eax
43e30d:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43e313:	8b f1                	mov    %ecx,%esi
43e315:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
43e31c:	56                   	push   %esi
43e31d:	c7 06 30 c4 68 00    	movl   $0x68c430,(%esi)
43e323:	e8 47 0a 19 00       	call   0x5ced6f
43e328:	83 c4 04             	add    $0x4,%esp
43e32b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
43e32f:	74 0b                	je     0x43e33c
43e331:	6a 48                	push   $0x48
43e333:	56                   	push   %esi
43e334:	e8 39 2d 1a 00       	call   0x5e1072
43e339:	83 c4 08             	add    $0x8,%esp
43e33c:	8b c6                	mov    %esi,%eax
43e33e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43e341:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
43e348:	59                   	pop    %ecx
43e349:	5e                   	pop    %esi
43e34a:	8b e5                	mov    %ebp,%esp
43e34c:	5d                   	pop    %ebp
43e34d:	c2 04 00             	ret    $0x4
43e350:	55                   	push   %ebp
43e351:	8b ec                	mov    %esp,%ebp
43e353:	6a ff                	push   $0xffffffff
43e355:	68 a0 ba 64 00       	push   $0x64baa0
43e35a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
43e360:	50                   	push   %eax
43e361:	56                   	push   %esi
43e362:	a1 d4 89 72 00       	mov    0x7289d4,%eax
43e367:	33 c5                	xor    %ebp,%eax
43e369:	50                   	push   %eax
43e36a:	8d 45 f4             	lea    -0xc(%ebp),%eax
43e36d:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43e373:	8b f1                	mov    %ecx,%esi
43e375:	e8 f4 00 19 00       	call   0x5ce46e
43e37a:	84 c0                	test   %al,%al
43e37c:	75 07                	jne    0x43e385
43e37e:	8b 0e                	mov    (%esi),%ecx
43e380:	e8 2b 24 00 00       	call   0x4407b0
43e385:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
43e38c:	8b 0e                	mov    (%esi),%ecx
43e38e:	8b 01                	mov    (%ecx),%eax
43e390:	8b 40 04             	mov    0x4(%eax),%eax
43e393:	8b 4c 08 38          	mov    0x38(%eax,%ecx,1),%ecx
43e397:	85 c9                	test   %ecx,%ecx
43e399:	74 05                	je     0x43e3a0
43e39b:	8b 01                	mov    (%ecx),%eax
43e39d:	ff 50 08             	call   *0x8(%eax)
43e3a0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43e3a3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
43e3aa:	59                   	pop    %ecx
43e3ab:	5e                   	pop    %esi
43e3ac:	8b e5                	mov    %ebp,%esp
43e3ae:	5d                   	pop    %ebp
43e3af:	c3                   	ret
43e3b0:	55                   	push   %ebp
43e3b1:	8b ec                	mov    %esp,%ebp
43e3b3:	6a ff                	push   $0xffffffff
43e3b5:	68 c0 be 64 00       	push   $0x64bec0
43e3ba:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
43e3c0:	50                   	push   %eax
43e3c1:	83 ec 0c             	sub    $0xc,%esp
43e3c4:	53                   	push   %ebx
43e3c5:	56                   	push   %esi
43e3c6:	57                   	push   %edi
43e3c7:	a1 d4 89 72 00       	mov    0x7289d4,%eax
43e3cc:	33 c5                	xor    %ebp,%eax
43e3ce:	50                   	push   %eax
43e3cf:	8d 45 f4             	lea    -0xc(%ebp),%eax
43e3d2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43e3d8:	8b d9                	mov    %ecx,%ebx
43e3da:	89 5d f0             	mov    %ebx,-0x10(%ebp)
43e3dd:	8b 7d 08             	mov    0x8(%ebp),%edi
43e3e0:	89 3b                	mov    %edi,(%ebx)
43e3e2:	8b 17                	mov    (%edi),%edx
43e3e4:	8b 42 04             	mov    0x4(%edx),%eax
43e3e7:	8b 4c 38 38          	mov    0x38(%eax,%edi,1),%ecx
43e3eb:	85 c9                	test   %ecx,%ecx
43e3ed:	74 07                	je     0x43e3f6
43e3ef:	8b 01                	mov    (%ecx),%eax
43e3f1:	ff 50 04             	call   *0x4(%eax)
43e3f4:	8b 17                	mov    (%edi),%edx
43e3f6:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
43e3fd:	8b ca                	mov    %edx,%ecx
43e3ff:	8b 42 04             	mov    0x4(%edx),%eax
43e402:	83 7c 38 0c 00       	cmpl   $0x0,0xc(%eax,%edi,1)
43e407:	0f 85 84 00 00 00    	jne    0x43e491
43e40d:	8b 74 38 3c          	mov    0x3c(%eax,%edi,1),%esi
43e411:	85 f6                	test   %esi,%esi
43e413:	74 7c                	je     0x43e491
43e415:	3b f7                	cmp    %edi,%esi
43e417:	74 78                	je     0x43e491
43e419:	8b 06                	mov    (%esi),%eax
43e41b:	8b 40 04             	mov    0x4(%eax),%eax
43e41e:	83 7c 30 38 00       	cmpl   $0x0,0x38(%eax,%esi,1)
43e423:	74 6c                	je     0x43e491
43e425:	56                   	push   %esi
43e426:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e429:	e8 82 ff ff ff       	call   0x43e3b0
43e42e:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
43e432:	80 7d ec 00          	cmpb   $0x0,-0x14(%ebp)
43e436:	74 29                	je     0x43e461
43e438:	8b 06                	mov    (%esi),%eax
43e43a:	8b 40 04             	mov    0x4(%eax),%eax
43e43d:	8b 4c 30 38          	mov    0x38(%eax,%esi,1),%ecx
43e441:	8b 01                	mov    (%ecx),%eax
43e443:	ff 50 34             	call   *0x34(%eax)
43e446:	83 f8 ff             	cmp    $0xffffffff,%eax
43e449:	75 16                	jne    0x43e461
43e44b:	8b 06                	mov    (%esi),%eax
43e44d:	6a 00                	push   $0x0
43e44f:	8b 48 04             	mov    0x4(%eax),%ecx
43e452:	8b 44 31 0c          	mov    0xc(%ecx,%esi,1),%eax
43e456:	03 ce                	add    %esi,%ecx
43e458:	83 c8 04             	or     $0x4,%eax
43e45b:	50                   	push   %eax
43e45c:	e8 5f c1 ff ff       	call   0x43a5c0
43e461:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
43e465:	e8 04 00 19 00       	call   0x5ce46e
43e46a:	84 c0                	test   %al,%al
43e46c:	75 08                	jne    0x43e476
43e46e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43e471:	e8 3a 23 00 00       	call   0x4407b0
43e476:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
43e47a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43e47d:	8b 01                	mov    (%ecx),%eax
43e47f:	8b 40 04             	mov    0x4(%eax),%eax
43e482:	8b 4c 08 38          	mov    0x38(%eax,%ecx,1),%ecx
43e486:	85 c9                	test   %ecx,%ecx
43e488:	74 05                	je     0x43e48f
43e48a:	8b 01                	mov    (%ecx),%eax
43e48c:	ff 50 08             	call   *0x8(%eax)
43e48f:	8b 0f                	mov    (%edi),%ecx
43e491:	8b 41 04             	mov    0x4(%ecx),%eax
43e494:	83 7c 38 0c 00       	cmpl   $0x0,0xc(%eax,%edi,1)
43e499:	0f 94 c0             	sete   %al
43e49c:	88 43 04             	mov    %al,0x4(%ebx)
43e49f:	8b c3                	mov    %ebx,%eax
43e4a1:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43e4a4:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
43e4ab:	59                   	pop    %ecx
43e4ac:	5f                   	pop    %edi
43e4ad:	5e                   	pop    %esi
43e4ae:	5b                   	pop    %ebx
43e4af:	8b e5                	mov    %ebp,%esp
43e4b1:	5d                   	pop    %ebp
43e4b2:	c2 04 00             	ret    $0x4
43e4b5:	cc                   	int3
43e4b6:	cc                   	int3
43e4b7:	cc                   	int3
43e4b8:	cc                   	int3
43e4b9:	cc                   	int3
43e4ba:	cc                   	int3
43e4bb:	cc                   	int3
43e4bc:	cc                   	int3
43e4bd:	cc                   	int3
43e4be:	cc                   	int3
43e4bf:	cc                   	int3
43e4c0:	55                   	push   %ebp
43e4c1:	8b ec                	mov    %esp,%ebp
43e4c3:	83 e4 f8             	and    $0xfffffff8,%esp
43e4c6:	83 ec 4c             	sub    $0x4c,%esp
43e4c9:	a1 d4 89 72 00       	mov    0x7289d4,%eax
43e4ce:	33 c4                	xor    %esp,%eax
43e4d0:	89 44 24 48          	mov    %eax,0x48(%esp)
43e4d4:	8b 45 1c             	mov    0x1c(%ebp),%eax
43e4d7:	53                   	push   %ebx
43e4d8:	8b 5d 08             	mov    0x8(%ebp),%ebx
43e4db:	56                   	push   %esi
43e4dc:	8b 75 14             	mov    0x14(%ebp),%esi
43e4df:	57                   	push   %edi
43e4e0:	50                   	push   %eax
43e4e1:	68 30 59 6e 00       	push   $0x6e5930
43e4e6:	8d 44 24 18          	lea    0x18(%esp),%eax
43e4ea:	8b f9                	mov    %ecx,%edi
43e4ec:	6a 40                	push   $0x40
43e4ee:	50                   	push   %eax
43e4ef:	e8 5c b0 ff ff       	call   0x439550
43e4f4:	50                   	push   %eax
43e4f5:	8d 44 24 24          	lea    0x24(%esp),%eax
43e4f9:	50                   	push   %eax
43e4fa:	ff 75 18             	push   0x18(%ebp)
43e4fd:	56                   	push   %esi
43e4fe:	ff 75 10             	push   0x10(%ebp)
43e501:	ff 75 0c             	push   0xc(%ebp)
43e504:	53                   	push   %ebx
43e505:	57                   	push   %edi
43e506:	e8 75 13 00 00       	call   0x43f880
43e50b:	8b 8c 24 84 00 00 00 	mov    0x84(%esp),%ecx
43e512:	83 c4 30             	add    $0x30,%esp
43e515:	8b c3                	mov    %ebx,%eax
43e517:	5f                   	pop    %edi
43e518:	5e                   	pop    %esi
43e519:	5b                   	pop    %ebx
43e51a:	33 cc                	xor    %esp,%ecx
43e51c:	e8 b9 2f 1a 00       	call   0x5e14da
43e521:	8b e5                	mov    %ebp,%esp
43e523:	5d                   	pop    %ebp
43e524:	c2 18 00             	ret    $0x18
43e527:	cc                   	int3
43e528:	cc                   	int3
43e529:	cc                   	int3
43e52a:	cc                   	int3
43e52b:	cc                   	int3
43e52c:	cc                   	int3
43e52d:	cc                   	int3
43e52e:	cc                   	int3
43e52f:	cc                   	int3
43e530:	55                   	push   %ebp
43e531:	8b ec                	mov    %esp,%ebp
43e533:	6a ff                	push   $0xffffffff
43e535:	68 e8 be 64 00       	push   $0x64bee8
43e53a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
43e540:	50                   	push   %eax
43e541:	83 ec 38             	sub    $0x38,%esp
43e544:	a1 d4 89 72 00       	mov    0x7289d4,%eax
43e549:	33 c5                	xor    %ebp,%eax
43e54b:	89 45 f0             	mov    %eax,-0x10(%ebp)
43e54e:	56                   	push   %esi
43e54f:	57                   	push   %edi
43e550:	50                   	push   %eax
43e551:	8d 45 f4             	lea    -0xc(%ebp),%eax
43e554:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43e55a:	89 4d cc             	mov    %ecx,-0x34(%ebp)
43e55d:	8b 45 08             	mov    0x8(%ebp),%eax
43e560:	8b 4d 14             	mov    0x14(%ebp),%ecx
43e563:	89 45 bc             	mov    %eax,-0x44(%ebp)
43e566:	89 4d c0             	mov    %ecx,-0x40(%ebp)
43e569:	c7 45 e4 0f 00 00 00 	movl   $0xf,-0x1c(%ebp)
43e570:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
43e577:	c6 45 d0 00          	movb   $0x0,-0x30(%ebp)
43e57b:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
43e582:	8b 41 14             	mov    0x14(%ecx),%eax
43e585:	8b 79 18             	mov    0x18(%ecx),%edi
43e588:	25 00 30 00 00       	and    $0x3000,%eax
43e58d:	8b 49 1c             	mov    0x1c(%ecx),%ecx
43e590:	85 c9                	test   %ecx,%ecx
43e592:	7f 1b                	jg     0x43e5af
43e594:	7c 04                	jl     0x43e59a
43e596:	85 ff                	test   %edi,%edi
43e598:	75 15                	jne    0x43e5af
43e59a:	3d 00 20 00 00       	cmp    $0x2000,%eax
43e59f:	74 0e                	je     0x43e5af
43e5a1:	bf 06 00 00 00       	mov    $0x6,%edi
43e5a6:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
43e5ad:	eb 03                	jmp    0x43e5b2
43e5af:	89 4d c8             	mov    %ecx,-0x38(%ebp)
43e5b2:	8b f7                	mov    %edi,%esi
43e5b4:	3d 00 20 00 00       	cmp    $0x2000,%eax
43e5b9:	75 50                	jne    0x43e60b
43e5bb:	f2 0f 10 4d 1c       	movsd  0x1c(%ebp),%xmm1
43e5c0:	0f 28 c1             	movaps %xmm1,%xmm0
43e5c3:	0f 54 05 d0 59 6e 00 	andps  0x6e59d0,%xmm0
43e5ca:	66 0f 2f 05 c0 59 6e 	comisd 0x6e59c0,%xmm0
43e5d1:	00
43e5d2:	76 37                	jbe    0x43e60b
43e5d4:	8d 45 c8             	lea    -0x38(%ebp),%eax
43e5d7:	50                   	push   %eax
43e5d8:	83 ec 08             	sub    $0x8,%esp
43e5db:	f2 0f 11 0c 24       	movsd  %xmm1,(%esp)
43e5e0:	e8 d1 7f 1b 00       	call   0x5f65b6
43e5e5:	8b 45 c8             	mov    -0x38(%ebp),%eax
43e5e8:	83 c4 0c             	add    $0xc,%esp
43e5eb:	99                   	cltd
43e5ec:	dd d8                	fstp   %st(0)
43e5ee:	33 c2                	xor    %edx,%eax
43e5f0:	2b c2                	sub    %edx,%eax
43e5f2:	69 c8 97 75 00 00    	imul   $0x7597,%eax,%ecx
43e5f8:	b8 89 b5 f8 14       	mov    $0x14f8b589,%eax
43e5fd:	f7 e9                	imul   %ecx
43e5ff:	c1 fa 0d             	sar    $0xd,%edx
43e602:	8b c2                	mov    %edx,%eax
43e604:	c1 e8 1f             	shr    $0x1f,%eax
43e607:	03 c2                	add    %edx,%eax
43e609:	03 f0                	add    %eax,%esi
43e60b:	8d 46 32             	lea    0x32(%esi),%eax
43e60e:	50                   	push   %eax
43e60f:	8d 4d d0             	lea    -0x30(%ebp),%ecx
43e612:	e8 09 e6 ff ff       	call   0x43cc20
43e617:	83 7d e4 10          	cmpl   $0x10,-0x1c(%ebp)
43e61b:	8d 75 d0             	lea    -0x30(%ebp),%esi
43e61e:	f2 0f 10 45 1c       	movsd  0x1c(%ebp),%xmm0
43e623:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e626:	0f 43 75 d0          	cmovae -0x30(%ebp),%esi
43e62a:	83 ec 08             	sub    $0x8,%esp
43e62d:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
43e632:	57                   	push   %edi
43e633:	8b 7d c0             	mov    -0x40(%ebp),%edi
43e636:	ff 77 14             	push   0x14(%edi)
43e639:	6a 4c                	push   $0x4c
43e63b:	50                   	push   %eax
43e63c:	ff 75 cc             	push   -0x34(%ebp)
43e63f:	e8 8c 1b 00 00       	call   0x4401d0
43e644:	83 c4 10             	add    $0x10,%esp
43e647:	50                   	push   %eax
43e648:	ff 75 e0             	push   -0x20(%ebp)
43e64b:	56                   	push   %esi
43e64c:	e8 ff ae ff ff       	call   0x439550
43e651:	83 7d e4 10          	cmpl   $0x10,-0x1c(%ebp)
43e655:	8d 4d d0             	lea    -0x30(%ebp),%ecx
43e658:	8b 75 bc             	mov    -0x44(%ebp),%esi
43e65b:	0f 43 4d d0          	cmovae -0x30(%ebp),%ecx
43e65f:	50                   	push   %eax
43e660:	51                   	push   %ecx
43e661:	ff 75 18             	push   0x18(%ebp)
43e664:	57                   	push   %edi
43e665:	ff 75 10             	push   0x10(%ebp)
43e668:	ff 75 0c             	push   0xc(%ebp)
43e66b:	56                   	push   %esi
43e66c:	ff 75 cc             	push   -0x34(%ebp)
43e66f:	e8 8c 16 00 00       	call   0x43fd00
43e674:	8b 45 e4             	mov    -0x1c(%ebp),%eax
43e677:	83 c4 38             	add    $0x38,%esp
43e67a:	83 f8 10             	cmp    $0x10,%eax
43e67d:	72 2e                	jb     0x43e6ad
43e67f:	8b 55 d0             	mov    -0x30(%ebp),%edx
43e682:	40                   	inc    %eax
43e683:	8b ca                	mov    %edx,%ecx
43e685:	3d 00 10 00 00       	cmp    $0x1000,%eax
43e68a:	72 18                	jb     0x43e6a4
43e68c:	f6 c1 1f             	test   $0x1f,%cl