422434:	83 c4 04             	add    $0x4,%esp
422437:	85 c0                	test   %eax,%eax
422439:	74 54                	je     0x42248f
42243b:	8b 45 08             	mov    0x8(%ebp),%eax
42243e:	2d 00 00 40 00       	sub    $0x400000,%eax
422443:	50                   	push   %eax
422444:	68 00 00 40 00       	push   $0x400000
422449:	e8 52 ff ff ff       	call   0x4223a0
42244e:	83 c4 08             	add    $0x8,%esp
422451:	85 c0                	test   %eax,%eax
422453:	74 3a                	je     0x42248f
422455:	8b 40 24             	mov    0x24(%eax),%eax
422458:	c1 e8 1f             	shr    $0x1f,%eax
42245b:	f7 d0                	not    %eax
42245d:	83 e0 01             	and    $0x1,%eax
422460:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
422467:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42246a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
422471:	59                   	pop    %ecx
422472:	5f                   	pop    %edi
422473:	5e                   	pop    %esi
422474:	5b                   	pop    %ebx
422475:	8b e5                	mov    %ebp,%esp
422477:	5d                   	pop    %ebp
422478:	c3                   	ret
422479:	8b 45 ec             	mov    -0x14(%ebp),%eax
42247c:	8b 00                	mov    (%eax),%eax
42247e:	33 c9                	xor    %ecx,%ecx
422480:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
422486:	0f 94 c1             	sete   %cl
422489:	8b c1                	mov    %ecx,%eax
42248b:	c3                   	ret
42248c:	8b 65 e8             	mov    -0x18(%ebp),%esp
42248f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
422496:	33 c0                	xor    %eax,%eax
422498:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42249b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4224a2:	59                   	pop    %ecx
4224a3:	5f                   	pop    %edi
4224a4:	5e                   	pop    %esi
4224a5:	5b                   	pop    %ebx
4224a6:	8b e5                	mov    %ebp,%esp
4224a8:	5d                   	pop    %ebp
4224a9:	c3                   	ret
4224aa:	cc                   	int3
4224ab:	cc                   	int3
4224ac:	cc                   	int3
4224ad:	cc                   	int3
4224ae:	cc                   	int3
4224af:	cc                   	int3
4224b0:	55                   	push   %ebp
4224b1:	8b ec                	mov    %esp,%ebp
4224b3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4224b6:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
4224bb:	66 39 01             	cmp    %ax,(%ecx)
4224be:	75 1f                	jne    0x4224df
4224c0:	8b 41 3c             	mov    0x3c(%ecx),%eax
4224c3:	03 c1                	add    %ecx,%eax
4224c5:	81 38 50 45 00 00    	cmpl   $0x4550,(%eax)
4224cb:	75 12                	jne    0x4224df
4224cd:	b9 0b 01 00 00       	mov    $0x10b,%ecx
4224d2:	66 39 48 18          	cmp    %cx,0x18(%eax)
4224d6:	75 07                	jne    0x4224df
4224d8:	b8 01 00 00 00       	mov    $0x1,%eax
4224dd:	5d                   	pop    %ebp
4224de:	c3                   	ret
4224df:	33 c0                	xor    %eax,%eax
4224e1:	5d                   	pop    %ebp
4224e2:	c3                   	ret
4224e3:	cc                   	int3
4224e4:	cc                   	int3
4224e5:	cc                   	int3
4224e6:	cc                   	int3
4224e7:	cc                   	int3
4224e8:	cc                   	int3
4224e9:	cc                   	int3
4224ea:	cc                   	int3
4224eb:	cc                   	int3
4224ec:	cc                   	int3
4224ed:	cc                   	int3
4224ee:	cc                   	int3
4224ef:	cc                   	int3
4224f0:	56                   	push   %esi
4224f1:	8b 44 24 14          	mov    0x14(%esp),%eax
4224f5:	0b c0                	or     %eax,%eax
4224f7:	75 28                	jne    0x422521
4224f9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4224fd:	8b 44 24 0c          	mov    0xc(%esp),%eax
422501:	33 d2                	xor    %edx,%edx
422503:	f7 f1                	div    %ecx
422505:	8b d8                	mov    %eax,%ebx
422507:	8b 44 24 08          	mov    0x8(%esp),%eax
42250b:	f7 f1                	div    %ecx
42250d:	8b f0                	mov    %eax,%esi
42250f:	8b c3                	mov    %ebx,%eax
422511:	f7 64 24 10          	mull   0x10(%esp)
422515:	8b c8                	mov    %eax,%ecx
422517:	8b c6                	mov    %esi,%eax
422519:	f7 64 24 10          	mull   0x10(%esp)
42251d:	03 d1                	add    %ecx,%edx
42251f:	eb 47                	jmp    0x422568
422521:	8b c8                	mov    %eax,%ecx
422523:	8b 5c 24 10          	mov    0x10(%esp),%ebx
422527:	8b 54 24 0c          	mov    0xc(%esp),%edx
42252b:	8b 44 24 08          	mov    0x8(%esp),%eax
42252f:	d1 e9                	shr    $1,%ecx
422531:	d1 db                	rcr    $1,%ebx
422533:	d1 ea                	shr    $1,%edx
422535:	d1 d8                	rcr    $1,%eax
422537:	0b c9                	or     %ecx,%ecx
422539:	75 f4                	jne    0x42252f
42253b:	f7 f3                	div    %ebx
42253d:	8b f0                	mov    %eax,%esi
42253f:	f7 64 24 14          	mull   0x14(%esp)
422543:	8b c8                	mov    %eax,%ecx
422545:	8b 44 24 10          	mov    0x10(%esp),%eax
422549:	f7 e6                	mul    %esi
42254b:	03 d1                	add    %ecx,%edx
42254d:	72 0e                	jb     0x42255d
42254f:	3b 54 24 0c          	cmp    0xc(%esp),%edx
422553:	77 08                	ja     0x42255d
422555:	72 0f                	jb     0x422566
422557:	3b 44 24 08          	cmp    0x8(%esp),%eax
42255b:	76 09                	jbe    0x422566
42255d:	4e                   	dec    %esi
42255e:	2b 44 24 10          	sub    0x10(%esp),%eax
422562:	1b 54 24 14          	sbb    0x14(%esp),%edx
422566:	33 db                	xor    %ebx,%ebx
422568:	2b 44 24 08          	sub    0x8(%esp),%eax
42256c:	1b 54 24 0c          	sbb    0xc(%esp),%edx
422570:	f7 da                	neg    %edx
422572:	f7 d8                	neg    %eax
422574:	83 da 00             	sbb    $0x0,%edx
422577:	8b ca                	mov    %edx,%ecx
422579:	8b d3                	mov    %ebx,%edx
42257b:	8b d9                	mov    %ecx,%ebx
42257d:	8b c8                	mov    %eax,%ecx
42257f:	8b c6                	mov    %esi,%eax
422581:	5e                   	pop    %esi
422582:	c2 10 00             	ret    $0x10
422585:	cc                   	int3
422586:	cc                   	int3
422587:	cc                   	int3
422588:	cc                   	int3
422589:	cc                   	int3
42258a:	cc                   	int3
42258b:	cc                   	int3
42258c:	cc                   	int3
42258d:	cc                   	int3
42258e:	cc                   	int3
42258f:	cc                   	int3
422590:	80 f9 40             	cmp    $0x40,%cl
422593:	73 15                	jae    0x4225aa
422595:	80 f9 20             	cmp    $0x20,%cl
422598:	73 06                	jae    0x4225a0
42259a:	0f a5 c2             	shld   %cl,%eax,%edx
42259d:	d3 e0                	shl    %cl,%eax
42259f:	c3                   	ret
4225a0:	8b d0                	mov    %eax,%edx
4225a2:	33 c0                	xor    %eax,%eax
4225a4:	80 e1 1f             	and    $0x1f,%cl
4225a7:	d3 e2                	shl    %cl,%edx
4225a9:	c3                   	ret
4225aa:	33 c0                	xor    %eax,%eax
4225ac:	33 d2                	xor    %edx,%edx
4225ae:	c3                   	ret
4225af:	cc                   	int3
4225b0:	80 f9 40             	cmp    $0x40,%cl
4225b3:	73 15                	jae    0x4225ca
4225b5:	80 f9 20             	cmp    $0x20,%cl
4225b8:	73 06                	jae    0x4225c0
4225ba:	0f ad d0             	shrd   %cl,%edx,%eax
4225bd:	d3 ea                	shr    %cl,%edx
4225bf:	c3                   	ret
4225c0:	8b c2                	mov    %edx,%eax
4225c2:	33 d2                	xor    %edx,%edx
4225c4:	80 e1 1f             	and    $0x1f,%cl
4225c7:	d3 e8                	shr    %cl,%eax
4225c9:	c3                   	ret
4225ca:	33 c0                	xor    %eax,%eax
4225cc:	33 d2                	xor    %edx,%edx
4225ce:	c3                   	ret
4225cf:	cc                   	int3
4225d0:	57                   	push   %edi
4225d1:	56                   	push   %esi
4225d2:	55                   	push   %ebp
4225d3:	33 ff                	xor    %edi,%edi
4225d5:	33 ed                	xor    %ebp,%ebp
4225d7:	8b 44 24 14          	mov    0x14(%esp),%eax
4225db:	0b c0                	or     %eax,%eax
4225dd:	7d 15                	jge    0x4225f4
4225df:	47                   	inc    %edi
4225e0:	45                   	inc    %ebp
4225e1:	8b 54 24 10          	mov    0x10(%esp),%edx
4225e5:	f7 d8                	neg    %eax
4225e7:	f7 da                	neg    %edx
4225e9:	83 d8 00             	sbb    $0x0,%eax
4225ec:	89 44 24 14          	mov    %eax,0x14(%esp)
4225f0:	89 54 24 10          	mov    %edx,0x10(%esp)
4225f4:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4225f8:	0b c0                	or     %eax,%eax
4225fa:	7d 14                	jge    0x422610
4225fc:	47                   	inc    %edi
4225fd:	8b 54 24 18          	mov    0x18(%esp),%edx
422601:	f7 d8                	neg    %eax
422603:	f7 da                	neg    %edx
422605:	83 d8 00             	sbb    $0x0,%eax
422608:	89 44 24 1c          	mov    %eax,0x1c(%esp)
42260c:	89 54 24 18          	mov    %edx,0x18(%esp)
422610:	0b c0                	or     %eax,%eax
422612:	75 28                	jne    0x42263c
422614:	8b 4c 24 18          	mov    0x18(%esp),%ecx
422618:	8b 44 24 14          	mov    0x14(%esp),%eax
42261c:	33 d2                	xor    %edx,%edx
42261e:	f7 f1                	div    %ecx
422620:	8b d8                	mov    %eax,%ebx
422622:	8b 44 24 10          	mov    0x10(%esp),%eax
422626:	f7 f1                	div    %ecx
422628:	8b f0                	mov    %eax,%esi
42262a:	8b c3                	mov    %ebx,%eax
42262c:	f7 64 24 18          	mull   0x18(%esp)
422630:	8b c8                	mov    %eax,%ecx
422632:	8b c6                	mov    %esi,%eax
422634:	f7 64 24 18          	mull   0x18(%esp)
422638:	03 d1                	add    %ecx,%edx
42263a:	eb 47                	jmp    0x422683
42263c:	8b d8                	mov    %eax,%ebx
42263e:	8b 4c 24 18          	mov    0x18(%esp),%ecx
422642:	8b 54 24 14          	mov    0x14(%esp),%edx
422646:	8b 44 24 10          	mov    0x10(%esp),%eax
42264a:	d1 eb                	shr    $1,%ebx
42264c:	d1 d9                	rcr    $1,%ecx
42264e:	d1 ea                	shr    $1,%edx
422650:	d1 d8                	rcr    $1,%eax
422652:	0b db                	or     %ebx,%ebx
422654:	75 f4                	jne    0x42264a
422656:	f7 f1                	div    %ecx
422658:	8b f0                	mov    %eax,%esi
42265a:	f7 64 24 1c          	mull   0x1c(%esp)
42265e:	8b c8                	mov    %eax,%ecx
422660:	8b 44 24 18          	mov    0x18(%esp),%eax
422664:	f7 e6                	mul    %esi
422666:	03 d1                	add    %ecx,%edx
422668:	72 0e                	jb     0x422678
42266a:	3b 54 24 14          	cmp    0x14(%esp),%edx
42266e:	77 08                	ja     0x422678
422670:	72 0f                	jb     0x422681
422672:	3b 44 24 10          	cmp    0x10(%esp),%eax
422676:	76 09                	jbe    0x422681
422678:	4e                   	dec    %esi
422679:	2b 44 24 18          	sub    0x18(%esp),%eax
42267d:	1b 54 24 1c          	sbb    0x1c(%esp),%edx
422681:	33 db                	xor    %ebx,%ebx
422683:	2b 44 24 10          	sub    0x10(%esp),%eax
422687:	1b 54 24 14          	sbb    0x14(%esp),%edx
42268b:	4d                   	dec    %ebp
42268c:	79 07                	jns    0x422695
42268e:	f7 da                	neg    %edx
422690:	f7 d8                	neg    %eax
422692:	83 da 00             	sbb    $0x0,%edx
422695:	8b ca                	mov    %edx,%ecx
422697:	8b d3                	mov    %ebx,%edx
422699:	8b d9                	mov    %ecx,%ebx
42269b:	8b c8                	mov    %eax,%ecx
42269d:	8b c6                	mov    %esi,%eax
42269f:	4f                   	dec    %edi
4226a0:	75 07                	jne    0x4226a9
4226a2:	f7 da                	neg    %edx
4226a4:	f7 d8                	neg    %eax
4226a6:	83 da 00             	sbb    $0x0,%edx
4226a9:	5d                   	pop    %ebp
4226aa:	5e                   	pop    %esi
4226ab:	5f                   	pop    %edi
4226ac:	c2 10 00             	ret    $0x10
4226af:	cc                   	int3
4226b0:	57                   	push   %edi
4226b1:	56                   	push   %esi
4226b2:	53                   	push   %ebx
4226b3:	33 ff                	xor    %edi,%edi
4226b5:	8b 44 24 14          	mov    0x14(%esp),%eax
4226b9:	0b c0                	or     %eax,%eax
4226bb:	7d 14                	jge    0x4226d1
4226bd:	47                   	inc    %edi
4226be:	8b 54 24 10          	mov    0x10(%esp),%edx
4226c2:	f7 d8                	neg    %eax
4226c4:	f7 da                	neg    %edx
4226c6:	83 d8 00             	sbb    $0x0,%eax
4226c9:	89 44 24 14          	mov    %eax,0x14(%esp)
4226cd:	89 54 24 10          	mov    %edx,0x10(%esp)
4226d1:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4226d5:	0b c0                	or     %eax,%eax
4226d7:	7d 14                	jge    0x4226ed
4226d9:	47                   	inc    %edi
4226da:	8b 54 24 18          	mov    0x18(%esp),%edx
4226de:	f7 d8                	neg    %eax
4226e0:	f7 da                	neg    %edx
4226e2:	83 d8 00             	sbb    $0x0,%eax
4226e5:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4226e9:	89 54 24 18          	mov    %edx,0x18(%esp)
4226ed:	0b c0                	or     %eax,%eax
4226ef:	75 18                	jne    0x422709
4226f1:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4226f5:	8b 44 24 14          	mov    0x14(%esp),%eax
4226f9:	33 d2                	xor    %edx,%edx
4226fb:	f7 f1                	div    %ecx
4226fd:	8b d8                	mov    %eax,%ebx
4226ff:	8b 44 24 10          	mov    0x10(%esp),%eax
422703:	f7 f1                	div    %ecx
422705:	8b d3                	mov    %ebx,%edx
422707:	eb 41                	jmp    0x42274a
422709:	8b d8                	mov    %eax,%ebx
42270b:	8b 4c 24 18          	mov    0x18(%esp),%ecx
42270f:	8b 54 24 14          	mov    0x14(%esp),%edx
422713:	8b 44 24 10          	mov    0x10(%esp),%eax
422717:	d1 eb                	shr    $1,%ebx
422719:	d1 d9                	rcr    $1,%ecx
42271b:	d1 ea                	shr    $1,%edx
42271d:	d1 d8                	rcr    $1,%eax
42271f:	0b db                	or     %ebx,%ebx
422721:	75 f4                	jne    0x422717
422723:	f7 f1                	div    %ecx
422725:	8b f0                	mov    %eax,%esi
422727:	f7 64 24 1c          	mull   0x1c(%esp)
42272b:	8b c8                	mov    %eax,%ecx
42272d:	8b 44 24 18          	mov    0x18(%esp),%eax
422731:	f7 e6                	mul    %esi
422733:	03 d1                	add    %ecx,%edx
422735:	72 0e                	jb     0x422745
422737:	3b 54 24 14          	cmp    0x14(%esp),%edx
42273b:	77 08                	ja     0x422745
42273d:	72 07                	jb     0x422746
42273f:	3b 44 24 10          	cmp    0x10(%esp),%eax
422743:	76 01                	jbe    0x422746
422745:	4e                   	dec    %esi
422746:	33 d2                	xor    %edx,%edx
422748:	8b c6                	mov    %esi,%eax
42274a:	4f                   	dec    %edi
42274b:	75 07                	jne    0x422754
42274d:	f7 da                	neg    %edx
42274f:	f7 d8                	neg    %eax
422751:	83 da 00             	sbb    $0x0,%edx
422754:	5b                   	pop    %ebx
422755:	5e                   	pop    %esi
422756:	5f                   	pop    %edi
422757:	c2 10 00             	ret    $0x10
42275a:	cc                   	int3
42275b:	cc                   	int3
42275c:	cc                   	int3
42275d:	cc                   	int3
42275e:	cc                   	int3