427269:	e8 33 11 00 00       	call   0x4283a1
42726e:	8b 45 fc             	mov    -0x4(%ebp),%eax
427271:	83 c4 0c             	add    $0xc,%esp
427274:	8b 4d f4             	mov    -0xc(%ebp),%ecx
427277:	83 c0 f3             	add    $0xfffffff3,%eax
42727a:	6a 06                	push   $0x6
42727c:	8d 34 41             	lea    (%ecx,%eax,2),%esi
42727f:	8b 45 f0             	mov    -0x10(%ebp),%eax
427282:	59                   	pop    %ecx
427283:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
427285:	33 c9                	xor    %ecx,%ecx
427287:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
427289:	66 89 0c 45 1a 00 00 	mov    %cx,0x1a(,%eax,2)
427290:	00
427291:	03 5d f8             	add    -0x8(%ebp),%ebx
427294:	75 44                	jne    0x4272da
427296:	8b 55 ec             	mov    -0x14(%ebp),%edx
427299:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
42729c:	4a                   	dec    %edx
42729d:	6a 21                	push   $0x21
42729f:	58                   	pop    %eax
4272a0:	66 89 04 55 00 00 00 	mov    %ax,0x0(,%edx,2)
4272a7:	00
4272a8:	8d 04 55 02 00 00 00 	lea    0x2(,%edx,2),%eax
4272af:	50                   	push   %eax
4272b0:	8d 45 e8             	lea    -0x18(%ebp),%eax
4272b3:	f7 d2                	not    %edx
4272b5:	50                   	push   %eax
4272b6:	e8 83 fe ff ff       	call   0x42713e
4272bb:	bf ff ff 00 80       	mov    $0x8000ffff,%edi
4272c0:	ba a8 00 00 00       	mov    $0xa8,%edx
4272c5:	8b 4d 04             	mov    0x4(%ebp),%ecx
4272c8:	57                   	push   %edi
4272c9:	68 b8 5c 40 00       	push   $0x405cb8
4272ce:	e8 0a 6e fe ff       	call   0x40e0dd
4272d3:	eb 6d                	jmp    0x427342
4272d5:	03 5d f8             	add    -0x8(%ebp),%ebx
4272d8:	eb 02                	jmp    0x4272dc
4272da:	33 f6                	xor    %esi,%esi
4272dc:	56                   	push   %esi
4272dd:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4272e0:	89 75 f8             	mov    %esi,-0x8(%ebp)
4272e3:	e8 fb 0c 00 00       	call   0x427fe3
4272e8:	8d 45 f8             	lea    -0x8(%ebp),%eax
4272eb:	8b d3                	mov    %ebx,%edx
4272ed:	50                   	push   %eax
4272ee:	e8 7e fb ff ff       	call   0x426e71
4272f3:	8b f8                	mov    %eax,%edi
4272f5:	85 ff                	test   %edi,%edi
4272f7:	79 15                	jns    0x42730e
4272f9:	8b 4d 04             	mov    0x4(%ebp),%ecx
4272fc:	ba ab 00 00 00       	mov    $0xab,%edx
427301:	57                   	push   %edi
427302:	68 b8 5c 40 00       	push   $0x405cb8
427307:	e8 d1 6d fe ff       	call   0x40e0dd
42730c:	eb 22                	jmp    0x427330
42730e:	8b 7d f8             	mov    -0x8(%ebp),%edi
427311:	8d 45 ec             	lea    -0x14(%ebp),%eax
427314:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
427317:	8b d3                	mov    %ebx,%edx
427319:	57                   	push   %edi
42731a:	50                   	push   %eax
42731b:	e8 87 fd ff ff       	call   0x4270a7
427320:	85 c0                	test   %eax,%eax
427322:	74 11                	je     0x427335
427324:	50                   	push   %eax
427325:	51                   	push   %ecx
427326:	8b 4d 04             	mov    0x4(%ebp),%ecx
427329:	e8 ca fa ff ff       	call   0x426df8
42732e:	8b f8                	mov    %eax,%edi
427330:	8b 75 f8             	mov    -0x8(%ebp),%esi
427333:	eb 07                	jmp    0x42733c
427335:	8b 45 e8             	mov    -0x18(%ebp),%eax
427338:	89 38                	mov    %edi,(%eax)
42733a:	8b fe                	mov    %esi,%edi
42733c:	56                   	push   %esi
42733d:	e8 a1 0c 00 00       	call   0x427fe3
427342:	8d 4d e0             	lea    -0x20(%ebp),%ecx
427345:	e8 9e fb ff ff       	call   0x426ee8
42734a:	8b c7                	mov    %edi,%eax
42734c:	5f                   	pop    %edi
42734d:	5e                   	pop    %esi
42734e:	5b                   	pop    %ebx
42734f:	c9                   	leave
427350:	c3                   	ret
427351:	8b ff                	mov    %edi,%edi
427353:	51                   	push   %ecx
427354:	8b c1                	mov    %ecx,%eax
427356:	6a 0c                	push   $0xc
427358:	59                   	pop    %ecx
427359:	f7 e1                	mul    %ecx
42735b:	85 d2                	test   %edx,%edx
42735d:	77 1b                	ja     0x42737a
42735f:	72 05                	jb     0x427366
427361:	83 f8 ff             	cmp    $0xffffffff,%eax
427364:	77 14                	ja     0x42737a
427366:	50                   	push   %eax
427367:	64 a1 30 00 00 00    	mov    %fs:0x30,%eax
42736d:	6a 00                	push   $0x0
42736f:	ff 70 18             	push   0x18(%eax)
427372:	ff 15 ec c3 42 00    	call   *0x42c3ec
427378:	59                   	pop    %ecx
427379:	c3                   	ret
42737a:	33 c0                	xor    %eax,%eax
42737c:	59                   	pop    %ecx
42737d:	c3                   	ret
42737e:	8b ff                	mov    %edi,%edi
427380:	55                   	push   %ebp
427381:	8b ec                	mov    %esp,%ebp
427383:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
427387:	74 14                	je     0x42739d
427389:	ff 75 08             	push   0x8(%ebp)
42738c:	64 a1 30 00 00 00    	mov    %fs:0x30,%eax
427392:	6a 00                	push   $0x0
427394:	ff 70 18             	push   0x18(%eax)
427397:	ff 15 e8 c3 42 00    	call   *0x42c3e8
42739d:	5d                   	pop    %ebp
42739e:	c2 04 00             	ret    $0x4
4273a1:	cc                   	int3
4273a2:	cc                   	int3
4273a3:	cc                   	int3
4273a4:	cc                   	int3
4273a5:	cc                   	int3
4273a6:	cc                   	int3
4273a7:	cc                   	int3
4273a8:	cc                   	int3
4273a9:	cc                   	int3
4273aa:	cc                   	int3
4273ab:	cc                   	int3
4273ac:	cc                   	int3
4273ad:	cc                   	int3
4273ae:	cc                   	int3
4273af:	cc                   	int3
4273b0:	e8 48 02 00 00       	call   0x4275fd
4273b5:	6a 01                	push   $0x1
4273b7:	a3 d8 b6 42 00       	mov    %eax,0x42b6d8
4273bc:	e8 97 03 00 00       	call   0x427758
4273c1:	50                   	push   %eax
4273c2:	ff 15 9c c3 42 00    	call   *0x42c39c
4273c8:	83 0d 6c bc 42 00 ff 	orl    $0xffffffff,0x42bc6c
4273cf:	83 0d 70 bc 42 00 ff 	orl    $0xffffffff,0x42bc70
4273d6:	59                   	pop    %ecx
4273d7:	59                   	pop    %ecx
4273d8:	ff 15 8c c3 42 00    	call   *0x42c38c
4273de:	8b 0d ec b6 42 00    	mov    0x42b6ec,%ecx
4273e4:	89 08                	mov    %ecx,(%eax)
4273e6:	ff 15 a8 c3 42 00    	call   *0x42c3a8
4273ec:	8b 0d e0 b6 42 00    	mov    0x42b6e0,%ecx
4273f2:	89 08                	mov    %ecx,(%eax)
4273f4:	e8 87 17 ff ff       	call   0x418b80
4273f9:	83 3d 70 b6 42 00 00 	cmpl   $0x0,0x42b670
427400:	75 0c                	jne    0x42740e
427402:	68 80 8b 41 00       	push   $0x418b80
427407:	ff 15 88 c3 42 00    	call   *0x42c388
42740d:	59                   	pop    %ecx
42740e:	e8 6a 05 00 00       	call   0x42797d
427413:	33 c0                	xor    %eax,%eax
427415:	c3                   	ret
427416:	cc                   	int3
427417:	cc                   	int3
427418:	cc                   	int3
427419:	cc                   	int3
42741a:	cc                   	int3
42741b:	cc                   	int3
42741c:	cc                   	int3
42741d:	cc                   	int3
42741e:	cc                   	int3
42741f:	cc                   	int3
427420:	a1 e8 b6 42 00       	mov    0x42b6e8,%eax
427425:	68 dc b6 42 00       	push   $0x42b6dc
42742a:	ff 35 e4 b6 42 00    	push   0x42b6e4
427430:	a3 dc b6 42 00       	mov    %eax,0x42b6dc
427435:	68 d0 b6 42 00       	push   $0x42b6d0
42743a:	68 cc b6 42 00       	push   $0x42b6cc
42743f:	68 c8 b6 42 00       	push   $0x42b6c8
427444:	ff 15 a0 c3 42 00    	call   *0x42c3a0
42744a:	83 c4 14             	add    $0x14,%esp
42744d:	a3 d4 b6 42 00       	mov    %eax,0x42b6d4
427452:	c3                   	ret
427453:	6a 0c                	push   $0xc
427455:	68 40 9e 42 00       	push   $0x429e40
42745a:	e8 39 05 00 00       	call   0x427998
42745f:	33 db                	xor    %ebx,%ebx
427461:	89 5d fc             	mov    %ebx,-0x4(%ebp)
427464:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
42746a:	8b 70 04             	mov    0x4(%eax),%esi
42746d:	8b fb                	mov    %ebx,%edi
42746f:	ba 74 bc 42 00       	mov    $0x42bc74,%edx
427474:	8b ce                	mov    %esi,%ecx
427476:	33 c0                	xor    %eax,%eax
427478:	f0 0f b1 0a          	lock cmpxchg %ecx,(%edx)
42747c:	85 c0                	test   %eax,%eax
42747e:	74 18                	je     0x427498
427480:	3b c6                	cmp    %esi,%eax
427482:	75 07                	jne    0x42748b
427484:	33 f6                	xor    %esi,%esi
427486:	46                   	inc    %esi
427487:	8b fe                	mov    %esi,%edi
427489:	eb 10                	jmp    0x42749b
42748b:	68 e8 03 00 00       	push   $0x3e8
427490:	ff 15 cc c2 42 00    	call   *0x42c2cc
427496:	eb d7                	jmp    0x42746f
427498:	33 f6                	xor    %esi,%esi
42749a:	46                   	inc    %esi
42749b:	39 35 78 bc 42 00    	cmp    %esi,0x42bc78
4274a1:	75 0a                	jne    0x4274ad
4274a3:	6a 1f                	push   $0x1f
4274a5:	e8 e4 02 00 00       	call   0x42778e
4274aa:	59                   	pop    %ecx
4274ab:	eb 3a                	jmp    0x4274e7
4274ad:	39 1d 78 bc 42 00    	cmp    %ebx,0x42bc78
4274b3:	75 2c                	jne    0x4274e1
4274b5:	89 35 78 bc 42 00    	mov    %esi,0x42bc78
4274bb:	68 f8 14 40 00       	push   $0x4014f8
4274c0:	68 ec 14 40 00       	push   $0x4014ec
4274c5:	e8 02 01 00 00       	call   0x4275cc
4274ca:	59                   	pop    %ecx
4274cb:	59                   	pop    %ecx
4274cc:	85 c0                	test   %eax,%eax
4274ce:	74 17                	je     0x4274e7
4274d0:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4274d7:	b8 ff 00 00 00       	mov    $0xff,%eax
4274dc:	e9 db 00 00 00       	jmp    0x4275bc
4274e1:	89 35 c4 b6 42 00    	mov    %esi,0x42b6c4
4274e7:	39 35 78 bc 42 00    	cmp    %esi,0x42bc78
4274ed:	75 1b                	jne    0x42750a
4274ef:	68 e8 14 40 00       	push   $0x4014e8
4274f4:	68 bc 14 40 00       	push   $0x4014bc
4274f9:	e8 92 04 00 00       	call   0x427990
4274fe:	59                   	pop    %ecx
4274ff:	59                   	pop    %ecx
427500:	c7 05 78 bc 42 00 02 	movl   $0x2,0x42bc78
427507:	00 00 00
42750a:	85 ff                	test   %edi,%edi
42750c:	75 09                	jne    0x427517
42750e:	33 c0                	xor    %eax,%eax
427510:	b9 74 bc 42 00       	mov    $0x42bc74,%ecx
427515:	87 01                	xchg   %eax,(%ecx)
427517:	83 3d 7c bc 42 00 00 	cmpl   $0x0,0x42bc7c
42751e:	74 23                	je     0x427543
427520:	68 7c bc 42 00       	push   $0x42bc7c
427525:	e8 c6 02 00 00       	call   0x4277f0
42752a:	59                   	pop    %ecx
42752b:	85 c0                	test   %eax,%eax
42752d:	74 14                	je     0x427543
42752f:	53                   	push   %ebx
427530:	6a 02                	push   $0x2
427532:	53                   	push   %ebx
427533:	8b 35 7c bc 42 00    	mov    0x42bc7c,%esi
427539:	8b ce                	mov    %esi,%ecx
42753b:	ff 15 d4 c4 42 00    	call   *0x42c4d4
427541:	ff d6                	call   *%esi
427543:	ff 35 d0 b6 42 00    	push   0x42b6d0
427549:	ff 35 cc b6 42 00    	push   0x42b6cc
42754f:	ff 35 c8 b6 42 00    	push   0x42b6c8
427555:	e8 54 03 fe ff       	call   0x4078ae
42755a:	83 c4 0c             	add    $0xc,%esp
42755d:	a3 c0 b6 42 00       	mov    %eax,0x42b6c0
427562:	83 3d d8 b6 42 00 00 	cmpl   $0x0,0x42b6d8
427569:	75 36                	jne    0x4275a1
42756b:	50                   	push   %eax
42756c:	ff 15 98 c3 42 00    	call   *0x42c398
427572:	8b 4d ec             	mov    -0x14(%ebp),%ecx
427575:	8b 01                	mov    (%ecx),%eax
427577:	8b 00                	mov    (%eax),%eax
427579:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42757c:	51                   	push   %ecx
42757d:	50                   	push   %eax
42757e:	e8 5b 01 00 00       	call   0x4276de
427583:	59                   	pop    %ecx
427584:	59                   	pop    %ecx
427585:	c3                   	ret
427586:	8b 65 e8             	mov    -0x18(%ebp),%esp
427589:	8b 45 e4             	mov    -0x1c(%ebp),%eax
42758c:	a3 c0 b6 42 00       	mov    %eax,0x42b6c0
427591:	83 3d d8 b6 42 00 00 	cmpl   $0x0,0x42b6d8
427598:	75 07                	jne    0x4275a1
42759a:	50                   	push   %eax
42759b:	ff 15 94 c3 42 00    	call   *0x42c394
4275a1:	83 3d c4 b6 42 00 00 	cmpl   $0x0,0x42b6c4
4275a8:	75 0b                	jne    0x4275b5
4275aa:	ff 15 90 c3 42 00    	call   *0x42c390
4275b0:	a1 c0 b6 42 00       	mov    0x42b6c0,%eax
4275b5:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4275bc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4275bf:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4275c6:	59                   	pop    %ecx
4275c7:	5f                   	pop    %edi
4275c8:	5e                   	pop    %esi
4275c9:	5b                   	pop    %ebx
4275ca:	c9                   	leave
4275cb:	c3                   	ret
4275cc:	8b ff                	mov    %edi,%edi
4275ce:	55                   	push   %ebp
4275cf:	8b ec                	mov    %esp,%ebp
4275d1:	56                   	push   %esi
4275d2:	8b 75 08             	mov    0x8(%ebp),%esi
4275d5:	33 c0                	xor    %eax,%eax
4275d7:	3b 75 0c             	cmp    0xc(%ebp),%esi
4275da:	73 1e                	jae    0x4275fa
4275dc:	57                   	push   %edi
4275dd:	85 c0                	test   %eax,%eax
4275df:	75 18                	jne    0x4275f9
4275e1:	8b 3e                	mov    (%esi),%edi
4275e3:	85 ff                	test   %edi,%edi
4275e5:	74 0a                	je     0x4275f1
4275e7:	8b cf                	mov    %edi,%ecx
4275e9:	ff 15 d4 c4 42 00    	call   *0x42c4d4
4275ef:	ff d7                	call   *%edi
4275f1:	83 c6 04             	add    $0x4,%esi
4275f4:	3b 75 0c             	cmp    0xc(%ebp),%esi
4275f7:	72 e4                	jb     0x4275dd
4275f9:	5f                   	pop    %edi
4275fa:	5e                   	pop    %esi
4275fb:	5d                   	pop    %ebp
4275fc:	c3                   	ret
4275fd:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
427602:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
427609:	75 55                	jne    0x427660
42760b:	8b 0d 3c 00 40 00    	mov    0x40003c,%ecx
427611:	81 b9 00 00 40 00 50 	cmpl   $0x4550,0x400000(%ecx)
427618:	45 00 00
42761b:	75 43                	jne    0x427660
42761d:	0f b7 81 18 00 40 00 	movzwl 0x400018(%ecx),%eax
427624:	ba 0b 01 00 00       	mov    $0x10b,%edx
427629:	66 3b c2             	cmp    %dx,%ax
42762c:	74 1f                	je     0x42764d
42762e:	ba 0b 02 00 00       	mov    $0x20b,%edx
427633:	66 3b c2             	cmp    %dx,%ax
427636:	75 28                	jne    0x427660
427638:	83 b9 84 00 40 00 0e 	cmpl   $0xe,0x400084(%ecx)
42763f:	76 1f                	jbe    0x427660
427641:	33 c0                	xor    %eax,%eax
427643:	39 81 f8 00 40 00    	cmp    %eax,0x4000f8(%ecx)
427649:	0f 95 c0             	setne  %al
42764c:	c3                   	ret
42764d:	83 b9 74 00 40 00 0e 	cmpl   $0xe,0x400074(%ecx)
427654:	76 0a                	jbe    0x427660
427656:	33 c0                	xor    %eax,%eax
427658:	39 81 e8 00 40 00    	cmp    %eax,0x4000e8(%ecx)
42765e:	eb e9                	jmp    0x427649
427660:	33 c0                	xor    %eax,%eax
427662:	c3                   	ret
427663:	cc                   	int3
427664:	cc                   	int3
427665:	cc                   	int3
427666:	cc                   	int3
427667:	cc                   	int3
427668:	cc                   	int3
427669:	cc                   	int3