438326:	b9 00 03 00 00       	mov    $0x300,%ecx
43832b:	23 c1                	and    %ecx,%eax
43832d:	74 25                	je     0x438354
43832f:	3d 00 01 00 00       	cmp    $0x100,%eax
438334:	74 19                	je     0x43834f
438336:	3d 00 02 00 00       	cmp    $0x200,%eax
43833b:	74 0b                	je     0x438348
43833d:	3b c1                	cmp    %ecx,%eax
43833f:	75 13                	jne    0x438354
438341:	bf 00 60 00 00       	mov    $0x6000,%edi
438346:	eb 0c                	jmp    0x438354
438348:	bf 00 40 00 00       	mov    $0x4000,%edi
43834d:	eb 05                	jmp    0x438354
43834f:	bf 00 20 00 00       	mov    $0x2000,%edi
438354:	8b d6                	mov    %esi,%edx
438356:	8b c6                	mov    %esi,%eax
438358:	83 e0 02             	and    $0x2,%eax
43835b:	83 e2 01             	and    $0x1,%edx
43835e:	c1 e2 02             	shl    $0x2,%edx
438361:	8b ce                	mov    %esi,%ecx
438363:	0b d0                	or     %eax,%edx
438365:	83 e1 08             	and    $0x8,%ecx
438368:	8b c6                	mov    %esi,%eax
43836a:	c1 e2 02             	shl    $0x2,%edx
43836d:	83 e0 04             	and    $0x4,%eax
438370:	83 e6 30             	and    $0x30,%esi
438373:	0b c2                	or     %edx,%eax
438375:	c1 e0 02             	shl    $0x2,%eax
438378:	0b c1                	or     %ecx,%eax
43837a:	c1 e0 03             	shl    $0x3,%eax
43837d:	0b c6                	or     %esi,%eax
43837f:	c1 e0 03             	shl    $0x3,%eax
438382:	0b c3                	or     %ebx,%eax
438384:	0b c7                	or     %edi,%eax
438386:	5f                   	pop    %edi
438387:	5e                   	pop    %esi
438388:	5b                   	pop    %ebx
438389:	5d                   	pop    %ebp
43838a:	c3                   	ret
43838b:	8b ff                	mov    %edi,%edi
43838d:	55                   	push   %ebp
43838e:	8b ec                	mov    %esp,%ebp
438390:	51                   	push   %ecx
438391:	8b 4d 08             	mov    0x8(%ebp),%ecx
438394:	ba 00 03 00 00       	mov    $0x300,%edx
438399:	53                   	push   %ebx
43839a:	56                   	push   %esi
43839b:	8b f1                	mov    %ecx,%esi
43839d:	8b c1                	mov    %ecx,%eax
43839f:	c1 ee 02             	shr    $0x2,%esi
4383a2:	25 00 00 c0 00       	and    $0xc00000,%eax
4383a7:	81 e6 00 c0 0f 00    	and    $0xfc000,%esi
4383ad:	bb 00 10 00 00       	mov    $0x1000,%ebx
4383b2:	0b f0                	or     %eax,%esi
4383b4:	8b c1                	mov    %ecx,%eax
4383b6:	57                   	push   %edi
4383b7:	c1 e8 02             	shr    $0x2,%eax
4383ba:	23 c3                	and    %ebx,%eax
4383bc:	c1 ee 0e             	shr    $0xe,%esi
4383bf:	89 45 fc             	mov    %eax,-0x4(%ebp)
4383c2:	6a 00                	push   $0x0
4383c4:	5f                   	pop    %edi
4383c5:	81 e1 00 30 00 00    	and    $0x3000,%ecx
4383cb:	74 0f                	je     0x4383dc
4383cd:	3b cb                	cmp    %ebx,%ecx
4383cf:	74 04                	je     0x4383d5
4383d1:	8b df                	mov    %edi,%ebx
4383d3:	eb 09                	jmp    0x4383de
4383d5:	bb 00 02 00 00       	mov    $0x200,%ebx
4383da:	eb 02                	jmp    0x4383de
4383dc:	8b da                	mov    %edx,%ebx
4383de:	8b c6                	mov    %esi,%eax
4383e0:	23 c2                	and    %edx,%eax
4383e2:	74 25                	je     0x438409
4383e4:	3d 00 01 00 00       	cmp    $0x100,%eax
4383e9:	74 19                	je     0x438404
4383eb:	3d 00 02 00 00       	cmp    $0x200,%eax
4383f0:	74 0b                	je     0x4383fd
4383f2:	3b c2                	cmp    %edx,%eax
4383f4:	75 13                	jne    0x438409
4383f6:	bf 00 0c 00 00       	mov    $0xc00,%edi
4383fb:	eb 0c                	jmp    0x438409
4383fd:	bf 00 08 00 00       	mov    $0x800,%edi
438402:	eb 05                	jmp    0x438409
438404:	bf 00 04 00 00       	mov    $0x400,%edi
438409:	8b d6                	mov    %esi,%edx
43840b:	8b c6                	mov    %esi,%eax
43840d:	83 e0 02             	and    $0x2,%eax
438410:	83 e2 01             	and    $0x1,%edx
438413:	c1 e2 02             	shl    $0x2,%edx
438416:	8b ce                	mov    %esi,%ecx
438418:	0b d0                	or     %eax,%edx
43841a:	c1 e9 04             	shr    $0x4,%ecx
43841d:	8b c6                	mov    %esi,%eax
43841f:	c1 e2 02             	shl    $0x2,%edx
438422:	83 e0 04             	and    $0x4,%eax
438425:	d1 ee                	shr    $1,%esi
438427:	0b c2                	or     %edx,%eax
438429:	83 e1 03             	and    $0x3,%ecx
43842c:	03 c0                	add    %eax,%eax
43842e:	83 e6 04             	and    $0x4,%esi
438431:	0b c1                	or     %ecx,%eax
438433:	0b c6                	or     %esi,%eax
438435:	0b 45 fc             	or     -0x4(%ebp),%eax
438438:	0b c3                	or     %ebx,%eax
43843a:	0b c7                	or     %edi,%eax
43843c:	5f                   	pop    %edi
43843d:	5e                   	pop    %esi
43843e:	5b                   	pop    %ebx
43843f:	c9                   	leave
438440:	c3                   	ret
438441:	8b ff                	mov    %edi,%edi
438443:	55                   	push   %ebp
438444:	8b ec                	mov    %esp,%ebp
438446:	8b 4d 08             	mov    0x8(%ebp),%ecx
438449:	ba 00 03 00 00       	mov    $0x300,%edx
43844e:	8b c1                	mov    %ecx,%eax
438450:	c1 e9 16             	shr    $0x16,%ecx
438453:	c1 e8 0e             	shr    $0xe,%eax
438456:	23 ca                	and    %edx,%ecx
438458:	23 c2                	and    %edx,%eax
43845a:	3b c1                	cmp    %ecx,%eax
43845c:	74 03                	je     0x438461
43845e:	83 c8 ff             	or     $0xffffffff,%eax
438461:	5d                   	pop    %ebp
438462:	c3                   	ret
438463:	8b ff                	mov    %edi,%edi
438465:	55                   	push   %ebp
438466:	8b ec                	mov    %esp,%ebp
438468:	83 ec 20             	sub    $0x20,%esp
43846b:	56                   	push   %esi
43846c:	57                   	push   %edi
43846d:	6a 07                	push   $0x7
43846f:	59                   	pop    %ecx
438470:	33 c0                	xor    %eax,%eax
438472:	8d 7d e0             	lea    -0x20(%ebp),%edi
438475:	f3 ab                	rep stos %eax,%es:(%edi)
438477:	d9 75 e0             	fnstenv -0x20(%ebp)
43847a:	d9 65 e0             	fldenv -0x20(%ebp)
43847d:	8b 45 e0             	mov    -0x20(%ebp),%eax
438480:	25 3f 1f 00 00       	and    $0x1f3f,%eax
438485:	50                   	push   %eax
438486:	e8 9d fd ff ff       	call   0x438228
43848b:	83 3d bc 68 45 00 01 	cmpl   $0x1,0x4568bc
438492:	8b f0                	mov    %eax,%esi
438494:	59                   	pop    %ecx
438495:	7d 04                	jge    0x43849b
438497:	33 c9                	xor    %ecx,%ecx
438499:	eb 0d                	jmp    0x4384a8
43849b:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
43849f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4384a2:	81 e1 c0 ff 00 00    	and    $0xffc0,%ecx
4384a8:	51                   	push   %ecx
4384a9:	e8 ca fc ff ff       	call   0x438178
4384ae:	59                   	pop    %ecx
4384af:	8b d0                	mov    %eax,%edx
4384b1:	8b c8                	mov    %eax,%ecx
4384b3:	83 e2 3f             	and    $0x3f,%edx
4384b6:	81 e1 00 ff ff ff    	and    $0xffffff00,%ecx
4384bc:	c1 e2 02             	shl    $0x2,%edx
4384bf:	0b d1                	or     %ecx,%edx
4384c1:	8b ce                	mov    %esi,%ecx
4384c3:	c1 e2 06             	shl    $0x6,%edx
4384c6:	83 e1 3f             	and    $0x3f,%ecx
4384c9:	0b d1                	or     %ecx,%edx
4384cb:	8b ce                	mov    %esi,%ecx
4384cd:	c1 e2 02             	shl    $0x2,%edx
4384d0:	81 e1 00 03 00 00    	and    $0x300,%ecx
4384d6:	0b d1                	or     %ecx,%edx
4384d8:	c1 e2 0e             	shl    $0xe,%edx
4384db:	0b c2                	or     %edx,%eax
4384dd:	5f                   	pop    %edi
4384de:	0b c6                	or     %esi,%eax
4384e0:	5e                   	pop    %esi
4384e1:	c9                   	leave
4384e2:	c3                   	ret
4384e3:	8b ff                	mov    %edi,%edi
4384e5:	55                   	push   %ebp
4384e6:	8b ec                	mov    %esp,%ebp
4384e8:	51                   	push   %ecx
4384e9:	56                   	push   %esi
4384ea:	33 c0                	xor    %eax,%eax
4384ec:	57                   	push   %edi
4384ed:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
4384f1:	dd 7d fc             	fnstsw -0x4(%ebp)
4384f4:	0f b7 55 fc          	movzwl -0x4(%ebp),%edx
4384f8:	8b f2                	mov    %edx,%esi
4384fa:	8b c2                	mov    %edx,%eax
4384fc:	c1 ee 02             	shr    $0x2,%esi
4384ff:	83 e0 10             	and    $0x10,%eax
438502:	83 e6 08             	and    $0x8,%esi
438505:	8b ca                	mov    %edx,%ecx
438507:	0b f0                	or     %eax,%esi
438509:	83 e1 02             	and    $0x2,%ecx
43850c:	c1 ee 02             	shr    $0x2,%esi
43850f:	8b c2                	mov    %edx,%eax
438511:	83 e0 08             	and    $0x8,%eax
438514:	c1 e1 03             	shl    $0x3,%ecx
438517:	0b f0                	or     %eax,%esi
438519:	8b c2                	mov    %edx,%eax
43851b:	83 e0 04             	and    $0x4,%eax
43851e:	d1 ee                	shr    $1,%esi
438520:	0b c8                	or     %eax,%ecx
438522:	83 e2 01             	and    $0x1,%edx
438525:	03 c9                	add    %ecx,%ecx
438527:	c1 e2 04             	shl    $0x4,%edx
43852a:	0b f1                	or     %ecx,%esi
43852c:	0b f2                	or     %edx,%esi
43852e:	83 3d bc 68 45 00 01 	cmpl   $0x1,0x4568bc
438535:	7d 04                	jge    0x43853b
438537:	33 ff                	xor    %edi,%edi
438539:	eb 0a                	jmp    0x438545
43853b:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
43853f:	8b 7d fc             	mov    -0x4(%ebp),%edi
438542:	83 e7 3f             	and    $0x3f,%edi
438545:	8b d7                	mov    %edi,%edx
438547:	8b c7                	mov    %edi,%eax
438549:	83 e0 10             	and    $0x10,%eax
43854c:	c1 ea 02             	shr    $0x2,%edx
43854f:	83 e2 08             	and    $0x8,%edx
438552:	8b cf                	mov    %edi,%ecx
438554:	0b d0                	or     %eax,%edx
438556:	83 e1 02             	and    $0x2,%ecx
438559:	8b c7                	mov    %edi,%eax
43855b:	c1 ea 02             	shr    $0x2,%edx
43855e:	83 e0 08             	and    $0x8,%eax
438561:	c1 e1 03             	shl    $0x3,%ecx
438564:	0b d0                	or     %eax,%edx
438566:	8b c7                	mov    %edi,%eax
438568:	83 e0 04             	and    $0x4,%eax
43856b:	d1 ea                	shr    $1,%edx
43856d:	0b c8                	or     %eax,%ecx
43856f:	83 e7 01             	and    $0x1,%edi
438572:	03 c9                	add    %ecx,%ecx
438574:	c1 e7 04             	shl    $0x4,%edi
438577:	0b d1                	or     %ecx,%edx
438579:	0b d7                	or     %edi,%edx
43857b:	8b c2                	mov    %edx,%eax
43857d:	c1 e0 08             	shl    $0x8,%eax
438580:	0b c6                	or     %esi,%eax
438582:	c1 e0 10             	shl    $0x10,%eax
438585:	0b c2                	or     %edx,%eax
438587:	5f                   	pop    %edi
438588:	0b c6                	or     %esi,%eax
43858a:	5e                   	pop    %esi
43858b:	c9                   	leave
43858c:	c3                   	ret
43858d:	8b ff                	mov    %edi,%edi
43858f:	55                   	push   %ebp
438590:	8b ec                	mov    %esp,%ebp
438592:	83 ec 20             	sub    $0x20,%esp
438595:	57                   	push   %edi
438596:	ff 75 08             	push   0x8(%ebp)
438599:	e8 ed fd ff ff       	call   0x43838b
43859e:	59                   	pop    %ecx
43859f:	6a 07                	push   $0x7
4385a1:	0f b7 d0             	movzwl %ax,%edx
4385a4:	8d 7d e0             	lea    -0x20(%ebp),%edi
4385a7:	59                   	pop    %ecx
4385a8:	33 c0                	xor    %eax,%eax
4385aa:	f3 ab                	rep stos %eax,%es:(%edi)
4385ac:	d9 75 e0             	fnstenv -0x20(%ebp)
4385af:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4385b2:	81 e2 3f 1f 00 00    	and    $0x1f3f,%edx
4385b8:	81 e1 c0 e0 ff ff    	and    $0xffffe0c0,%ecx
4385be:	8b c2                	mov    %edx,%eax
4385c0:	0b ca                	or     %edx,%ecx
4385c2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4385c5:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4385c8:	d9 65 e0             	fldenv -0x20(%ebp)
4385cb:	ff 75 08             	push   0x8(%ebp)
4385ce:	e8 02 fd ff ff       	call   0x4382d5
4385d3:	83 3d bc 68 45 00 01 	cmpl   $0x1,0x4568bc
4385da:	59                   	pop    %ecx
4385db:	0f b7 d0             	movzwl %ax,%edx
4385de:	5f                   	pop    %edi
4385df:	7c 25                	jl     0x438606
4385e1:	81 e2 c0 ff 00 00    	and    $0xffc0,%edx
4385e7:	0f b7 c2             	movzwl %dx,%eax
4385ea:	89 45 fc             	mov    %eax,-0x4(%ebp)
4385ed:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
4385f1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4385f4:	81 e1 3f 00 ff ff    	and    $0xffff003f,%ecx
4385fa:	0f b7 c2             	movzwl %dx,%eax
4385fd:	0b c8                	or     %eax,%ecx
4385ff:	89 4d fc             	mov    %ecx,-0x4(%ebp)
438602:	0f ae 55 fc          	ldmxcsr -0x4(%ebp)
438606:	c9                   	leave
438607:	c3                   	ret
438608:	8b ff                	mov    %edi,%edi
43860a:	55                   	push   %ebp
43860b:	8b ec                	mov    %esp,%ebp
43860d:	83 ec 20             	sub    $0x20,%esp
438610:	56                   	push   %esi
438611:	8b 75 08             	mov    0x8(%ebp),%esi
438614:	8b ce                	mov    %esi,%ecx
438616:	c1 e9 10             	shr    $0x10,%ecx
438619:	83 e1 3f             	and    $0x3f,%ecx
43861c:	8b d1                	mov    %ecx,%edx
43861e:	8b c1                	mov    %ecx,%eax
438620:	83 e2 01             	and    $0x1,%edx
438623:	f7 da                	neg    %edx
438625:	57                   	push   %edi
438626:	1b d2                	sbb    %edx,%edx
438628:	8d 7d e0             	lea    -0x20(%ebp),%edi
43862b:	83 e0 02             	and    $0x2,%eax
43862e:	83 e2 20             	and    $0x20,%edx
438631:	f7 d8                	neg    %eax
438633:	6a 00                	push   $0x0
438635:	1b c0                	sbb    %eax,%eax
438637:	83 e0 10             	and    $0x10,%eax
43863a:	0b d0                	or     %eax,%edx
43863c:	8b c1                	mov    %ecx,%eax
43863e:	83 e0 04             	and    $0x4,%eax
438641:	f7 d8                	neg    %eax
438643:	1b c0                	sbb    %eax,%eax
438645:	83 e0 08             	and    $0x8,%eax
438648:	0b d0                	or     %eax,%edx
43864a:	8b c1                	mov    %ecx,%eax
43864c:	83 e0 08             	and    $0x8,%eax
43864f:	f7 d8                	neg    %eax
438651:	1b c0                	sbb    %eax,%eax
438653:	83 e0 04             	and    $0x4,%eax
438656:	0b d0                	or     %eax,%edx
438658:	f7 c1 10 00 00 00    	test   $0x10,%ecx
43865e:	58                   	pop    %eax
43865f:	0f 95 c0             	setne  %al
438662:	83 e1 20             	and    $0x20,%ecx
438665:	0b d0                	or     %eax,%edx
438667:	f7 d9                	neg    %ecx
438669:	6a 07                	push   $0x7
43866b:	1b c9                	sbb    %ecx,%ecx
43866d:	33 c0                	xor    %eax,%eax
43866f:	83 e1 02             	and    $0x2,%ecx
438672:	0b d1                	or     %ecx,%edx
438674:	59                   	pop    %ecx
438675:	f3 ab                	rep stos %eax,%es:(%edi)
438677:	d9 75 e0             	fnstenv -0x20(%ebp)
43867a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
43867d:	83 e2 3f             	and    $0x3f,%edx
438680:	83 e0 c0             	and    $0xffffffc0,%eax
438683:	0b c2                	or     %edx,%eax
438685:	89 45 e4             	mov    %eax,-0x1c(%ebp)
438688:	d9 65 e0             	fldenv -0x20(%ebp)
43868b:	c1 ee 18             	shr    $0x18,%esi
43868e:	83 e6 3f             	and    $0x3f,%esi
438691:	8b ce                	mov    %esi,%ecx
438693:	8b c6                	mov    %esi,%eax
438695:	83 e1 01             	and    $0x1,%ecx
438698:	f7 d9                	neg    %ecx